From cf6dc5d38385e4ff6faf9bf0883a67c2f511076b Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Fri, 20 Dec 2024 17:33:26 -0500 Subject: [PATCH 01/64] Disable MSVC's C4702 warning It flags aes_ctr_set_key as having unreachable code in no-asm builds. It is true that there is unreachable code in there, but I'm unclear on why just that function is being flagged. Since we often will no-op our platform codepaths to avoid ifdefs in build configurations that don't want them, such a sensitive warning is not useful. Just turn it off. Fixed: 385161043 Change-Id: I5ed066d6d1d95dcc57a1cac01fad553e9ef4db7d Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74607 Reviewed-by: Adam Langley Commit-Queue: David Benjamin Commit-Queue: Adam Langley Auto-Submit: David Benjamin --- CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5d96aad5bb..63efa91a6a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -188,6 +188,8 @@ elseif(MSVC) "C4244" # 'function' : conversion from 'int' to 'uint8_t', # possible loss of data "C4267" # conversion from 'size_t' to 'int', possible loss of data + "C4702" # unreachable code; MSVC's warning is too aggressive. See + # https://crbug.com/385161043 "C4706" # assignment within conditional expression ) string(REPLACE "C" " -wd" MSVC_DISABLED_WARNINGS_STR From 9938f09d1cb6637f95a700df717178fcb7754025 Mon Sep 17 00:00:00 2001 From: Adam Langley Date: Tue, 3 Dec 2024 15:25:30 -0800 Subject: [PATCH 02/64] SLH-DSA: add ACVP support Change-Id: I41638aa7a4d00415eda593fe277fed6f768170de Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/73928 Reviewed-by: Bob Beck Commit-Queue: Adam Langley --- util/fipstools/acvp/ACVP.md | 3 + .../acvp/acvptool/subprocess/slhdsa.go | 305 ++++++++++++++++++ .../acvp/acvptool/subprocess/subprocess.go | 1 + .../acvp/acvptool/test/expected/SLH-DSA.bz2 | Bin 0 -> 16560 bytes util/fipstools/acvp/acvptool/test/tests.json | 1 + .../acvp/acvptool/test/vectors/SLH-DSA.bz2 | Bin 0 -> 17585 bytes .../acvp/modulewrapper/modulewrapper.cc | 123 +++++++ 7 files changed, 433 insertions(+) create mode 100644 util/fipstools/acvp/acvptool/subprocess/slhdsa.go create mode 100644 util/fipstools/acvp/acvptool/test/expected/SLH-DSA.bz2 create mode 100644 util/fipstools/acvp/acvptool/test/vectors/SLH-DSA.bz2 diff --git a/util/fipstools/acvp/ACVP.md b/util/fipstools/acvp/ACVP.md index 1004c8453b..79cf9c8641 100644 --- a/util/fipstools/acvp/ACVP.md +++ b/util/fipstools/acvp/ACVP.md @@ -136,6 +136,9 @@ The other commands are as follows. (Note that you only need to implement the com | ML-KEM-XX/keyGen | Seed | Public key, private key | | ML-KEM-XX/encap | Public key, entropy | Ciphertext, shared secret | | ML-KEM-XX/decap | Private key, ciphertext | Shared secret | +| SLH-DSA-XX/keyGen | Seed | Private key, public key | +| SLH-DSA-XX/sigGen | Private key, message, entropy or empty | Signature | +| SLH-DSA-XX/sigVer | Public key, message, signature | Single-byte validity flag | ยน The iterated tests would result in excessive numbers of round trips if the module wrapper handled only basic operations. Thus some ACVP logic is pushed down for these tests so that the inner loop can be handled locally. Either read the NIST documentation ([block-ciphers](https://pages.nist.gov/ACVP/draft-celi-acvp-symmetric.html#name-monte-carlo-tests-for-block) [hashes](https://pages.nist.gov/ACVP/draft-celi-acvp-sha.html#name-monte-carlo-tests-for-sha-1)) to understand the iteration count and return values or, probably more fruitfully, see how these functions are handled in the `modulewrapper` directory. diff --git a/util/fipstools/acvp/acvptool/subprocess/slhdsa.go b/util/fipstools/acvp/acvptool/subprocess/slhdsa.go new file mode 100644 index 0000000000..0bae1aac05 --- /dev/null +++ b/util/fipstools/acvp/acvptool/subprocess/slhdsa.go @@ -0,0 +1,305 @@ +package subprocess + +import ( + "encoding/hex" + "encoding/json" + "fmt" + "strings" +) + +// Common top-level structure to parse mode +type slhdsaTestVectorSet struct { + Algorithm string `json:"algorithm"` + Mode string `json:"mode"` + Revision string `json:"revision"` +} + +type slhdsaKeyGenTestVectorSet struct { + Algorithm string `json:"algorithm"` + Mode string `json:"mode"` + Revision string `json:"revision"` + Groups []slhdsaKeyGenTestGroup `json:"testGroups"` +} + +type slhdsaKeyGenTestGroup struct { + ID uint64 `json:"tgId"` + TestType string `json:"testType"` + ParameterSet string `json:"parameterSet"` + Tests []slhdsaKeyGenTest `json:"tests"` +} + +type slhdsaKeyGenTest struct { + ID uint64 `json:"tcId"` + SKSeed string `json:"skSeed"` + SKPrf string `json:"skPrf"` + PKSeed string `json:"pkSeed"` +} + +type slhdsaKeyGenTestGroupResponse struct { + ID uint64 `json:"tgId"` + Tests []slhdsaKeyGenTestResponse `json:"tests"` +} + +type slhdsaKeyGenTestResponse struct { + ID uint64 `json:"tcId"` + PublicKey string `json:"pk"` + PrivateKey string `json:"sk"` +} + +type slhdsaSigGenTestVectorSet struct { + Algorithm string `json:"algorithm"` + Mode string `json:"mode"` + Revision string `json:"revision"` + Groups []slhdsaSigGenTestGroup `json:"testGroups"` +} + +type slhdsaSigGenTestGroup struct { + ID uint64 `json:"tgId"` + TestType string `json:"testType"` + ParameterSet string `json:"parameterSet"` + Deterministic bool `json:"deterministic"` + Tests []slhdsaSigGenTest `json:"tests"` +} + +type slhdsaSigGenTest struct { + ID uint64 `json:"tcId"` + Message string `json:"message"` + PrivateKey string `json:"sk"` + AdditionalRandomness string `json:"additionalRandomness,omitempty"` +} + +type slhdsaSigGenTestGroupResponse struct { + ID uint64 `json:"tgId"` + Tests []slhdsaSigGenTestResponse `json:"tests"` +} + +type slhdsaSigGenTestResponse struct { + ID uint64 `json:"tcId"` + Signature string `json:"signature"` +} + +type slhdsaSigVerTestVectorSet struct { + Algorithm string `json:"algorithm"` + Mode string `json:"mode"` + Revision string `json:"revision"` + Groups []slhdsaSigVerTestGroup `json:"testGroups"` +} + +type slhdsaSigVerTestGroup struct { + ID uint64 `json:"tgId"` + TestType string `json:"testType"` + ParameterSet string `json:"parameterSet"` + Tests []slhdsaSigVerTest `json:"tests"` +} + +type slhdsaSigVerTest struct { + ID uint64 `json:"tcId"` + Message string `json:"message"` + Signature string `json:"signature"` + PublicKey string `json:"pk"` +} + +type slhdsaSigVerTestGroupResponse struct { + ID uint64 `json:"tgId"` + Tests []slhdsaSigVerTestResponse `json:"tests"` +} + +type slhdsaSigVerTestResponse struct { + ID uint64 `json:"tcId"` + TestPassed bool `json:"testPassed"` +} + +type slhdsa struct{} + +func (s *slhdsa) Process(vectorSet []byte, t Transactable) (any, error) { + var common slhdsaTestVectorSet + if err := json.Unmarshal(vectorSet, &common); err != nil { + return nil, fmt.Errorf("failed to unmarshal vector set: %v", err) + } + + switch common.Mode { + case "keyGen": + return s.processKeyGen(vectorSet, t) + case "sigGen": + return s.processSigGen(vectorSet, t) + case "sigVer": + return s.processSigVer(vectorSet, t) + default: + return nil, fmt.Errorf("unsupported SLH-DSA mode: %s", common.Mode) + } +} + +func (s *slhdsa) processKeyGen(vectorSet []byte, t Transactable) (any, error) { + var parsed slhdsaKeyGenTestVectorSet + if err := json.Unmarshal(vectorSet, &parsed); err != nil { + return nil, fmt.Errorf("failed to unmarshal keyGen vector set: %v", err) + } + + var ret []slhdsaKeyGenTestGroupResponse + + for _, group := range parsed.Groups { + response := slhdsaKeyGenTestGroupResponse{ + ID: group.ID, + } + + if !strings.HasPrefix(group.ParameterSet, "SLH-DSA-") { + return nil, fmt.Errorf("invalid parameter set: %s", group.ParameterSet) + } + cmdName := group.ParameterSet + "/keyGen" + + for _, test := range group.Tests { + skSeed, err := hex.DecodeString(test.SKSeed) + if err != nil { + return nil, fmt.Errorf("failed to decode skSeed in test case %d/%d: %s", + group.ID, test.ID, err) + } + + skPrf, err := hex.DecodeString(test.SKPrf) + if err != nil { + return nil, fmt.Errorf("failed to decode skPrf in test case %d/%d: %s", + group.ID, test.ID, err) + } + + pkSeed, err := hex.DecodeString(test.PKSeed) + if err != nil { + return nil, fmt.Errorf("failed to decode pkSeed in test case %d/%d: %s", + group.ID, test.ID, err) + } + + var seed []byte + seed = append(seed, skSeed...) + seed = append(seed, skPrf...) + seed = append(seed, pkSeed...) + + result, err := t.Transact(cmdName, 2, seed) + if err != nil { + return nil, fmt.Errorf("key generation failed for test case %d/%d: %s", + group.ID, test.ID, err) + } + + response.Tests = append(response.Tests, slhdsaKeyGenTestResponse{ + ID: test.ID, + PrivateKey: hex.EncodeToString(result[0]), + PublicKey: hex.EncodeToString(result[1]), + }) + } + + ret = append(ret, response) + } + + return ret, nil +} + +func (s *slhdsa) processSigGen(vectorSet []byte, t Transactable) (any, error) { + var parsed slhdsaSigGenTestVectorSet + if err := json.Unmarshal(vectorSet, &parsed); err != nil { + return nil, fmt.Errorf("failed to unmarshal sigGen vector set: %v", err) + } + + var ret []slhdsaSigGenTestGroupResponse + + for _, group := range parsed.Groups { + response := slhdsaSigGenTestGroupResponse{ + ID: group.ID, + } + + if !strings.HasPrefix(group.ParameterSet, "SLH-DSA-") { + return nil, fmt.Errorf("invalid parameter set: %s", group.ParameterSet) + } + cmdName := group.ParameterSet + "/sigGen" + + for _, test := range group.Tests { + sk, err := hex.DecodeString(test.PrivateKey) + if err != nil { + return nil, fmt.Errorf("failed to decode private key in test case %d/%d: %s", + group.ID, test.ID, err) + } + + msg, err := hex.DecodeString(test.Message) + if err != nil { + return nil, fmt.Errorf("failed to decode message in test case %d/%d: %s", + group.ID, test.ID, err) + } + + var randomness []byte + if !group.Deterministic { + randomness, err = hex.DecodeString(test.AdditionalRandomness) + if err != nil { + return nil, fmt.Errorf("failed to decode randomness in test case %d/%d: %s", + group.ID, test.ID, err) + } + } + + result, err := t.Transact(cmdName, 1, sk, msg, randomness) + if err != nil { + return nil, fmt.Errorf("signature generation failed for test case %d/%d: %s", + group.ID, test.ID, err) + } + + response.Tests = append(response.Tests, slhdsaSigGenTestResponse{ + ID: test.ID, + Signature: hex.EncodeToString(result[0]), + }) + } + + ret = append(ret, response) + } + + return ret, nil +} + +func (s *slhdsa) processSigVer(vectorSet []byte, t Transactable) (any, error) { + var parsed slhdsaSigVerTestVectorSet + if err := json.Unmarshal(vectorSet, &parsed); err != nil { + return nil, fmt.Errorf("failed to unmarshal sigVer vector set: %v", err) + } + + var ret []slhdsaSigVerTestGroupResponse + + for _, group := range parsed.Groups { + response := slhdsaSigVerTestGroupResponse{ + ID: group.ID, + } + + if !strings.HasPrefix(group.ParameterSet, "SLH-DSA-") { + return nil, fmt.Errorf("invalid parameter set: %s", group.ParameterSet) + } + cmdName := group.ParameterSet + "/sigVer" + + for _, test := range group.Tests { + pk, err := hex.DecodeString(test.PublicKey) + if err != nil { + return nil, fmt.Errorf("failed to decode public key in test case %d/%d: %s", + group.ID, test.ID, err) + } + + msg, err := hex.DecodeString(test.Message) + if err != nil { + return nil, fmt.Errorf("failed to decode message in test case %d/%d: %s", + group.ID, test.ID, err) + } + + sig, err := hex.DecodeString(test.Signature) + if err != nil { + return nil, fmt.Errorf("failed to decode signature in test case %d/%d: %s", + group.ID, test.ID, err) + } + + result, err := t.Transact(cmdName, 1, pk, msg, sig) + if err != nil { + return nil, fmt.Errorf("signature verification failed for test case %d/%d: %s", + group.ID, test.ID, err) + } + + testPassed := result[0][0] != 0 + response.Tests = append(response.Tests, slhdsaSigVerTestResponse{ + ID: test.ID, + TestPassed: testPassed, + }) + } + + ret = append(ret, response) + } + + return ret, nil +} diff --git a/util/fipstools/acvp/acvptool/subprocess/subprocess.go b/util/fipstools/acvp/acvptool/subprocess/subprocess.go index 0913220d7c..d68e5d3bb1 100644 --- a/util/fipstools/acvp/acvptool/subprocess/subprocess.go +++ b/util/fipstools/acvp/acvptool/subprocess/subprocess.go @@ -146,6 +146,7 @@ func NewWithIO(cmd *exec.Cmd, in io.WriteCloser, out io.ReadCloser) *Subprocess "PBKDF": &pbkdf{}, "ML-DSA": &mldsa{}, "ML-KEM": &mlkem{}, + "SLH-DSA": &slhdsa{}, } m.primitives["ECDSA"] = &ecdsa{"ECDSA", map[string]bool{"P-224": true, "P-256": true, "P-384": true, "P-521": true}, m.primitives} m.primitives["DetECDSA"] = &ecdsa{"DetECDSA", map[string]bool{"P-224": true, "P-256": true, "P-384": true, "P-521": true}, m.primitives} diff --git a/util/fipstools/acvp/acvptool/test/expected/SLH-DSA.bz2 b/util/fipstools/acvp/acvptool/test/expected/SLH-DSA.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..0f49ac61e3e494ce250232feb10ea2cb572d6136 GIT binary patch literal 16560 zcmV(zK<2+fT4*^jL0KkKS;(zA$^a+fe}F_(Kmbq%|L`Q_P8vV&-wI$*9|@Ez(L^GY z0ny8>fuJc=6wqn5O4!Rl7^DQWd6^QB^3SMzYqGR0=3mr6N=kq7ycy zX{kaLK~#bzLMalU8f!*~iXjCBRbB4oKuRj1LP>fUs7jInR8oORg-Wrq*s+mRg4U5D zs8Obhp&$hlTBB_wQmCs&QBfo00DpiXaEeF000dDl0Z!njYTy5Q)JZ89w^30!^%h& z-X}J8*atRA8LQJWFVS&$$+-grLID7YHi$$TM(cOlfh1G}yO5Le##|RI*1}zi<&Q(n zdA!LZ*anbxraORgZQwXxM10d5tKP;tKJvd?6;11@=X|1nk=#E zZg9i1&Vvi&58hify= zbn31F;aIN~-;2n&tFoQ0JRNrn#%%Nxe47X8kc56sfiAryBN#_qov$7X>gSZ0s_E+q zbi|&?rwRNS2qwt^=|Q2yR1&aKFH=|r$C_Yorms$P!cp5q&Wy-kkmH={M3jiM0btW9 zLtAO_)%CFx`yljsJ({qYYTQt7ghBv_sNz4T9&$$g-v?+qa0uX{##B$g3MUtIUdU$~ zD41Y;QX*)j2yb7%DKJQ6B9{5l`REd}YunU7v^(UDFdOj)7&u6A^XhkLK}dALD>;(Iq%lBXmxEGr%7@nH53FKj9qhm| zD)sjT@%N&db@z)4M-s;pE2~9ipIE#Rd)7_kPdp?9{WamqYP*TM9R=`}vkoVh)PyWW zR@>uDKFll&?8pJKg++l_rNcW8F{on*;)-sPupW?;Ffqi?yCOYItm7LfHpq*Xv&mNwoFWsiB9IxC z_B>*5qtT6IuBGE>HA4CiHXTWvDL`HmYZgm3Ny&mqfw5$?-9bc$RQ*vhq?U^lJ%0|F z2sN;1AxUup-P#HH52@G6h7zP&Hg~ID)Ro%6RukkW7R1#&l{^47kdQv-%NMWpR9ltGSuf2)Adyh;FxzS@~}a=IJQGJlMTL)Nw|8FrP+ON%PIjm%XDg_ z&6eh2Z2)>lOZ8|D4y7-45mqw8mm#_5q!iTZ^pyL06#hTX_95u&*yD+2qbo zoH&ZW8FW)64ca0}`<8&@>?2uSTk&*t>UA!SURE!=7}4^!w6?fP_s(`rCSJI7U7@ZL zDx+W9YB22Cc-k9-N!V%XLJhgnItI@NxL3wrZEqH%F0F#%_0Wh2+}m(omXpX!0njVN zF+TbWl?DE8Oezu$c+geH8Zebtz+95`&9L zGtUtOH*#0ITweN^%F=3=AE|I~#z^mdLNw5Q*?Lh-g(fS00}0vC4Y^66`yG^uHDW@F|fsvdIkCuK0wIiBGnHvg^K|8Oob1#)p8}p$P8X{S6XKeD*d2 zP>pc+*~X~le2i7gi>y$6)6sQiyy`x=OxcLEYd2EXQ$V+Ek)z_kHnH-IH- z>Q5_7F%|0v48dq6ttO8{-?XAcFI_x^vdZ$0FrO_eMWu}f27|pU4&gC0SBRjzQY2eE zcHs|d+fWcFfky7}j+A?OYC^AJnY$X+Ou~&0Qt-F~BGv{Wpy@qCY9W@Uh^xAXPgKOS z>JggkO#pgX)g~?lvXIuCawthW&gaSCRId#e0*$u>Rqo~}2^}{&W82q4laa zl&hUwPP{d(Yuoe)#a^J>y|A5x#0$vvg|f-^I-X*1ba_{#)H=XHfpW3hdahrgu)DqL zksuvV9(pv(Jpjpz$%g6a?Lk1RruQQ(#u9geyRqmD;{1jQb;@~TTyWcip}RHVW3oIu zbL|qyhV?Hw6xg;Sf?ntl49bFIy+~LV=_^}>$TxeafX8JZ5%c3ek9Fi;s9ti2n)}r^ zR}&Ij;fAA?6LaOmV9Dc)*+Pm5yOk@mqGRTjbU?K4LI%|>r3l1`+w~P&2|V$)GoX3Q zph(3VC2e^N&Cv82CV9}eMx_uCrO84AeK4S&&sCe56~meJzB!%#REB z-`tWYL$MK@0-!Ayze*U2(ri(AOp`Dmu%>1eJ8ac_ z(kQo4gn(JXoLlP4kGFpn6=c z0>==b29QQ9`q^=C=hj6cWFAnu?%r17xEzjthFc9|ZG9}>2}Cp6KtKSHQ(sXc?%`_5 zU9ckPQHyVY119eUcKbDzRQ=7SCa9^Q<>7QsfZMBZ?4KpAbh4s>Pam7XhfI!hf>v5# zs?9ixOm7wscW)bY9PP~Xv}P&+U6w2Fb-ARY_q zjkdaGq&`6TZrMpO@7l!pHQsfDvq^JlEz)c2Kwoqvi;gp&3}L8J`IuerisPS4ojTWT8g?w-skckAI4+tL?t2Aeay4SM>}zjWD3Qv0fL`kW7ls#u3jPe^ZUd^ccJO8 zicf~`Z*$?zTDbKm!Jd3bt9IDgZ6(bx7_T%|L4{pTF$Gp_)tmJ7(@nTxm{zbP*}XFg zXlCv-TO#nOtKiCcX-W|y$QIkoEOGF_(g16iwn^Lz$XMb!kzE+^E1at-TKSm*dBQB{ zb`XIFa<+1tWISuCGr(xXFfMM;$!ralv%#Wb^?kEj3RT38i-wxKd1nW^?O|I#UzG=9 zC=f04v&@VqE-P$rZC&Xg)NA_kddI-?Sr4eguv`;3m+BKk;K_L6tu?L*z>F6LvML6p zN`l#?U`(Cg^L06N-HesdZRVorLv5L(9v>Sf6&xWtE-P`EDMsmq0tYM2daJ|CaP(xE zQpB~F2;5VK6%Re++s*FUTHz*Iehu+m_4;bbMRYAWHZi)cwj2^zEWuG?W;ZzcX1VQv zwzJWi0_slk9NTvK54xwYO~aPHAmSLqKW$zY55{@WI{CaM2>59kcLpB=DH#jY@}v6fC&79i!DOZ zv7M28>pSbTvOr?B)U{*p0MISY4P1w`kqaUEVEP}QGEPW2Y-<>d@5OYU05S$3x>A^OWZ}eYB)#$0(rO=94n&HZGPo}DQM?Dn z8XCtzji9d7{g`#FCC)E!X?i3&W!!Xxi_+f|s%x9ED&yyTDm=RYm8&Fy(^2d2lv719W>5B3t1j z&_x6~qC%ku=e;a6LRXK3G`YCSB~tKb0%uslLSxkTU>+(@P=@72((R|U2)GFr>`Jk7 z%U3?WEZm6eTW!Y#I^Q%5rNNTcb;nknPhsiFS+_&acZpW!C`w#CY>yKAtI%%VTnG_@ zB04UrCSm>a(C#m%Mndogc9xaoMVJZEM@Q1DrOaCE_JXkYLvZMXsb~V&)Ih5QNBK#7t`eD>+LlYz{3mGB17S$Z2w-03&B< zazv)XY>EPr*fL{j%b1DB$pK)#-*CimH>*K6Y+PdY4p#d`>G`v|U%`4FL(oxH!|b+2 zsorJsSoE+n^!cC~(Pt5p&yRtf>6s9Oe1dG?a!s5JPCgEiSQclFrclN#(t3&iadMQ_TtjS9(w464cr@?oVR` z`n4uin!Vlj)K4fx9Miht=ZPrph#+V*riRbFz^v=7e8rkNfy^hk4e5d4Rgu%s0^Ok1 z$py4?bWm0>pL_%m#UYxfs1(tAF2uBsj?V4f2iS{DtG5V>aC*S&hCDmfnUR7UhW6HMo}A0VHxHODR}PA7)kU$9rO7k}%B}=_58_Cx<=eV-d=lC8 z=7weAWst1dqFgl%bQFR+!v?>}&BHTIjF`g5y58Vhwz-$<&cU;?l<3!118CQrD`;+x z_HtG48{buYFpVkN;i0mce8?W`1iWR@2|L2Ov~!JBz8etnD`1j00_}I6p`uxhWpEU( zz8#PoFc30V;8$m6Sz_{>K42QY9rsFZm>Hi_wzMXM(Au737eAg#K~((7H@=JLRn^+? zpsvvYSF0%;ZkH3qm%jow`e}=^ve=iIDV#jYPJsz>>R7;fB5l0QL^L)afX&jlUSJq6 zLFcaXxR1gdVwTFF;F*m5m&dZf6>_|rT%)oyvtE1KfZgq5(i9sRDaRm97`A>o%Du8Z zdvtT6JG2g7Y`K}hk2TkcX?y7uiAQNApp{x05{HzX0X9F%)hl_0gK7}e4K;LNBhxXs z4cKDuWQUJ&?Ao`q2uR|G+m>LSz&EB_)k^pfH0+tgcFzDLxS~p< z!uEY|D0t27+K?eho1G9FX$(*_*l$8QXqSSmaxg?R@xacP1$JyNUwW38R|GUQvHc1W z0Bs2yQBE!F#ikbKZQ|TBubnlgl43iV+7tpG5Bf-55#Gjx*m{&elT^(pJG8wU0vS4uUWRjSnfd(L1t<3 zYUTMBP@b^w$IM)V+v_>2A$reI0;Zh!J(wPAPzf^#iGy}|SrlhI*?iLJ(0;K7w+=%Q zKQg~g_{cA&VnNCV(;LsHEvyqF=&ZIS^HC_lC$ERpEl~E>k8zxVI4yN(rx?S=5+&FX%FF3=r^0}+0L>|>wIb~*wc2f*P zay@VrdEo~W;<)6HwNjJU7Q93qU8%wVVpG@+YJ$>K1Pc;DW>g~+@`%pf7K`kPPm!Lw zX!!>SAX^VFL6Vmlc{W;3*4TC&t36%0Zx$uQOH^e64vV}evITroU6bv}k1B1NSYtPt zIoP@oFhZmn?02$6&eS|%jB1lwHC}OyLNrBdPo`%v>%VcRs6| z+3@c1275v~(K3F6i=ioV=1UVIuwuH*4+J%w^!1H7OEc+VGovG2nqPRs&lK>WlK_F0 z;$7Ccn;?vb>&_SymZrV{XtdQx!M1uyzMc`89|0$31@+%)j-K5-BXwCm>_P99ZUX&4 z=0eV`#x!sdh`J3*s_;}26!Dh8Cj2VH(UnC0#US9I9e-w>XB zQuFLr=(Arj$;_cD@z)dwKN6lq5JD}lP9_J`0M@#^$Mov)G6HcV?MCSma-6thd^Ztw zAIxD2$#Fw>048Zc_vBI(tq>8^8jKqEF5wG|MrNLnEc+U&$pE$} zJY_qFsVlO?NK|PG%v{E_5r&|^pq_F-T=72E_>#?)?PFWVTZn?<1gZu8(C4x1Cx zm%7wACn^9uMq|^rvRTbH33;o7kVTm3AkppD zO6S7P?{#|Bo4^{DXw8{Mo~y5x2%vqVFBS@L7L7Eh(0A4y)6n}4^#ZOzw(A0W0QOz4 z?FEd_n{JZrOzCk(Rf_&MRr3Ltyb^VKm2~4YM=n}&U ziHQPh56-Tsen4xU6@~9Uu(e;ij)?jxxCh8w_P-qoz6-sw=^NKpkjQ2ZQhFC5_uZaX z?)ZBriQ?+`T1oAiO5?^wE8ctIv&e>OF=_(HDX^n)Ehm(&NV*(1ITH0Lt93>=hL{F; z-(04Vfaa@oQbfAe&k9)EM-8Oyy$5Ptnnh3E23KLQxOIvsZT5$#T%r+1`PjmJ5c`?*QmJaTTNxR$Ua} zr=4RX071OD0d!H~0;go8}?}~gK4&?xw34Ri| z7sG1_XGM)rur@e#iMc$R&AvJA+N4;e&5D+IYilnE&{>Uh!uhs!d#O^#4aICw3o0J0 zRHp}q9amJL1bpxk(XEL>Sj%ymcsVv~lrVV5S>3N*$hyZl9}M=3ZX%3MQfkfC6l1$z-c&?Ctb^J3+6f7-RMGetZ_J;$6IilDdY37zYnms)no|jeD*w>d?nQR zDM#*J=mFR_4x$^Pchq1}r?3~*l*%})^liVQ)N)_Al*}9$L885+3W#E>4_K3M*us-M zj_c~F?h9+x(*?k16RHZ=Q(q=5udS|_ow~qXDqe!M^?bHjK4iA?|<6$G4Jgre-K=zfIK(Jk~h<;WjIMkTRnNIERK6>jfbOP1I27C%L z14PritS6j-bL_KggO|}v*bKrSYSfpACZ5fLV*1V#OLuz;f(xe*A4A-YcM6{5pmi`( zZbBztYdkjV^xgz_W*S(sPog3Zp^^EYaAb~`W1<&S^KNsfUttKFrbA!0Q82N`%H%Mp)6G3m5Tp>_&ih33T#vI*~S0|=X`ykd*Il&&KMPEjpflQum zq_5syJP}HQgv15nYpYErl%5P|Fsw{~y6;+g_g^l3zDhelF3fRoEjN^q$_nO~is;38 zKOV5LaM;2rf>jgg3yTnM3YL1oST8-VbJ0ZNRqW?y$MuH_-Yt~2K&1+Nc59UR3?VeQ zOXkTiCR!EYYte8T`fu)^21cGm^&vyrEyoRZ1~~f9X&g1dhggsWCRVP?hZD=YzKrqI zsJBpyU!4unGGi%d^5vA4(hOow2o=Koc+YsrrGt5(?Q5F=o#X>|+^Bj+G~#k4=};pI z+5^VAbaaqfIZWS9_dbHD*VE5n3xvW#gl)jkctJ>PB?KAKAQFJraLs@uBWJ`k?69?E@5Bs~dx5RRbQ?VM3K2 z%d6nx+rL+Zke!PNFbbH(0{9BWm#3%85$8~7NxKME79uU{!R~_Z2JR60p{*gnZ)HX~ zNUI+@6!XK5Fy|6Y#DQX(a?9wrWno;3(au^bsp<9aCo3p9TD)!0^ zNp{a3$iX_y+x1N7T52_5!qnh)r?N>jJ6C&4qSFowa-GTBN!nHlrh=!sF!(rnYRh!S zu7n)o5_bI6X1+4f_tkSUd` zHIJV{w~8>>Sgs!CA*U&sp5m8$zR~VlmA6q_p5r&a3AFd6M5JI!qhjR|@O8Q^`)q38 z!uKFLB7Ov%rm~HuqQem_v^Q2U5#g(NEkZv+AxS80wJW&>Bnxc{EU4%`k3%8s;>_j1 z9dMWd0GtE1zL9MHh_HXO#tG8gh)q9uO%_N zfbb4yI1CPIcst@ur|rdUCp#d`x=;=|Lg$-W1d0ltmCkN*t7P{Rh0)VjW1i85_AW|BoYV4pb!8KB2# z#}ONurrCDDkRGO0@FHUZ7NUbMaS&&{F@%tTQ3Oty0-MQlaI98dgSq1wkh+Ig7#(jI zNfinB3_U5F8|ZF78ba`pfeGVtASn0^R(-yda@Z0Ih`dEt3`1eLtWQb=f#ZV#+f=;( z%qFef)9J^Wo4E7Z*vL2GPN|Pa%`SHr(-yj3AteDxRaCDYdzVuvRFvgzHbe{1y@AE& z#y&x56AkI4pib?R1L+OxAkbY}p+KJm#^_jVwN<^;Ot(d^xj4bWpM7q*o~>cOcC0P} zD*DH@Hq3?KeU95I{Fb;Vbz^3=ni^?miMM7mcNBai|>QzT)_(};_7InxV1^EsB~Ub~ZG^beIJ$@|AA{o%8or+=>R$^P$FMwYV*Q0wu($9LG z@DQIO>AN~4N5>7rCFaN4SsUie^QqA4%axmY%dH zddm@k*dB7=+mAw>i1rr;4_uUarGrV*t=6PbZ!uAdBOQ~$U}}Zj%0tP|NYFEMXd@2< zrBZ~#IBF{p9n`QFS8CW;bH-XLQ@&Pyy00OQ0EedvHLSW%$7U}X)0c8iR2faju5$JD zF;;NVBV_>|mQ7BX#dsfB0f6~{oc8%|mO~1g&u6inWP#ngTqK?y+)|1{w(wwAT2zi? zNeid8O!+CoR4>C3q9U*pc7E48uXh9`7)QaNJ)^_$P1OS*nV#q#U`0B_C)Ay7eke<@ zOq%6G%#TGos3wuv+cH(_IlP^cS8EE~i#O6`77Tl32vu-#B`E4v<5i!Cvo`9Qp; zcK~LIO%#!!G$Xc0hJHy1UJMqgDrU<~?CvX9Do*vmd)tC=3+tZmIBT#F(nx}sA+H!5 zX+;GAZ0od5)FG;BmD|iQHjr7mOExs5>j%Bm%I+XF$d{pWw&1`y$XP4xF&XNAqJZF9|6O(S^Pblz|fEDMtjiz_|yNunnJa;LaS1T2~CJ)Ps>H_Fd=^)r*OUlQV-rCCJli&?pYRk@P0evS`r3;&# z1rgl~lwl;e=IP#5niniwc;r!3yr_j)IKWr3$XkowA0-|wt+?-6oZ`qf)ppjh4+$h! zOC_q69&XBI+%|8!Py&74QmZ_mMATb_9tmU&2HFLcv5i{+LNuP)bR6F1zKQNvvQZ^^ zwQD`NOMN*iDi8EZJ3u_okiq3bu|;V?c{>qS*gD($w6jlP(f9n5`sBA?Z7Lx_!@b#EhMKr zSePX*&^7DS`I5>aaB9b0_(5gZ8#D(j(Ywz|iY0-r_q1;HE0VFmzSvnJ4ESM8HX$pu zby+OeRsU2Qf^j7tiqzo#0ZH002fBcy;4tKnNC^>)d3qeFE7XP~si>iuSu&~|U8nXW z)>vFxBx!#g`H)AmXva{iRsDO)_C4KfqcFY&fIo1W;8|yd=;lIg+FZ_qu&#{5W4!_* z2?CsWiLsuJx;*X6DB29FNdy^1hh#f1SzT_}`ay5nB$Uwtxq4h_B?bcb+*Rd?axQna ztb2Le9fuDSRia-4qLYMj?U6VrASn#kGVz#-T;m2`N>z3^5ix7ZHtT|VQ<*UYZI0fy zXWMM$8npqw*B#8hid&;^BrNOf^4ks*n)jY?ch09PY{(XIzH_s_J3kA{%lid#1g_n= zstQ`P9zaZ?YKAWT2LMBjn-RzG(B~Flz!S?3trLB%Tf9)Ch6$nw0f9L&2&C6@OCp5v z0YXO%H<~ZkwtY>M9j-gj8k0SIWFwxM)3)3>%nI>6WUXO7wgNSqMA+|%SaJ|4Dp}{6vG^9Usi1t=uKJ{b)XfL8V z&Mjnv&9*Ft*Fv?e$Da&Z9f^cNCQa1%RN+s10t6pebI%Ke%$RxSwzgIGVCEg=nQZ`6 z*c_x~s175*(gub}9*w4XV0|GvS#b}QBH&J=))d~6Bj_?TsXnKmC`WI)v<^G@JNgzBcX@0xF+aDd`g9t5p@a*wsX2@VO)ESD3*vKmu+Yf`h%X0=^5 zk=yyMJ)(wsLL+WhOTB`o(ds8CO6qpI3&ihLE!Uqy|xZbxmgMA>V-81RB*1+rXnOol1TLNhHUV1}a zcXCt1(^XgO_U0Ria~T@58#dVl42f5D-NNM(Sm4!rQ9}s7clkbo%q-v0XY|2Q_9%W& zgMnYaGa_DMSVaabv0ed)DiBbi%P;8?ROt#t>YrxH=y>~j8tp9Th$I2cqh^w zEJ$cG%9PuykirP+JU%dNrO4eVG_#Q^oDwSMZ*E2i(bQclGSW2}MN3u$X$?8u(!Sp#Ft` zrmrKsbflSalhg`f%Tm`>`aw3p_m-$g%G31w{y*?CK1<}bW9Qr!^LHzZUilxNk{rQS zEwZkKLGwB*o@=xR!QBnwf`t_)t=aAG7K>Vpgd}1zW<7v&%z^E@8l0-ACPz)AVGxx2 zXkc<2^2XWLdcx!arPjgVr`=HT+n3&;5Zc2n? zI*Dizxi?xBB^l`6XkC$u@FY=%W3OTLVKoXt+EQiexhJwqK*XebC3jbdYQRep9p#Cl zSURz>8+M&$a3*E~F6Sxxz}n`bODm7rpeQ|Os&}^K=99`RT9|R=Ye#K>rg=svu1|4a z29|j9Qf|BmO52ClV`MDq!ue(jmRu4cDRD1xs+3ke znZw;>#-p(yn%U1`vznDtC_uAo`o`a-Qb5zZd=iR79VuDm=SI?#UIm-1>=Tz~83I`2 zX%>=aCA3Tr1|1@us0MeZ*fHqbFx3_DJGIUOuAs2rf)5iz;Q_x0zhmq%RMRyb#L@`- zFLDxs?*_uYUMp-fz8Y5KQFD=6hHQ1o3$5;K1)j_gU|wQ(Zd>@9^%IjWD1JQ9&H(%% zi9ms{Ek;~Bo-YY`b{36HrESI4n4K`u3L4ekCS2ge1TLXx2YGP>WWVs1h z^7{d{NkcTZC_E)%`=Fc{ex;If?Uxdr*=SAkvpaQpIs^)e&^deq$+0ChWpn9jFIH*U zZCJ<=;)M!z%oydAiCbpsa9>zGFRx*t7gOU8vKk}-A$kiyJuy9so|Lw3@q3kfz8_4U z9h50zTlk|P(y1h}j^=pqZ)3`3*oqT(StP0EFgi&k!zGvzdCO_%mkcbHidd z7jYP(!u-xDBn4^gO~%|4_bRw)?jKZEb(O4e69;^)L7={$6_wXYx_DwIJcAK}EXZwc zrPkgL7b@mFls9W!>3~(Zja7N6vK(KMMG%UTdjo1j^b=}}a|6eYcuw0o$64Nd@{>&q z3bQ2i6J5_S$NLND<<#&sM zUX_cEW4G`z+~0^{rPALPJxQu0Ll%bHuy9T@c^fJK{Cd;5@cPUAPNt3t;u|<~Dfj zqB0^S4r@wV+q>%^7Bt82W=(9}0mT4%$5E!`vaW;CEk!(CyJyAZV2d4q#WOog8yIoG zF7Co!J%mb62YB%`5XEDn({|Y4ua2R1yyg-=3oRi0KI6P7axk%Yqot!|We!+4%`* zV^pCi3AjVC>yO%V#*41j8!A42g1Q84u&~ta>82-AM%RC7T11P;6>IO8#Upha(2ZKJ zh;k&_=~k}rVEx?^yg;5QW4Q-%l?Ic93WGNp^!m2Cb~E$m#x8)Y|}U#kvFPmDTgbLH$xi~bxAI)LCq3_F_}3l z_OCqXy?RNn#PIfDj9b{;u28Ai@ijJd;rpeQpXTuatPf0&z=TSs`$ zMuLd&i*a5ISt$0^jJwR(WA;~$4o=I;d zZI&Z=Bk|+&j9p6X`Gna0mZEH;)knrR)8;u9)N=Nu6DTj`R+oD9)P&1XeE^P<*5wQW zw)IGt>n8$TvUW-0m9UV-JVFQ+Qr@=P;mZyHLYZGymeJ#OVr3#5(7mg}6BX98CBlNw zA;oFvK(vBDL#bAE+gx|d^%@A#y9Grc(5QwM%-Z<;YFIQtunq+@A*bxre>zmMc!~`n zgm17Mup6;A6hgt(dZw<}UM~FJ4tRj-tW4wZfk8#~7FbENEuRr9lyM5ZgWzR)?WRj3 zi|+@$zkko)c%y$juV5Zg36}6~DS6bw(JE(jippk&St`VY?gb;5_8_3g6X+<;TLj(3 z=SPQXfUaY8A|M6YR7&qSm`*7&5v}+UG#qyUEX`LZ7_d(*PDW@sKpu1kunha5s91xC;l zJ=PRd++#uTAYzYj1QBAx!rfz2(eSB-6f(IfLQp4Uo{(b{)oqz#hctm;Nw37$sm~V| zb=GodS(warV6?Df_Q#$&`j0r2g;J#lebHPC1_{8p?aLN|B=69gzBDMdwrXCjRG!W= z9GjYmsP{YD`JURUUZ=N-o2m3h6h(--Imo*Gcb6-V9p2UIm#eXWBUokTkkIfQaK9hS z;g^@*g-=h9xjeOJN1>?g$JjNas5ail3pp?~N*cwf4Gr{g9HJLqh)0dk_|7+-Npu5m4G31~B7ha!W$+p_|HW}mOGNQStb+;lxSj^0-b=aJ5N zIwW}tivwwi*M}ft6!GGCgbl!0qIE+`Ag&2rXnchd=Nd?pu;9qpPq)ewHI!m!G!%&V zLusTca4e3V5KZRdzMk_`dba{=B-+ZYB_i1;V%}>R4^KT;TCaK%Bf z~*t+_S7$c5EJgS;Q z5{In7Z8{KiXzfg}<~LCfr4U%})^SYOeEg`fI7^~otR7uSF%?D4yc36c=%WH=1l4$r zXeEAZM-ruiD`*4tz&&&NB&#OWG8{q<j$pf>`h96n%9IDjrkYNk z2wOOq2UBbC2GOOJf%mY>mF8Se5h$mq*ZV(-bOnyjUyfcRt;%^17 z>z9LQ$>~q1>8;=On}y9WF|Ar=vZ)ZY-t_f8ArG!;LxOs1i#*6VY^k| z8N6anh#*E;XYs-X9ea5+s^kN%H5WS@m+CXC-*pHiMi$pv$r;vbGQk6i3e};Uo}S2e zJD@Yl4Ur6cab#dUSdVhEv_)cGZPx5mJMGw24O~4S(k|4oZyr+25cQsj^yww7^jhhwbn^u0%6xj_{XGV9r*xWI)wPE@5cq%}G>AOgmf_{Y@FkmrT6F6XO7B!(Lqw3P z76p2!&ZJ<~WF$y;7iCgY#dY~VQB#GMO~TAM=FGJFyhndkze ziOR)?PJ39~H$hc{D~iNfJqk(PwQSq<%GRjxamP^cGg&ks#P~wPK%*sHFv=U&0tXQG zYbg#j?yY#}IN)VhR%;L&dr;^y4$QwkAjbt3flp2IC9X~Ck!vu>yJnO>60M|isR&E$ z*P4V$BrCd=_?<7@JG9#5ft=By+iqAeFn$!I>J;P}_F7J?v0_W8F8;6&!~yU?8@3Ik zp9*DQegjk)*YsnU^H>b0s5jZ}jsO4$$z+`VkuuOHFT=I3v9!^WO+& zIaDl5Y1j`h57I_%NVJXnVK1Ld> zs$Gu2g~;M$KrZdT-ycqCv&D~sgK3_xd%#S4yv8^c%L)asQrW`t?y&vNY{KSbEi|GF zjkD6|;we-eFfnQ1GC~r>%nIkX7h?CirHvO8MiR)x@`I@W@o@8VUKf1A19+WjOkvGg zCe@IFIB0Q<)Cb@};1Shzm1yNK;KeNUo(yNXp5zOun25BN>#ASQZU`~0SZk1)MQ{)) zbr<4eUsN+QZIO`k_-PBsvigJv+{2s~F@w@|E{fMVuUyWcr1NFHlF<)?ivHGZ1G(#l zZ3l5kvCMuyMUPiW2Hv4JMxrDYcZMPM6V=ynNxVXxLD&yQu=M-!df&W{>j7RtO=)=M zjcoA}^I4M6<943iDnMaxRAvK!o`YqiSTKcT5HWyvqt~jy2wiEbj~fa8d=po*$y^o)MxE^3*med#3XAdyN!U{ zYkzVuEXkHDh{O$&RPZuGFu^|q3-m0mN0SedGTcpjK%Vc&Pb^zS(Rm9q9_PKPLy(0) z#M+{tGI7_dW_3^wIjMzDCNpla8%8wJ!q*Ti(UkSVh5c$z0ha)1{}IZTC`f_L>~1Tg z6Tb34jzywUv6#=x!tdZteJUHe3|cha1}h91z&vO2(!yL?);^`EQY0BE%WFRNT{Ii| zUFy?bz|8SZU4t-Wzm9gq*{Sg~2L*uj6}&tCs$jz=(?wg0+WuK^M4450lJ_X#7P81|ED^9Y2!&F>k literal 0 HcmV?d00001 diff --git a/util/fipstools/acvp/acvptool/test/tests.json b/util/fipstools/acvp/acvptool/test/tests.json index 736e1d9147..17dd7d80fe 100644 --- a/util/fipstools/acvp/acvptool/test/tests.json +++ b/util/fipstools/acvp/acvptool/test/tests.json @@ -33,6 +33,7 @@ {"Wrapper": "modulewrapper", "In": "vectors/SHA2-256.bz2", "Out": "expected/SHA2-256.bz2"}, {"Wrapper": "modulewrapper", "In": "vectors/SHA2-384.bz2", "Out": "expected/SHA2-384.bz2"}, {"Wrapper": "modulewrapper", "In": "vectors/SHA2-512.bz2", "Out": "expected/SHA2-512.bz2"}, +{"Wrapper": "modulewrapper", "In": "vectors/SLH-DSA.bz2", "Out": "expected/SLH-DSA.bz2"}, {"Wrapper": "modulewrapper", "In": "vectors/TLS12.bz2", "Out": "expected/TLS12.bz2"}, {"Wrapper": "modulewrapper", "In": "vectors/TLS13.bz2", "Out": "expected/TLS13.bz2"}, {"Wrapper": "testmodulewrapper", "In": "vectors/PBKDF.bz2", "Out": "expected/PBKDF.bz2"}, diff --git a/util/fipstools/acvp/acvptool/test/vectors/SLH-DSA.bz2 b/util/fipstools/acvp/acvptool/test/vectors/SLH-DSA.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..7b87ae05dd04cd8d9651c288c32d3ab0e2290abd GIT binary patch literal 17585 zcmV(*K;FMXT4*^jL0KkKS+@Pa%>YA4-+)z6PzL|-KjdE;FYn(fU{xOi&ubGi7EKfb zT3RJrY_*aYvQ=nNW@ccr&84c4nrJPxm1|ikDFH%-0HsM)MvXFrmU;qFFz;gfq00000002c#zyf7bkqi?6OpO{EGB5`)0000000002DG{V( z#G68!B53su4WtbQ5t@`l$j1F!xu?<5zcjbjTB`av0}z>VdnUurd=x5(hz78%Gj#Oy zS!56q0MfoR##!$LS9mIQAhH6@FMpJKU#6??{)cEvo3`w-{+jH!snQ2=-QSPubE#uf z;{Sunwu$2r3_+X^3YfV=kIn2MoW@MTM46I8Ou>QcXuup8I82Ze2o2G{u0uw3Kz-MM zV6=I|{1E2|vOs$~J9z!hA9VwNxc%$r;n77CGIg3$@B7tJW&d=|%Y$MK={XmGT7$a? z74A@Bi$Ls!2TY=^h{R7`dBlms#lA9&D3ED-AtA#iArwCrQ8XZ63-rmZld7Tk1`AeS z5iQquLwLc?9-PBK`gac;^p^rUV2&;%v!H-5*V9DS>MO;`w(-JOQ#7C4m+(elN?#qrsfIc zDrAh@6rh`Uh2z`oer}vve_$4EdqX#;0elr_9F_wh#d0TKw`@L$dKURwPrZZSYLJMb z7o3-C&w(T}&KWICjE$@-;bReD%=>`?u?HQCF%B}^96j)sL-mz2Ru0Ibz)t)J4_nr4_3i;@vpugZmV zo&?rlqROMX2cg_fWsVEeRI`O5<4E*&grc3T5RhE~W!;i#mZ|M_83DZ@DR~=D5JH7< z!#GCO*~TXs9d|jZz%)a+%umQY8Ju#OQ+ySArMHJ@NkEPgXHb@^(1BPGec0*^_MwKU zP!8gHrf3aiMkQ+LcJd^_HKP0+U1T~0SzFCX6W!d?866g_xt+*Z&bzl6fFxz{ARZr) z;Bt{|7gx|4pp>k|dBhklbAu6xQ$3K+r2Zm0SrltTuJ2=Stwa>;l0|WYi9NcQvQ!r^ zG8%9k2kG>ummJ507GYBf*?B&!n>$uc&Vsdbwd_R&f>{@H=;Mrm3~z3j)L^&AbI7(_ zs*E6{x}LBzltD>nb?%+)?yF!4Oo($5%ik}VQebM5s&bEM^Jt_vtpIt})rfKnd5+lj z=>n6-pb5zcLn5$QBGGqPoo%DR8%r)EqD6EWp$|0vYwbu=EPGE@hi0*?_`D zgYkQ%ab!sAaINQI-Zl%`sCnb4X2ZmXZ60hoThdt#nd&JFtL|;wgW5H|3Yvu!*FJbY*t7MeDffoT5OZa{hLuBDu)#6%Ys&ZUr2LKVTnN=6*81AMe1$uZ>^}#YAGH2S zP)~$*>&hK2=CUr-(X<>X+ajR8^4U3+ZZyR*trV_sDqq>cMPU<*p%A75t z)xT%fxyG9^v(F>2keYiA_=$=F>E0ap*oJ#=?B*lmO7;evWFkV!eL zTJH6Cyzulfi6Q{}&S4|QgPjGzYf(^)vx_CNvOcCD>dyt-`^0nzLfmlNx@Bs^Ogc_6 zeM+oaO+K5bNdT8n)s%+s+TMds^Seg)D$bmjK7JQQxEF}*w2hUsP0X?!x z%iYK?6GV7;F9==R=h3s#XgqBd1;}*^4f&S3>(zr)qT9OI5m@S%J1FxS&M_yF=zcKM z*QS8Zd$@b?vq&sgpEFN($Qs4ZJg^o$v=)yhliO^gTT`9?4&t=0ZuwacH4zi=4JT6fV;>>zEn331p&<{i_K?QH3HYj9%|0Mg-#!J68u?Y=Y+ZIy?3{1q@Nbat<(1I^dL5@?Ih2F*XEFUfBLp{3H zdbBI(&Er|-FDr;1<c73+(`ue?vq+Kmm+hT#B>S1Q=}fQpD+ z#1NaRw(*bHm{1#-$LN8tDw9?AjL(ydG?y|QL95j28d(c@(U5m)s5(8I)}>~A@8NEV z-MH7UI7%2+MP>rPv5myFtT(L@mia5jRxafVAdLf1+aw(frBXAsMY#?obCX#4dBjX@ zW%b>2qItrHScV)j7~@s$tdZ^?Vw~jefUH>pmd0m=Np+9W5=~-&dFe83Z-O(;WJz9= z*Q9&L3l`jSwjPl-Q)4(5W$^*_B#l)35ZyX z@cT&I%0O(~uE{gBPT6zTUaFqwTY!3RAlQ}8K}0|rYp1~)p0+c{+^F-vkFiAHTiDw> zT)ytPy1K657dBmFhu1d2FB=Y&ZG z2$=Sg^0Rs{bI(M+sKT`8$-{7*+%9*+9qFaQ+VbzS%k`}u1|OZJrm~2O#fh@#WKt#H zS0?q3ZfP10WSf@XbeNbo2Rodty| zg5gJ)@uVk<6LF&M(%x6AR@GzA;W)M`oj_jMW}R%AYs{!V?_D>D{i%xN3ExK;N2*%H z2w8_oURnh8k{5*=+YU(X%4qwGx3U_ld>104FuV6nG>e1|YM_j=K8v$sBJfRqvEuK0 zVKk+eFd7U6BU9>!+MDJWV%u3iu#uERcvG@9BnVOrghj5MHC!vwC5&q!2LRdPKy|@J zb2Si~!b}H;6@Bm+1eBcXWO=K8D?189HS9@LRgW8AVQYd2+Ll8g@0-nUiu0Coa_cvR z71Qmo-*M#EdrxJv*lSFdHcvLeRiTs#`rnf10M;LfDDj2!+z6>;Jcro8!23SwNTZK_ z9(Z*xdKMT__(`M}8Cn@ef^^I{hQsT*0;aa{zOD_xhEDQ^Wj}E56>zLdzA9U#I27vGH>F7%HoCh zHy&;`jd@9Ud1N}dycwmMGZ+%Ri^Fck>_(@x79;{iMitSr& zJQY>Vq+qqbBulzhIK5aP$r`D)viR75&yjqLD`}~rMJ~gJA;B@rYdTI*Gg*x+_{u@u zv)4{Zw2veiHX7G%YFesl4p6u~Lq6$Yf@P+3$cJ_74w@7WWZV_WYL00ft&l^}tDq>k z=&qXqBO}NXg?8#vDuCH8BYJPuL0pj72+srO7h5h*(W}cv22$!Ewe{FaKt(+n+q8MGcf6t)sDPN zGtV>R+r!nStVP$M0JVB&4k{e51k9cI| z!8ZdbSk(#5KjFuo6JV3&eXbTM8nIo)aE8Y1XqoGFz&u0YoQXEQSwV=&=W(gGXZ zQtpkaTth1A(#>EP3f*!7%h*2U`D;n%pIz&_ERbtayrI!5O|>Rzu5z3wL+8muj-df* z*O)QZ&AM>$;{o8yS)qf$o=&aHQOF;NvVrgc_pBoQf!&P)PRv z8ND5B%hX^iKuBQT5PDu+&AG$ZXm06oV1b!H?+TnT?~yn zhE_UQxhdYN+@-Ar8dc{kkxH>h5hW%scPAm%6Dv+zw(qBn*stoX!0$5(h zZl%Q@#Lyr%2a`{=y@c7C$dZ2BSJ*M}rNkodOzEvOkzcZ+MdY;>Ya1sT~>BON$#-qX(+ye=@u>)HhOw2EM1Uz8HN>77$gr^(Vq0V0Zc>(dafMi z;w2fMy_M|sjWt~niszPG*4EO`E7$0EY`M-}j)}}H;WA8(^9;C(#VD(2DXvBX$E1rw zH=PiH?rt!irkC6&WK2oX%;%Sn9N{#^t8`0gCU_OWaq4TwDw5}szW z1nrV!@NH=IcAtt@t^vT=L|RDP-k$~6Hy4|-Dd#qfTwf^^=o0D2XV+c=5eliI`_6-a0oej%Q;#;Ez2Y3nRO| z)M1&>7q5X|Pi>89?R%~|TkTSHW+>NTN-Jfz>q8s^(1ao&Qy$7@yFT7cBsIk=?a#Fc z{5xUm8R?E&ka|3XnK=&$@YC0FyJlrxB{>ad!%>3=jJ>NZgX23~r@RC!SPB(Z5mY}) zJl`S_lUFvRnuOr#CZs7mijyfFL$pea3LL0)3SVgWK-4C|1*bi{)SGMABdjDs0$45J zhkWkX6hv)Yke6=>;=n%NkzmCFdb@XIO*1 z3wI8h{XYy})Qggb?rhZLQof*!$$K|*3!bxB>YKc51MrRcN*gNU@Vv!n-lEpvT-mJ-o<>Xd{tOe97BqzUT=DGpK4_?Tg$X zF6~~+DhTj|5}&vs$nSaWQ8Q+v+8Z3F>$1gS6=}1?SgN9f zYNXL#anq*IYxtSU3Fg&KbV@ZsV8>TR3=Ms~MUK=@8FtS{JRZ`LjHB;$D^xOBQSyrx zhc^KPL0aVd3i9G+welj-Z7_W3z}=64Dj8K;Rm*g9i5ZT25W3!XNR>%Fg=L2!DDooF z$9a1QI`(?+H*&m>E|G3l4{{Z_dD*y|(uS6vywGc_rH|0FdNoxucW-qv{Zd5tkVD6j9@~PmJ7bZBoV8U9(HUzS^h2E_fd(?jf zri@4^GQ;QxCn4rG#;_+MY)SU(lyE#$FfIrp?sA$;L@nO-Ce$Tz`#lY;B~xa1xTD~k zR#fTrwxix4x`cNnJe;1Fwg$C9eT)MbqmKu+LBk047`$u37+53*rmQej)D1jujfg5G zR@fX0LE;@;V@b$LXdHeKy7u_`Po?NjxQQ9nH!_#eoetVJ&(zADO?!&L%KlNZp7baQ zF>@1`tMNHdLNHR^gS<##3f8f}Jo=Xu; z>$U`geM9T#90|Ljo+hnKrP#HL){#VnqLzu#(S355{cPliiU}wDO`t&7?0b$kY@Ims-p3ws$l2{3 zT9P7o06`w0nfl&bu9{Xna*b<>R@IOuY zx49cg_^?3@lgKUwiZvXIso2c$ni^FgK>=~Mp?Sc$aCiB}TI)q44UtJIwKFTVdhMX*s zW=&8gnjrRLX1@0Bh3(z5Qu`%M(<~*v5N-fYc3dnRQ)!ZILff@aOacXymhc8KWjUp< zPjn&P852zDh%7iS8gG+Cgt4K@$)g!e51$-5%!%IgSx+m~55dP#fwbIpJndO=>bq-Z zbxU*;EVNkg72Yn!?I6E)IGP*ABx~sPG-m)&!q&Q|cw_=Cd=$C@_7P>WuIS<%Zoy{S zNk_A4nwU%#&6%Lgvi@b2th3Gp)})YyC%nyVzef@z6=oC2Z6d5{?u3BJ4EoQ;#xsJe z7~|h`ZOuX6<+0X`6P-q0G7UHqcWMH|`y0rC4^KOoD!xcK!4|d&AbQaVH{7k;T`y&% za>mSGB9C6MSygnrmWCKz4do;vt%>hNYe*Znd9eDr#iVYepiNDsL1nLizO08`{tfTx4f-y94^+4J^<-w}GH zm(Kx*B}125>&fxgdTX8URN(5eRnEaDoFKgvXj|DKbtp!PiYYm&`Z|ul+StZ-fyxxC zf%KIC(!!zf;S&JdA*yg*3i)P?^~8bmZf8--NL#>*ruXIyfp=qnO?KJ?q)y?@0fA*Z zmB#4#`Z!9KFQ-$Y>LO{wnL*)j)eb^J8!!oi-+`+L#?|_0%d?Rr`&(Bp@(4{WN$p~QK(=6fP9VD5zqi5Un@nrc%V|H!xYgvBN!hU@V zGgRb|5Pd2_4Rt*cBw6lNtSH?Uzp_6EQ4DVU7cZG%e#7?X6eaZn2z z+C4oE(Kcn9GJvKixGyS(w~*U#qyZ1DZUBPHy$uV+)N=runwVL2Rn|h`Quy`q;)jl4 z;D=oCJhav2Igw61csW66F znlK0{(gds5M&xZmLo;Q==~;bXf}riZ!FJxg(Sh-UW$7z(fO50Gj~@9d8*eh(MBvLnL;*1eO!-)53q`lB3UBMpsU zvZr{sbf){L`gW(>J`}3uQ5O|p5lV4CSCN+JayIn~g4nRDvRqbol5V4g??Lt`e(|`v zR>Syp9-HVu*>rMz#=0V=sfbdgI>P|X+D0EePRJ!Mb|SlxY`RG@a1^C-yxv0Ry^U4n z0`P9+$Y4FVwYFP^35~Fr_1Kq)o$yIz>lPVp?{)j6RrU*8(=y`od6XpQR$2zp;Ig5M zwKTR@(ZSH#fE3Itc}LpDJe<*46yWpE!J2huMY9IImEEx6#443uAx^;?8^W;2RtpydN&<@^j_s{qSgeqe5w8=f8XqiVuv01}?Gtg+dZ3ddEt%u}|=iD*qSm0)es8FF@mw#W@uuCVnp@hEd_eM@bj6iaONVU_2 zr>XN4Qv_(yd{8-njwY}!5x1~*(Lx1Li~=_9X(Dw4VJa5fdnlw2+>uhwwoE{J| z?#k>ej>%}YKEVVX-+W=NSWT@S6WcuyOchKezCE! zZJ8~Qs*?j*=5l!Sj+q!@DfOhEl%5^z7-CGr7myNF6+B5>bg@j2REkDMF|x>GH&CNG z$G?0M+G8{-(Gyz|EKFX_uVA_WX%aMQv(V<bfN{!dks71GIxdD>9NG&rHVww#EcznQWqpT2nZ(c`V%v z4*FZuf=IKrYk}EWF~SwfXI@mT>Mr?UAuPZxIIl^-ST?n$a+!^r; z+a2cimRs=2K$}Na6hAwjBs(%&%6cb)An;}S^N}LqTHJ0r zccTU0O%y1Gl!HT_XfU9}!wg`{uz@bBRTg+bz}m10Ak0j-mNIgpv*>72W*h{idSUez zF?z(h32PB5b;y{i!2GwloF6>E1u|Ro#M-N&l31iF%I!FQfa%G+-1p1MeVMEPz!kF6@g>@1*x&ef7r7Kda^$yPFfIwDG)LumRR!=%JGW0!} z=7Y1@6LkcD%54(vDH!mFqOE`uGC{IAXRZqRb6FHzeB!Dru6ea}VRLnLNH+{Y1i-Ba zGuOu4x|mP88@cHmjpuSV_CmbCaE34#Hf4!X+?`r_3~I6|5iI)SlWFqz1@=+bH#Su1 zt$ZX|e#I+N>M6_V#;Z%@1nuG;$tU38+}J`n>M0GzNEm2fRHhAl^8nJxWpv~!4|@ei z&w_eA)hD_l>r}V7RI9cl-p0}K{1q|m2!HIT=6CP^LV%qp87_CX_lTX@HXPadIv9C72`6g zoZuW9dB(J7S%g-=T}P|ahADdylIGJ(j=jUKx^JVnA_Si2i)uy!mkX_Sb$<$wr?aBP zM5V2836C&$F?efrWmkyrbr({+_`U&Kym6b#P6KCd)HL)H&`H@(GgRolD}cu1wHwi& z91FRq!y(qU5kk8ZdYNwYHw#8$NRln?dkT5k*RCIyj1=^utK5&`3XE@%2VZJ>nML9c zu>m|;cm=APX%*q_07p_J4m5S@G(F@~E8cREB?$p(P#9Jk!Ng_k7ke3)${_H)zPmnB z_#MtDmY8|qrHBG2%(mBRJWVwIhQ6M(;&q0d0L;HPI^<%9dDo2z(cV2}xtKyTozZ=g zO|>nO{U<%C-EpX!5+Jc5mx~yqo3bVZV^Se>F3nuLHtyQpxZ%*IoqZ9cehRA=#d}10rg-ctjds|PF_p0l1LtC0TuYKs)q`+lwHSk z?T5fe?UG8YtNn|Vsb$`yU7IH+s<8q)_J}LX(42&_jJ9+;uy_KYD9^Ie6nE&)Sp;l# zd_-QGQScR&jvXEdg_3e|ZQUn9MlA6eRQ8(*xqyLEHW1HF3Yh~FSBS4&K#`kF4IP#} z;nen@vYh0{MPMu{`dhe`S^|feN2j?tg1|ISGIhdx5wW1`fN?IB$XHV)&N-m3C>_IK zRMVM4@Q&~<=cfZsp1Ml6rbOoD!rRb%GFH(^m&*wQ2je+o);(fvg)5*uArr*1o86y<701CB02CN)E?}mDQ=)>wc04v9i5~dRoZ=zUIH>&`DFO2I+a)#_y6K72Uh=;;${ozw)my~N_$yFP&-U>smrLQC{n0Jgq!_RM;GBCvjfEL5G! z1j&?N0`IagK7mLm&GwfikaEoO0Hs-8;(1F}rXb+f2y8)+Mr+pmF2lH8A!PteAx=dz zJE82D<<-JnPd(e!i9ewT9|xDK^f4fL-2w%!{QS}R5iu!`qRAxTy5T8vVDh;@&FBIf~djChKFxYvkk~Rfwg(Z%q6RtdAKIPi_A9;U06FnQ$6o%Qd*6LX z-?8`9phLlf-;cW9DcO%l23FTZJQB&B1CYKjgmhTSgjYPxn(;c)h!XanP1hG?#rpU&h^=4=?x%o1JS zP2Ih60+swH-b2Rr{k05+mDf0Im~lblTrvXLzfsNSSt3rtL&aQKCVGd``bmf=bCaq! zzC^BNBB-j!VDb@qW0QPnp;!=|jP)x)H+fJ=2xN%`VT?mNb|jJqQ!6)Xesxku=oiGT zlL9Px-aQzuh7~UkG!s8(^oXlo0RC$4vdA=P+=SvNB5L+{nSuQ#A+NeY4POSq$m&bwFDNIp?{(GS^2 z%G$n6Saz1Vh=&BU7jjrnz+Aw)WfAauwdcaeNmK0w#1wG#c@c5Cq}yYBF(H|P5pX&& z&uI0E>l5hHViiogw<6Pjnx)2fB#Y73rjNQvmZ(e(PuYm>mKB;M>#+r6+SD?lEwRgE ze=rwOUowDzOhN}dSZw#F1jzw-Q0Z}e=sbQG$mC%|a+*aqF*Ur2mChx@67CN>`LAsB zp}rO+j_B>u+IqCg+^3s3DbNJrl)h77D7ifzrjM%vHWiyO^S2c=5Lh$St1{MXU49K(U~4cp z9F@-$cx)kNzLgop#B{x-@R+u?IyN?>qQzc#rP_$s5r(+*c9?pAAA8mUiowjY5D#eH zXIygMAI4z}X4rJkU8=3OT&n+VC~QLbA0L(m>bo%$Y6~bJu0Zg3?S=0nA%(EFa#p9c z;E}4GS=Rw)Ayv$5BwU%3O8#*p2F~5MnT0!8Vx{9W6k;pO&W^7E#eytYdEQ$tO{0X{ zs&<&{N?rC0iryCL`w^IkCXKURn&7+GEbl=^-H+wLFwaD)Yma);9@l2inq-NMe#jwE zo-NQ{4vzDB1e0j9M_jH?3fO~>#gKYFm1|LUbek8_-UH0;OGT7>t8qoYf zI;Kl=Nx_j24W))CWu0S}q+4sJVsUrE;D!CV`MOgb7RnC`(FOo#qe` z_7agz)X3;FV26FbTWNg_C9$sMT7w2`QfybfBfye~fZ>)bqqnEBd=)&q~(?XKz6AcwE8J3!-3eZ6H=B zkd6hV<;L!K%-x%!GDAW0rdq-w7+EB98&c&>Qw3VmE4Xv1%x3q1Hj>n+?1ZEhrX7M% z>o}G%R7P~~9%dAvkOFf^L%P6{%#>ZMibdMAHr4JXybeTgs)iykcqd*YGB}r6LhH4K zYOP*@eU|}YT*7NgAa^WU5ZauJkm-uNVaXU=_ZW4tZMvs2*5e!CHJE65=$KGiv7Oh1 z`-)kH71P?zCdG@R=PgpFJYHP1Pa|*^1?%6hh}Kjls%SiGm!XD|4`mS#2-Ypk)XZ3x zuX9zYzK%WtJL_{AgS~BxDag)f@*=cSgwzE1J zGGyV7ptbA`?vc%7Rw7|Ihi)5)g^1+@xa++Mp0kCH=j^5)s8e<iq%@U-(q^6vQrICgW8@g+1-uf>&1f& z>Ac{Eer$SE@)<(qTt*I>q|ym)*o5VWETZDb48vI>%%`=KxX#{&(&d_fRHasnJxyrH zyGI#umoy+1o3bUa1OQv=y1)iv6$e(X^5_er{ib4G}CKseQq0E=i8^5XBLq1%9c5@2 z&6*W?H^&fO&m?rhX*y^DR4J3Pv4F+sJA`VPJ?mMG_ZaNMvb9OfCJZj>t)L(-hbj8o zy9hcNU3Nn}m*{Oq*17IY1ij>Z20#QFI;PClayOu|Zr8yM9>Xv>o2 zSK7J=Zww2_HkgzQ>39;kkt*y)9x?rbtIj%uu=hh?Ibq5YoOX^GQu2p>fl@p6>-vtT zb2pN*WMtO83g)T0N?8Nher`dsV2rK2lzUh_q~-%`CRM|ALENfL$|a_}j<5nJ*j7|n zU7_(Zv=*dCt$_x4G`tSJOs3I!<4Ex5H9S6X<7Z+!9whs#Vmn#l$`t_f*LIo$Fy2oC z>>EW78jco%qUgo0WY`eWqt68L#N)w1*Pq7o#i^n(xrQc1tE+tI*I}MpBbPG@n*q$j z+O`Q`^Xn4w-YhgocUy`}Hee#^3~Bz&_Lh(mm9M@ELZ zW(=OdY3SxFJjqYsBo7 z9&MZWBP=%;z<|Q&NZjW*oUH8VF2$29-aZ^|cd5=erP(R2F62BWAn24nvq^O_z16Do z7#My)+5pdZU7eEipg!A#r!##pwVTW8rOL=6U2!h8aD8`iM;odtA>iFWP4bwwRpVj; z0Oymt;ki|K(^^V!u8{TectP4oobkHRfk$+R40Z2QY7ONM-gTuA+qB~dN?Mr99l^g z2hZ!o>?*zVg(=6O-mnvCvGEiM(+FCr@6jUQ#G~gwEEM2V?@MWDP7Ctgd~ozcBP<6; zB(|@AJ5{$4 z6qVJ$j7l7yWbQzyc|&eM&bGEu%JmdgJe~?`%8U1E?x_u zc`WNt+k{lqc*!+6`7EfuhcFzxBPYiTrUDlo)Oj4qKsjY<0+sM6ah)cX8!#evk@KMn zx4eIm9(XxRmErf+{&V*(Wp}wpcST=C2z-IuPYsSvYjm(SCn?d!c9kQJ=QWsxMjwsdm}7xrkZypdECk9# z?Mw(Q@HSa^$vkc}^=DA!6t`yc%NmINTZ}eloFzMbcUhPPfhaZ}xwG)#MEPu#9FP&5 zuTnFikj*j@o-BfUFQ9nTT#=_7TY-Z-oIXBHEW)L1+dCLfUkZn1OnA3p<9u>e>QEF*+_HY!u zGF(2uEkN~am2C{9GUs^UiL*I~8(#fY_Bcwui2B^Ii0U1ww7nN#{Z$hzM?FsOcmn3N9%W5kT@Wvi=la`DMfQ_y%tPqO# zgGp!wGOfoRXUGrCw`W7htiD@7!9C9~W)y&mISm#QFnwHbG8WYXYa0N&N7oLI)6QLb zFJo7Gt>u>}cy38bye|ta_uEVGu*+0HPd4{z>V~!Wcu-P1(=1!G2lsCcA7WWlJ=lZ; zOhEeso6($#*J~>0@n^MouFrH0iuW9Lyalrmu3975zI-?rs!p!(37L4{!wNYe0}Qf3 zyF?pWQ`Cwzo$YZvS?H?iPq8}RvE*1=*!wm{FVNbUSIZ2Tya6loEF zy3`5PFayDBmi!5ks~1P=uK{9u^t=gxu~bqH=;oyuyKyGq!P&GY7wBaKXgM59nO=Hx;@ts|R5Y8`#hacOGqv=FSE%Iyb5}dQ8o|xT51k~+37-yB)k?X3fj*A64b)c=Rk`Q2ku~G3$bmXMy zAMJ2)m=)3Jr7urUd3?Z3AOz)DfrhS7m8(|#5#ZnwYf$!qi|*m&dWeI|Qz7Fk^rV$L zFm`*Ps0W59bc@&R3G9sAx>CAQIE*%+W*04r1Pe5_GTTd%qy3P>dlS1U^@Fkn6g?C-}?-6@P zz>*83mK*;Mr_z9z=fe5lp9tuihzlod}lE{?r82WNzW())*^{*8J z&|(Z7xvxtAR7=X*26we_TQ&Ul*;XkCr+y?22@{R;-O33-b;BvbcB*aIxwK2!2{AiV z6^-R9tpr`G%$xejojMA8;*u0CPl*iuIKvndN%fM#s$3jze1Hll9%gX7W~oSIobPLO zzCe{-P&$i4)CGi3OdgUN;J27qiH9UKR;Up*ZbI6DI2Joi8j0E?VI)gjinUroAX+_6 zH7LnIkWmG9w~{`s!x7|Q;G3q9@(??67pTy(kqk9c*^9VRBLU;FAW`Jd1D?}c_Uas0 z%j9>s3M57J1vIyH;`ZkArV4ry81axPJ@G|C0w9{eV^`O2c1O8bWMzTj>Lh7l$~3N+ z>Kzlc#$#!`3cG|LDs@obTiyT!o0$^$h(=#QjbYXm*FQkX!snzsXhF50doBj095{2Q~;? zU@+-qlylsB67<=GJkX#;-a_W2#ZstLZ10G?-EUnb2=O(c0^RS&34J37!J5jG*jcWy2Gd`a{%{FaT%W9R;9|q7< zb9;5pag<2$79e8Q4tuwXNUjlS!C(SA*$X9w(B5KH^7Iirn4IVZr5uu( z?+eC3l{+xvO+Sr+y57BDJb1ztp2*;3Y62wjkr0FV@V4>`fP@gF3KgV$GmZ+nUObUw z-fvzg6%V5eG=q)Z#pvNcz^t--1G-YQkXC>QDy$ERRw;M2tj+_sXOGI5_APGXNV>-9 z#}?gSFqjRwPZ7XI;$UvI2ZS54DK_TE+7g_`DAP@g$c!G61t^auWO}A)LeX$rCVV)2 zeT{nFbQr=%byFJ4rHRV-Ti*wD?K&Yg&vKJ^eDi~`F$yh~_}oobWWO(gPys@f3A^1? z3h2Hmt}u~4Q)UX>eOqDY(@cdO65Dd0m7DMA>&;Nj96% zG3i!*#~C6K^Co&iAd1C+yl9u@yf_OpoC$$5fSG%@dz@7D4McWL6OyUEstq`HC2N<5T}bJc;eyU&_KPKj zb>+KewTbJ3STQ>JvIVDq~laJw^|!n&G*`q=F65#hZU0gwc5`z@Ws zq~V!f05u2CSf~1+OrhMvr=@W4wDzp?uV~flNGVw`jW?aA+Mw+l5-yO@!8Xs! zCbKRW_*Dc<#ss6Ff#<$GYnqdOERuCF-$OM#g4^vzFLv5dp@_$3KteTcPOHuN*#QS@ z&LDShsZg%90W&uj2lpV!a|C5Z@#SBG*7(bwWY#JbPdRp3LZB^c93CXy5PN*%ITZr# zq`7jS_|87aBQFX$6*!UQ9lb;pos#ly7a}rYh38h#^FWLyu&87V`gzpnrMpe#9zk~n zz-Y>2T(g-uYrMn^8Ldyi0Pr3aTt#)?M1kldDVzw8n8_)*otnA%O`KZu zv4YT9J=0@GGBrlWlm^_u%;7K9Kz*P{yr+jCD-kaC_BOmeDhh&;%@QWOdDE{gcYvK}Iz4J#MAzzi{4F#@+$?pTfLP z$%dBGEux@0nl9D??}R1WdAYHnrz$LkQu;kaj04*EF+F1$ILE z6-Tvw(kRWE7^^^N4pP~di9TUTBpbnF$V3Avo};2FclM390^7f3C>IF;z~cd-T3;5p z=(_^m>J~sWA2f(mXBG4Ta!4Z=9{1XX?V^z^d9Zehwa=czU;VI`B&p z$DRQy*aSwz&ia)gX8>4%jL~)?I=RsCSIV)-?ut%>CzQ&%ZX3$`4Bs%BhLSWrc|K+X z4{Xqo<;W{knheB~*{iBj&H5o{uNtMPa(JhLSqwv&NY1jUgjY7{s3~>n+32rU_g}*J z@jNHi(26~H_!J%m?1os`AP*bMBi%5!rb&!dL4vNNMboyJ*L`*8jM=H98>P&^e|dbK z_2&!P-m*QcikIH^zfL|6GW7Am21poj5 literal 0 HcmV?d00001 diff --git a/util/fipstools/acvp/modulewrapper/modulewrapper.cc b/util/fipstools/acvp/modulewrapper/modulewrapper.cc index d5d0f95934..7d4a0fc1ca 100644 --- a/util/fipstools/acvp/modulewrapper/modulewrapper.cc +++ b/util/fipstools/acvp/modulewrapper/modulewrapper.cc @@ -1004,6 +1004,60 @@ static bool GetConfig(const Span args[], "encapsulation", "decapsulation" ] + }, + { + "algorithm": "SLH-DSA", + "mode": "keyGen", + "revision": "FIPS205", + "parameterSets": [ + "SLH-DSA-SHA2-128s" + ] + }, + { + "algorithm": "SLH-DSA", + "mode": "sigGen", + "revision": "FIPS205", + "deterministic": [ + true, + false + ], + "capabilities": [ + { + "parameterSets": [ + "SLH-DSA-SHA2-128s" + ], + "messageLength": [ + { + "min": 8, + "max": 65536, + "increment": 8 + } + ] + } + ] + }, + { + "algorithm": "SLH-DSA", + "mode": "sigVer", + "revision": "FIPS205", + "deterministic": [ + true, + false + ], + "capabilities": [ + { + "parameterSets": [ + "SLH-DSA-SHA2-128s" + ], + "messageLength": [ + { + "min": 8, + "max": 65536, + "increment": 8 + } + ] + } + ] } ])"; return write_reply({Span( @@ -2360,6 +2414,72 @@ static bool MLKEMDecap(const Span args[], return write_reply({shared_secret}); } +static bool SLHDSAKeyGen(const Span args[], + ReplyCallback write_reply) { + const Span seed = args[0]; + + if (seed.size() != 3 * BCM_SLHDSA_SHA2_128S_N) { + LOG_ERROR("Bad seed size.\n"); + return false; + } + + uint8_t public_key[BCM_SLHDSA_SHA2_128S_PUBLIC_KEY_BYTES]; + uint8_t private_key[BCM_SLHDSA_SHA2_128S_PRIVATE_KEY_BYTES]; + BCM_slhdsa_sha2_128s_generate_key_from_seed(public_key, private_key, + seed.data()); + + return write_reply({private_key, public_key}); +} + +static bool SLHDSASigGen(const Span args[], + ReplyCallback write_reply) { + const Span private_key = args[0]; + const Span msg = args[1]; + const Span entropy_span = args[2]; + + if (private_key.size() != BCM_SLHDSA_SHA2_128S_PRIVATE_KEY_BYTES) { + LOG_ERROR("Bad private key size.\n"); + return false; + } + + uint8_t entropy[BCM_SLHDSA_SHA2_128S_N]; + if (!entropy_span.empty()) { + if (entropy_span.size() != BCM_SLHDSA_SHA2_128S_N) { + LOG_ERROR("Bad entropy size.\n"); + return false; + } + memcpy(entropy, entropy_span.data(), entropy_span.size()); + } else { + memcpy(entropy, private_key.data() + 32, 16); + } + + uint8_t signature[BCM_SLHDSA_SHA2_128S_SIGNATURE_BYTES]; + BCM_slhdsa_sha2_128s_sign_internal(signature, private_key.data(), nullptr, + nullptr, 0, msg.data(), msg.size(), + entropy); + + return write_reply({signature}); +} + +static bool SLHDSASigVer(const Span args[], + ReplyCallback write_reply) { + const Span public_key = args[0]; + const Span msg = args[1]; + const Span signature = args[2]; + + if (public_key.size() != BCM_SLHDSA_SHA2_128S_PUBLIC_KEY_BYTES) { + LOG_ERROR("Bad public key size.\n"); + return false; + } + + const int ok = bcm_success(BCM_slhdsa_sha2_128s_verify_internal( + signature.data(), signature.size(), public_key.data(), nullptr, nullptr, + 0, msg.data(), msg.size())); + + const uint8_t ok_byte = ok ? 1 : 0; + return write_reply({Span(&ok_byte, 1)}); +} + static constexpr struct { char name[kMaxNameLength + 1]; uint8_t num_expected_args; @@ -2495,6 +2615,9 @@ static constexpr struct { {"ML-KEM-1024/decap", 2, MLKEMDecap}, + {"SLH-DSA-SHA2-128s/keyGen", 1, SLHDSAKeyGen}, + {"SLH-DSA-SHA2-128s/sigGen", 3, SLHDSASigGen}, + {"SLH-DSA-SHA2-128s/sigVer", 3, SLHDSASigVer}, }; Handler FindHandler(Span> args) { From 822902749a5956bba09c7e9e451104e8a74f02c5 Mon Sep 17 00:00:00 2001 From: Adam Langley Date: Tue, 17 Dec 2024 18:09:42 -0800 Subject: [PATCH 03/64] SLH-DSA: add support for SHA-256 prehashing. Turns out that we need this one too. Change-Id: I9d9d8871f1a45576b1ef812207cb9ae44a376a2c Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74509 Reviewed-by: Bob Beck Commit-Queue: Adam Langley --- crypto/fipsmodule/slhdsa/slhdsa.cc.inc | 14 +++++++-- crypto/slhdsa/slhdsa.cc | 26 ++++++++++++++++ crypto/slhdsa/slhdsa_prehash.txt | 9 +++++- crypto/slhdsa/slhdsa_test.cc | 33 ++++++++++++--------- include/openssl/slhdsa.h | 41 ++++++++++++++++++++++++++ 5 files changed, 106 insertions(+), 17 deletions(-) diff --git a/crypto/fipsmodule/slhdsa/slhdsa.cc.inc b/crypto/fipsmodule/slhdsa/slhdsa.cc.inc index d80ee81356..960836e0ba 100644 --- a/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +++ b/crypto/fipsmodule/slhdsa/slhdsa.cc.inc @@ -30,6 +30,8 @@ // The OBJECT IDENTIFIER header is also included in these values, per the spec. +static const uint8_t kSHA256OID[] = {0x06, 0x09, 0x60, 0x86, 0x48, 0x01, + 0x65, 0x03, 0x04, 0x02, 0x01}; static const uint8_t kSHA384OID[] = {0x06, 0x09, 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x02}; #define MAX_OID_LENGTH 11 @@ -169,14 +171,22 @@ static int slhdsa_get_context_and_oid(uint8_t *out_context_and_oid, size_t oid_len; size_t expected_hash_len; switch (hash_nid) { - // The SLH-DSA spec only lists SHA-256 and SHA-512. This function supports - // SHA-384, which is non-standard. + case NID_sha256: + oid = kSHA256OID; + oid_len = sizeof(kSHA256OID); + static_assert(sizeof(kSHA256OID) <= MAX_OID_LENGTH, ""); + expected_hash_len = 32; + break; + + // The SLH-DSA spec only lists SHA-256 and SHA-512. This function also + // supports SHA-384, which is non-standard. case NID_sha384: oid = kSHA384OID; oid_len = sizeof(kSHA384OID); static_assert(sizeof(kSHA384OID) <= MAX_OID_LENGTH, ""); expected_hash_len = 48; break; + // If adding a hash function with a larger `oid_len`, update the size of // `context_and_oid` in the callers. default: diff --git a/crypto/slhdsa/slhdsa.cc b/crypto/slhdsa/slhdsa.cc index c0ec235ad4..1ccac9a1f5 100644 --- a/crypto/slhdsa/slhdsa.cc +++ b/crypto/slhdsa/slhdsa.cc @@ -60,6 +60,32 @@ int SLHDSA_SHA2_128S_verify( context, context_len)); } +int SLHDSA_SHA2_128S_prehash_sign( + uint8_t out_signature[SLHDSA_SHA2_128S_SIGNATURE_BYTES], + const uint8_t private_key[SLHDSA_SHA2_128S_PRIVATE_KEY_BYTES], + const uint8_t *hashed_msg, size_t hashed_msg_len, int hash_nid, + const uint8_t *context, size_t context_len) { + if (hash_nid != NID_sha256) { + return 0; + } + return bcm_success(BCM_slhdsa_sha2_128s_prehash_sign( + out_signature, private_key, hashed_msg, hashed_msg_len, hash_nid, context, + context_len)); +} + +int SLHDSA_SHA2_128S_prehash_verify( + const uint8_t *signature, size_t signature_len, + const uint8_t public_key[SLHDSA_SHA2_128S_PUBLIC_KEY_BYTES], + const uint8_t *hashed_msg, size_t hashed_msg_len, int hash_nid, + const uint8_t *context, size_t context_len) { + if (hash_nid != NID_sha256) { + return 0; + } + return bcm_success(BCM_slhdsa_sha2_128s_prehash_verify( + signature, signature_len, public_key, hashed_msg, hashed_msg_len, + hash_nid, context, context_len)); +} + int SLHDSA_SHA2_128S_prehash_warning_nonstandard_sign( uint8_t out_signature[SLHDSA_SHA2_128S_SIGNATURE_BYTES], const uint8_t private_key[SLHDSA_SHA2_128S_PRIVATE_KEY_BYTES], diff --git a/crypto/slhdsa/slhdsa_prehash.txt b/crypto/slhdsa/slhdsa_prehash.txt index ef9c83fcf1..bdc881b785 100644 --- a/crypto/slhdsa/slhdsa_prehash.txt +++ b/crypto/slhdsa/slhdsa_prehash.txt @@ -1,8 +1,15 @@ # Generated from the BoringSSL implementation since NIST doesn't publish any # end-to-end test vectors. -priv: 14c784af6edaf2e5cc39d91372c41a8e8dbeb9e1dc9b857f1d2e8930e7fc4003747bb3e0f99d24de5623c86573a74351add397ae48d7032edc4279133dc17b47 +pub: 747bb3e0f99d24de5623c86573a74351add397ae48d7032edc4279133dc17b47 hash: SHA-384 msg: d08dc95a87e824643adbb78c19018cb57cd3eb0bfd15f03925935fe3cd047e5a333408a53dac250ce6bb6c00f73663dc context: 01020304 sig: b2583d27146f0a8c7b5cfb6929dc3a02613497d4a07af7b0d560738833f138292326883723ac8c05b4279f14415d11962a797e35e472bbf9f29508db7643797712b65fa1ee31031cf1c2ee816a0bfdab6646b707d42af30c4b0ae925c9146feae83a3e0a68da3725dc659be1f6ad0b8e14d42ca695223a0448cd91bb065ea5a2ceafd7a5089e7c3e8f67407e870f79cb47c2099c73a8e1e114b5e72466786b8e226b4a704379e5f97e6214f4fd5d7cd338f9eabe7e0eec3208233bdd5a797c854a996ac0d82b22e7772fadd0f227a233a29a2178cf91e406e4d4a1f603d15e00d280c522db63955babb68961f42538c41341e452860b465d5c96454fe4d1279c0ea0fe192288e45e452249f18196a127ac787ecd4142f6fa2a3cf21a72b1b05ee125ca08d06e18465e1d1f3dd6575f8bf5989b0bfbc7bdb736c2be5aca1143ba9cf9daa721c819de91d5817057ad5f1a8b9ce2ad65ac8b19ac70966c8ba906f8a1718f70f48115fcfd6aa9ec6a9f142f3490fb2b11ba7a0e4eee899ebcbff5c7aba13a4031e147da50a2a5bca0156d717f8e9e43847621b2407e3b25393262898c0c00e7a52dbed3a9432f28e7794a3d6d7531ef51b3298e4ff6fd49757ba9c7a2a0f586a0dfe97595c872ef9e6d4aef9b616f733c03e352c3e06115979a40da4124927d5be1be5ff8031babcfc2efe9cdce48d7b047566b51aaa57285f6e089de437d9112178910d093d326589995f91de41d11eb1d68fa6bcf0fe58ed445a4aa18d97aa0bc540e53252f5468dabfa7d0d04fdd76849f5ae6e885dbc2cd7d73d42315ba714f434bff7389290ad93da0b26cddce4a3c7823bd1d1b897e054f3404231804d80d0b0fd00718e552ce340868c7622f4fb35e80380191f36f1a51dcb5fe96026caf3f616e58ee8392ef870162d3f94984b7b4c99744609841152eb5eb2b7a6c43c3c7514c2ef5515f51733bf79dd86964ba3fd8e16a74247cfae86b3fcd3f3f84c694305ea1bc906ebc43a367aedbdc9b1d88820af58873bbeddd89bb6cd88e5fa60b8616be9a8b536424cd5591e922df728d440cc3fd2c4843de6491b4dd2f22b3323690fc6cf2ae6257d5f7dc9a5e233cc1f62baceb633c109f13550574ad3bc06aace02d99a6edd05a2370ae7aa445b644fc3eb71ba039248120379c33e941b9292040a4a5be3d0ec2d374ad0172b18d0102ec2d677136d8d705491ccad09c00eef89ed9e3fa82226cb69fcc34e873117b1812e14877a92f9fa231be59cb7a2e81bce6aebcfb48affa5f0eb629e512e8c05d4b24c4639323f65e87afa9f57240d0c578e246506ad1907c7698991eba8e403f0d2d7f8e34deff817c07c575a6abc33b1c1b21d72c0431dc31e3950c62e8ce39436a00d94fa44ffa28bc817175199d346d8ea0bb9324bf92ae2a763f0415762fe9cf9e9f010456bfbc142b5f81e5e85c7ec1351c9d603df2a3af542f477fad5d8c8d38675cb4b4eb590fa8bffa745f2555ef22b0492966f2d150ca30766b2b7da6fc2d4d0085d76d60438c118c1586e70d07ecb49e2b049c9aafb8d42e949cb2ea814f07d47d3df8e6d3283b6abb85170600762e71ab5f95af2eb3a47e96dbeda84d896d9f885e7bc6bfde6a1040440c3872e2f870f5e6b82268479792a8942610015cc6ed70f7984e85af786ed1c9e444e601e0e80d80a30b2e798e47b50f8d9fb1eef58d4e5f5c2b17d01a1c24e3c301bb1cf36d02b48a9a0cafd3d5a60f8e05ccc6a0bfa7bb6ac952b0d119081b604664655ad6eb392c09d6461fc27d110f38299152457fa6e328572e326aa0656d4287974cd0b8b4c9d50f379d6d4a8a7bd6d5904d46a76cfb5601398fe1a4afdfcab4e2c24ca2467a054a303c91281ec0389bda21b48570c27c9b59a661a0cadca77887b6528fec0b0d95e25e2b5f44a282ec28e70440e554c93320ada8f688cdfb8940d1d5bdaae3774f19ad88c1e30980319932abb0842677efc9fece6e7e3f56fd6fb90a2ec034935ac88b1b2c708ad3be38cbe69352ff575660b6d44cf5e069f670b90d322fbb6f157ad2e1eb28a95343e60c21379a2070a602777213f51669c30c4b670cf698eee5151c77f31cbde9d12b222a7700756cb582d16c87931b9a076d1b7beea6a5001901d5871885ee730e88dbc2ef50bbf60971499e23feb04595e55281031aa402c3f15949ba7e2fe9465269a22b5c302d4067157c50aa87404591baeb32fd77bfe451e869e3d252c7aaa1bba260d7ea4e7ddd828192c87b6bfa8d63e8236a5efd57554808ed43ee1fa5010e1bfc99ae2eb147d5ca05ede64114e49407afe47487ef83004df9c09a2a6b3092ae47167291408e9a46c286465b08fc260297d326081f67d95dc4162248942776666a1c30eeeff108fabf0b645175130eed1e5846b2de60df1ce47c6327c9a6de50e6cc1ae0e90ac4fc1d04bafa2c2faba563eb50d31447a13f95ab4283bc32d95da3d29c3191d894f71193d04c3ccd3e50f74d9626f2f597ff7e4f98ef90d8ca93c6332c8b63a358972b54a411a416101a514020bed203d0187317cd585bd704703ea6cc52b606a0ad847cfcd1e6739f8631c5907be1fd45207d4e944621698fcfcf4f38cd21e24ed549788c4c1a8e12ab2160864f1999d34dc8655d4461b215c6f58f2bc48b740f46d7888fe0a20b41f48ef9542ff760b15233ac2d6c85a3f722164b9ace7196ed4417a404634e49a1a36690b8ba9763a923298e31464826cefd568e4fc3d37cae9314d59d02a41e1f147defe0363ec1b23ecb7b25bd358172a3b8aa38c425dca04e0f1035a51ad0eb39b37e321cfaa82f4bc21847ae09bbed31dcef4a7dcb305554da47fab675ce437e266c6b1c3a35c344721b20fe94f0deb481a53dad7804e0af19c3df83b273f069053311ac6cc4ce5024e0191ba0b829c43ca0fb596d0553f46737eb88c0438a147fa7242a003b925c31118ca8e10fe962a3c2520c59d22ae7c100fca7c3bb4c4058457da3e1d522a923f156801b764dd843e6f7474243055618dfc03910871b75f8e35e3e8b51de8a1a9472fb648e9c1927257d8a2e5572860649891e4d9e5e9213a58216bb4b21bee9a474bbeb3fe8a43c616b92bacb341606880c3741bca671131125c345012a6bdc18315ca0477a27c6121bf1f6a19df856524935b6a65fbd06dd588314a6a58d6de4c7569e4675b41938cef8c69b06a3026072c2b499738163d3701c02a5c9f897a80ce40d3f1dc7c99ed6a9535897ecb13a46a1116ce5bdb15bdae136ea49140115d00992910e5559d11ced8b685689a1535a9295974dd4ca708ec8ad222d306a7a214f60665a5647ccceda25ecb9dba89b27401904c32d2a0e72413e04dab9138841b40b5d29c32e1e01964af3274d5e077a22210ae98bd7bec133570ca568e0a64ed89694c0a80573fc13d48a4e997226115e68aa4385b0e02c947e77192649c4dfdfee053e4c7c0cc4b3fcdfd668189b39ac289ad46042ad9c87ec5e99f27b2149613e5d5e107d6e865da0788dd8362a219c465990bbb0f62c3d5b0b995c9124a027586d6898393696cba012da29a90fe3364f79ec2e3f6102717dd536840e0c9e58d2cb9d14d01662d875a517882887fc01dfd8884986166e90b604342b7e5d9750a1ddd3809a575b42089ee19000189ce1f1c98c5b149e4baf30e684e95b9d74a117ae4de9df6ca86976eefcbb81c8eabd206c2aa3fc863b25ccd813aeb2b18cf5e7366eea00d090dc28bf81ce8a8dfe2a7d5b892d35b3c6978d4a1a74c4c2d0a1fb8066eb422c2a9ea650f2379f71e9d4e6317688847a0f176cd2cd5f195514b39351b4724cc6e1a91479efc9585df888da88d964eb1f7f60ff32d87ba01c5c475357852108f37d1c726b22c1242df327cfdb3c18a0e8f451b72487618e0bdb74e55aa922e706fa173ee8dda83bf6ce0735e560c81d8117d3b89f37cc654619eda2ead4900448173450afd2edef1eb70e083dc83d9d7ab52ba183f4de7bc840007662776b92c26f54df9333621fa20afab96c8f6004147c870586bbcdb1013cfb842b15fa85d3e185878f9c768083df71e095f1fb8e371836a6dd6d35e842feccbf356f1d16cd3e0db7d6f0e54ff4c1faa35bd48da0d6803c9d15392ee55005bf633c3c7147e075ebcb5541294f35a85a5601ab22faf3dd4af87deffb3100821aa11afbf68d25f56359590db53fc1a5aa1136ef8328047b1d88c300bd14bce2b89139d3888ab2b159c522432edb2ac78a29584a7cca092264f6487d0a645f4c8c3b9f6f567a66c27eb8574a60d9439a997743ddf77763772cad36b8efa5ba7163fcbc79f2219f5b6c9b40051176e3226d7137e4869332a6a93659a4885275d71d8d7138c0b640bc29c1eec53b6d7f9b1446b73990131a5bb6a9957fecb47ca912d523a646cb06b2de0839caeb4dfe0fa4a06172c50ca783157e29675a57c7c11fcab124d09117dfcfefcd68a06dfbdc2e7f9ee5fb86840607000ddf9f5ecc9f1001cd7a5c9f68250b441babcddff713582fb876798ebf218d69c0c994d60704d1d56e73d8efd8dad7c659d3fad1c93bc836a8e131fa663565eee1d26dfaa47e71340908febec7590da7d9decf5ee4a35ca47e654776a647574b0b4e00ff0b3673b8907692cd6155aad2265fa1fd8d48319dc4ac81aa1434eac9afff45162d6e28e3a94d6eb0aa28873bddde556912024d452faf49cdb5cdcb460fd38d8751e0176461ecddde223a07562879c8a99574ce0a97c93a804c0a4b334d621e9e27aaf43c47e24f4d5e79ca216857fc37f75f9c6cc308d888964751a834a89f58569cf7ab95ed3a1c266b80070557bac1326e22da340a9a4e30a6dc979672b2c8a60a1436da76ff9637d57fca6027389ae10470f14cc98c1713bc0c947a7a5336ab70f5127c835cde244f062fc617d49e04bc7858cfcb93cf8efdc5e7af17ac50ad3c8649366d8993faa0ca4dcc6198c42fba716f6016bc7c258a4956fa7eae0e48739921659bee07ea78894877ca0802d7526a73a0e8344fd3e5d51c97584b227379f871b4734efa30011637e47ff304c6fccf96837dbf3b7223f7d60038e315b22e81931ee196fbf5ad6595674f60c5ea77d5561ec3a4541fb2c830b84d91512c7d929246f00dd0f9aa17de3f40028512e021381a9f3c59a9012f5160c5b8f5a353297d223815a486c2a7fd4c8154a78e8d276627581e63c45ca121a2c03eb16268a19a12877f57d981eacf5f96e91a19bf808de6f99a704daf5fc4406f7f5c0216734d8bd111017eeb140fc62150785f1c1ef653db98d18bc9629dca04f3a302412a60af4d43c623b5d68b84d1475dfbc8c79acca6147743b1915608f85091f839d46af030a21ec8d64177588e899e682016e14f1f7cc94c627de1cd0905fc005c6e17ef91eeb6e304591add028d46b10518cc8c8309bc71e0aad755c70a0d1f914d1d69273277f7bce1912a72f00cf1bde2776b4e6b46185179236976c60ced81f21f6679939c89817824a701c2c02c9058fb69002b6efb4d894ab1912e696086a9ea13e0dea886672aecd1d239a162e081bb4d7d1bc6244673eb46cb968c135aa32f39211221417fb93b87047ccb8a83f2630bdde4eb9a544afe8546d088439451fe522393bd36b4c3b3fbcead508ce510f7cdfa3d3befbb57ff671686eaaa67da25992fb1588dfb0647c8d45230693968a8e3c848b125ce3920ef20781528ddf2effe9249aa959ab76af2b0bc4e544e1887897c5145fb2faabbe31c937bbf5ef92f28e2f1dd1e92479efff433d4ad2f07e998a59bd345f53c3951fef76a74818dd41fd630dc48eb5f80b6e6b40e1a52858f44f9cecca6886b72dccc4272bb42ee80c12ee8649c1bbdd45c2a91a3b58c98e0361b695833893f828df21cd668d602f8e282a37bc89f88c21f58c18965263fd3d1ed08f749b4e3be510f72545f166e07cfe2b5bf134aef881cdbbbe095334b00f29fcb5dd78b9874ae5913736063e9255d33f89431356e596ff196e9e6032bd3f07b3e7bcc975aeb2b04586de731c23a85f523eabd9d273cfc0a7627a28584ae63b4e94e1079d138bb3a6ce89034671645980df057fdac9bc306c936db9ebf11970a92e16582f1aa8aeb75c2e890cec6172d9475875379344e6683e31ced62efb8b3816f94b4ece52721e4477ab37401581a143019914c365c631e98360b6169fc811bc5141b4cd81851c59db02349e5071723df4e0475a825aea16ce447d72d121fedfb5dfba349e836dd53fbb2fccc4ec35c6385441c5818517bccbe98f08f5d0ffbfdd14b9a0fe9c847151cb8350d022e0618efd75baa0e5dab74b6f02e8965c2b3d90b97cffe77ff773fdf46eb494cac52bfff8585f348bb020b309047fbe7d65e5131fcf6e78436072d2a88e571be9ee82c39b0bacb4839aec0ff42a94d2bb10706be1240c866bb33ae45996de64448b39059d1019e217c4474e140d08e416d7225ffefd6bde2cc9da2c8ca3ca0ceb53eb2dae749f774b1476222dcb48ff078699d00aecc2bec9264ad51b1d13e626227c0364b60b40eb7435b597b125a4d4da8fb736d9d642745124cbd6ee95b730e87b996de2026ec79900ca7f987b6013523ea89a939e5cdd263ff9298136ada395c32243dcf32ade4f4cd41147eb1bcb76835dd56af65d1d59809b4bac666af1edc2fc87a4070cb748d5148297be977f34afec39bec5749671799b8223f6de708581b75d300e5402db580b4b4f0e3de1ebfac82d3eecbb4c82d6a2b0cafa4cd10959675cb57c2afb28cf784d96188962f501fa8a8dcf5994f9ee8f3c6a8f88ef30d338513a6e65d18c68318ed3df1de0be39e02374a6e330d493707d172f292c614e12d11e071e11139d8c87c23213649ca991733bfdca6afeaa746adc859963e13106fff4648c46f830ca6211a5a8d05cb79a4aa8460f800aadb7372ecd8c143d118855fa3f92e2d57c120d88edcd53874385c44c543eb4308d8e31710d9615601929ef360bde0269dddfd5d19b471a3fcc7a2959773c2b996476c7da7bbe6239d607a6f1673c7270d46c8df384d84a751f426b5a2e7dc86c7dc74ff3e1d1c45333d48ce6ef12ae023cc23e0adbf6fbc86f2aa9ca6dace8f60b5cb5c25fe5f4f325c3cc7cfc8f23a2808d49fa8f375349a78fe940af3723f4d8496c4c4b000936ee5d003546ab5273b9800102e1691bd3f9581967bf2807ca2d744f1e287c3981a79f16297c7b59f6909f71c57c43891b80ee1169ddece8a83afd6acb49e93e5e0d7673f9eed5bb83669cfc5f6935b328aec0eed93addb675d182315ae95a90f63cebbad80c759a3af95e8054d4ae647364d8076856a554d57637125fffc17a9bb0a8b1775fd49997ec7fd753867b8de91726b887168370edcdb55d0a20f3851f3763c56cf831c429eda01d6268f5ffa716c37f498f6efb0a5dded996a035d977ec72a69d6ec38f92a73e64ba9163acac15273fe24f2593795397d03a005b8a2a99d22fa1461c470041a318683e1b34df3b4a522394282609924fd09633e48b5447deaa4ed785831a713bfd7350d58a556786596a8918c2125290882e21536ac2cbc7c9fa266f4f16847121ba89eff0b39ce622446954023b1af3e9cca035922bebf8ad3af9e55b65137dd4fd070e695946e4101d12fb48ad6c5d81363a3b2956e33acbf8dc4908768907cd5bd4085ec0c773f07105cf9d894806d374af523adcbe7dd0141affead3717c36278e83a706399581b372d471efcab1b0907aa38a866d2bf0a1aaaab964279bbbd4b45dddc78cb652275514109e040703de4cab899d1f9a1694cc56594442ea171b66e6b758b1d237a9788f092d45efa21228212d10e1ffda3bfe56fa4195284e1ffe8e02c08e7807e123c47afcb11ddb9cfa56a2a5f9b0e25454de13ff7fe0d9c4814e91f6b2504ee698795e4aa7d4539a9a21820630fcca4e62a0dbf309974614908c202b660bb720dc5ee4806abcefec45703cae96b3cf3e7ffb76585b3d060efaafc1a72c4c3c656ab3fad1db77e8231d3e1e60dcf7432a05f900b4b9a7688fad265a034c822b0cdeddff5888877976549c93dafaeea8eff4a4a3ad7c71eb86f2194c06f7b86c3bdf630133794db7e29f1c0302688ebf84de91e74fd400df312d44a383eba56c9daa76309d056c5782ee64890fed3e4e0ed5773a0d38ed3386cf1a212bfce09d3d270890fb211000f29087628b691fb02de760b1c2b45a4c5b6ff0b0f16693418ffea0941f23e4c009e32e302495635ff5fe80c2ac1a6e805efd994e0d24e09c8c24bc7602a2893822714f1f08e33bd05dd268dcfe7c30053e460a378e60722308731a163858ddd5752c6c26ac9d7be87ae86335b0c822bbfdfc72503014e544178893de68948dcddf86df29910b9a24b1f1dad45c1fc28b7f1fa4ba64e092ef9e5453a1cb620582efa863bdebc136a6bfa3f70a49a96e349367cbd89860702fd4da66eec59c2130fcee09507eaf2068fc0c49e891df961de9d63029c337a859760470c70e118e1b4e5893f1173b49195f195915fe11f73895318ffaa2435ef06e5775815df8ef769c7da798be79f19f2097eb627b8b026159841764b913c1b5d1b6e8f9638f9afc66329ad78d10b9b6cd1bb72b56d6e57432c43a7378797ebfda571f0d26fae757e79fa421519e71d738a4b017b13c5d63f8844151ce113c9c9b71aa1451714800cbaec14346086a643877f79cfba676d7d7f72f9cdd46580aa73c41e368f9fa289c7f5bea653a6bdf11cbf5e2041c5727c157dc07f842bdb4eadd80649d0943dcb1dd7596bd2e7605a5919c2ee62aa361e3432c3902625c7e452b6e25f5d5b5f8ca0c32e519f097f5e6ecd205a2e98a0a8c04f6cc874654b2dfd216103d98b4c57dccfac6b7561abeb9162fae838182a8cc811975919c2c44d87cdb7d4d24db1c2748eb7bf4a24e9e0dc2397b1fb626837c4347eea2eb4796815f17d00919e1cecfc0db6d1d058ce3b5ac58f965d37b8d7776611c3bbb7979001dce55f124d58a95365ef7eed6c1f5a0525a9179154b63cfb5c0ebf85979fc5364059697d220aba508c597374eb81bc930ded45c7685711863243559f35c35cea376e92ca187a50d99977f1dec4b83cc75fe87e0e00225841b969f8b46a57a52a2b4f09b42d13f21e5f5fd2bf0a6b2c88c4ce161a5a37bdb4288bbe71f07851e957e33855aba8bd5b77fd59fc4a72faac84bf9a5a947e68cadcfdd8fe690eed70caa7770582b3f83b99e7f8ce6c3997e7303b76f489ad6ff94825cec44f6f8e9040d0ea8973ff9da3d4080825d32b47762426553ad014bfb34a87eb03056481fa2b4ef5b81be18822228fced74763191ff0b4dc7a46070d73376a80ddf522e334252670e3d87fbfd075c9be111e973fd9f552d8173c9d38a67c7b106b035a32bd78b11fdbcb57b936d7ba13ba08d86b8c239ef4d56f0a5ddd8d935a303949ed40932a34c4d093eb5027db1c76378c0067e88d17c8ff2380df87d6caeab12db8ef48d64c76f8961e9e08a265d653d74ebad063d56a05e81f47c099f8d0c627c289531548fea4df8e8184ceb8195ff9f6d45bb23a1ff325add08a53c4ed7eadee95a30a366e4d3e85a760f2f269ca45b9b4a9c4bd04633a7bd800c1d221b565171d3e7adf7d4932b1d85db4e5e93d092657ece40fce1c588c16044404b45d16adfbf8c402a65f0311d4b5b4c98ed0259512908fe6acda19ac693712a606bf6760501b5c82910385d1f4b7d47e7e11df3ea0fb0406541f5d32327f58c94c3e7314650168f16293713664ed9d00716f5c86d62d6e5418c3f0f0e4eb4488e16aeb567c82a1e0be2c922455fb5d316d6bc2be4383e31f7f4a4fe55588e08d1154c7ef4827cf120be57e63cd068671e5d2642f23ed709b6e281961d3980fe8e5af6f2a68f2eb7247f68c18f49ebe60587a3aa103cc8b34df33bdac0ff8c0598d3b49d0e23ea0742b59ff98e33e15f3c1b9025b127c21fe1a4a6dccf1a45ce25268c1b8cf25a18a8f4fb578b22812c5857636a2b93405ea0ba37bbf1d4b1874be91ee118880d1ffac33d948075f555deb30cc0487dbe829266beca76607b86452437d455bd16b13c76a082aafd19bc7989623e0856e0c9c7241646ceb59f84bb0a4a116e2a99d30656c7481b569a310c4a7acfc9edc53995235adcf5d34d10155c0ef5efe1a9e136f813f7db42d33e895b7b2214922ac9758b661e4573da01a85867392909de0821c21c4ddff62c0d3d9df6c42b9b65be1bd3cbecdc9f423854196ee743544e6f2e666c850cc1a17badd959233c14794a8a18eb11d76336daea62fcea4193580a665c193b3f2aeab8e98ac38a3e698dcf1da7b3f969d353a4c852103e5c9b5e2b7319f0370f4407b243d4d981a67c963133206b0ce695883e61aaf4beacc918efe7b9b5ca37bbcc1453a50d0bc57f8c676ec8bd3085ab01d5feeb57d6d0e199d36084052c9f7dc19321de77a249c1fd7e77eca3f8586b3b87721e266d1a64a52d5611858f0e3c65c10f178bf9bead4f5e2730228dd25977790ccfb6512d8c3d369bfc04f73248473c435bdbb7cf3392d9643a2f78965d17bef3fd2111130d308c3c98d48fa43924337ac40b69463a88f7af6f63860e1e9fab9a2b139a0d68eca2d4e1d7944c814db40d1a90d2557ed617608d9a076c882ef6e8d08c0db66813a118f9a37ba9f97a85e1d9252aca1e475b84941fcd7dd1748e292d713027c5a7016ea980aee44a2c4c350216162f89f08978783ce3fb9208172c74ea00283ef71e29475a8bcd5f3956ab7d723a0a596536946f126bcd5c339ae0efe898a290617d428f06a8b7f3dfde1b6851aeb824daad1a5954ab344f1cecadfd13cec54ba8922cb5a6963da64fab78267ccc9b696238c82e334e12adf75e81a9ede7136f2ea589a0314a20e760a5225af5bdf706bbcc7d0835c1ff3c52fd18b4bb6e1cf1eea07852cd0574a18f2683abc8e0221b30434fc671b0c0f037d8a8deaaf5aae967c3d394e24dfad16e60d918c18d880b14f3e6490c7d6460569431ab0689a4b34ac880d1f70fc6a85fe14014842d5f1d39a5d02b1098bc0ce67b7e70dac83 + +pub: d4bbe5b50e1cf0633c2d0e33e62b34ffb3738d7526036228a55336e58f2dab87 +hash: SHA-256 +msg: f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2 +context: +sig: 5de4b7c5158d65d6fc2ab75325376e0401c88707586c715c5beb3016817bd9fc9a1cef95be0db443e169d780ee1675d77f7815737fb8c07bf6520adb03486eea15d5580fc78b65f9dcef1ba260466163db6eb8612bb024db0b5b191a1abbc57410f62f22c6074e9dddf0c3ae4b62238e7c9300ec624e7e91d49a5386ba04a5d23cfb7fe0d50a19594fc5c580a5149a088f91d975204804b720d04d7c186e5b995216cda3ad98669fc44856a56e8d7ba8a7d012236ec66e78d0c44cb03c9cd54c046f056395b3ddfefd8b3934e78aef696df89fbc51b65756378dbed25abc1e023877785453974471a03f78f3349899bb074e7ee932a7db3e483ba0e172d689ad2e5adc849a6f24d52c8d6379dfbe65686875342a845b0aa5dd0168cae6b2aebdfcbf69d130986657c1988e1772b910d96dd372d360745aed415001142003da8dfe48c92851cd5a8830f74975d7c0214ea86f4c5757fca6ddc0f8d24c21f992e62996be8b17c01316cb7fb4c0daffbd9bb684b8663f15f45929709638cb11e31ba8f06490d5d8dfce28724485d87e2c52a4aa0e71969cb72beba9775f448bd4d34016555b2171378625841eccd5a81bb0726345b513e797257a5866339a969b12f1e24811b0a601a033d3439a508cd41f25a59d68bd3bd2e53939eee39a9804748cd2cbc530b6366c2879c340b63db1b8152957face631e39c5220e92047c2c529118e14f1a4f49d011337144c3e19164de50d30a792df840810d22393d4a516a07404a037666df0c271592cd4675e2c6f548f92fa4d601050cb856523de0aec08e3dc66da79f08b0a9d1b34be8b48504cded7145e7e1ab4c00da62c5fe5376cc1d5a3df214c0108b9ce337bd240cae6f43c13fd5cc2ce08786d61de9f70a3022d480fc5db1668e480b458e5d7310dd5762a524061bd609880329a6670cc58645f70a0a3cdf8862e4ed18ba12787561f2ed7d54a655b3f295e24569078dc99a3dfff4c715814f6aebd5b990c8164d6347b7d86b51e257ff3f91f939f045c92c4170978204e78b34cb4389358ca19c5801a66b756ef4441e6f0cc20e4a7e249953716fe23fed12b429c24257aadae4d21662829994aac9c20afbf99c303730c294fed4e80eedeb180aefa9cd6b9f29ebb189b66229d011a81a5390fde6badb00bcf22a037ff2e6d670bc5544f05a108ea539de3f7340ea04dcdbe4b9c1bcf5c0875e84c050c9b71d96a4ab2a282f843f4b045001fbc641b42b0f4d63cf7ea20354468f489569705bd5ea2ebc47fc16974b6b4179385a65806f4a6e360a3047626cd860dd3e7e3b99f41db7028169118533dbb09b9ca26048d2d55df96b8cbb77d4f6e54737d72fa3c7765f2e836a1fd55c5514fea4956496f3f5fe4bb4cd98724a8b53eabaea51b3ed3f0b12069af6b0066350c9c99d5c8e1bc47fde1d4c0f0dd85b8d66114ca98a29c90277f0bdd2f58c2b8ccfe8719e559ff418829d6f3b602406ed679ec597caf35921b32ac046530868aa928ca58b84d5d165beb803b48413f7704a2d61d17b4c5ddaa80ef7e83a1b66c39500b235d698463dccf0cf567acd87306636d7805037e5ddab95486a9c8aa23a09cc1e0c564d5113f6f710e99588b1cd183eac6bb46926d264ab7efef7246711f3d220f042f4bc6a77d1d1d97ecbda9c985743745d11df76add3afda12fa4f1132d3817461f1490d2a2595e300265af1d7f28ead61201b4831c052efb6387ed3eb9423620b03d87901d62861df667faaaf9477ed5dfadbaf32de8832e1f3cee1007bff2acd135f37f8c168cb59c53eb6f24f4db1000ec063e50e4f73952e014a5eb536a8ff553a688a4f72b7c3133fa3335d1cc799e71f7476167a8757d6fe100d0001cce0c62692b415e46c41e6fa735566d67c2ade95d6a4c59925d50d373b574c60e6a7b5750508dc3607f4a27376e00b39b19b98d9cb525f861b72302a39e173abac71ff951f52d998d20db88947b641ae9af7c76c6399612218ad08cb7b20aa5b5f492df036456b606ffab807c1ba7a195b4d7f7692cf1080a90dc60df9bcb9da6bd8ff9b593fba23ad04dbae2baff0e019a0516ec523c36272d33f2adff088e27bade5145a8acdfe601b7b813e4e6ec5a1b3faf2198b87c950c8cfeb5617e1af2940f251d01130395028a44f2deea85a8691cc80da6097d77111302b504e9cf224b161fe2b03b3af953bf0b8609c6a9ed99045a803d44e317d8085c9bd36871b055ace2b43a04700d21fff9fbbae818c0eccb0c7f7c522aabcca9866f4b14c0f548917cfc041bb53b9ea597782751acc65bb713aa1783b746ae086370182fa3bd320ad70035d0166845e84b410565566f97ea178a89c6cbe8f3b23e35c495ce55ed4506996d7f142cfe902dfb483e1a98a8f480f6dbcc1cc3edc37b13996c3b30aa9cd711ddc19338811338bc841853cda56dcb0ee21a76588a6a274f400936093d6b9f307c5034b20e487b9b7424f52509056e5cca30bc5645a3d2119db30049b45af8f61272940e6dc22247ce93c7d04d6a4146236d94eb481ff282c48d33625690fdc7e22fdbe9feeadd29fb6ed1d8f4bbb0f8bbda5c25b82d926c6267b463516f7f2d6e81c6196bbc6181a87f705308059a2733aa172b2c08d93ae92aa5701bcbbf971a635595d8c838e6c2d4e2359f046760f8d944ad4ec5fbf6029140894594d2ca6c62c583eaa8b8771cdf2f26d4a931f15bb8b6b9f14dc37ecd1e2ff742bfaf15c21c5aa1cbe2e8cf37666988a92285b5629c4be64ad7f3b3aba4515ccb738cee5e77d96f99aa6dab1d71c52ee840165fe9bcdd19b14beaf39333e0f85c62e7235fb67871ee8e39c75f0876ccaefec5b226323c23f9d594147b26c5d4c30a61ddaeffdb607dc7167931a0cbd41fae07a66f23f323dab7d4811763a81cae5cb9c822dbddb8c52b1e68b5ca93f4c7042fc6f1df8f6b8d465ce2f933d302908edb02c9c308c5b260847829785935d102ff4f8ff799fdc8d3cc709bb4028eb7ee882c6950541bdddf72732fb6bdd6dd53fdf9897086930faa08d7680b6e76faf4387ed91e44fde3acb5c1d236a6278c9bc02a369bf1c56bebe6bd6d82b5a6e12e21dad972cfec06060f27106431c55b72c92661c4d9267902f4f289eaff1a3d4cd1535102070c4d43fe5f499252e5ca679ca00eae4458ae710f65b205036e7781782b69dfe613f7c0b6d5b69d485ee77e0edb301b685117a6e67b15a03c3b08bd8e326f42e5bd1cbbaf9b9bbd109283cff6ebef55df92efd1024f5c4cd3001d34b6f9bfe395b0de16d1f440af325ad6c43888af6dfbb97ab2c114180aca3b9a50e6569719a54e14d6a38b8415d6ab30f05ad7edb34f4a2656b148613881e81a1b7d72040764eeeb8fba28d2e0e24434b85bb43defcc1d0c41ba26425587ace8d372de2f3c7acd12f4a670ca0e97c3039380ccd2a66d4b3c5f08cc7f944e4f1635378e6022b842add8a2cd79cd137dcc6fb867e14111878071c3e58013b468de4ac5a31423efb0a65bdb25ac1407f8fd3903751af89eedfc929996a2ab0bda04a5660e03a3bda2c79b1c6ab0f0fdcb1e72896de7ba7b3715e15e5b3de3c793b1d100bf269e8e5aa5e0df906d24fb12883c792a7ce0c6cfb85f27eb97b5d6ca940db3ea15077b3bba28f9bbb002392744c2615f31dc9bccdd4094dbe26728905655f5fee86853468e81fa2fdae98f00337abb15c0e12b72323749c0f67a0c8d9bd7167800c43618c0ea77931dc56b7ade30d738106c0b6843fd91ea08d1e074429bfc6fc6d79c441f4d84ed2cf42439ed0e71cd555579513bcefa77ece33b64d27852e59db35f5b94f0ba7ed8d41429ab5e95772683b04eae24c653f4acfcd6b31c3efe0a71195ac9deae95a126d49f04b4d9ecff2bec647eb7bcf12c465cdbd858719ee58780f33e0ffe6817ad05c0c53267efd64e4a3a1c0972c7fa89f5e37f65a2c385ddf3cf2d460025b3da15b2bf7248a7553e836959d6f3f196e440da8ca62e08ad3db2307f43b8b1d38b0ce606b2076549fa5dd41a625d2e0dbd137b7021f2341acb1a118e5ba99200644bb48bfef786884300b0fe970cdc1b933684d9ce253c6600fae9f54d4955508458d2e73c46a2b1b9c8c044eaccd7e9dbf9f9b1fbe895c6b1c5d2f067ed9da0a5369ca7fedcf8141d6b311a9fb7e2e6d798e0cb6c0221f5d2886fa7b2918cd39b524849b37152de55e3e6e30031af29186be300b53c412d03d95a1f1fd0fcd28ec29d1a57d39e49ec50a466dec61cf8412363875d7b0ca43eff7178c6bcb1dcb8922729d7bfa6acbf47f1a1f1c560583ff0d25b5de742d0ef54b91643807c7cbc3e7e7dae85c729f3c822bb88529a3c35bac236ccf66d208ac8f6cdd672a184d113cde2743a4a5af8210067799470ad883f16a45ad7dcc3c4188d1c72163ee4fec0f847a6ae1bb92385c0c1e8ef89f9b30928852803b6ec3de62d21db9b0fe2c981d522dc1330f26262a612715ef456af3563bce1ae528e2b87d8d20ca69c7a488d135441b50025c2b1c6cb6a77b8ea254fcaecb626286e5e9bde7583f31a3b2eca4741e7cfb7d48b9ce8d9bcc7027815613ecd9fdd840fb0111a4d8b8516303abf44e43665ecc28e4446ca1d0784195120c1937b87548de297e1d059f2f67eabbc90327adb4e149cefce6c3269305377b20a1bfbcca45c59246492fbcadbec94be4c71f706cf3da227111981c1f9dd0e5b8c7676b31bd9cce55afe3fd6eb2d97f0e22cb51a989b0ddf48b70a76c2ba219b9b6ace794a5e632624e82c3f3ce56d2c1859957ee5f60f35a0fe67eb64fa3cbe48a936a466352a84f9eeb940f150c4c16d28a62e82cca96ff379b3348646a969bc968c178e9265cd7f40667a7efeb7bb1287d2500b68e8faab0869fe0120f0a91fe78836181ebf1e0dc2d02d36d36736ebb07c3d12ca0987f624d70b0131b95b153978e8a54f70c94654df6c5afeb6b8f1d3445bef254408bd0feeea02199b49e307cfcedc62a8694423528611d52ccfa04b7ae430dd5cd5d50e145641ff871c841996eced60117aef92d3bb67e8bbbf8acaa43a6369f24ada8a90bd3d124ef332b5949e1352c1e07bbdfeff76c23e6e72f0504f8d88b48c20f019809d1ed5fb3cfb4f788ad6bfefc677d3927c05c397e59c598771df230cc271c67bc9179bdb37562e0b6388c340ec570ff068ed0e4b99de348f92385422478f42fe72bfa8d700b0fe3846c2f15fc3325a1809b6ad68ab943145050df706c2ee64cb8504854d5162ecc8e46605b3c4b53b9cdfc7ebfb058660d48a0b31628109681ff36a4de2f3efc3c0f1f4f4124c051133cbafb3dcad41e8b6dd4cff734fee4ee27282418c07308dc83e40379c8e92f51096e5550c7e8659a85ad96b6c1f0f084125bb5226703550194b76090b2961ad619a54a4b6de12241f87b43ce6ac480ded04756d26d16c020dbb56931f70a9bab58d60f3925700e2aab5c02f4fb0ff158ab72b1d5d3baa7d3e2b3da16b1b319971cf2f94d890ab374297bc7e7933488b47da35ac78ba27a973d6738082f3bb424337f37be1201972c2dc41adc67772d7da0daed042667634a55abbd07e50b5c61e4d0fa04e30b21cd132e8790d34e16fde8c4fd5e55b1b22d0232009e80a313e8ff04b0bdccafb38cff9dfd8f9152d2a704ede38bfc2955efd96a15223072a87bfe5aa6db4621b912db1846441a35d4106e25a1755e59674b39143c0d81460cd0ecc377e14124fdd2d5146322065b183eecdbfa59b290c0e10c7c3789d059d714a6c493fadaa8062ce73ca1720548d13ddad3fd98dce0b6b8ee900eaebbc260decc615ef411b3debf1e796b1f8fcf87ef0ad5f2c316a51c289a54dcefc1748be7ef986207772b95fc825e6c917dc8c6bde85dcebbba3af814076afc262b39b3a8e943eb0f2fce379161162ed4c66d102bc60fdea79e8b7e86f84add48e5487159e8b217b47b5d600866fe4291ceabeaa752cbed1eb319dcb3d3dee90720fc47535043da28a6f2b9e70652292a39fbc39944b71d01bdefa7c09263a465c7383169bc4c921f1df33207c8359b32dc19bba241283916e3bba5804a52ac4f0926927963cbbc694b9017e3a82e399cae5829a2673b196ea560117316583f51f43b1a8ccf3e6518419a62f70a17dbb3451e431a651f8931748062ca0fe8495bd42f799b24c2d9942661feb206f6ee093e4cc529d2bcf76c853b85a50c702fceddaa7c33fe11ee88be6ff8d4adc06ac35004d4dc59669ad51b72d4c2957e71996dba4eda95ce2273e6ff4c3fc65e02efac077347778cda017f8ec1f0dd3f1cdb1598580ed73617de52f8776401cd70dd8a6638adeb4286fac3174b7d8549e09f571b5c0de86b95a32ce7ae80dbe69128772c04e3b8729d37e21033655201d04f3fa8921113da1021d1412320d9ef8e529526f03d4df848bc385764168e7b8a684530379e02a27cb831ee1b52dd096039c2f968251ebfd54063107e4ac3b9270721a12ab90f60ab1c9dc81b918cee8dc90667ae203bfd25e3014345ce46e70d379b11038a6597918a706c188cd059a684186e3139577aaff0aaab0a9be7b0613b5a522eee512076ea61a6a077681e22de4afd9d1779ae034d075f309bcdec98eca779d206b717b30bf7053978b08fbe716a8b649d40c6285e3f5fd5f47a61033d45a4ee76ac6ef15a0bd419ead0195998c51c7353e796a73006d470e82ffbb78f0a1cd1f5bd1d64503f0309550c400e6a9a241d57116bc1d1b2c1285ef5985d165fc0441a485f821357a47325b699fd4a79326a4745bdd3b79172b03ec9ba6d8f23f284f65298081c57dacf57442c224333427539d77d43d49b756016669eed8cf42cf6675185626af10d52dd7513a3cb6f1ce9432ca303344cff1f5469d71eee433c8fd2c9576a5dc518ddf724d48a353cb96f105b71341c2b10505d1374c24ee413ce6b5af391fad8163ac42260c6e01c2abb79e439fe8b5ea2f884e005f477e36af466d4bbbe2a613a81e2d0310814abbfbd1f15db7b91d05630bc93a71ecd64c2bafa9d53580b5856b7449e7813686cd1f99f9dec564bf4649b4c8578becb8889909a12071330f741d96085d4cae319fb798f04a7c86f5a3ac9af1ca24e32edfeb5b70a96d305ce6358d98f0a38713ae77b8e029b82e24a16d2aadd8ffce89334e355cab86b0bea7df2e819bcef78546bb7d0f9223c550067341139a47db65715a3d1e5349e316982088ac813026adff314d7735afd37b8f1bb39bb15635c633ffe3f5c403eeba2b8f30f4d37b70ea4e0ee0127162f6a1c79e488cea73e3933603fdf53459c356c6acf4499957e91061f01501c4db23a274bc788c072cb1348e52192c89f31b737a1b0c3a896764cf85a79d73fe5ecbd46cfe7883b620eccc8aeb17a266077b79e7738eac26c07b0cff006a70281e5d4fe44ec00044e87bc5ccc1d045ea5508953af89ea55549880d8cf41a84baf20988c38584d5e8f5d00b070701bdaf65d2d48d4329c75a9e0640573819f4b83709c4c034d99080b986238df1c87d90b973aa61a0e485d18637df8b2d5a66b59428e11c4a35f2807b78dc1a08e9398b0243e46c5ded8fc5a4db8d5059bbc8c9a99159663300c98a20a8728b7361ce3ad69b56e43ff191e7edb92c91167386eea1b82a5918bad22b8b410627c8c2d8a953c611c696eb740d4f9678cd30489a60dd1651599e5929079f7187db174704e86b43a315c66b76ce14ef4e7d41889e6241cfbbbab40e6adc605bb6f23a453332093d65fbc8bd5372137c0ed1a3a214b59f0101d7477138ed795cf5e21172eeee77b2a3e5cc4a026ef9b6796c754c4b3e9ba0bb35c17deaa8f9fef8734411e988e5d48168658f4a43336eaa748ae320c3a5c591d01b157f7abd4d644cfd094f41a2eaef9d08fc6fc2eec5a2f739e448b9ba60475829965ec82066f78224bccb5f6839c287a3825ef491f9c6cab438d5f279543fb2cf98dd1f7a1302e471fd900f69f46b6bc64a3c096edb2c52abfb550946bb0cc531370c29646eb584d7581a9ec24b325185a6feb053585538825b5334fcce202311fa2474030f73c437d320e8eebf6c69eccec89ef84e061f0a158e5f655ccb8eb25a59c5f1bd848ed4953e59fcd1662b8dff2e6ca6a7764dbcff2fe7d044894dc3d6189d69b036e7febd751732eaf6375ffbc2f6fb79a1c93ccce9551d8ff99416c5ab4842ccbc0211e079ff09a68e53006ccc88091ea15dc2b2890201f98bf059d737fe97bc25cb9fec130018d1b83cc59c9e20582abde97fe6752466b6b7f5a014c721db42210d1931a6f79cee037b13814e3238c6cae0e4e2e270e16e5c4404837094941f0d1487d26e1fa079f1aa5ceba18e8475e2da212c05ad2b5c4fea2d2686051292853524b9084b69c5d67c7ff86b6dbeb915686469cbf83f0873902dd67700c54ff759de66c850253d7ae51a8be664ad62c44f6d1367ed47ec5b8cb6d231ed39f1e9d88dcb3f936b8ffd98c191ae5412a6d4070cfbb7da782c2c1dffc17f2613461f0cf5a39f6010866b53cedefbda49735dc7a3da2eb768ef7dfad4520b55cc5e7c5157d6a3d7babf259e97ad33dcf29a58759efea333dad44722d8051defd97d1be64d9da25faa01f92dea392fbae72ee753f07cfbcd7fd78d6d2a6daece00cb1b6bf939a894652206829ca12be6d107944a1a4247853f13dad50b02c6f2aa36b6f13d30646836c5c1d32b2cc4be772f0052c9127b65acb44a7e66157fdd5586990267380c345882838b6cd5cb6537df90f1253a48a9cd59045a1d9505b2088d306ddb62ed7dfe745e45f4aefd6714e48ae849ca756cfe57e65745564572fa6b711f142cd58c647cf560b18575afe64a5d47609ec7e11ce352ab42f19d75437519fd6393b654eb3a30d9af52d58cdf5b837d9ec12182f64fb1dd0591cced86046dbdc4fb4a516c146cb9211a67541f1fabd8f11d120e6cb7c8be03de90d15d877955ad09a025e873b1e28c5ba0a0b81c480b020520ef161014a6594e9ac7103fa2a439119117618aacff42acc15c3b39693582d89a605b5abaf494876fb3d74dade77668fa8a650111d270d52ee5ad642ed05da7f46051863eb4a6dd654ffa07e5b29fd84ee42930e81ab2ed4491ce1717a7043520585308b3ed43f4a085e3625170a9965720c37e674178a8619414cdf46ef4ca9d7ec7db8451fc789f44abdbd300dae83c857a36b0cabfcf988c0075ba5506af23a0c35c216db827c9ac0f089731f7df45822d16e8a28d9b42c9691c87f1dbe4536fdb89ebc19e83d8d950ae6ae5dd8ede9af5da05f5400d3d29c4f879dcade2d56af522ecf26589275894785e274e0a401502bc82e15ba2c1710dfbbaf3d1785ffa515c133ea2038dab57c575be04ae11b2fb18cfae30535694d565e224cc25620e1aecbd619b22f3fd5b780419b079141f31003272cb390333a4ec62f23b01d4aa2c32ebe015c98804f48d012d0c0ee891f5eba5893af6e340a148701370057f3fb5552ef3de151feb44c09daa52d107b14caeb51b50cc5719d61b941a7fe4b33fbfea9064ab0954b17712d177ffca9f0e2685bbb3062972a195f64a1ba0fee4bc43dfc72c094e6fcf9d23382b0dec98f8666d176fb37d51018bb2f049f83d8d312215e7c61241bcf93232cf4caae48e12738e676b6c9dc8c0353642df8f8e28337a6709ca46c2878eba078662a3d84eb1cfd46d9263375aff5cb4ce5f28ab4c1044bd047a39d6c3072c2abb553fd041ca3c2116466d6fa4c385ea114ed5fca1ccbe17b5577e772e523be672986238f6fbe7bd6b2c2deedb67d5aca3ae6cb1d92ba5e7a38734a48632a776ab543fcd168e38330280f6f4c2692156fd812cb302d1cf4006d8a0f3137a81986b7628bf15c233ba135e4b3563e08796f8cba683f9706886a6d652108fe830ebe0cddf6288bbf964715bbbe2770f85ccc9abd89003eb76d7321d3ea1e0b2ee79a8bf31c5852197a543cc1e32a2f53127f1c6b10b1819637ebedeb442547092748130ab53520f7fd657d2543d9264231fdd154335dc1fa52e56a9f9bf077745f1367557ec669961d847cd55015ac1575fbefc3cd1a2758ae7ab38c03d62613591439e0a05ebbd5330910d4f94cf74ca22f60f743088033adc25890b131e6c24e7e84220ea08f0a0f8e8281cb75e5df8331de8bfe1c26e5ca50bc50bb8cc5af2001221520e792b3358966a516b78323927d399d300b6ffe91cb4cdc77fd3c93e1064d90506ab3ba26e3986948ce0cd5c085483af51e1e76f84eba1bb18ce798ef8bd7cd6be9a361d5a977df620eaa00d5870ebd626a36bd6a153f8f4a89b25222d105b4658c11d426c50d36dce847aebbf2be08ad62bb59288e9ff00cad31705e691e44a6a218140d2ad896f1fab613d09abacb2c047e670af95cdcfb28aebf0b48f7bfc508b5771722aa1aa8e71766b10f49c4b671b5056fb0857899f08213a55ad1f74abcd41302cd546d3598b354998667be7268a446c62c59065c25a4ad27a121bbc0e0e522fdb88d3acf663765f59c44c11dac8f6a1077e43dc7331b6b7222831dc61f53c9b63c71fbbb54be94745ecbdaf5433d9f1b5d1cd5582362cdc86ecf0cae9aa76e21bf2d94f14fef03143b4a133100cfda6c88a7c700c6f8610dcf9181e7e2282a4f1c3fc9c723afcca084a1cc67dcf87042fcd5bb60e144eef813f4806d1e92a4bea5a60aa61692d04ebce9761c3f354060f22ce773b3e9bd41dead5dd8a377f1c77a4b71184630fe5d96a7564bfc968d64e2deb532c056196b6b3b9152d0406caae5f63e80f055e63c2f0ee1790cef1fcf8187fdf21c3a26e4c5615ff27127556af55e3b5db748ef494940cf4610f131aad933cf5f555df4dfcb2e402d75d067fcd01f6c41b1a8a1c79aef23281e3d9a962fe58416c857206cb96ae6648ef686b1c30ca4cded1ce84537951d257c0a757e6e74e41dbb360de31e05cfc0a4d72fbb267f85f2e7c3f3d91733cac50610113bd1c30ec3fda65045e4c7e00633af85b1b6d1912fa814665d5f2e75197e8f839379d55e3ae0be04e4db3dccd3bd07619c6beb7138b0fdaa16cd9967fb2c + diff --git a/crypto/slhdsa/slhdsa_test.cc b/crypto/slhdsa/slhdsa_test.cc index 3790d2c4c8..932f0557e9 100644 --- a/crypto/slhdsa/slhdsa_test.cc +++ b/crypto/slhdsa/slhdsa_test.cc @@ -121,7 +121,6 @@ TEST(SLHDSATest, BasicNonstandardPrehashSignVerify) { nullptr, 0)); } - static void NISTKeyGenerationFileTest(FileTest *t) { std::vector seed, expected_pub, expected_priv; ASSERT_TRUE(t->GetBytes(&seed, "seed")); @@ -183,11 +182,10 @@ TEST(SLHDSATest, NISTSignatureVerification) { NISTSignatureVerificationFileTest); } -static void NISTPrehashSignatureGenerationFileTest(FileTest *t) { - std::vector priv, msg, sig, context; - ASSERT_TRUE(t->GetBytes(&priv, "priv")); - ASSERT_EQ(priv.size(), - static_cast(SLHDSA_SHA2_128S_PRIVATE_KEY_BYTES)); +static void NISTPrehashSignatureVerificationFileTest(FileTest *t) { + std::vector pub, msg, sig, context; + ASSERT_TRUE(t->GetBytes(&pub, "pub")); + ASSERT_EQ(pub.size(), static_cast(SLHDSA_SHA2_128S_PUBLIC_KEY_BYTES)); ASSERT_TRUE(t->GetBytes(&msg, "msg")); ASSERT_TRUE(t->GetBytes(&sig, "sig")); ASSERT_EQ(sig.size(), size_t{SLHDSA_SHA2_128S_SIGNATURE_BYTES}); @@ -196,23 +194,30 @@ static void NISTPrehashSignatureGenerationFileTest(FileTest *t) { std::string hash_func; ASSERT_TRUE(t->GetAttribute(&hash_func, "hash")); int nid = 0; - if (hash_func == "SHA-384") { + bool nonstandard = false; + if (hash_func == "SHA-256") { + nid = NID_sha256; + } else if (hash_func == "SHA-384") { nid = NID_sha384; + nonstandard = true; } else { abort(); } - uint8_t pub[SLHDSA_SHA2_128S_PUBLIC_KEY_BYTES]; - SLHDSA_SHA2_128S_public_from_private(pub, priv.data()); - EXPECT_TRUE(SLHDSA_SHA2_128S_prehash_warning_nonstandard_verify( - sig.data(), sig.size(), pub, msg.data(), msg.size(), nid, context.data(), - context.size())); + if (nonstandard) { + EXPECT_TRUE(SLHDSA_SHA2_128S_prehash_warning_nonstandard_verify( + sig.data(), sig.size(), pub.data(), msg.data(), msg.size(), nid, + context.data(), context.size())); + } else { + EXPECT_TRUE(SLHDSA_SHA2_128S_prehash_verify( + sig.data(), sig.size(), pub.data(), msg.data(), msg.size(), nid, + context.data(), context.size())); + } } - TEST(SLHDSATest, NISTPrehashSignatureVerification) { FileTestGTest("crypto/slhdsa/slhdsa_prehash.txt", - NISTPrehashSignatureGenerationFileTest); + NISTPrehashSignatureVerificationFileTest); } } // namespace diff --git a/include/openssl/slhdsa.h b/include/openssl/slhdsa.h index f363393a80..6d6806d290 100644 --- a/include/openssl/slhdsa.h +++ b/include/openssl/slhdsa.h @@ -84,6 +84,47 @@ OPENSSL_EXPORT int SLHDSA_SHA2_128S_verify( // b) A single private key is used to sign both prehashed and raw messages, // and there's no other way to prevent ambiguity. +// SLHDSA_SHA2_128S_prehash_sign slowly generates a SLH-DSA-SHA2-128s signature +// of the prehashed |hashed_msg| using |private_key| and writes it to +// |out_signature|. The |context| argument is also signed over and can be used +// to include implicit contextual information that isn't included in +// |hashed_msg|. The same value of |context| must be presented to +// |SLHDSA_SHA2_128S_prehash_verify| in order for the generated signature to be +// considered valid. |context| and |context_len| may be |NULL| and 0 to use an +// empty context (this is common). +// +// The |hash_nid| argument must specify the hash function that was used to +// generate |hashed_msg|. This function only accepts hash functions listed in +// FIPS 205. +// +// This function returns 1 on success and 0 if |context_len| is larger than 255, +// if the hash function is not supported, or if |hashed_msg| is the wrong +// length. +OPENSSL_EXPORT int SLHDSA_SHA2_128S_prehash_sign( + uint8_t out_signature[SLHDSA_SHA2_128S_SIGNATURE_BYTES], + const uint8_t private_key[SLHDSA_SHA2_128S_PRIVATE_KEY_BYTES], + const uint8_t *hashed_msg, size_t hashed_msg_len, int hash_nid, + const uint8_t *context, size_t context_len); + +// SLHDSA_SHA2_128S_prehash_verify verifies that |signature| is a valid +// SLH-DSA-SHA2-128s signature of the prehashed |hashed_msg| by |public_key|, +// using the hash algorithm identified by |hash_nid|. The value of |context| +// must equal the value that was passed to |SLHDSA_SHA2_128S_prehash_sign| when +// the signature was generated. +// +// The |hash_nid| argument must specify the hash function that was used to +// generate |hashed_msg|. This function only accepts hash functions that are +// listed in FIPS 205. +// +// This function returns 1 if the signature is valid and 0 if the signature is +// invalid, the hash function is not supported, or if |hashed_msg| is the wrong +// length. +OPENSSL_EXPORT int SLHDSA_SHA2_128S_prehash_verify( + const uint8_t *signature, size_t signature_len, + const uint8_t public_key[SLHDSA_SHA2_128S_PUBLIC_KEY_BYTES], + const uint8_t *hashed_msg, size_t hashed_msg_len, int hash_nid, + const uint8_t *context, size_t context_len); + // SLHDSA_SHA2_128S_prehash_warning_nonstandard_sign slowly generates a // SLH-DSA-SHA2-128s signature of the prehashed |hashed_msg| using |private_key| // and writes it to |out_signature|. The |context| argument is also signed over From 04c19925b088e8b884080ee6bd3d771d40e3c3a9 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Wed, 18 Dec 2024 17:24:30 -0500 Subject: [PATCH 04/64] Update diff_asm.go We've since added a few more files that don't have a counterpart in OpenSSL, or are named differently from their OpenSSL counterparts. Change-Id: I7057d8b258cb9656924054022654359d11a164f8 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74667 Reviewed-by: Adam Langley Auto-Submit: David Benjamin Commit-Queue: Adam Langley --- util/diff_asm.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/util/diff_asm.go b/util/diff_asm.go index e45b23fea1..8f531093b3 100644 --- a/util/diff_asm.go +++ b/util/diff_asm.go @@ -39,9 +39,13 @@ func mapName(path string) string { } switch pathSlash { case "crypto/aes/asm/vpaes-armv7.pl", + "crypto/bn/asm/bn-armv8.pl", "crypto/cipher_extra/asm/aes128gcmsiv-x86_64.pl", + "crypto/cipher_extra/asm/chacha20_poly1305_armv8.pl", "crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl", + "crypto/ec/asm/p256_beeu-armv8-asm.pl", "crypto/ec/asm/p256_beeu-x86_64-asm.pl", + "crypto/modes/asm/aesv8-gcm-armv8.pl", "crypto/modes/asm/ghash-neon-armv8.pl", "crypto/modes/asm/ghash-ssse3-x86.pl", "crypto/modes/asm/ghash-ssse3-x86_64.pl", @@ -49,6 +53,8 @@ func mapName(path string) string { return "" case "crypto/ec/asm/p256-x86_64-asm.pl": return filepath.FromSlash("crypto/ec/asm/ecp_nistz256-x86_64.pl") + case "crypto/ec/asm/p256-armv8-asm.pl": + return filepath.FromSlash("crypto/ec/asm/ecp_nistz256-armv8.pl") } return path } From db562f9573acca62966236be7dc6650c7c948e8a Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Tue, 17 Dec 2024 23:24:48 -0500 Subject: [PATCH 05/64] Add a copy of OpenSSL's copyright.pl script OpenSSL ran a "copyright consolidation" process, driven by this script. We will need to modify it slightly because it sometimes sets the year based on OpenSSL's git. Initially, this checks in an unmodified copy of OpenSSL's script. Bug: 364634028 Change-Id: I5acd518a900d9c5bb4ac637c5a3986ddf0b22bd0 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74707 Commit-Queue: David Benjamin Reviewed-by: Adam Langley --- util/copyright.pl | 79 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 util/copyright.pl diff --git a/util/copyright.pl b/util/copyright.pl new file mode 100644 index 0000000000..4367f152a6 --- /dev/null +++ b/util/copyright.pl @@ -0,0 +1,79 @@ +#! /usr/bin/env perl +# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Add new copyright and delete old ones. Used as +# find . -name '*.[ch]' -type f -exec perl -i.bak util/copyright.pl '{}' ';' +# This does not do everything that's needed for the consolidation. + +use strict; +use warnings; + +# Read a multi-line comments. If it matches a "fingerprint" of a legacy +# copyright block, then just delete it. +sub check_comment() +{ + my @lines = ( @_ ); + my $skipit = 0; + + if ($lines[$#lines] !~ m@\*/@) { + while ( <> ) { + push @lines, $_; + last if m@\*/@; + $skipit = 1 if /Copyright remains Eric Young's/i; + $skipit = 1 if /Copyright.*The OpenSSL Project/i; + $skipit = 1 if /Written by.*for the OpenSSL Project/i; + } + } + + # Look for a multi-line "written by" comment. + if ( ! $skipit ) { + my $text = join('', @lines); + $skipit = 1 if $text =~ m/Written by.*for the OpenSSL Project/is; + } + + print @lines unless $skipit; + return $skipit; +} + +# Look for leading copyright blocks and process (print/swallow) them. +while ( <> ) { + if ($. == 1) { + my $DATE; + # Look for special copyright EAY line at line one. + if ( /Copyright.*(199.)-.*Eric Young/ ) { + $DATE = $1; + } else { + # Nope, use when it first existed in git. + $DATE=`git log '--pretty=format:%cI' $ARGV | tail -1`; + $DATE =~ s/-.*//; + } + my $YEAR = $DATE ? $DATE : 1995; + my $SPAN = $YEAR == 2016 ? "2016" : "${YEAR}-2016"; + print < ); +} From 5700c339249fd99180d9834c9cc0256e7e1cc6b9 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Thu, 19 Dec 2024 17:18:12 -0500 Subject: [PATCH 06/64] Update copyright.pl to sync copyright lines from OpenSSL OpenSSL's "copyright consolidation" script standardizes their various old copyright headers on a new one. In doing so, it recomputed the copyright year as follows: - The end year was always 2016, when they ran the script. - If the file began with an EAY copyright line, that starting year was used. - Otherwise, the start year was ignored and recomputed from version control. This final step will not run in BoringSSL, because we started a new history. Instead, modify the script to simply take the result of the process from the corresponding file in OpenSSL. Bug: 364634028 Change-Id: I6083a398c7d742210d1b67110dda755ba0509f6c Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74708 Commit-Queue: David Benjamin Reviewed-by: Adam Langley --- util/copyright.pl | 56 ++++++-- util/mapping.txt | 354 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 398 insertions(+), 12 deletions(-) create mode 100644 util/mapping.txt diff --git a/util/copyright.pl b/util/copyright.pl index 4367f152a6..74d1779b82 100644 --- a/util/copyright.pl +++ b/util/copyright.pl @@ -13,6 +13,48 @@ use strict; use warnings; +my %mapping; +open(my $mapping_file, "<", "util/mapping.txt") or die; +while (my $line = <$mapping_file>) { + chomp($line); + $line =~ s/#.*//; + next if $line =~ /^$/; + + my ($path, $mapped) = split(/:/, $line, 2); + $mapped =~ s/^ +//; + $mapped =~ s/ +$//; + my @mapped = split(/ +/, $mapped); + $mapping{$path} = \@mapped; +} +close($mapping_file) or die; + +sub find_copyright_line($) +{ + my ($path) = @_; + my $mapped = $mapping{$path}; + die "No mapping for $path found!" unless $mapped && @$mapped; + my $ret = find_mapped_copyright_line($mapped->[0]); + foreach my $m (@$mapped) { + my $other = find_mapped_copyright_line($m); + die "Copyright lines in $mapped->[0] and $m did not match" unless $other eq $ret; + } + return $ret; +} + +sub find_mapped_copyright_line($) +{ + my ($path) = @_; + open(my $f, "<", "../openssl/$path") or die; + while (my $line = <$f>) { + chomp($line); + if ($line =~ /^ \* Copyright [-0-9]+ The OpenSSL Project Authors\. All Rights Reserved\.$/) { + close($f) or die; + return $line; + } + } + die "Could not find copyright line in ../openssl/$path"; +} + # Read a multi-line comments. If it matches a "fingerprint" of a legacy # copyright block, then just delete it. sub check_comment() @@ -43,20 +85,10 @@ () # Look for leading copyright blocks and process (print/swallow) them. while ( <> ) { if ($. == 1) { - my $DATE; - # Look for special copyright EAY line at line one. - if ( /Copyright.*(199.)-.*Eric Young/ ) { - $DATE = $1; - } else { - # Nope, use when it first existed in git. - $DATE=`git log '--pretty=format:%cI' $ARGV | tail -1`; - $DATE =~ s/-.*//; - } - my $YEAR = $DATE ? $DATE : 1995; - my $SPAN = $YEAR == 2016 ? "2016" : "${YEAR}-2016"; + my $copyright_line = find_copyright_line($ARGV); print < Date: Fri, 20 Dec 2024 23:51:40 -0500 Subject: [PATCH 07/64] Add a tool to summarize and compare copyright lines We'll simply be picking up the copyright lines from upstream OpenSSL. But since OpenSSL's script ended up changing the years around, this script will let us check which start years changed. (End years in OpenSSL got all rewritten to 2016 in the "copyright consolidation" process, so there's nothing terribly interesting to check.) Bug: 364634028 Change-Id: Id7263b05a98898fe6a6a121af9655ac0857c3ba2 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74709 Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- go.mod | 2 +- util/copyright_summary.go | 254 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 255 insertions(+), 1 deletion(-) create mode 100644 util/copyright_summary.go diff --git a/go.mod b/go.mod index 492a44f07a..1ec6424db1 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module boringssl.googlesource.com/boringssl -go 1.22 +go 1.23 require ( filippo.io/edwards25519 v1.1.0 diff --git a/util/copyright_summary.go b/util/copyright_summary.go new file mode 100644 index 0000000000..0e8cdc024a --- /dev/null +++ b/util/copyright_summary.go @@ -0,0 +1,254 @@ +// Copyright 2024 The BoringSSL Authors +// +// Permission to use, copy, modify, and/or distribute this software for any +// purpose with or without fee is hereby granted, provided that the above +// copyright notice and this permission notice appear in all copies. +// +// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +// SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +// OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +// CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +//go:build ignore + +package main + +import ( + "bufio" + "cmp" + _ "embed" + "encoding/json" + "flag" + "fmt" + "iter" + "maps" + "os" + "path/filepath" + "regexp" + "slices" + "strconv" + "strings" +) + +var ( + outPath = flag.String("out", "", "The path to write the results in JSON format") + comparePath = flag.String("compare", "", "The path to a JSON file to compare against") + useMapping = flag.Bool("use-mapping", false, "Apply the mapping and look up files in OpenSSL instead") +) + +func sortedKeyValuePairs[K cmp.Ordered, V any](m map[K]V) iter.Seq2[K, V] { + return func(yield func(K, V) bool) { + for _, k := range slices.Sorted(maps.Keys(m)) { + if !yield(k, m[k]) { + return + } + } + } +} + +var copyrightRE = regexp.MustCompile( + `Copyright ` + + // Ignore (c) and (C) + `(?:\([cC]\) )?` + + // Capture the starting copyright year. + `([0-9]+)` + + // Ignore ending copyright year. OpenSSL's "copyright consolidation" + // tool rewrites it anyway. We're just interested in looking for which + // start years changed, to manually double-check. + `(?:[-,][0-9]+)?` + + // Some files have a comma after the years. + `,?` + + // Skip spaces. + ` *` + + // Capture the name. Stop at punctuation and don't pick up trailing + // spaces. We don't want to pick up things like "All Rights Reserved". + // This does drop things like ", Inc", but this is good enough for a + // summary to double-check an otherwise mostly automated process. + `([-a-zA-Z ]*[-a-zA-Z])`) + +var fileMapping map[string][]string + +//go:embed mapping.txt +var fileMappingData string + +func parseMapping() (map[string][]string, error) { + ret := map[string][]string{} + for _, line := range strings.Split(fileMappingData, "\n") { + if idx := strings.IndexByte(line, '#'); idx >= 0 { + line = line[:idx] + } + line = strings.TrimSpace(line) + if len(line) == 0 { + continue + } + colon := strings.IndexByte(line, ':') + if colon < 0 { + return nil, fmt.Errorf("could not parse %q", line) + } + from := strings.TrimSpace(line[:colon]) + to := strings.TrimSpace(line[colon+1:]) + if _, ok := ret[from]; ok { + return nil, fmt.Errorf("duplicate mapping for %q", from) + } + ret[from] = strings.Fields(to) + } + return ret, nil +} + +type CopyrightInfo struct { + Name string + StartYear int +} + +type FileInfo struct { + CopyrightInfos []CopyrightInfo +} + +func (f *FileInfo) MergeFrom(other FileInfo) { + f.CopyrightInfos = append(f.CopyrightInfos, other.CopyrightInfos...) +} + +func summarize(info FileInfo) map[string]int { + ret := map[string]int{} + for _, c := range info.CopyrightInfos { + name := c.Name + // Apply the same mapping as OpenSSL's "copyright consolidation" script. + if name == "The OpenSSL Project" || name == "Eric Young" { + name = "The OpenSSL Project Authors" + } + if old, ok := ret[name]; !ok || old > c.StartYear { + ret[name] = c.StartYear + } + } + return ret +} + +func process(path string) (info FileInfo, err error) { + if !*useMapping { + return processImpl(path) + } + + newPaths, ok := fileMapping[path] + if !ok { + err = fmt.Errorf("no mapping found for %q", path) + return + } + for _, newPath := range newPaths { + var newInfo FileInfo + newInfo, err = processImpl(filepath.Join("../openssl", newPath)) + if err != nil { + return + } + info.MergeFrom(newInfo) + } + return +} + +func processImpl(path string) (info FileInfo, err error) { + f, err := os.Open(path) + if err != nil { + return + } + defer f.Close() + + scanner := bufio.NewScanner(f) + for scanner.Scan() { + m := copyrightRE.FindStringSubmatch(scanner.Text()) + if m == nil { + continue + } + var year int + year, err = strconv.Atoi(m[1]) + if err != nil { + err = fmt.Errorf("error parsing year %q: %s", m[1], err) + return + } + info.CopyrightInfos = append(info.CopyrightInfos, CopyrightInfo{Name: m[2], StartYear: year}) + } + err = scanner.Err() + return +} + +func main() { + flag.Parse() + + if *useMapping { + var err error + fileMapping, err = parseMapping() + if err != nil { + fmt.Fprintf(os.Stderr, "Error parsing mapping file: %s\n", err) + os.Exit(1) + } + } + + infos := map[string]FileInfo{} + for _, path := range flag.Args() { + info, err := process(path) + if err != nil { + fmt.Fprintf(os.Stderr, "Error processing %q: %s\n", path, err) + os.Exit(1) + } + infos[path] = info + } + + if len(*outPath) != 0 { + data, err := json.Marshal(infos) + if err != nil { + fmt.Fprintf(os.Stderr, "Error serializing results: %s\n", err) + os.Exit(1) + } + if err := os.WriteFile(*outPath, data, 0666); err != nil { + fmt.Fprintf(os.Stderr, "Error writing results: %s\n", err) + os.Exit(1) + } + } + + if len(*comparePath) == 0 { + // Print what we have and return. + for path, info := range sortedKeyValuePairs(infos) { + for _, c := range info.CopyrightInfos { + fmt.Printf("%s: %d %s\n", path, c.StartYear, c.Name) + } + } + return + } + + oldData, err := os.ReadFile(*comparePath) + if err != nil { + fmt.Fprintf(os.Stderr, "Error reading file: %s\n", err) + os.Exit(1) + } + var oldInfos map[string]FileInfo + if err := json.Unmarshal(oldData, &oldInfos); err != nil { + fmt.Fprintf(os.Stderr, "Error decoding %q: %s\n", *comparePath, err) + os.Exit(1) + } + // Output in CSV, so it is easy to paste into a spreadsheet. + fmt.Printf("Path,Name,Old Start Year,New Start Year\n") + for path, info := range sortedKeyValuePairs(infos) { + oldInfo, ok := oldInfos[path] + if !ok { + fmt.Printf("%s: file not previously present\n", path) + continue + } + + summary := summarize(info) + oldSummary := summarize(oldInfo) + for name, year := range sortedKeyValuePairs(summary) { + oldYear, ok := oldSummary[name] + if !ok { + fmt.Printf("%s,%s,-1,%d\n", path, name, year) + } else if year != oldYear { + fmt.Printf("%s,%s,%d,%d\n", path, name, oldYear, year) + } + } + for oldName, oldYear := range sortedKeyValuePairs(oldSummary) { + if _, ok := summary[oldName]; !ok { + fmt.Printf("%s,%s,%d,-1\n", path, oldName, oldYear) + } + } + } +} From 4854ec106f98a09abd3245c2acaa48822a0493a0 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Thu, 19 Dec 2024 17:33:20 -0500 Subject: [PATCH 08/64] Apply OpenSSL's "copyright consolidation" changes This applies the OpenSSL "copyright consolidation" process from the following upstream changes: * https://github.com/openssl/openssl/commit/e0a651945cb5a70a2abd9902c0fd3e9759d35867 * https://github.com/openssl/openssl/commit/3fb2cf1ad19feaf6f7c571b49bd9e320eb4daf31 * https://github.com/openssl/openssl/commit/ac3d0e13777a0f0533792ed8fdd7de485675a3a2 * https://github.com/openssl/openssl/commit/c2f312f5c2379e1dcb6b3678bda27f7544508ee6 * https://github.com/openssl/openssl/commit/596d6b7e1ca5aa24700098e262cb1625f256343f * https://github.com/openssl/openssl/commit/e18cf66aaf44b4d476625b2416386b051007d495 * https://github.com/openssl/openssl/commit/846e33c729311169d9c988ceba29484b3783f244 * https://github.com/openssl/openssl/commit/440e5d805f449d662520313b33fd90aeee86980b * https://github.com/openssl/openssl/commit/21dcbebc6e35419f1842f39a125374ea1ba45693 * https://github.com/openssl/openssl/commit/6286757141a8c6e14d647ec733634ae0c83d9887 * https://github.com/openssl/openssl/commit/4f22f40507fea3f272637eb8e00cadf1f34b10d9 * https://github.com/openssl/openssl/commit/d2e9e320186f0917cc940f46bdf1a7e4120da9b0 * https://github.com/openssl/openssl/commit/2039c421b0e5b75ffcf6a88e39cc09089b4303dc * https://github.com/openssl/openssl/commit/b1322259d93cf6b6286f9febcd468b6a9f577d91 * https://github.com/openssl/openssl/commit/aa6bb1352b1026b20a23b49da4efdcf171926eb0 * https://github.com/openssl/openssl/commit/b6cff313cbb1d0381b329fe4f6a8f009cdb270e4 * https://github.com/openssl/openssl/commit/9e20068958b8c1772067299dda7df0b8a82283b4 * https://github.com/openssl/openssl/commit/6aa36e8e5a062e31543e7796f0351ff9628832ce * https://github.com/openssl/openssl/commit/44c8a5e2b9af8909844cc002c53049311634b314 This was mostly automated, but partially manual. The automated portion can be reproduced by checking OpenSSL to commit 44c8a5e2b9af8909844cc002c53049311634b314, and running the following: git grep -l -E 'Copyright remains Eric Young|Copyright.*The OpenSSL Project\.|Written by.*for the OpenSSL Project' crypto/ decrepit/ include/ ssl/ | grep -v objects.go > files.txt cat files.txt | xargs -n1 perl -i ./util/copyright.pl From there, some years were fixed up manually according to go/openssl-copyright-consolidation-comparison (internal-only). Three files required additional manual fixing: - crypto/ecdh_extra/ecdh_extra.cc - crypto/fipsmodule/ecdh/ecdh.cc.inc - include/openssl/ecdh.h These files have an OpenSSL header, but *after* a different header, so the script does not correctly detect the now redundant OpenSSL header. They were manually modified to remove it. This matches what seems to have been done to crypto/ec/ecdh_ossl.c in OpenSSL's 4f22f40507fea3f272637eb8e00cadf1f34b10d9. Bug: 364634028 Change-Id: I79a559a409ebe2476f2cb8a48a488ac5dd77c90a Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74710 Commit-Queue: David Benjamin Reviewed-by: Adam Langley --- crypto/asn1/a_bitstr.cc | 61 ++-------- crypto/asn1/a_bool.cc | 61 ++-------- crypto/asn1/a_d2i_fp.cc | 61 ++-------- crypto/asn1/a_dup.cc | 61 ++-------- crypto/asn1/a_gentm.cc | 61 ++-------- crypto/asn1/a_i2d_fp.cc | 61 ++-------- crypto/asn1/a_int.cc | 61 ++-------- crypto/asn1/a_mbstr.cc | 61 ++-------- crypto/asn1/a_object.cc | 61 ++-------- crypto/asn1/a_octet.cc | 61 ++-------- crypto/asn1/a_strex.cc | 61 ++-------- crypto/asn1/a_strnid.cc | 61 ++-------- crypto/asn1/a_time.cc | 61 ++-------- crypto/asn1/a_type.cc | 61 ++-------- crypto/asn1/a_utctm.cc | 61 ++-------- crypto/asn1/asn1_lib.cc | 61 ++-------- crypto/asn1/asn1_par.cc | 61 ++-------- crypto/asn1/asn_pack.cc | 61 ++-------- crypto/asn1/f_int.cc | 61 ++-------- crypto/asn1/f_string.cc | 61 ++-------- crypto/asn1/internal.h | 59 +-------- crypto/asn1/tasn_dec.cc | 61 ++-------- crypto/asn1/tasn_enc.cc | 61 ++-------- crypto/asn1/tasn_fre.cc | 61 ++-------- crypto/asn1/tasn_new.cc | 61 ++-------- crypto/asn1/tasn_typ.cc | 61 ++-------- crypto/asn1/tasn_utl.cc | 61 ++-------- crypto/base64/base64.cc | 61 ++-------- crypto/bio/bio.cc | 61 ++-------- crypto/bio/bio_mem.cc | 61 ++-------- crypto/bio/connect.cc | 61 ++-------- crypto/bio/errno.cc | 61 ++-------- crypto/bio/fd.cc | 61 ++-------- crypto/bio/file.cc | 61 ++-------- crypto/bio/hexdump.cc | 61 ++-------- crypto/bio/internal.h | 61 ++-------- crypto/bio/pair.cc | 57 ++------- crypto/bio/printf.cc | 61 ++-------- crypto/bio/socket.cc | 61 ++-------- crypto/bn_extra/convert.cc | 61 ++-------- crypto/buf/buf.cc | 61 ++-------- crypto/cipher_extra/cipher_extra.cc | 61 ++-------- crypto/cipher_extra/cipher_test.cc | 53 +------- crypto/cipher_extra/derive_key.cc | 61 ++-------- crypto/cipher_extra/e_des.cc | 61 ++-------- crypto/cipher_extra/e_null.cc | 61 ++-------- crypto/cipher_extra/e_rc2.cc | 61 ++-------- crypto/cipher_extra/e_rc4.cc | 61 ++-------- crypto/cipher_extra/internal.h | 61 ++-------- crypto/cipher_extra/tls_cbc.cc | 57 ++------- crypto/conf/conf.cc | 61 ++-------- crypto/constant_time_test.cc | 46 +------ crypto/cpu_intel.cc | 61 ++-------- crypto/des/des.cc | 61 ++-------- crypto/des/internal.h | 61 ++-------- crypto/dh_extra/dh_asn1.cc | 60 ++------- crypto/dh_extra/dh_test.cc | 61 ++-------- crypto/dh_extra/params.cc | 57 ++------- crypto/digest_extra/digest_extra.cc | 61 ++-------- crypto/dsa/dsa.cc | 64 ++-------- crypto/dsa/dsa_asn1.cc | 59 ++------- crypto/dsa/dsa_test.cc | 64 ++-------- crypto/ec_extra/ec_asn1.cc | 58 ++------- crypto/ecdh_extra/ecdh_extra.cc | 60 ++------- crypto/ecdsa_extra/ecdsa_asn1.cc | 57 ++------- crypto/err/err.cc | 111 +---------------- crypto/evp/evp.cc | 61 ++-------- crypto/evp/evp_asn1.cc | 61 ++-------- crypto/evp/evp_ctx.cc | 61 ++-------- crypto/evp/evp_test.cc | 53 +------- crypto/evp/internal.h | 61 ++-------- crypto/evp/p_dsa_asn1.cc | 60 ++------- crypto/evp/p_ec.cc | 60 ++------- crypto/evp/p_ec_asn1.cc | 60 ++------- crypto/evp/p_rsa.cc | 60 ++------- crypto/evp/p_rsa_asn1.cc | 60 ++------- crypto/evp/pbkdf.cc | 60 ++------- crypto/evp/print.cc | 57 ++------- crypto/evp/sign.cc | 61 ++-------- crypto/ex_data.cc | 111 +---------------- crypto/fipsmodule/aes/aes.cc.inc | 53 ++------ crypto/fipsmodule/aes/key_wrap.cc.inc | 53 ++------ crypto/fipsmodule/aes/mode_wrappers.cc.inc | 53 ++------ crypto/fipsmodule/bn/add.cc.inc | 61 ++-------- crypto/fipsmodule/bn/bn.cc.inc | 61 ++-------- crypto/fipsmodule/bn/bn_test.cc | 61 ++-------- crypto/fipsmodule/bn/bytes.cc.inc | 61 ++-------- crypto/fipsmodule/bn/cmp.cc.inc | 61 ++-------- crypto/fipsmodule/bn/ctx.cc.inc | 59 ++------- crypto/fipsmodule/bn/div.cc.inc | 61 ++-------- crypto/fipsmodule/bn/exponentiation.cc.inc | 111 +---------------- crypto/fipsmodule/bn/gcd.cc.inc | 111 +---------------- crypto/fipsmodule/bn/generic.cc.inc | 61 ++-------- crypto/fipsmodule/bn/internal.h | 114 ++--------------- crypto/fipsmodule/bn/jacobi.cc.inc | 57 ++------- crypto/fipsmodule/bn/montgomery.cc.inc | 111 +---------------- crypto/fipsmodule/bn/mul.cc.inc | 61 ++-------- crypto/fipsmodule/bn/prime.cc.inc | 111 +---------------- crypto/fipsmodule/bn/random.cc.inc | 111 +---------------- crypto/fipsmodule/bn/shift.cc.inc | 61 ++-------- crypto/fipsmodule/bn/sqrt.cc.inc | 59 ++------- crypto/fipsmodule/cipher/cipher.cc.inc | 61 ++-------- crypto/fipsmodule/cipher/e_aes.cc.inc | 53 ++------ crypto/fipsmodule/cipher/e_aesccm.cc.inc | 53 ++------ crypto/fipsmodule/cipher/internal.h | 61 ++-------- crypto/fipsmodule/cmac/cmac.cc.inc | 53 ++------ crypto/fipsmodule/dh/check.cc.inc | 61 ++-------- crypto/fipsmodule/dh/dh.cc.inc | 61 ++-------- crypto/fipsmodule/digest/digest.cc.inc | 61 ++-------- crypto/fipsmodule/digest/digests.cc.inc | 61 ++-------- crypto/fipsmodule/digest/internal.h | 61 ++-------- crypto/fipsmodule/digest/md32_common.h | 53 ++------ .../fipsmodule/digestsign/digestsign.cc.inc | 60 ++------- crypto/fipsmodule/ec/ec.cc.inc | 59 ++------- crypto/fipsmodule/ec/ec_key.cc.inc | 59 ++------- crypto/fipsmodule/ec/ec_montgomery.cc.inc | 59 ++------- crypto/fipsmodule/ec/internal.h | 59 ++------- crypto/fipsmodule/ec/oct.cc.inc | 59 ++------- crypto/fipsmodule/ec/simple.cc.inc | 59 ++------- crypto/fipsmodule/ec/wnaf.cc.inc | 59 ++------- crypto/fipsmodule/ecdh/ecdh.cc.inc | 60 ++------- crypto/fipsmodule/ecdsa/ecdsa.cc.inc | 57 ++------- crypto/fipsmodule/ecdsa/ecdsa_test.cc | 57 ++------- crypto/fipsmodule/hmac/hmac.cc.inc | 61 ++-------- crypto/fipsmodule/modes/cbc.cc.inc | 53 ++------ crypto/fipsmodule/modes/cfb.cc.inc | 53 ++------ crypto/fipsmodule/modes/ctr.cc.inc | 53 ++------ crypto/fipsmodule/modes/gcm.cc.inc | 53 ++------ crypto/fipsmodule/modes/internal.h | 53 ++------ crypto/fipsmodule/modes/ofb.cc.inc | 55 ++------- crypto/fipsmodule/rsa/blinding.cc.inc | 115 ++---------------- crypto/fipsmodule/rsa/internal.h | 61 ++-------- crypto/fipsmodule/rsa/padding.cc.inc | 60 ++------- crypto/fipsmodule/rsa/rsa.cc.inc | 61 ++-------- crypto/fipsmodule/rsa/rsa_impl.cc.inc | 61 ++-------- crypto/fipsmodule/sha/sha1.cc.inc | 61 ++-------- crypto/fipsmodule/sha/sha256.cc.inc | 61 ++-------- crypto/fipsmodule/sha/sha512.cc.inc | 61 ++-------- crypto/fipsmodule/tls/kdf.cc.inc | 57 ++------- crypto/hmac_extra/hmac_test.cc | 61 ++-------- crypto/internal.h | 111 +---------------- crypto/lhash/internal.h | 61 ++-------- crypto/lhash/lhash.cc | 61 ++-------- crypto/md4/md4.cc | 61 ++-------- crypto/md5/md5.cc | 61 ++-------- crypto/mem.cc | 61 ++-------- crypto/obj/obj.cc | 61 ++-------- crypto/obj/obj_dat.h | 61 ++-------- crypto/obj/obj_xref.cc | 61 ++-------- crypto/pem/pem_all.cc | 111 +---------------- crypto/pem/pem_info.cc | 60 +-------- crypto/pem/pem_lib.cc | 61 ++-------- crypto/pem/pem_oth.cc | 61 ++-------- crypto/pem/pem_pk8.cc | 61 ++-------- crypto/pem/pem_pkey.cc | 61 ++-------- crypto/pem/pem_x509.cc | 59 +-------- crypto/pem/pem_xaux.cc | 59 +-------- crypto/pkcs8/internal.h | 60 ++------- crypto/pkcs8/p5_pbev2.cc | 60 ++------- crypto/pkcs8/pkcs8.cc | 60 ++------- crypto/pkcs8/pkcs8_x509.cc | 60 ++------- crypto/rc4/rc4.cc | 61 ++-------- crypto/rsa_extra/internal.h | 62 ++-------- crypto/rsa_extra/rsa_asn1.cc | 60 ++------- crypto/rsa_extra/rsa_crypt.cc | 61 ++-------- crypto/rsa_extra/rsa_test.cc | 61 ++-------- crypto/stack/stack.cc | 61 ++-------- crypto/thread.cc | 61 ++-------- crypto/x509/a_digest.cc | 61 ++-------- crypto/x509/a_sign.cc | 61 ++-------- crypto/x509/a_verify.cc | 61 ++-------- crypto/x509/algorithm.cc | 61 ++-------- crypto/x509/asn1_gen.cc | 61 ++-------- crypto/x509/by_dir.cc | 61 ++-------- crypto/x509/by_file.cc | 61 ++-------- crypto/x509/ext_dat.h | 59 +-------- crypto/x509/i2d_pr.cc | 61 ++-------- crypto/x509/internal.h | 59 +-------- crypto/x509/name_print.cc | 61 ++-------- crypto/x509/rsa_pss.cc | 60 ++------- crypto/x509/t_crl.cc | 61 ++-------- crypto/x509/t_req.cc | 61 ++-------- crypto/x509/t_x509.cc | 61 ++-------- crypto/x509/t_x509a.cc | 61 ++-------- crypto/x509/tab_test.cc | 59 +-------- crypto/x509/v3_akey.cc | 59 +-------- crypto/x509/v3_akeya.cc | 59 +-------- crypto/x509/v3_alt.cc | 58 +-------- crypto/x509/v3_bcons.cc | 59 +-------- crypto/x509/v3_bitst.cc | 59 +-------- crypto/x509/v3_conf.cc | 59 +-------- crypto/x509/v3_cpols.cc | 59 +-------- crypto/x509/v3_crld.cc | 59 +-------- crypto/x509/v3_enum.cc | 59 +-------- crypto/x509/v3_extku.cc | 59 +-------- crypto/x509/v3_genn.cc | 59 +-------- crypto/x509/v3_ia5.cc | 59 +-------- crypto/x509/v3_info.cc | 59 +-------- crypto/x509/v3_int.cc | 59 +-------- crypto/x509/v3_lib.cc | 60 +-------- crypto/x509/v3_ncons.cc | 58 +-------- crypto/x509/v3_pcons.cc | 58 +-------- crypto/x509/v3_pmaps.cc | 58 +-------- crypto/x509/v3_prn.cc | 59 +-------- crypto/x509/v3_purp.cc | 59 +-------- crypto/x509/v3_skey.cc | 59 +-------- crypto/x509/v3_utl.cc | 59 +-------- crypto/x509/x509.cc | 61 ++-------- crypto/x509/x509_att.cc | 61 ++-------- crypto/x509/x509_cmp.cc | 61 ++-------- crypto/x509/x509_d2.cc | 61 ++-------- crypto/x509/x509_def.cc | 61 ++-------- crypto/x509/x509_ext.cc | 61 ++-------- crypto/x509/x509_lu.cc | 61 ++-------- crypto/x509/x509_obj.cc | 61 ++-------- crypto/x509/x509_req.cc | 61 ++-------- crypto/x509/x509_set.cc | 61 ++-------- crypto/x509/x509_trs.cc | 59 +-------- crypto/x509/x509_txt.cc | 61 ++-------- crypto/x509/x509_v3.cc | 61 ++-------- crypto/x509/x509_vfy.cc | 61 ++-------- crypto/x509/x509_vpm.cc | 59 +-------- crypto/x509/x509cset.cc | 59 +-------- crypto/x509/x509name.cc | 61 ++-------- crypto/x509/x509rset.cc | 61 ++-------- crypto/x509/x509spki.cc | 59 +-------- crypto/x509/x_algor.cc | 59 +-------- crypto/x509/x_all.cc | 61 ++-------- crypto/x509/x_attrib.cc | 61 ++-------- crypto/x509/x_crl.cc | 61 ++-------- crypto/x509/x_exten.cc | 61 ++-------- crypto/x509/x_name.cc | 61 ++-------- crypto/x509/x_pubkey.cc | 61 ++-------- crypto/x509/x_req.cc | 61 ++-------- crypto/x509/x_sig.cc | 61 ++-------- crypto/x509/x_spki.cc | 61 ++-------- crypto/x509/x_val.cc | 61 ++-------- crypto/x509/x_x509.cc | 61 ++-------- crypto/x509/x_x509a.cc | 59 +-------- decrepit/bio/base64_bio.cc | 61 ++-------- decrepit/blowfish/blowfish.cc | 61 ++-------- decrepit/cast/cast.cc | 61 ++-------- decrepit/cast/cast_tables.cc | 61 ++-------- decrepit/cast/internal.h | 61 ++-------- decrepit/des/cfb64ede.cc | 61 ++-------- decrepit/dh/dh_decrepit.cc | 59 ++------- decrepit/dsa/dsa_decrepit.cc | 59 ++------- decrepit/macros.h | 61 ++-------- decrepit/rc4/rc4_decrepit.cc | 63 ++-------- decrepit/ripemd/ripemd.cc | 61 ++-------- decrepit/rsa/rsa_decrepit.cc | 61 ++-------- decrepit/ssl/ssl_decrepit.cc | 113 +---------------- decrepit/xts/xts.cc | 53 ++------ include/openssl/aes.h | 53 ++------ include/openssl/arm_arch.h | 59 ++------- include/openssl/asn1.h | 60 +-------- include/openssl/asn1t.h | 61 ++-------- include/openssl/base.h | 57 ++------- include/openssl/base64.h | 61 ++-------- include/openssl/bio.h | 61 ++-------- include/openssl/blowfish.h | 61 ++-------- include/openssl/bn.h | 114 ++--------------- include/openssl/buf.h | 61 ++-------- include/openssl/cast.h | 61 ++-------- include/openssl/cipher.h | 61 ++-------- include/openssl/conf.h | 61 ++-------- include/openssl/des.h | 61 ++-------- include/openssl/dh.h | 61 ++-------- include/openssl/digest.h | 61 ++-------- include/openssl/dsa.h | 64 ++-------- include/openssl/ec.h | 59 ++------- include/openssl/ec_key.h | 59 ++------- include/openssl/ecdh.h | 60 ++------- include/openssl/ecdsa.h | 57 ++------- include/openssl/err.h | 111 +---------------- include/openssl/evp.h | 61 ++-------- include/openssl/evp_errors.h | 61 ++-------- include/openssl/ex_data.h | 111 +---------------- include/openssl/hmac.h | 61 ++-------- include/openssl/lhash.h | 61 ++-------- include/openssl/md4.h | 61 ++-------- include/openssl/md5.h | 61 ++-------- include/openssl/mem.h | 61 ++-------- include/openssl/nid.h | 61 ++-------- include/openssl/obj.h | 61 ++-------- include/openssl/pem.h | 61 ++-------- include/openssl/pkcs8.h | 61 ++-------- include/openssl/rc4.h | 61 ++-------- include/openssl/ripemd.h | 61 ++-------- include/openssl/rsa.h | 61 ++-------- include/openssl/sha.h | 61 ++-------- include/openssl/ssl.h | 114 ++--------------- include/openssl/ssl3.h | 114 ++--------------- include/openssl/stack.h | 61 ++-------- include/openssl/thread.h | 61 ++-------- include/openssl/tls1.h | 114 ++--------------- include/openssl/type_check.h | 61 ++-------- include/openssl/x509.h | 61 ++-------- include/openssl/x509v3_errors.h | 59 ++------- ssl/d1_both.cc | 114 +---------------- ssl/d1_lib.cc | 59 +-------- ssl/d1_pkt.cc | 114 +---------------- ssl/d1_srtp.cc | 114 ++--------------- ssl/dtls_method.cc | 59 +-------- ssl/dtls_record.cc | 114 +---------------- ssl/extensions.cc | 111 +---------------- ssl/handshake.cc | 112 ++--------------- ssl/handshake_client.cc | 114 ++--------------- ssl/handshake_server.cc | 114 ++--------------- ssl/internal.h | 114 ++--------------- ssl/s3_both.cc | 112 ++--------------- ssl/s3_lib.cc | 114 ++--------------- ssl/s3_pkt.cc | 111 +---------------- ssl/ssl_asn1.cc | 61 ++-------- ssl/ssl_cert.cc | 114 ++--------------- ssl/ssl_cipher.cc | 114 ++--------------- ssl/ssl_file.cc | 113 +---------------- ssl/ssl_lib.cc | 114 ++--------------- ssl/ssl_privkey.cc | 61 ++-------- ssl/ssl_session.cc | 114 ++--------------- ssl/ssl_stat.cc | 61 ++-------- ssl/ssl_transcript.cc | 114 ++--------------- ssl/ssl_x509.cc | 114 ++--------------- ssl/t1_enc.cc | 114 ++--------------- ssl/tls_method.cc | 61 ++-------- ssl/tls_record.cc | 111 +---------------- 326 files changed, 2224 insertions(+), 19371 deletions(-) diff --git a/crypto/asn1/a_bitstr.cc b/crypto/asn1/a_bitstr.cc index 04a14f2b6a..077161da7c 100644 --- a/crypto/asn1/a_bitstr.cc +++ b/crypto/asn1/a_bitstr.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_bool.cc b/crypto/asn1/a_bool.cc index e227b7f796..c391c52e05 100644 --- a/crypto/asn1/a_bool.cc +++ b/crypto/asn1/a_bool.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_d2i_fp.cc b/crypto/asn1/a_d2i_fp.cc index 6508a9e8af..5c1c8938e0 100644 --- a/crypto/asn1/a_d2i_fp.cc +++ b/crypto/asn1/a_d2i_fp.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_dup.cc b/crypto/asn1/a_dup.cc index 387c75e1c9..7650c5bfc7 100644 --- a/crypto/asn1/a_dup.cc +++ b/crypto/asn1/a_dup.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_gentm.cc b/crypto/asn1/a_gentm.cc index f6f9c4634e..dfad23f0ce 100644 --- a/crypto/asn1/a_gentm.cc +++ b/crypto/asn1/a_gentm.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/asn1/a_i2d_fp.cc b/crypto/asn1/a_i2d_fp.cc index c74fa06cc7..6e79e4284b 100644 --- a/crypto/asn1/a_i2d_fp.cc +++ b/crypto/asn1/a_i2d_fp.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_int.cc b/crypto/asn1/a_int.cc index 6837f8c6e4..66d5b3b18a 100644 --- a/crypto/asn1/a_int.cc +++ b/crypto/asn1/a_int.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_mbstr.cc b/crypto/asn1/a_mbstr.cc index e0e2916a35..c0ce991b8c 100644 --- a/crypto/asn1/a_mbstr.cc +++ b/crypto/asn1/a_mbstr.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_object.cc b/crypto/asn1/a_object.cc index f8a3a4f61d..4c00b69833 100644 --- a/crypto/asn1/a_object.cc +++ b/crypto/asn1/a_object.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_octet.cc b/crypto/asn1/a_octet.cc index f9c337918a..6ccd3b58b5 100644 --- a/crypto/asn1/a_octet.cc +++ b/crypto/asn1/a_octet.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_strex.cc b/crypto/asn1/a_strex.cc index 516f7df54d..692d56af38 100644 --- a/crypto/asn1/a_strex.cc +++ b/crypto/asn1/a_strex.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_strnid.cc b/crypto/asn1/a_strnid.cc index 2b493962bd..d8814865fc 100644 --- a/crypto/asn1/a_strnid.cc +++ b/crypto/asn1/a_strnid.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_time.cc b/crypto/asn1/a_time.cc index d2c672c028..0ddeab2802 100644 --- a/crypto/asn1/a_time.cc +++ b/crypto/asn1/a_time.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/asn1/a_type.cc b/crypto/asn1/a_type.cc index dfc992cd5a..3ff1a8c2fd 100644 --- a/crypto/asn1/a_type.cc +++ b/crypto/asn1/a_type.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/a_utctm.cc b/crypto/asn1/a_utctm.cc index f21435d8b7..f97c6c9271 100644 --- a/crypto/asn1/a_utctm.cc +++ b/crypto/asn1/a_utctm.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/asn1/asn1_lib.cc b/crypto/asn1/asn1_lib.cc index 78ea33f73b..3685e88dd4 100644 --- a/crypto/asn1/asn1_lib.cc +++ b/crypto/asn1/asn1_lib.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/asn1_par.cc b/crypto/asn1/asn1_par.cc index d065e200f6..131d70b947 100644 --- a/crypto/asn1/asn1_par.cc +++ b/crypto/asn1/asn1_par.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/asn_pack.cc b/crypto/asn1/asn_pack.cc index 971ea631fe..11e161234f 100644 --- a/crypto/asn1/asn_pack.cc +++ b/crypto/asn1/asn_pack.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/f_int.cc b/crypto/asn1/f_int.cc index 047fcacf7c..6f1f7a60e7 100644 --- a/crypto/asn1/f_int.cc +++ b/crypto/asn1/f_int.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/f_string.cc b/crypto/asn1/f_string.cc index 4bc8110701..d7c9a1f195 100644 --- a/crypto/asn1/f_string.cc +++ b/crypto/asn1/f_string.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/internal.h b/crypto/asn1/internal.h index dbaf8789e4..d0cf97e607 100644 --- a/crypto/asn1/internal.h +++ b/crypto/asn1/internal.h @@ -1,59 +1,10 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2006. - */ -/* ==================================================================== - * Copyright (c) 2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). + * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #ifndef OPENSSL_HEADER_ASN1_INTERNAL_H diff --git a/crypto/asn1/tasn_dec.cc b/crypto/asn1/tasn_dec.cc index 56bbf0d62a..4daece3210 100644 --- a/crypto/asn1/tasn_dec.cc +++ b/crypto/asn1/tasn_dec.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/asn1/tasn_enc.cc b/crypto/asn1/tasn_enc.cc index ab6f58026a..55363cae8c 100644 --- a/crypto/asn1/tasn_enc.cc +++ b/crypto/asn1/tasn_enc.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/tasn_fre.cc b/crypto/asn1/tasn_fre.cc index 22cff4dc52..c7db6c3e64 100644 --- a/crypto/asn1/tasn_fre.cc +++ b/crypto/asn1/tasn_fre.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/tasn_new.cc b/crypto/asn1/tasn_new.cc index 38b30a9ffc..c35a052a3e 100644 --- a/crypto/asn1/tasn_new.cc +++ b/crypto/asn1/tasn_new.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/tasn_typ.cc b/crypto/asn1/tasn_typ.cc index ebeda542e6..b2b83c187b 100644 --- a/crypto/asn1/tasn_typ.cc +++ b/crypto/asn1/tasn_typ.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/asn1/tasn_utl.cc b/crypto/asn1/tasn_utl.cc index 420f1db2ec..9dd93dafbb 100644 --- a/crypto/asn1/tasn_utl.cc +++ b/crypto/asn1/tasn_utl.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/base64/base64.cc b/crypto/base64/base64.cc index 6878321f38..88e52c03dc 100644 --- a/crypto/base64/base64.cc +++ b/crypto/base64/base64.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/bio/bio.cc b/crypto/bio/bio.cc index b1a91f7c8a..29dd3111a6 100644 --- a/crypto/bio/bio.cc +++ b/crypto/bio/bio.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/bio/bio_mem.cc b/crypto/bio/bio_mem.cc index 7d9c4b7df6..08512d396d 100644 --- a/crypto/bio/bio_mem.cc +++ b/crypto/bio/bio_mem.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/bio/connect.cc b/crypto/bio/connect.cc index 9db69e1c71..b144339a06 100644 --- a/crypto/bio/connect.cc +++ b/crypto/bio/connect.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/bio/errno.cc b/crypto/bio/errno.cc index 901ea0c4c1..1976ee3bf9 100644 --- a/crypto/bio/errno.cc +++ b/crypto/bio/errno.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/bio/fd.cc b/crypto/bio/fd.cc index 9da5c465d4..72ab288f27 100644 --- a/crypto/bio/fd.cc +++ b/crypto/bio/fd.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/bio/file.cc b/crypto/bio/file.cc index 7da086f579..7836f255f5 100644 --- a/crypto/bio/file.cc +++ b/crypto/bio/file.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #if defined(__linux) || defined(__sun) || defined(__hpux) // Following definition aliases fopen to fopen64 on above mentioned diff --git a/crypto/bio/hexdump.cc b/crypto/bio/hexdump.cc index 3788c022cb..bf7bc1ff9a 100644 --- a/crypto/bio/hexdump.cc +++ b/crypto/bio/hexdump.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/bio/internal.h b/crypto/bio/internal.h index 06f88c9aa1..fed4a88941 100644 --- a/crypto/bio/internal.h +++ b/crypto/bio/internal.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_BIO_INTERNAL_H #define OPENSSL_HEADER_BIO_INTERNAL_H diff --git a/crypto/bio/pair.cc b/crypto/bio/pair.cc index 227db14116..ac83199c2c 100644 --- a/crypto/bio/pair.cc +++ b/crypto/bio/pair.cc @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2003 The OpenSSL Project. All rights reserved. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/bio/printf.cc b/crypto/bio/printf.cc index 4ad3546f6a..2631f23809 100644 --- a/crypto/bio/printf.cc +++ b/crypto/bio/printf.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/bio/socket.cc b/crypto/bio/socket.cc index 72c772f278..cee706e973 100644 --- a/crypto/bio/socket.cc +++ b/crypto/bio/socket.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/bn_extra/convert.cc b/crypto/bn_extra/convert.cc index e540523215..8a7a66159b 100644 --- a/crypto/bn_extra/convert.cc +++ b/crypto/bn_extra/convert.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/buf/buf.cc b/crypto/buf/buf.cc index c63ada6371..c2403fe16f 100644 --- a/crypto/buf/buf.cc +++ b/crypto/buf/buf.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/cipher_extra/cipher_extra.cc b/crypto/cipher_extra/cipher_extra.cc index 62850ab6a2..2d0f369bde 100644 --- a/crypto/cipher_extra/cipher_extra.cc +++ b/crypto/cipher_extra/cipher_extra.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/cipher_extra/cipher_test.cc b/crypto/cipher_extra/cipher_test.cc index c0d516851c..cb0b16b6b0 100644 --- a/crypto/cipher_extra/cipher_test.cc +++ b/crypto/cipher_extra/cipher_test.cc @@ -1,53 +1,10 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project. - */ -/* ==================================================================== - * Copyright (c) 2015 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #include diff --git a/crypto/cipher_extra/derive_key.cc b/crypto/cipher_extra/derive_key.cc index 4b84c4ebc5..b805c1fb7a 100644 --- a/crypto/cipher_extra/derive_key.cc +++ b/crypto/cipher_extra/derive_key.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/cipher_extra/e_des.cc b/crypto/cipher_extra/e_des.cc index 586e2ff4f6..4cd44dd516 100644 --- a/crypto/cipher_extra/e_des.cc +++ b/crypto/cipher_extra/e_des.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/cipher_extra/e_null.cc b/crypto/cipher_extra/e_null.cc index 34b15a98dd..c69d50d26e 100644 --- a/crypto/cipher_extra/e_null.cc +++ b/crypto/cipher_extra/e_null.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/cipher_extra/e_rc2.cc b/crypto/cipher_extra/e_rc2.cc index 5e3c9fcf46..466259390d 100644 --- a/crypto/cipher_extra/e_rc2.cc +++ b/crypto/cipher_extra/e_rc2.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/cipher_extra/e_rc4.cc b/crypto/cipher_extra/e_rc4.cc index 4e736e3eeb..9fe4c85866 100644 --- a/crypto/cipher_extra/e_rc4.cc +++ b/crypto/cipher_extra/e_rc4.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/cipher_extra/internal.h b/crypto/cipher_extra/internal.h index bbe6671358..c10766d36e 100644 --- a/crypto/cipher_extra/internal.h +++ b/crypto/cipher_extra/internal.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_CIPHER_EXTRA_INTERNAL_H #define OPENSSL_HEADER_CIPHER_EXTRA_INTERNAL_H diff --git a/crypto/cipher_extra/tls_cbc.cc b/crypto/cipher_extra/tls_cbc.cc index ddbe4f2070..8f0e243935 100644 --- a/crypto/cipher_extra/tls_cbc.cc +++ b/crypto/cipher_extra/tls_cbc.cc @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2012 The OpenSSL Project. All rights reserved. +/* + * Copyright 2012-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/conf/conf.cc b/crypto/conf/conf.cc index cdcd3e91e1..6aa173c504 100644 --- a/crypto/conf/conf.cc +++ b/crypto/conf/conf.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/constant_time_test.cc b/crypto/constant_time_test.cc index 50389c609f..613ded0d21 100644 --- a/crypto/constant_time_test.cc +++ b/crypto/constant_time_test.cc @@ -1,46 +1,10 @@ /* - * Utilities for constant-time cryptography. + * Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Author: Emilia Kasper (emilia@openssl.org) - * Based on previous work by Bodo Moeller, Emilia Kasper, Adam Langley - * (Google). - * ==================================================================== - * Copyright (c) 2014 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #include "internal.h" diff --git a/crypto/cpu_intel.cc b/crypto/cpu_intel.cc index 276610b7f5..a1efcd84e4 100644 --- a/crypto/cpu_intel.cc +++ b/crypto/cpu_intel.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/des/des.cc b/crypto/des/des.cc index 07242f22b3..812456df04 100644 --- a/crypto/des/des.cc +++ b/crypto/des/des.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/des/internal.h b/crypto/des/internal.h index 97c6ca5d23..530ce75f06 100644 --- a/crypto/des/internal.h +++ b/crypto/des/internal.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_DES_INTERNAL_H #define OPENSSL_HEADER_DES_INTERNAL_H diff --git a/crypto/dh_extra/dh_asn1.cc b/crypto/dh_extra/dh_asn1.cc index f3813d10c7..c271d64a86 100644 --- a/crypto/dh_extra/dh_asn1.cc +++ b/crypto/dh_extra/dh_asn1.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2000. - */ -/* ==================================================================== - * Copyright (c) 2000-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/dh_extra/dh_test.cc b/crypto/dh_extra/dh_test.cc index cb5384effe..43cb9fbd99 100644 --- a/crypto/dh_extra/dh_test.cc +++ b/crypto/dh_extra/dh_test.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/dh_extra/params.cc b/crypto/dh_extra/params.cc index 548c4c8f3d..c1cbca3f4c 100644 --- a/crypto/dh_extra/params.cc +++ b/crypto/dh_extra/params.cc @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2011 The OpenSSL Project. All rights reserved. +/* + * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/digest_extra/digest_extra.cc b/crypto/digest_extra/digest_extra.cc index 0b30897db5..8e26b987b7 100644 --- a/crypto/digest_extra/digest_extra.cc +++ b/crypto/digest_extra/digest_extra.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/dsa/dsa.cc b/crypto/dsa/dsa.cc index 876ce41c6e..22b2be6408 100644 --- a/crypto/dsa/dsa.cc +++ b/crypto/dsa/dsa.cc @@ -1,61 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - * - * The DSS routines are based on patches supplied by - * Steven Schoch . */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/dsa/dsa_asn1.cc b/crypto/dsa/dsa_asn1.cc index f6c9acc07f..14ddaf885e 100644 --- a/crypto/dsa/dsa_asn1.cc +++ b/crypto/dsa/dsa_asn1.cc @@ -1,56 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2000. */ -/* ==================================================================== - * Copyright (c) 2000-2005 The OpenSSL Project. All rights reserved. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/dsa/dsa_test.cc b/crypto/dsa/dsa_test.cc index f90c009750..2af876ee18 100644 --- a/crypto/dsa/dsa_test.cc +++ b/crypto/dsa/dsa_test.cc @@ -1,61 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - * - * The DSS routines are based on patches supplied by - * Steven Schoch . */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/ec_extra/ec_asn1.cc b/crypto/ec_extra/ec_asn1.cc index 12e78b5ea5..a3fb6685ca 100644 --- a/crypto/ec_extra/ec_asn1.cc +++ b/crypto/ec_extra/ec_asn1.cc @@ -1,55 +1,11 @@ -/* Written by Nils Larsch for the OpenSSL project. */ -/* ==================================================================== - * Copyright (c) 2000-2003 The OpenSSL Project. All rights reserved. +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/ecdh_extra/ecdh_extra.cc b/crypto/ecdh_extra/ecdh_extra.cc index d275d1dea9..28180afbf3 100644 --- a/crypto/ecdh_extra/ecdh_extra.cc +++ b/crypto/ecdh_extra/ecdh_extra.cc @@ -1,3 +1,12 @@ +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * @@ -12,57 +21,6 @@ * Sun Microsystems Laboratories. * */ -/* ==================================================================== - * Copyright (c) 2000-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include diff --git a/crypto/ecdsa_extra/ecdsa_asn1.cc b/crypto/ecdsa_extra/ecdsa_asn1.cc index eeaffa76e5..d3d151bb5e 100644 --- a/crypto/ecdsa_extra/ecdsa_asn1.cc +++ b/crypto/ecdsa_extra/ecdsa_asn1.cc @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/err/err.cc b/crypto/err/err.cc index 0ae4bbafb9..670408e8f9 100644 --- a/crypto/err/err.cc +++ b/crypto/err/err.cc @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ // Ensure we can't call OPENSSL_malloc circularly. #define _BORINGSSL_PROHIBIT_OPENSSL_MALLOC diff --git a/crypto/evp/evp.cc b/crypto/evp/evp.cc index bd05974f06..d25325e223 100644 --- a/crypto/evp/evp.cc +++ b/crypto/evp/evp.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/evp/evp_asn1.cc b/crypto/evp/evp_asn1.cc index 11a0b8927f..c4ae5a3cf5 100644 --- a/crypto/evp/evp_asn1.cc +++ b/crypto/evp/evp_asn1.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/evp/evp_ctx.cc b/crypto/evp/evp_ctx.cc index d5acb10f9d..1ecb164a5b 100644 --- a/crypto/evp/evp_ctx.cc +++ b/crypto/evp/evp_ctx.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/evp/evp_test.cc b/crypto/evp/evp_test.cc index 149b35d03d..c2c7d32d3c 100644 --- a/crypto/evp/evp_test.cc +++ b/crypto/evp/evp_test.cc @@ -1,53 +1,10 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project. - */ -/* ==================================================================== - * Copyright (c) 2015 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #include diff --git a/crypto/evp/internal.h b/crypto/evp/internal.h index 1d47427376..713b308d6f 100644 --- a/crypto/evp/internal.h +++ b/crypto/evp/internal.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_EVP_INTERNAL_H #define OPENSSL_HEADER_EVP_INTERNAL_H diff --git a/crypto/evp/p_dsa_asn1.cc b/crypto/evp/p_dsa_asn1.cc index 7f2c90f680..c04853bc49 100644 --- a/crypto/evp/p_dsa_asn1.cc +++ b/crypto/evp/p_dsa_asn1.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2006. - */ -/* ==================================================================== - * Copyright (c) 2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/evp/p_ec.cc b/crypto/evp/p_ec.cc index b878fac8d1..8d39258851 100644 --- a/crypto/evp/p_ec.cc +++ b/crypto/evp/p_ec.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2006. - */ -/* ==================================================================== - * Copyright (c) 2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/evp/p_ec_asn1.cc b/crypto/evp/p_ec_asn1.cc index 8b3abf45ab..8a4981c539 100644 --- a/crypto/evp/p_ec_asn1.cc +++ b/crypto/evp/p_ec_asn1.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2006. - */ -/* ==================================================================== - * Copyright (c) 2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/evp/p_rsa.cc b/crypto/evp/p_rsa.cc index ba9a2ad197..570fdad350 100644 --- a/crypto/evp/p_rsa.cc +++ b/crypto/evp/p_rsa.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2006. - */ -/* ==================================================================== - * Copyright (c) 2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/evp/p_rsa_asn1.cc b/crypto/evp/p_rsa_asn1.cc index e7aa2ca8f9..c956b64854 100644 --- a/crypto/evp/p_rsa_asn1.cc +++ b/crypto/evp/p_rsa_asn1.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2006. - */ -/* ==================================================================== - * Copyright (c) 2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/evp/pbkdf.cc b/crypto/evp/pbkdf.cc index 13259e310f..3dca7da243 100644 --- a/crypto/evp/pbkdf.cc +++ b/crypto/evp/pbkdf.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/evp/print.cc b/crypto/evp/print.cc index 2e7d3297a3..51fee73f6e 100644 --- a/crypto/evp/print.cc +++ b/crypto/evp/print.cc @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2006 The OpenSSL Project. All rights reserved. +/* + * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/evp/sign.cc b/crypto/evp/sign.cc index e126704f2d..a5dff52e6a 100644 --- a/crypto/evp/sign.cc +++ b/crypto/evp/sign.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/ex_data.cc b/crypto/ex_data.cc index 893515ddd8..ec01721aa9 100644 --- a/crypto/ex_data.cc +++ b/crypto/ex_data.cc @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include diff --git a/crypto/fipsmodule/aes/aes.cc.inc b/crypto/fipsmodule/aes/aes.cc.inc index 152f76a599..bcdc4dc8f9 100644 --- a/crypto/fipsmodule/aes/aes.cc.inc +++ b/crypto/fipsmodule/aes/aes.cc.inc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2002-2006 The OpenSSL Project. All rights reserved. +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/aes/key_wrap.cc.inc b/crypto/fipsmodule/aes/key_wrap.cc.inc index 67ef3f9306..ab5ff38c0a 100644 --- a/crypto/fipsmodule/aes/key_wrap.cc.inc +++ b/crypto/fipsmodule/aes/key_wrap.cc.inc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2001-2011 The OpenSSL Project. All rights reserved. +/* + * Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/aes/mode_wrappers.cc.inc b/crypto/fipsmodule/aes/mode_wrappers.cc.inc index aa76867d0b..cc1fd8adba 100644 --- a/crypto/fipsmodule/aes/mode_wrappers.cc.inc +++ b/crypto/fipsmodule/aes/mode_wrappers.cc.inc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2002-2006 The OpenSSL Project. All rights reserved. +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/bn/add.cc.inc b/crypto/fipsmodule/bn/add.cc.inc index 1487ac9a99..e4b0b384d6 100644 --- a/crypto/fipsmodule/bn/add.cc.inc +++ b/crypto/fipsmodule/bn/add.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/bn/bn.cc.inc b/crypto/fipsmodule/bn/bn.cc.inc index a3b8f080e6..b957b02f75 100644 --- a/crypto/fipsmodule/bn/bn.cc.inc +++ b/crypto/fipsmodule/bn/bn.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/bn/bn_test.cc b/crypto/fipsmodule/bn/bn_test.cc index e72a3624c4..5b0e61cd7a 100644 --- a/crypto/fipsmodule/bn/bn_test.cc +++ b/crypto/fipsmodule/bn/bn_test.cc @@ -1,59 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/crypto/fipsmodule/bn/bytes.cc.inc b/crypto/fipsmodule/bn/bytes.cc.inc index dcb0afc19a..f5025d74b1 100644 --- a/crypto/fipsmodule/bn/bytes.cc.inc +++ b/crypto/fipsmodule/bn/bytes.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/bn/cmp.cc.inc b/crypto/fipsmodule/bn/cmp.cc.inc index 84456a21ab..a49530a01f 100644 --- a/crypto/fipsmodule/bn/cmp.cc.inc +++ b/crypto/fipsmodule/bn/cmp.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/bn/ctx.cc.inc b/crypto/fipsmodule/bn/ctx.cc.inc index bd54181d38..110bd971fc 100644 --- a/crypto/fipsmodule/bn/ctx.cc.inc +++ b/crypto/fipsmodule/bn/ctx.cc.inc @@ -1,56 +1,11 @@ -/* Written by Ulf Moeller for the OpenSSL project. */ -/* ==================================================================== - * Copyright (c) 1998-2004 The OpenSSL Project. All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ - + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/bn/div.cc.inc b/crypto/fipsmodule/bn/div.cc.inc index eae9dc5dab..a15666ba78 100644 --- a/crypto/fipsmodule/bn/div.cc.inc +++ b/crypto/fipsmodule/bn/div.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/bn/exponentiation.cc.inc b/crypto/fipsmodule/bn/exponentiation.cc.inc index 5cec8c8ace..328fd07b4f 100644 --- a/crypto/fipsmodule/bn/exponentiation.cc.inc +++ b/crypto/fipsmodule/bn/exponentiation.cc.inc @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include diff --git a/crypto/fipsmodule/bn/gcd.cc.inc b/crypto/fipsmodule/bn/gcd.cc.inc index ecf82442ae..ad29af2e86 100644 --- a/crypto/fipsmodule/bn/gcd.cc.inc +++ b/crypto/fipsmodule/bn/gcd.cc.inc @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include diff --git a/crypto/fipsmodule/bn/generic.cc.inc b/crypto/fipsmodule/bn/generic.cc.inc index 247398fddb..0c89020570 100644 --- a/crypto/fipsmodule/bn/generic.cc.inc +++ b/crypto/fipsmodule/bn/generic.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/bn/internal.h b/crypto/fipsmodule/bn/internal.h index fbff65d0f2..ac35ed8458 100644 --- a/crypto/fipsmodule/bn/internal.h +++ b/crypto/fipsmodule/bn/internal.h @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/crypto/fipsmodule/bn/jacobi.cc.inc b/crypto/fipsmodule/bn/jacobi.cc.inc index d1a9d506a5..dd3b0c09da 100644 --- a/crypto/fipsmodule/bn/jacobi.cc.inc +++ b/crypto/fipsmodule/bn/jacobi.cc.inc @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2000 The OpenSSL Project. All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/bn/montgomery.cc.inc b/crypto/fipsmodule/bn/montgomery.cc.inc index eda57f306c..135a06eef4 100644 --- a/crypto/fipsmodule/bn/montgomery.cc.inc +++ b/crypto/fipsmodule/bn/montgomery.cc.inc @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include diff --git a/crypto/fipsmodule/bn/mul.cc.inc b/crypto/fipsmodule/bn/mul.cc.inc index 6e1a0fe5fe..392e8d6717 100644 --- a/crypto/fipsmodule/bn/mul.cc.inc +++ b/crypto/fipsmodule/bn/mul.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/bn/prime.cc.inc b/crypto/fipsmodule/bn/prime.cc.inc index ae4b00463e..238cc4307f 100644 --- a/crypto/fipsmodule/bn/prime.cc.inc +++ b/crypto/fipsmodule/bn/prime.cc.inc @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include diff --git a/crypto/fipsmodule/bn/random.cc.inc b/crypto/fipsmodule/bn/random.cc.inc index 3b5e3ca3c4..b9a6bef110 100644 --- a/crypto/fipsmodule/bn/random.cc.inc +++ b/crypto/fipsmodule/bn/random.cc.inc @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include diff --git a/crypto/fipsmodule/bn/shift.cc.inc b/crypto/fipsmodule/bn/shift.cc.inc index fe277d9ee4..39146b80cc 100644 --- a/crypto/fipsmodule/bn/shift.cc.inc +++ b/crypto/fipsmodule/bn/shift.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/bn/sqrt.cc.inc b/crypto/fipsmodule/bn/sqrt.cc.inc index 4cc8d6e8ce..1da0e9f2bc 100644 --- a/crypto/fipsmodule/bn/sqrt.cc.inc +++ b/crypto/fipsmodule/bn/sqrt.cc.inc @@ -1,56 +1,11 @@ -/* Written by Lenka Fibikova - * and Bodo Moeller for the OpenSSL project. */ -/* ==================================================================== - * Copyright (c) 1998-2000 The OpenSSL Project. All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/cipher/cipher.cc.inc b/crypto/fipsmodule/cipher/cipher.cc.inc index 4f31e807cb..9898262dcc 100644 --- a/crypto/fipsmodule/cipher/cipher.cc.inc +++ b/crypto/fipsmodule/cipher/cipher.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/cipher/e_aes.cc.inc b/crypto/fipsmodule/cipher/e_aes.cc.inc index 5a060ecf32..1f264181c2 100644 --- a/crypto/fipsmodule/cipher/e_aes.cc.inc +++ b/crypto/fipsmodule/cipher/e_aes.cc.inc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2001-2011 The OpenSSL Project. All rights reserved. +/* + * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/fipsmodule/cipher/e_aesccm.cc.inc b/crypto/fipsmodule/cipher/e_aesccm.cc.inc index 3d4163b5b7..a5d324ef0e 100644 --- a/crypto/fipsmodule/cipher/e_aesccm.cc.inc +++ b/crypto/fipsmodule/cipher/e_aesccm.cc.inc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2008 The OpenSSL Project. All rights reserved. +/* + * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/cipher/internal.h b/crypto/fipsmodule/cipher/internal.h index 6e9e73b4de..9aa0ac525c 100644 --- a/crypto/fipsmodule/cipher/internal.h +++ b/crypto/fipsmodule/cipher/internal.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_CIPHER_INTERNAL_H #define OPENSSL_HEADER_CIPHER_INTERNAL_H diff --git a/crypto/fipsmodule/cmac/cmac.cc.inc b/crypto/fipsmodule/cmac/cmac.cc.inc index 94931b52c8..0a16ee9fb7 100644 --- a/crypto/fipsmodule/cmac/cmac.cc.inc +++ b/crypto/fipsmodule/cmac/cmac.cc.inc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2010 The OpenSSL Project. All rights reserved. +/* + * Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/dh/check.cc.inc b/crypto/fipsmodule/dh/check.cc.inc index b92b700d37..14e2b49905 100644 --- a/crypto/fipsmodule/dh/check.cc.inc +++ b/crypto/fipsmodule/dh/check.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/dh/dh.cc.inc b/crypto/fipsmodule/dh/dh.cc.inc index e32c4af97d..77df858817 100644 --- a/crypto/fipsmodule/dh/dh.cc.inc +++ b/crypto/fipsmodule/dh/dh.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/digest/digest.cc.inc b/crypto/fipsmodule/digest/digest.cc.inc index ea39d444e3..973b8fe18c 100644 --- a/crypto/fipsmodule/digest/digest.cc.inc +++ b/crypto/fipsmodule/digest/digest.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/digest/digests.cc.inc b/crypto/fipsmodule/digest/digests.cc.inc index e1b08fa2f2..61dc524d4a 100644 --- a/crypto/fipsmodule/digest/digests.cc.inc +++ b/crypto/fipsmodule/digest/digests.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/digest/internal.h b/crypto/fipsmodule/digest/internal.h index 2d06ed07b5..b111c2e13e 100644 --- a/crypto/fipsmodule/digest/internal.h +++ b/crypto/fipsmodule/digest/internal.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_DIGEST_INTERNAL_H #define OPENSSL_HEADER_DIGEST_INTERNAL_H diff --git a/crypto/fipsmodule/digest/md32_common.h b/crypto/fipsmodule/digest/md32_common.h index 129ec48fd2..8617b73ced 100644 --- a/crypto/fipsmodule/digest/md32_common.h +++ b/crypto/fipsmodule/digest/md32_common.h @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1999-2007 The OpenSSL Project. All rights reserved. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_DIGEST_MD32_COMMON_H #define OPENSSL_HEADER_DIGEST_MD32_COMMON_H diff --git a/crypto/fipsmodule/digestsign/digestsign.cc.inc b/crypto/fipsmodule/digestsign/digestsign.cc.inc index eb6f17cd1d..8e77d48e15 100644 --- a/crypto/fipsmodule/digestsign/digestsign.cc.inc +++ b/crypto/fipsmodule/digestsign/digestsign.cc.inc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2006. - */ -/* ==================================================================== - * Copyright (c) 2006,2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/ec/ec.cc.inc b/crypto/fipsmodule/ec/ec.cc.inc index 1240eedbed..fb02c4680a 100644 --- a/crypto/fipsmodule/ec/ec.cc.inc +++ b/crypto/fipsmodule/ec/ec.cc.inc @@ -1,57 +1,12 @@ -/* Originally written by Bodo Moeller for the OpenSSL project. - * ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/crypto/fipsmodule/ec/ec_key.cc.inc b/crypto/fipsmodule/ec/ec_key.cc.inc index c5417a6f47..b76d0ad0ed 100644 --- a/crypto/fipsmodule/ec/ec_key.cc.inc +++ b/crypto/fipsmodule/ec/ec_key.cc.inc @@ -1,57 +1,12 @@ -/* Originally written by Bodo Moeller for the OpenSSL project. - * ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/crypto/fipsmodule/ec/ec_montgomery.cc.inc b/crypto/fipsmodule/ec/ec_montgomery.cc.inc index 92289a5ed4..8ace78c8f7 100644 --- a/crypto/fipsmodule/ec/ec_montgomery.cc.inc +++ b/crypto/fipsmodule/ec/ec_montgomery.cc.inc @@ -1,57 +1,12 @@ -/* Originally written by Bodo Moeller and Nils Larsch for the OpenSSL project. - * ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/crypto/fipsmodule/ec/internal.h b/crypto/fipsmodule/ec/internal.h index f2cb69bfe9..c453b7c4da 100644 --- a/crypto/fipsmodule/ec/internal.h +++ b/crypto/fipsmodule/ec/internal.h @@ -1,57 +1,12 @@ -/* Originally written by Bodo Moeller for the OpenSSL project. - * ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/crypto/fipsmodule/ec/oct.cc.inc b/crypto/fipsmodule/ec/oct.cc.inc index b59803665f..4aacd17ce8 100644 --- a/crypto/fipsmodule/ec/oct.cc.inc +++ b/crypto/fipsmodule/ec/oct.cc.inc @@ -1,57 +1,12 @@ -/* Originally written by Bodo Moeller for the OpenSSL project. - * ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/crypto/fipsmodule/ec/simple.cc.inc b/crypto/fipsmodule/ec/simple.cc.inc index 406e108b3d..100ba0fc53 100644 --- a/crypto/fipsmodule/ec/simple.cc.inc +++ b/crypto/fipsmodule/ec/simple.cc.inc @@ -1,57 +1,12 @@ -/* Originally written by Bodo Moeller for the OpenSSL project. - * ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/crypto/fipsmodule/ec/wnaf.cc.inc b/crypto/fipsmodule/ec/wnaf.cc.inc index 8e997f8ff1..f17d9fbb10 100644 --- a/crypto/fipsmodule/ec/wnaf.cc.inc +++ b/crypto/fipsmodule/ec/wnaf.cc.inc @@ -1,57 +1,12 @@ -/* Originally written by Bodo Moeller for the OpenSSL project. - * ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/crypto/fipsmodule/ecdh/ecdh.cc.inc b/crypto/fipsmodule/ecdh/ecdh.cc.inc index 86ba2583de..19c6c49233 100644 --- a/crypto/fipsmodule/ecdh/ecdh.cc.inc +++ b/crypto/fipsmodule/ecdh/ecdh.cc.inc @@ -1,3 +1,12 @@ +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * @@ -12,57 +21,6 @@ * Sun Microsystems Laboratories. * */ -/* ==================================================================== - * Copyright (c) 2000-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include diff --git a/crypto/fipsmodule/ecdsa/ecdsa.cc.inc b/crypto/fipsmodule/ecdsa/ecdsa.cc.inc index f5508a1530..58b848b60e 100644 --- a/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +++ b/crypto/fipsmodule/ecdsa/ecdsa.cc.inc @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/ecdsa/ecdsa_test.cc b/crypto/fipsmodule/ecdsa/ecdsa_test.cc index 185621088e..92e92f2fa3 100644 --- a/crypto/fipsmodule/ecdsa/ecdsa_test.cc +++ b/crypto/fipsmodule/ecdsa/ecdsa_test.cc @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/hmac/hmac.cc.inc b/crypto/fipsmodule/hmac/hmac.cc.inc index 4faa4e28e0..af87eaeff3 100644 --- a/crypto/fipsmodule/hmac/hmac.cc.inc +++ b/crypto/fipsmodule/hmac/hmac.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/modes/cbc.cc.inc b/crypto/fipsmodule/modes/cbc.cc.inc index 511a5de414..2cbfcffe4a 100644 --- a/crypto/fipsmodule/modes/cbc.cc.inc +++ b/crypto/fipsmodule/modes/cbc.cc.inc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2008 The OpenSSL Project. All rights reserved. +/* + * Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/fipsmodule/modes/cfb.cc.inc b/crypto/fipsmodule/modes/cfb.cc.inc index 37a81843d9..42d3aba906 100644 --- a/crypto/fipsmodule/modes/cfb.cc.inc +++ b/crypto/fipsmodule/modes/cfb.cc.inc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2008 The OpenSSL Project. All rights reserved. +/* + * Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/fipsmodule/modes/ctr.cc.inc b/crypto/fipsmodule/modes/ctr.cc.inc index 3eae8328a0..364743f3c5 100644 --- a/crypto/fipsmodule/modes/ctr.cc.inc +++ b/crypto/fipsmodule/modes/ctr.cc.inc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2008 The OpenSSL Project. All rights reserved. +/* + * Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/fipsmodule/modes/gcm.cc.inc b/crypto/fipsmodule/modes/gcm.cc.inc index 37820c5d9a..d3c829a9dc 100644 --- a/crypto/fipsmodule/modes/gcm.cc.inc +++ b/crypto/fipsmodule/modes/gcm.cc.inc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2008 The OpenSSL Project. All rights reserved. +/* + * Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/modes/internal.h b/crypto/fipsmodule/modes/internal.h index c7c89dd72a..a1f7bf5777 100644 --- a/crypto/fipsmodule/modes/internal.h +++ b/crypto/fipsmodule/modes/internal.h @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2008 The OpenSSL Project. All rights reserved. +/* + * Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_MODES_INTERNAL_H #define OPENSSL_HEADER_MODES_INTERNAL_H diff --git a/crypto/fipsmodule/modes/ofb.cc.inc b/crypto/fipsmodule/modes/ofb.cc.inc index 9260f2d491..38e8795f15 100644 --- a/crypto/fipsmodule/modes/ofb.cc.inc +++ b/crypto/fipsmodule/modes/ofb.cc.inc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2008 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ +/* + * Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/fipsmodule/rsa/blinding.cc.inc b/crypto/fipsmodule/rsa/blinding.cc.inc index 97f679edde..68fa59c558 100644 --- a/crypto/fipsmodule/rsa/blinding.cc.inc +++ b/crypto/fipsmodule/rsa/blinding.cc.inc @@ -1,110 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). - * - * Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/rsa/internal.h b/crypto/fipsmodule/rsa/internal.h index 5a993a2780..f424023f5f 100644 --- a/crypto/fipsmodule/rsa/internal.h +++ b/crypto/fipsmodule/rsa/internal.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_RSA_INTERNAL_H #define OPENSSL_HEADER_RSA_INTERNAL_H diff --git a/crypto/fipsmodule/rsa/padding.cc.inc b/crypto/fipsmodule/rsa/padding.cc.inc index 82ec4daeaa..b1bb584a71 100644 --- a/crypto/fipsmodule/rsa/padding.cc.inc +++ b/crypto/fipsmodule/rsa/padding.cc.inc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2005. - */ -/* ==================================================================== - * Copyright (c) 2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/rsa/rsa.cc.inc b/crypto/fipsmodule/rsa/rsa.cc.inc index 83d8f3934e..5e26e43cd2 100644 --- a/crypto/fipsmodule/rsa/rsa.cc.inc +++ b/crypto/fipsmodule/rsa/rsa.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/rsa/rsa_impl.cc.inc b/crypto/fipsmodule/rsa/rsa_impl.cc.inc index dc32d3aff1..0b9729d70e 100644 --- a/crypto/fipsmodule/rsa/rsa_impl.cc.inc +++ b/crypto/fipsmodule/rsa/rsa_impl.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/sha/sha1.cc.inc b/crypto/fipsmodule/sha/sha1.cc.inc index b0c085e144..5e6e7efaac 100644 --- a/crypto/fipsmodule/sha/sha1.cc.inc +++ b/crypto/fipsmodule/sha/sha1.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/sha/sha256.cc.inc b/crypto/fipsmodule/sha/sha256.cc.inc index 412fe78789..52f1605910 100644 --- a/crypto/fipsmodule/sha/sha256.cc.inc +++ b/crypto/fipsmodule/sha/sha256.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/sha/sha512.cc.inc b/crypto/fipsmodule/sha/sha512.cc.inc index c4f71d789e..28b2b3ffe4 100644 --- a/crypto/fipsmodule/sha/sha512.cc.inc +++ b/crypto/fipsmodule/sha/sha512.cc.inc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/fipsmodule/tls/kdf.cc.inc b/crypto/fipsmodule/tls/kdf.cc.inc index 7a7d12da11..a2942deb12 100644 --- a/crypto/fipsmodule/tls/kdf.cc.inc +++ b/crypto/fipsmodule/tls/kdf.cc.inc @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/hmac_extra/hmac_test.cc b/crypto/hmac_extra/hmac_test.cc index 4c0d2a102f..697601e155 100644 --- a/crypto/hmac_extra/hmac_test.cc +++ b/crypto/hmac_extra/hmac_test.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/internal.h b/crypto/internal.h index 63a6c68319..bbaa619e75 100644 --- a/crypto/internal.h +++ b/crypto/internal.h @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #ifndef OPENSSL_HEADER_CRYPTO_INTERNAL_H #define OPENSSL_HEADER_CRYPTO_INTERNAL_H diff --git a/crypto/lhash/internal.h b/crypto/lhash/internal.h index 5479d641c8..7aa1ac0db0 100644 --- a/crypto/lhash/internal.h +++ b/crypto/lhash/internal.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_LHASH_INTERNAL_H #define OPENSSL_HEADER_LHASH_INTERNAL_H diff --git a/crypto/lhash/lhash.cc b/crypto/lhash/lhash.cc index 7a607b6e2c..25fe8df2e7 100644 --- a/crypto/lhash/lhash.cc +++ b/crypto/lhash/lhash.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/md4/md4.cc b/crypto/md4/md4.cc index a24458f74d..423ef0f478 100644 --- a/crypto/md4/md4.cc +++ b/crypto/md4/md4.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/md5/md5.cc b/crypto/md5/md5.cc index b961261eed..d1f8ddef80 100644 --- a/crypto/md5/md5.cc +++ b/crypto/md5/md5.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/mem.cc b/crypto/mem.cc index 66bc9158ad..53e76d15ad 100644 --- a/crypto/mem.cc +++ b/crypto/mem.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/obj/obj.cc b/crypto/obj/obj.cc index 7a5499c172..720ca6b329 100644 --- a/crypto/obj/obj.cc +++ b/crypto/obj/obj.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/obj/obj_dat.h b/crypto/obj/obj_dat.h index f1b706391b..de5c4a54cd 100644 --- a/crypto/obj/obj_dat.h +++ b/crypto/obj/obj_dat.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ /* This file is generated by crypto/obj/objects.go. */ diff --git a/crypto/obj/obj_xref.cc b/crypto/obj/obj_xref.cc index 21bde279d1..8e5e486b2a 100644 --- a/crypto/obj/obj_xref.cc +++ b/crypto/obj/obj_xref.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/pem/pem_all.cc b/crypto/pem/pem_all.cc index cade0a2586..f2f363f665 100644 --- a/crypto/pem/pem_all.cc +++ b/crypto/pem/pem_all.cc @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include diff --git a/crypto/pem/pem_info.cc b/crypto/pem/pem_info.cc index ea96a60b6e..3c1d575730 100644 --- a/crypto/pem/pem_info.cc +++ b/crypto/pem/pem_info.cc @@ -1,58 +1,10 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #include diff --git a/crypto/pem/pem_lib.cc b/crypto/pem/pem_lib.cc index 9c6789aa4f..a598010477 100644 --- a/crypto/pem/pem_lib.cc +++ b/crypto/pem/pem_lib.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/pem/pem_oth.cc b/crypto/pem/pem_oth.cc index 822092cebb..171b2f5941 100644 --- a/crypto/pem/pem_oth.cc +++ b/crypto/pem/pem_oth.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/pem/pem_pk8.cc b/crypto/pem/pem_pk8.cc index 2fc0673cd7..37636ec455 100644 --- a/crypto/pem/pem_pk8.cc +++ b/crypto/pem/pem_pk8.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/pem/pem_pkey.cc b/crypto/pem/pem_pkey.cc index 9349ac71e0..72dfc74dce 100644 --- a/crypto/pem/pem_pkey.cc +++ b/crypto/pem/pem_pkey.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/pem/pem_x509.cc b/crypto/pem/pem_x509.cc index fbaf6ca6a6..23482fd392 100644 --- a/crypto/pem/pem_x509.cc +++ b/crypto/pem/pem_x509.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2001. - */ -/* ==================================================================== - * Copyright (c) 2001 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/pem/pem_xaux.cc b/crypto/pem/pem_xaux.cc index 5967175f45..343e450194 100644 --- a/crypto/pem/pem_xaux.cc +++ b/crypto/pem/pem_xaux.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2001. - */ -/* ==================================================================== - * Copyright (c) 2001 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/pkcs8/internal.h b/crypto/pkcs8/internal.h index c80d159094..175db44d87 100644 --- a/crypto/pkcs8/internal.h +++ b/crypto/pkcs8/internal.h @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_PKCS8_INTERNAL_H #define OPENSSL_HEADER_PKCS8_INTERNAL_H diff --git a/crypto/pkcs8/p5_pbev2.cc b/crypto/pkcs8/p5_pbev2.cc index 5a02ac0b36..65736f0d06 100644 --- a/crypto/pkcs8/p5_pbev2.cc +++ b/crypto/pkcs8/p5_pbev2.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999-2004. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/pkcs8/pkcs8.cc b/crypto/pkcs8/pkcs8.cc index 39654a077b..91131a222f 100644 --- a/crypto/pkcs8/pkcs8.cc +++ b/crypto/pkcs8/pkcs8.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/pkcs8/pkcs8_x509.cc b/crypto/pkcs8/pkcs8_x509.cc index a703771662..d719049372 100644 --- a/crypto/pkcs8/pkcs8_x509.cc +++ b/crypto/pkcs8/pkcs8_x509.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/rc4/rc4.cc b/crypto/rc4/rc4.cc index a27a657f21..090d1cee06 100644 --- a/crypto/rc4/rc4.cc +++ b/crypto/rc4/rc4.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/rsa_extra/internal.h b/crypto/rsa_extra/internal.h index 74359c6d43..8104e97271 100644 --- a/crypto/rsa_extra/internal.h +++ b/crypto/rsa_extra/internal.h @@ -1,59 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ - + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_RSA_EXTRA_INTERNAL_H #define OPENSSL_HEADER_RSA_EXTRA_INTERNAL_H diff --git a/crypto/rsa_extra/rsa_asn1.cc b/crypto/rsa_extra/rsa_asn1.cc index 4d3fbe9089..68df87741f 100644 --- a/crypto/rsa_extra/rsa_asn1.cc +++ b/crypto/rsa_extra/rsa_asn1.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2000. - */ -/* ==================================================================== - * Copyright (c) 2000-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/rsa_extra/rsa_crypt.cc b/crypto/rsa_extra/rsa_crypt.cc index 68fcf6ecfa..6869dc9451 100644 --- a/crypto/rsa_extra/rsa_crypt.cc +++ b/crypto/rsa_extra/rsa_crypt.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/rsa_extra/rsa_test.cc b/crypto/rsa_extra/rsa_test.cc index 1fca187365..12ab6fe7be 100644 --- a/crypto/rsa_extra/rsa_test.cc +++ b/crypto/rsa_extra/rsa_test.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/stack/stack.cc b/crypto/stack/stack.cc index fbf5ea79da..6635501716 100644 --- a/crypto/stack/stack.cc +++ b/crypto/stack/stack.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/thread.cc b/crypto/thread.cc index 25acce1b89..b3755ce6b1 100644 --- a/crypto/thread.cc +++ b/crypto/thread.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/a_digest.cc b/crypto/x509/a_digest.cc index cec7da886d..e76a5233d2 100644 --- a/crypto/x509/a_digest.cc +++ b/crypto/x509/a_digest.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/a_sign.cc b/crypto/x509/a_sign.cc index 55753b8050..0d9317dbe3 100644 --- a/crypto/x509/a_sign.cc +++ b/crypto/x509/a_sign.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/a_verify.cc b/crypto/x509/a_verify.cc index 527167170f..2b04b25b2b 100644 --- a/crypto/x509/a_verify.cc +++ b/crypto/x509/a_verify.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/algorithm.cc b/crypto/x509/algorithm.cc index b006f9fc2f..dca5df6ea0 100644 --- a/crypto/x509/algorithm.cc +++ b/crypto/x509/algorithm.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/asn1_gen.cc b/crypto/x509/asn1_gen.cc index ec60f93b7a..d08026e86d 100644 --- a/crypto/x509/asn1_gen.cc +++ b/crypto/x509/asn1_gen.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/by_dir.cc b/crypto/x509/by_dir.cc index a1719b6f07..785e8402a9 100644 --- a/crypto/x509/by_dir.cc +++ b/crypto/x509/by_dir.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/by_file.cc b/crypto/x509/by_file.cc index 989e179af5..03532656a0 100644 --- a/crypto/x509/by_file.cc +++ b/crypto/x509/by_file.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/ext_dat.h b/crypto/x509/ext_dat.h index 0d32769904..ec7a7fec68 100644 --- a/crypto/x509/ext_dat.h +++ b/crypto/x509/ext_dat.h @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999-2004 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ // This file contains a table of "standard" extensions diff --git a/crypto/x509/i2d_pr.cc b/crypto/x509/i2d_pr.cc index e5865a4289..6dce449b2e 100644 --- a/crypto/x509/i2d_pr.cc +++ b/crypto/x509/i2d_pr.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/internal.h b/crypto/x509/internal.h index 8d066dd3c1..2755d5ab24 100644 --- a/crypto/x509/internal.h +++ b/crypto/x509/internal.h @@ -1,59 +1,10 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2013. - */ -/* ==================================================================== - * Copyright (c) 2013 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). + * Copyright 2013-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #ifndef OPENSSL_HEADER_X509_INTERNAL_H diff --git a/crypto/x509/name_print.cc b/crypto/x509/name_print.cc index 5dc34dae54..9d99b6f66a 100644 --- a/crypto/x509/name_print.cc +++ b/crypto/x509/name_print.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/rsa_pss.cc b/crypto/x509/rsa_pss.cc index 30aa8036dd..3561b8391a 100644 --- a/crypto/x509/rsa_pss.cc +++ b/crypto/x509/rsa_pss.cc @@ -1,57 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2006. - */ -/* ==================================================================== - * Copyright (c) 2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" +/* + * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/t_crl.cc b/crypto/x509/t_crl.cc index fcb36acdfc..1df61f4e28 100644 --- a/crypto/x509/t_crl.cc +++ b/crypto/x509/t_crl.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/t_req.cc b/crypto/x509/t_req.cc index bc41b4529a..68b98d92e6 100644 --- a/crypto/x509/t_req.cc +++ b/crypto/x509/t_req.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/t_x509.cc b/crypto/x509/t_x509.cc index 9046928cf2..df059a2212 100644 --- a/crypto/x509/t_x509.cc +++ b/crypto/x509/t_x509.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/t_x509a.cc b/crypto/x509/t_x509a.cc index 956b9a03a0..341c73109c 100644 --- a/crypto/x509/t_x509a.cc +++ b/crypto/x509/t_x509a.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/tab_test.cc b/crypto/x509/tab_test.cc index be17b7ad1d..ae858d4de3 100644 --- a/crypto/x509/tab_test.cc +++ b/crypto/x509/tab_test.cc @@ -1,59 +1,10 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #if !defined(BORINGSSL_SHARED_LIBRARY) diff --git a/crypto/x509/v3_akey.cc b/crypto/x509/v3_akey.cc index cfd5d75a95..96a77f5c51 100644 --- a/crypto/x509/v3_akey.cc +++ b/crypto/x509/v3_akey.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/v3_akeya.cc b/crypto/x509/v3_akeya.cc index 8614b86c80..8359da3ea9 100644 --- a/crypto/x509/v3_akeya.cc +++ b/crypto/x509/v3_akeya.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/v3_alt.cc b/crypto/x509/v3_alt.cc index 20cfe92710..7b9fb0aef9 100644 --- a/crypto/x509/v3_alt.cc +++ b/crypto/x509/v3_alt.cc @@ -1,57 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project. - */ -/* ==================================================================== - * Copyright (c) 1999-2003 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/v3_bcons.cc b/crypto/x509/v3_bcons.cc index b94275240f..b393e959be 100644 --- a/crypto/x509/v3_bcons.cc +++ b/crypto/x509/v3_bcons.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/v3_bitst.cc b/crypto/x509/v3_bitst.cc index 8c0bd60432..2c9106db46 100644 --- a/crypto/x509/v3_bitst.cc +++ b/crypto/x509/v3_bitst.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/v3_conf.cc b/crypto/x509/v3_conf.cc index bd80b69764..50b157b3d0 100644 --- a/crypto/x509/v3_conf.cc +++ b/crypto/x509/v3_conf.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ // extension creation utilities diff --git a/crypto/x509/v3_cpols.cc b/crypto/x509/v3_cpols.cc index 95f55b59f8..b7de2a930a 100644 --- a/crypto/x509/v3_cpols.cc +++ b/crypto/x509/v3_cpols.cc @@ -1,59 +1,10 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999-2004 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #include diff --git a/crypto/x509/v3_crld.cc b/crypto/x509/v3_crld.cc index 4275af6221..c109396bb9 100644 --- a/crypto/x509/v3_crld.cc +++ b/crypto/x509/v3_crld.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999-2008 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/v3_enum.cc b/crypto/x509/v3_enum.cc index f359802564..369835ea69 100644 --- a/crypto/x509/v3_enum.cc +++ b/crypto/x509/v3_enum.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/v3_extku.cc b/crypto/x509/v3_extku.cc index 33abe8a20f..4f502a68c5 100644 --- a/crypto/x509/v3_extku.cc +++ b/crypto/x509/v3_extku.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/v3_genn.cc b/crypto/x509/v3_genn.cc index 6c9fbb8a94..90d4b96a44 100644 --- a/crypto/x509/v3_genn.cc +++ b/crypto/x509/v3_genn.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999-2008 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/v3_ia5.cc b/crypto/x509/v3_ia5.cc index f0e716c00c..ae7df214fd 100644 --- a/crypto/x509/v3_ia5.cc +++ b/crypto/x509/v3_ia5.cc @@ -1,59 +1,10 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #include diff --git a/crypto/x509/v3_info.cc b/crypto/x509/v3_info.cc index 4d7ae269c7..5097b386c2 100644 --- a/crypto/x509/v3_info.cc +++ b/crypto/x509/v3_info.cc @@ -1,59 +1,10 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #include diff --git a/crypto/x509/v3_int.cc b/crypto/x509/v3_int.cc index 0e45199261..74e708009d 100644 --- a/crypto/x509/v3_int.cc +++ b/crypto/x509/v3_int.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999-2004 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/v3_lib.cc b/crypto/x509/v3_lib.cc index 7f6578fee1..349a31c4b6 100644 --- a/crypto/x509/v3_lib.cc +++ b/crypto/x509/v3_lib.cc @@ -1,60 +1,12 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* X509 v3 extension utilities */ #include diff --git a/crypto/x509/v3_ncons.cc b/crypto/x509/v3_ncons.cc index fdf384f5b3..6502dbff85 100644 --- a/crypto/x509/v3_ncons.cc +++ b/crypto/x509/v3_ncons.cc @@ -1,57 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project. - */ -/* ==================================================================== - * Copyright (c) 2003 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 2003-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/v3_pcons.cc b/crypto/x509/v3_pcons.cc index 394c12cf83..9600411beb 100644 --- a/crypto/x509/v3_pcons.cc +++ b/crypto/x509/v3_pcons.cc @@ -1,57 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project. - */ -/* ==================================================================== - * Copyright (c) 2003 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 2003-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/v3_pmaps.cc b/crypto/x509/v3_pmaps.cc index a3650f3b17..d653a4ae68 100644 --- a/crypto/x509/v3_pmaps.cc +++ b/crypto/x509/v3_pmaps.cc @@ -1,57 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project. - */ -/* ==================================================================== - * Copyright (c) 2003 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 2003-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/v3_prn.cc b/crypto/x509/v3_prn.cc index 853282087c..665aa1fff4 100644 --- a/crypto/x509/v3_prn.cc +++ b/crypto/x509/v3_prn.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ // X509 v3 extension utilities diff --git a/crypto/x509/v3_purp.cc b/crypto/x509/v3_purp.cc index 70107166d8..285fcc5dcb 100644 --- a/crypto/x509/v3_purp.cc +++ b/crypto/x509/v3_purp.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2001. - */ -/* ==================================================================== - * Copyright (c) 1999-2004 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/v3_skey.cc b/crypto/x509/v3_skey.cc index d60b2bc64f..3f3a6024d0 100644 --- a/crypto/x509/v3_skey.cc +++ b/crypto/x509/v3_skey.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/v3_utl.cc b/crypto/x509/v3_utl.cc index 0640f0124d..d2a6149411 100644 --- a/crypto/x509/v3_utl.cc +++ b/crypto/x509/v3_utl.cc @@ -1,59 +1,12 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project. - */ -/* ==================================================================== - * Copyright (c) 1999-2003 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* X509 v3 extension utilities */ #include diff --git a/crypto/x509/x509.cc b/crypto/x509/x509.cc index f6b8fabd42..0cd54acfea 100644 --- a/crypto/x509/x509.cc +++ b/crypto/x509/x509.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x509_att.cc b/crypto/x509/x509_att.cc index c92d722d7c..36275438eb 100644 --- a/crypto/x509/x509_att.cc +++ b/crypto/x509/x509_att.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x509_cmp.cc b/crypto/x509/x509_cmp.cc index 87518ffa8b..7507f5ff80 100644 --- a/crypto/x509/x509_cmp.cc +++ b/crypto/x509/x509_cmp.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x509_d2.cc b/crypto/x509/x509_d2.cc index 269f56fefb..f9d6e5ca88 100644 --- a/crypto/x509/x509_d2.cc +++ b/crypto/x509/x509_d2.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x509_def.cc b/crypto/x509/x509_def.cc index 1721da5d99..5dcf5b75b7 100644 --- a/crypto/x509/x509_def.cc +++ b/crypto/x509/x509_def.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x509_ext.cc b/crypto/x509/x509_ext.cc index e8e79dc78b..ed28c22a4f 100644 --- a/crypto/x509/x509_ext.cc +++ b/crypto/x509/x509_ext.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x509_lu.cc b/crypto/x509/x509_lu.cc index f2a40855ad..eb3acb1b58 100644 --- a/crypto/x509/x509_lu.cc +++ b/crypto/x509/x509_lu.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x509_obj.cc b/crypto/x509/x509_obj.cc index ed6dcc6636..fccf21f5cd 100644 --- a/crypto/x509/x509_obj.cc +++ b/crypto/x509/x509_obj.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x509_req.cc b/crypto/x509/x509_req.cc index c7ea009992..3244533670 100644 --- a/crypto/x509/x509_req.cc +++ b/crypto/x509/x509_req.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x509_set.cc b/crypto/x509/x509_set.cc index bfc3ae0152..c7a4030b02 100644 --- a/crypto/x509/x509_set.cc +++ b/crypto/x509/x509_set.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x509_trs.cc b/crypto/x509/x509_trs.cc index 7a5b81ea3b..417319ec6a 100644 --- a/crypto/x509/x509_trs.cc +++ b/crypto/x509/x509_trs.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x509_txt.cc b/crypto/x509/x509_txt.cc index 45e8322bda..1ae270f5dc 100644 --- a/crypto/x509/x509_txt.cc +++ b/crypto/x509/x509_txt.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x509_v3.cc b/crypto/x509/x509_v3.cc index d20f925b74..a032405b90 100644 --- a/crypto/x509/x509_v3.cc +++ b/crypto/x509/x509_v3.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x509_vfy.cc b/crypto/x509/x509_vfy.cc index 9e26d09c6d..1c2cd601cf 100644 --- a/crypto/x509/x509_vfy.cc +++ b/crypto/x509/x509_vfy.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x509_vpm.cc b/crypto/x509/x509_vpm.cc index 78f1946709..2926f32fed 100644 --- a/crypto/x509/x509_vpm.cc +++ b/crypto/x509/x509_vpm.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2004. - */ -/* ==================================================================== - * Copyright (c) 2004 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x509cset.cc b/crypto/x509/x509cset.cc index 6dd1fc0826..8e3ae03e54 100644 --- a/crypto/x509/x509cset.cc +++ b/crypto/x509/x509cset.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2001. - */ -/* ==================================================================== - * Copyright (c) 2001 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x509name.cc b/crypto/x509/x509name.cc index 8d2d202f88..0ef6529567 100644 --- a/crypto/x509/x509name.cc +++ b/crypto/x509/x509name.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x509rset.cc b/crypto/x509/x509rset.cc index 8b8beffd31..40b48ee38b 100644 --- a/crypto/x509/x509rset.cc +++ b/crypto/x509/x509rset.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x509spki.cc b/crypto/x509/x509spki.cc index 7ca5a07538..45796091f8 100644 --- a/crypto/x509/x509spki.cc +++ b/crypto/x509/x509spki.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x_algor.cc b/crypto/x509/x_algor.cc index bdc77ae969..756dfaa055 100644 --- a/crypto/x509/x_algor.cc +++ b/crypto/x509/x_algor.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2000. - */ -/* ==================================================================== - * Copyright (c) 2000 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x_all.cc b/crypto/x509/x_all.cc index 519ddcb614..a38fd1c3ca 100644 --- a/crypto/x509/x_all.cc +++ b/crypto/x509/x_all.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x_attrib.cc b/crypto/x509/x_attrib.cc index 14428b38b1..0323d5d5f9 100644 --- a/crypto/x509/x_attrib.cc +++ b/crypto/x509/x_attrib.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x_crl.cc b/crypto/x509/x_crl.cc index 2fb9def2a0..9c61043474 100644 --- a/crypto/x509/x_crl.cc +++ b/crypto/x509/x_crl.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x_exten.cc b/crypto/x509/x_exten.cc index e181d982de..3683102b7b 100644 --- a/crypto/x509/x_exten.cc +++ b/crypto/x509/x_exten.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x_name.cc b/crypto/x509/x_name.cc index 1409bfe710..fc0736afb7 100644 --- a/crypto/x509/x_name.cc +++ b/crypto/x509/x_name.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x_pubkey.cc b/crypto/x509/x_pubkey.cc index 529030ecba..8c3180e5e5 100644 --- a/crypto/x509/x_pubkey.cc +++ b/crypto/x509/x_pubkey.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x_req.cc b/crypto/x509/x_req.cc index 59cfbab74d..253f95174b 100644 --- a/crypto/x509/x_req.cc +++ b/crypto/x509/x_req.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x_sig.cc b/crypto/x509/x_sig.cc index adf224df44..f5a59d7b92 100644 --- a/crypto/x509/x_sig.cc +++ b/crypto/x509/x_sig.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x_spki.cc b/crypto/x509/x_spki.cc index b991711c94..b1bac06547 100644 --- a/crypto/x509/x_spki.cc +++ b/crypto/x509/x_spki.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ // This module was send to me my Pat Richards who wrote it. // It is under my Copyright with his permission. diff --git a/crypto/x509/x_val.cc b/crypto/x509/x_val.cc index cc02e92fb3..717e2869c0 100644 --- a/crypto/x509/x_val.cc +++ b/crypto/x509/x_val.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/crypto/x509/x_x509.cc b/crypto/x509/x_x509.cc index c6d14f5026..5b80e84ad1 100644 --- a/crypto/x509/x_x509.cc +++ b/crypto/x509/x_x509.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/crypto/x509/x_x509a.cc b/crypto/x509/x_x509a.cc index af7d52fefd..91247730e6 100644 --- a/crypto/x509/x_x509a.cc +++ b/crypto/x509/x_x509a.cc @@ -1,58 +1,11 @@ /* - * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/decrepit/bio/base64_bio.cc b/decrepit/bio/base64_bio.cc index 239dcc7f4d..82b024950c 100644 --- a/decrepit/bio/base64_bio.cc +++ b/decrepit/bio/base64_bio.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/decrepit/blowfish/blowfish.cc b/decrepit/blowfish/blowfish.cc index 11e5b5a1a5..09d198c003 100644 --- a/decrepit/blowfish/blowfish.cc +++ b/decrepit/blowfish/blowfish.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/decrepit/cast/cast.cc b/decrepit/cast/cast.cc index 15f776e45b..97c032f276 100644 --- a/decrepit/cast/cast.cc +++ b/decrepit/cast/cast.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.]. */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/decrepit/cast/cast_tables.cc b/decrepit/cast/cast_tables.cc index 6808aa894b..841280ea5a 100644 --- a/decrepit/cast/cast_tables.cc +++ b/decrepit/cast/cast_tables.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/decrepit/cast/internal.h b/decrepit/cast/internal.h index cc53691b7c..c984d032b6 100644 --- a/decrepit/cast/internal.h +++ b/decrepit/cast/internal.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_CAST_INTERNAL_H #define OPENSSL_HEADER_CAST_INTERNAL_H diff --git a/decrepit/des/cfb64ede.cc b/decrepit/des/cfb64ede.cc index 6c51040e11..de5a5a4b0b 100644 --- a/decrepit/des/cfb64ede.cc +++ b/decrepit/des/cfb64ede.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/decrepit/dh/dh_decrepit.cc b/decrepit/dh/dh_decrepit.cc index c24c5af5dd..961b0db16c 100644 --- a/decrepit/dh/dh_decrepit.cc +++ b/decrepit/dh/dh_decrepit.cc @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/decrepit/dsa/dsa_decrepit.cc b/decrepit/dsa/dsa_decrepit.cc index 0ca75a96a8..cbce5bd417 100644 --- a/decrepit/dsa/dsa_decrepit.cc +++ b/decrepit/dsa/dsa_decrepit.cc @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include #include diff --git a/decrepit/macros.h b/decrepit/macros.h index 4d1b620f25..63c7ce5814 100644 --- a/decrepit/macros.h +++ b/decrepit/macros.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_DECREPIT_MACROS_H #define OPENSSL_HEADER_DECREPIT_MACROS_H diff --git a/decrepit/rc4/rc4_decrepit.cc b/decrepit/rc4/rc4_decrepit.cc index 140e15d612..a6631b650c 100644 --- a/decrepit/rc4/rc4_decrepit.cc +++ b/decrepit/rc4/rc4_decrepit.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/decrepit/ripemd/ripemd.cc b/decrepit/ripemd/ripemd.cc index 91f488dc2a..6a068fdcbc 100644 --- a/decrepit/ripemd/ripemd.cc +++ b/decrepit/ripemd/ripemd.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/decrepit/rsa/rsa_decrepit.cc b/decrepit/rsa/rsa_decrepit.cc index 2c06fe34e6..1ddc499c3d 100644 --- a/decrepit/rsa/rsa_decrepit.cc +++ b/decrepit/rsa/rsa_decrepit.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/decrepit/ssl/ssl_decrepit.cc b/decrepit/ssl/ssl_decrepit.cc index c6df9a11ed..3f839c8f79 100644 --- a/decrepit/ssl/ssl_decrepit.cc +++ b/decrepit/ssl/ssl_decrepit.cc @@ -1,111 +1,10 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #include diff --git a/decrepit/xts/xts.cc b/decrepit/xts/xts.cc index ce83829474..79b11213f9 100644 --- a/decrepit/xts/xts.cc +++ b/decrepit/xts/xts.cc @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2011 The OpenSSL Project. All rights reserved. +/* + * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/include/openssl/aes.h b/include/openssl/aes.h index 496ec90d10..df6550d0a2 100644 --- a/include/openssl/aes.h +++ b/include/openssl/aes.h @@ -1,50 +1,11 @@ -/* ==================================================================== - * Copyright (c) 2002-2006 The OpenSSL Project. All rights reserved. +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_AES_H #define OPENSSL_HEADER_AES_H diff --git a/include/openssl/arm_arch.h b/include/openssl/arm_arch.h index f63613008a..da3287edf8 100644 --- a/include/openssl/arm_arch.h +++ b/include/openssl/arm_arch.h @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ +/* + * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_ARM_ARCH_H #define OPENSSL_HEADER_ARM_ARCH_H diff --git a/include/openssl/asn1.h b/include/openssl/asn1.h index bbc7d068c5..0abef05e56 100644 --- a/include/openssl/asn1.h +++ b/include/openssl/asn1.h @@ -1,58 +1,10 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #ifndef OPENSSL_HEADER_ASN1_H diff --git a/include/openssl/asn1t.h b/include/openssl/asn1t.h index 73d975a410..8cfaeb8dfd 100644 --- a/include/openssl/asn1t.h +++ b/include/openssl/asn1t.h @@ -1,59 +1,12 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 2000. - */ -/* ==================================================================== - * Copyright (c) 2000-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + #ifndef OPENSSL_HEADER_ASN1T_H #define OPENSSL_HEADER_ASN1T_H diff --git a/include/openssl/base.h b/include/openssl/base.h index ecd878ab02..674f87910e 100644 --- a/include/openssl/base.h +++ b/include/openssl/base.h @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. +/* + * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_BASE_H #define OPENSSL_HEADER_BASE_H diff --git a/include/openssl/base64.h b/include/openssl/base64.h index 369ba9c3d0..a3062eb096 100644 --- a/include/openssl/base64.h +++ b/include/openssl/base64.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_BASE64_H #define OPENSSL_HEADER_BASE64_H diff --git a/include/openssl/bio.h b/include/openssl/bio.h index e061a0f738..5ee89a61d4 100644 --- a/include/openssl/bio.h +++ b/include/openssl/bio.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_BIO_H #define OPENSSL_HEADER_BIO_H diff --git a/include/openssl/blowfish.h b/include/openssl/blowfish.h index 293b1755bf..3a5907fcb7 100644 --- a/include/openssl/blowfish.h +++ b/include/openssl/blowfish.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_BLOWFISH_H #define OPENSSL_HEADER_BLOWFISH_H diff --git a/include/openssl/bn.h b/include/openssl/bn.h index 2b0963d091..bf9aadab07 100644 --- a/include/openssl/bn.h +++ b/include/openssl/bn.h @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/include/openssl/buf.h b/include/openssl/buf.h index a57f000a18..c7959543f6 100644 --- a/include/openssl/buf.h +++ b/include/openssl/buf.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_BUFFER_H #define OPENSSL_HEADER_BUFFER_H diff --git a/include/openssl/cast.h b/include/openssl/cast.h index 1a0f82dde2..527b333341 100644 --- a/include/openssl/cast.h +++ b/include/openssl/cast.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_CAST_H #define OPENSSL_HEADER_CAST_H diff --git a/include/openssl/cipher.h b/include/openssl/cipher.h index 18c1e708a4..ad0f139192 100644 --- a/include/openssl/cipher.h +++ b/include/openssl/cipher.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_CIPHER_H #define OPENSSL_HEADER_CIPHER_H diff --git a/include/openssl/conf.h b/include/openssl/conf.h index 1e613261b5..d77308ea33 100644 --- a/include/openssl/conf.h +++ b/include/openssl/conf.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_CONF_H #define OPENSSL_HEADER_CONF_H diff --git a/include/openssl/des.h b/include/openssl/des.h index 2a73a418ae..199a775bee 100644 --- a/include/openssl/des.h +++ b/include/openssl/des.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_DES_H #define OPENSSL_HEADER_DES_H diff --git a/include/openssl/dh.h b/include/openssl/dh.h index 6e6ddb8c92..bd4df093d1 100644 --- a/include/openssl/dh.h +++ b/include/openssl/dh.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_DH_H #define OPENSSL_HEADER_DH_H diff --git a/include/openssl/digest.h b/include/openssl/digest.h index c3130dc9ba..19d5177859 100644 --- a/include/openssl/digest.h +++ b/include/openssl/digest.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_DIGEST_H #define OPENSSL_HEADER_DIGEST_H diff --git a/include/openssl/dsa.h b/include/openssl/dsa.h index 6ebe4aad29..c5baf86a9d 100644 --- a/include/openssl/dsa.h +++ b/include/openssl/dsa.h @@ -1,61 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - * - * The DSS routines are based on patches supplied by - * Steven Schoch . */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_DSA_H #define OPENSSL_HEADER_DSA_H diff --git a/include/openssl/ec.h b/include/openssl/ec.h index 085222c9e1..cbfcd2788a 100644 --- a/include/openssl/ec.h +++ b/include/openssl/ec.h @@ -1,57 +1,12 @@ -/* Originally written by Bodo Moeller for the OpenSSL project. - * ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/include/openssl/ec_key.h b/include/openssl/ec_key.h index e7c7ef97d2..16fc7c9357 100644 --- a/include/openssl/ec_key.h +++ b/include/openssl/ec_key.h @@ -1,57 +1,12 @@ -/* Originally written by Bodo Moeller for the OpenSSL project. - * ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/include/openssl/ecdh.h b/include/openssl/ecdh.h index 0130ccc24f..bd8a21fcc7 100644 --- a/include/openssl/ecdh.h +++ b/include/openssl/ecdh.h @@ -1,3 +1,12 @@ +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * @@ -12,57 +21,6 @@ * Sun Microsystems Laboratories. * */ -/* ==================================================================== - * Copyright (c) 2000-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #ifndef OPENSSL_HEADER_ECDH_H #define OPENSSL_HEADER_ECDH_H diff --git a/include/openssl/ecdsa.h b/include/openssl/ecdsa.h index 56be1547f5..303e048699 100644 --- a/include/openssl/ecdsa.h +++ b/include/openssl/ecdsa.h @@ -1,54 +1,11 @@ -/* ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_ECDSA_H #define OPENSSL_HEADER_ECDSA_H diff --git a/include/openssl/err.h b/include/openssl/err.h index ab181f93d5..22e9616825 100644 --- a/include/openssl/err.h +++ b/include/openssl/err.h @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #ifndef OPENSSL_HEADER_ERR_H #define OPENSSL_HEADER_ERR_H diff --git a/include/openssl/evp.h b/include/openssl/evp.h index 2df8513ffc..28f46fe748 100644 --- a/include/openssl/evp.h +++ b/include/openssl/evp.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_EVP_H #define OPENSSL_HEADER_EVP_H diff --git a/include/openssl/evp_errors.h b/include/openssl/evp_errors.h index 163f17e2ba..3e9580db08 100644 --- a/include/openssl/evp_errors.h +++ b/include/openssl/evp_errors.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_EVP_ERRORS_H #define OPENSSL_HEADER_EVP_ERRORS_H diff --git a/include/openssl/ex_data.h b/include/openssl/ex_data.h index 7fb46b0c44..476be7abe7 100644 --- a/include/openssl/ex_data.h +++ b/include/openssl/ex_data.h @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #ifndef OPENSSL_HEADER_EX_DATA_H #define OPENSSL_HEADER_EX_DATA_H diff --git a/include/openssl/hmac.h b/include/openssl/hmac.h index 7a4737f2ed..85192d2b3c 100644 --- a/include/openssl/hmac.h +++ b/include/openssl/hmac.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_HMAC_H #define OPENSSL_HEADER_HMAC_H diff --git a/include/openssl/lhash.h b/include/openssl/lhash.h index 129754161f..018b2b2866 100644 --- a/include/openssl/lhash.h +++ b/include/openssl/lhash.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_LHASH_H #define OPENSSL_HEADER_LHASH_H diff --git a/include/openssl/md4.h b/include/openssl/md4.h index b213bc6270..c88d68bcec 100644 --- a/include/openssl/md4.h +++ b/include/openssl/md4.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_MD4_H #define OPENSSL_HEADER_MD4_H diff --git a/include/openssl/md5.h b/include/openssl/md5.h index 5486512980..86ed87e7b1 100644 --- a/include/openssl/md5.h +++ b/include/openssl/md5.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_MD5_H #define OPENSSL_HEADER_MD5_H diff --git a/include/openssl/mem.h b/include/openssl/mem.h index c60ea17881..f094a5e534 100644 --- a/include/openssl/mem.h +++ b/include/openssl/mem.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_MEM_H #define OPENSSL_HEADER_MEM_H diff --git a/include/openssl/nid.h b/include/openssl/nid.h index 02d78c6483..2111a942a3 100644 --- a/include/openssl/nid.h +++ b/include/openssl/nid.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ /* This file is generated by crypto/obj/objects.go. */ diff --git a/include/openssl/obj.h b/include/openssl/obj.h index 940197da17..83d1c66503 100644 --- a/include/openssl/obj.h +++ b/include/openssl/obj.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_OBJ_H #define OPENSSL_HEADER_OBJ_H diff --git a/include/openssl/pem.h b/include/openssl/pem.h index 49ac6dc3ed..32fef2f6a7 100644 --- a/include/openssl/pem.h +++ b/include/openssl/pem.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_PEM_H #define OPENSSL_HEADER_PEM_H diff --git a/include/openssl/pkcs8.h b/include/openssl/pkcs8.h index 1464a68465..900a7622ad 100644 --- a/include/openssl/pkcs8.h +++ b/include/openssl/pkcs8.h @@ -1,58 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. - */ -/* ==================================================================== - * Copyright (c) 1999 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ - + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_PKCS8_H #define OPENSSL_HEADER_PKCS8_H diff --git a/include/openssl/rc4.h b/include/openssl/rc4.h index acf56ae98b..f666adea5a 100644 --- a/include/openssl/rc4.h +++ b/include/openssl/rc4.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_RC4_H #define OPENSSL_HEADER_RC4_H diff --git a/include/openssl/ripemd.h b/include/openssl/ripemd.h index d859b1ff15..41d0d4e09f 100644 --- a/include/openssl/ripemd.h +++ b/include/openssl/ripemd.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_RIPEMD_H #define OPENSSL_HEADER_RIPEMD_H diff --git a/include/openssl/rsa.h b/include/openssl/rsa.h index 545b73bfee..10dd096d03 100644 --- a/include/openssl/rsa.h +++ b/include/openssl/rsa.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_RSA_H #define OPENSSL_HEADER_RSA_H diff --git a/include/openssl/sha.h b/include/openssl/sha.h index d70f33cd9d..55621dc8a2 100644 --- a/include/openssl/sha.h +++ b/include/openssl/sha.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_SHA_H #define OPENSSL_HEADER_SHA_H diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index c6db0e8a32..4a21403dc3 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * ECC cipher suite support in OpenSSL originally developed by diff --git a/include/openssl/ssl3.h b/include/openssl/ssl3.h index 4a391cbdab..0c32adc507 100644 --- a/include/openssl/ssl3.h +++ b/include/openssl/ssl3.h @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * ECC cipher suite support in OpenSSL originally developed by diff --git a/include/openssl/stack.h b/include/openssl/stack.h index 0eccb2f0cb..74f4310f59 100644 --- a/include/openssl/stack.h +++ b/include/openssl/stack.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_STACK_H #define OPENSSL_HEADER_STACK_H diff --git a/include/openssl/thread.h b/include/openssl/thread.h index 1b0de23ac3..4a8c742815 100644 --- a/include/openssl/thread.h +++ b/include/openssl/thread.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_THREAD_H #define OPENSSL_HEADER_THREAD_H diff --git a/include/openssl/tls1.h b/include/openssl/tls1.h index 60301885a2..1ff74da3c8 100644 --- a/include/openssl/tls1.h +++ b/include/openssl/tls1.h @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/include/openssl/type_check.h b/include/openssl/type_check.h index 6460ab14df..6fb2eff2d3 100644 --- a/include/openssl/type_check.h +++ b/include/openssl/type_check.h @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_TYPE_CHECK_H #define OPENSSL_HEADER_TYPE_CHECK_H diff --git a/include/openssl/x509.h b/include/openssl/x509.h index f5583d01e5..85a2947a66 100644 --- a/include/openssl/x509.h +++ b/include/openssl/x509.h @@ -1,59 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * ECDH support in OpenSSL originally developed by diff --git a/include/openssl/x509v3_errors.h b/include/openssl/x509v3_errors.h index 6806d8a2f3..e80c9b2eb8 100644 --- a/include/openssl/x509v3_errors.h +++ b/include/openssl/x509v3_errors.h @@ -1,56 +1,11 @@ -/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL project - * 1999. */ -/* ==================================================================== - * Copyright (c) 1999-2004 The OpenSSL Project. All rights reserved. +/* + * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * licensing@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #ifndef OPENSSL_HEADER_X509V3_ERRORS_H #define OPENSSL_HEADER_X509V3_ERRORS_H diff --git a/ssl/d1_both.cc b/ssl/d1_both.cc index 648bd66db7..b02a958480 100644 --- a/ssl/d1_both.cc +++ b/ssl/d1_both.cc @@ -1,115 +1,11 @@ /* - * DTLS implementation written by Nagendra Modadugu - * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. - */ -/* ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). + * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ #include diff --git a/ssl/d1_lib.cc b/ssl/d1_lib.cc index d0a38b371b..ac434d47d9 100644 --- a/ssl/d1_lib.cc +++ b/ssl/d1_lib.cc @@ -1,58 +1,11 @@ /* - * DTLS implementation written by Nagendra Modadugu - * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. - */ -/* ==================================================================== - * Copyright (c) 1999-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/ssl/d1_pkt.cc b/ssl/d1_pkt.cc index 0dbd1a7adb..82a4ee6637 100644 --- a/ssl/d1_pkt.cc +++ b/ssl/d1_pkt.cc @@ -1,113 +1,11 @@ -/* DTLS implementation written by Nagendra Modadugu - * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. */ -/* ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ #include diff --git a/ssl/d1_srtp.cc b/ssl/d1_srtp.cc index a3e0a79022..22fe8fd39d 100644 --- a/ssl/d1_srtp.cc +++ b/ssl/d1_srtp.cc @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* DTLS code by Eric Rescorla diff --git a/ssl/dtls_method.cc b/ssl/dtls_method.cc index de600bb089..14a2c8b1a2 100644 --- a/ssl/dtls_method.cc +++ b/ssl/dtls_method.cc @@ -1,58 +1,11 @@ /* - * DTLS implementation written by Nagendra Modadugu - * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. - */ -/* ==================================================================== - * Copyright (c) 1999-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@OpenSSL.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/ssl/dtls_record.cc b/ssl/dtls_record.cc index 1bfc43f6a6..55cd1f2165 100644 --- a/ssl/dtls_record.cc +++ b/ssl/dtls_record.cc @@ -1,113 +1,11 @@ -/* DTLS implementation written by Nagendra Modadugu - * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. */ -/* ==================================================================== - * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ #include diff --git a/ssl/extensions.cc b/ssl/extensions.cc index 64e020091e..c6718d5732 100644 --- a/ssl/extensions.cc +++ b/ssl/extensions.cc @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include diff --git a/ssl/handshake.cc b/ssl/handshake.cc index 366f818d43..62a4b0f98e 100644 --- a/ssl/handshake.cc +++ b/ssl/handshake.cc @@ -1,110 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * ECC cipher suite support in OpenSSL originally developed by diff --git a/ssl/handshake_client.cc b/ssl/handshake_client.cc index c963224ac8..64cf49091c 100644 --- a/ssl/handshake_client.cc +++ b/ssl/handshake_client.cc @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/ssl/handshake_server.cc b/ssl/handshake_server.cc index 843e2badfd..d3cea43d0d 100644 --- a/ssl/handshake_server.cc +++ b/ssl/handshake_server.cc @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/ssl/internal.h b/ssl/internal.h index e3bd3b67cf..abad0c7072 100644 --- a/ssl/internal.h +++ b/ssl/internal.h @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * ECC cipher suite support in OpenSSL originally developed by diff --git a/ssl/s3_both.cc b/ssl/s3_both.cc index 6d6b3570ce..6e77dd3f00 100644 --- a/ssl/s3_both.cc +++ b/ssl/s3_both.cc @@ -1,110 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * ECC cipher suite support in OpenSSL originally developed by diff --git a/ssl/s3_lib.cc b/ssl/s3_lib.cc index faa4d61642..178dd00934 100644 --- a/ssl/s3_lib.cc +++ b/ssl/s3_lib.cc @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * diff --git a/ssl/s3_pkt.cc b/ssl/s3_pkt.cc index 7db45c12e2..930a81636a 100644 --- a/ssl/s3_pkt.cc +++ b/ssl/s3_pkt.cc @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include diff --git a/ssl/ssl_asn1.cc b/ssl/ssl_asn1.cc index b13f6b546b..81ed624e33 100644 --- a/ssl/ssl_asn1.cc +++ b/ssl/ssl_asn1.cc @@ -1,59 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2005 Nokia. All rights reserved. * diff --git a/ssl/ssl_cert.cc b/ssl/ssl_cert.cc index 011d495cc1..bfcaf39f4e 100644 --- a/ssl/ssl_cert.cc +++ b/ssl/ssl_cert.cc @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * ECC cipher suite support in OpenSSL originally developed by diff --git a/ssl/ssl_cipher.cc b/ssl/ssl_cipher.cc index 220087a963..8fa4184836 100644 --- a/ssl/ssl_cipher.cc +++ b/ssl/ssl_cipher.cc @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * ECC cipher suite support in OpenSSL originally developed by diff --git a/ssl/ssl_file.cc b/ssl/ssl_file.cc index 301f8d60b8..0fb5aba355 100644 --- a/ssl/ssl_file.cc +++ b/ssl/ssl_file.cc @@ -1,111 +1,10 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ #include diff --git a/ssl/ssl_lib.cc b/ssl/ssl_lib.cc index 4ede3ad282..546ac1b8d6 100644 --- a/ssl/ssl_lib.cc +++ b/ssl/ssl_lib.cc @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * ECC cipher suite support in OpenSSL originally developed by diff --git a/ssl/ssl_privkey.cc b/ssl/ssl_privkey.cc index d1cac6e640..8458d34cd3 100644 --- a/ssl/ssl_privkey.cc +++ b/ssl/ssl_privkey.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/ssl/ssl_session.cc b/ssl/ssl_session.cc index 0a18509598..953f5989ee 100644 --- a/ssl/ssl_session.cc +++ b/ssl/ssl_session.cc @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2005 Nokia. All rights reserved. * diff --git a/ssl/ssl_stat.cc b/ssl/ssl_stat.cc index e5d1d2862a..7433a7b7b7 100644 --- a/ssl/ssl_stat.cc +++ b/ssl/ssl_stat.cc @@ -1,59 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2005 Nokia. All rights reserved. * diff --git a/ssl/ssl_transcript.cc b/ssl/ssl_transcript.cc index da6a45e443..75b335629d 100644 --- a/ssl/ssl_transcript.cc +++ b/ssl/ssl_transcript.cc @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2005 Nokia. All rights reserved. * diff --git a/ssl/ssl_x509.cc b/ssl/ssl_x509.cc index ed4bcdb253..91b68aa73d 100644 --- a/ssl/ssl_x509.cc +++ b/ssl/ssl_x509.cc @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. * ECC cipher suite support in OpenSSL originally developed by diff --git a/ssl/t1_enc.cc b/ssl/t1_enc.cc index db19a48641..54557e0585 100644 --- a/ssl/t1_enc.cc +++ b/ssl/t1_enc.cc @@ -1,112 +1,12 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ -/* ==================================================================== - * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ + /* ==================================================================== * Copyright 2005 Nokia. All rights reserved. * diff --git a/ssl/tls_method.cc b/ssl/tls_method.cc index 33c3a7a081..27310c7857 100644 --- a/ssl/tls_method.cc +++ b/ssl/tls_method.cc @@ -1,58 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ #include diff --git a/ssl/tls_record.cc b/ssl/tls_record.cc index 7a02883826..bccaaf3678 100644 --- a/ssl/tls_record.cc +++ b/ssl/tls_record.cc @@ -1,110 +1,11 @@ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). */ #include From 6a12f1734a30385faacada4283bcdfb0e72d4794 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sun, 29 Dec 2024 18:40:59 -0500 Subject: [PATCH 09/64] Fix objects.go generator to reflect new header This allows the script to recreate the new header. Bug: 364634028 Change-Id: Ie399e95f284b0170e8073e60f71806bf16cf48e2 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74711 Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- crypto/obj/objects.go | 122 +++++------------------------------------- 1 file changed, 14 insertions(+), 108 deletions(-) diff --git a/crypto/obj/objects.go b/crypto/obj/objects.go index a06516bfe9..e6f163b3dc 100644 --- a/crypto/obj/objects.go +++ b/crypto/obj/objects.go @@ -388,61 +388,14 @@ func clangFormat(input string) (string, error) { func writeHeader(path string, objs *objects) error { var b bytes.Buffer - fmt.Fprintf(&b, `/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. + fmt.Fprintf(&b, `/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG `+"``"+`AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ /* This file is generated by crypto/obj/objects.go. */ @@ -528,61 +481,14 @@ func sortNIDs(nids []int, objs *objects, cmp func(a, b object) bool) { func writeData(path string, objs *objects) error { var b bytes.Buffer - fmt.Fprintf(&b, `/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG `+"``"+`AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + fmt.Fprintf(&b, `/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] */ + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ /* This file is generated by crypto/obj/objects.go. */ From e09c171f24d555f17bca2c87d2bf63b5565eed4c Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sun, 29 Dec 2024 18:55:38 -0500 Subject: [PATCH 10/64] Import upstream changes to copyright lines This imports the following changes from OpenSSL: * https://github.com/openssl/openssl/commit/aa8f3d76fcf1502586435631be16faa1bef3cdf7 * https://github.com/openssl/openssl/commit/5aba2b6e88d1d7fc921d2161af27a0835f966ea9 * https://github.com/openssl/openssl/commit/c80149d9f09b3a5a5b1621fa705e900d455334d4 See the following links for some related discussion in OpenSSL's repository: * https://github.com/openssl/openssl/pull/3663 * https://github.com/openssl/openssl/pull/3684 * https://github.com/openssl/openssl/pull/3585#issuecomment-309793470 * https://github.com/openssl/openssl/pull/3685 The copyright_summary script may be used to compare this CL. Note there is one change to ecdsa_test.cc to align with OpenSSL. See go/openssl-copyright-consolidation-comparison (internal-only). Bug: 364634028 Change-Id: I987c4e145d2ccd0c32bbf9e7bb2cc69e89019d35 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74712 Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- crypto/ecdh_extra/ecdh_extra.cc | 16 +-------- crypto/fipsmodule/bn/bn_test.cc | 14 +------- crypto/fipsmodule/bn/internal.h | 14 +------- crypto/fipsmodule/ec/ec.cc.inc | 14 +------- crypto/fipsmodule/ec/ec_key.cc.inc | 14 +------- crypto/fipsmodule/ec/ec_montgomery.cc.inc | 14 +------- crypto/fipsmodule/ec/internal.h | 14 +------- crypto/fipsmodule/ec/oct.cc.inc | 14 +------- crypto/fipsmodule/ec/simple.cc.inc | 14 +------- crypto/fipsmodule/ec/wnaf.cc.inc | 14 +------- crypto/fipsmodule/ecdh/ecdh.cc.inc | 16 +-------- crypto/fipsmodule/ecdsa/ecdsa_test.cc | 1 + include/openssl/bn.h | 14 +------- include/openssl/ec.h | 14 +------- include/openssl/ec_key.h | 14 +------- include/openssl/ecdh.h | 16 +-------- include/openssl/ssl.h | 34 ++---------------- include/openssl/ssl3.h | 7 +--- include/openssl/tls1.h | 42 ++--------------------- include/openssl/x509.h | 7 +--- ssl/handshake.cc | 6 +--- ssl/handshake_client.cc | 42 ++--------------------- ssl/handshake_server.cc | 41 ++-------------------- ssl/internal.h | 34 ++---------------- ssl/s3_both.cc | 6 +--- ssl/s3_lib.cc | 41 ++-------------------- ssl/ssl_asn1.cc | 27 +-------------- ssl/ssl_cert.cc | 6 +--- ssl/ssl_cipher.cc | 33 ++---------------- ssl/ssl_lib.cc | 33 ++---------------- ssl/ssl_session.cc | 27 +-------------- ssl/ssl_stat.cc | 28 +-------------- ssl/ssl_transcript.cc | 27 +-------------- ssl/ssl_x509.cc | 33 ++---------------- ssl/t1_enc.cc | 27 +-------------- 35 files changed, 44 insertions(+), 674 deletions(-) diff --git a/crypto/ecdh_extra/ecdh_extra.cc b/crypto/ecdh_extra/ecdh_extra.cc index 28180afbf3..0eb1d3d942 100644 --- a/crypto/ecdh_extra/ecdh_extra.cc +++ b/crypto/ecdh_extra/ecdh_extra.cc @@ -1,5 +1,6 @@ /* * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,21 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * The Elliptic Curve Public-Key Crypto Library (ECC Code) included - * herein is developed by SUN MICROSYSTEMS, INC., and is contributed - * to the OpenSSL project. - * - * The ECC Code is licensed pursuant to the OpenSSL open source - * license provided below. - * - * The ECDH software is originally written by Douglas Stebila of - * Sun Microsystems Laboratories. - * - */ - #include #include diff --git a/crypto/fipsmodule/bn/bn_test.cc b/crypto/fipsmodule/bn/bn_test.cc index 5b0e61cd7a..9539ff463f 100644 --- a/crypto/fipsmodule/bn/bn_test.cc +++ b/crypto/fipsmodule/bn/bn_test.cc @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the Eric Young open source - * license provided above. - * - * The binary polynomial arithmetic software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #include #include #include diff --git a/crypto/fipsmodule/bn/internal.h b/crypto/fipsmodule/bn/internal.h index ac35ed8458..3f2e364424 100644 --- a/crypto/fipsmodule/bn/internal.h +++ b/crypto/fipsmodule/bn/internal.h @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the Eric Young open source - * license provided above. - * - * The binary polynomial arithmetic software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #ifndef OPENSSL_HEADER_BN_INTERNAL_H #define OPENSSL_HEADER_BN_INTERNAL_H diff --git a/crypto/fipsmodule/ec/ec.cc.inc b/crypto/fipsmodule/ec/ec.cc.inc index fb02c4680a..8261052710 100644 --- a/crypto/fipsmodule/ec/ec.cc.inc +++ b/crypto/fipsmodule/ec/ec.cc.inc @@ -1,5 +1,6 @@ /* * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * The elliptic curve binary polynomial software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #include #include diff --git a/crypto/fipsmodule/ec/ec_key.cc.inc b/crypto/fipsmodule/ec/ec_key.cc.inc index b76d0ad0ed..6de67e64d7 100644 --- a/crypto/fipsmodule/ec/ec_key.cc.inc +++ b/crypto/fipsmodule/ec/ec_key.cc.inc @@ -1,5 +1,6 @@ /* * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * The elliptic curve binary polynomial software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #include #include diff --git a/crypto/fipsmodule/ec/ec_montgomery.cc.inc b/crypto/fipsmodule/ec/ec_montgomery.cc.inc index 8ace78c8f7..bb8eeddd64 100644 --- a/crypto/fipsmodule/ec/ec_montgomery.cc.inc +++ b/crypto/fipsmodule/ec/ec_montgomery.cc.inc @@ -1,5 +1,6 @@ /* * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * The elliptic curve binary polynomial software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #include #include diff --git a/crypto/fipsmodule/ec/internal.h b/crypto/fipsmodule/ec/internal.h index c453b7c4da..5c37605506 100644 --- a/crypto/fipsmodule/ec/internal.h +++ b/crypto/fipsmodule/ec/internal.h @@ -1,5 +1,6 @@ /* * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * The elliptic curve binary polynomial software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #ifndef OPENSSL_HEADER_EC_INTERNAL_H #define OPENSSL_HEADER_EC_INTERNAL_H diff --git a/crypto/fipsmodule/ec/oct.cc.inc b/crypto/fipsmodule/ec/oct.cc.inc index 4aacd17ce8..b73cee4235 100644 --- a/crypto/fipsmodule/ec/oct.cc.inc +++ b/crypto/fipsmodule/ec/oct.cc.inc @@ -1,5 +1,6 @@ /* * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * The elliptic curve binary polynomial software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #include #include diff --git a/crypto/fipsmodule/ec/simple.cc.inc b/crypto/fipsmodule/ec/simple.cc.inc index 100ba0fc53..fc7caf908c 100644 --- a/crypto/fipsmodule/ec/simple.cc.inc +++ b/crypto/fipsmodule/ec/simple.cc.inc @@ -1,5 +1,6 @@ /* * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * The elliptic curve binary polynomial software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #include #include diff --git a/crypto/fipsmodule/ec/wnaf.cc.inc b/crypto/fipsmodule/ec/wnaf.cc.inc index f17d9fbb10..b84cee2099 100644 --- a/crypto/fipsmodule/ec/wnaf.cc.inc +++ b/crypto/fipsmodule/ec/wnaf.cc.inc @@ -1,5 +1,6 @@ /* * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * The elliptic curve binary polynomial software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #include #include diff --git a/crypto/fipsmodule/ecdh/ecdh.cc.inc b/crypto/fipsmodule/ecdh/ecdh.cc.inc index 19c6c49233..af61d7efab 100644 --- a/crypto/fipsmodule/ecdh/ecdh.cc.inc +++ b/crypto/fipsmodule/ecdh/ecdh.cc.inc @@ -1,5 +1,6 @@ /* * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,21 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * The Elliptic Curve Public-Key Crypto Library (ECC Code) included - * herein is developed by SUN MICROSYSTEMS, INC., and is contributed - * to the OpenSSL project. - * - * The ECC Code is licensed pursuant to the OpenSSL open source - * license provided below. - * - * The ECDH software is originally written by Douglas Stebila of - * Sun Microsystems Laboratories. - * - */ - #include #include diff --git a/crypto/fipsmodule/ecdsa/ecdsa_test.cc b/crypto/fipsmodule/ecdsa/ecdsa_test.cc index 92e92f2fa3..f20f27219d 100644 --- a/crypto/fipsmodule/ecdsa/ecdsa_test.cc +++ b/crypto/fipsmodule/ecdsa/ecdsa_test.cc @@ -1,5 +1,6 @@ /* * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/include/openssl/bn.h b/include/openssl/bn.h index bf9aadab07..564d0b482b 100644 --- a/include/openssl/bn.h +++ b/include/openssl/bn.h @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the Eric Young open source - * license provided above. - * - * The binary polynomial arithmetic software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #ifndef OPENSSL_HEADER_BN_H #define OPENSSL_HEADER_BN_H diff --git a/include/openssl/ec.h b/include/openssl/ec.h index cbfcd2788a..ef1cd0a3c9 100644 --- a/include/openssl/ec.h +++ b/include/openssl/ec.h @@ -1,5 +1,6 @@ /* * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * The elliptic curve binary polynomial software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #ifndef OPENSSL_HEADER_EC_H #define OPENSSL_HEADER_EC_H diff --git a/include/openssl/ec_key.h b/include/openssl/ec_key.h index 16fc7c9357..bdb60a3650 100644 --- a/include/openssl/ec_key.h +++ b/include/openssl/ec_key.h @@ -1,5 +1,6 @@ /* * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,19 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * The elliptic curve binary polynomial software is originally written by - * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems - * Laboratories. */ - #ifndef OPENSSL_HEADER_EC_KEY_H #define OPENSSL_HEADER_EC_KEY_H diff --git a/include/openssl/ecdh.h b/include/openssl/ecdh.h index bd8a21fcc7..6c6a63682c 100644 --- a/include/openssl/ecdh.h +++ b/include/openssl/ecdh.h @@ -1,5 +1,6 @@ /* * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,21 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * The Elliptic Curve Public-Key Crypto Library (ECC Code) included - * herein is developed by SUN MICROSYSTEMS, INC., and is contributed - * to the OpenSSL project. - * - * The ECC Code is licensed pursuant to the OpenSSL open source - * license provided below. - * - * The ECDH software is originally written by Douglas Stebila of - * Sun Microsystems Laboratories. - * - */ - #ifndef OPENSSL_HEADER_ECDH_H #define OPENSSL_HEADER_ECDH_H diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index 4a21403dc3..d1f1006bb2 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -1,5 +1,7 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,38 +9,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * ECC cipher suite support in OpenSSL originally developed by - * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. - */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. - */ - #ifndef OPENSSL_HEADER_SSL_H #define OPENSSL_HEADER_SSL_H diff --git a/include/openssl/ssl3.h b/include/openssl/ssl3.h index 0c32adc507..353c993380 100644 --- a/include/openssl/ssl3.h +++ b/include/openssl/ssl3.h @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,12 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * ECC cipher suite support in OpenSSL originally developed by - * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. - */ - #ifndef OPENSSL_HEADER_SSL3_H #define OPENSSL_HEADER_SSL3_H diff --git a/include/openssl/tls1.h b/include/openssl/tls1.h index 1ff74da3c8..99d48c526b 100644 --- a/include/openssl/tls1.h +++ b/include/openssl/tls1.h @@ -1,5 +1,7 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,46 +9,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * ECC cipher suite support in OpenSSL originally written by - * Vipul Gupta and Sumit Gupta of Sun Microsystems Laboratories. - * - */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. - */ - #ifndef OPENSSL_HEADER_TLS1_H #define OPENSSL_HEADER_TLS1_H diff --git a/include/openssl/x509.h b/include/openssl/x509.h index 85a2947a66..e14d0225fe 100644 --- a/include/openssl/x509.h +++ b/include/openssl/x509.h @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,12 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * ECDH support in OpenSSL originally developed by - * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. - */ - #ifndef OPENSSL_HEADER_X509_H #define OPENSSL_HEADER_X509_H diff --git a/ssl/handshake.cc b/ssl/handshake.cc index 62a4b0f98e..e10950e153 100644 --- a/ssl/handshake.cc +++ b/ssl/handshake.cc @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,11 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * ECC cipher suite support in OpenSSL originally developed by - * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. */ - #include #include diff --git a/ssl/handshake_client.cc b/ssl/handshake_client.cc index 64cf49091c..45f5901f45 100644 --- a/ssl/handshake_client.cc +++ b/ssl/handshake_client.cc @@ -1,5 +1,7 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,46 +9,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * ECC cipher suite support in OpenSSL originally written by - * Vipul Gupta and Sumit Gupta of Sun Microsystems Laboratories. - * - */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. - */ - #include #include diff --git a/ssl/handshake_server.cc b/ssl/handshake_server.cc index d3cea43d0d..f0adbbc822 100644 --- a/ssl/handshake_server.cc +++ b/ssl/handshake_server.cc @@ -1,5 +1,7 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,45 +9,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * ECC cipher suite support in OpenSSL originally written by - * Vipul Gupta and Sumit Gupta of Sun Microsystems Laboratories. - * - */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. */ - #include #include diff --git a/ssl/internal.h b/ssl/internal.h index abad0c7072..92e4388f78 100644 --- a/ssl/internal.h +++ b/ssl/internal.h @@ -1,5 +1,7 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,38 +9,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * ECC cipher suite support in OpenSSL originally developed by - * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. - */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. - */ - #ifndef OPENSSL_HEADER_SSL_INTERNAL_H #define OPENSSL_HEADER_SSL_INTERNAL_H diff --git a/ssl/s3_both.cc b/ssl/s3_both.cc index 6e77dd3f00..7909c01816 100644 --- a/ssl/s3_both.cc +++ b/ssl/s3_both.cc @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,11 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * ECC cipher suite support in OpenSSL originally developed by - * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. */ - #include #include diff --git a/ssl/s3_lib.cc b/ssl/s3_lib.cc index 178dd00934..41e9c73b1a 100644 --- a/ssl/s3_lib.cc +++ b/ssl/s3_lib.cc @@ -1,5 +1,7 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,45 +9,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * - * Portions of the attached software ("Contribution") are developed by - * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. - * - * The Contribution is licensed pursuant to the OpenSSL open source - * license provided above. - * - * ECC cipher suite support in OpenSSL originally written by - * Vipul Gupta and Sumit Gupta of Sun Microsystems Laboratories. - * - */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. */ - #include #include diff --git a/ssl/ssl_asn1.cc b/ssl/ssl_asn1.cc index 81ed624e33..48c371cad4 100644 --- a/ssl/ssl_asn1.cc +++ b/ssl/ssl_asn1.cc @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,32 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. */ - #include #include diff --git a/ssl/ssl_cert.cc b/ssl/ssl_cert.cc index bfcaf39f4e..9c1ca8ffec 100644 --- a/ssl/ssl_cert.cc +++ b/ssl/ssl_cert.cc @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,11 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * ECC cipher suite support in OpenSSL originally developed by - * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. */ - #include #include diff --git a/ssl/ssl_cipher.cc b/ssl/ssl_cipher.cc index 8fa4184836..5007dfe557 100644 --- a/ssl/ssl_cipher.cc +++ b/ssl/ssl_cipher.cc @@ -1,5 +1,7 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,37 +9,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * ECC cipher suite support in OpenSSL originally developed by - * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. - */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. */ - #include #include diff --git a/ssl/ssl_lib.cc b/ssl/ssl_lib.cc index 546ac1b8d6..56fafde23b 100644 --- a/ssl/ssl_lib.cc +++ b/ssl/ssl_lib.cc @@ -1,5 +1,7 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,37 +9,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * ECC cipher suite support in OpenSSL originally developed by - * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. - */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. */ - #include #include diff --git a/ssl/ssl_session.cc b/ssl/ssl_session.cc index 953f5989ee..02d50cc3c0 100644 --- a/ssl/ssl_session.cc +++ b/ssl/ssl_session.cc @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,32 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. */ - #include #include diff --git a/ssl/ssl_stat.cc b/ssl/ssl_stat.cc index 7433a7b7b7..281c287ac2 100644 --- a/ssl/ssl_stat.cc +++ b/ssl/ssl_stat.cc @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,33 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. - */ - #include #include diff --git a/ssl/ssl_transcript.cc b/ssl/ssl_transcript.cc index 75b335629d..73675548b8 100644 --- a/ssl/ssl_transcript.cc +++ b/ssl/ssl_transcript.cc @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,32 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. */ - #include #include diff --git a/ssl/ssl_x509.cc b/ssl/ssl_x509.cc index 91b68aa73d..9fb51eb1b6 100644 --- a/ssl/ssl_x509.cc +++ b/ssl/ssl_x509.cc @@ -1,5 +1,7 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,37 +9,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. - * ECC cipher suite support in OpenSSL originally developed by - * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. - */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. */ - #include #include diff --git a/ssl/t1_enc.cc b/ssl/t1_enc.cc index 54557e0585..ef4550dee7 100644 --- a/ssl/t1_enc.cc +++ b/ssl/t1_enc.cc @@ -1,5 +1,6 @@ /* * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,32 +8,6 @@ * https://www.openssl.org/source/license.html */ -/* ==================================================================== - * Copyright 2005 Nokia. All rights reserved. - * - * The portions of the attached software ("Contribution") is developed by - * Nokia Corporation and is licensed pursuant to the OpenSSL open source - * license. - * - * The Contribution, originally written by Mika Kousa and Pasi Eronen of - * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites - * support (see RFC 4279) to OpenSSL. - * - * No patent licenses or other rights except those expressly stated in - * the OpenSSL open source license shall be deemed granted or received - * expressly, by implication, estoppel, or otherwise. - * - * No assurances are provided by Nokia that the Contribution does not - * infringe the patent or other intellectual property rights of any third - * party or that the license provides you with all the necessary rights - * to make use of the Contribution. - * - * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN - * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA - * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY - * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR - * OTHERWISE. */ - #include #include From 281352b8c65da0831269ab4c6614d3b431a6e93d Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sun, 29 Dec 2024 19:02:58 -0500 Subject: [PATCH 11/64] Import "Cleanup some copyright stuff" from upstream OpenSSL This imports https://github.com/openssl/openssl/commit/624265c60e07f8e5f251d0f5b79e34cf0221af73 from upstream OpenSSL. The only part that applies to BoringSSL is x_spki.c. Bug: 364634028 Change-Id: I709ed9765ee78ed35983384b0a472071a3cee4ea Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74713 Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- crypto/x509/x_spki.cc | 3 --- 1 file changed, 3 deletions(-) diff --git a/crypto/x509/x_spki.cc b/crypto/x509/x_spki.cc index b1bac06547..8c7fcb01aa 100644 --- a/crypto/x509/x_spki.cc +++ b/crypto/x509/x_spki.cc @@ -7,9 +7,6 @@ * https://www.openssl.org/source/license.html */ -// This module was send to me my Pat Richards who wrote it. -// It is under my Copyright with his permission. - #include #include From 8e255013aed142f6fe18bbc884d3962566ef08f7 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Fri, 3 Jan 2025 19:06:59 -0500 Subject: [PATCH 12/64] Clean up "copyright consolidation" tools Now that the change has been applied, we no longer need these. Bug: 364634028 Change-Id: I2979b62489d640807c6b2568227c015a05af4d4b Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74767 Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- util/copyright.pl | 111 ------------ util/copyright_summary.go | 62 ------- util/mapping.txt | 354 -------------------------------------- 3 files changed, 527 deletions(-) delete mode 100644 util/copyright.pl delete mode 100644 util/mapping.txt diff --git a/util/copyright.pl b/util/copyright.pl deleted file mode 100644 index 74d1779b82..0000000000 --- a/util/copyright.pl +++ /dev/null @@ -1,111 +0,0 @@ -#! /usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. -# -# Licensed under the OpenSSL license (the "License"). You may not use -# this file except in compliance with the License. You can obtain a copy -# in the file LICENSE in the source distribution or at -# https://www.openssl.org/source/license.html - -# Add new copyright and delete old ones. Used as -# find . -name '*.[ch]' -type f -exec perl -i.bak util/copyright.pl '{}' ';' -# This does not do everything that's needed for the consolidation. - -use strict; -use warnings; - -my %mapping; -open(my $mapping_file, "<", "util/mapping.txt") or die; -while (my $line = <$mapping_file>) { - chomp($line); - $line =~ s/#.*//; - next if $line =~ /^$/; - - my ($path, $mapped) = split(/:/, $line, 2); - $mapped =~ s/^ +//; - $mapped =~ s/ +$//; - my @mapped = split(/ +/, $mapped); - $mapping{$path} = \@mapped; -} -close($mapping_file) or die; - -sub find_copyright_line($) -{ - my ($path) = @_; - my $mapped = $mapping{$path}; - die "No mapping for $path found!" unless $mapped && @$mapped; - my $ret = find_mapped_copyright_line($mapped->[0]); - foreach my $m (@$mapped) { - my $other = find_mapped_copyright_line($m); - die "Copyright lines in $mapped->[0] and $m did not match" unless $other eq $ret; - } - return $ret; -} - -sub find_mapped_copyright_line($) -{ - my ($path) = @_; - open(my $f, "<", "../openssl/$path") or die; - while (my $line = <$f>) { - chomp($line); - if ($line =~ /^ \* Copyright [-0-9]+ The OpenSSL Project Authors\. All Rights Reserved\.$/) { - close($f) or die; - return $line; - } - } - die "Could not find copyright line in ../openssl/$path"; -} - -# Read a multi-line comments. If it matches a "fingerprint" of a legacy -# copyright block, then just delete it. -sub check_comment() -{ - my @lines = ( @_ ); - my $skipit = 0; - - if ($lines[$#lines] !~ m@\*/@) { - while ( <> ) { - push @lines, $_; - last if m@\*/@; - $skipit = 1 if /Copyright remains Eric Young's/i; - $skipit = 1 if /Copyright.*The OpenSSL Project/i; - $skipit = 1 if /Written by.*for the OpenSSL Project/i; - } - } - - # Look for a multi-line "written by" comment. - if ( ! $skipit ) { - my $text = join('', @lines); - $skipit = 1 if $text =~ m/Written by.*for the OpenSSL Project/is; - } - - print @lines unless $skipit; - return $skipit; -} - -# Look for leading copyright blocks and process (print/swallow) them. -while ( <> ) { - if ($. == 1) { - my $copyright_line = find_copyright_line($ARGV); - print < ); -} diff --git a/util/copyright_summary.go b/util/copyright_summary.go index 0e8cdc024a..9c7b7ee304 100644 --- a/util/copyright_summary.go +++ b/util/copyright_summary.go @@ -26,17 +26,14 @@ import ( "iter" "maps" "os" - "path/filepath" "regexp" "slices" "strconv" - "strings" ) var ( outPath = flag.String("out", "", "The path to write the results in JSON format") comparePath = flag.String("compare", "", "The path to a JSON file to compare against") - useMapping = flag.Bool("use-mapping", false, "Apply the mapping and look up files in OpenSSL instead") ) func sortedKeyValuePairs[K cmp.Ordered, V any](m map[K]V) iter.Seq2[K, V] { @@ -69,35 +66,6 @@ var copyrightRE = regexp.MustCompile( // summary to double-check an otherwise mostly automated process. `([-a-zA-Z ]*[-a-zA-Z])`) -var fileMapping map[string][]string - -//go:embed mapping.txt -var fileMappingData string - -func parseMapping() (map[string][]string, error) { - ret := map[string][]string{} - for _, line := range strings.Split(fileMappingData, "\n") { - if idx := strings.IndexByte(line, '#'); idx >= 0 { - line = line[:idx] - } - line = strings.TrimSpace(line) - if len(line) == 0 { - continue - } - colon := strings.IndexByte(line, ':') - if colon < 0 { - return nil, fmt.Errorf("could not parse %q", line) - } - from := strings.TrimSpace(line[:colon]) - to := strings.TrimSpace(line[colon+1:]) - if _, ok := ret[from]; ok { - return nil, fmt.Errorf("duplicate mapping for %q", from) - } - ret[from] = strings.Fields(to) - } - return ret, nil -} - type CopyrightInfo struct { Name string StartYear int @@ -127,27 +95,6 @@ func summarize(info FileInfo) map[string]int { } func process(path string) (info FileInfo, err error) { - if !*useMapping { - return processImpl(path) - } - - newPaths, ok := fileMapping[path] - if !ok { - err = fmt.Errorf("no mapping found for %q", path) - return - } - for _, newPath := range newPaths { - var newInfo FileInfo - newInfo, err = processImpl(filepath.Join("../openssl", newPath)) - if err != nil { - return - } - info.MergeFrom(newInfo) - } - return -} - -func processImpl(path string) (info FileInfo, err error) { f, err := os.Open(path) if err != nil { return @@ -175,15 +122,6 @@ func processImpl(path string) (info FileInfo, err error) { func main() { flag.Parse() - if *useMapping { - var err error - fileMapping, err = parseMapping() - if err != nil { - fmt.Fprintf(os.Stderr, "Error parsing mapping file: %s\n", err) - os.Exit(1) - } - } - infos := map[string]FileInfo{} for _, path := range flag.Args() { info, err := process(path) diff --git a/util/mapping.txt b/util/mapping.txt deleted file mode 100644 index 657a73fe42..0000000000 --- a/util/mapping.txt +++ /dev/null @@ -1,354 +0,0 @@ -# This maps BoringSSL files with the old OpenSSL copyright to those in -# b6cff313cbb1d0381b329fe4f6a8f009cdb270e4, for purposes of running their 2016 -# "copyright consolidation" script. This considers only those files which -# contained a pre-consolidation OpenSSL file header. Specifically, files -# returned from this command: -# -# git grep -l -E 'Copyright remains Eric Young|Copyright.*The OpenSSL Project\.|Written by.*for the OpenSSL Project' crypto/ decrepit/ include/ ssl/ | grep -v objects.go -# -# The above patterns match those in OpenSSL's copyright.pl, except that we -# specifically look for "The OpenSSL Project." to distinguish from the new -# header, which uses "The OpenSSL Project Authors." This is so we avoid -# rewriting files which we already imported from OpenSSL after that point. -# -# This mapping is only used to apply OpenSSL's "copyright consolidation" script -# and determine the starting year. It doesn't replace the information in version -# control, nor is it a complete history of how code evolved over the two -# projects' history. - -crypto/asn1/a_bitstr.cc: crypto/asn1/a_bitstr.c -crypto/asn1/a_bool.cc: crypto/asn1/asn1_lib.c -crypto/asn1/a_d2i_fp.cc: crypto/asn1/a_d2i_fp.c -crypto/asn1/a_dup.cc: crypto/asn1/a_dup.c -crypto/asn1/a_gentm.cc: crypto/asn1/a_gentm.c -crypto/asn1/a_i2d_fp.cc: crypto/asn1/a_i2d_fp.c -crypto/asn1/a_int.cc: crypto/asn1/a_int.c -crypto/asn1/a_mbstr.cc: crypto/asn1/a_mbstr.c -crypto/asn1/a_object.cc: crypto/asn1/a_object.c -crypto/asn1/a_octet.cc: crypto/asn1/a_octet.c -crypto/asn1/a_strex.cc: crypto/asn1/a_strex.c -crypto/asn1/a_strnid.cc: crypto/asn1/a_strnid.c -crypto/asn1/a_time.cc: crypto/asn1/a_time.c -crypto/asn1/a_type.cc: crypto/asn1/a_type.c -crypto/asn1/a_utctm.cc: crypto/asn1/a_utctm.c -crypto/asn1/asn1_lib.cc: crypto/asn1/asn1_lib.c -crypto/asn1/asn1_par.cc: crypto/asn1/asn1_par.c -crypto/asn1/asn_pack.cc: crypto/asn1/asn_pack.c -crypto/asn1/f_int.cc: crypto/asn1/f_int.c -crypto/asn1/f_string.cc: crypto/asn1/f_string.c -crypto/asn1/internal.h: crypto/asn1/asn1_locl.h -crypto/asn1/tasn_dec.cc: crypto/asn1/tasn_dec.c -crypto/asn1/tasn_enc.cc: crypto/asn1/tasn_enc.c -crypto/asn1/tasn_fre.cc: crypto/asn1/tasn_fre.c -crypto/asn1/tasn_new.cc: crypto/asn1/tasn_new.c -crypto/asn1/tasn_typ.cc: crypto/asn1/tasn_typ.c -crypto/asn1/tasn_utl.cc: crypto/asn1/tasn_utl.c -crypto/base64/base64.cc: crypto/evp/encode.c -crypto/bio/bio.cc: crypto/bio/bio_lib.c -crypto/bio/bio_mem.cc: crypto/bio/bss_mem.c -crypto/bio/connect.cc: crypto/bio/bss_conn.c -crypto/bio/errno.cc: crypto/bio/bss_fd.c -crypto/bio/fd.cc: crypto/bio/bss_fd.c -crypto/bio/file.cc: crypto/bio/bss_file.c -crypto/bio/hexdump.cc: crypto/bio/b_dump.c -crypto/bio/internal.h: include/openssl/bio.h -crypto/bio/pair.cc: crypto/bio/bss_bio.c -crypto/bio/printf.cc: crypto/bio/b_print.c -crypto/bio/socket.cc: crypto/bio/bss_sock.c -crypto/bn_extra/convert.cc: crypto/bn/bn_print.c -crypto/buf/buf.cc: crypto/buffer/buffer.c -crypto/cipher_extra/cipher_extra.cc: crypto/evp/evp_enc.c -crypto/cipher_extra/cipher_test.cc: test/evp_test.c -crypto/cipher_extra/derive_key.cc: crypto/evp/evp_key.c -crypto/cipher_extra/e_des.cc: crypto/evp/e_des.c -crypto/cipher_extra/e_null.cc: crypto/evp/e_null.c -crypto/cipher_extra/e_rc2.cc: crypto/evp/e_rc2.c -crypto/cipher_extra/e_rc4.cc: crypto/evp/e_rc4.c -# Mapping these is tricky as code moved around significantly across BoringSSL -# and OpenSSL, but the public evp.h seems most natural as all these structures -# were originally defined in the public evp.h header. -crypto/cipher_extra/internal.h: include/openssl/evp.h -crypto/cipher_extra/tls_cbc.cc: ssl/s3_cbc.c -# This file also contains code from conf_lib.c, but conf_def.c is the older one. -crypto/conf/conf.cc: crypto/conf/conf_def.c -crypto/constant_time_test.cc: test/constant_time_test.c -crypto/cpu_intel.cc: crypto/cryptlib.c -crypto/des/des.cc: crypto/des/des_enc.c -crypto/des/internal.h: crypto/des/des_locl.h -crypto/dh_extra/dh_asn1.cc: crypto/dh/dh_asn1.c -crypto/dh_extra/dh_test.cc: test/dhtest.c -crypto/dh_extra/params.cc: crypto/dh/dh_rfc5114.c -crypto/digest_extra/digest_extra.cc: crypto/evp/names.c -crypto/dsa/dsa.cc: crypto/dsa/dsa_lib.c crypto/dsa/dsa_ossl.c -crypto/dsa/dsa_asn1.cc: crypto/dsa/dsa_asn1.c -crypto/dsa/dsa_test.cc: test/dsatest.c -crypto/ec_extra/ec_asn1.cc: crypto/ec/ec_asn1.c -crypto/ecdh_extra/ecdh_extra.cc: crypto/ec/ecdh_ossl.c -crypto/ecdsa_extra/ecdsa_asn1.cc: crypto/ec/ec_asn1.c -crypto/err/err.cc: crypto/err/err.c -crypto/evp/evp.cc: crypto/evp/p_lib.c -crypto/evp/evp_asn1.cc: crypto/asn1/d2i_pr.c -crypto/evp/evp_ctx.cc: crypto/evp/pmeth_lib.c -crypto/evp/evp_test.cc: test/evp_test.c -crypto/evp/internal.h: crypto/evp/evp_locl.h -crypto/evp/p_dsa_asn1.cc: crypto/dsa/dsa_ameth.c -crypto/evp/p_ec.cc: crypto/ec/ec_pmeth.c -crypto/evp/p_ec_asn1.cc: crypto/ec/ec_ameth.c -crypto/evp/p_rsa.cc: crypto/rsa/rsa_pmeth.c -crypto/evp/p_rsa_asn1.cc: crypto/rsa/rsa_ameth.c -crypto/evp/pbkdf.cc: crypto/evp/p5_crpt2.c -crypto/evp/print.cc: crypto/dsa/dsa_ameth.c crypto/ec/ec_ameth.c crypto/rsa/rsa_ameth.c -crypto/evp/sign.cc: crypto/evp/p_sign.c -crypto/ex_data.cc: crypto/ex_data.c -crypto/fipsmodule/aes/aes.cc.inc: crypto/aes/aes_core.c -crypto/fipsmodule/aes/key_wrap.cc.inc: crypto/aes/aes_wrap.c -crypto/fipsmodule/aes/mode_wrappers.cc.inc: crypto/aes/aes_cfb.c -crypto/fipsmodule/bn/add.cc.inc: crypto/bn/bn_add.c -crypto/fipsmodule/bn/bn.cc.inc: crypto/bn/bn_lib.c -crypto/fipsmodule/bn/bn_test.cc: test/bntest.c -crypto/fipsmodule/bn/bytes.cc.inc: crypto/bn/bn_lib.c -crypto/fipsmodule/bn/cmp.cc.inc: crypto/bn/bn_lib.c -crypto/fipsmodule/bn/ctx.cc.inc: crypto/bn/bn_ctx.c -crypto/fipsmodule/bn/div.cc.inc: crypto/bn/bn_div.c -crypto/fipsmodule/bn/exponentiation.cc.inc: crypto/bn/bn_exp.c -crypto/fipsmodule/bn/gcd.cc.inc: crypto/bn/bn_gcd.c -crypto/fipsmodule/bn/generic.cc.inc: crypto/bn/bn_asm.c -crypto/fipsmodule/bn/internal.h: crypto/bn/bn_lcl.h -crypto/fipsmodule/bn/jacobi.cc.inc: crypto/bn/bn_kron.c -crypto/fipsmodule/bn/montgomery.cc.inc: crypto/bn/bn_mont.c -crypto/fipsmodule/bn/mul.cc.inc: crypto/bn/bn_mul.c -crypto/fipsmodule/bn/prime.cc.inc: crypto/bn/bn_prime.c -crypto/fipsmodule/bn/random.cc.inc: crypto/bn/bn_rand.c -crypto/fipsmodule/bn/shift.cc.inc: crypto/bn/bn_shift.c -crypto/fipsmodule/bn/sqrt.cc.inc: crypto/bn/bn_sqrt.c -crypto/fipsmodule/cipher/cipher.cc.inc: crypto/evp/evp_enc.c -crypto/fipsmodule/cipher/e_aes.cc.inc: crypto/evp/e_aes.c -crypto/fipsmodule/cipher/e_aesccm.cc.inc: crypto/modes/ccm128.c -# Mapping these is tricky as code moved around significantly across BoringSSL -# and OpenSSL, but the public evp.h seems most natural as all these structures -# were originally defined in the public evp.h header. -crypto/fipsmodule/cipher/internal.h: include/openssl/evp.h -crypto/fipsmodule/cmac/cmac.cc.inc: crypto/cmac/cmac.c -crypto/fipsmodule/dh/check.cc.inc: crypto/dh/dh_check.c -crypto/fipsmodule/dh/dh.cc.inc: crypto/dh/dh_lib.c -crypto/fipsmodule/digest/digest.cc.inc: crypto/evp/digest.c -crypto/fipsmodule/digest/digests.cc.inc: crypto/evp/m_sha1.c -# Mapping these is tricky as code moved around significantly across BoringSSL -# and OpenSSL, but the public evp.h seems most natural as all these structures -# were originally defined in the public evp.h header. -crypto/fipsmodule/digest/internal.h: include/openssl/evp.h -crypto/fipsmodule/digest/md32_common.h: crypto/include/internal/md32_common.h -crypto/fipsmodule/digestsign/digestsign.cc.inc: crypto/evp/m_sigver.c -crypto/fipsmodule/ec/ec.cc.inc: crypto/ec/ec_lib.c -crypto/fipsmodule/ec/ec_key.cc.inc: crypto/ec/ec_key.c -crypto/fipsmodule/ec/ec_montgomery.cc.inc: crypto/ec/ecp_mont.c -crypto/fipsmodule/ec/internal.h: crypto/ec/ec_lcl.h -crypto/fipsmodule/ec/oct.cc.inc: crypto/ec/ec_oct.c -crypto/fipsmodule/ec/simple.cc.inc: crypto/ec/ecp_smpl.c -crypto/fipsmodule/ec/wnaf.cc.inc: crypto/ec/ec_mult.c -crypto/fipsmodule/ecdh/ecdh.cc.inc: crypto/ec/ecdh_ossl.c -crypto/fipsmodule/ecdsa/ecdsa.cc.inc: crypto/ec/ecdsa_ossl.c -crypto/fipsmodule/ecdsa/ecdsa_test.cc: test/ecdsatest.c -crypto/fipsmodule/hmac/hmac.cc.inc: crypto/hmac/hmac.c -crypto/fipsmodule/modes/cbc.cc.inc: crypto/modes/cbc128.c -crypto/fipsmodule/modes/cfb.cc.inc: crypto/modes/cfb128.c -crypto/fipsmodule/modes/ctr.cc.inc: crypto/modes/ctr128.c -crypto/fipsmodule/modes/gcm.cc.inc: crypto/modes/gcm128.c -crypto/fipsmodule/modes/internal.h: crypto/modes/modes_lcl.h -crypto/fipsmodule/modes/ofb.cc.inc: crypto/modes/ofb128.c -crypto/fipsmodule/rsa/blinding.cc.inc: crypto/bn/bn_blind.c -crypto/fipsmodule/rsa/internal.h: include/openssl/rsa.h -crypto/fipsmodule/rsa/padding.cc.inc: crypto/rsa/rsa_pss.c -crypto/fipsmodule/rsa/rsa.cc.inc: crypto/rsa/rsa_lib.c -crypto/fipsmodule/rsa/rsa_impl.cc.inc: crypto/rsa/rsa_ossl.c -crypto/fipsmodule/sha/sha1.cc.inc: crypto/sha/sha_locl.h -crypto/fipsmodule/sha/sha256.cc.inc: crypto/sha/sha256.c -crypto/fipsmodule/sha/sha512.cc.inc: crypto/sha/sha512.c -crypto/fipsmodule/tls/kdf.cc.inc: ssl/t1_enc.c -crypto/hmac_extra/hmac_test.cc: test/hmactest.c -crypto/internal.h: include/openssl/crypto.h -crypto/lhash/internal.h: include/openssl/lhash.h -crypto/lhash/lhash.cc: crypto/lhash/lhash.c -crypto/md4/md4.cc: crypto/md4/md4_dgst.c -crypto/md5/md5.cc: crypto/md5/md5_dgst.c -crypto/mem.cc: crypto/mem.c -crypto/obj/obj.cc: crypto/objects/obj_lib.c -crypto/obj/obj_dat.h: crypto/objects/obj_dat.h -crypto/obj/obj_xref.cc: crypto/objects/obj_xref.c -crypto/pem/pem_all.cc: crypto/pem/pem_all.c -crypto/pem/pem_info.cc: crypto/pem/pem_info.c -crypto/pem/pem_lib.cc: crypto/pem/pem_lib.c -crypto/pem/pem_oth.cc: crypto/pem/pem_oth.c -crypto/pem/pem_pk8.cc: crypto/pem/pem_pk8.c -crypto/pem/pem_pkey.cc: crypto/pem/pem_pkey.c -crypto/pem/pem_x509.cc: crypto/pem/pem_x509.c -crypto/pem/pem_xaux.cc: crypto/pem/pem_xaux.c -crypto/pkcs8/internal.h: include/openssl/pkcs12.h -crypto/pkcs8/p5_pbev2.cc: crypto/asn1/p5_pbev2.c -crypto/pkcs8/pkcs8.cc: crypto/pkcs12/p12_decr.c -crypto/pkcs8/pkcs8_x509.cc: crypto/pkcs12/p12_decr.c -crypto/rc4/rc4.cc: crypto/rc4/rc4_skey.c crypto/rc4/rc4_enc.c -crypto/rsa_extra/internal.h: include/openssl/rsa.h -crypto/rsa_extra/rsa_asn1.cc: crypto/rsa/rsa_asn1.c -crypto/rsa_extra/rsa_crypt.cc: crypto/rsa/rsa_crpt.c -crypto/rsa_extra/rsa_test.cc: test/rsa_test.c -crypto/stack/stack.cc: crypto/stack/stack.c -crypto/thread.cc: crypto/cryptlib.c -crypto/x509/a_digest.cc: crypto/asn1/a_digest.c -crypto/x509/a_sign.cc: crypto/asn1/a_sign.c -crypto/x509/a_verify.cc: crypto/asn1/a_verify.c -crypto/x509/algorithm.cc: crypto/asn1/a_verify.c -crypto/x509/asn1_gen.cc: crypto/asn1/asn1_gen.c -crypto/x509/by_dir.cc: crypto/x509/by_dir.c -crypto/x509/by_file.cc: crypto/x509/by_file.c -crypto/x509/ext_dat.h: crypto/x509v3/ext_dat.h -crypto/x509/i2d_pr.cc: crypto/asn1/i2d_pr.c -crypto/x509/internal.h: crypto/x509/x509_lcl.h -crypto/x509/name_print.cc: crypto/asn1/a_strex.c -crypto/x509/rsa_pss.cc: crypto/rsa/rsa_ameth.c -crypto/x509/t_crl.cc: crypto/x509/t_crl.c -crypto/x509/t_req.cc: crypto/x509/t_req.c -crypto/x509/t_x509.cc: crypto/x509/t_x509.c -crypto/x509/t_x509a.cc: crypto/x509/t_x509.c -crypto/x509/tab_test.cc: ./crypto/x509v3/tabtest.c -crypto/x509/v3_akey.cc: crypto/x509v3/v3_akey.c -crypto/x509/v3_akeya.cc: crypto/x509v3/v3_akeya.c -crypto/x509/v3_alt.cc: crypto/x509v3/v3_alt.c -crypto/x509/v3_bcons.cc: crypto/x509v3/v3_bcons.c -crypto/x509/v3_bitst.cc: crypto/x509v3/v3_bitst.c -crypto/x509/v3_conf.cc: crypto/x509v3/v3_conf.c -crypto/x509/v3_cpols.cc: crypto/x509v3/v3_cpols.c -crypto/x509/v3_crld.cc: crypto/x509v3/v3_crld.c -crypto/x509/v3_enum.cc: crypto/x509v3/v3_enum.c -crypto/x509/v3_extku.cc: crypto/x509v3/v3_extku.c -crypto/x509/v3_genn.cc: crypto/x509v3/v3_genn.c -crypto/x509/v3_ia5.cc: crypto/x509v3/v3_ia5.c -crypto/x509/v3_info.cc: crypto/x509v3/v3_info.c -crypto/x509/v3_int.cc: crypto/x509v3/v3_int.c -crypto/x509/v3_lib.cc: crypto/x509v3/v3_lib.c -crypto/x509/v3_ncons.cc: crypto/x509v3/v3_ncons.c -crypto/x509/v3_pcons.cc: crypto/x509v3/v3_pcons.c -crypto/x509/v3_pmaps.cc: crypto/x509v3/v3_pmaps.c -crypto/x509/v3_prn.cc: crypto/x509v3/v3_prn.c -crypto/x509/v3_purp.cc: crypto/x509v3/v3_purp.c -crypto/x509/v3_skey.cc: crypto/x509v3/v3_skey.c -crypto/x509/v3_utl.cc: crypto/x509v3/v3_utl.c -crypto/x509/x509.cc: crypto/x509/t_x509.c -crypto/x509/x509_att.cc: crypto/x509/x509_att.c -crypto/x509/x509_cmp.cc: crypto/x509/x509_cmp.c -crypto/x509/x509_d2.cc: crypto/x509/x509_d2.c -crypto/x509/x509_def.cc: crypto/x509/x509_def.c -crypto/x509/x509_ext.cc: crypto/x509/x509_ext.c -crypto/x509/x509_lu.cc: crypto/x509/x509_lu.c -crypto/x509/x509_obj.cc: crypto/x509/x509_obj.c -crypto/x509/x509_req.cc: crypto/x509/x509_req.c -crypto/x509/x509_set.cc: crypto/x509/x509_set.c -crypto/x509/x509_trs.cc: crypto/x509/x509_trs.c -crypto/x509/x509_txt.cc: crypto/x509/x509_txt.c -crypto/x509/x509_v3.cc: crypto/x509/x509_v3.c -crypto/x509/x509_vfy.cc: crypto/x509/x509_vfy.c -crypto/x509/x509_vpm.cc: crypto/x509/x509_vpm.c -crypto/x509/x509cset.cc: crypto/x509/x509cset.c -crypto/x509/x509name.cc: crypto/x509/x509name.c -crypto/x509/x509rset.cc: crypto/x509/x509rset.c -crypto/x509/x509spki.cc: crypto/x509/x509spki.c -crypto/x509/x_algor.cc: crypto/asn1/x_algor.c -crypto/x509/x_all.cc: crypto/x509/x_all.c -crypto/x509/x_attrib.cc: crypto/x509/x_attrib.c -crypto/x509/x_crl.cc: crypto/x509/x_crl.c -crypto/x509/x_exten.cc: crypto/x509/x_exten.c -crypto/x509/x_name.cc: crypto/x509/x_name.c -crypto/x509/x_pubkey.cc: crypto/x509/x_pubkey.c -crypto/x509/x_req.cc: crypto/x509/x_req.c -crypto/x509/x_sig.cc: crypto/asn1/x_sig.c -crypto/x509/x_spki.cc: crypto/asn1/x_spki.c -crypto/x509/x_val.cc: crypto/asn1/x_val.c -crypto/x509/x_x509.cc: crypto/x509/x_x509.c -crypto/x509/x_x509a.cc: crypto/x509/x_x509a.c -decrepit/bio/base64_bio.cc: crypto/evp/bio_b64.c -decrepit/blowfish/blowfish.cc: crypto/bf/bf_enc.c -decrepit/cast/cast.cc: crypto/cast/c_enc.c crypto/cast/c_skey.c -decrepit/cast/cast_tables.cc: crypto/cast/cast_s.h -decrepit/cast/internal.h: crypto/cast/cast_lcl.h -decrepit/des/cfb64ede.cc: crypto/des/cfb64ede.c -decrepit/dh/dh_decrepit.cc: crypto/dh/dh_depr.c -decrepit/dsa/dsa_decrepit.cc: crypto/dsa/dsa_depr.c -decrepit/macros.h: crypto/bf/bf_locl.h -decrepit/rc4/rc4_decrepit.cc: crypto/rc4/rc4_skey.c -decrepit/ripemd/ripemd.cc: crypto/ripemd/rmd_dgst.c -decrepit/rsa/rsa_decrepit.cc: crypto/rsa/rsa_depr.c -decrepit/ssl/ssl_decrepit.cc: ssl/ssl_cert.c -decrepit/xts/xts.cc: crypto/modes/xts128.c -include/openssl/aes.h: include/openssl/aes.h -include/openssl/arm_arch.h: crypto/arm_arch.h -include/openssl/asn1.h: include/openssl/asn1.h -include/openssl/asn1t.h: include/openssl/asn1t.h -include/openssl/base.h: include/openssl/ossl_typ.h -include/openssl/base64.h: include/openssl/evp.h -include/openssl/bio.h: include/openssl/bio.h -include/openssl/blowfish.h: include/openssl/blowfish.h -include/openssl/bn.h: include/openssl/bn.h -include/openssl/buf.h: include/openssl/buffer.h -include/openssl/cast.h: include/openssl/cast.h -include/openssl/cipher.h: include/openssl/evp.h -include/openssl/conf.h: include/openssl/conf.h -include/openssl/des.h: include/openssl/des.h -include/openssl/dh.h: include/openssl/dh.h -include/openssl/digest.h: include/openssl/evp.h -include/openssl/dsa.h: include/openssl/dsa.h -include/openssl/ec.h: include/openssl/ec.h -include/openssl/ec_key.h: include/openssl/ec.h -include/openssl/ecdh.h: include/openssl/ecdh.h -include/openssl/ecdsa.h: include/openssl/ecdsa.h -include/openssl/err.h: include/openssl/err.h -include/openssl/evp.h: include/openssl/evp.h -include/openssl/evp_errors.h: include/openssl/evp.h -include/openssl/ex_data.h: include/openssl/crypto.h -include/openssl/hmac.h: include/openssl/hmac.h -include/openssl/lhash.h: include/openssl/lhash.h -include/openssl/md4.h: include/openssl/md4.h -include/openssl/md5.h: include/openssl/md5.h -include/openssl/mem.h: include/openssl/crypto.h -include/openssl/nid.h: include/openssl/obj_mac.h -include/openssl/obj.h: include/openssl/objects.h -include/openssl/pem.h: include/openssl/pem.h -include/openssl/pkcs8.h: include/openssl/pkcs12.h -include/openssl/rc4.h: include/openssl/rc4.h -include/openssl/ripemd.h: include/openssl/ripemd.h -include/openssl/rsa.h: include/openssl/rsa.h -include/openssl/sha.h: include/openssl/sha.h -include/openssl/ssl.h: include/openssl/ssl.h -include/openssl/ssl3.h: include/openssl/ssl3.h -include/openssl/stack.h: include/openssl/stack.h -include/openssl/thread.h: include/openssl/crypto.h -include/openssl/tls1.h: include/openssl/tls1.h -include/openssl/type_check.h: include/openssl/safestack.h -include/openssl/x509.h: include/openssl/x509.h -include/openssl/x509v3_errors.h: include/openssl/x509v3.h -ssl/d1_both.cc: ssl/statem/statem_dtls.c -ssl/d1_lib.cc: ssl/d1_lib.c -ssl/d1_pkt.cc: ssl/record/rec_layer_d1.c -ssl/d1_srtp.cc: ssl/d1_srtp.c -ssl/dtls_method.cc: ssl/methods.c -ssl/dtls_record.cc: ssl/record/rec_layer_d1.c -ssl/extensions.cc: ssl/t1_lib.c -ssl/handshake.cc: ssl/statem/statem_lib.c -ssl/handshake_client.cc: ssl/statem/statem_clnt.c -ssl/handshake_server.cc: ssl/statem/statem_srvr.c -ssl/internal.h: ssl/ssl_locl.h -ssl/s3_both.cc: ssl/statem/statem_lib.c -ssl/s3_lib.cc: ssl/s3_lib.c -ssl/s3_pkt.cc: ssl/record/rec_layer_s3.c -ssl/ssl_asn1.cc: ssl/ssl_asn1.c -ssl/ssl_cert.cc: ssl/ssl_cert.c -ssl/ssl_cipher.cc: ssl/ssl_ciph.c -ssl/ssl_file.cc: ssl/ssl_cert.c ssl/ssl_rsa.c -ssl/ssl_lib.cc: ssl/ssl_lib.c -ssl/ssl_privkey.cc: ssl/ssl_rsa.c -ssl/ssl_session.cc: ssl/ssl_sess.c -ssl/ssl_stat.cc: ssl/ssl_stat.c -ssl/ssl_transcript.cc: ssl/s3_enc.c -ssl/ssl_x509.cc: ssl/ssl_lib.c -ssl/t1_enc.cc: ssl/t1_enc.c -ssl/tls_method.cc: ssl/methods.c -ssl/tls_record.cc: ssl/record/rec_layer_s3.c From 1d3c5608c8c94952c9cebf56078eb55949e4b4f1 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sat, 4 Jan 2025 14:43:52 -0500 Subject: [PATCH 13/64] Move implicit OPENSSL_STATIC_ARMCAP definition to target.h We have some logic to implicitly define OPENSSL_STATIC_ARMCAP on some platforms. This was being done a hair too late for the NEED_CPUID logic in crypto/internal.h to pick up. I'm not sure why this is only tripping the Android build now. It seems to have been broken for a long while. I put it in the public headers because is also sensitive to OPENSSL_STATIC_ARMCAP, so it seems prudent for it to be set all in one place. Change-Id: I53691b018282a71f5d0cb0f6a6c457e1ee4d1df9 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74787 Auto-Submit: David Benjamin Commit-Queue: Adam Langley Reviewed-by: Adam Langley --- crypto/internal.h | 10 ---------- include/openssl/target.h | 10 ++++++++++ 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/crypto/internal.h b/crypto/internal.h index bbaa619e75..d50e755bae 100644 --- a/crypto/internal.h +++ b/crypto/internal.h @@ -1314,16 +1314,6 @@ extern uint32_t OPENSSL_armcap_P; // merged by the compiler. OPENSSL_ATTR_CONST uint32_t OPENSSL_get_armcap(void); -// We do not detect any features at runtime on several 32-bit Arm platforms. -// Apple platforms and OpenBSD require NEON and moved to 64-bit to pick up Armv8 -// extensions. Android baremetal does not aim to support 32-bit Arm at all, but -// it simplifies things to make it build. -#if defined(OPENSSL_ARM) && !defined(OPENSSL_STATIC_ARMCAP) && \ - (defined(OPENSSL_APPLE) || defined(OPENSSL_OPENBSD) || \ - defined(ANDROID_BAREMETAL)) -#define OPENSSL_STATIC_ARMCAP -#endif - // Normalize some older feature flags to their modern ACLE values. // https://developer.arm.com/architectures/system-architectures/software-standards/acle #if defined(__ARM_NEON__) && !defined(__ARM_NEON) diff --git a/include/openssl/target.h b/include/openssl/target.h index 71ce6034a3..77f8ac935d 100644 --- a/include/openssl/target.h +++ b/include/openssl/target.h @@ -226,4 +226,14 @@ #endif #endif // OPENSSL_ASM_INCOMPATIBLE +// We do not detect any features at runtime on several 32-bit Arm platforms. +// Apple platforms and OpenBSD require NEON and moved to 64-bit to pick up Armv8 +// extensions. Android baremetal does not aim to support 32-bit Arm at all, but +// it simplifies things to make it build. +#if defined(OPENSSL_ARM) && !defined(OPENSSL_STATIC_ARMCAP) && \ + (defined(OPENSSL_APPLE) || defined(OPENSSL_OPENBSD) || \ + defined(ANDROID_BAREMETAL)) +#define OPENSSL_STATIC_ARMCAP +#endif + #endif // OPENSSL_HEADER_TARGET_H From 3fe5e2a25ea9fb5e882d208cfcb3af387ee9662c Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sun, 5 Jan 2025 10:57:35 -0500 Subject: [PATCH 14/64] Unexport a couple internal PEM functions from pem.h These aren't used externally. While I'm here, const-correct PEM_do_header. Really we could have just made these file-local except that PEM_X509_INFO_read_bio does something weird. Bug: 42290574 Change-Id: I455b9c31da0efb854925bbe38797d3c0e221fcdf Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74807 Reviewed-by: Adam Langley Auto-Submit: David Benjamin Commit-Queue: David Benjamin --- build.json | 1 + crypto/pem/internal.h | 42 ++++++++++++++++++++++++++++++++++++++++++ crypto/pem/pem_info.cc | 2 ++ crypto/pem/pem_lib.cc | 9 +++++---- gen/sources.bzl | 1 + gen/sources.cmake | 1 + gen/sources.gni | 1 + gen/sources.json | 1 + include/openssl/pem.h | 5 ----- 9 files changed, 54 insertions(+), 9 deletions(-) create mode 100644 crypto/pem/internal.h diff --git a/build.json b/build.json index 6ffa520cab..4d3fb4ecef 100644 --- a/build.json +++ b/build.json @@ -533,6 +533,7 @@ "crypto/lhash/internal.h", "crypto/md5/internal.h", "crypto/obj/obj_dat.h", + "crypto/pem/internal.h", "crypto/pkcs7/internal.h", "crypto/pkcs8/internal.h", "crypto/poly1305/internal.h", diff --git a/crypto/pem/internal.h b/crypto/pem/internal.h new file mode 100644 index 0000000000..3cfc8ac36d --- /dev/null +++ b/crypto/pem/internal.h @@ -0,0 +1,42 @@ +/* + * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#ifndef OPENSSL_HEADER_PEM_INTERNAL_H +#define OPENSSL_HEADER_PEM_INTERNAL_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +// PEM_get_EVP_CIPHER_INFO decodes |header| as a PEM header block and writes the +// specified cipher and IV to |cipher|. It returns one on success and zero on +// error. |header| must be a NUL-terminated string. If |header| does not +// specify encryption, this function will return success and set +// |cipher->cipher| to NULL. +// +// WARNING: This function will internally write to the string pointed by +// |header|. |header| must not point to constant storage. +int PEM_get_EVP_CIPHER_INFO(char *header, EVP_CIPHER_INFO *cipher); + +// PEM_do_header decrypts |*len| bytes from |data| in-place according to the +// information in |cipher|. On success, it returns one and sets |*len| to the +// length of the plaintext. Otherwise, it returns zero. If |cipher| specifies +// encryption, the key is derived from a password returned from |callback|. +int PEM_do_header(const EVP_CIPHER_INFO *cipher, uint8_t *data, long *len, + pem_password_cb *callback, void *u); + + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif // OPENSSL_HEADER_PEM_INTERNAL_H diff --git a/crypto/pem/pem_info.cc b/crypto/pem/pem_info.cc index 3c1d575730..27d4edc501 100644 --- a/crypto/pem/pem_info.cc +++ b/crypto/pem/pem_info.cc @@ -21,6 +21,8 @@ #include #include +#include "internal.h" + static X509_PKEY *X509_PKEY_new(void) { return reinterpret_cast(OPENSSL_zalloc(sizeof(X509_PKEY))); diff --git a/crypto/pem/pem_lib.cc b/crypto/pem/pem_lib.cc index a598010477..6683beea6d 100644 --- a/crypto/pem/pem_lib.cc +++ b/crypto/pem/pem_lib.cc @@ -24,6 +24,7 @@ #include #include "../internal.h" +#include "internal.h" #define MIN_LENGTH 4 @@ -326,8 +327,8 @@ int PEM_ASN1_write_bio(i2d_of_void *i2d, const char *name, BIO *bp, void *x, return ret; } -int PEM_do_header(EVP_CIPHER_INFO *cipher, unsigned char *data, long *plen, - pem_password_cb *callback, void *u) { +int PEM_do_header(const EVP_CIPHER_INFO *cipher, unsigned char *data, + long *plen, pem_password_cb *callback, void *u) { int i = 0, j, o, pass_len; long len; EVP_CIPHER_CTX ctx; @@ -350,14 +351,14 @@ int PEM_do_header(EVP_CIPHER_INFO *cipher, unsigned char *data, long *plen, return 0; } - if (!EVP_BytesToKey(cipher->cipher, EVP_md5(), &(cipher->iv[0]), + if (!EVP_BytesToKey(cipher->cipher, EVP_md5(), cipher->iv, (unsigned char *)buf, pass_len, 1, key, NULL)) { return 0; } j = (int)len; EVP_CIPHER_CTX_init(&ctx); - o = EVP_DecryptInit_ex(&ctx, cipher->cipher, NULL, key, &(cipher->iv[0])); + o = EVP_DecryptInit_ex(&ctx, cipher->cipher, NULL, key, cipher->iv); if (o) { o = EVP_DecryptUpdate(&ctx, data, &i, data, j); } diff --git a/gen/sources.bzl b/gen/sources.bzl index 7a475517e2..f91b49e00d 100644 --- a/gen/sources.bzl +++ b/gen/sources.bzl @@ -633,6 +633,7 @@ crypto_internal_headers = [ "crypto/lhash/internal.h", "crypto/md5/internal.h", "crypto/obj/obj_dat.h", + "crypto/pem/internal.h", "crypto/pkcs7/internal.h", "crypto/pkcs8/internal.h", "crypto/poly1305/internal.h", diff --git a/gen/sources.cmake b/gen/sources.cmake index 6d168c684a..369a9e658e 100644 --- a/gen/sources.cmake +++ b/gen/sources.cmake @@ -651,6 +651,7 @@ set( crypto/lhash/internal.h crypto/md5/internal.h crypto/obj/obj_dat.h + crypto/pem/internal.h crypto/pkcs7/internal.h crypto/pkcs8/internal.h crypto/poly1305/internal.h diff --git a/gen/sources.gni b/gen/sources.gni index 1be0b74107..d9862d97a9 100644 --- a/gen/sources.gni +++ b/gen/sources.gni @@ -633,6 +633,7 @@ crypto_internal_headers = [ "crypto/lhash/internal.h", "crypto/md5/internal.h", "crypto/obj/obj_dat.h", + "crypto/pem/internal.h", "crypto/pkcs7/internal.h", "crypto/pkcs8/internal.h", "crypto/poly1305/internal.h", diff --git a/gen/sources.json b/gen/sources.json index c29dfcb41b..1b482e1bd4 100644 --- a/gen/sources.json +++ b/gen/sources.json @@ -615,6 +615,7 @@ "crypto/lhash/internal.h", "crypto/md5/internal.h", "crypto/obj/obj_dat.h", + "crypto/pem/internal.h", "crypto/pkcs7/internal.h", "crypto/pkcs8/internal.h", "crypto/poly1305/internal.h", diff --git a/include/openssl/pem.h b/include/openssl/pem.h index 32fef2f6a7..797e7f0977 100644 --- a/include/openssl/pem.h +++ b/include/openssl/pem.h @@ -265,11 +265,6 @@ extern "C" { // "userdata": new with OpenSSL 0.9.4 typedef int pem_password_cb(char *buf, int size, int rwflag, void *userdata); -OPENSSL_EXPORT int PEM_get_EVP_CIPHER_INFO(char *header, - EVP_CIPHER_INFO *cipher); -OPENSSL_EXPORT int PEM_do_header(EVP_CIPHER_INFO *cipher, unsigned char *data, - long *len, pem_password_cb *callback, void *u); - // PEM_read_bio reads from |bp|, until the next PEM block. If one is found, it // returns one and sets |*name|, |*header|, and |*data| to newly-allocated // buffers containing the PEM type, the header block, and the decoded data, From 7ed1635e8d180a7b6337e201c0fe0a30ae0e6abb Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Fri, 3 Jan 2025 19:09:43 -0500 Subject: [PATCH 15/64] Import "Remove some code" from upstream OpenSSL This imports upstream's https://github.com/openssl/openssl/commit/6714cb1462c4980330e4cc4f65d7c10bc36b369d Bug: 364634028 Change-Id: I270390f9a0ab8acb5ec508e2c992ccf6b1091a07 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74768 Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- crypto/pem/pem_lib.cc | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/crypto/pem/pem_lib.cc b/crypto/pem/pem_lib.cc index 6683beea6d..69980fe4ac 100644 --- a/crypto/pem/pem_lib.cc +++ b/crypto/pem/pem_lib.cc @@ -489,6 +489,7 @@ int PEM_write_bio(BIO *bp, const char *name, const char *header, unsigned char *buf = NULL; EVP_ENCODE_CTX ctx; int reason = ERR_R_BUF_LIB; + int retval = 0; EVP_EncodeInit(&ctx); nlen = strlen(name); @@ -526,20 +527,19 @@ int PEM_write_bio(BIO *bp, const char *name, const char *header, if ((outl > 0) && (BIO_write(bp, (char *)buf, outl) != outl)) { goto err; } - OPENSSL_free(buf); - buf = NULL; if ((BIO_write(bp, "-----END ", 9) != 9) || (BIO_write(bp, name, nlen) != nlen) || (BIO_write(bp, "-----\n", 6) != 6)) { goto err; } - return i + outl; + retval = i + outl; + err: - if (buf) { - OPENSSL_free(buf); + if (retval == 0) { + OPENSSL_PUT_ERROR(PEM, reason); } - OPENSSL_PUT_ERROR(PEM, reason); - return 0; + OPENSSL_free(buf); + return retval; } int PEM_read(FILE *fp, char **name, char **header, unsigned char **data, From 5a2194f43d8801335e4b20040156686eb4247b22 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sun, 5 Jan 2025 11:23:40 -0500 Subject: [PATCH 16/64] Don't mutate the buffer in PEM_get_EVP_CIPHER_INFO There's a lot more we could improve in this function, but fix this particular egregious issue first. Change-Id: Idc4b7f9aa62972293ead4f8534b8461942318e21 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74808 Commit-Queue: David Benjamin Reviewed-by: Adam Langley --- crypto/pem/internal.h | 5 +---- crypto/pem/pem_lib.cc | 42 +++++++++++++++++++----------------------- 2 files changed, 20 insertions(+), 27 deletions(-) diff --git a/crypto/pem/internal.h b/crypto/pem/internal.h index 3cfc8ac36d..9fe9a5bba4 100644 --- a/crypto/pem/internal.h +++ b/crypto/pem/internal.h @@ -22,10 +22,7 @@ extern "C" { // error. |header| must be a NUL-terminated string. If |header| does not // specify encryption, this function will return success and set // |cipher->cipher| to NULL. -// -// WARNING: This function will internally write to the string pointed by -// |header|. |header| must not point to constant storage. -int PEM_get_EVP_CIPHER_INFO(char *header, EVP_CIPHER_INFO *cipher); +int PEM_get_EVP_CIPHER_INFO(const char *header, EVP_CIPHER_INFO *cipher); // PEM_do_header decrypts |*len| bytes from |data| in-place according to the // information in |cipher|. On success, it returns one and sets |*len| to the diff --git a/crypto/pem/pem_lib.cc b/crypto/pem/pem_lib.cc index 69980fe4ac..34048a3ea3 100644 --- a/crypto/pem/pem_lib.cc +++ b/crypto/pem/pem_lib.cc @@ -12,6 +12,8 @@ #include #include +#include + #include #include #include @@ -29,7 +31,7 @@ #define MIN_LENGTH 4 -static int load_iv(char **fromp, unsigned char *to, size_t num); +static int load_iv(const char **fromp, unsigned char *to, size_t num); static int check_pem(const char *nm, const char *name); // PEM_proc_type appends a Proc-Type header to |buf|, determined by |type|. @@ -143,19 +145,19 @@ static int check_pem(const char *nm, const char *name) { return 0; } -static const EVP_CIPHER *cipher_by_name(const char *name) { +static const EVP_CIPHER *cipher_by_name(std::string_view name) { // This is similar to the (deprecated) function |EVP_get_cipherbyname|. Note // the PEM code assumes that ciphers have at least 8 bytes of IV, at most 20 // bytes of overhead and generally behave like CBC mode. - if (0 == strcmp(name, SN_des_cbc)) { + if (name == SN_des_cbc) { return EVP_des_cbc(); - } else if (0 == strcmp(name, SN_des_ede3_cbc)) { + } else if (name == SN_des_ede3_cbc) { return EVP_des_ede3_cbc(); - } else if (0 == strcmp(name, SN_aes_128_cbc)) { + } else if (name == SN_aes_128_cbc) { return EVP_aes_128_cbc(); - } else if (0 == strcmp(name, SN_aes_192_cbc)) { + } else if (name == SN_aes_192_cbc) { return EVP_aes_192_cbc(); - } else if (0 == strcmp(name, SN_aes_256_cbc)) { + } else if (name == SN_aes_256_cbc) { return EVP_aes_256_cbc(); } else { return NULL; @@ -377,11 +379,7 @@ int PEM_do_header(const EVP_CIPHER_INFO *cipher, unsigned char *data, return 1; } -int PEM_get_EVP_CIPHER_INFO(char *header, EVP_CIPHER_INFO *cipher) { - const EVP_CIPHER *enc = NULL; - char *p, c; - char **header_pp = &header; - +int PEM_get_EVP_CIPHER_INFO(const char *header, EVP_CIPHER_INFO *cipher) { cipher->cipher = NULL; OPENSSL_memset(cipher->iv, 0, sizeof(cipher->iv)); if ((header == NULL) || (*header == '\0') || (*header == '\n')) { @@ -418,40 +416,38 @@ int PEM_get_EVP_CIPHER_INFO(char *header, EVP_CIPHER_INFO *cipher) { } header += 10; - p = header; + const char *p = header; for (;;) { - c = *header; + char c = *header; if (!((c >= 'A' && c <= 'Z') || c == '-' || OPENSSL_isdigit(c))) { break; } header++; } - *header = '\0'; - cipher->cipher = enc = cipher_by_name(p); - *header = c; + cipher->cipher = cipher_by_name(std::string_view(p, header - p)); header++; - - if (enc == NULL) { + if (cipher->cipher == NULL) { OPENSSL_PUT_ERROR(PEM, PEM_R_UNSUPPORTED_ENCRYPTION); return 0; } // The IV parameter must be at least 8 bytes long to be used as the salt in // the KDF. (This should not happen given |cipher_by_name|.) - if (EVP_CIPHER_iv_length(enc) < 8) { + if (EVP_CIPHER_iv_length(cipher->cipher) < 8) { assert(0); OPENSSL_PUT_ERROR(PEM, PEM_R_UNSUPPORTED_ENCRYPTION); return 0; } - if (!load_iv(header_pp, &(cipher->iv[0]), EVP_CIPHER_iv_length(enc))) { + const char **header_pp = &header; + if (!load_iv(header_pp, cipher->iv, EVP_CIPHER_iv_length(cipher->cipher))) { return 0; } return 1; } -static int load_iv(char **fromp, unsigned char *to, size_t num) { +static int load_iv(const char **fromp, unsigned char *to, size_t num) { uint8_t v; - char *from; + const char *from; from = *fromp; for (size_t i = 0; i < num; i++) { From 66c41ca0a6d969a2b15d3c050d12a71198353231 Mon Sep 17 00:00:00 2001 From: Daniel McCarney Date: Thu, 2 Jan 2025 13:45:08 -0500 Subject: [PATCH 17/64] util/fipstools: support more digests w/ hmacDRBG Adds: * SHA2-512/224, SHA2-512/256 * SHA3-224, SHA3-256, SHA3-384, SHA3-512 See https://pages.nist.gov/ACVP/draft-vassilev-acvp-drbg.html#section-7.4 Change-Id: I3f7d16062096a2c425f230374d44f1b29c95834d Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74687 Reviewed-by: Adam Langley Commit-Queue: Adam Langley Reviewed-by: Bob Beck --- util/fipstools/acvp/acvptool/subprocess/subprocess.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/fipstools/acvp/acvptool/subprocess/subprocess.go b/util/fipstools/acvp/acvptool/subprocess/subprocess.go index d68e5d3bb1..0b8b52768c 100644 --- a/util/fipstools/acvp/acvptool/subprocess/subprocess.go +++ b/util/fipstools/acvp/acvptool/subprocess/subprocess.go @@ -134,7 +134,7 @@ func NewWithIO(cmd *exec.Cmd, in io.WriteCloser, out io.ReadCloser) *Subprocess "HMAC-SHA3-384": &hmacPrimitive{"HMAC-SHA3-384", 48}, "HMAC-SHA3-512": &hmacPrimitive{"HMAC-SHA3-512", 64}, "ctrDRBG": &drbg{"ctrDRBG", map[string]bool{"AES-128": true, "AES-192": true, "AES-256": true}}, - "hmacDRBG": &drbg{"hmacDRBG", map[string]bool{"SHA-1": true, "SHA2-224": true, "SHA2-256": true, "SHA2-384": true, "SHA2-512": true}}, + "hmacDRBG": &drbg{"hmacDRBG", map[string]bool{"SHA-1": true, "SHA2-224": true, "SHA2-256": true, "SHA2-384": true, "SHA2-512": true, "SHA2-512/224": true, "SHA2-512/256": true, "SHA3-224": true, "SHA3-256": true, "SHA3-384": true, "SHA3-512": true}}, "KDF": &kdfPrimitive{}, "KDA": &hkdf{}, "TLS-v1.2": &tlsKDF{}, From e869bfb4141ece8bc180fc4faeeaa07c4e87f53f Mon Sep 17 00:00:00 2001 From: Daniel McCarney Date: Fri, 3 Jan 2025 09:07:30 -0500 Subject: [PATCH 18/64] util/fipstools: adjust KDF-counter command docs This commit adjusts the ACVP.md documentation for the KDF-counter command to match the implementation. Prior to this the kdf struct in subprocess that dispatches KDF-counter command invocations had a few divergences from the docs: * If the test case has the "Deferred" property set to true, then the key argument provided to the wrapper is empty. * The wrapper is expected to output three values: the input key (since for deferred tests it was generated module-side), the fixed counter data, and the derived key. For deferred tests the returned key is written to the response `KeyIn`. For non-deferred tests the returned key is verified to match the one that was sent to the submodule as a command arg. Change-Id: If266383e279d2222f55975aa3376e8fb134899d7 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74727 Commit-Queue: Adam Langley Reviewed-by: Bob Beck Reviewed-by: Adam Langley --- util/fipstools/acvp/ACVP.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/fipstools/acvp/ACVP.md b/util/fipstools/acvp/ACVP.md index 79cf9c8641..9b8f9bc98f 100644 --- a/util/fipstools/acvp/ACVP.md +++ b/util/fipstools/acvp/ACVP.md @@ -94,7 +94,7 @@ The other commands are as follows. (Note that you only need to implement the com | hmacDRBG/<HASH>| Output length, entropy, personalisation, ad1, ad2, nonce | Output | | hmacDRBG-reseed/<HASH>| Output length, entropy, personalisation, reseedAD, reseedEntropy, ad1, ad2, nonce | Output | | hmacDRBG-pr/<HASH>| Output length, entropy, personalisation, ad1, entropy1, ad2, entropy2, nonce | Output | -| KDF-counter | Number output bytes, PRF name, counter location string, key, number of counter bits | Counter, output | +| KDF-counter | Number output bytes, PRF name, counter location string, key (or empty), number of counter bits | key, counter, derived key | | RSA/keyGen | Modulus bit-size | e, p, q, n, d | | RSA/sigGen/<HASH>/pkcs1v1.5 | Modulus bit-size | n, e, signature | | RSA/sigGen/<HASH>/pss | Modulus bit-size | n, e, signature | From 3b6e1be4391d96e81cee022f77f7bab85d51cf4e Mon Sep 17 00:00:00 2001 From: Eric Biggers Date: Tue, 17 Dec 2024 03:54:56 +0000 Subject: [PATCH 19/64] Add VAES + AVX2 optimized AES-GCM Add a VAES-optimized AES-GCM implementation that is optimized for AMD Zen 3 processors, using AVX2 instead of AVX512 / AVX10. With AVX2 only 16 vector registers are available and some instructions are missing, which is inconvenient and makes the code not easily sharable with the AVX512 / AVX10 version. However, using VAES still gives a significant performance improvement, about 80-85% on long messages as shown by the following tables which show the change in AES-256-GCM throughput in MB/s on a Zen 3 "Milan" processor for various message lengths in bytes. Encryption: | 16384 | 4096 | 4095 | 1420 | 512 | 500 | --------+-------+-------+-------+-------+-------+-------+ Before | 3955 | 3749 | 3597 | 3054 | 2411 | 2038 | After | 7128 | 6631 | 5975 | 4788 | 3807 | 2676 | | 300 | 200 | 64 | 63 | 16 | --------+-------+-------+-------+-------+-------+ Before | 1757 | 1405 | 856 | 602 | 356 | After | 1885 | 1430 | 940 | 593 | 381 | Decryption: | 16384 | 4096 | 4095 | 1420 | 512 | 500 | --------+-------+-------+-------+-------+-------+-------+ Before | 3962 | 3774 | 3593 | 2978 | 2510 | 1998 | After | 7378 | 6836 | 6282 | 4826 | 3868 | 2753 | | 300 | 200 | 64 | 63 | 16 | --------+-------+-------+-------+-------+-------+ Before | 1742 | 1428 | 856 | 535 | 383 | After | 1940 | 1534 | 940 | 573 | 383 | Change-Id: I583dd6b48b81ab3c6df51bfe8729366cad500537 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74368 Reviewed-by: David Benjamin Commit-Queue: David Benjamin --- build.json | 1 + crypto/crypto.cc | 2 +- .../modes/asm/aes-gcm-avx2-x86_64.pl | 1027 +++++++++++ crypto/fipsmodule/modes/gcm.cc.inc | 35 +- crypto/fipsmodule/modes/gcm_test.cc | 23 + crypto/fipsmodule/modes/internal.h | 12 + crypto/impl_dispatch_test.cc | 12 +- crypto/internal.h | 3 +- gen/bcm/aes-gcm-avx2-x86_64-apple.S | 1309 ++++++++++++++ gen/bcm/aes-gcm-avx2-x86_64-linux.S | 1314 ++++++++++++++ gen/bcm/aes-gcm-avx2-x86_64-win.asm | 1588 +++++++++++++++++ gen/sources.bzl | 3 + gen/sources.cmake | 3 + gen/sources.gni | 3 + gen/sources.json | 3 + 15 files changed, 5324 insertions(+), 14 deletions(-) create mode 100644 crypto/fipsmodule/modes/asm/aes-gcm-avx2-x86_64.pl create mode 100644 gen/bcm/aes-gcm-avx2-x86_64-apple.S create mode 100644 gen/bcm/aes-gcm-avx2-x86_64-linux.S create mode 100644 gen/bcm/aes-gcm-avx2-x86_64-win.asm diff --git a/build.json b/build.json index 4d3fb4ecef..71489c9dfa 100644 --- a/build.json +++ b/build.json @@ -141,6 +141,7 @@ "perlasm_x86_64": [ {"src": "crypto/fipsmodule/modes/asm/aesni-gcm-x86_64.pl"}, {"src": "crypto/fipsmodule/modes/asm/aes-gcm-avx10-x86_64.pl"}, + {"src": "crypto/fipsmodule/modes/asm/aes-gcm-avx2-x86_64.pl"}, {"src": "crypto/fipsmodule/aes/asm/aesni-x86_64.pl"}, {"src": "crypto/fipsmodule/modes/asm/ghash-ssse3-x86_64.pl"}, {"src": "crypto/fipsmodule/modes/asm/ghash-x86_64.pl"}, diff --git a/crypto/crypto.cc b/crypto/crypto.cc index 912a993c26..ac0928f0eb 100644 --- a/crypto/crypto.cc +++ b/crypto/crypto.cc @@ -54,7 +54,7 @@ static_assert(sizeof(ossl_ssize_t) == sizeof(size_t), // archive, linking on OS X will fail to resolve common symbols. By // initialising it to zero, it becomes a "data symbol", which isn't so // affected. -HIDDEN uint8_t BORINGSSL_function_hit[8] = {0}; +HIDDEN uint8_t BORINGSSL_function_hit[9] = {0}; #endif #if defined(OPENSSL_X86) || defined(OPENSSL_X86_64) diff --git a/crypto/fipsmodule/modes/asm/aes-gcm-avx2-x86_64.pl b/crypto/fipsmodule/modes/asm/aes-gcm-avx2-x86_64.pl new file mode 100644 index 0000000000..6ea956bc8e --- /dev/null +++ b/crypto/fipsmodule/modes/asm/aes-gcm-avx2-x86_64.pl @@ -0,0 +1,1027 @@ +#!/usr/bin/env perl +# Copyright 2024 The BoringSSL Authors +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +# +#------------------------------------------------------------------------------ +# +# VAES and VPCLMULQDQ optimized AES-GCM for x86_64 (AVX2 version) +# +# This is similar to aes-gcm-avx10-x86_64.pl, but it uses AVX2 instead of AVX512 +# / AVX10. This means it can only use 16 vector registers instead of 32, the +# maximum vector length is 32 bytes, and some instructions such as vpternlogd +# and masked loads/stores are unavailable. However, it is able to run on CPUs +# that have VAES without AVX512 / AVX10, namely AMD Zen 3 (including "Milan" +# server processors) and some Intel client CPUs such as Alder Lake. +# +# This implementation also uses Karatsuba multiplication instead of schoolbook +# multiplication for GHASH in its main loop. This does not help much on Intel, +# but it improves performance by ~5% on AMD Zen 3 which is the main target for +# this implementation. Other factors weighing slightly in favor of Karatsuba +# multiplication in this implementation are the lower maximum vector length +# (which means there is space left in the Htable array to cache the halves of +# the key powers XOR'd together) and the unavailability of the vpternlogd +# instruction (which helped schoolbook a bit more than Karatsuba). + +use strict; + +my $flavour = shift; +my $output = shift; +if ( $flavour =~ /\./ ) { $output = $flavour; undef $flavour; } + +my $win64; +my @argregs; +if ( $flavour =~ /[nm]asm|mingw64/ || $output =~ /\.asm$/ ) { + $win64 = 1; + @argregs = ( "%rcx", "%rdx", "%r8", "%r9" ); +} +else { + $win64 = 0; + @argregs = ( "%rdi", "%rsi", "%rdx", "%rcx", "%r8", "%r9" ); +} + +$0 =~ m/(.*[\/\\])[^\/\\]+$/; +my $dir = $1; +my $xlate; +( $xlate = "${dir}x86_64-xlate.pl" and -f $xlate ) + or ( $xlate = "${dir}../../../perlasm/x86_64-xlate.pl" and -f $xlate ) + or die "can't locate x86_64-xlate.pl"; + +open OUT, "| \"$^X\" \"$xlate\" $flavour \"$output\""; +*STDOUT = *OUT; + +my $g_cur_func_name; +my $g_cur_func_uses_seh; +my @g_cur_func_saved_gpregs; +my @g_cur_func_saved_xmmregs; + +sub _begin_func { + my ( $funcname, $uses_seh ) = @_; + $g_cur_func_name = $funcname; + $g_cur_func_uses_seh = $uses_seh; + @g_cur_func_saved_gpregs = (); + @g_cur_func_saved_xmmregs = (); + return <<___; +.globl $funcname +.type $funcname,\@abi-omnipotent +.align 32 +$funcname: + .cfi_startproc + @{[ $uses_seh ? ".seh_startproc" : "" ]} + _CET_ENDBR +___ +} + +# Push a list of general purpose registers onto the stack. +sub _save_gpregs { + my @gpregs = @_; + my $code = ""; + die "_save_gpregs requires uses_seh" unless $g_cur_func_uses_seh; + die "_save_gpregs can only be called once per function" + if @g_cur_func_saved_gpregs; + die "Order must be _save_gpregs, then _save_xmmregs" + if @g_cur_func_saved_xmmregs; + @g_cur_func_saved_gpregs = @gpregs; + for my $reg (@gpregs) { + $code .= "push $reg\n"; + if ($win64) { + $code .= ".seh_pushreg $reg\n"; + } + else { + $code .= ".cfi_push $reg\n"; + } + } + return $code; +} + +# Push a list of xmm registers onto the stack if the target is Windows. +sub _save_xmmregs { + my @xmmregs = @_; + my $num_xmmregs = scalar @xmmregs; + my $code = ""; + die "_save_xmmregs requires uses_seh" unless $g_cur_func_uses_seh; + die "_save_xmmregs can only be called once per function" + if @g_cur_func_saved_xmmregs; + if ( $win64 and $num_xmmregs > 0 ) { + @g_cur_func_saved_xmmregs = @xmmregs; + my $is_misaligned = ( scalar @g_cur_func_saved_gpregs ) % 2 == 0; + my $alloc_size = 16 * $num_xmmregs + ( $is_misaligned ? 8 : 0 ); + $code .= "sub \$$alloc_size, %rsp\n"; + $code .= ".seh_stackalloc $alloc_size\n"; + for my $i ( 0 .. $num_xmmregs - 1 ) { + my $reg_num = $xmmregs[$i]; + my $pos = 16 * $i; + $code .= "movdqa %xmm$reg_num, $pos(%rsp)\n"; + $code .= ".seh_savexmm %xmm$reg_num, $pos\n"; + } + } + return $code; +} + +sub _end_func { + my $code = ""; + + # Restore any xmm registers that were saved earlier. + my $num_xmmregs = scalar @g_cur_func_saved_xmmregs; + if ( $win64 and $num_xmmregs > 0 ) { + my $need_alignment = ( scalar @g_cur_func_saved_gpregs ) % 2 == 0; + my $alloc_size = 16 * $num_xmmregs + ( $need_alignment ? 8 : 0 ); + for my $i ( 0 .. $num_xmmregs - 1 ) { + my $reg_num = $g_cur_func_saved_xmmregs[$i]; + my $pos = 16 * $i; + $code .= "movdqa $pos(%rsp), %xmm$reg_num\n"; + } + $code .= "add \$$alloc_size, %rsp\n"; + } + + # Restore any general purpose registers that were saved earlier. + for my $reg ( reverse @g_cur_func_saved_gpregs ) { + $code .= "pop $reg\n"; + if ( !$win64 ) { + $code .= ".cfi_pop $reg\n"; + } + } + + $code .= <<___; + ret + @{[ $g_cur_func_uses_seh ? ".seh_endproc" : "" ]} + .cfi_endproc + .size $g_cur_func_name, . - $g_cur_func_name +___ + return $code; +} + +my $code = <<___; +.section .rodata +.align 16 + + # A shuffle mask that reflects the bytes of 16-byte blocks +.Lbswap_mask: + .quad 0x08090a0b0c0d0e0f, 0x0001020304050607 + + # This is the GHASH reducing polynomial without its constant term, i.e. + # x^128 + x^7 + x^2 + x, represented using the backwards mapping + # between bits and polynomial coefficients. + # + # Alternatively, it can be interpreted as the naturally-ordered + # representation of the polynomial x^127 + x^126 + x^121 + 1, i.e. the + # "reversed" GHASH reducing polynomial without its x^128 term. +.Lgfpoly: + .quad 1, 0xc200000000000000 + + # Same as above, but with the (1 << 64) bit set. +.Lgfpoly_and_internal_carrybit: + .quad 1, 0xc200000000000001 + +.align 32 + # The below constants are used for incrementing the counter blocks. +.Lctr_pattern: + .quad 0, 0 + .quad 1, 0 +.Linc_2blocks: + .quad 2, 0 + .quad 2, 0 + +.text +___ + +# We use Htable[0..7] to store H^8 through H^1, and Htable[8..11] to store the +# 64-bit halves of the key powers XOR'd together (for Karatsuba multiplication) +# in the order 8,6,7,5,4,2,3,1. We do not use Htable[12..15]. +my $NUM_H_POWERS = 8; +my $OFFSETOFEND_H_POWERS = $NUM_H_POWERS * 16; +my $OFFSETOF_H_POWERS_XORED = $OFFSETOFEND_H_POWERS; + +# Offset to 'rounds' in AES_KEY struct +my $OFFSETOF_AES_ROUNDS = 240; + +# GHASH-multiply the 128-bit lanes of \a by the 128-bit lanes of \b and store +# the reduced products in \dst. Uses schoolbook multiplication. +sub _ghash_mul { + my ( $a, $b, $dst, $gfpoly, $t0, $t1, $t2 ) = @_; + return <<___; + vpclmulqdq \$0x00, $a, $b, $t0 # LO = a_L * b_L + vpclmulqdq \$0x01, $a, $b, $t1 # MI_0 = a_L * b_H + vpclmulqdq \$0x10, $a, $b, $t2 # MI_1 = a_H * b_L + vpxor $t2, $t1, $t1 # MI = MI_0 + MI_1 + vpclmulqdq \$0x01, $t0, $gfpoly, $t2 # LO_L*(x^63 + x^62 + x^57) + vpshufd \$0x4e, $t0, $t0 # Swap halves of LO + vpxor $t0, $t1, $t1 # Fold LO into MI (part 1) + vpxor $t2, $t1, $t1 # Fold LO into MI (part 2) + vpclmulqdq \$0x11, $a, $b, $dst # HI = a_H * b_H + vpclmulqdq \$0x01, $t1, $gfpoly, $t0 # MI_L*(x^63 + x^62 + x^57) + vpshufd \$0x4e, $t1, $t1 # Swap halves of MI + vpxor $t1, $dst, $dst # Fold MI into HI (part 1) + vpxor $t0, $dst, $dst # Fold MI into HI (part 2) +___ +} + +# void gcm_init_vpclmulqdq_avx2(u128 Htable[16], const uint64_t H[2]); +# +# Initialize |Htable| with powers of the GHASH subkey |H|. +# +# We use Htable[0..7] to store H^8 through H^1, and Htable[8..11] to store the +# 64-bit halves of the key powers XOR'd together (for Karatsuba multiplication) +# in the order 8,6,7,5,4,2,3,1. We do not use Htable[12..15]. +$code .= _begin_func "gcm_init_vpclmulqdq_avx2", 1; +{ + my ( $HTABLE, $H_PTR ) = @argregs[ 0 .. 1 ]; + my ( $TMP0, $TMP0_XMM ) = ( "%ymm0", "%xmm0" ); + my ( $TMP1, $TMP1_XMM ) = ( "%ymm1", "%xmm1" ); + my ( $TMP2, $TMP2_XMM ) = ( "%ymm2", "%xmm2" ); + my ( $H_CUR, $H_CUR_XMM ) = ( "%ymm3", "%xmm3" ); + my ( $H_CUR2, $H_CUR2_XMM ) = ( "%ymm4", "%xmm4" ); + my ( $H_INC, $H_INC_XMM ) = ( "%ymm5", "%xmm5" ); + my ( $GFPOLY, $GFPOLY_XMM ) = ( "%ymm6", "%xmm6" ); + + $code .= <<___; + @{[ _save_xmmregs (6) ]} + .seh_endprologue + + # Load the byte-reflected hash subkey. BoringSSL provides it in + # byte-reflected form except the two halves are in the wrong order. + vpshufd \$0x4e, ($H_PTR), $H_CUR_XMM + + # Finish preprocessing the byte-reflected hash subkey by multiplying it by + # x^-1 ("standard" interpretation of polynomial coefficients) or + # equivalently x^1 (natural interpretation). This gets the key into a + # format that avoids having to bit-reflect the data blocks later. + vpshufd \$0xd3, $H_CUR_XMM, $TMP0_XMM + vpsrad \$31, $TMP0_XMM, $TMP0_XMM + vpaddq $H_CUR_XMM, $H_CUR_XMM, $H_CUR_XMM + vpand .Lgfpoly_and_internal_carrybit(%rip), $TMP0_XMM, $TMP0_XMM + vpxor $TMP0_XMM, $H_CUR_XMM, $H_CUR_XMM + + vbroadcasti128 .Lgfpoly(%rip), $GFPOLY + + # Square H^1 to get H^2. + @{[ _ghash_mul $H_CUR_XMM, $H_CUR_XMM, $H_INC_XMM, $GFPOLY_XMM, + $TMP0_XMM, $TMP1_XMM, $TMP2_XMM ]} + + # Create H_CUR = [H^2, H^1] and H_INC = [H^2, H^2]. + vinserti128 \$1, $H_CUR_XMM, $H_INC, $H_CUR + vinserti128 \$1, $H_INC_XMM, $H_INC, $H_INC + + # Compute H_CUR2 = [H^4, H^3]. + @{[ _ghash_mul $H_INC, $H_CUR, $H_CUR2, $GFPOLY, $TMP0, $TMP1, $TMP2 ]} + + # Store [H^2, H^1] and [H^4, H^3]. + vmovdqu $H_CUR, 3*32($HTABLE) + vmovdqu $H_CUR2, 2*32($HTABLE) + + # For Karatsuba multiplication: compute and store the two 64-bit halves of + # each key power XOR'd together. Order is 4,2,3,1. + vpunpcklqdq $H_CUR, $H_CUR2, $TMP0 + vpunpckhqdq $H_CUR, $H_CUR2, $TMP1 + vpxor $TMP1, $TMP0, $TMP0 + vmovdqu $TMP0, $OFFSETOF_H_POWERS_XORED+32($HTABLE) + + # Compute and store H_CUR = [H^6, H^5] and H_CUR2 = [H^8, H^7]. + @{[ _ghash_mul $H_INC, $H_CUR2, $H_CUR, $GFPOLY, $TMP0, $TMP1, $TMP2 ]} + @{[ _ghash_mul $H_INC, $H_CUR, $H_CUR2, $GFPOLY, $TMP0, $TMP1, $TMP2 ]} + vmovdqu $H_CUR, 1*32($HTABLE) + vmovdqu $H_CUR2, 0*32($HTABLE) + + # Again, compute and store the two 64-bit halves of each key power XOR'd + # together. Order is 8,6,7,5. + vpunpcklqdq $H_CUR, $H_CUR2, $TMP0 + vpunpckhqdq $H_CUR, $H_CUR2, $TMP1 + vpxor $TMP1, $TMP0, $TMP0 + vmovdqu $TMP0, $OFFSETOF_H_POWERS_XORED($HTABLE) + + vzeroupper +___ +} +$code .= _end_func; + +# Do one step of the GHASH update of four vectors of data blocks. +# $i: the step to do, 0 through 9 +# $ghashdata_ptr: pointer to the data blocks (ciphertext or AAD) +# $htable: pointer to the Htable for the key +# $bswap_mask: mask for reflecting the bytes of blocks +# $h_pow[2-1]_xored: XOR'd key powers cached from Htable +# $tmp[0-2]: temporary registers. $tmp[1-2] must be preserved across steps. +# $lo, $mi: working state for this macro that must be preserved across steps +# $ghash_acc: the GHASH accumulator (input/output) +sub _ghash_step_4x { + my ( + $i, $ghashdata_ptr, $htable, $bswap_mask, + $h_pow2_xored, $h_pow1_xored, $tmp0, $tmp0_xmm, + $tmp1, $tmp2, $lo, $mi, + $ghash_acc, $ghash_acc_xmm + ) = @_; + my ( $hi, $hi_xmm ) = ( $ghash_acc, $ghash_acc_xmm ); # alias + if ( $i == 0 ) { + return <<___; + # First vector + vmovdqu 0*32($ghashdata_ptr), $tmp1 + vpshufb $bswap_mask, $tmp1, $tmp1 + vmovdqu 0*32($htable), $tmp2 + vpxor $ghash_acc, $tmp1, $tmp1 + vpclmulqdq \$0x00, $tmp2, $tmp1, $lo + vpclmulqdq \$0x11, $tmp2, $tmp1, $hi + vpunpckhqdq $tmp1, $tmp1, $tmp0 + vpxor $tmp1, $tmp0, $tmp0 + vpclmulqdq \$0x00, $h_pow2_xored, $tmp0, $mi +___ + } + elsif ( $i == 1 ) { + return <<___; +___ + } + elsif ( $i == 2 ) { + return <<___; + # Second vector + vmovdqu 1*32($ghashdata_ptr), $tmp1 + vpshufb $bswap_mask, $tmp1, $tmp1 + vmovdqu 1*32($htable), $tmp2 + vpclmulqdq \$0x00, $tmp2, $tmp1, $tmp0 + vpxor $tmp0, $lo, $lo + vpclmulqdq \$0x11, $tmp2, $tmp1, $tmp0 + vpxor $tmp0, $hi, $hi + vpunpckhqdq $tmp1, $tmp1, $tmp0 + vpxor $tmp1, $tmp0, $tmp0 + vpclmulqdq \$0x10, $h_pow2_xored, $tmp0, $tmp0 + vpxor $tmp0, $mi, $mi +___ + } + elsif ( $i == 3 ) { + return <<___; + # Third vector + vmovdqu 2*32($ghashdata_ptr), $tmp1 + vpshufb $bswap_mask, $tmp1, $tmp1 + vmovdqu 2*32($htable), $tmp2 +___ + } + elsif ( $i == 4 ) { + return <<___; + vpclmulqdq \$0x00, $tmp2, $tmp1, $tmp0 + vpxor $tmp0, $lo, $lo + vpclmulqdq \$0x11, $tmp2, $tmp1, $tmp0 + vpxor $tmp0, $hi, $hi +___ + } + elsif ( $i == 5 ) { + return <<___; + vpunpckhqdq $tmp1, $tmp1, $tmp0 + vpxor $tmp1, $tmp0, $tmp0 + vpclmulqdq \$0x00, $h_pow1_xored, $tmp0, $tmp0 + vpxor $tmp0, $mi, $mi + + # Fourth vector + vmovdqu 3*32($ghashdata_ptr), $tmp1 + vpshufb $bswap_mask, $tmp1, $tmp1 +___ + } + elsif ( $i == 6 ) { + return <<___; + vmovdqu 3*32($htable), $tmp2 + vpclmulqdq \$0x00, $tmp2, $tmp1, $tmp0 + vpxor $tmp0, $lo, $lo + vpclmulqdq \$0x11, $tmp2, $tmp1, $tmp0 + vpxor $tmp0, $hi, $hi + vpunpckhqdq $tmp1, $tmp1, $tmp0 + vpxor $tmp1, $tmp0, $tmp0 + vpclmulqdq \$0x10, $h_pow1_xored, $tmp0, $tmp0 + vpxor $tmp0, $mi, $mi +___ + } + elsif ( $i == 7 ) { + return <<___; + # Finalize 'mi' following Karatsuba multiplication. + vpxor $lo, $mi, $mi + vpxor $hi, $mi, $mi + + # Fold lo into mi. + vbroadcasti128 .Lgfpoly(%rip), $tmp2 + vpclmulqdq \$0x01, $lo, $tmp2, $tmp0 + vpshufd \$0x4e, $lo, $lo + vpxor $lo, $mi, $mi + vpxor $tmp0, $mi, $mi +___ + } + elsif ( $i == 8 ) { + return <<___; + # Fold mi into hi. + vpclmulqdq \$0x01, $mi, $tmp2, $tmp0 + vpshufd \$0x4e, $mi, $mi + vpxor $mi, $hi, $hi + vpxor $tmp0, $hi, $hi +___ + } + elsif ( $i == 9 ) { + return <<___; + vextracti128 \$1, $hi, $tmp0_xmm + vpxor $tmp0_xmm, $hi_xmm, $ghash_acc_xmm +___ + } +} + +sub _ghash_4x { + my $code = ""; + for my $i ( 0 .. 9 ) { + $code .= _ghash_step_4x $i, @_; + } + return $code; +} + +# void gcm_gmult_vpclmulqdq_avx2(uint8_t Xi[16], const u128 Htable[16]); +$code .= _begin_func "gcm_gmult_vpclmulqdq_avx2", 1; +{ + my ( $GHASH_ACC_PTR, $HTABLE ) = @argregs[ 0 .. 1 ]; + my ( $GHASH_ACC, $BSWAP_MASK, $H_POW1, $GFPOLY, $T0, $T1, $T2 ) = + map( "%xmm$_", ( 0 .. 6 ) ); + + $code .= <<___; + @{[ _save_xmmregs (6) ]} + .seh_endprologue + + vmovdqu ($GHASH_ACC_PTR), $GHASH_ACC + vmovdqu .Lbswap_mask(%rip), $BSWAP_MASK + vmovdqu $OFFSETOFEND_H_POWERS-16($HTABLE), $H_POW1 + vmovdqu .Lgfpoly(%rip), $GFPOLY + vpshufb $BSWAP_MASK, $GHASH_ACC, $GHASH_ACC + + @{[ _ghash_mul $H_POW1, $GHASH_ACC, $GHASH_ACC, $GFPOLY, $T0, $T1, $T2 ]} + + vpshufb $BSWAP_MASK, $GHASH_ACC, $GHASH_ACC + vmovdqu $GHASH_ACC, ($GHASH_ACC_PTR) +___ +} +$code .= _end_func; + +# void gcm_ghash_vpclmulqdq_avx2(uint8_t Xi[16], const u128 Htable[16], +# const uint8_t *in, size_t len); +# +# Using the key |Htable|, update the GHASH accumulator |Xi| with the data given +# by |in| and |len|. |len| must be a multiple of 16. +# +# This function handles large amounts of AAD efficiently, while also keeping the +# overhead low for small amounts of AAD which is the common case. TLS uses less +# than one block of AAD, but (uncommonly) other use cases may use much more. +$code .= _begin_func "gcm_ghash_vpclmulqdq_avx2", 1; +{ + # Function arguments + my ( $GHASH_ACC_PTR, $HTABLE, $AAD, $AADLEN ) = @argregs[ 0 .. 3 ]; + + # Additional local variables + my ( $TMP0, $TMP0_XMM ) = ( "%ymm0", "%xmm0" ); + my ( $TMP1, $TMP1_XMM ) = ( "%ymm1", "%xmm1" ); + my ( $TMP2, $TMP2_XMM ) = ( "%ymm2", "%xmm2" ); + my ( $LO, $LO_XMM ) = ( "%ymm3", "%xmm3" ); + my ( $MI, $MI_XMM ) = ( "%ymm4", "%xmm4" ); + my ( $GHASH_ACC, $GHASH_ACC_XMM ) = ( "%ymm5", "%xmm5" ); + my ( $BSWAP_MASK, $BSWAP_MASK_XMM ) = ( "%ymm6", "%xmm6" ); + my ( $GFPOLY, $GFPOLY_XMM ) = ( "%ymm7", "%xmm7" ); + my $H_POW2_XORED = "%ymm8"; + my $H_POW1_XORED = "%ymm9"; + + $code .= <<___; + @{[ _save_xmmregs (6 .. 9) ]} + .seh_endprologue + + vbroadcasti128 .Lbswap_mask(%rip), $BSWAP_MASK + vmovdqu ($GHASH_ACC_PTR), $GHASH_ACC_XMM + vpshufb $BSWAP_MASK_XMM, $GHASH_ACC_XMM, $GHASH_ACC_XMM + vbroadcasti128 .Lgfpoly(%rip), $GFPOLY + + # Optimize for AADLEN < 32 by checking for AADLEN < 32 before AADLEN < 128. + cmp \$32, $AADLEN + jb .Lghash_lastblock + + cmp \$127, $AADLEN + jbe .Lghash_loop_1x + + # Update GHASH with 128 bytes of AAD at a time. + vmovdqu $OFFSETOF_H_POWERS_XORED($HTABLE), $H_POW2_XORED + vmovdqu $OFFSETOF_H_POWERS_XORED+32($HTABLE), $H_POW1_XORED +.Lghash_loop_4x: + @{[ _ghash_4x $AAD, $HTABLE, $BSWAP_MASK, $H_POW2_XORED, $H_POW1_XORED, + $TMP0, $TMP0_XMM, $TMP1, $TMP2, $LO, $MI, $GHASH_ACC, + $GHASH_ACC_XMM ]} + sub \$-128, $AAD # 128 is 4 bytes, -128 is 1 byte + add \$-128, $AADLEN + cmp \$127, $AADLEN + ja .Lghash_loop_4x + + # Update GHASH with 32 bytes of AAD at a time. + cmp \$32, $AADLEN + jb .Lghash_loop_1x_done +.Lghash_loop_1x: + vmovdqu ($AAD), $TMP0 + vpshufb $BSWAP_MASK, $TMP0, $TMP0 + vpxor $TMP0, $GHASH_ACC, $GHASH_ACC + vmovdqu $OFFSETOFEND_H_POWERS-32($HTABLE), $TMP0 + @{[ _ghash_mul $TMP0, $GHASH_ACC, $GHASH_ACC, $GFPOLY, $TMP1, $TMP2, $LO ]} + vextracti128 \$1, $GHASH_ACC, $TMP0_XMM + vpxor $TMP0_XMM, $GHASH_ACC_XMM, $GHASH_ACC_XMM + add \$32, $AAD + sub \$32, $AADLEN + cmp \$32, $AADLEN + jae .Lghash_loop_1x +.Lghash_loop_1x_done: + # Issue the vzeroupper that is needed after using ymm registers. Do it here + # instead of at the end, to minimize overhead for small AADLEN. + vzeroupper + + # Update GHASH with the remaining 16-byte block if any. +.Lghash_lastblock: + test $AADLEN, $AADLEN + jz .Lghash_done + vmovdqu ($AAD), $TMP0_XMM + vpshufb $BSWAP_MASK_XMM, $TMP0_XMM, $TMP0_XMM + vpxor $TMP0_XMM, $GHASH_ACC_XMM, $GHASH_ACC_XMM + vmovdqu $OFFSETOFEND_H_POWERS-16($HTABLE), $TMP0_XMM + @{[ _ghash_mul $TMP0_XMM, $GHASH_ACC_XMM, $GHASH_ACC_XMM, $GFPOLY_XMM, + $TMP1_XMM, $TMP2_XMM, $LO_XMM ]} + +.Lghash_done: + # Store the updated GHASH accumulator back to memory. + vpshufb $BSWAP_MASK_XMM, $GHASH_ACC_XMM, $GHASH_ACC_XMM + vmovdqu $GHASH_ACC_XMM, ($GHASH_ACC_PTR) +___ +} +$code .= _end_func; + +sub _vaesenc_4x { + my ( $round_key, $aesdata0, $aesdata1, $aesdata2, $aesdata3 ) = @_; + return <<___; + vaesenc $round_key, $aesdata0, $aesdata0 + vaesenc $round_key, $aesdata1, $aesdata1 + vaesenc $round_key, $aesdata2, $aesdata2 + vaesenc $round_key, $aesdata3, $aesdata3 +___ +} + +sub _ctr_begin_4x { + my ( + $le_ctr, $bswap_mask, $rndkey0, $aesdata0, + $aesdata1, $aesdata2, $aesdata3, $tmp + ) = @_; + return <<___; + # Increment le_ctr four times to generate four vectors of little-endian + # counter blocks, swap each to big-endian, and store them in aesdata[0-3]. + vmovdqu .Linc_2blocks(%rip), $tmp + vpshufb $bswap_mask, $le_ctr, $aesdata0 + vpaddd $tmp, $le_ctr, $le_ctr + vpshufb $bswap_mask, $le_ctr, $aesdata1 + vpaddd $tmp, $le_ctr, $le_ctr + vpshufb $bswap_mask, $le_ctr, $aesdata2 + vpaddd $tmp, $le_ctr, $le_ctr + vpshufb $bswap_mask, $le_ctr, $aesdata3 + vpaddd $tmp, $le_ctr, $le_ctr + + # AES "round zero": XOR in the zero-th round key. + vpxor $rndkey0, $aesdata0, $aesdata0 + vpxor $rndkey0, $aesdata1, $aesdata1 + vpxor $rndkey0, $aesdata2, $aesdata2 + vpxor $rndkey0, $aesdata3, $aesdata3 +___ +} + +# Do the last AES round for four vectors of counter blocks, XOR four vectors of +# source data with the resulting keystream blocks, and write the result to the +# destination buffer. The implementation differs slightly as it takes advantage +# of the property vaesenclast(key, a) ^ b == vaesenclast(key ^ b, a) to reduce +# latency, but it has the same effect. +sub _aesenclast_and_xor_4x { + my ( + $src, $dst, $rndkeylast, $aesdata0, + $aesdata1, $aesdata2, $aesdata3, $t0, + $t1, $t2, $t3 + ) = @_; + return <<___; + vpxor 0*32($src), $rndkeylast, $t0 + vpxor 1*32($src), $rndkeylast, $t1 + vpxor 2*32($src), $rndkeylast, $t2 + vpxor 3*32($src), $rndkeylast, $t3 + vaesenclast $t0, $aesdata0, $aesdata0 + vaesenclast $t1, $aesdata1, $aesdata1 + vaesenclast $t2, $aesdata2, $aesdata2 + vaesenclast $t3, $aesdata3, $aesdata3 + vmovdqu $aesdata0, 0*32($dst) + vmovdqu $aesdata1, 1*32($dst) + vmovdqu $aesdata2, 2*32($dst) + vmovdqu $aesdata3, 3*32($dst) +___ +} + +my $g_update_macro_expansion_count = 0; + +# void aes_gcm_{enc,dec}_update_vaes_avx2(const uint8_t *in, uint8_t *out, +# size_t len, const AES_KEY *key, +# const uint8_t ivec[16], +# const u128 Htable[16], +# uint8_t Xi[16]); +# +# This macro generates a GCM encryption or decryption update function with the +# above prototype (with \enc selecting which one). The function computes the +# next portion of the CTR keystream, XOR's it with |len| bytes from |in|, and +# writes the resulting encrypted or decrypted data to |out|. It also updates +# the GHASH accumulator |Xi| using the next |len| ciphertext bytes. +# +# |len| must be a multiple of 16. The caller must do any buffering needed to +# ensure this. Both in-place and out-of-place en/decryption are supported. +# +# |ivec| must give the current counter in big-endian format. This function +# loads the counter from |ivec| and increments the loaded counter as needed, but +# it does *not* store the updated counter back to |ivec|. The caller must +# update |ivec| if any more data segments follow. Internally, only the low +# 32-bit word of the counter is incremented, following the GCM standard. +sub _aes_gcm_update { + my $local_label_suffix = "__func" . ++$g_update_macro_expansion_count; + my ($enc) = @_; + my $code = ""; + + # Function arguments + my ( $SRC, $DST, $DATALEN, $AESKEY, $BE_CTR_PTR, $HTABLE, $GHASH_ACC_PTR ) + = $win64 + ? ( @argregs[ 0 .. 3 ], "%rsi", "%rdi", "%r12" ) + : ( @argregs[ 0 .. 5 ], "%r12" ); + + # Additional local variables. + # %rax is used as a temporary register. BE_CTR_PTR is also available as a + # temporary register after the counter is loaded. + + # AES key length in bytes + my ( $AESKEYLEN, $AESKEYLEN64 ) = ( "%r10d", "%r10" ); + + # Pointer to the last AES round key for the chosen AES variant + my $RNDKEYLAST_PTR = "%r11"; + + # BSWAP_MASK is the shuffle mask for byte-reflecting 128-bit values + # using vpshufb, copied to all 128-bit lanes. + my ( $BSWAP_MASK, $BSWAP_MASK_XMM ) = ( "%ymm0", "%xmm0" ); + + # GHASH_ACC is the accumulator variable for GHASH. When fully reduced, + # only the lowest 128-bit lane can be nonzero. When not fully reduced, + # more than one lane may be used, and they need to be XOR'd together. + my ( $GHASH_ACC, $GHASH_ACC_XMM ) = ( "%ymm1", "%xmm1" ); + + # TMP[0-2] are temporary registers. + my ( $TMP0, $TMP0_XMM ) = ( "%ymm2", "%xmm2" ); + my ( $TMP1, $TMP1_XMM ) = ( "%ymm3", "%xmm3" ); + my ( $TMP2, $TMP2_XMM ) = ( "%ymm4", "%xmm4" ); + + # LO and MI are used to accumulate unreduced GHASH products. + my ( $LO, $LO_XMM ) = ( "%ymm5", "%xmm5" ); + my ( $MI, $MI_XMM ) = ( "%ymm6", "%xmm6" ); + + # Cached key powers from Htable + my ( $H_POW2_XORED, $H_POW2_XORED_XMM ) = ( "%ymm7", "%xmm7" ); + my ( $H_POW1_XORED, $H_POW1_XORED_XMM ) = ( "%ymm8", "%xmm8" ); + + # RNDKEY0 caches the zero-th round key, and RNDKEYLAST the last one. + my $RNDKEY0 = "%ymm9"; + my $RNDKEYLAST = "%ymm10"; + + # LE_CTR contains the next set of little-endian counter blocks. + my $LE_CTR = "%ymm11"; + + # AESDATA[0-3] hold the counter blocks that are being encrypted by AES. + my ( $AESDATA0, $AESDATA0_XMM ) = ( "%ymm12", "%xmm12" ); + my ( $AESDATA1, $AESDATA1_XMM ) = ( "%ymm13", "%xmm13" ); + my ( $AESDATA2, $AESDATA2_XMM ) = ( "%ymm14", "%xmm14" ); + my ( $AESDATA3, $AESDATA3_XMM ) = ( "%ymm15", "%xmm15" ); + my @AESDATA = ( $AESDATA0, $AESDATA1, $AESDATA2, $AESDATA3 ); + + my @ghash_4x_args = ( + $enc ? $DST : $SRC, $HTABLE, $BSWAP_MASK, $H_POW2_XORED, + $H_POW1_XORED, $TMP0, $TMP0_XMM, $TMP1, + $TMP2, $LO, $MI, $GHASH_ACC, + $GHASH_ACC_XMM + ); + + if ($win64) { + $code .= <<___; + @{[ _save_gpregs $BE_CTR_PTR, $HTABLE, $GHASH_ACC_PTR ]} + mov 64(%rsp), $BE_CTR_PTR # arg5 + mov 72(%rsp), $HTABLE # arg6 + mov 80(%rsp), $GHASH_ACC_PTR # arg7 + @{[ _save_xmmregs (6 .. 15) ]} + .seh_endprologue +___ + } + else { + $code .= <<___; + @{[ _save_gpregs $GHASH_ACC_PTR ]} + mov 16(%rsp), $GHASH_ACC_PTR # arg7 +___ + } + + if ($enc) { + $code .= <<___; +#ifdef BORINGSSL_DISPATCH_TEST + .extern BORINGSSL_function_hit + movb \$1,BORINGSSL_function_hit+8(%rip) +#endif +___ + } + $code .= <<___; + vbroadcasti128 .Lbswap_mask(%rip), $BSWAP_MASK + + # Load the GHASH accumulator and the starting counter. + # BoringSSL passes these values in big endian format. + vmovdqu ($GHASH_ACC_PTR), $GHASH_ACC_XMM + vpshufb $BSWAP_MASK_XMM, $GHASH_ACC_XMM, $GHASH_ACC_XMM + vbroadcasti128 ($BE_CTR_PTR), $LE_CTR + vpshufb $BSWAP_MASK, $LE_CTR, $LE_CTR + + # Load the AES key length in bytes. BoringSSL stores number of rounds + # minus 1, so convert using: AESKEYLEN = 4 * aeskey->rounds - 20. + movl $OFFSETOF_AES_ROUNDS($AESKEY), $AESKEYLEN + lea -20(,$AESKEYLEN,4), $AESKEYLEN + + # Make RNDKEYLAST_PTR point to the last AES round key. This is the + # round key with index 10, 12, or 14 for AES-128, AES-192, or AES-256 + # respectively. Then load the zero-th and last round keys. + lea 6*16($AESKEY,$AESKEYLEN64,4), $RNDKEYLAST_PTR + vbroadcasti128 ($AESKEY), $RNDKEY0 + vbroadcasti128 ($RNDKEYLAST_PTR), $RNDKEYLAST + + # Finish initializing LE_CTR by adding 1 to the second block. + vpaddd .Lctr_pattern(%rip), $LE_CTR, $LE_CTR + + # If there are at least 128 bytes of data, then continue into the loop that + # processes 128 bytes of data at a time. Otherwise skip it. + cmp \$127, $DATALEN + jbe .Lcrypt_loop_4x_done$local_label_suffix + + vmovdqu $OFFSETOF_H_POWERS_XORED($HTABLE), $H_POW2_XORED + vmovdqu $OFFSETOF_H_POWERS_XORED+32($HTABLE), $H_POW1_XORED +___ + + # Main loop: en/decrypt and hash 4 vectors (128 bytes) at a time. + + if ($enc) { + $code .= <<___; + # Encrypt the first 4 vectors of plaintext blocks. + @{[ _ctr_begin_4x $LE_CTR, $BSWAP_MASK, $RNDKEY0, @AESDATA, $TMP0 ]} + lea 16($AESKEY), %rax +.Lvaesenc_loop_first_4_vecs$local_label_suffix: + vbroadcasti128 (%rax), $TMP0 + @{[ _vaesenc_4x $TMP0, @AESDATA ]} + add \$16, %rax + cmp %rax, $RNDKEYLAST_PTR + jne .Lvaesenc_loop_first_4_vecs$local_label_suffix + @{[ _aesenclast_and_xor_4x $SRC, $DST, $RNDKEYLAST, @AESDATA, + $TMP0, $TMP1, $LO, $MI ]} + sub \$-128, $SRC # 128 is 4 bytes, -128 is 1 byte + add \$-128, $DATALEN + cmp \$127, $DATALEN + jbe .Lghash_last_ciphertext_4x$local_label_suffix +___ + } + + $code .= <<___; +.align 16 +.Lcrypt_loop_4x$local_label_suffix: + + # Start the AES encryption of the counter blocks. + @{[ _ctr_begin_4x $LE_CTR, $BSWAP_MASK, $RNDKEY0, @AESDATA, $TMP0 ]} + cmp \$24, $AESKEYLEN + jl .Laes128$local_label_suffix + je .Laes192$local_label_suffix + # AES-256 + vbroadcasti128 -13*16($RNDKEYLAST_PTR), $TMP0 + @{[ _vaesenc_4x $TMP0, @AESDATA ]} + vbroadcasti128 -12*16($RNDKEYLAST_PTR), $TMP0 + @{[ _vaesenc_4x $TMP0, @AESDATA ]} +.Laes192$local_label_suffix: + vbroadcasti128 -11*16($RNDKEYLAST_PTR), $TMP0 + @{[ _vaesenc_4x $TMP0, @AESDATA ]} + vbroadcasti128 -10*16($RNDKEYLAST_PTR), $TMP0 + @{[ _vaesenc_4x $TMP0, @AESDATA ]} +.Laes128$local_label_suffix: +___ + + # Finish the AES encryption of the counter blocks in AESDATA[0-3], + # interleaved with the GHASH update of the ciphertext blocks. + for my $i ( reverse 1 .. 9 ) { + $code .= <<___; + @{[ _ghash_step_4x 9-$i, @ghash_4x_args ]} + vbroadcasti128 -$i*16($RNDKEYLAST_PTR), $TMP0 + @{[ _vaesenc_4x $TMP0, @AESDATA ]} +___ + } + $code .= <<___; + @{[ _ghash_step_4x 9, @ghash_4x_args ]} + + @{[ $enc ? "sub \$-128, $DST" : "" ]} # 128 is 4 bytes, -128 is 1 byte + @{[ _aesenclast_and_xor_4x $SRC, $DST, $RNDKEYLAST, @AESDATA, + $TMP0, $TMP1, $LO, $MI ]} + sub \$-128, $SRC + @{[ !$enc ? "sub \$-128, $DST" : "" ]} + add \$-128, $DATALEN + cmp \$127, $DATALEN + ja .Lcrypt_loop_4x$local_label_suffix +___ + + if ($enc) { + + # Update GHASH with the last set of ciphertext blocks. + $code .= <<___; +.Lghash_last_ciphertext_4x$local_label_suffix: + @{[ _ghash_4x @ghash_4x_args ]} + sub \$-128, $DST +___ + } + + my $POWERS_PTR = $BE_CTR_PTR; # BE_CTR_PTR is free to be reused. + my ( $HI, $HI_XMM ) = ( $H_POW2_XORED, $H_POW2_XORED_XMM ); # reuse + + $code .= <<___; +.Lcrypt_loop_4x_done$local_label_suffix: + # Check whether any data remains. + test $DATALEN, $DATALEN + jz .Ldone$local_label_suffix + + # DATALEN is in [16, 32, 48, 64, 80, 96, 112]. + + # Make POWERS_PTR point to the key powers [H^N, H^(N-1), ...] where N + # is the number of blocks that remain. + lea $OFFSETOFEND_H_POWERS($HTABLE), $POWERS_PTR + sub $DATALEN, $POWERS_PTR + + # Start collecting the unreduced GHASH intermediate value LO, MI, HI. + vpxor $LO_XMM, $LO_XMM, $LO_XMM + vpxor $MI_XMM, $MI_XMM, $MI_XMM + vpxor $HI_XMM, $HI_XMM, $HI_XMM + + cmp \$64, $DATALEN + jb .Llessthan64bytes$local_label_suffix + + # DATALEN is in [64, 80, 96, 112]. Encrypt two vectors of counter blocks. + vpshufb $BSWAP_MASK, $LE_CTR, $AESDATA0 + vpaddd .Linc_2blocks(%rip), $LE_CTR, $LE_CTR + vpshufb $BSWAP_MASK, $LE_CTR, $AESDATA1 + vpaddd .Linc_2blocks(%rip), $LE_CTR, $LE_CTR + vpxor $RNDKEY0, $AESDATA0, $AESDATA0 + vpxor $RNDKEY0, $AESDATA1, $AESDATA1 + lea 16($AESKEY), %rax +.Lvaesenc_loop_tail_1$local_label_suffix: + vbroadcasti128 (%rax), $TMP0 + vaesenc $TMP0, $AESDATA0, $AESDATA0 + vaesenc $TMP0, $AESDATA1, $AESDATA1 + add \$16, %rax + cmp %rax, $RNDKEYLAST_PTR + jne .Lvaesenc_loop_tail_1$local_label_suffix + vaesenclast $RNDKEYLAST, $AESDATA0, $AESDATA0 + vaesenclast $RNDKEYLAST, $AESDATA1, $AESDATA1 + + # XOR the data with the two vectors of keystream blocks. + vmovdqu 0($SRC), $TMP0 + vmovdqu 32($SRC), $TMP1 + vpxor $TMP0, $AESDATA0, $AESDATA0 + vpxor $TMP1, $AESDATA1, $AESDATA1 + vmovdqu $AESDATA0, 0($DST) + vmovdqu $AESDATA1, 32($DST) + + # Update GHASH with two vectors of ciphertext blocks, without reducing. + vpshufb $BSWAP_MASK, @{[ $enc ? $AESDATA0 : $TMP0 ]}, $AESDATA0 + vpshufb $BSWAP_MASK, @{[ $enc ? $AESDATA1 : $TMP1 ]}, $AESDATA1 + vpxor $GHASH_ACC, $AESDATA0, $AESDATA0 + vmovdqu ($POWERS_PTR), $TMP0 + vmovdqu 32($POWERS_PTR), $TMP1 + vpclmulqdq \$0x00, $TMP0, $AESDATA0, $LO + vpclmulqdq \$0x01, $TMP0, $AESDATA0, $MI + vpclmulqdq \$0x10, $TMP0, $AESDATA0, $TMP2 + vpxor $TMP2, $MI, $MI + vpclmulqdq \$0x11, $TMP0, $AESDATA0, $HI + vpclmulqdq \$0x00, $TMP1, $AESDATA1, $TMP2 + vpxor $TMP2, $LO, $LO + vpclmulqdq \$0x01, $TMP1, $AESDATA1, $TMP2 + vpxor $TMP2, $MI, $MI + vpclmulqdq \$0x10, $TMP1, $AESDATA1, $TMP2 + vpxor $TMP2, $MI, $MI + vpclmulqdq \$0x11, $TMP1, $AESDATA1, $TMP2 + vpxor $TMP2, $HI, $HI + + add \$64, $POWERS_PTR + add \$64, $SRC + add \$64, $DST + sub \$64, $DATALEN + jz .Lreduce$local_label_suffix + + vpxor $GHASH_ACC_XMM, $GHASH_ACC_XMM, $GHASH_ACC_XMM + + # DATALEN is in [16, 32, 48]. Encrypt two last vectors of counter blocks. +.Llessthan64bytes$local_label_suffix: + vpshufb $BSWAP_MASK, $LE_CTR, $AESDATA0 + vpaddd .Linc_2blocks(%rip), $LE_CTR, $LE_CTR + vpshufb $BSWAP_MASK, $LE_CTR, $AESDATA1 + vpxor $RNDKEY0, $AESDATA0, $AESDATA0 + vpxor $RNDKEY0, $AESDATA1, $AESDATA1 + lea 16($AESKEY), %rax +.Lvaesenc_loop_tail_2$local_label_suffix: + vbroadcasti128 (%rax), $TMP0 + vaesenc $TMP0, $AESDATA0, $AESDATA0 + vaesenc $TMP0, $AESDATA1, $AESDATA1 + add \$16, %rax + cmp %rax, $RNDKEYLAST_PTR + jne .Lvaesenc_loop_tail_2$local_label_suffix + vaesenclast $RNDKEYLAST, $AESDATA0, $AESDATA0 + vaesenclast $RNDKEYLAST, $AESDATA1, $AESDATA1 + + # XOR the remaining data with the keystream blocks, and update GHASH with + # the remaining ciphertext blocks without reducing. + + cmp \$32, $DATALEN + jb .Lxor_one_block$local_label_suffix + je .Lxor_two_blocks$local_label_suffix + +.Lxor_three_blocks$local_label_suffix: + vmovdqu 0($SRC), $TMP0 + vmovdqu 32($SRC), $TMP1_XMM + vpxor $TMP0, $AESDATA0, $AESDATA0 + vpxor $TMP1_XMM, $AESDATA1_XMM, $AESDATA1_XMM + vmovdqu $AESDATA0, 0($DST) + vmovdqu $AESDATA1_XMM, 32($DST) + + vpshufb $BSWAP_MASK, @{[ $enc ? $AESDATA0 : $TMP0 ]}, $AESDATA0 + vpshufb $BSWAP_MASK_XMM, @{[ $enc ? $AESDATA1_XMM : $TMP1_XMM ]}, $AESDATA1_XMM + vpxor $GHASH_ACC, $AESDATA0, $AESDATA0 + vmovdqu ($POWERS_PTR), $TMP0 + vmovdqu 32($POWERS_PTR), $TMP1_XMM + vpclmulqdq \$0x00, $TMP1_XMM, $AESDATA1_XMM, $TMP2_XMM + vpxor $TMP2, $LO, $LO + vpclmulqdq \$0x01, $TMP1_XMM, $AESDATA1_XMM, $TMP2_XMM + vpxor $TMP2, $MI, $MI + vpclmulqdq \$0x10, $TMP1_XMM, $AESDATA1_XMM, $TMP2_XMM + vpxor $TMP2, $MI, $MI + vpclmulqdq \$0x11, $TMP1_XMM, $AESDATA1_XMM, $TMP2_XMM + vpxor $TMP2, $HI, $HI + jmp .Lghash_mul_one_vec_unreduced$local_label_suffix + +.Lxor_two_blocks$local_label_suffix: + vmovdqu ($SRC), $TMP0 + vpxor $TMP0, $AESDATA0, $AESDATA0 + vmovdqu $AESDATA0, ($DST) + vpshufb $BSWAP_MASK, @{[ $enc ? $AESDATA0 : $TMP0 ]}, $AESDATA0 + vpxor $GHASH_ACC, $AESDATA0, $AESDATA0 + vmovdqu ($POWERS_PTR), $TMP0 + jmp .Lghash_mul_one_vec_unreduced$local_label_suffix + +.Lxor_one_block$local_label_suffix: + vmovdqu ($SRC), $TMP0_XMM + vpxor $TMP0_XMM, $AESDATA0_XMM, $AESDATA0_XMM + vmovdqu $AESDATA0_XMM, ($DST) + vpshufb $BSWAP_MASK_XMM, @{[ $enc ? $AESDATA0_XMM : $TMP0_XMM ]}, $AESDATA0_XMM + vpxor $GHASH_ACC_XMM, $AESDATA0_XMM, $AESDATA0_XMM + vmovdqu ($POWERS_PTR), $TMP0_XMM + +.Lghash_mul_one_vec_unreduced$local_label_suffix: + vpclmulqdq \$0x00, $TMP0, $AESDATA0, $TMP2 + vpxor $TMP2, $LO, $LO + vpclmulqdq \$0x01, $TMP0, $AESDATA0, $TMP2 + vpxor $TMP2, $MI, $MI + vpclmulqdq \$0x10, $TMP0, $AESDATA0, $TMP2 + vpxor $TMP2, $MI, $MI + vpclmulqdq \$0x11, $TMP0, $AESDATA0, $TMP2 + vpxor $TMP2, $HI, $HI + +.Lreduce$local_label_suffix: + # Finally, do the GHASH reduction. + vbroadcasti128 .Lgfpoly(%rip), $TMP0 + vpclmulqdq \$0x01, $LO, $TMP0, $TMP1 + vpshufd \$0x4e, $LO, $LO + vpxor $LO, $MI, $MI + vpxor $TMP1, $MI, $MI + vpclmulqdq \$0x01, $MI, $TMP0, $TMP1 + vpshufd \$0x4e, $MI, $MI + vpxor $MI, $HI, $HI + vpxor $TMP1, $HI, $HI + vextracti128 \$1, $HI, $GHASH_ACC_XMM + vpxor $HI_XMM, $GHASH_ACC_XMM, $GHASH_ACC_XMM + +.Ldone$local_label_suffix: + # Store the updated GHASH accumulator back to memory. + vpshufb $BSWAP_MASK_XMM, $GHASH_ACC_XMM, $GHASH_ACC_XMM + vmovdqu $GHASH_ACC_XMM, ($GHASH_ACC_PTR) + + vzeroupper +___ + return $code; +} + +$code .= _begin_func "aes_gcm_enc_update_vaes_avx2", 1; +$code .= _aes_gcm_update 1; +$code .= _end_func; + +$code .= _begin_func "aes_gcm_dec_update_vaes_avx2", 1; +$code .= _aes_gcm_update 0; +$code .= _end_func; + +print $code; +close STDOUT or die "error closing STDOUT: $!"; +exit 0; diff --git a/crypto/fipsmodule/modes/gcm.cc.inc b/crypto/fipsmodule/modes/gcm.cc.inc index d3c829a9dc..e77c52589a 100644 --- a/crypto/fipsmodule/modes/gcm.cc.inc +++ b/crypto/fipsmodule/modes/gcm.cc.inc @@ -99,6 +99,11 @@ static size_t hw_gcm_encrypt(const uint8_t *in, uint8_t *out, size_t len, uint8_t Xi[16], const u128 Htable[16], enum gcm_impl_t impl) { switch (impl) { + case gcm_x86_vaes_avx2: + len &= kSizeTWithoutLower4Bits; + aes_gcm_enc_update_vaes_avx2(in, out, len, key, ivec, Htable, Xi); + CRYPTO_store_u32_be(&ivec[12], CRYPTO_load_u32_be(&ivec[12]) + len / 16); + return len; case gcm_x86_vaes_avx10_256: len &= kSizeTWithoutLower4Bits; aes_gcm_enc_update_vaes_avx10_256(in, out, len, key, ivec, Htable, Xi); @@ -119,6 +124,11 @@ static size_t hw_gcm_decrypt(const uint8_t *in, uint8_t *out, size_t len, uint8_t Xi[16], const u128 Htable[16], enum gcm_impl_t impl) { switch (impl) { + case gcm_x86_vaes_avx2: + len &= kSizeTWithoutLower4Bits; + aes_gcm_dec_update_vaes_avx2(in, out, len, key, ivec, Htable, Xi); + CRYPTO_store_u32_be(&ivec[12], CRYPTO_load_u32_be(&ivec[12]) + len / 16); + return len; case gcm_x86_vaes_avx10_256: len &= kSizeTWithoutLower4Bits; aes_gcm_dec_update_vaes_avx10_256(in, out, len, key, ivec, Htable, Xi); @@ -171,15 +181,21 @@ void CRYPTO_ghash_init(gmult_func *out_mult, ghash_func *out_hash, #if defined(GHASH_ASM_X86_64) if (crypto_gcm_clmul_enabled()) { - if (CRYPTO_is_AVX512BW_capable() && CRYPTO_is_AVX512VL_capable() && - CRYPTO_is_VPCLMULQDQ_capable() && CRYPTO_is_BMI2_capable()) { - gcm_init_vpclmulqdq_avx10(out_table, H); - *out_mult = gcm_gmult_vpclmulqdq_avx10; - if (CRYPTO_cpu_avoid_zmm_registers()) { - *out_hash = gcm_ghash_vpclmulqdq_avx10_256; - } else { - *out_hash = gcm_ghash_vpclmulqdq_avx10_512; + if (CRYPTO_is_VPCLMULQDQ_capable() && CRYPTO_is_AVX2_capable()) { + if (CRYPTO_is_AVX512BW_capable() && CRYPTO_is_AVX512VL_capable() && + CRYPTO_is_BMI2_capable()) { + gcm_init_vpclmulqdq_avx10(out_table, H); + *out_mult = gcm_gmult_vpclmulqdq_avx10; + if (CRYPTO_cpu_avoid_zmm_registers()) { + *out_hash = gcm_ghash_vpclmulqdq_avx10_256; + } else { + *out_hash = gcm_ghash_vpclmulqdq_avx10_512; + } + return; } + gcm_init_vpclmulqdq_avx2(out_table, H); + *out_mult = gcm_gmult_vpclmulqdq_avx2; + *out_hash = gcm_ghash_vpclmulqdq_avx2; return; } if (CRYPTO_is_AVX_capable() && CRYPTO_is_MOVBE_capable()) { @@ -265,6 +281,9 @@ void CRYPTO_gcm128_init_aes_key(GCM128_KEY *gcm_key, const uint8_t *key, } else if (gcm_key->ghash == gcm_ghash_vpclmulqdq_avx10_512 && CRYPTO_is_VAES_capable()) { gcm_key->impl = gcm_x86_vaes_avx10_512; + } else if (gcm_key->ghash == gcm_ghash_vpclmulqdq_avx2 && + CRYPTO_is_VAES_capable()) { + gcm_key->impl = gcm_x86_vaes_avx2; } else if (gcm_key->ghash == gcm_ghash_avx && is_hwaes) { gcm_key->impl = gcm_x86_aesni; } diff --git a/crypto/fipsmodule/modes/gcm_test.cc b/crypto/fipsmodule/modes/gcm_test.cc index fafde9c7f2..d195526269 100644 --- a/crypto/fipsmodule/modes/gcm_test.cc +++ b/crypto/fipsmodule/modes/gcm_test.cc @@ -81,6 +81,29 @@ TEST(GCMTest, ABI) { } } } + if (CRYPTO_is_VAES_capable() && CRYPTO_is_VPCLMULQDQ_capable() && + CRYPTO_is_AVX2_capable()) { + AES_KEY aes_key; + static const uint8_t kKey[16] = {0}; + uint8_t iv[16] = {0}; + + CHECK_ABI_SEH(gcm_init_vpclmulqdq_avx2, Htable, kH); + CHECK_ABI_SEH(gcm_gmult_vpclmulqdq_avx2, X, Htable); + for (size_t blocks : kBlockCounts) { + CHECK_ABI_SEH(gcm_ghash_vpclmulqdq_avx2, X, Htable, buf, 16 * blocks); + } + + aes_hw_set_encrypt_key(kKey, 128, &aes_key); + for (size_t blocks : kBlockCounts) { + CHECK_ABI_SEH(aes_gcm_enc_update_vaes_avx2, buf, buf, blocks * 16, + &aes_key, iv, Htable, X); + } + aes_hw_set_decrypt_key(kKey, 128, &aes_key); + for (size_t blocks : kBlockCounts) { + CHECK_ABI_SEH(aes_gcm_dec_update_vaes_avx2, buf, buf, blocks * 16, + &aes_key, iv, Htable, X); + } + } if (CRYPTO_is_VAES_capable() && CRYPTO_is_VPCLMULQDQ_capable() && CRYPTO_is_AVX512BW_capable() && CRYPTO_is_AVX512VL_capable() && CRYPTO_is_BMI2_capable()) { diff --git a/crypto/fipsmodule/modes/internal.h b/crypto/fipsmodule/modes/internal.h index a1f7bf5777..f041bf8edd 100644 --- a/crypto/fipsmodule/modes/internal.h +++ b/crypto/fipsmodule/modes/internal.h @@ -69,6 +69,7 @@ void CRYPTO_ctr128_encrypt_ctr32(const uint8_t *in, uint8_t *out, size_t len, enum gcm_impl_t { gcm_separate = 0, // No combined AES-GCM, but may have AES-CTR and GHASH. gcm_x86_aesni, + gcm_x86_vaes_avx2, gcm_x86_vaes_avx10_256, gcm_x86_vaes_avx10_512, gcm_arm64_aes, @@ -200,6 +201,17 @@ size_t aesni_gcm_decrypt(const uint8_t *in, uint8_t *out, size_t len, const AES_KEY *key, uint8_t ivec[16], const u128 Htable[16], uint8_t Xi[16]); +void gcm_init_vpclmulqdq_avx2(u128 Htable[16], const uint64_t H[2]); +void gcm_gmult_vpclmulqdq_avx2(uint8_t Xi[16], const u128 Htable[16]); +void gcm_ghash_vpclmulqdq_avx2(uint8_t Xi[16], const u128 Htable[16], + const uint8_t *in, size_t len); +void aes_gcm_enc_update_vaes_avx2(const uint8_t *in, uint8_t *out, size_t len, + const AES_KEY *key, const uint8_t ivec[16], + const u128 Htable[16], uint8_t Xi[16]); +void aes_gcm_dec_update_vaes_avx2(const uint8_t *in, uint8_t *out, size_t len, + const AES_KEY *key, const uint8_t ivec[16], + const u128 Htable[16], uint8_t Xi[16]); + void gcm_init_vpclmulqdq_avx10(u128 Htable[16], const uint64_t H[2]); void gcm_gmult_vpclmulqdq_avx10(uint8_t Xi[16], const u128 Htable[16]); void gcm_ghash_vpclmulqdq_avx10_256(uint8_t Xi[16], const u128 Htable[16], diff --git a/crypto/impl_dispatch_test.cc b/crypto/impl_dispatch_test.cc index 8c8d1d10d2..bfd004521b 100644 --- a/crypto/impl_dispatch_test.cc +++ b/crypto/impl_dispatch_test.cc @@ -37,8 +37,9 @@ class ImplDispatchTest : public ::testing::Test { avx_movbe_ = CRYPTO_is_AVX_capable() && CRYPTO_is_MOVBE_capable(); ssse3_ = CRYPTO_is_SSSE3_capable(); vaes_ = CRYPTO_is_VAES_capable() && CRYPTO_is_VPCLMULQDQ_capable() && - CRYPTO_is_AVX512BW_capable() && CRYPTO_is_AVX512VL_capable() && - CRYPTO_is_BMI2_capable(); + CRYPTO_is_AVX2_capable(); + avx10_ = CRYPTO_is_AVX512BW_capable() && CRYPTO_is_AVX512VL_capable() && + CRYPTO_is_BMI2_capable(); avoid_zmm_ = CRYPTO_cpu_avoid_zmm_registers(); is_x86_64_ = #if defined(OPENSSL_X86_64) @@ -80,6 +81,7 @@ class ImplDispatchTest : public ::testing::Test { bool ssse3_ = false; bool is_x86_64_ = false; bool vaes_ = false; + bool avx10_ = false; bool avoid_zmm_ = false; #endif }; @@ -95,6 +97,7 @@ constexpr size_t kFlag_vpaes_encrypt = 4; constexpr size_t kFlag_vpaes_set_encrypt_key = 5; constexpr size_t kFlag_aes_gcm_enc_update_vaes_avx10_256 = 6; constexpr size_t kFlag_aes_gcm_enc_update_vaes_avx10_512 = 7; +constexpr size_t kFlag_aes_gcm_enc_update_vaes_avx2 = 8; TEST_F(ImplDispatchTest, AEAD_AES_GCM) { AssertFunctionsHit( @@ -107,9 +110,10 @@ TEST_F(ImplDispatchTest, AEAD_AES_GCM) { {kFlag_vpaes_encrypt, ssse3_ && !aesni_}, {kFlag_vpaes_set_encrypt_key, ssse3_ && !aesni_}, {kFlag_aes_gcm_enc_update_vaes_avx10_256, - is_x86_64_ && vaes_ && avoid_zmm_}, + is_x86_64_ && vaes_ && avx10_ && avoid_zmm_}, {kFlag_aes_gcm_enc_update_vaes_avx10_512, - is_x86_64_ && vaes_ && !avoid_zmm_}, + is_x86_64_ && vaes_ && avx10_ && !avoid_zmm_}, + {kFlag_aes_gcm_enc_update_vaes_avx2, is_x86_64_ && vaes_ && !avx10_}, }, [] { const uint8_t kZeros[16] = {0}; diff --git a/crypto/internal.h b/crypto/internal.h index d50e755bae..62273c6b26 100644 --- a/crypto/internal.h +++ b/crypto/internal.h @@ -1410,7 +1410,8 @@ inline int CRYPTO_is_ARMv8_SHA512_capable(void) { // 5: vpaes_set_encrypt_key // 6: aes_gcm_enc_update_vaes_avx10_256 // 7: aes_gcm_enc_update_vaes_avx10_512 -extern uint8_t BORINGSSL_function_hit[8]; +// 8: aes_gcm_enc_update_vaes_avx2 +extern uint8_t BORINGSSL_function_hit[9]; #endif // BORINGSSL_DISPATCH_TEST // OPENSSL_vasprintf_internal is just like |vasprintf(3)|. If |system_malloc| is diff --git a/gen/bcm/aes-gcm-avx2-x86_64-apple.S b/gen/bcm/aes-gcm-avx2-x86_64-apple.S new file mode 100644 index 0000000000..e401e66042 --- /dev/null +++ b/gen/bcm/aes-gcm-avx2-x86_64-apple.S @@ -0,0 +1,1309 @@ +// This file is generated from a similarly-named Perl script in the BoringSSL +// source tree. Do not edit by hand. + +#include + +#if !defined(OPENSSL_NO_ASM) && defined(OPENSSL_X86_64) && defined(__APPLE__) +.section __DATA,__const +.p2align 4 + + +L$bswap_mask: +.quad 0x08090a0b0c0d0e0f, 0x0001020304050607 + + + + + + + + +L$gfpoly: +.quad 1, 0xc200000000000000 + + +L$gfpoly_and_internal_carrybit: +.quad 1, 0xc200000000000001 + +.p2align 5 + +L$ctr_pattern: +.quad 0, 0 +.quad 1, 0 +L$inc_2blocks: +.quad 2, 0 +.quad 2, 0 + +.text +.globl _gcm_init_vpclmulqdq_avx2 +.private_extern _gcm_init_vpclmulqdq_avx2 + +.p2align 5 +_gcm_init_vpclmulqdq_avx2: + + +_CET_ENDBR + + + + + + vpshufd $0x4e,(%rsi),%xmm3 + + + + + + vpshufd $0xd3,%xmm3,%xmm0 + vpsrad $31,%xmm0,%xmm0 + vpaddq %xmm3,%xmm3,%xmm3 + vpand L$gfpoly_and_internal_carrybit(%rip),%xmm0,%xmm0 + vpxor %xmm0,%xmm3,%xmm3 + + vbroadcasti128 L$gfpoly(%rip),%ymm6 + + + vpclmulqdq $0x00,%xmm3,%xmm3,%xmm0 + vpclmulqdq $0x01,%xmm3,%xmm3,%xmm1 + vpclmulqdq $0x10,%xmm3,%xmm3,%xmm2 + vpxor %xmm2,%xmm1,%xmm1 + vpclmulqdq $0x01,%xmm0,%xmm6,%xmm2 + vpshufd $0x4e,%xmm0,%xmm0 + vpxor %xmm0,%xmm1,%xmm1 + vpxor %xmm2,%xmm1,%xmm1 + vpclmulqdq $0x11,%xmm3,%xmm3,%xmm5 + vpclmulqdq $0x01,%xmm1,%xmm6,%xmm0 + vpshufd $0x4e,%xmm1,%xmm1 + vpxor %xmm1,%xmm5,%xmm5 + vpxor %xmm0,%xmm5,%xmm5 + + + + vinserti128 $1,%xmm3,%ymm5,%ymm3 + vinserti128 $1,%xmm5,%ymm5,%ymm5 + + + vpclmulqdq $0x00,%ymm5,%ymm3,%ymm0 + vpclmulqdq $0x01,%ymm5,%ymm3,%ymm1 + vpclmulqdq $0x10,%ymm5,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x01,%ymm0,%ymm6,%ymm2 + vpshufd $0x4e,%ymm0,%ymm0 + vpxor %ymm0,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x11,%ymm5,%ymm3,%ymm4 + vpclmulqdq $0x01,%ymm1,%ymm6,%ymm0 + vpshufd $0x4e,%ymm1,%ymm1 + vpxor %ymm1,%ymm4,%ymm4 + vpxor %ymm0,%ymm4,%ymm4 + + + + vmovdqu %ymm3,96(%rdi) + vmovdqu %ymm4,64(%rdi) + + + + vpunpcklqdq %ymm3,%ymm4,%ymm0 + vpunpckhqdq %ymm3,%ymm4,%ymm1 + vpxor %ymm1,%ymm0,%ymm0 + vmovdqu %ymm0,128+32(%rdi) + + + vpclmulqdq $0x00,%ymm5,%ymm4,%ymm0 + vpclmulqdq $0x01,%ymm5,%ymm4,%ymm1 + vpclmulqdq $0x10,%ymm5,%ymm4,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x01,%ymm0,%ymm6,%ymm2 + vpshufd $0x4e,%ymm0,%ymm0 + vpxor %ymm0,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x11,%ymm5,%ymm4,%ymm3 + vpclmulqdq $0x01,%ymm1,%ymm6,%ymm0 + vpshufd $0x4e,%ymm1,%ymm1 + vpxor %ymm1,%ymm3,%ymm3 + vpxor %ymm0,%ymm3,%ymm3 + + vpclmulqdq $0x00,%ymm5,%ymm3,%ymm0 + vpclmulqdq $0x01,%ymm5,%ymm3,%ymm1 + vpclmulqdq $0x10,%ymm5,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x01,%ymm0,%ymm6,%ymm2 + vpshufd $0x4e,%ymm0,%ymm0 + vpxor %ymm0,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x11,%ymm5,%ymm3,%ymm4 + vpclmulqdq $0x01,%ymm1,%ymm6,%ymm0 + vpshufd $0x4e,%ymm1,%ymm1 + vpxor %ymm1,%ymm4,%ymm4 + vpxor %ymm0,%ymm4,%ymm4 + + vmovdqu %ymm3,32(%rdi) + vmovdqu %ymm4,0(%rdi) + + + + vpunpcklqdq %ymm3,%ymm4,%ymm0 + vpunpckhqdq %ymm3,%ymm4,%ymm1 + vpxor %ymm1,%ymm0,%ymm0 + vmovdqu %ymm0,128(%rdi) + + vzeroupper + ret + + + +.globl _gcm_gmult_vpclmulqdq_avx2 +.private_extern _gcm_gmult_vpclmulqdq_avx2 + +.p2align 5 +_gcm_gmult_vpclmulqdq_avx2: + + +_CET_ENDBR + + + + vmovdqu (%rdi),%xmm0 + vmovdqu L$bswap_mask(%rip),%xmm1 + vmovdqu 128-16(%rsi),%xmm2 + vmovdqu L$gfpoly(%rip),%xmm3 + vpshufb %xmm1,%xmm0,%xmm0 + + vpclmulqdq $0x00,%xmm2,%xmm0,%xmm4 + vpclmulqdq $0x01,%xmm2,%xmm0,%xmm5 + vpclmulqdq $0x10,%xmm2,%xmm0,%xmm6 + vpxor %xmm6,%xmm5,%xmm5 + vpclmulqdq $0x01,%xmm4,%xmm3,%xmm6 + vpshufd $0x4e,%xmm4,%xmm4 + vpxor %xmm4,%xmm5,%xmm5 + vpxor %xmm6,%xmm5,%xmm5 + vpclmulqdq $0x11,%xmm2,%xmm0,%xmm0 + vpclmulqdq $0x01,%xmm5,%xmm3,%xmm4 + vpshufd $0x4e,%xmm5,%xmm5 + vpxor %xmm5,%xmm0,%xmm0 + vpxor %xmm4,%xmm0,%xmm0 + + + vpshufb %xmm1,%xmm0,%xmm0 + vmovdqu %xmm0,(%rdi) + ret + + + +.globl _gcm_ghash_vpclmulqdq_avx2 +.private_extern _gcm_ghash_vpclmulqdq_avx2 + +.p2align 5 +_gcm_ghash_vpclmulqdq_avx2: + + +_CET_ENDBR + + + + vbroadcasti128 L$bswap_mask(%rip),%ymm6 + vmovdqu (%rdi),%xmm5 + vpshufb %xmm6,%xmm5,%xmm5 + vbroadcasti128 L$gfpoly(%rip),%ymm7 + + + cmpq $32,%rcx + jb L$ghash_lastblock + + cmpq $127,%rcx + jbe L$ghash_loop_1x + + + vmovdqu 128(%rsi),%ymm8 + vmovdqu 128+32(%rsi),%ymm9 +L$ghash_loop_4x: + + vmovdqu 0(%rdx),%ymm1 + vpshufb %ymm6,%ymm1,%ymm1 + vmovdqu 0(%rsi),%ymm2 + vpxor %ymm5,%ymm1,%ymm1 + vpclmulqdq $0x00,%ymm2,%ymm1,%ymm3 + vpclmulqdq $0x11,%ymm2,%ymm1,%ymm5 + vpunpckhqdq %ymm1,%ymm1,%ymm0 + vpxor %ymm1,%ymm0,%ymm0 + vpclmulqdq $0x00,%ymm8,%ymm0,%ymm4 + + vmovdqu 32(%rdx),%ymm1 + vpshufb %ymm6,%ymm1,%ymm1 + vmovdqu 32(%rsi),%ymm2 + vpclmulqdq $0x00,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm3,%ymm3 + vpclmulqdq $0x11,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm5,%ymm5 + vpunpckhqdq %ymm1,%ymm1,%ymm0 + vpxor %ymm1,%ymm0,%ymm0 + vpclmulqdq $0x10,%ymm8,%ymm0,%ymm0 + vpxor %ymm0,%ymm4,%ymm4 + + vmovdqu 64(%rdx),%ymm1 + vpshufb %ymm6,%ymm1,%ymm1 + vmovdqu 64(%rsi),%ymm2 + vpclmulqdq $0x00,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm3,%ymm3 + vpclmulqdq $0x11,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm5,%ymm5 + vpunpckhqdq %ymm1,%ymm1,%ymm0 + vpxor %ymm1,%ymm0,%ymm0 + vpclmulqdq $0x00,%ymm9,%ymm0,%ymm0 + vpxor %ymm0,%ymm4,%ymm4 + + + vmovdqu 96(%rdx),%ymm1 + vpshufb %ymm6,%ymm1,%ymm1 + vmovdqu 96(%rsi),%ymm2 + vpclmulqdq $0x00,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm3,%ymm3 + vpclmulqdq $0x11,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm5,%ymm5 + vpunpckhqdq %ymm1,%ymm1,%ymm0 + vpxor %ymm1,%ymm0,%ymm0 + vpclmulqdq $0x10,%ymm9,%ymm0,%ymm0 + vpxor %ymm0,%ymm4,%ymm4 + + vpxor %ymm3,%ymm4,%ymm4 + vpxor %ymm5,%ymm4,%ymm4 + + + vbroadcasti128 L$gfpoly(%rip),%ymm2 + vpclmulqdq $0x01,%ymm3,%ymm2,%ymm0 + vpshufd $0x4e,%ymm3,%ymm3 + vpxor %ymm3,%ymm4,%ymm4 + vpxor %ymm0,%ymm4,%ymm4 + + vpclmulqdq $0x01,%ymm4,%ymm2,%ymm0 + vpshufd $0x4e,%ymm4,%ymm4 + vpxor %ymm4,%ymm5,%ymm5 + vpxor %ymm0,%ymm5,%ymm5 + vextracti128 $1,%ymm5,%xmm0 + vpxor %xmm0,%xmm5,%xmm5 + + subq $-128,%rdx + addq $-128,%rcx + cmpq $127,%rcx + ja L$ghash_loop_4x + + + cmpq $32,%rcx + jb L$ghash_loop_1x_done +L$ghash_loop_1x: + vmovdqu (%rdx),%ymm0 + vpshufb %ymm6,%ymm0,%ymm0 + vpxor %ymm0,%ymm5,%ymm5 + vmovdqu 128-32(%rsi),%ymm0 + vpclmulqdq $0x00,%ymm0,%ymm5,%ymm1 + vpclmulqdq $0x01,%ymm0,%ymm5,%ymm2 + vpclmulqdq $0x10,%ymm0,%ymm5,%ymm3 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x01,%ymm1,%ymm7,%ymm3 + vpshufd $0x4e,%ymm1,%ymm1 + vpxor %ymm1,%ymm2,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x11,%ymm0,%ymm5,%ymm5 + vpclmulqdq $0x01,%ymm2,%ymm7,%ymm1 + vpshufd $0x4e,%ymm2,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpxor %ymm1,%ymm5,%ymm5 + + vextracti128 $1,%ymm5,%xmm0 + vpxor %xmm0,%xmm5,%xmm5 + addq $32,%rdx + subq $32,%rcx + cmpq $32,%rcx + jae L$ghash_loop_1x +L$ghash_loop_1x_done: + + + vzeroupper + + +L$ghash_lastblock: + testq %rcx,%rcx + jz L$ghash_done + vmovdqu (%rdx),%xmm0 + vpshufb %xmm6,%xmm0,%xmm0 + vpxor %xmm0,%xmm5,%xmm5 + vmovdqu 128-16(%rsi),%xmm0 + vpclmulqdq $0x00,%xmm0,%xmm5,%xmm1 + vpclmulqdq $0x01,%xmm0,%xmm5,%xmm2 + vpclmulqdq $0x10,%xmm0,%xmm5,%xmm3 + vpxor %xmm3,%xmm2,%xmm2 + vpclmulqdq $0x01,%xmm1,%xmm7,%xmm3 + vpshufd $0x4e,%xmm1,%xmm1 + vpxor %xmm1,%xmm2,%xmm2 + vpxor %xmm3,%xmm2,%xmm2 + vpclmulqdq $0x11,%xmm0,%xmm5,%xmm5 + vpclmulqdq $0x01,%xmm2,%xmm7,%xmm1 + vpshufd $0x4e,%xmm2,%xmm2 + vpxor %xmm2,%xmm5,%xmm5 + vpxor %xmm1,%xmm5,%xmm5 + + +L$ghash_done: + + vpshufb %xmm6,%xmm5,%xmm5 + vmovdqu %xmm5,(%rdi) + ret + + + +.globl _aes_gcm_enc_update_vaes_avx2 +.private_extern _aes_gcm_enc_update_vaes_avx2 + +.p2align 5 +_aes_gcm_enc_update_vaes_avx2: + + +_CET_ENDBR + pushq %r12 + + + movq 16(%rsp),%r12 +#ifdef BORINGSSL_DISPATCH_TEST + + movb $1,_BORINGSSL_function_hit+8(%rip) +#endif + vbroadcasti128 L$bswap_mask(%rip),%ymm0 + + + + vmovdqu (%r12),%xmm1 + vpshufb %xmm0,%xmm1,%xmm1 + vbroadcasti128 (%r8),%ymm11 + vpshufb %ymm0,%ymm11,%ymm11 + + + + movl 240(%rcx),%r10d + leal -20(,%r10,4),%r10d + + + + + leaq 96(%rcx,%r10,4),%r11 + vbroadcasti128 (%rcx),%ymm9 + vbroadcasti128 (%r11),%ymm10 + + + vpaddd L$ctr_pattern(%rip),%ymm11,%ymm11 + + + + cmpq $127,%rdx + jbe L$crypt_loop_4x_done__func1 + + vmovdqu 128(%r9),%ymm7 + vmovdqu 128+32(%r9),%ymm8 + + + + vmovdqu L$inc_2blocks(%rip),%ymm2 + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm14 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm15 + vpaddd %ymm2,%ymm11,%ymm11 + + + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + vpxor %ymm9,%ymm14,%ymm14 + vpxor %ymm9,%ymm15,%ymm15 + + leaq 16(%rcx),%rax +L$vaesenc_loop_first_4_vecs__func1: + vbroadcasti128 (%rax),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + addq $16,%rax + cmpq %rax,%r11 + jne L$vaesenc_loop_first_4_vecs__func1 + vpxor 0(%rdi),%ymm10,%ymm2 + vpxor 32(%rdi),%ymm10,%ymm3 + vpxor 64(%rdi),%ymm10,%ymm5 + vpxor 96(%rdi),%ymm10,%ymm6 + vaesenclast %ymm2,%ymm12,%ymm12 + vaesenclast %ymm3,%ymm13,%ymm13 + vaesenclast %ymm5,%ymm14,%ymm14 + vaesenclast %ymm6,%ymm15,%ymm15 + vmovdqu %ymm12,0(%rsi) + vmovdqu %ymm13,32(%rsi) + vmovdqu %ymm14,64(%rsi) + vmovdqu %ymm15,96(%rsi) + + subq $-128,%rdi + addq $-128,%rdx + cmpq $127,%rdx + jbe L$ghash_last_ciphertext_4x__func1 +.p2align 4 +L$crypt_loop_4x__func1: + + + + + vmovdqu L$inc_2blocks(%rip),%ymm2 + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm14 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm15 + vpaddd %ymm2,%ymm11,%ymm11 + + + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + vpxor %ymm9,%ymm14,%ymm14 + vpxor %ymm9,%ymm15,%ymm15 + + cmpl $24,%r10d + jl L$aes128__func1 + je L$aes192__func1 + + vbroadcasti128 -208(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vbroadcasti128 -192(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + +L$aes192__func1: + vbroadcasti128 -176(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vbroadcasti128 -160(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + +L$aes128__func1: + + vmovdqu 0(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 0(%r9),%ymm4 + vpxor %ymm1,%ymm3,%ymm3 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm7,%ymm2,%ymm6 + + vbroadcasti128 -144(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vbroadcasti128 -128(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vmovdqu 32(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 32(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm7,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -112(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vmovdqu 64(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 64(%r9),%ymm4 + + vbroadcasti128 -96(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + + vbroadcasti128 -80(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + + vmovdqu 96(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + + vbroadcasti128 -64(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vmovdqu 96(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -48(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm1,%ymm6,%ymm6 + + + vbroadcasti128 L$gfpoly(%rip),%ymm4 + vpclmulqdq $0x01,%ymm5,%ymm4,%ymm2 + vpshufd $0x4e,%ymm5,%ymm5 + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -32(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vpclmulqdq $0x01,%ymm6,%ymm4,%ymm2 + vpshufd $0x4e,%ymm6,%ymm6 + vpxor %ymm6,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + + vbroadcasti128 -16(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vextracti128 $1,%ymm1,%xmm2 + vpxor %xmm2,%xmm1,%xmm1 + + + subq $-128,%rsi + vpxor 0(%rdi),%ymm10,%ymm2 + vpxor 32(%rdi),%ymm10,%ymm3 + vpxor 64(%rdi),%ymm10,%ymm5 + vpxor 96(%rdi),%ymm10,%ymm6 + vaesenclast %ymm2,%ymm12,%ymm12 + vaesenclast %ymm3,%ymm13,%ymm13 + vaesenclast %ymm5,%ymm14,%ymm14 + vaesenclast %ymm6,%ymm15,%ymm15 + vmovdqu %ymm12,0(%rsi) + vmovdqu %ymm13,32(%rsi) + vmovdqu %ymm14,64(%rsi) + vmovdqu %ymm15,96(%rsi) + + subq $-128,%rdi + + addq $-128,%rdx + cmpq $127,%rdx + ja L$crypt_loop_4x__func1 +L$ghash_last_ciphertext_4x__func1: + + vmovdqu 0(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 0(%r9),%ymm4 + vpxor %ymm1,%ymm3,%ymm3 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm7,%ymm2,%ymm6 + + vmovdqu 32(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 32(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm7,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vmovdqu 64(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 64(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + + vmovdqu 96(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 96(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm1,%ymm6,%ymm6 + + + vbroadcasti128 L$gfpoly(%rip),%ymm4 + vpclmulqdq $0x01,%ymm5,%ymm4,%ymm2 + vpshufd $0x4e,%ymm5,%ymm5 + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm2,%ymm6,%ymm6 + + vpclmulqdq $0x01,%ymm6,%ymm4,%ymm2 + vpshufd $0x4e,%ymm6,%ymm6 + vpxor %ymm6,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + vextracti128 $1,%ymm1,%xmm2 + vpxor %xmm2,%xmm1,%xmm1 + + subq $-128,%rsi +L$crypt_loop_4x_done__func1: + + testq %rdx,%rdx + jz L$done__func1 + + + + + + leaq 128(%r9),%r8 + subq %rdx,%r8 + + + vpxor %xmm5,%xmm5,%xmm5 + vpxor %xmm6,%xmm6,%xmm6 + vpxor %xmm7,%xmm7,%xmm7 + + cmpq $64,%rdx + jb L$lessthan64bytes__func1 + + + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd L$inc_2blocks(%rip),%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpaddd L$inc_2blocks(%rip),%ymm11,%ymm11 + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + leaq 16(%rcx),%rax +L$vaesenc_loop_tail_1__func1: + vbroadcasti128 (%rax),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + addq $16,%rax + cmpq %rax,%r11 + jne L$vaesenc_loop_tail_1__func1 + vaesenclast %ymm10,%ymm12,%ymm12 + vaesenclast %ymm10,%ymm13,%ymm13 + + + vmovdqu 0(%rdi),%ymm2 + vmovdqu 32(%rdi),%ymm3 + vpxor %ymm2,%ymm12,%ymm12 + vpxor %ymm3,%ymm13,%ymm13 + vmovdqu %ymm12,0(%rsi) + vmovdqu %ymm13,32(%rsi) + + + vpshufb %ymm0,%ymm12,%ymm12 + vpshufb %ymm0,%ymm13,%ymm13 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + vmovdqu 32(%r8),%ymm3 + vpclmulqdq $0x00,%ymm2,%ymm12,%ymm5 + vpclmulqdq $0x01,%ymm2,%ymm12,%ymm6 + vpclmulqdq $0x10,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm2,%ymm12,%ymm7 + vpclmulqdq $0x00,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm7,%ymm7 + + addq $64,%r8 + addq $64,%rdi + addq $64,%rsi + subq $64,%rdx + jz L$reduce__func1 + + vpxor %xmm1,%xmm1,%xmm1 + + +L$lessthan64bytes__func1: + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd L$inc_2blocks(%rip),%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + leaq 16(%rcx),%rax +L$vaesenc_loop_tail_2__func1: + vbroadcasti128 (%rax),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + addq $16,%rax + cmpq %rax,%r11 + jne L$vaesenc_loop_tail_2__func1 + vaesenclast %ymm10,%ymm12,%ymm12 + vaesenclast %ymm10,%ymm13,%ymm13 + + + + + cmpq $32,%rdx + jb L$xor_one_block__func1 + je L$xor_two_blocks__func1 + +L$xor_three_blocks__func1: + vmovdqu 0(%rdi),%ymm2 + vmovdqu 32(%rdi),%xmm3 + vpxor %ymm2,%ymm12,%ymm12 + vpxor %xmm3,%xmm13,%xmm13 + vmovdqu %ymm12,0(%rsi) + vmovdqu %xmm13,32(%rsi) + + vpshufb %ymm0,%ymm12,%ymm12 + vpshufb %xmm0,%xmm13,%xmm13 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + vmovdqu 32(%r8),%xmm3 + vpclmulqdq $0x00,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm7,%ymm7 + jmp L$ghash_mul_one_vec_unreduced__func1 + +L$xor_two_blocks__func1: + vmovdqu (%rdi),%ymm2 + vpxor %ymm2,%ymm12,%ymm12 + vmovdqu %ymm12,(%rsi) + vpshufb %ymm0,%ymm12,%ymm12 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + jmp L$ghash_mul_one_vec_unreduced__func1 + +L$xor_one_block__func1: + vmovdqu (%rdi),%xmm2 + vpxor %xmm2,%xmm12,%xmm12 + vmovdqu %xmm12,(%rsi) + vpshufb %xmm0,%xmm12,%xmm12 + vpxor %xmm1,%xmm12,%xmm12 + vmovdqu (%r8),%xmm2 + +L$ghash_mul_one_vec_unreduced__func1: + vpclmulqdq $0x00,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm7,%ymm7 + +L$reduce__func1: + + vbroadcasti128 L$gfpoly(%rip),%ymm2 + vpclmulqdq $0x01,%ymm5,%ymm2,%ymm3 + vpshufd $0x4e,%ymm5,%ymm5 + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm3,%ymm6,%ymm6 + vpclmulqdq $0x01,%ymm6,%ymm2,%ymm3 + vpshufd $0x4e,%ymm6,%ymm6 + vpxor %ymm6,%ymm7,%ymm7 + vpxor %ymm3,%ymm7,%ymm7 + vextracti128 $1,%ymm7,%xmm1 + vpxor %xmm7,%xmm1,%xmm1 + +L$done__func1: + + vpshufb %xmm0,%xmm1,%xmm1 + vmovdqu %xmm1,(%r12) + + vzeroupper + popq %r12 + + ret + + + +.globl _aes_gcm_dec_update_vaes_avx2 +.private_extern _aes_gcm_dec_update_vaes_avx2 + +.p2align 5 +_aes_gcm_dec_update_vaes_avx2: + + +_CET_ENDBR + pushq %r12 + + + movq 16(%rsp),%r12 + vbroadcasti128 L$bswap_mask(%rip),%ymm0 + + + + vmovdqu (%r12),%xmm1 + vpshufb %xmm0,%xmm1,%xmm1 + vbroadcasti128 (%r8),%ymm11 + vpshufb %ymm0,%ymm11,%ymm11 + + + + movl 240(%rcx),%r10d + leal -20(,%r10,4),%r10d + + + + + leaq 96(%rcx,%r10,4),%r11 + vbroadcasti128 (%rcx),%ymm9 + vbroadcasti128 (%r11),%ymm10 + + + vpaddd L$ctr_pattern(%rip),%ymm11,%ymm11 + + + + cmpq $127,%rdx + jbe L$crypt_loop_4x_done__func2 + + vmovdqu 128(%r9),%ymm7 + vmovdqu 128+32(%r9),%ymm8 +.p2align 4 +L$crypt_loop_4x__func2: + + + + + vmovdqu L$inc_2blocks(%rip),%ymm2 + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm14 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm15 + vpaddd %ymm2,%ymm11,%ymm11 + + + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + vpxor %ymm9,%ymm14,%ymm14 + vpxor %ymm9,%ymm15,%ymm15 + + cmpl $24,%r10d + jl L$aes128__func2 + je L$aes192__func2 + + vbroadcasti128 -208(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vbroadcasti128 -192(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + +L$aes192__func2: + vbroadcasti128 -176(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vbroadcasti128 -160(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + +L$aes128__func2: + + vmovdqu 0(%rdi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 0(%r9),%ymm4 + vpxor %ymm1,%ymm3,%ymm3 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm7,%ymm2,%ymm6 + + vbroadcasti128 -144(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vbroadcasti128 -128(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vmovdqu 32(%rdi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 32(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm7,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -112(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vmovdqu 64(%rdi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 64(%r9),%ymm4 + + vbroadcasti128 -96(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + + vbroadcasti128 -80(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + + vmovdqu 96(%rdi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + + vbroadcasti128 -64(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vmovdqu 96(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -48(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm1,%ymm6,%ymm6 + + + vbroadcasti128 L$gfpoly(%rip),%ymm4 + vpclmulqdq $0x01,%ymm5,%ymm4,%ymm2 + vpshufd $0x4e,%ymm5,%ymm5 + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -32(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vpclmulqdq $0x01,%ymm6,%ymm4,%ymm2 + vpshufd $0x4e,%ymm6,%ymm6 + vpxor %ymm6,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + + vbroadcasti128 -16(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vextracti128 $1,%ymm1,%xmm2 + vpxor %xmm2,%xmm1,%xmm1 + + + + vpxor 0(%rdi),%ymm10,%ymm2 + vpxor 32(%rdi),%ymm10,%ymm3 + vpxor 64(%rdi),%ymm10,%ymm5 + vpxor 96(%rdi),%ymm10,%ymm6 + vaesenclast %ymm2,%ymm12,%ymm12 + vaesenclast %ymm3,%ymm13,%ymm13 + vaesenclast %ymm5,%ymm14,%ymm14 + vaesenclast %ymm6,%ymm15,%ymm15 + vmovdqu %ymm12,0(%rsi) + vmovdqu %ymm13,32(%rsi) + vmovdqu %ymm14,64(%rsi) + vmovdqu %ymm15,96(%rsi) + + subq $-128,%rdi + subq $-128,%rsi + addq $-128,%rdx + cmpq $127,%rdx + ja L$crypt_loop_4x__func2 +L$crypt_loop_4x_done__func2: + + testq %rdx,%rdx + jz L$done__func2 + + + + + + leaq 128(%r9),%r8 + subq %rdx,%r8 + + + vpxor %xmm5,%xmm5,%xmm5 + vpxor %xmm6,%xmm6,%xmm6 + vpxor %xmm7,%xmm7,%xmm7 + + cmpq $64,%rdx + jb L$lessthan64bytes__func2 + + + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd L$inc_2blocks(%rip),%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpaddd L$inc_2blocks(%rip),%ymm11,%ymm11 + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + leaq 16(%rcx),%rax +L$vaesenc_loop_tail_1__func2: + vbroadcasti128 (%rax),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + addq $16,%rax + cmpq %rax,%r11 + jne L$vaesenc_loop_tail_1__func2 + vaesenclast %ymm10,%ymm12,%ymm12 + vaesenclast %ymm10,%ymm13,%ymm13 + + + vmovdqu 0(%rdi),%ymm2 + vmovdqu 32(%rdi),%ymm3 + vpxor %ymm2,%ymm12,%ymm12 + vpxor %ymm3,%ymm13,%ymm13 + vmovdqu %ymm12,0(%rsi) + vmovdqu %ymm13,32(%rsi) + + + vpshufb %ymm0,%ymm2,%ymm12 + vpshufb %ymm0,%ymm3,%ymm13 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + vmovdqu 32(%r8),%ymm3 + vpclmulqdq $0x00,%ymm2,%ymm12,%ymm5 + vpclmulqdq $0x01,%ymm2,%ymm12,%ymm6 + vpclmulqdq $0x10,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm2,%ymm12,%ymm7 + vpclmulqdq $0x00,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm7,%ymm7 + + addq $64,%r8 + addq $64,%rdi + addq $64,%rsi + subq $64,%rdx + jz L$reduce__func2 + + vpxor %xmm1,%xmm1,%xmm1 + + +L$lessthan64bytes__func2: + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd L$inc_2blocks(%rip),%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + leaq 16(%rcx),%rax +L$vaesenc_loop_tail_2__func2: + vbroadcasti128 (%rax),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + addq $16,%rax + cmpq %rax,%r11 + jne L$vaesenc_loop_tail_2__func2 + vaesenclast %ymm10,%ymm12,%ymm12 + vaesenclast %ymm10,%ymm13,%ymm13 + + + + + cmpq $32,%rdx + jb L$xor_one_block__func2 + je L$xor_two_blocks__func2 + +L$xor_three_blocks__func2: + vmovdqu 0(%rdi),%ymm2 + vmovdqu 32(%rdi),%xmm3 + vpxor %ymm2,%ymm12,%ymm12 + vpxor %xmm3,%xmm13,%xmm13 + vmovdqu %ymm12,0(%rsi) + vmovdqu %xmm13,32(%rsi) + + vpshufb %ymm0,%ymm2,%ymm12 + vpshufb %xmm0,%xmm3,%xmm13 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + vmovdqu 32(%r8),%xmm3 + vpclmulqdq $0x00,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm7,%ymm7 + jmp L$ghash_mul_one_vec_unreduced__func2 + +L$xor_two_blocks__func2: + vmovdqu (%rdi),%ymm2 + vpxor %ymm2,%ymm12,%ymm12 + vmovdqu %ymm12,(%rsi) + vpshufb %ymm0,%ymm2,%ymm12 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + jmp L$ghash_mul_one_vec_unreduced__func2 + +L$xor_one_block__func2: + vmovdqu (%rdi),%xmm2 + vpxor %xmm2,%xmm12,%xmm12 + vmovdqu %xmm12,(%rsi) + vpshufb %xmm0,%xmm2,%xmm12 + vpxor %xmm1,%xmm12,%xmm12 + vmovdqu (%r8),%xmm2 + +L$ghash_mul_one_vec_unreduced__func2: + vpclmulqdq $0x00,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm7,%ymm7 + +L$reduce__func2: + + vbroadcasti128 L$gfpoly(%rip),%ymm2 + vpclmulqdq $0x01,%ymm5,%ymm2,%ymm3 + vpshufd $0x4e,%ymm5,%ymm5 + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm3,%ymm6,%ymm6 + vpclmulqdq $0x01,%ymm6,%ymm2,%ymm3 + vpshufd $0x4e,%ymm6,%ymm6 + vpxor %ymm6,%ymm7,%ymm7 + vpxor %ymm3,%ymm7,%ymm7 + vextracti128 $1,%ymm7,%xmm1 + vpxor %xmm7,%xmm1,%xmm1 + +L$done__func2: + + vpshufb %xmm0,%xmm1,%xmm1 + vmovdqu %xmm1,(%r12) + + vzeroupper + popq %r12 + + ret + + + +#endif diff --git a/gen/bcm/aes-gcm-avx2-x86_64-linux.S b/gen/bcm/aes-gcm-avx2-x86_64-linux.S new file mode 100644 index 0000000000..b7816cfc5a --- /dev/null +++ b/gen/bcm/aes-gcm-avx2-x86_64-linux.S @@ -0,0 +1,1314 @@ +// This file is generated from a similarly-named Perl script in the BoringSSL +// source tree. Do not edit by hand. + +#include + +#if !defined(OPENSSL_NO_ASM) && defined(OPENSSL_X86_64) && defined(__ELF__) +.section .rodata +.align 16 + + +.Lbswap_mask: +.quad 0x08090a0b0c0d0e0f, 0x0001020304050607 + + + + + + + + +.Lgfpoly: +.quad 1, 0xc200000000000000 + + +.Lgfpoly_and_internal_carrybit: +.quad 1, 0xc200000000000001 + +.align 32 + +.Lctr_pattern: +.quad 0, 0 +.quad 1, 0 +.Linc_2blocks: +.quad 2, 0 +.quad 2, 0 + +.text +.globl gcm_init_vpclmulqdq_avx2 +.hidden gcm_init_vpclmulqdq_avx2 +.type gcm_init_vpclmulqdq_avx2,@function +.align 32 +gcm_init_vpclmulqdq_avx2: +.cfi_startproc + +_CET_ENDBR + + + + + + vpshufd $0x4e,(%rsi),%xmm3 + + + + + + vpshufd $0xd3,%xmm3,%xmm0 + vpsrad $31,%xmm0,%xmm0 + vpaddq %xmm3,%xmm3,%xmm3 + vpand .Lgfpoly_and_internal_carrybit(%rip),%xmm0,%xmm0 + vpxor %xmm0,%xmm3,%xmm3 + + vbroadcasti128 .Lgfpoly(%rip),%ymm6 + + + vpclmulqdq $0x00,%xmm3,%xmm3,%xmm0 + vpclmulqdq $0x01,%xmm3,%xmm3,%xmm1 + vpclmulqdq $0x10,%xmm3,%xmm3,%xmm2 + vpxor %xmm2,%xmm1,%xmm1 + vpclmulqdq $0x01,%xmm0,%xmm6,%xmm2 + vpshufd $0x4e,%xmm0,%xmm0 + vpxor %xmm0,%xmm1,%xmm1 + vpxor %xmm2,%xmm1,%xmm1 + vpclmulqdq $0x11,%xmm3,%xmm3,%xmm5 + vpclmulqdq $0x01,%xmm1,%xmm6,%xmm0 + vpshufd $0x4e,%xmm1,%xmm1 + vpxor %xmm1,%xmm5,%xmm5 + vpxor %xmm0,%xmm5,%xmm5 + + + + vinserti128 $1,%xmm3,%ymm5,%ymm3 + vinserti128 $1,%xmm5,%ymm5,%ymm5 + + + vpclmulqdq $0x00,%ymm5,%ymm3,%ymm0 + vpclmulqdq $0x01,%ymm5,%ymm3,%ymm1 + vpclmulqdq $0x10,%ymm5,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x01,%ymm0,%ymm6,%ymm2 + vpshufd $0x4e,%ymm0,%ymm0 + vpxor %ymm0,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x11,%ymm5,%ymm3,%ymm4 + vpclmulqdq $0x01,%ymm1,%ymm6,%ymm0 + vpshufd $0x4e,%ymm1,%ymm1 + vpxor %ymm1,%ymm4,%ymm4 + vpxor %ymm0,%ymm4,%ymm4 + + + + vmovdqu %ymm3,96(%rdi) + vmovdqu %ymm4,64(%rdi) + + + + vpunpcklqdq %ymm3,%ymm4,%ymm0 + vpunpckhqdq %ymm3,%ymm4,%ymm1 + vpxor %ymm1,%ymm0,%ymm0 + vmovdqu %ymm0,128+32(%rdi) + + + vpclmulqdq $0x00,%ymm5,%ymm4,%ymm0 + vpclmulqdq $0x01,%ymm5,%ymm4,%ymm1 + vpclmulqdq $0x10,%ymm5,%ymm4,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x01,%ymm0,%ymm6,%ymm2 + vpshufd $0x4e,%ymm0,%ymm0 + vpxor %ymm0,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x11,%ymm5,%ymm4,%ymm3 + vpclmulqdq $0x01,%ymm1,%ymm6,%ymm0 + vpshufd $0x4e,%ymm1,%ymm1 + vpxor %ymm1,%ymm3,%ymm3 + vpxor %ymm0,%ymm3,%ymm3 + + vpclmulqdq $0x00,%ymm5,%ymm3,%ymm0 + vpclmulqdq $0x01,%ymm5,%ymm3,%ymm1 + vpclmulqdq $0x10,%ymm5,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x01,%ymm0,%ymm6,%ymm2 + vpshufd $0x4e,%ymm0,%ymm0 + vpxor %ymm0,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x11,%ymm5,%ymm3,%ymm4 + vpclmulqdq $0x01,%ymm1,%ymm6,%ymm0 + vpshufd $0x4e,%ymm1,%ymm1 + vpxor %ymm1,%ymm4,%ymm4 + vpxor %ymm0,%ymm4,%ymm4 + + vmovdqu %ymm3,32(%rdi) + vmovdqu %ymm4,0(%rdi) + + + + vpunpcklqdq %ymm3,%ymm4,%ymm0 + vpunpckhqdq %ymm3,%ymm4,%ymm1 + vpxor %ymm1,%ymm0,%ymm0 + vmovdqu %ymm0,128(%rdi) + + vzeroupper + ret + +.cfi_endproc +.size gcm_init_vpclmulqdq_avx2, . - gcm_init_vpclmulqdq_avx2 +.globl gcm_gmult_vpclmulqdq_avx2 +.hidden gcm_gmult_vpclmulqdq_avx2 +.type gcm_gmult_vpclmulqdq_avx2,@function +.align 32 +gcm_gmult_vpclmulqdq_avx2: +.cfi_startproc + +_CET_ENDBR + + + + vmovdqu (%rdi),%xmm0 + vmovdqu .Lbswap_mask(%rip),%xmm1 + vmovdqu 128-16(%rsi),%xmm2 + vmovdqu .Lgfpoly(%rip),%xmm3 + vpshufb %xmm1,%xmm0,%xmm0 + + vpclmulqdq $0x00,%xmm2,%xmm0,%xmm4 + vpclmulqdq $0x01,%xmm2,%xmm0,%xmm5 + vpclmulqdq $0x10,%xmm2,%xmm0,%xmm6 + vpxor %xmm6,%xmm5,%xmm5 + vpclmulqdq $0x01,%xmm4,%xmm3,%xmm6 + vpshufd $0x4e,%xmm4,%xmm4 + vpxor %xmm4,%xmm5,%xmm5 + vpxor %xmm6,%xmm5,%xmm5 + vpclmulqdq $0x11,%xmm2,%xmm0,%xmm0 + vpclmulqdq $0x01,%xmm5,%xmm3,%xmm4 + vpshufd $0x4e,%xmm5,%xmm5 + vpxor %xmm5,%xmm0,%xmm0 + vpxor %xmm4,%xmm0,%xmm0 + + + vpshufb %xmm1,%xmm0,%xmm0 + vmovdqu %xmm0,(%rdi) + ret + +.cfi_endproc +.size gcm_gmult_vpclmulqdq_avx2, . - gcm_gmult_vpclmulqdq_avx2 +.globl gcm_ghash_vpclmulqdq_avx2 +.hidden gcm_ghash_vpclmulqdq_avx2 +.type gcm_ghash_vpclmulqdq_avx2,@function +.align 32 +gcm_ghash_vpclmulqdq_avx2: +.cfi_startproc + +_CET_ENDBR + + + + vbroadcasti128 .Lbswap_mask(%rip),%ymm6 + vmovdqu (%rdi),%xmm5 + vpshufb %xmm6,%xmm5,%xmm5 + vbroadcasti128 .Lgfpoly(%rip),%ymm7 + + + cmpq $32,%rcx + jb .Lghash_lastblock + + cmpq $127,%rcx + jbe .Lghash_loop_1x + + + vmovdqu 128(%rsi),%ymm8 + vmovdqu 128+32(%rsi),%ymm9 +.Lghash_loop_4x: + + vmovdqu 0(%rdx),%ymm1 + vpshufb %ymm6,%ymm1,%ymm1 + vmovdqu 0(%rsi),%ymm2 + vpxor %ymm5,%ymm1,%ymm1 + vpclmulqdq $0x00,%ymm2,%ymm1,%ymm3 + vpclmulqdq $0x11,%ymm2,%ymm1,%ymm5 + vpunpckhqdq %ymm1,%ymm1,%ymm0 + vpxor %ymm1,%ymm0,%ymm0 + vpclmulqdq $0x00,%ymm8,%ymm0,%ymm4 + + vmovdqu 32(%rdx),%ymm1 + vpshufb %ymm6,%ymm1,%ymm1 + vmovdqu 32(%rsi),%ymm2 + vpclmulqdq $0x00,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm3,%ymm3 + vpclmulqdq $0x11,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm5,%ymm5 + vpunpckhqdq %ymm1,%ymm1,%ymm0 + vpxor %ymm1,%ymm0,%ymm0 + vpclmulqdq $0x10,%ymm8,%ymm0,%ymm0 + vpxor %ymm0,%ymm4,%ymm4 + + vmovdqu 64(%rdx),%ymm1 + vpshufb %ymm6,%ymm1,%ymm1 + vmovdqu 64(%rsi),%ymm2 + vpclmulqdq $0x00,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm3,%ymm3 + vpclmulqdq $0x11,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm5,%ymm5 + vpunpckhqdq %ymm1,%ymm1,%ymm0 + vpxor %ymm1,%ymm0,%ymm0 + vpclmulqdq $0x00,%ymm9,%ymm0,%ymm0 + vpxor %ymm0,%ymm4,%ymm4 + + + vmovdqu 96(%rdx),%ymm1 + vpshufb %ymm6,%ymm1,%ymm1 + vmovdqu 96(%rsi),%ymm2 + vpclmulqdq $0x00,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm3,%ymm3 + vpclmulqdq $0x11,%ymm2,%ymm1,%ymm0 + vpxor %ymm0,%ymm5,%ymm5 + vpunpckhqdq %ymm1,%ymm1,%ymm0 + vpxor %ymm1,%ymm0,%ymm0 + vpclmulqdq $0x10,%ymm9,%ymm0,%ymm0 + vpxor %ymm0,%ymm4,%ymm4 + + vpxor %ymm3,%ymm4,%ymm4 + vpxor %ymm5,%ymm4,%ymm4 + + + vbroadcasti128 .Lgfpoly(%rip),%ymm2 + vpclmulqdq $0x01,%ymm3,%ymm2,%ymm0 + vpshufd $0x4e,%ymm3,%ymm3 + vpxor %ymm3,%ymm4,%ymm4 + vpxor %ymm0,%ymm4,%ymm4 + + vpclmulqdq $0x01,%ymm4,%ymm2,%ymm0 + vpshufd $0x4e,%ymm4,%ymm4 + vpxor %ymm4,%ymm5,%ymm5 + vpxor %ymm0,%ymm5,%ymm5 + vextracti128 $1,%ymm5,%xmm0 + vpxor %xmm0,%xmm5,%xmm5 + + subq $-128,%rdx + addq $-128,%rcx + cmpq $127,%rcx + ja .Lghash_loop_4x + + + cmpq $32,%rcx + jb .Lghash_loop_1x_done +.Lghash_loop_1x: + vmovdqu (%rdx),%ymm0 + vpshufb %ymm6,%ymm0,%ymm0 + vpxor %ymm0,%ymm5,%ymm5 + vmovdqu 128-32(%rsi),%ymm0 + vpclmulqdq $0x00,%ymm0,%ymm5,%ymm1 + vpclmulqdq $0x01,%ymm0,%ymm5,%ymm2 + vpclmulqdq $0x10,%ymm0,%ymm5,%ymm3 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x01,%ymm1,%ymm7,%ymm3 + vpshufd $0x4e,%ymm1,%ymm1 + vpxor %ymm1,%ymm2,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x11,%ymm0,%ymm5,%ymm5 + vpclmulqdq $0x01,%ymm2,%ymm7,%ymm1 + vpshufd $0x4e,%ymm2,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpxor %ymm1,%ymm5,%ymm5 + + vextracti128 $1,%ymm5,%xmm0 + vpxor %xmm0,%xmm5,%xmm5 + addq $32,%rdx + subq $32,%rcx + cmpq $32,%rcx + jae .Lghash_loop_1x +.Lghash_loop_1x_done: + + + vzeroupper + + +.Lghash_lastblock: + testq %rcx,%rcx + jz .Lghash_done + vmovdqu (%rdx),%xmm0 + vpshufb %xmm6,%xmm0,%xmm0 + vpxor %xmm0,%xmm5,%xmm5 + vmovdqu 128-16(%rsi),%xmm0 + vpclmulqdq $0x00,%xmm0,%xmm5,%xmm1 + vpclmulqdq $0x01,%xmm0,%xmm5,%xmm2 + vpclmulqdq $0x10,%xmm0,%xmm5,%xmm3 + vpxor %xmm3,%xmm2,%xmm2 + vpclmulqdq $0x01,%xmm1,%xmm7,%xmm3 + vpshufd $0x4e,%xmm1,%xmm1 + vpxor %xmm1,%xmm2,%xmm2 + vpxor %xmm3,%xmm2,%xmm2 + vpclmulqdq $0x11,%xmm0,%xmm5,%xmm5 + vpclmulqdq $0x01,%xmm2,%xmm7,%xmm1 + vpshufd $0x4e,%xmm2,%xmm2 + vpxor %xmm2,%xmm5,%xmm5 + vpxor %xmm1,%xmm5,%xmm5 + + +.Lghash_done: + + vpshufb %xmm6,%xmm5,%xmm5 + vmovdqu %xmm5,(%rdi) + ret + +.cfi_endproc +.size gcm_ghash_vpclmulqdq_avx2, . - gcm_ghash_vpclmulqdq_avx2 +.globl aes_gcm_enc_update_vaes_avx2 +.hidden aes_gcm_enc_update_vaes_avx2 +.type aes_gcm_enc_update_vaes_avx2,@function +.align 32 +aes_gcm_enc_update_vaes_avx2: +.cfi_startproc + +_CET_ENDBR + pushq %r12 +.cfi_adjust_cfa_offset 8 +.cfi_offset %r12,-16 + + movq 16(%rsp),%r12 +#ifdef BORINGSSL_DISPATCH_TEST +.extern BORINGSSL_function_hit +.hidden BORINGSSL_function_hit + movb $1,BORINGSSL_function_hit+8(%rip) +#endif + vbroadcasti128 .Lbswap_mask(%rip),%ymm0 + + + + vmovdqu (%r12),%xmm1 + vpshufb %xmm0,%xmm1,%xmm1 + vbroadcasti128 (%r8),%ymm11 + vpshufb %ymm0,%ymm11,%ymm11 + + + + movl 240(%rcx),%r10d + leal -20(,%r10,4),%r10d + + + + + leaq 96(%rcx,%r10,4),%r11 + vbroadcasti128 (%rcx),%ymm9 + vbroadcasti128 (%r11),%ymm10 + + + vpaddd .Lctr_pattern(%rip),%ymm11,%ymm11 + + + + cmpq $127,%rdx + jbe .Lcrypt_loop_4x_done__func1 + + vmovdqu 128(%r9),%ymm7 + vmovdqu 128+32(%r9),%ymm8 + + + + vmovdqu .Linc_2blocks(%rip),%ymm2 + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm14 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm15 + vpaddd %ymm2,%ymm11,%ymm11 + + + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + vpxor %ymm9,%ymm14,%ymm14 + vpxor %ymm9,%ymm15,%ymm15 + + leaq 16(%rcx),%rax +.Lvaesenc_loop_first_4_vecs__func1: + vbroadcasti128 (%rax),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + addq $16,%rax + cmpq %rax,%r11 + jne .Lvaesenc_loop_first_4_vecs__func1 + vpxor 0(%rdi),%ymm10,%ymm2 + vpxor 32(%rdi),%ymm10,%ymm3 + vpxor 64(%rdi),%ymm10,%ymm5 + vpxor 96(%rdi),%ymm10,%ymm6 + vaesenclast %ymm2,%ymm12,%ymm12 + vaesenclast %ymm3,%ymm13,%ymm13 + vaesenclast %ymm5,%ymm14,%ymm14 + vaesenclast %ymm6,%ymm15,%ymm15 + vmovdqu %ymm12,0(%rsi) + vmovdqu %ymm13,32(%rsi) + vmovdqu %ymm14,64(%rsi) + vmovdqu %ymm15,96(%rsi) + + subq $-128,%rdi + addq $-128,%rdx + cmpq $127,%rdx + jbe .Lghash_last_ciphertext_4x__func1 +.align 16 +.Lcrypt_loop_4x__func1: + + + + + vmovdqu .Linc_2blocks(%rip),%ymm2 + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm14 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm15 + vpaddd %ymm2,%ymm11,%ymm11 + + + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + vpxor %ymm9,%ymm14,%ymm14 + vpxor %ymm9,%ymm15,%ymm15 + + cmpl $24,%r10d + jl .Laes128__func1 + je .Laes192__func1 + + vbroadcasti128 -208(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vbroadcasti128 -192(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + +.Laes192__func1: + vbroadcasti128 -176(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vbroadcasti128 -160(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + +.Laes128__func1: + + vmovdqu 0(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 0(%r9),%ymm4 + vpxor %ymm1,%ymm3,%ymm3 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm7,%ymm2,%ymm6 + + vbroadcasti128 -144(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vbroadcasti128 -128(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vmovdqu 32(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 32(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm7,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -112(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vmovdqu 64(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 64(%r9),%ymm4 + + vbroadcasti128 -96(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + + vbroadcasti128 -80(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + + vmovdqu 96(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + + vbroadcasti128 -64(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vmovdqu 96(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -48(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm1,%ymm6,%ymm6 + + + vbroadcasti128 .Lgfpoly(%rip),%ymm4 + vpclmulqdq $0x01,%ymm5,%ymm4,%ymm2 + vpshufd $0x4e,%ymm5,%ymm5 + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -32(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vpclmulqdq $0x01,%ymm6,%ymm4,%ymm2 + vpshufd $0x4e,%ymm6,%ymm6 + vpxor %ymm6,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + + vbroadcasti128 -16(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vextracti128 $1,%ymm1,%xmm2 + vpxor %xmm2,%xmm1,%xmm1 + + + subq $-128,%rsi + vpxor 0(%rdi),%ymm10,%ymm2 + vpxor 32(%rdi),%ymm10,%ymm3 + vpxor 64(%rdi),%ymm10,%ymm5 + vpxor 96(%rdi),%ymm10,%ymm6 + vaesenclast %ymm2,%ymm12,%ymm12 + vaesenclast %ymm3,%ymm13,%ymm13 + vaesenclast %ymm5,%ymm14,%ymm14 + vaesenclast %ymm6,%ymm15,%ymm15 + vmovdqu %ymm12,0(%rsi) + vmovdqu %ymm13,32(%rsi) + vmovdqu %ymm14,64(%rsi) + vmovdqu %ymm15,96(%rsi) + + subq $-128,%rdi + + addq $-128,%rdx + cmpq $127,%rdx + ja .Lcrypt_loop_4x__func1 +.Lghash_last_ciphertext_4x__func1: + + vmovdqu 0(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 0(%r9),%ymm4 + vpxor %ymm1,%ymm3,%ymm3 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm7,%ymm2,%ymm6 + + vmovdqu 32(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 32(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm7,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vmovdqu 64(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 64(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + + vmovdqu 96(%rsi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 96(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm1,%ymm6,%ymm6 + + + vbroadcasti128 .Lgfpoly(%rip),%ymm4 + vpclmulqdq $0x01,%ymm5,%ymm4,%ymm2 + vpshufd $0x4e,%ymm5,%ymm5 + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm2,%ymm6,%ymm6 + + vpclmulqdq $0x01,%ymm6,%ymm4,%ymm2 + vpshufd $0x4e,%ymm6,%ymm6 + vpxor %ymm6,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + vextracti128 $1,%ymm1,%xmm2 + vpxor %xmm2,%xmm1,%xmm1 + + subq $-128,%rsi +.Lcrypt_loop_4x_done__func1: + + testq %rdx,%rdx + jz .Ldone__func1 + + + + + + leaq 128(%r9),%r8 + subq %rdx,%r8 + + + vpxor %xmm5,%xmm5,%xmm5 + vpxor %xmm6,%xmm6,%xmm6 + vpxor %xmm7,%xmm7,%xmm7 + + cmpq $64,%rdx + jb .Llessthan64bytes__func1 + + + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd .Linc_2blocks(%rip),%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpaddd .Linc_2blocks(%rip),%ymm11,%ymm11 + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + leaq 16(%rcx),%rax +.Lvaesenc_loop_tail_1__func1: + vbroadcasti128 (%rax),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + addq $16,%rax + cmpq %rax,%r11 + jne .Lvaesenc_loop_tail_1__func1 + vaesenclast %ymm10,%ymm12,%ymm12 + vaesenclast %ymm10,%ymm13,%ymm13 + + + vmovdqu 0(%rdi),%ymm2 + vmovdqu 32(%rdi),%ymm3 + vpxor %ymm2,%ymm12,%ymm12 + vpxor %ymm3,%ymm13,%ymm13 + vmovdqu %ymm12,0(%rsi) + vmovdqu %ymm13,32(%rsi) + + + vpshufb %ymm0,%ymm12,%ymm12 + vpshufb %ymm0,%ymm13,%ymm13 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + vmovdqu 32(%r8),%ymm3 + vpclmulqdq $0x00,%ymm2,%ymm12,%ymm5 + vpclmulqdq $0x01,%ymm2,%ymm12,%ymm6 + vpclmulqdq $0x10,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm2,%ymm12,%ymm7 + vpclmulqdq $0x00,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm7,%ymm7 + + addq $64,%r8 + addq $64,%rdi + addq $64,%rsi + subq $64,%rdx + jz .Lreduce__func1 + + vpxor %xmm1,%xmm1,%xmm1 + + +.Llessthan64bytes__func1: + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd .Linc_2blocks(%rip),%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + leaq 16(%rcx),%rax +.Lvaesenc_loop_tail_2__func1: + vbroadcasti128 (%rax),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + addq $16,%rax + cmpq %rax,%r11 + jne .Lvaesenc_loop_tail_2__func1 + vaesenclast %ymm10,%ymm12,%ymm12 + vaesenclast %ymm10,%ymm13,%ymm13 + + + + + cmpq $32,%rdx + jb .Lxor_one_block__func1 + je .Lxor_two_blocks__func1 + +.Lxor_three_blocks__func1: + vmovdqu 0(%rdi),%ymm2 + vmovdqu 32(%rdi),%xmm3 + vpxor %ymm2,%ymm12,%ymm12 + vpxor %xmm3,%xmm13,%xmm13 + vmovdqu %ymm12,0(%rsi) + vmovdqu %xmm13,32(%rsi) + + vpshufb %ymm0,%ymm12,%ymm12 + vpshufb %xmm0,%xmm13,%xmm13 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + vmovdqu 32(%r8),%xmm3 + vpclmulqdq $0x00,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm7,%ymm7 + jmp .Lghash_mul_one_vec_unreduced__func1 + +.Lxor_two_blocks__func1: + vmovdqu (%rdi),%ymm2 + vpxor %ymm2,%ymm12,%ymm12 + vmovdqu %ymm12,(%rsi) + vpshufb %ymm0,%ymm12,%ymm12 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + jmp .Lghash_mul_one_vec_unreduced__func1 + +.Lxor_one_block__func1: + vmovdqu (%rdi),%xmm2 + vpxor %xmm2,%xmm12,%xmm12 + vmovdqu %xmm12,(%rsi) + vpshufb %xmm0,%xmm12,%xmm12 + vpxor %xmm1,%xmm12,%xmm12 + vmovdqu (%r8),%xmm2 + +.Lghash_mul_one_vec_unreduced__func1: + vpclmulqdq $0x00,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm7,%ymm7 + +.Lreduce__func1: + + vbroadcasti128 .Lgfpoly(%rip),%ymm2 + vpclmulqdq $0x01,%ymm5,%ymm2,%ymm3 + vpshufd $0x4e,%ymm5,%ymm5 + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm3,%ymm6,%ymm6 + vpclmulqdq $0x01,%ymm6,%ymm2,%ymm3 + vpshufd $0x4e,%ymm6,%ymm6 + vpxor %ymm6,%ymm7,%ymm7 + vpxor %ymm3,%ymm7,%ymm7 + vextracti128 $1,%ymm7,%xmm1 + vpxor %xmm7,%xmm1,%xmm1 + +.Ldone__func1: + + vpshufb %xmm0,%xmm1,%xmm1 + vmovdqu %xmm1,(%r12) + + vzeroupper + popq %r12 +.cfi_adjust_cfa_offset -8 +.cfi_restore %r12 + ret + +.cfi_endproc +.size aes_gcm_enc_update_vaes_avx2, . - aes_gcm_enc_update_vaes_avx2 +.globl aes_gcm_dec_update_vaes_avx2 +.hidden aes_gcm_dec_update_vaes_avx2 +.type aes_gcm_dec_update_vaes_avx2,@function +.align 32 +aes_gcm_dec_update_vaes_avx2: +.cfi_startproc + +_CET_ENDBR + pushq %r12 +.cfi_adjust_cfa_offset 8 +.cfi_offset %r12,-16 + + movq 16(%rsp),%r12 + vbroadcasti128 .Lbswap_mask(%rip),%ymm0 + + + + vmovdqu (%r12),%xmm1 + vpshufb %xmm0,%xmm1,%xmm1 + vbroadcasti128 (%r8),%ymm11 + vpshufb %ymm0,%ymm11,%ymm11 + + + + movl 240(%rcx),%r10d + leal -20(,%r10,4),%r10d + + + + + leaq 96(%rcx,%r10,4),%r11 + vbroadcasti128 (%rcx),%ymm9 + vbroadcasti128 (%r11),%ymm10 + + + vpaddd .Lctr_pattern(%rip),%ymm11,%ymm11 + + + + cmpq $127,%rdx + jbe .Lcrypt_loop_4x_done__func2 + + vmovdqu 128(%r9),%ymm7 + vmovdqu 128+32(%r9),%ymm8 +.align 16 +.Lcrypt_loop_4x__func2: + + + + + vmovdqu .Linc_2blocks(%rip),%ymm2 + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm14 + vpaddd %ymm2,%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm15 + vpaddd %ymm2,%ymm11,%ymm11 + + + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + vpxor %ymm9,%ymm14,%ymm14 + vpxor %ymm9,%ymm15,%ymm15 + + cmpl $24,%r10d + jl .Laes128__func2 + je .Laes192__func2 + + vbroadcasti128 -208(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vbroadcasti128 -192(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + +.Laes192__func2: + vbroadcasti128 -176(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vbroadcasti128 -160(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + +.Laes128__func2: + + vmovdqu 0(%rdi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 0(%r9),%ymm4 + vpxor %ymm1,%ymm3,%ymm3 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm7,%ymm2,%ymm6 + + vbroadcasti128 -144(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vbroadcasti128 -128(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vmovdqu 32(%rdi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 32(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm7,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -112(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vmovdqu 64(%rdi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + vmovdqu 64(%r9),%ymm4 + + vbroadcasti128 -96(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + + vbroadcasti128 -80(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x00,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + + vmovdqu 96(%rdi),%ymm3 + vpshufb %ymm0,%ymm3,%ymm3 + + vbroadcasti128 -64(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vmovdqu 96(%r9),%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm5,%ymm5 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm2 + vpxor %ymm2,%ymm1,%ymm1 + vpunpckhqdq %ymm3,%ymm3,%ymm2 + vpxor %ymm3,%ymm2,%ymm2 + vpclmulqdq $0x10,%ymm8,%ymm2,%ymm2 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -48(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm1,%ymm6,%ymm6 + + + vbroadcasti128 .Lgfpoly(%rip),%ymm4 + vpclmulqdq $0x01,%ymm5,%ymm4,%ymm2 + vpshufd $0x4e,%ymm5,%ymm5 + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm2,%ymm6,%ymm6 + + vbroadcasti128 -32(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + + vpclmulqdq $0x01,%ymm6,%ymm4,%ymm2 + vpshufd $0x4e,%ymm6,%ymm6 + vpxor %ymm6,%ymm1,%ymm1 + vpxor %ymm2,%ymm1,%ymm1 + + vbroadcasti128 -16(%r11),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + vaesenc %ymm2,%ymm14,%ymm14 + vaesenc %ymm2,%ymm15,%ymm15 + + vextracti128 $1,%ymm1,%xmm2 + vpxor %xmm2,%xmm1,%xmm1 + + + + vpxor 0(%rdi),%ymm10,%ymm2 + vpxor 32(%rdi),%ymm10,%ymm3 + vpxor 64(%rdi),%ymm10,%ymm5 + vpxor 96(%rdi),%ymm10,%ymm6 + vaesenclast %ymm2,%ymm12,%ymm12 + vaesenclast %ymm3,%ymm13,%ymm13 + vaesenclast %ymm5,%ymm14,%ymm14 + vaesenclast %ymm6,%ymm15,%ymm15 + vmovdqu %ymm12,0(%rsi) + vmovdqu %ymm13,32(%rsi) + vmovdqu %ymm14,64(%rsi) + vmovdqu %ymm15,96(%rsi) + + subq $-128,%rdi + subq $-128,%rsi + addq $-128,%rdx + cmpq $127,%rdx + ja .Lcrypt_loop_4x__func2 +.Lcrypt_loop_4x_done__func2: + + testq %rdx,%rdx + jz .Ldone__func2 + + + + + + leaq 128(%r9),%r8 + subq %rdx,%r8 + + + vpxor %xmm5,%xmm5,%xmm5 + vpxor %xmm6,%xmm6,%xmm6 + vpxor %xmm7,%xmm7,%xmm7 + + cmpq $64,%rdx + jb .Llessthan64bytes__func2 + + + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd .Linc_2blocks(%rip),%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpaddd .Linc_2blocks(%rip),%ymm11,%ymm11 + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + leaq 16(%rcx),%rax +.Lvaesenc_loop_tail_1__func2: + vbroadcasti128 (%rax),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + addq $16,%rax + cmpq %rax,%r11 + jne .Lvaesenc_loop_tail_1__func2 + vaesenclast %ymm10,%ymm12,%ymm12 + vaesenclast %ymm10,%ymm13,%ymm13 + + + vmovdqu 0(%rdi),%ymm2 + vmovdqu 32(%rdi),%ymm3 + vpxor %ymm2,%ymm12,%ymm12 + vpxor %ymm3,%ymm13,%ymm13 + vmovdqu %ymm12,0(%rsi) + vmovdqu %ymm13,32(%rsi) + + + vpshufb %ymm0,%ymm2,%ymm12 + vpshufb %ymm0,%ymm3,%ymm13 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + vmovdqu 32(%r8),%ymm3 + vpclmulqdq $0x00,%ymm2,%ymm12,%ymm5 + vpclmulqdq $0x01,%ymm2,%ymm12,%ymm6 + vpclmulqdq $0x10,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm2,%ymm12,%ymm7 + vpclmulqdq $0x00,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm3,%ymm13,%ymm4 + vpxor %ymm4,%ymm7,%ymm7 + + addq $64,%r8 + addq $64,%rdi + addq $64,%rsi + subq $64,%rdx + jz .Lreduce__func2 + + vpxor %xmm1,%xmm1,%xmm1 + + +.Llessthan64bytes__func2: + vpshufb %ymm0,%ymm11,%ymm12 + vpaddd .Linc_2blocks(%rip),%ymm11,%ymm11 + vpshufb %ymm0,%ymm11,%ymm13 + vpxor %ymm9,%ymm12,%ymm12 + vpxor %ymm9,%ymm13,%ymm13 + leaq 16(%rcx),%rax +.Lvaesenc_loop_tail_2__func2: + vbroadcasti128 (%rax),%ymm2 + vaesenc %ymm2,%ymm12,%ymm12 + vaesenc %ymm2,%ymm13,%ymm13 + addq $16,%rax + cmpq %rax,%r11 + jne .Lvaesenc_loop_tail_2__func2 + vaesenclast %ymm10,%ymm12,%ymm12 + vaesenclast %ymm10,%ymm13,%ymm13 + + + + + cmpq $32,%rdx + jb .Lxor_one_block__func2 + je .Lxor_two_blocks__func2 + +.Lxor_three_blocks__func2: + vmovdqu 0(%rdi),%ymm2 + vmovdqu 32(%rdi),%xmm3 + vpxor %ymm2,%ymm12,%ymm12 + vpxor %xmm3,%xmm13,%xmm13 + vmovdqu %ymm12,0(%rsi) + vmovdqu %xmm13,32(%rsi) + + vpshufb %ymm0,%ymm2,%ymm12 + vpshufb %xmm0,%xmm3,%xmm13 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + vmovdqu 32(%r8),%xmm3 + vpclmulqdq $0x00,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%xmm3,%xmm13,%xmm4 + vpxor %ymm4,%ymm7,%ymm7 + jmp .Lghash_mul_one_vec_unreduced__func2 + +.Lxor_two_blocks__func2: + vmovdqu (%rdi),%ymm2 + vpxor %ymm2,%ymm12,%ymm12 + vmovdqu %ymm12,(%rsi) + vpshufb %ymm0,%ymm2,%ymm12 + vpxor %ymm1,%ymm12,%ymm12 + vmovdqu (%r8),%ymm2 + jmp .Lghash_mul_one_vec_unreduced__func2 + +.Lxor_one_block__func2: + vmovdqu (%rdi),%xmm2 + vpxor %xmm2,%xmm12,%xmm12 + vmovdqu %xmm12,(%rsi) + vpshufb %xmm0,%xmm2,%xmm12 + vpxor %xmm1,%xmm12,%xmm12 + vmovdqu (%r8),%xmm2 + +.Lghash_mul_one_vec_unreduced__func2: + vpclmulqdq $0x00,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm5,%ymm5 + vpclmulqdq $0x01,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x10,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm6,%ymm6 + vpclmulqdq $0x11,%ymm2,%ymm12,%ymm4 + vpxor %ymm4,%ymm7,%ymm7 + +.Lreduce__func2: + + vbroadcasti128 .Lgfpoly(%rip),%ymm2 + vpclmulqdq $0x01,%ymm5,%ymm2,%ymm3 + vpshufd $0x4e,%ymm5,%ymm5 + vpxor %ymm5,%ymm6,%ymm6 + vpxor %ymm3,%ymm6,%ymm6 + vpclmulqdq $0x01,%ymm6,%ymm2,%ymm3 + vpshufd $0x4e,%ymm6,%ymm6 + vpxor %ymm6,%ymm7,%ymm7 + vpxor %ymm3,%ymm7,%ymm7 + vextracti128 $1,%ymm7,%xmm1 + vpxor %xmm7,%xmm1,%xmm1 + +.Ldone__func2: + + vpshufb %xmm0,%xmm1,%xmm1 + vmovdqu %xmm1,(%r12) + + vzeroupper + popq %r12 +.cfi_adjust_cfa_offset -8 +.cfi_restore %r12 + ret + +.cfi_endproc +.size aes_gcm_dec_update_vaes_avx2, . - aes_gcm_dec_update_vaes_avx2 +#endif diff --git a/gen/bcm/aes-gcm-avx2-x86_64-win.asm b/gen/bcm/aes-gcm-avx2-x86_64-win.asm new file mode 100644 index 0000000000..92015534ba --- /dev/null +++ b/gen/bcm/aes-gcm-avx2-x86_64-win.asm @@ -0,0 +1,1588 @@ +; This file is generated from a similarly-named Perl script in the BoringSSL +; source tree. Do not edit by hand. + +%ifidn __OUTPUT_FORMAT__, win64 +default rel +%define XMMWORD +%define YMMWORD +%define ZMMWORD +%define _CET_ENDBR + +%ifdef BORINGSSL_PREFIX +%include "boringssl_prefix_symbols_nasm.inc" +%endif +section .rdata rdata align=8 +ALIGN 16 + + +$L$bswap_mask: + DQ 0x08090a0b0c0d0e0f,0x0001020304050607 + + + + + + + + +$L$gfpoly: + DQ 1,0xc200000000000000 + + +$L$gfpoly_and_internal_carrybit: + DQ 1,0xc200000000000001 + +ALIGN 32 + +$L$ctr_pattern: + DQ 0,0 + DQ 1,0 +$L$inc_2blocks: + DQ 2,0 + DQ 2,0 + +section .text code align=64 + +global gcm_init_vpclmulqdq_avx2 + +ALIGN 32 +gcm_init_vpclmulqdq_avx2: + +$L$SEH_begin_gcm_init_vpclmulqdq_avx2_1: +_CET_ENDBR + sub rsp,24 +$L$SEH_prologue_gcm_init_vpclmulqdq_avx2_2: + movdqa XMMWORD[rsp],xmm6 +$L$SEH_prologue_gcm_init_vpclmulqdq_avx2_3: + +$L$SEH_endprologue_gcm_init_vpclmulqdq_avx2_4: + + + + vpshufd xmm3,XMMWORD[rdx],0x4e + + + + + + vpshufd xmm0,xmm3,0xd3 + vpsrad xmm0,xmm0,31 + vpaddq xmm3,xmm3,xmm3 + vpand xmm0,xmm0,XMMWORD[$L$gfpoly_and_internal_carrybit] + vpxor xmm3,xmm3,xmm0 + + vbroadcasti128 ymm6,XMMWORD[$L$gfpoly] + + + vpclmulqdq xmm0,xmm3,xmm3,0x00 + vpclmulqdq xmm1,xmm3,xmm3,0x01 + vpclmulqdq xmm2,xmm3,xmm3,0x10 + vpxor xmm1,xmm1,xmm2 + vpclmulqdq xmm2,xmm6,xmm0,0x01 + vpshufd xmm0,xmm0,0x4e + vpxor xmm1,xmm1,xmm0 + vpxor xmm1,xmm1,xmm2 + vpclmulqdq xmm5,xmm3,xmm3,0x11 + vpclmulqdq xmm0,xmm6,xmm1,0x01 + vpshufd xmm1,xmm1,0x4e + vpxor xmm5,xmm5,xmm1 + vpxor xmm5,xmm5,xmm0 + + + + vinserti128 ymm3,ymm5,xmm3,1 + vinserti128 ymm5,ymm5,xmm5,1 + + + vpclmulqdq ymm0,ymm3,ymm5,0x00 + vpclmulqdq ymm1,ymm3,ymm5,0x01 + vpclmulqdq ymm2,ymm3,ymm5,0x10 + vpxor ymm1,ymm1,ymm2 + vpclmulqdq ymm2,ymm6,ymm0,0x01 + vpshufd ymm0,ymm0,0x4e + vpxor ymm1,ymm1,ymm0 + vpxor ymm1,ymm1,ymm2 + vpclmulqdq ymm4,ymm3,ymm5,0x11 + vpclmulqdq ymm0,ymm6,ymm1,0x01 + vpshufd ymm1,ymm1,0x4e + vpxor ymm4,ymm4,ymm1 + vpxor ymm4,ymm4,ymm0 + + + + vmovdqu YMMWORD[96+rcx],ymm3 + vmovdqu YMMWORD[64+rcx],ymm4 + + + + vpunpcklqdq ymm0,ymm4,ymm3 + vpunpckhqdq ymm1,ymm4,ymm3 + vpxor ymm0,ymm0,ymm1 + vmovdqu YMMWORD[(128+32)+rcx],ymm0 + + + vpclmulqdq ymm0,ymm4,ymm5,0x00 + vpclmulqdq ymm1,ymm4,ymm5,0x01 + vpclmulqdq ymm2,ymm4,ymm5,0x10 + vpxor ymm1,ymm1,ymm2 + vpclmulqdq ymm2,ymm6,ymm0,0x01 + vpshufd ymm0,ymm0,0x4e + vpxor ymm1,ymm1,ymm0 + vpxor ymm1,ymm1,ymm2 + vpclmulqdq ymm3,ymm4,ymm5,0x11 + vpclmulqdq ymm0,ymm6,ymm1,0x01 + vpshufd ymm1,ymm1,0x4e + vpxor ymm3,ymm3,ymm1 + vpxor ymm3,ymm3,ymm0 + + vpclmulqdq ymm0,ymm3,ymm5,0x00 + vpclmulqdq ymm1,ymm3,ymm5,0x01 + vpclmulqdq ymm2,ymm3,ymm5,0x10 + vpxor ymm1,ymm1,ymm2 + vpclmulqdq ymm2,ymm6,ymm0,0x01 + vpshufd ymm0,ymm0,0x4e + vpxor ymm1,ymm1,ymm0 + vpxor ymm1,ymm1,ymm2 + vpclmulqdq ymm4,ymm3,ymm5,0x11 + vpclmulqdq ymm0,ymm6,ymm1,0x01 + vpshufd ymm1,ymm1,0x4e + vpxor ymm4,ymm4,ymm1 + vpxor ymm4,ymm4,ymm0 + + vmovdqu YMMWORD[32+rcx],ymm3 + vmovdqu YMMWORD[rcx],ymm4 + + + + vpunpcklqdq ymm0,ymm4,ymm3 + vpunpckhqdq ymm1,ymm4,ymm3 + vpxor ymm0,ymm0,ymm1 + vmovdqu YMMWORD[128+rcx],ymm0 + + vzeroupper + movdqa xmm6,XMMWORD[rsp] + add rsp,24 + ret +$L$SEH_end_gcm_init_vpclmulqdq_avx2_5: + + +global gcm_gmult_vpclmulqdq_avx2 + +ALIGN 32 +gcm_gmult_vpclmulqdq_avx2: + +$L$SEH_begin_gcm_gmult_vpclmulqdq_avx2_1: +_CET_ENDBR + sub rsp,24 +$L$SEH_prologue_gcm_gmult_vpclmulqdq_avx2_2: + movdqa XMMWORD[rsp],xmm6 +$L$SEH_prologue_gcm_gmult_vpclmulqdq_avx2_3: + +$L$SEH_endprologue_gcm_gmult_vpclmulqdq_avx2_4: + + vmovdqu xmm0,XMMWORD[rcx] + vmovdqu xmm1,XMMWORD[$L$bswap_mask] + vmovdqu xmm2,XMMWORD[((128-16))+rdx] + vmovdqu xmm3,XMMWORD[$L$gfpoly] + vpshufb xmm0,xmm0,xmm1 + + vpclmulqdq xmm4,xmm0,xmm2,0x00 + vpclmulqdq xmm5,xmm0,xmm2,0x01 + vpclmulqdq xmm6,xmm0,xmm2,0x10 + vpxor xmm5,xmm5,xmm6 + vpclmulqdq xmm6,xmm3,xmm4,0x01 + vpshufd xmm4,xmm4,0x4e + vpxor xmm5,xmm5,xmm4 + vpxor xmm5,xmm5,xmm6 + vpclmulqdq xmm0,xmm0,xmm2,0x11 + vpclmulqdq xmm4,xmm3,xmm5,0x01 + vpshufd xmm5,xmm5,0x4e + vpxor xmm0,xmm0,xmm5 + vpxor xmm0,xmm0,xmm4 + + + vpshufb xmm0,xmm0,xmm1 + vmovdqu XMMWORD[rcx],xmm0 + movdqa xmm6,XMMWORD[rsp] + add rsp,24 + ret +$L$SEH_end_gcm_gmult_vpclmulqdq_avx2_5: + + +global gcm_ghash_vpclmulqdq_avx2 + +ALIGN 32 +gcm_ghash_vpclmulqdq_avx2: + +$L$SEH_begin_gcm_ghash_vpclmulqdq_avx2_1: +_CET_ENDBR + sub rsp,72 +$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx2_2: + movdqa XMMWORD[rsp],xmm6 +$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx2_3: + movdqa XMMWORD[16+rsp],xmm7 +$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx2_4: + movdqa XMMWORD[32+rsp],xmm8 +$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx2_5: + movdqa XMMWORD[48+rsp],xmm9 +$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx2_6: + +$L$SEH_endprologue_gcm_ghash_vpclmulqdq_avx2_7: + + vbroadcasti128 ymm6,XMMWORD[$L$bswap_mask] + vmovdqu xmm5,XMMWORD[rcx] + vpshufb xmm5,xmm5,xmm6 + vbroadcasti128 ymm7,XMMWORD[$L$gfpoly] + + + cmp r9,32 + jb NEAR $L$ghash_lastblock + + cmp r9,127 + jbe NEAR $L$ghash_loop_1x + + + vmovdqu ymm8,YMMWORD[128+rdx] + vmovdqu ymm9,YMMWORD[((128+32))+rdx] +$L$ghash_loop_4x: + + vmovdqu ymm1,YMMWORD[r8] + vpshufb ymm1,ymm1,ymm6 + vmovdqu ymm2,YMMWORD[rdx] + vpxor ymm1,ymm1,ymm5 + vpclmulqdq ymm3,ymm1,ymm2,0x00 + vpclmulqdq ymm5,ymm1,ymm2,0x11 + vpunpckhqdq ymm0,ymm1,ymm1 + vpxor ymm0,ymm0,ymm1 + vpclmulqdq ymm4,ymm0,ymm8,0x00 + + vmovdqu ymm1,YMMWORD[32+r8] + vpshufb ymm1,ymm1,ymm6 + vmovdqu ymm2,YMMWORD[32+rdx] + vpclmulqdq ymm0,ymm1,ymm2,0x00 + vpxor ymm3,ymm3,ymm0 + vpclmulqdq ymm0,ymm1,ymm2,0x11 + vpxor ymm5,ymm5,ymm0 + vpunpckhqdq ymm0,ymm1,ymm1 + vpxor ymm0,ymm0,ymm1 + vpclmulqdq ymm0,ymm0,ymm8,0x10 + vpxor ymm4,ymm4,ymm0 + + vmovdqu ymm1,YMMWORD[64+r8] + vpshufb ymm1,ymm1,ymm6 + vmovdqu ymm2,YMMWORD[64+rdx] + vpclmulqdq ymm0,ymm1,ymm2,0x00 + vpxor ymm3,ymm3,ymm0 + vpclmulqdq ymm0,ymm1,ymm2,0x11 + vpxor ymm5,ymm5,ymm0 + vpunpckhqdq ymm0,ymm1,ymm1 + vpxor ymm0,ymm0,ymm1 + vpclmulqdq ymm0,ymm0,ymm9,0x00 + vpxor ymm4,ymm4,ymm0 + + + vmovdqu ymm1,YMMWORD[96+r8] + vpshufb ymm1,ymm1,ymm6 + vmovdqu ymm2,YMMWORD[96+rdx] + vpclmulqdq ymm0,ymm1,ymm2,0x00 + vpxor ymm3,ymm3,ymm0 + vpclmulqdq ymm0,ymm1,ymm2,0x11 + vpxor ymm5,ymm5,ymm0 + vpunpckhqdq ymm0,ymm1,ymm1 + vpxor ymm0,ymm0,ymm1 + vpclmulqdq ymm0,ymm0,ymm9,0x10 + vpxor ymm4,ymm4,ymm0 + + vpxor ymm4,ymm4,ymm3 + vpxor ymm4,ymm4,ymm5 + + + vbroadcasti128 ymm2,XMMWORD[$L$gfpoly] + vpclmulqdq ymm0,ymm2,ymm3,0x01 + vpshufd ymm3,ymm3,0x4e + vpxor ymm4,ymm4,ymm3 + vpxor ymm4,ymm4,ymm0 + + vpclmulqdq ymm0,ymm2,ymm4,0x01 + vpshufd ymm4,ymm4,0x4e + vpxor ymm5,ymm5,ymm4 + vpxor ymm5,ymm5,ymm0 + vextracti128 xmm0,ymm5,1 + vpxor xmm5,xmm5,xmm0 + + sub r8,-128 + add r9,-128 + cmp r9,127 + ja NEAR $L$ghash_loop_4x + + + cmp r9,32 + jb NEAR $L$ghash_loop_1x_done +$L$ghash_loop_1x: + vmovdqu ymm0,YMMWORD[r8] + vpshufb ymm0,ymm0,ymm6 + vpxor ymm5,ymm5,ymm0 + vmovdqu ymm0,YMMWORD[((128-32))+rdx] + vpclmulqdq ymm1,ymm5,ymm0,0x00 + vpclmulqdq ymm2,ymm5,ymm0,0x01 + vpclmulqdq ymm3,ymm5,ymm0,0x10 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm3,ymm7,ymm1,0x01 + vpshufd ymm1,ymm1,0x4e + vpxor ymm2,ymm2,ymm1 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm5,ymm5,ymm0,0x11 + vpclmulqdq ymm1,ymm7,ymm2,0x01 + vpshufd ymm2,ymm2,0x4e + vpxor ymm5,ymm5,ymm2 + vpxor ymm5,ymm5,ymm1 + + vextracti128 xmm0,ymm5,1 + vpxor xmm5,xmm5,xmm0 + add r8,32 + sub r9,32 + cmp r9,32 + jae NEAR $L$ghash_loop_1x +$L$ghash_loop_1x_done: + + + vzeroupper + + +$L$ghash_lastblock: + test r9,r9 + jz NEAR $L$ghash_done + vmovdqu xmm0,XMMWORD[r8] + vpshufb xmm0,xmm0,xmm6 + vpxor xmm5,xmm5,xmm0 + vmovdqu xmm0,XMMWORD[((128-16))+rdx] + vpclmulqdq xmm1,xmm5,xmm0,0x00 + vpclmulqdq xmm2,xmm5,xmm0,0x01 + vpclmulqdq xmm3,xmm5,xmm0,0x10 + vpxor xmm2,xmm2,xmm3 + vpclmulqdq xmm3,xmm7,xmm1,0x01 + vpshufd xmm1,xmm1,0x4e + vpxor xmm2,xmm2,xmm1 + vpxor xmm2,xmm2,xmm3 + vpclmulqdq xmm5,xmm5,xmm0,0x11 + vpclmulqdq xmm1,xmm7,xmm2,0x01 + vpshufd xmm2,xmm2,0x4e + vpxor xmm5,xmm5,xmm2 + vpxor xmm5,xmm5,xmm1 + + +$L$ghash_done: + + vpshufb xmm5,xmm5,xmm6 + vmovdqu XMMWORD[rcx],xmm5 + movdqa xmm6,XMMWORD[rsp] + movdqa xmm7,XMMWORD[16+rsp] + movdqa xmm8,XMMWORD[32+rsp] + movdqa xmm9,XMMWORD[48+rsp] + add rsp,72 + ret +$L$SEH_end_gcm_ghash_vpclmulqdq_avx2_8: + + +global aes_gcm_enc_update_vaes_avx2 + +ALIGN 32 +aes_gcm_enc_update_vaes_avx2: + +$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1: +_CET_ENDBR + push rsi +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_2: + push rdi +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_3: + push r12 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_4: + + mov rsi,QWORD[64+rsp] + mov rdi,QWORD[72+rsp] + mov r12,QWORD[80+rsp] + sub rsp,160 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_5: + movdqa XMMWORD[rsp],xmm6 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_6: + movdqa XMMWORD[16+rsp],xmm7 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_7: + movdqa XMMWORD[32+rsp],xmm8 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_8: + movdqa XMMWORD[48+rsp],xmm9 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_9: + movdqa XMMWORD[64+rsp],xmm10 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_10: + movdqa XMMWORD[80+rsp],xmm11 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_11: + movdqa XMMWORD[96+rsp],xmm12 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_12: + movdqa XMMWORD[112+rsp],xmm13 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_13: + movdqa XMMWORD[128+rsp],xmm14 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_14: + movdqa XMMWORD[144+rsp],xmm15 +$L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_15: + +$L$SEH_endprologue_aes_gcm_enc_update_vaes_avx2_16: +%ifdef BORINGSSL_DISPATCH_TEST +EXTERN BORINGSSL_function_hit + mov BYTE[((BORINGSSL_function_hit+8))],1 +%endif + vbroadcasti128 ymm0,XMMWORD[$L$bswap_mask] + + + + vmovdqu xmm1,XMMWORD[r12] + vpshufb xmm1,xmm1,xmm0 + vbroadcasti128 ymm11,XMMWORD[rsi] + vpshufb ymm11,ymm11,ymm0 + + + + mov r10d,DWORD[240+r9] + lea r10d,[((-20))+r10*4] + + + + + lea r11,[96+r10*4+r9] + vbroadcasti128 ymm9,XMMWORD[r9] + vbroadcasti128 ymm10,XMMWORD[r11] + + + vpaddd ymm11,ymm11,YMMWORD[$L$ctr_pattern] + + + + cmp r8,127 + jbe NEAR $L$crypt_loop_4x_done__func1 + + vmovdqu ymm7,YMMWORD[128+rdi] + vmovdqu ymm8,YMMWORD[((128+32))+rdi] + + + + vmovdqu ymm2,YMMWORD[$L$inc_2blocks] + vpshufb ymm12,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + vpshufb ymm13,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + vpshufb ymm14,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + vpshufb ymm15,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + + + vpxor ymm12,ymm12,ymm9 + vpxor ymm13,ymm13,ymm9 + vpxor ymm14,ymm14,ymm9 + vpxor ymm15,ymm15,ymm9 + + lea rax,[16+r9] +$L$vaesenc_loop_first_4_vecs__func1: + vbroadcasti128 ymm2,XMMWORD[rax] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + add rax,16 + cmp r11,rax + jne NEAR $L$vaesenc_loop_first_4_vecs__func1 + vpxor ymm2,ymm10,YMMWORD[rcx] + vpxor ymm3,ymm10,YMMWORD[32+rcx] + vpxor ymm5,ymm10,YMMWORD[64+rcx] + vpxor ymm6,ymm10,YMMWORD[96+rcx] + vaesenclast ymm12,ymm12,ymm2 + vaesenclast ymm13,ymm13,ymm3 + vaesenclast ymm14,ymm14,ymm5 + vaesenclast ymm15,ymm15,ymm6 + vmovdqu YMMWORD[rdx],ymm12 + vmovdqu YMMWORD[32+rdx],ymm13 + vmovdqu YMMWORD[64+rdx],ymm14 + vmovdqu YMMWORD[96+rdx],ymm15 + + sub rcx,-128 + add r8,-128 + cmp r8,127 + jbe NEAR $L$ghash_last_ciphertext_4x__func1 +ALIGN 16 +$L$crypt_loop_4x__func1: + + + + + vmovdqu ymm2,YMMWORD[$L$inc_2blocks] + vpshufb ymm12,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + vpshufb ymm13,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + vpshufb ymm14,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + vpshufb ymm15,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + + + vpxor ymm12,ymm12,ymm9 + vpxor ymm13,ymm13,ymm9 + vpxor ymm14,ymm14,ymm9 + vpxor ymm15,ymm15,ymm9 + + cmp r10d,24 + jl NEAR $L$aes128__func1 + je NEAR $L$aes192__func1 + + vbroadcasti128 ymm2,XMMWORD[((-208))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-192))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + +$L$aes192__func1: + vbroadcasti128 ymm2,XMMWORD[((-176))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-160))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + +$L$aes128__func1: + + vmovdqu ymm3,YMMWORD[rdx] + vpshufb ymm3,ymm3,ymm0 + vmovdqu ymm4,YMMWORD[rdi] + vpxor ymm3,ymm3,ymm1 + vpclmulqdq ymm5,ymm3,ymm4,0x00 + vpclmulqdq ymm1,ymm3,ymm4,0x11 + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm6,ymm2,ymm7,0x00 + + vbroadcasti128 ymm2,XMMWORD[((-144))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + + vbroadcasti128 ymm2,XMMWORD[((-128))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + + vmovdqu ymm3,YMMWORD[32+rdx] + vpshufb ymm3,ymm3,ymm0 + vmovdqu ymm4,YMMWORD[32+rdi] + vpclmulqdq ymm2,ymm3,ymm4,0x00 + vpxor ymm5,ymm5,ymm2 + vpclmulqdq ymm2,ymm3,ymm4,0x11 + vpxor ymm1,ymm1,ymm2 + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm2,ymm2,ymm7,0x10 + vpxor ymm6,ymm6,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-112))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + + vmovdqu ymm3,YMMWORD[64+rdx] + vpshufb ymm3,ymm3,ymm0 + vmovdqu ymm4,YMMWORD[64+rdi] + + vbroadcasti128 ymm2,XMMWORD[((-96))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vpclmulqdq ymm2,ymm3,ymm4,0x00 + vpxor ymm5,ymm5,ymm2 + vpclmulqdq ymm2,ymm3,ymm4,0x11 + vpxor ymm1,ymm1,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-80))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm2,ymm2,ymm8,0x00 + vpxor ymm6,ymm6,ymm2 + + + vmovdqu ymm3,YMMWORD[96+rdx] + vpshufb ymm3,ymm3,ymm0 + + vbroadcasti128 ymm2,XMMWORD[((-64))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vmovdqu ymm4,YMMWORD[96+rdi] + vpclmulqdq ymm2,ymm3,ymm4,0x00 + vpxor ymm5,ymm5,ymm2 + vpclmulqdq ymm2,ymm3,ymm4,0x11 + vpxor ymm1,ymm1,ymm2 + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm2,ymm2,ymm8,0x10 + vpxor ymm6,ymm6,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-48))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + + vpxor ymm6,ymm6,ymm5 + vpxor ymm6,ymm6,ymm1 + + + vbroadcasti128 ymm4,XMMWORD[$L$gfpoly] + vpclmulqdq ymm2,ymm4,ymm5,0x01 + vpshufd ymm5,ymm5,0x4e + vpxor ymm6,ymm6,ymm5 + vpxor ymm6,ymm6,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-32))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + + vpclmulqdq ymm2,ymm4,ymm6,0x01 + vpshufd ymm6,ymm6,0x4e + vpxor ymm1,ymm1,ymm6 + vpxor ymm1,ymm1,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-16))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vextracti128 xmm2,ymm1,1 + vpxor xmm1,xmm1,xmm2 + + + sub rdx,-128 + vpxor ymm2,ymm10,YMMWORD[rcx] + vpxor ymm3,ymm10,YMMWORD[32+rcx] + vpxor ymm5,ymm10,YMMWORD[64+rcx] + vpxor ymm6,ymm10,YMMWORD[96+rcx] + vaesenclast ymm12,ymm12,ymm2 + vaesenclast ymm13,ymm13,ymm3 + vaesenclast ymm14,ymm14,ymm5 + vaesenclast ymm15,ymm15,ymm6 + vmovdqu YMMWORD[rdx],ymm12 + vmovdqu YMMWORD[32+rdx],ymm13 + vmovdqu YMMWORD[64+rdx],ymm14 + vmovdqu YMMWORD[96+rdx],ymm15 + + sub rcx,-128 + + add r8,-128 + cmp r8,127 + ja NEAR $L$crypt_loop_4x__func1 +$L$ghash_last_ciphertext_4x__func1: + + vmovdqu ymm3,YMMWORD[rdx] + vpshufb ymm3,ymm3,ymm0 + vmovdqu ymm4,YMMWORD[rdi] + vpxor ymm3,ymm3,ymm1 + vpclmulqdq ymm5,ymm3,ymm4,0x00 + vpclmulqdq ymm1,ymm3,ymm4,0x11 + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm6,ymm2,ymm7,0x00 + + vmovdqu ymm3,YMMWORD[32+rdx] + vpshufb ymm3,ymm3,ymm0 + vmovdqu ymm4,YMMWORD[32+rdi] + vpclmulqdq ymm2,ymm3,ymm4,0x00 + vpxor ymm5,ymm5,ymm2 + vpclmulqdq ymm2,ymm3,ymm4,0x11 + vpxor ymm1,ymm1,ymm2 + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm2,ymm2,ymm7,0x10 + vpxor ymm6,ymm6,ymm2 + + vmovdqu ymm3,YMMWORD[64+rdx] + vpshufb ymm3,ymm3,ymm0 + vmovdqu ymm4,YMMWORD[64+rdi] + vpclmulqdq ymm2,ymm3,ymm4,0x00 + vpxor ymm5,ymm5,ymm2 + vpclmulqdq ymm2,ymm3,ymm4,0x11 + vpxor ymm1,ymm1,ymm2 + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm2,ymm2,ymm8,0x00 + vpxor ymm6,ymm6,ymm2 + + + vmovdqu ymm3,YMMWORD[96+rdx] + vpshufb ymm3,ymm3,ymm0 + vmovdqu ymm4,YMMWORD[96+rdi] + vpclmulqdq ymm2,ymm3,ymm4,0x00 + vpxor ymm5,ymm5,ymm2 + vpclmulqdq ymm2,ymm3,ymm4,0x11 + vpxor ymm1,ymm1,ymm2 + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm2,ymm2,ymm8,0x10 + vpxor ymm6,ymm6,ymm2 + + vpxor ymm6,ymm6,ymm5 + vpxor ymm6,ymm6,ymm1 + + + vbroadcasti128 ymm4,XMMWORD[$L$gfpoly] + vpclmulqdq ymm2,ymm4,ymm5,0x01 + vpshufd ymm5,ymm5,0x4e + vpxor ymm6,ymm6,ymm5 + vpxor ymm6,ymm6,ymm2 + + vpclmulqdq ymm2,ymm4,ymm6,0x01 + vpshufd ymm6,ymm6,0x4e + vpxor ymm1,ymm1,ymm6 + vpxor ymm1,ymm1,ymm2 + vextracti128 xmm2,ymm1,1 + vpxor xmm1,xmm1,xmm2 + + sub rdx,-128 +$L$crypt_loop_4x_done__func1: + + test r8,r8 + jz NEAR $L$done__func1 + + + + + + lea rsi,[128+rdi] + sub rsi,r8 + + + vpxor xmm5,xmm5,xmm5 + vpxor xmm6,xmm6,xmm6 + vpxor xmm7,xmm7,xmm7 + + cmp r8,64 + jb NEAR $L$lessthan64bytes__func1 + + + vpshufb ymm12,ymm11,ymm0 + vpaddd ymm11,ymm11,YMMWORD[$L$inc_2blocks] + vpshufb ymm13,ymm11,ymm0 + vpaddd ymm11,ymm11,YMMWORD[$L$inc_2blocks] + vpxor ymm12,ymm12,ymm9 + vpxor ymm13,ymm13,ymm9 + lea rax,[16+r9] +$L$vaesenc_loop_tail_1__func1: + vbroadcasti128 ymm2,XMMWORD[rax] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + add rax,16 + cmp r11,rax + jne NEAR $L$vaesenc_loop_tail_1__func1 + vaesenclast ymm12,ymm12,ymm10 + vaesenclast ymm13,ymm13,ymm10 + + + vmovdqu ymm2,YMMWORD[rcx] + vmovdqu ymm3,YMMWORD[32+rcx] + vpxor ymm12,ymm12,ymm2 + vpxor ymm13,ymm13,ymm3 + vmovdqu YMMWORD[rdx],ymm12 + vmovdqu YMMWORD[32+rdx],ymm13 + + + vpshufb ymm12,ymm12,ymm0 + vpshufb ymm13,ymm13,ymm0 + vpxor ymm12,ymm12,ymm1 + vmovdqu ymm2,YMMWORD[rsi] + vmovdqu ymm3,YMMWORD[32+rsi] + vpclmulqdq ymm5,ymm12,ymm2,0x00 + vpclmulqdq ymm6,ymm12,ymm2,0x01 + vpclmulqdq ymm4,ymm12,ymm2,0x10 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq ymm7,ymm12,ymm2,0x11 + vpclmulqdq ymm4,ymm13,ymm3,0x00 + vpxor ymm5,ymm5,ymm4 + vpclmulqdq ymm4,ymm13,ymm3,0x01 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq ymm4,ymm13,ymm3,0x10 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq ymm4,ymm13,ymm3,0x11 + vpxor ymm7,ymm7,ymm4 + + add rsi,64 + add rcx,64 + add rdx,64 + sub r8,64 + jz NEAR $L$reduce__func1 + + vpxor xmm1,xmm1,xmm1 + + +$L$lessthan64bytes__func1: + vpshufb ymm12,ymm11,ymm0 + vpaddd ymm11,ymm11,YMMWORD[$L$inc_2blocks] + vpshufb ymm13,ymm11,ymm0 + vpxor ymm12,ymm12,ymm9 + vpxor ymm13,ymm13,ymm9 + lea rax,[16+r9] +$L$vaesenc_loop_tail_2__func1: + vbroadcasti128 ymm2,XMMWORD[rax] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + add rax,16 + cmp r11,rax + jne NEAR $L$vaesenc_loop_tail_2__func1 + vaesenclast ymm12,ymm12,ymm10 + vaesenclast ymm13,ymm13,ymm10 + + + + + cmp r8,32 + jb NEAR $L$xor_one_block__func1 + je NEAR $L$xor_two_blocks__func1 + +$L$xor_three_blocks__func1: + vmovdqu ymm2,YMMWORD[rcx] + vmovdqu xmm3,XMMWORD[32+rcx] + vpxor ymm12,ymm12,ymm2 + vpxor xmm13,xmm13,xmm3 + vmovdqu YMMWORD[rdx],ymm12 + vmovdqu XMMWORD[32+rdx],xmm13 + + vpshufb ymm12,ymm12,ymm0 + vpshufb xmm13,xmm13,xmm0 + vpxor ymm12,ymm12,ymm1 + vmovdqu ymm2,YMMWORD[rsi] + vmovdqu xmm3,XMMWORD[32+rsi] + vpclmulqdq xmm4,xmm13,xmm3,0x00 + vpxor ymm5,ymm5,ymm4 + vpclmulqdq xmm4,xmm13,xmm3,0x01 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq xmm4,xmm13,xmm3,0x10 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq xmm4,xmm13,xmm3,0x11 + vpxor ymm7,ymm7,ymm4 + jmp NEAR $L$ghash_mul_one_vec_unreduced__func1 + +$L$xor_two_blocks__func1: + vmovdqu ymm2,YMMWORD[rcx] + vpxor ymm12,ymm12,ymm2 + vmovdqu YMMWORD[rdx],ymm12 + vpshufb ymm12,ymm12,ymm0 + vpxor ymm12,ymm12,ymm1 + vmovdqu ymm2,YMMWORD[rsi] + jmp NEAR $L$ghash_mul_one_vec_unreduced__func1 + +$L$xor_one_block__func1: + vmovdqu xmm2,XMMWORD[rcx] + vpxor xmm12,xmm12,xmm2 + vmovdqu XMMWORD[rdx],xmm12 + vpshufb xmm12,xmm12,xmm0 + vpxor xmm12,xmm12,xmm1 + vmovdqu xmm2,XMMWORD[rsi] + +$L$ghash_mul_one_vec_unreduced__func1: + vpclmulqdq ymm4,ymm12,ymm2,0x00 + vpxor ymm5,ymm5,ymm4 + vpclmulqdq ymm4,ymm12,ymm2,0x01 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq ymm4,ymm12,ymm2,0x10 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq ymm4,ymm12,ymm2,0x11 + vpxor ymm7,ymm7,ymm4 + +$L$reduce__func1: + + vbroadcasti128 ymm2,XMMWORD[$L$gfpoly] + vpclmulqdq ymm3,ymm2,ymm5,0x01 + vpshufd ymm5,ymm5,0x4e + vpxor ymm6,ymm6,ymm5 + vpxor ymm6,ymm6,ymm3 + vpclmulqdq ymm3,ymm2,ymm6,0x01 + vpshufd ymm6,ymm6,0x4e + vpxor ymm7,ymm7,ymm6 + vpxor ymm7,ymm7,ymm3 + vextracti128 xmm1,ymm7,1 + vpxor xmm1,xmm1,xmm7 + +$L$done__func1: + + vpshufb xmm1,xmm1,xmm0 + vmovdqu XMMWORD[r12],xmm1 + + vzeroupper + movdqa xmm6,XMMWORD[rsp] + movdqa xmm7,XMMWORD[16+rsp] + movdqa xmm8,XMMWORD[32+rsp] + movdqa xmm9,XMMWORD[48+rsp] + movdqa xmm10,XMMWORD[64+rsp] + movdqa xmm11,XMMWORD[80+rsp] + movdqa xmm12,XMMWORD[96+rsp] + movdqa xmm13,XMMWORD[112+rsp] + movdqa xmm14,XMMWORD[128+rsp] + movdqa xmm15,XMMWORD[144+rsp] + add rsp,160 + pop r12 + pop rdi + pop rsi + ret +$L$SEH_end_aes_gcm_enc_update_vaes_avx2_17: + + +global aes_gcm_dec_update_vaes_avx2 + +ALIGN 32 +aes_gcm_dec_update_vaes_avx2: + +$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1: +_CET_ENDBR + push rsi +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_2: + push rdi +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_3: + push r12 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_4: + + mov rsi,QWORD[64+rsp] + mov rdi,QWORD[72+rsp] + mov r12,QWORD[80+rsp] + sub rsp,160 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_5: + movdqa XMMWORD[rsp],xmm6 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_6: + movdqa XMMWORD[16+rsp],xmm7 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_7: + movdqa XMMWORD[32+rsp],xmm8 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_8: + movdqa XMMWORD[48+rsp],xmm9 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_9: + movdqa XMMWORD[64+rsp],xmm10 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_10: + movdqa XMMWORD[80+rsp],xmm11 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_11: + movdqa XMMWORD[96+rsp],xmm12 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_12: + movdqa XMMWORD[112+rsp],xmm13 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_13: + movdqa XMMWORD[128+rsp],xmm14 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_14: + movdqa XMMWORD[144+rsp],xmm15 +$L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_15: + +$L$SEH_endprologue_aes_gcm_dec_update_vaes_avx2_16: + vbroadcasti128 ymm0,XMMWORD[$L$bswap_mask] + + + + vmovdqu xmm1,XMMWORD[r12] + vpshufb xmm1,xmm1,xmm0 + vbroadcasti128 ymm11,XMMWORD[rsi] + vpshufb ymm11,ymm11,ymm0 + + + + mov r10d,DWORD[240+r9] + lea r10d,[((-20))+r10*4] + + + + + lea r11,[96+r10*4+r9] + vbroadcasti128 ymm9,XMMWORD[r9] + vbroadcasti128 ymm10,XMMWORD[r11] + + + vpaddd ymm11,ymm11,YMMWORD[$L$ctr_pattern] + + + + cmp r8,127 + jbe NEAR $L$crypt_loop_4x_done__func2 + + vmovdqu ymm7,YMMWORD[128+rdi] + vmovdqu ymm8,YMMWORD[((128+32))+rdi] +ALIGN 16 +$L$crypt_loop_4x__func2: + + + + + vmovdqu ymm2,YMMWORD[$L$inc_2blocks] + vpshufb ymm12,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + vpshufb ymm13,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + vpshufb ymm14,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + vpshufb ymm15,ymm11,ymm0 + vpaddd ymm11,ymm11,ymm2 + + + vpxor ymm12,ymm12,ymm9 + vpxor ymm13,ymm13,ymm9 + vpxor ymm14,ymm14,ymm9 + vpxor ymm15,ymm15,ymm9 + + cmp r10d,24 + jl NEAR $L$aes128__func2 + je NEAR $L$aes192__func2 + + vbroadcasti128 ymm2,XMMWORD[((-208))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-192))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + +$L$aes192__func2: + vbroadcasti128 ymm2,XMMWORD[((-176))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-160))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + +$L$aes128__func2: + + vmovdqu ymm3,YMMWORD[rcx] + vpshufb ymm3,ymm3,ymm0 + vmovdqu ymm4,YMMWORD[rdi] + vpxor ymm3,ymm3,ymm1 + vpclmulqdq ymm5,ymm3,ymm4,0x00 + vpclmulqdq ymm1,ymm3,ymm4,0x11 + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm6,ymm2,ymm7,0x00 + + vbroadcasti128 ymm2,XMMWORD[((-144))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + + vbroadcasti128 ymm2,XMMWORD[((-128))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + + vmovdqu ymm3,YMMWORD[32+rcx] + vpshufb ymm3,ymm3,ymm0 + vmovdqu ymm4,YMMWORD[32+rdi] + vpclmulqdq ymm2,ymm3,ymm4,0x00 + vpxor ymm5,ymm5,ymm2 + vpclmulqdq ymm2,ymm3,ymm4,0x11 + vpxor ymm1,ymm1,ymm2 + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm2,ymm2,ymm7,0x10 + vpxor ymm6,ymm6,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-112))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + + vmovdqu ymm3,YMMWORD[64+rcx] + vpshufb ymm3,ymm3,ymm0 + vmovdqu ymm4,YMMWORD[64+rdi] + + vbroadcasti128 ymm2,XMMWORD[((-96))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vpclmulqdq ymm2,ymm3,ymm4,0x00 + vpxor ymm5,ymm5,ymm2 + vpclmulqdq ymm2,ymm3,ymm4,0x11 + vpxor ymm1,ymm1,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-80))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm2,ymm2,ymm8,0x00 + vpxor ymm6,ymm6,ymm2 + + + vmovdqu ymm3,YMMWORD[96+rcx] + vpshufb ymm3,ymm3,ymm0 + + vbroadcasti128 ymm2,XMMWORD[((-64))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vmovdqu ymm4,YMMWORD[96+rdi] + vpclmulqdq ymm2,ymm3,ymm4,0x00 + vpxor ymm5,ymm5,ymm2 + vpclmulqdq ymm2,ymm3,ymm4,0x11 + vpxor ymm1,ymm1,ymm2 + vpunpckhqdq ymm2,ymm3,ymm3 + vpxor ymm2,ymm2,ymm3 + vpclmulqdq ymm2,ymm2,ymm8,0x10 + vpxor ymm6,ymm6,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-48))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + + vpxor ymm6,ymm6,ymm5 + vpxor ymm6,ymm6,ymm1 + + + vbroadcasti128 ymm4,XMMWORD[$L$gfpoly] + vpclmulqdq ymm2,ymm4,ymm5,0x01 + vpshufd ymm5,ymm5,0x4e + vpxor ymm6,ymm6,ymm5 + vpxor ymm6,ymm6,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-32))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + + vpclmulqdq ymm2,ymm4,ymm6,0x01 + vpshufd ymm6,ymm6,0x4e + vpxor ymm1,ymm1,ymm6 + vpxor ymm1,ymm1,ymm2 + + vbroadcasti128 ymm2,XMMWORD[((-16))+r11] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + vaesenc ymm14,ymm14,ymm2 + vaesenc ymm15,ymm15,ymm2 + + vextracti128 xmm2,ymm1,1 + vpxor xmm1,xmm1,xmm2 + + + + vpxor ymm2,ymm10,YMMWORD[rcx] + vpxor ymm3,ymm10,YMMWORD[32+rcx] + vpxor ymm5,ymm10,YMMWORD[64+rcx] + vpxor ymm6,ymm10,YMMWORD[96+rcx] + vaesenclast ymm12,ymm12,ymm2 + vaesenclast ymm13,ymm13,ymm3 + vaesenclast ymm14,ymm14,ymm5 + vaesenclast ymm15,ymm15,ymm6 + vmovdqu YMMWORD[rdx],ymm12 + vmovdqu YMMWORD[32+rdx],ymm13 + vmovdqu YMMWORD[64+rdx],ymm14 + vmovdqu YMMWORD[96+rdx],ymm15 + + sub rcx,-128 + sub rdx,-128 + add r8,-128 + cmp r8,127 + ja NEAR $L$crypt_loop_4x__func2 +$L$crypt_loop_4x_done__func2: + + test r8,r8 + jz NEAR $L$done__func2 + + + + + + lea rsi,[128+rdi] + sub rsi,r8 + + + vpxor xmm5,xmm5,xmm5 + vpxor xmm6,xmm6,xmm6 + vpxor xmm7,xmm7,xmm7 + + cmp r8,64 + jb NEAR $L$lessthan64bytes__func2 + + + vpshufb ymm12,ymm11,ymm0 + vpaddd ymm11,ymm11,YMMWORD[$L$inc_2blocks] + vpshufb ymm13,ymm11,ymm0 + vpaddd ymm11,ymm11,YMMWORD[$L$inc_2blocks] + vpxor ymm12,ymm12,ymm9 + vpxor ymm13,ymm13,ymm9 + lea rax,[16+r9] +$L$vaesenc_loop_tail_1__func2: + vbroadcasti128 ymm2,XMMWORD[rax] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + add rax,16 + cmp r11,rax + jne NEAR $L$vaesenc_loop_tail_1__func2 + vaesenclast ymm12,ymm12,ymm10 + vaesenclast ymm13,ymm13,ymm10 + + + vmovdqu ymm2,YMMWORD[rcx] + vmovdqu ymm3,YMMWORD[32+rcx] + vpxor ymm12,ymm12,ymm2 + vpxor ymm13,ymm13,ymm3 + vmovdqu YMMWORD[rdx],ymm12 + vmovdqu YMMWORD[32+rdx],ymm13 + + + vpshufb ymm12,ymm2,ymm0 + vpshufb ymm13,ymm3,ymm0 + vpxor ymm12,ymm12,ymm1 + vmovdqu ymm2,YMMWORD[rsi] + vmovdqu ymm3,YMMWORD[32+rsi] + vpclmulqdq ymm5,ymm12,ymm2,0x00 + vpclmulqdq ymm6,ymm12,ymm2,0x01 + vpclmulqdq ymm4,ymm12,ymm2,0x10 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq ymm7,ymm12,ymm2,0x11 + vpclmulqdq ymm4,ymm13,ymm3,0x00 + vpxor ymm5,ymm5,ymm4 + vpclmulqdq ymm4,ymm13,ymm3,0x01 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq ymm4,ymm13,ymm3,0x10 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq ymm4,ymm13,ymm3,0x11 + vpxor ymm7,ymm7,ymm4 + + add rsi,64 + add rcx,64 + add rdx,64 + sub r8,64 + jz NEAR $L$reduce__func2 + + vpxor xmm1,xmm1,xmm1 + + +$L$lessthan64bytes__func2: + vpshufb ymm12,ymm11,ymm0 + vpaddd ymm11,ymm11,YMMWORD[$L$inc_2blocks] + vpshufb ymm13,ymm11,ymm0 + vpxor ymm12,ymm12,ymm9 + vpxor ymm13,ymm13,ymm9 + lea rax,[16+r9] +$L$vaesenc_loop_tail_2__func2: + vbroadcasti128 ymm2,XMMWORD[rax] + vaesenc ymm12,ymm12,ymm2 + vaesenc ymm13,ymm13,ymm2 + add rax,16 + cmp r11,rax + jne NEAR $L$vaesenc_loop_tail_2__func2 + vaesenclast ymm12,ymm12,ymm10 + vaesenclast ymm13,ymm13,ymm10 + + + + + cmp r8,32 + jb NEAR $L$xor_one_block__func2 + je NEAR $L$xor_two_blocks__func2 + +$L$xor_three_blocks__func2: + vmovdqu ymm2,YMMWORD[rcx] + vmovdqu xmm3,XMMWORD[32+rcx] + vpxor ymm12,ymm12,ymm2 + vpxor xmm13,xmm13,xmm3 + vmovdqu YMMWORD[rdx],ymm12 + vmovdqu XMMWORD[32+rdx],xmm13 + + vpshufb ymm12,ymm2,ymm0 + vpshufb xmm13,xmm3,xmm0 + vpxor ymm12,ymm12,ymm1 + vmovdqu ymm2,YMMWORD[rsi] + vmovdqu xmm3,XMMWORD[32+rsi] + vpclmulqdq xmm4,xmm13,xmm3,0x00 + vpxor ymm5,ymm5,ymm4 + vpclmulqdq xmm4,xmm13,xmm3,0x01 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq xmm4,xmm13,xmm3,0x10 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq xmm4,xmm13,xmm3,0x11 + vpxor ymm7,ymm7,ymm4 + jmp NEAR $L$ghash_mul_one_vec_unreduced__func2 + +$L$xor_two_blocks__func2: + vmovdqu ymm2,YMMWORD[rcx] + vpxor ymm12,ymm12,ymm2 + vmovdqu YMMWORD[rdx],ymm12 + vpshufb ymm12,ymm2,ymm0 + vpxor ymm12,ymm12,ymm1 + vmovdqu ymm2,YMMWORD[rsi] + jmp NEAR $L$ghash_mul_one_vec_unreduced__func2 + +$L$xor_one_block__func2: + vmovdqu xmm2,XMMWORD[rcx] + vpxor xmm12,xmm12,xmm2 + vmovdqu XMMWORD[rdx],xmm12 + vpshufb xmm12,xmm2,xmm0 + vpxor xmm12,xmm12,xmm1 + vmovdqu xmm2,XMMWORD[rsi] + +$L$ghash_mul_one_vec_unreduced__func2: + vpclmulqdq ymm4,ymm12,ymm2,0x00 + vpxor ymm5,ymm5,ymm4 + vpclmulqdq ymm4,ymm12,ymm2,0x01 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq ymm4,ymm12,ymm2,0x10 + vpxor ymm6,ymm6,ymm4 + vpclmulqdq ymm4,ymm12,ymm2,0x11 + vpxor ymm7,ymm7,ymm4 + +$L$reduce__func2: + + vbroadcasti128 ymm2,XMMWORD[$L$gfpoly] + vpclmulqdq ymm3,ymm2,ymm5,0x01 + vpshufd ymm5,ymm5,0x4e + vpxor ymm6,ymm6,ymm5 + vpxor ymm6,ymm6,ymm3 + vpclmulqdq ymm3,ymm2,ymm6,0x01 + vpshufd ymm6,ymm6,0x4e + vpxor ymm7,ymm7,ymm6 + vpxor ymm7,ymm7,ymm3 + vextracti128 xmm1,ymm7,1 + vpxor xmm1,xmm1,xmm7 + +$L$done__func2: + + vpshufb xmm1,xmm1,xmm0 + vmovdqu XMMWORD[r12],xmm1 + + vzeroupper + movdqa xmm6,XMMWORD[rsp] + movdqa xmm7,XMMWORD[16+rsp] + movdqa xmm8,XMMWORD[32+rsp] + movdqa xmm9,XMMWORD[48+rsp] + movdqa xmm10,XMMWORD[64+rsp] + movdqa xmm11,XMMWORD[80+rsp] + movdqa xmm12,XMMWORD[96+rsp] + movdqa xmm13,XMMWORD[112+rsp] + movdqa xmm14,XMMWORD[128+rsp] + movdqa xmm15,XMMWORD[144+rsp] + add rsp,160 + pop r12 + pop rdi + pop rsi + ret +$L$SEH_end_aes_gcm_dec_update_vaes_avx2_17: + + +section .pdata rdata align=4 +ALIGN 4 + DD $L$SEH_begin_gcm_init_vpclmulqdq_avx2_1 wrt ..imagebase + DD $L$SEH_end_gcm_init_vpclmulqdq_avx2_5 wrt ..imagebase + DD $L$SEH_info_gcm_init_vpclmulqdq_avx2_0 wrt ..imagebase + + DD $L$SEH_begin_gcm_gmult_vpclmulqdq_avx2_1 wrt ..imagebase + DD $L$SEH_end_gcm_gmult_vpclmulqdq_avx2_5 wrt ..imagebase + DD $L$SEH_info_gcm_gmult_vpclmulqdq_avx2_0 wrt ..imagebase + + DD $L$SEH_begin_gcm_ghash_vpclmulqdq_avx2_1 wrt ..imagebase + DD $L$SEH_end_gcm_ghash_vpclmulqdq_avx2_8 wrt ..imagebase + DD $L$SEH_info_gcm_ghash_vpclmulqdq_avx2_0 wrt ..imagebase + + DD $L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 wrt ..imagebase + DD $L$SEH_end_aes_gcm_enc_update_vaes_avx2_17 wrt ..imagebase + DD $L$SEH_info_aes_gcm_enc_update_vaes_avx2_0 wrt ..imagebase + + DD $L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 wrt ..imagebase + DD $L$SEH_end_aes_gcm_dec_update_vaes_avx2_17 wrt ..imagebase + DD $L$SEH_info_aes_gcm_dec_update_vaes_avx2_0 wrt ..imagebase + + +section .xdata rdata align=8 +ALIGN 4 +$L$SEH_info_gcm_init_vpclmulqdq_avx2_0: + DB 1 + DB $L$SEH_endprologue_gcm_init_vpclmulqdq_avx2_4-$L$SEH_begin_gcm_init_vpclmulqdq_avx2_1 + DB 3 + DB 0 + DB $L$SEH_prologue_gcm_init_vpclmulqdq_avx2_3-$L$SEH_begin_gcm_init_vpclmulqdq_avx2_1 + DB 104 + DW 0 + DB $L$SEH_prologue_gcm_init_vpclmulqdq_avx2_2-$L$SEH_begin_gcm_init_vpclmulqdq_avx2_1 + DB 34 + + DW 0 +$L$SEH_info_gcm_gmult_vpclmulqdq_avx2_0: + DB 1 + DB $L$SEH_endprologue_gcm_gmult_vpclmulqdq_avx2_4-$L$SEH_begin_gcm_gmult_vpclmulqdq_avx2_1 + DB 3 + DB 0 + DB $L$SEH_prologue_gcm_gmult_vpclmulqdq_avx2_3-$L$SEH_begin_gcm_gmult_vpclmulqdq_avx2_1 + DB 104 + DW 0 + DB $L$SEH_prologue_gcm_gmult_vpclmulqdq_avx2_2-$L$SEH_begin_gcm_gmult_vpclmulqdq_avx2_1 + DB 34 + + DW 0 +$L$SEH_info_gcm_ghash_vpclmulqdq_avx2_0: + DB 1 + DB $L$SEH_endprologue_gcm_ghash_vpclmulqdq_avx2_7-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx2_1 + DB 9 + DB 0 + DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx2_6-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx2_1 + DB 152 + DW 3 + DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx2_5-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx2_1 + DB 136 + DW 2 + DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx2_4-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx2_1 + DB 120 + DW 1 + DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx2_3-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx2_1 + DB 104 + DW 0 + DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx2_2-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx2_1 + DB 130 + + DW 0 +$L$SEH_info_aes_gcm_enc_update_vaes_avx2_0: + DB 1 + DB $L$SEH_endprologue_aes_gcm_enc_update_vaes_avx2_16-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 25 + DB 0 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_15-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 248 + DW 9 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_14-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 232 + DW 8 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_13-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 216 + DW 7 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_12-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 200 + DW 6 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_11-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 184 + DW 5 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_10-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 168 + DW 4 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_9-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 152 + DW 3 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_8-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 136 + DW 2 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_7-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 120 + DW 1 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_6-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 104 + DW 0 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_5-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 1 + DW 20 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_4-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 192 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_3-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 112 + DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx2_2-$L$SEH_begin_aes_gcm_enc_update_vaes_avx2_1 + DB 96 + + DW 0 +$L$SEH_info_aes_gcm_dec_update_vaes_avx2_0: + DB 1 + DB $L$SEH_endprologue_aes_gcm_dec_update_vaes_avx2_16-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 25 + DB 0 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_15-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 248 + DW 9 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_14-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 232 + DW 8 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_13-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 216 + DW 7 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_12-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 200 + DW 6 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_11-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 184 + DW 5 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_10-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 168 + DW 4 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_9-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 152 + DW 3 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_8-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 136 + DW 2 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_7-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 120 + DW 1 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_6-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 104 + DW 0 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_5-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 1 + DW 20 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_4-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 192 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_3-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 112 + DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx2_2-$L$SEH_begin_aes_gcm_dec_update_vaes_avx2_1 + DB 96 + + DW 0 +%else +; Work around https://bugzilla.nasm.us/show_bug.cgi?id=3392738 +ret +%endif diff --git a/gen/sources.bzl b/gen/sources.bzl index f91b49e00d..5af0dd23f5 100644 --- a/gen/sources.bzl +++ b/gen/sources.bzl @@ -104,6 +104,8 @@ bcm_internal_headers = [ bcm_sources_asm = [ "gen/bcm/aes-gcm-avx10-x86_64-apple.S", "gen/bcm/aes-gcm-avx10-x86_64-linux.S", + "gen/bcm/aes-gcm-avx2-x86_64-apple.S", + "gen/bcm/aes-gcm-avx2-x86_64-linux.S", "gen/bcm/aesni-gcm-x86_64-apple.S", "gen/bcm/aesni-gcm-x86_64-linux.S", "gen/bcm/aesni-x86-apple.S", @@ -203,6 +205,7 @@ bcm_sources_asm = [ bcm_sources_nasm = [ "gen/bcm/aes-gcm-avx10-x86_64-win.asm", + "gen/bcm/aes-gcm-avx2-x86_64-win.asm", "gen/bcm/aesni-gcm-x86_64-win.asm", "gen/bcm/aesni-x86-win.asm", "gen/bcm/aesni-x86_64-win.asm", diff --git a/gen/sources.cmake b/gen/sources.cmake index 369a9e658e..bbbb9c2449 100644 --- a/gen/sources.cmake +++ b/gen/sources.cmake @@ -110,6 +110,8 @@ set( gen/bcm/aes-gcm-avx10-x86_64-apple.S gen/bcm/aes-gcm-avx10-x86_64-linux.S + gen/bcm/aes-gcm-avx2-x86_64-apple.S + gen/bcm/aes-gcm-avx2-x86_64-linux.S gen/bcm/aesni-gcm-x86_64-apple.S gen/bcm/aesni-gcm-x86_64-linux.S gen/bcm/aesni-x86-apple.S @@ -211,6 +213,7 @@ set( BCM_SOURCES_NASM gen/bcm/aes-gcm-avx10-x86_64-win.asm + gen/bcm/aes-gcm-avx2-x86_64-win.asm gen/bcm/aesni-gcm-x86_64-win.asm gen/bcm/aesni-x86-win.asm gen/bcm/aesni-x86_64-win.asm diff --git a/gen/sources.gni b/gen/sources.gni index d9862d97a9..b5c3d54223 100644 --- a/gen/sources.gni +++ b/gen/sources.gni @@ -104,6 +104,8 @@ bcm_internal_headers = [ bcm_sources_asm = [ "gen/bcm/aes-gcm-avx10-x86_64-apple.S", "gen/bcm/aes-gcm-avx10-x86_64-linux.S", + "gen/bcm/aes-gcm-avx2-x86_64-apple.S", + "gen/bcm/aes-gcm-avx2-x86_64-linux.S", "gen/bcm/aesni-gcm-x86_64-apple.S", "gen/bcm/aesni-gcm-x86_64-linux.S", "gen/bcm/aesni-x86-apple.S", @@ -203,6 +205,7 @@ bcm_sources_asm = [ bcm_sources_nasm = [ "gen/bcm/aes-gcm-avx10-x86_64-win.asm", + "gen/bcm/aes-gcm-avx2-x86_64-win.asm", "gen/bcm/aesni-gcm-x86_64-win.asm", "gen/bcm/aesni-x86-win.asm", "gen/bcm/aesni-x86_64-win.asm", diff --git a/gen/sources.json b/gen/sources.json index 1b482e1bd4..c4604c8365 100644 --- a/gen/sources.json +++ b/gen/sources.json @@ -88,6 +88,8 @@ "asm": [ "gen/bcm/aes-gcm-avx10-x86_64-apple.S", "gen/bcm/aes-gcm-avx10-x86_64-linux.S", + "gen/bcm/aes-gcm-avx2-x86_64-apple.S", + "gen/bcm/aes-gcm-avx2-x86_64-linux.S", "gen/bcm/aesni-gcm-x86_64-apple.S", "gen/bcm/aesni-gcm-x86_64-linux.S", "gen/bcm/aesni-x86-apple.S", @@ -186,6 +188,7 @@ ], "nasm": [ "gen/bcm/aes-gcm-avx10-x86_64-win.asm", + "gen/bcm/aes-gcm-avx2-x86_64-win.asm", "gen/bcm/aesni-gcm-x86_64-win.asm", "gen/bcm/aesni-x86-win.asm", "gen/bcm/aesni-x86_64-win.asm", From 0fd879120d6f25b65084b288c61e0412cf265ba4 Mon Sep 17 00:00:00 2001 From: Eric Biggers Date: Tue, 17 Dec 2024 03:54:56 +0000 Subject: [PATCH 20/64] Disable the "AVX10/256" AES-GCM functions for now Since there is now a VAES+AVX2 implementation of AES-GCM, and the future of AVX10/256 is uncertain, disable the AES-GCM functions that use AVX10/256 (equivalently AVX512 with a maximum vector length of 256 bits). This leaves VAES+AVX2 as the sole 256-bit support for now. For now this just affects Intel Ice Lake and Tiger Lake (which actually support AVX512, but where downclocking issues make 256-bit arguably preferable to 512-bit), where a slight performance loss is seen on long messages. The following tables compare AES-256-GCM throughput in MB/s on Ice Lake server for various message lengths: Encryption: | 16384 | 4096 | 4095 | 1420 | 512 | 500 | --------+-------+-------+-------+-------+-------+-------+ Before | 7533 | 6990 | 6220 | 5096 | 4200 | 2702 | After | 7403 | 6879 | 6236 | 4980 | 4040 | 2868 | | 300 | 200 | 64 | 63 | 16 | --------+-------+-------+-------+-------+-------+ Before | 2086 | 1555 | 1031 | 657 | 433 | After | 2069 | 1635 | 1045 | 667 | 430 | Decryption: | 16384 | 4096 | 4095 | 1420 | 512 | 500 | --------+-------+-------+-------+-------+-------+-------+ Before | 7703 | 7140 | 6524 | 5283 | 4244 | 2990 | After | 7572 | 7056 | 6494 | 5155 | 4224 | 3073 | | 300 | 200 | 64 | 63 | 16 | --------+-------+-------+-------+-------+-------+ Before | 2276 | 1733 | 1070 | 680 | 447 | After | 2249 | 1743 | 1100 | 692 | 447 | This change should be reconsidered if AVX10/256 sees widespread support, as we shouldn't carry forward a restriction to AVX2 unnecessarily. This change also replaces gcm_init_vpclmulqdq_avx10 with gcm_init_vpclmulqdq_avx10_512, now instantiated using 512-bit vectors. Otherwise it would be the only avx10 function left using 256-bit. Change-Id: I7fd21568482118a2ce7a382e9042b187cd2739f7 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74369 Reviewed-by: David Benjamin Commit-Queue: David Benjamin --- .../modes/asm/aes-gcm-avx10-x86_64.pl | 37 +- crypto/fipsmodule/modes/gcm.cc.inc | 25 +- crypto/fipsmodule/modes/gcm_test.cc | 12 +- crypto/fipsmodule/modes/internal.h | 13 +- crypto/impl_dispatch_test.cc | 6 +- crypto/internal.h | 2 +- gen/bcm/aes-gcm-avx10-x86_64-apple.S | 1208 ++------------ gen/bcm/aes-gcm-avx10-x86_64-linux.S | 1217 ++------------ gen/bcm/aes-gcm-avx10-x86_64-win.asm | 1453 ++--------------- 9 files changed, 311 insertions(+), 3662 deletions(-) diff --git a/crypto/fipsmodule/modes/asm/aes-gcm-avx10-x86_64.pl b/crypto/fipsmodule/modes/asm/aes-gcm-avx10-x86_64.pl index 269ac801a2..06ea7e6179 100644 --- a/crypto/fipsmodule/modes/asm/aes-gcm-avx10-x86_64.pl +++ b/crypto/fipsmodule/modes/asm/aes-gcm-avx10-x86_64.pl @@ -1321,26 +1321,31 @@ sub _aes_gcm_update { } $code .= _end_func; -_set_veclen 32; - -$code .= _begin_func "gcm_init_vpclmulqdq_avx10", 0; -$code .= _aes_gcm_init; -$code .= _end_func; - -$code .= _begin_func "gcm_ghash_vpclmulqdq_avx10_256", 1; -$code .= _ghash_update; -$code .= _end_func; +# Disabled until significant deployment of AVX10/256 is seen. The separate +# *_vaes_avx2 implementation provides the only 256-bit support for now. +# +# $code .= _begin_func "gcm_init_vpclmulqdq_avx10_256", 0; +# $code .= _aes_gcm_init; +# $code .= _end_func; +# +# $code .= _begin_func "gcm_ghash_vpclmulqdq_avx10_256", 1; +# $code .= _ghash_update; +# $code .= _end_func; +# +# $code .= _begin_func "aes_gcm_enc_update_vaes_avx10_256", 1; +# $code .= _aes_gcm_update 1; +# $code .= _end_func; +# +# $code .= _begin_func "aes_gcm_dec_update_vaes_avx10_256", 1; +# $code .= _aes_gcm_update 0; +# $code .= _end_func; -$code .= _begin_func "aes_gcm_enc_update_vaes_avx10_256", 1; -$code .= _aes_gcm_update 1; -$code .= _end_func; +_set_veclen 64; -$code .= _begin_func "aes_gcm_dec_update_vaes_avx10_256", 1; -$code .= _aes_gcm_update 0; +$code .= _begin_func "gcm_init_vpclmulqdq_avx10_512", 0; +$code .= _aes_gcm_init; $code .= _end_func; -_set_veclen 64; - $code .= _begin_func "gcm_ghash_vpclmulqdq_avx10_512", 1; $code .= _ghash_update; $code .= _end_func; diff --git a/crypto/fipsmodule/modes/gcm.cc.inc b/crypto/fipsmodule/modes/gcm.cc.inc index e77c52589a..d8ccf0093d 100644 --- a/crypto/fipsmodule/modes/gcm.cc.inc +++ b/crypto/fipsmodule/modes/gcm.cc.inc @@ -104,11 +104,6 @@ static size_t hw_gcm_encrypt(const uint8_t *in, uint8_t *out, size_t len, aes_gcm_enc_update_vaes_avx2(in, out, len, key, ivec, Htable, Xi); CRYPTO_store_u32_be(&ivec[12], CRYPTO_load_u32_be(&ivec[12]) + len / 16); return len; - case gcm_x86_vaes_avx10_256: - len &= kSizeTWithoutLower4Bits; - aes_gcm_enc_update_vaes_avx10_256(in, out, len, key, ivec, Htable, Xi); - CRYPTO_store_u32_be(&ivec[12], CRYPTO_load_u32_be(&ivec[12]) + len / 16); - return len; case gcm_x86_vaes_avx10_512: len &= kSizeTWithoutLower4Bits; aes_gcm_enc_update_vaes_avx10_512(in, out, len, key, ivec, Htable, Xi); @@ -129,11 +124,6 @@ static size_t hw_gcm_decrypt(const uint8_t *in, uint8_t *out, size_t len, aes_gcm_dec_update_vaes_avx2(in, out, len, key, ivec, Htable, Xi); CRYPTO_store_u32_be(&ivec[12], CRYPTO_load_u32_be(&ivec[12]) + len / 16); return len; - case gcm_x86_vaes_avx10_256: - len &= kSizeTWithoutLower4Bits; - aes_gcm_dec_update_vaes_avx10_256(in, out, len, key, ivec, Htable, Xi); - CRYPTO_store_u32_be(&ivec[12], CRYPTO_load_u32_be(&ivec[12]) + len / 16); - return len; case gcm_x86_vaes_avx10_512: len &= kSizeTWithoutLower4Bits; aes_gcm_dec_update_vaes_avx10_512(in, out, len, key, ivec, Htable, Xi); @@ -183,14 +173,10 @@ void CRYPTO_ghash_init(gmult_func *out_mult, ghash_func *out_hash, if (crypto_gcm_clmul_enabled()) { if (CRYPTO_is_VPCLMULQDQ_capable() && CRYPTO_is_AVX2_capable()) { if (CRYPTO_is_AVX512BW_capable() && CRYPTO_is_AVX512VL_capable() && - CRYPTO_is_BMI2_capable()) { - gcm_init_vpclmulqdq_avx10(out_table, H); + CRYPTO_is_BMI2_capable() && !CRYPTO_cpu_avoid_zmm_registers()) { + gcm_init_vpclmulqdq_avx10_512(out_table, H); *out_mult = gcm_gmult_vpclmulqdq_avx10; - if (CRYPTO_cpu_avoid_zmm_registers()) { - *out_hash = gcm_ghash_vpclmulqdq_avx10_256; - } else { - *out_hash = gcm_ghash_vpclmulqdq_avx10_512; - } + *out_hash = gcm_ghash_vpclmulqdq_avx10_512; return; } gcm_init_vpclmulqdq_avx2(out_table, H); @@ -275,11 +261,8 @@ void CRYPTO_gcm128_init_aes_key(GCM128_KEY *gcm_key, const uint8_t *key, #if !defined(OPENSSL_NO_ASM) #if defined(OPENSSL_X86_64) - if (gcm_key->ghash == gcm_ghash_vpclmulqdq_avx10_256 && + if (gcm_key->ghash == gcm_ghash_vpclmulqdq_avx10_512 && CRYPTO_is_VAES_capable()) { - gcm_key->impl = gcm_x86_vaes_avx10_256; - } else if (gcm_key->ghash == gcm_ghash_vpclmulqdq_avx10_512 && - CRYPTO_is_VAES_capable()) { gcm_key->impl = gcm_x86_vaes_avx10_512; } else if (gcm_key->ghash == gcm_ghash_vpclmulqdq_avx2 && CRYPTO_is_VAES_capable()) { diff --git a/crypto/fipsmodule/modes/gcm_test.cc b/crypto/fipsmodule/modes/gcm_test.cc index d195526269..6329675959 100644 --- a/crypto/fipsmodule/modes/gcm_test.cc +++ b/crypto/fipsmodule/modes/gcm_test.cc @@ -111,21 +111,15 @@ TEST(GCMTest, ABI) { static const uint8_t kKey[16] = {0}; uint8_t iv[16] = {0}; - CHECK_ABI_SEH(gcm_init_vpclmulqdq_avx10, Htable, kH); + CHECK_ABI_SEH(gcm_init_vpclmulqdq_avx10_512, Htable, kH); CHECK_ABI_SEH(gcm_gmult_vpclmulqdq_avx10, X, Htable); for (size_t blocks : kBlockCounts) { - CHECK_ABI_SEH(gcm_ghash_vpclmulqdq_avx10_256, X, Htable, buf, - 16 * blocks); CHECK_ABI_SEH(gcm_ghash_vpclmulqdq_avx10_512, X, Htable, buf, 16 * blocks); } aes_hw_set_encrypt_key(kKey, 128, &aes_key); for (size_t blocks : kBlockCounts) { - CHECK_ABI_SEH(aes_gcm_enc_update_vaes_avx10_256, buf, buf, blocks * 16, - &aes_key, iv, Htable, X); - CHECK_ABI_SEH(aes_gcm_enc_update_vaes_avx10_256, buf, buf, - blocks * 16 + 7, &aes_key, iv, Htable, X); CHECK_ABI_SEH(aes_gcm_enc_update_vaes_avx10_512, buf, buf, blocks * 16, &aes_key, iv, Htable, X); CHECK_ABI_SEH(aes_gcm_enc_update_vaes_avx10_512, buf, buf, @@ -133,10 +127,6 @@ TEST(GCMTest, ABI) { } aes_hw_set_decrypt_key(kKey, 128, &aes_key); for (size_t blocks : kBlockCounts) { - CHECK_ABI_SEH(aes_gcm_dec_update_vaes_avx10_256, buf, buf, blocks * 16, - &aes_key, iv, Htable, X); - CHECK_ABI_SEH(aes_gcm_dec_update_vaes_avx10_256, buf, buf, - blocks * 16 + 7, &aes_key, iv, Htable, X); CHECK_ABI_SEH(aes_gcm_dec_update_vaes_avx10_512, buf, buf, blocks * 16, &aes_key, iv, Htable, X); CHECK_ABI_SEH(aes_gcm_dec_update_vaes_avx10_512, buf, buf, diff --git a/crypto/fipsmodule/modes/internal.h b/crypto/fipsmodule/modes/internal.h index f041bf8edd..7a6e9aa3c6 100644 --- a/crypto/fipsmodule/modes/internal.h +++ b/crypto/fipsmodule/modes/internal.h @@ -70,7 +70,6 @@ enum gcm_impl_t { gcm_separate = 0, // No combined AES-GCM, but may have AES-CTR and GHASH. gcm_x86_aesni, gcm_x86_vaes_avx2, - gcm_x86_vaes_avx10_256, gcm_x86_vaes_avx10_512, gcm_arm64_aes, }; @@ -212,20 +211,10 @@ void aes_gcm_dec_update_vaes_avx2(const uint8_t *in, uint8_t *out, size_t len, const AES_KEY *key, const uint8_t ivec[16], const u128 Htable[16], uint8_t Xi[16]); -void gcm_init_vpclmulqdq_avx10(u128 Htable[16], const uint64_t H[2]); +void gcm_init_vpclmulqdq_avx10_512(u128 Htable[16], const uint64_t H[2]); void gcm_gmult_vpclmulqdq_avx10(uint8_t Xi[16], const u128 Htable[16]); -void gcm_ghash_vpclmulqdq_avx10_256(uint8_t Xi[16], const u128 Htable[16], - const uint8_t *in, size_t len); void gcm_ghash_vpclmulqdq_avx10_512(uint8_t Xi[16], const u128 Htable[16], const uint8_t *in, size_t len); -void aes_gcm_enc_update_vaes_avx10_256(const uint8_t *in, uint8_t *out, - size_t len, const AES_KEY *key, - const uint8_t ivec[16], - const u128 Htable[16], uint8_t Xi[16]); -void aes_gcm_dec_update_vaes_avx10_256(const uint8_t *in, uint8_t *out, - size_t len, const AES_KEY *key, - const uint8_t ivec[16], - const u128 Htable[16], uint8_t Xi[16]); void aes_gcm_enc_update_vaes_avx10_512(const uint8_t *in, uint8_t *out, size_t len, const AES_KEY *key, const uint8_t ivec[16], diff --git a/crypto/impl_dispatch_test.cc b/crypto/impl_dispatch_test.cc index bfd004521b..26913c7ee8 100644 --- a/crypto/impl_dispatch_test.cc +++ b/crypto/impl_dispatch_test.cc @@ -95,7 +95,6 @@ constexpr size_t kFlag_aesni_gcm_encrypt = 2; constexpr size_t kFlag_aes_hw_set_encrypt_key = 3; constexpr size_t kFlag_vpaes_encrypt = 4; constexpr size_t kFlag_vpaes_set_encrypt_key = 5; -constexpr size_t kFlag_aes_gcm_enc_update_vaes_avx10_256 = 6; constexpr size_t kFlag_aes_gcm_enc_update_vaes_avx10_512 = 7; constexpr size_t kFlag_aes_gcm_enc_update_vaes_avx2 = 8; @@ -109,11 +108,10 @@ TEST_F(ImplDispatchTest, AEAD_AES_GCM) { is_x86_64_ && aesni_ && avx_movbe_ && !vaes_}, {kFlag_vpaes_encrypt, ssse3_ && !aesni_}, {kFlag_vpaes_set_encrypt_key, ssse3_ && !aesni_}, - {kFlag_aes_gcm_enc_update_vaes_avx10_256, - is_x86_64_ && vaes_ && avx10_ && avoid_zmm_}, {kFlag_aes_gcm_enc_update_vaes_avx10_512, is_x86_64_ && vaes_ && avx10_ && !avoid_zmm_}, - {kFlag_aes_gcm_enc_update_vaes_avx2, is_x86_64_ && vaes_ && !avx10_}, + {kFlag_aes_gcm_enc_update_vaes_avx2, + is_x86_64_ && vaes_ && !(avx10_ && !avoid_zmm_)}, }, [] { const uint8_t kZeros[16] = {0}; diff --git a/crypto/internal.h b/crypto/internal.h index 62273c6b26..5ebfaff895 100644 --- a/crypto/internal.h +++ b/crypto/internal.h @@ -1408,7 +1408,7 @@ inline int CRYPTO_is_ARMv8_SHA512_capable(void) { // 3: aes_hw_set_encrypt_key // 4: vpaes_encrypt // 5: vpaes_set_encrypt_key -// 6: aes_gcm_enc_update_vaes_avx10_256 +// 6: aes_gcm_enc_update_vaes_avx10_256 [reserved] // 7: aes_gcm_enc_update_vaes_avx10_512 // 8: aes_gcm_enc_update_vaes_avx2 extern uint8_t BORINGSSL_function_hit[9]; diff --git a/gen/bcm/aes-gcm-avx10-x86_64-apple.S b/gen/bcm/aes-gcm-avx10-x86_64-apple.S index b75bb07151..54fcde0485 100644 --- a/gen/bcm/aes-gcm-avx10-x86_64-apple.S +++ b/gen/bcm/aes-gcm-avx10-x86_64-apple.S @@ -75,16 +75,16 @@ _CET_ENDBR -.globl _gcm_init_vpclmulqdq_avx10 -.private_extern _gcm_init_vpclmulqdq_avx10 +.globl _gcm_init_vpclmulqdq_avx10_512 +.private_extern _gcm_init_vpclmulqdq_avx10_512 .p2align 5 -_gcm_init_vpclmulqdq_avx10: +_gcm_init_vpclmulqdq_avx10_512: _CET_ENDBR - leaq 256-32(%rdi),%r8 + leaq 256-64(%rdi),%r8 @@ -112,7 +112,7 @@ _CET_ENDBR vpternlogd $0x78,L$gfpoly_and_internal_carrybit(%rip),%xmm0,%xmm3 - vbroadcasti32x4 L$gfpoly(%rip),%ymm5 + vbroadcasti32x4 L$gfpoly(%rip),%zmm5 @@ -137,1069 +137,47 @@ _CET_ENDBR vinserti128 $1,%xmm3,%ymm4,%ymm3 vinserti128 $1,%xmm4,%ymm4,%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm0 + vpclmulqdq $0x01,%ymm4,%ymm3,%ymm1 + vpclmulqdq $0x10,%ymm4,%ymm3,%ymm2 + vpxord %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x01,%ymm0,%ymm5,%ymm2 + vpshufd $0x4e,%ymm0,%ymm0 + vpternlogd $0x96,%ymm2,%ymm0,%ymm1 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm4 + vpclmulqdq $0x01,%ymm1,%ymm5,%ymm0 + vpshufd $0x4e,%ymm1,%ymm1 + vpternlogd $0x96,%ymm0,%ymm1,%ymm4 - vmovdqu8 %ymm3,(%r8) - - - - - - movl $7,%eax -L$precompute_next__func1: - subq $32,%r8 - vpclmulqdq $0x00,%ymm4,%ymm3,%ymm0 - vpclmulqdq $0x01,%ymm4,%ymm3,%ymm1 - vpclmulqdq $0x10,%ymm4,%ymm3,%ymm2 - vpxord %ymm2,%ymm1,%ymm1 - vpclmulqdq $0x01,%ymm0,%ymm5,%ymm2 - vpshufd $0x4e,%ymm0,%ymm0 - vpternlogd $0x96,%ymm2,%ymm0,%ymm1 - vpclmulqdq $0x11,%ymm4,%ymm3,%ymm3 - vpclmulqdq $0x01,%ymm1,%ymm5,%ymm0 - vpshufd $0x4e,%ymm1,%ymm1 - vpternlogd $0x96,%ymm0,%ymm1,%ymm3 - - vmovdqu8 %ymm3,(%r8) - decl %eax - jnz L$precompute_next__func1 - - vzeroupper - ret - - - -.globl _gcm_ghash_vpclmulqdq_avx10_256 -.private_extern _gcm_ghash_vpclmulqdq_avx10_256 - -.p2align 5 -_gcm_ghash_vpclmulqdq_avx10_256: - - -_CET_ENDBR - - - - - - - vmovdqu L$bswap_mask(%rip),%xmm4 - vmovdqu L$gfpoly(%rip),%xmm10 - - - vmovdqu (%rdi),%xmm5 - vpshufb %xmm4,%xmm5,%xmm5 - - - cmpq $32,%rcx - jb L$aad_blockbyblock__func1 - - - - vshufi64x2 $0,%ymm4,%ymm4,%ymm4 - vshufi64x2 $0,%ymm10,%ymm10,%ymm10 - - - vmovdqu8 256-32(%rsi),%ymm9 - - cmpq $128-1,%rcx - jbe L$aad_loop_1x__func1 - - - vmovdqu8 256-128(%rsi),%ymm6 - vmovdqu8 256-96(%rsi),%ymm7 - vmovdqu8 256-64(%rsi),%ymm8 - - -L$aad_loop_4x__func1: - vmovdqu8 0(%rdx),%ymm0 - vmovdqu8 32(%rdx),%ymm1 - vmovdqu8 64(%rdx),%ymm2 - vmovdqu8 96(%rdx),%ymm3 - vpshufb %ymm4,%ymm0,%ymm0 - vpxord %ymm5,%ymm0,%ymm0 - vpshufb %ymm4,%ymm1,%ymm1 - vpshufb %ymm4,%ymm2,%ymm2 - vpshufb %ymm4,%ymm3,%ymm3 - vpclmulqdq $0x00,%ymm6,%ymm0,%ymm5 - vpclmulqdq $0x00,%ymm7,%ymm1,%ymm11 - vpclmulqdq $0x00,%ymm8,%ymm2,%ymm12 - vpxord %ymm11,%ymm5,%ymm5 - vpclmulqdq $0x00,%ymm9,%ymm3,%ymm13 - vpternlogd $0x96,%ymm13,%ymm12,%ymm5 - vpclmulqdq $0x01,%ymm6,%ymm0,%ymm11 - vpclmulqdq $0x01,%ymm7,%ymm1,%ymm12 - vpclmulqdq $0x01,%ymm8,%ymm2,%ymm13 - vpternlogd $0x96,%ymm13,%ymm12,%ymm11 - vpclmulqdq $0x01,%ymm9,%ymm3,%ymm12 - vpclmulqdq $0x10,%ymm6,%ymm0,%ymm13 - vpternlogd $0x96,%ymm13,%ymm12,%ymm11 - vpclmulqdq $0x10,%ymm7,%ymm1,%ymm12 - vpclmulqdq $0x10,%ymm8,%ymm2,%ymm13 - vpternlogd $0x96,%ymm13,%ymm12,%ymm11 - vpclmulqdq $0x01,%ymm5,%ymm10,%ymm13 - vpclmulqdq $0x10,%ymm9,%ymm3,%ymm12 - vpxord %ymm12,%ymm11,%ymm11 - vpshufd $0x4e,%ymm5,%ymm5 - vpclmulqdq $0x11,%ymm6,%ymm0,%ymm0 - vpclmulqdq $0x11,%ymm7,%ymm1,%ymm1 - vpclmulqdq $0x11,%ymm8,%ymm2,%ymm2 - vpternlogd $0x96,%ymm13,%ymm5,%ymm11 - vpclmulqdq $0x11,%ymm9,%ymm3,%ymm3 - vpternlogd $0x96,%ymm2,%ymm1,%ymm0 - vpclmulqdq $0x01,%ymm11,%ymm10,%ymm12 - vpxord %ymm3,%ymm0,%ymm5 - vpshufd $0x4e,%ymm11,%ymm11 - vpternlogd $0x96,%ymm12,%ymm11,%ymm5 - vextracti32x4 $1,%ymm5,%xmm0 - vpxord %xmm0,%xmm5,%xmm5 - - subq $-128,%rdx - addq $-128,%rcx - cmpq $128-1,%rcx - ja L$aad_loop_4x__func1 - - - cmpq $32,%rcx - jb L$aad_large_done__func1 -L$aad_loop_1x__func1: - vmovdqu8 (%rdx),%ymm0 - vpshufb %ymm4,%ymm0,%ymm0 - vpxord %ymm0,%ymm5,%ymm5 - vpclmulqdq $0x00,%ymm9,%ymm5,%ymm0 - vpclmulqdq $0x01,%ymm9,%ymm5,%ymm1 - vpclmulqdq $0x10,%ymm9,%ymm5,%ymm2 - vpxord %ymm2,%ymm1,%ymm1 - vpclmulqdq $0x01,%ymm0,%ymm10,%ymm2 - vpshufd $0x4e,%ymm0,%ymm0 - vpternlogd $0x96,%ymm2,%ymm0,%ymm1 - vpclmulqdq $0x11,%ymm9,%ymm5,%ymm5 - vpclmulqdq $0x01,%ymm1,%ymm10,%ymm0 - vpshufd $0x4e,%ymm1,%ymm1 - vpternlogd $0x96,%ymm0,%ymm1,%ymm5 - - vextracti32x4 $1,%ymm5,%xmm0 - vpxord %xmm0,%xmm5,%xmm5 - - addq $32,%rdx - subq $32,%rcx - cmpq $32,%rcx - jae L$aad_loop_1x__func1 - -L$aad_large_done__func1: - - - vzeroupper - - -L$aad_blockbyblock__func1: - testq %rcx,%rcx - jz L$aad_done__func1 - vmovdqu 256-16(%rsi),%xmm9 -L$aad_loop_blockbyblock__func1: - vmovdqu (%rdx),%xmm0 - vpshufb %xmm4,%xmm0,%xmm0 - vpxor %xmm0,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm9,%xmm5,%xmm0 - vpclmulqdq $0x01,%xmm9,%xmm5,%xmm1 - vpclmulqdq $0x10,%xmm9,%xmm5,%xmm2 - vpxord %xmm2,%xmm1,%xmm1 - vpclmulqdq $0x01,%xmm0,%xmm10,%xmm2 - vpshufd $0x4e,%xmm0,%xmm0 - vpternlogd $0x96,%xmm2,%xmm0,%xmm1 - vpclmulqdq $0x11,%xmm9,%xmm5,%xmm5 - vpclmulqdq $0x01,%xmm1,%xmm10,%xmm0 - vpshufd $0x4e,%xmm1,%xmm1 - vpternlogd $0x96,%xmm0,%xmm1,%xmm5 - - addq $16,%rdx - subq $16,%rcx - jnz L$aad_loop_blockbyblock__func1 - -L$aad_done__func1: - - vpshufb %xmm4,%xmm5,%xmm5 - vmovdqu %xmm5,(%rdi) - ret - - - -.globl _aes_gcm_enc_update_vaes_avx10_256 -.private_extern _aes_gcm_enc_update_vaes_avx10_256 - -.p2align 5 -_aes_gcm_enc_update_vaes_avx10_256: - - -_CET_ENDBR - pushq %r12 - - - movq 16(%rsp),%r12 -#ifdef BORINGSSL_DISPATCH_TEST - - movb $1,_BORINGSSL_function_hit+6(%rip) -#endif - - vbroadcasti32x4 L$bswap_mask(%rip),%ymm8 - vbroadcasti32x4 L$gfpoly(%rip),%ymm31 - - - - vmovdqu (%r12),%xmm10 - vpshufb %xmm8,%xmm10,%xmm10 - vbroadcasti32x4 (%r8),%ymm12 - vpshufb %ymm8,%ymm12,%ymm12 - - - - movl 240(%rcx),%r10d - leal -20(,%r10,4),%r10d - - - - - leaq 96(%rcx,%r10,4),%r11 - vbroadcasti32x4 (%rcx),%ymm13 - vbroadcasti32x4 (%r11),%ymm14 - - - vpaddd L$ctr_pattern(%rip),%ymm12,%ymm12 - - - vbroadcasti32x4 L$inc_2blocks(%rip),%ymm11 - - - - cmpq $128-1,%rdx - jbe L$crypt_loop_4x_done__func1 - - - vmovdqu8 256-128(%r9),%ymm27 - vmovdqu8 256-96(%r9),%ymm28 - vmovdqu8 256-64(%r9),%ymm29 - vmovdqu8 256-32(%r9),%ymm30 - - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm1 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm2 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm3 - vpaddd %ymm11,%ymm12,%ymm12 - - - vpxord %ymm13,%ymm0,%ymm0 - vpxord %ymm13,%ymm1,%ymm1 - vpxord %ymm13,%ymm2,%ymm2 - vpxord %ymm13,%ymm3,%ymm3 - - leaq 16(%rcx),%rax -L$vaesenc_loop_first_4_vecs__func1: - vbroadcasti32x4 (%rax),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - - addq $16,%rax - cmpq %rax,%r11 - jne L$vaesenc_loop_first_4_vecs__func1 - - - - vpxord 0(%rdi),%ymm14,%ymm4 - vpxord 32(%rdi),%ymm14,%ymm5 - vpxord 64(%rdi),%ymm14,%ymm6 - vpxord 96(%rdi),%ymm14,%ymm7 - - - - vaesenclast %ymm4,%ymm0,%ymm4 - vaesenclast %ymm5,%ymm1,%ymm5 - vaesenclast %ymm6,%ymm2,%ymm6 - vaesenclast %ymm7,%ymm3,%ymm7 - - - vmovdqu8 %ymm4,0(%rsi) - vmovdqu8 %ymm5,32(%rsi) - vmovdqu8 %ymm6,64(%rsi) - vmovdqu8 %ymm7,96(%rsi) - - subq $-128,%rdi - subq $-128,%rsi - addq $-128,%rdx - cmpq $128-1,%rdx - jbe L$ghash_last_ciphertext_4x__func1 - vbroadcasti32x4 -144(%r11),%ymm15 - vbroadcasti32x4 -128(%r11),%ymm16 - vbroadcasti32x4 -112(%r11),%ymm17 - vbroadcasti32x4 -96(%r11),%ymm18 - vbroadcasti32x4 -80(%r11),%ymm19 - vbroadcasti32x4 -64(%r11),%ymm20 - vbroadcasti32x4 -48(%r11),%ymm21 - vbroadcasti32x4 -32(%r11),%ymm22 - vbroadcasti32x4 -16(%r11),%ymm23 -L$crypt_loop_4x__func1: - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm1 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm2 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm3 - vpaddd %ymm11,%ymm12,%ymm12 - - - vpxord %ymm13,%ymm0,%ymm0 - vpxord %ymm13,%ymm1,%ymm1 - vpxord %ymm13,%ymm2,%ymm2 - vpxord %ymm13,%ymm3,%ymm3 - - cmpl $24,%r10d - jl L$aes128__func1 - je L$aes192__func1 - - vbroadcasti32x4 -208(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - - vbroadcasti32x4 -192(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - -L$aes192__func1: - vbroadcasti32x4 -176(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - - vbroadcasti32x4 -160(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - -L$aes128__func1: - vpshufb %ymm8,%ymm4,%ymm4 - vpxord %ymm10,%ymm4,%ymm4 - vpshufb %ymm8,%ymm5,%ymm5 - vpshufb %ymm8,%ymm6,%ymm6 - - vaesenc %ymm15,%ymm0,%ymm0 - vaesenc %ymm15,%ymm1,%ymm1 - vaesenc %ymm15,%ymm2,%ymm2 - vaesenc %ymm15,%ymm3,%ymm3 - - vpshufb %ymm8,%ymm7,%ymm7 - vpclmulqdq $0x00,%ymm27,%ymm4,%ymm10 - vpclmulqdq $0x00,%ymm28,%ymm5,%ymm24 - vpclmulqdq $0x00,%ymm29,%ymm6,%ymm25 - - vaesenc %ymm16,%ymm0,%ymm0 - vaesenc %ymm16,%ymm1,%ymm1 - vaesenc %ymm16,%ymm2,%ymm2 - vaesenc %ymm16,%ymm3,%ymm3 - - vpxord %ymm24,%ymm10,%ymm10 - vpclmulqdq $0x00,%ymm30,%ymm7,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm10 - vpclmulqdq $0x01,%ymm27,%ymm4,%ymm24 - - vaesenc %ymm17,%ymm0,%ymm0 - vaesenc %ymm17,%ymm1,%ymm1 - vaesenc %ymm17,%ymm2,%ymm2 - vaesenc %ymm17,%ymm3,%ymm3 - - vpclmulqdq $0x01,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x01,%ymm29,%ymm6,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm30,%ymm7,%ymm25 - - vaesenc %ymm18,%ymm0,%ymm0 - vaesenc %ymm18,%ymm1,%ymm1 - vaesenc %ymm18,%ymm2,%ymm2 - vaesenc %ymm18,%ymm3,%ymm3 - - vpclmulqdq $0x10,%ymm27,%ymm4,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x10,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x10,%ymm29,%ymm6,%ymm26 - - vaesenc %ymm19,%ymm0,%ymm0 - vaesenc %ymm19,%ymm1,%ymm1 - vaesenc %ymm19,%ymm2,%ymm2 - vaesenc %ymm19,%ymm3,%ymm3 - - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm10,%ymm31,%ymm26 - vpclmulqdq $0x10,%ymm30,%ymm7,%ymm25 - vpxord %ymm25,%ymm24,%ymm24 - - vaesenc %ymm20,%ymm0,%ymm0 - vaesenc %ymm20,%ymm1,%ymm1 - vaesenc %ymm20,%ymm2,%ymm2 - vaesenc %ymm20,%ymm3,%ymm3 - - vpshufd $0x4e,%ymm10,%ymm10 - vpclmulqdq $0x11,%ymm27,%ymm4,%ymm4 - vpclmulqdq $0x11,%ymm28,%ymm5,%ymm5 - vpclmulqdq $0x11,%ymm29,%ymm6,%ymm6 - - vaesenc %ymm21,%ymm0,%ymm0 - vaesenc %ymm21,%ymm1,%ymm1 - vaesenc %ymm21,%ymm2,%ymm2 - vaesenc %ymm21,%ymm3,%ymm3 - - vpternlogd $0x96,%ymm26,%ymm10,%ymm24 - vpclmulqdq $0x11,%ymm30,%ymm7,%ymm7 - vpternlogd $0x96,%ymm6,%ymm5,%ymm4 - vpclmulqdq $0x01,%ymm24,%ymm31,%ymm25 - - vaesenc %ymm22,%ymm0,%ymm0 - vaesenc %ymm22,%ymm1,%ymm1 - vaesenc %ymm22,%ymm2,%ymm2 - vaesenc %ymm22,%ymm3,%ymm3 - - vpxord %ymm7,%ymm4,%ymm10 - vpshufd $0x4e,%ymm24,%ymm24 - vpternlogd $0x96,%ymm25,%ymm24,%ymm10 - - vaesenc %ymm23,%ymm0,%ymm0 - vaesenc %ymm23,%ymm1,%ymm1 - vaesenc %ymm23,%ymm2,%ymm2 - vaesenc %ymm23,%ymm3,%ymm3 - - vextracti32x4 $1,%ymm10,%xmm4 - vpxord %xmm4,%xmm10,%xmm10 - - - - - vpxord 0(%rdi),%ymm14,%ymm4 - vpxord 32(%rdi),%ymm14,%ymm5 - vpxord 64(%rdi),%ymm14,%ymm6 - vpxord 96(%rdi),%ymm14,%ymm7 - - - - vaesenclast %ymm4,%ymm0,%ymm4 - vaesenclast %ymm5,%ymm1,%ymm5 - vaesenclast %ymm6,%ymm2,%ymm6 - vaesenclast %ymm7,%ymm3,%ymm7 - - - vmovdqu8 %ymm4,0(%rsi) - vmovdqu8 %ymm5,32(%rsi) - vmovdqu8 %ymm6,64(%rsi) - vmovdqu8 %ymm7,96(%rsi) - - subq $-128,%rdi - subq $-128,%rsi - addq $-128,%rdx - cmpq $128-1,%rdx - ja L$crypt_loop_4x__func1 -L$ghash_last_ciphertext_4x__func1: - vpshufb %ymm8,%ymm4,%ymm4 - vpxord %ymm10,%ymm4,%ymm4 - vpshufb %ymm8,%ymm5,%ymm5 - vpshufb %ymm8,%ymm6,%ymm6 - vpshufb %ymm8,%ymm7,%ymm7 - vpclmulqdq $0x00,%ymm27,%ymm4,%ymm10 - vpclmulqdq $0x00,%ymm28,%ymm5,%ymm24 - vpclmulqdq $0x00,%ymm29,%ymm6,%ymm25 - vpxord %ymm24,%ymm10,%ymm10 - vpclmulqdq $0x00,%ymm30,%ymm7,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm10 - vpclmulqdq $0x01,%ymm27,%ymm4,%ymm24 - vpclmulqdq $0x01,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x01,%ymm29,%ymm6,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm30,%ymm7,%ymm25 - vpclmulqdq $0x10,%ymm27,%ymm4,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x10,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x10,%ymm29,%ymm6,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm10,%ymm31,%ymm26 - vpclmulqdq $0x10,%ymm30,%ymm7,%ymm25 - vpxord %ymm25,%ymm24,%ymm24 - vpshufd $0x4e,%ymm10,%ymm10 - vpclmulqdq $0x11,%ymm27,%ymm4,%ymm4 - vpclmulqdq $0x11,%ymm28,%ymm5,%ymm5 - vpclmulqdq $0x11,%ymm29,%ymm6,%ymm6 - vpternlogd $0x96,%ymm26,%ymm10,%ymm24 - vpclmulqdq $0x11,%ymm30,%ymm7,%ymm7 - vpternlogd $0x96,%ymm6,%ymm5,%ymm4 - vpclmulqdq $0x01,%ymm24,%ymm31,%ymm25 - vpxord %ymm7,%ymm4,%ymm10 - vpshufd $0x4e,%ymm24,%ymm24 - vpternlogd $0x96,%ymm25,%ymm24,%ymm10 - vextracti32x4 $1,%ymm10,%xmm4 - vpxord %xmm4,%xmm10,%xmm10 - -L$crypt_loop_4x_done__func1: - - testq %rdx,%rdx - jz L$done__func1 - - - - - - - - - - - - - - - - - - - - - movq %rdx,%rax - negq %rax - andq $-16,%rax - leaq 256(%r9,%rax,1),%r8 - vpxor %xmm4,%xmm4,%xmm4 - vpxor %xmm5,%xmm5,%xmm5 - vpxor %xmm6,%xmm6,%xmm6 - - cmpq $32,%rdx - jb L$partial_vec__func1 - -L$crypt_loop_1x__func1: - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpaddd %ymm11,%ymm12,%ymm12 - vpxord %ymm13,%ymm0,%ymm0 - leaq 16(%rcx),%rax -L$vaesenc_loop_tail_full_vec__func1: - vbroadcasti32x4 (%rax),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - addq $16,%rax - cmpq %rax,%r11 - jne L$vaesenc_loop_tail_full_vec__func1 - vaesenclast %ymm14,%ymm0,%ymm0 - - - vmovdqu8 (%rdi),%ymm1 - vpxord %ymm1,%ymm0,%ymm0 - vmovdqu8 %ymm0,(%rsi) - - - vmovdqu8 (%r8),%ymm30 - vpshufb %ymm8,%ymm0,%ymm0 - vpxord %ymm10,%ymm0,%ymm0 - vpclmulqdq $0x00,%ymm30,%ymm0,%ymm7 - vpclmulqdq $0x01,%ymm30,%ymm0,%ymm1 - vpclmulqdq $0x10,%ymm30,%ymm0,%ymm2 - vpclmulqdq $0x11,%ymm30,%ymm0,%ymm3 - vpxord %ymm7,%ymm4,%ymm4 - vpternlogd $0x96,%ymm2,%ymm1,%ymm5 - vpxord %ymm3,%ymm6,%ymm6 - - vpxor %xmm10,%xmm10,%xmm10 - - addq $32,%r8 - addq $32,%rdi - addq $32,%rsi - subq $32,%rdx - cmpq $32,%rdx - jae L$crypt_loop_1x__func1 - - testq %rdx,%rdx - jz L$reduce__func1 - -L$partial_vec__func1: - - - - - movq $-1,%rax - bzhiq %rdx,%rax,%rax - kmovd %eax,%k1 - addq $15,%rdx - andq $-16,%rdx - movq $-1,%rax - bzhiq %rdx,%rax,%rax - kmovd %eax,%k2 - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpxord %ymm13,%ymm0,%ymm0 - leaq 16(%rcx),%rax -L$vaesenc_loop_tail_partialvec__func1: - vbroadcasti32x4 (%rax),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - addq $16,%rax - cmpq %rax,%r11 - jne L$vaesenc_loop_tail_partialvec__func1 - vaesenclast %ymm14,%ymm0,%ymm0 - - - vmovdqu8 (%rdi),%ymm1{%k1}{z} - vpxord %ymm1,%ymm0,%ymm0 - vmovdqu8 %ymm0,(%rsi){%k1} - - - - - - - - - - - - - - vmovdqu8 (%r8),%ymm30{%k2}{z} - vmovdqu8 %ymm0,%ymm1{%k1}{z} - vpshufb %ymm8,%ymm1,%ymm0 - vpxord %ymm10,%ymm0,%ymm0 - vpclmulqdq $0x00,%ymm30,%ymm0,%ymm7 - vpclmulqdq $0x01,%ymm30,%ymm0,%ymm1 - vpclmulqdq $0x10,%ymm30,%ymm0,%ymm2 - vpclmulqdq $0x11,%ymm30,%ymm0,%ymm3 - vpxord %ymm7,%ymm4,%ymm4 - vpternlogd $0x96,%ymm2,%ymm1,%ymm5 - vpxord %ymm3,%ymm6,%ymm6 - - -L$reduce__func1: - - vpclmulqdq $0x01,%ymm4,%ymm31,%ymm0 - vpshufd $0x4e,%ymm4,%ymm4 - vpternlogd $0x96,%ymm0,%ymm4,%ymm5 - vpclmulqdq $0x01,%ymm5,%ymm31,%ymm0 - vpshufd $0x4e,%ymm5,%ymm5 - vpternlogd $0x96,%ymm0,%ymm5,%ymm6 - - vextracti32x4 $1,%ymm6,%xmm0 - vpxord %xmm0,%xmm6,%xmm10 - - -L$done__func1: - - vpshufb %xmm8,%xmm10,%xmm10 - vmovdqu %xmm10,(%r12) - - vzeroupper - popq %r12 - - ret - - - -.globl _aes_gcm_dec_update_vaes_avx10_256 -.private_extern _aes_gcm_dec_update_vaes_avx10_256 - -.p2align 5 -_aes_gcm_dec_update_vaes_avx10_256: - - -_CET_ENDBR - pushq %r12 - - - movq 16(%rsp),%r12 - - vbroadcasti32x4 L$bswap_mask(%rip),%ymm8 - vbroadcasti32x4 L$gfpoly(%rip),%ymm31 - - - - vmovdqu (%r12),%xmm10 - vpshufb %xmm8,%xmm10,%xmm10 - vbroadcasti32x4 (%r8),%ymm12 - vpshufb %ymm8,%ymm12,%ymm12 - - - - movl 240(%rcx),%r10d - leal -20(,%r10,4),%r10d - - - - - leaq 96(%rcx,%r10,4),%r11 - vbroadcasti32x4 (%rcx),%ymm13 - vbroadcasti32x4 (%r11),%ymm14 - - - vpaddd L$ctr_pattern(%rip),%ymm12,%ymm12 - - - vbroadcasti32x4 L$inc_2blocks(%rip),%ymm11 - - - - cmpq $128-1,%rdx - jbe L$crypt_loop_4x_done__func2 - - - vmovdqu8 256-128(%r9),%ymm27 - vmovdqu8 256-96(%r9),%ymm28 - vmovdqu8 256-64(%r9),%ymm29 - vmovdqu8 256-32(%r9),%ymm30 - vbroadcasti32x4 -144(%r11),%ymm15 - vbroadcasti32x4 -128(%r11),%ymm16 - vbroadcasti32x4 -112(%r11),%ymm17 - vbroadcasti32x4 -96(%r11),%ymm18 - vbroadcasti32x4 -80(%r11),%ymm19 - vbroadcasti32x4 -64(%r11),%ymm20 - vbroadcasti32x4 -48(%r11),%ymm21 - vbroadcasti32x4 -32(%r11),%ymm22 - vbroadcasti32x4 -16(%r11),%ymm23 -L$crypt_loop_4x__func2: - vmovdqu8 0(%rdi),%ymm4 - vmovdqu8 32(%rdi),%ymm5 - vmovdqu8 64(%rdi),%ymm6 - vmovdqu8 96(%rdi),%ymm7 - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm1 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm2 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm3 - vpaddd %ymm11,%ymm12,%ymm12 - - - vpxord %ymm13,%ymm0,%ymm0 - vpxord %ymm13,%ymm1,%ymm1 - vpxord %ymm13,%ymm2,%ymm2 - vpxord %ymm13,%ymm3,%ymm3 - - cmpl $24,%r10d - jl L$aes128__func2 - je L$aes192__func2 - - vbroadcasti32x4 -208(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - - vbroadcasti32x4 -192(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - -L$aes192__func2: - vbroadcasti32x4 -176(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - - vbroadcasti32x4 -160(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - -L$aes128__func2: - vpshufb %ymm8,%ymm4,%ymm4 - vpxord %ymm10,%ymm4,%ymm4 - vpshufb %ymm8,%ymm5,%ymm5 - vpshufb %ymm8,%ymm6,%ymm6 - - vaesenc %ymm15,%ymm0,%ymm0 - vaesenc %ymm15,%ymm1,%ymm1 - vaesenc %ymm15,%ymm2,%ymm2 - vaesenc %ymm15,%ymm3,%ymm3 - - vpshufb %ymm8,%ymm7,%ymm7 - vpclmulqdq $0x00,%ymm27,%ymm4,%ymm10 - vpclmulqdq $0x00,%ymm28,%ymm5,%ymm24 - vpclmulqdq $0x00,%ymm29,%ymm6,%ymm25 - - vaesenc %ymm16,%ymm0,%ymm0 - vaesenc %ymm16,%ymm1,%ymm1 - vaesenc %ymm16,%ymm2,%ymm2 - vaesenc %ymm16,%ymm3,%ymm3 - - vpxord %ymm24,%ymm10,%ymm10 - vpclmulqdq $0x00,%ymm30,%ymm7,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm10 - vpclmulqdq $0x01,%ymm27,%ymm4,%ymm24 - - vaesenc %ymm17,%ymm0,%ymm0 - vaesenc %ymm17,%ymm1,%ymm1 - vaesenc %ymm17,%ymm2,%ymm2 - vaesenc %ymm17,%ymm3,%ymm3 - - vpclmulqdq $0x01,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x01,%ymm29,%ymm6,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm30,%ymm7,%ymm25 - - vaesenc %ymm18,%ymm0,%ymm0 - vaesenc %ymm18,%ymm1,%ymm1 - vaesenc %ymm18,%ymm2,%ymm2 - vaesenc %ymm18,%ymm3,%ymm3 - - vpclmulqdq $0x10,%ymm27,%ymm4,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x10,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x10,%ymm29,%ymm6,%ymm26 - - vaesenc %ymm19,%ymm0,%ymm0 - vaesenc %ymm19,%ymm1,%ymm1 - vaesenc %ymm19,%ymm2,%ymm2 - vaesenc %ymm19,%ymm3,%ymm3 - - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm10,%ymm31,%ymm26 - vpclmulqdq $0x10,%ymm30,%ymm7,%ymm25 - vpxord %ymm25,%ymm24,%ymm24 - - vaesenc %ymm20,%ymm0,%ymm0 - vaesenc %ymm20,%ymm1,%ymm1 - vaesenc %ymm20,%ymm2,%ymm2 - vaesenc %ymm20,%ymm3,%ymm3 - - vpshufd $0x4e,%ymm10,%ymm10 - vpclmulqdq $0x11,%ymm27,%ymm4,%ymm4 - vpclmulqdq $0x11,%ymm28,%ymm5,%ymm5 - vpclmulqdq $0x11,%ymm29,%ymm6,%ymm6 - - vaesenc %ymm21,%ymm0,%ymm0 - vaesenc %ymm21,%ymm1,%ymm1 - vaesenc %ymm21,%ymm2,%ymm2 - vaesenc %ymm21,%ymm3,%ymm3 - - vpternlogd $0x96,%ymm26,%ymm10,%ymm24 - vpclmulqdq $0x11,%ymm30,%ymm7,%ymm7 - vpternlogd $0x96,%ymm6,%ymm5,%ymm4 - vpclmulqdq $0x01,%ymm24,%ymm31,%ymm25 - - vaesenc %ymm22,%ymm0,%ymm0 - vaesenc %ymm22,%ymm1,%ymm1 - vaesenc %ymm22,%ymm2,%ymm2 - vaesenc %ymm22,%ymm3,%ymm3 - - vpxord %ymm7,%ymm4,%ymm10 - vpshufd $0x4e,%ymm24,%ymm24 - vpternlogd $0x96,%ymm25,%ymm24,%ymm10 - - vaesenc %ymm23,%ymm0,%ymm0 - vaesenc %ymm23,%ymm1,%ymm1 - vaesenc %ymm23,%ymm2,%ymm2 - vaesenc %ymm23,%ymm3,%ymm3 - - vextracti32x4 $1,%ymm10,%xmm4 - vpxord %xmm4,%xmm10,%xmm10 - - - - - vpxord 0(%rdi),%ymm14,%ymm4 - vpxord 32(%rdi),%ymm14,%ymm5 - vpxord 64(%rdi),%ymm14,%ymm6 - vpxord 96(%rdi),%ymm14,%ymm7 - - - - vaesenclast %ymm4,%ymm0,%ymm4 - vaesenclast %ymm5,%ymm1,%ymm5 - vaesenclast %ymm6,%ymm2,%ymm6 - vaesenclast %ymm7,%ymm3,%ymm7 - - - vmovdqu8 %ymm4,0(%rsi) - vmovdqu8 %ymm5,32(%rsi) - vmovdqu8 %ymm6,64(%rsi) - vmovdqu8 %ymm7,96(%rsi) - - subq $-128,%rdi - subq $-128,%rsi - addq $-128,%rdx - cmpq $128-1,%rdx - ja L$crypt_loop_4x__func2 -L$crypt_loop_4x_done__func2: - - testq %rdx,%rdx - jz L$done__func2 - - - - - - - - - - - - - - - - - - - - - movq %rdx,%rax - negq %rax - andq $-16,%rax - leaq 256(%r9,%rax,1),%r8 - vpxor %xmm4,%xmm4,%xmm4 - vpxor %xmm5,%xmm5,%xmm5 - vpxor %xmm6,%xmm6,%xmm6 - - cmpq $32,%rdx - jb L$partial_vec__func2 - -L$crypt_loop_1x__func2: - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpaddd %ymm11,%ymm12,%ymm12 - vpxord %ymm13,%ymm0,%ymm0 - leaq 16(%rcx),%rax -L$vaesenc_loop_tail_full_vec__func2: - vbroadcasti32x4 (%rax),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - addq $16,%rax - cmpq %rax,%r11 - jne L$vaesenc_loop_tail_full_vec__func2 - vaesenclast %ymm14,%ymm0,%ymm0 - - - vmovdqu8 (%rdi),%ymm1 - vpxord %ymm1,%ymm0,%ymm0 - vmovdqu8 %ymm0,(%rsi) - - - vmovdqu8 (%r8),%ymm30 - vpshufb %ymm8,%ymm1,%ymm0 - vpxord %ymm10,%ymm0,%ymm0 - vpclmulqdq $0x00,%ymm30,%ymm0,%ymm7 - vpclmulqdq $0x01,%ymm30,%ymm0,%ymm1 - vpclmulqdq $0x10,%ymm30,%ymm0,%ymm2 - vpclmulqdq $0x11,%ymm30,%ymm0,%ymm3 - vpxord %ymm7,%ymm4,%ymm4 - vpternlogd $0x96,%ymm2,%ymm1,%ymm5 - vpxord %ymm3,%ymm6,%ymm6 - - vpxor %xmm10,%xmm10,%xmm10 - - addq $32,%r8 - addq $32,%rdi - addq $32,%rsi - subq $32,%rdx - cmpq $32,%rdx - jae L$crypt_loop_1x__func2 - - testq %rdx,%rdx - jz L$reduce__func2 - -L$partial_vec__func2: - - - - - movq $-1,%rax - bzhiq %rdx,%rax,%rax - kmovd %eax,%k1 - addq $15,%rdx - andq $-16,%rdx - movq $-1,%rax - bzhiq %rdx,%rax,%rax - kmovd %eax,%k2 - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpxord %ymm13,%ymm0,%ymm0 - leaq 16(%rcx),%rax -L$vaesenc_loop_tail_partialvec__func2: - vbroadcasti32x4 (%rax),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - addq $16,%rax - cmpq %rax,%r11 - jne L$vaesenc_loop_tail_partialvec__func2 - vaesenclast %ymm14,%ymm0,%ymm0 - - - vmovdqu8 (%rdi),%ymm1{%k1}{z} - vpxord %ymm1,%ymm0,%ymm0 - vmovdqu8 %ymm0,(%rsi){%k1} - - - - - - - - - - - - - - vmovdqu8 (%r8),%ymm30{%k2}{z} - - vpshufb %ymm8,%ymm1,%ymm0 - vpxord %ymm10,%ymm0,%ymm0 - vpclmulqdq $0x00,%ymm30,%ymm0,%ymm7 - vpclmulqdq $0x01,%ymm30,%ymm0,%ymm1 - vpclmulqdq $0x10,%ymm30,%ymm0,%ymm2 - vpclmulqdq $0x11,%ymm30,%ymm0,%ymm3 - vpxord %ymm7,%ymm4,%ymm4 - vpternlogd $0x96,%ymm2,%ymm1,%ymm5 - vpxord %ymm3,%ymm6,%ymm6 + vinserti64x4 $1,%ymm3,%zmm4,%zmm3 + vshufi64x2 $0,%zmm4,%zmm4,%zmm4 + vmovdqu8 %zmm3,(%r8) -L$reduce__func2: - vpclmulqdq $0x01,%ymm4,%ymm31,%ymm0 - vpshufd $0x4e,%ymm4,%ymm4 - vpternlogd $0x96,%ymm0,%ymm4,%ymm5 - vpclmulqdq $0x01,%ymm5,%ymm31,%ymm0 - vpshufd $0x4e,%ymm5,%ymm5 - vpternlogd $0x96,%ymm0,%ymm5,%ymm6 - vextracti32x4 $1,%ymm6,%xmm0 - vpxord %xmm0,%xmm6,%xmm10 -L$done__func2: + movl $3,%eax +L$precompute_next__func1: + subq $64,%r8 + vpclmulqdq $0x00,%zmm4,%zmm3,%zmm0 + vpclmulqdq $0x01,%zmm4,%zmm3,%zmm1 + vpclmulqdq $0x10,%zmm4,%zmm3,%zmm2 + vpxord %zmm2,%zmm1,%zmm1 + vpclmulqdq $0x01,%zmm0,%zmm5,%zmm2 + vpshufd $0x4e,%zmm0,%zmm0 + vpternlogd $0x96,%zmm2,%zmm0,%zmm1 + vpclmulqdq $0x11,%zmm4,%zmm3,%zmm3 + vpclmulqdq $0x01,%zmm1,%zmm5,%zmm0 + vpshufd $0x4e,%zmm1,%zmm1 + vpternlogd $0x96,%zmm0,%zmm1,%zmm3 - vpshufb %xmm8,%xmm10,%xmm10 - vmovdqu %xmm10,(%r12) + vmovdqu8 %zmm3,(%r8) + decl %eax + jnz L$precompute_next__func1 vzeroupper - popq %r12 - ret @@ -1227,7 +205,7 @@ _CET_ENDBR cmpq $64,%rcx - jb L$aad_blockbyblock__func2 + jb L$aad_blockbyblock__func1 @@ -1238,7 +216,7 @@ _CET_ENDBR vmovdqu8 256-64(%rsi),%zmm9 cmpq $256-1,%rcx - jbe L$aad_loop_1x__func2 + jbe L$aad_loop_1x__func1 vmovdqu8 256-256(%rsi),%zmm6 @@ -1246,7 +224,7 @@ _CET_ENDBR vmovdqu8 256-128(%rsi),%zmm8 -L$aad_loop_4x__func2: +L$aad_loop_4x__func1: vmovdqu8 0(%rdx),%zmm0 vmovdqu8 64(%rdx),%zmm1 vmovdqu8 128(%rdx),%zmm2 @@ -1295,12 +273,12 @@ L$aad_loop_4x__func2: subq $-256,%rdx addq $-256,%rcx cmpq $256-1,%rcx - ja L$aad_loop_4x__func2 + ja L$aad_loop_4x__func1 cmpq $64,%rcx - jb L$aad_large_done__func2 -L$aad_loop_1x__func2: + jb L$aad_large_done__func1 +L$aad_loop_1x__func1: vmovdqu8 (%rdx),%zmm0 vpshufb %zmm4,%zmm0,%zmm0 vpxord %zmm0,%zmm5,%zmm5 @@ -1325,19 +303,19 @@ L$aad_loop_1x__func2: addq $64,%rdx subq $64,%rcx cmpq $64,%rcx - jae L$aad_loop_1x__func2 + jae L$aad_loop_1x__func1 -L$aad_large_done__func2: +L$aad_large_done__func1: vzeroupper -L$aad_blockbyblock__func2: +L$aad_blockbyblock__func1: testq %rcx,%rcx - jz L$aad_done__func2 + jz L$aad_done__func1 vmovdqu 256-16(%rsi),%xmm9 -L$aad_loop_blockbyblock__func2: +L$aad_loop_blockbyblock__func1: vmovdqu (%rdx),%xmm0 vpshufb %xmm4,%xmm0,%xmm0 vpxor %xmm0,%xmm5,%xmm5 @@ -1355,9 +333,9 @@ L$aad_loop_blockbyblock__func2: addq $16,%rdx subq $16,%rcx - jnz L$aad_loop_blockbyblock__func2 + jnz L$aad_loop_blockbyblock__func1 -L$aad_done__func2: +L$aad_done__func1: vpshufb %xmm4,%xmm5,%xmm5 vmovdqu %xmm5,(%rdi) @@ -1413,7 +391,7 @@ _CET_ENDBR cmpq $256-1,%rdx - jbe L$crypt_loop_4x_done__func3 + jbe L$crypt_loop_4x_done__func1 vmovdqu8 256-256(%r9),%zmm27 @@ -1440,7 +418,7 @@ _CET_ENDBR vpxord %zmm13,%zmm3,%zmm3 leaq 16(%rcx),%rax -L$vaesenc_loop_first_4_vecs__func3: +L$vaesenc_loop_first_4_vecs__func1: vbroadcasti32x4 (%rax),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 vaesenc %zmm9,%zmm1,%zmm1 @@ -1449,7 +427,7 @@ L$vaesenc_loop_first_4_vecs__func3: addq $16,%rax cmpq %rax,%r11 - jne L$vaesenc_loop_first_4_vecs__func3 + jne L$vaesenc_loop_first_4_vecs__func1 @@ -1475,7 +453,7 @@ L$vaesenc_loop_first_4_vecs__func3: subq $-256,%rsi addq $-256,%rdx cmpq $256-1,%rdx - jbe L$ghash_last_ciphertext_4x__func3 + jbe L$ghash_last_ciphertext_4x__func1 vbroadcasti32x4 -144(%r11),%zmm15 vbroadcasti32x4 -128(%r11),%zmm16 vbroadcasti32x4 -112(%r11),%zmm17 @@ -1485,7 +463,7 @@ L$vaesenc_loop_first_4_vecs__func3: vbroadcasti32x4 -48(%r11),%zmm21 vbroadcasti32x4 -32(%r11),%zmm22 vbroadcasti32x4 -16(%r11),%zmm23 -L$crypt_loop_4x__func3: +L$crypt_loop_4x__func1: @@ -1505,8 +483,8 @@ L$crypt_loop_4x__func3: vpxord %zmm13,%zmm3,%zmm3 cmpl $24,%r10d - jl L$aes128__func3 - je L$aes192__func3 + jl L$aes128__func1 + je L$aes192__func1 vbroadcasti32x4 -208(%r11),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 @@ -1520,7 +498,7 @@ L$crypt_loop_4x__func3: vaesenc %zmm9,%zmm2,%zmm2 vaesenc %zmm9,%zmm3,%zmm3 -L$aes192__func3: +L$aes192__func1: vbroadcasti32x4 -176(%r11),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 vaesenc %zmm9,%zmm1,%zmm1 @@ -1533,7 +511,7 @@ L$aes192__func3: vaesenc %zmm9,%zmm2,%zmm2 vaesenc %zmm9,%zmm3,%zmm3 -L$aes128__func3: +L$aes128__func1: vpshufb %zmm8,%zmm4,%zmm4 vpxord %zmm10,%zmm4,%zmm4 vpshufb %zmm8,%zmm5,%zmm5 @@ -1654,8 +632,8 @@ L$aes128__func3: subq $-256,%rsi addq $-256,%rdx cmpq $256-1,%rdx - ja L$crypt_loop_4x__func3 -L$ghash_last_ciphertext_4x__func3: + ja L$crypt_loop_4x__func1 +L$ghash_last_ciphertext_4x__func1: vpshufb %zmm8,%zmm4,%zmm4 vpxord %zmm10,%zmm4,%zmm4 vpshufb %zmm8,%zmm5,%zmm5 @@ -1697,10 +675,10 @@ L$ghash_last_ciphertext_4x__func3: vpxord %xmm4,%xmm10,%xmm10 vpternlogd $0x96,%xmm5,%xmm6,%xmm10 -L$crypt_loop_4x_done__func3: +L$crypt_loop_4x_done__func1: testq %rdx,%rdx - jz L$done__func3 + jz L$done__func1 @@ -1730,9 +708,9 @@ L$crypt_loop_4x_done__func3: vpxor %xmm6,%xmm6,%xmm6 cmpq $64,%rdx - jb L$partial_vec__func3 + jb L$partial_vec__func1 -L$crypt_loop_1x__func3: +L$crypt_loop_1x__func1: @@ -1740,12 +718,12 @@ L$crypt_loop_1x__func3: vpaddd %zmm11,%zmm12,%zmm12 vpxord %zmm13,%zmm0,%zmm0 leaq 16(%rcx),%rax -L$vaesenc_loop_tail_full_vec__func3: +L$vaesenc_loop_tail_full_vec__func1: vbroadcasti32x4 (%rax),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 addq $16,%rax cmpq %rax,%r11 - jne L$vaesenc_loop_tail_full_vec__func3 + jne L$vaesenc_loop_tail_full_vec__func1 vaesenclast %zmm14,%zmm0,%zmm0 @@ -1772,12 +750,12 @@ L$vaesenc_loop_tail_full_vec__func3: addq $64,%rsi subq $64,%rdx cmpq $64,%rdx - jae L$crypt_loop_1x__func3 + jae L$crypt_loop_1x__func1 testq %rdx,%rdx - jz L$reduce__func3 + jz L$reduce__func1 -L$partial_vec__func3: +L$partial_vec__func1: @@ -1796,12 +774,12 @@ L$partial_vec__func3: vpshufb %zmm8,%zmm12,%zmm0 vpxord %zmm13,%zmm0,%zmm0 leaq 16(%rcx),%rax -L$vaesenc_loop_tail_partialvec__func3: +L$vaesenc_loop_tail_partialvec__func1: vbroadcasti32x4 (%rax),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 addq $16,%rax cmpq %rax,%r11 - jne L$vaesenc_loop_tail_partialvec__func3 + jne L$vaesenc_loop_tail_partialvec__func1 vaesenclast %zmm14,%zmm0,%zmm0 @@ -1834,7 +812,7 @@ L$vaesenc_loop_tail_partialvec__func3: vpxord %zmm3,%zmm6,%zmm6 -L$reduce__func3: +L$reduce__func1: vpclmulqdq $0x01,%zmm4,%zmm31,%zmm0 vpshufd $0x4e,%zmm4,%zmm4 @@ -1850,7 +828,7 @@ L$reduce__func3: vpternlogd $0x96,%xmm1,%xmm2,%xmm10 -L$done__func3: +L$done__func1: vpshufb %xmm8,%xmm10,%xmm10 vmovdqu %xmm10,(%r12) @@ -1906,7 +884,7 @@ _CET_ENDBR cmpq $256-1,%rdx - jbe L$crypt_loop_4x_done__func4 + jbe L$crypt_loop_4x_done__func2 vmovdqu8 256-256(%r9),%zmm27 @@ -1922,7 +900,7 @@ _CET_ENDBR vbroadcasti32x4 -48(%r11),%zmm21 vbroadcasti32x4 -32(%r11),%zmm22 vbroadcasti32x4 -16(%r11),%zmm23 -L$crypt_loop_4x__func4: +L$crypt_loop_4x__func2: vmovdqu8 0(%rdi),%zmm4 vmovdqu8 64(%rdi),%zmm5 vmovdqu8 128(%rdi),%zmm6 @@ -1946,8 +924,8 @@ L$crypt_loop_4x__func4: vpxord %zmm13,%zmm3,%zmm3 cmpl $24,%r10d - jl L$aes128__func4 - je L$aes192__func4 + jl L$aes128__func2 + je L$aes192__func2 vbroadcasti32x4 -208(%r11),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 @@ -1961,7 +939,7 @@ L$crypt_loop_4x__func4: vaesenc %zmm9,%zmm2,%zmm2 vaesenc %zmm9,%zmm3,%zmm3 -L$aes192__func4: +L$aes192__func2: vbroadcasti32x4 -176(%r11),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 vaesenc %zmm9,%zmm1,%zmm1 @@ -1974,7 +952,7 @@ L$aes192__func4: vaesenc %zmm9,%zmm2,%zmm2 vaesenc %zmm9,%zmm3,%zmm3 -L$aes128__func4: +L$aes128__func2: vpshufb %zmm8,%zmm4,%zmm4 vpxord %zmm10,%zmm4,%zmm4 vpshufb %zmm8,%zmm5,%zmm5 @@ -2095,11 +1073,11 @@ L$aes128__func4: subq $-256,%rsi addq $-256,%rdx cmpq $256-1,%rdx - ja L$crypt_loop_4x__func4 -L$crypt_loop_4x_done__func4: + ja L$crypt_loop_4x__func2 +L$crypt_loop_4x_done__func2: testq %rdx,%rdx - jz L$done__func4 + jz L$done__func2 @@ -2129,9 +1107,9 @@ L$crypt_loop_4x_done__func4: vpxor %xmm6,%xmm6,%xmm6 cmpq $64,%rdx - jb L$partial_vec__func4 + jb L$partial_vec__func2 -L$crypt_loop_1x__func4: +L$crypt_loop_1x__func2: @@ -2139,12 +1117,12 @@ L$crypt_loop_1x__func4: vpaddd %zmm11,%zmm12,%zmm12 vpxord %zmm13,%zmm0,%zmm0 leaq 16(%rcx),%rax -L$vaesenc_loop_tail_full_vec__func4: +L$vaesenc_loop_tail_full_vec__func2: vbroadcasti32x4 (%rax),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 addq $16,%rax cmpq %rax,%r11 - jne L$vaesenc_loop_tail_full_vec__func4 + jne L$vaesenc_loop_tail_full_vec__func2 vaesenclast %zmm14,%zmm0,%zmm0 @@ -2171,12 +1149,12 @@ L$vaesenc_loop_tail_full_vec__func4: addq $64,%rsi subq $64,%rdx cmpq $64,%rdx - jae L$crypt_loop_1x__func4 + jae L$crypt_loop_1x__func2 testq %rdx,%rdx - jz L$reduce__func4 + jz L$reduce__func2 -L$partial_vec__func4: +L$partial_vec__func2: @@ -2195,12 +1173,12 @@ L$partial_vec__func4: vpshufb %zmm8,%zmm12,%zmm0 vpxord %zmm13,%zmm0,%zmm0 leaq 16(%rcx),%rax -L$vaesenc_loop_tail_partialvec__func4: +L$vaesenc_loop_tail_partialvec__func2: vbroadcasti32x4 (%rax),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 addq $16,%rax cmpq %rax,%r11 - jne L$vaesenc_loop_tail_partialvec__func4 + jne L$vaesenc_loop_tail_partialvec__func2 vaesenclast %zmm14,%zmm0,%zmm0 @@ -2233,7 +1211,7 @@ L$vaesenc_loop_tail_partialvec__func4: vpxord %zmm3,%zmm6,%zmm6 -L$reduce__func4: +L$reduce__func2: vpclmulqdq $0x01,%zmm4,%zmm31,%zmm0 vpshufd $0x4e,%zmm4,%zmm4 @@ -2249,7 +1227,7 @@ L$reduce__func4: vpternlogd $0x96,%xmm1,%xmm2,%xmm10 -L$done__func4: +L$done__func2: vpshufb %xmm8,%xmm10,%xmm10 vmovdqu %xmm10,(%r12) diff --git a/gen/bcm/aes-gcm-avx10-x86_64-linux.S b/gen/bcm/aes-gcm-avx10-x86_64-linux.S index cf661c8667..2be6a8cb7b 100644 --- a/gen/bcm/aes-gcm-avx10-x86_64-linux.S +++ b/gen/bcm/aes-gcm-avx10-x86_64-linux.S @@ -75,16 +75,16 @@ _CET_ENDBR .cfi_endproc .size gcm_gmult_vpclmulqdq_avx10, . - gcm_gmult_vpclmulqdq_avx10 -.globl gcm_init_vpclmulqdq_avx10 -.hidden gcm_init_vpclmulqdq_avx10 -.type gcm_init_vpclmulqdq_avx10,@function +.globl gcm_init_vpclmulqdq_avx10_512 +.hidden gcm_init_vpclmulqdq_avx10_512 +.type gcm_init_vpclmulqdq_avx10_512,@function .align 32 -gcm_init_vpclmulqdq_avx10: +gcm_init_vpclmulqdq_avx10_512: .cfi_startproc _CET_ENDBR - leaq 256-32(%rdi),%r8 + leaq 256-64(%rdi),%r8 @@ -112,7 +112,7 @@ _CET_ENDBR vpternlogd $0x78,.Lgfpoly_and_internal_carrybit(%rip),%xmm0,%xmm3 - vbroadcasti32x4 .Lgfpoly(%rip),%ymm5 + vbroadcasti32x4 .Lgfpoly(%rip),%zmm5 @@ -137,1078 +137,51 @@ _CET_ENDBR vinserti128 $1,%xmm3,%ymm4,%ymm3 vinserti128 $1,%xmm4,%ymm4,%ymm4 + vpclmulqdq $0x00,%ymm4,%ymm3,%ymm0 + vpclmulqdq $0x01,%ymm4,%ymm3,%ymm1 + vpclmulqdq $0x10,%ymm4,%ymm3,%ymm2 + vpxord %ymm2,%ymm1,%ymm1 + vpclmulqdq $0x01,%ymm0,%ymm5,%ymm2 + vpshufd $0x4e,%ymm0,%ymm0 + vpternlogd $0x96,%ymm2,%ymm0,%ymm1 + vpclmulqdq $0x11,%ymm4,%ymm3,%ymm4 + vpclmulqdq $0x01,%ymm1,%ymm5,%ymm0 + vpshufd $0x4e,%ymm1,%ymm1 + vpternlogd $0x96,%ymm0,%ymm1,%ymm4 - vmovdqu8 %ymm3,(%r8) - - - - - - movl $7,%eax -.Lprecompute_next__func1: - subq $32,%r8 - vpclmulqdq $0x00,%ymm4,%ymm3,%ymm0 - vpclmulqdq $0x01,%ymm4,%ymm3,%ymm1 - vpclmulqdq $0x10,%ymm4,%ymm3,%ymm2 - vpxord %ymm2,%ymm1,%ymm1 - vpclmulqdq $0x01,%ymm0,%ymm5,%ymm2 - vpshufd $0x4e,%ymm0,%ymm0 - vpternlogd $0x96,%ymm2,%ymm0,%ymm1 - vpclmulqdq $0x11,%ymm4,%ymm3,%ymm3 - vpclmulqdq $0x01,%ymm1,%ymm5,%ymm0 - vpshufd $0x4e,%ymm1,%ymm1 - vpternlogd $0x96,%ymm0,%ymm1,%ymm3 - - vmovdqu8 %ymm3,(%r8) - decl %eax - jnz .Lprecompute_next__func1 - - vzeroupper - ret - -.cfi_endproc -.size gcm_init_vpclmulqdq_avx10, . - gcm_init_vpclmulqdq_avx10 -.globl gcm_ghash_vpclmulqdq_avx10_256 -.hidden gcm_ghash_vpclmulqdq_avx10_256 -.type gcm_ghash_vpclmulqdq_avx10_256,@function -.align 32 -gcm_ghash_vpclmulqdq_avx10_256: -.cfi_startproc - -_CET_ENDBR - - - - - - - vmovdqu .Lbswap_mask(%rip),%xmm4 - vmovdqu .Lgfpoly(%rip),%xmm10 - - - vmovdqu (%rdi),%xmm5 - vpshufb %xmm4,%xmm5,%xmm5 - - - cmpq $32,%rcx - jb .Laad_blockbyblock__func1 - - - - vshufi64x2 $0,%ymm4,%ymm4,%ymm4 - vshufi64x2 $0,%ymm10,%ymm10,%ymm10 - - - vmovdqu8 256-32(%rsi),%ymm9 - - cmpq $128-1,%rcx - jbe .Laad_loop_1x__func1 - - - vmovdqu8 256-128(%rsi),%ymm6 - vmovdqu8 256-96(%rsi),%ymm7 - vmovdqu8 256-64(%rsi),%ymm8 - - -.Laad_loop_4x__func1: - vmovdqu8 0(%rdx),%ymm0 - vmovdqu8 32(%rdx),%ymm1 - vmovdqu8 64(%rdx),%ymm2 - vmovdqu8 96(%rdx),%ymm3 - vpshufb %ymm4,%ymm0,%ymm0 - vpxord %ymm5,%ymm0,%ymm0 - vpshufb %ymm4,%ymm1,%ymm1 - vpshufb %ymm4,%ymm2,%ymm2 - vpshufb %ymm4,%ymm3,%ymm3 - vpclmulqdq $0x00,%ymm6,%ymm0,%ymm5 - vpclmulqdq $0x00,%ymm7,%ymm1,%ymm11 - vpclmulqdq $0x00,%ymm8,%ymm2,%ymm12 - vpxord %ymm11,%ymm5,%ymm5 - vpclmulqdq $0x00,%ymm9,%ymm3,%ymm13 - vpternlogd $0x96,%ymm13,%ymm12,%ymm5 - vpclmulqdq $0x01,%ymm6,%ymm0,%ymm11 - vpclmulqdq $0x01,%ymm7,%ymm1,%ymm12 - vpclmulqdq $0x01,%ymm8,%ymm2,%ymm13 - vpternlogd $0x96,%ymm13,%ymm12,%ymm11 - vpclmulqdq $0x01,%ymm9,%ymm3,%ymm12 - vpclmulqdq $0x10,%ymm6,%ymm0,%ymm13 - vpternlogd $0x96,%ymm13,%ymm12,%ymm11 - vpclmulqdq $0x10,%ymm7,%ymm1,%ymm12 - vpclmulqdq $0x10,%ymm8,%ymm2,%ymm13 - vpternlogd $0x96,%ymm13,%ymm12,%ymm11 - vpclmulqdq $0x01,%ymm5,%ymm10,%ymm13 - vpclmulqdq $0x10,%ymm9,%ymm3,%ymm12 - vpxord %ymm12,%ymm11,%ymm11 - vpshufd $0x4e,%ymm5,%ymm5 - vpclmulqdq $0x11,%ymm6,%ymm0,%ymm0 - vpclmulqdq $0x11,%ymm7,%ymm1,%ymm1 - vpclmulqdq $0x11,%ymm8,%ymm2,%ymm2 - vpternlogd $0x96,%ymm13,%ymm5,%ymm11 - vpclmulqdq $0x11,%ymm9,%ymm3,%ymm3 - vpternlogd $0x96,%ymm2,%ymm1,%ymm0 - vpclmulqdq $0x01,%ymm11,%ymm10,%ymm12 - vpxord %ymm3,%ymm0,%ymm5 - vpshufd $0x4e,%ymm11,%ymm11 - vpternlogd $0x96,%ymm12,%ymm11,%ymm5 - vextracti32x4 $1,%ymm5,%xmm0 - vpxord %xmm0,%xmm5,%xmm5 - - subq $-128,%rdx - addq $-128,%rcx - cmpq $128-1,%rcx - ja .Laad_loop_4x__func1 - - - cmpq $32,%rcx - jb .Laad_large_done__func1 -.Laad_loop_1x__func1: - vmovdqu8 (%rdx),%ymm0 - vpshufb %ymm4,%ymm0,%ymm0 - vpxord %ymm0,%ymm5,%ymm5 - vpclmulqdq $0x00,%ymm9,%ymm5,%ymm0 - vpclmulqdq $0x01,%ymm9,%ymm5,%ymm1 - vpclmulqdq $0x10,%ymm9,%ymm5,%ymm2 - vpxord %ymm2,%ymm1,%ymm1 - vpclmulqdq $0x01,%ymm0,%ymm10,%ymm2 - vpshufd $0x4e,%ymm0,%ymm0 - vpternlogd $0x96,%ymm2,%ymm0,%ymm1 - vpclmulqdq $0x11,%ymm9,%ymm5,%ymm5 - vpclmulqdq $0x01,%ymm1,%ymm10,%ymm0 - vpshufd $0x4e,%ymm1,%ymm1 - vpternlogd $0x96,%ymm0,%ymm1,%ymm5 - - vextracti32x4 $1,%ymm5,%xmm0 - vpxord %xmm0,%xmm5,%xmm5 - - addq $32,%rdx - subq $32,%rcx - cmpq $32,%rcx - jae .Laad_loop_1x__func1 - -.Laad_large_done__func1: - - - vzeroupper - - -.Laad_blockbyblock__func1: - testq %rcx,%rcx - jz .Laad_done__func1 - vmovdqu 256-16(%rsi),%xmm9 -.Laad_loop_blockbyblock__func1: - vmovdqu (%rdx),%xmm0 - vpshufb %xmm4,%xmm0,%xmm0 - vpxor %xmm0,%xmm5,%xmm5 - vpclmulqdq $0x00,%xmm9,%xmm5,%xmm0 - vpclmulqdq $0x01,%xmm9,%xmm5,%xmm1 - vpclmulqdq $0x10,%xmm9,%xmm5,%xmm2 - vpxord %xmm2,%xmm1,%xmm1 - vpclmulqdq $0x01,%xmm0,%xmm10,%xmm2 - vpshufd $0x4e,%xmm0,%xmm0 - vpternlogd $0x96,%xmm2,%xmm0,%xmm1 - vpclmulqdq $0x11,%xmm9,%xmm5,%xmm5 - vpclmulqdq $0x01,%xmm1,%xmm10,%xmm0 - vpshufd $0x4e,%xmm1,%xmm1 - vpternlogd $0x96,%xmm0,%xmm1,%xmm5 - - addq $16,%rdx - subq $16,%rcx - jnz .Laad_loop_blockbyblock__func1 - -.Laad_done__func1: - - vpshufb %xmm4,%xmm5,%xmm5 - vmovdqu %xmm5,(%rdi) - ret - -.cfi_endproc -.size gcm_ghash_vpclmulqdq_avx10_256, . - gcm_ghash_vpclmulqdq_avx10_256 -.globl aes_gcm_enc_update_vaes_avx10_256 -.hidden aes_gcm_enc_update_vaes_avx10_256 -.type aes_gcm_enc_update_vaes_avx10_256,@function -.align 32 -aes_gcm_enc_update_vaes_avx10_256: -.cfi_startproc - -_CET_ENDBR - pushq %r12 -.cfi_adjust_cfa_offset 8 -.cfi_offset %r12,-16 - - movq 16(%rsp),%r12 -#ifdef BORINGSSL_DISPATCH_TEST -.extern BORINGSSL_function_hit -.hidden BORINGSSL_function_hit - movb $1,BORINGSSL_function_hit+6(%rip) -#endif - - vbroadcasti32x4 .Lbswap_mask(%rip),%ymm8 - vbroadcasti32x4 .Lgfpoly(%rip),%ymm31 - - - - vmovdqu (%r12),%xmm10 - vpshufb %xmm8,%xmm10,%xmm10 - vbroadcasti32x4 (%r8),%ymm12 - vpshufb %ymm8,%ymm12,%ymm12 - - - - movl 240(%rcx),%r10d - leal -20(,%r10,4),%r10d - - - - - leaq 96(%rcx,%r10,4),%r11 - vbroadcasti32x4 (%rcx),%ymm13 - vbroadcasti32x4 (%r11),%ymm14 - - - vpaddd .Lctr_pattern(%rip),%ymm12,%ymm12 - - - vbroadcasti32x4 .Linc_2blocks(%rip),%ymm11 - - - - cmpq $128-1,%rdx - jbe .Lcrypt_loop_4x_done__func1 - - - vmovdqu8 256-128(%r9),%ymm27 - vmovdqu8 256-96(%r9),%ymm28 - vmovdqu8 256-64(%r9),%ymm29 - vmovdqu8 256-32(%r9),%ymm30 - - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm1 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm2 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm3 - vpaddd %ymm11,%ymm12,%ymm12 - - - vpxord %ymm13,%ymm0,%ymm0 - vpxord %ymm13,%ymm1,%ymm1 - vpxord %ymm13,%ymm2,%ymm2 - vpxord %ymm13,%ymm3,%ymm3 - - leaq 16(%rcx),%rax -.Lvaesenc_loop_first_4_vecs__func1: - vbroadcasti32x4 (%rax),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - - addq $16,%rax - cmpq %rax,%r11 - jne .Lvaesenc_loop_first_4_vecs__func1 - - - - vpxord 0(%rdi),%ymm14,%ymm4 - vpxord 32(%rdi),%ymm14,%ymm5 - vpxord 64(%rdi),%ymm14,%ymm6 - vpxord 96(%rdi),%ymm14,%ymm7 - - - - vaesenclast %ymm4,%ymm0,%ymm4 - vaesenclast %ymm5,%ymm1,%ymm5 - vaesenclast %ymm6,%ymm2,%ymm6 - vaesenclast %ymm7,%ymm3,%ymm7 - - - vmovdqu8 %ymm4,0(%rsi) - vmovdqu8 %ymm5,32(%rsi) - vmovdqu8 %ymm6,64(%rsi) - vmovdqu8 %ymm7,96(%rsi) - - subq $-128,%rdi - subq $-128,%rsi - addq $-128,%rdx - cmpq $128-1,%rdx - jbe .Lghash_last_ciphertext_4x__func1 - vbroadcasti32x4 -144(%r11),%ymm15 - vbroadcasti32x4 -128(%r11),%ymm16 - vbroadcasti32x4 -112(%r11),%ymm17 - vbroadcasti32x4 -96(%r11),%ymm18 - vbroadcasti32x4 -80(%r11),%ymm19 - vbroadcasti32x4 -64(%r11),%ymm20 - vbroadcasti32x4 -48(%r11),%ymm21 - vbroadcasti32x4 -32(%r11),%ymm22 - vbroadcasti32x4 -16(%r11),%ymm23 -.Lcrypt_loop_4x__func1: - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm1 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm2 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm3 - vpaddd %ymm11,%ymm12,%ymm12 - - - vpxord %ymm13,%ymm0,%ymm0 - vpxord %ymm13,%ymm1,%ymm1 - vpxord %ymm13,%ymm2,%ymm2 - vpxord %ymm13,%ymm3,%ymm3 - - cmpl $24,%r10d - jl .Laes128__func1 - je .Laes192__func1 - - vbroadcasti32x4 -208(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - - vbroadcasti32x4 -192(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - -.Laes192__func1: - vbroadcasti32x4 -176(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - - vbroadcasti32x4 -160(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - -.Laes128__func1: - vpshufb %ymm8,%ymm4,%ymm4 - vpxord %ymm10,%ymm4,%ymm4 - vpshufb %ymm8,%ymm5,%ymm5 - vpshufb %ymm8,%ymm6,%ymm6 - - vaesenc %ymm15,%ymm0,%ymm0 - vaesenc %ymm15,%ymm1,%ymm1 - vaesenc %ymm15,%ymm2,%ymm2 - vaesenc %ymm15,%ymm3,%ymm3 - - vpshufb %ymm8,%ymm7,%ymm7 - vpclmulqdq $0x00,%ymm27,%ymm4,%ymm10 - vpclmulqdq $0x00,%ymm28,%ymm5,%ymm24 - vpclmulqdq $0x00,%ymm29,%ymm6,%ymm25 - - vaesenc %ymm16,%ymm0,%ymm0 - vaesenc %ymm16,%ymm1,%ymm1 - vaesenc %ymm16,%ymm2,%ymm2 - vaesenc %ymm16,%ymm3,%ymm3 - - vpxord %ymm24,%ymm10,%ymm10 - vpclmulqdq $0x00,%ymm30,%ymm7,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm10 - vpclmulqdq $0x01,%ymm27,%ymm4,%ymm24 - - vaesenc %ymm17,%ymm0,%ymm0 - vaesenc %ymm17,%ymm1,%ymm1 - vaesenc %ymm17,%ymm2,%ymm2 - vaesenc %ymm17,%ymm3,%ymm3 - - vpclmulqdq $0x01,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x01,%ymm29,%ymm6,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm30,%ymm7,%ymm25 - - vaesenc %ymm18,%ymm0,%ymm0 - vaesenc %ymm18,%ymm1,%ymm1 - vaesenc %ymm18,%ymm2,%ymm2 - vaesenc %ymm18,%ymm3,%ymm3 - - vpclmulqdq $0x10,%ymm27,%ymm4,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x10,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x10,%ymm29,%ymm6,%ymm26 - - vaesenc %ymm19,%ymm0,%ymm0 - vaesenc %ymm19,%ymm1,%ymm1 - vaesenc %ymm19,%ymm2,%ymm2 - vaesenc %ymm19,%ymm3,%ymm3 - - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm10,%ymm31,%ymm26 - vpclmulqdq $0x10,%ymm30,%ymm7,%ymm25 - vpxord %ymm25,%ymm24,%ymm24 - - vaesenc %ymm20,%ymm0,%ymm0 - vaesenc %ymm20,%ymm1,%ymm1 - vaesenc %ymm20,%ymm2,%ymm2 - vaesenc %ymm20,%ymm3,%ymm3 - - vpshufd $0x4e,%ymm10,%ymm10 - vpclmulqdq $0x11,%ymm27,%ymm4,%ymm4 - vpclmulqdq $0x11,%ymm28,%ymm5,%ymm5 - vpclmulqdq $0x11,%ymm29,%ymm6,%ymm6 - - vaesenc %ymm21,%ymm0,%ymm0 - vaesenc %ymm21,%ymm1,%ymm1 - vaesenc %ymm21,%ymm2,%ymm2 - vaesenc %ymm21,%ymm3,%ymm3 - - vpternlogd $0x96,%ymm26,%ymm10,%ymm24 - vpclmulqdq $0x11,%ymm30,%ymm7,%ymm7 - vpternlogd $0x96,%ymm6,%ymm5,%ymm4 - vpclmulqdq $0x01,%ymm24,%ymm31,%ymm25 - - vaesenc %ymm22,%ymm0,%ymm0 - vaesenc %ymm22,%ymm1,%ymm1 - vaesenc %ymm22,%ymm2,%ymm2 - vaesenc %ymm22,%ymm3,%ymm3 - - vpxord %ymm7,%ymm4,%ymm10 - vpshufd $0x4e,%ymm24,%ymm24 - vpternlogd $0x96,%ymm25,%ymm24,%ymm10 - - vaesenc %ymm23,%ymm0,%ymm0 - vaesenc %ymm23,%ymm1,%ymm1 - vaesenc %ymm23,%ymm2,%ymm2 - vaesenc %ymm23,%ymm3,%ymm3 - - vextracti32x4 $1,%ymm10,%xmm4 - vpxord %xmm4,%xmm10,%xmm10 - - - - - vpxord 0(%rdi),%ymm14,%ymm4 - vpxord 32(%rdi),%ymm14,%ymm5 - vpxord 64(%rdi),%ymm14,%ymm6 - vpxord 96(%rdi),%ymm14,%ymm7 - - - - vaesenclast %ymm4,%ymm0,%ymm4 - vaesenclast %ymm5,%ymm1,%ymm5 - vaesenclast %ymm6,%ymm2,%ymm6 - vaesenclast %ymm7,%ymm3,%ymm7 - - - vmovdqu8 %ymm4,0(%rsi) - vmovdqu8 %ymm5,32(%rsi) - vmovdqu8 %ymm6,64(%rsi) - vmovdqu8 %ymm7,96(%rsi) - - subq $-128,%rdi - subq $-128,%rsi - addq $-128,%rdx - cmpq $128-1,%rdx - ja .Lcrypt_loop_4x__func1 -.Lghash_last_ciphertext_4x__func1: - vpshufb %ymm8,%ymm4,%ymm4 - vpxord %ymm10,%ymm4,%ymm4 - vpshufb %ymm8,%ymm5,%ymm5 - vpshufb %ymm8,%ymm6,%ymm6 - vpshufb %ymm8,%ymm7,%ymm7 - vpclmulqdq $0x00,%ymm27,%ymm4,%ymm10 - vpclmulqdq $0x00,%ymm28,%ymm5,%ymm24 - vpclmulqdq $0x00,%ymm29,%ymm6,%ymm25 - vpxord %ymm24,%ymm10,%ymm10 - vpclmulqdq $0x00,%ymm30,%ymm7,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm10 - vpclmulqdq $0x01,%ymm27,%ymm4,%ymm24 - vpclmulqdq $0x01,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x01,%ymm29,%ymm6,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm30,%ymm7,%ymm25 - vpclmulqdq $0x10,%ymm27,%ymm4,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x10,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x10,%ymm29,%ymm6,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm10,%ymm31,%ymm26 - vpclmulqdq $0x10,%ymm30,%ymm7,%ymm25 - vpxord %ymm25,%ymm24,%ymm24 - vpshufd $0x4e,%ymm10,%ymm10 - vpclmulqdq $0x11,%ymm27,%ymm4,%ymm4 - vpclmulqdq $0x11,%ymm28,%ymm5,%ymm5 - vpclmulqdq $0x11,%ymm29,%ymm6,%ymm6 - vpternlogd $0x96,%ymm26,%ymm10,%ymm24 - vpclmulqdq $0x11,%ymm30,%ymm7,%ymm7 - vpternlogd $0x96,%ymm6,%ymm5,%ymm4 - vpclmulqdq $0x01,%ymm24,%ymm31,%ymm25 - vpxord %ymm7,%ymm4,%ymm10 - vpshufd $0x4e,%ymm24,%ymm24 - vpternlogd $0x96,%ymm25,%ymm24,%ymm10 - vextracti32x4 $1,%ymm10,%xmm4 - vpxord %xmm4,%xmm10,%xmm10 - -.Lcrypt_loop_4x_done__func1: - - testq %rdx,%rdx - jz .Ldone__func1 - - - - - - - - - - - - - - - - - - - - - movq %rdx,%rax - negq %rax - andq $-16,%rax - leaq 256(%r9,%rax,1),%r8 - vpxor %xmm4,%xmm4,%xmm4 - vpxor %xmm5,%xmm5,%xmm5 - vpxor %xmm6,%xmm6,%xmm6 - - cmpq $32,%rdx - jb .Lpartial_vec__func1 - -.Lcrypt_loop_1x__func1: - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpaddd %ymm11,%ymm12,%ymm12 - vpxord %ymm13,%ymm0,%ymm0 - leaq 16(%rcx),%rax -.Lvaesenc_loop_tail_full_vec__func1: - vbroadcasti32x4 (%rax),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - addq $16,%rax - cmpq %rax,%r11 - jne .Lvaesenc_loop_tail_full_vec__func1 - vaesenclast %ymm14,%ymm0,%ymm0 - - - vmovdqu8 (%rdi),%ymm1 - vpxord %ymm1,%ymm0,%ymm0 - vmovdqu8 %ymm0,(%rsi) - - - vmovdqu8 (%r8),%ymm30 - vpshufb %ymm8,%ymm0,%ymm0 - vpxord %ymm10,%ymm0,%ymm0 - vpclmulqdq $0x00,%ymm30,%ymm0,%ymm7 - vpclmulqdq $0x01,%ymm30,%ymm0,%ymm1 - vpclmulqdq $0x10,%ymm30,%ymm0,%ymm2 - vpclmulqdq $0x11,%ymm30,%ymm0,%ymm3 - vpxord %ymm7,%ymm4,%ymm4 - vpternlogd $0x96,%ymm2,%ymm1,%ymm5 - vpxord %ymm3,%ymm6,%ymm6 - - vpxor %xmm10,%xmm10,%xmm10 - - addq $32,%r8 - addq $32,%rdi - addq $32,%rsi - subq $32,%rdx - cmpq $32,%rdx - jae .Lcrypt_loop_1x__func1 - - testq %rdx,%rdx - jz .Lreduce__func1 - -.Lpartial_vec__func1: - - - - - movq $-1,%rax - bzhiq %rdx,%rax,%rax - kmovd %eax,%k1 - addq $15,%rdx - andq $-16,%rdx - movq $-1,%rax - bzhiq %rdx,%rax,%rax - kmovd %eax,%k2 - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpxord %ymm13,%ymm0,%ymm0 - leaq 16(%rcx),%rax -.Lvaesenc_loop_tail_partialvec__func1: - vbroadcasti32x4 (%rax),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - addq $16,%rax - cmpq %rax,%r11 - jne .Lvaesenc_loop_tail_partialvec__func1 - vaesenclast %ymm14,%ymm0,%ymm0 - - - vmovdqu8 (%rdi),%ymm1{%k1}{z} - vpxord %ymm1,%ymm0,%ymm0 - vmovdqu8 %ymm0,(%rsi){%k1} - - - - - - - - - - - - - - vmovdqu8 (%r8),%ymm30{%k2}{z} - vmovdqu8 %ymm0,%ymm1{%k1}{z} - vpshufb %ymm8,%ymm1,%ymm0 - vpxord %ymm10,%ymm0,%ymm0 - vpclmulqdq $0x00,%ymm30,%ymm0,%ymm7 - vpclmulqdq $0x01,%ymm30,%ymm0,%ymm1 - vpclmulqdq $0x10,%ymm30,%ymm0,%ymm2 - vpclmulqdq $0x11,%ymm30,%ymm0,%ymm3 - vpxord %ymm7,%ymm4,%ymm4 - vpternlogd $0x96,%ymm2,%ymm1,%ymm5 - vpxord %ymm3,%ymm6,%ymm6 - - -.Lreduce__func1: - - vpclmulqdq $0x01,%ymm4,%ymm31,%ymm0 - vpshufd $0x4e,%ymm4,%ymm4 - vpternlogd $0x96,%ymm0,%ymm4,%ymm5 - vpclmulqdq $0x01,%ymm5,%ymm31,%ymm0 - vpshufd $0x4e,%ymm5,%ymm5 - vpternlogd $0x96,%ymm0,%ymm5,%ymm6 - - vextracti32x4 $1,%ymm6,%xmm0 - vpxord %xmm0,%xmm6,%xmm10 - - -.Ldone__func1: - - vpshufb %xmm8,%xmm10,%xmm10 - vmovdqu %xmm10,(%r12) - - vzeroupper - popq %r12 -.cfi_adjust_cfa_offset -8 -.cfi_restore %r12 - ret - -.cfi_endproc -.size aes_gcm_enc_update_vaes_avx10_256, . - aes_gcm_enc_update_vaes_avx10_256 -.globl aes_gcm_dec_update_vaes_avx10_256 -.hidden aes_gcm_dec_update_vaes_avx10_256 -.type aes_gcm_dec_update_vaes_avx10_256,@function -.align 32 -aes_gcm_dec_update_vaes_avx10_256: -.cfi_startproc - -_CET_ENDBR - pushq %r12 -.cfi_adjust_cfa_offset 8 -.cfi_offset %r12,-16 - - movq 16(%rsp),%r12 - - vbroadcasti32x4 .Lbswap_mask(%rip),%ymm8 - vbroadcasti32x4 .Lgfpoly(%rip),%ymm31 - - - - vmovdqu (%r12),%xmm10 - vpshufb %xmm8,%xmm10,%xmm10 - vbroadcasti32x4 (%r8),%ymm12 - vpshufb %ymm8,%ymm12,%ymm12 - - - - movl 240(%rcx),%r10d - leal -20(,%r10,4),%r10d - - - - - leaq 96(%rcx,%r10,4),%r11 - vbroadcasti32x4 (%rcx),%ymm13 - vbroadcasti32x4 (%r11),%ymm14 - - - vpaddd .Lctr_pattern(%rip),%ymm12,%ymm12 - - - vbroadcasti32x4 .Linc_2blocks(%rip),%ymm11 - - - - cmpq $128-1,%rdx - jbe .Lcrypt_loop_4x_done__func2 - - - vmovdqu8 256-128(%r9),%ymm27 - vmovdqu8 256-96(%r9),%ymm28 - vmovdqu8 256-64(%r9),%ymm29 - vmovdqu8 256-32(%r9),%ymm30 - vbroadcasti32x4 -144(%r11),%ymm15 - vbroadcasti32x4 -128(%r11),%ymm16 - vbroadcasti32x4 -112(%r11),%ymm17 - vbroadcasti32x4 -96(%r11),%ymm18 - vbroadcasti32x4 -80(%r11),%ymm19 - vbroadcasti32x4 -64(%r11),%ymm20 - vbroadcasti32x4 -48(%r11),%ymm21 - vbroadcasti32x4 -32(%r11),%ymm22 - vbroadcasti32x4 -16(%r11),%ymm23 -.Lcrypt_loop_4x__func2: - vmovdqu8 0(%rdi),%ymm4 - vmovdqu8 32(%rdi),%ymm5 - vmovdqu8 64(%rdi),%ymm6 - vmovdqu8 96(%rdi),%ymm7 - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm1 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm2 - vpaddd %ymm11,%ymm12,%ymm12 - vpshufb %ymm8,%ymm12,%ymm3 - vpaddd %ymm11,%ymm12,%ymm12 - - - vpxord %ymm13,%ymm0,%ymm0 - vpxord %ymm13,%ymm1,%ymm1 - vpxord %ymm13,%ymm2,%ymm2 - vpxord %ymm13,%ymm3,%ymm3 - - cmpl $24,%r10d - jl .Laes128__func2 - je .Laes192__func2 - - vbroadcasti32x4 -208(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - - vbroadcasti32x4 -192(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - -.Laes192__func2: - vbroadcasti32x4 -176(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - - vbroadcasti32x4 -160(%r11),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - vaesenc %ymm9,%ymm1,%ymm1 - vaesenc %ymm9,%ymm2,%ymm2 - vaesenc %ymm9,%ymm3,%ymm3 - -.Laes128__func2: - vpshufb %ymm8,%ymm4,%ymm4 - vpxord %ymm10,%ymm4,%ymm4 - vpshufb %ymm8,%ymm5,%ymm5 - vpshufb %ymm8,%ymm6,%ymm6 - - vaesenc %ymm15,%ymm0,%ymm0 - vaesenc %ymm15,%ymm1,%ymm1 - vaesenc %ymm15,%ymm2,%ymm2 - vaesenc %ymm15,%ymm3,%ymm3 - - vpshufb %ymm8,%ymm7,%ymm7 - vpclmulqdq $0x00,%ymm27,%ymm4,%ymm10 - vpclmulqdq $0x00,%ymm28,%ymm5,%ymm24 - vpclmulqdq $0x00,%ymm29,%ymm6,%ymm25 - - vaesenc %ymm16,%ymm0,%ymm0 - vaesenc %ymm16,%ymm1,%ymm1 - vaesenc %ymm16,%ymm2,%ymm2 - vaesenc %ymm16,%ymm3,%ymm3 - - vpxord %ymm24,%ymm10,%ymm10 - vpclmulqdq $0x00,%ymm30,%ymm7,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm10 - vpclmulqdq $0x01,%ymm27,%ymm4,%ymm24 - - vaesenc %ymm17,%ymm0,%ymm0 - vaesenc %ymm17,%ymm1,%ymm1 - vaesenc %ymm17,%ymm2,%ymm2 - vaesenc %ymm17,%ymm3,%ymm3 - - vpclmulqdq $0x01,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x01,%ymm29,%ymm6,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm30,%ymm7,%ymm25 - - vaesenc %ymm18,%ymm0,%ymm0 - vaesenc %ymm18,%ymm1,%ymm1 - vaesenc %ymm18,%ymm2,%ymm2 - vaesenc %ymm18,%ymm3,%ymm3 - - vpclmulqdq $0x10,%ymm27,%ymm4,%ymm26 - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x10,%ymm28,%ymm5,%ymm25 - vpclmulqdq $0x10,%ymm29,%ymm6,%ymm26 - - vaesenc %ymm19,%ymm0,%ymm0 - vaesenc %ymm19,%ymm1,%ymm1 - vaesenc %ymm19,%ymm2,%ymm2 - vaesenc %ymm19,%ymm3,%ymm3 - - vpternlogd $0x96,%ymm26,%ymm25,%ymm24 - vpclmulqdq $0x01,%ymm10,%ymm31,%ymm26 - vpclmulqdq $0x10,%ymm30,%ymm7,%ymm25 - vpxord %ymm25,%ymm24,%ymm24 - - vaesenc %ymm20,%ymm0,%ymm0 - vaesenc %ymm20,%ymm1,%ymm1 - vaesenc %ymm20,%ymm2,%ymm2 - vaesenc %ymm20,%ymm3,%ymm3 - - vpshufd $0x4e,%ymm10,%ymm10 - vpclmulqdq $0x11,%ymm27,%ymm4,%ymm4 - vpclmulqdq $0x11,%ymm28,%ymm5,%ymm5 - vpclmulqdq $0x11,%ymm29,%ymm6,%ymm6 - - vaesenc %ymm21,%ymm0,%ymm0 - vaesenc %ymm21,%ymm1,%ymm1 - vaesenc %ymm21,%ymm2,%ymm2 - vaesenc %ymm21,%ymm3,%ymm3 - - vpternlogd $0x96,%ymm26,%ymm10,%ymm24 - vpclmulqdq $0x11,%ymm30,%ymm7,%ymm7 - vpternlogd $0x96,%ymm6,%ymm5,%ymm4 - vpclmulqdq $0x01,%ymm24,%ymm31,%ymm25 - - vaesenc %ymm22,%ymm0,%ymm0 - vaesenc %ymm22,%ymm1,%ymm1 - vaesenc %ymm22,%ymm2,%ymm2 - vaesenc %ymm22,%ymm3,%ymm3 - - vpxord %ymm7,%ymm4,%ymm10 - vpshufd $0x4e,%ymm24,%ymm24 - vpternlogd $0x96,%ymm25,%ymm24,%ymm10 - - vaesenc %ymm23,%ymm0,%ymm0 - vaesenc %ymm23,%ymm1,%ymm1 - vaesenc %ymm23,%ymm2,%ymm2 - vaesenc %ymm23,%ymm3,%ymm3 - - vextracti32x4 $1,%ymm10,%xmm4 - vpxord %xmm4,%xmm10,%xmm10 - - - - - vpxord 0(%rdi),%ymm14,%ymm4 - vpxord 32(%rdi),%ymm14,%ymm5 - vpxord 64(%rdi),%ymm14,%ymm6 - vpxord 96(%rdi),%ymm14,%ymm7 - - - - vaesenclast %ymm4,%ymm0,%ymm4 - vaesenclast %ymm5,%ymm1,%ymm5 - vaesenclast %ymm6,%ymm2,%ymm6 - vaesenclast %ymm7,%ymm3,%ymm7 - - - vmovdqu8 %ymm4,0(%rsi) - vmovdqu8 %ymm5,32(%rsi) - vmovdqu8 %ymm6,64(%rsi) - vmovdqu8 %ymm7,96(%rsi) - - subq $-128,%rdi - subq $-128,%rsi - addq $-128,%rdx - cmpq $128-1,%rdx - ja .Lcrypt_loop_4x__func2 -.Lcrypt_loop_4x_done__func2: - - testq %rdx,%rdx - jz .Ldone__func2 - - - - - - - - - - - - - - - - - - - - - movq %rdx,%rax - negq %rax - andq $-16,%rax - leaq 256(%r9,%rax,1),%r8 - vpxor %xmm4,%xmm4,%xmm4 - vpxor %xmm5,%xmm5,%xmm5 - vpxor %xmm6,%xmm6,%xmm6 - - cmpq $32,%rdx - jb .Lpartial_vec__func2 - -.Lcrypt_loop_1x__func2: - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpaddd %ymm11,%ymm12,%ymm12 - vpxord %ymm13,%ymm0,%ymm0 - leaq 16(%rcx),%rax -.Lvaesenc_loop_tail_full_vec__func2: - vbroadcasti32x4 (%rax),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - addq $16,%rax - cmpq %rax,%r11 - jne .Lvaesenc_loop_tail_full_vec__func2 - vaesenclast %ymm14,%ymm0,%ymm0 - - - vmovdqu8 (%rdi),%ymm1 - vpxord %ymm1,%ymm0,%ymm0 - vmovdqu8 %ymm0,(%rsi) - - - vmovdqu8 (%r8),%ymm30 - vpshufb %ymm8,%ymm1,%ymm0 - vpxord %ymm10,%ymm0,%ymm0 - vpclmulqdq $0x00,%ymm30,%ymm0,%ymm7 - vpclmulqdq $0x01,%ymm30,%ymm0,%ymm1 - vpclmulqdq $0x10,%ymm30,%ymm0,%ymm2 - vpclmulqdq $0x11,%ymm30,%ymm0,%ymm3 - vpxord %ymm7,%ymm4,%ymm4 - vpternlogd $0x96,%ymm2,%ymm1,%ymm5 - vpxord %ymm3,%ymm6,%ymm6 - - vpxor %xmm10,%xmm10,%xmm10 - - addq $32,%r8 - addq $32,%rdi - addq $32,%rsi - subq $32,%rdx - cmpq $32,%rdx - jae .Lcrypt_loop_1x__func2 - - testq %rdx,%rdx - jz .Lreduce__func2 - -.Lpartial_vec__func2: - - - - - movq $-1,%rax - bzhiq %rdx,%rax,%rax - kmovd %eax,%k1 - addq $15,%rdx - andq $-16,%rdx - movq $-1,%rax - bzhiq %rdx,%rax,%rax - kmovd %eax,%k2 - - - - vpshufb %ymm8,%ymm12,%ymm0 - vpxord %ymm13,%ymm0,%ymm0 - leaq 16(%rcx),%rax -.Lvaesenc_loop_tail_partialvec__func2: - vbroadcasti32x4 (%rax),%ymm9 - vaesenc %ymm9,%ymm0,%ymm0 - addq $16,%rax - cmpq %rax,%r11 - jne .Lvaesenc_loop_tail_partialvec__func2 - vaesenclast %ymm14,%ymm0,%ymm0 - - - vmovdqu8 (%rdi),%ymm1{%k1}{z} - vpxord %ymm1,%ymm0,%ymm0 - vmovdqu8 %ymm0,(%rsi){%k1} - - - - - - - - - - - - - - vmovdqu8 (%r8),%ymm30{%k2}{z} - - vpshufb %ymm8,%ymm1,%ymm0 - vpxord %ymm10,%ymm0,%ymm0 - vpclmulqdq $0x00,%ymm30,%ymm0,%ymm7 - vpclmulqdq $0x01,%ymm30,%ymm0,%ymm1 - vpclmulqdq $0x10,%ymm30,%ymm0,%ymm2 - vpclmulqdq $0x11,%ymm30,%ymm0,%ymm3 - vpxord %ymm7,%ymm4,%ymm4 - vpternlogd $0x96,%ymm2,%ymm1,%ymm5 - vpxord %ymm3,%ymm6,%ymm6 + vinserti64x4 $1,%ymm3,%zmm4,%zmm3 + vshufi64x2 $0,%zmm4,%zmm4,%zmm4 + vmovdqu8 %zmm3,(%r8) -.Lreduce__func2: - vpclmulqdq $0x01,%ymm4,%ymm31,%ymm0 - vpshufd $0x4e,%ymm4,%ymm4 - vpternlogd $0x96,%ymm0,%ymm4,%ymm5 - vpclmulqdq $0x01,%ymm5,%ymm31,%ymm0 - vpshufd $0x4e,%ymm5,%ymm5 - vpternlogd $0x96,%ymm0,%ymm5,%ymm6 - vextracti32x4 $1,%ymm6,%xmm0 - vpxord %xmm0,%xmm6,%xmm10 -.Ldone__func2: + movl $3,%eax +.Lprecompute_next__func1: + subq $64,%r8 + vpclmulqdq $0x00,%zmm4,%zmm3,%zmm0 + vpclmulqdq $0x01,%zmm4,%zmm3,%zmm1 + vpclmulqdq $0x10,%zmm4,%zmm3,%zmm2 + vpxord %zmm2,%zmm1,%zmm1 + vpclmulqdq $0x01,%zmm0,%zmm5,%zmm2 + vpshufd $0x4e,%zmm0,%zmm0 + vpternlogd $0x96,%zmm2,%zmm0,%zmm1 + vpclmulqdq $0x11,%zmm4,%zmm3,%zmm3 + vpclmulqdq $0x01,%zmm1,%zmm5,%zmm0 + vpshufd $0x4e,%zmm1,%zmm1 + vpternlogd $0x96,%zmm0,%zmm1,%zmm3 - vpshufb %xmm8,%xmm10,%xmm10 - vmovdqu %xmm10,(%r12) + vmovdqu8 %zmm3,(%r8) + decl %eax + jnz .Lprecompute_next__func1 vzeroupper - popq %r12 -.cfi_adjust_cfa_offset -8 -.cfi_restore %r12 ret .cfi_endproc -.size aes_gcm_dec_update_vaes_avx10_256, . - aes_gcm_dec_update_vaes_avx10_256 +.size gcm_init_vpclmulqdq_avx10_512, . - gcm_init_vpclmulqdq_avx10_512 .globl gcm_ghash_vpclmulqdq_avx10_512 .hidden gcm_ghash_vpclmulqdq_avx10_512 .type gcm_ghash_vpclmulqdq_avx10_512,@function @@ -1232,7 +205,7 @@ _CET_ENDBR cmpq $64,%rcx - jb .Laad_blockbyblock__func2 + jb .Laad_blockbyblock__func1 @@ -1243,7 +216,7 @@ _CET_ENDBR vmovdqu8 256-64(%rsi),%zmm9 cmpq $256-1,%rcx - jbe .Laad_loop_1x__func2 + jbe .Laad_loop_1x__func1 vmovdqu8 256-256(%rsi),%zmm6 @@ -1251,7 +224,7 @@ _CET_ENDBR vmovdqu8 256-128(%rsi),%zmm8 -.Laad_loop_4x__func2: +.Laad_loop_4x__func1: vmovdqu8 0(%rdx),%zmm0 vmovdqu8 64(%rdx),%zmm1 vmovdqu8 128(%rdx),%zmm2 @@ -1300,12 +273,12 @@ _CET_ENDBR subq $-256,%rdx addq $-256,%rcx cmpq $256-1,%rcx - ja .Laad_loop_4x__func2 + ja .Laad_loop_4x__func1 cmpq $64,%rcx - jb .Laad_large_done__func2 -.Laad_loop_1x__func2: + jb .Laad_large_done__func1 +.Laad_loop_1x__func1: vmovdqu8 (%rdx),%zmm0 vpshufb %zmm4,%zmm0,%zmm0 vpxord %zmm0,%zmm5,%zmm5 @@ -1330,19 +303,19 @@ _CET_ENDBR addq $64,%rdx subq $64,%rcx cmpq $64,%rcx - jae .Laad_loop_1x__func2 + jae .Laad_loop_1x__func1 -.Laad_large_done__func2: +.Laad_large_done__func1: vzeroupper -.Laad_blockbyblock__func2: +.Laad_blockbyblock__func1: testq %rcx,%rcx - jz .Laad_done__func2 + jz .Laad_done__func1 vmovdqu 256-16(%rsi),%xmm9 -.Laad_loop_blockbyblock__func2: +.Laad_loop_blockbyblock__func1: vmovdqu (%rdx),%xmm0 vpshufb %xmm4,%xmm0,%xmm0 vpxor %xmm0,%xmm5,%xmm5 @@ -1360,9 +333,9 @@ _CET_ENDBR addq $16,%rdx subq $16,%rcx - jnz .Laad_loop_blockbyblock__func2 + jnz .Laad_loop_blockbyblock__func1 -.Laad_done__func2: +.Laad_done__func1: vpshufb %xmm4,%xmm5,%xmm5 vmovdqu %xmm5,(%rdi) @@ -1420,7 +393,7 @@ _CET_ENDBR cmpq $256-1,%rdx - jbe .Lcrypt_loop_4x_done__func3 + jbe .Lcrypt_loop_4x_done__func1 vmovdqu8 256-256(%r9),%zmm27 @@ -1447,7 +420,7 @@ _CET_ENDBR vpxord %zmm13,%zmm3,%zmm3 leaq 16(%rcx),%rax -.Lvaesenc_loop_first_4_vecs__func3: +.Lvaesenc_loop_first_4_vecs__func1: vbroadcasti32x4 (%rax),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 vaesenc %zmm9,%zmm1,%zmm1 @@ -1456,7 +429,7 @@ _CET_ENDBR addq $16,%rax cmpq %rax,%r11 - jne .Lvaesenc_loop_first_4_vecs__func3 + jne .Lvaesenc_loop_first_4_vecs__func1 @@ -1482,7 +455,7 @@ _CET_ENDBR subq $-256,%rsi addq $-256,%rdx cmpq $256-1,%rdx - jbe .Lghash_last_ciphertext_4x__func3 + jbe .Lghash_last_ciphertext_4x__func1 vbroadcasti32x4 -144(%r11),%zmm15 vbroadcasti32x4 -128(%r11),%zmm16 vbroadcasti32x4 -112(%r11),%zmm17 @@ -1492,7 +465,7 @@ _CET_ENDBR vbroadcasti32x4 -48(%r11),%zmm21 vbroadcasti32x4 -32(%r11),%zmm22 vbroadcasti32x4 -16(%r11),%zmm23 -.Lcrypt_loop_4x__func3: +.Lcrypt_loop_4x__func1: @@ -1512,8 +485,8 @@ _CET_ENDBR vpxord %zmm13,%zmm3,%zmm3 cmpl $24,%r10d - jl .Laes128__func3 - je .Laes192__func3 + jl .Laes128__func1 + je .Laes192__func1 vbroadcasti32x4 -208(%r11),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 @@ -1527,7 +500,7 @@ _CET_ENDBR vaesenc %zmm9,%zmm2,%zmm2 vaesenc %zmm9,%zmm3,%zmm3 -.Laes192__func3: +.Laes192__func1: vbroadcasti32x4 -176(%r11),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 vaesenc %zmm9,%zmm1,%zmm1 @@ -1540,7 +513,7 @@ _CET_ENDBR vaesenc %zmm9,%zmm2,%zmm2 vaesenc %zmm9,%zmm3,%zmm3 -.Laes128__func3: +.Laes128__func1: vpshufb %zmm8,%zmm4,%zmm4 vpxord %zmm10,%zmm4,%zmm4 vpshufb %zmm8,%zmm5,%zmm5 @@ -1661,8 +634,8 @@ _CET_ENDBR subq $-256,%rsi addq $-256,%rdx cmpq $256-1,%rdx - ja .Lcrypt_loop_4x__func3 -.Lghash_last_ciphertext_4x__func3: + ja .Lcrypt_loop_4x__func1 +.Lghash_last_ciphertext_4x__func1: vpshufb %zmm8,%zmm4,%zmm4 vpxord %zmm10,%zmm4,%zmm4 vpshufb %zmm8,%zmm5,%zmm5 @@ -1704,10 +677,10 @@ _CET_ENDBR vpxord %xmm4,%xmm10,%xmm10 vpternlogd $0x96,%xmm5,%xmm6,%xmm10 -.Lcrypt_loop_4x_done__func3: +.Lcrypt_loop_4x_done__func1: testq %rdx,%rdx - jz .Ldone__func3 + jz .Ldone__func1 @@ -1737,9 +710,9 @@ _CET_ENDBR vpxor %xmm6,%xmm6,%xmm6 cmpq $64,%rdx - jb .Lpartial_vec__func3 + jb .Lpartial_vec__func1 -.Lcrypt_loop_1x__func3: +.Lcrypt_loop_1x__func1: @@ -1747,12 +720,12 @@ _CET_ENDBR vpaddd %zmm11,%zmm12,%zmm12 vpxord %zmm13,%zmm0,%zmm0 leaq 16(%rcx),%rax -.Lvaesenc_loop_tail_full_vec__func3: +.Lvaesenc_loop_tail_full_vec__func1: vbroadcasti32x4 (%rax),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 addq $16,%rax cmpq %rax,%r11 - jne .Lvaesenc_loop_tail_full_vec__func3 + jne .Lvaesenc_loop_tail_full_vec__func1 vaesenclast %zmm14,%zmm0,%zmm0 @@ -1779,12 +752,12 @@ _CET_ENDBR addq $64,%rsi subq $64,%rdx cmpq $64,%rdx - jae .Lcrypt_loop_1x__func3 + jae .Lcrypt_loop_1x__func1 testq %rdx,%rdx - jz .Lreduce__func3 + jz .Lreduce__func1 -.Lpartial_vec__func3: +.Lpartial_vec__func1: @@ -1803,12 +776,12 @@ _CET_ENDBR vpshufb %zmm8,%zmm12,%zmm0 vpxord %zmm13,%zmm0,%zmm0 leaq 16(%rcx),%rax -.Lvaesenc_loop_tail_partialvec__func3: +.Lvaesenc_loop_tail_partialvec__func1: vbroadcasti32x4 (%rax),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 addq $16,%rax cmpq %rax,%r11 - jne .Lvaesenc_loop_tail_partialvec__func3 + jne .Lvaesenc_loop_tail_partialvec__func1 vaesenclast %zmm14,%zmm0,%zmm0 @@ -1841,7 +814,7 @@ _CET_ENDBR vpxord %zmm3,%zmm6,%zmm6 -.Lreduce__func3: +.Lreduce__func1: vpclmulqdq $0x01,%zmm4,%zmm31,%zmm0 vpshufd $0x4e,%zmm4,%zmm4 @@ -1857,7 +830,7 @@ _CET_ENDBR vpternlogd $0x96,%xmm1,%xmm2,%xmm10 -.Ldone__func3: +.Ldone__func1: vpshufb %xmm8,%xmm10,%xmm10 vmovdqu %xmm10,(%r12) @@ -1915,7 +888,7 @@ _CET_ENDBR cmpq $256-1,%rdx - jbe .Lcrypt_loop_4x_done__func4 + jbe .Lcrypt_loop_4x_done__func2 vmovdqu8 256-256(%r9),%zmm27 @@ -1931,7 +904,7 @@ _CET_ENDBR vbroadcasti32x4 -48(%r11),%zmm21 vbroadcasti32x4 -32(%r11),%zmm22 vbroadcasti32x4 -16(%r11),%zmm23 -.Lcrypt_loop_4x__func4: +.Lcrypt_loop_4x__func2: vmovdqu8 0(%rdi),%zmm4 vmovdqu8 64(%rdi),%zmm5 vmovdqu8 128(%rdi),%zmm6 @@ -1955,8 +928,8 @@ _CET_ENDBR vpxord %zmm13,%zmm3,%zmm3 cmpl $24,%r10d - jl .Laes128__func4 - je .Laes192__func4 + jl .Laes128__func2 + je .Laes192__func2 vbroadcasti32x4 -208(%r11),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 @@ -1970,7 +943,7 @@ _CET_ENDBR vaesenc %zmm9,%zmm2,%zmm2 vaesenc %zmm9,%zmm3,%zmm3 -.Laes192__func4: +.Laes192__func2: vbroadcasti32x4 -176(%r11),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 vaesenc %zmm9,%zmm1,%zmm1 @@ -1983,7 +956,7 @@ _CET_ENDBR vaesenc %zmm9,%zmm2,%zmm2 vaesenc %zmm9,%zmm3,%zmm3 -.Laes128__func4: +.Laes128__func2: vpshufb %zmm8,%zmm4,%zmm4 vpxord %zmm10,%zmm4,%zmm4 vpshufb %zmm8,%zmm5,%zmm5 @@ -2104,11 +1077,11 @@ _CET_ENDBR subq $-256,%rsi addq $-256,%rdx cmpq $256-1,%rdx - ja .Lcrypt_loop_4x__func4 -.Lcrypt_loop_4x_done__func4: + ja .Lcrypt_loop_4x__func2 +.Lcrypt_loop_4x_done__func2: testq %rdx,%rdx - jz .Ldone__func4 + jz .Ldone__func2 @@ -2138,9 +1111,9 @@ _CET_ENDBR vpxor %xmm6,%xmm6,%xmm6 cmpq $64,%rdx - jb .Lpartial_vec__func4 + jb .Lpartial_vec__func2 -.Lcrypt_loop_1x__func4: +.Lcrypt_loop_1x__func2: @@ -2148,12 +1121,12 @@ _CET_ENDBR vpaddd %zmm11,%zmm12,%zmm12 vpxord %zmm13,%zmm0,%zmm0 leaq 16(%rcx),%rax -.Lvaesenc_loop_tail_full_vec__func4: +.Lvaesenc_loop_tail_full_vec__func2: vbroadcasti32x4 (%rax),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 addq $16,%rax cmpq %rax,%r11 - jne .Lvaesenc_loop_tail_full_vec__func4 + jne .Lvaesenc_loop_tail_full_vec__func2 vaesenclast %zmm14,%zmm0,%zmm0 @@ -2180,12 +1153,12 @@ _CET_ENDBR addq $64,%rsi subq $64,%rdx cmpq $64,%rdx - jae .Lcrypt_loop_1x__func4 + jae .Lcrypt_loop_1x__func2 testq %rdx,%rdx - jz .Lreduce__func4 + jz .Lreduce__func2 -.Lpartial_vec__func4: +.Lpartial_vec__func2: @@ -2204,12 +1177,12 @@ _CET_ENDBR vpshufb %zmm8,%zmm12,%zmm0 vpxord %zmm13,%zmm0,%zmm0 leaq 16(%rcx),%rax -.Lvaesenc_loop_tail_partialvec__func4: +.Lvaesenc_loop_tail_partialvec__func2: vbroadcasti32x4 (%rax),%zmm9 vaesenc %zmm9,%zmm0,%zmm0 addq $16,%rax cmpq %rax,%r11 - jne .Lvaesenc_loop_tail_partialvec__func4 + jne .Lvaesenc_loop_tail_partialvec__func2 vaesenclast %zmm14,%zmm0,%zmm0 @@ -2242,7 +1215,7 @@ _CET_ENDBR vpxord %zmm3,%zmm6,%zmm6 -.Lreduce__func4: +.Lreduce__func2: vpclmulqdq $0x01,%zmm4,%zmm31,%zmm0 vpshufd $0x4e,%zmm4,%zmm4 @@ -2258,7 +1231,7 @@ _CET_ENDBR vpternlogd $0x96,%xmm1,%xmm2,%xmm10 -.Ldone__func4: +.Ldone__func2: vpshufb %xmm8,%xmm10,%xmm10 vmovdqu %xmm10,(%r12) diff --git a/gen/bcm/aes-gcm-avx10-x86_64-win.asm b/gen/bcm/aes-gcm-avx10-x86_64-win.asm index 258f92322d..fb9f896a97 100644 --- a/gen/bcm/aes-gcm-avx10-x86_64-win.asm +++ b/gen/bcm/aes-gcm-avx10-x86_64-win.asm @@ -88,15 +88,15 @@ $L$SEH_endprologue_gcm_gmult_vpclmulqdq_avx10_4: $L$SEH_end_gcm_gmult_vpclmulqdq_avx10_5: -global gcm_init_vpclmulqdq_avx10 +global gcm_init_vpclmulqdq_avx10_512 ALIGN 32 -gcm_init_vpclmulqdq_avx10: +gcm_init_vpclmulqdq_avx10_512: _CET_ENDBR - lea r8,[((256-32))+rcx] + lea r8,[((256-64))+rcx] @@ -124,7 +124,7 @@ _CET_ENDBR vpternlogd xmm3,xmm0,XMMWORD[$L$gfpoly_and_internal_carrybit],0x78 - vbroadcasti32x4 ymm5,YMMWORD[$L$gfpoly] + vbroadcasti32x4 zmm5,ZMMWORD[$L$gfpoly] @@ -149,1179 +149,49 @@ _CET_ENDBR vinserti128 ymm3,ymm4,xmm3,1 vinserti128 ymm4,ymm4,xmm4,1 + vpclmulqdq ymm0,ymm3,ymm4,0x00 + vpclmulqdq ymm1,ymm3,ymm4,0x01 + vpclmulqdq ymm2,ymm3,ymm4,0x10 + vpxord ymm1,ymm1,ymm2 + vpclmulqdq ymm2,ymm5,ymm0,0x01 + vpshufd ymm0,ymm0,0x4e + vpternlogd ymm1,ymm0,ymm2,0x96 + vpclmulqdq ymm4,ymm3,ymm4,0x11 + vpclmulqdq ymm0,ymm5,ymm1,0x01 + vpshufd ymm1,ymm1,0x4e + vpternlogd ymm4,ymm1,ymm0,0x96 - vmovdqu8 YMMWORD[r8],ymm3 - - - - - - mov eax,7 -$L$precompute_next__func1: - sub r8,32 - vpclmulqdq ymm0,ymm3,ymm4,0x00 - vpclmulqdq ymm1,ymm3,ymm4,0x01 - vpclmulqdq ymm2,ymm3,ymm4,0x10 - vpxord ymm1,ymm1,ymm2 - vpclmulqdq ymm2,ymm5,ymm0,0x01 - vpshufd ymm0,ymm0,0x4e - vpternlogd ymm1,ymm0,ymm2,0x96 - vpclmulqdq ymm3,ymm3,ymm4,0x11 - vpclmulqdq ymm0,ymm5,ymm1,0x01 - vpshufd ymm1,ymm1,0x4e - vpternlogd ymm3,ymm1,ymm0,0x96 - - vmovdqu8 YMMWORD[r8],ymm3 - dec eax - jnz NEAR $L$precompute_next__func1 - - vzeroupper - ret - - - -global gcm_ghash_vpclmulqdq_avx10_256 - -ALIGN 32 -gcm_ghash_vpclmulqdq_avx10_256: - -$L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1: -_CET_ENDBR - sub rsp,136 -$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_2: - movdqa XMMWORD[rsp],xmm6 -$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_3: - movdqa XMMWORD[16+rsp],xmm7 -$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_4: - movdqa XMMWORD[32+rsp],xmm8 -$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_5: - movdqa XMMWORD[48+rsp],xmm9 -$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_6: - movdqa XMMWORD[64+rsp],xmm10 -$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_7: - movdqa XMMWORD[80+rsp],xmm11 -$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_8: - movdqa XMMWORD[96+rsp],xmm12 -$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_9: - movdqa XMMWORD[112+rsp],xmm13 -$L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_10: - -$L$SEH_endprologue_gcm_ghash_vpclmulqdq_avx10_256_11: - - - - - vmovdqu xmm4,XMMWORD[$L$bswap_mask] - vmovdqu xmm10,XMMWORD[$L$gfpoly] - - - vmovdqu xmm5,XMMWORD[rcx] - vpshufb xmm5,xmm5,xmm4 - - - cmp r9,32 - jb NEAR $L$aad_blockbyblock__func1 - - - - vshufi64x2 ymm4,ymm4,ymm4,0 - vshufi64x2 ymm10,ymm10,ymm10,0 - - - vmovdqu8 ymm9,YMMWORD[((256-32))+rdx] - - cmp r9,4*32-1 - jbe NEAR $L$aad_loop_1x__func1 - - - vmovdqu8 ymm6,YMMWORD[((256-128))+rdx] - vmovdqu8 ymm7,YMMWORD[((256-96))+rdx] - vmovdqu8 ymm8,YMMWORD[((256-64))+rdx] - - -$L$aad_loop_4x__func1: - vmovdqu8 ymm0,YMMWORD[r8] - vmovdqu8 ymm1,YMMWORD[32+r8] - vmovdqu8 ymm2,YMMWORD[64+r8] - vmovdqu8 ymm3,YMMWORD[96+r8] - vpshufb ymm0,ymm0,ymm4 - vpxord ymm0,ymm0,ymm5 - vpshufb ymm1,ymm1,ymm4 - vpshufb ymm2,ymm2,ymm4 - vpshufb ymm3,ymm3,ymm4 - vpclmulqdq ymm5,ymm0,ymm6,0x00 - vpclmulqdq ymm11,ymm1,ymm7,0x00 - vpclmulqdq ymm12,ymm2,ymm8,0x00 - vpxord ymm5,ymm5,ymm11 - vpclmulqdq ymm13,ymm3,ymm9,0x00 - vpternlogd ymm5,ymm12,ymm13,0x96 - vpclmulqdq ymm11,ymm0,ymm6,0x01 - vpclmulqdq ymm12,ymm1,ymm7,0x01 - vpclmulqdq ymm13,ymm2,ymm8,0x01 - vpternlogd ymm11,ymm12,ymm13,0x96 - vpclmulqdq ymm12,ymm3,ymm9,0x01 - vpclmulqdq ymm13,ymm0,ymm6,0x10 - vpternlogd ymm11,ymm12,ymm13,0x96 - vpclmulqdq ymm12,ymm1,ymm7,0x10 - vpclmulqdq ymm13,ymm2,ymm8,0x10 - vpternlogd ymm11,ymm12,ymm13,0x96 - vpclmulqdq ymm13,ymm10,ymm5,0x01 - vpclmulqdq ymm12,ymm3,ymm9,0x10 - vpxord ymm11,ymm11,ymm12 - vpshufd ymm5,ymm5,0x4e - vpclmulqdq ymm0,ymm0,ymm6,0x11 - vpclmulqdq ymm1,ymm1,ymm7,0x11 - vpclmulqdq ymm2,ymm2,ymm8,0x11 - vpternlogd ymm11,ymm5,ymm13,0x96 - vpclmulqdq ymm3,ymm3,ymm9,0x11 - vpternlogd ymm0,ymm1,ymm2,0x96 - vpclmulqdq ymm12,ymm10,ymm11,0x01 - vpxord ymm5,ymm0,ymm3 - vpshufd ymm11,ymm11,0x4e - vpternlogd ymm5,ymm11,ymm12,0x96 - vextracti32x4 xmm0,ymm5,1 - vpxord xmm5,xmm5,xmm0 - - sub r8,-4*32 - add r9,-4*32 - cmp r9,4*32-1 - ja NEAR $L$aad_loop_4x__func1 - - - cmp r9,32 - jb NEAR $L$aad_large_done__func1 -$L$aad_loop_1x__func1: - vmovdqu8 ymm0,YMMWORD[r8] - vpshufb ymm0,ymm0,ymm4 - vpxord ymm5,ymm5,ymm0 - vpclmulqdq ymm0,ymm5,ymm9,0x00 - vpclmulqdq ymm1,ymm5,ymm9,0x01 - vpclmulqdq ymm2,ymm5,ymm9,0x10 - vpxord ymm1,ymm1,ymm2 - vpclmulqdq ymm2,ymm10,ymm0,0x01 - vpshufd ymm0,ymm0,0x4e - vpternlogd ymm1,ymm0,ymm2,0x96 - vpclmulqdq ymm5,ymm5,ymm9,0x11 - vpclmulqdq ymm0,ymm10,ymm1,0x01 - vpshufd ymm1,ymm1,0x4e - vpternlogd ymm5,ymm1,ymm0,0x96 - - vextracti32x4 xmm0,ymm5,1 - vpxord xmm5,xmm5,xmm0 - - add r8,32 - sub r9,32 - cmp r9,32 - jae NEAR $L$aad_loop_1x__func1 - -$L$aad_large_done__func1: - - - vzeroupper - - -$L$aad_blockbyblock__func1: - test r9,r9 - jz NEAR $L$aad_done__func1 - vmovdqu xmm9,XMMWORD[((256-16))+rdx] -$L$aad_loop_blockbyblock__func1: - vmovdqu xmm0,XMMWORD[r8] - vpshufb xmm0,xmm0,xmm4 - vpxor xmm5,xmm5,xmm0 - vpclmulqdq xmm0,xmm5,xmm9,0x00 - vpclmulqdq xmm1,xmm5,xmm9,0x01 - vpclmulqdq xmm2,xmm5,xmm9,0x10 - vpxord xmm1,xmm1,xmm2 - vpclmulqdq xmm2,xmm10,xmm0,0x01 - vpshufd xmm0,xmm0,0x4e - vpternlogd xmm1,xmm0,xmm2,0x96 - vpclmulqdq xmm5,xmm5,xmm9,0x11 - vpclmulqdq xmm0,xmm10,xmm1,0x01 - vpshufd xmm1,xmm1,0x4e - vpternlogd xmm5,xmm1,xmm0,0x96 - - add r8,16 - sub r9,16 - jnz NEAR $L$aad_loop_blockbyblock__func1 - -$L$aad_done__func1: - - vpshufb xmm5,xmm5,xmm4 - vmovdqu XMMWORD[rcx],xmm5 - movdqa xmm6,XMMWORD[rsp] - movdqa xmm7,XMMWORD[16+rsp] - movdqa xmm8,XMMWORD[32+rsp] - movdqa xmm9,XMMWORD[48+rsp] - movdqa xmm10,XMMWORD[64+rsp] - movdqa xmm11,XMMWORD[80+rsp] - movdqa xmm12,XMMWORD[96+rsp] - movdqa xmm13,XMMWORD[112+rsp] - add rsp,136 - ret -$L$SEH_end_gcm_ghash_vpclmulqdq_avx10_256_12: - - -global aes_gcm_enc_update_vaes_avx10_256 - -ALIGN 32 -aes_gcm_enc_update_vaes_avx10_256: - -$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1: -_CET_ENDBR - push rsi -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_2: - push rdi -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_3: - push r12 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_4: - - mov rsi,QWORD[64+rsp] - mov rdi,QWORD[72+rsp] - mov r12,QWORD[80+rsp] - sub rsp,160 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_5: - movdqa XMMWORD[rsp],xmm6 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_6: - movdqa XMMWORD[16+rsp],xmm7 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_7: - movdqa XMMWORD[32+rsp],xmm8 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_8: - movdqa XMMWORD[48+rsp],xmm9 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_9: - movdqa XMMWORD[64+rsp],xmm10 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_10: - movdqa XMMWORD[80+rsp],xmm11 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_11: - movdqa XMMWORD[96+rsp],xmm12 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_12: - movdqa XMMWORD[112+rsp],xmm13 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_13: - movdqa XMMWORD[128+rsp],xmm14 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_14: - movdqa XMMWORD[144+rsp],xmm15 -$L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_15: - -$L$SEH_endprologue_aes_gcm_enc_update_vaes_avx10_256_16: -%ifdef BORINGSSL_DISPATCH_TEST -EXTERN BORINGSSL_function_hit - mov BYTE[((BORINGSSL_function_hit+6))],1 -%endif - - vbroadcasti32x4 ymm8,YMMWORD[$L$bswap_mask] - vbroadcasti32x4 ymm31,YMMWORD[$L$gfpoly] - - - - vmovdqu xmm10,XMMWORD[r12] - vpshufb xmm10,xmm10,xmm8 - vbroadcasti32x4 ymm12,YMMWORD[rsi] - vpshufb ymm12,ymm12,ymm8 - - - - mov r10d,DWORD[240+r9] - lea r10d,[((-20))+r10*4] - - - - - lea r11,[96+r10*4+r9] - vbroadcasti32x4 ymm13,YMMWORD[r9] - vbroadcasti32x4 ymm14,YMMWORD[r11] - - - vpaddd ymm12,ymm12,YMMWORD[$L$ctr_pattern] - - - vbroadcasti32x4 ymm11,YMMWORD[$L$inc_2blocks] - - - - cmp r8,4*32-1 - jbe NEAR $L$crypt_loop_4x_done__func1 - - - vmovdqu8 ymm27,YMMWORD[((256-128))+rdi] - vmovdqu8 ymm28,YMMWORD[((256-96))+rdi] - vmovdqu8 ymm29,YMMWORD[((256-64))+rdi] - vmovdqu8 ymm30,YMMWORD[((256-32))+rdi] - - - - - vpshufb ymm0,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - vpshufb ymm1,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - vpshufb ymm2,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - vpshufb ymm3,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - - - vpxord ymm0,ymm0,ymm13 - vpxord ymm1,ymm1,ymm13 - vpxord ymm2,ymm2,ymm13 - vpxord ymm3,ymm3,ymm13 - - lea rax,[16+r9] -$L$vaesenc_loop_first_4_vecs__func1: - vbroadcasti32x4 ymm9,YMMWORD[rax] - vaesenc ymm0,ymm0,ymm9 - vaesenc ymm1,ymm1,ymm9 - vaesenc ymm2,ymm2,ymm9 - vaesenc ymm3,ymm3,ymm9 - - add rax,16 - cmp r11,rax - jne NEAR $L$vaesenc_loop_first_4_vecs__func1 - - - - vpxord ymm4,ymm14,YMMWORD[rcx] - vpxord ymm5,ymm14,YMMWORD[32+rcx] - vpxord ymm6,ymm14,YMMWORD[64+rcx] - vpxord ymm7,ymm14,YMMWORD[96+rcx] - - - - vaesenclast ymm4,ymm0,ymm4 - vaesenclast ymm5,ymm1,ymm5 - vaesenclast ymm6,ymm2,ymm6 - vaesenclast ymm7,ymm3,ymm7 - - - vmovdqu8 YMMWORD[rdx],ymm4 - vmovdqu8 YMMWORD[32+rdx],ymm5 - vmovdqu8 YMMWORD[64+rdx],ymm6 - vmovdqu8 YMMWORD[96+rdx],ymm7 - - sub rcx,-4*32 - sub rdx,-4*32 - add r8,-4*32 - cmp r8,4*32-1 - jbe NEAR $L$ghash_last_ciphertext_4x__func1 - vbroadcasti32x4 ymm15,YMMWORD[((-144))+r11] - vbroadcasti32x4 ymm16,YMMWORD[((-128))+r11] - vbroadcasti32x4 ymm17,YMMWORD[((-112))+r11] - vbroadcasti32x4 ymm18,YMMWORD[((-96))+r11] - vbroadcasti32x4 ymm19,YMMWORD[((-80))+r11] - vbroadcasti32x4 ymm20,YMMWORD[((-64))+r11] - vbroadcasti32x4 ymm21,YMMWORD[((-48))+r11] - vbroadcasti32x4 ymm22,YMMWORD[((-32))+r11] - vbroadcasti32x4 ymm23,YMMWORD[((-16))+r11] -$L$crypt_loop_4x__func1: - - - - vpshufb ymm0,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - vpshufb ymm1,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - vpshufb ymm2,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - vpshufb ymm3,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - - - vpxord ymm0,ymm0,ymm13 - vpxord ymm1,ymm1,ymm13 - vpxord ymm2,ymm2,ymm13 - vpxord ymm3,ymm3,ymm13 - - cmp r10d,24 - jl NEAR $L$aes128__func1 - je NEAR $L$aes192__func1 - - vbroadcasti32x4 ymm9,YMMWORD[((-208))+r11] - vaesenc ymm0,ymm0,ymm9 - vaesenc ymm1,ymm1,ymm9 - vaesenc ymm2,ymm2,ymm9 - vaesenc ymm3,ymm3,ymm9 - - vbroadcasti32x4 ymm9,YMMWORD[((-192))+r11] - vaesenc ymm0,ymm0,ymm9 - vaesenc ymm1,ymm1,ymm9 - vaesenc ymm2,ymm2,ymm9 - vaesenc ymm3,ymm3,ymm9 - -$L$aes192__func1: - vbroadcasti32x4 ymm9,YMMWORD[((-176))+r11] - vaesenc ymm0,ymm0,ymm9 - vaesenc ymm1,ymm1,ymm9 - vaesenc ymm2,ymm2,ymm9 - vaesenc ymm3,ymm3,ymm9 - - vbroadcasti32x4 ymm9,YMMWORD[((-160))+r11] - vaesenc ymm0,ymm0,ymm9 - vaesenc ymm1,ymm1,ymm9 - vaesenc ymm2,ymm2,ymm9 - vaesenc ymm3,ymm3,ymm9 - -$L$aes128__func1: - vpshufb ymm4,ymm4,ymm8 - vpxord ymm4,ymm4,ymm10 - vpshufb ymm5,ymm5,ymm8 - vpshufb ymm6,ymm6,ymm8 - - vaesenc ymm0,ymm0,ymm15 - vaesenc ymm1,ymm1,ymm15 - vaesenc ymm2,ymm2,ymm15 - vaesenc ymm3,ymm3,ymm15 - - vpshufb ymm7,ymm7,ymm8 - vpclmulqdq ymm10,ymm4,ymm27,0x00 - vpclmulqdq ymm24,ymm5,ymm28,0x00 - vpclmulqdq ymm25,ymm6,ymm29,0x00 - - vaesenc ymm0,ymm0,ymm16 - vaesenc ymm1,ymm1,ymm16 - vaesenc ymm2,ymm2,ymm16 - vaesenc ymm3,ymm3,ymm16 - - vpxord ymm10,ymm10,ymm24 - vpclmulqdq ymm26,ymm7,ymm30,0x00 - vpternlogd ymm10,ymm25,ymm26,0x96 - vpclmulqdq ymm24,ymm4,ymm27,0x01 - - vaesenc ymm0,ymm0,ymm17 - vaesenc ymm1,ymm1,ymm17 - vaesenc ymm2,ymm2,ymm17 - vaesenc ymm3,ymm3,ymm17 - - vpclmulqdq ymm25,ymm5,ymm28,0x01 - vpclmulqdq ymm26,ymm6,ymm29,0x01 - vpternlogd ymm24,ymm25,ymm26,0x96 - vpclmulqdq ymm25,ymm7,ymm30,0x01 - - vaesenc ymm0,ymm0,ymm18 - vaesenc ymm1,ymm1,ymm18 - vaesenc ymm2,ymm2,ymm18 - vaesenc ymm3,ymm3,ymm18 - - vpclmulqdq ymm26,ymm4,ymm27,0x10 - vpternlogd ymm24,ymm25,ymm26,0x96 - vpclmulqdq ymm25,ymm5,ymm28,0x10 - vpclmulqdq ymm26,ymm6,ymm29,0x10 - - vaesenc ymm0,ymm0,ymm19 - vaesenc ymm1,ymm1,ymm19 - vaesenc ymm2,ymm2,ymm19 - vaesenc ymm3,ymm3,ymm19 - - vpternlogd ymm24,ymm25,ymm26,0x96 - vpclmulqdq ymm26,ymm31,ymm10,0x01 - vpclmulqdq ymm25,ymm7,ymm30,0x10 - vpxord ymm24,ymm24,ymm25 - - vaesenc ymm0,ymm0,ymm20 - vaesenc ymm1,ymm1,ymm20 - vaesenc ymm2,ymm2,ymm20 - vaesenc ymm3,ymm3,ymm20 - - vpshufd ymm10,ymm10,0x4e - vpclmulqdq ymm4,ymm4,ymm27,0x11 - vpclmulqdq ymm5,ymm5,ymm28,0x11 - vpclmulqdq ymm6,ymm6,ymm29,0x11 - - vaesenc ymm0,ymm0,ymm21 - vaesenc ymm1,ymm1,ymm21 - vaesenc ymm2,ymm2,ymm21 - vaesenc ymm3,ymm3,ymm21 - - vpternlogd ymm24,ymm10,ymm26,0x96 - vpclmulqdq ymm7,ymm7,ymm30,0x11 - vpternlogd ymm4,ymm5,ymm6,0x96 - vpclmulqdq ymm25,ymm31,ymm24,0x01 - - vaesenc ymm0,ymm0,ymm22 - vaesenc ymm1,ymm1,ymm22 - vaesenc ymm2,ymm2,ymm22 - vaesenc ymm3,ymm3,ymm22 - - vpxord ymm10,ymm4,ymm7 - vpshufd ymm24,ymm24,0x4e - vpternlogd ymm10,ymm24,ymm25,0x96 - - vaesenc ymm0,ymm0,ymm23 - vaesenc ymm1,ymm1,ymm23 - vaesenc ymm2,ymm2,ymm23 - vaesenc ymm3,ymm3,ymm23 - - vextracti32x4 xmm4,ymm10,1 - vpxord xmm10,xmm10,xmm4 - - - - - vpxord ymm4,ymm14,YMMWORD[rcx] - vpxord ymm5,ymm14,YMMWORD[32+rcx] - vpxord ymm6,ymm14,YMMWORD[64+rcx] - vpxord ymm7,ymm14,YMMWORD[96+rcx] - - - - vaesenclast ymm4,ymm0,ymm4 - vaesenclast ymm5,ymm1,ymm5 - vaesenclast ymm6,ymm2,ymm6 - vaesenclast ymm7,ymm3,ymm7 - - - vmovdqu8 YMMWORD[rdx],ymm4 - vmovdqu8 YMMWORD[32+rdx],ymm5 - vmovdqu8 YMMWORD[64+rdx],ymm6 - vmovdqu8 YMMWORD[96+rdx],ymm7 - - sub rcx,-4*32 - sub rdx,-4*32 - add r8,-4*32 - cmp r8,4*32-1 - ja NEAR $L$crypt_loop_4x__func1 -$L$ghash_last_ciphertext_4x__func1: - vpshufb ymm4,ymm4,ymm8 - vpxord ymm4,ymm4,ymm10 - vpshufb ymm5,ymm5,ymm8 - vpshufb ymm6,ymm6,ymm8 - vpshufb ymm7,ymm7,ymm8 - vpclmulqdq ymm10,ymm4,ymm27,0x00 - vpclmulqdq ymm24,ymm5,ymm28,0x00 - vpclmulqdq ymm25,ymm6,ymm29,0x00 - vpxord ymm10,ymm10,ymm24 - vpclmulqdq ymm26,ymm7,ymm30,0x00 - vpternlogd ymm10,ymm25,ymm26,0x96 - vpclmulqdq ymm24,ymm4,ymm27,0x01 - vpclmulqdq ymm25,ymm5,ymm28,0x01 - vpclmulqdq ymm26,ymm6,ymm29,0x01 - vpternlogd ymm24,ymm25,ymm26,0x96 - vpclmulqdq ymm25,ymm7,ymm30,0x01 - vpclmulqdq ymm26,ymm4,ymm27,0x10 - vpternlogd ymm24,ymm25,ymm26,0x96 - vpclmulqdq ymm25,ymm5,ymm28,0x10 - vpclmulqdq ymm26,ymm6,ymm29,0x10 - vpternlogd ymm24,ymm25,ymm26,0x96 - vpclmulqdq ymm26,ymm31,ymm10,0x01 - vpclmulqdq ymm25,ymm7,ymm30,0x10 - vpxord ymm24,ymm24,ymm25 - vpshufd ymm10,ymm10,0x4e - vpclmulqdq ymm4,ymm4,ymm27,0x11 - vpclmulqdq ymm5,ymm5,ymm28,0x11 - vpclmulqdq ymm6,ymm6,ymm29,0x11 - vpternlogd ymm24,ymm10,ymm26,0x96 - vpclmulqdq ymm7,ymm7,ymm30,0x11 - vpternlogd ymm4,ymm5,ymm6,0x96 - vpclmulqdq ymm25,ymm31,ymm24,0x01 - vpxord ymm10,ymm4,ymm7 - vpshufd ymm24,ymm24,0x4e - vpternlogd ymm10,ymm24,ymm25,0x96 - vextracti32x4 xmm4,ymm10,1 - vpxord xmm10,xmm10,xmm4 - -$L$crypt_loop_4x_done__func1: - - test r8,r8 - jz NEAR $L$done__func1 - - - - - - - - - - - - - - - - - - - - - mov rax,r8 - neg rax - and rax,-16 - lea rsi,[256+rax*1+rdi] - vpxor xmm4,xmm4,xmm4 - vpxor xmm5,xmm5,xmm5 - vpxor xmm6,xmm6,xmm6 - - cmp r8,32 - jb NEAR $L$partial_vec__func1 - -$L$crypt_loop_1x__func1: - - - - vpshufb ymm0,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - vpxord ymm0,ymm0,ymm13 - lea rax,[16+r9] -$L$vaesenc_loop_tail_full_vec__func1: - vbroadcasti32x4 ymm9,YMMWORD[rax] - vaesenc ymm0,ymm0,ymm9 - add rax,16 - cmp r11,rax - jne NEAR $L$vaesenc_loop_tail_full_vec__func1 - vaesenclast ymm0,ymm0,ymm14 - - - vmovdqu8 ymm1,YMMWORD[rcx] - vpxord ymm0,ymm0,ymm1 - vmovdqu8 YMMWORD[rdx],ymm0 - - - vmovdqu8 ymm30,YMMWORD[rsi] - vpshufb ymm0,ymm0,ymm8 - vpxord ymm0,ymm0,ymm10 - vpclmulqdq ymm7,ymm0,ymm30,0x00 - vpclmulqdq ymm1,ymm0,ymm30,0x01 - vpclmulqdq ymm2,ymm0,ymm30,0x10 - vpclmulqdq ymm3,ymm0,ymm30,0x11 - vpxord ymm4,ymm4,ymm7 - vpternlogd ymm5,ymm1,ymm2,0x96 - vpxord ymm6,ymm6,ymm3 - - vpxor xmm10,xmm10,xmm10 - - add rsi,32 - add rcx,32 - add rdx,32 - sub r8,32 - cmp r8,32 - jae NEAR $L$crypt_loop_1x__func1 - - test r8,r8 - jz NEAR $L$reduce__func1 - -$L$partial_vec__func1: - - - - - mov rax,-1 - bzhi rax,rax,r8 - kmovd k1,eax - add r8,15 - and r8,-16 - mov rax,-1 - bzhi rax,rax,r8 - kmovd k2,eax - - - - vpshufb ymm0,ymm12,ymm8 - vpxord ymm0,ymm0,ymm13 - lea rax,[16+r9] -$L$vaesenc_loop_tail_partialvec__func1: - vbroadcasti32x4 ymm9,YMMWORD[rax] - vaesenc ymm0,ymm0,ymm9 - add rax,16 - cmp r11,rax - jne NEAR $L$vaesenc_loop_tail_partialvec__func1 - vaesenclast ymm0,ymm0,ymm14 - - - vmovdqu8 ymm1{k1}{z},[rcx] - vpxord ymm0,ymm0,ymm1 - vmovdqu8 YMMWORD[rdx]{k1},ymm0 - - - - - - - - - - - - - - vmovdqu8 ymm30{k2}{z},[rsi] - vmovdqu8 ymm1{k1}{z},ymm0 - vpshufb ymm0,ymm1,ymm8 - vpxord ymm0,ymm0,ymm10 - vpclmulqdq ymm7,ymm0,ymm30,0x00 - vpclmulqdq ymm1,ymm0,ymm30,0x01 - vpclmulqdq ymm2,ymm0,ymm30,0x10 - vpclmulqdq ymm3,ymm0,ymm30,0x11 - vpxord ymm4,ymm4,ymm7 - vpternlogd ymm5,ymm1,ymm2,0x96 - vpxord ymm6,ymm6,ymm3 - - -$L$reduce__func1: - - vpclmulqdq ymm0,ymm31,ymm4,0x01 - vpshufd ymm4,ymm4,0x4e - vpternlogd ymm5,ymm4,ymm0,0x96 - vpclmulqdq ymm0,ymm31,ymm5,0x01 - vpshufd ymm5,ymm5,0x4e - vpternlogd ymm6,ymm5,ymm0,0x96 - - vextracti32x4 xmm0,ymm6,1 - vpxord xmm10,xmm6,xmm0 - - -$L$done__func1: - - vpshufb xmm10,xmm10,xmm8 - vmovdqu XMMWORD[r12],xmm10 - - vzeroupper - movdqa xmm6,XMMWORD[rsp] - movdqa xmm7,XMMWORD[16+rsp] - movdqa xmm8,XMMWORD[32+rsp] - movdqa xmm9,XMMWORD[48+rsp] - movdqa xmm10,XMMWORD[64+rsp] - movdqa xmm11,XMMWORD[80+rsp] - movdqa xmm12,XMMWORD[96+rsp] - movdqa xmm13,XMMWORD[112+rsp] - movdqa xmm14,XMMWORD[128+rsp] - movdqa xmm15,XMMWORD[144+rsp] - add rsp,160 - pop r12 - pop rdi - pop rsi - ret -$L$SEH_end_aes_gcm_enc_update_vaes_avx10_256_17: - - -global aes_gcm_dec_update_vaes_avx10_256 - -ALIGN 32 -aes_gcm_dec_update_vaes_avx10_256: - -$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1: -_CET_ENDBR - push rsi -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_2: - push rdi -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_3: - push r12 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_4: - - mov rsi,QWORD[64+rsp] - mov rdi,QWORD[72+rsp] - mov r12,QWORD[80+rsp] - sub rsp,160 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_5: - movdqa XMMWORD[rsp],xmm6 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_6: - movdqa XMMWORD[16+rsp],xmm7 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_7: - movdqa XMMWORD[32+rsp],xmm8 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_8: - movdqa XMMWORD[48+rsp],xmm9 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_9: - movdqa XMMWORD[64+rsp],xmm10 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_10: - movdqa XMMWORD[80+rsp],xmm11 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_11: - movdqa XMMWORD[96+rsp],xmm12 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_12: - movdqa XMMWORD[112+rsp],xmm13 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_13: - movdqa XMMWORD[128+rsp],xmm14 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_14: - movdqa XMMWORD[144+rsp],xmm15 -$L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_15: - -$L$SEH_endprologue_aes_gcm_dec_update_vaes_avx10_256_16: - - vbroadcasti32x4 ymm8,YMMWORD[$L$bswap_mask] - vbroadcasti32x4 ymm31,YMMWORD[$L$gfpoly] - - - - vmovdqu xmm10,XMMWORD[r12] - vpshufb xmm10,xmm10,xmm8 - vbroadcasti32x4 ymm12,YMMWORD[rsi] - vpshufb ymm12,ymm12,ymm8 - - - - mov r10d,DWORD[240+r9] - lea r10d,[((-20))+r10*4] - - - - - lea r11,[96+r10*4+r9] - vbroadcasti32x4 ymm13,YMMWORD[r9] - vbroadcasti32x4 ymm14,YMMWORD[r11] - - - vpaddd ymm12,ymm12,YMMWORD[$L$ctr_pattern] - - - vbroadcasti32x4 ymm11,YMMWORD[$L$inc_2blocks] - - - - cmp r8,4*32-1 - jbe NEAR $L$crypt_loop_4x_done__func2 - - - vmovdqu8 ymm27,YMMWORD[((256-128))+rdi] - vmovdqu8 ymm28,YMMWORD[((256-96))+rdi] - vmovdqu8 ymm29,YMMWORD[((256-64))+rdi] - vmovdqu8 ymm30,YMMWORD[((256-32))+rdi] - vbroadcasti32x4 ymm15,YMMWORD[((-144))+r11] - vbroadcasti32x4 ymm16,YMMWORD[((-128))+r11] - vbroadcasti32x4 ymm17,YMMWORD[((-112))+r11] - vbroadcasti32x4 ymm18,YMMWORD[((-96))+r11] - vbroadcasti32x4 ymm19,YMMWORD[((-80))+r11] - vbroadcasti32x4 ymm20,YMMWORD[((-64))+r11] - vbroadcasti32x4 ymm21,YMMWORD[((-48))+r11] - vbroadcasti32x4 ymm22,YMMWORD[((-32))+r11] - vbroadcasti32x4 ymm23,YMMWORD[((-16))+r11] -$L$crypt_loop_4x__func2: - vmovdqu8 ymm4,YMMWORD[rcx] - vmovdqu8 ymm5,YMMWORD[32+rcx] - vmovdqu8 ymm6,YMMWORD[64+rcx] - vmovdqu8 ymm7,YMMWORD[96+rcx] - - - - vpshufb ymm0,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - vpshufb ymm1,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - vpshufb ymm2,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - vpshufb ymm3,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - - - vpxord ymm0,ymm0,ymm13 - vpxord ymm1,ymm1,ymm13 - vpxord ymm2,ymm2,ymm13 - vpxord ymm3,ymm3,ymm13 - - cmp r10d,24 - jl NEAR $L$aes128__func2 - je NEAR $L$aes192__func2 - - vbroadcasti32x4 ymm9,YMMWORD[((-208))+r11] - vaesenc ymm0,ymm0,ymm9 - vaesenc ymm1,ymm1,ymm9 - vaesenc ymm2,ymm2,ymm9 - vaesenc ymm3,ymm3,ymm9 - - vbroadcasti32x4 ymm9,YMMWORD[((-192))+r11] - vaesenc ymm0,ymm0,ymm9 - vaesenc ymm1,ymm1,ymm9 - vaesenc ymm2,ymm2,ymm9 - vaesenc ymm3,ymm3,ymm9 - -$L$aes192__func2: - vbroadcasti32x4 ymm9,YMMWORD[((-176))+r11] - vaesenc ymm0,ymm0,ymm9 - vaesenc ymm1,ymm1,ymm9 - vaesenc ymm2,ymm2,ymm9 - vaesenc ymm3,ymm3,ymm9 - - vbroadcasti32x4 ymm9,YMMWORD[((-160))+r11] - vaesenc ymm0,ymm0,ymm9 - vaesenc ymm1,ymm1,ymm9 - vaesenc ymm2,ymm2,ymm9 - vaesenc ymm3,ymm3,ymm9 - -$L$aes128__func2: - vpshufb ymm4,ymm4,ymm8 - vpxord ymm4,ymm4,ymm10 - vpshufb ymm5,ymm5,ymm8 - vpshufb ymm6,ymm6,ymm8 - - vaesenc ymm0,ymm0,ymm15 - vaesenc ymm1,ymm1,ymm15 - vaesenc ymm2,ymm2,ymm15 - vaesenc ymm3,ymm3,ymm15 - - vpshufb ymm7,ymm7,ymm8 - vpclmulqdq ymm10,ymm4,ymm27,0x00 - vpclmulqdq ymm24,ymm5,ymm28,0x00 - vpclmulqdq ymm25,ymm6,ymm29,0x00 - - vaesenc ymm0,ymm0,ymm16 - vaesenc ymm1,ymm1,ymm16 - vaesenc ymm2,ymm2,ymm16 - vaesenc ymm3,ymm3,ymm16 - - vpxord ymm10,ymm10,ymm24 - vpclmulqdq ymm26,ymm7,ymm30,0x00 - vpternlogd ymm10,ymm25,ymm26,0x96 - vpclmulqdq ymm24,ymm4,ymm27,0x01 - - vaesenc ymm0,ymm0,ymm17 - vaesenc ymm1,ymm1,ymm17 - vaesenc ymm2,ymm2,ymm17 - vaesenc ymm3,ymm3,ymm17 - - vpclmulqdq ymm25,ymm5,ymm28,0x01 - vpclmulqdq ymm26,ymm6,ymm29,0x01 - vpternlogd ymm24,ymm25,ymm26,0x96 - vpclmulqdq ymm25,ymm7,ymm30,0x01 - - vaesenc ymm0,ymm0,ymm18 - vaesenc ymm1,ymm1,ymm18 - vaesenc ymm2,ymm2,ymm18 - vaesenc ymm3,ymm3,ymm18 - - vpclmulqdq ymm26,ymm4,ymm27,0x10 - vpternlogd ymm24,ymm25,ymm26,0x96 - vpclmulqdq ymm25,ymm5,ymm28,0x10 - vpclmulqdq ymm26,ymm6,ymm29,0x10 - - vaesenc ymm0,ymm0,ymm19 - vaesenc ymm1,ymm1,ymm19 - vaesenc ymm2,ymm2,ymm19 - vaesenc ymm3,ymm3,ymm19 - - vpternlogd ymm24,ymm25,ymm26,0x96 - vpclmulqdq ymm26,ymm31,ymm10,0x01 - vpclmulqdq ymm25,ymm7,ymm30,0x10 - vpxord ymm24,ymm24,ymm25 - - vaesenc ymm0,ymm0,ymm20 - vaesenc ymm1,ymm1,ymm20 - vaesenc ymm2,ymm2,ymm20 - vaesenc ymm3,ymm3,ymm20 - - vpshufd ymm10,ymm10,0x4e - vpclmulqdq ymm4,ymm4,ymm27,0x11 - vpclmulqdq ymm5,ymm5,ymm28,0x11 - vpclmulqdq ymm6,ymm6,ymm29,0x11 - - vaesenc ymm0,ymm0,ymm21 - vaesenc ymm1,ymm1,ymm21 - vaesenc ymm2,ymm2,ymm21 - vaesenc ymm3,ymm3,ymm21 - - vpternlogd ymm24,ymm10,ymm26,0x96 - vpclmulqdq ymm7,ymm7,ymm30,0x11 - vpternlogd ymm4,ymm5,ymm6,0x96 - vpclmulqdq ymm25,ymm31,ymm24,0x01 - - vaesenc ymm0,ymm0,ymm22 - vaesenc ymm1,ymm1,ymm22 - vaesenc ymm2,ymm2,ymm22 - vaesenc ymm3,ymm3,ymm22 - - vpxord ymm10,ymm4,ymm7 - vpshufd ymm24,ymm24,0x4e - vpternlogd ymm10,ymm24,ymm25,0x96 - - vaesenc ymm0,ymm0,ymm23 - vaesenc ymm1,ymm1,ymm23 - vaesenc ymm2,ymm2,ymm23 - vaesenc ymm3,ymm3,ymm23 - - vextracti32x4 xmm4,ymm10,1 - vpxord xmm10,xmm10,xmm4 - - - - - vpxord ymm4,ymm14,YMMWORD[rcx] - vpxord ymm5,ymm14,YMMWORD[32+rcx] - vpxord ymm6,ymm14,YMMWORD[64+rcx] - vpxord ymm7,ymm14,YMMWORD[96+rcx] - - - - vaesenclast ymm4,ymm0,ymm4 - vaesenclast ymm5,ymm1,ymm5 - vaesenclast ymm6,ymm2,ymm6 - vaesenclast ymm7,ymm3,ymm7 - - - vmovdqu8 YMMWORD[rdx],ymm4 - vmovdqu8 YMMWORD[32+rdx],ymm5 - vmovdqu8 YMMWORD[64+rdx],ymm6 - vmovdqu8 YMMWORD[96+rdx],ymm7 - - sub rcx,-4*32 - sub rdx,-4*32 - add r8,-4*32 - cmp r8,4*32-1 - ja NEAR $L$crypt_loop_4x__func2 -$L$crypt_loop_4x_done__func2: - - test r8,r8 - jz NEAR $L$done__func2 - - - - - - - - - - - - - - - - - - - - - mov rax,r8 - neg rax - and rax,-16 - lea rsi,[256+rax*1+rdi] - vpxor xmm4,xmm4,xmm4 - vpxor xmm5,xmm5,xmm5 - vpxor xmm6,xmm6,xmm6 - - cmp r8,32 - jb NEAR $L$partial_vec__func2 - -$L$crypt_loop_1x__func2: - - - - vpshufb ymm0,ymm12,ymm8 - vpaddd ymm12,ymm12,ymm11 - vpxord ymm0,ymm0,ymm13 - lea rax,[16+r9] -$L$vaesenc_loop_tail_full_vec__func2: - vbroadcasti32x4 ymm9,YMMWORD[rax] - vaesenc ymm0,ymm0,ymm9 - add rax,16 - cmp r11,rax - jne NEAR $L$vaesenc_loop_tail_full_vec__func2 - vaesenclast ymm0,ymm0,ymm14 - - - vmovdqu8 ymm1,YMMWORD[rcx] - vpxord ymm0,ymm0,ymm1 - vmovdqu8 YMMWORD[rdx],ymm0 - - - vmovdqu8 ymm30,YMMWORD[rsi] - vpshufb ymm0,ymm1,ymm8 - vpxord ymm0,ymm0,ymm10 - vpclmulqdq ymm7,ymm0,ymm30,0x00 - vpclmulqdq ymm1,ymm0,ymm30,0x01 - vpclmulqdq ymm2,ymm0,ymm30,0x10 - vpclmulqdq ymm3,ymm0,ymm30,0x11 - vpxord ymm4,ymm4,ymm7 - vpternlogd ymm5,ymm1,ymm2,0x96 - vpxord ymm6,ymm6,ymm3 - - vpxor xmm10,xmm10,xmm10 - - add rsi,32 - add rcx,32 - add rdx,32 - sub r8,32 - cmp r8,32 - jae NEAR $L$crypt_loop_1x__func2 - - test r8,r8 - jz NEAR $L$reduce__func2 - -$L$partial_vec__func2: - - - - - mov rax,-1 - bzhi rax,rax,r8 - kmovd k1,eax - add r8,15 - and r8,-16 - mov rax,-1 - bzhi rax,rax,r8 - kmovd k2,eax - - - - vpshufb ymm0,ymm12,ymm8 - vpxord ymm0,ymm0,ymm13 - lea rax,[16+r9] -$L$vaesenc_loop_tail_partialvec__func2: - vbroadcasti32x4 ymm9,YMMWORD[rax] - vaesenc ymm0,ymm0,ymm9 - add rax,16 - cmp r11,rax - jne NEAR $L$vaesenc_loop_tail_partialvec__func2 - vaesenclast ymm0,ymm0,ymm14 - - - vmovdqu8 ymm1{k1}{z},[rcx] - vpxord ymm0,ymm0,ymm1 - vmovdqu8 YMMWORD[rdx]{k1},ymm0 - - - - - - - - - - - - - - vmovdqu8 ymm30{k2}{z},[rsi] - - vpshufb ymm0,ymm1,ymm8 - vpxord ymm0,ymm0,ymm10 - vpclmulqdq ymm7,ymm0,ymm30,0x00 - vpclmulqdq ymm1,ymm0,ymm30,0x01 - vpclmulqdq ymm2,ymm0,ymm30,0x10 - vpclmulqdq ymm3,ymm0,ymm30,0x11 - vpxord ymm4,ymm4,ymm7 - vpternlogd ymm5,ymm1,ymm2,0x96 - vpxord ymm6,ymm6,ymm3 + vinserti64x4 zmm3,zmm4,ymm3,1 + vshufi64x2 zmm4,zmm4,zmm4,0 + vmovdqu8 ZMMWORD[r8],zmm3 -$L$reduce__func2: - vpclmulqdq ymm0,ymm31,ymm4,0x01 - vpshufd ymm4,ymm4,0x4e - vpternlogd ymm5,ymm4,ymm0,0x96 - vpclmulqdq ymm0,ymm31,ymm5,0x01 - vpshufd ymm5,ymm5,0x4e - vpternlogd ymm6,ymm5,ymm0,0x96 - vextracti32x4 xmm0,ymm6,1 - vpxord xmm10,xmm6,xmm0 -$L$done__func2: + mov eax,3 +$L$precompute_next__func1: + sub r8,64 + vpclmulqdq zmm0,zmm3,zmm4,0x00 + vpclmulqdq zmm1,zmm3,zmm4,0x01 + vpclmulqdq zmm2,zmm3,zmm4,0x10 + vpxord zmm1,zmm1,zmm2 + vpclmulqdq zmm2,zmm5,zmm0,0x01 + vpshufd zmm0,zmm0,0x4e + vpternlogd zmm1,zmm0,zmm2,0x96 + vpclmulqdq zmm3,zmm3,zmm4,0x11 + vpclmulqdq zmm0,zmm5,zmm1,0x01 + vpshufd zmm1,zmm1,0x4e + vpternlogd zmm3,zmm1,zmm0,0x96 - vpshufb xmm10,xmm10,xmm8 - vmovdqu XMMWORD[r12],xmm10 + vmovdqu8 ZMMWORD[r8],zmm3 + dec eax + jnz NEAR $L$precompute_next__func1 vzeroupper - movdqa xmm6,XMMWORD[rsp] - movdqa xmm7,XMMWORD[16+rsp] - movdqa xmm8,XMMWORD[32+rsp] - movdqa xmm9,XMMWORD[48+rsp] - movdqa xmm10,XMMWORD[64+rsp] - movdqa xmm11,XMMWORD[80+rsp] - movdqa xmm12,XMMWORD[96+rsp] - movdqa xmm13,XMMWORD[112+rsp] - movdqa xmm14,XMMWORD[128+rsp] - movdqa xmm15,XMMWORD[144+rsp] - add rsp,160 - pop r12 - pop rdi - pop rsi ret -$L$SEH_end_aes_gcm_dec_update_vaes_avx10_256_17: + global gcm_ghash_vpclmulqdq_avx10_512 @@ -1364,7 +234,7 @@ $L$SEH_endprologue_gcm_ghash_vpclmulqdq_avx10_512_11: cmp r9,64 - jb NEAR $L$aad_blockbyblock__func2 + jb NEAR $L$aad_blockbyblock__func1 @@ -1375,7 +245,7 @@ $L$SEH_endprologue_gcm_ghash_vpclmulqdq_avx10_512_11: vmovdqu8 zmm9,ZMMWORD[((256-64))+rdx] cmp r9,4*64-1 - jbe NEAR $L$aad_loop_1x__func2 + jbe NEAR $L$aad_loop_1x__func1 vmovdqu8 zmm6,ZMMWORD[((256-256))+rdx] @@ -1383,7 +253,7 @@ $L$SEH_endprologue_gcm_ghash_vpclmulqdq_avx10_512_11: vmovdqu8 zmm8,ZMMWORD[((256-128))+rdx] -$L$aad_loop_4x__func2: +$L$aad_loop_4x__func1: vmovdqu8 zmm0,ZMMWORD[r8] vmovdqu8 zmm1,ZMMWORD[64+r8] vmovdqu8 zmm2,ZMMWORD[128+r8] @@ -1432,12 +302,12 @@ $L$aad_loop_4x__func2: sub r8,-4*64 add r9,-4*64 cmp r9,4*64-1 - ja NEAR $L$aad_loop_4x__func2 + ja NEAR $L$aad_loop_4x__func1 cmp r9,64 - jb NEAR $L$aad_large_done__func2 -$L$aad_loop_1x__func2: + jb NEAR $L$aad_large_done__func1 +$L$aad_loop_1x__func1: vmovdqu8 zmm0,ZMMWORD[r8] vpshufb zmm0,zmm0,zmm4 vpxord zmm5,zmm5,zmm0 @@ -1462,19 +332,19 @@ $L$aad_loop_1x__func2: add r8,64 sub r9,64 cmp r9,64 - jae NEAR $L$aad_loop_1x__func2 + jae NEAR $L$aad_loop_1x__func1 -$L$aad_large_done__func2: +$L$aad_large_done__func1: vzeroupper -$L$aad_blockbyblock__func2: +$L$aad_blockbyblock__func1: test r9,r9 - jz NEAR $L$aad_done__func2 + jz NEAR $L$aad_done__func1 vmovdqu xmm9,XMMWORD[((256-16))+rdx] -$L$aad_loop_blockbyblock__func2: +$L$aad_loop_blockbyblock__func1: vmovdqu xmm0,XMMWORD[r8] vpshufb xmm0,xmm0,xmm4 vpxor xmm5,xmm5,xmm0 @@ -1492,9 +362,9 @@ $L$aad_loop_blockbyblock__func2: add r8,16 sub r9,16 - jnz NEAR $L$aad_loop_blockbyblock__func2 + jnz NEAR $L$aad_loop_blockbyblock__func1 -$L$aad_done__func2: +$L$aad_done__func1: vpshufb xmm5,xmm5,xmm4 vmovdqu XMMWORD[rcx],xmm5 @@ -1588,7 +458,7 @@ EXTERN BORINGSSL_function_hit cmp r8,4*64-1 - jbe NEAR $L$crypt_loop_4x_done__func3 + jbe NEAR $L$crypt_loop_4x_done__func1 vmovdqu8 zmm27,ZMMWORD[((256-256))+rdi] @@ -1615,7 +485,7 @@ EXTERN BORINGSSL_function_hit vpxord zmm3,zmm3,zmm13 lea rax,[16+r9] -$L$vaesenc_loop_first_4_vecs__func3: +$L$vaesenc_loop_first_4_vecs__func1: vbroadcasti32x4 zmm9,ZMMWORD[rax] vaesenc zmm0,zmm0,zmm9 vaesenc zmm1,zmm1,zmm9 @@ -1624,7 +494,7 @@ $L$vaesenc_loop_first_4_vecs__func3: add rax,16 cmp r11,rax - jne NEAR $L$vaesenc_loop_first_4_vecs__func3 + jne NEAR $L$vaesenc_loop_first_4_vecs__func1 @@ -1650,7 +520,7 @@ $L$vaesenc_loop_first_4_vecs__func3: sub rdx,-4*64 add r8,-4*64 cmp r8,4*64-1 - jbe NEAR $L$ghash_last_ciphertext_4x__func3 + jbe NEAR $L$ghash_last_ciphertext_4x__func1 vbroadcasti32x4 zmm15,ZMMWORD[((-144))+r11] vbroadcasti32x4 zmm16,ZMMWORD[((-128))+r11] vbroadcasti32x4 zmm17,ZMMWORD[((-112))+r11] @@ -1660,7 +530,7 @@ $L$vaesenc_loop_first_4_vecs__func3: vbroadcasti32x4 zmm21,ZMMWORD[((-48))+r11] vbroadcasti32x4 zmm22,ZMMWORD[((-32))+r11] vbroadcasti32x4 zmm23,ZMMWORD[((-16))+r11] -$L$crypt_loop_4x__func3: +$L$crypt_loop_4x__func1: @@ -1680,8 +550,8 @@ $L$crypt_loop_4x__func3: vpxord zmm3,zmm3,zmm13 cmp r10d,24 - jl NEAR $L$aes128__func3 - je NEAR $L$aes192__func3 + jl NEAR $L$aes128__func1 + je NEAR $L$aes192__func1 vbroadcasti32x4 zmm9,ZMMWORD[((-208))+r11] vaesenc zmm0,zmm0,zmm9 @@ -1695,7 +565,7 @@ $L$crypt_loop_4x__func3: vaesenc zmm2,zmm2,zmm9 vaesenc zmm3,zmm3,zmm9 -$L$aes192__func3: +$L$aes192__func1: vbroadcasti32x4 zmm9,ZMMWORD[((-176))+r11] vaesenc zmm0,zmm0,zmm9 vaesenc zmm1,zmm1,zmm9 @@ -1708,7 +578,7 @@ $L$aes192__func3: vaesenc zmm2,zmm2,zmm9 vaesenc zmm3,zmm3,zmm9 -$L$aes128__func3: +$L$aes128__func1: vpshufb zmm4,zmm4,zmm8 vpxord zmm4,zmm4,zmm10 vpshufb zmm5,zmm5,zmm8 @@ -1829,8 +699,8 @@ $L$aes128__func3: sub rdx,-4*64 add r8,-4*64 cmp r8,4*64-1 - ja NEAR $L$crypt_loop_4x__func3 -$L$ghash_last_ciphertext_4x__func3: + ja NEAR $L$crypt_loop_4x__func1 +$L$ghash_last_ciphertext_4x__func1: vpshufb zmm4,zmm4,zmm8 vpxord zmm4,zmm4,zmm10 vpshufb zmm5,zmm5,zmm8 @@ -1872,10 +742,10 @@ $L$ghash_last_ciphertext_4x__func3: vpxord xmm10,xmm10,xmm4 vpternlogd xmm10,xmm6,xmm5,0x96 -$L$crypt_loop_4x_done__func3: +$L$crypt_loop_4x_done__func1: test r8,r8 - jz NEAR $L$done__func3 + jz NEAR $L$done__func1 @@ -1905,9 +775,9 @@ $L$crypt_loop_4x_done__func3: vpxor xmm6,xmm6,xmm6 cmp r8,64 - jb NEAR $L$partial_vec__func3 + jb NEAR $L$partial_vec__func1 -$L$crypt_loop_1x__func3: +$L$crypt_loop_1x__func1: @@ -1915,12 +785,12 @@ $L$crypt_loop_1x__func3: vpaddd zmm12,zmm12,zmm11 vpxord zmm0,zmm0,zmm13 lea rax,[16+r9] -$L$vaesenc_loop_tail_full_vec__func3: +$L$vaesenc_loop_tail_full_vec__func1: vbroadcasti32x4 zmm9,ZMMWORD[rax] vaesenc zmm0,zmm0,zmm9 add rax,16 cmp r11,rax - jne NEAR $L$vaesenc_loop_tail_full_vec__func3 + jne NEAR $L$vaesenc_loop_tail_full_vec__func1 vaesenclast zmm0,zmm0,zmm14 @@ -1947,12 +817,12 @@ $L$vaesenc_loop_tail_full_vec__func3: add rdx,64 sub r8,64 cmp r8,64 - jae NEAR $L$crypt_loop_1x__func3 + jae NEAR $L$crypt_loop_1x__func1 test r8,r8 - jz NEAR $L$reduce__func3 + jz NEAR $L$reduce__func1 -$L$partial_vec__func3: +$L$partial_vec__func1: @@ -1971,12 +841,12 @@ $L$partial_vec__func3: vpshufb zmm0,zmm12,zmm8 vpxord zmm0,zmm0,zmm13 lea rax,[16+r9] -$L$vaesenc_loop_tail_partialvec__func3: +$L$vaesenc_loop_tail_partialvec__func1: vbroadcasti32x4 zmm9,ZMMWORD[rax] vaesenc zmm0,zmm0,zmm9 add rax,16 cmp r11,rax - jne NEAR $L$vaesenc_loop_tail_partialvec__func3 + jne NEAR $L$vaesenc_loop_tail_partialvec__func1 vaesenclast zmm0,zmm0,zmm14 @@ -2009,7 +879,7 @@ $L$vaesenc_loop_tail_partialvec__func3: vpxord zmm6,zmm6,zmm3 -$L$reduce__func3: +$L$reduce__func1: vpclmulqdq zmm0,zmm31,zmm4,0x01 vpshufd zmm4,zmm4,0x4e @@ -2025,7 +895,7 @@ $L$reduce__func3: vpternlogd xmm10,xmm2,xmm1,0x96 -$L$done__func3: +$L$done__func1: vpshufb xmm10,xmm10,xmm8 vmovdqu XMMWORD[r12],xmm10 @@ -2122,7 +992,7 @@ $L$SEH_endprologue_aes_gcm_dec_update_vaes_avx10_512_16: cmp r8,4*64-1 - jbe NEAR $L$crypt_loop_4x_done__func4 + jbe NEAR $L$crypt_loop_4x_done__func2 vmovdqu8 zmm27,ZMMWORD[((256-256))+rdi] @@ -2138,7 +1008,7 @@ $L$SEH_endprologue_aes_gcm_dec_update_vaes_avx10_512_16: vbroadcasti32x4 zmm21,ZMMWORD[((-48))+r11] vbroadcasti32x4 zmm22,ZMMWORD[((-32))+r11] vbroadcasti32x4 zmm23,ZMMWORD[((-16))+r11] -$L$crypt_loop_4x__func4: +$L$crypt_loop_4x__func2: vmovdqu8 zmm4,ZMMWORD[rcx] vmovdqu8 zmm5,ZMMWORD[64+rcx] vmovdqu8 zmm6,ZMMWORD[128+rcx] @@ -2162,8 +1032,8 @@ $L$crypt_loop_4x__func4: vpxord zmm3,zmm3,zmm13 cmp r10d,24 - jl NEAR $L$aes128__func4 - je NEAR $L$aes192__func4 + jl NEAR $L$aes128__func2 + je NEAR $L$aes192__func2 vbroadcasti32x4 zmm9,ZMMWORD[((-208))+r11] vaesenc zmm0,zmm0,zmm9 @@ -2177,7 +1047,7 @@ $L$crypt_loop_4x__func4: vaesenc zmm2,zmm2,zmm9 vaesenc zmm3,zmm3,zmm9 -$L$aes192__func4: +$L$aes192__func2: vbroadcasti32x4 zmm9,ZMMWORD[((-176))+r11] vaesenc zmm0,zmm0,zmm9 vaesenc zmm1,zmm1,zmm9 @@ -2190,7 +1060,7 @@ $L$aes192__func4: vaesenc zmm2,zmm2,zmm9 vaesenc zmm3,zmm3,zmm9 -$L$aes128__func4: +$L$aes128__func2: vpshufb zmm4,zmm4,zmm8 vpxord zmm4,zmm4,zmm10 vpshufb zmm5,zmm5,zmm8 @@ -2311,11 +1181,11 @@ $L$aes128__func4: sub rdx,-4*64 add r8,-4*64 cmp r8,4*64-1 - ja NEAR $L$crypt_loop_4x__func4 -$L$crypt_loop_4x_done__func4: + ja NEAR $L$crypt_loop_4x__func2 +$L$crypt_loop_4x_done__func2: test r8,r8 - jz NEAR $L$done__func4 + jz NEAR $L$done__func2 @@ -2345,9 +1215,9 @@ $L$crypt_loop_4x_done__func4: vpxor xmm6,xmm6,xmm6 cmp r8,64 - jb NEAR $L$partial_vec__func4 + jb NEAR $L$partial_vec__func2 -$L$crypt_loop_1x__func4: +$L$crypt_loop_1x__func2: @@ -2355,12 +1225,12 @@ $L$crypt_loop_1x__func4: vpaddd zmm12,zmm12,zmm11 vpxord zmm0,zmm0,zmm13 lea rax,[16+r9] -$L$vaesenc_loop_tail_full_vec__func4: +$L$vaesenc_loop_tail_full_vec__func2: vbroadcasti32x4 zmm9,ZMMWORD[rax] vaesenc zmm0,zmm0,zmm9 add rax,16 cmp r11,rax - jne NEAR $L$vaesenc_loop_tail_full_vec__func4 + jne NEAR $L$vaesenc_loop_tail_full_vec__func2 vaesenclast zmm0,zmm0,zmm14 @@ -2387,12 +1257,12 @@ $L$vaesenc_loop_tail_full_vec__func4: add rdx,64 sub r8,64 cmp r8,64 - jae NEAR $L$crypt_loop_1x__func4 + jae NEAR $L$crypt_loop_1x__func2 test r8,r8 - jz NEAR $L$reduce__func4 + jz NEAR $L$reduce__func2 -$L$partial_vec__func4: +$L$partial_vec__func2: @@ -2411,12 +1281,12 @@ $L$partial_vec__func4: vpshufb zmm0,zmm12,zmm8 vpxord zmm0,zmm0,zmm13 lea rax,[16+r9] -$L$vaesenc_loop_tail_partialvec__func4: +$L$vaesenc_loop_tail_partialvec__func2: vbroadcasti32x4 zmm9,ZMMWORD[rax] vaesenc zmm0,zmm0,zmm9 add rax,16 cmp r11,rax - jne NEAR $L$vaesenc_loop_tail_partialvec__func4 + jne NEAR $L$vaesenc_loop_tail_partialvec__func2 vaesenclast zmm0,zmm0,zmm14 @@ -2449,7 +1319,7 @@ $L$vaesenc_loop_tail_partialvec__func4: vpxord zmm6,zmm6,zmm3 -$L$reduce__func4: +$L$reduce__func2: vpclmulqdq zmm0,zmm31,zmm4,0x01 vpshufd zmm4,zmm4,0x4e @@ -2465,7 +1335,7 @@ $L$reduce__func4: vpternlogd xmm10,xmm2,xmm1,0x96 -$L$done__func4: +$L$done__func2: vpshufb xmm10,xmm10,xmm8 vmovdqu XMMWORD[r12],xmm10 @@ -2495,18 +1365,6 @@ ALIGN 4 DD $L$SEH_end_gcm_gmult_vpclmulqdq_avx10_5 wrt ..imagebase DD $L$SEH_info_gcm_gmult_vpclmulqdq_avx10_0 wrt ..imagebase - DD $L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1 wrt ..imagebase - DD $L$SEH_end_gcm_ghash_vpclmulqdq_avx10_256_12 wrt ..imagebase - DD $L$SEH_info_gcm_ghash_vpclmulqdq_avx10_256_0 wrt ..imagebase - - DD $L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 wrt ..imagebase - DD $L$SEH_end_aes_gcm_enc_update_vaes_avx10_256_17 wrt ..imagebase - DD $L$SEH_info_aes_gcm_enc_update_vaes_avx10_256_0 wrt ..imagebase - - DD $L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 wrt ..imagebase - DD $L$SEH_end_aes_gcm_dec_update_vaes_avx10_256_17 wrt ..imagebase - DD $L$SEH_info_aes_gcm_dec_update_vaes_avx10_256_0 wrt ..imagebase - DD $L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_512_1 wrt ..imagebase DD $L$SEH_end_gcm_ghash_vpclmulqdq_avx10_512_12 wrt ..imagebase DD $L$SEH_info_gcm_ghash_vpclmulqdq_avx10_512_0 wrt ..imagebase @@ -2533,131 +1391,6 @@ $L$SEH_info_gcm_gmult_vpclmulqdq_avx10_0: DB $L$SEH_prologue_gcm_gmult_vpclmulqdq_avx10_2-$L$SEH_begin_gcm_gmult_vpclmulqdq_avx10_1 DB 34 - DW 0 -$L$SEH_info_gcm_ghash_vpclmulqdq_avx10_256_0: - DB 1 - DB $L$SEH_endprologue_gcm_ghash_vpclmulqdq_avx10_256_11-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1 - DB 18 - DB 0 - DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_10-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1 - DB 216 - DW 7 - DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_9-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1 - DB 200 - DW 6 - DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_8-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1 - DB 184 - DW 5 - DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_7-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1 - DB 168 - DW 4 - DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_6-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1 - DB 152 - DW 3 - DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_5-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1 - DB 136 - DW 2 - DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_4-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1 - DB 120 - DW 1 - DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_3-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1 - DB 104 - DW 0 - DB $L$SEH_prologue_gcm_ghash_vpclmulqdq_avx10_256_2-$L$SEH_begin_gcm_ghash_vpclmulqdq_avx10_256_1 - DB 1 - DW 17 - -$L$SEH_info_aes_gcm_enc_update_vaes_avx10_256_0: - DB 1 - DB $L$SEH_endprologue_aes_gcm_enc_update_vaes_avx10_256_16-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 25 - DB 0 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_15-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 248 - DW 9 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_14-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 232 - DW 8 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_13-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 216 - DW 7 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_12-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 200 - DW 6 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_11-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 184 - DW 5 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_10-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 168 - DW 4 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_9-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 152 - DW 3 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_8-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 136 - DW 2 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_7-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 120 - DW 1 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_6-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 104 - DW 0 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_5-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 1 - DW 20 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_4-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 192 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_3-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 112 - DB $L$SEH_prologue_aes_gcm_enc_update_vaes_avx10_256_2-$L$SEH_begin_aes_gcm_enc_update_vaes_avx10_256_1 - DB 96 - - DW 0 -$L$SEH_info_aes_gcm_dec_update_vaes_avx10_256_0: - DB 1 - DB $L$SEH_endprologue_aes_gcm_dec_update_vaes_avx10_256_16-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 25 - DB 0 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_15-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 248 - DW 9 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_14-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 232 - DW 8 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_13-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 216 - DW 7 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_12-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 200 - DW 6 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_11-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 184 - DW 5 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_10-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 168 - DW 4 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_9-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 152 - DW 3 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_8-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 136 - DW 2 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_7-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 120 - DW 1 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_6-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 104 - DW 0 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_5-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 1 - DW 20 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_4-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 192 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_3-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 112 - DB $L$SEH_prologue_aes_gcm_dec_update_vaes_avx10_256_2-$L$SEH_begin_aes_gcm_dec_update_vaes_avx10_256_1 - DB 96 - DW 0 $L$SEH_info_gcm_ghash_vpclmulqdq_avx10_512_0: DB 1 From b9e84d0bb99c64788f088d741e43eca25a0a6cce Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sat, 4 Jan 2025 00:45:45 -0500 Subject: [PATCH 21/64] Import "Undo commit d420ac2" from upstream OpenSSL This imports https://github.com/openssl/openssl/commit/0904e79a6e6109240d5a552f2699408b26cf63ee from upstream OpenSSL. The tree intentionally does not compile at this point. Bug: 364634028 Change-Id: I39001741cf0db059e76ad4940004a1d57bf8af12 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74827 Reviewed-by: Adam Langley --- crypto/asn1/a_gentm.cc | 8 ++++---- crypto/asn1/a_time.cc | 9 +++------ crypto/asn1/a_utctm.cc | 8 ++++---- crypto/conf/conf.cc | 2 +- crypto/pem/pem_lib.cc | 17 ++++++----------- crypto/x509/by_dir.cc | 3 +-- crypto/x509/v3_alt.cc | 4 ++-- crypto/x509/v3_info.cc | 8 ++++---- include/openssl/base.h | 7 +++++++ 9 files changed, 32 insertions(+), 34 deletions(-) diff --git a/crypto/asn1/a_gentm.cc b/crypto/asn1/a_gentm.cc index dfad23f0ce..e7ec9f7064 100644 --- a/crypto/asn1/a_gentm.cc +++ b/crypto/asn1/a_gentm.cc @@ -77,11 +77,11 @@ ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_adj(ASN1_GENERALIZEDTIME *s, } char buf[16]; - int ret = snprintf(buf, sizeof(buf), "%04d%02d%02d%02d%02d%02dZ", - data.tm_year + 1900, data.tm_mon + 1, data.tm_mday, - data.tm_hour, data.tm_min, data.tm_sec); + int ret = sprintf(buf, "%04d%02d%02d%02d%02d%02dZ", data.tm_year + 1900, + data.tm_mon + 1, data.tm_mday, data.tm_hour, data.tm_min, + data.tm_sec); if (ret != (int)(sizeof(buf) - 1)) { - abort(); // |snprintf| should neither truncate nor write fewer bytes. + abort(); // |sprintf| should write exactly the expected number of bytes. } int free_s = 0; diff --git a/crypto/asn1/a_time.cc b/crypto/asn1/a_time.cc index 0ddeab2802..6aa1de9cdf 100644 --- a/crypto/asn1/a_time.cc +++ b/crypto/asn1/a_time.cc @@ -73,7 +73,6 @@ ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(const ASN1_TIME *t, ASN1_GENERALIZEDTIME **out) { ASN1_GENERALIZEDTIME *ret = NULL; char *str; - int newlen; if (!ASN1_TIME_check(t)) { return NULL; @@ -99,17 +98,15 @@ ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(const ASN1_TIME *t, if (!ASN1_STRING_set(ret, NULL, t->length + 2)) { goto err; } - // ASN1_STRING_set() allocated 'len + 1' bytes. - newlen = t->length + 2 + 1; str = (char *)ret->data; // Work out the century and prepend if (t->data[0] >= '5') { - OPENSSL_strlcpy(str, "19", newlen); + strcpy(str, "19"); } else { - OPENSSL_strlcpy(str, "20", newlen); + strcpy(str, "20"); } - OPENSSL_strlcat(str, (char *)t->data, newlen); + strcat(str, (const char *)t->data); done: if (out != NULL && *out == NULL) { diff --git a/crypto/asn1/a_utctm.cc b/crypto/asn1/a_utctm.cc index f97c6c9271..c25c39fced 100644 --- a/crypto/asn1/a_utctm.cc +++ b/crypto/asn1/a_utctm.cc @@ -78,11 +78,11 @@ ASN1_UTCTIME *ASN1_UTCTIME_adj(ASN1_UTCTIME *s, int64_t posix_time, int offset_d } char buf[14]; - int ret = snprintf(buf, sizeof(buf), "%02d%02d%02d%02d%02d%02dZ", - data.tm_year % 100, data.tm_mon + 1, data.tm_mday, - data.tm_hour, data.tm_min, data.tm_sec); + int ret = sprintf(buf, "%02d%02d%02d%02d%02d%02dZ", data.tm_year % 100, + data.tm_mon + 1, data.tm_mday, data.tm_hour, data.tm_min, + data.tm_sec); if (ret != (int)(sizeof(buf) - 1)) { - abort(); // |snprintf| should neither truncate nor write fewer bytes. + abort(); // |sprintf| should write exactly the expected number of bytes. } int free_s = 0; diff --git a/crypto/conf/conf.cc b/crypto/conf/conf.cc index 6aa173c504..dfb690a42f 100644 --- a/crypto/conf/conf.cc +++ b/crypto/conf/conf.cc @@ -551,7 +551,7 @@ int NCONF_load_bio(CONF *conf, BIO *in, long *out_error_line) { if (out_error_line != NULL) { *out_error_line = eline; } - snprintf(btmp, sizeof btmp, "%ld", eline); + sprintf(btmp, "%ld", eline); ERR_add_error_data(2, "line ", btmp); value_free(v); return 0; diff --git a/crypto/pem/pem_lib.cc b/crypto/pem/pem_lib.cc index 34048a3ea3..1c3e1efa99 100644 --- a/crypto/pem/pem_lib.cc +++ b/crypto/pem/pem_lib.cc @@ -48,9 +48,9 @@ static void PEM_proc_type(char buf[PEM_BUFSIZE], int type) { str = "BAD-TYPE"; } - OPENSSL_strlcat(buf, "Proc-Type: 4,", PEM_BUFSIZE); - OPENSSL_strlcat(buf, str, PEM_BUFSIZE); - OPENSSL_strlcat(buf, "\n", PEM_BUFSIZE); + strcat(buf, "Proc-Type: 4,"); + strcat(buf, str); + strcat(buf, "\n"); } // PEM_dek_info appends a DEK-Info header to |buf|, with an algorithm of |type| @@ -59,15 +59,10 @@ static void PEM_dek_info(char buf[PEM_BUFSIZE], const char *type, size_t len, char *str) { static const unsigned char map[17] = "0123456789ABCDEF"; - OPENSSL_strlcat(buf, "DEK-Info: ", PEM_BUFSIZE); - OPENSSL_strlcat(buf, type, PEM_BUFSIZE); - OPENSSL_strlcat(buf, ",", PEM_BUFSIZE); + strcat(buf, "DEK-Info: "); + strcat(buf, type); + strcat(buf, ","); size_t buf_len = strlen(buf); - // We must write an additional |2 * len + 2| bytes after |buf_len|, including - // the trailing newline and NUL. - if (len > (PEM_BUFSIZE - buf_len - 2) / 2) { - return; - } for (size_t i = 0; i < len; i++) { buf[buf_len + i * 2] = map[(str[i] >> 4) & 0x0f]; buf[buf_len + i * 2 + 1] = map[(str[i]) & 0x0f]; diff --git a/crypto/x509/by_dir.cc b/crypto/x509/by_dir.cc index 785e8402a9..f7abf2117d 100644 --- a/crypto/x509/by_dir.cc +++ b/crypto/x509/by_dir.cc @@ -262,8 +262,7 @@ static int get_cert_by_subject(X509_LOOKUP *xl, int type, X509_NAME *name, hent = NULL; } for (;;) { - snprintf(b->data, b->max, "%s/%08" PRIx32 ".%s%d", ent->dir, h, postfix, - k); + sprintf(b->data, "%s/%08" PRIx32 ".%s%d", ent->dir, h, postfix, k); if (type == X509_LU_X509) { if ((X509_load_cert_file(xl, b->data, ent->dir_type)) == 0) { // Don't expose the lower level error, All of these boil diff --git a/crypto/x509/v3_alt.cc b/crypto/x509/v3_alt.cc index 7b9fb0aef9..adc8f6d3e2 100644 --- a/crypto/x509/v3_alt.cc +++ b/crypto/x509/v3_alt.cc @@ -126,12 +126,12 @@ STACK_OF(CONF_VALUE) *i2v_GENERAL_NAME(const X509V3_EXT_METHOD *method, case GEN_IPADD: p = gen->d.ip->data; if (gen->d.ip->length == 4) { - snprintf(oline, sizeof(oline), "%d.%d.%d.%d", p[0], p[1], p[2], p[3]); + sprintf(oline, "%d.%d.%d.%d", p[0], p[1], p[2], p[3]); } else if (gen->d.ip->length == 16) { oline[0] = 0; for (i = 0; i < 8; i++) { uint16_t v = ((uint16_t)p[0] << 8) | p[1]; - snprintf(htmp, sizeof(htmp), "%X", v); + sprintf(htmp, "%X", v); p += 2; OPENSSL_strlcat(oline, htmp, sizeof(oline)); if (i != 7) { diff --git a/crypto/x509/v3_info.cc b/crypto/x509/v3_info.cc index 5097b386c2..59a854b015 100644 --- a/crypto/x509/v3_info.cc +++ b/crypto/x509/v3_info.cc @@ -96,14 +96,14 @@ static STACK_OF(CONF_VALUE) *i2v_AUTHORITY_INFO_ACCESS( tret = tmp; vtmp = sk_CONF_VALUE_value(tret, i); i2t_ASN1_OBJECT(objtmp, sizeof objtmp, desc->method); - nlen = strlen(objtmp) + strlen(vtmp->name) + 5; + nlen = strlen(objtmp) + 3 + strlen(vtmp->name) + 1; ntmp = reinterpret_cast(OPENSSL_malloc(nlen)); if (ntmp == NULL) { goto err; } - OPENSSL_strlcpy(ntmp, objtmp, nlen); - OPENSSL_strlcat(ntmp, " - ", nlen); - OPENSSL_strlcat(ntmp, vtmp->name, nlen); + strcpy(ntmp, objtmp); + strcat(ntmp, " - "); + strcat(ntmp, vtmp->name); OPENSSL_free(vtmp->name); vtmp->name = ntmp; } diff --git a/include/openssl/base.h b/include/openssl/base.h index 674f87910e..1f9e70e5cb 100644 --- a/include/openssl/base.h +++ b/include/openssl/base.h @@ -13,6 +13,13 @@ // This file should be the first included by all BoringSSL headers. +// Remove this after importing the following to remove all instances of +// |sprintf|, |strcat|, and |strcpy| from the codebase. +// * https://github.com/openssl/openssl/commit/86ba26c80a49aee3c588d286d91eb3843529f7e2 +// * https://github.com/openssl/openssl/commit/60eba30f60de55e3c782469fa555eede82606099 +// * https://github.com/openssl/openssl/commit/a2371fa93365cc0bc0e46b9d65f3a47a074b1c30 +#error "Do not build BoringSSL at this revision" + #include #include #include From 3cdbf04c19957313f3ba9015dc8ca5d1dbde4549 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sat, 4 Jan 2025 00:57:24 -0500 Subject: [PATCH 22/64] Import "Remove some code for a contributor that we cannot find" from upstream OpenSSL This imports https://github.com/openssl/openssl/commit/320a81277e402f393289ae7229b2320324321fb1 from upstream OpenSSL. This causes the following free functions to no longer check for NULL: * BIO_CONNECT_free * BUF_MEM_free * BN_CTX_free * BN_RECP_CTX_free * BN_MONT_CTX_free * BN_BLINDING_free * X509_STORE_free * SSL_SESSION_free (It also causes tls_free to no longer check for NULL, but that check was unnecessary.) Bug: 364634028 Change-Id: Ia625039a0a22b0bf368c39d6b8090ca15955f8e4 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74828 Reviewed-by: Adam Langley --- crypto/bio/connect.cc | 4 ---- crypto/buf/buf.cc | 4 ---- crypto/fipsmodule/bn/ctx.cc.inc | 4 ---- crypto/fipsmodule/bn/exponentiation.cc.inc | 4 ---- crypto/fipsmodule/bn/montgomery.cc.inc | 4 ---- crypto/fipsmodule/rsa/blinding.cc.inc | 4 ---- crypto/x509/x509_lu.cc | 4 ---- include/openssl/base.h | 12 ++++++++++++ ssl/s3_lib.cc | 2 +- ssl/ssl_session.cc | 4 +--- 10 files changed, 14 insertions(+), 32 deletions(-) diff --git a/crypto/bio/connect.cc b/crypto/bio/connect.cc index b144339a06..c97f3207ab 100644 --- a/crypto/bio/connect.cc +++ b/crypto/bio/connect.cc @@ -260,10 +260,6 @@ static BIO_CONNECT *BIO_CONNECT_new(void) { } static void BIO_CONNECT_free(BIO_CONNECT *c) { - if (c == NULL) { - return; - } - OPENSSL_free(c->param_hostname); OPENSSL_free(c->param_port); OPENSSL_free(c); diff --git a/crypto/buf/buf.cc b/crypto/buf/buf.cc index c2403fe16f..0010260697 100644 --- a/crypto/buf/buf.cc +++ b/crypto/buf/buf.cc @@ -22,10 +22,6 @@ BUF_MEM *BUF_MEM_new(void) { } void BUF_MEM_free(BUF_MEM *buf) { - if (buf == NULL) { - return; - } - OPENSSL_free(buf->data); OPENSSL_free(buf); } diff --git a/crypto/fipsmodule/bn/ctx.cc.inc b/crypto/fipsmodule/bn/ctx.cc.inc index 110bd971fc..7d012bb639 100644 --- a/crypto/fipsmodule/bn/ctx.cc.inc +++ b/crypto/fipsmodule/bn/ctx.cc.inc @@ -76,10 +76,6 @@ BN_CTX *BN_CTX_new(void) { } void BN_CTX_free(BN_CTX *ctx) { - if (ctx == NULL) { - return; - } - // All |BN_CTX_start| calls must be matched with |BN_CTX_end|, otherwise the // function may use more memory than expected, potentially without bound if // done in a loop. Assert that all |BIGNUM|s have been released. diff --git a/crypto/fipsmodule/bn/exponentiation.cc.inc b/crypto/fipsmodule/bn/exponentiation.cc.inc index 328fd07b4f..df19716440 100644 --- a/crypto/fipsmodule/bn/exponentiation.cc.inc +++ b/crypto/fipsmodule/bn/exponentiation.cc.inc @@ -136,10 +136,6 @@ static void BN_RECP_CTX_init(BN_RECP_CTX *recp) { } static void BN_RECP_CTX_free(BN_RECP_CTX *recp) { - if (recp == NULL) { - return; - } - BN_free(&recp->N); BN_free(&recp->Nr); } diff --git a/crypto/fipsmodule/bn/montgomery.cc.inc b/crypto/fipsmodule/bn/montgomery.cc.inc index 135a06eef4..22927ee822 100644 --- a/crypto/fipsmodule/bn/montgomery.cc.inc +++ b/crypto/fipsmodule/bn/montgomery.cc.inc @@ -45,10 +45,6 @@ BN_MONT_CTX *BN_MONT_CTX_new(void) { } void BN_MONT_CTX_free(BN_MONT_CTX *mont) { - if (mont == NULL) { - return; - } - bn_mont_ctx_cleanup(mont); OPENSSL_free(mont); } diff --git a/crypto/fipsmodule/rsa/blinding.cc.inc b/crypto/fipsmodule/rsa/blinding.cc.inc index 68fa59c558..628f1ce80d 100644 --- a/crypto/fipsmodule/rsa/blinding.cc.inc +++ b/crypto/fipsmodule/rsa/blinding.cc.inc @@ -58,10 +58,6 @@ err: } void BN_BLINDING_free(BN_BLINDING *r) { - if (r == NULL) { - return; - } - BN_free(r->A); BN_free(r->Ai); OPENSSL_free(r); diff --git a/crypto/x509/x509_lu.cc b/crypto/x509/x509_lu.cc index eb3acb1b58..373015b81c 100644 --- a/crypto/x509/x509_lu.cc +++ b/crypto/x509/x509_lu.cc @@ -130,10 +130,6 @@ int X509_STORE_up_ref(X509_STORE *store) { } void X509_STORE_free(X509_STORE *vfy) { - if (vfy == NULL) { - return; - } - if (!CRYPTO_refcount_dec_and_test_zero(&vfy->references)) { return; } diff --git a/include/openssl/base.h b/include/openssl/base.h index 1f9e70e5cb..21afad87ed 100644 --- a/include/openssl/base.h +++ b/include/openssl/base.h @@ -18,6 +18,18 @@ // * https://github.com/openssl/openssl/commit/86ba26c80a49aee3c588d286d91eb3843529f7e2 // * https://github.com/openssl/openssl/commit/60eba30f60de55e3c782469fa555eede82606099 // * https://github.com/openssl/openssl/commit/a2371fa93365cc0bc0e46b9d65f3a47a074b1c30 +// +// Also after importing +// https://github.com/openssl/openssl/commit/e6e9170d6e28038768895e1af18e3aad8093bf4b +// to make the following functions accept a NULL parameter: +// * BIO_CONNECT_free +// * BUF_MEM_free +// * BN_CTX_free +// * BN_RECP_CTX_free +// * BN_MONT_CTX_free +// * BN_BLINDING_free +// * X509_STORE_free +// * SSL_SESSION_free #error "Do not build BoringSSL at this revision" #include diff --git a/ssl/s3_lib.cc b/ssl/s3_lib.cc index 41e9c73b1a..e77ee3f68c 100644 --- a/ssl/s3_lib.cc +++ b/ssl/s3_lib.cc @@ -72,7 +72,7 @@ bool tls_new(SSL *ssl) { } void tls_free(SSL *ssl) { - if (ssl == NULL || ssl->s3 == NULL) { + if (ssl->s3 == NULL) { return; } diff --git a/ssl/ssl_session.cc b/ssl/ssl_session.cc index 02d50cc3c0..cf5736533e 100644 --- a/ssl/ssl_session.cc +++ b/ssl/ssl_session.cc @@ -830,9 +830,7 @@ int SSL_SESSION_up_ref(SSL_SESSION *session) { } void SSL_SESSION_free(SSL_SESSION *session) { - if (session != nullptr) { - session->DecRefInternal(); - } + session->DecRefInternal(); } const uint8_t *SSL_SESSION_get_id(const SSL_SESSION *session, From dc59036b9f97c9aa48380da0e59c6e5ecdf92f31 Mon Sep 17 00:00:00 2001 From: Adam Langley Date: Mon, 6 Jan 2025 11:58:27 -0800 Subject: [PATCH 23/64] Remove uses of `strcpy`, `strcat`, and `sprintf`, and handle NULL in some functions. This change reimplements some OpenSSL changes based only on the description of the work in base.h. Change-Id: I1a8b3d2774216c43ab446aa56b31cbb40d58b29d Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74847 Reviewed-by: David Benjamin Reviewed-by: Bob Beck --- crypto/asn1/a_gentm.cc | 14 ++++---- crypto/asn1/a_time.cc | 38 ++++++++++++---------- crypto/asn1/a_utctm.cc | 15 ++++----- crypto/bio/connect.cc | 3 ++ crypto/buf/buf.cc | 3 ++ crypto/conf/conf.cc | 4 +-- crypto/fipsmodule/bn/ctx.cc.inc | 3 ++ crypto/fipsmodule/bn/exponentiation.cc.inc | 3 ++ crypto/fipsmodule/bn/montgomery.cc.inc | 3 ++ crypto/fipsmodule/rsa/blinding.cc.inc | 3 ++ crypto/pem/pem_lib.cc | 28 +++++++++------- crypto/x509/by_dir.cc | 11 ++++--- crypto/x509/v3_alt.cc | 4 +-- crypto/x509/v3_info.cc | 19 ++++++----- crypto/x509/x509_lu.cc | 2 +- include/openssl/base.h | 21 +----------- ssl/ssl_session.cc | 3 ++ 17 files changed, 94 insertions(+), 83 deletions(-) diff --git a/crypto/asn1/a_gentm.cc b/crypto/asn1/a_gentm.cc index e7ec9f7064..ae4086f9e7 100644 --- a/crypto/asn1/a_gentm.cc +++ b/crypto/asn1/a_gentm.cc @@ -58,7 +58,8 @@ ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_set(ASN1_GENERALIZEDTIME *s, } ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_adj(ASN1_GENERALIZEDTIME *s, - int64_t posix_time, int offset_day, + int64_t posix_time, + int offset_day, long offset_sec) { struct tm data; if (!OPENSSL_posix_to_tm(posix_time, &data)) { @@ -77,12 +78,11 @@ ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_adj(ASN1_GENERALIZEDTIME *s, } char buf[16]; - int ret = sprintf(buf, "%04d%02d%02d%02d%02d%02dZ", data.tm_year + 1900, - data.tm_mon + 1, data.tm_mday, data.tm_hour, data.tm_min, - data.tm_sec); - if (ret != (int)(sizeof(buf) - 1)) { - abort(); // |sprintf| should write exactly the expected number of bytes. - } + int ret = snprintf(buf, sizeof(buf), "%04d%02d%02d%02d%02d%02dZ", + data.tm_year + 1900, data.tm_mon + 1, data.tm_mday, + data.tm_hour, data.tm_min, data.tm_sec); + // |snprintf| must write exactly 15 bytes (plus the NUL) to the buffer. + BSSL_CHECK(ret == static_cast(sizeof(buf) - 1)); int free_s = 0; if (s == NULL) { diff --git a/crypto/asn1/a_time.cc b/crypto/asn1/a_time.cc index 6aa1de9cdf..6ab5d93dae 100644 --- a/crypto/asn1/a_time.cc +++ b/crypto/asn1/a_time.cc @@ -69,15 +69,13 @@ int ASN1_TIME_check(const ASN1_TIME *t) { } // Convert an ASN1_TIME structure to GeneralizedTime -ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(const ASN1_TIME *t, +ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(const ASN1_TIME *in, ASN1_GENERALIZEDTIME **out) { - ASN1_GENERALIZEDTIME *ret = NULL; - char *str; - - if (!ASN1_TIME_check(t)) { + if (!ASN1_TIME_check(in)) { return NULL; } + ASN1_GENERALIZEDTIME *ret = NULL; if (!out || !*out) { if (!(ret = ASN1_GENERALIZEDTIME_new())) { goto err; @@ -87,26 +85,30 @@ ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(const ASN1_TIME *t, } // If already GeneralizedTime just copy across - if (t->type == V_ASN1_GENERALIZEDTIME) { - if (!ASN1_STRING_set(ret, t->data, t->length)) { + if (in->type == V_ASN1_GENERALIZEDTIME) { + if (!ASN1_STRING_set(ret, in->data, in->length)) { goto err; } goto done; } - // grow the string - if (!ASN1_STRING_set(ret, NULL, t->length + 2)) { + // Grow the string to accomodate the two-digit century. + if (!ASN1_STRING_set(ret, NULL, in->length + 2)) { goto err; } - str = (char *)ret->data; - // Work out the century and prepend - if (t->data[0] >= '5') { - strcpy(str, "19"); - } else { - strcpy(str, "20"); - } - strcat(str, (const char *)t->data); + { + char *const out_str = (char *)ret->data; + // |ASN1_STRING_set| also allocates an additional byte for a trailing NUL. + const size_t out_str_capacity = in->length + 2 + 1; + // Work out the century and prepend + if (in->data[0] >= '5') { + OPENSSL_strlcpy(out_str, "19", out_str_capacity); + } else { + OPENSSL_strlcpy(out_str, "20", out_str_capacity); + } + OPENSSL_strlcat(out_str, (const char *)in->data, out_str_capacity); + } done: if (out != NULL && *out == NULL) { @@ -128,7 +130,7 @@ int ASN1_TIME_set_string(ASN1_TIME *s, const char *str) { int ASN1_TIME_set_string_X509(ASN1_TIME *s, const char *str) { CBS cbs; - CBS_init(&cbs, (const uint8_t*)str, strlen(str)); + CBS_init(&cbs, (const uint8_t *)str, strlen(str)); int type; struct tm tm; if (CBS_parse_utc_time(&cbs, /*out_tm=*/NULL, diff --git a/crypto/asn1/a_utctm.cc b/crypto/asn1/a_utctm.cc index c25c39fced..993dd5d213 100644 --- a/crypto/asn1/a_utctm.cc +++ b/crypto/asn1/a_utctm.cc @@ -60,8 +60,8 @@ ASN1_UTCTIME *ASN1_UTCTIME_set(ASN1_UTCTIME *s, int64_t posix_time) { return ASN1_UTCTIME_adj(s, posix_time, 0, 0); } -ASN1_UTCTIME *ASN1_UTCTIME_adj(ASN1_UTCTIME *s, int64_t posix_time, int offset_day, - long offset_sec) { +ASN1_UTCTIME *ASN1_UTCTIME_adj(ASN1_UTCTIME *s, int64_t posix_time, + int offset_day, long offset_sec) { struct tm data; if (!OPENSSL_posix_to_tm(posix_time, &data)) { return NULL; @@ -78,12 +78,11 @@ ASN1_UTCTIME *ASN1_UTCTIME_adj(ASN1_UTCTIME *s, int64_t posix_time, int offset_d } char buf[14]; - int ret = sprintf(buf, "%02d%02d%02d%02d%02d%02dZ", data.tm_year % 100, - data.tm_mon + 1, data.tm_mday, data.tm_hour, data.tm_min, - data.tm_sec); - if (ret != (int)(sizeof(buf) - 1)) { - abort(); // |sprintf| should write exactly the expected number of bytes. - } + int ret = snprintf(buf, sizeof(buf), "%02d%02d%02d%02d%02d%02dZ", + data.tm_year % 100, data.tm_mon + 1, data.tm_mday, + data.tm_hour, data.tm_min, data.tm_sec); + // |snprintf| must write exactly 15 bytes (plus the NUL) to the buffer. + BSSL_CHECK(ret == static_cast(sizeof(buf) - 1)); int free_s = 0; if (s == NULL) { diff --git a/crypto/bio/connect.cc b/crypto/bio/connect.cc index c97f3207ab..9056fff893 100644 --- a/crypto/bio/connect.cc +++ b/crypto/bio/connect.cc @@ -260,6 +260,9 @@ static BIO_CONNECT *BIO_CONNECT_new(void) { } static void BIO_CONNECT_free(BIO_CONNECT *c) { + if (c == nullptr) { + return; + } OPENSSL_free(c->param_hostname); OPENSSL_free(c->param_port); OPENSSL_free(c); diff --git a/crypto/buf/buf.cc b/crypto/buf/buf.cc index 0010260697..8c000822f7 100644 --- a/crypto/buf/buf.cc +++ b/crypto/buf/buf.cc @@ -22,6 +22,9 @@ BUF_MEM *BUF_MEM_new(void) { } void BUF_MEM_free(BUF_MEM *buf) { + if (buf == nullptr) { + return; + } OPENSSL_free(buf->data); OPENSSL_free(buf); } diff --git a/crypto/conf/conf.cc b/crypto/conf/conf.cc index dfb690a42f..9b286979dd 100644 --- a/crypto/conf/conf.cc +++ b/crypto/conf/conf.cc @@ -370,7 +370,6 @@ int NCONF_load_bio(CONF *conf, BIO *in, long *out_error_line) { char *s, *p, *end; int again; long eline = 0; - char btmp[DECIMAL_SIZE(eline) + 1]; CONF_VALUE *v = NULL; CONF_SECTION *sv = NULL; char *section = NULL, *buf; @@ -551,8 +550,7 @@ int NCONF_load_bio(CONF *conf, BIO *in, long *out_error_line) { if (out_error_line != NULL) { *out_error_line = eline; } - sprintf(btmp, "%ld", eline); - ERR_add_error_data(2, "line ", btmp); + ERR_add_error_dataf("line %ld", eline); value_free(v); return 0; } diff --git a/crypto/fipsmodule/bn/ctx.cc.inc b/crypto/fipsmodule/bn/ctx.cc.inc index 7d012bb639..8ddcf10185 100644 --- a/crypto/fipsmodule/bn/ctx.cc.inc +++ b/crypto/fipsmodule/bn/ctx.cc.inc @@ -79,6 +79,9 @@ void BN_CTX_free(BN_CTX *ctx) { // All |BN_CTX_start| calls must be matched with |BN_CTX_end|, otherwise the // function may use more memory than expected, potentially without bound if // done in a loop. Assert that all |BIGNUM|s have been released. + if (ctx == nullptr) { + return; + } assert(ctx->used == 0 || ctx->error); sk_BIGNUM_pop_free(ctx->bignums, BN_free); BN_STACK_cleanup(&ctx->stack); diff --git a/crypto/fipsmodule/bn/exponentiation.cc.inc b/crypto/fipsmodule/bn/exponentiation.cc.inc index df19716440..f193e55300 100644 --- a/crypto/fipsmodule/bn/exponentiation.cc.inc +++ b/crypto/fipsmodule/bn/exponentiation.cc.inc @@ -136,6 +136,9 @@ static void BN_RECP_CTX_init(BN_RECP_CTX *recp) { } static void BN_RECP_CTX_free(BN_RECP_CTX *recp) { + if (recp == nullptr) { + return; + } BN_free(&recp->N); BN_free(&recp->Nr); } diff --git a/crypto/fipsmodule/bn/montgomery.cc.inc b/crypto/fipsmodule/bn/montgomery.cc.inc index 22927ee822..9cf42f1a17 100644 --- a/crypto/fipsmodule/bn/montgomery.cc.inc +++ b/crypto/fipsmodule/bn/montgomery.cc.inc @@ -45,6 +45,9 @@ BN_MONT_CTX *BN_MONT_CTX_new(void) { } void BN_MONT_CTX_free(BN_MONT_CTX *mont) { + if (mont == nullptr) { + return; + } bn_mont_ctx_cleanup(mont); OPENSSL_free(mont); } diff --git a/crypto/fipsmodule/rsa/blinding.cc.inc b/crypto/fipsmodule/rsa/blinding.cc.inc index 628f1ce80d..12ae91e898 100644 --- a/crypto/fipsmodule/rsa/blinding.cc.inc +++ b/crypto/fipsmodule/rsa/blinding.cc.inc @@ -58,6 +58,9 @@ err: } void BN_BLINDING_free(BN_BLINDING *r) { + if (r == nullptr) { + return; + } BN_free(r->A); BN_free(r->Ai); OPENSSL_free(r); diff --git a/crypto/pem/pem_lib.cc b/crypto/pem/pem_lib.cc index 1c3e1efa99..61ab5510e1 100644 --- a/crypto/pem/pem_lib.cc +++ b/crypto/pem/pem_lib.cc @@ -48,9 +48,9 @@ static void PEM_proc_type(char buf[PEM_BUFSIZE], int type) { str = "BAD-TYPE"; } - strcat(buf, "Proc-Type: 4,"); - strcat(buf, str); - strcat(buf, "\n"); + OPENSSL_strlcat(buf, "Proc-Type: 4,", PEM_BUFSIZE); + OPENSSL_strlcat(buf, str, PEM_BUFSIZE); + OPENSSL_strlcat(buf, "\n", PEM_BUFSIZE); } // PEM_dek_info appends a DEK-Info header to |buf|, with an algorithm of |type| @@ -59,16 +59,22 @@ static void PEM_dek_info(char buf[PEM_BUFSIZE], const char *type, size_t len, char *str) { static const unsigned char map[17] = "0123456789ABCDEF"; - strcat(buf, "DEK-Info: "); - strcat(buf, type); - strcat(buf, ","); - size_t buf_len = strlen(buf); + OPENSSL_strlcat(buf, "DEK-Info: ", PEM_BUFSIZE); + OPENSSL_strlcat(buf, type, PEM_BUFSIZE); + OPENSSL_strlcat(buf, ",", PEM_BUFSIZE); + + const size_t used = strlen(buf); + const size_t available = PEM_BUFSIZE - used; + if (len * 2 < len || len * 2 + 2 < len || available < len * 2 + 2) { + return; + } + for (size_t i = 0; i < len; i++) { - buf[buf_len + i * 2] = map[(str[i] >> 4) & 0x0f]; - buf[buf_len + i * 2 + 1] = map[(str[i]) & 0x0f]; + buf[used + i * 2] = map[(str[i] >> 4) & 0x0f]; + buf[used + i * 2 + 1] = map[(str[i]) & 0x0f]; } - buf[buf_len + len * 2] = '\n'; - buf[buf_len + len * 2 + 1] = '\0'; + buf[used + len * 2] = '\n'; + buf[used + len * 2 + 1] = '\0'; } void *PEM_ASN1_read(d2i_of_void *d2i, const char *name, FILE *fp, void **x, diff --git a/crypto/x509/by_dir.cc b/crypto/x509/by_dir.cc index f7abf2117d..7f8781482a 100644 --- a/crypto/x509/by_dir.cc +++ b/crypto/x509/by_dir.cc @@ -199,7 +199,7 @@ static int get_cert_by_subject(X509_LOOKUP *xl, int type, X509_NAME *name, } data; int ok = 0; size_t i; - int j, k; + int k; uint32_t h; uint32_t hash_array[2]; int hash_index; @@ -242,8 +242,10 @@ static int get_cert_by_subject(X509_LOOKUP *xl, int type, X509_NAME *name, size_t idx; BY_DIR_HASH htmp, *hent; ent = sk_BY_DIR_ENTRY_value(ctx->dirs, i); - j = strlen(ent->dir) + 1 + 8 + 6 + 1 + 1; - if (!BUF_MEM_grow(b, j)) { + if (!BUF_MEM_grow(b, strlen(ent->dir) + /* foreslash */ 1 + + /* h, in hex */ 8 + /* period */ 1 + + /* optional `postfix` */ 1 + + /* k */ DECIMAL_SIZE(k) + /* NUL */ 1)) { goto finish; } if (type == X509_LU_CRL && ent->hashes) { @@ -262,7 +264,8 @@ static int get_cert_by_subject(X509_LOOKUP *xl, int type, X509_NAME *name, hent = NULL; } for (;;) { - sprintf(b->data, "%s/%08" PRIx32 ".%s%d", ent->dir, h, postfix, k); + snprintf(b->data, b->max, "%s/%08" PRIx32 ".%s%d", ent->dir, h, postfix, + k); if (type == X509_LU_X509) { if ((X509_load_cert_file(xl, b->data, ent->dir_type)) == 0) { // Don't expose the lower level error, All of these boil diff --git a/crypto/x509/v3_alt.cc b/crypto/x509/v3_alt.cc index adc8f6d3e2..7b9fb0aef9 100644 --- a/crypto/x509/v3_alt.cc +++ b/crypto/x509/v3_alt.cc @@ -126,12 +126,12 @@ STACK_OF(CONF_VALUE) *i2v_GENERAL_NAME(const X509V3_EXT_METHOD *method, case GEN_IPADD: p = gen->d.ip->data; if (gen->d.ip->length == 4) { - sprintf(oline, "%d.%d.%d.%d", p[0], p[1], p[2], p[3]); + snprintf(oline, sizeof(oline), "%d.%d.%d.%d", p[0], p[1], p[2], p[3]); } else if (gen->d.ip->length == 16) { oline[0] = 0; for (i = 0; i < 8; i++) { uint16_t v = ((uint16_t)p[0] << 8) | p[1]; - sprintf(htmp, "%X", v); + snprintf(htmp, sizeof(htmp), "%X", v); p += 2; OPENSSL_strlcat(oline, htmp, sizeof(oline)); if (i != 7) { diff --git a/crypto/x509/v3_info.cc b/crypto/x509/v3_info.cc index 59a854b015..ca52d014ee 100644 --- a/crypto/x509/v3_info.cc +++ b/crypto/x509/v3_info.cc @@ -80,8 +80,8 @@ static STACK_OF(CONF_VALUE) *i2v_AUTHORITY_INFO_ACCESS( const AUTHORITY_INFO_ACCESS *ainfo = reinterpret_cast(ext); ACCESS_DESCRIPTION *desc; - int nlen; - char objtmp[80], *ntmp; + int name_len; + char objtmp[80], *name; CONF_VALUE *vtmp; STACK_OF(CONF_VALUE) *tret = ret; @@ -96,16 +96,17 @@ static STACK_OF(CONF_VALUE) *i2v_AUTHORITY_INFO_ACCESS( tret = tmp; vtmp = sk_CONF_VALUE_value(tret, i); i2t_ASN1_OBJECT(objtmp, sizeof objtmp, desc->method); - nlen = strlen(objtmp) + 3 + strlen(vtmp->name) + 1; - ntmp = reinterpret_cast(OPENSSL_malloc(nlen)); - if (ntmp == NULL) { + + name_len = strlen(objtmp) + 3 + strlen(vtmp->name) + 1; + name = reinterpret_cast(OPENSSL_malloc(name_len)); + if (name == NULL) { goto err; } - strcpy(ntmp, objtmp); - strcat(ntmp, " - "); - strcat(ntmp, vtmp->name); + OPENSSL_strlcpy(name, objtmp, name_len); + OPENSSL_strlcat(name, " - ", name_len); + OPENSSL_strlcat(name, vtmp->name, name_len); OPENSSL_free(vtmp->name); - vtmp->name = ntmp; + vtmp->name = name; } if (ret == NULL && tret == NULL) { return sk_CONF_VALUE_new_null(); diff --git a/crypto/x509/x509_lu.cc b/crypto/x509/x509_lu.cc index 373015b81c..4e2df3b8f3 100644 --- a/crypto/x509/x509_lu.cc +++ b/crypto/x509/x509_lu.cc @@ -130,7 +130,7 @@ int X509_STORE_up_ref(X509_STORE *store) { } void X509_STORE_free(X509_STORE *vfy) { - if (!CRYPTO_refcount_dec_and_test_zero(&vfy->references)) { + if (vfy == nullptr || !CRYPTO_refcount_dec_and_test_zero(&vfy->references)) { return; } diff --git a/include/openssl/base.h b/include/openssl/base.h index 21afad87ed..8f16fb77b7 100644 --- a/include/openssl/base.h +++ b/include/openssl/base.h @@ -13,25 +13,6 @@ // This file should be the first included by all BoringSSL headers. -// Remove this after importing the following to remove all instances of -// |sprintf|, |strcat|, and |strcpy| from the codebase. -// * https://github.com/openssl/openssl/commit/86ba26c80a49aee3c588d286d91eb3843529f7e2 -// * https://github.com/openssl/openssl/commit/60eba30f60de55e3c782469fa555eede82606099 -// * https://github.com/openssl/openssl/commit/a2371fa93365cc0bc0e46b9d65f3a47a074b1c30 -// -// Also after importing -// https://github.com/openssl/openssl/commit/e6e9170d6e28038768895e1af18e3aad8093bf4b -// to make the following functions accept a NULL parameter: -// * BIO_CONNECT_free -// * BUF_MEM_free -// * BN_CTX_free -// * BN_RECP_CTX_free -// * BN_MONT_CTX_free -// * BN_BLINDING_free -// * X509_STORE_free -// * SSL_SESSION_free -#error "Do not build BoringSSL at this revision" - #include #include #include @@ -421,7 +402,7 @@ extern "C++" { #define BORINGSSL_NO_CXX #endif -} // extern C++ +} // extern C++ #endif // !BORINGSSL_NO_CXX #if defined(BORINGSSL_NO_CXX) diff --git a/ssl/ssl_session.cc b/ssl/ssl_session.cc index cf5736533e..52ce2d1e47 100644 --- a/ssl/ssl_session.cc +++ b/ssl/ssl_session.cc @@ -830,6 +830,9 @@ int SSL_SESSION_up_ref(SSL_SESSION *session) { } void SSL_SESSION_free(SSL_SESSION *session) { + if (session == nullptr) { + return; + } session->DecRefInternal(); } From 029914cf3df9d8cf5250c3a1d6cda178ad8ed0ec Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Mon, 6 Jan 2025 18:51:20 -0500 Subject: [PATCH 24/64] Align a few license headers with OpenSSL's "copyright consolidation" This was another part of OpenSSL's "copyright consolidation" changes. See: https://github.com/openssl/openssl/blob/44c8a5e2b9af8909844cc002c53049311634b314/crypto/bn/asm/x86_64-gcc.c https://github.com/openssl/openssl/blob/44c8a5e2b9af8909844cc002c53049311634b314/crypto/md5/asm/md5-586.pl https://github.com/openssl/openssl/blob/44c8a5e2b9af8909844cc002c53049311634b314/crypto/md5/asm/md5-x86_64.pl Bug: 364634028 Change-Id: I9bb24c94a468ca419936118f4d1e5b3a359e1674 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74887 Commit-Queue: David Benjamin Commit-Queue: Adam Langley Auto-Submit: David Benjamin Reviewed-by: Adam Langley --- crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc | 9 +++++++++ crypto/md5/asm/md5-586.pl | 9 ++++++++- crypto/md5/asm/md5-x86_64.pl | 14 ++++++++------ 3 files changed, 25 insertions(+), 7 deletions(-) diff --git a/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc b/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc index 4f6bcaead3..efdff48104 100644 --- a/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +++ b/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc @@ -1,3 +1,12 @@ +/* + * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + /* x86_64 BIGNUM accelerator version 0.1, December 2002. * * Implemented by Andy Polyakov for the OpenSSL diff --git a/crypto/md5/asm/md5-586.pl b/crypto/md5/asm/md5-586.pl index f849b46477..d020f67d29 100644 --- a/crypto/md5/asm/md5-586.pl +++ b/crypto/md5/asm/md5-586.pl @@ -1,4 +1,11 @@ -#!/usr/local/bin/perl +#! /usr/bin/env perl +# Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + # Normal is the # md5_block_x86(MD5_CTX *c, ULONG *X); diff --git a/crypto/md5/asm/md5-x86_64.pl b/crypto/md5/asm/md5-x86_64.pl index eee50a35c8..80e2d3fd93 100644 --- a/crypto/md5/asm/md5-x86_64.pl +++ b/crypto/md5/asm/md5-x86_64.pl @@ -1,11 +1,13 @@ -#!/usr/bin/perl -w -# -# MD5 optimized for AMD64. -# +#! /usr/bin/env perl # Author: Marc Bevand -# Licence: I hereby disclaim the copyright on this code and place it -# in the public domain. +# Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. # +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# MD5 optimized for AMD64. use strict; From 138b5a2c8ea24cc9bb702293b0a2f82de101360d Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Mon, 6 Jan 2025 19:04:06 -0500 Subject: [PATCH 25/64] Add some missing file headers Years computed from version control. Bug: 364634028 Change-Id: I949149b156ea24966813f304699869a5ad304c98 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74888 Reviewed-by: Adam Langley Auto-Submit: David Benjamin Commit-Queue: David Benjamin Commit-Queue: Adam Langley --- CMakeLists.txt | 14 ++++++++++++++ cmake/OpenSSLConfig.cmake | 14 ++++++++++++++ cmake/go.cmake | 14 ++++++++++++++ cmake/paths.cmake | 14 ++++++++++++++ pki/verify_error.cc | 14 ++++++++++++++ ssl/ssl_c_test.c | 14 ++++++++++++++ 6 files changed, 84 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 63efa91a6a..77c2e384f8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,3 +1,17 @@ +# Copyright 2014 The BoringSSL Authors +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + cmake_minimum_required(VERSION 3.16) # Defer enabling C and CXX languages. diff --git a/cmake/OpenSSLConfig.cmake b/cmake/OpenSSLConfig.cmake index 3ebaf19ba4..a92e6411ed 100644 --- a/cmake/OpenSSLConfig.cmake +++ b/cmake/OpenSSLConfig.cmake @@ -1,3 +1,17 @@ +# Copyright 2022 The BoringSSL Authors +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + include(${CMAKE_CURRENT_LIST_DIR}/OpenSSLTargets.cmake) # Recursively collect dependency locations for the imported targets. diff --git a/cmake/go.cmake b/cmake/go.cmake index 76fcfebc1b..b53b37e8f3 100644 --- a/cmake/go.cmake +++ b/cmake/go.cmake @@ -1,3 +1,17 @@ +# Copyright 2023 The BoringSSL Authors +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + # Go is an optional dependency. It's a necessary dependency if running tests or # the FIPS build, which will check these. find_program(GO_EXECUTABLE go) diff --git a/cmake/paths.cmake b/cmake/paths.cmake index b5c9480055..a3158cc2ba 100644 --- a/cmake/paths.cmake +++ b/cmake/paths.cmake @@ -1,3 +1,17 @@ +# Copyright 2023 The BoringSSL Authors +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + # binary_dir_relative_path sets outvar to # ${CMAKE_CURRENT_BINARY_DIR}/${cur_bin_dir_relative}, but expressed relative to # ${CMAKE_BINARY_DIR}. diff --git a/pki/verify_error.cc b/pki/verify_error.cc index 688b4e28fd..57fcc38bc8 100644 --- a/pki/verify_error.cc +++ b/pki/verify_error.cc @@ -1,3 +1,17 @@ +/* Copyright 2024 The BoringSSL Authors + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + #include #include diff --git a/ssl/ssl_c_test.c b/ssl/ssl_c_test.c index 02f8655dc5..9ed0a86177 100644 --- a/ssl/ssl_c_test.c +++ b/ssl/ssl_c_test.c @@ -1,3 +1,17 @@ +/* Copyright 2019 The BoringSSL Authors + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + #include int BORINGSSL_enum_c_type_test(void); From d777ea2a7004ff7ef40ef983b41a5125f316f898 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Mon, 6 Jan 2025 19:20:40 -0500 Subject: [PATCH 26/64] Add another missing file header Bug: 364634028 Change-Id: Id26a236e3cc74944111f1ce74e32dbb481c4b309 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74829 Auto-Submit: David Benjamin Commit-Queue: Adam Langley Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- util/WORKSPACE.toplevel | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/util/WORKSPACE.toplevel b/util/WORKSPACE.toplevel index 93f64eecfc..f6ef86c0be 100644 --- a/util/WORKSPACE.toplevel +++ b/util/WORKSPACE.toplevel @@ -1,3 +1,17 @@ +# Copyright 2023 The BoringSSL Authors +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + workspace(name = "boringssl") load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") From d678fbfb4802deac0258a9a53eac960d6e6e1bc5 Mon Sep 17 00:00:00 2001 From: Pete Bentley Date: Tue, 7 Jan 2025 14:03:37 +0000 Subject: [PATCH 27/64] Always try and enable the new_uninit feature. The crate won't build without it anyway, so unconditionally try and enable it. Change-Id: Ief8a7dbf8d0af3040b1832424007150987ce654d Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74947 Auto-Submit: Pete Bentley Commit-Queue: Adam Langley Reviewed-by: Adam Langley --- rust/bssl-crypto/src/lib.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/rust/bssl-crypto/src/lib.rs b/rust/bssl-crypto/src/lib.rs index bd6876010b..5cc3a7a9df 100644 --- a/rust/bssl-crypto/src/lib.rs +++ b/rust/bssl-crypto/src/lib.rs @@ -23,6 +23,10 @@ )] #![cfg_attr(not(any(feature = "std", test)), no_std)] +// This crate requires the |new_uninit| feature which is available by +// default in Rust 1.82 but present and usable in some earlier versions. +#![feature(new_uninit)] + //! Rust BoringSSL bindings extern crate alloc; From 8739f1d7b86ea3633e578d89ba938997bd5d48f3 Mon Sep 17 00:00:00 2001 From: Bob Beck Date: Mon, 6 Jan 2025 23:09:00 +0000 Subject: [PATCH 28/64] use asprintf instead of magic manual allocation Change-Id: If398ea31546f7be98abce4362cae1f7c821ff7aa Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74867 Reviewed-by: Adam Langley Commit-Queue: Bob Beck --- crypto/x509/by_dir.cc | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/crypto/x509/by_dir.cc b/crypto/x509/by_dir.cc index 7f8781482a..a493b0189e 100644 --- a/crypto/x509/by_dir.cc +++ b/crypto/x509/by_dir.cc @@ -203,7 +203,7 @@ static int get_cert_by_subject(X509_LOOKUP *xl, int type, X509_NAME *name, uint32_t h; uint32_t hash_array[2]; int hash_index; - BUF_MEM *b = NULL; + char *b = NULL; X509_OBJECT stmp, *tmp; const char *postfix = ""; @@ -228,11 +228,6 @@ static int get_cert_by_subject(X509_LOOKUP *xl, int type, X509_NAME *name, goto finish; } - if ((b = BUF_MEM_new()) == NULL) { - OPENSSL_PUT_ERROR(X509, ERR_R_BUF_LIB); - goto finish; - } - hash_array[0] = X509_NAME_hash(name); hash_array[1] = X509_NAME_hash_old(name); for (hash_index = 0; hash_index < 2; ++hash_index) { @@ -242,12 +237,6 @@ static int get_cert_by_subject(X509_LOOKUP *xl, int type, X509_NAME *name, size_t idx; BY_DIR_HASH htmp, *hent; ent = sk_BY_DIR_ENTRY_value(ctx->dirs, i); - if (!BUF_MEM_grow(b, strlen(ent->dir) + /* foreslash */ 1 + - /* h, in hex */ 8 + /* period */ 1 + - /* optional `postfix` */ 1 + - /* k */ DECIMAL_SIZE(k) + /* NUL */ 1)) { - goto finish; - } if (type == X509_LU_CRL && ent->hashes) { htmp.hash = h; CRYPTO_MUTEX_lock_read(&ent->lock); @@ -264,17 +253,22 @@ static int get_cert_by_subject(X509_LOOKUP *xl, int type, X509_NAME *name, hent = NULL; } for (;;) { - snprintf(b->data, b->max, "%s/%08" PRIx32 ".%s%d", ent->dir, h, postfix, - k); + OPENSSL_free(b); + if (OPENSSL_asprintf(&b, "%s/%08" PRIx32 ".%s%d", ent->dir, h, postfix, + k) == -1) { + OPENSSL_PUT_ERROR(X509, ERR_R_BUF_LIB); + b = nullptr; + goto finish; + } if (type == X509_LU_X509) { - if ((X509_load_cert_file(xl, b->data, ent->dir_type)) == 0) { + if ((X509_load_cert_file(xl, b, ent->dir_type)) == 0) { // Don't expose the lower level error, All of these boil // down to "we could not find a CA". ERR_clear_error(); break; } } else if (type == X509_LU_CRL) { - if ((X509_load_crl_file(xl, b->data, ent->dir_type)) == 0) { + if ((X509_load_crl_file(xl, b, ent->dir_type)) == 0) { // Don't expose the lower level error, All of these boil // down to "we could not find a CRL". ERR_clear_error(); @@ -347,7 +341,7 @@ static int get_cert_by_subject(X509_LOOKUP *xl, int type, X509_NAME *name, } } finish: - BUF_MEM_free(b); + OPENSSL_free(b); return ok; } From 508d5b3483e31ee1e72e7a29ab2a9fee61ce7d4d Mon Sep 17 00:00:00 2001 From: Bob Beck Date: Mon, 6 Jan 2025 23:28:10 +0000 Subject: [PATCH 29/64] replace manual alloction math and srlcats with asprintf Change-Id: I94077581037372ea658e60b86b05fa977e1c3ac6 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74868 Commit-Queue: Bob Beck Reviewed-by: Adam Langley --- crypto/x509/v3_info.cc | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/crypto/x509/v3_info.cc b/crypto/x509/v3_info.cc index ca52d014ee..79a9194d5d 100644 --- a/crypto/x509/v3_info.cc +++ b/crypto/x509/v3_info.cc @@ -80,7 +80,6 @@ static STACK_OF(CONF_VALUE) *i2v_AUTHORITY_INFO_ACCESS( const AUTHORITY_INFO_ACCESS *ainfo = reinterpret_cast(ext); ACCESS_DESCRIPTION *desc; - int name_len; char objtmp[80], *name; CONF_VALUE *vtmp; STACK_OF(CONF_VALUE) *tret = ret; @@ -97,14 +96,9 @@ static STACK_OF(CONF_VALUE) *i2v_AUTHORITY_INFO_ACCESS( vtmp = sk_CONF_VALUE_value(tret, i); i2t_ASN1_OBJECT(objtmp, sizeof objtmp, desc->method); - name_len = strlen(objtmp) + 3 + strlen(vtmp->name) + 1; - name = reinterpret_cast(OPENSSL_malloc(name_len)); - if (name == NULL) { + if (OPENSSL_asprintf(&name, "%s - %s", objtmp, vtmp->name) == -1) { goto err; } - OPENSSL_strlcpy(name, objtmp, name_len); - OPENSSL_strlcat(name, " - ", name_len); - OPENSSL_strlcat(name, vtmp->name, name_len); OPENSSL_free(vtmp->name); vtmp->name = name; } From 950b1659d3143a8d2c7099aee5c8db6bf27616c2 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Mon, 6 Jan 2025 19:29:00 -0500 Subject: [PATCH 30/64] Remove out directories in pki test data I think this was not supposed to be checked in. The generate scripts tend to drop things extra files into an out directory, but for better or worse, we don't actually end up checking them in. (They're not in the corresponding files in Chromium.) Probably these were lying around in the worktree at the time. Change-Id: Ibc423ce316ecdf2b4b62a4513d228618ff88bc67 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74830 Reviewed-by: Bob Beck Commit-Queue: David Benjamin --- ...2FABB43DDCC077802A0309AD437402BF98D8D4.pem | 705 --- ...2FABB43DDCC077802A0309AD437402BF98D8D5.pem | 344 -- ...2FABB43DDCC077802A0309AD437402BF98D8D6.pem | 325 -- ...2FABB43DDCC077802A0309AD437402BF98D8D7.pem | 220 - ...2FABB43DDCC077802A0309AD437402BF98D8D8.pem | 496 -- ...2FABB43DDCC077802A0309AD437402BF98D8D9.pem | 325 -- ...2FABB43DDCC077802A0309AD437402BF98D8DA.pem | 220 - ...2FABB43DDCC077802A0309AD437402BF98D8DB.pem | 496 -- ...E5FC818859A85016C17FD7E52AE5967FC2F6F5.pem | 89 - ...E5FC818859A85016C17FD7E52AE5967FC2F6F6.pem | 4294 ----------------- ...E5FC818859A85016C17FD7E52AE5967FC2F6F7.pem | 1437 ------ ...E5FC818859A85016C17FD7E52AE5967FC2F6F8.pem | 1394 ------ ...E5FC818859A85016C17FD7E52AE5967FC2F6F9.pem | 1374 ------ ...E5FC818859A85016C17FD7E52AE5967FC2F6FA.pem | 1564 ------ ...E5FC818859A85016C17FD7E52AE5967FC2F6FB.pem | 1394 ------ ...E5FC818859A85016C17FD7E52AE5967FC2F6FC.pem | 1374 ------ ...E5FC818859A85016C17FD7E52AE5967FC2F6FD.pem | 1564 ------ .../many-names/out/Intermediate.cnf | 4167 ---------------- .../many-names/out/Intermediate.csr | 1144 ----- .../many-names/out/Intermediate.db | 8 - .../many-names/out/Intermediate.db.attr | 1 - .../many-names/out/Intermediate.db.attr.old | 1 - .../many-names/out/Intermediate.db.old | 7 - .../many-names/out/Intermediate.pem | 4294 ----------------- .../many-names/out/Intermediate.serial | 1 - .../many-names/out/Intermediate.serial.old | 1 - .../many-names/out/Intermediate_1.cnf | 2118 -------- .../many-names/out/Intermediate_1.csr | 336 -- .../many-names/out/Intermediate_1.pem | 1437 ------ .../many-names/out/Intermediate_2.cnf | 1092 ----- .../many-names/out/Intermediate_2.csr | 293 -- .../many-names/out/Intermediate_2.pem | 1394 ------ .../many-names/out/Intermediate_3.cnf | 1092 ----- .../many-names/out/Intermediate_3.csr | 274 -- .../many-names/out/Intermediate_3.pem | 1374 ------ .../many-names/out/Intermediate_4.cnf | 4167 ---------------- .../many-names/out/Intermediate_4.csr | 464 -- .../many-names/out/Intermediate_4.pem | 1564 ------ .../many-names/out/Intermediate_5.cnf | 1092 ----- .../many-names/out/Intermediate_5.csr | 293 -- .../many-names/out/Intermediate_5.pem | 1394 ------ .../many-names/out/Intermediate_6.cnf | 1092 ----- .../many-names/out/Intermediate_6.csr | 274 -- .../many-names/out/Intermediate_6.pem | 1374 ------ .../many-names/out/Intermediate_7.cnf | 4167 ---------------- .../many-names/out/Intermediate_7.csr | 464 -- .../many-names/out/Intermediate_7.pem | 1564 ------ .../many-names/out/Root.cnf | 64 - .../many-names/out/Root.csr | 17 - .../many-names/out/Root.db | 9 - .../many-names/out/Root.db.attr | 1 - .../many-names/out/Root.db.attr.old | 1 - .../many-names/out/Root.db.old | 8 - .../many-names/out/Root.pem | 89 - .../many-names/out/Root.serial | 1 - .../many-names/out/Root.serial.old | 1 - .../many-names/out/t0.cnf | 3142 ------------ .../many-names/out/t0.csr | 630 --- .../many-names/out/t0.db | 0 .../many-names/out/t0.pem | 705 --- .../many-names/out/t0.serial | 1 - .../many-names/out/t0_1.cnf | 2114 -------- .../many-names/out/t0_1.csr | 269 -- .../many-names/out/t0_1.pem | 344 -- .../many-names/out/t0_2.cnf | 1091 ----- .../many-names/out/t0_2.csr | 250 - .../many-names/out/t0_2.pem | 325 -- .../many-names/out/t0_3.cnf | 1091 ----- .../many-names/out/t0_3.csr | 145 - .../many-names/out/t0_3.pem | 220 - .../many-names/out/t0_4.cnf | 4163 ---------------- .../many-names/out/t0_4.csr | 421 -- .../many-names/out/t0_4.pem | 496 -- .../many-names/out/t0_5.cnf | 1091 ----- .../many-names/out/t0_5.csr | 250 - .../many-names/out/t0_5.pem | 325 -- .../many-names/out/t0_6.cnf | 1091 ----- .../many-names/out/t0_6.csr | 145 - .../many-names/out/t0_6.pem | 220 - .../many-names/out/t0_7.cnf | 4163 ---------------- .../many-names/out/t0_7.csr | 421 -- .../many-names/out/t0_7.pem | 496 -- ...1D2B1D127E34B62B61B278F274669ADC66ADCC.pem | 91 - ...F49EE7B5F73630C9845EA5B8398B58F3237B18.pem | 89 - ...F49EE7B5F73630C9845EA5B8398B58F3237B19.pem | 89 - .../target-eku-many/out/Intermediate.cnf | 64 - .../target-eku-many/out/Intermediate.csr | 17 - .../target-eku-many/out/Intermediate.db | 1 - .../target-eku-many/out/Intermediate.db.attr | 1 - .../target-eku-many/out/Intermediate.db.old | 0 .../target-eku-many/out/Intermediate.pem | 89 - .../target-eku-many/out/Intermediate.serial | 1 - .../out/Intermediate.serial.old | 1 - .../target-eku-many/out/Issuer.db | 0 .../target-eku-many/out/Issuer.serial | 1 - .../target-eku-many/out/Root.cnf | 64 - .../target-eku-many/out/Root.csr | 17 - .../target-eku-many/out/Root.db | 2 - .../target-eku-many/out/Root.db.attr | 1 - .../target-eku-many/out/Root.db.attr.old | 1 - .../target-eku-many/out/Root.db.old | 1 - .../target-eku-many/out/Root.pem | 89 - .../target-eku-many/out/Root.serial | 1 - .../target-eku-many/out/Root.serial.old | 1 - .../target-eku-many/out/Target.cnf | 64 - .../target-eku-many/out/Target.csr | 18 - .../target-eku-many/out/Target.db | 0 .../target-eku-many/out/Target.pem | 91 - .../target-eku-many/out/Target.serial | 1 - 109 files changed, 79153 deletions(-) delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D4.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D5.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D6.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D7.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D8.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D9.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8DA.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8DB.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F5.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F6.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F7.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F8.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F9.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FA.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FB.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FC.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FD.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.attr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.attr.old delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.old delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.serial delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.serial.old delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.attr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.attr.old delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.old delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.serial delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.serial.old delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.db delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.serial delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/3F1D2B1D127E34B62B61B278F274669ADC66ADCC.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/71F49EE7B5F73630C9845EA5B8398B58F3237B18.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/71F49EE7B5F73630C9845EA5B8398B58F3237B19.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.db delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.db.attr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.db.old delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.serial delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.serial.old delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Issuer.db delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Issuer.serial delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.attr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.attr.old delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.old delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.serial delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.serial.old delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.cnf delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.csr delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.db delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.pem delete mode 100644 pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.serial diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D4.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D4.pem deleted file mode 100644 index c59ddf7a5e..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D4.pem +++ /dev/null @@ -1,705 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d4 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DNS:t0.test, DNS:t1.test, DNS:t2.test, DNS:t3.test, DNS:t4.test, DNS:t5.test, DNS:t6.test, DNS:t7.test, DNS:t8.test, DNS:t9.test, DNS:t10.test, DNS:t11.test, DNS:t12.test, DNS:t13.test, DNS:t14.test, DNS:t15.test, DNS:t16.test, DNS:t17.test, DNS:t18.test, DNS:t19.test, DNS:t20.test, DNS:t21.test, DNS:t22.test, DNS:t23.test, DNS:t24.test, DNS:t25.test, DNS:t26.test, DNS:t27.test, DNS:t28.test, DNS:t29.test, DNS:t30.test, DNS:t31.test, DNS:t32.test, DNS:t33.test, DNS:t34.test, DNS:t35.test, DNS:t36.test, DNS:t37.test, DNS:t38.test, DNS:t39.test, DNS:t40.test, DNS:t41.test, DNS:t42.test, DNS:t43.test, DNS:t44.test, DNS:t45.test, DNS:t46.test, DNS:t47.test, DNS:t48.test, DNS:t49.test, DNS:t50.test, DNS:t51.test, DNS:t52.test, DNS:t53.test, DNS:t54.test, DNS:t55.test, DNS:t56.test, DNS:t57.test, DNS:t58.test, DNS:t59.test, DNS:t60.test, DNS:t61.test, DNS:t62.test, DNS:t63.test, DNS:t64.test, DNS:t65.test, DNS:t66.test, DNS:t67.test, DNS:t68.test, DNS:t69.test, DNS:t70.test, DNS:t71.test, DNS:t72.test, DNS:t73.test, DNS:t74.test, DNS:t75.test, DNS:t76.test, DNS:t77.test, DNS:t78.test, DNS:t79.test, DNS:t80.test, DNS:t81.test, DNS:t82.test, DNS:t83.test, DNS:t84.test, DNS:t85.test, DNS:t86.test, DNS:t87.test, DNS:t88.test, DNS:t89.test, DNS:t90.test, DNS:t91.test, DNS:t92.test, DNS:t93.test, DNS:t94.test, DNS:t95.test, DNS:t96.test, DNS:t97.test, DNS:t98.test, DNS:t99.test, DNS:t100.test, DNS:t101.test, DNS:t102.test, DNS:t103.test, DNS:t104.test, DNS:t105.test, DNS:t106.test, DNS:t107.test, DNS:t108.test, DNS:t109.test, DNS:t110.test, DNS:t111.test, DNS:t112.test, DNS:t113.test, DNS:t114.test, DNS:t115.test, DNS:t116.test, DNS:t117.test, DNS:t118.test, DNS:t119.test, DNS:t120.test, DNS:t121.test, DNS:t122.test, DNS:t123.test, DNS:t124.test, DNS:t125.test, DNS:t126.test, DNS:t127.test, DNS:t128.test, DNS:t129.test, DNS:t130.test, DNS:t131.test, DNS:t132.test, DNS:t133.test, DNS:t134.test, DNS:t135.test, DNS:t136.test, DNS:t137.test, DNS:t138.test, DNS:t139.test, DNS:t140.test, DNS:t141.test, DNS:t142.test, DNS:t143.test, DNS:t144.test, DNS:t145.test, DNS:t146.test, DNS:t147.test, DNS:t148.test, DNS:t149.test, DNS:t150.test, DNS:t151.test, DNS:t152.test, DNS:t153.test, DNS:t154.test, DNS:t155.test, DNS:t156.test, DNS:t157.test, DNS:t158.test, DNS:t159.test, DNS:t160.test, DNS:t161.test, DNS:t162.test, DNS:t163.test, DNS:t164.test, DNS:t165.test, DNS:t166.test, DNS:t167.test, DNS:t168.test, DNS:t169.test, DNS:t170.test, DNS:t171.test, DNS:t172.test, DNS:t173.test, DNS:t174.test, DNS:t175.test, DNS:t176.test, DNS:t177.test, DNS:t178.test, DNS:t179.test, DNS:t180.test, DNS:t181.test, DNS:t182.test, DNS:t183.test, DNS:t184.test, DNS:t185.test, DNS:t186.test, DNS:t187.test, DNS:t188.test, DNS:t189.test, DNS:t190.test, DNS:t191.test, DNS:t192.test, DNS:t193.test, DNS:t194.test, DNS:t195.test, DNS:t196.test, DNS:t197.test, DNS:t198.test, DNS:t199.test, DNS:t200.test, DNS:t201.test, DNS:t202.test, DNS:t203.test, DNS:t204.test, DNS:t205.test, DNS:t206.test, DNS:t207.test, DNS:t208.test, DNS:t209.test, DNS:t210.test, DNS:t211.test, DNS:t212.test, DNS:t213.test, DNS:t214.test, DNS:t215.test, DNS:t216.test, DNS:t217.test, DNS:t218.test, DNS:t219.test, DNS:t220.test, DNS:t221.test, DNS:t222.test, DNS:t223.test, DNS:t224.test, DNS:t225.test, DNS:t226.test, DNS:t227.test, DNS:t228.test, DNS:t229.test, DNS:t230.test, DNS:t231.test, DNS:t232.test, DNS:t233.test, DNS:t234.test, DNS:t235.test, DNS:t236.test, DNS:t237.test, DNS:t238.test, DNS:t239.test, DNS:t240.test, DNS:t241.test, DNS:t242.test, DNS:t243.test, DNS:t244.test, DNS:t245.test, DNS:t246.test, DNS:t247.test, DNS:t248.test, DNS:t249.test, DNS:t250.test, DNS:t251.test, DNS:t252.test, DNS:t253.test, DNS:t254.test, DNS:t255.test, DNS:t256.test, DNS:t257.test, DNS:t258.test, DNS:t259.test, DNS:t260.test, DNS:t261.test, DNS:t262.test, DNS:t263.test, DNS:t264.test, DNS:t265.test, DNS:t266.test, DNS:t267.test, DNS:t268.test, DNS:t269.test, DNS:t270.test, DNS:t271.test, DNS:t272.test, DNS:t273.test, DNS:t274.test, DNS:t275.test, DNS:t276.test, DNS:t277.test, DNS:t278.test, DNS:t279.test, DNS:t280.test, DNS:t281.test, DNS:t282.test, DNS:t283.test, DNS:t284.test, DNS:t285.test, DNS:t286.test, DNS:t287.test, DNS:t288.test, DNS:t289.test, DNS:t290.test, DNS:t291.test, DNS:t292.test, DNS:t293.test, DNS:t294.test, DNS:t295.test, DNS:t296.test, DNS:t297.test, DNS:t298.test, DNS:t299.test, DNS:t300.test, DNS:t301.test, DNS:t302.test, DNS:t303.test, DNS:t304.test, DNS:t305.test, DNS:t306.test, DNS:t307.test, DNS:t308.test, DNS:t309.test, DNS:t310.test, DNS:t311.test, DNS:t312.test, DNS:t313.test, DNS:t314.test, DNS:t315.test, DNS:t316.test, DNS:t317.test, DNS:t318.test, DNS:t319.test, DNS:t320.test, DNS:t321.test, DNS:t322.test, DNS:t323.test, DNS:t324.test, DNS:t325.test, DNS:t326.test, DNS:t327.test, DNS:t328.test, DNS:t329.test, DNS:t330.test, DNS:t331.test, DNS:t332.test, DNS:t333.test, DNS:t334.test, DNS:t335.test, DNS:t336.test, DNS:t337.test, DNS:t338.test, DNS:t339.test, DNS:t340.test, IP Address:10.0.0.0, IP Address:10.0.0.1, IP Address:10.0.0.2, IP Address:10.0.0.3, IP Address:10.0.0.4, IP Address:10.0.0.5, IP Address:10.0.0.6, IP Address:10.0.0.7, IP Address:10.0.0.8, IP Address:10.0.0.9, IP Address:10.0.0.10, IP Address:10.0.0.11, IP Address:10.0.0.12, IP Address:10.0.0.13, IP Address:10.0.0.14, IP Address:10.0.0.15, IP Address:10.0.0.16, IP Address:10.0.0.17, IP Address:10.0.0.18, IP Address:10.0.0.19, IP Address:10.0.0.20, IP Address:10.0.0.21, IP Address:10.0.0.22, IP Address:10.0.0.23, IP Address:10.0.0.24, IP Address:10.0.0.25, IP Address:10.0.0.26, IP Address:10.0.0.27, IP Address:10.0.0.28, IP Address:10.0.0.29, IP Address:10.0.0.30, IP Address:10.0.0.31, IP Address:10.0.0.32, IP Address:10.0.0.33, IP Address:10.0.0.34, IP Address:10.0.0.35, IP Address:10.0.0.36, IP Address:10.0.0.37, IP Address:10.0.0.38, IP Address:10.0.0.39, IP Address:10.0.0.40, IP Address:10.0.0.41, IP Address:10.0.0.42, IP Address:10.0.0.43, IP Address:10.0.0.44, IP Address:10.0.0.45, IP Address:10.0.0.46, IP Address:10.0.0.47, IP Address:10.0.0.48, IP Address:10.0.0.49, IP Address:10.0.0.50, IP Address:10.0.0.51, IP Address:10.0.0.52, IP Address:10.0.0.53, IP Address:10.0.0.54, IP Address:10.0.0.55, IP Address:10.0.0.56, IP Address:10.0.0.57, IP Address:10.0.0.58, IP Address:10.0.0.59, IP Address:10.0.0.60, IP Address:10.0.0.61, IP Address:10.0.0.62, IP Address:10.0.0.63, IP Address:10.0.0.64, IP Address:10.0.0.65, IP Address:10.0.0.66, IP Address:10.0.0.67, IP Address:10.0.0.68, IP Address:10.0.0.69, IP Address:10.0.0.70, IP Address:10.0.0.71, IP Address:10.0.0.72, IP Address:10.0.0.73, IP Address:10.0.0.74, IP Address:10.0.0.75, IP Address:10.0.0.76, IP Address:10.0.0.77, IP Address:10.0.0.78, IP Address:10.0.0.79, IP Address:10.0.0.80, IP Address:10.0.0.81, IP Address:10.0.0.82, IP Address:10.0.0.83, IP Address:10.0.0.84, IP Address:10.0.0.85, IP Address:10.0.0.86, IP Address:10.0.0.87, IP Address:10.0.0.88, IP Address:10.0.0.89, IP Address:10.0.0.90, IP Address:10.0.0.91, IP Address:10.0.0.92, IP Address:10.0.0.93, IP Address:10.0.0.94, IP Address:10.0.0.95, IP Address:10.0.0.96, IP Address:10.0.0.97, IP Address:10.0.0.98, IP Address:10.0.0.99, IP Address:10.0.0.100, IP Address:10.0.0.101, IP Address:10.0.0.102, IP Address:10.0.0.103, IP Address:10.0.0.104, IP Address:10.0.0.105, IP Address:10.0.0.106, IP Address:10.0.0.107, IP Address:10.0.0.108, IP Address:10.0.0.109, IP Address:10.0.0.110, IP Address:10.0.0.111, IP Address:10.0.0.112, IP Address:10.0.0.113, IP Address:10.0.0.114, IP Address:10.0.0.115, IP Address:10.0.0.116, IP Address:10.0.0.117, IP Address:10.0.0.118, IP Address:10.0.0.119, IP Address:10.0.0.120, IP Address:10.0.0.121, IP Address:10.0.0.122, IP Address:10.0.0.123, IP Address:10.0.0.124, IP Address:10.0.0.125, IP Address:10.0.0.126, IP Address:10.0.0.127, IP Address:10.0.0.128, IP Address:10.0.0.129, IP Address:10.0.0.130, IP Address:10.0.0.131, IP Address:10.0.0.132, IP Address:10.0.0.133, IP Address:10.0.0.134, IP Address:10.0.0.135, IP Address:10.0.0.136, IP Address:10.0.0.137, IP Address:10.0.0.138, IP Address:10.0.0.139, IP Address:10.0.0.140, IP Address:10.0.0.141, IP Address:10.0.0.142, IP Address:10.0.0.143, IP Address:10.0.0.144, IP Address:10.0.0.145, IP Address:10.0.0.146, IP Address:10.0.0.147, IP Address:10.0.0.148, IP Address:10.0.0.149, IP Address:10.0.0.150, IP Address:10.0.0.151, IP Address:10.0.0.152, IP Address:10.0.0.153, IP Address:10.0.0.154, IP Address:10.0.0.155, IP Address:10.0.0.156, IP Address:10.0.0.157, IP Address:10.0.0.158, IP Address:10.0.0.159, IP Address:10.0.0.160, IP Address:10.0.0.161, IP Address:10.0.0.162, IP Address:10.0.0.163, IP Address:10.0.0.164, IP Address:10.0.0.165, IP Address:10.0.0.166, IP Address:10.0.0.167, IP Address:10.0.0.168, IP Address:10.0.0.169, IP Address:10.0.0.170, IP Address:10.0.0.171, IP Address:10.0.0.172, IP Address:10.0.0.173, IP Address:10.0.0.174, IP Address:10.0.0.175, IP Address:10.0.0.176, IP Address:10.0.0.177, IP Address:10.0.0.178, IP Address:10.0.0.179, IP Address:10.0.0.180, IP Address:10.0.0.181, IP Address:10.0.0.182, IP Address:10.0.0.183, IP Address:10.0.0.184, IP Address:10.0.0.185, IP Address:10.0.0.186, IP Address:10.0.0.187, IP Address:10.0.0.188, IP Address:10.0.0.189, IP Address:10.0.0.190, IP Address:10.0.0.191, IP Address:10.0.0.192, IP Address:10.0.0.193, IP Address:10.0.0.194, IP Address:10.0.0.195, IP Address:10.0.0.196, IP Address:10.0.0.197, IP Address:10.0.0.198, IP Address:10.0.0.199, IP Address:10.0.0.200, IP Address:10.0.0.201, IP Address:10.0.0.202, IP Address:10.0.0.203, IP Address:10.0.0.204, IP Address:10.0.0.205, IP Address:10.0.0.206, IP Address:10.0.0.207, IP Address:10.0.0.208, IP Address:10.0.0.209, IP Address:10.0.0.210, IP Address:10.0.0.211, IP Address:10.0.0.212, IP Address:10.0.0.213, IP Address:10.0.0.214, IP Address:10.0.0.215, IP Address:10.0.0.216, IP Address:10.0.0.217, IP Address:10.0.0.218, IP Address:10.0.0.219, IP Address:10.0.0.220, IP Address:10.0.0.221, IP Address:10.0.0.222, IP Address:10.0.0.223, IP Address:10.0.0.224, IP Address:10.0.0.225, IP Address:10.0.0.226, IP Address:10.0.0.227, IP Address:10.0.0.228, IP Address:10.0.0.229, IP Address:10.0.0.230, IP Address:10.0.0.231, IP Address:10.0.0.232, IP Address:10.0.0.233, IP Address:10.0.0.234, IP Address:10.0.0.235, IP Address:10.0.0.236, IP Address:10.0.0.237, IP Address:10.0.0.238, IP Address:10.0.0.239, IP Address:10.0.0.240, IP Address:10.0.0.241, IP Address:10.0.0.242, IP Address:10.0.0.243, IP Address:10.0.0.244, IP Address:10.0.0.245, IP Address:10.0.0.246, IP Address:10.0.0.247, IP Address:10.0.0.248, IP Address:10.0.0.249, IP Address:10.0.0.250, IP Address:10.0.0.251, IP Address:10.0.0.252, IP Address:10.0.0.253, IP Address:10.0.0.254, IP Address:10.0.0.255, IP Address:10.0.1.0, IP Address:10.0.1.1, IP Address:10.0.1.2, IP Address:10.0.1.3, IP Address:10.0.1.4, IP Address:10.0.1.5, IP Address:10.0.1.6, IP Address:10.0.1.7, IP Address:10.0.1.8, IP Address:10.0.1.9, IP Address:10.0.1.10, IP Address:10.0.1.11, IP Address:10.0.1.12, IP Address:10.0.1.13, IP Address:10.0.1.14, IP Address:10.0.1.15, IP Address:10.0.1.16, IP Address:10.0.1.17, IP Address:10.0.1.18, IP Address:10.0.1.19, IP Address:10.0.1.20, IP Address:10.0.1.21, IP Address:10.0.1.22, IP Address:10.0.1.23, IP Address:10.0.1.24, IP Address:10.0.1.25, IP Address:10.0.1.26, IP Address:10.0.1.27, IP Address:10.0.1.28, IP Address:10.0.1.29, IP Address:10.0.1.30, IP Address:10.0.1.31, IP Address:10.0.1.32, IP Address:10.0.1.33, IP Address:10.0.1.34, IP Address:10.0.1.35, IP Address:10.0.1.36, IP Address:10.0.1.37, IP Address:10.0.1.38, IP Address:10.0.1.39, IP Address:10.0.1.40, IP Address:10.0.1.41, IP Address:10.0.1.42, IP Address:10.0.1.43, IP Address:10.0.1.44, IP Address:10.0.1.45, IP Address:10.0.1.46, IP Address:10.0.1.47, IP Address:10.0.1.48, IP Address:10.0.1.49, IP Address:10.0.1.50, IP Address:10.0.1.51, IP Address:10.0.1.52, IP Address:10.0.1.53, IP Address:10.0.1.54, IP Address:10.0.1.55, IP Address:10.0.1.56, IP Address:10.0.1.57, IP Address:10.0.1.58, IP Address:10.0.1.59, IP Address:10.0.1.60, IP Address:10.0.1.61, IP Address:10.0.1.62, IP Address:10.0.1.63, IP Address:10.0.1.64, IP Address:10.0.1.65, IP Address:10.0.1.66, IP Address:10.0.1.67, IP Address:10.0.1.68, IP Address:10.0.1.69, IP Address:10.0.1.70, IP Address:10.0.1.71, IP Address:10.0.1.72, IP Address:10.0.1.73, IP Address:10.0.1.74, IP Address:10.0.1.75, IP Address:10.0.1.76, IP Address:10.0.1.77, IP Address:10.0.1.78, IP Address:10.0.1.79, IP Address:10.0.1.80, IP Address:10.0.1.81, IP Address:10.0.1.82, IP Address:10.0.1.83, IP Address:10.0.1.84, DirName:/CN=t0, DirName:/CN=t1, DirName:/CN=t2, DirName:/CN=t3, DirName:/CN=t4, DirName:/CN=t5, DirName:/CN=t6, DirName:/CN=t7, DirName:/CN=t8, DirName:/CN=t9, DirName:/CN=t10, DirName:/CN=t11, DirName:/CN=t12, DirName:/CN=t13, DirName:/CN=t14, DirName:/CN=t15, DirName:/CN=t16, DirName:/CN=t17, DirName:/CN=t18, DirName:/CN=t19, DirName:/CN=t20, DirName:/CN=t21, DirName:/CN=t22, DirName:/CN=t23, DirName:/CN=t24, DirName:/CN=t25, DirName:/CN=t26, DirName:/CN=t27, DirName:/CN=t28, DirName:/CN=t29, DirName:/CN=t30, DirName:/CN=t31, DirName:/CN=t32, DirName:/CN=t33, DirName:/CN=t34, DirName:/CN=t35, DirName:/CN=t36, DirName:/CN=t37, DirName:/CN=t38, DirName:/CN=t39, DirName:/CN=t40, DirName:/CN=t41, DirName:/CN=t42, DirName:/CN=t43, DirName:/CN=t44, DirName:/CN=t45, DirName:/CN=t46, DirName:/CN=t47, DirName:/CN=t48, DirName:/CN=t49, DirName:/CN=t50, DirName:/CN=t51, DirName:/CN=t52, DirName:/CN=t53, DirName:/CN=t54, DirName:/CN=t55, DirName:/CN=t56, DirName:/CN=t57, DirName:/CN=t58, DirName:/CN=t59, DirName:/CN=t60, DirName:/CN=t61, DirName:/CN=t62, DirName:/CN=t63, DirName:/CN=t64, DirName:/CN=t65, DirName:/CN=t66, DirName:/CN=t67, DirName:/CN=t68, DirName:/CN=t69, DirName:/CN=t70, DirName:/CN=t71, DirName:/CN=t72, DirName:/CN=t73, DirName:/CN=t74, DirName:/CN=t75, DirName:/CN=t76, DirName:/CN=t77, DirName:/CN=t78, DirName:/CN=t79, DirName:/CN=t80, DirName:/CN=t81, DirName:/CN=t82, DirName:/CN=t83, DirName:/CN=t84, DirName:/CN=t85, DirName:/CN=t86, DirName:/CN=t87, DirName:/CN=t88, DirName:/CN=t89, DirName:/CN=t90, DirName:/CN=t91, DirName:/CN=t92, DirName:/CN=t93, DirName:/CN=t94, DirName:/CN=t95, DirName:/CN=t96, DirName:/CN=t97, DirName:/CN=t98, DirName:/CN=t99, DirName:/CN=t100, DirName:/CN=t101, DirName:/CN=t102, DirName:/CN=t103, DirName:/CN=t104, DirName:/CN=t105, DirName:/CN=t106, DirName:/CN=t107, DirName:/CN=t108, DirName:/CN=t109, DirName:/CN=t110, DirName:/CN=t111, DirName:/CN=t112, DirName:/CN=t113, DirName:/CN=t114, DirName:/CN=t115, DirName:/CN=t116, DirName:/CN=t117, DirName:/CN=t118, DirName:/CN=t119, DirName:/CN=t120, DirName:/CN=t121, DirName:/CN=t122, DirName:/CN=t123, DirName:/CN=t124, DirName:/CN=t125, DirName:/CN=t126, DirName:/CN=t127, DirName:/CN=t128, DirName:/CN=t129, DirName:/CN=t130, DirName:/CN=t131, DirName:/CN=t132, DirName:/CN=t133, DirName:/CN=t134, DirName:/CN=t135, DirName:/CN=t136, DirName:/CN=t137, DirName:/CN=t138, DirName:/CN=t139, DirName:/CN=t140, DirName:/CN=t141, DirName:/CN=t142, DirName:/CN=t143, DirName:/CN=t144, DirName:/CN=t145, DirName:/CN=t146, DirName:/CN=t147, DirName:/CN=t148, DirName:/CN=t149, DirName:/CN=t150, DirName:/CN=t151, DirName:/CN=t152, DirName:/CN=t153, DirName:/CN=t154, DirName:/CN=t155, DirName:/CN=t156, DirName:/CN=t157, DirName:/CN=t158, DirName:/CN=t159, DirName:/CN=t160, DirName:/CN=t161, DirName:/CN=t162, DirName:/CN=t163, DirName:/CN=t164, DirName:/CN=t165, DirName:/CN=t166, DirName:/CN=t167, DirName:/CN=t168, DirName:/CN=t169, DirName:/CN=t170, DirName:/CN=t171, DirName:/CN=t172, DirName:/CN=t173, DirName:/CN=t174, DirName:/CN=t175, DirName:/CN=t176, DirName:/CN=t177, DirName:/CN=t178, DirName:/CN=t179, DirName:/CN=t180, DirName:/CN=t181, DirName:/CN=t182, DirName:/CN=t183, DirName:/CN=t184, DirName:/CN=t185, DirName:/CN=t186, DirName:/CN=t187, DirName:/CN=t188, DirName:/CN=t189, DirName:/CN=t190, DirName:/CN=t191, DirName:/CN=t192, DirName:/CN=t193, DirName:/CN=t194, DirName:/CN=t195, DirName:/CN=t196, DirName:/CN=t197, DirName:/CN=t198, DirName:/CN=t199, DirName:/CN=t200, DirName:/CN=t201, DirName:/CN=t202, DirName:/CN=t203, DirName:/CN=t204, DirName:/CN=t205, DirName:/CN=t206, DirName:/CN=t207, DirName:/CN=t208, DirName:/CN=t209, DirName:/CN=t210, DirName:/CN=t211, DirName:/CN=t212, DirName:/CN=t213, DirName:/CN=t214, DirName:/CN=t215, DirName:/CN=t216, DirName:/CN=t217, DirName:/CN=t218, DirName:/CN=t219, DirName:/CN=t220, DirName:/CN=t221, DirName:/CN=t222, DirName:/CN=t223, DirName:/CN=t224, DirName:/CN=t225, DirName:/CN=t226, DirName:/CN=t227, DirName:/CN=t228, DirName:/CN=t229, DirName:/CN=t230, DirName:/CN=t231, DirName:/CN=t232, DirName:/CN=t233, DirName:/CN=t234, DirName:/CN=t235, DirName:/CN=t236, DirName:/CN=t237, DirName:/CN=t238, DirName:/CN=t239, DirName:/CN=t240, DirName:/CN=t241, DirName:/CN=t242, DirName:/CN=t243, DirName:/CN=t244, DirName:/CN=t245, DirName:/CN=t246, DirName:/CN=t247, DirName:/CN=t248, DirName:/CN=t249, DirName:/CN=t250, DirName:/CN=t251, DirName:/CN=t252, DirName:/CN=t253, DirName:/CN=t254, DirName:/CN=t255, DirName:/CN=t256, DirName:/CN=t257, DirName:/CN=t258, DirName:/CN=t259, DirName:/CN=t260, DirName:/CN=t261, DirName:/CN=t262, DirName:/CN=t263, DirName:/CN=t264, DirName:/CN=t265, DirName:/CN=t266, DirName:/CN=t267, DirName:/CN=t268, DirName:/CN=t269, DirName:/CN=t270, DirName:/CN=t271, DirName:/CN=t272, DirName:/CN=t273, DirName:/CN=t274, DirName:/CN=t275, DirName:/CN=t276, DirName:/CN=t277, DirName:/CN=t278, DirName:/CN=t279, DirName:/CN=t280, DirName:/CN=t281, DirName:/CN=t282, DirName:/CN=t283, DirName:/CN=t284, DirName:/CN=t285, DirName:/CN=t286, DirName:/CN=t287, DirName:/CN=t288, DirName:/CN=t289, DirName:/CN=t290, DirName:/CN=t291, DirName:/CN=t292, DirName:/CN=t293, DirName:/CN=t294, DirName:/CN=t295, DirName:/CN=t296, DirName:/CN=t297, DirName:/CN=t298, DirName:/CN=t299, DirName:/CN=t300, DirName:/CN=t301, DirName:/CN=t302, DirName:/CN=t303, DirName:/CN=t304, DirName:/CN=t305, DirName:/CN=t306, DirName:/CN=t307, DirName:/CN=t308, DirName:/CN=t309, DirName:/CN=t310, DirName:/CN=t311, DirName:/CN=t312, DirName:/CN=t313, DirName:/CN=t314, DirName:/CN=t315, DirName:/CN=t316, DirName:/CN=t317, DirName:/CN=t318, DirName:/CN=t319, DirName:/CN=t320, DirName:/CN=t321, DirName:/CN=t322, DirName:/CN=t323, DirName:/CN=t324, DirName:/CN=t325, DirName:/CN=t326, DirName:/CN=t327, DirName:/CN=t328, DirName:/CN=t329, DirName:/CN=t330, DirName:/CN=t331, DirName:/CN=t332, DirName:/CN=t333, DirName:/CN=t334, DirName:/CN=t335, DirName:/CN=t336, DirName:/CN=t337, DirName:/CN=t338, DirName:/CN=t339, DirName:/CN=t340, DirName:/CN=t341, URI:http://test/0, URI:http://test/1, URI:http://test/2, URI:http://test/3, URI:http://test/4, URI:http://test/5, URI:http://test/6, URI:http://test/7, URI:http://test/8, URI:http://test/9, URI:http://test/10, URI:http://test/11, URI:http://test/12, URI:http://test/13, URI:http://test/14, URI:http://test/15, URI:http://test/16, URI:http://test/17, URI:http://test/18, URI:http://test/19, URI:http://test/20, URI:http://test/21, URI:http://test/22, URI:http://test/23, URI:http://test/24, URI:http://test/25, URI:http://test/26, URI:http://test/27, URI:http://test/28, URI:http://test/29, URI:http://test/30, URI:http://test/31, URI:http://test/32, URI:http://test/33, URI:http://test/34, URI:http://test/35, URI:http://test/36, URI:http://test/37, URI:http://test/38, URI:http://test/39, URI:http://test/40, URI:http://test/41, URI:http://test/42, URI:http://test/43, URI:http://test/44, URI:http://test/45, URI:http://test/46, URI:http://test/47, URI:http://test/48, URI:http://test/49, URI:http://test/50, URI:http://test/51, URI:http://test/52, URI:http://test/53, URI:http://test/54, URI:http://test/55, URI:http://test/56, URI:http://test/57, URI:http://test/58, URI:http://test/59, URI:http://test/60, URI:http://test/61, URI:http://test/62, URI:http://test/63, URI:http://test/64, URI:http://test/65, URI:http://test/66, URI:http://test/67, URI:http://test/68, URI:http://test/69, URI:http://test/70, URI:http://test/71, URI:http://test/72, URI:http://test/73, URI:http://test/74, URI:http://test/75, URI:http://test/76, URI:http://test/77, URI:http://test/78, URI:http://test/79, URI:http://test/80, URI:http://test/81, URI:http://test/82, URI:http://test/83, URI:http://test/84, URI:http://test/85, URI:http://test/86, URI:http://test/87, URI:http://test/88, URI:http://test/89, URI:http://test/90, URI:http://test/91, URI:http://test/92, URI:http://test/93, URI:http://test/94, URI:http://test/95, URI:http://test/96, URI:http://test/97, URI:http://test/98, URI:http://test/99, URI:http://test/100, URI:http://test/101, URI:http://test/102, URI:http://test/103, URI:http://test/104, URI:http://test/105, URI:http://test/106, URI:http://test/107, URI:http://test/108, URI:http://test/109, URI:http://test/110, URI:http://test/111, URI:http://test/112, URI:http://test/113, URI:http://test/114, URI:http://test/115, URI:http://test/116, URI:http://test/117, URI:http://test/118, URI:http://test/119, URI:http://test/120, URI:http://test/121, URI:http://test/122, URI:http://test/123, URI:http://test/124, URI:http://test/125, URI:http://test/126, URI:http://test/127, URI:http://test/128, URI:http://test/129, URI:http://test/130, URI:http://test/131, URI:http://test/132, URI:http://test/133, URI:http://test/134, URI:http://test/135, URI:http://test/136, URI:http://test/137, URI:http://test/138, URI:http://test/139, URI:http://test/140, URI:http://test/141, URI:http://test/142, URI:http://test/143, URI:http://test/144, URI:http://test/145, URI:http://test/146, URI:http://test/147, URI:http://test/148, URI:http://test/149, URI:http://test/150, URI:http://test/151, URI:http://test/152, URI:http://test/153, URI:http://test/154, URI:http://test/155, URI:http://test/156, URI:http://test/157, URI:http://test/158, URI:http://test/159, URI:http://test/160, URI:http://test/161, URI:http://test/162, URI:http://test/163, URI:http://test/164, URI:http://test/165, URI:http://test/166, URI:http://test/167, URI:http://test/168, URI:http://test/169, URI:http://test/170, URI:http://test/171, URI:http://test/172, URI:http://test/173, URI:http://test/174, URI:http://test/175, URI:http://test/176, URI:http://test/177, URI:http://test/178, URI:http://test/179, URI:http://test/180, URI:http://test/181, URI:http://test/182, URI:http://test/183, URI:http://test/184, URI:http://test/185, URI:http://test/186, URI:http://test/187, URI:http://test/188, URI:http://test/189, URI:http://test/190, URI:http://test/191, URI:http://test/192, URI:http://test/193, URI:http://test/194, URI:http://test/195, URI:http://test/196, URI:http://test/197, URI:http://test/198, URI:http://test/199, URI:http://test/200, URI:http://test/201, URI:http://test/202, URI:http://test/203, URI:http://test/204, URI:http://test/205, URI:http://test/206, URI:http://test/207, URI:http://test/208, URI:http://test/209, URI:http://test/210, URI:http://test/211, URI:http://test/212, URI:http://test/213, URI:http://test/214, URI:http://test/215, URI:http://test/216, URI:http://test/217, URI:http://test/218, URI:http://test/219, URI:http://test/220, URI:http://test/221, URI:http://test/222, URI:http://test/223, URI:http://test/224, URI:http://test/225, URI:http://test/226, URI:http://test/227, URI:http://test/228, URI:http://test/229, URI:http://test/230, URI:http://test/231, URI:http://test/232, URI:http://test/233, URI:http://test/234, URI:http://test/235, URI:http://test/236, URI:http://test/237, URI:http://test/238, URI:http://test/239, URI:http://test/240, URI:http://test/241, URI:http://test/242, URI:http://test/243, URI:http://test/244, URI:http://test/245, URI:http://test/246, URI:http://test/247, URI:http://test/248, URI:http://test/249, URI:http://test/250, URI:http://test/251, URI:http://test/252, URI:http://test/253, URI:http://test/254, URI:http://test/255, URI:http://test/256, URI:http://test/257, URI:http://test/258, URI:http://test/259, URI:http://test/260, URI:http://test/261, URI:http://test/262, URI:http://test/263, URI:http://test/264, URI:http://test/265, URI:http://test/266, URI:http://test/267, URI:http://test/268, URI:http://test/269, URI:http://test/270, URI:http://test/271, URI:http://test/272, URI:http://test/273, URI:http://test/274, URI:http://test/275, URI:http://test/276, URI:http://test/277, URI:http://test/278, URI:http://test/279, URI:http://test/280, URI:http://test/281, URI:http://test/282, URI:http://test/283, URI:http://test/284, URI:http://test/285, URI:http://test/286, URI:http://test/287, URI:http://test/288, URI:http://test/289, URI:http://test/290, URI:http://test/291, URI:http://test/292, URI:http://test/293, URI:http://test/294, URI:http://test/295, URI:http://test/296, URI:http://test/297, URI:http://test/298, URI:http://test/299, URI:http://test/300, URI:http://test/301, URI:http://test/302, URI:http://test/303, URI:http://test/304, URI:http://test/305, URI:http://test/306, URI:http://test/307, URI:http://test/308, URI:http://test/309, URI:http://test/310, URI:http://test/311, URI:http://test/312, URI:http://test/313, URI:http://test/314, URI:http://test/315, URI:http://test/316, URI:http://test/317, URI:http://test/318, URI:http://test/319, URI:http://test/320, URI:http://test/321, URI:http://test/322, URI:http://test/323, URI:http://test/324, URI:http://test/325, URI:http://test/326, URI:http://test/327, URI:http://test/328, URI:http://test/329, URI:http://test/330, URI:http://test/331, URI:http://test/332, URI:http://test/333, URI:http://test/334, URI:http://test/335, URI:http://test/336, URI:http://test/337, URI:http://test/338, URI:http://test/339, URI:http://test/340, URI:http://test/341, URI:http://test/342, URI:http://test/343, URI:http://test/344, URI:http://test/345, URI:http://test/346, URI:http://test/347, URI:http://test/348, URI:http://test/349, URI:http://test/350, URI:http://test/351, URI:http://test/352, URI:http://test/353, URI:http://test/354, URI:http://test/355, URI:http://test/356, URI:http://test/357, URI:http://test/358, URI:http://test/359, URI:http://test/360, URI:http://test/361, URI:http://test/362, URI:http://test/363, URI:http://test/364, URI:http://test/365, URI:http://test/366, URI:http://test/367, URI:http://test/368, URI:http://test/369, URI:http://test/370, URI:http://test/371, URI:http://test/372, URI:http://test/373, URI:http://test/374, URI:http://test/375, URI:http://test/376, URI:http://test/377, URI:http://test/378, URI:http://test/379, URI:http://test/380, URI:http://test/381, URI:http://test/382, URI:http://test/383, URI:http://test/384, URI:http://test/385, URI:http://test/386, URI:http://test/387, URI:http://test/388, URI:http://test/389, URI:http://test/390, URI:http://test/391, URI:http://test/392, URI:http://test/393, URI:http://test/394, URI:http://test/395, URI:http://test/396, URI:http://test/397, URI:http://test/398, URI:http://test/399, URI:http://test/400, URI:http://test/401, URI:http://test/402, URI:http://test/403, URI:http://test/404, URI:http://test/405, URI:http://test/406, URI:http://test/407, URI:http://test/408, URI:http://test/409, URI:http://test/410, URI:http://test/411, URI:http://test/412, URI:http://test/413, URI:http://test/414, URI:http://test/415, URI:http://test/416, URI:http://test/417, URI:http://test/418, URI:http://test/419, URI:http://test/420, URI:http://test/421, URI:http://test/422, URI:http://test/423, URI:http://test/424, URI:http://test/425, URI:http://test/426, URI:http://test/427, URI:http://test/428, URI:http://test/429, URI:http://test/430, URI:http://test/431, URI:http://test/432, URI:http://test/433, URI:http://test/434, URI:http://test/435, URI:http://test/436, URI:http://test/437, URI:http://test/438, URI:http://test/439, URI:http://test/440, URI:http://test/441, URI:http://test/442, URI:http://test/443, URI:http://test/444, URI:http://test/445, URI:http://test/446, URI:http://test/447, URI:http://test/448, URI:http://test/449, URI:http://test/450, URI:http://test/451, URI:http://test/452, URI:http://test/453, URI:http://test/454, URI:http://test/455, URI:http://test/456, URI:http://test/457, URI:http://test/458, URI:http://test/459, URI:http://test/460, URI:http://test/461, URI:http://test/462, URI:http://test/463, URI:http://test/464, URI:http://test/465, URI:http://test/466, URI:http://test/467, URI:http://test/468, URI:http://test/469, URI:http://test/470, URI:http://test/471, URI:http://test/472, URI:http://test/473, URI:http://test/474, URI:http://test/475, URI:http://test/476, URI:http://test/477, URI:http://test/478, URI:http://test/479, URI:http://test/480, URI:http://test/481, URI:http://test/482, URI:http://test/483, URI:http://test/484, URI:http://test/485, URI:http://test/486, URI:http://test/487, URI:http://test/488, URI:http://test/489, URI:http://test/490, URI:http://test/491, URI:http://test/492, URI:http://test/493, URI:http://test/494, URI:http://test/495, URI:http://test/496, URI:http://test/497, URI:http://test/498, URI:http://test/499, URI:http://test/500, URI:http://test/501, URI:http://test/502, URI:http://test/503, URI:http://test/504, URI:http://test/505, URI:http://test/506, URI:http://test/507, URI:http://test/508, URI:http://test/509, URI:http://test/510, URI:http://test/511, URI:http://test/512, URI:http://test/513, URI:http://test/514, URI:http://test/515, URI:http://test/516, URI:http://test/517, URI:http://test/518, URI:http://test/519, URI:http://test/520, URI:http://test/521, URI:http://test/522, URI:http://test/523, URI:http://test/524, URI:http://test/525, URI:http://test/526, URI:http://test/527, URI:http://test/528, URI:http://test/529, URI:http://test/530, URI:http://test/531, URI:http://test/532, URI:http://test/533, URI:http://test/534, URI:http://test/535, URI:http://test/536, URI:http://test/537, URI:http://test/538, URI:http://test/539, URI:http://test/540, URI:http://test/541, URI:http://test/542, URI:http://test/543, URI:http://test/544, URI:http://test/545, URI:http://test/546, URI:http://test/547, URI:http://test/548, URI:http://test/549, URI:http://test/550, URI:http://test/551, URI:http://test/552, URI:http://test/553, URI:http://test/554, URI:http://test/555, URI:http://test/556, URI:http://test/557, URI:http://test/558, URI:http://test/559, URI:http://test/560, URI:http://test/561, URI:http://test/562, URI:http://test/563, URI:http://test/564, URI:http://test/565, URI:http://test/566, URI:http://test/567, URI:http://test/568, URI:http://test/569, URI:http://test/570, URI:http://test/571, URI:http://test/572, URI:http://test/573, URI:http://test/574, URI:http://test/575, URI:http://test/576, URI:http://test/577, URI:http://test/578, URI:http://test/579, URI:http://test/580, URI:http://test/581, URI:http://test/582, URI:http://test/583, URI:http://test/584, URI:http://test/585, URI:http://test/586, URI:http://test/587, URI:http://test/588, URI:http://test/589, URI:http://test/590, URI:http://test/591, URI:http://test/592, URI:http://test/593, URI:http://test/594, URI:http://test/595, URI:http://test/596, URI:http://test/597, URI:http://test/598, URI:http://test/599, URI:http://test/600, URI:http://test/601, URI:http://test/602, URI:http://test/603, URI:http://test/604, URI:http://test/605, URI:http://test/606, URI:http://test/607, URI:http://test/608, URI:http://test/609, URI:http://test/610, URI:http://test/611, URI:http://test/612, URI:http://test/613, URI:http://test/614, URI:http://test/615, URI:http://test/616, URI:http://test/617, URI:http://test/618, URI:http://test/619, URI:http://test/620, URI:http://test/621, URI:http://test/622, URI:http://test/623, URI:http://test/624, URI:http://test/625, URI:http://test/626, URI:http://test/627, URI:http://test/628, URI:http://test/629, URI:http://test/630, URI:http://test/631, URI:http://test/632, URI:http://test/633, URI:http://test/634, URI:http://test/635, URI:http://test/636, URI:http://test/637, URI:http://test/638, URI:http://test/639, URI:http://test/640, URI:http://test/641, URI:http://test/642, URI:http://test/643, URI:http://test/644, URI:http://test/645, URI:http://test/646, URI:http://test/647, URI:http://test/648, URI:http://test/649, URI:http://test/650, URI:http://test/651, URI:http://test/652, URI:http://test/653, URI:http://test/654, URI:http://test/655, URI:http://test/656, URI:http://test/657, URI:http://test/658, URI:http://test/659, URI:http://test/660, URI:http://test/661, URI:http://test/662, URI:http://test/663, URI:http://test/664, URI:http://test/665, URI:http://test/666, URI:http://test/667, URI:http://test/668, URI:http://test/669, URI:http://test/670, URI:http://test/671, URI:http://test/672, URI:http://test/673, URI:http://test/674, URI:http://test/675, URI:http://test/676, URI:http://test/677, URI:http://test/678, URI:http://test/679, URI:http://test/680, URI:http://test/681, URI:http://test/682, URI:http://test/683, URI:http://test/684, URI:http://test/685, URI:http://test/686, URI:http://test/687, URI:http://test/688, URI:http://test/689, URI:http://test/690, URI:http://test/691, URI:http://test/692, URI:http://test/693, URI:http://test/694, URI:http://test/695, URI:http://test/696, URI:http://test/697, URI:http://test/698, URI:http://test/699, URI:http://test/700, URI:http://test/701, URI:http://test/702, URI:http://test/703, URI:http://test/704, URI:http://test/705, URI:http://test/706, URI:http://test/707, URI:http://test/708, URI:http://test/709, URI:http://test/710, URI:http://test/711, URI:http://test/712, URI:http://test/713, URI:http://test/714, URI:http://test/715, URI:http://test/716, URI:http://test/717, URI:http://test/718, URI:http://test/719, URI:http://test/720, URI:http://test/721, URI:http://test/722, URI:http://test/723, URI:http://test/724, URI:http://test/725, URI:http://test/726, URI:http://test/727, URI:http://test/728, URI:http://test/729, URI:http://test/730, URI:http://test/731, URI:http://test/732, URI:http://test/733, URI:http://test/734, URI:http://test/735, URI:http://test/736, URI:http://test/737, URI:http://test/738, URI:http://test/739, URI:http://test/740, URI:http://test/741, URI:http://test/742, URI:http://test/743, URI:http://test/744, URI:http://test/745, URI:http://test/746, URI:http://test/747, URI:http://test/748, URI:http://test/749, URI:http://test/750, URI:http://test/751, URI:http://test/752, URI:http://test/753, URI:http://test/754, URI:http://test/755, URI:http://test/756, URI:http://test/757, URI:http://test/758, URI:http://test/759, URI:http://test/760, URI:http://test/761, URI:http://test/762, URI:http://test/763, URI:http://test/764, URI:http://test/765, URI:http://test/766, URI:http://test/767, URI:http://test/768, URI:http://test/769, URI:http://test/770, URI:http://test/771, URI:http://test/772, URI:http://test/773, URI:http://test/774, URI:http://test/775, URI:http://test/776, URI:http://test/777, URI:http://test/778, URI:http://test/779, URI:http://test/780, URI:http://test/781, URI:http://test/782, URI:http://test/783, URI:http://test/784, URI:http://test/785, URI:http://test/786, URI:http://test/787, URI:http://test/788, URI:http://test/789, URI:http://test/790, URI:http://test/791, URI:http://test/792, URI:http://test/793, URI:http://test/794, URI:http://test/795, URI:http://test/796, URI:http://test/797, URI:http://test/798, URI:http://test/799, URI:http://test/800, URI:http://test/801, URI:http://test/802, URI:http://test/803, URI:http://test/804, URI:http://test/805, URI:http://test/806, URI:http://test/807, URI:http://test/808, URI:http://test/809, URI:http://test/810, URI:http://test/811, URI:http://test/812, URI:http://test/813, URI:http://test/814, URI:http://test/815, URI:http://test/816, URI:http://test/817, URI:http://test/818, URI:http://test/819, URI:http://test/820, URI:http://test/821, URI:http://test/822, URI:http://test/823, URI:http://test/824, URI:http://test/825, URI:http://test/826, URI:http://test/827, URI:http://test/828, URI:http://test/829, URI:http://test/830, URI:http://test/831, URI:http://test/832, URI:http://test/833, URI:http://test/834, URI:http://test/835, URI:http://test/836, URI:http://test/837, URI:http://test/838, URI:http://test/839, URI:http://test/840, URI:http://test/841, URI:http://test/842, URI:http://test/843, URI:http://test/844, URI:http://test/845, URI:http://test/846, URI:http://test/847, URI:http://test/848, URI:http://test/849, URI:http://test/850, URI:http://test/851, URI:http://test/852, URI:http://test/853, URI:http://test/854, URI:http://test/855, URI:http://test/856, URI:http://test/857, URI:http://test/858, URI:http://test/859, URI:http://test/860, URI:http://test/861, URI:http://test/862, URI:http://test/863, URI:http://test/864, URI:http://test/865, URI:http://test/866, URI:http://test/867, URI:http://test/868, URI:http://test/869, URI:http://test/870, URI:http://test/871, URI:http://test/872, URI:http://test/873, URI:http://test/874, URI:http://test/875, URI:http://test/876, URI:http://test/877, URI:http://test/878, URI:http://test/879, URI:http://test/880, URI:http://test/881, URI:http://test/882, URI:http://test/883, URI:http://test/884, URI:http://test/885, URI:http://test/886, URI:http://test/887, URI:http://test/888, URI:http://test/889, URI:http://test/890, URI:http://test/891, URI:http://test/892, URI:http://test/893, URI:http://test/894, URI:http://test/895, URI:http://test/896, URI:http://test/897, URI:http://test/898, URI:http://test/899, URI:http://test/900, URI:http://test/901, URI:http://test/902, URI:http://test/903, URI:http://test/904, URI:http://test/905, URI:http://test/906, URI:http://test/907, URI:http://test/908, URI:http://test/909, URI:http://test/910, URI:http://test/911, URI:http://test/912, URI:http://test/913, URI:http://test/914, URI:http://test/915, URI:http://test/916, URI:http://test/917, URI:http://test/918, URI:http://test/919, URI:http://test/920, URI:http://test/921, URI:http://test/922, URI:http://test/923, URI:http://test/924, URI:http://test/925, URI:http://test/926, URI:http://test/927, URI:http://test/928, URI:http://test/929, URI:http://test/930, URI:http://test/931, URI:http://test/932, URI:http://test/933, URI:http://test/934, URI:http://test/935, URI:http://test/936, URI:http://test/937, URI:http://test/938, URI:http://test/939, URI:http://test/940, URI:http://test/941, URI:http://test/942, URI:http://test/943, URI:http://test/944, URI:http://test/945, URI:http://test/946, URI:http://test/947, URI:http://test/948, URI:http://test/949, URI:http://test/950, URI:http://test/951, URI:http://test/952, URI:http://test/953, URI:http://test/954, URI:http://test/955, URI:http://test/956, URI:http://test/957, URI:http://test/958, URI:http://test/959, URI:http://test/960, URI:http://test/961, URI:http://test/962, URI:http://test/963, URI:http://test/964, URI:http://test/965, URI:http://test/966, URI:http://test/967, URI:http://test/968, URI:http://test/969, URI:http://test/970, URI:http://test/971, URI:http://test/972, URI:http://test/973, URI:http://test/974, URI:http://test/975, URI:http://test/976, URI:http://test/977, URI:http://test/978, URI:http://test/979, URI:http://test/980, URI:http://test/981, URI:http://test/982, URI:http://test/983, URI:http://test/984, URI:http://test/985, URI:http://test/986, URI:http://test/987, URI:http://test/988, URI:http://test/989, URI:http://test/990, URI:http://test/991, URI:http://test/992, URI:http://test/993, URI:http://test/994, URI:http://test/995, URI:http://test/996, URI:http://test/997, URI:http://test/998, URI:http://test/999, URI:http://test/1000, URI:http://test/1001, URI:http://test/1002, URI:http://test/1003, URI:http://test/1004, URI:http://test/1005, URI:http://test/1006, URI:http://test/1007, URI:http://test/1008, URI:http://test/1009, URI:http://test/1010, URI:http://test/1011, URI:http://test/1012, URI:http://test/1013, URI:http://test/1014, URI:http://test/1015, URI:http://test/1016, URI:http://test/1017, URI:http://test/1018, URI:http://test/1019, URI:http://test/1020, URI:http://test/1021, URI:http://test/1022, URI:http://test/1023, URI:http://test/1024 - Signature Algorithm: sha256WithRSAEncryption - 08:00:7f:e0:40:75:d2:43:36:3f:e3:6c:cf:c1:4a:69:b2:0c: - 1b:a8:a8:6b:7a:ee:ed:d0:2d:ee:e2:52:d9:2a:1f:5d:ac:29: - f5:12:e2:af:3b:db:a0:6d:3a:b4:09:ef:76:fa:52:68:5f:07: - 5f:9f:a4:52:8f:1d:da:da:b6:93:54:87:47:d0:3c:66:7e:ff: - 1b:e3:1e:da:52:4c:00:46:5b:0c:eb:9e:b8:5e:1e:db:f7:ce: - dd:2c:0f:4e:23:1d:63:98:ed:e5:18:e8:04:9c:a1:1e:cd:58: - de:09:43:4d:bf:8d:4b:6d:8e:32:e9:a6:53:40:17:0c:e2:59: - 43:55:2d:3f:ab:af:aa:13:48:ac:00:ac:5b:df:16:c7:20:2a: - ea:50:ef:79:78:c9:34:d5:c5:7f:8f:27:d0:5a:42:3a:e8:13: - 01:51:bc:a3:b9:53:6f:1d:e4:73:52:8d:f0:c7:9c:d1:46:19: - aa:28:63:3e:cc:4a:5f:63:0d:1d:28:4b:e0:b4:37:83:db:85: - 8c:84:86:7e:37:15:a8:ed:a8:00:da:14:97:fd:f1:c8:ea:6e: - 3a:b7:19:c1:6f:53:6b:0b:ff:29:60:30:7d:b6:35:d6:b8:58: - 6f:55:32:18:c6:44:c3:08:d8:c4:95:25:7b:ba:13:04:26:34: - 7c:d4:0e:a1 ------BEGIN CERTIFICATE----- -MIJ2lTCCdX2gAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY1DANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCc+IwgnPeMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgnL0BgNVHREEgnLrMIJy54IH -dDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIHdDQudGVzdIIHdDUu -dGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDkudGVzdIIIdDEwLnRl -c3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQxNC50ZXN0ggh0MTUu -dGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIIIdDE5LnRlc3SCCHQy -MC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0ggh0MjQudGVzdIII -dDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRlc3SCCHQyOS50ZXN0 -ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMudGVzdIIIdDM0LnRl -c3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQzOC50ZXN0ggh0Mzku -dGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIIIdDQzLnRlc3SCCHQ0 -NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0ggh0NDgudGVzdIII -dDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRlc3SCCHQ1My50ZXN0 -ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcudGVzdIIIdDU4LnRl -c3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2Mi50ZXN0ggh0NjMu -dGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIIIdDY3LnRlc3SCCHQ2 -OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0ggh0NzIudGVzdIII -dDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRlc3SCCHQ3Ny50ZXN0 -ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEudGVzdIIIdDgyLnRl -c3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4Ni50ZXN0ggh0ODcu -dGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIIIdDkxLnRlc3SCCHQ5 -Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0ggh0OTYudGVzdIII -dDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50ZXN0ggl0MTAxLnRl -c3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SCCXQxMDUudGVzdIIJ -dDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEwOS50ZXN0ggl0MTEw -LnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRlc3SCCXQxMTQudGVz -dIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJdDExOC50ZXN0ggl0 -MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIyLnRlc3SCCXQxMjMu -dGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVzdIIJdDEyNy50ZXN0 -ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0MTMxLnRlc3SCCXQx -MzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUudGVzdIIJdDEzNi50 -ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0ggl0MTQwLnRlc3SC -CXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQxNDQudGVzdIIJdDE0 -NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50ZXN0ggl0MTQ5LnRl -c3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SCCXQxNTMudGVzdIIJ -dDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1Ny50ZXN0ggl0MTU4 -LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRlc3SCCXQxNjIudGVz -dIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJdDE2Ni50ZXN0ggl0 -MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcwLnRlc3SCCXQxNzEu -dGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVzdIIJdDE3NS50ZXN0 -ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0MTc5LnRlc3SCCXQx -ODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMudGVzdIIJdDE4NC50 -ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0ggl0MTg4LnRlc3SC -CXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQxOTIudGVzdIIJdDE5 -My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50ZXN0ggl0MTk3LnRl -c3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SCCXQyMDEudGVzdIIJ -dDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIwNS50ZXN0ggl0MjA2 -LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRlc3SCCXQyMTAudGVz -dIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJdDIxNC50ZXN0ggl0 -MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4LnRlc3SCCXQyMTku -dGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVzdIIJdDIyMy50ZXN0 -ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0MjI3LnRlc3SCCXQy -MjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEudGVzdIIJdDIzMi50 -ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0ggl0MjM2LnRlc3SC -CXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQyNDAudGVzdIIJdDI0 -MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50ZXN0ggl0MjQ1LnRl -c3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SCCXQyNDkudGVzdIIJ -dDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1My50ZXN0ggl0MjU0 -LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRlc3SCCXQyNTgudGVz -dIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJdDI2Mi50ZXN0ggl0 -MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2LnRlc3SCCXQyNjcu -dGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVzdIIJdDI3MS50ZXN0 -ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0Mjc1LnRlc3SCCXQy -NzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzkudGVzdIIJdDI4MC50 -ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0ggl0Mjg0LnRlc3SC -CXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQyODgudGVzdIIJdDI4 -OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50ZXN0ggl0MjkzLnRl -c3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SCCXQyOTcudGVzdIIJ -dDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMwMS50ZXN0ggl0MzAy -LnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRlc3SCCXQzMDYudGVz -dIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJdDMxMC50ZXN0ggl0 -MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0LnRlc3SCCXQzMTUu -dGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVzdIIJdDMxOS50ZXN0 -ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0MzIzLnRlc3SCCXQz -MjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcudGVzdIIJdDMyOC50 -ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0ggl0MzMyLnRlc3SC -CXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQzMzYudGVzdIIJdDMz -Ny50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50ZXN0hwQKAAAAhwQK -AAABhwQKAAAChwQKAAADhwQKAAAEhwQKAAAFhwQKAAAGhwQKAAAHhwQKAAAIhwQK -AAAJhwQKAAAKhwQKAAALhwQKAAAMhwQKAAANhwQKAAAOhwQKAAAPhwQKAAAQhwQK -AAARhwQKAAAShwQKAAAThwQKAAAUhwQKAAAVhwQKAAAWhwQKAAAXhwQKAAAYhwQK -AAAZhwQKAAAahwQKAAAbhwQKAAAchwQKAAAdhwQKAAAehwQKAAAfhwQKAAAghwQK -AAAhhwQKAAAihwQKAAAjhwQKAAAkhwQKAAAlhwQKAAAmhwQKAAAnhwQKAAAohwQK -AAAphwQKAAAqhwQKAAArhwQKAAAshwQKAAAthwQKAAAuhwQKAAAvhwQKAAAwhwQK -AAAxhwQKAAAyhwQKAAAzhwQKAAA0hwQKAAA1hwQKAAA2hwQKAAA3hwQKAAA4hwQK -AAA5hwQKAAA6hwQKAAA7hwQKAAA8hwQKAAA9hwQKAAA+hwQKAAA/hwQKAABAhwQK -AABBhwQKAABChwQKAABDhwQKAABEhwQKAABFhwQKAABGhwQKAABHhwQKAABIhwQK -AABJhwQKAABKhwQKAABLhwQKAABMhwQKAABNhwQKAABOhwQKAABPhwQKAABQhwQK -AABRhwQKAABShwQKAABThwQKAABUhwQKAABVhwQKAABWhwQKAABXhwQKAABYhwQK -AABZhwQKAABahwQKAABbhwQKAABchwQKAABdhwQKAABehwQKAABfhwQKAABghwQK -AABhhwQKAABihwQKAABjhwQKAABkhwQKAABlhwQKAABmhwQKAABnhwQKAABohwQK -AABphwQKAABqhwQKAABrhwQKAABshwQKAABthwQKAABuhwQKAABvhwQKAABwhwQK -AABxhwQKAAByhwQKAABzhwQKAAB0hwQKAAB1hwQKAAB2hwQKAAB3hwQKAAB4hwQK -AAB5hwQKAAB6hwQKAAB7hwQKAAB8hwQKAAB9hwQKAAB+hwQKAAB/hwQKAACAhwQK -AACBhwQKAACChwQKAACDhwQKAACEhwQKAACFhwQKAACGhwQKAACHhwQKAACIhwQK -AACJhwQKAACKhwQKAACLhwQKAACMhwQKAACNhwQKAACOhwQKAACPhwQKAACQhwQK -AACRhwQKAACShwQKAACThwQKAACUhwQKAACVhwQKAACWhwQKAACXhwQKAACYhwQK -AACZhwQKAACahwQKAACbhwQKAACchwQKAACdhwQKAACehwQKAACfhwQKAACghwQK -AAChhwQKAACihwQKAACjhwQKAACkhwQKAAClhwQKAACmhwQKAACnhwQKAACohwQK -AACphwQKAACqhwQKAACrhwQKAACshwQKAACthwQKAACuhwQKAACvhwQKAACwhwQK -AACxhwQKAACyhwQKAACzhwQKAAC0hwQKAAC1hwQKAAC2hwQKAAC3hwQKAAC4hwQK -AAC5hwQKAAC6hwQKAAC7hwQKAAC8hwQKAAC9hwQKAAC+hwQKAAC/hwQKAADAhwQK -AADBhwQKAADChwQKAADDhwQKAADEhwQKAADFhwQKAADGhwQKAADHhwQKAADIhwQK -AADJhwQKAADKhwQKAADLhwQKAADMhwQKAADNhwQKAADOhwQKAADPhwQKAADQhwQK -AADRhwQKAADShwQKAADThwQKAADUhwQKAADVhwQKAADWhwQKAADXhwQKAADYhwQK -AADZhwQKAADahwQKAADbhwQKAADchwQKAADdhwQKAADehwQKAADfhwQKAADghwQK -AADhhwQKAADihwQKAADjhwQKAADkhwQKAADlhwQKAADmhwQKAADnhwQKAADohwQK -AADphwQKAADqhwQKAADrhwQKAADshwQKAADthwQKAADuhwQKAADvhwQKAADwhwQK -AADxhwQKAADyhwQKAADzhwQKAAD0hwQKAAD1hwQKAAD2hwQKAAD3hwQKAAD4hwQK -AAD5hwQKAAD6hwQKAAD7hwQKAAD8hwQKAAD9hwQKAAD+hwQKAAD/hwQKAAEAhwQK -AAEBhwQKAAEChwQKAAEDhwQKAAEEhwQKAAEFhwQKAAEGhwQKAAEHhwQKAAEIhwQK -AAEJhwQKAAEKhwQKAAELhwQKAAEMhwQKAAENhwQKAAEOhwQKAAEPhwQKAAEQhwQK -AAERhwQKAAEShwQKAAEThwQKAAEUhwQKAAEVhwQKAAEWhwQKAAEXhwQKAAEYhwQK -AAEZhwQKAAEahwQKAAEbhwQKAAEchwQKAAEdhwQKAAEehwQKAAEfhwQKAAEghwQK -AAEhhwQKAAEihwQKAAEjhwQKAAEkhwQKAAElhwQKAAEmhwQKAAEnhwQKAAEohwQK -AAEphwQKAAEqhwQKAAErhwQKAAEshwQKAAEthwQKAAEuhwQKAAEvhwQKAAEwhwQK -AAExhwQKAAEyhwQKAAEzhwQKAAE0hwQKAAE1hwQKAAE2hwQKAAE3hwQKAAE4hwQK -AAE5hwQKAAE6hwQKAAE7hwQKAAE8hwQKAAE9hwQKAAE+hwQKAAE/hwQKAAFAhwQK -AAFBhwQKAAFChwQKAAFDhwQKAAFEhwQKAAFFhwQKAAFGhwQKAAFHhwQKAAFIhwQK -AAFJhwQKAAFKhwQKAAFLhwQKAAFMhwQKAAFNhwQKAAFOhwQKAAFPhwQKAAFQhwQK -AAFRhwQKAAFShwQKAAFThwQKAAFUpA8wDTELMAkGA1UEAwwCdDCkDzANMQswCQYD -VQQDDAJ0MaQPMA0xCzAJBgNVBAMMAnQypA8wDTELMAkGA1UEAwwCdDOkDzANMQsw -CQYDVQQDDAJ0NKQPMA0xCzAJBgNVBAMMAnQ1pA8wDTELMAkGA1UEAwwCdDakDzAN -MQswCQYDVQQDDAJ0N6QPMA0xCzAJBgNVBAMMAnQ4pA8wDTELMAkGA1UEAwwCdDmk -EDAOMQwwCgYDVQQDDAN0MTCkEDAOMQwwCgYDVQQDDAN0MTGkEDAOMQwwCgYDVQQD -DAN0MTKkEDAOMQwwCgYDVQQDDAN0MTOkEDAOMQwwCgYDVQQDDAN0MTSkEDAOMQww -CgYDVQQDDAN0MTWkEDAOMQwwCgYDVQQDDAN0MTakEDAOMQwwCgYDVQQDDAN0MTek -EDAOMQwwCgYDVQQDDAN0MTikEDAOMQwwCgYDVQQDDAN0MTmkEDAOMQwwCgYDVQQD -DAN0MjCkEDAOMQwwCgYDVQQDDAN0MjGkEDAOMQwwCgYDVQQDDAN0MjKkEDAOMQww -CgYDVQQDDAN0MjOkEDAOMQwwCgYDVQQDDAN0MjSkEDAOMQwwCgYDVQQDDAN0MjWk -EDAOMQwwCgYDVQQDDAN0MjakEDAOMQwwCgYDVQQDDAN0MjekEDAOMQwwCgYDVQQD -DAN0MjikEDAOMQwwCgYDVQQDDAN0MjmkEDAOMQwwCgYDVQQDDAN0MzCkEDAOMQww -CgYDVQQDDAN0MzGkEDAOMQwwCgYDVQQDDAN0MzKkEDAOMQwwCgYDVQQDDAN0MzOk -EDAOMQwwCgYDVQQDDAN0MzSkEDAOMQwwCgYDVQQDDAN0MzWkEDAOMQwwCgYDVQQD -DAN0MzakEDAOMQwwCgYDVQQDDAN0MzekEDAOMQwwCgYDVQQDDAN0MzikEDAOMQww -CgYDVQQDDAN0MzmkEDAOMQwwCgYDVQQDDAN0NDCkEDAOMQwwCgYDVQQDDAN0NDGk -EDAOMQwwCgYDVQQDDAN0NDKkEDAOMQwwCgYDVQQDDAN0NDOkEDAOMQwwCgYDVQQD -DAN0NDSkEDAOMQwwCgYDVQQDDAN0NDWkEDAOMQwwCgYDVQQDDAN0NDakEDAOMQww -CgYDVQQDDAN0NDekEDAOMQwwCgYDVQQDDAN0NDikEDAOMQwwCgYDVQQDDAN0NDmk -EDAOMQwwCgYDVQQDDAN0NTCkEDAOMQwwCgYDVQQDDAN0NTGkEDAOMQwwCgYDVQQD -DAN0NTKkEDAOMQwwCgYDVQQDDAN0NTOkEDAOMQwwCgYDVQQDDAN0NTSkEDAOMQww -CgYDVQQDDAN0NTWkEDAOMQwwCgYDVQQDDAN0NTakEDAOMQwwCgYDVQQDDAN0NTek -EDAOMQwwCgYDVQQDDAN0NTikEDAOMQwwCgYDVQQDDAN0NTmkEDAOMQwwCgYDVQQD -DAN0NjCkEDAOMQwwCgYDVQQDDAN0NjGkEDAOMQwwCgYDVQQDDAN0NjKkEDAOMQww -CgYDVQQDDAN0NjOkEDAOMQwwCgYDVQQDDAN0NjSkEDAOMQwwCgYDVQQDDAN0NjWk -EDAOMQwwCgYDVQQDDAN0NjakEDAOMQwwCgYDVQQDDAN0NjekEDAOMQwwCgYDVQQD -DAN0NjikEDAOMQwwCgYDVQQDDAN0NjmkEDAOMQwwCgYDVQQDDAN0NzCkEDAOMQww -CgYDVQQDDAN0NzGkEDAOMQwwCgYDVQQDDAN0NzKkEDAOMQwwCgYDVQQDDAN0NzOk -EDAOMQwwCgYDVQQDDAN0NzSkEDAOMQwwCgYDVQQDDAN0NzWkEDAOMQwwCgYDVQQD -DAN0NzakEDAOMQwwCgYDVQQDDAN0NzekEDAOMQwwCgYDVQQDDAN0NzikEDAOMQww -CgYDVQQDDAN0NzmkEDAOMQwwCgYDVQQDDAN0ODCkEDAOMQwwCgYDVQQDDAN0ODGk -EDAOMQwwCgYDVQQDDAN0ODKkEDAOMQwwCgYDVQQDDAN0ODOkEDAOMQwwCgYDVQQD -DAN0ODSkEDAOMQwwCgYDVQQDDAN0ODWkEDAOMQwwCgYDVQQDDAN0ODakEDAOMQww -CgYDVQQDDAN0ODekEDAOMQwwCgYDVQQDDAN0ODikEDAOMQwwCgYDVQQDDAN0ODmk -EDAOMQwwCgYDVQQDDAN0OTCkEDAOMQwwCgYDVQQDDAN0OTGkEDAOMQwwCgYDVQQD -DAN0OTKkEDAOMQwwCgYDVQQDDAN0OTOkEDAOMQwwCgYDVQQDDAN0OTSkEDAOMQww -CgYDVQQDDAN0OTWkEDAOMQwwCgYDVQQDDAN0OTakEDAOMQwwCgYDVQQDDAN0OTek -EDAOMQwwCgYDVQQDDAN0OTikEDAOMQwwCgYDVQQDDAN0OTmkETAPMQ0wCwYDVQQD -DAR0MTAwpBEwDzENMAsGA1UEAwwEdDEwMaQRMA8xDTALBgNVBAMMBHQxMDKkETAP -MQ0wCwYDVQQDDAR0MTAzpBEwDzENMAsGA1UEAwwEdDEwNKQRMA8xDTALBgNVBAMM -BHQxMDWkETAPMQ0wCwYDVQQDDAR0MTA2pBEwDzENMAsGA1UEAwwEdDEwN6QRMA8x -DTALBgNVBAMMBHQxMDikETAPMQ0wCwYDVQQDDAR0MTA5pBEwDzENMAsGA1UEAwwE -dDExMKQRMA8xDTALBgNVBAMMBHQxMTGkETAPMQ0wCwYDVQQDDAR0MTEypBEwDzEN -MAsGA1UEAwwEdDExM6QRMA8xDTALBgNVBAMMBHQxMTSkETAPMQ0wCwYDVQQDDAR0 -MTE1pBEwDzENMAsGA1UEAwwEdDExNqQRMA8xDTALBgNVBAMMBHQxMTekETAPMQ0w -CwYDVQQDDAR0MTE4pBEwDzENMAsGA1UEAwwEdDExOaQRMA8xDTALBgNVBAMMBHQx -MjCkETAPMQ0wCwYDVQQDDAR0MTIxpBEwDzENMAsGA1UEAwwEdDEyMqQRMA8xDTAL -BgNVBAMMBHQxMjOkETAPMQ0wCwYDVQQDDAR0MTI0pBEwDzENMAsGA1UEAwwEdDEy -NaQRMA8xDTALBgNVBAMMBHQxMjakETAPMQ0wCwYDVQQDDAR0MTI3pBEwDzENMAsG -A1UEAwwEdDEyOKQRMA8xDTALBgNVBAMMBHQxMjmkETAPMQ0wCwYDVQQDDAR0MTMw -pBEwDzENMAsGA1UEAwwEdDEzMaQRMA8xDTALBgNVBAMMBHQxMzKkETAPMQ0wCwYD -VQQDDAR0MTMzpBEwDzENMAsGA1UEAwwEdDEzNKQRMA8xDTALBgNVBAMMBHQxMzWk -ETAPMQ0wCwYDVQQDDAR0MTM2pBEwDzENMAsGA1UEAwwEdDEzN6QRMA8xDTALBgNV -BAMMBHQxMzikETAPMQ0wCwYDVQQDDAR0MTM5pBEwDzENMAsGA1UEAwwEdDE0MKQR -MA8xDTALBgNVBAMMBHQxNDGkETAPMQ0wCwYDVQQDDAR0MTQypBEwDzENMAsGA1UE -AwwEdDE0M6QRMA8xDTALBgNVBAMMBHQxNDSkETAPMQ0wCwYDVQQDDAR0MTQ1pBEw -DzENMAsGA1UEAwwEdDE0NqQRMA8xDTALBgNVBAMMBHQxNDekETAPMQ0wCwYDVQQD -DAR0MTQ4pBEwDzENMAsGA1UEAwwEdDE0OaQRMA8xDTALBgNVBAMMBHQxNTCkETAP -MQ0wCwYDVQQDDAR0MTUxpBEwDzENMAsGA1UEAwwEdDE1MqQRMA8xDTALBgNVBAMM -BHQxNTOkETAPMQ0wCwYDVQQDDAR0MTU0pBEwDzENMAsGA1UEAwwEdDE1NaQRMA8x -DTALBgNVBAMMBHQxNTakETAPMQ0wCwYDVQQDDAR0MTU3pBEwDzENMAsGA1UEAwwE -dDE1OKQRMA8xDTALBgNVBAMMBHQxNTmkETAPMQ0wCwYDVQQDDAR0MTYwpBEwDzEN -MAsGA1UEAwwEdDE2MaQRMA8xDTALBgNVBAMMBHQxNjKkETAPMQ0wCwYDVQQDDAR0 -MTYzpBEwDzENMAsGA1UEAwwEdDE2NKQRMA8xDTALBgNVBAMMBHQxNjWkETAPMQ0w -CwYDVQQDDAR0MTY2pBEwDzENMAsGA1UEAwwEdDE2N6QRMA8xDTALBgNVBAMMBHQx -NjikETAPMQ0wCwYDVQQDDAR0MTY5pBEwDzENMAsGA1UEAwwEdDE3MKQRMA8xDTAL -BgNVBAMMBHQxNzGkETAPMQ0wCwYDVQQDDAR0MTcypBEwDzENMAsGA1UEAwwEdDE3 -M6QRMA8xDTALBgNVBAMMBHQxNzSkETAPMQ0wCwYDVQQDDAR0MTc1pBEwDzENMAsG -A1UEAwwEdDE3NqQRMA8xDTALBgNVBAMMBHQxNzekETAPMQ0wCwYDVQQDDAR0MTc4 -pBEwDzENMAsGA1UEAwwEdDE3OaQRMA8xDTALBgNVBAMMBHQxODCkETAPMQ0wCwYD -VQQDDAR0MTgxpBEwDzENMAsGA1UEAwwEdDE4MqQRMA8xDTALBgNVBAMMBHQxODOk -ETAPMQ0wCwYDVQQDDAR0MTg0pBEwDzENMAsGA1UEAwwEdDE4NaQRMA8xDTALBgNV -BAMMBHQxODakETAPMQ0wCwYDVQQDDAR0MTg3pBEwDzENMAsGA1UEAwwEdDE4OKQR -MA8xDTALBgNVBAMMBHQxODmkETAPMQ0wCwYDVQQDDAR0MTkwpBEwDzENMAsGA1UE -AwwEdDE5MaQRMA8xDTALBgNVBAMMBHQxOTKkETAPMQ0wCwYDVQQDDAR0MTkzpBEw -DzENMAsGA1UEAwwEdDE5NKQRMA8xDTALBgNVBAMMBHQxOTWkETAPMQ0wCwYDVQQD -DAR0MTk2pBEwDzENMAsGA1UEAwwEdDE5N6QRMA8xDTALBgNVBAMMBHQxOTikETAP -MQ0wCwYDVQQDDAR0MTk5pBEwDzENMAsGA1UEAwwEdDIwMKQRMA8xDTALBgNVBAMM -BHQyMDGkETAPMQ0wCwYDVQQDDAR0MjAypBEwDzENMAsGA1UEAwwEdDIwM6QRMA8x -DTALBgNVBAMMBHQyMDSkETAPMQ0wCwYDVQQDDAR0MjA1pBEwDzENMAsGA1UEAwwE -dDIwNqQRMA8xDTALBgNVBAMMBHQyMDekETAPMQ0wCwYDVQQDDAR0MjA4pBEwDzEN -MAsGA1UEAwwEdDIwOaQRMA8xDTALBgNVBAMMBHQyMTCkETAPMQ0wCwYDVQQDDAR0 -MjExpBEwDzENMAsGA1UEAwwEdDIxMqQRMA8xDTALBgNVBAMMBHQyMTOkETAPMQ0w -CwYDVQQDDAR0MjE0pBEwDzENMAsGA1UEAwwEdDIxNaQRMA8xDTALBgNVBAMMBHQy -MTakETAPMQ0wCwYDVQQDDAR0MjE3pBEwDzENMAsGA1UEAwwEdDIxOKQRMA8xDTAL -BgNVBAMMBHQyMTmkETAPMQ0wCwYDVQQDDAR0MjIwpBEwDzENMAsGA1UEAwwEdDIy -MaQRMA8xDTALBgNVBAMMBHQyMjKkETAPMQ0wCwYDVQQDDAR0MjIzpBEwDzENMAsG -A1UEAwwEdDIyNKQRMA8xDTALBgNVBAMMBHQyMjWkETAPMQ0wCwYDVQQDDAR0MjI2 -pBEwDzENMAsGA1UEAwwEdDIyN6QRMA8xDTALBgNVBAMMBHQyMjikETAPMQ0wCwYD -VQQDDAR0MjI5pBEwDzENMAsGA1UEAwwEdDIzMKQRMA8xDTALBgNVBAMMBHQyMzGk -ETAPMQ0wCwYDVQQDDAR0MjMypBEwDzENMAsGA1UEAwwEdDIzM6QRMA8xDTALBgNV -BAMMBHQyMzSkETAPMQ0wCwYDVQQDDAR0MjM1pBEwDzENMAsGA1UEAwwEdDIzNqQR -MA8xDTALBgNVBAMMBHQyMzekETAPMQ0wCwYDVQQDDAR0MjM4pBEwDzENMAsGA1UE -AwwEdDIzOaQRMA8xDTALBgNVBAMMBHQyNDCkETAPMQ0wCwYDVQQDDAR0MjQxpBEw -DzENMAsGA1UEAwwEdDI0MqQRMA8xDTALBgNVBAMMBHQyNDOkETAPMQ0wCwYDVQQD -DAR0MjQ0pBEwDzENMAsGA1UEAwwEdDI0NaQRMA8xDTALBgNVBAMMBHQyNDakETAP -MQ0wCwYDVQQDDAR0MjQ3pBEwDzENMAsGA1UEAwwEdDI0OKQRMA8xDTALBgNVBAMM -BHQyNDmkETAPMQ0wCwYDVQQDDAR0MjUwpBEwDzENMAsGA1UEAwwEdDI1MaQRMA8x -DTALBgNVBAMMBHQyNTKkETAPMQ0wCwYDVQQDDAR0MjUzpBEwDzENMAsGA1UEAwwE -dDI1NKQRMA8xDTALBgNVBAMMBHQyNTWkETAPMQ0wCwYDVQQDDAR0MjU2pBEwDzEN -MAsGA1UEAwwEdDI1N6QRMA8xDTALBgNVBAMMBHQyNTikETAPMQ0wCwYDVQQDDAR0 -MjU5pBEwDzENMAsGA1UEAwwEdDI2MKQRMA8xDTALBgNVBAMMBHQyNjGkETAPMQ0w -CwYDVQQDDAR0MjYypBEwDzENMAsGA1UEAwwEdDI2M6QRMA8xDTALBgNVBAMMBHQy -NjSkETAPMQ0wCwYDVQQDDAR0MjY1pBEwDzENMAsGA1UEAwwEdDI2NqQRMA8xDTAL -BgNVBAMMBHQyNjekETAPMQ0wCwYDVQQDDAR0MjY4pBEwDzENMAsGA1UEAwwEdDI2 -OaQRMA8xDTALBgNVBAMMBHQyNzCkETAPMQ0wCwYDVQQDDAR0MjcxpBEwDzENMAsG -A1UEAwwEdDI3MqQRMA8xDTALBgNVBAMMBHQyNzOkETAPMQ0wCwYDVQQDDAR0Mjc0 -pBEwDzENMAsGA1UEAwwEdDI3NaQRMA8xDTALBgNVBAMMBHQyNzakETAPMQ0wCwYD -VQQDDAR0Mjc3pBEwDzENMAsGA1UEAwwEdDI3OKQRMA8xDTALBgNVBAMMBHQyNzmk -ETAPMQ0wCwYDVQQDDAR0MjgwpBEwDzENMAsGA1UEAwwEdDI4MaQRMA8xDTALBgNV -BAMMBHQyODKkETAPMQ0wCwYDVQQDDAR0MjgzpBEwDzENMAsGA1UEAwwEdDI4NKQR -MA8xDTALBgNVBAMMBHQyODWkETAPMQ0wCwYDVQQDDAR0Mjg2pBEwDzENMAsGA1UE -AwwEdDI4N6QRMA8xDTALBgNVBAMMBHQyODikETAPMQ0wCwYDVQQDDAR0Mjg5pBEw -DzENMAsGA1UEAwwEdDI5MKQRMA8xDTALBgNVBAMMBHQyOTGkETAPMQ0wCwYDVQQD -DAR0MjkypBEwDzENMAsGA1UEAwwEdDI5M6QRMA8xDTALBgNVBAMMBHQyOTSkETAP -MQ0wCwYDVQQDDAR0Mjk1pBEwDzENMAsGA1UEAwwEdDI5NqQRMA8xDTALBgNVBAMM -BHQyOTekETAPMQ0wCwYDVQQDDAR0Mjk4pBEwDzENMAsGA1UEAwwEdDI5OaQRMA8x -DTALBgNVBAMMBHQzMDCkETAPMQ0wCwYDVQQDDAR0MzAxpBEwDzENMAsGA1UEAwwE -dDMwMqQRMA8xDTALBgNVBAMMBHQzMDOkETAPMQ0wCwYDVQQDDAR0MzA0pBEwDzEN -MAsGA1UEAwwEdDMwNaQRMA8xDTALBgNVBAMMBHQzMDakETAPMQ0wCwYDVQQDDAR0 -MzA3pBEwDzENMAsGA1UEAwwEdDMwOKQRMA8xDTALBgNVBAMMBHQzMDmkETAPMQ0w -CwYDVQQDDAR0MzEwpBEwDzENMAsGA1UEAwwEdDMxMaQRMA8xDTALBgNVBAMMBHQz -MTKkETAPMQ0wCwYDVQQDDAR0MzEzpBEwDzENMAsGA1UEAwwEdDMxNKQRMA8xDTAL -BgNVBAMMBHQzMTWkETAPMQ0wCwYDVQQDDAR0MzE2pBEwDzENMAsGA1UEAwwEdDMx -N6QRMA8xDTALBgNVBAMMBHQzMTikETAPMQ0wCwYDVQQDDAR0MzE5pBEwDzENMAsG -A1UEAwwEdDMyMKQRMA8xDTALBgNVBAMMBHQzMjGkETAPMQ0wCwYDVQQDDAR0MzIy -pBEwDzENMAsGA1UEAwwEdDMyM6QRMA8xDTALBgNVBAMMBHQzMjSkETAPMQ0wCwYD -VQQDDAR0MzI1pBEwDzENMAsGA1UEAwwEdDMyNqQRMA8xDTALBgNVBAMMBHQzMjek -ETAPMQ0wCwYDVQQDDAR0MzI4pBEwDzENMAsGA1UEAwwEdDMyOaQRMA8xDTALBgNV -BAMMBHQzMzCkETAPMQ0wCwYDVQQDDAR0MzMxpBEwDzENMAsGA1UEAwwEdDMzMqQR -MA8xDTALBgNVBAMMBHQzMzOkETAPMQ0wCwYDVQQDDAR0MzM0pBEwDzENMAsGA1UE -AwwEdDMzNaQRMA8xDTALBgNVBAMMBHQzMzakETAPMQ0wCwYDVQQDDAR0MzM3pBEw -DzENMAsGA1UEAwwEdDMzOKQRMA8xDTALBgNVBAMMBHQzMzmkETAPMQ0wCwYDVQQD -DAR0MzQwpBEwDzENMAsGA1UEAwwEdDM0MYYNaHR0cDovL3Rlc3QvMIYNaHR0cDov -L3Rlc3QvMYYNaHR0cDovL3Rlc3QvMoYNaHR0cDovL3Rlc3QvM4YNaHR0cDovL3Rl -c3QvNIYNaHR0cDovL3Rlc3QvNYYNaHR0cDovL3Rlc3QvNoYNaHR0cDovL3Rlc3Qv -N4YNaHR0cDovL3Rlc3QvOIYNaHR0cDovL3Rlc3QvOYYOaHR0cDovL3Rlc3QvMTCG -Dmh0dHA6Ly90ZXN0LzExhg5odHRwOi8vdGVzdC8xMoYOaHR0cDovL3Rlc3QvMTOG -Dmh0dHA6Ly90ZXN0LzE0hg5odHRwOi8vdGVzdC8xNYYOaHR0cDovL3Rlc3QvMTaG -Dmh0dHA6Ly90ZXN0LzE3hg5odHRwOi8vdGVzdC8xOIYOaHR0cDovL3Rlc3QvMTmG -Dmh0dHA6Ly90ZXN0LzIwhg5odHRwOi8vdGVzdC8yMYYOaHR0cDovL3Rlc3QvMjKG -Dmh0dHA6Ly90ZXN0LzIzhg5odHRwOi8vdGVzdC8yNIYOaHR0cDovL3Rlc3QvMjWG -Dmh0dHA6Ly90ZXN0LzI2hg5odHRwOi8vdGVzdC8yN4YOaHR0cDovL3Rlc3QvMjiG -Dmh0dHA6Ly90ZXN0LzI5hg5odHRwOi8vdGVzdC8zMIYOaHR0cDovL3Rlc3QvMzGG -Dmh0dHA6Ly90ZXN0LzMyhg5odHRwOi8vdGVzdC8zM4YOaHR0cDovL3Rlc3QvMzSG -Dmh0dHA6Ly90ZXN0LzM1hg5odHRwOi8vdGVzdC8zNoYOaHR0cDovL3Rlc3QvMzeG -Dmh0dHA6Ly90ZXN0LzM4hg5odHRwOi8vdGVzdC8zOYYOaHR0cDovL3Rlc3QvNDCG -Dmh0dHA6Ly90ZXN0LzQxhg5odHRwOi8vdGVzdC80MoYOaHR0cDovL3Rlc3QvNDOG -Dmh0dHA6Ly90ZXN0LzQ0hg5odHRwOi8vdGVzdC80NYYOaHR0cDovL3Rlc3QvNDaG -Dmh0dHA6Ly90ZXN0LzQ3hg5odHRwOi8vdGVzdC80OIYOaHR0cDovL3Rlc3QvNDmG -Dmh0dHA6Ly90ZXN0LzUwhg5odHRwOi8vdGVzdC81MYYOaHR0cDovL3Rlc3QvNTKG -Dmh0dHA6Ly90ZXN0LzUzhg5odHRwOi8vdGVzdC81NIYOaHR0cDovL3Rlc3QvNTWG -Dmh0dHA6Ly90ZXN0LzU2hg5odHRwOi8vdGVzdC81N4YOaHR0cDovL3Rlc3QvNTiG -Dmh0dHA6Ly90ZXN0LzU5hg5odHRwOi8vdGVzdC82MIYOaHR0cDovL3Rlc3QvNjGG -Dmh0dHA6Ly90ZXN0LzYyhg5odHRwOi8vdGVzdC82M4YOaHR0cDovL3Rlc3QvNjSG -Dmh0dHA6Ly90ZXN0LzY1hg5odHRwOi8vdGVzdC82NoYOaHR0cDovL3Rlc3QvNjeG -Dmh0dHA6Ly90ZXN0LzY4hg5odHRwOi8vdGVzdC82OYYOaHR0cDovL3Rlc3QvNzCG -Dmh0dHA6Ly90ZXN0Lzcxhg5odHRwOi8vdGVzdC83MoYOaHR0cDovL3Rlc3QvNzOG -Dmh0dHA6Ly90ZXN0Lzc0hg5odHRwOi8vdGVzdC83NYYOaHR0cDovL3Rlc3QvNzaG -Dmh0dHA6Ly90ZXN0Lzc3hg5odHRwOi8vdGVzdC83OIYOaHR0cDovL3Rlc3QvNzmG -Dmh0dHA6Ly90ZXN0Lzgwhg5odHRwOi8vdGVzdC84MYYOaHR0cDovL3Rlc3QvODKG -Dmh0dHA6Ly90ZXN0Lzgzhg5odHRwOi8vdGVzdC84NIYOaHR0cDovL3Rlc3QvODWG -Dmh0dHA6Ly90ZXN0Lzg2hg5odHRwOi8vdGVzdC84N4YOaHR0cDovL3Rlc3QvODiG -Dmh0dHA6Ly90ZXN0Lzg5hg5odHRwOi8vdGVzdC85MIYOaHR0cDovL3Rlc3QvOTGG -Dmh0dHA6Ly90ZXN0Lzkyhg5odHRwOi8vdGVzdC85M4YOaHR0cDovL3Rlc3QvOTSG -Dmh0dHA6Ly90ZXN0Lzk1hg5odHRwOi8vdGVzdC85NoYOaHR0cDovL3Rlc3QvOTeG -Dmh0dHA6Ly90ZXN0Lzk4hg5odHRwOi8vdGVzdC85OYYPaHR0cDovL3Rlc3QvMTAw -hg9odHRwOi8vdGVzdC8xMDGGD2h0dHA6Ly90ZXN0LzEwMoYPaHR0cDovL3Rlc3Qv -MTAzhg9odHRwOi8vdGVzdC8xMDSGD2h0dHA6Ly90ZXN0LzEwNYYPaHR0cDovL3Rl -c3QvMTA2hg9odHRwOi8vdGVzdC8xMDeGD2h0dHA6Ly90ZXN0LzEwOIYPaHR0cDov -L3Rlc3QvMTA5hg9odHRwOi8vdGVzdC8xMTCGD2h0dHA6Ly90ZXN0LzExMYYPaHR0 -cDovL3Rlc3QvMTEyhg9odHRwOi8vdGVzdC8xMTOGD2h0dHA6Ly90ZXN0LzExNIYP -aHR0cDovL3Rlc3QvMTE1hg9odHRwOi8vdGVzdC8xMTaGD2h0dHA6Ly90ZXN0LzEx -N4YPaHR0cDovL3Rlc3QvMTE4hg9odHRwOi8vdGVzdC8xMTmGD2h0dHA6Ly90ZXN0 -LzEyMIYPaHR0cDovL3Rlc3QvMTIxhg9odHRwOi8vdGVzdC8xMjKGD2h0dHA6Ly90 -ZXN0LzEyM4YPaHR0cDovL3Rlc3QvMTI0hg9odHRwOi8vdGVzdC8xMjWGD2h0dHA6 -Ly90ZXN0LzEyNoYPaHR0cDovL3Rlc3QvMTI3hg9odHRwOi8vdGVzdC8xMjiGD2h0 -dHA6Ly90ZXN0LzEyOYYPaHR0cDovL3Rlc3QvMTMwhg9odHRwOi8vdGVzdC8xMzGG -D2h0dHA6Ly90ZXN0LzEzMoYPaHR0cDovL3Rlc3QvMTMzhg9odHRwOi8vdGVzdC8x -MzSGD2h0dHA6Ly90ZXN0LzEzNYYPaHR0cDovL3Rlc3QvMTM2hg9odHRwOi8vdGVz -dC8xMzeGD2h0dHA6Ly90ZXN0LzEzOIYPaHR0cDovL3Rlc3QvMTM5hg9odHRwOi8v -dGVzdC8xNDCGD2h0dHA6Ly90ZXN0LzE0MYYPaHR0cDovL3Rlc3QvMTQyhg9odHRw -Oi8vdGVzdC8xNDOGD2h0dHA6Ly90ZXN0LzE0NIYPaHR0cDovL3Rlc3QvMTQ1hg9o -dHRwOi8vdGVzdC8xNDaGD2h0dHA6Ly90ZXN0LzE0N4YPaHR0cDovL3Rlc3QvMTQ4 -hg9odHRwOi8vdGVzdC8xNDmGD2h0dHA6Ly90ZXN0LzE1MIYPaHR0cDovL3Rlc3Qv -MTUxhg9odHRwOi8vdGVzdC8xNTKGD2h0dHA6Ly90ZXN0LzE1M4YPaHR0cDovL3Rl -c3QvMTU0hg9odHRwOi8vdGVzdC8xNTWGD2h0dHA6Ly90ZXN0LzE1NoYPaHR0cDov -L3Rlc3QvMTU3hg9odHRwOi8vdGVzdC8xNTiGD2h0dHA6Ly90ZXN0LzE1OYYPaHR0 -cDovL3Rlc3QvMTYwhg9odHRwOi8vdGVzdC8xNjGGD2h0dHA6Ly90ZXN0LzE2MoYP -aHR0cDovL3Rlc3QvMTYzhg9odHRwOi8vdGVzdC8xNjSGD2h0dHA6Ly90ZXN0LzE2 -NYYPaHR0cDovL3Rlc3QvMTY2hg9odHRwOi8vdGVzdC8xNjeGD2h0dHA6Ly90ZXN0 -LzE2OIYPaHR0cDovL3Rlc3QvMTY5hg9odHRwOi8vdGVzdC8xNzCGD2h0dHA6Ly90 -ZXN0LzE3MYYPaHR0cDovL3Rlc3QvMTcyhg9odHRwOi8vdGVzdC8xNzOGD2h0dHA6 -Ly90ZXN0LzE3NIYPaHR0cDovL3Rlc3QvMTc1hg9odHRwOi8vdGVzdC8xNzaGD2h0 -dHA6Ly90ZXN0LzE3N4YPaHR0cDovL3Rlc3QvMTc4hg9odHRwOi8vdGVzdC8xNzmG -D2h0dHA6Ly90ZXN0LzE4MIYPaHR0cDovL3Rlc3QvMTgxhg9odHRwOi8vdGVzdC8x -ODKGD2h0dHA6Ly90ZXN0LzE4M4YPaHR0cDovL3Rlc3QvMTg0hg9odHRwOi8vdGVz -dC8xODWGD2h0dHA6Ly90ZXN0LzE4NoYPaHR0cDovL3Rlc3QvMTg3hg9odHRwOi8v -dGVzdC8xODiGD2h0dHA6Ly90ZXN0LzE4OYYPaHR0cDovL3Rlc3QvMTkwhg9odHRw -Oi8vdGVzdC8xOTGGD2h0dHA6Ly90ZXN0LzE5MoYPaHR0cDovL3Rlc3QvMTkzhg9o -dHRwOi8vdGVzdC8xOTSGD2h0dHA6Ly90ZXN0LzE5NYYPaHR0cDovL3Rlc3QvMTk2 -hg9odHRwOi8vdGVzdC8xOTeGD2h0dHA6Ly90ZXN0LzE5OIYPaHR0cDovL3Rlc3Qv -MTk5hg9odHRwOi8vdGVzdC8yMDCGD2h0dHA6Ly90ZXN0LzIwMYYPaHR0cDovL3Rl -c3QvMjAyhg9odHRwOi8vdGVzdC8yMDOGD2h0dHA6Ly90ZXN0LzIwNIYPaHR0cDov -L3Rlc3QvMjA1hg9odHRwOi8vdGVzdC8yMDaGD2h0dHA6Ly90ZXN0LzIwN4YPaHR0 -cDovL3Rlc3QvMjA4hg9odHRwOi8vdGVzdC8yMDmGD2h0dHA6Ly90ZXN0LzIxMIYP -aHR0cDovL3Rlc3QvMjExhg9odHRwOi8vdGVzdC8yMTKGD2h0dHA6Ly90ZXN0LzIx -M4YPaHR0cDovL3Rlc3QvMjE0hg9odHRwOi8vdGVzdC8yMTWGD2h0dHA6Ly90ZXN0 -LzIxNoYPaHR0cDovL3Rlc3QvMjE3hg9odHRwOi8vdGVzdC8yMTiGD2h0dHA6Ly90 -ZXN0LzIxOYYPaHR0cDovL3Rlc3QvMjIwhg9odHRwOi8vdGVzdC8yMjGGD2h0dHA6 -Ly90ZXN0LzIyMoYPaHR0cDovL3Rlc3QvMjIzhg9odHRwOi8vdGVzdC8yMjSGD2h0 -dHA6Ly90ZXN0LzIyNYYPaHR0cDovL3Rlc3QvMjI2hg9odHRwOi8vdGVzdC8yMjeG -D2h0dHA6Ly90ZXN0LzIyOIYPaHR0cDovL3Rlc3QvMjI5hg9odHRwOi8vdGVzdC8y -MzCGD2h0dHA6Ly90ZXN0LzIzMYYPaHR0cDovL3Rlc3QvMjMyhg9odHRwOi8vdGVz -dC8yMzOGD2h0dHA6Ly90ZXN0LzIzNIYPaHR0cDovL3Rlc3QvMjM1hg9odHRwOi8v -dGVzdC8yMzaGD2h0dHA6Ly90ZXN0LzIzN4YPaHR0cDovL3Rlc3QvMjM4hg9odHRw -Oi8vdGVzdC8yMzmGD2h0dHA6Ly90ZXN0LzI0MIYPaHR0cDovL3Rlc3QvMjQxhg9o -dHRwOi8vdGVzdC8yNDKGD2h0dHA6Ly90ZXN0LzI0M4YPaHR0cDovL3Rlc3QvMjQ0 -hg9odHRwOi8vdGVzdC8yNDWGD2h0dHA6Ly90ZXN0LzI0NoYPaHR0cDovL3Rlc3Qv -MjQ3hg9odHRwOi8vdGVzdC8yNDiGD2h0dHA6Ly90ZXN0LzI0OYYPaHR0cDovL3Rl -c3QvMjUwhg9odHRwOi8vdGVzdC8yNTGGD2h0dHA6Ly90ZXN0LzI1MoYPaHR0cDov -L3Rlc3QvMjUzhg9odHRwOi8vdGVzdC8yNTSGD2h0dHA6Ly90ZXN0LzI1NYYPaHR0 -cDovL3Rlc3QvMjU2hg9odHRwOi8vdGVzdC8yNTeGD2h0dHA6Ly90ZXN0LzI1OIYP -aHR0cDovL3Rlc3QvMjU5hg9odHRwOi8vdGVzdC8yNjCGD2h0dHA6Ly90ZXN0LzI2 -MYYPaHR0cDovL3Rlc3QvMjYyhg9odHRwOi8vdGVzdC8yNjOGD2h0dHA6Ly90ZXN0 -LzI2NIYPaHR0cDovL3Rlc3QvMjY1hg9odHRwOi8vdGVzdC8yNjaGD2h0dHA6Ly90 -ZXN0LzI2N4YPaHR0cDovL3Rlc3QvMjY4hg9odHRwOi8vdGVzdC8yNjmGD2h0dHA6 -Ly90ZXN0LzI3MIYPaHR0cDovL3Rlc3QvMjcxhg9odHRwOi8vdGVzdC8yNzKGD2h0 -dHA6Ly90ZXN0LzI3M4YPaHR0cDovL3Rlc3QvMjc0hg9odHRwOi8vdGVzdC8yNzWG -D2h0dHA6Ly90ZXN0LzI3NoYPaHR0cDovL3Rlc3QvMjc3hg9odHRwOi8vdGVzdC8y -NziGD2h0dHA6Ly90ZXN0LzI3OYYPaHR0cDovL3Rlc3QvMjgwhg9odHRwOi8vdGVz -dC8yODGGD2h0dHA6Ly90ZXN0LzI4MoYPaHR0cDovL3Rlc3QvMjgzhg9odHRwOi8v -dGVzdC8yODSGD2h0dHA6Ly90ZXN0LzI4NYYPaHR0cDovL3Rlc3QvMjg2hg9odHRw -Oi8vdGVzdC8yODeGD2h0dHA6Ly90ZXN0LzI4OIYPaHR0cDovL3Rlc3QvMjg5hg9o -dHRwOi8vdGVzdC8yOTCGD2h0dHA6Ly90ZXN0LzI5MYYPaHR0cDovL3Rlc3QvMjky -hg9odHRwOi8vdGVzdC8yOTOGD2h0dHA6Ly90ZXN0LzI5NIYPaHR0cDovL3Rlc3Qv -Mjk1hg9odHRwOi8vdGVzdC8yOTaGD2h0dHA6Ly90ZXN0LzI5N4YPaHR0cDovL3Rl -c3QvMjk4hg9odHRwOi8vdGVzdC8yOTmGD2h0dHA6Ly90ZXN0LzMwMIYPaHR0cDov -L3Rlc3QvMzAxhg9odHRwOi8vdGVzdC8zMDKGD2h0dHA6Ly90ZXN0LzMwM4YPaHR0 -cDovL3Rlc3QvMzA0hg9odHRwOi8vdGVzdC8zMDWGD2h0dHA6Ly90ZXN0LzMwNoYP -aHR0cDovL3Rlc3QvMzA3hg9odHRwOi8vdGVzdC8zMDiGD2h0dHA6Ly90ZXN0LzMw -OYYPaHR0cDovL3Rlc3QvMzEwhg9odHRwOi8vdGVzdC8zMTGGD2h0dHA6Ly90ZXN0 -LzMxMoYPaHR0cDovL3Rlc3QvMzEzhg9odHRwOi8vdGVzdC8zMTSGD2h0dHA6Ly90 -ZXN0LzMxNYYPaHR0cDovL3Rlc3QvMzE2hg9odHRwOi8vdGVzdC8zMTeGD2h0dHA6 -Ly90ZXN0LzMxOIYPaHR0cDovL3Rlc3QvMzE5hg9odHRwOi8vdGVzdC8zMjCGD2h0 -dHA6Ly90ZXN0LzMyMYYPaHR0cDovL3Rlc3QvMzIyhg9odHRwOi8vdGVzdC8zMjOG -D2h0dHA6Ly90ZXN0LzMyNIYPaHR0cDovL3Rlc3QvMzI1hg9odHRwOi8vdGVzdC8z -MjaGD2h0dHA6Ly90ZXN0LzMyN4YPaHR0cDovL3Rlc3QvMzI4hg9odHRwOi8vdGVz -dC8zMjmGD2h0dHA6Ly90ZXN0LzMzMIYPaHR0cDovL3Rlc3QvMzMxhg9odHRwOi8v -dGVzdC8zMzKGD2h0dHA6Ly90ZXN0LzMzM4YPaHR0cDovL3Rlc3QvMzM0hg9odHRw -Oi8vdGVzdC8zMzWGD2h0dHA6Ly90ZXN0LzMzNoYPaHR0cDovL3Rlc3QvMzM3hg9o -dHRwOi8vdGVzdC8zMziGD2h0dHA6Ly90ZXN0LzMzOYYPaHR0cDovL3Rlc3QvMzQw -hg9odHRwOi8vdGVzdC8zNDGGD2h0dHA6Ly90ZXN0LzM0MoYPaHR0cDovL3Rlc3Qv -MzQzhg9odHRwOi8vdGVzdC8zNDSGD2h0dHA6Ly90ZXN0LzM0NYYPaHR0cDovL3Rl -c3QvMzQ2hg9odHRwOi8vdGVzdC8zNDeGD2h0dHA6Ly90ZXN0LzM0OIYPaHR0cDov -L3Rlc3QvMzQ5hg9odHRwOi8vdGVzdC8zNTCGD2h0dHA6Ly90ZXN0LzM1MYYPaHR0 -cDovL3Rlc3QvMzUyhg9odHRwOi8vdGVzdC8zNTOGD2h0dHA6Ly90ZXN0LzM1NIYP -aHR0cDovL3Rlc3QvMzU1hg9odHRwOi8vdGVzdC8zNTaGD2h0dHA6Ly90ZXN0LzM1 -N4YPaHR0cDovL3Rlc3QvMzU4hg9odHRwOi8vdGVzdC8zNTmGD2h0dHA6Ly90ZXN0 -LzM2MIYPaHR0cDovL3Rlc3QvMzYxhg9odHRwOi8vdGVzdC8zNjKGD2h0dHA6Ly90 -ZXN0LzM2M4YPaHR0cDovL3Rlc3QvMzY0hg9odHRwOi8vdGVzdC8zNjWGD2h0dHA6 -Ly90ZXN0LzM2NoYPaHR0cDovL3Rlc3QvMzY3hg9odHRwOi8vdGVzdC8zNjiGD2h0 -dHA6Ly90ZXN0LzM2OYYPaHR0cDovL3Rlc3QvMzcwhg9odHRwOi8vdGVzdC8zNzGG -D2h0dHA6Ly90ZXN0LzM3MoYPaHR0cDovL3Rlc3QvMzczhg9odHRwOi8vdGVzdC8z -NzSGD2h0dHA6Ly90ZXN0LzM3NYYPaHR0cDovL3Rlc3QvMzc2hg9odHRwOi8vdGVz -dC8zNzeGD2h0dHA6Ly90ZXN0LzM3OIYPaHR0cDovL3Rlc3QvMzc5hg9odHRwOi8v -dGVzdC8zODCGD2h0dHA6Ly90ZXN0LzM4MYYPaHR0cDovL3Rlc3QvMzgyhg9odHRw -Oi8vdGVzdC8zODOGD2h0dHA6Ly90ZXN0LzM4NIYPaHR0cDovL3Rlc3QvMzg1hg9o -dHRwOi8vdGVzdC8zODaGD2h0dHA6Ly90ZXN0LzM4N4YPaHR0cDovL3Rlc3QvMzg4 -hg9odHRwOi8vdGVzdC8zODmGD2h0dHA6Ly90ZXN0LzM5MIYPaHR0cDovL3Rlc3Qv -Mzkxhg9odHRwOi8vdGVzdC8zOTKGD2h0dHA6Ly90ZXN0LzM5M4YPaHR0cDovL3Rl -c3QvMzk0hg9odHRwOi8vdGVzdC8zOTWGD2h0dHA6Ly90ZXN0LzM5NoYPaHR0cDov -L3Rlc3QvMzk3hg9odHRwOi8vdGVzdC8zOTiGD2h0dHA6Ly90ZXN0LzM5OYYPaHR0 -cDovL3Rlc3QvNDAwhg9odHRwOi8vdGVzdC80MDGGD2h0dHA6Ly90ZXN0LzQwMoYP -aHR0cDovL3Rlc3QvNDAzhg9odHRwOi8vdGVzdC80MDSGD2h0dHA6Ly90ZXN0LzQw -NYYPaHR0cDovL3Rlc3QvNDA2hg9odHRwOi8vdGVzdC80MDeGD2h0dHA6Ly90ZXN0 -LzQwOIYPaHR0cDovL3Rlc3QvNDA5hg9odHRwOi8vdGVzdC80MTCGD2h0dHA6Ly90 -ZXN0LzQxMYYPaHR0cDovL3Rlc3QvNDEyhg9odHRwOi8vdGVzdC80MTOGD2h0dHA6 -Ly90ZXN0LzQxNIYPaHR0cDovL3Rlc3QvNDE1hg9odHRwOi8vdGVzdC80MTaGD2h0 -dHA6Ly90ZXN0LzQxN4YPaHR0cDovL3Rlc3QvNDE4hg9odHRwOi8vdGVzdC80MTmG -D2h0dHA6Ly90ZXN0LzQyMIYPaHR0cDovL3Rlc3QvNDIxhg9odHRwOi8vdGVzdC80 -MjKGD2h0dHA6Ly90ZXN0LzQyM4YPaHR0cDovL3Rlc3QvNDI0hg9odHRwOi8vdGVz -dC80MjWGD2h0dHA6Ly90ZXN0LzQyNoYPaHR0cDovL3Rlc3QvNDI3hg9odHRwOi8v -dGVzdC80MjiGD2h0dHA6Ly90ZXN0LzQyOYYPaHR0cDovL3Rlc3QvNDMwhg9odHRw -Oi8vdGVzdC80MzGGD2h0dHA6Ly90ZXN0LzQzMoYPaHR0cDovL3Rlc3QvNDMzhg9o -dHRwOi8vdGVzdC80MzSGD2h0dHA6Ly90ZXN0LzQzNYYPaHR0cDovL3Rlc3QvNDM2 -hg9odHRwOi8vdGVzdC80MzeGD2h0dHA6Ly90ZXN0LzQzOIYPaHR0cDovL3Rlc3Qv -NDM5hg9odHRwOi8vdGVzdC80NDCGD2h0dHA6Ly90ZXN0LzQ0MYYPaHR0cDovL3Rl -c3QvNDQyhg9odHRwOi8vdGVzdC80NDOGD2h0dHA6Ly90ZXN0LzQ0NIYPaHR0cDov -L3Rlc3QvNDQ1hg9odHRwOi8vdGVzdC80NDaGD2h0dHA6Ly90ZXN0LzQ0N4YPaHR0 -cDovL3Rlc3QvNDQ4hg9odHRwOi8vdGVzdC80NDmGD2h0dHA6Ly90ZXN0LzQ1MIYP -aHR0cDovL3Rlc3QvNDUxhg9odHRwOi8vdGVzdC80NTKGD2h0dHA6Ly90ZXN0LzQ1 -M4YPaHR0cDovL3Rlc3QvNDU0hg9odHRwOi8vdGVzdC80NTWGD2h0dHA6Ly90ZXN0 -LzQ1NoYPaHR0cDovL3Rlc3QvNDU3hg9odHRwOi8vdGVzdC80NTiGD2h0dHA6Ly90 -ZXN0LzQ1OYYPaHR0cDovL3Rlc3QvNDYwhg9odHRwOi8vdGVzdC80NjGGD2h0dHA6 -Ly90ZXN0LzQ2MoYPaHR0cDovL3Rlc3QvNDYzhg9odHRwOi8vdGVzdC80NjSGD2h0 -dHA6Ly90ZXN0LzQ2NYYPaHR0cDovL3Rlc3QvNDY2hg9odHRwOi8vdGVzdC80NjeG -D2h0dHA6Ly90ZXN0LzQ2OIYPaHR0cDovL3Rlc3QvNDY5hg9odHRwOi8vdGVzdC80 -NzCGD2h0dHA6Ly90ZXN0LzQ3MYYPaHR0cDovL3Rlc3QvNDcyhg9odHRwOi8vdGVz -dC80NzOGD2h0dHA6Ly90ZXN0LzQ3NIYPaHR0cDovL3Rlc3QvNDc1hg9odHRwOi8v -dGVzdC80NzaGD2h0dHA6Ly90ZXN0LzQ3N4YPaHR0cDovL3Rlc3QvNDc4hg9odHRw -Oi8vdGVzdC80NzmGD2h0dHA6Ly90ZXN0LzQ4MIYPaHR0cDovL3Rlc3QvNDgxhg9o -dHRwOi8vdGVzdC80ODKGD2h0dHA6Ly90ZXN0LzQ4M4YPaHR0cDovL3Rlc3QvNDg0 -hg9odHRwOi8vdGVzdC80ODWGD2h0dHA6Ly90ZXN0LzQ4NoYPaHR0cDovL3Rlc3Qv -NDg3hg9odHRwOi8vdGVzdC80ODiGD2h0dHA6Ly90ZXN0LzQ4OYYPaHR0cDovL3Rl -c3QvNDkwhg9odHRwOi8vdGVzdC80OTGGD2h0dHA6Ly90ZXN0LzQ5MoYPaHR0cDov -L3Rlc3QvNDkzhg9odHRwOi8vdGVzdC80OTSGD2h0dHA6Ly90ZXN0LzQ5NYYPaHR0 -cDovL3Rlc3QvNDk2hg9odHRwOi8vdGVzdC80OTeGD2h0dHA6Ly90ZXN0LzQ5OIYP -aHR0cDovL3Rlc3QvNDk5hg9odHRwOi8vdGVzdC81MDCGD2h0dHA6Ly90ZXN0LzUw -MYYPaHR0cDovL3Rlc3QvNTAyhg9odHRwOi8vdGVzdC81MDOGD2h0dHA6Ly90ZXN0 -LzUwNIYPaHR0cDovL3Rlc3QvNTA1hg9odHRwOi8vdGVzdC81MDaGD2h0dHA6Ly90 -ZXN0LzUwN4YPaHR0cDovL3Rlc3QvNTA4hg9odHRwOi8vdGVzdC81MDmGD2h0dHA6 -Ly90ZXN0LzUxMIYPaHR0cDovL3Rlc3QvNTExhg9odHRwOi8vdGVzdC81MTKGD2h0 -dHA6Ly90ZXN0LzUxM4YPaHR0cDovL3Rlc3QvNTE0hg9odHRwOi8vdGVzdC81MTWG -D2h0dHA6Ly90ZXN0LzUxNoYPaHR0cDovL3Rlc3QvNTE3hg9odHRwOi8vdGVzdC81 -MTiGD2h0dHA6Ly90ZXN0LzUxOYYPaHR0cDovL3Rlc3QvNTIwhg9odHRwOi8vdGVz -dC81MjGGD2h0dHA6Ly90ZXN0LzUyMoYPaHR0cDovL3Rlc3QvNTIzhg9odHRwOi8v -dGVzdC81MjSGD2h0dHA6Ly90ZXN0LzUyNYYPaHR0cDovL3Rlc3QvNTI2hg9odHRw -Oi8vdGVzdC81MjeGD2h0dHA6Ly90ZXN0LzUyOIYPaHR0cDovL3Rlc3QvNTI5hg9o -dHRwOi8vdGVzdC81MzCGD2h0dHA6Ly90ZXN0LzUzMYYPaHR0cDovL3Rlc3QvNTMy -hg9odHRwOi8vdGVzdC81MzOGD2h0dHA6Ly90ZXN0LzUzNIYPaHR0cDovL3Rlc3Qv -NTM1hg9odHRwOi8vdGVzdC81MzaGD2h0dHA6Ly90ZXN0LzUzN4YPaHR0cDovL3Rl -c3QvNTM4hg9odHRwOi8vdGVzdC81MzmGD2h0dHA6Ly90ZXN0LzU0MIYPaHR0cDov -L3Rlc3QvNTQxhg9odHRwOi8vdGVzdC81NDKGD2h0dHA6Ly90ZXN0LzU0M4YPaHR0 -cDovL3Rlc3QvNTQ0hg9odHRwOi8vdGVzdC81NDWGD2h0dHA6Ly90ZXN0LzU0NoYP -aHR0cDovL3Rlc3QvNTQ3hg9odHRwOi8vdGVzdC81NDiGD2h0dHA6Ly90ZXN0LzU0 -OYYPaHR0cDovL3Rlc3QvNTUwhg9odHRwOi8vdGVzdC81NTGGD2h0dHA6Ly90ZXN0 -LzU1MoYPaHR0cDovL3Rlc3QvNTUzhg9odHRwOi8vdGVzdC81NTSGD2h0dHA6Ly90 -ZXN0LzU1NYYPaHR0cDovL3Rlc3QvNTU2hg9odHRwOi8vdGVzdC81NTeGD2h0dHA6 -Ly90ZXN0LzU1OIYPaHR0cDovL3Rlc3QvNTU5hg9odHRwOi8vdGVzdC81NjCGD2h0 -dHA6Ly90ZXN0LzU2MYYPaHR0cDovL3Rlc3QvNTYyhg9odHRwOi8vdGVzdC81NjOG -D2h0dHA6Ly90ZXN0LzU2NIYPaHR0cDovL3Rlc3QvNTY1hg9odHRwOi8vdGVzdC81 -NjaGD2h0dHA6Ly90ZXN0LzU2N4YPaHR0cDovL3Rlc3QvNTY4hg9odHRwOi8vdGVz -dC81NjmGD2h0dHA6Ly90ZXN0LzU3MIYPaHR0cDovL3Rlc3QvNTcxhg9odHRwOi8v -dGVzdC81NzKGD2h0dHA6Ly90ZXN0LzU3M4YPaHR0cDovL3Rlc3QvNTc0hg9odHRw -Oi8vdGVzdC81NzWGD2h0dHA6Ly90ZXN0LzU3NoYPaHR0cDovL3Rlc3QvNTc3hg9o -dHRwOi8vdGVzdC81NziGD2h0dHA6Ly90ZXN0LzU3OYYPaHR0cDovL3Rlc3QvNTgw -hg9odHRwOi8vdGVzdC81ODGGD2h0dHA6Ly90ZXN0LzU4MoYPaHR0cDovL3Rlc3Qv -NTgzhg9odHRwOi8vdGVzdC81ODSGD2h0dHA6Ly90ZXN0LzU4NYYPaHR0cDovL3Rl -c3QvNTg2hg9odHRwOi8vdGVzdC81ODeGD2h0dHA6Ly90ZXN0LzU4OIYPaHR0cDov -L3Rlc3QvNTg5hg9odHRwOi8vdGVzdC81OTCGD2h0dHA6Ly90ZXN0LzU5MYYPaHR0 -cDovL3Rlc3QvNTkyhg9odHRwOi8vdGVzdC81OTOGD2h0dHA6Ly90ZXN0LzU5NIYP -aHR0cDovL3Rlc3QvNTk1hg9odHRwOi8vdGVzdC81OTaGD2h0dHA6Ly90ZXN0LzU5 -N4YPaHR0cDovL3Rlc3QvNTk4hg9odHRwOi8vdGVzdC81OTmGD2h0dHA6Ly90ZXN0 -LzYwMIYPaHR0cDovL3Rlc3QvNjAxhg9odHRwOi8vdGVzdC82MDKGD2h0dHA6Ly90 -ZXN0LzYwM4YPaHR0cDovL3Rlc3QvNjA0hg9odHRwOi8vdGVzdC82MDWGD2h0dHA6 -Ly90ZXN0LzYwNoYPaHR0cDovL3Rlc3QvNjA3hg9odHRwOi8vdGVzdC82MDiGD2h0 -dHA6Ly90ZXN0LzYwOYYPaHR0cDovL3Rlc3QvNjEwhg9odHRwOi8vdGVzdC82MTGG -D2h0dHA6Ly90ZXN0LzYxMoYPaHR0cDovL3Rlc3QvNjEzhg9odHRwOi8vdGVzdC82 -MTSGD2h0dHA6Ly90ZXN0LzYxNYYPaHR0cDovL3Rlc3QvNjE2hg9odHRwOi8vdGVz -dC82MTeGD2h0dHA6Ly90ZXN0LzYxOIYPaHR0cDovL3Rlc3QvNjE5hg9odHRwOi8v -dGVzdC82MjCGD2h0dHA6Ly90ZXN0LzYyMYYPaHR0cDovL3Rlc3QvNjIyhg9odHRw -Oi8vdGVzdC82MjOGD2h0dHA6Ly90ZXN0LzYyNIYPaHR0cDovL3Rlc3QvNjI1hg9o -dHRwOi8vdGVzdC82MjaGD2h0dHA6Ly90ZXN0LzYyN4YPaHR0cDovL3Rlc3QvNjI4 -hg9odHRwOi8vdGVzdC82MjmGD2h0dHA6Ly90ZXN0LzYzMIYPaHR0cDovL3Rlc3Qv -NjMxhg9odHRwOi8vdGVzdC82MzKGD2h0dHA6Ly90ZXN0LzYzM4YPaHR0cDovL3Rl -c3QvNjM0hg9odHRwOi8vdGVzdC82MzWGD2h0dHA6Ly90ZXN0LzYzNoYPaHR0cDov -L3Rlc3QvNjM3hg9odHRwOi8vdGVzdC82MziGD2h0dHA6Ly90ZXN0LzYzOYYPaHR0 -cDovL3Rlc3QvNjQwhg9odHRwOi8vdGVzdC82NDGGD2h0dHA6Ly90ZXN0LzY0MoYP -aHR0cDovL3Rlc3QvNjQzhg9odHRwOi8vdGVzdC82NDSGD2h0dHA6Ly90ZXN0LzY0 -NYYPaHR0cDovL3Rlc3QvNjQ2hg9odHRwOi8vdGVzdC82NDeGD2h0dHA6Ly90ZXN0 -LzY0OIYPaHR0cDovL3Rlc3QvNjQ5hg9odHRwOi8vdGVzdC82NTCGD2h0dHA6Ly90 -ZXN0LzY1MYYPaHR0cDovL3Rlc3QvNjUyhg9odHRwOi8vdGVzdC82NTOGD2h0dHA6 -Ly90ZXN0LzY1NIYPaHR0cDovL3Rlc3QvNjU1hg9odHRwOi8vdGVzdC82NTaGD2h0 -dHA6Ly90ZXN0LzY1N4YPaHR0cDovL3Rlc3QvNjU4hg9odHRwOi8vdGVzdC82NTmG -D2h0dHA6Ly90ZXN0LzY2MIYPaHR0cDovL3Rlc3QvNjYxhg9odHRwOi8vdGVzdC82 -NjKGD2h0dHA6Ly90ZXN0LzY2M4YPaHR0cDovL3Rlc3QvNjY0hg9odHRwOi8vdGVz -dC82NjWGD2h0dHA6Ly90ZXN0LzY2NoYPaHR0cDovL3Rlc3QvNjY3hg9odHRwOi8v -dGVzdC82NjiGD2h0dHA6Ly90ZXN0LzY2OYYPaHR0cDovL3Rlc3QvNjcwhg9odHRw -Oi8vdGVzdC82NzGGD2h0dHA6Ly90ZXN0LzY3MoYPaHR0cDovL3Rlc3QvNjczhg9o -dHRwOi8vdGVzdC82NzSGD2h0dHA6Ly90ZXN0LzY3NYYPaHR0cDovL3Rlc3QvNjc2 -hg9odHRwOi8vdGVzdC82NzeGD2h0dHA6Ly90ZXN0LzY3OIYPaHR0cDovL3Rlc3Qv -Njc5hg9odHRwOi8vdGVzdC82ODCGD2h0dHA6Ly90ZXN0LzY4MYYPaHR0cDovL3Rl -c3QvNjgyhg9odHRwOi8vdGVzdC82ODOGD2h0dHA6Ly90ZXN0LzY4NIYPaHR0cDov -L3Rlc3QvNjg1hg9odHRwOi8vdGVzdC82ODaGD2h0dHA6Ly90ZXN0LzY4N4YPaHR0 -cDovL3Rlc3QvNjg4hg9odHRwOi8vdGVzdC82ODmGD2h0dHA6Ly90ZXN0LzY5MIYP -aHR0cDovL3Rlc3QvNjkxhg9odHRwOi8vdGVzdC82OTKGD2h0dHA6Ly90ZXN0LzY5 -M4YPaHR0cDovL3Rlc3QvNjk0hg9odHRwOi8vdGVzdC82OTWGD2h0dHA6Ly90ZXN0 -LzY5NoYPaHR0cDovL3Rlc3QvNjk3hg9odHRwOi8vdGVzdC82OTiGD2h0dHA6Ly90 -ZXN0LzY5OYYPaHR0cDovL3Rlc3QvNzAwhg9odHRwOi8vdGVzdC83MDGGD2h0dHA6 -Ly90ZXN0LzcwMoYPaHR0cDovL3Rlc3QvNzAzhg9odHRwOi8vdGVzdC83MDSGD2h0 -dHA6Ly90ZXN0LzcwNYYPaHR0cDovL3Rlc3QvNzA2hg9odHRwOi8vdGVzdC83MDeG -D2h0dHA6Ly90ZXN0LzcwOIYPaHR0cDovL3Rlc3QvNzA5hg9odHRwOi8vdGVzdC83 -MTCGD2h0dHA6Ly90ZXN0LzcxMYYPaHR0cDovL3Rlc3QvNzEyhg9odHRwOi8vdGVz -dC83MTOGD2h0dHA6Ly90ZXN0LzcxNIYPaHR0cDovL3Rlc3QvNzE1hg9odHRwOi8v -dGVzdC83MTaGD2h0dHA6Ly90ZXN0LzcxN4YPaHR0cDovL3Rlc3QvNzE4hg9odHRw -Oi8vdGVzdC83MTmGD2h0dHA6Ly90ZXN0LzcyMIYPaHR0cDovL3Rlc3QvNzIxhg9o -dHRwOi8vdGVzdC83MjKGD2h0dHA6Ly90ZXN0LzcyM4YPaHR0cDovL3Rlc3QvNzI0 -hg9odHRwOi8vdGVzdC83MjWGD2h0dHA6Ly90ZXN0LzcyNoYPaHR0cDovL3Rlc3Qv -NzI3hg9odHRwOi8vdGVzdC83MjiGD2h0dHA6Ly90ZXN0LzcyOYYPaHR0cDovL3Rl -c3QvNzMwhg9odHRwOi8vdGVzdC83MzGGD2h0dHA6Ly90ZXN0LzczMoYPaHR0cDov -L3Rlc3QvNzMzhg9odHRwOi8vdGVzdC83MzSGD2h0dHA6Ly90ZXN0LzczNYYPaHR0 -cDovL3Rlc3QvNzM2hg9odHRwOi8vdGVzdC83MzeGD2h0dHA6Ly90ZXN0LzczOIYP -aHR0cDovL3Rlc3QvNzM5hg9odHRwOi8vdGVzdC83NDCGD2h0dHA6Ly90ZXN0Lzc0 -MYYPaHR0cDovL3Rlc3QvNzQyhg9odHRwOi8vdGVzdC83NDOGD2h0dHA6Ly90ZXN0 -Lzc0NIYPaHR0cDovL3Rlc3QvNzQ1hg9odHRwOi8vdGVzdC83NDaGD2h0dHA6Ly90 -ZXN0Lzc0N4YPaHR0cDovL3Rlc3QvNzQ4hg9odHRwOi8vdGVzdC83NDmGD2h0dHA6 -Ly90ZXN0Lzc1MIYPaHR0cDovL3Rlc3QvNzUxhg9odHRwOi8vdGVzdC83NTKGD2h0 -dHA6Ly90ZXN0Lzc1M4YPaHR0cDovL3Rlc3QvNzU0hg9odHRwOi8vdGVzdC83NTWG -D2h0dHA6Ly90ZXN0Lzc1NoYPaHR0cDovL3Rlc3QvNzU3hg9odHRwOi8vdGVzdC83 -NTiGD2h0dHA6Ly90ZXN0Lzc1OYYPaHR0cDovL3Rlc3QvNzYwhg9odHRwOi8vdGVz -dC83NjGGD2h0dHA6Ly90ZXN0Lzc2MoYPaHR0cDovL3Rlc3QvNzYzhg9odHRwOi8v -dGVzdC83NjSGD2h0dHA6Ly90ZXN0Lzc2NYYPaHR0cDovL3Rlc3QvNzY2hg9odHRw -Oi8vdGVzdC83NjeGD2h0dHA6Ly90ZXN0Lzc2OIYPaHR0cDovL3Rlc3QvNzY5hg9o -dHRwOi8vdGVzdC83NzCGD2h0dHA6Ly90ZXN0Lzc3MYYPaHR0cDovL3Rlc3QvNzcy -hg9odHRwOi8vdGVzdC83NzOGD2h0dHA6Ly90ZXN0Lzc3NIYPaHR0cDovL3Rlc3Qv -Nzc1hg9odHRwOi8vdGVzdC83NzaGD2h0dHA6Ly90ZXN0Lzc3N4YPaHR0cDovL3Rl -c3QvNzc4hg9odHRwOi8vdGVzdC83NzmGD2h0dHA6Ly90ZXN0Lzc4MIYPaHR0cDov -L3Rlc3QvNzgxhg9odHRwOi8vdGVzdC83ODKGD2h0dHA6Ly90ZXN0Lzc4M4YPaHR0 -cDovL3Rlc3QvNzg0hg9odHRwOi8vdGVzdC83ODWGD2h0dHA6Ly90ZXN0Lzc4NoYP -aHR0cDovL3Rlc3QvNzg3hg9odHRwOi8vdGVzdC83ODiGD2h0dHA6Ly90ZXN0Lzc4 -OYYPaHR0cDovL3Rlc3QvNzkwhg9odHRwOi8vdGVzdC83OTGGD2h0dHA6Ly90ZXN0 -Lzc5MoYPaHR0cDovL3Rlc3QvNzkzhg9odHRwOi8vdGVzdC83OTSGD2h0dHA6Ly90 -ZXN0Lzc5NYYPaHR0cDovL3Rlc3QvNzk2hg9odHRwOi8vdGVzdC83OTeGD2h0dHA6 -Ly90ZXN0Lzc5OIYPaHR0cDovL3Rlc3QvNzk5hg9odHRwOi8vdGVzdC84MDCGD2h0 -dHA6Ly90ZXN0LzgwMYYPaHR0cDovL3Rlc3QvODAyhg9odHRwOi8vdGVzdC84MDOG -D2h0dHA6Ly90ZXN0LzgwNIYPaHR0cDovL3Rlc3QvODA1hg9odHRwOi8vdGVzdC84 -MDaGD2h0dHA6Ly90ZXN0LzgwN4YPaHR0cDovL3Rlc3QvODA4hg9odHRwOi8vdGVz -dC84MDmGD2h0dHA6Ly90ZXN0LzgxMIYPaHR0cDovL3Rlc3QvODExhg9odHRwOi8v -dGVzdC84MTKGD2h0dHA6Ly90ZXN0LzgxM4YPaHR0cDovL3Rlc3QvODE0hg9odHRw -Oi8vdGVzdC84MTWGD2h0dHA6Ly90ZXN0LzgxNoYPaHR0cDovL3Rlc3QvODE3hg9o -dHRwOi8vdGVzdC84MTiGD2h0dHA6Ly90ZXN0LzgxOYYPaHR0cDovL3Rlc3QvODIw -hg9odHRwOi8vdGVzdC84MjGGD2h0dHA6Ly90ZXN0LzgyMoYPaHR0cDovL3Rlc3Qv -ODIzhg9odHRwOi8vdGVzdC84MjSGD2h0dHA6Ly90ZXN0LzgyNYYPaHR0cDovL3Rl -c3QvODI2hg9odHRwOi8vdGVzdC84MjeGD2h0dHA6Ly90ZXN0LzgyOIYPaHR0cDov -L3Rlc3QvODI5hg9odHRwOi8vdGVzdC84MzCGD2h0dHA6Ly90ZXN0LzgzMYYPaHR0 -cDovL3Rlc3QvODMyhg9odHRwOi8vdGVzdC84MzOGD2h0dHA6Ly90ZXN0LzgzNIYP -aHR0cDovL3Rlc3QvODM1hg9odHRwOi8vdGVzdC84MzaGD2h0dHA6Ly90ZXN0Lzgz -N4YPaHR0cDovL3Rlc3QvODM4hg9odHRwOi8vdGVzdC84MzmGD2h0dHA6Ly90ZXN0 -Lzg0MIYPaHR0cDovL3Rlc3QvODQxhg9odHRwOi8vdGVzdC84NDKGD2h0dHA6Ly90 -ZXN0Lzg0M4YPaHR0cDovL3Rlc3QvODQ0hg9odHRwOi8vdGVzdC84NDWGD2h0dHA6 -Ly90ZXN0Lzg0NoYPaHR0cDovL3Rlc3QvODQ3hg9odHRwOi8vdGVzdC84NDiGD2h0 -dHA6Ly90ZXN0Lzg0OYYPaHR0cDovL3Rlc3QvODUwhg9odHRwOi8vdGVzdC84NTGG -D2h0dHA6Ly90ZXN0Lzg1MoYPaHR0cDovL3Rlc3QvODUzhg9odHRwOi8vdGVzdC84 -NTSGD2h0dHA6Ly90ZXN0Lzg1NYYPaHR0cDovL3Rlc3QvODU2hg9odHRwOi8vdGVz -dC84NTeGD2h0dHA6Ly90ZXN0Lzg1OIYPaHR0cDovL3Rlc3QvODU5hg9odHRwOi8v -dGVzdC84NjCGD2h0dHA6Ly90ZXN0Lzg2MYYPaHR0cDovL3Rlc3QvODYyhg9odHRw -Oi8vdGVzdC84NjOGD2h0dHA6Ly90ZXN0Lzg2NIYPaHR0cDovL3Rlc3QvODY1hg9o -dHRwOi8vdGVzdC84NjaGD2h0dHA6Ly90ZXN0Lzg2N4YPaHR0cDovL3Rlc3QvODY4 -hg9odHRwOi8vdGVzdC84NjmGD2h0dHA6Ly90ZXN0Lzg3MIYPaHR0cDovL3Rlc3Qv -ODcxhg9odHRwOi8vdGVzdC84NzKGD2h0dHA6Ly90ZXN0Lzg3M4YPaHR0cDovL3Rl -c3QvODc0hg9odHRwOi8vdGVzdC84NzWGD2h0dHA6Ly90ZXN0Lzg3NoYPaHR0cDov -L3Rlc3QvODc3hg9odHRwOi8vdGVzdC84NziGD2h0dHA6Ly90ZXN0Lzg3OYYPaHR0 -cDovL3Rlc3QvODgwhg9odHRwOi8vdGVzdC84ODGGD2h0dHA6Ly90ZXN0Lzg4MoYP -aHR0cDovL3Rlc3QvODgzhg9odHRwOi8vdGVzdC84ODSGD2h0dHA6Ly90ZXN0Lzg4 -NYYPaHR0cDovL3Rlc3QvODg2hg9odHRwOi8vdGVzdC84ODeGD2h0dHA6Ly90ZXN0 -Lzg4OIYPaHR0cDovL3Rlc3QvODg5hg9odHRwOi8vdGVzdC84OTCGD2h0dHA6Ly90 -ZXN0Lzg5MYYPaHR0cDovL3Rlc3QvODkyhg9odHRwOi8vdGVzdC84OTOGD2h0dHA6 -Ly90ZXN0Lzg5NIYPaHR0cDovL3Rlc3QvODk1hg9odHRwOi8vdGVzdC84OTaGD2h0 -dHA6Ly90ZXN0Lzg5N4YPaHR0cDovL3Rlc3QvODk4hg9odHRwOi8vdGVzdC84OTmG -D2h0dHA6Ly90ZXN0LzkwMIYPaHR0cDovL3Rlc3QvOTAxhg9odHRwOi8vdGVzdC85 -MDKGD2h0dHA6Ly90ZXN0LzkwM4YPaHR0cDovL3Rlc3QvOTA0hg9odHRwOi8vdGVz -dC85MDWGD2h0dHA6Ly90ZXN0LzkwNoYPaHR0cDovL3Rlc3QvOTA3hg9odHRwOi8v -dGVzdC85MDiGD2h0dHA6Ly90ZXN0LzkwOYYPaHR0cDovL3Rlc3QvOTEwhg9odHRw -Oi8vdGVzdC85MTGGD2h0dHA6Ly90ZXN0LzkxMoYPaHR0cDovL3Rlc3QvOTEzhg9o -dHRwOi8vdGVzdC85MTSGD2h0dHA6Ly90ZXN0LzkxNYYPaHR0cDovL3Rlc3QvOTE2 -hg9odHRwOi8vdGVzdC85MTeGD2h0dHA6Ly90ZXN0LzkxOIYPaHR0cDovL3Rlc3Qv -OTE5hg9odHRwOi8vdGVzdC85MjCGD2h0dHA6Ly90ZXN0LzkyMYYPaHR0cDovL3Rl -c3QvOTIyhg9odHRwOi8vdGVzdC85MjOGD2h0dHA6Ly90ZXN0LzkyNIYPaHR0cDov -L3Rlc3QvOTI1hg9odHRwOi8vdGVzdC85MjaGD2h0dHA6Ly90ZXN0LzkyN4YPaHR0 -cDovL3Rlc3QvOTI4hg9odHRwOi8vdGVzdC85MjmGD2h0dHA6Ly90ZXN0LzkzMIYP -aHR0cDovL3Rlc3QvOTMxhg9odHRwOi8vdGVzdC85MzKGD2h0dHA6Ly90ZXN0Lzkz -M4YPaHR0cDovL3Rlc3QvOTM0hg9odHRwOi8vdGVzdC85MzWGD2h0dHA6Ly90ZXN0 -LzkzNoYPaHR0cDovL3Rlc3QvOTM3hg9odHRwOi8vdGVzdC85MziGD2h0dHA6Ly90 -ZXN0LzkzOYYPaHR0cDovL3Rlc3QvOTQwhg9odHRwOi8vdGVzdC85NDGGD2h0dHA6 -Ly90ZXN0Lzk0MoYPaHR0cDovL3Rlc3QvOTQzhg9odHRwOi8vdGVzdC85NDSGD2h0 -dHA6Ly90ZXN0Lzk0NYYPaHR0cDovL3Rlc3QvOTQ2hg9odHRwOi8vdGVzdC85NDeG -D2h0dHA6Ly90ZXN0Lzk0OIYPaHR0cDovL3Rlc3QvOTQ5hg9odHRwOi8vdGVzdC85 -NTCGD2h0dHA6Ly90ZXN0Lzk1MYYPaHR0cDovL3Rlc3QvOTUyhg9odHRwOi8vdGVz -dC85NTOGD2h0dHA6Ly90ZXN0Lzk1NIYPaHR0cDovL3Rlc3QvOTU1hg9odHRwOi8v -dGVzdC85NTaGD2h0dHA6Ly90ZXN0Lzk1N4YPaHR0cDovL3Rlc3QvOTU4hg9odHRw -Oi8vdGVzdC85NTmGD2h0dHA6Ly90ZXN0Lzk2MIYPaHR0cDovL3Rlc3QvOTYxhg9o -dHRwOi8vdGVzdC85NjKGD2h0dHA6Ly90ZXN0Lzk2M4YPaHR0cDovL3Rlc3QvOTY0 -hg9odHRwOi8vdGVzdC85NjWGD2h0dHA6Ly90ZXN0Lzk2NoYPaHR0cDovL3Rlc3Qv -OTY3hg9odHRwOi8vdGVzdC85NjiGD2h0dHA6Ly90ZXN0Lzk2OYYPaHR0cDovL3Rl -c3QvOTcwhg9odHRwOi8vdGVzdC85NzGGD2h0dHA6Ly90ZXN0Lzk3MoYPaHR0cDov -L3Rlc3QvOTczhg9odHRwOi8vdGVzdC85NzSGD2h0dHA6Ly90ZXN0Lzk3NYYPaHR0 -cDovL3Rlc3QvOTc2hg9odHRwOi8vdGVzdC85NzeGD2h0dHA6Ly90ZXN0Lzk3OIYP -aHR0cDovL3Rlc3QvOTc5hg9odHRwOi8vdGVzdC85ODCGD2h0dHA6Ly90ZXN0Lzk4 -MYYPaHR0cDovL3Rlc3QvOTgyhg9odHRwOi8vdGVzdC85ODOGD2h0dHA6Ly90ZXN0 -Lzk4NIYPaHR0cDovL3Rlc3QvOTg1hg9odHRwOi8vdGVzdC85ODaGD2h0dHA6Ly90 -ZXN0Lzk4N4YPaHR0cDovL3Rlc3QvOTg4hg9odHRwOi8vdGVzdC85ODmGD2h0dHA6 -Ly90ZXN0Lzk5MIYPaHR0cDovL3Rlc3QvOTkxhg9odHRwOi8vdGVzdC85OTKGD2h0 -dHA6Ly90ZXN0Lzk5M4YPaHR0cDovL3Rlc3QvOTk0hg9odHRwOi8vdGVzdC85OTWG -D2h0dHA6Ly90ZXN0Lzk5NoYPaHR0cDovL3Rlc3QvOTk3hg9odHRwOi8vdGVzdC85 -OTiGD2h0dHA6Ly90ZXN0Lzk5OYYQaHR0cDovL3Rlc3QvMTAwMIYQaHR0cDovL3Rl -c3QvMTAwMYYQaHR0cDovL3Rlc3QvMTAwMoYQaHR0cDovL3Rlc3QvMTAwM4YQaHR0 -cDovL3Rlc3QvMTAwNIYQaHR0cDovL3Rlc3QvMTAwNYYQaHR0cDovL3Rlc3QvMTAw -NoYQaHR0cDovL3Rlc3QvMTAwN4YQaHR0cDovL3Rlc3QvMTAwOIYQaHR0cDovL3Rl -c3QvMTAwOYYQaHR0cDovL3Rlc3QvMTAxMIYQaHR0cDovL3Rlc3QvMTAxMYYQaHR0 -cDovL3Rlc3QvMTAxMoYQaHR0cDovL3Rlc3QvMTAxM4YQaHR0cDovL3Rlc3QvMTAx -NIYQaHR0cDovL3Rlc3QvMTAxNYYQaHR0cDovL3Rlc3QvMTAxNoYQaHR0cDovL3Rl -c3QvMTAxN4YQaHR0cDovL3Rlc3QvMTAxOIYQaHR0cDovL3Rlc3QvMTAxOYYQaHR0 -cDovL3Rlc3QvMTAyMIYQaHR0cDovL3Rlc3QvMTAyMYYQaHR0cDovL3Rlc3QvMTAy -MoYQaHR0cDovL3Rlc3QvMTAyM4YQaHR0cDovL3Rlc3QvMTAyNDANBgkqhkiG9w0B -AQsFAAOCAQEACAB/4EB10kM2P+Nsz8FKabIMG6ioa3ru7dAt7uJS2SofXawp9RLi -rzvboG06tAnvdvpSaF8HX5+kUo8d2tq2k1SHR9A8Zn7/G+Me2lJMAEZbDOueuF4e -2/fO3SwPTiMdY5jt5RjoBJyhHs1Y3glDTb+NS22OMummU0AXDOJZQ1UtP6uvqhNI -rACsW98WxyAq6lDveXjJNNXFf48n0FpCOugTAVG8o7lTbx3kc1KN8Mec0UYZqihj -PsxKX2MNHShL4LQ3g9uFjISGfjcVqO2oANoUl/3xyOpuOrcZwW9Tawv/KWAwfbY1 -1rhYb1UyGMZEwwjYxJUle7oTBCY0fNQOoQ== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D5.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D5.pem deleted file mode 100644 index 7ef7fdabb3..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D5.pem +++ /dev/null @@ -1,344 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d5 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DNS:t0.test, DNS:t1.test, DNS:t2.test, DNS:t3.test, DNS:t4.test, DNS:t5.test, DNS:t6.test, DNS:t7.test, DNS:t8.test, DNS:t9.test, DNS:t10.test, DNS:t11.test, DNS:t12.test, DNS:t13.test, DNS:t14.test, DNS:t15.test, DNS:t16.test, DNS:t17.test, DNS:t18.test, DNS:t19.test, DNS:t20.test, DNS:t21.test, DNS:t22.test, DNS:t23.test, DNS:t24.test, DNS:t25.test, DNS:t26.test, DNS:t27.test, DNS:t28.test, DNS:t29.test, DNS:t30.test, DNS:t31.test, DNS:t32.test, DNS:t33.test, DNS:t34.test, DNS:t35.test, DNS:t36.test, DNS:t37.test, DNS:t38.test, DNS:t39.test, DNS:t40.test, DNS:t41.test, DNS:t42.test, DNS:t43.test, DNS:t44.test, DNS:t45.test, DNS:t46.test, DNS:t47.test, DNS:t48.test, DNS:t49.test, DNS:t50.test, DNS:t51.test, DNS:t52.test, DNS:t53.test, DNS:t54.test, DNS:t55.test, DNS:t56.test, DNS:t57.test, DNS:t58.test, DNS:t59.test, DNS:t60.test, DNS:t61.test, DNS:t62.test, DNS:t63.test, DNS:t64.test, DNS:t65.test, DNS:t66.test, DNS:t67.test, DNS:t68.test, DNS:t69.test, DNS:t70.test, DNS:t71.test, DNS:t72.test, DNS:t73.test, DNS:t74.test, DNS:t75.test, DNS:t76.test, DNS:t77.test, DNS:t78.test, DNS:t79.test, DNS:t80.test, DNS:t81.test, DNS:t82.test, DNS:t83.test, DNS:t84.test, DNS:t85.test, DNS:t86.test, DNS:t87.test, DNS:t88.test, DNS:t89.test, DNS:t90.test, DNS:t91.test, DNS:t92.test, DNS:t93.test, DNS:t94.test, DNS:t95.test, DNS:t96.test, DNS:t97.test, DNS:t98.test, DNS:t99.test, DNS:t100.test, DNS:t101.test, DNS:t102.test, DNS:t103.test, DNS:t104.test, DNS:t105.test, DNS:t106.test, DNS:t107.test, DNS:t108.test, DNS:t109.test, DNS:t110.test, DNS:t111.test, DNS:t112.test, DNS:t113.test, DNS:t114.test, DNS:t115.test, DNS:t116.test, DNS:t117.test, DNS:t118.test, DNS:t119.test, DNS:t120.test, DNS:t121.test, DNS:t122.test, DNS:t123.test, DNS:t124.test, DNS:t125.test, DNS:t126.test, DNS:t127.test, DNS:t128.test, DNS:t129.test, DNS:t130.test, DNS:t131.test, DNS:t132.test, DNS:t133.test, DNS:t134.test, DNS:t135.test, DNS:t136.test, DNS:t137.test, DNS:t138.test, DNS:t139.test, DNS:t140.test, DNS:t141.test, DNS:t142.test, DNS:t143.test, DNS:t144.test, DNS:t145.test, DNS:t146.test, DNS:t147.test, DNS:t148.test, DNS:t149.test, DNS:t150.test, DNS:t151.test, DNS:t152.test, DNS:t153.test, DNS:t154.test, DNS:t155.test, DNS:t156.test, DNS:t157.test, DNS:t158.test, DNS:t159.test, DNS:t160.test, DNS:t161.test, DNS:t162.test, DNS:t163.test, DNS:t164.test, DNS:t165.test, DNS:t166.test, DNS:t167.test, DNS:t168.test, DNS:t169.test, DNS:t170.test, DNS:t171.test, DNS:t172.test, DNS:t173.test, DNS:t174.test, DNS:t175.test, DNS:t176.test, DNS:t177.test, DNS:t178.test, DNS:t179.test, DNS:t180.test, DNS:t181.test, DNS:t182.test, DNS:t183.test, DNS:t184.test, DNS:t185.test, DNS:t186.test, DNS:t187.test, DNS:t188.test, DNS:t189.test, DNS:t190.test, DNS:t191.test, DNS:t192.test, DNS:t193.test, DNS:t194.test, DNS:t195.test, DNS:t196.test, DNS:t197.test, DNS:t198.test, DNS:t199.test, DNS:t200.test, DNS:t201.test, DNS:t202.test, DNS:t203.test, DNS:t204.test, DNS:t205.test, DNS:t206.test, DNS:t207.test, DNS:t208.test, DNS:t209.test, DNS:t210.test, DNS:t211.test, DNS:t212.test, DNS:t213.test, DNS:t214.test, DNS:t215.test, DNS:t216.test, DNS:t217.test, DNS:t218.test, DNS:t219.test, DNS:t220.test, DNS:t221.test, DNS:t222.test, DNS:t223.test, DNS:t224.test, DNS:t225.test, DNS:t226.test, DNS:t227.test, DNS:t228.test, DNS:t229.test, DNS:t230.test, DNS:t231.test, DNS:t232.test, DNS:t233.test, DNS:t234.test, DNS:t235.test, DNS:t236.test, DNS:t237.test, DNS:t238.test, DNS:t239.test, DNS:t240.test, DNS:t241.test, DNS:t242.test, DNS:t243.test, DNS:t244.test, DNS:t245.test, DNS:t246.test, DNS:t247.test, DNS:t248.test, DNS:t249.test, DNS:t250.test, DNS:t251.test, DNS:t252.test, DNS:t253.test, DNS:t254.test, DNS:t255.test, DNS:t256.test, DNS:t257.test, DNS:t258.test, DNS:t259.test, DNS:t260.test, DNS:t261.test, DNS:t262.test, DNS:t263.test, DNS:t264.test, DNS:t265.test, DNS:t266.test, DNS:t267.test, DNS:t268.test, DNS:t269.test, DNS:t270.test, DNS:t271.test, DNS:t272.test, DNS:t273.test, DNS:t274.test, DNS:t275.test, DNS:t276.test, DNS:t277.test, DNS:t278.test, DNS:t279.test, DNS:t280.test, DNS:t281.test, DNS:t282.test, DNS:t283.test, DNS:t284.test, DNS:t285.test, DNS:t286.test, DNS:t287.test, DNS:t288.test, DNS:t289.test, DNS:t290.test, DNS:t291.test, DNS:t292.test, DNS:t293.test, DNS:t294.test, DNS:t295.test, DNS:t296.test, DNS:t297.test, DNS:t298.test, DNS:t299.test, DNS:t300.test, DNS:t301.test, DNS:t302.test, DNS:t303.test, DNS:t304.test, DNS:t305.test, DNS:t306.test, DNS:t307.test, DNS:t308.test, DNS:t309.test, DNS:t310.test, DNS:t311.test, DNS:t312.test, DNS:t313.test, DNS:t314.test, DNS:t315.test, DNS:t316.test, DNS:t317.test, DNS:t318.test, DNS:t319.test, DNS:t320.test, DNS:t321.test, DNS:t322.test, DNS:t323.test, DNS:t324.test, DNS:t325.test, DNS:t326.test, DNS:t327.test, DNS:t328.test, DNS:t329.test, DNS:t330.test, DNS:t331.test, DNS:t332.test, DNS:t333.test, DNS:t334.test, DNS:t335.test, DNS:t336.test, DNS:t337.test, DNS:t338.test, DNS:t339.test, DNS:t340.test, DNS:t341.test, IP Address:10.0.0.0, IP Address:10.0.0.1, IP Address:10.0.0.2, IP Address:10.0.0.3, IP Address:10.0.0.4, IP Address:10.0.0.5, IP Address:10.0.0.6, IP Address:10.0.0.7, IP Address:10.0.0.8, IP Address:10.0.0.9, IP Address:10.0.0.10, IP Address:10.0.0.11, IP Address:10.0.0.12, IP Address:10.0.0.13, IP Address:10.0.0.14, IP Address:10.0.0.15, IP Address:10.0.0.16, IP Address:10.0.0.17, IP Address:10.0.0.18, IP Address:10.0.0.19, IP Address:10.0.0.20, IP Address:10.0.0.21, IP Address:10.0.0.22, IP Address:10.0.0.23, IP Address:10.0.0.24, IP Address:10.0.0.25, IP Address:10.0.0.26, IP Address:10.0.0.27, IP Address:10.0.0.28, IP Address:10.0.0.29, IP Address:10.0.0.30, IP Address:10.0.0.31, IP Address:10.0.0.32, IP Address:10.0.0.33, IP Address:10.0.0.34, IP Address:10.0.0.35, IP Address:10.0.0.36, IP Address:10.0.0.37, IP Address:10.0.0.38, IP Address:10.0.0.39, IP Address:10.0.0.40, IP Address:10.0.0.41, IP Address:10.0.0.42, IP Address:10.0.0.43, IP Address:10.0.0.44, IP Address:10.0.0.45, IP Address:10.0.0.46, IP Address:10.0.0.47, IP Address:10.0.0.48, IP Address:10.0.0.49, IP Address:10.0.0.50, IP Address:10.0.0.51, IP Address:10.0.0.52, IP Address:10.0.0.53, IP Address:10.0.0.54, IP Address:10.0.0.55, IP Address:10.0.0.56, IP Address:10.0.0.57, IP Address:10.0.0.58, IP Address:10.0.0.59, IP Address:10.0.0.60, IP Address:10.0.0.61, IP Address:10.0.0.62, IP Address:10.0.0.63, IP Address:10.0.0.64, IP Address:10.0.0.65, IP Address:10.0.0.66, IP Address:10.0.0.67, IP Address:10.0.0.68, IP Address:10.0.0.69, IP Address:10.0.0.70, IP Address:10.0.0.71, IP Address:10.0.0.72, IP Address:10.0.0.73, IP Address:10.0.0.74, IP Address:10.0.0.75, IP Address:10.0.0.76, IP Address:10.0.0.77, IP Address:10.0.0.78, IP Address:10.0.0.79, IP Address:10.0.0.80, IP Address:10.0.0.81, IP Address:10.0.0.82, IP Address:10.0.0.83, IP Address:10.0.0.84, IP Address:10.0.0.85, IP Address:10.0.0.86, IP Address:10.0.0.87, IP Address:10.0.0.88, IP Address:10.0.0.89, IP Address:10.0.0.90, IP Address:10.0.0.91, IP Address:10.0.0.92, IP Address:10.0.0.93, IP Address:10.0.0.94, IP Address:10.0.0.95, IP Address:10.0.0.96, IP Address:10.0.0.97, IP Address:10.0.0.98, IP Address:10.0.0.99, IP Address:10.0.0.100, IP Address:10.0.0.101, IP Address:10.0.0.102, IP Address:10.0.0.103, IP Address:10.0.0.104, IP Address:10.0.0.105, IP Address:10.0.0.106, IP Address:10.0.0.107, IP Address:10.0.0.108, IP Address:10.0.0.109, IP Address:10.0.0.110, IP Address:10.0.0.111, IP Address:10.0.0.112, IP Address:10.0.0.113, IP Address:10.0.0.114, IP Address:10.0.0.115, IP Address:10.0.0.116, IP Address:10.0.0.117, IP Address:10.0.0.118, IP Address:10.0.0.119, IP Address:10.0.0.120, IP Address:10.0.0.121, IP Address:10.0.0.122, IP Address:10.0.0.123, IP Address:10.0.0.124, IP Address:10.0.0.125, IP Address:10.0.0.126, IP Address:10.0.0.127, IP Address:10.0.0.128, IP Address:10.0.0.129, IP Address:10.0.0.130, IP Address:10.0.0.131, IP Address:10.0.0.132, IP Address:10.0.0.133, IP Address:10.0.0.134, IP Address:10.0.0.135, IP Address:10.0.0.136, IP Address:10.0.0.137, IP Address:10.0.0.138, IP Address:10.0.0.139, IP Address:10.0.0.140, IP Address:10.0.0.141, IP Address:10.0.0.142, IP Address:10.0.0.143, IP Address:10.0.0.144, IP Address:10.0.0.145, IP Address:10.0.0.146, IP Address:10.0.0.147, IP Address:10.0.0.148, IP Address:10.0.0.149, IP Address:10.0.0.150, IP Address:10.0.0.151, IP Address:10.0.0.152, IP Address:10.0.0.153, IP Address:10.0.0.154, IP Address:10.0.0.155, IP Address:10.0.0.156, IP Address:10.0.0.157, IP Address:10.0.0.158, IP Address:10.0.0.159, IP Address:10.0.0.160, IP Address:10.0.0.161, IP Address:10.0.0.162, IP Address:10.0.0.163, IP Address:10.0.0.164, IP Address:10.0.0.165, IP Address:10.0.0.166, IP Address:10.0.0.167, IP Address:10.0.0.168, IP Address:10.0.0.169, IP Address:10.0.0.170, IP Address:10.0.0.171, IP Address:10.0.0.172, IP Address:10.0.0.173, IP Address:10.0.0.174, IP Address:10.0.0.175, IP Address:10.0.0.176, IP Address:10.0.0.177, IP Address:10.0.0.178, IP Address:10.0.0.179, IP Address:10.0.0.180, IP Address:10.0.0.181, IP Address:10.0.0.182, IP Address:10.0.0.183, IP Address:10.0.0.184, IP Address:10.0.0.185, IP Address:10.0.0.186, IP Address:10.0.0.187, IP Address:10.0.0.188, IP Address:10.0.0.189, IP Address:10.0.0.190, IP Address:10.0.0.191, IP Address:10.0.0.192, IP Address:10.0.0.193, IP Address:10.0.0.194, IP Address:10.0.0.195, IP Address:10.0.0.196, IP Address:10.0.0.197, IP Address:10.0.0.198, IP Address:10.0.0.199, IP Address:10.0.0.200, IP Address:10.0.0.201, IP Address:10.0.0.202, IP Address:10.0.0.203, IP Address:10.0.0.204, IP Address:10.0.0.205, IP Address:10.0.0.206, IP Address:10.0.0.207, IP Address:10.0.0.208, IP Address:10.0.0.209, IP Address:10.0.0.210, IP Address:10.0.0.211, IP Address:10.0.0.212, IP Address:10.0.0.213, IP Address:10.0.0.214, IP Address:10.0.0.215, IP Address:10.0.0.216, IP Address:10.0.0.217, IP Address:10.0.0.218, IP Address:10.0.0.219, IP Address:10.0.0.220, IP Address:10.0.0.221, IP Address:10.0.0.222, IP Address:10.0.0.223, IP Address:10.0.0.224, IP Address:10.0.0.225, IP Address:10.0.0.226, IP Address:10.0.0.227, IP Address:10.0.0.228, IP Address:10.0.0.229, IP Address:10.0.0.230, IP Address:10.0.0.231, IP Address:10.0.0.232, IP Address:10.0.0.233, IP Address:10.0.0.234, IP Address:10.0.0.235, IP Address:10.0.0.236, IP Address:10.0.0.237, IP Address:10.0.0.238, IP Address:10.0.0.239, IP Address:10.0.0.240, IP Address:10.0.0.241, IP Address:10.0.0.242, IP Address:10.0.0.243, IP Address:10.0.0.244, IP Address:10.0.0.245, IP Address:10.0.0.246, IP Address:10.0.0.247, IP Address:10.0.0.248, IP Address:10.0.0.249, IP Address:10.0.0.250, IP Address:10.0.0.251, IP Address:10.0.0.252, IP Address:10.0.0.253, IP Address:10.0.0.254, IP Address:10.0.0.255, IP Address:10.0.1.0, IP Address:10.0.1.1, IP Address:10.0.1.2, IP Address:10.0.1.3, IP Address:10.0.1.4, IP Address:10.0.1.5, IP Address:10.0.1.6, IP Address:10.0.1.7, IP Address:10.0.1.8, IP Address:10.0.1.9, IP Address:10.0.1.10, IP Address:10.0.1.11, IP Address:10.0.1.12, IP Address:10.0.1.13, IP Address:10.0.1.14, IP Address:10.0.1.15, IP Address:10.0.1.16, IP Address:10.0.1.17, IP Address:10.0.1.18, IP Address:10.0.1.19, IP Address:10.0.1.20, IP Address:10.0.1.21, IP Address:10.0.1.22, IP Address:10.0.1.23, IP Address:10.0.1.24, IP Address:10.0.1.25, IP Address:10.0.1.26, IP Address:10.0.1.27, IP Address:10.0.1.28, IP Address:10.0.1.29, IP Address:10.0.1.30, IP Address:10.0.1.31, IP Address:10.0.1.32, IP Address:10.0.1.33, IP Address:10.0.1.34, IP Address:10.0.1.35, IP Address:10.0.1.36, IP Address:10.0.1.37, IP Address:10.0.1.38, IP Address:10.0.1.39, IP Address:10.0.1.40, IP Address:10.0.1.41, IP Address:10.0.1.42, IP Address:10.0.1.43, IP Address:10.0.1.44, IP Address:10.0.1.45, IP Address:10.0.1.46, IP Address:10.0.1.47, IP Address:10.0.1.48, IP Address:10.0.1.49, IP Address:10.0.1.50, IP Address:10.0.1.51, IP Address:10.0.1.52, IP Address:10.0.1.53, IP Address:10.0.1.54, IP Address:10.0.1.55, IP Address:10.0.1.56, IP Address:10.0.1.57, IP Address:10.0.1.58, IP Address:10.0.1.59, IP Address:10.0.1.60, IP Address:10.0.1.61, IP Address:10.0.1.62, IP Address:10.0.1.63, IP Address:10.0.1.64, IP Address:10.0.1.65, IP Address:10.0.1.66, IP Address:10.0.1.67, IP Address:10.0.1.68, IP Address:10.0.1.69, IP Address:10.0.1.70, IP Address:10.0.1.71, IP Address:10.0.1.72, IP Address:10.0.1.73, IP Address:10.0.1.74, IP Address:10.0.1.75, IP Address:10.0.1.76, IP Address:10.0.1.77, IP Address:10.0.1.78, IP Address:10.0.1.79, IP Address:10.0.1.80, IP Address:10.0.1.81, IP Address:10.0.1.82, IP Address:10.0.1.83, IP Address:10.0.1.84, DirName:/CN=t0, DirName:/CN=t1, DirName:/CN=t2, DirName:/CN=t3, DirName:/CN=t4, DirName:/CN=t5, DirName:/CN=t6, DirName:/CN=t7, DirName:/CN=t8, DirName:/CN=t9, DirName:/CN=t10, DirName:/CN=t11, DirName:/CN=t12, DirName:/CN=t13, DirName:/CN=t14, DirName:/CN=t15, DirName:/CN=t16, DirName:/CN=t17, DirName:/CN=t18, DirName:/CN=t19, DirName:/CN=t20, DirName:/CN=t21, DirName:/CN=t22, DirName:/CN=t23, DirName:/CN=t24, DirName:/CN=t25, DirName:/CN=t26, DirName:/CN=t27, DirName:/CN=t28, DirName:/CN=t29, DirName:/CN=t30, DirName:/CN=t31, DirName:/CN=t32, DirName:/CN=t33, DirName:/CN=t34, DirName:/CN=t35, DirName:/CN=t36, DirName:/CN=t37, DirName:/CN=t38, DirName:/CN=t39, DirName:/CN=t40, DirName:/CN=t41, DirName:/CN=t42, DirName:/CN=t43, DirName:/CN=t44, DirName:/CN=t45, DirName:/CN=t46, DirName:/CN=t47, DirName:/CN=t48, DirName:/CN=t49, DirName:/CN=t50, DirName:/CN=t51, DirName:/CN=t52, DirName:/CN=t53, DirName:/CN=t54, DirName:/CN=t55, DirName:/CN=t56, DirName:/CN=t57, DirName:/CN=t58, DirName:/CN=t59, DirName:/CN=t60, DirName:/CN=t61, DirName:/CN=t62, DirName:/CN=t63, DirName:/CN=t64, DirName:/CN=t65, DirName:/CN=t66, DirName:/CN=t67, DirName:/CN=t68, DirName:/CN=t69, DirName:/CN=t70, DirName:/CN=t71, DirName:/CN=t72, DirName:/CN=t73, DirName:/CN=t74, DirName:/CN=t75, DirName:/CN=t76, DirName:/CN=t77, DirName:/CN=t78, DirName:/CN=t79, DirName:/CN=t80, DirName:/CN=t81, DirName:/CN=t82, DirName:/CN=t83, DirName:/CN=t84, DirName:/CN=t85, DirName:/CN=t86, DirName:/CN=t87, DirName:/CN=t88, DirName:/CN=t89, DirName:/CN=t90, DirName:/CN=t91, DirName:/CN=t92, DirName:/CN=t93, DirName:/CN=t94, DirName:/CN=t95, DirName:/CN=t96, DirName:/CN=t97, DirName:/CN=t98, DirName:/CN=t99, DirName:/CN=t100, DirName:/CN=t101, DirName:/CN=t102, DirName:/CN=t103, DirName:/CN=t104, DirName:/CN=t105, DirName:/CN=t106, DirName:/CN=t107, DirName:/CN=t108, DirName:/CN=t109, DirName:/CN=t110, DirName:/CN=t111, DirName:/CN=t112, DirName:/CN=t113, DirName:/CN=t114, DirName:/CN=t115, DirName:/CN=t116, DirName:/CN=t117, DirName:/CN=t118, DirName:/CN=t119, DirName:/CN=t120, DirName:/CN=t121, DirName:/CN=t122, DirName:/CN=t123, DirName:/CN=t124, DirName:/CN=t125, DirName:/CN=t126, DirName:/CN=t127, DirName:/CN=t128, DirName:/CN=t129, DirName:/CN=t130, DirName:/CN=t131, DirName:/CN=t132, DirName:/CN=t133, DirName:/CN=t134, DirName:/CN=t135, DirName:/CN=t136, DirName:/CN=t137, DirName:/CN=t138, DirName:/CN=t139, DirName:/CN=t140, DirName:/CN=t141, DirName:/CN=t142, DirName:/CN=t143, DirName:/CN=t144, DirName:/CN=t145, DirName:/CN=t146, DirName:/CN=t147, DirName:/CN=t148, DirName:/CN=t149, DirName:/CN=t150, DirName:/CN=t151, DirName:/CN=t152, DirName:/CN=t153, DirName:/CN=t154, DirName:/CN=t155, DirName:/CN=t156, DirName:/CN=t157, DirName:/CN=t158, DirName:/CN=t159, DirName:/CN=t160, DirName:/CN=t161, DirName:/CN=t162, DirName:/CN=t163, DirName:/CN=t164, DirName:/CN=t165, DirName:/CN=t166, DirName:/CN=t167, DirName:/CN=t168, DirName:/CN=t169, DirName:/CN=t170, DirName:/CN=t171, DirName:/CN=t172, DirName:/CN=t173, DirName:/CN=t174, DirName:/CN=t175, DirName:/CN=t176, DirName:/CN=t177, DirName:/CN=t178, DirName:/CN=t179, DirName:/CN=t180, DirName:/CN=t181, DirName:/CN=t182, DirName:/CN=t183, DirName:/CN=t184, DirName:/CN=t185, DirName:/CN=t186, DirName:/CN=t187, DirName:/CN=t188, DirName:/CN=t189, DirName:/CN=t190, DirName:/CN=t191, DirName:/CN=t192, DirName:/CN=t193, DirName:/CN=t194, DirName:/CN=t195, DirName:/CN=t196, DirName:/CN=t197, DirName:/CN=t198, DirName:/CN=t199, DirName:/CN=t200, DirName:/CN=t201, DirName:/CN=t202, DirName:/CN=t203, DirName:/CN=t204, DirName:/CN=t205, DirName:/CN=t206, DirName:/CN=t207, DirName:/CN=t208, DirName:/CN=t209, DirName:/CN=t210, DirName:/CN=t211, DirName:/CN=t212, DirName:/CN=t213, DirName:/CN=t214, DirName:/CN=t215, DirName:/CN=t216, DirName:/CN=t217, DirName:/CN=t218, DirName:/CN=t219, DirName:/CN=t220, DirName:/CN=t221, DirName:/CN=t222, DirName:/CN=t223, DirName:/CN=t224, DirName:/CN=t225, DirName:/CN=t226, DirName:/CN=t227, DirName:/CN=t228, DirName:/CN=t229, DirName:/CN=t230, DirName:/CN=t231, DirName:/CN=t232, DirName:/CN=t233, DirName:/CN=t234, DirName:/CN=t235, DirName:/CN=t236, DirName:/CN=t237, DirName:/CN=t238, DirName:/CN=t239, DirName:/CN=t240, DirName:/CN=t241, DirName:/CN=t242, DirName:/CN=t243, DirName:/CN=t244, DirName:/CN=t245, DirName:/CN=t246, DirName:/CN=t247, DirName:/CN=t248, DirName:/CN=t249, DirName:/CN=t250, DirName:/CN=t251, DirName:/CN=t252, DirName:/CN=t253, DirName:/CN=t254, DirName:/CN=t255, DirName:/CN=t256, DirName:/CN=t257, DirName:/CN=t258, DirName:/CN=t259, DirName:/CN=t260, DirName:/CN=t261, DirName:/CN=t262, DirName:/CN=t263, DirName:/CN=t264, DirName:/CN=t265, DirName:/CN=t266, DirName:/CN=t267, DirName:/CN=t268, DirName:/CN=t269, DirName:/CN=t270, DirName:/CN=t271, DirName:/CN=t272, DirName:/CN=t273, DirName:/CN=t274, DirName:/CN=t275, DirName:/CN=t276, DirName:/CN=t277, DirName:/CN=t278, DirName:/CN=t279, DirName:/CN=t280, DirName:/CN=t281, DirName:/CN=t282, DirName:/CN=t283, DirName:/CN=t284, DirName:/CN=t285, DirName:/CN=t286, DirName:/CN=t287, DirName:/CN=t288, DirName:/CN=t289, DirName:/CN=t290, DirName:/CN=t291, DirName:/CN=t292, DirName:/CN=t293, DirName:/CN=t294, DirName:/CN=t295, DirName:/CN=t296, DirName:/CN=t297, DirName:/CN=t298, DirName:/CN=t299, DirName:/CN=t300, DirName:/CN=t301, DirName:/CN=t302, DirName:/CN=t303, DirName:/CN=t304, DirName:/CN=t305, DirName:/CN=t306, DirName:/CN=t307, DirName:/CN=t308, DirName:/CN=t309, DirName:/CN=t310, DirName:/CN=t311, DirName:/CN=t312, DirName:/CN=t313, DirName:/CN=t314, DirName:/CN=t315, DirName:/CN=t316, DirName:/CN=t317, DirName:/CN=t318, DirName:/CN=t319, DirName:/CN=t320, DirName:/CN=t321, DirName:/CN=t322, DirName:/CN=t323, DirName:/CN=t324, DirName:/CN=t325, DirName:/CN=t326, DirName:/CN=t327, DirName:/CN=t328, DirName:/CN=t329, DirName:/CN=t330, DirName:/CN=t331, DirName:/CN=t332, DirName:/CN=t333, DirName:/CN=t334, DirName:/CN=t335, DirName:/CN=t336, DirName:/CN=t337, DirName:/CN=t338, DirName:/CN=t339, DirName:/CN=t340 - Signature Algorithm: sha256WithRSAEncryption - 90:c2:57:f6:92:e9:c7:58:4e:b5:bd:11:26:33:dd:b9:3d:c2: - 1e:6d:6b:21:74:04:85:22:1e:d2:1b:09:fb:99:24:d8:e6:ed: - 1c:55:14:34:b7:19:4e:f2:cc:37:2e:b3:d3:26:96:f2:6d:88: - d6:8d:b2:7b:1a:6f:eb:66:f1:d9:f3:a3:4f:b0:76:51:d2:1c: - e6:b0:ae:0f:28:38:bf:c6:94:d5:76:71:0f:f6:11:95:c8:07: - 26:be:81:aa:55:4d:17:17:36:90:bb:c2:b8:40:72:a2:cf:0f: - d3:55:b1:65:50:67:c8:57:4b:54:bd:5b:42:7f:d4:b4:46:0e: - fe:9d:f0:eb:a9:96:c2:53:ce:b5:fb:71:3c:da:51:37:94:c7: - 7b:1e:d6:5b:c1:1b:da:ae:09:b1:da:d0:2d:27:ae:46:c6:5e: - d0:72:cb:e0:29:a7:c8:40:e8:18:94:26:ad:d8:51:21:43:24: - f6:f9:a4:9e:f1:57:d1:4b:3e:74:71:97:8f:de:09:2d:d3:85: - b1:79:a8:9d:d0:6c:35:90:a8:62:2f:fb:45:ac:c5:5b:5c:cc: - ea:72:05:b0:2f:79:36:56:f2:75:5b:b4:30:8c:0c:9f:fc:e8: - da:7e:2c:dd:fc:5e:fc:23:04:c1:53:31:a7:e2:ce:18:10:28: - b8:d4:60:8e ------BEGIN CERTIFICATE----- -MIIy0TCCMbmgAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY1TANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCMB4wgjAaMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgi8wBgNVHREEgi8nMIIvI4IH -dDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIHdDQudGVzdIIHdDUu -dGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDkudGVzdIIIdDEwLnRl -c3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQxNC50ZXN0ggh0MTUu -dGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIIIdDE5LnRlc3SCCHQy -MC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0ggh0MjQudGVzdIII -dDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRlc3SCCHQyOS50ZXN0 -ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMudGVzdIIIdDM0LnRl -c3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQzOC50ZXN0ggh0Mzku -dGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIIIdDQzLnRlc3SCCHQ0 -NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0ggh0NDgudGVzdIII -dDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRlc3SCCHQ1My50ZXN0 -ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcudGVzdIIIdDU4LnRl -c3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2Mi50ZXN0ggh0NjMu -dGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIIIdDY3LnRlc3SCCHQ2 -OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0ggh0NzIudGVzdIII -dDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRlc3SCCHQ3Ny50ZXN0 -ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEudGVzdIIIdDgyLnRl -c3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4Ni50ZXN0ggh0ODcu -dGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIIIdDkxLnRlc3SCCHQ5 -Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0ggh0OTYudGVzdIII -dDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50ZXN0ggl0MTAxLnRl -c3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SCCXQxMDUudGVzdIIJ -dDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEwOS50ZXN0ggl0MTEw -LnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRlc3SCCXQxMTQudGVz -dIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJdDExOC50ZXN0ggl0 -MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIyLnRlc3SCCXQxMjMu -dGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVzdIIJdDEyNy50ZXN0 -ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0MTMxLnRlc3SCCXQx -MzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUudGVzdIIJdDEzNi50 -ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0ggl0MTQwLnRlc3SC -CXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQxNDQudGVzdIIJdDE0 -NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50ZXN0ggl0MTQ5LnRl -c3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SCCXQxNTMudGVzdIIJ -dDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1Ny50ZXN0ggl0MTU4 -LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRlc3SCCXQxNjIudGVz -dIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJdDE2Ni50ZXN0ggl0 -MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcwLnRlc3SCCXQxNzEu -dGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVzdIIJdDE3NS50ZXN0 -ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0MTc5LnRlc3SCCXQx -ODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMudGVzdIIJdDE4NC50 -ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0ggl0MTg4LnRlc3SC -CXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQxOTIudGVzdIIJdDE5 -My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50ZXN0ggl0MTk3LnRl -c3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SCCXQyMDEudGVzdIIJ -dDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIwNS50ZXN0ggl0MjA2 -LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRlc3SCCXQyMTAudGVz -dIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJdDIxNC50ZXN0ggl0 -MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4LnRlc3SCCXQyMTku -dGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVzdIIJdDIyMy50ZXN0 -ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0MjI3LnRlc3SCCXQy -MjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEudGVzdIIJdDIzMi50 -ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0ggl0MjM2LnRlc3SC -CXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQyNDAudGVzdIIJdDI0 -MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50ZXN0ggl0MjQ1LnRl -c3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SCCXQyNDkudGVzdIIJ -dDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1My50ZXN0ggl0MjU0 -LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRlc3SCCXQyNTgudGVz -dIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJdDI2Mi50ZXN0ggl0 -MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2LnRlc3SCCXQyNjcu -dGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVzdIIJdDI3MS50ZXN0 -ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0Mjc1LnRlc3SCCXQy -NzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzkudGVzdIIJdDI4MC50 -ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0ggl0Mjg0LnRlc3SC -CXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQyODgudGVzdIIJdDI4 -OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50ZXN0ggl0MjkzLnRl -c3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SCCXQyOTcudGVzdIIJ -dDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMwMS50ZXN0ggl0MzAy -LnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRlc3SCCXQzMDYudGVz -dIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJdDMxMC50ZXN0ggl0 -MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0LnRlc3SCCXQzMTUu -dGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVzdIIJdDMxOS50ZXN0 -ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0MzIzLnRlc3SCCXQz -MjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcudGVzdIIJdDMyOC50 -ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0ggl0MzMyLnRlc3SC -CXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQzMzYudGVzdIIJdDMz -Ny50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50ZXN0ggl0MzQxLnRl -c3SHBAoAAACHBAoAAAGHBAoAAAKHBAoAAAOHBAoAAASHBAoAAAWHBAoAAAaHBAoA -AAeHBAoAAAiHBAoAAAmHBAoAAAqHBAoAAAuHBAoAAAyHBAoAAA2HBAoAAA6HBAoA -AA+HBAoAABCHBAoAABGHBAoAABKHBAoAABOHBAoAABSHBAoAABWHBAoAABaHBAoA -ABeHBAoAABiHBAoAABmHBAoAABqHBAoAABuHBAoAAByHBAoAAB2HBAoAAB6HBAoA -AB+HBAoAACCHBAoAACGHBAoAACKHBAoAACOHBAoAACSHBAoAACWHBAoAACaHBAoA -ACeHBAoAACiHBAoAACmHBAoAACqHBAoAACuHBAoAACyHBAoAAC2HBAoAAC6HBAoA -AC+HBAoAADCHBAoAADGHBAoAADKHBAoAADOHBAoAADSHBAoAADWHBAoAADaHBAoA -ADeHBAoAADiHBAoAADmHBAoAADqHBAoAADuHBAoAADyHBAoAAD2HBAoAAD6HBAoA -AD+HBAoAAECHBAoAAEGHBAoAAEKHBAoAAEOHBAoAAESHBAoAAEWHBAoAAEaHBAoA -AEeHBAoAAEiHBAoAAEmHBAoAAEqHBAoAAEuHBAoAAEyHBAoAAE2HBAoAAE6HBAoA -AE+HBAoAAFCHBAoAAFGHBAoAAFKHBAoAAFOHBAoAAFSHBAoAAFWHBAoAAFaHBAoA -AFeHBAoAAFiHBAoAAFmHBAoAAFqHBAoAAFuHBAoAAFyHBAoAAF2HBAoAAF6HBAoA -AF+HBAoAAGCHBAoAAGGHBAoAAGKHBAoAAGOHBAoAAGSHBAoAAGWHBAoAAGaHBAoA -AGeHBAoAAGiHBAoAAGmHBAoAAGqHBAoAAGuHBAoAAGyHBAoAAG2HBAoAAG6HBAoA -AG+HBAoAAHCHBAoAAHGHBAoAAHKHBAoAAHOHBAoAAHSHBAoAAHWHBAoAAHaHBAoA -AHeHBAoAAHiHBAoAAHmHBAoAAHqHBAoAAHuHBAoAAHyHBAoAAH2HBAoAAH6HBAoA -AH+HBAoAAICHBAoAAIGHBAoAAIKHBAoAAIOHBAoAAISHBAoAAIWHBAoAAIaHBAoA -AIeHBAoAAIiHBAoAAImHBAoAAIqHBAoAAIuHBAoAAIyHBAoAAI2HBAoAAI6HBAoA -AI+HBAoAAJCHBAoAAJGHBAoAAJKHBAoAAJOHBAoAAJSHBAoAAJWHBAoAAJaHBAoA -AJeHBAoAAJiHBAoAAJmHBAoAAJqHBAoAAJuHBAoAAJyHBAoAAJ2HBAoAAJ6HBAoA -AJ+HBAoAAKCHBAoAAKGHBAoAAKKHBAoAAKOHBAoAAKSHBAoAAKWHBAoAAKaHBAoA -AKeHBAoAAKiHBAoAAKmHBAoAAKqHBAoAAKuHBAoAAKyHBAoAAK2HBAoAAK6HBAoA -AK+HBAoAALCHBAoAALGHBAoAALKHBAoAALOHBAoAALSHBAoAALWHBAoAALaHBAoA -ALeHBAoAALiHBAoAALmHBAoAALqHBAoAALuHBAoAALyHBAoAAL2HBAoAAL6HBAoA -AL+HBAoAAMCHBAoAAMGHBAoAAMKHBAoAAMOHBAoAAMSHBAoAAMWHBAoAAMaHBAoA -AMeHBAoAAMiHBAoAAMmHBAoAAMqHBAoAAMuHBAoAAMyHBAoAAM2HBAoAAM6HBAoA -AM+HBAoAANCHBAoAANGHBAoAANKHBAoAANOHBAoAANSHBAoAANWHBAoAANaHBAoA -ANeHBAoAANiHBAoAANmHBAoAANqHBAoAANuHBAoAANyHBAoAAN2HBAoAAN6HBAoA -AN+HBAoAAOCHBAoAAOGHBAoAAOKHBAoAAOOHBAoAAOSHBAoAAOWHBAoAAOaHBAoA -AOeHBAoAAOiHBAoAAOmHBAoAAOqHBAoAAOuHBAoAAOyHBAoAAO2HBAoAAO6HBAoA -AO+HBAoAAPCHBAoAAPGHBAoAAPKHBAoAAPOHBAoAAPSHBAoAAPWHBAoAAPaHBAoA -APeHBAoAAPiHBAoAAPmHBAoAAPqHBAoAAPuHBAoAAPyHBAoAAP2HBAoAAP6HBAoA -AP+HBAoAAQCHBAoAAQGHBAoAAQKHBAoAAQOHBAoAAQSHBAoAAQWHBAoAAQaHBAoA -AQeHBAoAAQiHBAoAAQmHBAoAAQqHBAoAAQuHBAoAAQyHBAoAAQ2HBAoAAQ6HBAoA -AQ+HBAoAARCHBAoAARGHBAoAARKHBAoAAROHBAoAARSHBAoAARWHBAoAARaHBAoA -AReHBAoAARiHBAoAARmHBAoAARqHBAoAARuHBAoAARyHBAoAAR2HBAoAAR6HBAoA -AR+HBAoAASCHBAoAASGHBAoAASKHBAoAASOHBAoAASSHBAoAASWHBAoAASaHBAoA -ASeHBAoAASiHBAoAASmHBAoAASqHBAoAASuHBAoAASyHBAoAAS2HBAoAAS6HBAoA -AS+HBAoAATCHBAoAATGHBAoAATKHBAoAATOHBAoAATSHBAoAATWHBAoAATaHBAoA -ATeHBAoAATiHBAoAATmHBAoAATqHBAoAATuHBAoAATyHBAoAAT2HBAoAAT6HBAoA -AT+HBAoAAUCHBAoAAUGHBAoAAUKHBAoAAUOHBAoAAUSHBAoAAUWHBAoAAUaHBAoA -AUeHBAoAAUiHBAoAAUmHBAoAAUqHBAoAAUuHBAoAAUyHBAoAAU2HBAoAAU6HBAoA -AU+HBAoAAVCHBAoAAVGHBAoAAVKHBAoAAVOHBAoAAVSkDzANMQswCQYDVQQDDAJ0 -MKQPMA0xCzAJBgNVBAMMAnQxpA8wDTELMAkGA1UEAwwCdDKkDzANMQswCQYDVQQD -DAJ0M6QPMA0xCzAJBgNVBAMMAnQ0pA8wDTELMAkGA1UEAwwCdDWkDzANMQswCQYD -VQQDDAJ0NqQPMA0xCzAJBgNVBAMMAnQ3pA8wDTELMAkGA1UEAwwCdDikDzANMQsw -CQYDVQQDDAJ0OaQQMA4xDDAKBgNVBAMMA3QxMKQQMA4xDDAKBgNVBAMMA3QxMaQQ -MA4xDDAKBgNVBAMMA3QxMqQQMA4xDDAKBgNVBAMMA3QxM6QQMA4xDDAKBgNVBAMM -A3QxNKQQMA4xDDAKBgNVBAMMA3QxNaQQMA4xDDAKBgNVBAMMA3QxNqQQMA4xDDAK -BgNVBAMMA3QxN6QQMA4xDDAKBgNVBAMMA3QxOKQQMA4xDDAKBgNVBAMMA3QxOaQQ -MA4xDDAKBgNVBAMMA3QyMKQQMA4xDDAKBgNVBAMMA3QyMaQQMA4xDDAKBgNVBAMM -A3QyMqQQMA4xDDAKBgNVBAMMA3QyM6QQMA4xDDAKBgNVBAMMA3QyNKQQMA4xDDAK -BgNVBAMMA3QyNaQQMA4xDDAKBgNVBAMMA3QyNqQQMA4xDDAKBgNVBAMMA3QyN6QQ -MA4xDDAKBgNVBAMMA3QyOKQQMA4xDDAKBgNVBAMMA3QyOaQQMA4xDDAKBgNVBAMM -A3QzMKQQMA4xDDAKBgNVBAMMA3QzMaQQMA4xDDAKBgNVBAMMA3QzMqQQMA4xDDAK -BgNVBAMMA3QzM6QQMA4xDDAKBgNVBAMMA3QzNKQQMA4xDDAKBgNVBAMMA3QzNaQQ -MA4xDDAKBgNVBAMMA3QzNqQQMA4xDDAKBgNVBAMMA3QzN6QQMA4xDDAKBgNVBAMM -A3QzOKQQMA4xDDAKBgNVBAMMA3QzOaQQMA4xDDAKBgNVBAMMA3Q0MKQQMA4xDDAK -BgNVBAMMA3Q0MaQQMA4xDDAKBgNVBAMMA3Q0MqQQMA4xDDAKBgNVBAMMA3Q0M6QQ -MA4xDDAKBgNVBAMMA3Q0NKQQMA4xDDAKBgNVBAMMA3Q0NaQQMA4xDDAKBgNVBAMM -A3Q0NqQQMA4xDDAKBgNVBAMMA3Q0N6QQMA4xDDAKBgNVBAMMA3Q0OKQQMA4xDDAK -BgNVBAMMA3Q0OaQQMA4xDDAKBgNVBAMMA3Q1MKQQMA4xDDAKBgNVBAMMA3Q1MaQQ -MA4xDDAKBgNVBAMMA3Q1MqQQMA4xDDAKBgNVBAMMA3Q1M6QQMA4xDDAKBgNVBAMM -A3Q1NKQQMA4xDDAKBgNVBAMMA3Q1NaQQMA4xDDAKBgNVBAMMA3Q1NqQQMA4xDDAK -BgNVBAMMA3Q1N6QQMA4xDDAKBgNVBAMMA3Q1OKQQMA4xDDAKBgNVBAMMA3Q1OaQQ -MA4xDDAKBgNVBAMMA3Q2MKQQMA4xDDAKBgNVBAMMA3Q2MaQQMA4xDDAKBgNVBAMM -A3Q2MqQQMA4xDDAKBgNVBAMMA3Q2M6QQMA4xDDAKBgNVBAMMA3Q2NKQQMA4xDDAK -BgNVBAMMA3Q2NaQQMA4xDDAKBgNVBAMMA3Q2NqQQMA4xDDAKBgNVBAMMA3Q2N6QQ -MA4xDDAKBgNVBAMMA3Q2OKQQMA4xDDAKBgNVBAMMA3Q2OaQQMA4xDDAKBgNVBAMM -A3Q3MKQQMA4xDDAKBgNVBAMMA3Q3MaQQMA4xDDAKBgNVBAMMA3Q3MqQQMA4xDDAK -BgNVBAMMA3Q3M6QQMA4xDDAKBgNVBAMMA3Q3NKQQMA4xDDAKBgNVBAMMA3Q3NaQQ -MA4xDDAKBgNVBAMMA3Q3NqQQMA4xDDAKBgNVBAMMA3Q3N6QQMA4xDDAKBgNVBAMM -A3Q3OKQQMA4xDDAKBgNVBAMMA3Q3OaQQMA4xDDAKBgNVBAMMA3Q4MKQQMA4xDDAK -BgNVBAMMA3Q4MaQQMA4xDDAKBgNVBAMMA3Q4MqQQMA4xDDAKBgNVBAMMA3Q4M6QQ -MA4xDDAKBgNVBAMMA3Q4NKQQMA4xDDAKBgNVBAMMA3Q4NaQQMA4xDDAKBgNVBAMM -A3Q4NqQQMA4xDDAKBgNVBAMMA3Q4N6QQMA4xDDAKBgNVBAMMA3Q4OKQQMA4xDDAK -BgNVBAMMA3Q4OaQQMA4xDDAKBgNVBAMMA3Q5MKQQMA4xDDAKBgNVBAMMA3Q5MaQQ -MA4xDDAKBgNVBAMMA3Q5MqQQMA4xDDAKBgNVBAMMA3Q5M6QQMA4xDDAKBgNVBAMM -A3Q5NKQQMA4xDDAKBgNVBAMMA3Q5NaQQMA4xDDAKBgNVBAMMA3Q5NqQQMA4xDDAK -BgNVBAMMA3Q5N6QQMA4xDDAKBgNVBAMMA3Q5OKQQMA4xDDAKBgNVBAMMA3Q5OaQR -MA8xDTALBgNVBAMMBHQxMDCkETAPMQ0wCwYDVQQDDAR0MTAxpBEwDzENMAsGA1UE -AwwEdDEwMqQRMA8xDTALBgNVBAMMBHQxMDOkETAPMQ0wCwYDVQQDDAR0MTA0pBEw -DzENMAsGA1UEAwwEdDEwNaQRMA8xDTALBgNVBAMMBHQxMDakETAPMQ0wCwYDVQQD -DAR0MTA3pBEwDzENMAsGA1UEAwwEdDEwOKQRMA8xDTALBgNVBAMMBHQxMDmkETAP -MQ0wCwYDVQQDDAR0MTEwpBEwDzENMAsGA1UEAwwEdDExMaQRMA8xDTALBgNVBAMM -BHQxMTKkETAPMQ0wCwYDVQQDDAR0MTEzpBEwDzENMAsGA1UEAwwEdDExNKQRMA8x -DTALBgNVBAMMBHQxMTWkETAPMQ0wCwYDVQQDDAR0MTE2pBEwDzENMAsGA1UEAwwE -dDExN6QRMA8xDTALBgNVBAMMBHQxMTikETAPMQ0wCwYDVQQDDAR0MTE5pBEwDzEN -MAsGA1UEAwwEdDEyMKQRMA8xDTALBgNVBAMMBHQxMjGkETAPMQ0wCwYDVQQDDAR0 -MTIypBEwDzENMAsGA1UEAwwEdDEyM6QRMA8xDTALBgNVBAMMBHQxMjSkETAPMQ0w -CwYDVQQDDAR0MTI1pBEwDzENMAsGA1UEAwwEdDEyNqQRMA8xDTALBgNVBAMMBHQx -MjekETAPMQ0wCwYDVQQDDAR0MTI4pBEwDzENMAsGA1UEAwwEdDEyOaQRMA8xDTAL -BgNVBAMMBHQxMzCkETAPMQ0wCwYDVQQDDAR0MTMxpBEwDzENMAsGA1UEAwwEdDEz -MqQRMA8xDTALBgNVBAMMBHQxMzOkETAPMQ0wCwYDVQQDDAR0MTM0pBEwDzENMAsG -A1UEAwwEdDEzNaQRMA8xDTALBgNVBAMMBHQxMzakETAPMQ0wCwYDVQQDDAR0MTM3 -pBEwDzENMAsGA1UEAwwEdDEzOKQRMA8xDTALBgNVBAMMBHQxMzmkETAPMQ0wCwYD -VQQDDAR0MTQwpBEwDzENMAsGA1UEAwwEdDE0MaQRMA8xDTALBgNVBAMMBHQxNDKk -ETAPMQ0wCwYDVQQDDAR0MTQzpBEwDzENMAsGA1UEAwwEdDE0NKQRMA8xDTALBgNV -BAMMBHQxNDWkETAPMQ0wCwYDVQQDDAR0MTQ2pBEwDzENMAsGA1UEAwwEdDE0N6QR -MA8xDTALBgNVBAMMBHQxNDikETAPMQ0wCwYDVQQDDAR0MTQ5pBEwDzENMAsGA1UE -AwwEdDE1MKQRMA8xDTALBgNVBAMMBHQxNTGkETAPMQ0wCwYDVQQDDAR0MTUypBEw -DzENMAsGA1UEAwwEdDE1M6QRMA8xDTALBgNVBAMMBHQxNTSkETAPMQ0wCwYDVQQD -DAR0MTU1pBEwDzENMAsGA1UEAwwEdDE1NqQRMA8xDTALBgNVBAMMBHQxNTekETAP -MQ0wCwYDVQQDDAR0MTU4pBEwDzENMAsGA1UEAwwEdDE1OaQRMA8xDTALBgNVBAMM -BHQxNjCkETAPMQ0wCwYDVQQDDAR0MTYxpBEwDzENMAsGA1UEAwwEdDE2MqQRMA8x -DTALBgNVBAMMBHQxNjOkETAPMQ0wCwYDVQQDDAR0MTY0pBEwDzENMAsGA1UEAwwE -dDE2NaQRMA8xDTALBgNVBAMMBHQxNjakETAPMQ0wCwYDVQQDDAR0MTY3pBEwDzEN -MAsGA1UEAwwEdDE2OKQRMA8xDTALBgNVBAMMBHQxNjmkETAPMQ0wCwYDVQQDDAR0 -MTcwpBEwDzENMAsGA1UEAwwEdDE3MaQRMA8xDTALBgNVBAMMBHQxNzKkETAPMQ0w -CwYDVQQDDAR0MTczpBEwDzENMAsGA1UEAwwEdDE3NKQRMA8xDTALBgNVBAMMBHQx -NzWkETAPMQ0wCwYDVQQDDAR0MTc2pBEwDzENMAsGA1UEAwwEdDE3N6QRMA8xDTAL -BgNVBAMMBHQxNzikETAPMQ0wCwYDVQQDDAR0MTc5pBEwDzENMAsGA1UEAwwEdDE4 -MKQRMA8xDTALBgNVBAMMBHQxODGkETAPMQ0wCwYDVQQDDAR0MTgypBEwDzENMAsG -A1UEAwwEdDE4M6QRMA8xDTALBgNVBAMMBHQxODSkETAPMQ0wCwYDVQQDDAR0MTg1 -pBEwDzENMAsGA1UEAwwEdDE4NqQRMA8xDTALBgNVBAMMBHQxODekETAPMQ0wCwYD -VQQDDAR0MTg4pBEwDzENMAsGA1UEAwwEdDE4OaQRMA8xDTALBgNVBAMMBHQxOTCk -ETAPMQ0wCwYDVQQDDAR0MTkxpBEwDzENMAsGA1UEAwwEdDE5MqQRMA8xDTALBgNV -BAMMBHQxOTOkETAPMQ0wCwYDVQQDDAR0MTk0pBEwDzENMAsGA1UEAwwEdDE5NaQR -MA8xDTALBgNVBAMMBHQxOTakETAPMQ0wCwYDVQQDDAR0MTk3pBEwDzENMAsGA1UE -AwwEdDE5OKQRMA8xDTALBgNVBAMMBHQxOTmkETAPMQ0wCwYDVQQDDAR0MjAwpBEw -DzENMAsGA1UEAwwEdDIwMaQRMA8xDTALBgNVBAMMBHQyMDKkETAPMQ0wCwYDVQQD -DAR0MjAzpBEwDzENMAsGA1UEAwwEdDIwNKQRMA8xDTALBgNVBAMMBHQyMDWkETAP -MQ0wCwYDVQQDDAR0MjA2pBEwDzENMAsGA1UEAwwEdDIwN6QRMA8xDTALBgNVBAMM -BHQyMDikETAPMQ0wCwYDVQQDDAR0MjA5pBEwDzENMAsGA1UEAwwEdDIxMKQRMA8x -DTALBgNVBAMMBHQyMTGkETAPMQ0wCwYDVQQDDAR0MjEypBEwDzENMAsGA1UEAwwE -dDIxM6QRMA8xDTALBgNVBAMMBHQyMTSkETAPMQ0wCwYDVQQDDAR0MjE1pBEwDzEN -MAsGA1UEAwwEdDIxNqQRMA8xDTALBgNVBAMMBHQyMTekETAPMQ0wCwYDVQQDDAR0 -MjE4pBEwDzENMAsGA1UEAwwEdDIxOaQRMA8xDTALBgNVBAMMBHQyMjCkETAPMQ0w -CwYDVQQDDAR0MjIxpBEwDzENMAsGA1UEAwwEdDIyMqQRMA8xDTALBgNVBAMMBHQy -MjOkETAPMQ0wCwYDVQQDDAR0MjI0pBEwDzENMAsGA1UEAwwEdDIyNaQRMA8xDTAL -BgNVBAMMBHQyMjakETAPMQ0wCwYDVQQDDAR0MjI3pBEwDzENMAsGA1UEAwwEdDIy -OKQRMA8xDTALBgNVBAMMBHQyMjmkETAPMQ0wCwYDVQQDDAR0MjMwpBEwDzENMAsG -A1UEAwwEdDIzMaQRMA8xDTALBgNVBAMMBHQyMzKkETAPMQ0wCwYDVQQDDAR0MjMz -pBEwDzENMAsGA1UEAwwEdDIzNKQRMA8xDTALBgNVBAMMBHQyMzWkETAPMQ0wCwYD -VQQDDAR0MjM2pBEwDzENMAsGA1UEAwwEdDIzN6QRMA8xDTALBgNVBAMMBHQyMzik -ETAPMQ0wCwYDVQQDDAR0MjM5pBEwDzENMAsGA1UEAwwEdDI0MKQRMA8xDTALBgNV -BAMMBHQyNDGkETAPMQ0wCwYDVQQDDAR0MjQypBEwDzENMAsGA1UEAwwEdDI0M6QR -MA8xDTALBgNVBAMMBHQyNDSkETAPMQ0wCwYDVQQDDAR0MjQ1pBEwDzENMAsGA1UE -AwwEdDI0NqQRMA8xDTALBgNVBAMMBHQyNDekETAPMQ0wCwYDVQQDDAR0MjQ4pBEw -DzENMAsGA1UEAwwEdDI0OaQRMA8xDTALBgNVBAMMBHQyNTCkETAPMQ0wCwYDVQQD -DAR0MjUxpBEwDzENMAsGA1UEAwwEdDI1MqQRMA8xDTALBgNVBAMMBHQyNTOkETAP -MQ0wCwYDVQQDDAR0MjU0pBEwDzENMAsGA1UEAwwEdDI1NaQRMA8xDTALBgNVBAMM -BHQyNTakETAPMQ0wCwYDVQQDDAR0MjU3pBEwDzENMAsGA1UEAwwEdDI1OKQRMA8x -DTALBgNVBAMMBHQyNTmkETAPMQ0wCwYDVQQDDAR0MjYwpBEwDzENMAsGA1UEAwwE -dDI2MaQRMA8xDTALBgNVBAMMBHQyNjKkETAPMQ0wCwYDVQQDDAR0MjYzpBEwDzEN -MAsGA1UEAwwEdDI2NKQRMA8xDTALBgNVBAMMBHQyNjWkETAPMQ0wCwYDVQQDDAR0 -MjY2pBEwDzENMAsGA1UEAwwEdDI2N6QRMA8xDTALBgNVBAMMBHQyNjikETAPMQ0w -CwYDVQQDDAR0MjY5pBEwDzENMAsGA1UEAwwEdDI3MKQRMA8xDTALBgNVBAMMBHQy -NzGkETAPMQ0wCwYDVQQDDAR0MjcypBEwDzENMAsGA1UEAwwEdDI3M6QRMA8xDTAL -BgNVBAMMBHQyNzSkETAPMQ0wCwYDVQQDDAR0Mjc1pBEwDzENMAsGA1UEAwwEdDI3 -NqQRMA8xDTALBgNVBAMMBHQyNzekETAPMQ0wCwYDVQQDDAR0Mjc4pBEwDzENMAsG -A1UEAwwEdDI3OaQRMA8xDTALBgNVBAMMBHQyODCkETAPMQ0wCwYDVQQDDAR0Mjgx -pBEwDzENMAsGA1UEAwwEdDI4MqQRMA8xDTALBgNVBAMMBHQyODOkETAPMQ0wCwYD -VQQDDAR0Mjg0pBEwDzENMAsGA1UEAwwEdDI4NaQRMA8xDTALBgNVBAMMBHQyODak -ETAPMQ0wCwYDVQQDDAR0Mjg3pBEwDzENMAsGA1UEAwwEdDI4OKQRMA8xDTALBgNV -BAMMBHQyODmkETAPMQ0wCwYDVQQDDAR0MjkwpBEwDzENMAsGA1UEAwwEdDI5MaQR -MA8xDTALBgNVBAMMBHQyOTKkETAPMQ0wCwYDVQQDDAR0MjkzpBEwDzENMAsGA1UE -AwwEdDI5NKQRMA8xDTALBgNVBAMMBHQyOTWkETAPMQ0wCwYDVQQDDAR0Mjk2pBEw -DzENMAsGA1UEAwwEdDI5N6QRMA8xDTALBgNVBAMMBHQyOTikETAPMQ0wCwYDVQQD -DAR0Mjk5pBEwDzENMAsGA1UEAwwEdDMwMKQRMA8xDTALBgNVBAMMBHQzMDGkETAP -MQ0wCwYDVQQDDAR0MzAypBEwDzENMAsGA1UEAwwEdDMwM6QRMA8xDTALBgNVBAMM -BHQzMDSkETAPMQ0wCwYDVQQDDAR0MzA1pBEwDzENMAsGA1UEAwwEdDMwNqQRMA8x -DTALBgNVBAMMBHQzMDekETAPMQ0wCwYDVQQDDAR0MzA4pBEwDzENMAsGA1UEAwwE -dDMwOaQRMA8xDTALBgNVBAMMBHQzMTCkETAPMQ0wCwYDVQQDDAR0MzExpBEwDzEN -MAsGA1UEAwwEdDMxMqQRMA8xDTALBgNVBAMMBHQzMTOkETAPMQ0wCwYDVQQDDAR0 -MzE0pBEwDzENMAsGA1UEAwwEdDMxNaQRMA8xDTALBgNVBAMMBHQzMTakETAPMQ0w -CwYDVQQDDAR0MzE3pBEwDzENMAsGA1UEAwwEdDMxOKQRMA8xDTALBgNVBAMMBHQz -MTmkETAPMQ0wCwYDVQQDDAR0MzIwpBEwDzENMAsGA1UEAwwEdDMyMaQRMA8xDTAL -BgNVBAMMBHQzMjKkETAPMQ0wCwYDVQQDDAR0MzIzpBEwDzENMAsGA1UEAwwEdDMy -NKQRMA8xDTALBgNVBAMMBHQzMjWkETAPMQ0wCwYDVQQDDAR0MzI2pBEwDzENMAsG -A1UEAwwEdDMyN6QRMA8xDTALBgNVBAMMBHQzMjikETAPMQ0wCwYDVQQDDAR0MzI5 -pBEwDzENMAsGA1UEAwwEdDMzMKQRMA8xDTALBgNVBAMMBHQzMzGkETAPMQ0wCwYD -VQQDDAR0MzMypBEwDzENMAsGA1UEAwwEdDMzM6QRMA8xDTALBgNVBAMMBHQzMzSk -ETAPMQ0wCwYDVQQDDAR0MzM1pBEwDzENMAsGA1UEAwwEdDMzNqQRMA8xDTALBgNV -BAMMBHQzMzekETAPMQ0wCwYDVQQDDAR0MzM4pBEwDzENMAsGA1UEAwwEdDMzOaQR -MA8xDTALBgNVBAMMBHQzNDAwDQYJKoZIhvcNAQELBQADggEBAJDCV/aS6cdYTrW9 -ESYz3bk9wh5tayF0BIUiHtIbCfuZJNjm7RxVFDS3GU7yzDcus9MmlvJtiNaNsnsa -b+tm8dnzo0+wdlHSHOawrg8oOL/GlNV2cQ/2EZXIBya+gapVTRcXNpC7wrhAcqLP -D9NVsWVQZ8hXS1S9W0J/1LRGDv6d8OuplsJTzrX7cTzaUTeUx3se1lvBG9quCbHa -0C0nrkbGXtByy+App8hA6BiUJq3YUSFDJPb5pJ7xV9FLPnRxl4/eCS3ThbF5qJ3Q -bDWQqGIv+0WsxVtczOpyBbAveTZW8nVbtDCMDJ/86Np+LN38XvwjBMFTMafizhgQ -KLjUYI4= ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D6.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D6.pem deleted file mode 100644 index 7afb574bfc..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D6.pem +++ /dev/null @@ -1,325 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d6 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DNS:t0.test, DNS:t1.test, DNS:t2.test, DNS:t3.test, DNS:t4.test, DNS:t5.test, DNS:t6.test, DNS:t7.test, DNS:t8.test, DNS:t9.test, DNS:t10.test, DNS:t11.test, DNS:t12.test, DNS:t13.test, DNS:t14.test, DNS:t15.test, DNS:t16.test, DNS:t17.test, DNS:t18.test, DNS:t19.test, DNS:t20.test, DNS:t21.test, DNS:t22.test, DNS:t23.test, DNS:t24.test, DNS:t25.test, DNS:t26.test, DNS:t27.test, DNS:t28.test, DNS:t29.test, DNS:t30.test, DNS:t31.test, DNS:t32.test, DNS:t33.test, DNS:t34.test, DNS:t35.test, DNS:t36.test, DNS:t37.test, DNS:t38.test, DNS:t39.test, DNS:t40.test, DNS:t41.test, DNS:t42.test, DNS:t43.test, DNS:t44.test, DNS:t45.test, DNS:t46.test, DNS:t47.test, DNS:t48.test, DNS:t49.test, DNS:t50.test, DNS:t51.test, DNS:t52.test, DNS:t53.test, DNS:t54.test, DNS:t55.test, DNS:t56.test, DNS:t57.test, DNS:t58.test, DNS:t59.test, DNS:t60.test, DNS:t61.test, DNS:t62.test, DNS:t63.test, DNS:t64.test, DNS:t65.test, DNS:t66.test, DNS:t67.test, DNS:t68.test, DNS:t69.test, DNS:t70.test, DNS:t71.test, DNS:t72.test, DNS:t73.test, DNS:t74.test, DNS:t75.test, DNS:t76.test, DNS:t77.test, DNS:t78.test, DNS:t79.test, DNS:t80.test, DNS:t81.test, DNS:t82.test, DNS:t83.test, DNS:t84.test, DNS:t85.test, DNS:t86.test, DNS:t87.test, DNS:t88.test, DNS:t89.test, DNS:t90.test, DNS:t91.test, DNS:t92.test, DNS:t93.test, DNS:t94.test, DNS:t95.test, DNS:t96.test, DNS:t97.test, DNS:t98.test, DNS:t99.test, DNS:t100.test, DNS:t101.test, DNS:t102.test, DNS:t103.test, DNS:t104.test, DNS:t105.test, DNS:t106.test, DNS:t107.test, DNS:t108.test, DNS:t109.test, DNS:t110.test, DNS:t111.test, DNS:t112.test, DNS:t113.test, DNS:t114.test, DNS:t115.test, DNS:t116.test, DNS:t117.test, DNS:t118.test, DNS:t119.test, DNS:t120.test, DNS:t121.test, DNS:t122.test, DNS:t123.test, DNS:t124.test, DNS:t125.test, DNS:t126.test, DNS:t127.test, DNS:t128.test, DNS:t129.test, DNS:t130.test, DNS:t131.test, DNS:t132.test, DNS:t133.test, DNS:t134.test, DNS:t135.test, DNS:t136.test, DNS:t137.test, DNS:t138.test, DNS:t139.test, DNS:t140.test, DNS:t141.test, DNS:t142.test, DNS:t143.test, DNS:t144.test, DNS:t145.test, DNS:t146.test, DNS:t147.test, DNS:t148.test, DNS:t149.test, DNS:t150.test, DNS:t151.test, DNS:t152.test, DNS:t153.test, DNS:t154.test, DNS:t155.test, DNS:t156.test, DNS:t157.test, DNS:t158.test, DNS:t159.test, DNS:t160.test, DNS:t161.test, DNS:t162.test, DNS:t163.test, DNS:t164.test, DNS:t165.test, DNS:t166.test, DNS:t167.test, DNS:t168.test, DNS:t169.test, DNS:t170.test, DNS:t171.test, DNS:t172.test, DNS:t173.test, DNS:t174.test, DNS:t175.test, DNS:t176.test, DNS:t177.test, DNS:t178.test, DNS:t179.test, DNS:t180.test, DNS:t181.test, DNS:t182.test, DNS:t183.test, DNS:t184.test, DNS:t185.test, DNS:t186.test, DNS:t187.test, DNS:t188.test, DNS:t189.test, DNS:t190.test, DNS:t191.test, DNS:t192.test, DNS:t193.test, DNS:t194.test, DNS:t195.test, DNS:t196.test, DNS:t197.test, DNS:t198.test, DNS:t199.test, DNS:t200.test, DNS:t201.test, DNS:t202.test, DNS:t203.test, DNS:t204.test, DNS:t205.test, DNS:t206.test, DNS:t207.test, DNS:t208.test, DNS:t209.test, DNS:t210.test, DNS:t211.test, DNS:t212.test, DNS:t213.test, DNS:t214.test, DNS:t215.test, DNS:t216.test, DNS:t217.test, DNS:t218.test, DNS:t219.test, DNS:t220.test, DNS:t221.test, DNS:t222.test, DNS:t223.test, DNS:t224.test, DNS:t225.test, DNS:t226.test, DNS:t227.test, DNS:t228.test, DNS:t229.test, DNS:t230.test, DNS:t231.test, DNS:t232.test, DNS:t233.test, DNS:t234.test, DNS:t235.test, DNS:t236.test, DNS:t237.test, DNS:t238.test, DNS:t239.test, DNS:t240.test, DNS:t241.test, DNS:t242.test, DNS:t243.test, DNS:t244.test, DNS:t245.test, DNS:t246.test, DNS:t247.test, DNS:t248.test, DNS:t249.test, DNS:t250.test, DNS:t251.test, DNS:t252.test, DNS:t253.test, DNS:t254.test, DNS:t255.test, DNS:t256.test, DNS:t257.test, DNS:t258.test, DNS:t259.test, DNS:t260.test, DNS:t261.test, DNS:t262.test, DNS:t263.test, DNS:t264.test, DNS:t265.test, DNS:t266.test, DNS:t267.test, DNS:t268.test, DNS:t269.test, DNS:t270.test, DNS:t271.test, DNS:t272.test, DNS:t273.test, DNS:t274.test, DNS:t275.test, DNS:t276.test, DNS:t277.test, DNS:t278.test, DNS:t279.test, DNS:t280.test, DNS:t281.test, DNS:t282.test, DNS:t283.test, DNS:t284.test, DNS:t285.test, DNS:t286.test, DNS:t287.test, DNS:t288.test, DNS:t289.test, DNS:t290.test, DNS:t291.test, DNS:t292.test, DNS:t293.test, DNS:t294.test, DNS:t295.test, DNS:t296.test, DNS:t297.test, DNS:t298.test, DNS:t299.test, DNS:t300.test, DNS:t301.test, DNS:t302.test, DNS:t303.test, DNS:t304.test, DNS:t305.test, DNS:t306.test, DNS:t307.test, DNS:t308.test, DNS:t309.test, DNS:t310.test, DNS:t311.test, DNS:t312.test, DNS:t313.test, DNS:t314.test, DNS:t315.test, DNS:t316.test, DNS:t317.test, DNS:t318.test, DNS:t319.test, DNS:t320.test, DNS:t321.test, DNS:t322.test, DNS:t323.test, DNS:t324.test, DNS:t325.test, DNS:t326.test, DNS:t327.test, DNS:t328.test, DNS:t329.test, DNS:t330.test, DNS:t331.test, DNS:t332.test, DNS:t333.test, DNS:t334.test, DNS:t335.test, DNS:t336.test, DNS:t337.test, DNS:t338.test, DNS:t339.test, DNS:t340.test, DNS:t341.test, DNS:t342.test, DNS:t343.test, DNS:t344.test, DNS:t345.test, DNS:t346.test, DNS:t347.test, DNS:t348.test, DNS:t349.test, DNS:t350.test, DNS:t351.test, DNS:t352.test, DNS:t353.test, DNS:t354.test, DNS:t355.test, DNS:t356.test, DNS:t357.test, DNS:t358.test, DNS:t359.test, DNS:t360.test, DNS:t361.test, DNS:t362.test, DNS:t363.test, DNS:t364.test, DNS:t365.test, DNS:t366.test, DNS:t367.test, DNS:t368.test, DNS:t369.test, DNS:t370.test, DNS:t371.test, DNS:t372.test, DNS:t373.test, DNS:t374.test, DNS:t375.test, DNS:t376.test, DNS:t377.test, DNS:t378.test, DNS:t379.test, DNS:t380.test, DNS:t381.test, DNS:t382.test, DNS:t383.test, DNS:t384.test, DNS:t385.test, DNS:t386.test, DNS:t387.test, DNS:t388.test, DNS:t389.test, DNS:t390.test, DNS:t391.test, DNS:t392.test, DNS:t393.test, DNS:t394.test, DNS:t395.test, DNS:t396.test, DNS:t397.test, DNS:t398.test, DNS:t399.test, DNS:t400.test, DNS:t401.test, DNS:t402.test, DNS:t403.test, DNS:t404.test, DNS:t405.test, DNS:t406.test, DNS:t407.test, DNS:t408.test, DNS:t409.test, DNS:t410.test, DNS:t411.test, DNS:t412.test, DNS:t413.test, DNS:t414.test, DNS:t415.test, DNS:t416.test, DNS:t417.test, DNS:t418.test, DNS:t419.test, DNS:t420.test, DNS:t421.test, DNS:t422.test, DNS:t423.test, DNS:t424.test, DNS:t425.test, DNS:t426.test, DNS:t427.test, DNS:t428.test, DNS:t429.test, DNS:t430.test, DNS:t431.test, DNS:t432.test, DNS:t433.test, DNS:t434.test, DNS:t435.test, DNS:t436.test, DNS:t437.test, DNS:t438.test, DNS:t439.test, DNS:t440.test, DNS:t441.test, DNS:t442.test, DNS:t443.test, DNS:t444.test, DNS:t445.test, DNS:t446.test, DNS:t447.test, DNS:t448.test, DNS:t449.test, DNS:t450.test, DNS:t451.test, DNS:t452.test, DNS:t453.test, DNS:t454.test, DNS:t455.test, DNS:t456.test, DNS:t457.test, DNS:t458.test, DNS:t459.test, DNS:t460.test, DNS:t461.test, DNS:t462.test, DNS:t463.test, DNS:t464.test, DNS:t465.test, DNS:t466.test, DNS:t467.test, DNS:t468.test, DNS:t469.test, DNS:t470.test, DNS:t471.test, DNS:t472.test, DNS:t473.test, DNS:t474.test, DNS:t475.test, DNS:t476.test, DNS:t477.test, DNS:t478.test, DNS:t479.test, DNS:t480.test, DNS:t481.test, DNS:t482.test, DNS:t483.test, DNS:t484.test, DNS:t485.test, DNS:t486.test, DNS:t487.test, DNS:t488.test, DNS:t489.test, DNS:t490.test, DNS:t491.test, DNS:t492.test, DNS:t493.test, DNS:t494.test, DNS:t495.test, DNS:t496.test, DNS:t497.test, DNS:t498.test, DNS:t499.test, DNS:t500.test, DNS:t501.test, DNS:t502.test, DNS:t503.test, DNS:t504.test, DNS:t505.test, DNS:t506.test, DNS:t507.test, DNS:t508.test, DNS:t509.test, DNS:t510.test, DNS:t511.test, DNS:t512.test, DNS:t513.test, DNS:t514.test, DNS:t515.test, DNS:t516.test, DNS:t517.test, DNS:t518.test, DNS:t519.test, DNS:t520.test, DNS:t521.test, DNS:t522.test, DNS:t523.test, DNS:t524.test, DNS:t525.test, DNS:t526.test, DNS:t527.test, DNS:t528.test, DNS:t529.test, DNS:t530.test, DNS:t531.test, DNS:t532.test, DNS:t533.test, DNS:t534.test, DNS:t535.test, DNS:t536.test, DNS:t537.test, DNS:t538.test, DNS:t539.test, DNS:t540.test, DNS:t541.test, DNS:t542.test, DNS:t543.test, DNS:t544.test, DNS:t545.test, DNS:t546.test, DNS:t547.test, DNS:t548.test, DNS:t549.test, DNS:t550.test, DNS:t551.test, DNS:t552.test, DNS:t553.test, DNS:t554.test, DNS:t555.test, DNS:t556.test, DNS:t557.test, DNS:t558.test, DNS:t559.test, DNS:t560.test, DNS:t561.test, DNS:t562.test, DNS:t563.test, DNS:t564.test, DNS:t565.test, DNS:t566.test, DNS:t567.test, DNS:t568.test, DNS:t569.test, DNS:t570.test, DNS:t571.test, DNS:t572.test, DNS:t573.test, DNS:t574.test, DNS:t575.test, DNS:t576.test, DNS:t577.test, DNS:t578.test, DNS:t579.test, DNS:t580.test, DNS:t581.test, DNS:t582.test, DNS:t583.test, DNS:t584.test, DNS:t585.test, DNS:t586.test, DNS:t587.test, DNS:t588.test, DNS:t589.test, DNS:t590.test, DNS:t591.test, DNS:t592.test, DNS:t593.test, DNS:t594.test, DNS:t595.test, DNS:t596.test, DNS:t597.test, DNS:t598.test, DNS:t599.test, DNS:t600.test, DNS:t601.test, DNS:t602.test, DNS:t603.test, DNS:t604.test, DNS:t605.test, DNS:t606.test, DNS:t607.test, DNS:t608.test, DNS:t609.test, DNS:t610.test, DNS:t611.test, DNS:t612.test, DNS:t613.test, DNS:t614.test, DNS:t615.test, DNS:t616.test, DNS:t617.test, DNS:t618.test, DNS:t619.test, DNS:t620.test, DNS:t621.test, DNS:t622.test, DNS:t623.test, DNS:t624.test, DNS:t625.test, DNS:t626.test, DNS:t627.test, DNS:t628.test, DNS:t629.test, DNS:t630.test, DNS:t631.test, DNS:t632.test, DNS:t633.test, DNS:t634.test, DNS:t635.test, DNS:t636.test, DNS:t637.test, DNS:t638.test, DNS:t639.test, DNS:t640.test, DNS:t641.test, DNS:t642.test, DNS:t643.test, DNS:t644.test, DNS:t645.test, DNS:t646.test, DNS:t647.test, DNS:t648.test, DNS:t649.test, DNS:t650.test, DNS:t651.test, DNS:t652.test, DNS:t653.test, DNS:t654.test, DNS:t655.test, DNS:t656.test, DNS:t657.test, DNS:t658.test, DNS:t659.test, DNS:t660.test, DNS:t661.test, DNS:t662.test, DNS:t663.test, DNS:t664.test, DNS:t665.test, DNS:t666.test, DNS:t667.test, DNS:t668.test, DNS:t669.test, DNS:t670.test, DNS:t671.test, DNS:t672.test, DNS:t673.test, DNS:t674.test, DNS:t675.test, DNS:t676.test, DNS:t677.test, DNS:t678.test, DNS:t679.test, DNS:t680.test, DNS:t681.test, DNS:t682.test, DNS:t683.test, DNS:t684.test, DNS:t685.test, DNS:t686.test, DNS:t687.test, DNS:t688.test, DNS:t689.test, DNS:t690.test, DNS:t691.test, DNS:t692.test, DNS:t693.test, DNS:t694.test, DNS:t695.test, DNS:t696.test, DNS:t697.test, DNS:t698.test, DNS:t699.test, DNS:t700.test, DNS:t701.test, DNS:t702.test, DNS:t703.test, DNS:t704.test, DNS:t705.test, DNS:t706.test, DNS:t707.test, DNS:t708.test, DNS:t709.test, DNS:t710.test, DNS:t711.test, DNS:t712.test, DNS:t713.test, DNS:t714.test, DNS:t715.test, DNS:t716.test, DNS:t717.test, DNS:t718.test, DNS:t719.test, DNS:t720.test, DNS:t721.test, DNS:t722.test, DNS:t723.test, DNS:t724.test, DNS:t725.test, DNS:t726.test, DNS:t727.test, DNS:t728.test, DNS:t729.test, DNS:t730.test, DNS:t731.test, DNS:t732.test, DNS:t733.test, DNS:t734.test, DNS:t735.test, DNS:t736.test, DNS:t737.test, DNS:t738.test, DNS:t739.test, DNS:t740.test, DNS:t741.test, DNS:t742.test, DNS:t743.test, DNS:t744.test, DNS:t745.test, DNS:t746.test, DNS:t747.test, DNS:t748.test, DNS:t749.test, DNS:t750.test, DNS:t751.test, DNS:t752.test, DNS:t753.test, DNS:t754.test, DNS:t755.test, DNS:t756.test, DNS:t757.test, DNS:t758.test, DNS:t759.test, DNS:t760.test, DNS:t761.test, DNS:t762.test, DNS:t763.test, DNS:t764.test, DNS:t765.test, DNS:t766.test, DNS:t767.test, DNS:t768.test, DNS:t769.test, DNS:t770.test, DNS:t771.test, DNS:t772.test, DNS:t773.test, DNS:t774.test, DNS:t775.test, DNS:t776.test, DNS:t777.test, DNS:t778.test, DNS:t779.test, DNS:t780.test, DNS:t781.test, DNS:t782.test, DNS:t783.test, DNS:t784.test, DNS:t785.test, DNS:t786.test, DNS:t787.test, DNS:t788.test, DNS:t789.test, DNS:t790.test, DNS:t791.test, DNS:t792.test, DNS:t793.test, DNS:t794.test, DNS:t795.test, DNS:t796.test, DNS:t797.test, DNS:t798.test, DNS:t799.test, DNS:t800.test, DNS:t801.test, DNS:t802.test, DNS:t803.test, DNS:t804.test, DNS:t805.test, DNS:t806.test, DNS:t807.test, DNS:t808.test, DNS:t809.test, DNS:t810.test, DNS:t811.test, DNS:t812.test, DNS:t813.test, DNS:t814.test, DNS:t815.test, DNS:t816.test, DNS:t817.test, DNS:t818.test, DNS:t819.test, DNS:t820.test, DNS:t821.test, DNS:t822.test, DNS:t823.test, DNS:t824.test, DNS:t825.test, DNS:t826.test, DNS:t827.test, DNS:t828.test, DNS:t829.test, DNS:t830.test, DNS:t831.test, DNS:t832.test, DNS:t833.test, DNS:t834.test, DNS:t835.test, DNS:t836.test, DNS:t837.test, DNS:t838.test, DNS:t839.test, DNS:t840.test, DNS:t841.test, DNS:t842.test, DNS:t843.test, DNS:t844.test, DNS:t845.test, DNS:t846.test, DNS:t847.test, DNS:t848.test, DNS:t849.test, DNS:t850.test, DNS:t851.test, DNS:t852.test, DNS:t853.test, DNS:t854.test, DNS:t855.test, DNS:t856.test, DNS:t857.test, DNS:t858.test, DNS:t859.test, DNS:t860.test, DNS:t861.test, DNS:t862.test, DNS:t863.test, DNS:t864.test, DNS:t865.test, DNS:t866.test, DNS:t867.test, DNS:t868.test, DNS:t869.test, DNS:t870.test, DNS:t871.test, DNS:t872.test, DNS:t873.test, DNS:t874.test, DNS:t875.test, DNS:t876.test, DNS:t877.test, DNS:t878.test, DNS:t879.test, DNS:t880.test, DNS:t881.test, DNS:t882.test, DNS:t883.test, DNS:t884.test, DNS:t885.test, DNS:t886.test, DNS:t887.test, DNS:t888.test, DNS:t889.test, DNS:t890.test, DNS:t891.test, DNS:t892.test, DNS:t893.test, DNS:t894.test, DNS:t895.test, DNS:t896.test, DNS:t897.test, DNS:t898.test, DNS:t899.test, DNS:t900.test, DNS:t901.test, DNS:t902.test, DNS:t903.test, DNS:t904.test, DNS:t905.test, DNS:t906.test, DNS:t907.test, DNS:t908.test, DNS:t909.test, DNS:t910.test, DNS:t911.test, DNS:t912.test, DNS:t913.test, DNS:t914.test, DNS:t915.test, DNS:t916.test, DNS:t917.test, DNS:t918.test, DNS:t919.test, DNS:t920.test, DNS:t921.test, DNS:t922.test, DNS:t923.test, DNS:t924.test, DNS:t925.test, DNS:t926.test, DNS:t927.test, DNS:t928.test, DNS:t929.test, DNS:t930.test, DNS:t931.test, DNS:t932.test, DNS:t933.test, DNS:t934.test, DNS:t935.test, DNS:t936.test, DNS:t937.test, DNS:t938.test, DNS:t939.test, DNS:t940.test, DNS:t941.test, DNS:t942.test, DNS:t943.test, DNS:t944.test, DNS:t945.test, DNS:t946.test, DNS:t947.test, DNS:t948.test, DNS:t949.test, DNS:t950.test, DNS:t951.test, DNS:t952.test, DNS:t953.test, DNS:t954.test, DNS:t955.test, DNS:t956.test, DNS:t957.test, DNS:t958.test, DNS:t959.test, DNS:t960.test, DNS:t961.test, DNS:t962.test, DNS:t963.test, DNS:t964.test, DNS:t965.test, DNS:t966.test, DNS:t967.test, DNS:t968.test, DNS:t969.test, DNS:t970.test, DNS:t971.test, DNS:t972.test, DNS:t973.test, DNS:t974.test, DNS:t975.test, DNS:t976.test, DNS:t977.test, DNS:t978.test, DNS:t979.test, DNS:t980.test, DNS:t981.test, DNS:t982.test, DNS:t983.test, DNS:t984.test, DNS:t985.test, DNS:t986.test, DNS:t987.test, DNS:t988.test, DNS:t989.test, DNS:t990.test, DNS:t991.test, DNS:t992.test, DNS:t993.test, DNS:t994.test, DNS:t995.test, DNS:t996.test, DNS:t997.test, DNS:t998.test, DNS:t999.test, DNS:t1000.test, DNS:t1001.test, DNS:t1002.test, DNS:t1003.test, DNS:t1004.test, DNS:t1005.test, DNS:t1006.test, DNS:t1007.test, DNS:t1008.test, DNS:t1009.test, DNS:t1010.test, DNS:t1011.test, DNS:t1012.test, DNS:t1013.test, DNS:t1014.test, DNS:t1015.test, DNS:t1016.test, DNS:t1017.test, DNS:t1018.test, DNS:t1019.test, DNS:t1020.test, DNS:t1021.test, DNS:t1022.test, DNS:t1023.test - Signature Algorithm: sha256WithRSAEncryption - 74:b3:46:3e:05:7e:b3:03:85:e3:32:be:81:d2:63:14:24:b1: - 6d:3a:24:e1:79:b7:68:99:15:33:d9:63:6d:8b:b3:63:a5:a3: - a8:1d:c5:05:89:7d:5e:00:2e:16:9d:b3:7e:e3:d6:8b:ec:3b: - e6:00:e3:74:e9:d3:53:89:ee:33:54:c0:19:41:9f:35:62:41: - 32:87:21:e7:84:44:ca:21:2a:f8:33:33:f5:92:39:37:a3:3e: - 43:42:52:16:81:c3:6e:ce:71:d9:d9:4e:be:ee:87:14:39:7b: - 2a:13:67:85:e0:72:b9:05:b7:75:6a:4a:86:f4:bf:9a:67:19: - 75:7c:e6:01:da:42:13:58:ad:f9:1f:d1:63:a5:8c:27:fd:48: - 04:ca:b9:b7:4a:b5:62:12:ad:0f:0b:6f:ba:7f:d1:c4:1f:b6: - c0:6a:c6:88:d5:1b:3d:bd:64:34:fa:44:89:ad:05:47:4c:ac: - dd:72:2f:7c:fa:34:71:bb:41:f0:43:7d:97:3f:29:00:de:ab: - 4c:f7:cc:2b:ca:80:fb:2a:fb:34:81:5a:73:7b:77:da:54:5b: - 1e:09:3c:31:8d:7e:ed:c2:af:48:19:59:fd:59:68:56:c9:f5: - 3a:2d:ac:0f:57:6e:f1:ee:89:ea:69:71:d2:7a:ee:ee:9f:f6: - cc:15:7f:20 ------BEGIN CERTIFICATE----- -MIIvWDCCLkCgAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY1jANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCLKUwgiyhMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgiu3BgNVHREEgiuuMIIrqoIH -dDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIHdDQudGVzdIIHdDUu -dGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDkudGVzdIIIdDEwLnRl -c3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQxNC50ZXN0ggh0MTUu -dGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIIIdDE5LnRlc3SCCHQy -MC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0ggh0MjQudGVzdIII -dDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRlc3SCCHQyOS50ZXN0 -ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMudGVzdIIIdDM0LnRl -c3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQzOC50ZXN0ggh0Mzku -dGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIIIdDQzLnRlc3SCCHQ0 -NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0ggh0NDgudGVzdIII -dDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRlc3SCCHQ1My50ZXN0 -ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcudGVzdIIIdDU4LnRl -c3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2Mi50ZXN0ggh0NjMu -dGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIIIdDY3LnRlc3SCCHQ2 -OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0ggh0NzIudGVzdIII -dDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRlc3SCCHQ3Ny50ZXN0 -ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEudGVzdIIIdDgyLnRl -c3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4Ni50ZXN0ggh0ODcu -dGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIIIdDkxLnRlc3SCCHQ5 -Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0ggh0OTYudGVzdIII -dDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50ZXN0ggl0MTAxLnRl -c3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SCCXQxMDUudGVzdIIJ -dDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEwOS50ZXN0ggl0MTEw -LnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRlc3SCCXQxMTQudGVz -dIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJdDExOC50ZXN0ggl0 -MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIyLnRlc3SCCXQxMjMu -dGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVzdIIJdDEyNy50ZXN0 -ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0MTMxLnRlc3SCCXQx -MzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUudGVzdIIJdDEzNi50 -ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0ggl0MTQwLnRlc3SC -CXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQxNDQudGVzdIIJdDE0 -NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50ZXN0ggl0MTQ5LnRl -c3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SCCXQxNTMudGVzdIIJ -dDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1Ny50ZXN0ggl0MTU4 -LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRlc3SCCXQxNjIudGVz -dIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJdDE2Ni50ZXN0ggl0 -MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcwLnRlc3SCCXQxNzEu -dGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVzdIIJdDE3NS50ZXN0 -ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0MTc5LnRlc3SCCXQx -ODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMudGVzdIIJdDE4NC50 -ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0ggl0MTg4LnRlc3SC -CXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQxOTIudGVzdIIJdDE5 -My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50ZXN0ggl0MTk3LnRl -c3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SCCXQyMDEudGVzdIIJ -dDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIwNS50ZXN0ggl0MjA2 -LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRlc3SCCXQyMTAudGVz -dIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJdDIxNC50ZXN0ggl0 -MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4LnRlc3SCCXQyMTku -dGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVzdIIJdDIyMy50ZXN0 -ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0MjI3LnRlc3SCCXQy -MjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEudGVzdIIJdDIzMi50 -ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0ggl0MjM2LnRlc3SC -CXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQyNDAudGVzdIIJdDI0 -MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50ZXN0ggl0MjQ1LnRl -c3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SCCXQyNDkudGVzdIIJ -dDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1My50ZXN0ggl0MjU0 -LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRlc3SCCXQyNTgudGVz -dIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJdDI2Mi50ZXN0ggl0 -MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2LnRlc3SCCXQyNjcu -dGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVzdIIJdDI3MS50ZXN0 -ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0Mjc1LnRlc3SCCXQy -NzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzkudGVzdIIJdDI4MC50 -ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0ggl0Mjg0LnRlc3SC -CXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQyODgudGVzdIIJdDI4 -OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50ZXN0ggl0MjkzLnRl -c3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SCCXQyOTcudGVzdIIJ -dDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMwMS50ZXN0ggl0MzAy -LnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRlc3SCCXQzMDYudGVz -dIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJdDMxMC50ZXN0ggl0 -MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0LnRlc3SCCXQzMTUu -dGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVzdIIJdDMxOS50ZXN0 -ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0MzIzLnRlc3SCCXQz -MjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcudGVzdIIJdDMyOC50 -ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0ggl0MzMyLnRlc3SC -CXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQzMzYudGVzdIIJdDMz -Ny50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50ZXN0ggl0MzQxLnRl -c3SCCXQzNDIudGVzdIIJdDM0My50ZXN0ggl0MzQ0LnRlc3SCCXQzNDUudGVzdIIJ -dDM0Ni50ZXN0ggl0MzQ3LnRlc3SCCXQzNDgudGVzdIIJdDM0OS50ZXN0ggl0MzUw -LnRlc3SCCXQzNTEudGVzdIIJdDM1Mi50ZXN0ggl0MzUzLnRlc3SCCXQzNTQudGVz -dIIJdDM1NS50ZXN0ggl0MzU2LnRlc3SCCXQzNTcudGVzdIIJdDM1OC50ZXN0ggl0 -MzU5LnRlc3SCCXQzNjAudGVzdIIJdDM2MS50ZXN0ggl0MzYyLnRlc3SCCXQzNjMu -dGVzdIIJdDM2NC50ZXN0ggl0MzY1LnRlc3SCCXQzNjYudGVzdIIJdDM2Ny50ZXN0 -ggl0MzY4LnRlc3SCCXQzNjkudGVzdIIJdDM3MC50ZXN0ggl0MzcxLnRlc3SCCXQz -NzIudGVzdIIJdDM3My50ZXN0ggl0Mzc0LnRlc3SCCXQzNzUudGVzdIIJdDM3Ni50 -ZXN0ggl0Mzc3LnRlc3SCCXQzNzgudGVzdIIJdDM3OS50ZXN0ggl0MzgwLnRlc3SC -CXQzODEudGVzdIIJdDM4Mi50ZXN0ggl0MzgzLnRlc3SCCXQzODQudGVzdIIJdDM4 -NS50ZXN0ggl0Mzg2LnRlc3SCCXQzODcudGVzdIIJdDM4OC50ZXN0ggl0Mzg5LnRl -c3SCCXQzOTAudGVzdIIJdDM5MS50ZXN0ggl0MzkyLnRlc3SCCXQzOTMudGVzdIIJ -dDM5NC50ZXN0ggl0Mzk1LnRlc3SCCXQzOTYudGVzdIIJdDM5Ny50ZXN0ggl0Mzk4 -LnRlc3SCCXQzOTkudGVzdIIJdDQwMC50ZXN0ggl0NDAxLnRlc3SCCXQ0MDIudGVz -dIIJdDQwMy50ZXN0ggl0NDA0LnRlc3SCCXQ0MDUudGVzdIIJdDQwNi50ZXN0ggl0 -NDA3LnRlc3SCCXQ0MDgudGVzdIIJdDQwOS50ZXN0ggl0NDEwLnRlc3SCCXQ0MTEu -dGVzdIIJdDQxMi50ZXN0ggl0NDEzLnRlc3SCCXQ0MTQudGVzdIIJdDQxNS50ZXN0 -ggl0NDE2LnRlc3SCCXQ0MTcudGVzdIIJdDQxOC50ZXN0ggl0NDE5LnRlc3SCCXQ0 -MjAudGVzdIIJdDQyMS50ZXN0ggl0NDIyLnRlc3SCCXQ0MjMudGVzdIIJdDQyNC50 -ZXN0ggl0NDI1LnRlc3SCCXQ0MjYudGVzdIIJdDQyNy50ZXN0ggl0NDI4LnRlc3SC -CXQ0MjkudGVzdIIJdDQzMC50ZXN0ggl0NDMxLnRlc3SCCXQ0MzIudGVzdIIJdDQz -My50ZXN0ggl0NDM0LnRlc3SCCXQ0MzUudGVzdIIJdDQzNi50ZXN0ggl0NDM3LnRl -c3SCCXQ0MzgudGVzdIIJdDQzOS50ZXN0ggl0NDQwLnRlc3SCCXQ0NDEudGVzdIIJ -dDQ0Mi50ZXN0ggl0NDQzLnRlc3SCCXQ0NDQudGVzdIIJdDQ0NS50ZXN0ggl0NDQ2 -LnRlc3SCCXQ0NDcudGVzdIIJdDQ0OC50ZXN0ggl0NDQ5LnRlc3SCCXQ0NTAudGVz -dIIJdDQ1MS50ZXN0ggl0NDUyLnRlc3SCCXQ0NTMudGVzdIIJdDQ1NC50ZXN0ggl0 -NDU1LnRlc3SCCXQ0NTYudGVzdIIJdDQ1Ny50ZXN0ggl0NDU4LnRlc3SCCXQ0NTku -dGVzdIIJdDQ2MC50ZXN0ggl0NDYxLnRlc3SCCXQ0NjIudGVzdIIJdDQ2My50ZXN0 -ggl0NDY0LnRlc3SCCXQ0NjUudGVzdIIJdDQ2Ni50ZXN0ggl0NDY3LnRlc3SCCXQ0 -NjgudGVzdIIJdDQ2OS50ZXN0ggl0NDcwLnRlc3SCCXQ0NzEudGVzdIIJdDQ3Mi50 -ZXN0ggl0NDczLnRlc3SCCXQ0NzQudGVzdIIJdDQ3NS50ZXN0ggl0NDc2LnRlc3SC -CXQ0NzcudGVzdIIJdDQ3OC50ZXN0ggl0NDc5LnRlc3SCCXQ0ODAudGVzdIIJdDQ4 -MS50ZXN0ggl0NDgyLnRlc3SCCXQ0ODMudGVzdIIJdDQ4NC50ZXN0ggl0NDg1LnRl -c3SCCXQ0ODYudGVzdIIJdDQ4Ny50ZXN0ggl0NDg4LnRlc3SCCXQ0ODkudGVzdIIJ -dDQ5MC50ZXN0ggl0NDkxLnRlc3SCCXQ0OTIudGVzdIIJdDQ5My50ZXN0ggl0NDk0 -LnRlc3SCCXQ0OTUudGVzdIIJdDQ5Ni50ZXN0ggl0NDk3LnRlc3SCCXQ0OTgudGVz -dIIJdDQ5OS50ZXN0ggl0NTAwLnRlc3SCCXQ1MDEudGVzdIIJdDUwMi50ZXN0ggl0 -NTAzLnRlc3SCCXQ1MDQudGVzdIIJdDUwNS50ZXN0ggl0NTA2LnRlc3SCCXQ1MDcu -dGVzdIIJdDUwOC50ZXN0ggl0NTA5LnRlc3SCCXQ1MTAudGVzdIIJdDUxMS50ZXN0 -ggl0NTEyLnRlc3SCCXQ1MTMudGVzdIIJdDUxNC50ZXN0ggl0NTE1LnRlc3SCCXQ1 -MTYudGVzdIIJdDUxNy50ZXN0ggl0NTE4LnRlc3SCCXQ1MTkudGVzdIIJdDUyMC50 -ZXN0ggl0NTIxLnRlc3SCCXQ1MjIudGVzdIIJdDUyMy50ZXN0ggl0NTI0LnRlc3SC -CXQ1MjUudGVzdIIJdDUyNi50ZXN0ggl0NTI3LnRlc3SCCXQ1MjgudGVzdIIJdDUy -OS50ZXN0ggl0NTMwLnRlc3SCCXQ1MzEudGVzdIIJdDUzMi50ZXN0ggl0NTMzLnRl -c3SCCXQ1MzQudGVzdIIJdDUzNS50ZXN0ggl0NTM2LnRlc3SCCXQ1MzcudGVzdIIJ -dDUzOC50ZXN0ggl0NTM5LnRlc3SCCXQ1NDAudGVzdIIJdDU0MS50ZXN0ggl0NTQy -LnRlc3SCCXQ1NDMudGVzdIIJdDU0NC50ZXN0ggl0NTQ1LnRlc3SCCXQ1NDYudGVz -dIIJdDU0Ny50ZXN0ggl0NTQ4LnRlc3SCCXQ1NDkudGVzdIIJdDU1MC50ZXN0ggl0 -NTUxLnRlc3SCCXQ1NTIudGVzdIIJdDU1My50ZXN0ggl0NTU0LnRlc3SCCXQ1NTUu -dGVzdIIJdDU1Ni50ZXN0ggl0NTU3LnRlc3SCCXQ1NTgudGVzdIIJdDU1OS50ZXN0 -ggl0NTYwLnRlc3SCCXQ1NjEudGVzdIIJdDU2Mi50ZXN0ggl0NTYzLnRlc3SCCXQ1 -NjQudGVzdIIJdDU2NS50ZXN0ggl0NTY2LnRlc3SCCXQ1NjcudGVzdIIJdDU2OC50 -ZXN0ggl0NTY5LnRlc3SCCXQ1NzAudGVzdIIJdDU3MS50ZXN0ggl0NTcyLnRlc3SC -CXQ1NzMudGVzdIIJdDU3NC50ZXN0ggl0NTc1LnRlc3SCCXQ1NzYudGVzdIIJdDU3 -Ny50ZXN0ggl0NTc4LnRlc3SCCXQ1NzkudGVzdIIJdDU4MC50ZXN0ggl0NTgxLnRl -c3SCCXQ1ODIudGVzdIIJdDU4My50ZXN0ggl0NTg0LnRlc3SCCXQ1ODUudGVzdIIJ -dDU4Ni50ZXN0ggl0NTg3LnRlc3SCCXQ1ODgudGVzdIIJdDU4OS50ZXN0ggl0NTkw -LnRlc3SCCXQ1OTEudGVzdIIJdDU5Mi50ZXN0ggl0NTkzLnRlc3SCCXQ1OTQudGVz -dIIJdDU5NS50ZXN0ggl0NTk2LnRlc3SCCXQ1OTcudGVzdIIJdDU5OC50ZXN0ggl0 -NTk5LnRlc3SCCXQ2MDAudGVzdIIJdDYwMS50ZXN0ggl0NjAyLnRlc3SCCXQ2MDMu -dGVzdIIJdDYwNC50ZXN0ggl0NjA1LnRlc3SCCXQ2MDYudGVzdIIJdDYwNy50ZXN0 -ggl0NjA4LnRlc3SCCXQ2MDkudGVzdIIJdDYxMC50ZXN0ggl0NjExLnRlc3SCCXQ2 -MTIudGVzdIIJdDYxMy50ZXN0ggl0NjE0LnRlc3SCCXQ2MTUudGVzdIIJdDYxNi50 -ZXN0ggl0NjE3LnRlc3SCCXQ2MTgudGVzdIIJdDYxOS50ZXN0ggl0NjIwLnRlc3SC -CXQ2MjEudGVzdIIJdDYyMi50ZXN0ggl0NjIzLnRlc3SCCXQ2MjQudGVzdIIJdDYy -NS50ZXN0ggl0NjI2LnRlc3SCCXQ2MjcudGVzdIIJdDYyOC50ZXN0ggl0NjI5LnRl -c3SCCXQ2MzAudGVzdIIJdDYzMS50ZXN0ggl0NjMyLnRlc3SCCXQ2MzMudGVzdIIJ -dDYzNC50ZXN0ggl0NjM1LnRlc3SCCXQ2MzYudGVzdIIJdDYzNy50ZXN0ggl0NjM4 -LnRlc3SCCXQ2MzkudGVzdIIJdDY0MC50ZXN0ggl0NjQxLnRlc3SCCXQ2NDIudGVz -dIIJdDY0My50ZXN0ggl0NjQ0LnRlc3SCCXQ2NDUudGVzdIIJdDY0Ni50ZXN0ggl0 -NjQ3LnRlc3SCCXQ2NDgudGVzdIIJdDY0OS50ZXN0ggl0NjUwLnRlc3SCCXQ2NTEu -dGVzdIIJdDY1Mi50ZXN0ggl0NjUzLnRlc3SCCXQ2NTQudGVzdIIJdDY1NS50ZXN0 -ggl0NjU2LnRlc3SCCXQ2NTcudGVzdIIJdDY1OC50ZXN0ggl0NjU5LnRlc3SCCXQ2 -NjAudGVzdIIJdDY2MS50ZXN0ggl0NjYyLnRlc3SCCXQ2NjMudGVzdIIJdDY2NC50 -ZXN0ggl0NjY1LnRlc3SCCXQ2NjYudGVzdIIJdDY2Ny50ZXN0ggl0NjY4LnRlc3SC -CXQ2NjkudGVzdIIJdDY3MC50ZXN0ggl0NjcxLnRlc3SCCXQ2NzIudGVzdIIJdDY3 -My50ZXN0ggl0Njc0LnRlc3SCCXQ2NzUudGVzdIIJdDY3Ni50ZXN0ggl0Njc3LnRl -c3SCCXQ2NzgudGVzdIIJdDY3OS50ZXN0ggl0NjgwLnRlc3SCCXQ2ODEudGVzdIIJ -dDY4Mi50ZXN0ggl0NjgzLnRlc3SCCXQ2ODQudGVzdIIJdDY4NS50ZXN0ggl0Njg2 -LnRlc3SCCXQ2ODcudGVzdIIJdDY4OC50ZXN0ggl0Njg5LnRlc3SCCXQ2OTAudGVz -dIIJdDY5MS50ZXN0ggl0NjkyLnRlc3SCCXQ2OTMudGVzdIIJdDY5NC50ZXN0ggl0 -Njk1LnRlc3SCCXQ2OTYudGVzdIIJdDY5Ny50ZXN0ggl0Njk4LnRlc3SCCXQ2OTku -dGVzdIIJdDcwMC50ZXN0ggl0NzAxLnRlc3SCCXQ3MDIudGVzdIIJdDcwMy50ZXN0 -ggl0NzA0LnRlc3SCCXQ3MDUudGVzdIIJdDcwNi50ZXN0ggl0NzA3LnRlc3SCCXQ3 -MDgudGVzdIIJdDcwOS50ZXN0ggl0NzEwLnRlc3SCCXQ3MTEudGVzdIIJdDcxMi50 -ZXN0ggl0NzEzLnRlc3SCCXQ3MTQudGVzdIIJdDcxNS50ZXN0ggl0NzE2LnRlc3SC -CXQ3MTcudGVzdIIJdDcxOC50ZXN0ggl0NzE5LnRlc3SCCXQ3MjAudGVzdIIJdDcy -MS50ZXN0ggl0NzIyLnRlc3SCCXQ3MjMudGVzdIIJdDcyNC50ZXN0ggl0NzI1LnRl -c3SCCXQ3MjYudGVzdIIJdDcyNy50ZXN0ggl0NzI4LnRlc3SCCXQ3MjkudGVzdIIJ -dDczMC50ZXN0ggl0NzMxLnRlc3SCCXQ3MzIudGVzdIIJdDczMy50ZXN0ggl0NzM0 -LnRlc3SCCXQ3MzUudGVzdIIJdDczNi50ZXN0ggl0NzM3LnRlc3SCCXQ3MzgudGVz -dIIJdDczOS50ZXN0ggl0NzQwLnRlc3SCCXQ3NDEudGVzdIIJdDc0Mi50ZXN0ggl0 -NzQzLnRlc3SCCXQ3NDQudGVzdIIJdDc0NS50ZXN0ggl0NzQ2LnRlc3SCCXQ3NDcu -dGVzdIIJdDc0OC50ZXN0ggl0NzQ5LnRlc3SCCXQ3NTAudGVzdIIJdDc1MS50ZXN0 -ggl0NzUyLnRlc3SCCXQ3NTMudGVzdIIJdDc1NC50ZXN0ggl0NzU1LnRlc3SCCXQ3 -NTYudGVzdIIJdDc1Ny50ZXN0ggl0NzU4LnRlc3SCCXQ3NTkudGVzdIIJdDc2MC50 -ZXN0ggl0NzYxLnRlc3SCCXQ3NjIudGVzdIIJdDc2My50ZXN0ggl0NzY0LnRlc3SC -CXQ3NjUudGVzdIIJdDc2Ni50ZXN0ggl0NzY3LnRlc3SCCXQ3NjgudGVzdIIJdDc2 -OS50ZXN0ggl0NzcwLnRlc3SCCXQ3NzEudGVzdIIJdDc3Mi50ZXN0ggl0NzczLnRl -c3SCCXQ3NzQudGVzdIIJdDc3NS50ZXN0ggl0Nzc2LnRlc3SCCXQ3NzcudGVzdIIJ -dDc3OC50ZXN0ggl0Nzc5LnRlc3SCCXQ3ODAudGVzdIIJdDc4MS50ZXN0ggl0Nzgy -LnRlc3SCCXQ3ODMudGVzdIIJdDc4NC50ZXN0ggl0Nzg1LnRlc3SCCXQ3ODYudGVz -dIIJdDc4Ny50ZXN0ggl0Nzg4LnRlc3SCCXQ3ODkudGVzdIIJdDc5MC50ZXN0ggl0 -NzkxLnRlc3SCCXQ3OTIudGVzdIIJdDc5My50ZXN0ggl0Nzk0LnRlc3SCCXQ3OTUu -dGVzdIIJdDc5Ni50ZXN0ggl0Nzk3LnRlc3SCCXQ3OTgudGVzdIIJdDc5OS50ZXN0 -ggl0ODAwLnRlc3SCCXQ4MDEudGVzdIIJdDgwMi50ZXN0ggl0ODAzLnRlc3SCCXQ4 -MDQudGVzdIIJdDgwNS50ZXN0ggl0ODA2LnRlc3SCCXQ4MDcudGVzdIIJdDgwOC50 -ZXN0ggl0ODA5LnRlc3SCCXQ4MTAudGVzdIIJdDgxMS50ZXN0ggl0ODEyLnRlc3SC -CXQ4MTMudGVzdIIJdDgxNC50ZXN0ggl0ODE1LnRlc3SCCXQ4MTYudGVzdIIJdDgx -Ny50ZXN0ggl0ODE4LnRlc3SCCXQ4MTkudGVzdIIJdDgyMC50ZXN0ggl0ODIxLnRl -c3SCCXQ4MjIudGVzdIIJdDgyMy50ZXN0ggl0ODI0LnRlc3SCCXQ4MjUudGVzdIIJ -dDgyNi50ZXN0ggl0ODI3LnRlc3SCCXQ4MjgudGVzdIIJdDgyOS50ZXN0ggl0ODMw -LnRlc3SCCXQ4MzEudGVzdIIJdDgzMi50ZXN0ggl0ODMzLnRlc3SCCXQ4MzQudGVz -dIIJdDgzNS50ZXN0ggl0ODM2LnRlc3SCCXQ4MzcudGVzdIIJdDgzOC50ZXN0ggl0 -ODM5LnRlc3SCCXQ4NDAudGVzdIIJdDg0MS50ZXN0ggl0ODQyLnRlc3SCCXQ4NDMu -dGVzdIIJdDg0NC50ZXN0ggl0ODQ1LnRlc3SCCXQ4NDYudGVzdIIJdDg0Ny50ZXN0 -ggl0ODQ4LnRlc3SCCXQ4NDkudGVzdIIJdDg1MC50ZXN0ggl0ODUxLnRlc3SCCXQ4 -NTIudGVzdIIJdDg1My50ZXN0ggl0ODU0LnRlc3SCCXQ4NTUudGVzdIIJdDg1Ni50 -ZXN0ggl0ODU3LnRlc3SCCXQ4NTgudGVzdIIJdDg1OS50ZXN0ggl0ODYwLnRlc3SC -CXQ4NjEudGVzdIIJdDg2Mi50ZXN0ggl0ODYzLnRlc3SCCXQ4NjQudGVzdIIJdDg2 -NS50ZXN0ggl0ODY2LnRlc3SCCXQ4NjcudGVzdIIJdDg2OC50ZXN0ggl0ODY5LnRl -c3SCCXQ4NzAudGVzdIIJdDg3MS50ZXN0ggl0ODcyLnRlc3SCCXQ4NzMudGVzdIIJ -dDg3NC50ZXN0ggl0ODc1LnRlc3SCCXQ4NzYudGVzdIIJdDg3Ny50ZXN0ggl0ODc4 -LnRlc3SCCXQ4NzkudGVzdIIJdDg4MC50ZXN0ggl0ODgxLnRlc3SCCXQ4ODIudGVz -dIIJdDg4My50ZXN0ggl0ODg0LnRlc3SCCXQ4ODUudGVzdIIJdDg4Ni50ZXN0ggl0 -ODg3LnRlc3SCCXQ4ODgudGVzdIIJdDg4OS50ZXN0ggl0ODkwLnRlc3SCCXQ4OTEu -dGVzdIIJdDg5Mi50ZXN0ggl0ODkzLnRlc3SCCXQ4OTQudGVzdIIJdDg5NS50ZXN0 -ggl0ODk2LnRlc3SCCXQ4OTcudGVzdIIJdDg5OC50ZXN0ggl0ODk5LnRlc3SCCXQ5 -MDAudGVzdIIJdDkwMS50ZXN0ggl0OTAyLnRlc3SCCXQ5MDMudGVzdIIJdDkwNC50 -ZXN0ggl0OTA1LnRlc3SCCXQ5MDYudGVzdIIJdDkwNy50ZXN0ggl0OTA4LnRlc3SC -CXQ5MDkudGVzdIIJdDkxMC50ZXN0ggl0OTExLnRlc3SCCXQ5MTIudGVzdIIJdDkx -My50ZXN0ggl0OTE0LnRlc3SCCXQ5MTUudGVzdIIJdDkxNi50ZXN0ggl0OTE3LnRl -c3SCCXQ5MTgudGVzdIIJdDkxOS50ZXN0ggl0OTIwLnRlc3SCCXQ5MjEudGVzdIIJ -dDkyMi50ZXN0ggl0OTIzLnRlc3SCCXQ5MjQudGVzdIIJdDkyNS50ZXN0ggl0OTI2 -LnRlc3SCCXQ5MjcudGVzdIIJdDkyOC50ZXN0ggl0OTI5LnRlc3SCCXQ5MzAudGVz -dIIJdDkzMS50ZXN0ggl0OTMyLnRlc3SCCXQ5MzMudGVzdIIJdDkzNC50ZXN0ggl0 -OTM1LnRlc3SCCXQ5MzYudGVzdIIJdDkzNy50ZXN0ggl0OTM4LnRlc3SCCXQ5Mzku -dGVzdIIJdDk0MC50ZXN0ggl0OTQxLnRlc3SCCXQ5NDIudGVzdIIJdDk0My50ZXN0 -ggl0OTQ0LnRlc3SCCXQ5NDUudGVzdIIJdDk0Ni50ZXN0ggl0OTQ3LnRlc3SCCXQ5 -NDgudGVzdIIJdDk0OS50ZXN0ggl0OTUwLnRlc3SCCXQ5NTEudGVzdIIJdDk1Mi50 -ZXN0ggl0OTUzLnRlc3SCCXQ5NTQudGVzdIIJdDk1NS50ZXN0ggl0OTU2LnRlc3SC -CXQ5NTcudGVzdIIJdDk1OC50ZXN0ggl0OTU5LnRlc3SCCXQ5NjAudGVzdIIJdDk2 -MS50ZXN0ggl0OTYyLnRlc3SCCXQ5NjMudGVzdIIJdDk2NC50ZXN0ggl0OTY1LnRl -c3SCCXQ5NjYudGVzdIIJdDk2Ny50ZXN0ggl0OTY4LnRlc3SCCXQ5NjkudGVzdIIJ -dDk3MC50ZXN0ggl0OTcxLnRlc3SCCXQ5NzIudGVzdIIJdDk3My50ZXN0ggl0OTc0 -LnRlc3SCCXQ5NzUudGVzdIIJdDk3Ni50ZXN0ggl0OTc3LnRlc3SCCXQ5NzgudGVz -dIIJdDk3OS50ZXN0ggl0OTgwLnRlc3SCCXQ5ODEudGVzdIIJdDk4Mi50ZXN0ggl0 -OTgzLnRlc3SCCXQ5ODQudGVzdIIJdDk4NS50ZXN0ggl0OTg2LnRlc3SCCXQ5ODcu -dGVzdIIJdDk4OC50ZXN0ggl0OTg5LnRlc3SCCXQ5OTAudGVzdIIJdDk5MS50ZXN0 -ggl0OTkyLnRlc3SCCXQ5OTMudGVzdIIJdDk5NC50ZXN0ggl0OTk1LnRlc3SCCXQ5 -OTYudGVzdIIJdDk5Ny50ZXN0ggl0OTk4LnRlc3SCCXQ5OTkudGVzdIIKdDEwMDAu -dGVzdIIKdDEwMDEudGVzdIIKdDEwMDIudGVzdIIKdDEwMDMudGVzdIIKdDEwMDQu -dGVzdIIKdDEwMDUudGVzdIIKdDEwMDYudGVzdIIKdDEwMDcudGVzdIIKdDEwMDgu -dGVzdIIKdDEwMDkudGVzdIIKdDEwMTAudGVzdIIKdDEwMTEudGVzdIIKdDEwMTIu -dGVzdIIKdDEwMTMudGVzdIIKdDEwMTQudGVzdIIKdDEwMTUudGVzdIIKdDEwMTYu -dGVzdIIKdDEwMTcudGVzdIIKdDEwMTgudGVzdIIKdDEwMTkudGVzdIIKdDEwMjAu -dGVzdIIKdDEwMjEudGVzdIIKdDEwMjIudGVzdIIKdDEwMjMudGVzdDANBgkqhkiG -9w0BAQsFAAOCAQEAdLNGPgV+swOF4zK+gdJjFCSxbTok4Xm3aJkVM9ljbYuzY6Wj -qB3FBYl9XgAuFp2zfuPWi+w75gDjdOnTU4nuM1TAGUGfNWJBMoch54REyiEq+DMz -9ZI5N6M+Q0JSFoHDbs5x2dlOvu6HFDl7KhNnheByuQW3dWpKhvS/mmcZdXzmAdpC -E1it+R/RY6WMJ/1IBMq5t0q1YhKtDwtvun/RxB+2wGrGiNUbPb1kNPpEia0FR0ys -3XIvfPo0cbtB8EN9lz8pAN6rTPfMK8qA+yr7NIFac3t32lRbHgk8MY1+7cKvSBlZ -/VloVsn1Oi2sD1du8e6J6mlx0nru7p/2zBV/IA== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D7.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D7.pem deleted file mode 100644 index 9782123c7d..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D7.pem +++ /dev/null @@ -1,220 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d7 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - IP Address:10.0.0.0, IP Address:10.0.0.1, IP Address:10.0.0.2, IP Address:10.0.0.3, IP Address:10.0.0.4, IP Address:10.0.0.5, IP Address:10.0.0.6, IP Address:10.0.0.7, IP Address:10.0.0.8, IP Address:10.0.0.9, IP Address:10.0.0.10, IP Address:10.0.0.11, IP Address:10.0.0.12, IP Address:10.0.0.13, IP Address:10.0.0.14, IP Address:10.0.0.15, IP Address:10.0.0.16, IP Address:10.0.0.17, IP Address:10.0.0.18, IP Address:10.0.0.19, IP Address:10.0.0.20, IP Address:10.0.0.21, IP Address:10.0.0.22, IP Address:10.0.0.23, IP Address:10.0.0.24, IP Address:10.0.0.25, IP Address:10.0.0.26, IP Address:10.0.0.27, IP Address:10.0.0.28, IP Address:10.0.0.29, IP Address:10.0.0.30, IP Address:10.0.0.31, IP Address:10.0.0.32, IP Address:10.0.0.33, IP Address:10.0.0.34, IP Address:10.0.0.35, IP Address:10.0.0.36, IP Address:10.0.0.37, IP Address:10.0.0.38, IP Address:10.0.0.39, IP Address:10.0.0.40, IP Address:10.0.0.41, IP Address:10.0.0.42, IP Address:10.0.0.43, IP Address:10.0.0.44, IP Address:10.0.0.45, IP Address:10.0.0.46, IP Address:10.0.0.47, IP Address:10.0.0.48, IP Address:10.0.0.49, IP Address:10.0.0.50, IP Address:10.0.0.51, IP Address:10.0.0.52, IP Address:10.0.0.53, IP Address:10.0.0.54, IP Address:10.0.0.55, IP Address:10.0.0.56, IP Address:10.0.0.57, IP Address:10.0.0.58, IP Address:10.0.0.59, IP Address:10.0.0.60, IP Address:10.0.0.61, IP Address:10.0.0.62, IP Address:10.0.0.63, IP Address:10.0.0.64, IP Address:10.0.0.65, IP Address:10.0.0.66, IP Address:10.0.0.67, IP Address:10.0.0.68, IP Address:10.0.0.69, IP Address:10.0.0.70, IP Address:10.0.0.71, IP Address:10.0.0.72, IP Address:10.0.0.73, IP Address:10.0.0.74, IP Address:10.0.0.75, IP Address:10.0.0.76, IP Address:10.0.0.77, IP Address:10.0.0.78, IP Address:10.0.0.79, IP Address:10.0.0.80, IP Address:10.0.0.81, IP Address:10.0.0.82, IP Address:10.0.0.83, IP Address:10.0.0.84, IP Address:10.0.0.85, IP Address:10.0.0.86, IP Address:10.0.0.87, IP Address:10.0.0.88, IP Address:10.0.0.89, IP Address:10.0.0.90, IP Address:10.0.0.91, IP Address:10.0.0.92, IP Address:10.0.0.93, IP Address:10.0.0.94, IP Address:10.0.0.95, IP Address:10.0.0.96, IP Address:10.0.0.97, IP Address:10.0.0.98, IP Address:10.0.0.99, IP Address:10.0.0.100, IP Address:10.0.0.101, IP Address:10.0.0.102, IP Address:10.0.0.103, IP Address:10.0.0.104, IP Address:10.0.0.105, IP Address:10.0.0.106, IP Address:10.0.0.107, IP Address:10.0.0.108, IP Address:10.0.0.109, IP Address:10.0.0.110, IP Address:10.0.0.111, IP Address:10.0.0.112, IP Address:10.0.0.113, IP Address:10.0.0.114, IP Address:10.0.0.115, IP Address:10.0.0.116, IP Address:10.0.0.117, IP Address:10.0.0.118, IP Address:10.0.0.119, IP Address:10.0.0.120, IP Address:10.0.0.121, IP Address:10.0.0.122, IP Address:10.0.0.123, IP Address:10.0.0.124, IP Address:10.0.0.125, IP Address:10.0.0.126, IP Address:10.0.0.127, IP Address:10.0.0.128, IP Address:10.0.0.129, IP Address:10.0.0.130, IP Address:10.0.0.131, IP Address:10.0.0.132, IP Address:10.0.0.133, IP Address:10.0.0.134, IP Address:10.0.0.135, IP Address:10.0.0.136, IP Address:10.0.0.137, IP Address:10.0.0.138, IP Address:10.0.0.139, IP Address:10.0.0.140, IP Address:10.0.0.141, IP Address:10.0.0.142, IP Address:10.0.0.143, IP Address:10.0.0.144, IP Address:10.0.0.145, IP Address:10.0.0.146, IP Address:10.0.0.147, IP Address:10.0.0.148, IP Address:10.0.0.149, IP Address:10.0.0.150, IP Address:10.0.0.151, IP Address:10.0.0.152, IP Address:10.0.0.153, IP Address:10.0.0.154, IP Address:10.0.0.155, IP Address:10.0.0.156, IP Address:10.0.0.157, IP Address:10.0.0.158, IP Address:10.0.0.159, IP Address:10.0.0.160, IP Address:10.0.0.161, IP Address:10.0.0.162, IP Address:10.0.0.163, IP Address:10.0.0.164, IP Address:10.0.0.165, IP Address:10.0.0.166, IP Address:10.0.0.167, IP Address:10.0.0.168, IP Address:10.0.0.169, IP Address:10.0.0.170, IP Address:10.0.0.171, IP Address:10.0.0.172, IP Address:10.0.0.173, IP Address:10.0.0.174, IP Address:10.0.0.175, IP Address:10.0.0.176, IP Address:10.0.0.177, IP Address:10.0.0.178, IP Address:10.0.0.179, IP Address:10.0.0.180, IP Address:10.0.0.181, IP Address:10.0.0.182, IP Address:10.0.0.183, IP Address:10.0.0.184, IP Address:10.0.0.185, IP Address:10.0.0.186, IP Address:10.0.0.187, IP Address:10.0.0.188, IP Address:10.0.0.189, IP Address:10.0.0.190, IP Address:10.0.0.191, IP Address:10.0.0.192, IP Address:10.0.0.193, IP Address:10.0.0.194, IP Address:10.0.0.195, IP Address:10.0.0.196, IP Address:10.0.0.197, IP Address:10.0.0.198, IP Address:10.0.0.199, IP Address:10.0.0.200, IP Address:10.0.0.201, IP Address:10.0.0.202, IP Address:10.0.0.203, IP Address:10.0.0.204, IP Address:10.0.0.205, IP Address:10.0.0.206, IP Address:10.0.0.207, IP Address:10.0.0.208, IP Address:10.0.0.209, IP Address:10.0.0.210, IP Address:10.0.0.211, IP Address:10.0.0.212, IP Address:10.0.0.213, IP Address:10.0.0.214, IP Address:10.0.0.215, IP Address:10.0.0.216, IP Address:10.0.0.217, IP Address:10.0.0.218, IP Address:10.0.0.219, IP Address:10.0.0.220, IP Address:10.0.0.221, IP Address:10.0.0.222, IP Address:10.0.0.223, IP Address:10.0.0.224, IP Address:10.0.0.225, IP Address:10.0.0.226, IP Address:10.0.0.227, IP Address:10.0.0.228, IP Address:10.0.0.229, IP Address:10.0.0.230, IP Address:10.0.0.231, IP Address:10.0.0.232, IP Address:10.0.0.233, IP Address:10.0.0.234, IP Address:10.0.0.235, IP Address:10.0.0.236, IP Address:10.0.0.237, IP Address:10.0.0.238, IP Address:10.0.0.239, IP Address:10.0.0.240, IP Address:10.0.0.241, IP Address:10.0.0.242, IP Address:10.0.0.243, IP Address:10.0.0.244, IP Address:10.0.0.245, IP Address:10.0.0.246, IP Address:10.0.0.247, IP Address:10.0.0.248, IP Address:10.0.0.249, IP Address:10.0.0.250, IP Address:10.0.0.251, IP Address:10.0.0.252, IP Address:10.0.0.253, IP Address:10.0.0.254, IP Address:10.0.0.255, IP Address:10.0.1.0, IP Address:10.0.1.1, IP Address:10.0.1.2, IP Address:10.0.1.3, IP Address:10.0.1.4, IP Address:10.0.1.5, IP Address:10.0.1.6, IP Address:10.0.1.7, IP Address:10.0.1.8, IP Address:10.0.1.9, IP Address:10.0.1.10, IP Address:10.0.1.11, IP Address:10.0.1.12, IP Address:10.0.1.13, IP Address:10.0.1.14, IP Address:10.0.1.15, IP Address:10.0.1.16, IP Address:10.0.1.17, IP Address:10.0.1.18, IP Address:10.0.1.19, IP Address:10.0.1.20, IP Address:10.0.1.21, IP Address:10.0.1.22, IP Address:10.0.1.23, IP Address:10.0.1.24, IP Address:10.0.1.25, IP Address:10.0.1.26, IP Address:10.0.1.27, IP Address:10.0.1.28, IP Address:10.0.1.29, IP Address:10.0.1.30, IP Address:10.0.1.31, IP Address:10.0.1.32, IP Address:10.0.1.33, IP Address:10.0.1.34, IP Address:10.0.1.35, IP Address:10.0.1.36, IP Address:10.0.1.37, IP Address:10.0.1.38, IP Address:10.0.1.39, IP Address:10.0.1.40, IP Address:10.0.1.41, IP Address:10.0.1.42, IP Address:10.0.1.43, IP Address:10.0.1.44, IP Address:10.0.1.45, IP Address:10.0.1.46, IP Address:10.0.1.47, IP Address:10.0.1.48, IP Address:10.0.1.49, IP Address:10.0.1.50, IP Address:10.0.1.51, IP Address:10.0.1.52, IP Address:10.0.1.53, IP Address:10.0.1.54, IP Address:10.0.1.55, IP Address:10.0.1.56, IP Address:10.0.1.57, IP Address:10.0.1.58, IP Address:10.0.1.59, IP Address:10.0.1.60, IP Address:10.0.1.61, IP Address:10.0.1.62, IP Address:10.0.1.63, IP Address:10.0.1.64, IP Address:10.0.1.65, IP Address:10.0.1.66, IP Address:10.0.1.67, IP Address:10.0.1.68, IP Address:10.0.1.69, IP Address:10.0.1.70, IP Address:10.0.1.71, IP Address:10.0.1.72, IP Address:10.0.1.73, IP Address:10.0.1.74, IP Address:10.0.1.75, IP Address:10.0.1.76, IP Address:10.0.1.77, IP Address:10.0.1.78, IP Address:10.0.1.79, IP Address:10.0.1.80, IP Address:10.0.1.81, IP Address:10.0.1.82, IP Address:10.0.1.83, IP Address:10.0.1.84, IP Address:10.0.1.85, IP Address:10.0.1.86, IP Address:10.0.1.87, IP Address:10.0.1.88, IP Address:10.0.1.89, IP Address:10.0.1.90, IP Address:10.0.1.91, IP Address:10.0.1.92, IP Address:10.0.1.93, IP Address:10.0.1.94, IP Address:10.0.1.95, IP Address:10.0.1.96, IP Address:10.0.1.97, IP Address:10.0.1.98, IP Address:10.0.1.99, IP Address:10.0.1.100, IP Address:10.0.1.101, IP Address:10.0.1.102, IP Address:10.0.1.103, IP Address:10.0.1.104, IP Address:10.0.1.105, IP Address:10.0.1.106, IP Address:10.0.1.107, IP Address:10.0.1.108, IP Address:10.0.1.109, IP Address:10.0.1.110, IP Address:10.0.1.111, IP Address:10.0.1.112, IP Address:10.0.1.113, IP Address:10.0.1.114, IP Address:10.0.1.115, IP Address:10.0.1.116, IP Address:10.0.1.117, IP Address:10.0.1.118, IP Address:10.0.1.119, IP Address:10.0.1.120, IP Address:10.0.1.121, IP Address:10.0.1.122, IP Address:10.0.1.123, IP Address:10.0.1.124, IP Address:10.0.1.125, IP Address:10.0.1.126, IP Address:10.0.1.127, IP Address:10.0.1.128, IP Address:10.0.1.129, IP Address:10.0.1.130, IP Address:10.0.1.131, IP Address:10.0.1.132, IP Address:10.0.1.133, IP Address:10.0.1.134, IP Address:10.0.1.135, IP Address:10.0.1.136, IP Address:10.0.1.137, IP Address:10.0.1.138, IP Address:10.0.1.139, IP Address:10.0.1.140, IP Address:10.0.1.141, IP Address:10.0.1.142, IP Address:10.0.1.143, IP Address:10.0.1.144, IP Address:10.0.1.145, IP Address:10.0.1.146, IP Address:10.0.1.147, IP Address:10.0.1.148, IP Address:10.0.1.149, IP Address:10.0.1.150, IP Address:10.0.1.151, IP Address:10.0.1.152, IP Address:10.0.1.153, IP Address:10.0.1.154, IP Address:10.0.1.155, IP Address:10.0.1.156, IP Address:10.0.1.157, IP Address:10.0.1.158, IP Address:10.0.1.159, IP Address:10.0.1.160, IP Address:10.0.1.161, IP Address:10.0.1.162, IP Address:10.0.1.163, IP Address:10.0.1.164, IP Address:10.0.1.165, IP Address:10.0.1.166, IP Address:10.0.1.167, IP Address:10.0.1.168, IP Address:10.0.1.169, IP Address:10.0.1.170, IP Address:10.0.1.171, IP Address:10.0.1.172, IP Address:10.0.1.173, IP Address:10.0.1.174, IP Address:10.0.1.175, IP Address:10.0.1.176, IP Address:10.0.1.177, IP Address:10.0.1.178, IP Address:10.0.1.179, IP Address:10.0.1.180, IP Address:10.0.1.181, IP Address:10.0.1.182, IP Address:10.0.1.183, IP Address:10.0.1.184, IP Address:10.0.1.185, IP Address:10.0.1.186, IP Address:10.0.1.187, IP Address:10.0.1.188, IP Address:10.0.1.189, IP Address:10.0.1.190, IP Address:10.0.1.191, IP Address:10.0.1.192, IP Address:10.0.1.193, IP Address:10.0.1.194, IP Address:10.0.1.195, IP Address:10.0.1.196, IP Address:10.0.1.197, IP Address:10.0.1.198, IP Address:10.0.1.199, IP Address:10.0.1.200, IP Address:10.0.1.201, IP Address:10.0.1.202, IP Address:10.0.1.203, IP Address:10.0.1.204, IP Address:10.0.1.205, IP Address:10.0.1.206, IP Address:10.0.1.207, IP Address:10.0.1.208, IP Address:10.0.1.209, IP Address:10.0.1.210, IP Address:10.0.1.211, IP Address:10.0.1.212, IP Address:10.0.1.213, IP Address:10.0.1.214, IP Address:10.0.1.215, IP Address:10.0.1.216, IP Address:10.0.1.217, IP Address:10.0.1.218, IP Address:10.0.1.219, IP Address:10.0.1.220, IP Address:10.0.1.221, IP Address:10.0.1.222, IP Address:10.0.1.223, IP Address:10.0.1.224, IP Address:10.0.1.225, IP Address:10.0.1.226, IP Address:10.0.1.227, IP Address:10.0.1.228, IP Address:10.0.1.229, IP Address:10.0.1.230, IP Address:10.0.1.231, IP Address:10.0.1.232, IP Address:10.0.1.233, IP Address:10.0.1.234, IP Address:10.0.1.235, IP Address:10.0.1.236, IP Address:10.0.1.237, IP Address:10.0.1.238, IP Address:10.0.1.239, IP Address:10.0.1.240, IP Address:10.0.1.241, IP Address:10.0.1.242, IP Address:10.0.1.243, IP Address:10.0.1.244, IP Address:10.0.1.245, IP Address:10.0.1.246, IP Address:10.0.1.247, IP Address:10.0.1.248, IP Address:10.0.1.249, IP Address:10.0.1.250, IP Address:10.0.1.251, IP Address:10.0.1.252, IP Address:10.0.1.253, IP Address:10.0.1.254, IP Address:10.0.1.255, IP Address:10.0.2.0, IP Address:10.0.2.1, IP Address:10.0.2.2, IP Address:10.0.2.3, IP Address:10.0.2.4, IP Address:10.0.2.5, IP Address:10.0.2.6, IP Address:10.0.2.7, IP Address:10.0.2.8, IP Address:10.0.2.9, IP Address:10.0.2.10, IP Address:10.0.2.11, IP Address:10.0.2.12, IP Address:10.0.2.13, IP Address:10.0.2.14, IP Address:10.0.2.15, IP Address:10.0.2.16, IP Address:10.0.2.17, IP Address:10.0.2.18, IP Address:10.0.2.19, IP Address:10.0.2.20, IP Address:10.0.2.21, IP Address:10.0.2.22, IP Address:10.0.2.23, IP Address:10.0.2.24, IP Address:10.0.2.25, IP Address:10.0.2.26, IP Address:10.0.2.27, IP Address:10.0.2.28, IP Address:10.0.2.29, IP Address:10.0.2.30, IP Address:10.0.2.31, IP Address:10.0.2.32, IP Address:10.0.2.33, IP Address:10.0.2.34, IP Address:10.0.2.35, IP Address:10.0.2.36, IP Address:10.0.2.37, IP Address:10.0.2.38, IP Address:10.0.2.39, IP Address:10.0.2.40, IP Address:10.0.2.41, IP Address:10.0.2.42, IP Address:10.0.2.43, IP Address:10.0.2.44, IP Address:10.0.2.45, IP Address:10.0.2.46, IP Address:10.0.2.47, IP Address:10.0.2.48, IP Address:10.0.2.49, IP Address:10.0.2.50, IP Address:10.0.2.51, IP Address:10.0.2.52, IP Address:10.0.2.53, IP Address:10.0.2.54, IP Address:10.0.2.55, IP Address:10.0.2.56, IP Address:10.0.2.57, IP Address:10.0.2.58, IP Address:10.0.2.59, IP Address:10.0.2.60, IP Address:10.0.2.61, IP Address:10.0.2.62, IP Address:10.0.2.63, IP Address:10.0.2.64, IP Address:10.0.2.65, IP Address:10.0.2.66, IP Address:10.0.2.67, IP Address:10.0.2.68, IP Address:10.0.2.69, IP Address:10.0.2.70, IP Address:10.0.2.71, IP Address:10.0.2.72, IP Address:10.0.2.73, IP Address:10.0.2.74, IP Address:10.0.2.75, IP Address:10.0.2.76, IP Address:10.0.2.77, IP Address:10.0.2.78, IP Address:10.0.2.79, IP Address:10.0.2.80, IP Address:10.0.2.81, IP Address:10.0.2.82, IP Address:10.0.2.83, IP Address:10.0.2.84, IP Address:10.0.2.85, IP Address:10.0.2.86, IP Address:10.0.2.87, IP Address:10.0.2.88, IP Address:10.0.2.89, IP Address:10.0.2.90, IP Address:10.0.2.91, IP Address:10.0.2.92, IP Address:10.0.2.93, IP Address:10.0.2.94, IP Address:10.0.2.95, IP Address:10.0.2.96, IP Address:10.0.2.97, IP Address:10.0.2.98, IP Address:10.0.2.99, IP Address:10.0.2.100, IP Address:10.0.2.101, IP Address:10.0.2.102, IP Address:10.0.2.103, IP Address:10.0.2.104, IP Address:10.0.2.105, IP Address:10.0.2.106, IP Address:10.0.2.107, IP Address:10.0.2.108, IP Address:10.0.2.109, IP Address:10.0.2.110, IP Address:10.0.2.111, IP Address:10.0.2.112, IP Address:10.0.2.113, IP Address:10.0.2.114, IP Address:10.0.2.115, IP Address:10.0.2.116, IP Address:10.0.2.117, IP Address:10.0.2.118, IP Address:10.0.2.119, IP Address:10.0.2.120, IP Address:10.0.2.121, IP Address:10.0.2.122, IP Address:10.0.2.123, IP Address:10.0.2.124, IP Address:10.0.2.125, IP Address:10.0.2.126, IP Address:10.0.2.127, IP Address:10.0.2.128, IP Address:10.0.2.129, IP Address:10.0.2.130, IP Address:10.0.2.131, IP Address:10.0.2.132, IP Address:10.0.2.133, IP Address:10.0.2.134, IP Address:10.0.2.135, IP Address:10.0.2.136, IP Address:10.0.2.137, IP Address:10.0.2.138, IP Address:10.0.2.139, IP Address:10.0.2.140, IP Address:10.0.2.141, IP Address:10.0.2.142, IP Address:10.0.2.143, IP Address:10.0.2.144, IP Address:10.0.2.145, IP Address:10.0.2.146, IP Address:10.0.2.147, IP Address:10.0.2.148, IP Address:10.0.2.149, IP Address:10.0.2.150, IP Address:10.0.2.151, IP Address:10.0.2.152, IP Address:10.0.2.153, IP Address:10.0.2.154, IP Address:10.0.2.155, IP Address:10.0.2.156, IP Address:10.0.2.157, IP Address:10.0.2.158, IP Address:10.0.2.159, IP Address:10.0.2.160, IP Address:10.0.2.161, IP Address:10.0.2.162, IP Address:10.0.2.163, IP Address:10.0.2.164, IP Address:10.0.2.165, IP Address:10.0.2.166, IP Address:10.0.2.167, IP Address:10.0.2.168, IP Address:10.0.2.169, IP Address:10.0.2.170, IP Address:10.0.2.171, IP Address:10.0.2.172, IP Address:10.0.2.173, IP Address:10.0.2.174, IP Address:10.0.2.175, IP Address:10.0.2.176, IP Address:10.0.2.177, IP Address:10.0.2.178, IP Address:10.0.2.179, IP Address:10.0.2.180, IP Address:10.0.2.181, IP Address:10.0.2.182, IP Address:10.0.2.183, IP Address:10.0.2.184, IP Address:10.0.2.185, IP Address:10.0.2.186, IP Address:10.0.2.187, IP Address:10.0.2.188, IP Address:10.0.2.189, IP Address:10.0.2.190, IP Address:10.0.2.191, IP Address:10.0.2.192, IP Address:10.0.2.193, IP Address:10.0.2.194, IP Address:10.0.2.195, IP Address:10.0.2.196, IP Address:10.0.2.197, IP Address:10.0.2.198, IP Address:10.0.2.199, IP Address:10.0.2.200, IP Address:10.0.2.201, IP Address:10.0.2.202, IP Address:10.0.2.203, IP Address:10.0.2.204, IP Address:10.0.2.205, IP Address:10.0.2.206, IP Address:10.0.2.207, IP Address:10.0.2.208, IP Address:10.0.2.209, IP Address:10.0.2.210, IP Address:10.0.2.211, IP Address:10.0.2.212, IP Address:10.0.2.213, IP Address:10.0.2.214, IP Address:10.0.2.215, IP Address:10.0.2.216, IP Address:10.0.2.217, IP Address:10.0.2.218, IP Address:10.0.2.219, IP Address:10.0.2.220, IP Address:10.0.2.221, IP Address:10.0.2.222, IP Address:10.0.2.223, IP Address:10.0.2.224, IP Address:10.0.2.225, IP Address:10.0.2.226, IP Address:10.0.2.227, IP Address:10.0.2.228, IP Address:10.0.2.229, IP Address:10.0.2.230, IP Address:10.0.2.231, IP Address:10.0.2.232, IP Address:10.0.2.233, IP Address:10.0.2.234, IP Address:10.0.2.235, IP Address:10.0.2.236, IP Address:10.0.2.237, IP Address:10.0.2.238, IP Address:10.0.2.239, IP Address:10.0.2.240, IP Address:10.0.2.241, IP Address:10.0.2.242, IP Address:10.0.2.243, IP Address:10.0.2.244, IP Address:10.0.2.245, IP Address:10.0.2.246, IP Address:10.0.2.247, IP Address:10.0.2.248, IP Address:10.0.2.249, IP Address:10.0.2.250, IP Address:10.0.2.251, IP Address:10.0.2.252, IP Address:10.0.2.253, IP Address:10.0.2.254, IP Address:10.0.2.255, IP Address:10.0.3.0, IP Address:10.0.3.1, IP Address:10.0.3.2, IP Address:10.0.3.3, IP Address:10.0.3.4, IP Address:10.0.3.5, IP Address:10.0.3.6, IP Address:10.0.3.7, IP Address:10.0.3.8, IP Address:10.0.3.9, IP Address:10.0.3.10, IP Address:10.0.3.11, IP Address:10.0.3.12, IP Address:10.0.3.13, IP Address:10.0.3.14, IP Address:10.0.3.15, IP Address:10.0.3.16, IP Address:10.0.3.17, IP Address:10.0.3.18, IP Address:10.0.3.19, IP Address:10.0.3.20, IP Address:10.0.3.21, IP Address:10.0.3.22, IP Address:10.0.3.23, IP Address:10.0.3.24, IP Address:10.0.3.25, IP Address:10.0.3.26, IP Address:10.0.3.27, IP Address:10.0.3.28, IP Address:10.0.3.29, IP Address:10.0.3.30, IP Address:10.0.3.31, IP Address:10.0.3.32, IP Address:10.0.3.33, IP Address:10.0.3.34, IP Address:10.0.3.35, IP Address:10.0.3.36, IP Address:10.0.3.37, IP Address:10.0.3.38, IP Address:10.0.3.39, IP Address:10.0.3.40, IP Address:10.0.3.41, IP Address:10.0.3.42, IP Address:10.0.3.43, IP Address:10.0.3.44, IP Address:10.0.3.45, IP Address:10.0.3.46, IP Address:10.0.3.47, IP Address:10.0.3.48, IP Address:10.0.3.49, IP Address:10.0.3.50, IP Address:10.0.3.51, IP Address:10.0.3.52, IP Address:10.0.3.53, IP Address:10.0.3.54, IP Address:10.0.3.55, IP Address:10.0.3.56, IP Address:10.0.3.57, IP Address:10.0.3.58, IP Address:10.0.3.59, IP Address:10.0.3.60, IP Address:10.0.3.61, IP Address:10.0.3.62, IP Address:10.0.3.63, IP Address:10.0.3.64, IP Address:10.0.3.65, IP Address:10.0.3.66, IP Address:10.0.3.67, IP Address:10.0.3.68, IP Address:10.0.3.69, IP Address:10.0.3.70, IP Address:10.0.3.71, IP Address:10.0.3.72, IP Address:10.0.3.73, IP Address:10.0.3.74, IP Address:10.0.3.75, IP Address:10.0.3.76, IP Address:10.0.3.77, IP Address:10.0.3.78, IP Address:10.0.3.79, IP Address:10.0.3.80, IP Address:10.0.3.81, IP Address:10.0.3.82, IP Address:10.0.3.83, IP Address:10.0.3.84, IP Address:10.0.3.85, IP Address:10.0.3.86, IP Address:10.0.3.87, IP Address:10.0.3.88, IP Address:10.0.3.89, IP Address:10.0.3.90, IP Address:10.0.3.91, IP Address:10.0.3.92, IP Address:10.0.3.93, IP Address:10.0.3.94, IP Address:10.0.3.95, IP Address:10.0.3.96, IP Address:10.0.3.97, IP Address:10.0.3.98, IP Address:10.0.3.99, IP Address:10.0.3.100, IP Address:10.0.3.101, IP Address:10.0.3.102, IP Address:10.0.3.103, IP Address:10.0.3.104, IP Address:10.0.3.105, IP Address:10.0.3.106, IP Address:10.0.3.107, IP Address:10.0.3.108, IP Address:10.0.3.109, IP Address:10.0.3.110, IP Address:10.0.3.111, IP Address:10.0.3.112, IP Address:10.0.3.113, IP Address:10.0.3.114, IP Address:10.0.3.115, IP Address:10.0.3.116, IP Address:10.0.3.117, IP Address:10.0.3.118, IP Address:10.0.3.119, IP Address:10.0.3.120, IP Address:10.0.3.121, IP Address:10.0.3.122, IP Address:10.0.3.123, IP Address:10.0.3.124, IP Address:10.0.3.125, IP Address:10.0.3.126, IP Address:10.0.3.127, IP Address:10.0.3.128, IP Address:10.0.3.129, IP Address:10.0.3.130, IP Address:10.0.3.131, IP Address:10.0.3.132, IP Address:10.0.3.133, IP Address:10.0.3.134, IP Address:10.0.3.135, IP Address:10.0.3.136, IP Address:10.0.3.137, IP Address:10.0.3.138, IP Address:10.0.3.139, IP Address:10.0.3.140, IP Address:10.0.3.141, IP Address:10.0.3.142, IP Address:10.0.3.143, IP Address:10.0.3.144, IP Address:10.0.3.145, IP Address:10.0.3.146, IP Address:10.0.3.147, IP Address:10.0.3.148, IP Address:10.0.3.149, IP Address:10.0.3.150, IP Address:10.0.3.151, IP Address:10.0.3.152, IP Address:10.0.3.153, IP Address:10.0.3.154, IP Address:10.0.3.155, IP Address:10.0.3.156, IP Address:10.0.3.157, IP Address:10.0.3.158, IP Address:10.0.3.159, IP Address:10.0.3.160, IP Address:10.0.3.161, IP Address:10.0.3.162, IP Address:10.0.3.163, IP Address:10.0.3.164, IP Address:10.0.3.165, IP Address:10.0.3.166, IP Address:10.0.3.167, IP Address:10.0.3.168, IP Address:10.0.3.169, IP Address:10.0.3.170, IP Address:10.0.3.171, IP Address:10.0.3.172, IP Address:10.0.3.173, IP Address:10.0.3.174, IP Address:10.0.3.175, IP Address:10.0.3.176, IP Address:10.0.3.177, IP Address:10.0.3.178, IP Address:10.0.3.179, IP Address:10.0.3.180, IP Address:10.0.3.181, IP Address:10.0.3.182, IP Address:10.0.3.183, IP Address:10.0.3.184, IP Address:10.0.3.185, IP Address:10.0.3.186, IP Address:10.0.3.187, IP Address:10.0.3.188, IP Address:10.0.3.189, IP Address:10.0.3.190, IP Address:10.0.3.191, IP Address:10.0.3.192, IP Address:10.0.3.193, IP Address:10.0.3.194, IP Address:10.0.3.195, IP Address:10.0.3.196, IP Address:10.0.3.197, IP Address:10.0.3.198, IP Address:10.0.3.199, IP Address:10.0.3.200, IP Address:10.0.3.201, IP Address:10.0.3.202, IP Address:10.0.3.203, IP Address:10.0.3.204, IP Address:10.0.3.205, IP Address:10.0.3.206, IP Address:10.0.3.207, IP Address:10.0.3.208, IP Address:10.0.3.209, IP Address:10.0.3.210, IP Address:10.0.3.211, IP Address:10.0.3.212, IP Address:10.0.3.213, IP Address:10.0.3.214, IP Address:10.0.3.215, IP Address:10.0.3.216, IP Address:10.0.3.217, IP Address:10.0.3.218, IP Address:10.0.3.219, IP Address:10.0.3.220, IP Address:10.0.3.221, IP Address:10.0.3.222, IP Address:10.0.3.223, IP Address:10.0.3.224, IP Address:10.0.3.225, IP Address:10.0.3.226, IP Address:10.0.3.227, IP Address:10.0.3.228, IP Address:10.0.3.229, IP Address:10.0.3.230, IP Address:10.0.3.231, IP Address:10.0.3.232, IP Address:10.0.3.233, IP Address:10.0.3.234, IP Address:10.0.3.235, IP Address:10.0.3.236, IP Address:10.0.3.237, IP Address:10.0.3.238, IP Address:10.0.3.239, IP Address:10.0.3.240, IP Address:10.0.3.241, IP Address:10.0.3.242, IP Address:10.0.3.243, IP Address:10.0.3.244, IP Address:10.0.3.245, IP Address:10.0.3.246, IP Address:10.0.3.247, IP Address:10.0.3.248, IP Address:10.0.3.249, IP Address:10.0.3.250, IP Address:10.0.3.251, IP Address:10.0.3.252, IP Address:10.0.3.253, IP Address:10.0.3.254, IP Address:10.0.3.255 - Signature Algorithm: sha256WithRSAEncryption - 24:e6:7f:49:27:e7:de:27:ca:06:88:0f:d2:64:ba:07:75:08: - c0:72:41:ce:67:9f:1a:d8:23:d7:b6:35:ab:d4:49:1b:7e:cb: - 46:74:25:52:65:fb:5b:2b:74:ab:2c:19:1c:bf:06:01:78:0c: - c7:a6:3c:e0:1a:d4:dc:8c:00:8b:a8:05:4c:c2:cf:82:41:c7: - 51:65:49:fc:6b:dc:b3:b6:57:f0:0a:3c:05:39:7d:6e:2c:cd: - 6b:f3:b0:38:c4:0b:1b:5f:bf:03:e9:59:f8:d4:c5:42:7a:c0: - 39:5e:a4:ef:45:39:aa:ab:91:35:9d:8e:65:3f:43:bc:59:6f: - 90:d1:da:eb:fe:b0:b5:3a:24:63:78:04:f3:75:58:43:79:b5: - 64:1f:96:ee:c9:3b:93:12:e1:c7:31:5b:9d:a9:58:48:03:f7: - 76:ad:0a:e8:b1:38:58:df:2e:04:8b:56:07:1c:9c:4e:e8:27: - 2b:9d:24:a0:09:a6:b7:c2:7f:f4:16:c0:2a:f7:ca:b0:f5:b9: - c2:0c:4b:e8:c2:16:e3:b4:dc:0b:a9:95:7f:60:35:b1:62:1b: - 53:14:94:c9:ea:74:ee:0e:05:64:ff:04:1b:b4:1d:8c:10:d2: - 3e:6e:0d:f0:87:0b:c5:29:0a:90:cb:86:ee:0a:ba:3f:d7:d4: - 12:e3:0a:e9 ------BEGIN CERTIFICATE----- -MIIbrjCCGpagAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY1zANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCGPswghj3MB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwghgNBgNVHREEghgEMIIYAIcE -CgAAAIcECgAAAYcECgAAAocECgAAA4cECgAABIcECgAABYcECgAABocECgAAB4cE -CgAACIcECgAACYcECgAACocECgAAC4cECgAADIcECgAADYcECgAADocECgAAD4cE -CgAAEIcECgAAEYcECgAAEocECgAAE4cECgAAFIcECgAAFYcECgAAFocECgAAF4cE -CgAAGIcECgAAGYcECgAAGocECgAAG4cECgAAHIcECgAAHYcECgAAHocECgAAH4cE -CgAAIIcECgAAIYcECgAAIocECgAAI4cECgAAJIcECgAAJYcECgAAJocECgAAJ4cE -CgAAKIcECgAAKYcECgAAKocECgAAK4cECgAALIcECgAALYcECgAALocECgAAL4cE -CgAAMIcECgAAMYcECgAAMocECgAAM4cECgAANIcECgAANYcECgAANocECgAAN4cE -CgAAOIcECgAAOYcECgAAOocECgAAO4cECgAAPIcECgAAPYcECgAAPocECgAAP4cE -CgAAQIcECgAAQYcECgAAQocECgAAQ4cECgAARIcECgAARYcECgAARocECgAAR4cE -CgAASIcECgAASYcECgAASocECgAAS4cECgAATIcECgAATYcECgAATocECgAAT4cE -CgAAUIcECgAAUYcECgAAUocECgAAU4cECgAAVIcECgAAVYcECgAAVocECgAAV4cE -CgAAWIcECgAAWYcECgAAWocECgAAW4cECgAAXIcECgAAXYcECgAAXocECgAAX4cE -CgAAYIcECgAAYYcECgAAYocECgAAY4cECgAAZIcECgAAZYcECgAAZocECgAAZ4cE -CgAAaIcECgAAaYcECgAAaocECgAAa4cECgAAbIcECgAAbYcECgAAbocECgAAb4cE -CgAAcIcECgAAcYcECgAAcocECgAAc4cECgAAdIcECgAAdYcECgAAdocECgAAd4cE -CgAAeIcECgAAeYcECgAAeocECgAAe4cECgAAfIcECgAAfYcECgAAfocECgAAf4cE -CgAAgIcECgAAgYcECgAAgocECgAAg4cECgAAhIcECgAAhYcECgAAhocECgAAh4cE -CgAAiIcECgAAiYcECgAAiocECgAAi4cECgAAjIcECgAAjYcECgAAjocECgAAj4cE -CgAAkIcECgAAkYcECgAAkocECgAAk4cECgAAlIcECgAAlYcECgAAlocECgAAl4cE -CgAAmIcECgAAmYcECgAAmocECgAAm4cECgAAnIcECgAAnYcECgAAnocECgAAn4cE -CgAAoIcECgAAoYcECgAAoocECgAAo4cECgAApIcECgAApYcECgAApocECgAAp4cE -CgAAqIcECgAAqYcECgAAqocECgAAq4cECgAArIcECgAArYcECgAArocECgAAr4cE -CgAAsIcECgAAsYcECgAAsocECgAAs4cECgAAtIcECgAAtYcECgAAtocECgAAt4cE -CgAAuIcECgAAuYcECgAAuocECgAAu4cECgAAvIcECgAAvYcECgAAvocECgAAv4cE -CgAAwIcECgAAwYcECgAAwocECgAAw4cECgAAxIcECgAAxYcECgAAxocECgAAx4cE -CgAAyIcECgAAyYcECgAAyocECgAAy4cECgAAzIcECgAAzYcECgAAzocECgAAz4cE -CgAA0IcECgAA0YcECgAA0ocECgAA04cECgAA1IcECgAA1YcECgAA1ocECgAA14cE -CgAA2IcECgAA2YcECgAA2ocECgAA24cECgAA3IcECgAA3YcECgAA3ocECgAA34cE -CgAA4IcECgAA4YcECgAA4ocECgAA44cECgAA5IcECgAA5YcECgAA5ocECgAA54cE -CgAA6IcECgAA6YcECgAA6ocECgAA64cECgAA7IcECgAA7YcECgAA7ocECgAA74cE -CgAA8IcECgAA8YcECgAA8ocECgAA84cECgAA9IcECgAA9YcECgAA9ocECgAA94cE -CgAA+IcECgAA+YcECgAA+ocECgAA+4cECgAA/IcECgAA/YcECgAA/ocECgAA/4cE -CgABAIcECgABAYcECgABAocECgABA4cECgABBIcECgABBYcECgABBocECgABB4cE -CgABCIcECgABCYcECgABCocECgABC4cECgABDIcECgABDYcECgABDocECgABD4cE -CgABEIcECgABEYcECgABEocECgABE4cECgABFIcECgABFYcECgABFocECgABF4cE -CgABGIcECgABGYcECgABGocECgABG4cECgABHIcECgABHYcECgABHocECgABH4cE -CgABIIcECgABIYcECgABIocECgABI4cECgABJIcECgABJYcECgABJocECgABJ4cE -CgABKIcECgABKYcECgABKocECgABK4cECgABLIcECgABLYcECgABLocECgABL4cE -CgABMIcECgABMYcECgABMocECgABM4cECgABNIcECgABNYcECgABNocECgABN4cE -CgABOIcECgABOYcECgABOocECgABO4cECgABPIcECgABPYcECgABPocECgABP4cE -CgABQIcECgABQYcECgABQocECgABQ4cECgABRIcECgABRYcECgABRocECgABR4cE -CgABSIcECgABSYcECgABSocECgABS4cECgABTIcECgABTYcECgABTocECgABT4cE -CgABUIcECgABUYcECgABUocECgABU4cECgABVIcECgABVYcECgABVocECgABV4cE -CgABWIcECgABWYcECgABWocECgABW4cECgABXIcECgABXYcECgABXocECgABX4cE -CgABYIcECgABYYcECgABYocECgABY4cECgABZIcECgABZYcECgABZocECgABZ4cE -CgABaIcECgABaYcECgABaocECgABa4cECgABbIcECgABbYcECgABbocECgABb4cE -CgABcIcECgABcYcECgABcocECgABc4cECgABdIcECgABdYcECgABdocECgABd4cE -CgABeIcECgABeYcECgABeocECgABe4cECgABfIcECgABfYcECgABfocECgABf4cE -CgABgIcECgABgYcECgABgocECgABg4cECgABhIcECgABhYcECgABhocECgABh4cE -CgABiIcECgABiYcECgABiocECgABi4cECgABjIcECgABjYcECgABjocECgABj4cE -CgABkIcECgABkYcECgABkocECgABk4cECgABlIcECgABlYcECgABlocECgABl4cE -CgABmIcECgABmYcECgABmocECgABm4cECgABnIcECgABnYcECgABnocECgABn4cE -CgABoIcECgABoYcECgABoocECgABo4cECgABpIcECgABpYcECgABpocECgABp4cE -CgABqIcECgABqYcECgABqocECgABq4cECgABrIcECgABrYcECgABrocECgABr4cE -CgABsIcECgABsYcECgABsocECgABs4cECgABtIcECgABtYcECgABtocECgABt4cE -CgABuIcECgABuYcECgABuocECgABu4cECgABvIcECgABvYcECgABvocECgABv4cE -CgABwIcECgABwYcECgABwocECgABw4cECgABxIcECgABxYcECgABxocECgABx4cE -CgAByIcECgAByYcECgAByocECgABy4cECgABzIcECgABzYcECgABzocECgABz4cE -CgAB0IcECgAB0YcECgAB0ocECgAB04cECgAB1IcECgAB1YcECgAB1ocECgAB14cE -CgAB2IcECgAB2YcECgAB2ocECgAB24cECgAB3IcECgAB3YcECgAB3ocECgAB34cE -CgAB4IcECgAB4YcECgAB4ocECgAB44cECgAB5IcECgAB5YcECgAB5ocECgAB54cE -CgAB6IcECgAB6YcECgAB6ocECgAB64cECgAB7IcECgAB7YcECgAB7ocECgAB74cE -CgAB8IcECgAB8YcECgAB8ocECgAB84cECgAB9IcECgAB9YcECgAB9ocECgAB94cE -CgAB+IcECgAB+YcECgAB+ocECgAB+4cECgAB/IcECgAB/YcECgAB/ocECgAB/4cE -CgACAIcECgACAYcECgACAocECgACA4cECgACBIcECgACBYcECgACBocECgACB4cE -CgACCIcECgACCYcECgACCocECgACC4cECgACDIcECgACDYcECgACDocECgACD4cE -CgACEIcECgACEYcECgACEocECgACE4cECgACFIcECgACFYcECgACFocECgACF4cE -CgACGIcECgACGYcECgACGocECgACG4cECgACHIcECgACHYcECgACHocECgACH4cE -CgACIIcECgACIYcECgACIocECgACI4cECgACJIcECgACJYcECgACJocECgACJ4cE -CgACKIcECgACKYcECgACKocECgACK4cECgACLIcECgACLYcECgACLocECgACL4cE -CgACMIcECgACMYcECgACMocECgACM4cECgACNIcECgACNYcECgACNocECgACN4cE -CgACOIcECgACOYcECgACOocECgACO4cECgACPIcECgACPYcECgACPocECgACP4cE -CgACQIcECgACQYcECgACQocECgACQ4cECgACRIcECgACRYcECgACRocECgACR4cE -CgACSIcECgACSYcECgACSocECgACS4cECgACTIcECgACTYcECgACTocECgACT4cE -CgACUIcECgACUYcECgACUocECgACU4cECgACVIcECgACVYcECgACVocECgACV4cE -CgACWIcECgACWYcECgACWocECgACW4cECgACXIcECgACXYcECgACXocECgACX4cE -CgACYIcECgACYYcECgACYocECgACY4cECgACZIcECgACZYcECgACZocECgACZ4cE -CgACaIcECgACaYcECgACaocECgACa4cECgACbIcECgACbYcECgACbocECgACb4cE -CgACcIcECgACcYcECgACcocECgACc4cECgACdIcECgACdYcECgACdocECgACd4cE -CgACeIcECgACeYcECgACeocECgACe4cECgACfIcECgACfYcECgACfocECgACf4cE -CgACgIcECgACgYcECgACgocECgACg4cECgAChIcECgAChYcECgAChocECgACh4cE -CgACiIcECgACiYcECgACiocECgACi4cECgACjIcECgACjYcECgACjocECgACj4cE -CgACkIcECgACkYcECgACkocECgACk4cECgAClIcECgAClYcECgAClocECgACl4cE -CgACmIcECgACmYcECgACmocECgACm4cECgACnIcECgACnYcECgACnocECgACn4cE -CgACoIcECgACoYcECgACoocECgACo4cECgACpIcECgACpYcECgACpocECgACp4cE -CgACqIcECgACqYcECgACqocECgACq4cECgACrIcECgACrYcECgACrocECgACr4cE -CgACsIcECgACsYcECgACsocECgACs4cECgACtIcECgACtYcECgACtocECgACt4cE -CgACuIcECgACuYcECgACuocECgACu4cECgACvIcECgACvYcECgACvocECgACv4cE -CgACwIcECgACwYcECgACwocECgACw4cECgACxIcECgACxYcECgACxocECgACx4cE -CgACyIcECgACyYcECgACyocECgACy4cECgACzIcECgACzYcECgACzocECgACz4cE -CgAC0IcECgAC0YcECgAC0ocECgAC04cECgAC1IcECgAC1YcECgAC1ocECgAC14cE -CgAC2IcECgAC2YcECgAC2ocECgAC24cECgAC3IcECgAC3YcECgAC3ocECgAC34cE -CgAC4IcECgAC4YcECgAC4ocECgAC44cECgAC5IcECgAC5YcECgAC5ocECgAC54cE -CgAC6IcECgAC6YcECgAC6ocECgAC64cECgAC7IcECgAC7YcECgAC7ocECgAC74cE -CgAC8IcECgAC8YcECgAC8ocECgAC84cECgAC9IcECgAC9YcECgAC9ocECgAC94cE -CgAC+IcECgAC+YcECgAC+ocECgAC+4cECgAC/IcECgAC/YcECgAC/ocECgAC/4cE -CgADAIcECgADAYcECgADAocECgADA4cECgADBIcECgADBYcECgADBocECgADB4cE -CgADCIcECgADCYcECgADCocECgADC4cECgADDIcECgADDYcECgADDocECgADD4cE -CgADEIcECgADEYcECgADEocECgADE4cECgADFIcECgADFYcECgADFocECgADF4cE -CgADGIcECgADGYcECgADGocECgADG4cECgADHIcECgADHYcECgADHocECgADH4cE -CgADIIcECgADIYcECgADIocECgADI4cECgADJIcECgADJYcECgADJocECgADJ4cE -CgADKIcECgADKYcECgADKocECgADK4cECgADLIcECgADLYcECgADLocECgADL4cE -CgADMIcECgADMYcECgADMocECgADM4cECgADNIcECgADNYcECgADNocECgADN4cE -CgADOIcECgADOYcECgADOocECgADO4cECgADPIcECgADPYcECgADPocECgADP4cE -CgADQIcECgADQYcECgADQocECgADQ4cECgADRIcECgADRYcECgADRocECgADR4cE -CgADSIcECgADSYcECgADSocECgADS4cECgADTIcECgADTYcECgADTocECgADT4cE -CgADUIcECgADUYcECgADUocECgADU4cECgADVIcECgADVYcECgADVocECgADV4cE -CgADWIcECgADWYcECgADWocECgADW4cECgADXIcECgADXYcECgADXocECgADX4cE -CgADYIcECgADYYcECgADYocECgADY4cECgADZIcECgADZYcECgADZocECgADZ4cE -CgADaIcECgADaYcECgADaocECgADa4cECgADbIcECgADbYcECgADbocECgADb4cE -CgADcIcECgADcYcECgADcocECgADc4cECgADdIcECgADdYcECgADdocECgADd4cE -CgADeIcECgADeYcECgADeocECgADe4cECgADfIcECgADfYcECgADfocECgADf4cE -CgADgIcECgADgYcECgADgocECgADg4cECgADhIcECgADhYcECgADhocECgADh4cE -CgADiIcECgADiYcECgADiocECgADi4cECgADjIcECgADjYcECgADjocECgADj4cE -CgADkIcECgADkYcECgADkocECgADk4cECgADlIcECgADlYcECgADlocECgADl4cE -CgADmIcECgADmYcECgADmocECgADm4cECgADnIcECgADnYcECgADnocECgADn4cE -CgADoIcECgADoYcECgADoocECgADo4cECgADpIcECgADpYcECgADpocECgADp4cE -CgADqIcECgADqYcECgADqocECgADq4cECgADrIcECgADrYcECgADrocECgADr4cE -CgADsIcECgADsYcECgADsocECgADs4cECgADtIcECgADtYcECgADtocECgADt4cE -CgADuIcECgADuYcECgADuocECgADu4cECgADvIcECgADvYcECgADvocECgADv4cE -CgADwIcECgADwYcECgADwocECgADw4cECgADxIcECgADxYcECgADxocECgADx4cE -CgADyIcECgADyYcECgADyocECgADy4cECgADzIcECgADzYcECgADzocECgADz4cE -CgAD0IcECgAD0YcECgAD0ocECgAD04cECgAD1IcECgAD1YcECgAD1ocECgAD14cE -CgAD2IcECgAD2YcECgAD2ocECgAD24cECgAD3IcECgAD3YcECgAD3ocECgAD34cE -CgAD4IcECgAD4YcECgAD4ocECgAD44cECgAD5IcECgAD5YcECgAD5ocECgAD54cE -CgAD6IcECgAD6YcECgAD6ocECgAD64cECgAD7IcECgAD7YcECgAD7ocECgAD74cE -CgAD8IcECgAD8YcECgAD8ocECgAD84cECgAD9IcECgAD9YcECgAD9ocECgAD94cE -CgAD+IcECgAD+YcECgAD+ocECgAD+4cECgAD/IcECgAD/YcECgAD/ocECgAD/zAN -BgkqhkiG9w0BAQsFAAOCAQEAJOZ/SSfn3ifKBogP0mS6B3UIwHJBzmefGtgj17Y1 -q9RJG37LRnQlUmX7Wyt0qywZHL8GAXgMx6Y84BrU3IwAi6gFTMLPgkHHUWVJ/Gvc -s7ZX8Ao8BTl9bizNa/OwOMQLG1+/A+lZ+NTFQnrAOV6k70U5qquRNZ2OZT9DvFlv -kNHa6/6wtTokY3gE83VYQ3m1ZB+W7sk7kxLhxzFbnalYSAP3dq0K6LE4WN8uBItW -BxycTugnK50koAmmt8J/9BbAKvfKsPW5wgxL6MIW47TcC6mVf2A1sWIbUxSUyep0 -7g4FZP8EG7QdjBDSPm4N8IcLxSkKkMuG7gq6P9fUEuMK6Q== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D8.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D8.pem deleted file mode 100644 index 54fb25ecc2..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D8.pem +++ /dev/null @@ -1,496 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d8 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DirName:/CN=t0, DirName:/CN=t1, DirName:/CN=t2, DirName:/CN=t3, DirName:/CN=t4, DirName:/CN=t5, DirName:/CN=t6, DirName:/CN=t7, DirName:/CN=t8, DirName:/CN=t9, DirName:/CN=t10, DirName:/CN=t11, DirName:/CN=t12, DirName:/CN=t13, DirName:/CN=t14, DirName:/CN=t15, DirName:/CN=t16, DirName:/CN=t17, DirName:/CN=t18, DirName:/CN=t19, DirName:/CN=t20, DirName:/CN=t21, DirName:/CN=t22, DirName:/CN=t23, DirName:/CN=t24, DirName:/CN=t25, DirName:/CN=t26, DirName:/CN=t27, DirName:/CN=t28, DirName:/CN=t29, DirName:/CN=t30, DirName:/CN=t31, DirName:/CN=t32, DirName:/CN=t33, DirName:/CN=t34, DirName:/CN=t35, DirName:/CN=t36, DirName:/CN=t37, DirName:/CN=t38, DirName:/CN=t39, DirName:/CN=t40, DirName:/CN=t41, DirName:/CN=t42, DirName:/CN=t43, DirName:/CN=t44, DirName:/CN=t45, DirName:/CN=t46, DirName:/CN=t47, DirName:/CN=t48, DirName:/CN=t49, DirName:/CN=t50, DirName:/CN=t51, DirName:/CN=t52, DirName:/CN=t53, DirName:/CN=t54, DirName:/CN=t55, DirName:/CN=t56, DirName:/CN=t57, DirName:/CN=t58, DirName:/CN=t59, DirName:/CN=t60, DirName:/CN=t61, DirName:/CN=t62, DirName:/CN=t63, DirName:/CN=t64, DirName:/CN=t65, DirName:/CN=t66, DirName:/CN=t67, DirName:/CN=t68, DirName:/CN=t69, DirName:/CN=t70, DirName:/CN=t71, DirName:/CN=t72, DirName:/CN=t73, DirName:/CN=t74, DirName:/CN=t75, DirName:/CN=t76, DirName:/CN=t77, DirName:/CN=t78, DirName:/CN=t79, DirName:/CN=t80, DirName:/CN=t81, DirName:/CN=t82, DirName:/CN=t83, DirName:/CN=t84, DirName:/CN=t85, DirName:/CN=t86, DirName:/CN=t87, DirName:/CN=t88, DirName:/CN=t89, DirName:/CN=t90, DirName:/CN=t91, DirName:/CN=t92, DirName:/CN=t93, DirName:/CN=t94, DirName:/CN=t95, DirName:/CN=t96, DirName:/CN=t97, DirName:/CN=t98, DirName:/CN=t99, DirName:/CN=t100, DirName:/CN=t101, DirName:/CN=t102, DirName:/CN=t103, DirName:/CN=t104, DirName:/CN=t105, DirName:/CN=t106, DirName:/CN=t107, DirName:/CN=t108, DirName:/CN=t109, DirName:/CN=t110, DirName:/CN=t111, DirName:/CN=t112, DirName:/CN=t113, DirName:/CN=t114, DirName:/CN=t115, DirName:/CN=t116, DirName:/CN=t117, DirName:/CN=t118, DirName:/CN=t119, DirName:/CN=t120, DirName:/CN=t121, DirName:/CN=t122, DirName:/CN=t123, DirName:/CN=t124, DirName:/CN=t125, DirName:/CN=t126, DirName:/CN=t127, DirName:/CN=t128, DirName:/CN=t129, DirName:/CN=t130, DirName:/CN=t131, DirName:/CN=t132, DirName:/CN=t133, DirName:/CN=t134, DirName:/CN=t135, DirName:/CN=t136, DirName:/CN=t137, DirName:/CN=t138, DirName:/CN=t139, DirName:/CN=t140, DirName:/CN=t141, DirName:/CN=t142, DirName:/CN=t143, DirName:/CN=t144, DirName:/CN=t145, DirName:/CN=t146, DirName:/CN=t147, DirName:/CN=t148, DirName:/CN=t149, DirName:/CN=t150, DirName:/CN=t151, DirName:/CN=t152, DirName:/CN=t153, DirName:/CN=t154, DirName:/CN=t155, DirName:/CN=t156, DirName:/CN=t157, DirName:/CN=t158, DirName:/CN=t159, DirName:/CN=t160, DirName:/CN=t161, DirName:/CN=t162, DirName:/CN=t163, DirName:/CN=t164, DirName:/CN=t165, DirName:/CN=t166, DirName:/CN=t167, DirName:/CN=t168, DirName:/CN=t169, DirName:/CN=t170, DirName:/CN=t171, DirName:/CN=t172, DirName:/CN=t173, DirName:/CN=t174, DirName:/CN=t175, DirName:/CN=t176, DirName:/CN=t177, DirName:/CN=t178, DirName:/CN=t179, DirName:/CN=t180, DirName:/CN=t181, DirName:/CN=t182, DirName:/CN=t183, DirName:/CN=t184, DirName:/CN=t185, DirName:/CN=t186, DirName:/CN=t187, DirName:/CN=t188, DirName:/CN=t189, DirName:/CN=t190, DirName:/CN=t191, DirName:/CN=t192, DirName:/CN=t193, DirName:/CN=t194, DirName:/CN=t195, DirName:/CN=t196, DirName:/CN=t197, DirName:/CN=t198, DirName:/CN=t199, DirName:/CN=t200, DirName:/CN=t201, DirName:/CN=t202, DirName:/CN=t203, DirName:/CN=t204, DirName:/CN=t205, DirName:/CN=t206, DirName:/CN=t207, DirName:/CN=t208, DirName:/CN=t209, DirName:/CN=t210, DirName:/CN=t211, DirName:/CN=t212, DirName:/CN=t213, DirName:/CN=t214, DirName:/CN=t215, DirName:/CN=t216, DirName:/CN=t217, DirName:/CN=t218, DirName:/CN=t219, DirName:/CN=t220, DirName:/CN=t221, DirName:/CN=t222, DirName:/CN=t223, DirName:/CN=t224, DirName:/CN=t225, DirName:/CN=t226, DirName:/CN=t227, DirName:/CN=t228, DirName:/CN=t229, DirName:/CN=t230, DirName:/CN=t231, DirName:/CN=t232, DirName:/CN=t233, DirName:/CN=t234, DirName:/CN=t235, DirName:/CN=t236, DirName:/CN=t237, DirName:/CN=t238, DirName:/CN=t239, DirName:/CN=t240, DirName:/CN=t241, DirName:/CN=t242, DirName:/CN=t243, DirName:/CN=t244, DirName:/CN=t245, DirName:/CN=t246, DirName:/CN=t247, DirName:/CN=t248, DirName:/CN=t249, DirName:/CN=t250, DirName:/CN=t251, DirName:/CN=t252, DirName:/CN=t253, DirName:/CN=t254, DirName:/CN=t255, DirName:/CN=t256, DirName:/CN=t257, DirName:/CN=t258, DirName:/CN=t259, DirName:/CN=t260, DirName:/CN=t261, DirName:/CN=t262, DirName:/CN=t263, DirName:/CN=t264, DirName:/CN=t265, DirName:/CN=t266, DirName:/CN=t267, DirName:/CN=t268, DirName:/CN=t269, DirName:/CN=t270, DirName:/CN=t271, DirName:/CN=t272, DirName:/CN=t273, DirName:/CN=t274, DirName:/CN=t275, DirName:/CN=t276, DirName:/CN=t277, DirName:/CN=t278, DirName:/CN=t279, DirName:/CN=t280, DirName:/CN=t281, DirName:/CN=t282, DirName:/CN=t283, DirName:/CN=t284, DirName:/CN=t285, DirName:/CN=t286, DirName:/CN=t287, DirName:/CN=t288, DirName:/CN=t289, DirName:/CN=t290, DirName:/CN=t291, DirName:/CN=t292, DirName:/CN=t293, DirName:/CN=t294, DirName:/CN=t295, DirName:/CN=t296, DirName:/CN=t297, DirName:/CN=t298, DirName:/CN=t299, DirName:/CN=t300, DirName:/CN=t301, DirName:/CN=t302, DirName:/CN=t303, DirName:/CN=t304, DirName:/CN=t305, DirName:/CN=t306, DirName:/CN=t307, DirName:/CN=t308, DirName:/CN=t309, DirName:/CN=t310, DirName:/CN=t311, DirName:/CN=t312, DirName:/CN=t313, DirName:/CN=t314, DirName:/CN=t315, DirName:/CN=t316, DirName:/CN=t317, DirName:/CN=t318, DirName:/CN=t319, DirName:/CN=t320, DirName:/CN=t321, DirName:/CN=t322, DirName:/CN=t323, DirName:/CN=t324, DirName:/CN=t325, DirName:/CN=t326, DirName:/CN=t327, DirName:/CN=t328, DirName:/CN=t329, DirName:/CN=t330, DirName:/CN=t331, DirName:/CN=t332, DirName:/CN=t333, DirName:/CN=t334, DirName:/CN=t335, DirName:/CN=t336, DirName:/CN=t337, DirName:/CN=t338, DirName:/CN=t339, DirName:/CN=t340, DirName:/CN=t341, DirName:/CN=t342, DirName:/CN=t343, DirName:/CN=t344, DirName:/CN=t345, DirName:/CN=t346, DirName:/CN=t347, DirName:/CN=t348, DirName:/CN=t349, DirName:/CN=t350, DirName:/CN=t351, DirName:/CN=t352, DirName:/CN=t353, DirName:/CN=t354, DirName:/CN=t355, DirName:/CN=t356, DirName:/CN=t357, DirName:/CN=t358, DirName:/CN=t359, DirName:/CN=t360, DirName:/CN=t361, DirName:/CN=t362, DirName:/CN=t363, DirName:/CN=t364, DirName:/CN=t365, DirName:/CN=t366, DirName:/CN=t367, DirName:/CN=t368, DirName:/CN=t369, DirName:/CN=t370, DirName:/CN=t371, DirName:/CN=t372, DirName:/CN=t373, DirName:/CN=t374, DirName:/CN=t375, DirName:/CN=t376, DirName:/CN=t377, DirName:/CN=t378, DirName:/CN=t379, DirName:/CN=t380, DirName:/CN=t381, DirName:/CN=t382, DirName:/CN=t383, DirName:/CN=t384, DirName:/CN=t385, DirName:/CN=t386, DirName:/CN=t387, DirName:/CN=t388, DirName:/CN=t389, DirName:/CN=t390, DirName:/CN=t391, DirName:/CN=t392, DirName:/CN=t393, DirName:/CN=t394, DirName:/CN=t395, DirName:/CN=t396, DirName:/CN=t397, DirName:/CN=t398, DirName:/CN=t399, DirName:/CN=t400, DirName:/CN=t401, DirName:/CN=t402, DirName:/CN=t403, DirName:/CN=t404, DirName:/CN=t405, DirName:/CN=t406, DirName:/CN=t407, DirName:/CN=t408, DirName:/CN=t409, DirName:/CN=t410, DirName:/CN=t411, DirName:/CN=t412, DirName:/CN=t413, DirName:/CN=t414, DirName:/CN=t415, DirName:/CN=t416, DirName:/CN=t417, DirName:/CN=t418, DirName:/CN=t419, DirName:/CN=t420, DirName:/CN=t421, DirName:/CN=t422, DirName:/CN=t423, DirName:/CN=t424, DirName:/CN=t425, DirName:/CN=t426, DirName:/CN=t427, DirName:/CN=t428, DirName:/CN=t429, DirName:/CN=t430, DirName:/CN=t431, DirName:/CN=t432, DirName:/CN=t433, DirName:/CN=t434, DirName:/CN=t435, DirName:/CN=t436, DirName:/CN=t437, DirName:/CN=t438, DirName:/CN=t439, DirName:/CN=t440, DirName:/CN=t441, DirName:/CN=t442, DirName:/CN=t443, DirName:/CN=t444, DirName:/CN=t445, DirName:/CN=t446, DirName:/CN=t447, DirName:/CN=t448, DirName:/CN=t449, DirName:/CN=t450, DirName:/CN=t451, DirName:/CN=t452, DirName:/CN=t453, DirName:/CN=t454, DirName:/CN=t455, DirName:/CN=t456, DirName:/CN=t457, DirName:/CN=t458, DirName:/CN=t459, DirName:/CN=t460, DirName:/CN=t461, DirName:/CN=t462, DirName:/CN=t463, DirName:/CN=t464, DirName:/CN=t465, DirName:/CN=t466, DirName:/CN=t467, DirName:/CN=t468, DirName:/CN=t469, DirName:/CN=t470, DirName:/CN=t471, DirName:/CN=t472, DirName:/CN=t473, DirName:/CN=t474, DirName:/CN=t475, DirName:/CN=t476, DirName:/CN=t477, DirName:/CN=t478, DirName:/CN=t479, DirName:/CN=t480, DirName:/CN=t481, DirName:/CN=t482, DirName:/CN=t483, DirName:/CN=t484, DirName:/CN=t485, DirName:/CN=t486, DirName:/CN=t487, DirName:/CN=t488, DirName:/CN=t489, DirName:/CN=t490, DirName:/CN=t491, DirName:/CN=t492, DirName:/CN=t493, DirName:/CN=t494, DirName:/CN=t495, DirName:/CN=t496, DirName:/CN=t497, DirName:/CN=t498, DirName:/CN=t499, DirName:/CN=t500, DirName:/CN=t501, DirName:/CN=t502, DirName:/CN=t503, DirName:/CN=t504, DirName:/CN=t505, DirName:/CN=t506, DirName:/CN=t507, DirName:/CN=t508, DirName:/CN=t509, DirName:/CN=t510, DirName:/CN=t511, DirName:/CN=t512, DirName:/CN=t513, DirName:/CN=t514, DirName:/CN=t515, DirName:/CN=t516, DirName:/CN=t517, DirName:/CN=t518, DirName:/CN=t519, DirName:/CN=t520, DirName:/CN=t521, DirName:/CN=t522, DirName:/CN=t523, DirName:/CN=t524, DirName:/CN=t525, DirName:/CN=t526, DirName:/CN=t527, DirName:/CN=t528, DirName:/CN=t529, DirName:/CN=t530, DirName:/CN=t531, DirName:/CN=t532, DirName:/CN=t533, DirName:/CN=t534, DirName:/CN=t535, DirName:/CN=t536, DirName:/CN=t537, DirName:/CN=t538, DirName:/CN=t539, DirName:/CN=t540, DirName:/CN=t541, DirName:/CN=t542, DirName:/CN=t543, DirName:/CN=t544, DirName:/CN=t545, DirName:/CN=t546, DirName:/CN=t547, DirName:/CN=t548, DirName:/CN=t549, DirName:/CN=t550, DirName:/CN=t551, DirName:/CN=t552, DirName:/CN=t553, DirName:/CN=t554, DirName:/CN=t555, DirName:/CN=t556, DirName:/CN=t557, DirName:/CN=t558, DirName:/CN=t559, DirName:/CN=t560, DirName:/CN=t561, DirName:/CN=t562, DirName:/CN=t563, DirName:/CN=t564, DirName:/CN=t565, DirName:/CN=t566, DirName:/CN=t567, DirName:/CN=t568, DirName:/CN=t569, DirName:/CN=t570, DirName:/CN=t571, DirName:/CN=t572, DirName:/CN=t573, DirName:/CN=t574, DirName:/CN=t575, DirName:/CN=t576, DirName:/CN=t577, DirName:/CN=t578, DirName:/CN=t579, DirName:/CN=t580, DirName:/CN=t581, DirName:/CN=t582, DirName:/CN=t583, DirName:/CN=t584, DirName:/CN=t585, DirName:/CN=t586, DirName:/CN=t587, DirName:/CN=t588, DirName:/CN=t589, DirName:/CN=t590, DirName:/CN=t591, DirName:/CN=t592, DirName:/CN=t593, DirName:/CN=t594, DirName:/CN=t595, DirName:/CN=t596, DirName:/CN=t597, DirName:/CN=t598, DirName:/CN=t599, DirName:/CN=t600, DirName:/CN=t601, DirName:/CN=t602, DirName:/CN=t603, DirName:/CN=t604, DirName:/CN=t605, DirName:/CN=t606, DirName:/CN=t607, DirName:/CN=t608, DirName:/CN=t609, DirName:/CN=t610, DirName:/CN=t611, DirName:/CN=t612, DirName:/CN=t613, DirName:/CN=t614, DirName:/CN=t615, DirName:/CN=t616, DirName:/CN=t617, DirName:/CN=t618, DirName:/CN=t619, DirName:/CN=t620, DirName:/CN=t621, DirName:/CN=t622, DirName:/CN=t623, DirName:/CN=t624, DirName:/CN=t625, DirName:/CN=t626, DirName:/CN=t627, DirName:/CN=t628, DirName:/CN=t629, DirName:/CN=t630, DirName:/CN=t631, DirName:/CN=t632, DirName:/CN=t633, DirName:/CN=t634, DirName:/CN=t635, DirName:/CN=t636, DirName:/CN=t637, DirName:/CN=t638, DirName:/CN=t639, DirName:/CN=t640, DirName:/CN=t641, DirName:/CN=t642, DirName:/CN=t643, DirName:/CN=t644, DirName:/CN=t645, DirName:/CN=t646, DirName:/CN=t647, DirName:/CN=t648, DirName:/CN=t649, DirName:/CN=t650, DirName:/CN=t651, DirName:/CN=t652, DirName:/CN=t653, DirName:/CN=t654, DirName:/CN=t655, DirName:/CN=t656, DirName:/CN=t657, DirName:/CN=t658, DirName:/CN=t659, DirName:/CN=t660, DirName:/CN=t661, DirName:/CN=t662, DirName:/CN=t663, DirName:/CN=t664, DirName:/CN=t665, DirName:/CN=t666, DirName:/CN=t667, DirName:/CN=t668, DirName:/CN=t669, DirName:/CN=t670, DirName:/CN=t671, DirName:/CN=t672, DirName:/CN=t673, DirName:/CN=t674, DirName:/CN=t675, DirName:/CN=t676, DirName:/CN=t677, DirName:/CN=t678, DirName:/CN=t679, DirName:/CN=t680, DirName:/CN=t681, DirName:/CN=t682, DirName:/CN=t683, DirName:/CN=t684, DirName:/CN=t685, DirName:/CN=t686, DirName:/CN=t687, DirName:/CN=t688, DirName:/CN=t689, DirName:/CN=t690, DirName:/CN=t691, DirName:/CN=t692, DirName:/CN=t693, DirName:/CN=t694, DirName:/CN=t695, DirName:/CN=t696, DirName:/CN=t697, DirName:/CN=t698, DirName:/CN=t699, DirName:/CN=t700, DirName:/CN=t701, DirName:/CN=t702, DirName:/CN=t703, DirName:/CN=t704, DirName:/CN=t705, DirName:/CN=t706, DirName:/CN=t707, DirName:/CN=t708, DirName:/CN=t709, DirName:/CN=t710, DirName:/CN=t711, DirName:/CN=t712, DirName:/CN=t713, DirName:/CN=t714, DirName:/CN=t715, DirName:/CN=t716, DirName:/CN=t717, DirName:/CN=t718, DirName:/CN=t719, DirName:/CN=t720, DirName:/CN=t721, DirName:/CN=t722, DirName:/CN=t723, DirName:/CN=t724, DirName:/CN=t725, DirName:/CN=t726, DirName:/CN=t727, DirName:/CN=t728, DirName:/CN=t729, DirName:/CN=t730, DirName:/CN=t731, DirName:/CN=t732, DirName:/CN=t733, DirName:/CN=t734, DirName:/CN=t735, DirName:/CN=t736, DirName:/CN=t737, DirName:/CN=t738, DirName:/CN=t739, DirName:/CN=t740, DirName:/CN=t741, DirName:/CN=t742, DirName:/CN=t743, DirName:/CN=t744, DirName:/CN=t745, DirName:/CN=t746, DirName:/CN=t747, DirName:/CN=t748, DirName:/CN=t749, DirName:/CN=t750, DirName:/CN=t751, DirName:/CN=t752, DirName:/CN=t753, DirName:/CN=t754, DirName:/CN=t755, DirName:/CN=t756, DirName:/CN=t757, DirName:/CN=t758, DirName:/CN=t759, DirName:/CN=t760, DirName:/CN=t761, DirName:/CN=t762, DirName:/CN=t763, DirName:/CN=t764, DirName:/CN=t765, DirName:/CN=t766, DirName:/CN=t767, DirName:/CN=t768, DirName:/CN=t769, DirName:/CN=t770, DirName:/CN=t771, DirName:/CN=t772, DirName:/CN=t773, DirName:/CN=t774, DirName:/CN=t775, DirName:/CN=t776, DirName:/CN=t777, DirName:/CN=t778, DirName:/CN=t779, DirName:/CN=t780, DirName:/CN=t781, DirName:/CN=t782, DirName:/CN=t783, DirName:/CN=t784, DirName:/CN=t785, DirName:/CN=t786, DirName:/CN=t787, DirName:/CN=t788, DirName:/CN=t789, DirName:/CN=t790, DirName:/CN=t791, DirName:/CN=t792, DirName:/CN=t793, DirName:/CN=t794, DirName:/CN=t795, DirName:/CN=t796, DirName:/CN=t797, DirName:/CN=t798, DirName:/CN=t799, DirName:/CN=t800, DirName:/CN=t801, DirName:/CN=t802, DirName:/CN=t803, DirName:/CN=t804, DirName:/CN=t805, DirName:/CN=t806, DirName:/CN=t807, DirName:/CN=t808, DirName:/CN=t809, DirName:/CN=t810, DirName:/CN=t811, DirName:/CN=t812, DirName:/CN=t813, DirName:/CN=t814, DirName:/CN=t815, DirName:/CN=t816, DirName:/CN=t817, DirName:/CN=t818, DirName:/CN=t819, DirName:/CN=t820, DirName:/CN=t821, DirName:/CN=t822, DirName:/CN=t823, DirName:/CN=t824, DirName:/CN=t825, DirName:/CN=t826, DirName:/CN=t827, DirName:/CN=t828, DirName:/CN=t829, DirName:/CN=t830, DirName:/CN=t831, DirName:/CN=t832, DirName:/CN=t833, DirName:/CN=t834, DirName:/CN=t835, DirName:/CN=t836, DirName:/CN=t837, DirName:/CN=t838, DirName:/CN=t839, DirName:/CN=t840, DirName:/CN=t841, DirName:/CN=t842, DirName:/CN=t843, DirName:/CN=t844, DirName:/CN=t845, DirName:/CN=t846, DirName:/CN=t847, DirName:/CN=t848, DirName:/CN=t849, DirName:/CN=t850, DirName:/CN=t851, DirName:/CN=t852, DirName:/CN=t853, DirName:/CN=t854, DirName:/CN=t855, DirName:/CN=t856, DirName:/CN=t857, DirName:/CN=t858, DirName:/CN=t859, DirName:/CN=t860, DirName:/CN=t861, DirName:/CN=t862, DirName:/CN=t863, DirName:/CN=t864, DirName:/CN=t865, DirName:/CN=t866, DirName:/CN=t867, DirName:/CN=t868, DirName:/CN=t869, DirName:/CN=t870, DirName:/CN=t871, DirName:/CN=t872, DirName:/CN=t873, DirName:/CN=t874, DirName:/CN=t875, DirName:/CN=t876, DirName:/CN=t877, DirName:/CN=t878, DirName:/CN=t879, DirName:/CN=t880, DirName:/CN=t881, DirName:/CN=t882, DirName:/CN=t883, DirName:/CN=t884, DirName:/CN=t885, DirName:/CN=t886, DirName:/CN=t887, DirName:/CN=t888, DirName:/CN=t889, DirName:/CN=t890, DirName:/CN=t891, DirName:/CN=t892, DirName:/CN=t893, DirName:/CN=t894, DirName:/CN=t895, DirName:/CN=t896, DirName:/CN=t897, DirName:/CN=t898, DirName:/CN=t899, DirName:/CN=t900, DirName:/CN=t901, DirName:/CN=t902, DirName:/CN=t903, DirName:/CN=t904, DirName:/CN=t905, DirName:/CN=t906, DirName:/CN=t907, DirName:/CN=t908, DirName:/CN=t909, DirName:/CN=t910, DirName:/CN=t911, DirName:/CN=t912, DirName:/CN=t913, DirName:/CN=t914, DirName:/CN=t915, DirName:/CN=t916, DirName:/CN=t917, DirName:/CN=t918, DirName:/CN=t919, DirName:/CN=t920, DirName:/CN=t921, DirName:/CN=t922, DirName:/CN=t923, DirName:/CN=t924, DirName:/CN=t925, DirName:/CN=t926, DirName:/CN=t927, DirName:/CN=t928, DirName:/CN=t929, DirName:/CN=t930, DirName:/CN=t931, DirName:/CN=t932, DirName:/CN=t933, DirName:/CN=t934, DirName:/CN=t935, DirName:/CN=t936, DirName:/CN=t937, DirName:/CN=t938, DirName:/CN=t939, DirName:/CN=t940, DirName:/CN=t941, DirName:/CN=t942, DirName:/CN=t943, DirName:/CN=t944, DirName:/CN=t945, DirName:/CN=t946, DirName:/CN=t947, DirName:/CN=t948, DirName:/CN=t949, DirName:/CN=t950, DirName:/CN=t951, DirName:/CN=t952, DirName:/CN=t953, DirName:/CN=t954, DirName:/CN=t955, DirName:/CN=t956, DirName:/CN=t957, DirName:/CN=t958, DirName:/CN=t959, DirName:/CN=t960, DirName:/CN=t961, DirName:/CN=t962, DirName:/CN=t963, DirName:/CN=t964, DirName:/CN=t965, DirName:/CN=t966, DirName:/CN=t967, DirName:/CN=t968, DirName:/CN=t969, DirName:/CN=t970, DirName:/CN=t971, DirName:/CN=t972, DirName:/CN=t973, DirName:/CN=t974, DirName:/CN=t975, DirName:/CN=t976, DirName:/CN=t977, DirName:/CN=t978, DirName:/CN=t979, DirName:/CN=t980, DirName:/CN=t981, DirName:/CN=t982, DirName:/CN=t983, DirName:/CN=t984, DirName:/CN=t985, DirName:/CN=t986, DirName:/CN=t987, DirName:/CN=t988, DirName:/CN=t989, DirName:/CN=t990, DirName:/CN=t991, DirName:/CN=t992, DirName:/CN=t993, DirName:/CN=t994, DirName:/CN=t995, DirName:/CN=t996, DirName:/CN=t997, DirName:/CN=t998, DirName:/CN=t999, DirName:/CN=t1000, DirName:/CN=t1001, DirName:/CN=t1002, DirName:/CN=t1003, DirName:/CN=t1004, DirName:/CN=t1005, DirName:/CN=t1006, DirName:/CN=t1007, DirName:/CN=t1008, DirName:/CN=t1009, DirName:/CN=t1010, DirName:/CN=t1011, DirName:/CN=t1012, DirName:/CN=t1013, DirName:/CN=t1014, DirName:/CN=t1015, DirName:/CN=t1016, DirName:/CN=t1017, DirName:/CN=t1018, DirName:/CN=t1019, DirName:/CN=t1020, DirName:/CN=t1021, DirName:/CN=t1022, DirName:/CN=t1023 - Signature Algorithm: sha256WithRSAEncryption - 9b:b4:29:30:f0:2d:7a:66:c7:f8:92:4c:cb:f4:08:11:f5:eb: - 66:c3:02:4a:24:12:f2:9d:19:a9:c7:51:3a:93:fe:71:34:93: - 27:32:14:a0:1b:f4:eb:ba:c2:4b:df:7e:a8:57:ce:7f:61:fa: - 9f:d2:ec:9a:02:51:30:13:a5:eb:6a:7c:04:b3:f0:e6:28:66: - 5c:f7:4e:70:66:8f:07:ae:42:77:c0:ec:ee:ff:10:34:83:4a: - b2:81:2c:df:c4:d8:f7:80:70:ea:ae:c8:7c:05:41:19:f8:40: - 23:c1:c0:40:e1:d7:f5:f8:7d:b0:83:b3:6b:3a:01:17:68:ca: - 0a:b2:77:c4:0c:43:5c:d8:4b:0f:21:f4:6f:7e:a8:f7:b4:bc: - 31:cd:02:9a:b6:72:5b:bb:45:0c:4c:97:61:98:24:b0:44:cd: - af:7f:7e:fc:72:55:5a:54:43:04:1d:40:bf:52:9d:4b:c1:58: - 2c:d2:9a:04:ee:0a:04:d8:dc:75:2e:ab:3f:87:08:7c:e2:f0: - 3f:6b:17:95:2f:77:e2:f6:30:93:6c:db:84:aa:c1:3d:70:5d: - fa:b4:40:c4:28:85:76:73:5b:4e:b5:3d:bc:fe:8d:7f:a8:f3: - 20:31:3e:69:d1:c7:fb:8c:79:21:cf:2f:32:e6:46:01:bf:4c: - f2:15:96:98 ------BEGIN CERTIFICATE----- -MIJPWDCCTkCgAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY2DANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCTKUwgkyhMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgku3BgNVHREEgkuuMIJLqqQP -MA0xCzAJBgNVBAMMAnQwpA8wDTELMAkGA1UEAwwCdDGkDzANMQswCQYDVQQDDAJ0 -MqQPMA0xCzAJBgNVBAMMAnQzpA8wDTELMAkGA1UEAwwCdDSkDzANMQswCQYDVQQD -DAJ0NaQPMA0xCzAJBgNVBAMMAnQ2pA8wDTELMAkGA1UEAwwCdDekDzANMQswCQYD -VQQDDAJ0OKQPMA0xCzAJBgNVBAMMAnQ5pBAwDjEMMAoGA1UEAwwDdDEwpBAwDjEM -MAoGA1UEAwwDdDExpBAwDjEMMAoGA1UEAwwDdDEypBAwDjEMMAoGA1UEAwwDdDEz -pBAwDjEMMAoGA1UEAwwDdDE0pBAwDjEMMAoGA1UEAwwDdDE1pBAwDjEMMAoGA1UE -AwwDdDE2pBAwDjEMMAoGA1UEAwwDdDE3pBAwDjEMMAoGA1UEAwwDdDE4pBAwDjEM -MAoGA1UEAwwDdDE5pBAwDjEMMAoGA1UEAwwDdDIwpBAwDjEMMAoGA1UEAwwDdDIx -pBAwDjEMMAoGA1UEAwwDdDIypBAwDjEMMAoGA1UEAwwDdDIzpBAwDjEMMAoGA1UE -AwwDdDI0pBAwDjEMMAoGA1UEAwwDdDI1pBAwDjEMMAoGA1UEAwwDdDI2pBAwDjEM -MAoGA1UEAwwDdDI3pBAwDjEMMAoGA1UEAwwDdDI4pBAwDjEMMAoGA1UEAwwDdDI5 -pBAwDjEMMAoGA1UEAwwDdDMwpBAwDjEMMAoGA1UEAwwDdDMxpBAwDjEMMAoGA1UE -AwwDdDMypBAwDjEMMAoGA1UEAwwDdDMzpBAwDjEMMAoGA1UEAwwDdDM0pBAwDjEM -MAoGA1UEAwwDdDM1pBAwDjEMMAoGA1UEAwwDdDM2pBAwDjEMMAoGA1UEAwwDdDM3 -pBAwDjEMMAoGA1UEAwwDdDM4pBAwDjEMMAoGA1UEAwwDdDM5pBAwDjEMMAoGA1UE -AwwDdDQwpBAwDjEMMAoGA1UEAwwDdDQxpBAwDjEMMAoGA1UEAwwDdDQypBAwDjEM -MAoGA1UEAwwDdDQzpBAwDjEMMAoGA1UEAwwDdDQ0pBAwDjEMMAoGA1UEAwwDdDQ1 -pBAwDjEMMAoGA1UEAwwDdDQ2pBAwDjEMMAoGA1UEAwwDdDQ3pBAwDjEMMAoGA1UE -AwwDdDQ4pBAwDjEMMAoGA1UEAwwDdDQ5pBAwDjEMMAoGA1UEAwwDdDUwpBAwDjEM -MAoGA1UEAwwDdDUxpBAwDjEMMAoGA1UEAwwDdDUypBAwDjEMMAoGA1UEAwwDdDUz -pBAwDjEMMAoGA1UEAwwDdDU0pBAwDjEMMAoGA1UEAwwDdDU1pBAwDjEMMAoGA1UE -AwwDdDU2pBAwDjEMMAoGA1UEAwwDdDU3pBAwDjEMMAoGA1UEAwwDdDU4pBAwDjEM -MAoGA1UEAwwDdDU5pBAwDjEMMAoGA1UEAwwDdDYwpBAwDjEMMAoGA1UEAwwDdDYx -pBAwDjEMMAoGA1UEAwwDdDYypBAwDjEMMAoGA1UEAwwDdDYzpBAwDjEMMAoGA1UE -AwwDdDY0pBAwDjEMMAoGA1UEAwwDdDY1pBAwDjEMMAoGA1UEAwwDdDY2pBAwDjEM -MAoGA1UEAwwDdDY3pBAwDjEMMAoGA1UEAwwDdDY4pBAwDjEMMAoGA1UEAwwDdDY5 -pBAwDjEMMAoGA1UEAwwDdDcwpBAwDjEMMAoGA1UEAwwDdDcxpBAwDjEMMAoGA1UE -AwwDdDcypBAwDjEMMAoGA1UEAwwDdDczpBAwDjEMMAoGA1UEAwwDdDc0pBAwDjEM -MAoGA1UEAwwDdDc1pBAwDjEMMAoGA1UEAwwDdDc2pBAwDjEMMAoGA1UEAwwDdDc3 -pBAwDjEMMAoGA1UEAwwDdDc4pBAwDjEMMAoGA1UEAwwDdDc5pBAwDjEMMAoGA1UE -AwwDdDgwpBAwDjEMMAoGA1UEAwwDdDgxpBAwDjEMMAoGA1UEAwwDdDgypBAwDjEM -MAoGA1UEAwwDdDgzpBAwDjEMMAoGA1UEAwwDdDg0pBAwDjEMMAoGA1UEAwwDdDg1 -pBAwDjEMMAoGA1UEAwwDdDg2pBAwDjEMMAoGA1UEAwwDdDg3pBAwDjEMMAoGA1UE -AwwDdDg4pBAwDjEMMAoGA1UEAwwDdDg5pBAwDjEMMAoGA1UEAwwDdDkwpBAwDjEM -MAoGA1UEAwwDdDkxpBAwDjEMMAoGA1UEAwwDdDkypBAwDjEMMAoGA1UEAwwDdDkz -pBAwDjEMMAoGA1UEAwwDdDk0pBAwDjEMMAoGA1UEAwwDdDk1pBAwDjEMMAoGA1UE -AwwDdDk2pBAwDjEMMAoGA1UEAwwDdDk3pBAwDjEMMAoGA1UEAwwDdDk4pBAwDjEM -MAoGA1UEAwwDdDk5pBEwDzENMAsGA1UEAwwEdDEwMKQRMA8xDTALBgNVBAMMBHQx -MDGkETAPMQ0wCwYDVQQDDAR0MTAypBEwDzENMAsGA1UEAwwEdDEwM6QRMA8xDTAL -BgNVBAMMBHQxMDSkETAPMQ0wCwYDVQQDDAR0MTA1pBEwDzENMAsGA1UEAwwEdDEw -NqQRMA8xDTALBgNVBAMMBHQxMDekETAPMQ0wCwYDVQQDDAR0MTA4pBEwDzENMAsG -A1UEAwwEdDEwOaQRMA8xDTALBgNVBAMMBHQxMTCkETAPMQ0wCwYDVQQDDAR0MTEx -pBEwDzENMAsGA1UEAwwEdDExMqQRMA8xDTALBgNVBAMMBHQxMTOkETAPMQ0wCwYD -VQQDDAR0MTE0pBEwDzENMAsGA1UEAwwEdDExNaQRMA8xDTALBgNVBAMMBHQxMTak -ETAPMQ0wCwYDVQQDDAR0MTE3pBEwDzENMAsGA1UEAwwEdDExOKQRMA8xDTALBgNV -BAMMBHQxMTmkETAPMQ0wCwYDVQQDDAR0MTIwpBEwDzENMAsGA1UEAwwEdDEyMaQR -MA8xDTALBgNVBAMMBHQxMjKkETAPMQ0wCwYDVQQDDAR0MTIzpBEwDzENMAsGA1UE -AwwEdDEyNKQRMA8xDTALBgNVBAMMBHQxMjWkETAPMQ0wCwYDVQQDDAR0MTI2pBEw -DzENMAsGA1UEAwwEdDEyN6QRMA8xDTALBgNVBAMMBHQxMjikETAPMQ0wCwYDVQQD -DAR0MTI5pBEwDzENMAsGA1UEAwwEdDEzMKQRMA8xDTALBgNVBAMMBHQxMzGkETAP -MQ0wCwYDVQQDDAR0MTMypBEwDzENMAsGA1UEAwwEdDEzM6QRMA8xDTALBgNVBAMM -BHQxMzSkETAPMQ0wCwYDVQQDDAR0MTM1pBEwDzENMAsGA1UEAwwEdDEzNqQRMA8x -DTALBgNVBAMMBHQxMzekETAPMQ0wCwYDVQQDDAR0MTM4pBEwDzENMAsGA1UEAwwE -dDEzOaQRMA8xDTALBgNVBAMMBHQxNDCkETAPMQ0wCwYDVQQDDAR0MTQxpBEwDzEN -MAsGA1UEAwwEdDE0MqQRMA8xDTALBgNVBAMMBHQxNDOkETAPMQ0wCwYDVQQDDAR0 -MTQ0pBEwDzENMAsGA1UEAwwEdDE0NaQRMA8xDTALBgNVBAMMBHQxNDakETAPMQ0w -CwYDVQQDDAR0MTQ3pBEwDzENMAsGA1UEAwwEdDE0OKQRMA8xDTALBgNVBAMMBHQx -NDmkETAPMQ0wCwYDVQQDDAR0MTUwpBEwDzENMAsGA1UEAwwEdDE1MaQRMA8xDTAL -BgNVBAMMBHQxNTKkETAPMQ0wCwYDVQQDDAR0MTUzpBEwDzENMAsGA1UEAwwEdDE1 -NKQRMA8xDTALBgNVBAMMBHQxNTWkETAPMQ0wCwYDVQQDDAR0MTU2pBEwDzENMAsG -A1UEAwwEdDE1N6QRMA8xDTALBgNVBAMMBHQxNTikETAPMQ0wCwYDVQQDDAR0MTU5 -pBEwDzENMAsGA1UEAwwEdDE2MKQRMA8xDTALBgNVBAMMBHQxNjGkETAPMQ0wCwYD -VQQDDAR0MTYypBEwDzENMAsGA1UEAwwEdDE2M6QRMA8xDTALBgNVBAMMBHQxNjSk -ETAPMQ0wCwYDVQQDDAR0MTY1pBEwDzENMAsGA1UEAwwEdDE2NqQRMA8xDTALBgNV -BAMMBHQxNjekETAPMQ0wCwYDVQQDDAR0MTY4pBEwDzENMAsGA1UEAwwEdDE2OaQR -MA8xDTALBgNVBAMMBHQxNzCkETAPMQ0wCwYDVQQDDAR0MTcxpBEwDzENMAsGA1UE -AwwEdDE3MqQRMA8xDTALBgNVBAMMBHQxNzOkETAPMQ0wCwYDVQQDDAR0MTc0pBEw -DzENMAsGA1UEAwwEdDE3NaQRMA8xDTALBgNVBAMMBHQxNzakETAPMQ0wCwYDVQQD -DAR0MTc3pBEwDzENMAsGA1UEAwwEdDE3OKQRMA8xDTALBgNVBAMMBHQxNzmkETAP -MQ0wCwYDVQQDDAR0MTgwpBEwDzENMAsGA1UEAwwEdDE4MaQRMA8xDTALBgNVBAMM -BHQxODKkETAPMQ0wCwYDVQQDDAR0MTgzpBEwDzENMAsGA1UEAwwEdDE4NKQRMA8x -DTALBgNVBAMMBHQxODWkETAPMQ0wCwYDVQQDDAR0MTg2pBEwDzENMAsGA1UEAwwE -dDE4N6QRMA8xDTALBgNVBAMMBHQxODikETAPMQ0wCwYDVQQDDAR0MTg5pBEwDzEN -MAsGA1UEAwwEdDE5MKQRMA8xDTALBgNVBAMMBHQxOTGkETAPMQ0wCwYDVQQDDAR0 -MTkypBEwDzENMAsGA1UEAwwEdDE5M6QRMA8xDTALBgNVBAMMBHQxOTSkETAPMQ0w -CwYDVQQDDAR0MTk1pBEwDzENMAsGA1UEAwwEdDE5NqQRMA8xDTALBgNVBAMMBHQx -OTekETAPMQ0wCwYDVQQDDAR0MTk4pBEwDzENMAsGA1UEAwwEdDE5OaQRMA8xDTAL -BgNVBAMMBHQyMDCkETAPMQ0wCwYDVQQDDAR0MjAxpBEwDzENMAsGA1UEAwwEdDIw -MqQRMA8xDTALBgNVBAMMBHQyMDOkETAPMQ0wCwYDVQQDDAR0MjA0pBEwDzENMAsG -A1UEAwwEdDIwNaQRMA8xDTALBgNVBAMMBHQyMDakETAPMQ0wCwYDVQQDDAR0MjA3 -pBEwDzENMAsGA1UEAwwEdDIwOKQRMA8xDTALBgNVBAMMBHQyMDmkETAPMQ0wCwYD -VQQDDAR0MjEwpBEwDzENMAsGA1UEAwwEdDIxMaQRMA8xDTALBgNVBAMMBHQyMTKk -ETAPMQ0wCwYDVQQDDAR0MjEzpBEwDzENMAsGA1UEAwwEdDIxNKQRMA8xDTALBgNV -BAMMBHQyMTWkETAPMQ0wCwYDVQQDDAR0MjE2pBEwDzENMAsGA1UEAwwEdDIxN6QR -MA8xDTALBgNVBAMMBHQyMTikETAPMQ0wCwYDVQQDDAR0MjE5pBEwDzENMAsGA1UE -AwwEdDIyMKQRMA8xDTALBgNVBAMMBHQyMjGkETAPMQ0wCwYDVQQDDAR0MjIypBEw -DzENMAsGA1UEAwwEdDIyM6QRMA8xDTALBgNVBAMMBHQyMjSkETAPMQ0wCwYDVQQD -DAR0MjI1pBEwDzENMAsGA1UEAwwEdDIyNqQRMA8xDTALBgNVBAMMBHQyMjekETAP -MQ0wCwYDVQQDDAR0MjI4pBEwDzENMAsGA1UEAwwEdDIyOaQRMA8xDTALBgNVBAMM -BHQyMzCkETAPMQ0wCwYDVQQDDAR0MjMxpBEwDzENMAsGA1UEAwwEdDIzMqQRMA8x -DTALBgNVBAMMBHQyMzOkETAPMQ0wCwYDVQQDDAR0MjM0pBEwDzENMAsGA1UEAwwE -dDIzNaQRMA8xDTALBgNVBAMMBHQyMzakETAPMQ0wCwYDVQQDDAR0MjM3pBEwDzEN -MAsGA1UEAwwEdDIzOKQRMA8xDTALBgNVBAMMBHQyMzmkETAPMQ0wCwYDVQQDDAR0 -MjQwpBEwDzENMAsGA1UEAwwEdDI0MaQRMA8xDTALBgNVBAMMBHQyNDKkETAPMQ0w -CwYDVQQDDAR0MjQzpBEwDzENMAsGA1UEAwwEdDI0NKQRMA8xDTALBgNVBAMMBHQy -NDWkETAPMQ0wCwYDVQQDDAR0MjQ2pBEwDzENMAsGA1UEAwwEdDI0N6QRMA8xDTAL -BgNVBAMMBHQyNDikETAPMQ0wCwYDVQQDDAR0MjQ5pBEwDzENMAsGA1UEAwwEdDI1 -MKQRMA8xDTALBgNVBAMMBHQyNTGkETAPMQ0wCwYDVQQDDAR0MjUypBEwDzENMAsG -A1UEAwwEdDI1M6QRMA8xDTALBgNVBAMMBHQyNTSkETAPMQ0wCwYDVQQDDAR0MjU1 -pBEwDzENMAsGA1UEAwwEdDI1NqQRMA8xDTALBgNVBAMMBHQyNTekETAPMQ0wCwYD -VQQDDAR0MjU4pBEwDzENMAsGA1UEAwwEdDI1OaQRMA8xDTALBgNVBAMMBHQyNjCk -ETAPMQ0wCwYDVQQDDAR0MjYxpBEwDzENMAsGA1UEAwwEdDI2MqQRMA8xDTALBgNV -BAMMBHQyNjOkETAPMQ0wCwYDVQQDDAR0MjY0pBEwDzENMAsGA1UEAwwEdDI2NaQR -MA8xDTALBgNVBAMMBHQyNjakETAPMQ0wCwYDVQQDDAR0MjY3pBEwDzENMAsGA1UE -AwwEdDI2OKQRMA8xDTALBgNVBAMMBHQyNjmkETAPMQ0wCwYDVQQDDAR0MjcwpBEw -DzENMAsGA1UEAwwEdDI3MaQRMA8xDTALBgNVBAMMBHQyNzKkETAPMQ0wCwYDVQQD -DAR0MjczpBEwDzENMAsGA1UEAwwEdDI3NKQRMA8xDTALBgNVBAMMBHQyNzWkETAP -MQ0wCwYDVQQDDAR0Mjc2pBEwDzENMAsGA1UEAwwEdDI3N6QRMA8xDTALBgNVBAMM -BHQyNzikETAPMQ0wCwYDVQQDDAR0Mjc5pBEwDzENMAsGA1UEAwwEdDI4MKQRMA8x -DTALBgNVBAMMBHQyODGkETAPMQ0wCwYDVQQDDAR0MjgypBEwDzENMAsGA1UEAwwE -dDI4M6QRMA8xDTALBgNVBAMMBHQyODSkETAPMQ0wCwYDVQQDDAR0Mjg1pBEwDzEN -MAsGA1UEAwwEdDI4NqQRMA8xDTALBgNVBAMMBHQyODekETAPMQ0wCwYDVQQDDAR0 -Mjg4pBEwDzENMAsGA1UEAwwEdDI4OaQRMA8xDTALBgNVBAMMBHQyOTCkETAPMQ0w -CwYDVQQDDAR0MjkxpBEwDzENMAsGA1UEAwwEdDI5MqQRMA8xDTALBgNVBAMMBHQy -OTOkETAPMQ0wCwYDVQQDDAR0Mjk0pBEwDzENMAsGA1UEAwwEdDI5NaQRMA8xDTAL -BgNVBAMMBHQyOTakETAPMQ0wCwYDVQQDDAR0Mjk3pBEwDzENMAsGA1UEAwwEdDI5 -OKQRMA8xDTALBgNVBAMMBHQyOTmkETAPMQ0wCwYDVQQDDAR0MzAwpBEwDzENMAsG -A1UEAwwEdDMwMaQRMA8xDTALBgNVBAMMBHQzMDKkETAPMQ0wCwYDVQQDDAR0MzAz -pBEwDzENMAsGA1UEAwwEdDMwNKQRMA8xDTALBgNVBAMMBHQzMDWkETAPMQ0wCwYD -VQQDDAR0MzA2pBEwDzENMAsGA1UEAwwEdDMwN6QRMA8xDTALBgNVBAMMBHQzMDik -ETAPMQ0wCwYDVQQDDAR0MzA5pBEwDzENMAsGA1UEAwwEdDMxMKQRMA8xDTALBgNV -BAMMBHQzMTGkETAPMQ0wCwYDVQQDDAR0MzEypBEwDzENMAsGA1UEAwwEdDMxM6QR -MA8xDTALBgNVBAMMBHQzMTSkETAPMQ0wCwYDVQQDDAR0MzE1pBEwDzENMAsGA1UE -AwwEdDMxNqQRMA8xDTALBgNVBAMMBHQzMTekETAPMQ0wCwYDVQQDDAR0MzE4pBEw -DzENMAsGA1UEAwwEdDMxOaQRMA8xDTALBgNVBAMMBHQzMjCkETAPMQ0wCwYDVQQD -DAR0MzIxpBEwDzENMAsGA1UEAwwEdDMyMqQRMA8xDTALBgNVBAMMBHQzMjOkETAP -MQ0wCwYDVQQDDAR0MzI0pBEwDzENMAsGA1UEAwwEdDMyNaQRMA8xDTALBgNVBAMM -BHQzMjakETAPMQ0wCwYDVQQDDAR0MzI3pBEwDzENMAsGA1UEAwwEdDMyOKQRMA8x -DTALBgNVBAMMBHQzMjmkETAPMQ0wCwYDVQQDDAR0MzMwpBEwDzENMAsGA1UEAwwE -dDMzMaQRMA8xDTALBgNVBAMMBHQzMzKkETAPMQ0wCwYDVQQDDAR0MzMzpBEwDzEN -MAsGA1UEAwwEdDMzNKQRMA8xDTALBgNVBAMMBHQzMzWkETAPMQ0wCwYDVQQDDAR0 -MzM2pBEwDzENMAsGA1UEAwwEdDMzN6QRMA8xDTALBgNVBAMMBHQzMzikETAPMQ0w -CwYDVQQDDAR0MzM5pBEwDzENMAsGA1UEAwwEdDM0MKQRMA8xDTALBgNVBAMMBHQz -NDGkETAPMQ0wCwYDVQQDDAR0MzQypBEwDzENMAsGA1UEAwwEdDM0M6QRMA8xDTAL -BgNVBAMMBHQzNDSkETAPMQ0wCwYDVQQDDAR0MzQ1pBEwDzENMAsGA1UEAwwEdDM0 -NqQRMA8xDTALBgNVBAMMBHQzNDekETAPMQ0wCwYDVQQDDAR0MzQ4pBEwDzENMAsG -A1UEAwwEdDM0OaQRMA8xDTALBgNVBAMMBHQzNTCkETAPMQ0wCwYDVQQDDAR0MzUx -pBEwDzENMAsGA1UEAwwEdDM1MqQRMA8xDTALBgNVBAMMBHQzNTOkETAPMQ0wCwYD -VQQDDAR0MzU0pBEwDzENMAsGA1UEAwwEdDM1NaQRMA8xDTALBgNVBAMMBHQzNTak -ETAPMQ0wCwYDVQQDDAR0MzU3pBEwDzENMAsGA1UEAwwEdDM1OKQRMA8xDTALBgNV -BAMMBHQzNTmkETAPMQ0wCwYDVQQDDAR0MzYwpBEwDzENMAsGA1UEAwwEdDM2MaQR -MA8xDTALBgNVBAMMBHQzNjKkETAPMQ0wCwYDVQQDDAR0MzYzpBEwDzENMAsGA1UE -AwwEdDM2NKQRMA8xDTALBgNVBAMMBHQzNjWkETAPMQ0wCwYDVQQDDAR0MzY2pBEw -DzENMAsGA1UEAwwEdDM2N6QRMA8xDTALBgNVBAMMBHQzNjikETAPMQ0wCwYDVQQD -DAR0MzY5pBEwDzENMAsGA1UEAwwEdDM3MKQRMA8xDTALBgNVBAMMBHQzNzGkETAP -MQ0wCwYDVQQDDAR0MzcypBEwDzENMAsGA1UEAwwEdDM3M6QRMA8xDTALBgNVBAMM -BHQzNzSkETAPMQ0wCwYDVQQDDAR0Mzc1pBEwDzENMAsGA1UEAwwEdDM3NqQRMA8x -DTALBgNVBAMMBHQzNzekETAPMQ0wCwYDVQQDDAR0Mzc4pBEwDzENMAsGA1UEAwwE -dDM3OaQRMA8xDTALBgNVBAMMBHQzODCkETAPMQ0wCwYDVQQDDAR0MzgxpBEwDzEN -MAsGA1UEAwwEdDM4MqQRMA8xDTALBgNVBAMMBHQzODOkETAPMQ0wCwYDVQQDDAR0 -Mzg0pBEwDzENMAsGA1UEAwwEdDM4NaQRMA8xDTALBgNVBAMMBHQzODakETAPMQ0w -CwYDVQQDDAR0Mzg3pBEwDzENMAsGA1UEAwwEdDM4OKQRMA8xDTALBgNVBAMMBHQz -ODmkETAPMQ0wCwYDVQQDDAR0MzkwpBEwDzENMAsGA1UEAwwEdDM5MaQRMA8xDTAL -BgNVBAMMBHQzOTKkETAPMQ0wCwYDVQQDDAR0MzkzpBEwDzENMAsGA1UEAwwEdDM5 -NKQRMA8xDTALBgNVBAMMBHQzOTWkETAPMQ0wCwYDVQQDDAR0Mzk2pBEwDzENMAsG -A1UEAwwEdDM5N6QRMA8xDTALBgNVBAMMBHQzOTikETAPMQ0wCwYDVQQDDAR0Mzk5 -pBEwDzENMAsGA1UEAwwEdDQwMKQRMA8xDTALBgNVBAMMBHQ0MDGkETAPMQ0wCwYD -VQQDDAR0NDAypBEwDzENMAsGA1UEAwwEdDQwM6QRMA8xDTALBgNVBAMMBHQ0MDSk -ETAPMQ0wCwYDVQQDDAR0NDA1pBEwDzENMAsGA1UEAwwEdDQwNqQRMA8xDTALBgNV -BAMMBHQ0MDekETAPMQ0wCwYDVQQDDAR0NDA4pBEwDzENMAsGA1UEAwwEdDQwOaQR -MA8xDTALBgNVBAMMBHQ0MTCkETAPMQ0wCwYDVQQDDAR0NDExpBEwDzENMAsGA1UE -AwwEdDQxMqQRMA8xDTALBgNVBAMMBHQ0MTOkETAPMQ0wCwYDVQQDDAR0NDE0pBEw -DzENMAsGA1UEAwwEdDQxNaQRMA8xDTALBgNVBAMMBHQ0MTakETAPMQ0wCwYDVQQD -DAR0NDE3pBEwDzENMAsGA1UEAwwEdDQxOKQRMA8xDTALBgNVBAMMBHQ0MTmkETAP -MQ0wCwYDVQQDDAR0NDIwpBEwDzENMAsGA1UEAwwEdDQyMaQRMA8xDTALBgNVBAMM -BHQ0MjKkETAPMQ0wCwYDVQQDDAR0NDIzpBEwDzENMAsGA1UEAwwEdDQyNKQRMA8x -DTALBgNVBAMMBHQ0MjWkETAPMQ0wCwYDVQQDDAR0NDI2pBEwDzENMAsGA1UEAwwE -dDQyN6QRMA8xDTALBgNVBAMMBHQ0MjikETAPMQ0wCwYDVQQDDAR0NDI5pBEwDzEN -MAsGA1UEAwwEdDQzMKQRMA8xDTALBgNVBAMMBHQ0MzGkETAPMQ0wCwYDVQQDDAR0 -NDMypBEwDzENMAsGA1UEAwwEdDQzM6QRMA8xDTALBgNVBAMMBHQ0MzSkETAPMQ0w -CwYDVQQDDAR0NDM1pBEwDzENMAsGA1UEAwwEdDQzNqQRMA8xDTALBgNVBAMMBHQ0 -MzekETAPMQ0wCwYDVQQDDAR0NDM4pBEwDzENMAsGA1UEAwwEdDQzOaQRMA8xDTAL -BgNVBAMMBHQ0NDCkETAPMQ0wCwYDVQQDDAR0NDQxpBEwDzENMAsGA1UEAwwEdDQ0 -MqQRMA8xDTALBgNVBAMMBHQ0NDOkETAPMQ0wCwYDVQQDDAR0NDQ0pBEwDzENMAsG -A1UEAwwEdDQ0NaQRMA8xDTALBgNVBAMMBHQ0NDakETAPMQ0wCwYDVQQDDAR0NDQ3 -pBEwDzENMAsGA1UEAwwEdDQ0OKQRMA8xDTALBgNVBAMMBHQ0NDmkETAPMQ0wCwYD -VQQDDAR0NDUwpBEwDzENMAsGA1UEAwwEdDQ1MaQRMA8xDTALBgNVBAMMBHQ0NTKk -ETAPMQ0wCwYDVQQDDAR0NDUzpBEwDzENMAsGA1UEAwwEdDQ1NKQRMA8xDTALBgNV -BAMMBHQ0NTWkETAPMQ0wCwYDVQQDDAR0NDU2pBEwDzENMAsGA1UEAwwEdDQ1N6QR -MA8xDTALBgNVBAMMBHQ0NTikETAPMQ0wCwYDVQQDDAR0NDU5pBEwDzENMAsGA1UE -AwwEdDQ2MKQRMA8xDTALBgNVBAMMBHQ0NjGkETAPMQ0wCwYDVQQDDAR0NDYypBEw -DzENMAsGA1UEAwwEdDQ2M6QRMA8xDTALBgNVBAMMBHQ0NjSkETAPMQ0wCwYDVQQD -DAR0NDY1pBEwDzENMAsGA1UEAwwEdDQ2NqQRMA8xDTALBgNVBAMMBHQ0NjekETAP -MQ0wCwYDVQQDDAR0NDY4pBEwDzENMAsGA1UEAwwEdDQ2OaQRMA8xDTALBgNVBAMM -BHQ0NzCkETAPMQ0wCwYDVQQDDAR0NDcxpBEwDzENMAsGA1UEAwwEdDQ3MqQRMA8x -DTALBgNVBAMMBHQ0NzOkETAPMQ0wCwYDVQQDDAR0NDc0pBEwDzENMAsGA1UEAwwE -dDQ3NaQRMA8xDTALBgNVBAMMBHQ0NzakETAPMQ0wCwYDVQQDDAR0NDc3pBEwDzEN -MAsGA1UEAwwEdDQ3OKQRMA8xDTALBgNVBAMMBHQ0NzmkETAPMQ0wCwYDVQQDDAR0 -NDgwpBEwDzENMAsGA1UEAwwEdDQ4MaQRMA8xDTALBgNVBAMMBHQ0ODKkETAPMQ0w -CwYDVQQDDAR0NDgzpBEwDzENMAsGA1UEAwwEdDQ4NKQRMA8xDTALBgNVBAMMBHQ0 -ODWkETAPMQ0wCwYDVQQDDAR0NDg2pBEwDzENMAsGA1UEAwwEdDQ4N6QRMA8xDTAL -BgNVBAMMBHQ0ODikETAPMQ0wCwYDVQQDDAR0NDg5pBEwDzENMAsGA1UEAwwEdDQ5 -MKQRMA8xDTALBgNVBAMMBHQ0OTGkETAPMQ0wCwYDVQQDDAR0NDkypBEwDzENMAsG -A1UEAwwEdDQ5M6QRMA8xDTALBgNVBAMMBHQ0OTSkETAPMQ0wCwYDVQQDDAR0NDk1 -pBEwDzENMAsGA1UEAwwEdDQ5NqQRMA8xDTALBgNVBAMMBHQ0OTekETAPMQ0wCwYD -VQQDDAR0NDk4pBEwDzENMAsGA1UEAwwEdDQ5OaQRMA8xDTALBgNVBAMMBHQ1MDCk -ETAPMQ0wCwYDVQQDDAR0NTAxpBEwDzENMAsGA1UEAwwEdDUwMqQRMA8xDTALBgNV -BAMMBHQ1MDOkETAPMQ0wCwYDVQQDDAR0NTA0pBEwDzENMAsGA1UEAwwEdDUwNaQR -MA8xDTALBgNVBAMMBHQ1MDakETAPMQ0wCwYDVQQDDAR0NTA3pBEwDzENMAsGA1UE -AwwEdDUwOKQRMA8xDTALBgNVBAMMBHQ1MDmkETAPMQ0wCwYDVQQDDAR0NTEwpBEw -DzENMAsGA1UEAwwEdDUxMaQRMA8xDTALBgNVBAMMBHQ1MTKkETAPMQ0wCwYDVQQD -DAR0NTEzpBEwDzENMAsGA1UEAwwEdDUxNKQRMA8xDTALBgNVBAMMBHQ1MTWkETAP -MQ0wCwYDVQQDDAR0NTE2pBEwDzENMAsGA1UEAwwEdDUxN6QRMA8xDTALBgNVBAMM -BHQ1MTikETAPMQ0wCwYDVQQDDAR0NTE5pBEwDzENMAsGA1UEAwwEdDUyMKQRMA8x -DTALBgNVBAMMBHQ1MjGkETAPMQ0wCwYDVQQDDAR0NTIypBEwDzENMAsGA1UEAwwE -dDUyM6QRMA8xDTALBgNVBAMMBHQ1MjSkETAPMQ0wCwYDVQQDDAR0NTI1pBEwDzEN -MAsGA1UEAwwEdDUyNqQRMA8xDTALBgNVBAMMBHQ1MjekETAPMQ0wCwYDVQQDDAR0 -NTI4pBEwDzENMAsGA1UEAwwEdDUyOaQRMA8xDTALBgNVBAMMBHQ1MzCkETAPMQ0w -CwYDVQQDDAR0NTMxpBEwDzENMAsGA1UEAwwEdDUzMqQRMA8xDTALBgNVBAMMBHQ1 -MzOkETAPMQ0wCwYDVQQDDAR0NTM0pBEwDzENMAsGA1UEAwwEdDUzNaQRMA8xDTAL -BgNVBAMMBHQ1MzakETAPMQ0wCwYDVQQDDAR0NTM3pBEwDzENMAsGA1UEAwwEdDUz -OKQRMA8xDTALBgNVBAMMBHQ1MzmkETAPMQ0wCwYDVQQDDAR0NTQwpBEwDzENMAsG -A1UEAwwEdDU0MaQRMA8xDTALBgNVBAMMBHQ1NDKkETAPMQ0wCwYDVQQDDAR0NTQz -pBEwDzENMAsGA1UEAwwEdDU0NKQRMA8xDTALBgNVBAMMBHQ1NDWkETAPMQ0wCwYD -VQQDDAR0NTQ2pBEwDzENMAsGA1UEAwwEdDU0N6QRMA8xDTALBgNVBAMMBHQ1NDik -ETAPMQ0wCwYDVQQDDAR0NTQ5pBEwDzENMAsGA1UEAwwEdDU1MKQRMA8xDTALBgNV -BAMMBHQ1NTGkETAPMQ0wCwYDVQQDDAR0NTUypBEwDzENMAsGA1UEAwwEdDU1M6QR -MA8xDTALBgNVBAMMBHQ1NTSkETAPMQ0wCwYDVQQDDAR0NTU1pBEwDzENMAsGA1UE -AwwEdDU1NqQRMA8xDTALBgNVBAMMBHQ1NTekETAPMQ0wCwYDVQQDDAR0NTU4pBEw -DzENMAsGA1UEAwwEdDU1OaQRMA8xDTALBgNVBAMMBHQ1NjCkETAPMQ0wCwYDVQQD -DAR0NTYxpBEwDzENMAsGA1UEAwwEdDU2MqQRMA8xDTALBgNVBAMMBHQ1NjOkETAP -MQ0wCwYDVQQDDAR0NTY0pBEwDzENMAsGA1UEAwwEdDU2NaQRMA8xDTALBgNVBAMM -BHQ1NjakETAPMQ0wCwYDVQQDDAR0NTY3pBEwDzENMAsGA1UEAwwEdDU2OKQRMA8x -DTALBgNVBAMMBHQ1NjmkETAPMQ0wCwYDVQQDDAR0NTcwpBEwDzENMAsGA1UEAwwE -dDU3MaQRMA8xDTALBgNVBAMMBHQ1NzKkETAPMQ0wCwYDVQQDDAR0NTczpBEwDzEN -MAsGA1UEAwwEdDU3NKQRMA8xDTALBgNVBAMMBHQ1NzWkETAPMQ0wCwYDVQQDDAR0 -NTc2pBEwDzENMAsGA1UEAwwEdDU3N6QRMA8xDTALBgNVBAMMBHQ1NzikETAPMQ0w -CwYDVQQDDAR0NTc5pBEwDzENMAsGA1UEAwwEdDU4MKQRMA8xDTALBgNVBAMMBHQ1 -ODGkETAPMQ0wCwYDVQQDDAR0NTgypBEwDzENMAsGA1UEAwwEdDU4M6QRMA8xDTAL -BgNVBAMMBHQ1ODSkETAPMQ0wCwYDVQQDDAR0NTg1pBEwDzENMAsGA1UEAwwEdDU4 -NqQRMA8xDTALBgNVBAMMBHQ1ODekETAPMQ0wCwYDVQQDDAR0NTg4pBEwDzENMAsG -A1UEAwwEdDU4OaQRMA8xDTALBgNVBAMMBHQ1OTCkETAPMQ0wCwYDVQQDDAR0NTkx -pBEwDzENMAsGA1UEAwwEdDU5MqQRMA8xDTALBgNVBAMMBHQ1OTOkETAPMQ0wCwYD -VQQDDAR0NTk0pBEwDzENMAsGA1UEAwwEdDU5NaQRMA8xDTALBgNVBAMMBHQ1OTak -ETAPMQ0wCwYDVQQDDAR0NTk3pBEwDzENMAsGA1UEAwwEdDU5OKQRMA8xDTALBgNV -BAMMBHQ1OTmkETAPMQ0wCwYDVQQDDAR0NjAwpBEwDzENMAsGA1UEAwwEdDYwMaQR -MA8xDTALBgNVBAMMBHQ2MDKkETAPMQ0wCwYDVQQDDAR0NjAzpBEwDzENMAsGA1UE -AwwEdDYwNKQRMA8xDTALBgNVBAMMBHQ2MDWkETAPMQ0wCwYDVQQDDAR0NjA2pBEw -DzENMAsGA1UEAwwEdDYwN6QRMA8xDTALBgNVBAMMBHQ2MDikETAPMQ0wCwYDVQQD -DAR0NjA5pBEwDzENMAsGA1UEAwwEdDYxMKQRMA8xDTALBgNVBAMMBHQ2MTGkETAP -MQ0wCwYDVQQDDAR0NjEypBEwDzENMAsGA1UEAwwEdDYxM6QRMA8xDTALBgNVBAMM -BHQ2MTSkETAPMQ0wCwYDVQQDDAR0NjE1pBEwDzENMAsGA1UEAwwEdDYxNqQRMA8x -DTALBgNVBAMMBHQ2MTekETAPMQ0wCwYDVQQDDAR0NjE4pBEwDzENMAsGA1UEAwwE -dDYxOaQRMA8xDTALBgNVBAMMBHQ2MjCkETAPMQ0wCwYDVQQDDAR0NjIxpBEwDzEN -MAsGA1UEAwwEdDYyMqQRMA8xDTALBgNVBAMMBHQ2MjOkETAPMQ0wCwYDVQQDDAR0 -NjI0pBEwDzENMAsGA1UEAwwEdDYyNaQRMA8xDTALBgNVBAMMBHQ2MjakETAPMQ0w -CwYDVQQDDAR0NjI3pBEwDzENMAsGA1UEAwwEdDYyOKQRMA8xDTALBgNVBAMMBHQ2 -MjmkETAPMQ0wCwYDVQQDDAR0NjMwpBEwDzENMAsGA1UEAwwEdDYzMaQRMA8xDTAL -BgNVBAMMBHQ2MzKkETAPMQ0wCwYDVQQDDAR0NjMzpBEwDzENMAsGA1UEAwwEdDYz -NKQRMA8xDTALBgNVBAMMBHQ2MzWkETAPMQ0wCwYDVQQDDAR0NjM2pBEwDzENMAsG -A1UEAwwEdDYzN6QRMA8xDTALBgNVBAMMBHQ2MzikETAPMQ0wCwYDVQQDDAR0NjM5 -pBEwDzENMAsGA1UEAwwEdDY0MKQRMA8xDTALBgNVBAMMBHQ2NDGkETAPMQ0wCwYD -VQQDDAR0NjQypBEwDzENMAsGA1UEAwwEdDY0M6QRMA8xDTALBgNVBAMMBHQ2NDSk -ETAPMQ0wCwYDVQQDDAR0NjQ1pBEwDzENMAsGA1UEAwwEdDY0NqQRMA8xDTALBgNV -BAMMBHQ2NDekETAPMQ0wCwYDVQQDDAR0NjQ4pBEwDzENMAsGA1UEAwwEdDY0OaQR -MA8xDTALBgNVBAMMBHQ2NTCkETAPMQ0wCwYDVQQDDAR0NjUxpBEwDzENMAsGA1UE -AwwEdDY1MqQRMA8xDTALBgNVBAMMBHQ2NTOkETAPMQ0wCwYDVQQDDAR0NjU0pBEw -DzENMAsGA1UEAwwEdDY1NaQRMA8xDTALBgNVBAMMBHQ2NTakETAPMQ0wCwYDVQQD -DAR0NjU3pBEwDzENMAsGA1UEAwwEdDY1OKQRMA8xDTALBgNVBAMMBHQ2NTmkETAP -MQ0wCwYDVQQDDAR0NjYwpBEwDzENMAsGA1UEAwwEdDY2MaQRMA8xDTALBgNVBAMM -BHQ2NjKkETAPMQ0wCwYDVQQDDAR0NjYzpBEwDzENMAsGA1UEAwwEdDY2NKQRMA8x -DTALBgNVBAMMBHQ2NjWkETAPMQ0wCwYDVQQDDAR0NjY2pBEwDzENMAsGA1UEAwwE -dDY2N6QRMA8xDTALBgNVBAMMBHQ2NjikETAPMQ0wCwYDVQQDDAR0NjY5pBEwDzEN -MAsGA1UEAwwEdDY3MKQRMA8xDTALBgNVBAMMBHQ2NzGkETAPMQ0wCwYDVQQDDAR0 -NjcypBEwDzENMAsGA1UEAwwEdDY3M6QRMA8xDTALBgNVBAMMBHQ2NzSkETAPMQ0w -CwYDVQQDDAR0Njc1pBEwDzENMAsGA1UEAwwEdDY3NqQRMA8xDTALBgNVBAMMBHQ2 -NzekETAPMQ0wCwYDVQQDDAR0Njc4pBEwDzENMAsGA1UEAwwEdDY3OaQRMA8xDTAL -BgNVBAMMBHQ2ODCkETAPMQ0wCwYDVQQDDAR0NjgxpBEwDzENMAsGA1UEAwwEdDY4 -MqQRMA8xDTALBgNVBAMMBHQ2ODOkETAPMQ0wCwYDVQQDDAR0Njg0pBEwDzENMAsG -A1UEAwwEdDY4NaQRMA8xDTALBgNVBAMMBHQ2ODakETAPMQ0wCwYDVQQDDAR0Njg3 -pBEwDzENMAsGA1UEAwwEdDY4OKQRMA8xDTALBgNVBAMMBHQ2ODmkETAPMQ0wCwYD -VQQDDAR0NjkwpBEwDzENMAsGA1UEAwwEdDY5MaQRMA8xDTALBgNVBAMMBHQ2OTKk -ETAPMQ0wCwYDVQQDDAR0NjkzpBEwDzENMAsGA1UEAwwEdDY5NKQRMA8xDTALBgNV -BAMMBHQ2OTWkETAPMQ0wCwYDVQQDDAR0Njk2pBEwDzENMAsGA1UEAwwEdDY5N6QR -MA8xDTALBgNVBAMMBHQ2OTikETAPMQ0wCwYDVQQDDAR0Njk5pBEwDzENMAsGA1UE -AwwEdDcwMKQRMA8xDTALBgNVBAMMBHQ3MDGkETAPMQ0wCwYDVQQDDAR0NzAypBEw -DzENMAsGA1UEAwwEdDcwM6QRMA8xDTALBgNVBAMMBHQ3MDSkETAPMQ0wCwYDVQQD -DAR0NzA1pBEwDzENMAsGA1UEAwwEdDcwNqQRMA8xDTALBgNVBAMMBHQ3MDekETAP -MQ0wCwYDVQQDDAR0NzA4pBEwDzENMAsGA1UEAwwEdDcwOaQRMA8xDTALBgNVBAMM -BHQ3MTCkETAPMQ0wCwYDVQQDDAR0NzExpBEwDzENMAsGA1UEAwwEdDcxMqQRMA8x -DTALBgNVBAMMBHQ3MTOkETAPMQ0wCwYDVQQDDAR0NzE0pBEwDzENMAsGA1UEAwwE -dDcxNaQRMA8xDTALBgNVBAMMBHQ3MTakETAPMQ0wCwYDVQQDDAR0NzE3pBEwDzEN -MAsGA1UEAwwEdDcxOKQRMA8xDTALBgNVBAMMBHQ3MTmkETAPMQ0wCwYDVQQDDAR0 -NzIwpBEwDzENMAsGA1UEAwwEdDcyMaQRMA8xDTALBgNVBAMMBHQ3MjKkETAPMQ0w -CwYDVQQDDAR0NzIzpBEwDzENMAsGA1UEAwwEdDcyNKQRMA8xDTALBgNVBAMMBHQ3 -MjWkETAPMQ0wCwYDVQQDDAR0NzI2pBEwDzENMAsGA1UEAwwEdDcyN6QRMA8xDTAL -BgNVBAMMBHQ3MjikETAPMQ0wCwYDVQQDDAR0NzI5pBEwDzENMAsGA1UEAwwEdDcz -MKQRMA8xDTALBgNVBAMMBHQ3MzGkETAPMQ0wCwYDVQQDDAR0NzMypBEwDzENMAsG -A1UEAwwEdDczM6QRMA8xDTALBgNVBAMMBHQ3MzSkETAPMQ0wCwYDVQQDDAR0NzM1 -pBEwDzENMAsGA1UEAwwEdDczNqQRMA8xDTALBgNVBAMMBHQ3MzekETAPMQ0wCwYD -VQQDDAR0NzM4pBEwDzENMAsGA1UEAwwEdDczOaQRMA8xDTALBgNVBAMMBHQ3NDCk -ETAPMQ0wCwYDVQQDDAR0NzQxpBEwDzENMAsGA1UEAwwEdDc0MqQRMA8xDTALBgNV -BAMMBHQ3NDOkETAPMQ0wCwYDVQQDDAR0NzQ0pBEwDzENMAsGA1UEAwwEdDc0NaQR -MA8xDTALBgNVBAMMBHQ3NDakETAPMQ0wCwYDVQQDDAR0NzQ3pBEwDzENMAsGA1UE -AwwEdDc0OKQRMA8xDTALBgNVBAMMBHQ3NDmkETAPMQ0wCwYDVQQDDAR0NzUwpBEw -DzENMAsGA1UEAwwEdDc1MaQRMA8xDTALBgNVBAMMBHQ3NTKkETAPMQ0wCwYDVQQD -DAR0NzUzpBEwDzENMAsGA1UEAwwEdDc1NKQRMA8xDTALBgNVBAMMBHQ3NTWkETAP -MQ0wCwYDVQQDDAR0NzU2pBEwDzENMAsGA1UEAwwEdDc1N6QRMA8xDTALBgNVBAMM -BHQ3NTikETAPMQ0wCwYDVQQDDAR0NzU5pBEwDzENMAsGA1UEAwwEdDc2MKQRMA8x -DTALBgNVBAMMBHQ3NjGkETAPMQ0wCwYDVQQDDAR0NzYypBEwDzENMAsGA1UEAwwE -dDc2M6QRMA8xDTALBgNVBAMMBHQ3NjSkETAPMQ0wCwYDVQQDDAR0NzY1pBEwDzEN -MAsGA1UEAwwEdDc2NqQRMA8xDTALBgNVBAMMBHQ3NjekETAPMQ0wCwYDVQQDDAR0 -NzY4pBEwDzENMAsGA1UEAwwEdDc2OaQRMA8xDTALBgNVBAMMBHQ3NzCkETAPMQ0w -CwYDVQQDDAR0NzcxpBEwDzENMAsGA1UEAwwEdDc3MqQRMA8xDTALBgNVBAMMBHQ3 -NzOkETAPMQ0wCwYDVQQDDAR0Nzc0pBEwDzENMAsGA1UEAwwEdDc3NaQRMA8xDTAL -BgNVBAMMBHQ3NzakETAPMQ0wCwYDVQQDDAR0Nzc3pBEwDzENMAsGA1UEAwwEdDc3 -OKQRMA8xDTALBgNVBAMMBHQ3NzmkETAPMQ0wCwYDVQQDDAR0NzgwpBEwDzENMAsG -A1UEAwwEdDc4MaQRMA8xDTALBgNVBAMMBHQ3ODKkETAPMQ0wCwYDVQQDDAR0Nzgz -pBEwDzENMAsGA1UEAwwEdDc4NKQRMA8xDTALBgNVBAMMBHQ3ODWkETAPMQ0wCwYD -VQQDDAR0Nzg2pBEwDzENMAsGA1UEAwwEdDc4N6QRMA8xDTALBgNVBAMMBHQ3ODik -ETAPMQ0wCwYDVQQDDAR0Nzg5pBEwDzENMAsGA1UEAwwEdDc5MKQRMA8xDTALBgNV -BAMMBHQ3OTGkETAPMQ0wCwYDVQQDDAR0NzkypBEwDzENMAsGA1UEAwwEdDc5M6QR -MA8xDTALBgNVBAMMBHQ3OTSkETAPMQ0wCwYDVQQDDAR0Nzk1pBEwDzENMAsGA1UE -AwwEdDc5NqQRMA8xDTALBgNVBAMMBHQ3OTekETAPMQ0wCwYDVQQDDAR0Nzk4pBEw -DzENMAsGA1UEAwwEdDc5OaQRMA8xDTALBgNVBAMMBHQ4MDCkETAPMQ0wCwYDVQQD -DAR0ODAxpBEwDzENMAsGA1UEAwwEdDgwMqQRMA8xDTALBgNVBAMMBHQ4MDOkETAP -MQ0wCwYDVQQDDAR0ODA0pBEwDzENMAsGA1UEAwwEdDgwNaQRMA8xDTALBgNVBAMM -BHQ4MDakETAPMQ0wCwYDVQQDDAR0ODA3pBEwDzENMAsGA1UEAwwEdDgwOKQRMA8x -DTALBgNVBAMMBHQ4MDmkETAPMQ0wCwYDVQQDDAR0ODEwpBEwDzENMAsGA1UEAwwE -dDgxMaQRMA8xDTALBgNVBAMMBHQ4MTKkETAPMQ0wCwYDVQQDDAR0ODEzpBEwDzEN -MAsGA1UEAwwEdDgxNKQRMA8xDTALBgNVBAMMBHQ4MTWkETAPMQ0wCwYDVQQDDAR0 -ODE2pBEwDzENMAsGA1UEAwwEdDgxN6QRMA8xDTALBgNVBAMMBHQ4MTikETAPMQ0w -CwYDVQQDDAR0ODE5pBEwDzENMAsGA1UEAwwEdDgyMKQRMA8xDTALBgNVBAMMBHQ4 -MjGkETAPMQ0wCwYDVQQDDAR0ODIypBEwDzENMAsGA1UEAwwEdDgyM6QRMA8xDTAL -BgNVBAMMBHQ4MjSkETAPMQ0wCwYDVQQDDAR0ODI1pBEwDzENMAsGA1UEAwwEdDgy -NqQRMA8xDTALBgNVBAMMBHQ4MjekETAPMQ0wCwYDVQQDDAR0ODI4pBEwDzENMAsG -A1UEAwwEdDgyOaQRMA8xDTALBgNVBAMMBHQ4MzCkETAPMQ0wCwYDVQQDDAR0ODMx -pBEwDzENMAsGA1UEAwwEdDgzMqQRMA8xDTALBgNVBAMMBHQ4MzOkETAPMQ0wCwYD -VQQDDAR0ODM0pBEwDzENMAsGA1UEAwwEdDgzNaQRMA8xDTALBgNVBAMMBHQ4Mzak -ETAPMQ0wCwYDVQQDDAR0ODM3pBEwDzENMAsGA1UEAwwEdDgzOKQRMA8xDTALBgNV -BAMMBHQ4MzmkETAPMQ0wCwYDVQQDDAR0ODQwpBEwDzENMAsGA1UEAwwEdDg0MaQR -MA8xDTALBgNVBAMMBHQ4NDKkETAPMQ0wCwYDVQQDDAR0ODQzpBEwDzENMAsGA1UE -AwwEdDg0NKQRMA8xDTALBgNVBAMMBHQ4NDWkETAPMQ0wCwYDVQQDDAR0ODQ2pBEw -DzENMAsGA1UEAwwEdDg0N6QRMA8xDTALBgNVBAMMBHQ4NDikETAPMQ0wCwYDVQQD -DAR0ODQ5pBEwDzENMAsGA1UEAwwEdDg1MKQRMA8xDTALBgNVBAMMBHQ4NTGkETAP -MQ0wCwYDVQQDDAR0ODUypBEwDzENMAsGA1UEAwwEdDg1M6QRMA8xDTALBgNVBAMM -BHQ4NTSkETAPMQ0wCwYDVQQDDAR0ODU1pBEwDzENMAsGA1UEAwwEdDg1NqQRMA8x -DTALBgNVBAMMBHQ4NTekETAPMQ0wCwYDVQQDDAR0ODU4pBEwDzENMAsGA1UEAwwE -dDg1OaQRMA8xDTALBgNVBAMMBHQ4NjCkETAPMQ0wCwYDVQQDDAR0ODYxpBEwDzEN -MAsGA1UEAwwEdDg2MqQRMA8xDTALBgNVBAMMBHQ4NjOkETAPMQ0wCwYDVQQDDAR0 -ODY0pBEwDzENMAsGA1UEAwwEdDg2NaQRMA8xDTALBgNVBAMMBHQ4NjakETAPMQ0w -CwYDVQQDDAR0ODY3pBEwDzENMAsGA1UEAwwEdDg2OKQRMA8xDTALBgNVBAMMBHQ4 -NjmkETAPMQ0wCwYDVQQDDAR0ODcwpBEwDzENMAsGA1UEAwwEdDg3MaQRMA8xDTAL -BgNVBAMMBHQ4NzKkETAPMQ0wCwYDVQQDDAR0ODczpBEwDzENMAsGA1UEAwwEdDg3 -NKQRMA8xDTALBgNVBAMMBHQ4NzWkETAPMQ0wCwYDVQQDDAR0ODc2pBEwDzENMAsG -A1UEAwwEdDg3N6QRMA8xDTALBgNVBAMMBHQ4NzikETAPMQ0wCwYDVQQDDAR0ODc5 -pBEwDzENMAsGA1UEAwwEdDg4MKQRMA8xDTALBgNVBAMMBHQ4ODGkETAPMQ0wCwYD -VQQDDAR0ODgypBEwDzENMAsGA1UEAwwEdDg4M6QRMA8xDTALBgNVBAMMBHQ4ODSk -ETAPMQ0wCwYDVQQDDAR0ODg1pBEwDzENMAsGA1UEAwwEdDg4NqQRMA8xDTALBgNV -BAMMBHQ4ODekETAPMQ0wCwYDVQQDDAR0ODg4pBEwDzENMAsGA1UEAwwEdDg4OaQR -MA8xDTALBgNVBAMMBHQ4OTCkETAPMQ0wCwYDVQQDDAR0ODkxpBEwDzENMAsGA1UE -AwwEdDg5MqQRMA8xDTALBgNVBAMMBHQ4OTOkETAPMQ0wCwYDVQQDDAR0ODk0pBEw -DzENMAsGA1UEAwwEdDg5NaQRMA8xDTALBgNVBAMMBHQ4OTakETAPMQ0wCwYDVQQD -DAR0ODk3pBEwDzENMAsGA1UEAwwEdDg5OKQRMA8xDTALBgNVBAMMBHQ4OTmkETAP -MQ0wCwYDVQQDDAR0OTAwpBEwDzENMAsGA1UEAwwEdDkwMaQRMA8xDTALBgNVBAMM -BHQ5MDKkETAPMQ0wCwYDVQQDDAR0OTAzpBEwDzENMAsGA1UEAwwEdDkwNKQRMA8x -DTALBgNVBAMMBHQ5MDWkETAPMQ0wCwYDVQQDDAR0OTA2pBEwDzENMAsGA1UEAwwE -dDkwN6QRMA8xDTALBgNVBAMMBHQ5MDikETAPMQ0wCwYDVQQDDAR0OTA5pBEwDzEN -MAsGA1UEAwwEdDkxMKQRMA8xDTALBgNVBAMMBHQ5MTGkETAPMQ0wCwYDVQQDDAR0 -OTEypBEwDzENMAsGA1UEAwwEdDkxM6QRMA8xDTALBgNVBAMMBHQ5MTSkETAPMQ0w -CwYDVQQDDAR0OTE1pBEwDzENMAsGA1UEAwwEdDkxNqQRMA8xDTALBgNVBAMMBHQ5 -MTekETAPMQ0wCwYDVQQDDAR0OTE4pBEwDzENMAsGA1UEAwwEdDkxOaQRMA8xDTAL -BgNVBAMMBHQ5MjCkETAPMQ0wCwYDVQQDDAR0OTIxpBEwDzENMAsGA1UEAwwEdDky -MqQRMA8xDTALBgNVBAMMBHQ5MjOkETAPMQ0wCwYDVQQDDAR0OTI0pBEwDzENMAsG -A1UEAwwEdDkyNaQRMA8xDTALBgNVBAMMBHQ5MjakETAPMQ0wCwYDVQQDDAR0OTI3 -pBEwDzENMAsGA1UEAwwEdDkyOKQRMA8xDTALBgNVBAMMBHQ5MjmkETAPMQ0wCwYD -VQQDDAR0OTMwpBEwDzENMAsGA1UEAwwEdDkzMaQRMA8xDTALBgNVBAMMBHQ5MzKk -ETAPMQ0wCwYDVQQDDAR0OTMzpBEwDzENMAsGA1UEAwwEdDkzNKQRMA8xDTALBgNV -BAMMBHQ5MzWkETAPMQ0wCwYDVQQDDAR0OTM2pBEwDzENMAsGA1UEAwwEdDkzN6QR -MA8xDTALBgNVBAMMBHQ5MzikETAPMQ0wCwYDVQQDDAR0OTM5pBEwDzENMAsGA1UE -AwwEdDk0MKQRMA8xDTALBgNVBAMMBHQ5NDGkETAPMQ0wCwYDVQQDDAR0OTQypBEw -DzENMAsGA1UEAwwEdDk0M6QRMA8xDTALBgNVBAMMBHQ5NDSkETAPMQ0wCwYDVQQD -DAR0OTQ1pBEwDzENMAsGA1UEAwwEdDk0NqQRMA8xDTALBgNVBAMMBHQ5NDekETAP -MQ0wCwYDVQQDDAR0OTQ4pBEwDzENMAsGA1UEAwwEdDk0OaQRMA8xDTALBgNVBAMM -BHQ5NTCkETAPMQ0wCwYDVQQDDAR0OTUxpBEwDzENMAsGA1UEAwwEdDk1MqQRMA8x -DTALBgNVBAMMBHQ5NTOkETAPMQ0wCwYDVQQDDAR0OTU0pBEwDzENMAsGA1UEAwwE -dDk1NaQRMA8xDTALBgNVBAMMBHQ5NTakETAPMQ0wCwYDVQQDDAR0OTU3pBEwDzEN -MAsGA1UEAwwEdDk1OKQRMA8xDTALBgNVBAMMBHQ5NTmkETAPMQ0wCwYDVQQDDAR0 -OTYwpBEwDzENMAsGA1UEAwwEdDk2MaQRMA8xDTALBgNVBAMMBHQ5NjKkETAPMQ0w -CwYDVQQDDAR0OTYzpBEwDzENMAsGA1UEAwwEdDk2NKQRMA8xDTALBgNVBAMMBHQ5 -NjWkETAPMQ0wCwYDVQQDDAR0OTY2pBEwDzENMAsGA1UEAwwEdDk2N6QRMA8xDTAL -BgNVBAMMBHQ5NjikETAPMQ0wCwYDVQQDDAR0OTY5pBEwDzENMAsGA1UEAwwEdDk3 -MKQRMA8xDTALBgNVBAMMBHQ5NzGkETAPMQ0wCwYDVQQDDAR0OTcypBEwDzENMAsG -A1UEAwwEdDk3M6QRMA8xDTALBgNVBAMMBHQ5NzSkETAPMQ0wCwYDVQQDDAR0OTc1 -pBEwDzENMAsGA1UEAwwEdDk3NqQRMA8xDTALBgNVBAMMBHQ5NzekETAPMQ0wCwYD -VQQDDAR0OTc4pBEwDzENMAsGA1UEAwwEdDk3OaQRMA8xDTALBgNVBAMMBHQ5ODCk -ETAPMQ0wCwYDVQQDDAR0OTgxpBEwDzENMAsGA1UEAwwEdDk4MqQRMA8xDTALBgNV -BAMMBHQ5ODOkETAPMQ0wCwYDVQQDDAR0OTg0pBEwDzENMAsGA1UEAwwEdDk4NaQR -MA8xDTALBgNVBAMMBHQ5ODakETAPMQ0wCwYDVQQDDAR0OTg3pBEwDzENMAsGA1UE -AwwEdDk4OKQRMA8xDTALBgNVBAMMBHQ5ODmkETAPMQ0wCwYDVQQDDAR0OTkwpBEw -DzENMAsGA1UEAwwEdDk5MaQRMA8xDTALBgNVBAMMBHQ5OTKkETAPMQ0wCwYDVQQD -DAR0OTkzpBEwDzENMAsGA1UEAwwEdDk5NKQRMA8xDTALBgNVBAMMBHQ5OTWkETAP -MQ0wCwYDVQQDDAR0OTk2pBEwDzENMAsGA1UEAwwEdDk5N6QRMA8xDTALBgNVBAMM -BHQ5OTikETAPMQ0wCwYDVQQDDAR0OTk5pBIwEDEOMAwGA1UEAwwFdDEwMDCkEjAQ -MQ4wDAYDVQQDDAV0MTAwMaQSMBAxDjAMBgNVBAMMBXQxMDAypBIwEDEOMAwGA1UE -AwwFdDEwMDOkEjAQMQ4wDAYDVQQDDAV0MTAwNKQSMBAxDjAMBgNVBAMMBXQxMDA1 -pBIwEDEOMAwGA1UEAwwFdDEwMDakEjAQMQ4wDAYDVQQDDAV0MTAwN6QSMBAxDjAM -BgNVBAMMBXQxMDA4pBIwEDEOMAwGA1UEAwwFdDEwMDmkEjAQMQ4wDAYDVQQDDAV0 -MTAxMKQSMBAxDjAMBgNVBAMMBXQxMDExpBIwEDEOMAwGA1UEAwwFdDEwMTKkEjAQ -MQ4wDAYDVQQDDAV0MTAxM6QSMBAxDjAMBgNVBAMMBXQxMDE0pBIwEDEOMAwGA1UE -AwwFdDEwMTWkEjAQMQ4wDAYDVQQDDAV0MTAxNqQSMBAxDjAMBgNVBAMMBXQxMDE3 -pBIwEDEOMAwGA1UEAwwFdDEwMTikEjAQMQ4wDAYDVQQDDAV0MTAxOaQSMBAxDjAM -BgNVBAMMBXQxMDIwpBIwEDEOMAwGA1UEAwwFdDEwMjGkEjAQMQ4wDAYDVQQDDAV0 -MTAyMqQSMBAxDjAMBgNVBAMMBXQxMDIzMA0GCSqGSIb3DQEBCwUAA4IBAQCbtCkw -8C16Zsf4kkzL9AgR9etmwwJKJBLynRmpx1E6k/5xNJMnMhSgG/TrusJL336oV85/ -Yfqf0uyaAlEwE6XranwEs/DmKGZc905wZo8HrkJ3wOzu/xA0g0qygSzfxNj3gHDq -rsh8BUEZ+EAjwcBA4df1+H2wg7NrOgEXaMoKsnfEDENc2EsPIfRvfqj3tLwxzQKa -tnJbu0UMTJdhmCSwRM2vf378clVaVEMEHUC/Up1LwVgs0poE7goE2Nx1Lqs/hwh8 -4vA/axeVL3fi9jCTbNuEqsE9cF36tEDEKIV2c1tOtT28/o1/qPMgMT5p0cf7jHkh -zy8y5kYBv0zyFZaY ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D9.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D9.pem deleted file mode 100644 index a79609b93c..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8D9.pem +++ /dev/null @@ -1,325 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d9 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DNS:t0.test, DNS:t1.test, DNS:t2.test, DNS:t3.test, DNS:t4.test, DNS:t5.test, DNS:t6.test, DNS:t7.test, DNS:t8.test, DNS:t9.test, DNS:t10.test, DNS:t11.test, DNS:t12.test, DNS:t13.test, DNS:t14.test, DNS:t15.test, DNS:t16.test, DNS:t17.test, DNS:t18.test, DNS:t19.test, DNS:t20.test, DNS:t21.test, DNS:t22.test, DNS:t23.test, DNS:t24.test, DNS:t25.test, DNS:t26.test, DNS:t27.test, DNS:t28.test, DNS:t29.test, DNS:t30.test, DNS:t31.test, DNS:t32.test, DNS:t33.test, DNS:t34.test, DNS:t35.test, DNS:t36.test, DNS:t37.test, DNS:t38.test, DNS:t39.test, DNS:t40.test, DNS:t41.test, DNS:t42.test, DNS:t43.test, DNS:t44.test, DNS:t45.test, DNS:t46.test, DNS:t47.test, DNS:t48.test, DNS:t49.test, DNS:t50.test, DNS:t51.test, DNS:t52.test, DNS:t53.test, DNS:t54.test, DNS:t55.test, DNS:t56.test, DNS:t57.test, DNS:t58.test, DNS:t59.test, DNS:t60.test, DNS:t61.test, DNS:t62.test, DNS:t63.test, DNS:t64.test, DNS:t65.test, DNS:t66.test, DNS:t67.test, DNS:t68.test, DNS:t69.test, DNS:t70.test, DNS:t71.test, DNS:t72.test, DNS:t73.test, DNS:t74.test, DNS:t75.test, DNS:t76.test, DNS:t77.test, DNS:t78.test, DNS:t79.test, DNS:t80.test, DNS:t81.test, DNS:t82.test, DNS:t83.test, DNS:t84.test, DNS:t85.test, DNS:t86.test, DNS:t87.test, DNS:t88.test, DNS:t89.test, DNS:t90.test, DNS:t91.test, DNS:t92.test, DNS:t93.test, DNS:t94.test, DNS:t95.test, DNS:t96.test, DNS:t97.test, DNS:t98.test, DNS:t99.test, DNS:t100.test, DNS:t101.test, DNS:t102.test, DNS:t103.test, DNS:t104.test, DNS:t105.test, DNS:t106.test, DNS:t107.test, DNS:t108.test, DNS:t109.test, DNS:t110.test, DNS:t111.test, DNS:t112.test, DNS:t113.test, DNS:t114.test, DNS:t115.test, DNS:t116.test, DNS:t117.test, DNS:t118.test, DNS:t119.test, DNS:t120.test, DNS:t121.test, DNS:t122.test, DNS:t123.test, DNS:t124.test, DNS:t125.test, DNS:t126.test, DNS:t127.test, DNS:t128.test, DNS:t129.test, DNS:t130.test, DNS:t131.test, DNS:t132.test, DNS:t133.test, DNS:t134.test, DNS:t135.test, DNS:t136.test, DNS:t137.test, DNS:t138.test, DNS:t139.test, DNS:t140.test, DNS:t141.test, DNS:t142.test, DNS:t143.test, DNS:t144.test, DNS:t145.test, DNS:t146.test, DNS:t147.test, DNS:t148.test, DNS:t149.test, DNS:t150.test, DNS:t151.test, DNS:t152.test, DNS:t153.test, DNS:t154.test, DNS:t155.test, DNS:t156.test, DNS:t157.test, DNS:t158.test, DNS:t159.test, DNS:t160.test, DNS:t161.test, DNS:t162.test, DNS:t163.test, DNS:t164.test, DNS:t165.test, DNS:t166.test, DNS:t167.test, DNS:t168.test, DNS:t169.test, DNS:t170.test, DNS:t171.test, DNS:t172.test, DNS:t173.test, DNS:t174.test, DNS:t175.test, DNS:t176.test, DNS:t177.test, DNS:t178.test, DNS:t179.test, DNS:t180.test, DNS:t181.test, DNS:t182.test, DNS:t183.test, DNS:t184.test, DNS:t185.test, DNS:t186.test, DNS:t187.test, DNS:t188.test, DNS:t189.test, DNS:t190.test, DNS:t191.test, DNS:t192.test, DNS:t193.test, DNS:t194.test, DNS:t195.test, DNS:t196.test, DNS:t197.test, DNS:t198.test, DNS:t199.test, DNS:t200.test, DNS:t201.test, DNS:t202.test, DNS:t203.test, DNS:t204.test, DNS:t205.test, DNS:t206.test, DNS:t207.test, DNS:t208.test, DNS:t209.test, DNS:t210.test, DNS:t211.test, DNS:t212.test, DNS:t213.test, DNS:t214.test, DNS:t215.test, DNS:t216.test, DNS:t217.test, DNS:t218.test, DNS:t219.test, DNS:t220.test, DNS:t221.test, DNS:t222.test, DNS:t223.test, DNS:t224.test, DNS:t225.test, DNS:t226.test, DNS:t227.test, DNS:t228.test, DNS:t229.test, DNS:t230.test, DNS:t231.test, DNS:t232.test, DNS:t233.test, DNS:t234.test, DNS:t235.test, DNS:t236.test, DNS:t237.test, DNS:t238.test, DNS:t239.test, DNS:t240.test, DNS:t241.test, DNS:t242.test, DNS:t243.test, DNS:t244.test, DNS:t245.test, DNS:t246.test, DNS:t247.test, DNS:t248.test, DNS:t249.test, DNS:t250.test, DNS:t251.test, DNS:t252.test, DNS:t253.test, DNS:t254.test, DNS:t255.test, DNS:t256.test, DNS:t257.test, DNS:t258.test, DNS:t259.test, DNS:t260.test, DNS:t261.test, DNS:t262.test, DNS:t263.test, DNS:t264.test, DNS:t265.test, DNS:t266.test, DNS:t267.test, DNS:t268.test, DNS:t269.test, DNS:t270.test, DNS:t271.test, DNS:t272.test, DNS:t273.test, DNS:t274.test, DNS:t275.test, DNS:t276.test, DNS:t277.test, DNS:t278.test, DNS:t279.test, DNS:t280.test, DNS:t281.test, DNS:t282.test, DNS:t283.test, DNS:t284.test, DNS:t285.test, DNS:t286.test, DNS:t287.test, DNS:t288.test, DNS:t289.test, DNS:t290.test, DNS:t291.test, DNS:t292.test, DNS:t293.test, DNS:t294.test, DNS:t295.test, DNS:t296.test, DNS:t297.test, DNS:t298.test, DNS:t299.test, DNS:t300.test, DNS:t301.test, DNS:t302.test, DNS:t303.test, DNS:t304.test, DNS:t305.test, DNS:t306.test, DNS:t307.test, DNS:t308.test, DNS:t309.test, DNS:t310.test, DNS:t311.test, DNS:t312.test, DNS:t313.test, DNS:t314.test, DNS:t315.test, DNS:t316.test, DNS:t317.test, DNS:t318.test, DNS:t319.test, DNS:t320.test, DNS:t321.test, DNS:t322.test, DNS:t323.test, DNS:t324.test, DNS:t325.test, DNS:t326.test, DNS:t327.test, DNS:t328.test, DNS:t329.test, DNS:t330.test, DNS:t331.test, DNS:t332.test, DNS:t333.test, DNS:t334.test, DNS:t335.test, DNS:t336.test, DNS:t337.test, DNS:t338.test, DNS:t339.test, DNS:t340.test, DNS:t341.test, DNS:t342.test, DNS:t343.test, DNS:t344.test, DNS:t345.test, DNS:t346.test, DNS:t347.test, DNS:t348.test, DNS:t349.test, DNS:t350.test, DNS:t351.test, DNS:t352.test, DNS:t353.test, DNS:t354.test, DNS:t355.test, DNS:t356.test, DNS:t357.test, DNS:t358.test, DNS:t359.test, DNS:t360.test, DNS:t361.test, DNS:t362.test, DNS:t363.test, DNS:t364.test, DNS:t365.test, DNS:t366.test, DNS:t367.test, DNS:t368.test, DNS:t369.test, DNS:t370.test, DNS:t371.test, DNS:t372.test, DNS:t373.test, DNS:t374.test, DNS:t375.test, DNS:t376.test, DNS:t377.test, DNS:t378.test, DNS:t379.test, DNS:t380.test, DNS:t381.test, DNS:t382.test, DNS:t383.test, DNS:t384.test, DNS:t385.test, DNS:t386.test, DNS:t387.test, DNS:t388.test, DNS:t389.test, DNS:t390.test, DNS:t391.test, DNS:t392.test, DNS:t393.test, DNS:t394.test, DNS:t395.test, DNS:t396.test, DNS:t397.test, DNS:t398.test, DNS:t399.test, DNS:t400.test, DNS:t401.test, DNS:t402.test, DNS:t403.test, DNS:t404.test, DNS:t405.test, DNS:t406.test, DNS:t407.test, DNS:t408.test, DNS:t409.test, DNS:t410.test, DNS:t411.test, DNS:t412.test, DNS:t413.test, DNS:t414.test, DNS:t415.test, DNS:t416.test, DNS:t417.test, DNS:t418.test, DNS:t419.test, DNS:t420.test, DNS:t421.test, DNS:t422.test, DNS:t423.test, DNS:t424.test, DNS:t425.test, DNS:t426.test, DNS:t427.test, DNS:t428.test, DNS:t429.test, DNS:t430.test, DNS:t431.test, DNS:t432.test, DNS:t433.test, DNS:t434.test, DNS:t435.test, DNS:t436.test, DNS:t437.test, DNS:t438.test, DNS:t439.test, DNS:t440.test, DNS:t441.test, DNS:t442.test, DNS:t443.test, DNS:t444.test, DNS:t445.test, DNS:t446.test, DNS:t447.test, DNS:t448.test, DNS:t449.test, DNS:t450.test, DNS:t451.test, DNS:t452.test, DNS:t453.test, DNS:t454.test, DNS:t455.test, DNS:t456.test, DNS:t457.test, DNS:t458.test, DNS:t459.test, DNS:t460.test, DNS:t461.test, DNS:t462.test, DNS:t463.test, DNS:t464.test, DNS:t465.test, DNS:t466.test, DNS:t467.test, DNS:t468.test, DNS:t469.test, DNS:t470.test, DNS:t471.test, DNS:t472.test, DNS:t473.test, DNS:t474.test, DNS:t475.test, DNS:t476.test, DNS:t477.test, DNS:t478.test, DNS:t479.test, DNS:t480.test, DNS:t481.test, DNS:t482.test, DNS:t483.test, DNS:t484.test, DNS:t485.test, DNS:t486.test, DNS:t487.test, DNS:t488.test, DNS:t489.test, DNS:t490.test, DNS:t491.test, DNS:t492.test, DNS:t493.test, DNS:t494.test, DNS:t495.test, DNS:t496.test, DNS:t497.test, DNS:t498.test, DNS:t499.test, DNS:t500.test, DNS:t501.test, DNS:t502.test, DNS:t503.test, DNS:t504.test, DNS:t505.test, DNS:t506.test, DNS:t507.test, DNS:t508.test, DNS:t509.test, DNS:t510.test, DNS:t511.test, DNS:t512.test, DNS:t513.test, DNS:t514.test, DNS:t515.test, DNS:t516.test, DNS:t517.test, DNS:t518.test, DNS:t519.test, DNS:t520.test, DNS:t521.test, DNS:t522.test, DNS:t523.test, DNS:t524.test, DNS:t525.test, DNS:t526.test, DNS:t527.test, DNS:t528.test, DNS:t529.test, DNS:t530.test, DNS:t531.test, DNS:t532.test, DNS:t533.test, DNS:t534.test, DNS:t535.test, DNS:t536.test, DNS:t537.test, DNS:t538.test, DNS:t539.test, DNS:t540.test, DNS:t541.test, DNS:t542.test, DNS:t543.test, DNS:t544.test, DNS:t545.test, DNS:t546.test, DNS:t547.test, DNS:t548.test, DNS:t549.test, DNS:t550.test, DNS:t551.test, DNS:t552.test, DNS:t553.test, DNS:t554.test, DNS:t555.test, DNS:t556.test, DNS:t557.test, DNS:t558.test, DNS:t559.test, DNS:t560.test, DNS:t561.test, DNS:t562.test, DNS:t563.test, DNS:t564.test, DNS:t565.test, DNS:t566.test, DNS:t567.test, DNS:t568.test, DNS:t569.test, DNS:t570.test, DNS:t571.test, DNS:t572.test, DNS:t573.test, DNS:t574.test, DNS:t575.test, DNS:t576.test, DNS:t577.test, DNS:t578.test, DNS:t579.test, DNS:t580.test, DNS:t581.test, DNS:t582.test, DNS:t583.test, DNS:t584.test, DNS:t585.test, DNS:t586.test, DNS:t587.test, DNS:t588.test, DNS:t589.test, DNS:t590.test, DNS:t591.test, DNS:t592.test, DNS:t593.test, DNS:t594.test, DNS:t595.test, DNS:t596.test, DNS:t597.test, DNS:t598.test, DNS:t599.test, DNS:t600.test, DNS:t601.test, DNS:t602.test, DNS:t603.test, DNS:t604.test, DNS:t605.test, DNS:t606.test, DNS:t607.test, DNS:t608.test, DNS:t609.test, DNS:t610.test, DNS:t611.test, DNS:t612.test, DNS:t613.test, DNS:t614.test, DNS:t615.test, DNS:t616.test, DNS:t617.test, DNS:t618.test, DNS:t619.test, DNS:t620.test, DNS:t621.test, DNS:t622.test, DNS:t623.test, DNS:t624.test, DNS:t625.test, DNS:t626.test, DNS:t627.test, DNS:t628.test, DNS:t629.test, DNS:t630.test, DNS:t631.test, DNS:t632.test, DNS:t633.test, DNS:t634.test, DNS:t635.test, DNS:t636.test, DNS:t637.test, DNS:t638.test, DNS:t639.test, DNS:t640.test, DNS:t641.test, DNS:t642.test, DNS:t643.test, DNS:t644.test, DNS:t645.test, DNS:t646.test, DNS:t647.test, DNS:t648.test, DNS:t649.test, DNS:t650.test, DNS:t651.test, DNS:t652.test, DNS:t653.test, DNS:t654.test, DNS:t655.test, DNS:t656.test, DNS:t657.test, DNS:t658.test, DNS:t659.test, DNS:t660.test, DNS:t661.test, DNS:t662.test, DNS:t663.test, DNS:t664.test, DNS:t665.test, DNS:t666.test, DNS:t667.test, DNS:t668.test, DNS:t669.test, DNS:t670.test, DNS:t671.test, DNS:t672.test, DNS:t673.test, DNS:t674.test, DNS:t675.test, DNS:t676.test, DNS:t677.test, DNS:t678.test, DNS:t679.test, DNS:t680.test, DNS:t681.test, DNS:t682.test, DNS:t683.test, DNS:t684.test, DNS:t685.test, DNS:t686.test, DNS:t687.test, DNS:t688.test, DNS:t689.test, DNS:t690.test, DNS:t691.test, DNS:t692.test, DNS:t693.test, DNS:t694.test, DNS:t695.test, DNS:t696.test, DNS:t697.test, DNS:t698.test, DNS:t699.test, DNS:t700.test, DNS:t701.test, DNS:t702.test, DNS:t703.test, DNS:t704.test, DNS:t705.test, DNS:t706.test, DNS:t707.test, DNS:t708.test, DNS:t709.test, DNS:t710.test, DNS:t711.test, DNS:t712.test, DNS:t713.test, DNS:t714.test, DNS:t715.test, DNS:t716.test, DNS:t717.test, DNS:t718.test, DNS:t719.test, DNS:t720.test, DNS:t721.test, DNS:t722.test, DNS:t723.test, DNS:t724.test, DNS:t725.test, DNS:t726.test, DNS:t727.test, DNS:t728.test, DNS:t729.test, DNS:t730.test, DNS:t731.test, DNS:t732.test, DNS:t733.test, DNS:t734.test, DNS:t735.test, DNS:t736.test, DNS:t737.test, DNS:t738.test, DNS:t739.test, DNS:t740.test, DNS:t741.test, DNS:t742.test, DNS:t743.test, DNS:t744.test, DNS:t745.test, DNS:t746.test, DNS:t747.test, DNS:t748.test, DNS:t749.test, DNS:t750.test, DNS:t751.test, DNS:t752.test, DNS:t753.test, DNS:t754.test, DNS:t755.test, DNS:t756.test, DNS:t757.test, DNS:t758.test, DNS:t759.test, DNS:t760.test, DNS:t761.test, DNS:t762.test, DNS:t763.test, DNS:t764.test, DNS:t765.test, DNS:t766.test, DNS:t767.test, DNS:t768.test, DNS:t769.test, DNS:t770.test, DNS:t771.test, DNS:t772.test, DNS:t773.test, DNS:t774.test, DNS:t775.test, DNS:t776.test, DNS:t777.test, DNS:t778.test, DNS:t779.test, DNS:t780.test, DNS:t781.test, DNS:t782.test, DNS:t783.test, DNS:t784.test, DNS:t785.test, DNS:t786.test, DNS:t787.test, DNS:t788.test, DNS:t789.test, DNS:t790.test, DNS:t791.test, DNS:t792.test, DNS:t793.test, DNS:t794.test, DNS:t795.test, DNS:t796.test, DNS:t797.test, DNS:t798.test, DNS:t799.test, DNS:t800.test, DNS:t801.test, DNS:t802.test, DNS:t803.test, DNS:t804.test, DNS:t805.test, DNS:t806.test, DNS:t807.test, DNS:t808.test, DNS:t809.test, DNS:t810.test, DNS:t811.test, DNS:t812.test, DNS:t813.test, DNS:t814.test, DNS:t815.test, DNS:t816.test, DNS:t817.test, DNS:t818.test, DNS:t819.test, DNS:t820.test, DNS:t821.test, DNS:t822.test, DNS:t823.test, DNS:t824.test, DNS:t825.test, DNS:t826.test, DNS:t827.test, DNS:t828.test, DNS:t829.test, DNS:t830.test, DNS:t831.test, DNS:t832.test, DNS:t833.test, DNS:t834.test, DNS:t835.test, DNS:t836.test, DNS:t837.test, DNS:t838.test, DNS:t839.test, DNS:t840.test, DNS:t841.test, DNS:t842.test, DNS:t843.test, DNS:t844.test, DNS:t845.test, DNS:t846.test, DNS:t847.test, DNS:t848.test, DNS:t849.test, DNS:t850.test, DNS:t851.test, DNS:t852.test, DNS:t853.test, DNS:t854.test, DNS:t855.test, DNS:t856.test, DNS:t857.test, DNS:t858.test, DNS:t859.test, DNS:t860.test, DNS:t861.test, DNS:t862.test, DNS:t863.test, DNS:t864.test, DNS:t865.test, DNS:t866.test, DNS:t867.test, DNS:t868.test, DNS:t869.test, DNS:t870.test, DNS:t871.test, DNS:t872.test, DNS:t873.test, DNS:t874.test, DNS:t875.test, DNS:t876.test, DNS:t877.test, DNS:t878.test, DNS:t879.test, DNS:t880.test, DNS:t881.test, DNS:t882.test, DNS:t883.test, DNS:t884.test, DNS:t885.test, DNS:t886.test, DNS:t887.test, DNS:t888.test, DNS:t889.test, DNS:t890.test, DNS:t891.test, DNS:t892.test, DNS:t893.test, DNS:t894.test, DNS:t895.test, DNS:t896.test, DNS:t897.test, DNS:t898.test, DNS:t899.test, DNS:t900.test, DNS:t901.test, DNS:t902.test, DNS:t903.test, DNS:t904.test, DNS:t905.test, DNS:t906.test, DNS:t907.test, DNS:t908.test, DNS:t909.test, DNS:t910.test, DNS:t911.test, DNS:t912.test, DNS:t913.test, DNS:t914.test, DNS:t915.test, DNS:t916.test, DNS:t917.test, DNS:t918.test, DNS:t919.test, DNS:t920.test, DNS:t921.test, DNS:t922.test, DNS:t923.test, DNS:t924.test, DNS:t925.test, DNS:t926.test, DNS:t927.test, DNS:t928.test, DNS:t929.test, DNS:t930.test, DNS:t931.test, DNS:t932.test, DNS:t933.test, DNS:t934.test, DNS:t935.test, DNS:t936.test, DNS:t937.test, DNS:t938.test, DNS:t939.test, DNS:t940.test, DNS:t941.test, DNS:t942.test, DNS:t943.test, DNS:t944.test, DNS:t945.test, DNS:t946.test, DNS:t947.test, DNS:t948.test, DNS:t949.test, DNS:t950.test, DNS:t951.test, DNS:t952.test, DNS:t953.test, DNS:t954.test, DNS:t955.test, DNS:t956.test, DNS:t957.test, DNS:t958.test, DNS:t959.test, DNS:t960.test, DNS:t961.test, DNS:t962.test, DNS:t963.test, DNS:t964.test, DNS:t965.test, DNS:t966.test, DNS:t967.test, DNS:t968.test, DNS:t969.test, DNS:t970.test, DNS:t971.test, DNS:t972.test, DNS:t973.test, DNS:t974.test, DNS:t975.test, DNS:t976.test, DNS:t977.test, DNS:t978.test, DNS:t979.test, DNS:t980.test, DNS:t981.test, DNS:t982.test, DNS:t983.test, DNS:t984.test, DNS:t985.test, DNS:t986.test, DNS:t987.test, DNS:t988.test, DNS:t989.test, DNS:t990.test, DNS:t991.test, DNS:t992.test, DNS:t993.test, DNS:t994.test, DNS:t995.test, DNS:t996.test, DNS:t997.test, DNS:t998.test, DNS:t999.test, DNS:t1000.test, DNS:t1001.test, DNS:t1002.test, DNS:t1003.test, DNS:t1004.test, DNS:t1005.test, DNS:t1006.test, DNS:t1007.test, DNS:t1008.test, DNS:t1009.test, DNS:t1010.test, DNS:t1011.test, DNS:t1012.test, DNS:t1013.test, DNS:t1014.test, DNS:t1015.test, DNS:t1016.test, DNS:t1017.test, DNS:t1018.test, DNS:t1019.test, DNS:t1020.test, DNS:t1021.test, DNS:t1022.test, DNS:t1023.test - Signature Algorithm: sha256WithRSAEncryption - b7:c8:45:e8:f3:e4:4f:01:a9:fd:50:ef:22:07:85:79:92:9d: - e2:75:89:b7:0d:59:6c:65:ad:83:73:bc:44:09:7c:8b:be:cc: - d4:f6:d5:47:64:7b:c6:c8:d6:dd:ed:f9:bf:77:12:af:21:93: - ce:a8:1c:e3:6b:07:a2:80:f4:a8:83:3e:67:59:63:ae:07:f0: - 70:5b:db:f8:50:76:34:0b:b0:3f:97:93:6b:45:b1:3c:af:0a: - d8:08:96:1d:fa:f1:1b:2c:6b:82:9a:d2:ad:1e:f5:3e:46:33: - 91:60:1d:4d:7a:9b:6d:75:3d:b8:a5:50:d1:0a:cd:ce:ab:24: - 9a:ab:89:d3:73:15:70:f8:c6:23:0d:85:fe:1b:78:e6:d6:69: - 5c:7c:b2:28:1f:39:16:98:bd:f6:e3:0c:1e:71:7f:a9:15:75: - 02:aa:6e:38:2c:a0:18:95:18:28:9e:00:92:2c:eb:78:0b:75: - 11:9c:e9:a9:b5:fa:f9:ea:96:18:58:46:3b:7a:ed:47:08:42: - 01:ac:48:2f:7d:bc:b2:16:e8:b4:1c:36:1e:16:85:d2:ae:26: - 24:36:b2:c3:9f:c7:a1:c3:4e:76:27:5a:ca:cc:33:7e:a4:60: - 7c:86:d7:a7:19:6f:60:1a:98:89:16:ad:4a:de:12:15:0e:d0: - eb:6a:78:1f ------BEGIN CERTIFICATE----- -MIIvWDCCLkCgAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY2TANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCLKUwgiyhMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgiu3BgNVHREEgiuuMIIrqoIH -dDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIHdDQudGVzdIIHdDUu -dGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDkudGVzdIIIdDEwLnRl -c3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQxNC50ZXN0ggh0MTUu -dGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIIIdDE5LnRlc3SCCHQy -MC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0ggh0MjQudGVzdIII -dDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRlc3SCCHQyOS50ZXN0 -ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMudGVzdIIIdDM0LnRl -c3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQzOC50ZXN0ggh0Mzku -dGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIIIdDQzLnRlc3SCCHQ0 -NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0ggh0NDgudGVzdIII -dDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRlc3SCCHQ1My50ZXN0 -ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcudGVzdIIIdDU4LnRl -c3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2Mi50ZXN0ggh0NjMu -dGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIIIdDY3LnRlc3SCCHQ2 -OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0ggh0NzIudGVzdIII -dDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRlc3SCCHQ3Ny50ZXN0 -ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEudGVzdIIIdDgyLnRl -c3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4Ni50ZXN0ggh0ODcu -dGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIIIdDkxLnRlc3SCCHQ5 -Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0ggh0OTYudGVzdIII -dDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50ZXN0ggl0MTAxLnRl -c3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SCCXQxMDUudGVzdIIJ -dDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEwOS50ZXN0ggl0MTEw -LnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRlc3SCCXQxMTQudGVz -dIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJdDExOC50ZXN0ggl0 -MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIyLnRlc3SCCXQxMjMu -dGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVzdIIJdDEyNy50ZXN0 -ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0MTMxLnRlc3SCCXQx -MzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUudGVzdIIJdDEzNi50 -ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0ggl0MTQwLnRlc3SC -CXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQxNDQudGVzdIIJdDE0 -NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50ZXN0ggl0MTQ5LnRl -c3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SCCXQxNTMudGVzdIIJ -dDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1Ny50ZXN0ggl0MTU4 -LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRlc3SCCXQxNjIudGVz -dIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJdDE2Ni50ZXN0ggl0 -MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcwLnRlc3SCCXQxNzEu -dGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVzdIIJdDE3NS50ZXN0 -ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0MTc5LnRlc3SCCXQx -ODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMudGVzdIIJdDE4NC50 -ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0ggl0MTg4LnRlc3SC -CXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQxOTIudGVzdIIJdDE5 -My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50ZXN0ggl0MTk3LnRl -c3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SCCXQyMDEudGVzdIIJ -dDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIwNS50ZXN0ggl0MjA2 -LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRlc3SCCXQyMTAudGVz -dIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJdDIxNC50ZXN0ggl0 -MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4LnRlc3SCCXQyMTku -dGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVzdIIJdDIyMy50ZXN0 -ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0MjI3LnRlc3SCCXQy -MjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEudGVzdIIJdDIzMi50 -ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0ggl0MjM2LnRlc3SC -CXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQyNDAudGVzdIIJdDI0 -MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50ZXN0ggl0MjQ1LnRl -c3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SCCXQyNDkudGVzdIIJ -dDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1My50ZXN0ggl0MjU0 -LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRlc3SCCXQyNTgudGVz -dIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJdDI2Mi50ZXN0ggl0 -MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2LnRlc3SCCXQyNjcu -dGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVzdIIJdDI3MS50ZXN0 -ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0Mjc1LnRlc3SCCXQy -NzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzkudGVzdIIJdDI4MC50 -ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0ggl0Mjg0LnRlc3SC -CXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQyODgudGVzdIIJdDI4 -OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50ZXN0ggl0MjkzLnRl -c3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SCCXQyOTcudGVzdIIJ -dDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMwMS50ZXN0ggl0MzAy -LnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRlc3SCCXQzMDYudGVz -dIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJdDMxMC50ZXN0ggl0 -MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0LnRlc3SCCXQzMTUu -dGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVzdIIJdDMxOS50ZXN0 -ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0MzIzLnRlc3SCCXQz -MjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcudGVzdIIJdDMyOC50 -ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0ggl0MzMyLnRlc3SC -CXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQzMzYudGVzdIIJdDMz -Ny50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50ZXN0ggl0MzQxLnRl -c3SCCXQzNDIudGVzdIIJdDM0My50ZXN0ggl0MzQ0LnRlc3SCCXQzNDUudGVzdIIJ -dDM0Ni50ZXN0ggl0MzQ3LnRlc3SCCXQzNDgudGVzdIIJdDM0OS50ZXN0ggl0MzUw -LnRlc3SCCXQzNTEudGVzdIIJdDM1Mi50ZXN0ggl0MzUzLnRlc3SCCXQzNTQudGVz -dIIJdDM1NS50ZXN0ggl0MzU2LnRlc3SCCXQzNTcudGVzdIIJdDM1OC50ZXN0ggl0 -MzU5LnRlc3SCCXQzNjAudGVzdIIJdDM2MS50ZXN0ggl0MzYyLnRlc3SCCXQzNjMu -dGVzdIIJdDM2NC50ZXN0ggl0MzY1LnRlc3SCCXQzNjYudGVzdIIJdDM2Ny50ZXN0 -ggl0MzY4LnRlc3SCCXQzNjkudGVzdIIJdDM3MC50ZXN0ggl0MzcxLnRlc3SCCXQz -NzIudGVzdIIJdDM3My50ZXN0ggl0Mzc0LnRlc3SCCXQzNzUudGVzdIIJdDM3Ni50 -ZXN0ggl0Mzc3LnRlc3SCCXQzNzgudGVzdIIJdDM3OS50ZXN0ggl0MzgwLnRlc3SC -CXQzODEudGVzdIIJdDM4Mi50ZXN0ggl0MzgzLnRlc3SCCXQzODQudGVzdIIJdDM4 -NS50ZXN0ggl0Mzg2LnRlc3SCCXQzODcudGVzdIIJdDM4OC50ZXN0ggl0Mzg5LnRl -c3SCCXQzOTAudGVzdIIJdDM5MS50ZXN0ggl0MzkyLnRlc3SCCXQzOTMudGVzdIIJ -dDM5NC50ZXN0ggl0Mzk1LnRlc3SCCXQzOTYudGVzdIIJdDM5Ny50ZXN0ggl0Mzk4 -LnRlc3SCCXQzOTkudGVzdIIJdDQwMC50ZXN0ggl0NDAxLnRlc3SCCXQ0MDIudGVz -dIIJdDQwMy50ZXN0ggl0NDA0LnRlc3SCCXQ0MDUudGVzdIIJdDQwNi50ZXN0ggl0 -NDA3LnRlc3SCCXQ0MDgudGVzdIIJdDQwOS50ZXN0ggl0NDEwLnRlc3SCCXQ0MTEu -dGVzdIIJdDQxMi50ZXN0ggl0NDEzLnRlc3SCCXQ0MTQudGVzdIIJdDQxNS50ZXN0 -ggl0NDE2LnRlc3SCCXQ0MTcudGVzdIIJdDQxOC50ZXN0ggl0NDE5LnRlc3SCCXQ0 -MjAudGVzdIIJdDQyMS50ZXN0ggl0NDIyLnRlc3SCCXQ0MjMudGVzdIIJdDQyNC50 -ZXN0ggl0NDI1LnRlc3SCCXQ0MjYudGVzdIIJdDQyNy50ZXN0ggl0NDI4LnRlc3SC -CXQ0MjkudGVzdIIJdDQzMC50ZXN0ggl0NDMxLnRlc3SCCXQ0MzIudGVzdIIJdDQz -My50ZXN0ggl0NDM0LnRlc3SCCXQ0MzUudGVzdIIJdDQzNi50ZXN0ggl0NDM3LnRl -c3SCCXQ0MzgudGVzdIIJdDQzOS50ZXN0ggl0NDQwLnRlc3SCCXQ0NDEudGVzdIIJ -dDQ0Mi50ZXN0ggl0NDQzLnRlc3SCCXQ0NDQudGVzdIIJdDQ0NS50ZXN0ggl0NDQ2 -LnRlc3SCCXQ0NDcudGVzdIIJdDQ0OC50ZXN0ggl0NDQ5LnRlc3SCCXQ0NTAudGVz -dIIJdDQ1MS50ZXN0ggl0NDUyLnRlc3SCCXQ0NTMudGVzdIIJdDQ1NC50ZXN0ggl0 -NDU1LnRlc3SCCXQ0NTYudGVzdIIJdDQ1Ny50ZXN0ggl0NDU4LnRlc3SCCXQ0NTku -dGVzdIIJdDQ2MC50ZXN0ggl0NDYxLnRlc3SCCXQ0NjIudGVzdIIJdDQ2My50ZXN0 -ggl0NDY0LnRlc3SCCXQ0NjUudGVzdIIJdDQ2Ni50ZXN0ggl0NDY3LnRlc3SCCXQ0 -NjgudGVzdIIJdDQ2OS50ZXN0ggl0NDcwLnRlc3SCCXQ0NzEudGVzdIIJdDQ3Mi50 -ZXN0ggl0NDczLnRlc3SCCXQ0NzQudGVzdIIJdDQ3NS50ZXN0ggl0NDc2LnRlc3SC -CXQ0NzcudGVzdIIJdDQ3OC50ZXN0ggl0NDc5LnRlc3SCCXQ0ODAudGVzdIIJdDQ4 -MS50ZXN0ggl0NDgyLnRlc3SCCXQ0ODMudGVzdIIJdDQ4NC50ZXN0ggl0NDg1LnRl -c3SCCXQ0ODYudGVzdIIJdDQ4Ny50ZXN0ggl0NDg4LnRlc3SCCXQ0ODkudGVzdIIJ -dDQ5MC50ZXN0ggl0NDkxLnRlc3SCCXQ0OTIudGVzdIIJdDQ5My50ZXN0ggl0NDk0 -LnRlc3SCCXQ0OTUudGVzdIIJdDQ5Ni50ZXN0ggl0NDk3LnRlc3SCCXQ0OTgudGVz -dIIJdDQ5OS50ZXN0ggl0NTAwLnRlc3SCCXQ1MDEudGVzdIIJdDUwMi50ZXN0ggl0 -NTAzLnRlc3SCCXQ1MDQudGVzdIIJdDUwNS50ZXN0ggl0NTA2LnRlc3SCCXQ1MDcu -dGVzdIIJdDUwOC50ZXN0ggl0NTA5LnRlc3SCCXQ1MTAudGVzdIIJdDUxMS50ZXN0 -ggl0NTEyLnRlc3SCCXQ1MTMudGVzdIIJdDUxNC50ZXN0ggl0NTE1LnRlc3SCCXQ1 -MTYudGVzdIIJdDUxNy50ZXN0ggl0NTE4LnRlc3SCCXQ1MTkudGVzdIIJdDUyMC50 -ZXN0ggl0NTIxLnRlc3SCCXQ1MjIudGVzdIIJdDUyMy50ZXN0ggl0NTI0LnRlc3SC -CXQ1MjUudGVzdIIJdDUyNi50ZXN0ggl0NTI3LnRlc3SCCXQ1MjgudGVzdIIJdDUy -OS50ZXN0ggl0NTMwLnRlc3SCCXQ1MzEudGVzdIIJdDUzMi50ZXN0ggl0NTMzLnRl -c3SCCXQ1MzQudGVzdIIJdDUzNS50ZXN0ggl0NTM2LnRlc3SCCXQ1MzcudGVzdIIJ -dDUzOC50ZXN0ggl0NTM5LnRlc3SCCXQ1NDAudGVzdIIJdDU0MS50ZXN0ggl0NTQy -LnRlc3SCCXQ1NDMudGVzdIIJdDU0NC50ZXN0ggl0NTQ1LnRlc3SCCXQ1NDYudGVz -dIIJdDU0Ny50ZXN0ggl0NTQ4LnRlc3SCCXQ1NDkudGVzdIIJdDU1MC50ZXN0ggl0 -NTUxLnRlc3SCCXQ1NTIudGVzdIIJdDU1My50ZXN0ggl0NTU0LnRlc3SCCXQ1NTUu -dGVzdIIJdDU1Ni50ZXN0ggl0NTU3LnRlc3SCCXQ1NTgudGVzdIIJdDU1OS50ZXN0 -ggl0NTYwLnRlc3SCCXQ1NjEudGVzdIIJdDU2Mi50ZXN0ggl0NTYzLnRlc3SCCXQ1 -NjQudGVzdIIJdDU2NS50ZXN0ggl0NTY2LnRlc3SCCXQ1NjcudGVzdIIJdDU2OC50 -ZXN0ggl0NTY5LnRlc3SCCXQ1NzAudGVzdIIJdDU3MS50ZXN0ggl0NTcyLnRlc3SC -CXQ1NzMudGVzdIIJdDU3NC50ZXN0ggl0NTc1LnRlc3SCCXQ1NzYudGVzdIIJdDU3 -Ny50ZXN0ggl0NTc4LnRlc3SCCXQ1NzkudGVzdIIJdDU4MC50ZXN0ggl0NTgxLnRl -c3SCCXQ1ODIudGVzdIIJdDU4My50ZXN0ggl0NTg0LnRlc3SCCXQ1ODUudGVzdIIJ -dDU4Ni50ZXN0ggl0NTg3LnRlc3SCCXQ1ODgudGVzdIIJdDU4OS50ZXN0ggl0NTkw -LnRlc3SCCXQ1OTEudGVzdIIJdDU5Mi50ZXN0ggl0NTkzLnRlc3SCCXQ1OTQudGVz -dIIJdDU5NS50ZXN0ggl0NTk2LnRlc3SCCXQ1OTcudGVzdIIJdDU5OC50ZXN0ggl0 -NTk5LnRlc3SCCXQ2MDAudGVzdIIJdDYwMS50ZXN0ggl0NjAyLnRlc3SCCXQ2MDMu -dGVzdIIJdDYwNC50ZXN0ggl0NjA1LnRlc3SCCXQ2MDYudGVzdIIJdDYwNy50ZXN0 -ggl0NjA4LnRlc3SCCXQ2MDkudGVzdIIJdDYxMC50ZXN0ggl0NjExLnRlc3SCCXQ2 -MTIudGVzdIIJdDYxMy50ZXN0ggl0NjE0LnRlc3SCCXQ2MTUudGVzdIIJdDYxNi50 -ZXN0ggl0NjE3LnRlc3SCCXQ2MTgudGVzdIIJdDYxOS50ZXN0ggl0NjIwLnRlc3SC -CXQ2MjEudGVzdIIJdDYyMi50ZXN0ggl0NjIzLnRlc3SCCXQ2MjQudGVzdIIJdDYy -NS50ZXN0ggl0NjI2LnRlc3SCCXQ2MjcudGVzdIIJdDYyOC50ZXN0ggl0NjI5LnRl -c3SCCXQ2MzAudGVzdIIJdDYzMS50ZXN0ggl0NjMyLnRlc3SCCXQ2MzMudGVzdIIJ -dDYzNC50ZXN0ggl0NjM1LnRlc3SCCXQ2MzYudGVzdIIJdDYzNy50ZXN0ggl0NjM4 -LnRlc3SCCXQ2MzkudGVzdIIJdDY0MC50ZXN0ggl0NjQxLnRlc3SCCXQ2NDIudGVz -dIIJdDY0My50ZXN0ggl0NjQ0LnRlc3SCCXQ2NDUudGVzdIIJdDY0Ni50ZXN0ggl0 -NjQ3LnRlc3SCCXQ2NDgudGVzdIIJdDY0OS50ZXN0ggl0NjUwLnRlc3SCCXQ2NTEu -dGVzdIIJdDY1Mi50ZXN0ggl0NjUzLnRlc3SCCXQ2NTQudGVzdIIJdDY1NS50ZXN0 -ggl0NjU2LnRlc3SCCXQ2NTcudGVzdIIJdDY1OC50ZXN0ggl0NjU5LnRlc3SCCXQ2 -NjAudGVzdIIJdDY2MS50ZXN0ggl0NjYyLnRlc3SCCXQ2NjMudGVzdIIJdDY2NC50 -ZXN0ggl0NjY1LnRlc3SCCXQ2NjYudGVzdIIJdDY2Ny50ZXN0ggl0NjY4LnRlc3SC -CXQ2NjkudGVzdIIJdDY3MC50ZXN0ggl0NjcxLnRlc3SCCXQ2NzIudGVzdIIJdDY3 -My50ZXN0ggl0Njc0LnRlc3SCCXQ2NzUudGVzdIIJdDY3Ni50ZXN0ggl0Njc3LnRl -c3SCCXQ2NzgudGVzdIIJdDY3OS50ZXN0ggl0NjgwLnRlc3SCCXQ2ODEudGVzdIIJ -dDY4Mi50ZXN0ggl0NjgzLnRlc3SCCXQ2ODQudGVzdIIJdDY4NS50ZXN0ggl0Njg2 -LnRlc3SCCXQ2ODcudGVzdIIJdDY4OC50ZXN0ggl0Njg5LnRlc3SCCXQ2OTAudGVz -dIIJdDY5MS50ZXN0ggl0NjkyLnRlc3SCCXQ2OTMudGVzdIIJdDY5NC50ZXN0ggl0 -Njk1LnRlc3SCCXQ2OTYudGVzdIIJdDY5Ny50ZXN0ggl0Njk4LnRlc3SCCXQ2OTku -dGVzdIIJdDcwMC50ZXN0ggl0NzAxLnRlc3SCCXQ3MDIudGVzdIIJdDcwMy50ZXN0 -ggl0NzA0LnRlc3SCCXQ3MDUudGVzdIIJdDcwNi50ZXN0ggl0NzA3LnRlc3SCCXQ3 -MDgudGVzdIIJdDcwOS50ZXN0ggl0NzEwLnRlc3SCCXQ3MTEudGVzdIIJdDcxMi50 -ZXN0ggl0NzEzLnRlc3SCCXQ3MTQudGVzdIIJdDcxNS50ZXN0ggl0NzE2LnRlc3SC -CXQ3MTcudGVzdIIJdDcxOC50ZXN0ggl0NzE5LnRlc3SCCXQ3MjAudGVzdIIJdDcy -MS50ZXN0ggl0NzIyLnRlc3SCCXQ3MjMudGVzdIIJdDcyNC50ZXN0ggl0NzI1LnRl -c3SCCXQ3MjYudGVzdIIJdDcyNy50ZXN0ggl0NzI4LnRlc3SCCXQ3MjkudGVzdIIJ -dDczMC50ZXN0ggl0NzMxLnRlc3SCCXQ3MzIudGVzdIIJdDczMy50ZXN0ggl0NzM0 -LnRlc3SCCXQ3MzUudGVzdIIJdDczNi50ZXN0ggl0NzM3LnRlc3SCCXQ3MzgudGVz -dIIJdDczOS50ZXN0ggl0NzQwLnRlc3SCCXQ3NDEudGVzdIIJdDc0Mi50ZXN0ggl0 -NzQzLnRlc3SCCXQ3NDQudGVzdIIJdDc0NS50ZXN0ggl0NzQ2LnRlc3SCCXQ3NDcu -dGVzdIIJdDc0OC50ZXN0ggl0NzQ5LnRlc3SCCXQ3NTAudGVzdIIJdDc1MS50ZXN0 -ggl0NzUyLnRlc3SCCXQ3NTMudGVzdIIJdDc1NC50ZXN0ggl0NzU1LnRlc3SCCXQ3 -NTYudGVzdIIJdDc1Ny50ZXN0ggl0NzU4LnRlc3SCCXQ3NTkudGVzdIIJdDc2MC50 -ZXN0ggl0NzYxLnRlc3SCCXQ3NjIudGVzdIIJdDc2My50ZXN0ggl0NzY0LnRlc3SC -CXQ3NjUudGVzdIIJdDc2Ni50ZXN0ggl0NzY3LnRlc3SCCXQ3NjgudGVzdIIJdDc2 -OS50ZXN0ggl0NzcwLnRlc3SCCXQ3NzEudGVzdIIJdDc3Mi50ZXN0ggl0NzczLnRl -c3SCCXQ3NzQudGVzdIIJdDc3NS50ZXN0ggl0Nzc2LnRlc3SCCXQ3NzcudGVzdIIJ -dDc3OC50ZXN0ggl0Nzc5LnRlc3SCCXQ3ODAudGVzdIIJdDc4MS50ZXN0ggl0Nzgy -LnRlc3SCCXQ3ODMudGVzdIIJdDc4NC50ZXN0ggl0Nzg1LnRlc3SCCXQ3ODYudGVz -dIIJdDc4Ny50ZXN0ggl0Nzg4LnRlc3SCCXQ3ODkudGVzdIIJdDc5MC50ZXN0ggl0 -NzkxLnRlc3SCCXQ3OTIudGVzdIIJdDc5My50ZXN0ggl0Nzk0LnRlc3SCCXQ3OTUu -dGVzdIIJdDc5Ni50ZXN0ggl0Nzk3LnRlc3SCCXQ3OTgudGVzdIIJdDc5OS50ZXN0 -ggl0ODAwLnRlc3SCCXQ4MDEudGVzdIIJdDgwMi50ZXN0ggl0ODAzLnRlc3SCCXQ4 -MDQudGVzdIIJdDgwNS50ZXN0ggl0ODA2LnRlc3SCCXQ4MDcudGVzdIIJdDgwOC50 -ZXN0ggl0ODA5LnRlc3SCCXQ4MTAudGVzdIIJdDgxMS50ZXN0ggl0ODEyLnRlc3SC -CXQ4MTMudGVzdIIJdDgxNC50ZXN0ggl0ODE1LnRlc3SCCXQ4MTYudGVzdIIJdDgx -Ny50ZXN0ggl0ODE4LnRlc3SCCXQ4MTkudGVzdIIJdDgyMC50ZXN0ggl0ODIxLnRl -c3SCCXQ4MjIudGVzdIIJdDgyMy50ZXN0ggl0ODI0LnRlc3SCCXQ4MjUudGVzdIIJ -dDgyNi50ZXN0ggl0ODI3LnRlc3SCCXQ4MjgudGVzdIIJdDgyOS50ZXN0ggl0ODMw -LnRlc3SCCXQ4MzEudGVzdIIJdDgzMi50ZXN0ggl0ODMzLnRlc3SCCXQ4MzQudGVz -dIIJdDgzNS50ZXN0ggl0ODM2LnRlc3SCCXQ4MzcudGVzdIIJdDgzOC50ZXN0ggl0 -ODM5LnRlc3SCCXQ4NDAudGVzdIIJdDg0MS50ZXN0ggl0ODQyLnRlc3SCCXQ4NDMu -dGVzdIIJdDg0NC50ZXN0ggl0ODQ1LnRlc3SCCXQ4NDYudGVzdIIJdDg0Ny50ZXN0 -ggl0ODQ4LnRlc3SCCXQ4NDkudGVzdIIJdDg1MC50ZXN0ggl0ODUxLnRlc3SCCXQ4 -NTIudGVzdIIJdDg1My50ZXN0ggl0ODU0LnRlc3SCCXQ4NTUudGVzdIIJdDg1Ni50 -ZXN0ggl0ODU3LnRlc3SCCXQ4NTgudGVzdIIJdDg1OS50ZXN0ggl0ODYwLnRlc3SC -CXQ4NjEudGVzdIIJdDg2Mi50ZXN0ggl0ODYzLnRlc3SCCXQ4NjQudGVzdIIJdDg2 -NS50ZXN0ggl0ODY2LnRlc3SCCXQ4NjcudGVzdIIJdDg2OC50ZXN0ggl0ODY5LnRl -c3SCCXQ4NzAudGVzdIIJdDg3MS50ZXN0ggl0ODcyLnRlc3SCCXQ4NzMudGVzdIIJ -dDg3NC50ZXN0ggl0ODc1LnRlc3SCCXQ4NzYudGVzdIIJdDg3Ny50ZXN0ggl0ODc4 -LnRlc3SCCXQ4NzkudGVzdIIJdDg4MC50ZXN0ggl0ODgxLnRlc3SCCXQ4ODIudGVz -dIIJdDg4My50ZXN0ggl0ODg0LnRlc3SCCXQ4ODUudGVzdIIJdDg4Ni50ZXN0ggl0 -ODg3LnRlc3SCCXQ4ODgudGVzdIIJdDg4OS50ZXN0ggl0ODkwLnRlc3SCCXQ4OTEu -dGVzdIIJdDg5Mi50ZXN0ggl0ODkzLnRlc3SCCXQ4OTQudGVzdIIJdDg5NS50ZXN0 -ggl0ODk2LnRlc3SCCXQ4OTcudGVzdIIJdDg5OC50ZXN0ggl0ODk5LnRlc3SCCXQ5 -MDAudGVzdIIJdDkwMS50ZXN0ggl0OTAyLnRlc3SCCXQ5MDMudGVzdIIJdDkwNC50 -ZXN0ggl0OTA1LnRlc3SCCXQ5MDYudGVzdIIJdDkwNy50ZXN0ggl0OTA4LnRlc3SC -CXQ5MDkudGVzdIIJdDkxMC50ZXN0ggl0OTExLnRlc3SCCXQ5MTIudGVzdIIJdDkx -My50ZXN0ggl0OTE0LnRlc3SCCXQ5MTUudGVzdIIJdDkxNi50ZXN0ggl0OTE3LnRl -c3SCCXQ5MTgudGVzdIIJdDkxOS50ZXN0ggl0OTIwLnRlc3SCCXQ5MjEudGVzdIIJ -dDkyMi50ZXN0ggl0OTIzLnRlc3SCCXQ5MjQudGVzdIIJdDkyNS50ZXN0ggl0OTI2 -LnRlc3SCCXQ5MjcudGVzdIIJdDkyOC50ZXN0ggl0OTI5LnRlc3SCCXQ5MzAudGVz -dIIJdDkzMS50ZXN0ggl0OTMyLnRlc3SCCXQ5MzMudGVzdIIJdDkzNC50ZXN0ggl0 -OTM1LnRlc3SCCXQ5MzYudGVzdIIJdDkzNy50ZXN0ggl0OTM4LnRlc3SCCXQ5Mzku -dGVzdIIJdDk0MC50ZXN0ggl0OTQxLnRlc3SCCXQ5NDIudGVzdIIJdDk0My50ZXN0 -ggl0OTQ0LnRlc3SCCXQ5NDUudGVzdIIJdDk0Ni50ZXN0ggl0OTQ3LnRlc3SCCXQ5 -NDgudGVzdIIJdDk0OS50ZXN0ggl0OTUwLnRlc3SCCXQ5NTEudGVzdIIJdDk1Mi50 -ZXN0ggl0OTUzLnRlc3SCCXQ5NTQudGVzdIIJdDk1NS50ZXN0ggl0OTU2LnRlc3SC -CXQ5NTcudGVzdIIJdDk1OC50ZXN0ggl0OTU5LnRlc3SCCXQ5NjAudGVzdIIJdDk2 -MS50ZXN0ggl0OTYyLnRlc3SCCXQ5NjMudGVzdIIJdDk2NC50ZXN0ggl0OTY1LnRl -c3SCCXQ5NjYudGVzdIIJdDk2Ny50ZXN0ggl0OTY4LnRlc3SCCXQ5NjkudGVzdIIJ -dDk3MC50ZXN0ggl0OTcxLnRlc3SCCXQ5NzIudGVzdIIJdDk3My50ZXN0ggl0OTc0 -LnRlc3SCCXQ5NzUudGVzdIIJdDk3Ni50ZXN0ggl0OTc3LnRlc3SCCXQ5NzgudGVz -dIIJdDk3OS50ZXN0ggl0OTgwLnRlc3SCCXQ5ODEudGVzdIIJdDk4Mi50ZXN0ggl0 -OTgzLnRlc3SCCXQ5ODQudGVzdIIJdDk4NS50ZXN0ggl0OTg2LnRlc3SCCXQ5ODcu -dGVzdIIJdDk4OC50ZXN0ggl0OTg5LnRlc3SCCXQ5OTAudGVzdIIJdDk5MS50ZXN0 -ggl0OTkyLnRlc3SCCXQ5OTMudGVzdIIJdDk5NC50ZXN0ggl0OTk1LnRlc3SCCXQ5 -OTYudGVzdIIJdDk5Ny50ZXN0ggl0OTk4LnRlc3SCCXQ5OTkudGVzdIIKdDEwMDAu -dGVzdIIKdDEwMDEudGVzdIIKdDEwMDIudGVzdIIKdDEwMDMudGVzdIIKdDEwMDQu -dGVzdIIKdDEwMDUudGVzdIIKdDEwMDYudGVzdIIKdDEwMDcudGVzdIIKdDEwMDgu -dGVzdIIKdDEwMDkudGVzdIIKdDEwMTAudGVzdIIKdDEwMTEudGVzdIIKdDEwMTIu -dGVzdIIKdDEwMTMudGVzdIIKdDEwMTQudGVzdIIKdDEwMTUudGVzdIIKdDEwMTYu -dGVzdIIKdDEwMTcudGVzdIIKdDEwMTgudGVzdIIKdDEwMTkudGVzdIIKdDEwMjAu -dGVzdIIKdDEwMjEudGVzdIIKdDEwMjIudGVzdIIKdDEwMjMudGVzdDANBgkqhkiG -9w0BAQsFAAOCAQEAt8hF6PPkTwGp/VDvIgeFeZKd4nWJtw1ZbGWtg3O8RAl8i77M -1PbVR2R7xsjW3e35v3cSryGTzqgc42sHooD0qIM+Z1ljrgfwcFvb+FB2NAuwP5eT -a0WxPK8K2AiWHfrxGyxrgprSrR71PkYzkWAdTXqbbXU9uKVQ0QrNzqskmquJ03MV -cPjGIw2F/ht45tZpXHyyKB85Fpi99uMMHnF/qRV1AqpuOCygGJUYKJ4AkizreAt1 -EZzpqbX6+eqWGFhGO3rtRwhCAaxIL328shbotBw2HhaF0q4mJDayw5/HocNOdida -yswzfqRgfIbXpxlvYBqYiRatSt4SFQ7Q62p4Hw== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8DA.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8DA.pem deleted file mode 100644 index e32f370641..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8DA.pem +++ /dev/null @@ -1,220 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:da - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - IP Address:10.0.0.0, IP Address:10.0.0.1, IP Address:10.0.0.2, IP Address:10.0.0.3, IP Address:10.0.0.4, IP Address:10.0.0.5, IP Address:10.0.0.6, IP Address:10.0.0.7, IP Address:10.0.0.8, IP Address:10.0.0.9, IP Address:10.0.0.10, IP Address:10.0.0.11, IP Address:10.0.0.12, IP Address:10.0.0.13, IP Address:10.0.0.14, IP Address:10.0.0.15, IP Address:10.0.0.16, IP Address:10.0.0.17, IP Address:10.0.0.18, IP Address:10.0.0.19, IP Address:10.0.0.20, IP Address:10.0.0.21, IP Address:10.0.0.22, IP Address:10.0.0.23, IP Address:10.0.0.24, IP Address:10.0.0.25, IP Address:10.0.0.26, IP Address:10.0.0.27, IP Address:10.0.0.28, IP Address:10.0.0.29, IP Address:10.0.0.30, IP Address:10.0.0.31, IP Address:10.0.0.32, IP Address:10.0.0.33, IP Address:10.0.0.34, IP Address:10.0.0.35, IP Address:10.0.0.36, IP Address:10.0.0.37, IP Address:10.0.0.38, IP Address:10.0.0.39, IP Address:10.0.0.40, IP Address:10.0.0.41, IP Address:10.0.0.42, IP Address:10.0.0.43, IP Address:10.0.0.44, IP Address:10.0.0.45, IP Address:10.0.0.46, IP Address:10.0.0.47, IP Address:10.0.0.48, IP Address:10.0.0.49, IP Address:10.0.0.50, IP Address:10.0.0.51, IP Address:10.0.0.52, IP Address:10.0.0.53, IP Address:10.0.0.54, IP Address:10.0.0.55, IP Address:10.0.0.56, IP Address:10.0.0.57, IP Address:10.0.0.58, IP Address:10.0.0.59, IP Address:10.0.0.60, IP Address:10.0.0.61, IP Address:10.0.0.62, IP Address:10.0.0.63, IP Address:10.0.0.64, IP Address:10.0.0.65, IP Address:10.0.0.66, IP Address:10.0.0.67, IP Address:10.0.0.68, IP Address:10.0.0.69, IP Address:10.0.0.70, IP Address:10.0.0.71, IP Address:10.0.0.72, IP Address:10.0.0.73, IP Address:10.0.0.74, IP Address:10.0.0.75, IP Address:10.0.0.76, IP Address:10.0.0.77, IP Address:10.0.0.78, IP Address:10.0.0.79, IP Address:10.0.0.80, IP Address:10.0.0.81, IP Address:10.0.0.82, IP Address:10.0.0.83, IP Address:10.0.0.84, IP Address:10.0.0.85, IP Address:10.0.0.86, IP Address:10.0.0.87, IP Address:10.0.0.88, IP Address:10.0.0.89, IP Address:10.0.0.90, IP Address:10.0.0.91, IP Address:10.0.0.92, IP Address:10.0.0.93, IP Address:10.0.0.94, IP Address:10.0.0.95, IP Address:10.0.0.96, IP Address:10.0.0.97, IP Address:10.0.0.98, IP Address:10.0.0.99, IP Address:10.0.0.100, IP Address:10.0.0.101, IP Address:10.0.0.102, IP Address:10.0.0.103, IP Address:10.0.0.104, IP Address:10.0.0.105, IP Address:10.0.0.106, IP Address:10.0.0.107, IP Address:10.0.0.108, IP Address:10.0.0.109, IP Address:10.0.0.110, IP Address:10.0.0.111, IP Address:10.0.0.112, IP Address:10.0.0.113, IP Address:10.0.0.114, IP Address:10.0.0.115, IP Address:10.0.0.116, IP Address:10.0.0.117, IP Address:10.0.0.118, IP Address:10.0.0.119, IP Address:10.0.0.120, IP Address:10.0.0.121, IP Address:10.0.0.122, IP Address:10.0.0.123, IP Address:10.0.0.124, IP Address:10.0.0.125, IP Address:10.0.0.126, IP Address:10.0.0.127, IP Address:10.0.0.128, IP Address:10.0.0.129, IP Address:10.0.0.130, IP Address:10.0.0.131, IP Address:10.0.0.132, IP Address:10.0.0.133, IP Address:10.0.0.134, IP Address:10.0.0.135, IP Address:10.0.0.136, IP Address:10.0.0.137, IP Address:10.0.0.138, IP Address:10.0.0.139, IP Address:10.0.0.140, IP Address:10.0.0.141, IP Address:10.0.0.142, IP Address:10.0.0.143, IP Address:10.0.0.144, IP Address:10.0.0.145, IP Address:10.0.0.146, IP Address:10.0.0.147, IP Address:10.0.0.148, IP Address:10.0.0.149, IP Address:10.0.0.150, IP Address:10.0.0.151, IP Address:10.0.0.152, IP Address:10.0.0.153, IP Address:10.0.0.154, IP Address:10.0.0.155, IP Address:10.0.0.156, IP Address:10.0.0.157, IP Address:10.0.0.158, IP Address:10.0.0.159, IP Address:10.0.0.160, IP Address:10.0.0.161, IP Address:10.0.0.162, IP Address:10.0.0.163, IP Address:10.0.0.164, IP Address:10.0.0.165, IP Address:10.0.0.166, IP Address:10.0.0.167, IP Address:10.0.0.168, IP Address:10.0.0.169, IP Address:10.0.0.170, IP Address:10.0.0.171, IP Address:10.0.0.172, IP Address:10.0.0.173, IP Address:10.0.0.174, IP Address:10.0.0.175, IP Address:10.0.0.176, IP Address:10.0.0.177, IP Address:10.0.0.178, IP Address:10.0.0.179, IP Address:10.0.0.180, IP Address:10.0.0.181, IP Address:10.0.0.182, IP Address:10.0.0.183, IP Address:10.0.0.184, IP Address:10.0.0.185, IP Address:10.0.0.186, IP Address:10.0.0.187, IP Address:10.0.0.188, IP Address:10.0.0.189, IP Address:10.0.0.190, IP Address:10.0.0.191, IP Address:10.0.0.192, IP Address:10.0.0.193, IP Address:10.0.0.194, IP Address:10.0.0.195, IP Address:10.0.0.196, IP Address:10.0.0.197, IP Address:10.0.0.198, IP Address:10.0.0.199, IP Address:10.0.0.200, IP Address:10.0.0.201, IP Address:10.0.0.202, IP Address:10.0.0.203, IP Address:10.0.0.204, IP Address:10.0.0.205, IP Address:10.0.0.206, IP Address:10.0.0.207, IP Address:10.0.0.208, IP Address:10.0.0.209, IP Address:10.0.0.210, IP Address:10.0.0.211, IP Address:10.0.0.212, IP Address:10.0.0.213, IP Address:10.0.0.214, IP Address:10.0.0.215, IP Address:10.0.0.216, IP Address:10.0.0.217, IP Address:10.0.0.218, IP Address:10.0.0.219, IP Address:10.0.0.220, IP Address:10.0.0.221, IP Address:10.0.0.222, IP Address:10.0.0.223, IP Address:10.0.0.224, IP Address:10.0.0.225, IP Address:10.0.0.226, IP Address:10.0.0.227, IP Address:10.0.0.228, IP Address:10.0.0.229, IP Address:10.0.0.230, IP Address:10.0.0.231, IP Address:10.0.0.232, IP Address:10.0.0.233, IP Address:10.0.0.234, IP Address:10.0.0.235, IP Address:10.0.0.236, IP Address:10.0.0.237, IP Address:10.0.0.238, IP Address:10.0.0.239, IP Address:10.0.0.240, IP Address:10.0.0.241, IP Address:10.0.0.242, IP Address:10.0.0.243, IP Address:10.0.0.244, IP Address:10.0.0.245, IP Address:10.0.0.246, IP Address:10.0.0.247, IP Address:10.0.0.248, IP Address:10.0.0.249, IP Address:10.0.0.250, IP Address:10.0.0.251, IP Address:10.0.0.252, IP Address:10.0.0.253, IP Address:10.0.0.254, IP Address:10.0.0.255, IP Address:10.0.1.0, IP Address:10.0.1.1, IP Address:10.0.1.2, IP Address:10.0.1.3, IP Address:10.0.1.4, IP Address:10.0.1.5, IP Address:10.0.1.6, IP Address:10.0.1.7, IP Address:10.0.1.8, IP Address:10.0.1.9, IP Address:10.0.1.10, IP Address:10.0.1.11, IP Address:10.0.1.12, IP Address:10.0.1.13, IP Address:10.0.1.14, IP Address:10.0.1.15, IP Address:10.0.1.16, IP Address:10.0.1.17, IP Address:10.0.1.18, IP Address:10.0.1.19, IP Address:10.0.1.20, IP Address:10.0.1.21, IP Address:10.0.1.22, IP Address:10.0.1.23, IP Address:10.0.1.24, IP Address:10.0.1.25, IP Address:10.0.1.26, IP Address:10.0.1.27, IP Address:10.0.1.28, IP Address:10.0.1.29, IP Address:10.0.1.30, IP Address:10.0.1.31, IP Address:10.0.1.32, IP Address:10.0.1.33, IP Address:10.0.1.34, IP Address:10.0.1.35, IP Address:10.0.1.36, IP Address:10.0.1.37, IP Address:10.0.1.38, IP Address:10.0.1.39, IP Address:10.0.1.40, IP Address:10.0.1.41, IP Address:10.0.1.42, IP Address:10.0.1.43, IP Address:10.0.1.44, IP Address:10.0.1.45, IP Address:10.0.1.46, IP Address:10.0.1.47, IP Address:10.0.1.48, IP Address:10.0.1.49, IP Address:10.0.1.50, IP Address:10.0.1.51, IP Address:10.0.1.52, IP Address:10.0.1.53, IP Address:10.0.1.54, IP Address:10.0.1.55, IP Address:10.0.1.56, IP Address:10.0.1.57, IP Address:10.0.1.58, IP Address:10.0.1.59, IP Address:10.0.1.60, IP Address:10.0.1.61, IP Address:10.0.1.62, IP Address:10.0.1.63, IP Address:10.0.1.64, IP Address:10.0.1.65, IP Address:10.0.1.66, IP Address:10.0.1.67, IP Address:10.0.1.68, IP Address:10.0.1.69, IP Address:10.0.1.70, IP Address:10.0.1.71, IP Address:10.0.1.72, IP Address:10.0.1.73, IP Address:10.0.1.74, IP Address:10.0.1.75, IP Address:10.0.1.76, IP Address:10.0.1.77, IP Address:10.0.1.78, IP Address:10.0.1.79, IP Address:10.0.1.80, IP Address:10.0.1.81, IP Address:10.0.1.82, IP Address:10.0.1.83, IP Address:10.0.1.84, IP Address:10.0.1.85, IP Address:10.0.1.86, IP Address:10.0.1.87, IP Address:10.0.1.88, IP Address:10.0.1.89, IP Address:10.0.1.90, IP Address:10.0.1.91, IP Address:10.0.1.92, IP Address:10.0.1.93, IP Address:10.0.1.94, IP Address:10.0.1.95, IP Address:10.0.1.96, IP Address:10.0.1.97, IP Address:10.0.1.98, IP Address:10.0.1.99, IP Address:10.0.1.100, IP Address:10.0.1.101, IP Address:10.0.1.102, IP Address:10.0.1.103, IP Address:10.0.1.104, IP Address:10.0.1.105, IP Address:10.0.1.106, IP Address:10.0.1.107, IP Address:10.0.1.108, IP Address:10.0.1.109, IP Address:10.0.1.110, IP Address:10.0.1.111, IP Address:10.0.1.112, IP Address:10.0.1.113, IP Address:10.0.1.114, IP Address:10.0.1.115, IP Address:10.0.1.116, IP Address:10.0.1.117, IP Address:10.0.1.118, IP Address:10.0.1.119, IP Address:10.0.1.120, IP Address:10.0.1.121, IP Address:10.0.1.122, IP Address:10.0.1.123, IP Address:10.0.1.124, IP Address:10.0.1.125, IP Address:10.0.1.126, IP Address:10.0.1.127, IP Address:10.0.1.128, IP Address:10.0.1.129, IP Address:10.0.1.130, IP Address:10.0.1.131, IP Address:10.0.1.132, IP Address:10.0.1.133, IP Address:10.0.1.134, IP Address:10.0.1.135, IP Address:10.0.1.136, IP Address:10.0.1.137, IP Address:10.0.1.138, IP Address:10.0.1.139, IP Address:10.0.1.140, IP Address:10.0.1.141, IP Address:10.0.1.142, IP Address:10.0.1.143, IP Address:10.0.1.144, IP Address:10.0.1.145, IP Address:10.0.1.146, IP Address:10.0.1.147, IP Address:10.0.1.148, IP Address:10.0.1.149, IP Address:10.0.1.150, IP Address:10.0.1.151, IP Address:10.0.1.152, IP Address:10.0.1.153, IP Address:10.0.1.154, IP Address:10.0.1.155, IP Address:10.0.1.156, IP Address:10.0.1.157, IP Address:10.0.1.158, IP Address:10.0.1.159, IP Address:10.0.1.160, IP Address:10.0.1.161, IP Address:10.0.1.162, IP Address:10.0.1.163, IP Address:10.0.1.164, IP Address:10.0.1.165, IP Address:10.0.1.166, IP Address:10.0.1.167, IP Address:10.0.1.168, IP Address:10.0.1.169, IP Address:10.0.1.170, IP Address:10.0.1.171, IP Address:10.0.1.172, IP Address:10.0.1.173, IP Address:10.0.1.174, IP Address:10.0.1.175, IP Address:10.0.1.176, IP Address:10.0.1.177, IP Address:10.0.1.178, IP Address:10.0.1.179, IP Address:10.0.1.180, IP Address:10.0.1.181, IP Address:10.0.1.182, IP Address:10.0.1.183, IP Address:10.0.1.184, IP Address:10.0.1.185, IP Address:10.0.1.186, IP Address:10.0.1.187, IP Address:10.0.1.188, IP Address:10.0.1.189, IP Address:10.0.1.190, IP Address:10.0.1.191, IP Address:10.0.1.192, IP Address:10.0.1.193, IP Address:10.0.1.194, IP Address:10.0.1.195, IP Address:10.0.1.196, IP Address:10.0.1.197, IP Address:10.0.1.198, IP Address:10.0.1.199, IP Address:10.0.1.200, IP Address:10.0.1.201, IP Address:10.0.1.202, IP Address:10.0.1.203, IP Address:10.0.1.204, IP Address:10.0.1.205, IP Address:10.0.1.206, IP Address:10.0.1.207, IP Address:10.0.1.208, IP Address:10.0.1.209, IP Address:10.0.1.210, IP Address:10.0.1.211, IP Address:10.0.1.212, IP Address:10.0.1.213, IP Address:10.0.1.214, IP Address:10.0.1.215, IP Address:10.0.1.216, IP Address:10.0.1.217, IP Address:10.0.1.218, IP Address:10.0.1.219, IP Address:10.0.1.220, IP Address:10.0.1.221, IP Address:10.0.1.222, IP Address:10.0.1.223, IP Address:10.0.1.224, IP Address:10.0.1.225, IP Address:10.0.1.226, IP Address:10.0.1.227, IP Address:10.0.1.228, IP Address:10.0.1.229, IP Address:10.0.1.230, IP Address:10.0.1.231, IP Address:10.0.1.232, IP Address:10.0.1.233, IP Address:10.0.1.234, IP Address:10.0.1.235, IP Address:10.0.1.236, IP Address:10.0.1.237, IP Address:10.0.1.238, IP Address:10.0.1.239, IP Address:10.0.1.240, IP Address:10.0.1.241, IP Address:10.0.1.242, IP Address:10.0.1.243, IP Address:10.0.1.244, IP Address:10.0.1.245, IP Address:10.0.1.246, IP Address:10.0.1.247, IP Address:10.0.1.248, IP Address:10.0.1.249, IP Address:10.0.1.250, IP Address:10.0.1.251, IP Address:10.0.1.252, IP Address:10.0.1.253, IP Address:10.0.1.254, IP Address:10.0.1.255, IP Address:10.0.2.0, IP Address:10.0.2.1, IP Address:10.0.2.2, IP Address:10.0.2.3, IP Address:10.0.2.4, IP Address:10.0.2.5, IP Address:10.0.2.6, IP Address:10.0.2.7, IP Address:10.0.2.8, IP Address:10.0.2.9, IP Address:10.0.2.10, IP Address:10.0.2.11, IP Address:10.0.2.12, IP Address:10.0.2.13, IP Address:10.0.2.14, IP Address:10.0.2.15, IP Address:10.0.2.16, IP Address:10.0.2.17, IP Address:10.0.2.18, IP Address:10.0.2.19, IP Address:10.0.2.20, IP Address:10.0.2.21, IP Address:10.0.2.22, IP Address:10.0.2.23, IP Address:10.0.2.24, IP Address:10.0.2.25, IP Address:10.0.2.26, IP Address:10.0.2.27, IP Address:10.0.2.28, IP Address:10.0.2.29, IP Address:10.0.2.30, IP Address:10.0.2.31, IP Address:10.0.2.32, IP Address:10.0.2.33, IP Address:10.0.2.34, IP Address:10.0.2.35, IP Address:10.0.2.36, IP Address:10.0.2.37, IP Address:10.0.2.38, IP Address:10.0.2.39, IP Address:10.0.2.40, IP Address:10.0.2.41, IP Address:10.0.2.42, IP Address:10.0.2.43, IP Address:10.0.2.44, IP Address:10.0.2.45, IP Address:10.0.2.46, IP Address:10.0.2.47, IP Address:10.0.2.48, IP Address:10.0.2.49, IP Address:10.0.2.50, IP Address:10.0.2.51, IP Address:10.0.2.52, IP Address:10.0.2.53, IP Address:10.0.2.54, IP Address:10.0.2.55, IP Address:10.0.2.56, IP Address:10.0.2.57, IP Address:10.0.2.58, IP Address:10.0.2.59, IP Address:10.0.2.60, IP Address:10.0.2.61, IP Address:10.0.2.62, IP Address:10.0.2.63, IP Address:10.0.2.64, IP Address:10.0.2.65, IP Address:10.0.2.66, IP Address:10.0.2.67, IP Address:10.0.2.68, IP Address:10.0.2.69, IP Address:10.0.2.70, IP Address:10.0.2.71, IP Address:10.0.2.72, IP Address:10.0.2.73, IP Address:10.0.2.74, IP Address:10.0.2.75, IP Address:10.0.2.76, IP Address:10.0.2.77, IP Address:10.0.2.78, IP Address:10.0.2.79, IP Address:10.0.2.80, IP Address:10.0.2.81, IP Address:10.0.2.82, IP Address:10.0.2.83, IP Address:10.0.2.84, IP Address:10.0.2.85, IP Address:10.0.2.86, IP Address:10.0.2.87, IP Address:10.0.2.88, IP Address:10.0.2.89, IP Address:10.0.2.90, IP Address:10.0.2.91, IP Address:10.0.2.92, IP Address:10.0.2.93, IP Address:10.0.2.94, IP Address:10.0.2.95, IP Address:10.0.2.96, IP Address:10.0.2.97, IP Address:10.0.2.98, IP Address:10.0.2.99, IP Address:10.0.2.100, IP Address:10.0.2.101, IP Address:10.0.2.102, IP Address:10.0.2.103, IP Address:10.0.2.104, IP Address:10.0.2.105, IP Address:10.0.2.106, IP Address:10.0.2.107, IP Address:10.0.2.108, IP Address:10.0.2.109, IP Address:10.0.2.110, IP Address:10.0.2.111, IP Address:10.0.2.112, IP Address:10.0.2.113, IP Address:10.0.2.114, IP Address:10.0.2.115, IP Address:10.0.2.116, IP Address:10.0.2.117, IP Address:10.0.2.118, IP Address:10.0.2.119, IP Address:10.0.2.120, IP Address:10.0.2.121, IP Address:10.0.2.122, IP Address:10.0.2.123, IP Address:10.0.2.124, IP Address:10.0.2.125, IP Address:10.0.2.126, IP Address:10.0.2.127, IP Address:10.0.2.128, IP Address:10.0.2.129, IP Address:10.0.2.130, IP Address:10.0.2.131, IP Address:10.0.2.132, IP Address:10.0.2.133, IP Address:10.0.2.134, IP Address:10.0.2.135, IP Address:10.0.2.136, IP Address:10.0.2.137, IP Address:10.0.2.138, IP Address:10.0.2.139, IP Address:10.0.2.140, IP Address:10.0.2.141, IP Address:10.0.2.142, IP Address:10.0.2.143, IP Address:10.0.2.144, IP Address:10.0.2.145, IP Address:10.0.2.146, IP Address:10.0.2.147, IP Address:10.0.2.148, IP Address:10.0.2.149, IP Address:10.0.2.150, IP Address:10.0.2.151, IP Address:10.0.2.152, IP Address:10.0.2.153, IP Address:10.0.2.154, IP Address:10.0.2.155, IP Address:10.0.2.156, IP Address:10.0.2.157, IP Address:10.0.2.158, IP Address:10.0.2.159, IP Address:10.0.2.160, IP Address:10.0.2.161, IP Address:10.0.2.162, IP Address:10.0.2.163, IP Address:10.0.2.164, IP Address:10.0.2.165, IP Address:10.0.2.166, IP Address:10.0.2.167, IP Address:10.0.2.168, IP Address:10.0.2.169, IP Address:10.0.2.170, IP Address:10.0.2.171, IP Address:10.0.2.172, IP Address:10.0.2.173, IP Address:10.0.2.174, IP Address:10.0.2.175, IP Address:10.0.2.176, IP Address:10.0.2.177, IP Address:10.0.2.178, IP Address:10.0.2.179, IP Address:10.0.2.180, IP Address:10.0.2.181, IP Address:10.0.2.182, IP Address:10.0.2.183, IP Address:10.0.2.184, IP Address:10.0.2.185, IP Address:10.0.2.186, IP Address:10.0.2.187, IP Address:10.0.2.188, IP Address:10.0.2.189, IP Address:10.0.2.190, IP Address:10.0.2.191, IP Address:10.0.2.192, IP Address:10.0.2.193, IP Address:10.0.2.194, IP Address:10.0.2.195, IP Address:10.0.2.196, IP Address:10.0.2.197, IP Address:10.0.2.198, IP Address:10.0.2.199, IP Address:10.0.2.200, IP Address:10.0.2.201, IP Address:10.0.2.202, IP Address:10.0.2.203, IP Address:10.0.2.204, IP Address:10.0.2.205, IP Address:10.0.2.206, IP Address:10.0.2.207, IP Address:10.0.2.208, IP Address:10.0.2.209, IP Address:10.0.2.210, IP Address:10.0.2.211, IP Address:10.0.2.212, IP Address:10.0.2.213, IP Address:10.0.2.214, IP Address:10.0.2.215, IP Address:10.0.2.216, IP Address:10.0.2.217, IP Address:10.0.2.218, IP Address:10.0.2.219, IP Address:10.0.2.220, IP Address:10.0.2.221, IP Address:10.0.2.222, IP Address:10.0.2.223, IP Address:10.0.2.224, IP Address:10.0.2.225, IP Address:10.0.2.226, IP Address:10.0.2.227, IP Address:10.0.2.228, IP Address:10.0.2.229, IP Address:10.0.2.230, IP Address:10.0.2.231, IP Address:10.0.2.232, IP Address:10.0.2.233, IP Address:10.0.2.234, IP Address:10.0.2.235, IP Address:10.0.2.236, IP Address:10.0.2.237, IP Address:10.0.2.238, IP Address:10.0.2.239, IP Address:10.0.2.240, IP Address:10.0.2.241, IP Address:10.0.2.242, IP Address:10.0.2.243, IP Address:10.0.2.244, IP Address:10.0.2.245, IP Address:10.0.2.246, IP Address:10.0.2.247, IP Address:10.0.2.248, IP Address:10.0.2.249, IP Address:10.0.2.250, IP Address:10.0.2.251, IP Address:10.0.2.252, IP Address:10.0.2.253, IP Address:10.0.2.254, IP Address:10.0.2.255, IP Address:10.0.3.0, IP Address:10.0.3.1, IP Address:10.0.3.2, IP Address:10.0.3.3, IP Address:10.0.3.4, IP Address:10.0.3.5, IP Address:10.0.3.6, IP Address:10.0.3.7, IP Address:10.0.3.8, IP Address:10.0.3.9, IP Address:10.0.3.10, IP Address:10.0.3.11, IP Address:10.0.3.12, IP Address:10.0.3.13, IP Address:10.0.3.14, IP Address:10.0.3.15, IP Address:10.0.3.16, IP Address:10.0.3.17, IP Address:10.0.3.18, IP Address:10.0.3.19, IP Address:10.0.3.20, IP Address:10.0.3.21, IP Address:10.0.3.22, IP Address:10.0.3.23, IP Address:10.0.3.24, IP Address:10.0.3.25, IP Address:10.0.3.26, IP Address:10.0.3.27, IP Address:10.0.3.28, IP Address:10.0.3.29, IP Address:10.0.3.30, IP Address:10.0.3.31, IP Address:10.0.3.32, IP Address:10.0.3.33, IP Address:10.0.3.34, IP Address:10.0.3.35, IP Address:10.0.3.36, IP Address:10.0.3.37, IP Address:10.0.3.38, IP Address:10.0.3.39, IP Address:10.0.3.40, IP Address:10.0.3.41, IP Address:10.0.3.42, IP Address:10.0.3.43, IP Address:10.0.3.44, IP Address:10.0.3.45, IP Address:10.0.3.46, IP Address:10.0.3.47, IP Address:10.0.3.48, IP Address:10.0.3.49, IP Address:10.0.3.50, IP Address:10.0.3.51, IP Address:10.0.3.52, IP Address:10.0.3.53, IP Address:10.0.3.54, IP Address:10.0.3.55, IP Address:10.0.3.56, IP Address:10.0.3.57, IP Address:10.0.3.58, IP Address:10.0.3.59, IP Address:10.0.3.60, IP Address:10.0.3.61, IP Address:10.0.3.62, IP Address:10.0.3.63, IP Address:10.0.3.64, IP Address:10.0.3.65, IP Address:10.0.3.66, IP Address:10.0.3.67, IP Address:10.0.3.68, IP Address:10.0.3.69, IP Address:10.0.3.70, IP Address:10.0.3.71, IP Address:10.0.3.72, IP Address:10.0.3.73, IP Address:10.0.3.74, IP Address:10.0.3.75, IP Address:10.0.3.76, IP Address:10.0.3.77, IP Address:10.0.3.78, IP Address:10.0.3.79, IP Address:10.0.3.80, IP Address:10.0.3.81, IP Address:10.0.3.82, IP Address:10.0.3.83, IP Address:10.0.3.84, IP Address:10.0.3.85, IP Address:10.0.3.86, IP Address:10.0.3.87, IP Address:10.0.3.88, IP Address:10.0.3.89, IP Address:10.0.3.90, IP Address:10.0.3.91, IP Address:10.0.3.92, IP Address:10.0.3.93, IP Address:10.0.3.94, IP Address:10.0.3.95, IP Address:10.0.3.96, IP Address:10.0.3.97, IP Address:10.0.3.98, IP Address:10.0.3.99, IP Address:10.0.3.100, IP Address:10.0.3.101, IP Address:10.0.3.102, IP Address:10.0.3.103, IP Address:10.0.3.104, IP Address:10.0.3.105, IP Address:10.0.3.106, IP Address:10.0.3.107, IP Address:10.0.3.108, IP Address:10.0.3.109, IP Address:10.0.3.110, IP Address:10.0.3.111, IP Address:10.0.3.112, IP Address:10.0.3.113, IP Address:10.0.3.114, IP Address:10.0.3.115, IP Address:10.0.3.116, IP Address:10.0.3.117, IP Address:10.0.3.118, IP Address:10.0.3.119, IP Address:10.0.3.120, IP Address:10.0.3.121, IP Address:10.0.3.122, IP Address:10.0.3.123, IP Address:10.0.3.124, IP Address:10.0.3.125, IP Address:10.0.3.126, IP Address:10.0.3.127, IP Address:10.0.3.128, IP Address:10.0.3.129, IP Address:10.0.3.130, IP Address:10.0.3.131, IP Address:10.0.3.132, IP Address:10.0.3.133, IP Address:10.0.3.134, IP Address:10.0.3.135, IP Address:10.0.3.136, IP Address:10.0.3.137, IP Address:10.0.3.138, IP Address:10.0.3.139, IP Address:10.0.3.140, IP Address:10.0.3.141, IP Address:10.0.3.142, IP Address:10.0.3.143, IP Address:10.0.3.144, IP Address:10.0.3.145, IP Address:10.0.3.146, IP Address:10.0.3.147, IP Address:10.0.3.148, IP Address:10.0.3.149, IP Address:10.0.3.150, IP Address:10.0.3.151, IP Address:10.0.3.152, IP Address:10.0.3.153, IP Address:10.0.3.154, IP Address:10.0.3.155, IP Address:10.0.3.156, IP Address:10.0.3.157, IP Address:10.0.3.158, IP Address:10.0.3.159, IP Address:10.0.3.160, IP Address:10.0.3.161, IP Address:10.0.3.162, IP Address:10.0.3.163, IP Address:10.0.3.164, IP Address:10.0.3.165, IP Address:10.0.3.166, IP Address:10.0.3.167, IP Address:10.0.3.168, IP Address:10.0.3.169, IP Address:10.0.3.170, IP Address:10.0.3.171, IP Address:10.0.3.172, IP Address:10.0.3.173, IP Address:10.0.3.174, IP Address:10.0.3.175, IP Address:10.0.3.176, IP Address:10.0.3.177, IP Address:10.0.3.178, IP Address:10.0.3.179, IP Address:10.0.3.180, IP Address:10.0.3.181, IP Address:10.0.3.182, IP Address:10.0.3.183, IP Address:10.0.3.184, IP Address:10.0.3.185, IP Address:10.0.3.186, IP Address:10.0.3.187, IP Address:10.0.3.188, IP Address:10.0.3.189, IP Address:10.0.3.190, IP Address:10.0.3.191, IP Address:10.0.3.192, IP Address:10.0.3.193, IP Address:10.0.3.194, IP Address:10.0.3.195, IP Address:10.0.3.196, IP Address:10.0.3.197, IP Address:10.0.3.198, IP Address:10.0.3.199, IP Address:10.0.3.200, IP Address:10.0.3.201, IP Address:10.0.3.202, IP Address:10.0.3.203, IP Address:10.0.3.204, IP Address:10.0.3.205, IP Address:10.0.3.206, IP Address:10.0.3.207, IP Address:10.0.3.208, IP Address:10.0.3.209, IP Address:10.0.3.210, IP Address:10.0.3.211, IP Address:10.0.3.212, IP Address:10.0.3.213, IP Address:10.0.3.214, IP Address:10.0.3.215, IP Address:10.0.3.216, IP Address:10.0.3.217, IP Address:10.0.3.218, IP Address:10.0.3.219, IP Address:10.0.3.220, IP Address:10.0.3.221, IP Address:10.0.3.222, IP Address:10.0.3.223, IP Address:10.0.3.224, IP Address:10.0.3.225, IP Address:10.0.3.226, IP Address:10.0.3.227, IP Address:10.0.3.228, IP Address:10.0.3.229, IP Address:10.0.3.230, IP Address:10.0.3.231, IP Address:10.0.3.232, IP Address:10.0.3.233, IP Address:10.0.3.234, IP Address:10.0.3.235, IP Address:10.0.3.236, IP Address:10.0.3.237, IP Address:10.0.3.238, IP Address:10.0.3.239, IP Address:10.0.3.240, IP Address:10.0.3.241, IP Address:10.0.3.242, IP Address:10.0.3.243, IP Address:10.0.3.244, IP Address:10.0.3.245, IP Address:10.0.3.246, IP Address:10.0.3.247, IP Address:10.0.3.248, IP Address:10.0.3.249, IP Address:10.0.3.250, IP Address:10.0.3.251, IP Address:10.0.3.252, IP Address:10.0.3.253, IP Address:10.0.3.254, IP Address:10.0.3.255 - Signature Algorithm: sha256WithRSAEncryption - 13:e0:0d:71:4c:e5:af:98:fc:35:e0:79:60:26:93:28:ee:ef: - 83:73:c6:86:03:3d:4a:5c:b6:75:25:14:44:0d:af:bf:0b:ac: - 7a:f1:10:78:65:6d:f3:bc:ff:e2:aa:36:af:37:a4:6f:0c:b3: - c5:78:dc:81:a0:98:2a:d2:1c:b3:04:0f:cb:f7:47:b5:75:a2: - 1d:bc:69:2b:aa:62:ff:59:51:53:5b:f6:38:30:00:fa:2d:15: - 9c:9a:7b:b6:56:d7:f7:bc:1d:87:8b:4d:17:41:81:c0:72:c6: - 13:3e:ea:bc:e1:d9:6a:e2:ac:fa:02:a3:3b:c8:59:be:bb:e7: - 62:8c:86:23:f2:ec:d5:d0:f3:45:69:20:95:a2:c3:f4:40:eb: - 36:44:64:b6:11:9d:f8:51:8a:38:85:ef:f3:e0:3e:93:1c:29: - 80:93:4d:d5:75:8c:33:d1:66:9c:61:4e:eb:a2:9a:61:6e:55: - 13:2b:1c:2b:0a:73:6e:44:fb:87:74:c8:08:df:34:78:18:4b: - 66:42:54:11:ce:c4:88:38:4f:42:36:41:81:28:be:91:7d:ce: - 5c:81:71:0d:26:48:d9:65:cf:00:36:66:3b:88:cb:51:21:f5: - ce:e4:56:4f:10:cf:87:0e:40:2f:d9:b6:fc:0b:ae:e6:86:74: - 5c:bd:a5:aa ------BEGIN CERTIFICATE----- -MIIbrjCCGpagAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY2jANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCGPswghj3MB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwghgNBgNVHREEghgEMIIYAIcE -CgAAAIcECgAAAYcECgAAAocECgAAA4cECgAABIcECgAABYcECgAABocECgAAB4cE -CgAACIcECgAACYcECgAACocECgAAC4cECgAADIcECgAADYcECgAADocECgAAD4cE -CgAAEIcECgAAEYcECgAAEocECgAAE4cECgAAFIcECgAAFYcECgAAFocECgAAF4cE -CgAAGIcECgAAGYcECgAAGocECgAAG4cECgAAHIcECgAAHYcECgAAHocECgAAH4cE -CgAAIIcECgAAIYcECgAAIocECgAAI4cECgAAJIcECgAAJYcECgAAJocECgAAJ4cE -CgAAKIcECgAAKYcECgAAKocECgAAK4cECgAALIcECgAALYcECgAALocECgAAL4cE -CgAAMIcECgAAMYcECgAAMocECgAAM4cECgAANIcECgAANYcECgAANocECgAAN4cE -CgAAOIcECgAAOYcECgAAOocECgAAO4cECgAAPIcECgAAPYcECgAAPocECgAAP4cE -CgAAQIcECgAAQYcECgAAQocECgAAQ4cECgAARIcECgAARYcECgAARocECgAAR4cE -CgAASIcECgAASYcECgAASocECgAAS4cECgAATIcECgAATYcECgAATocECgAAT4cE -CgAAUIcECgAAUYcECgAAUocECgAAU4cECgAAVIcECgAAVYcECgAAVocECgAAV4cE -CgAAWIcECgAAWYcECgAAWocECgAAW4cECgAAXIcECgAAXYcECgAAXocECgAAX4cE -CgAAYIcECgAAYYcECgAAYocECgAAY4cECgAAZIcECgAAZYcECgAAZocECgAAZ4cE -CgAAaIcECgAAaYcECgAAaocECgAAa4cECgAAbIcECgAAbYcECgAAbocECgAAb4cE -CgAAcIcECgAAcYcECgAAcocECgAAc4cECgAAdIcECgAAdYcECgAAdocECgAAd4cE -CgAAeIcECgAAeYcECgAAeocECgAAe4cECgAAfIcECgAAfYcECgAAfocECgAAf4cE -CgAAgIcECgAAgYcECgAAgocECgAAg4cECgAAhIcECgAAhYcECgAAhocECgAAh4cE -CgAAiIcECgAAiYcECgAAiocECgAAi4cECgAAjIcECgAAjYcECgAAjocECgAAj4cE -CgAAkIcECgAAkYcECgAAkocECgAAk4cECgAAlIcECgAAlYcECgAAlocECgAAl4cE -CgAAmIcECgAAmYcECgAAmocECgAAm4cECgAAnIcECgAAnYcECgAAnocECgAAn4cE -CgAAoIcECgAAoYcECgAAoocECgAAo4cECgAApIcECgAApYcECgAApocECgAAp4cE -CgAAqIcECgAAqYcECgAAqocECgAAq4cECgAArIcECgAArYcECgAArocECgAAr4cE -CgAAsIcECgAAsYcECgAAsocECgAAs4cECgAAtIcECgAAtYcECgAAtocECgAAt4cE -CgAAuIcECgAAuYcECgAAuocECgAAu4cECgAAvIcECgAAvYcECgAAvocECgAAv4cE -CgAAwIcECgAAwYcECgAAwocECgAAw4cECgAAxIcECgAAxYcECgAAxocECgAAx4cE -CgAAyIcECgAAyYcECgAAyocECgAAy4cECgAAzIcECgAAzYcECgAAzocECgAAz4cE -CgAA0IcECgAA0YcECgAA0ocECgAA04cECgAA1IcECgAA1YcECgAA1ocECgAA14cE -CgAA2IcECgAA2YcECgAA2ocECgAA24cECgAA3IcECgAA3YcECgAA3ocECgAA34cE -CgAA4IcECgAA4YcECgAA4ocECgAA44cECgAA5IcECgAA5YcECgAA5ocECgAA54cE -CgAA6IcECgAA6YcECgAA6ocECgAA64cECgAA7IcECgAA7YcECgAA7ocECgAA74cE -CgAA8IcECgAA8YcECgAA8ocECgAA84cECgAA9IcECgAA9YcECgAA9ocECgAA94cE -CgAA+IcECgAA+YcECgAA+ocECgAA+4cECgAA/IcECgAA/YcECgAA/ocECgAA/4cE -CgABAIcECgABAYcECgABAocECgABA4cECgABBIcECgABBYcECgABBocECgABB4cE -CgABCIcECgABCYcECgABCocECgABC4cECgABDIcECgABDYcECgABDocECgABD4cE -CgABEIcECgABEYcECgABEocECgABE4cECgABFIcECgABFYcECgABFocECgABF4cE -CgABGIcECgABGYcECgABGocECgABG4cECgABHIcECgABHYcECgABHocECgABH4cE -CgABIIcECgABIYcECgABIocECgABI4cECgABJIcECgABJYcECgABJocECgABJ4cE -CgABKIcECgABKYcECgABKocECgABK4cECgABLIcECgABLYcECgABLocECgABL4cE -CgABMIcECgABMYcECgABMocECgABM4cECgABNIcECgABNYcECgABNocECgABN4cE -CgABOIcECgABOYcECgABOocECgABO4cECgABPIcECgABPYcECgABPocECgABP4cE -CgABQIcECgABQYcECgABQocECgABQ4cECgABRIcECgABRYcECgABRocECgABR4cE -CgABSIcECgABSYcECgABSocECgABS4cECgABTIcECgABTYcECgABTocECgABT4cE -CgABUIcECgABUYcECgABUocECgABU4cECgABVIcECgABVYcECgABVocECgABV4cE -CgABWIcECgABWYcECgABWocECgABW4cECgABXIcECgABXYcECgABXocECgABX4cE -CgABYIcECgABYYcECgABYocECgABY4cECgABZIcECgABZYcECgABZocECgABZ4cE -CgABaIcECgABaYcECgABaocECgABa4cECgABbIcECgABbYcECgABbocECgABb4cE -CgABcIcECgABcYcECgABcocECgABc4cECgABdIcECgABdYcECgABdocECgABd4cE -CgABeIcECgABeYcECgABeocECgABe4cECgABfIcECgABfYcECgABfocECgABf4cE -CgABgIcECgABgYcECgABgocECgABg4cECgABhIcECgABhYcECgABhocECgABh4cE -CgABiIcECgABiYcECgABiocECgABi4cECgABjIcECgABjYcECgABjocECgABj4cE -CgABkIcECgABkYcECgABkocECgABk4cECgABlIcECgABlYcECgABlocECgABl4cE -CgABmIcECgABmYcECgABmocECgABm4cECgABnIcECgABnYcECgABnocECgABn4cE -CgABoIcECgABoYcECgABoocECgABo4cECgABpIcECgABpYcECgABpocECgABp4cE -CgABqIcECgABqYcECgABqocECgABq4cECgABrIcECgABrYcECgABrocECgABr4cE -CgABsIcECgABsYcECgABsocECgABs4cECgABtIcECgABtYcECgABtocECgABt4cE -CgABuIcECgABuYcECgABuocECgABu4cECgABvIcECgABvYcECgABvocECgABv4cE -CgABwIcECgABwYcECgABwocECgABw4cECgABxIcECgABxYcECgABxocECgABx4cE -CgAByIcECgAByYcECgAByocECgABy4cECgABzIcECgABzYcECgABzocECgABz4cE -CgAB0IcECgAB0YcECgAB0ocECgAB04cECgAB1IcECgAB1YcECgAB1ocECgAB14cE -CgAB2IcECgAB2YcECgAB2ocECgAB24cECgAB3IcECgAB3YcECgAB3ocECgAB34cE -CgAB4IcECgAB4YcECgAB4ocECgAB44cECgAB5IcECgAB5YcECgAB5ocECgAB54cE -CgAB6IcECgAB6YcECgAB6ocECgAB64cECgAB7IcECgAB7YcECgAB7ocECgAB74cE -CgAB8IcECgAB8YcECgAB8ocECgAB84cECgAB9IcECgAB9YcECgAB9ocECgAB94cE -CgAB+IcECgAB+YcECgAB+ocECgAB+4cECgAB/IcECgAB/YcECgAB/ocECgAB/4cE -CgACAIcECgACAYcECgACAocECgACA4cECgACBIcECgACBYcECgACBocECgACB4cE -CgACCIcECgACCYcECgACCocECgACC4cECgACDIcECgACDYcECgACDocECgACD4cE -CgACEIcECgACEYcECgACEocECgACE4cECgACFIcECgACFYcECgACFocECgACF4cE -CgACGIcECgACGYcECgACGocECgACG4cECgACHIcECgACHYcECgACHocECgACH4cE -CgACIIcECgACIYcECgACIocECgACI4cECgACJIcECgACJYcECgACJocECgACJ4cE -CgACKIcECgACKYcECgACKocECgACK4cECgACLIcECgACLYcECgACLocECgACL4cE -CgACMIcECgACMYcECgACMocECgACM4cECgACNIcECgACNYcECgACNocECgACN4cE -CgACOIcECgACOYcECgACOocECgACO4cECgACPIcECgACPYcECgACPocECgACP4cE -CgACQIcECgACQYcECgACQocECgACQ4cECgACRIcECgACRYcECgACRocECgACR4cE -CgACSIcECgACSYcECgACSocECgACS4cECgACTIcECgACTYcECgACTocECgACT4cE -CgACUIcECgACUYcECgACUocECgACU4cECgACVIcECgACVYcECgACVocECgACV4cE -CgACWIcECgACWYcECgACWocECgACW4cECgACXIcECgACXYcECgACXocECgACX4cE -CgACYIcECgACYYcECgACYocECgACY4cECgACZIcECgACZYcECgACZocECgACZ4cE -CgACaIcECgACaYcECgACaocECgACa4cECgACbIcECgACbYcECgACbocECgACb4cE -CgACcIcECgACcYcECgACcocECgACc4cECgACdIcECgACdYcECgACdocECgACd4cE -CgACeIcECgACeYcECgACeocECgACe4cECgACfIcECgACfYcECgACfocECgACf4cE -CgACgIcECgACgYcECgACgocECgACg4cECgAChIcECgAChYcECgAChocECgACh4cE -CgACiIcECgACiYcECgACiocECgACi4cECgACjIcECgACjYcECgACjocECgACj4cE -CgACkIcECgACkYcECgACkocECgACk4cECgAClIcECgAClYcECgAClocECgACl4cE -CgACmIcECgACmYcECgACmocECgACm4cECgACnIcECgACnYcECgACnocECgACn4cE -CgACoIcECgACoYcECgACoocECgACo4cECgACpIcECgACpYcECgACpocECgACp4cE -CgACqIcECgACqYcECgACqocECgACq4cECgACrIcECgACrYcECgACrocECgACr4cE -CgACsIcECgACsYcECgACsocECgACs4cECgACtIcECgACtYcECgACtocECgACt4cE -CgACuIcECgACuYcECgACuocECgACu4cECgACvIcECgACvYcECgACvocECgACv4cE -CgACwIcECgACwYcECgACwocECgACw4cECgACxIcECgACxYcECgACxocECgACx4cE -CgACyIcECgACyYcECgACyocECgACy4cECgACzIcECgACzYcECgACzocECgACz4cE -CgAC0IcECgAC0YcECgAC0ocECgAC04cECgAC1IcECgAC1YcECgAC1ocECgAC14cE -CgAC2IcECgAC2YcECgAC2ocECgAC24cECgAC3IcECgAC3YcECgAC3ocECgAC34cE -CgAC4IcECgAC4YcECgAC4ocECgAC44cECgAC5IcECgAC5YcECgAC5ocECgAC54cE -CgAC6IcECgAC6YcECgAC6ocECgAC64cECgAC7IcECgAC7YcECgAC7ocECgAC74cE -CgAC8IcECgAC8YcECgAC8ocECgAC84cECgAC9IcECgAC9YcECgAC9ocECgAC94cE -CgAC+IcECgAC+YcECgAC+ocECgAC+4cECgAC/IcECgAC/YcECgAC/ocECgAC/4cE -CgADAIcECgADAYcECgADAocECgADA4cECgADBIcECgADBYcECgADBocECgADB4cE -CgADCIcECgADCYcECgADCocECgADC4cECgADDIcECgADDYcECgADDocECgADD4cE -CgADEIcECgADEYcECgADEocECgADE4cECgADFIcECgADFYcECgADFocECgADF4cE -CgADGIcECgADGYcECgADGocECgADG4cECgADHIcECgADHYcECgADHocECgADH4cE -CgADIIcECgADIYcECgADIocECgADI4cECgADJIcECgADJYcECgADJocECgADJ4cE -CgADKIcECgADKYcECgADKocECgADK4cECgADLIcECgADLYcECgADLocECgADL4cE -CgADMIcECgADMYcECgADMocECgADM4cECgADNIcECgADNYcECgADNocECgADN4cE -CgADOIcECgADOYcECgADOocECgADO4cECgADPIcECgADPYcECgADPocECgADP4cE -CgADQIcECgADQYcECgADQocECgADQ4cECgADRIcECgADRYcECgADRocECgADR4cE -CgADSIcECgADSYcECgADSocECgADS4cECgADTIcECgADTYcECgADTocECgADT4cE -CgADUIcECgADUYcECgADUocECgADU4cECgADVIcECgADVYcECgADVocECgADV4cE -CgADWIcECgADWYcECgADWocECgADW4cECgADXIcECgADXYcECgADXocECgADX4cE -CgADYIcECgADYYcECgADYocECgADY4cECgADZIcECgADZYcECgADZocECgADZ4cE -CgADaIcECgADaYcECgADaocECgADa4cECgADbIcECgADbYcECgADbocECgADb4cE -CgADcIcECgADcYcECgADcocECgADc4cECgADdIcECgADdYcECgADdocECgADd4cE -CgADeIcECgADeYcECgADeocECgADe4cECgADfIcECgADfYcECgADfocECgADf4cE -CgADgIcECgADgYcECgADgocECgADg4cECgADhIcECgADhYcECgADhocECgADh4cE -CgADiIcECgADiYcECgADiocECgADi4cECgADjIcECgADjYcECgADjocECgADj4cE -CgADkIcECgADkYcECgADkocECgADk4cECgADlIcECgADlYcECgADlocECgADl4cE -CgADmIcECgADmYcECgADmocECgADm4cECgADnIcECgADnYcECgADnocECgADn4cE -CgADoIcECgADoYcECgADoocECgADo4cECgADpIcECgADpYcECgADpocECgADp4cE -CgADqIcECgADqYcECgADqocECgADq4cECgADrIcECgADrYcECgADrocECgADr4cE -CgADsIcECgADsYcECgADsocECgADs4cECgADtIcECgADtYcECgADtocECgADt4cE -CgADuIcECgADuYcECgADuocECgADu4cECgADvIcECgADvYcECgADvocECgADv4cE -CgADwIcECgADwYcECgADwocECgADw4cECgADxIcECgADxYcECgADxocECgADx4cE -CgADyIcECgADyYcECgADyocECgADy4cECgADzIcECgADzYcECgADzocECgADz4cE -CgAD0IcECgAD0YcECgAD0ocECgAD04cECgAD1IcECgAD1YcECgAD1ocECgAD14cE -CgAD2IcECgAD2YcECgAD2ocECgAD24cECgAD3IcECgAD3YcECgAD3ocECgAD34cE -CgAD4IcECgAD4YcECgAD4ocECgAD44cECgAD5IcECgAD5YcECgAD5ocECgAD54cE -CgAD6IcECgAD6YcECgAD6ocECgAD64cECgAD7IcECgAD7YcECgAD7ocECgAD74cE -CgAD8IcECgAD8YcECgAD8ocECgAD84cECgAD9IcECgAD9YcECgAD9ocECgAD94cE -CgAD+IcECgAD+YcECgAD+ocECgAD+4cECgAD/IcECgAD/YcECgAD/ocECgAD/zAN -BgkqhkiG9w0BAQsFAAOCAQEAE+ANcUzlr5j8NeB5YCaTKO7vg3PGhgM9Sly2dSUU -RA2vvwusevEQeGVt87z/4qo2rzekbwyzxXjcgaCYKtIcswQPy/dHtXWiHbxpK6pi -/1lRU1v2ODAA+i0VnJp7tlbX97wdh4tNF0GBwHLGEz7qvOHZauKs+gKjO8hZvrvn -YoyGI/Ls1dDzRWkglaLD9EDrNkRkthGd+FGKOIXv8+A+kxwpgJNN1XWMM9FmnGFO -66KaYW5VEyscKwpzbkT7h3TICN80eBhLZkJUEc7EiDhPQjZBgSi+kX3OXIFxDSZI -2WXPADZmO4jLUSH1zuRWTxDPhw5AL9m2/Auu5oZ0XL2lqg== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8DB.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8DB.pem deleted file mode 100644 index 690368a460..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/2FABB43DDCC077802A0309AD437402BF98D8DB.pem +++ /dev/null @@ -1,496 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:db - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DirName:/CN=t0, DirName:/CN=t1, DirName:/CN=t2, DirName:/CN=t3, DirName:/CN=t4, DirName:/CN=t5, DirName:/CN=t6, DirName:/CN=t7, DirName:/CN=t8, DirName:/CN=t9, DirName:/CN=t10, DirName:/CN=t11, DirName:/CN=t12, DirName:/CN=t13, DirName:/CN=t14, DirName:/CN=t15, DirName:/CN=t16, DirName:/CN=t17, DirName:/CN=t18, DirName:/CN=t19, DirName:/CN=t20, DirName:/CN=t21, DirName:/CN=t22, DirName:/CN=t23, DirName:/CN=t24, DirName:/CN=t25, DirName:/CN=t26, DirName:/CN=t27, DirName:/CN=t28, DirName:/CN=t29, DirName:/CN=t30, DirName:/CN=t31, DirName:/CN=t32, DirName:/CN=t33, DirName:/CN=t34, DirName:/CN=t35, DirName:/CN=t36, DirName:/CN=t37, DirName:/CN=t38, DirName:/CN=t39, DirName:/CN=t40, DirName:/CN=t41, DirName:/CN=t42, DirName:/CN=t43, DirName:/CN=t44, DirName:/CN=t45, DirName:/CN=t46, DirName:/CN=t47, DirName:/CN=t48, DirName:/CN=t49, DirName:/CN=t50, DirName:/CN=t51, DirName:/CN=t52, DirName:/CN=t53, DirName:/CN=t54, DirName:/CN=t55, DirName:/CN=t56, DirName:/CN=t57, DirName:/CN=t58, DirName:/CN=t59, DirName:/CN=t60, DirName:/CN=t61, DirName:/CN=t62, DirName:/CN=t63, DirName:/CN=t64, DirName:/CN=t65, DirName:/CN=t66, DirName:/CN=t67, DirName:/CN=t68, DirName:/CN=t69, DirName:/CN=t70, DirName:/CN=t71, DirName:/CN=t72, DirName:/CN=t73, DirName:/CN=t74, DirName:/CN=t75, DirName:/CN=t76, DirName:/CN=t77, DirName:/CN=t78, DirName:/CN=t79, DirName:/CN=t80, DirName:/CN=t81, DirName:/CN=t82, DirName:/CN=t83, DirName:/CN=t84, DirName:/CN=t85, DirName:/CN=t86, DirName:/CN=t87, DirName:/CN=t88, DirName:/CN=t89, DirName:/CN=t90, DirName:/CN=t91, DirName:/CN=t92, DirName:/CN=t93, DirName:/CN=t94, DirName:/CN=t95, DirName:/CN=t96, DirName:/CN=t97, DirName:/CN=t98, DirName:/CN=t99, DirName:/CN=t100, DirName:/CN=t101, DirName:/CN=t102, DirName:/CN=t103, DirName:/CN=t104, DirName:/CN=t105, DirName:/CN=t106, DirName:/CN=t107, DirName:/CN=t108, DirName:/CN=t109, DirName:/CN=t110, DirName:/CN=t111, DirName:/CN=t112, DirName:/CN=t113, DirName:/CN=t114, DirName:/CN=t115, DirName:/CN=t116, DirName:/CN=t117, DirName:/CN=t118, DirName:/CN=t119, DirName:/CN=t120, DirName:/CN=t121, DirName:/CN=t122, DirName:/CN=t123, DirName:/CN=t124, DirName:/CN=t125, DirName:/CN=t126, DirName:/CN=t127, DirName:/CN=t128, DirName:/CN=t129, DirName:/CN=t130, DirName:/CN=t131, DirName:/CN=t132, DirName:/CN=t133, DirName:/CN=t134, DirName:/CN=t135, DirName:/CN=t136, DirName:/CN=t137, DirName:/CN=t138, DirName:/CN=t139, DirName:/CN=t140, DirName:/CN=t141, DirName:/CN=t142, DirName:/CN=t143, DirName:/CN=t144, DirName:/CN=t145, DirName:/CN=t146, DirName:/CN=t147, DirName:/CN=t148, DirName:/CN=t149, DirName:/CN=t150, DirName:/CN=t151, DirName:/CN=t152, DirName:/CN=t153, DirName:/CN=t154, DirName:/CN=t155, DirName:/CN=t156, DirName:/CN=t157, DirName:/CN=t158, DirName:/CN=t159, DirName:/CN=t160, DirName:/CN=t161, DirName:/CN=t162, DirName:/CN=t163, DirName:/CN=t164, DirName:/CN=t165, DirName:/CN=t166, DirName:/CN=t167, DirName:/CN=t168, DirName:/CN=t169, DirName:/CN=t170, DirName:/CN=t171, DirName:/CN=t172, DirName:/CN=t173, DirName:/CN=t174, DirName:/CN=t175, DirName:/CN=t176, DirName:/CN=t177, DirName:/CN=t178, DirName:/CN=t179, DirName:/CN=t180, DirName:/CN=t181, DirName:/CN=t182, DirName:/CN=t183, DirName:/CN=t184, DirName:/CN=t185, DirName:/CN=t186, DirName:/CN=t187, DirName:/CN=t188, DirName:/CN=t189, DirName:/CN=t190, DirName:/CN=t191, DirName:/CN=t192, DirName:/CN=t193, DirName:/CN=t194, DirName:/CN=t195, DirName:/CN=t196, DirName:/CN=t197, DirName:/CN=t198, DirName:/CN=t199, DirName:/CN=t200, DirName:/CN=t201, DirName:/CN=t202, DirName:/CN=t203, DirName:/CN=t204, DirName:/CN=t205, DirName:/CN=t206, DirName:/CN=t207, DirName:/CN=t208, DirName:/CN=t209, DirName:/CN=t210, DirName:/CN=t211, DirName:/CN=t212, DirName:/CN=t213, DirName:/CN=t214, DirName:/CN=t215, DirName:/CN=t216, DirName:/CN=t217, DirName:/CN=t218, DirName:/CN=t219, DirName:/CN=t220, DirName:/CN=t221, DirName:/CN=t222, DirName:/CN=t223, DirName:/CN=t224, DirName:/CN=t225, DirName:/CN=t226, DirName:/CN=t227, DirName:/CN=t228, DirName:/CN=t229, DirName:/CN=t230, DirName:/CN=t231, DirName:/CN=t232, DirName:/CN=t233, DirName:/CN=t234, DirName:/CN=t235, DirName:/CN=t236, DirName:/CN=t237, DirName:/CN=t238, DirName:/CN=t239, DirName:/CN=t240, DirName:/CN=t241, DirName:/CN=t242, DirName:/CN=t243, DirName:/CN=t244, DirName:/CN=t245, DirName:/CN=t246, DirName:/CN=t247, DirName:/CN=t248, DirName:/CN=t249, DirName:/CN=t250, DirName:/CN=t251, DirName:/CN=t252, DirName:/CN=t253, DirName:/CN=t254, DirName:/CN=t255, DirName:/CN=t256, DirName:/CN=t257, DirName:/CN=t258, DirName:/CN=t259, DirName:/CN=t260, DirName:/CN=t261, DirName:/CN=t262, DirName:/CN=t263, DirName:/CN=t264, DirName:/CN=t265, DirName:/CN=t266, DirName:/CN=t267, DirName:/CN=t268, DirName:/CN=t269, DirName:/CN=t270, DirName:/CN=t271, DirName:/CN=t272, DirName:/CN=t273, DirName:/CN=t274, DirName:/CN=t275, DirName:/CN=t276, DirName:/CN=t277, DirName:/CN=t278, DirName:/CN=t279, DirName:/CN=t280, DirName:/CN=t281, DirName:/CN=t282, DirName:/CN=t283, DirName:/CN=t284, DirName:/CN=t285, DirName:/CN=t286, DirName:/CN=t287, DirName:/CN=t288, DirName:/CN=t289, DirName:/CN=t290, DirName:/CN=t291, DirName:/CN=t292, DirName:/CN=t293, DirName:/CN=t294, DirName:/CN=t295, DirName:/CN=t296, DirName:/CN=t297, DirName:/CN=t298, DirName:/CN=t299, DirName:/CN=t300, DirName:/CN=t301, DirName:/CN=t302, DirName:/CN=t303, DirName:/CN=t304, DirName:/CN=t305, DirName:/CN=t306, DirName:/CN=t307, DirName:/CN=t308, DirName:/CN=t309, DirName:/CN=t310, DirName:/CN=t311, DirName:/CN=t312, DirName:/CN=t313, DirName:/CN=t314, DirName:/CN=t315, DirName:/CN=t316, DirName:/CN=t317, DirName:/CN=t318, DirName:/CN=t319, DirName:/CN=t320, DirName:/CN=t321, DirName:/CN=t322, DirName:/CN=t323, DirName:/CN=t324, DirName:/CN=t325, DirName:/CN=t326, DirName:/CN=t327, DirName:/CN=t328, DirName:/CN=t329, DirName:/CN=t330, DirName:/CN=t331, DirName:/CN=t332, DirName:/CN=t333, DirName:/CN=t334, DirName:/CN=t335, DirName:/CN=t336, DirName:/CN=t337, DirName:/CN=t338, DirName:/CN=t339, DirName:/CN=t340, DirName:/CN=t341, DirName:/CN=t342, DirName:/CN=t343, DirName:/CN=t344, DirName:/CN=t345, DirName:/CN=t346, DirName:/CN=t347, DirName:/CN=t348, DirName:/CN=t349, DirName:/CN=t350, DirName:/CN=t351, DirName:/CN=t352, DirName:/CN=t353, DirName:/CN=t354, DirName:/CN=t355, DirName:/CN=t356, DirName:/CN=t357, DirName:/CN=t358, DirName:/CN=t359, DirName:/CN=t360, DirName:/CN=t361, DirName:/CN=t362, DirName:/CN=t363, DirName:/CN=t364, DirName:/CN=t365, DirName:/CN=t366, DirName:/CN=t367, DirName:/CN=t368, DirName:/CN=t369, DirName:/CN=t370, DirName:/CN=t371, DirName:/CN=t372, DirName:/CN=t373, DirName:/CN=t374, DirName:/CN=t375, DirName:/CN=t376, DirName:/CN=t377, DirName:/CN=t378, DirName:/CN=t379, DirName:/CN=t380, DirName:/CN=t381, DirName:/CN=t382, DirName:/CN=t383, DirName:/CN=t384, DirName:/CN=t385, DirName:/CN=t386, DirName:/CN=t387, DirName:/CN=t388, DirName:/CN=t389, DirName:/CN=t390, DirName:/CN=t391, DirName:/CN=t392, DirName:/CN=t393, DirName:/CN=t394, DirName:/CN=t395, DirName:/CN=t396, DirName:/CN=t397, DirName:/CN=t398, DirName:/CN=t399, DirName:/CN=t400, DirName:/CN=t401, DirName:/CN=t402, DirName:/CN=t403, DirName:/CN=t404, DirName:/CN=t405, DirName:/CN=t406, DirName:/CN=t407, DirName:/CN=t408, DirName:/CN=t409, DirName:/CN=t410, DirName:/CN=t411, DirName:/CN=t412, DirName:/CN=t413, DirName:/CN=t414, DirName:/CN=t415, DirName:/CN=t416, DirName:/CN=t417, DirName:/CN=t418, DirName:/CN=t419, DirName:/CN=t420, DirName:/CN=t421, DirName:/CN=t422, DirName:/CN=t423, DirName:/CN=t424, DirName:/CN=t425, DirName:/CN=t426, DirName:/CN=t427, DirName:/CN=t428, DirName:/CN=t429, DirName:/CN=t430, DirName:/CN=t431, DirName:/CN=t432, DirName:/CN=t433, DirName:/CN=t434, DirName:/CN=t435, DirName:/CN=t436, DirName:/CN=t437, DirName:/CN=t438, DirName:/CN=t439, DirName:/CN=t440, DirName:/CN=t441, DirName:/CN=t442, DirName:/CN=t443, DirName:/CN=t444, DirName:/CN=t445, DirName:/CN=t446, DirName:/CN=t447, DirName:/CN=t448, DirName:/CN=t449, DirName:/CN=t450, DirName:/CN=t451, DirName:/CN=t452, DirName:/CN=t453, DirName:/CN=t454, DirName:/CN=t455, DirName:/CN=t456, DirName:/CN=t457, DirName:/CN=t458, DirName:/CN=t459, DirName:/CN=t460, DirName:/CN=t461, DirName:/CN=t462, DirName:/CN=t463, DirName:/CN=t464, DirName:/CN=t465, DirName:/CN=t466, DirName:/CN=t467, DirName:/CN=t468, DirName:/CN=t469, DirName:/CN=t470, DirName:/CN=t471, DirName:/CN=t472, DirName:/CN=t473, DirName:/CN=t474, DirName:/CN=t475, DirName:/CN=t476, DirName:/CN=t477, DirName:/CN=t478, DirName:/CN=t479, DirName:/CN=t480, DirName:/CN=t481, DirName:/CN=t482, DirName:/CN=t483, DirName:/CN=t484, DirName:/CN=t485, DirName:/CN=t486, DirName:/CN=t487, DirName:/CN=t488, DirName:/CN=t489, DirName:/CN=t490, DirName:/CN=t491, DirName:/CN=t492, DirName:/CN=t493, DirName:/CN=t494, DirName:/CN=t495, DirName:/CN=t496, DirName:/CN=t497, DirName:/CN=t498, DirName:/CN=t499, DirName:/CN=t500, DirName:/CN=t501, DirName:/CN=t502, DirName:/CN=t503, DirName:/CN=t504, DirName:/CN=t505, DirName:/CN=t506, DirName:/CN=t507, DirName:/CN=t508, DirName:/CN=t509, DirName:/CN=t510, DirName:/CN=t511, DirName:/CN=t512, DirName:/CN=t513, DirName:/CN=t514, DirName:/CN=t515, DirName:/CN=t516, DirName:/CN=t517, DirName:/CN=t518, DirName:/CN=t519, DirName:/CN=t520, DirName:/CN=t521, DirName:/CN=t522, DirName:/CN=t523, DirName:/CN=t524, DirName:/CN=t525, DirName:/CN=t526, DirName:/CN=t527, DirName:/CN=t528, DirName:/CN=t529, DirName:/CN=t530, DirName:/CN=t531, DirName:/CN=t532, DirName:/CN=t533, DirName:/CN=t534, DirName:/CN=t535, DirName:/CN=t536, DirName:/CN=t537, DirName:/CN=t538, DirName:/CN=t539, DirName:/CN=t540, DirName:/CN=t541, DirName:/CN=t542, DirName:/CN=t543, DirName:/CN=t544, DirName:/CN=t545, DirName:/CN=t546, DirName:/CN=t547, DirName:/CN=t548, DirName:/CN=t549, DirName:/CN=t550, DirName:/CN=t551, DirName:/CN=t552, DirName:/CN=t553, DirName:/CN=t554, DirName:/CN=t555, DirName:/CN=t556, DirName:/CN=t557, DirName:/CN=t558, DirName:/CN=t559, DirName:/CN=t560, DirName:/CN=t561, DirName:/CN=t562, DirName:/CN=t563, DirName:/CN=t564, DirName:/CN=t565, DirName:/CN=t566, DirName:/CN=t567, DirName:/CN=t568, DirName:/CN=t569, DirName:/CN=t570, DirName:/CN=t571, DirName:/CN=t572, DirName:/CN=t573, DirName:/CN=t574, DirName:/CN=t575, DirName:/CN=t576, DirName:/CN=t577, DirName:/CN=t578, DirName:/CN=t579, DirName:/CN=t580, DirName:/CN=t581, DirName:/CN=t582, DirName:/CN=t583, DirName:/CN=t584, DirName:/CN=t585, DirName:/CN=t586, DirName:/CN=t587, DirName:/CN=t588, DirName:/CN=t589, DirName:/CN=t590, DirName:/CN=t591, DirName:/CN=t592, DirName:/CN=t593, DirName:/CN=t594, DirName:/CN=t595, DirName:/CN=t596, DirName:/CN=t597, DirName:/CN=t598, DirName:/CN=t599, DirName:/CN=t600, DirName:/CN=t601, DirName:/CN=t602, DirName:/CN=t603, DirName:/CN=t604, DirName:/CN=t605, DirName:/CN=t606, DirName:/CN=t607, DirName:/CN=t608, DirName:/CN=t609, DirName:/CN=t610, DirName:/CN=t611, DirName:/CN=t612, DirName:/CN=t613, DirName:/CN=t614, DirName:/CN=t615, DirName:/CN=t616, DirName:/CN=t617, DirName:/CN=t618, DirName:/CN=t619, DirName:/CN=t620, DirName:/CN=t621, DirName:/CN=t622, DirName:/CN=t623, DirName:/CN=t624, DirName:/CN=t625, DirName:/CN=t626, DirName:/CN=t627, DirName:/CN=t628, DirName:/CN=t629, DirName:/CN=t630, DirName:/CN=t631, DirName:/CN=t632, DirName:/CN=t633, DirName:/CN=t634, DirName:/CN=t635, DirName:/CN=t636, DirName:/CN=t637, DirName:/CN=t638, DirName:/CN=t639, DirName:/CN=t640, DirName:/CN=t641, DirName:/CN=t642, DirName:/CN=t643, DirName:/CN=t644, DirName:/CN=t645, DirName:/CN=t646, DirName:/CN=t647, DirName:/CN=t648, DirName:/CN=t649, DirName:/CN=t650, DirName:/CN=t651, DirName:/CN=t652, DirName:/CN=t653, DirName:/CN=t654, DirName:/CN=t655, DirName:/CN=t656, DirName:/CN=t657, DirName:/CN=t658, DirName:/CN=t659, DirName:/CN=t660, DirName:/CN=t661, DirName:/CN=t662, DirName:/CN=t663, DirName:/CN=t664, DirName:/CN=t665, DirName:/CN=t666, DirName:/CN=t667, DirName:/CN=t668, DirName:/CN=t669, DirName:/CN=t670, DirName:/CN=t671, DirName:/CN=t672, DirName:/CN=t673, DirName:/CN=t674, DirName:/CN=t675, DirName:/CN=t676, DirName:/CN=t677, DirName:/CN=t678, DirName:/CN=t679, DirName:/CN=t680, DirName:/CN=t681, DirName:/CN=t682, DirName:/CN=t683, DirName:/CN=t684, DirName:/CN=t685, DirName:/CN=t686, DirName:/CN=t687, DirName:/CN=t688, DirName:/CN=t689, DirName:/CN=t690, DirName:/CN=t691, DirName:/CN=t692, DirName:/CN=t693, DirName:/CN=t694, DirName:/CN=t695, DirName:/CN=t696, DirName:/CN=t697, DirName:/CN=t698, DirName:/CN=t699, DirName:/CN=t700, DirName:/CN=t701, DirName:/CN=t702, DirName:/CN=t703, DirName:/CN=t704, DirName:/CN=t705, DirName:/CN=t706, DirName:/CN=t707, DirName:/CN=t708, DirName:/CN=t709, DirName:/CN=t710, DirName:/CN=t711, DirName:/CN=t712, DirName:/CN=t713, DirName:/CN=t714, DirName:/CN=t715, DirName:/CN=t716, DirName:/CN=t717, DirName:/CN=t718, DirName:/CN=t719, DirName:/CN=t720, DirName:/CN=t721, DirName:/CN=t722, DirName:/CN=t723, DirName:/CN=t724, DirName:/CN=t725, DirName:/CN=t726, DirName:/CN=t727, DirName:/CN=t728, DirName:/CN=t729, DirName:/CN=t730, DirName:/CN=t731, DirName:/CN=t732, DirName:/CN=t733, DirName:/CN=t734, DirName:/CN=t735, DirName:/CN=t736, DirName:/CN=t737, DirName:/CN=t738, DirName:/CN=t739, DirName:/CN=t740, DirName:/CN=t741, DirName:/CN=t742, DirName:/CN=t743, DirName:/CN=t744, DirName:/CN=t745, DirName:/CN=t746, DirName:/CN=t747, DirName:/CN=t748, DirName:/CN=t749, DirName:/CN=t750, DirName:/CN=t751, DirName:/CN=t752, DirName:/CN=t753, DirName:/CN=t754, DirName:/CN=t755, DirName:/CN=t756, DirName:/CN=t757, DirName:/CN=t758, DirName:/CN=t759, DirName:/CN=t760, DirName:/CN=t761, DirName:/CN=t762, DirName:/CN=t763, DirName:/CN=t764, DirName:/CN=t765, DirName:/CN=t766, DirName:/CN=t767, DirName:/CN=t768, DirName:/CN=t769, DirName:/CN=t770, DirName:/CN=t771, DirName:/CN=t772, DirName:/CN=t773, DirName:/CN=t774, DirName:/CN=t775, DirName:/CN=t776, DirName:/CN=t777, DirName:/CN=t778, DirName:/CN=t779, DirName:/CN=t780, DirName:/CN=t781, DirName:/CN=t782, DirName:/CN=t783, DirName:/CN=t784, DirName:/CN=t785, DirName:/CN=t786, DirName:/CN=t787, DirName:/CN=t788, DirName:/CN=t789, DirName:/CN=t790, DirName:/CN=t791, DirName:/CN=t792, DirName:/CN=t793, DirName:/CN=t794, DirName:/CN=t795, DirName:/CN=t796, DirName:/CN=t797, DirName:/CN=t798, DirName:/CN=t799, DirName:/CN=t800, DirName:/CN=t801, DirName:/CN=t802, DirName:/CN=t803, DirName:/CN=t804, DirName:/CN=t805, DirName:/CN=t806, DirName:/CN=t807, DirName:/CN=t808, DirName:/CN=t809, DirName:/CN=t810, DirName:/CN=t811, DirName:/CN=t812, DirName:/CN=t813, DirName:/CN=t814, DirName:/CN=t815, DirName:/CN=t816, DirName:/CN=t817, DirName:/CN=t818, DirName:/CN=t819, DirName:/CN=t820, DirName:/CN=t821, DirName:/CN=t822, DirName:/CN=t823, DirName:/CN=t824, DirName:/CN=t825, DirName:/CN=t826, DirName:/CN=t827, DirName:/CN=t828, DirName:/CN=t829, DirName:/CN=t830, DirName:/CN=t831, DirName:/CN=t832, DirName:/CN=t833, DirName:/CN=t834, DirName:/CN=t835, DirName:/CN=t836, DirName:/CN=t837, DirName:/CN=t838, DirName:/CN=t839, DirName:/CN=t840, DirName:/CN=t841, DirName:/CN=t842, DirName:/CN=t843, DirName:/CN=t844, DirName:/CN=t845, DirName:/CN=t846, DirName:/CN=t847, DirName:/CN=t848, DirName:/CN=t849, DirName:/CN=t850, DirName:/CN=t851, DirName:/CN=t852, DirName:/CN=t853, DirName:/CN=t854, DirName:/CN=t855, DirName:/CN=t856, DirName:/CN=t857, DirName:/CN=t858, DirName:/CN=t859, DirName:/CN=t860, DirName:/CN=t861, DirName:/CN=t862, DirName:/CN=t863, DirName:/CN=t864, DirName:/CN=t865, DirName:/CN=t866, DirName:/CN=t867, DirName:/CN=t868, DirName:/CN=t869, DirName:/CN=t870, DirName:/CN=t871, DirName:/CN=t872, DirName:/CN=t873, DirName:/CN=t874, DirName:/CN=t875, DirName:/CN=t876, DirName:/CN=t877, DirName:/CN=t878, DirName:/CN=t879, DirName:/CN=t880, DirName:/CN=t881, DirName:/CN=t882, DirName:/CN=t883, DirName:/CN=t884, DirName:/CN=t885, DirName:/CN=t886, DirName:/CN=t887, DirName:/CN=t888, DirName:/CN=t889, DirName:/CN=t890, DirName:/CN=t891, DirName:/CN=t892, DirName:/CN=t893, DirName:/CN=t894, DirName:/CN=t895, DirName:/CN=t896, DirName:/CN=t897, DirName:/CN=t898, DirName:/CN=t899, DirName:/CN=t900, DirName:/CN=t901, DirName:/CN=t902, DirName:/CN=t903, DirName:/CN=t904, DirName:/CN=t905, DirName:/CN=t906, DirName:/CN=t907, DirName:/CN=t908, DirName:/CN=t909, DirName:/CN=t910, DirName:/CN=t911, DirName:/CN=t912, DirName:/CN=t913, DirName:/CN=t914, DirName:/CN=t915, DirName:/CN=t916, DirName:/CN=t917, DirName:/CN=t918, DirName:/CN=t919, DirName:/CN=t920, DirName:/CN=t921, DirName:/CN=t922, DirName:/CN=t923, DirName:/CN=t924, DirName:/CN=t925, DirName:/CN=t926, DirName:/CN=t927, DirName:/CN=t928, DirName:/CN=t929, DirName:/CN=t930, DirName:/CN=t931, DirName:/CN=t932, DirName:/CN=t933, DirName:/CN=t934, DirName:/CN=t935, DirName:/CN=t936, DirName:/CN=t937, DirName:/CN=t938, DirName:/CN=t939, DirName:/CN=t940, DirName:/CN=t941, DirName:/CN=t942, DirName:/CN=t943, DirName:/CN=t944, DirName:/CN=t945, DirName:/CN=t946, DirName:/CN=t947, DirName:/CN=t948, DirName:/CN=t949, DirName:/CN=t950, DirName:/CN=t951, DirName:/CN=t952, DirName:/CN=t953, DirName:/CN=t954, DirName:/CN=t955, DirName:/CN=t956, DirName:/CN=t957, DirName:/CN=t958, DirName:/CN=t959, DirName:/CN=t960, DirName:/CN=t961, DirName:/CN=t962, DirName:/CN=t963, DirName:/CN=t964, DirName:/CN=t965, DirName:/CN=t966, DirName:/CN=t967, DirName:/CN=t968, DirName:/CN=t969, DirName:/CN=t970, DirName:/CN=t971, DirName:/CN=t972, DirName:/CN=t973, DirName:/CN=t974, DirName:/CN=t975, DirName:/CN=t976, DirName:/CN=t977, DirName:/CN=t978, DirName:/CN=t979, DirName:/CN=t980, DirName:/CN=t981, DirName:/CN=t982, DirName:/CN=t983, DirName:/CN=t984, DirName:/CN=t985, DirName:/CN=t986, DirName:/CN=t987, DirName:/CN=t988, DirName:/CN=t989, DirName:/CN=t990, DirName:/CN=t991, DirName:/CN=t992, DirName:/CN=t993, DirName:/CN=t994, DirName:/CN=t995, DirName:/CN=t996, DirName:/CN=t997, DirName:/CN=t998, DirName:/CN=t999, DirName:/CN=t1000, DirName:/CN=t1001, DirName:/CN=t1002, DirName:/CN=t1003, DirName:/CN=t1004, DirName:/CN=t1005, DirName:/CN=t1006, DirName:/CN=t1007, DirName:/CN=t1008, DirName:/CN=t1009, DirName:/CN=t1010, DirName:/CN=t1011, DirName:/CN=t1012, DirName:/CN=t1013, DirName:/CN=t1014, DirName:/CN=t1015, DirName:/CN=t1016, DirName:/CN=t1017, DirName:/CN=t1018, DirName:/CN=t1019, DirName:/CN=t1020, DirName:/CN=t1021, DirName:/CN=t1022, DirName:/CN=t1023 - Signature Algorithm: sha256WithRSAEncryption - 77:af:27:9b:23:82:9d:90:b4:3c:02:1f:d4:a9:c8:0c:7f:58: - 19:ae:9a:86:fe:f5:b1:a4:ae:cb:af:46:3a:04:ff:3c:cf:ea: - 6b:df:16:cb:d1:89:8d:8c:a7:f9:11:e7:e9:90:92:6b:54:d5: - fa:aa:24:96:63:61:57:4a:81:da:7e:0b:2e:c8:04:34:6a:dd: - 6e:46:27:97:5a:9d:db:8c:2d:e8:5a:45:11:bf:7d:1a:25:7a: - ca:9e:b1:e3:1c:53:22:0b:37:b6:fa:d6:1e:83:6d:54:40:4d: - 71:b3:e3:52:dc:84:d1:95:fc:92:e4:f0:85:ce:6d:4e:36:a6: - 6c:b4:35:7e:0e:e8:b6:8b:09:b0:c8:4e:f1:b8:aa:fe:e8:28: - ba:8e:a3:31:ef:99:bd:da:9e:cb:5a:02:95:24:45:41:3c:ed: - 7a:92:94:bd:9d:fd:7e:07:51:8c:55:97:07:53:60:b4:dd:64: - 02:6c:2b:18:32:8d:df:ed:89:4a:dd:37:32:cb:66:9a:fa:b8: - e8:3d:87:8f:63:6a:3f:6f:2c:91:25:b3:85:71:0a:39:aa:24: - a5:8e:7b:c2:57:86:ed:3b:e7:33:6d:e9:a4:c1:cd:88:8b:0e: - c8:06:63:9b:40:40:2a:3c:b2:96:12:2d:1c:53:fe:83:ec:4a: - 50:be:c6:53 ------BEGIN CERTIFICATE----- -MIJPWDCCTkCgAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY2zANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCTKUwgkyhMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgku3BgNVHREEgkuuMIJLqqQP -MA0xCzAJBgNVBAMMAnQwpA8wDTELMAkGA1UEAwwCdDGkDzANMQswCQYDVQQDDAJ0 -MqQPMA0xCzAJBgNVBAMMAnQzpA8wDTELMAkGA1UEAwwCdDSkDzANMQswCQYDVQQD -DAJ0NaQPMA0xCzAJBgNVBAMMAnQ2pA8wDTELMAkGA1UEAwwCdDekDzANMQswCQYD -VQQDDAJ0OKQPMA0xCzAJBgNVBAMMAnQ5pBAwDjEMMAoGA1UEAwwDdDEwpBAwDjEM -MAoGA1UEAwwDdDExpBAwDjEMMAoGA1UEAwwDdDEypBAwDjEMMAoGA1UEAwwDdDEz -pBAwDjEMMAoGA1UEAwwDdDE0pBAwDjEMMAoGA1UEAwwDdDE1pBAwDjEMMAoGA1UE -AwwDdDE2pBAwDjEMMAoGA1UEAwwDdDE3pBAwDjEMMAoGA1UEAwwDdDE4pBAwDjEM -MAoGA1UEAwwDdDE5pBAwDjEMMAoGA1UEAwwDdDIwpBAwDjEMMAoGA1UEAwwDdDIx -pBAwDjEMMAoGA1UEAwwDdDIypBAwDjEMMAoGA1UEAwwDdDIzpBAwDjEMMAoGA1UE -AwwDdDI0pBAwDjEMMAoGA1UEAwwDdDI1pBAwDjEMMAoGA1UEAwwDdDI2pBAwDjEM -MAoGA1UEAwwDdDI3pBAwDjEMMAoGA1UEAwwDdDI4pBAwDjEMMAoGA1UEAwwDdDI5 -pBAwDjEMMAoGA1UEAwwDdDMwpBAwDjEMMAoGA1UEAwwDdDMxpBAwDjEMMAoGA1UE -AwwDdDMypBAwDjEMMAoGA1UEAwwDdDMzpBAwDjEMMAoGA1UEAwwDdDM0pBAwDjEM -MAoGA1UEAwwDdDM1pBAwDjEMMAoGA1UEAwwDdDM2pBAwDjEMMAoGA1UEAwwDdDM3 -pBAwDjEMMAoGA1UEAwwDdDM4pBAwDjEMMAoGA1UEAwwDdDM5pBAwDjEMMAoGA1UE -AwwDdDQwpBAwDjEMMAoGA1UEAwwDdDQxpBAwDjEMMAoGA1UEAwwDdDQypBAwDjEM -MAoGA1UEAwwDdDQzpBAwDjEMMAoGA1UEAwwDdDQ0pBAwDjEMMAoGA1UEAwwDdDQ1 -pBAwDjEMMAoGA1UEAwwDdDQ2pBAwDjEMMAoGA1UEAwwDdDQ3pBAwDjEMMAoGA1UE -AwwDdDQ4pBAwDjEMMAoGA1UEAwwDdDQ5pBAwDjEMMAoGA1UEAwwDdDUwpBAwDjEM -MAoGA1UEAwwDdDUxpBAwDjEMMAoGA1UEAwwDdDUypBAwDjEMMAoGA1UEAwwDdDUz -pBAwDjEMMAoGA1UEAwwDdDU0pBAwDjEMMAoGA1UEAwwDdDU1pBAwDjEMMAoGA1UE -AwwDdDU2pBAwDjEMMAoGA1UEAwwDdDU3pBAwDjEMMAoGA1UEAwwDdDU4pBAwDjEM -MAoGA1UEAwwDdDU5pBAwDjEMMAoGA1UEAwwDdDYwpBAwDjEMMAoGA1UEAwwDdDYx -pBAwDjEMMAoGA1UEAwwDdDYypBAwDjEMMAoGA1UEAwwDdDYzpBAwDjEMMAoGA1UE -AwwDdDY0pBAwDjEMMAoGA1UEAwwDdDY1pBAwDjEMMAoGA1UEAwwDdDY2pBAwDjEM -MAoGA1UEAwwDdDY3pBAwDjEMMAoGA1UEAwwDdDY4pBAwDjEMMAoGA1UEAwwDdDY5 -pBAwDjEMMAoGA1UEAwwDdDcwpBAwDjEMMAoGA1UEAwwDdDcxpBAwDjEMMAoGA1UE -AwwDdDcypBAwDjEMMAoGA1UEAwwDdDczpBAwDjEMMAoGA1UEAwwDdDc0pBAwDjEM -MAoGA1UEAwwDdDc1pBAwDjEMMAoGA1UEAwwDdDc2pBAwDjEMMAoGA1UEAwwDdDc3 -pBAwDjEMMAoGA1UEAwwDdDc4pBAwDjEMMAoGA1UEAwwDdDc5pBAwDjEMMAoGA1UE -AwwDdDgwpBAwDjEMMAoGA1UEAwwDdDgxpBAwDjEMMAoGA1UEAwwDdDgypBAwDjEM -MAoGA1UEAwwDdDgzpBAwDjEMMAoGA1UEAwwDdDg0pBAwDjEMMAoGA1UEAwwDdDg1 -pBAwDjEMMAoGA1UEAwwDdDg2pBAwDjEMMAoGA1UEAwwDdDg3pBAwDjEMMAoGA1UE -AwwDdDg4pBAwDjEMMAoGA1UEAwwDdDg5pBAwDjEMMAoGA1UEAwwDdDkwpBAwDjEM -MAoGA1UEAwwDdDkxpBAwDjEMMAoGA1UEAwwDdDkypBAwDjEMMAoGA1UEAwwDdDkz -pBAwDjEMMAoGA1UEAwwDdDk0pBAwDjEMMAoGA1UEAwwDdDk1pBAwDjEMMAoGA1UE -AwwDdDk2pBAwDjEMMAoGA1UEAwwDdDk3pBAwDjEMMAoGA1UEAwwDdDk4pBAwDjEM -MAoGA1UEAwwDdDk5pBEwDzENMAsGA1UEAwwEdDEwMKQRMA8xDTALBgNVBAMMBHQx -MDGkETAPMQ0wCwYDVQQDDAR0MTAypBEwDzENMAsGA1UEAwwEdDEwM6QRMA8xDTAL -BgNVBAMMBHQxMDSkETAPMQ0wCwYDVQQDDAR0MTA1pBEwDzENMAsGA1UEAwwEdDEw -NqQRMA8xDTALBgNVBAMMBHQxMDekETAPMQ0wCwYDVQQDDAR0MTA4pBEwDzENMAsG -A1UEAwwEdDEwOaQRMA8xDTALBgNVBAMMBHQxMTCkETAPMQ0wCwYDVQQDDAR0MTEx -pBEwDzENMAsGA1UEAwwEdDExMqQRMA8xDTALBgNVBAMMBHQxMTOkETAPMQ0wCwYD -VQQDDAR0MTE0pBEwDzENMAsGA1UEAwwEdDExNaQRMA8xDTALBgNVBAMMBHQxMTak -ETAPMQ0wCwYDVQQDDAR0MTE3pBEwDzENMAsGA1UEAwwEdDExOKQRMA8xDTALBgNV -BAMMBHQxMTmkETAPMQ0wCwYDVQQDDAR0MTIwpBEwDzENMAsGA1UEAwwEdDEyMaQR -MA8xDTALBgNVBAMMBHQxMjKkETAPMQ0wCwYDVQQDDAR0MTIzpBEwDzENMAsGA1UE -AwwEdDEyNKQRMA8xDTALBgNVBAMMBHQxMjWkETAPMQ0wCwYDVQQDDAR0MTI2pBEw -DzENMAsGA1UEAwwEdDEyN6QRMA8xDTALBgNVBAMMBHQxMjikETAPMQ0wCwYDVQQD -DAR0MTI5pBEwDzENMAsGA1UEAwwEdDEzMKQRMA8xDTALBgNVBAMMBHQxMzGkETAP -MQ0wCwYDVQQDDAR0MTMypBEwDzENMAsGA1UEAwwEdDEzM6QRMA8xDTALBgNVBAMM -BHQxMzSkETAPMQ0wCwYDVQQDDAR0MTM1pBEwDzENMAsGA1UEAwwEdDEzNqQRMA8x -DTALBgNVBAMMBHQxMzekETAPMQ0wCwYDVQQDDAR0MTM4pBEwDzENMAsGA1UEAwwE -dDEzOaQRMA8xDTALBgNVBAMMBHQxNDCkETAPMQ0wCwYDVQQDDAR0MTQxpBEwDzEN -MAsGA1UEAwwEdDE0MqQRMA8xDTALBgNVBAMMBHQxNDOkETAPMQ0wCwYDVQQDDAR0 -MTQ0pBEwDzENMAsGA1UEAwwEdDE0NaQRMA8xDTALBgNVBAMMBHQxNDakETAPMQ0w -CwYDVQQDDAR0MTQ3pBEwDzENMAsGA1UEAwwEdDE0OKQRMA8xDTALBgNVBAMMBHQx -NDmkETAPMQ0wCwYDVQQDDAR0MTUwpBEwDzENMAsGA1UEAwwEdDE1MaQRMA8xDTAL -BgNVBAMMBHQxNTKkETAPMQ0wCwYDVQQDDAR0MTUzpBEwDzENMAsGA1UEAwwEdDE1 -NKQRMA8xDTALBgNVBAMMBHQxNTWkETAPMQ0wCwYDVQQDDAR0MTU2pBEwDzENMAsG -A1UEAwwEdDE1N6QRMA8xDTALBgNVBAMMBHQxNTikETAPMQ0wCwYDVQQDDAR0MTU5 -pBEwDzENMAsGA1UEAwwEdDE2MKQRMA8xDTALBgNVBAMMBHQxNjGkETAPMQ0wCwYD -VQQDDAR0MTYypBEwDzENMAsGA1UEAwwEdDE2M6QRMA8xDTALBgNVBAMMBHQxNjSk -ETAPMQ0wCwYDVQQDDAR0MTY1pBEwDzENMAsGA1UEAwwEdDE2NqQRMA8xDTALBgNV -BAMMBHQxNjekETAPMQ0wCwYDVQQDDAR0MTY4pBEwDzENMAsGA1UEAwwEdDE2OaQR -MA8xDTALBgNVBAMMBHQxNzCkETAPMQ0wCwYDVQQDDAR0MTcxpBEwDzENMAsGA1UE -AwwEdDE3MqQRMA8xDTALBgNVBAMMBHQxNzOkETAPMQ0wCwYDVQQDDAR0MTc0pBEw -DzENMAsGA1UEAwwEdDE3NaQRMA8xDTALBgNVBAMMBHQxNzakETAPMQ0wCwYDVQQD -DAR0MTc3pBEwDzENMAsGA1UEAwwEdDE3OKQRMA8xDTALBgNVBAMMBHQxNzmkETAP -MQ0wCwYDVQQDDAR0MTgwpBEwDzENMAsGA1UEAwwEdDE4MaQRMA8xDTALBgNVBAMM -BHQxODKkETAPMQ0wCwYDVQQDDAR0MTgzpBEwDzENMAsGA1UEAwwEdDE4NKQRMA8x -DTALBgNVBAMMBHQxODWkETAPMQ0wCwYDVQQDDAR0MTg2pBEwDzENMAsGA1UEAwwE -dDE4N6QRMA8xDTALBgNVBAMMBHQxODikETAPMQ0wCwYDVQQDDAR0MTg5pBEwDzEN -MAsGA1UEAwwEdDE5MKQRMA8xDTALBgNVBAMMBHQxOTGkETAPMQ0wCwYDVQQDDAR0 -MTkypBEwDzENMAsGA1UEAwwEdDE5M6QRMA8xDTALBgNVBAMMBHQxOTSkETAPMQ0w -CwYDVQQDDAR0MTk1pBEwDzENMAsGA1UEAwwEdDE5NqQRMA8xDTALBgNVBAMMBHQx -OTekETAPMQ0wCwYDVQQDDAR0MTk4pBEwDzENMAsGA1UEAwwEdDE5OaQRMA8xDTAL -BgNVBAMMBHQyMDCkETAPMQ0wCwYDVQQDDAR0MjAxpBEwDzENMAsGA1UEAwwEdDIw -MqQRMA8xDTALBgNVBAMMBHQyMDOkETAPMQ0wCwYDVQQDDAR0MjA0pBEwDzENMAsG -A1UEAwwEdDIwNaQRMA8xDTALBgNVBAMMBHQyMDakETAPMQ0wCwYDVQQDDAR0MjA3 -pBEwDzENMAsGA1UEAwwEdDIwOKQRMA8xDTALBgNVBAMMBHQyMDmkETAPMQ0wCwYD -VQQDDAR0MjEwpBEwDzENMAsGA1UEAwwEdDIxMaQRMA8xDTALBgNVBAMMBHQyMTKk -ETAPMQ0wCwYDVQQDDAR0MjEzpBEwDzENMAsGA1UEAwwEdDIxNKQRMA8xDTALBgNV -BAMMBHQyMTWkETAPMQ0wCwYDVQQDDAR0MjE2pBEwDzENMAsGA1UEAwwEdDIxN6QR -MA8xDTALBgNVBAMMBHQyMTikETAPMQ0wCwYDVQQDDAR0MjE5pBEwDzENMAsGA1UE -AwwEdDIyMKQRMA8xDTALBgNVBAMMBHQyMjGkETAPMQ0wCwYDVQQDDAR0MjIypBEw -DzENMAsGA1UEAwwEdDIyM6QRMA8xDTALBgNVBAMMBHQyMjSkETAPMQ0wCwYDVQQD -DAR0MjI1pBEwDzENMAsGA1UEAwwEdDIyNqQRMA8xDTALBgNVBAMMBHQyMjekETAP -MQ0wCwYDVQQDDAR0MjI4pBEwDzENMAsGA1UEAwwEdDIyOaQRMA8xDTALBgNVBAMM -BHQyMzCkETAPMQ0wCwYDVQQDDAR0MjMxpBEwDzENMAsGA1UEAwwEdDIzMqQRMA8x -DTALBgNVBAMMBHQyMzOkETAPMQ0wCwYDVQQDDAR0MjM0pBEwDzENMAsGA1UEAwwE -dDIzNaQRMA8xDTALBgNVBAMMBHQyMzakETAPMQ0wCwYDVQQDDAR0MjM3pBEwDzEN -MAsGA1UEAwwEdDIzOKQRMA8xDTALBgNVBAMMBHQyMzmkETAPMQ0wCwYDVQQDDAR0 -MjQwpBEwDzENMAsGA1UEAwwEdDI0MaQRMA8xDTALBgNVBAMMBHQyNDKkETAPMQ0w -CwYDVQQDDAR0MjQzpBEwDzENMAsGA1UEAwwEdDI0NKQRMA8xDTALBgNVBAMMBHQy -NDWkETAPMQ0wCwYDVQQDDAR0MjQ2pBEwDzENMAsGA1UEAwwEdDI0N6QRMA8xDTAL -BgNVBAMMBHQyNDikETAPMQ0wCwYDVQQDDAR0MjQ5pBEwDzENMAsGA1UEAwwEdDI1 -MKQRMA8xDTALBgNVBAMMBHQyNTGkETAPMQ0wCwYDVQQDDAR0MjUypBEwDzENMAsG -A1UEAwwEdDI1M6QRMA8xDTALBgNVBAMMBHQyNTSkETAPMQ0wCwYDVQQDDAR0MjU1 -pBEwDzENMAsGA1UEAwwEdDI1NqQRMA8xDTALBgNVBAMMBHQyNTekETAPMQ0wCwYD -VQQDDAR0MjU4pBEwDzENMAsGA1UEAwwEdDI1OaQRMA8xDTALBgNVBAMMBHQyNjCk -ETAPMQ0wCwYDVQQDDAR0MjYxpBEwDzENMAsGA1UEAwwEdDI2MqQRMA8xDTALBgNV -BAMMBHQyNjOkETAPMQ0wCwYDVQQDDAR0MjY0pBEwDzENMAsGA1UEAwwEdDI2NaQR -MA8xDTALBgNVBAMMBHQyNjakETAPMQ0wCwYDVQQDDAR0MjY3pBEwDzENMAsGA1UE -AwwEdDI2OKQRMA8xDTALBgNVBAMMBHQyNjmkETAPMQ0wCwYDVQQDDAR0MjcwpBEw -DzENMAsGA1UEAwwEdDI3MaQRMA8xDTALBgNVBAMMBHQyNzKkETAPMQ0wCwYDVQQD -DAR0MjczpBEwDzENMAsGA1UEAwwEdDI3NKQRMA8xDTALBgNVBAMMBHQyNzWkETAP -MQ0wCwYDVQQDDAR0Mjc2pBEwDzENMAsGA1UEAwwEdDI3N6QRMA8xDTALBgNVBAMM -BHQyNzikETAPMQ0wCwYDVQQDDAR0Mjc5pBEwDzENMAsGA1UEAwwEdDI4MKQRMA8x -DTALBgNVBAMMBHQyODGkETAPMQ0wCwYDVQQDDAR0MjgypBEwDzENMAsGA1UEAwwE -dDI4M6QRMA8xDTALBgNVBAMMBHQyODSkETAPMQ0wCwYDVQQDDAR0Mjg1pBEwDzEN -MAsGA1UEAwwEdDI4NqQRMA8xDTALBgNVBAMMBHQyODekETAPMQ0wCwYDVQQDDAR0 -Mjg4pBEwDzENMAsGA1UEAwwEdDI4OaQRMA8xDTALBgNVBAMMBHQyOTCkETAPMQ0w -CwYDVQQDDAR0MjkxpBEwDzENMAsGA1UEAwwEdDI5MqQRMA8xDTALBgNVBAMMBHQy -OTOkETAPMQ0wCwYDVQQDDAR0Mjk0pBEwDzENMAsGA1UEAwwEdDI5NaQRMA8xDTAL -BgNVBAMMBHQyOTakETAPMQ0wCwYDVQQDDAR0Mjk3pBEwDzENMAsGA1UEAwwEdDI5 -OKQRMA8xDTALBgNVBAMMBHQyOTmkETAPMQ0wCwYDVQQDDAR0MzAwpBEwDzENMAsG -A1UEAwwEdDMwMaQRMA8xDTALBgNVBAMMBHQzMDKkETAPMQ0wCwYDVQQDDAR0MzAz -pBEwDzENMAsGA1UEAwwEdDMwNKQRMA8xDTALBgNVBAMMBHQzMDWkETAPMQ0wCwYD -VQQDDAR0MzA2pBEwDzENMAsGA1UEAwwEdDMwN6QRMA8xDTALBgNVBAMMBHQzMDik -ETAPMQ0wCwYDVQQDDAR0MzA5pBEwDzENMAsGA1UEAwwEdDMxMKQRMA8xDTALBgNV -BAMMBHQzMTGkETAPMQ0wCwYDVQQDDAR0MzEypBEwDzENMAsGA1UEAwwEdDMxM6QR -MA8xDTALBgNVBAMMBHQzMTSkETAPMQ0wCwYDVQQDDAR0MzE1pBEwDzENMAsGA1UE -AwwEdDMxNqQRMA8xDTALBgNVBAMMBHQzMTekETAPMQ0wCwYDVQQDDAR0MzE4pBEw -DzENMAsGA1UEAwwEdDMxOaQRMA8xDTALBgNVBAMMBHQzMjCkETAPMQ0wCwYDVQQD -DAR0MzIxpBEwDzENMAsGA1UEAwwEdDMyMqQRMA8xDTALBgNVBAMMBHQzMjOkETAP -MQ0wCwYDVQQDDAR0MzI0pBEwDzENMAsGA1UEAwwEdDMyNaQRMA8xDTALBgNVBAMM -BHQzMjakETAPMQ0wCwYDVQQDDAR0MzI3pBEwDzENMAsGA1UEAwwEdDMyOKQRMA8x -DTALBgNVBAMMBHQzMjmkETAPMQ0wCwYDVQQDDAR0MzMwpBEwDzENMAsGA1UEAwwE -dDMzMaQRMA8xDTALBgNVBAMMBHQzMzKkETAPMQ0wCwYDVQQDDAR0MzMzpBEwDzEN -MAsGA1UEAwwEdDMzNKQRMA8xDTALBgNVBAMMBHQzMzWkETAPMQ0wCwYDVQQDDAR0 -MzM2pBEwDzENMAsGA1UEAwwEdDMzN6QRMA8xDTALBgNVBAMMBHQzMzikETAPMQ0w -CwYDVQQDDAR0MzM5pBEwDzENMAsGA1UEAwwEdDM0MKQRMA8xDTALBgNVBAMMBHQz -NDGkETAPMQ0wCwYDVQQDDAR0MzQypBEwDzENMAsGA1UEAwwEdDM0M6QRMA8xDTAL -BgNVBAMMBHQzNDSkETAPMQ0wCwYDVQQDDAR0MzQ1pBEwDzENMAsGA1UEAwwEdDM0 -NqQRMA8xDTALBgNVBAMMBHQzNDekETAPMQ0wCwYDVQQDDAR0MzQ4pBEwDzENMAsG -A1UEAwwEdDM0OaQRMA8xDTALBgNVBAMMBHQzNTCkETAPMQ0wCwYDVQQDDAR0MzUx -pBEwDzENMAsGA1UEAwwEdDM1MqQRMA8xDTALBgNVBAMMBHQzNTOkETAPMQ0wCwYD -VQQDDAR0MzU0pBEwDzENMAsGA1UEAwwEdDM1NaQRMA8xDTALBgNVBAMMBHQzNTak -ETAPMQ0wCwYDVQQDDAR0MzU3pBEwDzENMAsGA1UEAwwEdDM1OKQRMA8xDTALBgNV -BAMMBHQzNTmkETAPMQ0wCwYDVQQDDAR0MzYwpBEwDzENMAsGA1UEAwwEdDM2MaQR -MA8xDTALBgNVBAMMBHQzNjKkETAPMQ0wCwYDVQQDDAR0MzYzpBEwDzENMAsGA1UE -AwwEdDM2NKQRMA8xDTALBgNVBAMMBHQzNjWkETAPMQ0wCwYDVQQDDAR0MzY2pBEw -DzENMAsGA1UEAwwEdDM2N6QRMA8xDTALBgNVBAMMBHQzNjikETAPMQ0wCwYDVQQD -DAR0MzY5pBEwDzENMAsGA1UEAwwEdDM3MKQRMA8xDTALBgNVBAMMBHQzNzGkETAP -MQ0wCwYDVQQDDAR0MzcypBEwDzENMAsGA1UEAwwEdDM3M6QRMA8xDTALBgNVBAMM -BHQzNzSkETAPMQ0wCwYDVQQDDAR0Mzc1pBEwDzENMAsGA1UEAwwEdDM3NqQRMA8x -DTALBgNVBAMMBHQzNzekETAPMQ0wCwYDVQQDDAR0Mzc4pBEwDzENMAsGA1UEAwwE -dDM3OaQRMA8xDTALBgNVBAMMBHQzODCkETAPMQ0wCwYDVQQDDAR0MzgxpBEwDzEN -MAsGA1UEAwwEdDM4MqQRMA8xDTALBgNVBAMMBHQzODOkETAPMQ0wCwYDVQQDDAR0 -Mzg0pBEwDzENMAsGA1UEAwwEdDM4NaQRMA8xDTALBgNVBAMMBHQzODakETAPMQ0w -CwYDVQQDDAR0Mzg3pBEwDzENMAsGA1UEAwwEdDM4OKQRMA8xDTALBgNVBAMMBHQz -ODmkETAPMQ0wCwYDVQQDDAR0MzkwpBEwDzENMAsGA1UEAwwEdDM5MaQRMA8xDTAL -BgNVBAMMBHQzOTKkETAPMQ0wCwYDVQQDDAR0MzkzpBEwDzENMAsGA1UEAwwEdDM5 -NKQRMA8xDTALBgNVBAMMBHQzOTWkETAPMQ0wCwYDVQQDDAR0Mzk2pBEwDzENMAsG -A1UEAwwEdDM5N6QRMA8xDTALBgNVBAMMBHQzOTikETAPMQ0wCwYDVQQDDAR0Mzk5 -pBEwDzENMAsGA1UEAwwEdDQwMKQRMA8xDTALBgNVBAMMBHQ0MDGkETAPMQ0wCwYD -VQQDDAR0NDAypBEwDzENMAsGA1UEAwwEdDQwM6QRMA8xDTALBgNVBAMMBHQ0MDSk -ETAPMQ0wCwYDVQQDDAR0NDA1pBEwDzENMAsGA1UEAwwEdDQwNqQRMA8xDTALBgNV -BAMMBHQ0MDekETAPMQ0wCwYDVQQDDAR0NDA4pBEwDzENMAsGA1UEAwwEdDQwOaQR -MA8xDTALBgNVBAMMBHQ0MTCkETAPMQ0wCwYDVQQDDAR0NDExpBEwDzENMAsGA1UE -AwwEdDQxMqQRMA8xDTALBgNVBAMMBHQ0MTOkETAPMQ0wCwYDVQQDDAR0NDE0pBEw -DzENMAsGA1UEAwwEdDQxNaQRMA8xDTALBgNVBAMMBHQ0MTakETAPMQ0wCwYDVQQD -DAR0NDE3pBEwDzENMAsGA1UEAwwEdDQxOKQRMA8xDTALBgNVBAMMBHQ0MTmkETAP -MQ0wCwYDVQQDDAR0NDIwpBEwDzENMAsGA1UEAwwEdDQyMaQRMA8xDTALBgNVBAMM -BHQ0MjKkETAPMQ0wCwYDVQQDDAR0NDIzpBEwDzENMAsGA1UEAwwEdDQyNKQRMA8x -DTALBgNVBAMMBHQ0MjWkETAPMQ0wCwYDVQQDDAR0NDI2pBEwDzENMAsGA1UEAwwE -dDQyN6QRMA8xDTALBgNVBAMMBHQ0MjikETAPMQ0wCwYDVQQDDAR0NDI5pBEwDzEN -MAsGA1UEAwwEdDQzMKQRMA8xDTALBgNVBAMMBHQ0MzGkETAPMQ0wCwYDVQQDDAR0 -NDMypBEwDzENMAsGA1UEAwwEdDQzM6QRMA8xDTALBgNVBAMMBHQ0MzSkETAPMQ0w -CwYDVQQDDAR0NDM1pBEwDzENMAsGA1UEAwwEdDQzNqQRMA8xDTALBgNVBAMMBHQ0 -MzekETAPMQ0wCwYDVQQDDAR0NDM4pBEwDzENMAsGA1UEAwwEdDQzOaQRMA8xDTAL -BgNVBAMMBHQ0NDCkETAPMQ0wCwYDVQQDDAR0NDQxpBEwDzENMAsGA1UEAwwEdDQ0 -MqQRMA8xDTALBgNVBAMMBHQ0NDOkETAPMQ0wCwYDVQQDDAR0NDQ0pBEwDzENMAsG -A1UEAwwEdDQ0NaQRMA8xDTALBgNVBAMMBHQ0NDakETAPMQ0wCwYDVQQDDAR0NDQ3 -pBEwDzENMAsGA1UEAwwEdDQ0OKQRMA8xDTALBgNVBAMMBHQ0NDmkETAPMQ0wCwYD -VQQDDAR0NDUwpBEwDzENMAsGA1UEAwwEdDQ1MaQRMA8xDTALBgNVBAMMBHQ0NTKk -ETAPMQ0wCwYDVQQDDAR0NDUzpBEwDzENMAsGA1UEAwwEdDQ1NKQRMA8xDTALBgNV -BAMMBHQ0NTWkETAPMQ0wCwYDVQQDDAR0NDU2pBEwDzENMAsGA1UEAwwEdDQ1N6QR -MA8xDTALBgNVBAMMBHQ0NTikETAPMQ0wCwYDVQQDDAR0NDU5pBEwDzENMAsGA1UE -AwwEdDQ2MKQRMA8xDTALBgNVBAMMBHQ0NjGkETAPMQ0wCwYDVQQDDAR0NDYypBEw -DzENMAsGA1UEAwwEdDQ2M6QRMA8xDTALBgNVBAMMBHQ0NjSkETAPMQ0wCwYDVQQD -DAR0NDY1pBEwDzENMAsGA1UEAwwEdDQ2NqQRMA8xDTALBgNVBAMMBHQ0NjekETAP -MQ0wCwYDVQQDDAR0NDY4pBEwDzENMAsGA1UEAwwEdDQ2OaQRMA8xDTALBgNVBAMM -BHQ0NzCkETAPMQ0wCwYDVQQDDAR0NDcxpBEwDzENMAsGA1UEAwwEdDQ3MqQRMA8x -DTALBgNVBAMMBHQ0NzOkETAPMQ0wCwYDVQQDDAR0NDc0pBEwDzENMAsGA1UEAwwE -dDQ3NaQRMA8xDTALBgNVBAMMBHQ0NzakETAPMQ0wCwYDVQQDDAR0NDc3pBEwDzEN -MAsGA1UEAwwEdDQ3OKQRMA8xDTALBgNVBAMMBHQ0NzmkETAPMQ0wCwYDVQQDDAR0 -NDgwpBEwDzENMAsGA1UEAwwEdDQ4MaQRMA8xDTALBgNVBAMMBHQ0ODKkETAPMQ0w -CwYDVQQDDAR0NDgzpBEwDzENMAsGA1UEAwwEdDQ4NKQRMA8xDTALBgNVBAMMBHQ0 -ODWkETAPMQ0wCwYDVQQDDAR0NDg2pBEwDzENMAsGA1UEAwwEdDQ4N6QRMA8xDTAL -BgNVBAMMBHQ0ODikETAPMQ0wCwYDVQQDDAR0NDg5pBEwDzENMAsGA1UEAwwEdDQ5 -MKQRMA8xDTALBgNVBAMMBHQ0OTGkETAPMQ0wCwYDVQQDDAR0NDkypBEwDzENMAsG -A1UEAwwEdDQ5M6QRMA8xDTALBgNVBAMMBHQ0OTSkETAPMQ0wCwYDVQQDDAR0NDk1 -pBEwDzENMAsGA1UEAwwEdDQ5NqQRMA8xDTALBgNVBAMMBHQ0OTekETAPMQ0wCwYD -VQQDDAR0NDk4pBEwDzENMAsGA1UEAwwEdDQ5OaQRMA8xDTALBgNVBAMMBHQ1MDCk -ETAPMQ0wCwYDVQQDDAR0NTAxpBEwDzENMAsGA1UEAwwEdDUwMqQRMA8xDTALBgNV -BAMMBHQ1MDOkETAPMQ0wCwYDVQQDDAR0NTA0pBEwDzENMAsGA1UEAwwEdDUwNaQR -MA8xDTALBgNVBAMMBHQ1MDakETAPMQ0wCwYDVQQDDAR0NTA3pBEwDzENMAsGA1UE -AwwEdDUwOKQRMA8xDTALBgNVBAMMBHQ1MDmkETAPMQ0wCwYDVQQDDAR0NTEwpBEw -DzENMAsGA1UEAwwEdDUxMaQRMA8xDTALBgNVBAMMBHQ1MTKkETAPMQ0wCwYDVQQD -DAR0NTEzpBEwDzENMAsGA1UEAwwEdDUxNKQRMA8xDTALBgNVBAMMBHQ1MTWkETAP -MQ0wCwYDVQQDDAR0NTE2pBEwDzENMAsGA1UEAwwEdDUxN6QRMA8xDTALBgNVBAMM -BHQ1MTikETAPMQ0wCwYDVQQDDAR0NTE5pBEwDzENMAsGA1UEAwwEdDUyMKQRMA8x -DTALBgNVBAMMBHQ1MjGkETAPMQ0wCwYDVQQDDAR0NTIypBEwDzENMAsGA1UEAwwE -dDUyM6QRMA8xDTALBgNVBAMMBHQ1MjSkETAPMQ0wCwYDVQQDDAR0NTI1pBEwDzEN -MAsGA1UEAwwEdDUyNqQRMA8xDTALBgNVBAMMBHQ1MjekETAPMQ0wCwYDVQQDDAR0 -NTI4pBEwDzENMAsGA1UEAwwEdDUyOaQRMA8xDTALBgNVBAMMBHQ1MzCkETAPMQ0w -CwYDVQQDDAR0NTMxpBEwDzENMAsGA1UEAwwEdDUzMqQRMA8xDTALBgNVBAMMBHQ1 -MzOkETAPMQ0wCwYDVQQDDAR0NTM0pBEwDzENMAsGA1UEAwwEdDUzNaQRMA8xDTAL -BgNVBAMMBHQ1MzakETAPMQ0wCwYDVQQDDAR0NTM3pBEwDzENMAsGA1UEAwwEdDUz -OKQRMA8xDTALBgNVBAMMBHQ1MzmkETAPMQ0wCwYDVQQDDAR0NTQwpBEwDzENMAsG -A1UEAwwEdDU0MaQRMA8xDTALBgNVBAMMBHQ1NDKkETAPMQ0wCwYDVQQDDAR0NTQz -pBEwDzENMAsGA1UEAwwEdDU0NKQRMA8xDTALBgNVBAMMBHQ1NDWkETAPMQ0wCwYD -VQQDDAR0NTQ2pBEwDzENMAsGA1UEAwwEdDU0N6QRMA8xDTALBgNVBAMMBHQ1NDik -ETAPMQ0wCwYDVQQDDAR0NTQ5pBEwDzENMAsGA1UEAwwEdDU1MKQRMA8xDTALBgNV -BAMMBHQ1NTGkETAPMQ0wCwYDVQQDDAR0NTUypBEwDzENMAsGA1UEAwwEdDU1M6QR -MA8xDTALBgNVBAMMBHQ1NTSkETAPMQ0wCwYDVQQDDAR0NTU1pBEwDzENMAsGA1UE -AwwEdDU1NqQRMA8xDTALBgNVBAMMBHQ1NTekETAPMQ0wCwYDVQQDDAR0NTU4pBEw -DzENMAsGA1UEAwwEdDU1OaQRMA8xDTALBgNVBAMMBHQ1NjCkETAPMQ0wCwYDVQQD -DAR0NTYxpBEwDzENMAsGA1UEAwwEdDU2MqQRMA8xDTALBgNVBAMMBHQ1NjOkETAP -MQ0wCwYDVQQDDAR0NTY0pBEwDzENMAsGA1UEAwwEdDU2NaQRMA8xDTALBgNVBAMM -BHQ1NjakETAPMQ0wCwYDVQQDDAR0NTY3pBEwDzENMAsGA1UEAwwEdDU2OKQRMA8x -DTALBgNVBAMMBHQ1NjmkETAPMQ0wCwYDVQQDDAR0NTcwpBEwDzENMAsGA1UEAwwE -dDU3MaQRMA8xDTALBgNVBAMMBHQ1NzKkETAPMQ0wCwYDVQQDDAR0NTczpBEwDzEN -MAsGA1UEAwwEdDU3NKQRMA8xDTALBgNVBAMMBHQ1NzWkETAPMQ0wCwYDVQQDDAR0 -NTc2pBEwDzENMAsGA1UEAwwEdDU3N6QRMA8xDTALBgNVBAMMBHQ1NzikETAPMQ0w -CwYDVQQDDAR0NTc5pBEwDzENMAsGA1UEAwwEdDU4MKQRMA8xDTALBgNVBAMMBHQ1 -ODGkETAPMQ0wCwYDVQQDDAR0NTgypBEwDzENMAsGA1UEAwwEdDU4M6QRMA8xDTAL -BgNVBAMMBHQ1ODSkETAPMQ0wCwYDVQQDDAR0NTg1pBEwDzENMAsGA1UEAwwEdDU4 -NqQRMA8xDTALBgNVBAMMBHQ1ODekETAPMQ0wCwYDVQQDDAR0NTg4pBEwDzENMAsG -A1UEAwwEdDU4OaQRMA8xDTALBgNVBAMMBHQ1OTCkETAPMQ0wCwYDVQQDDAR0NTkx -pBEwDzENMAsGA1UEAwwEdDU5MqQRMA8xDTALBgNVBAMMBHQ1OTOkETAPMQ0wCwYD -VQQDDAR0NTk0pBEwDzENMAsGA1UEAwwEdDU5NaQRMA8xDTALBgNVBAMMBHQ1OTak -ETAPMQ0wCwYDVQQDDAR0NTk3pBEwDzENMAsGA1UEAwwEdDU5OKQRMA8xDTALBgNV -BAMMBHQ1OTmkETAPMQ0wCwYDVQQDDAR0NjAwpBEwDzENMAsGA1UEAwwEdDYwMaQR -MA8xDTALBgNVBAMMBHQ2MDKkETAPMQ0wCwYDVQQDDAR0NjAzpBEwDzENMAsGA1UE -AwwEdDYwNKQRMA8xDTALBgNVBAMMBHQ2MDWkETAPMQ0wCwYDVQQDDAR0NjA2pBEw -DzENMAsGA1UEAwwEdDYwN6QRMA8xDTALBgNVBAMMBHQ2MDikETAPMQ0wCwYDVQQD -DAR0NjA5pBEwDzENMAsGA1UEAwwEdDYxMKQRMA8xDTALBgNVBAMMBHQ2MTGkETAP -MQ0wCwYDVQQDDAR0NjEypBEwDzENMAsGA1UEAwwEdDYxM6QRMA8xDTALBgNVBAMM -BHQ2MTSkETAPMQ0wCwYDVQQDDAR0NjE1pBEwDzENMAsGA1UEAwwEdDYxNqQRMA8x -DTALBgNVBAMMBHQ2MTekETAPMQ0wCwYDVQQDDAR0NjE4pBEwDzENMAsGA1UEAwwE -dDYxOaQRMA8xDTALBgNVBAMMBHQ2MjCkETAPMQ0wCwYDVQQDDAR0NjIxpBEwDzEN -MAsGA1UEAwwEdDYyMqQRMA8xDTALBgNVBAMMBHQ2MjOkETAPMQ0wCwYDVQQDDAR0 -NjI0pBEwDzENMAsGA1UEAwwEdDYyNaQRMA8xDTALBgNVBAMMBHQ2MjakETAPMQ0w -CwYDVQQDDAR0NjI3pBEwDzENMAsGA1UEAwwEdDYyOKQRMA8xDTALBgNVBAMMBHQ2 -MjmkETAPMQ0wCwYDVQQDDAR0NjMwpBEwDzENMAsGA1UEAwwEdDYzMaQRMA8xDTAL -BgNVBAMMBHQ2MzKkETAPMQ0wCwYDVQQDDAR0NjMzpBEwDzENMAsGA1UEAwwEdDYz -NKQRMA8xDTALBgNVBAMMBHQ2MzWkETAPMQ0wCwYDVQQDDAR0NjM2pBEwDzENMAsG -A1UEAwwEdDYzN6QRMA8xDTALBgNVBAMMBHQ2MzikETAPMQ0wCwYDVQQDDAR0NjM5 -pBEwDzENMAsGA1UEAwwEdDY0MKQRMA8xDTALBgNVBAMMBHQ2NDGkETAPMQ0wCwYD -VQQDDAR0NjQypBEwDzENMAsGA1UEAwwEdDY0M6QRMA8xDTALBgNVBAMMBHQ2NDSk -ETAPMQ0wCwYDVQQDDAR0NjQ1pBEwDzENMAsGA1UEAwwEdDY0NqQRMA8xDTALBgNV -BAMMBHQ2NDekETAPMQ0wCwYDVQQDDAR0NjQ4pBEwDzENMAsGA1UEAwwEdDY0OaQR -MA8xDTALBgNVBAMMBHQ2NTCkETAPMQ0wCwYDVQQDDAR0NjUxpBEwDzENMAsGA1UE -AwwEdDY1MqQRMA8xDTALBgNVBAMMBHQ2NTOkETAPMQ0wCwYDVQQDDAR0NjU0pBEw -DzENMAsGA1UEAwwEdDY1NaQRMA8xDTALBgNVBAMMBHQ2NTakETAPMQ0wCwYDVQQD -DAR0NjU3pBEwDzENMAsGA1UEAwwEdDY1OKQRMA8xDTALBgNVBAMMBHQ2NTmkETAP -MQ0wCwYDVQQDDAR0NjYwpBEwDzENMAsGA1UEAwwEdDY2MaQRMA8xDTALBgNVBAMM -BHQ2NjKkETAPMQ0wCwYDVQQDDAR0NjYzpBEwDzENMAsGA1UEAwwEdDY2NKQRMA8x -DTALBgNVBAMMBHQ2NjWkETAPMQ0wCwYDVQQDDAR0NjY2pBEwDzENMAsGA1UEAwwE -dDY2N6QRMA8xDTALBgNVBAMMBHQ2NjikETAPMQ0wCwYDVQQDDAR0NjY5pBEwDzEN -MAsGA1UEAwwEdDY3MKQRMA8xDTALBgNVBAMMBHQ2NzGkETAPMQ0wCwYDVQQDDAR0 -NjcypBEwDzENMAsGA1UEAwwEdDY3M6QRMA8xDTALBgNVBAMMBHQ2NzSkETAPMQ0w -CwYDVQQDDAR0Njc1pBEwDzENMAsGA1UEAwwEdDY3NqQRMA8xDTALBgNVBAMMBHQ2 -NzekETAPMQ0wCwYDVQQDDAR0Njc4pBEwDzENMAsGA1UEAwwEdDY3OaQRMA8xDTAL -BgNVBAMMBHQ2ODCkETAPMQ0wCwYDVQQDDAR0NjgxpBEwDzENMAsGA1UEAwwEdDY4 -MqQRMA8xDTALBgNVBAMMBHQ2ODOkETAPMQ0wCwYDVQQDDAR0Njg0pBEwDzENMAsG -A1UEAwwEdDY4NaQRMA8xDTALBgNVBAMMBHQ2ODakETAPMQ0wCwYDVQQDDAR0Njg3 -pBEwDzENMAsGA1UEAwwEdDY4OKQRMA8xDTALBgNVBAMMBHQ2ODmkETAPMQ0wCwYD -VQQDDAR0NjkwpBEwDzENMAsGA1UEAwwEdDY5MaQRMA8xDTALBgNVBAMMBHQ2OTKk -ETAPMQ0wCwYDVQQDDAR0NjkzpBEwDzENMAsGA1UEAwwEdDY5NKQRMA8xDTALBgNV -BAMMBHQ2OTWkETAPMQ0wCwYDVQQDDAR0Njk2pBEwDzENMAsGA1UEAwwEdDY5N6QR -MA8xDTALBgNVBAMMBHQ2OTikETAPMQ0wCwYDVQQDDAR0Njk5pBEwDzENMAsGA1UE -AwwEdDcwMKQRMA8xDTALBgNVBAMMBHQ3MDGkETAPMQ0wCwYDVQQDDAR0NzAypBEw -DzENMAsGA1UEAwwEdDcwM6QRMA8xDTALBgNVBAMMBHQ3MDSkETAPMQ0wCwYDVQQD -DAR0NzA1pBEwDzENMAsGA1UEAwwEdDcwNqQRMA8xDTALBgNVBAMMBHQ3MDekETAP -MQ0wCwYDVQQDDAR0NzA4pBEwDzENMAsGA1UEAwwEdDcwOaQRMA8xDTALBgNVBAMM -BHQ3MTCkETAPMQ0wCwYDVQQDDAR0NzExpBEwDzENMAsGA1UEAwwEdDcxMqQRMA8x -DTALBgNVBAMMBHQ3MTOkETAPMQ0wCwYDVQQDDAR0NzE0pBEwDzENMAsGA1UEAwwE -dDcxNaQRMA8xDTALBgNVBAMMBHQ3MTakETAPMQ0wCwYDVQQDDAR0NzE3pBEwDzEN -MAsGA1UEAwwEdDcxOKQRMA8xDTALBgNVBAMMBHQ3MTmkETAPMQ0wCwYDVQQDDAR0 -NzIwpBEwDzENMAsGA1UEAwwEdDcyMaQRMA8xDTALBgNVBAMMBHQ3MjKkETAPMQ0w -CwYDVQQDDAR0NzIzpBEwDzENMAsGA1UEAwwEdDcyNKQRMA8xDTALBgNVBAMMBHQ3 -MjWkETAPMQ0wCwYDVQQDDAR0NzI2pBEwDzENMAsGA1UEAwwEdDcyN6QRMA8xDTAL -BgNVBAMMBHQ3MjikETAPMQ0wCwYDVQQDDAR0NzI5pBEwDzENMAsGA1UEAwwEdDcz -MKQRMA8xDTALBgNVBAMMBHQ3MzGkETAPMQ0wCwYDVQQDDAR0NzMypBEwDzENMAsG -A1UEAwwEdDczM6QRMA8xDTALBgNVBAMMBHQ3MzSkETAPMQ0wCwYDVQQDDAR0NzM1 -pBEwDzENMAsGA1UEAwwEdDczNqQRMA8xDTALBgNVBAMMBHQ3MzekETAPMQ0wCwYD -VQQDDAR0NzM4pBEwDzENMAsGA1UEAwwEdDczOaQRMA8xDTALBgNVBAMMBHQ3NDCk -ETAPMQ0wCwYDVQQDDAR0NzQxpBEwDzENMAsGA1UEAwwEdDc0MqQRMA8xDTALBgNV -BAMMBHQ3NDOkETAPMQ0wCwYDVQQDDAR0NzQ0pBEwDzENMAsGA1UEAwwEdDc0NaQR -MA8xDTALBgNVBAMMBHQ3NDakETAPMQ0wCwYDVQQDDAR0NzQ3pBEwDzENMAsGA1UE -AwwEdDc0OKQRMA8xDTALBgNVBAMMBHQ3NDmkETAPMQ0wCwYDVQQDDAR0NzUwpBEw -DzENMAsGA1UEAwwEdDc1MaQRMA8xDTALBgNVBAMMBHQ3NTKkETAPMQ0wCwYDVQQD -DAR0NzUzpBEwDzENMAsGA1UEAwwEdDc1NKQRMA8xDTALBgNVBAMMBHQ3NTWkETAP -MQ0wCwYDVQQDDAR0NzU2pBEwDzENMAsGA1UEAwwEdDc1N6QRMA8xDTALBgNVBAMM -BHQ3NTikETAPMQ0wCwYDVQQDDAR0NzU5pBEwDzENMAsGA1UEAwwEdDc2MKQRMA8x -DTALBgNVBAMMBHQ3NjGkETAPMQ0wCwYDVQQDDAR0NzYypBEwDzENMAsGA1UEAwwE -dDc2M6QRMA8xDTALBgNVBAMMBHQ3NjSkETAPMQ0wCwYDVQQDDAR0NzY1pBEwDzEN -MAsGA1UEAwwEdDc2NqQRMA8xDTALBgNVBAMMBHQ3NjekETAPMQ0wCwYDVQQDDAR0 -NzY4pBEwDzENMAsGA1UEAwwEdDc2OaQRMA8xDTALBgNVBAMMBHQ3NzCkETAPMQ0w -CwYDVQQDDAR0NzcxpBEwDzENMAsGA1UEAwwEdDc3MqQRMA8xDTALBgNVBAMMBHQ3 -NzOkETAPMQ0wCwYDVQQDDAR0Nzc0pBEwDzENMAsGA1UEAwwEdDc3NaQRMA8xDTAL -BgNVBAMMBHQ3NzakETAPMQ0wCwYDVQQDDAR0Nzc3pBEwDzENMAsGA1UEAwwEdDc3 -OKQRMA8xDTALBgNVBAMMBHQ3NzmkETAPMQ0wCwYDVQQDDAR0NzgwpBEwDzENMAsG -A1UEAwwEdDc4MaQRMA8xDTALBgNVBAMMBHQ3ODKkETAPMQ0wCwYDVQQDDAR0Nzgz -pBEwDzENMAsGA1UEAwwEdDc4NKQRMA8xDTALBgNVBAMMBHQ3ODWkETAPMQ0wCwYD -VQQDDAR0Nzg2pBEwDzENMAsGA1UEAwwEdDc4N6QRMA8xDTALBgNVBAMMBHQ3ODik -ETAPMQ0wCwYDVQQDDAR0Nzg5pBEwDzENMAsGA1UEAwwEdDc5MKQRMA8xDTALBgNV -BAMMBHQ3OTGkETAPMQ0wCwYDVQQDDAR0NzkypBEwDzENMAsGA1UEAwwEdDc5M6QR -MA8xDTALBgNVBAMMBHQ3OTSkETAPMQ0wCwYDVQQDDAR0Nzk1pBEwDzENMAsGA1UE -AwwEdDc5NqQRMA8xDTALBgNVBAMMBHQ3OTekETAPMQ0wCwYDVQQDDAR0Nzk4pBEw -DzENMAsGA1UEAwwEdDc5OaQRMA8xDTALBgNVBAMMBHQ4MDCkETAPMQ0wCwYDVQQD -DAR0ODAxpBEwDzENMAsGA1UEAwwEdDgwMqQRMA8xDTALBgNVBAMMBHQ4MDOkETAP -MQ0wCwYDVQQDDAR0ODA0pBEwDzENMAsGA1UEAwwEdDgwNaQRMA8xDTALBgNVBAMM -BHQ4MDakETAPMQ0wCwYDVQQDDAR0ODA3pBEwDzENMAsGA1UEAwwEdDgwOKQRMA8x -DTALBgNVBAMMBHQ4MDmkETAPMQ0wCwYDVQQDDAR0ODEwpBEwDzENMAsGA1UEAwwE -dDgxMaQRMA8xDTALBgNVBAMMBHQ4MTKkETAPMQ0wCwYDVQQDDAR0ODEzpBEwDzEN -MAsGA1UEAwwEdDgxNKQRMA8xDTALBgNVBAMMBHQ4MTWkETAPMQ0wCwYDVQQDDAR0 -ODE2pBEwDzENMAsGA1UEAwwEdDgxN6QRMA8xDTALBgNVBAMMBHQ4MTikETAPMQ0w -CwYDVQQDDAR0ODE5pBEwDzENMAsGA1UEAwwEdDgyMKQRMA8xDTALBgNVBAMMBHQ4 -MjGkETAPMQ0wCwYDVQQDDAR0ODIypBEwDzENMAsGA1UEAwwEdDgyM6QRMA8xDTAL -BgNVBAMMBHQ4MjSkETAPMQ0wCwYDVQQDDAR0ODI1pBEwDzENMAsGA1UEAwwEdDgy -NqQRMA8xDTALBgNVBAMMBHQ4MjekETAPMQ0wCwYDVQQDDAR0ODI4pBEwDzENMAsG -A1UEAwwEdDgyOaQRMA8xDTALBgNVBAMMBHQ4MzCkETAPMQ0wCwYDVQQDDAR0ODMx -pBEwDzENMAsGA1UEAwwEdDgzMqQRMA8xDTALBgNVBAMMBHQ4MzOkETAPMQ0wCwYD -VQQDDAR0ODM0pBEwDzENMAsGA1UEAwwEdDgzNaQRMA8xDTALBgNVBAMMBHQ4Mzak -ETAPMQ0wCwYDVQQDDAR0ODM3pBEwDzENMAsGA1UEAwwEdDgzOKQRMA8xDTALBgNV -BAMMBHQ4MzmkETAPMQ0wCwYDVQQDDAR0ODQwpBEwDzENMAsGA1UEAwwEdDg0MaQR -MA8xDTALBgNVBAMMBHQ4NDKkETAPMQ0wCwYDVQQDDAR0ODQzpBEwDzENMAsGA1UE -AwwEdDg0NKQRMA8xDTALBgNVBAMMBHQ4NDWkETAPMQ0wCwYDVQQDDAR0ODQ2pBEw -DzENMAsGA1UEAwwEdDg0N6QRMA8xDTALBgNVBAMMBHQ4NDikETAPMQ0wCwYDVQQD -DAR0ODQ5pBEwDzENMAsGA1UEAwwEdDg1MKQRMA8xDTALBgNVBAMMBHQ4NTGkETAP -MQ0wCwYDVQQDDAR0ODUypBEwDzENMAsGA1UEAwwEdDg1M6QRMA8xDTALBgNVBAMM -BHQ4NTSkETAPMQ0wCwYDVQQDDAR0ODU1pBEwDzENMAsGA1UEAwwEdDg1NqQRMA8x -DTALBgNVBAMMBHQ4NTekETAPMQ0wCwYDVQQDDAR0ODU4pBEwDzENMAsGA1UEAwwE -dDg1OaQRMA8xDTALBgNVBAMMBHQ4NjCkETAPMQ0wCwYDVQQDDAR0ODYxpBEwDzEN -MAsGA1UEAwwEdDg2MqQRMA8xDTALBgNVBAMMBHQ4NjOkETAPMQ0wCwYDVQQDDAR0 -ODY0pBEwDzENMAsGA1UEAwwEdDg2NaQRMA8xDTALBgNVBAMMBHQ4NjakETAPMQ0w -CwYDVQQDDAR0ODY3pBEwDzENMAsGA1UEAwwEdDg2OKQRMA8xDTALBgNVBAMMBHQ4 -NjmkETAPMQ0wCwYDVQQDDAR0ODcwpBEwDzENMAsGA1UEAwwEdDg3MaQRMA8xDTAL -BgNVBAMMBHQ4NzKkETAPMQ0wCwYDVQQDDAR0ODczpBEwDzENMAsGA1UEAwwEdDg3 -NKQRMA8xDTALBgNVBAMMBHQ4NzWkETAPMQ0wCwYDVQQDDAR0ODc2pBEwDzENMAsG -A1UEAwwEdDg3N6QRMA8xDTALBgNVBAMMBHQ4NzikETAPMQ0wCwYDVQQDDAR0ODc5 -pBEwDzENMAsGA1UEAwwEdDg4MKQRMA8xDTALBgNVBAMMBHQ4ODGkETAPMQ0wCwYD -VQQDDAR0ODgypBEwDzENMAsGA1UEAwwEdDg4M6QRMA8xDTALBgNVBAMMBHQ4ODSk -ETAPMQ0wCwYDVQQDDAR0ODg1pBEwDzENMAsGA1UEAwwEdDg4NqQRMA8xDTALBgNV -BAMMBHQ4ODekETAPMQ0wCwYDVQQDDAR0ODg4pBEwDzENMAsGA1UEAwwEdDg4OaQR -MA8xDTALBgNVBAMMBHQ4OTCkETAPMQ0wCwYDVQQDDAR0ODkxpBEwDzENMAsGA1UE -AwwEdDg5MqQRMA8xDTALBgNVBAMMBHQ4OTOkETAPMQ0wCwYDVQQDDAR0ODk0pBEw -DzENMAsGA1UEAwwEdDg5NaQRMA8xDTALBgNVBAMMBHQ4OTakETAPMQ0wCwYDVQQD -DAR0ODk3pBEwDzENMAsGA1UEAwwEdDg5OKQRMA8xDTALBgNVBAMMBHQ4OTmkETAP -MQ0wCwYDVQQDDAR0OTAwpBEwDzENMAsGA1UEAwwEdDkwMaQRMA8xDTALBgNVBAMM -BHQ5MDKkETAPMQ0wCwYDVQQDDAR0OTAzpBEwDzENMAsGA1UEAwwEdDkwNKQRMA8x -DTALBgNVBAMMBHQ5MDWkETAPMQ0wCwYDVQQDDAR0OTA2pBEwDzENMAsGA1UEAwwE -dDkwN6QRMA8xDTALBgNVBAMMBHQ5MDikETAPMQ0wCwYDVQQDDAR0OTA5pBEwDzEN -MAsGA1UEAwwEdDkxMKQRMA8xDTALBgNVBAMMBHQ5MTGkETAPMQ0wCwYDVQQDDAR0 -OTEypBEwDzENMAsGA1UEAwwEdDkxM6QRMA8xDTALBgNVBAMMBHQ5MTSkETAPMQ0w -CwYDVQQDDAR0OTE1pBEwDzENMAsGA1UEAwwEdDkxNqQRMA8xDTALBgNVBAMMBHQ5 -MTekETAPMQ0wCwYDVQQDDAR0OTE4pBEwDzENMAsGA1UEAwwEdDkxOaQRMA8xDTAL -BgNVBAMMBHQ5MjCkETAPMQ0wCwYDVQQDDAR0OTIxpBEwDzENMAsGA1UEAwwEdDky -MqQRMA8xDTALBgNVBAMMBHQ5MjOkETAPMQ0wCwYDVQQDDAR0OTI0pBEwDzENMAsG -A1UEAwwEdDkyNaQRMA8xDTALBgNVBAMMBHQ5MjakETAPMQ0wCwYDVQQDDAR0OTI3 -pBEwDzENMAsGA1UEAwwEdDkyOKQRMA8xDTALBgNVBAMMBHQ5MjmkETAPMQ0wCwYD -VQQDDAR0OTMwpBEwDzENMAsGA1UEAwwEdDkzMaQRMA8xDTALBgNVBAMMBHQ5MzKk -ETAPMQ0wCwYDVQQDDAR0OTMzpBEwDzENMAsGA1UEAwwEdDkzNKQRMA8xDTALBgNV -BAMMBHQ5MzWkETAPMQ0wCwYDVQQDDAR0OTM2pBEwDzENMAsGA1UEAwwEdDkzN6QR -MA8xDTALBgNVBAMMBHQ5MzikETAPMQ0wCwYDVQQDDAR0OTM5pBEwDzENMAsGA1UE -AwwEdDk0MKQRMA8xDTALBgNVBAMMBHQ5NDGkETAPMQ0wCwYDVQQDDAR0OTQypBEw -DzENMAsGA1UEAwwEdDk0M6QRMA8xDTALBgNVBAMMBHQ5NDSkETAPMQ0wCwYDVQQD -DAR0OTQ1pBEwDzENMAsGA1UEAwwEdDk0NqQRMA8xDTALBgNVBAMMBHQ5NDekETAP -MQ0wCwYDVQQDDAR0OTQ4pBEwDzENMAsGA1UEAwwEdDk0OaQRMA8xDTALBgNVBAMM -BHQ5NTCkETAPMQ0wCwYDVQQDDAR0OTUxpBEwDzENMAsGA1UEAwwEdDk1MqQRMA8x -DTALBgNVBAMMBHQ5NTOkETAPMQ0wCwYDVQQDDAR0OTU0pBEwDzENMAsGA1UEAwwE -dDk1NaQRMA8xDTALBgNVBAMMBHQ5NTakETAPMQ0wCwYDVQQDDAR0OTU3pBEwDzEN -MAsGA1UEAwwEdDk1OKQRMA8xDTALBgNVBAMMBHQ5NTmkETAPMQ0wCwYDVQQDDAR0 -OTYwpBEwDzENMAsGA1UEAwwEdDk2MaQRMA8xDTALBgNVBAMMBHQ5NjKkETAPMQ0w -CwYDVQQDDAR0OTYzpBEwDzENMAsGA1UEAwwEdDk2NKQRMA8xDTALBgNVBAMMBHQ5 -NjWkETAPMQ0wCwYDVQQDDAR0OTY2pBEwDzENMAsGA1UEAwwEdDk2N6QRMA8xDTAL -BgNVBAMMBHQ5NjikETAPMQ0wCwYDVQQDDAR0OTY5pBEwDzENMAsGA1UEAwwEdDk3 -MKQRMA8xDTALBgNVBAMMBHQ5NzGkETAPMQ0wCwYDVQQDDAR0OTcypBEwDzENMAsG -A1UEAwwEdDk3M6QRMA8xDTALBgNVBAMMBHQ5NzSkETAPMQ0wCwYDVQQDDAR0OTc1 -pBEwDzENMAsGA1UEAwwEdDk3NqQRMA8xDTALBgNVBAMMBHQ5NzekETAPMQ0wCwYD -VQQDDAR0OTc4pBEwDzENMAsGA1UEAwwEdDk3OaQRMA8xDTALBgNVBAMMBHQ5ODCk -ETAPMQ0wCwYDVQQDDAR0OTgxpBEwDzENMAsGA1UEAwwEdDk4MqQRMA8xDTALBgNV -BAMMBHQ5ODOkETAPMQ0wCwYDVQQDDAR0OTg0pBEwDzENMAsGA1UEAwwEdDk4NaQR -MA8xDTALBgNVBAMMBHQ5ODakETAPMQ0wCwYDVQQDDAR0OTg3pBEwDzENMAsGA1UE -AwwEdDk4OKQRMA8xDTALBgNVBAMMBHQ5ODmkETAPMQ0wCwYDVQQDDAR0OTkwpBEw -DzENMAsGA1UEAwwEdDk5MaQRMA8xDTALBgNVBAMMBHQ5OTKkETAPMQ0wCwYDVQQD -DAR0OTkzpBEwDzENMAsGA1UEAwwEdDk5NKQRMA8xDTALBgNVBAMMBHQ5OTWkETAP -MQ0wCwYDVQQDDAR0OTk2pBEwDzENMAsGA1UEAwwEdDk5N6QRMA8xDTALBgNVBAMM -BHQ5OTikETAPMQ0wCwYDVQQDDAR0OTk5pBIwEDEOMAwGA1UEAwwFdDEwMDCkEjAQ -MQ4wDAYDVQQDDAV0MTAwMaQSMBAxDjAMBgNVBAMMBXQxMDAypBIwEDEOMAwGA1UE -AwwFdDEwMDOkEjAQMQ4wDAYDVQQDDAV0MTAwNKQSMBAxDjAMBgNVBAMMBXQxMDA1 -pBIwEDEOMAwGA1UEAwwFdDEwMDakEjAQMQ4wDAYDVQQDDAV0MTAwN6QSMBAxDjAM -BgNVBAMMBXQxMDA4pBIwEDEOMAwGA1UEAwwFdDEwMDmkEjAQMQ4wDAYDVQQDDAV0 -MTAxMKQSMBAxDjAMBgNVBAMMBXQxMDExpBIwEDEOMAwGA1UEAwwFdDEwMTKkEjAQ -MQ4wDAYDVQQDDAV0MTAxM6QSMBAxDjAMBgNVBAMMBXQxMDE0pBIwEDEOMAwGA1UE -AwwFdDEwMTWkEjAQMQ4wDAYDVQQDDAV0MTAxNqQSMBAxDjAMBgNVBAMMBXQxMDE3 -pBIwEDEOMAwGA1UEAwwFdDEwMTikEjAQMQ4wDAYDVQQDDAV0MTAxOaQSMBAxDjAM -BgNVBAMMBXQxMDIwpBIwEDEOMAwGA1UEAwwFdDEwMjGkEjAQMQ4wDAYDVQQDDAV0 -MTAyMqQSMBAxDjAMBgNVBAMMBXQxMDIzMA0GCSqGSIb3DQEBCwUAA4IBAQB3ryeb -I4KdkLQ8Ah/UqcgMf1gZrpqG/vWxpK7Lr0Y6BP88z+pr3xbL0YmNjKf5EefpkJJr -VNX6qiSWY2FXSoHafgsuyAQ0at1uRieXWp3bjC3oWkURv30aJXrKnrHjHFMiCze2 -+tYeg21UQE1xs+NS3ITRlfyS5PCFzm1ONqZstDV+Dui2iwmwyE7xuKr+6Ci6jqMx -75m92p7LWgKVJEVBPO16kpS9nf1+B1GMVZcHU2C03WQCbCsYMo3f7YlK3Tcyy2aa -+rjoPYePY2o/byyRJbOFcQo5qiSljnvCV4btO+czbemkwc2Iiw7IBmObQEAqPLKW -Ei0cU/6D7EpQvsZT ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F5.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F5.pem deleted file mode 100644 index 95b3ef60a0..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F5.pem +++ /dev/null @@ -1,89 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:f5 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Root - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:cc:7a:cf:ec:bd:a0:01:c3:26:51:d8:28:ae:80: - b6:0b:d2:76:d7:04:86:18:ac:fd:f2:8f:64:e7:92: - d6:d0:42:32:4f:cd:d0:4d:d0:ac:71:9a:73:80:0a: - 04:70:20:a3:2f:a0:9b:f4:3e:19:cf:69:54:b5:be: - 85:dd:6e:b2:0b:14:df:27:bf:2c:a1:bb:b2:a7:23: - 0c:fb:ae:78:69:6b:1a:6e:7c:38:7f:15:5d:e5:cf: - 27:32:56:2a:f1:87:fe:3a:16:73:e6:dd:83:f2:f2: - ae:31:c8:93:d2:49:b7:b1:71:f5:55:de:bb:85:cd: - cb:19:74:1d:61:49:da:83:44:ec:4c:5e:aa:d5:8b: - 32:1a:db:77:d5:b1:83:8c:00:b9:55:b7:64:78:5c: - 87:c9:68:58:bd:de:af:50:e2:bb:bd:32:cd:fa:3d: - df:3b:3d:93:10:16:b6:6d:90:1d:d7:7d:e9:ea:7e: - 1e:2e:c8:10:a4:14:ad:62:72:af:65:95:1f:a7:6e: - 81:84:9f:df:85:4e:c0:3e:7f:8c:02:0a:f0:65:58: - 84:7c:6a:e1:53:af:3c:f1:7a:b9:33:c8:e7:f9:ed: - 92:46:00:50:62:f0:89:41:57:1e:81:d1:04:12:b3: - fc:25:60:17:5c:0b:eb:a9:46:4a:03:39:16:11:4d: - e1:7b - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - Signature Algorithm: sha256WithRSAEncryption - 3a:c4:f6:50:32:77:14:e2:a8:69:9b:ad:85:a0:fa:95:08:d2: - 22:cb:d3:aa:53:94:e5:1f:92:fa:d5:7b:c8:a5:b6:13:15:42: - 42:2c:ce:48:e9:f1:55:c7:cd:f4:29:b6:46:e9:08:81:8c:83: - 82:c5:d4:f7:1e:90:3c:2d:78:39:7f:be:e8:30:5e:f7:d4:72: - e4:db:0a:09:49:c0:ce:83:66:c0:16:73:f4:cf:67:ad:74:e3: - 10:60:72:16:77:4a:c8:08:88:93:62:c0:4a:23:0b:74:3e:63: - 98:9c:54:1d:34:d5:b6:da:bc:7c:5a:f2:68:22:e2:d9:15:12: - 84:04:f6:3e:b3:ac:97:bc:b4:54:93:3c:d4:0b:25:e4:c1:34: - 5a:98:bc:aa:de:78:bb:12:3f:33:82:a2:bf:5f:82:e6:9e:ad: - 85:21:21:d9:9d:41:5e:4f:72:a3:16:8d:7d:b4:1d:26:d8:77: - d8:29:22:13:a2:f6:d7:9f:1c:60:2f:17:9e:fd:f4:63:a3:c6: - ed:e3:47:43:b7:73:39:82:97:18:fa:4b:db:2e:ac:d3:7b:54: - cd:f8:d0:eb:70:13:03:8a:4b:9b:90:62:4e:b0:34:22:49:ec: - 78:2a:47:97:60:13:03:23:ed:09:ff:a8:00:59:6a:2c:d1:2e: - d0:93:0b:59 ------BEGIN CERTIFICATE----- -MIIDeDCCAmCgAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vUwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMA8xDTALBgNVBAMMBFJvb3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK -AoIBAQDMes/svaABwyZR2CiugLYL0nbXBIYYrP3yj2TnktbQQjJPzdBN0KxxmnOA -CgRwIKMvoJv0PhnPaVS1voXdbrILFN8nvyyhu7KnIwz7rnhpaxpufDh/FV3lzycy -Virxh/46FnPm3YPy8q4xyJPSSbexcfVV3ruFzcsZdB1hSdqDROxMXqrVizIa23fV -sYOMALlVt2R4XIfJaFi93q9Q4ru9Ms36Pd87PZMQFrZtkB3Xfenqfh4uyBCkFK1i -cq9llR+nboGEn9+FTsA+f4wCCvBlWIR8auFTrzzxerkzyOf57ZJGAFBi8IlBVx6B -0QQSs/wlYBdcC+upRkoDORYRTeF7AgMBAAGjgcswgcgwHQYDVR0OBBYEFLbC75/R -KcsPiYxMUtS9QLcRt3HdMB8GA1UdIwQYMBaAFLbC75/RKcsPiYxMUtS9QLcRt3Hd -MDcGCCsGAQUFBwEBBCswKTAnBggrBgEFBQcwAoYbaHR0cDovL3VybC1mb3ItYWlh -L1Jvb3QuY2VyMCwGA1UdHwQlMCMwIaAfoB2GG2h0dHA6Ly91cmwtZm9yLWNybC9S -b290LmNybDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG -9w0BAQsFAAOCAQEAOsT2UDJ3FOKoaZuthaD6lQjSIsvTqlOU5R+S+tV7yKW2ExVC -QizOSOnxVcfN9Cm2RukIgYyDgsXU9x6QPC14OX++6DBe99Ry5NsKCUnAzoNmwBZz -9M9nrXTjEGByFndKyAiIk2LASiMLdD5jmJxUHTTVttq8fFryaCLi2RUShAT2PrOs -l7y0VJM81Asl5ME0Wpi8qt54uxI/M4Kiv1+C5p6thSEh2Z1BXk9yoxaNfbQdJth3 -2CkiE6L2158cYC8Xnv30Y6PG7eNHQ7dzOYKXGPpL2y6s03tUzfjQ63ATA4pLm5Bi -TrA0IknseCpHl2ATAyPtCf+oAFlqLNEu0JMLWQ== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F6.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F6.pem deleted file mode 100644 index cd3f1215ab..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F6.pem +++ /dev/null @@ -1,4294 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:f6 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Permitted: - DNS:t0.test - DNS:t1.test - DNS:t2.test - DNS:t3.test - DNS:t4.test - DNS:t5.test - DNS:t6.test - DNS:t7.test - DNS:t8.test - DNS:t9.test - DNS:t10.test - DNS:t11.test - DNS:t12.test - DNS:t13.test - DNS:t14.test - DNS:t15.test - DNS:t16.test - DNS:t17.test - DNS:t18.test - DNS:t19.test - DNS:t20.test - DNS:t21.test - DNS:t22.test - DNS:t23.test - DNS:t24.test - DNS:t25.test - DNS:t26.test - DNS:t27.test - DNS:t28.test - DNS:t29.test - DNS:t30.test - DNS:t31.test - DNS:t32.test - DNS:t33.test - DNS:t34.test - DNS:t35.test - DNS:t36.test - DNS:t37.test - DNS:t38.test - DNS:t39.test - DNS:t40.test - DNS:t41.test - DNS:t42.test - DNS:t43.test - DNS:t44.test - DNS:t45.test - DNS:t46.test - DNS:t47.test - DNS:t48.test - DNS:t49.test - DNS:t50.test - DNS:t51.test - DNS:t52.test - DNS:t53.test - DNS:t54.test - DNS:t55.test - DNS:t56.test - DNS:t57.test - DNS:t58.test - DNS:t59.test - DNS:t60.test - DNS:t61.test - DNS:t62.test - DNS:t63.test - DNS:t64.test - DNS:t65.test - DNS:t66.test - DNS:t67.test - DNS:t68.test - DNS:t69.test - DNS:t70.test - DNS:t71.test - DNS:t72.test - DNS:t73.test - DNS:t74.test - DNS:t75.test - DNS:t76.test - DNS:t77.test - DNS:t78.test - DNS:t79.test - DNS:t80.test - DNS:t81.test - DNS:t82.test - DNS:t83.test - DNS:t84.test - DNS:t85.test - DNS:t86.test - DNS:t87.test - DNS:t88.test - DNS:t89.test - DNS:t90.test - DNS:t91.test - DNS:t92.test - DNS:t93.test - DNS:t94.test - DNS:t95.test - DNS:t96.test - DNS:t97.test - DNS:t98.test - DNS:t99.test - DNS:t100.test - DNS:t101.test - DNS:t102.test - DNS:t103.test - DNS:t104.test - DNS:t105.test - DNS:t106.test - DNS:t107.test - DNS:t108.test - DNS:t109.test - DNS:t110.test - DNS:t111.test - DNS:t112.test - DNS:t113.test - DNS:t114.test - DNS:t115.test - DNS:t116.test - DNS:t117.test - DNS:t118.test - DNS:t119.test - DNS:t120.test - DNS:t121.test - DNS:t122.test - DNS:t123.test - DNS:t124.test - DNS:t125.test - DNS:t126.test - DNS:t127.test - DNS:t128.test - DNS:t129.test - DNS:t130.test - DNS:t131.test - DNS:t132.test - DNS:t133.test - DNS:t134.test - DNS:t135.test - DNS:t136.test - DNS:t137.test - DNS:t138.test - DNS:t139.test - DNS:t140.test - DNS:t141.test - DNS:t142.test - DNS:t143.test - DNS:t144.test - DNS:t145.test - DNS:t146.test - DNS:t147.test - DNS:t148.test - DNS:t149.test - DNS:t150.test - DNS:t151.test - DNS:t152.test - DNS:t153.test - DNS:t154.test - DNS:t155.test - DNS:t156.test - DNS:t157.test - DNS:t158.test - DNS:t159.test - DNS:t160.test - DNS:t161.test - DNS:t162.test - DNS:t163.test - DNS:t164.test - DNS:t165.test - DNS:t166.test - DNS:t167.test - DNS:t168.test - DNS:t169.test - DNS:t170.test - IP:10.0.0.0/255.255.255.255 - IP:10.0.0.1/255.255.255.255 - IP:10.0.0.2/255.255.255.255 - IP:10.0.0.3/255.255.255.255 - IP:10.0.0.4/255.255.255.255 - IP:10.0.0.5/255.255.255.255 - IP:10.0.0.6/255.255.255.255 - IP:10.0.0.7/255.255.255.255 - IP:10.0.0.8/255.255.255.255 - IP:10.0.0.9/255.255.255.255 - IP:10.0.0.10/255.255.255.255 - IP:10.0.0.11/255.255.255.255 - IP:10.0.0.12/255.255.255.255 - IP:10.0.0.13/255.255.255.255 - IP:10.0.0.14/255.255.255.255 - IP:10.0.0.15/255.255.255.255 - IP:10.0.0.16/255.255.255.255 - IP:10.0.0.17/255.255.255.255 - IP:10.0.0.18/255.255.255.255 - IP:10.0.0.19/255.255.255.255 - IP:10.0.0.20/255.255.255.255 - IP:10.0.0.21/255.255.255.255 - IP:10.0.0.22/255.255.255.255 - IP:10.0.0.23/255.255.255.255 - IP:10.0.0.24/255.255.255.255 - IP:10.0.0.25/255.255.255.255 - IP:10.0.0.26/255.255.255.255 - IP:10.0.0.27/255.255.255.255 - IP:10.0.0.28/255.255.255.255 - IP:10.0.0.29/255.255.255.255 - IP:10.0.0.30/255.255.255.255 - IP:10.0.0.31/255.255.255.255 - IP:10.0.0.32/255.255.255.255 - IP:10.0.0.33/255.255.255.255 - IP:10.0.0.34/255.255.255.255 - IP:10.0.0.35/255.255.255.255 - IP:10.0.0.36/255.255.255.255 - IP:10.0.0.37/255.255.255.255 - IP:10.0.0.38/255.255.255.255 - IP:10.0.0.39/255.255.255.255 - IP:10.0.0.40/255.255.255.255 - IP:10.0.0.41/255.255.255.255 - IP:10.0.0.42/255.255.255.255 - IP:10.0.0.43/255.255.255.255 - IP:10.0.0.44/255.255.255.255 - IP:10.0.0.45/255.255.255.255 - IP:10.0.0.46/255.255.255.255 - IP:10.0.0.47/255.255.255.255 - IP:10.0.0.48/255.255.255.255 - IP:10.0.0.49/255.255.255.255 - IP:10.0.0.50/255.255.255.255 - IP:10.0.0.51/255.255.255.255 - IP:10.0.0.52/255.255.255.255 - IP:10.0.0.53/255.255.255.255 - IP:10.0.0.54/255.255.255.255 - IP:10.0.0.55/255.255.255.255 - IP:10.0.0.56/255.255.255.255 - IP:10.0.0.57/255.255.255.255 - IP:10.0.0.58/255.255.255.255 - IP:10.0.0.59/255.255.255.255 - IP:10.0.0.60/255.255.255.255 - IP:10.0.0.61/255.255.255.255 - IP:10.0.0.62/255.255.255.255 - IP:10.0.0.63/255.255.255.255 - IP:10.0.0.64/255.255.255.255 - IP:10.0.0.65/255.255.255.255 - IP:10.0.0.66/255.255.255.255 - IP:10.0.0.67/255.255.255.255 - IP:10.0.0.68/255.255.255.255 - IP:10.0.0.69/255.255.255.255 - IP:10.0.0.70/255.255.255.255 - IP:10.0.0.71/255.255.255.255 - IP:10.0.0.72/255.255.255.255 - IP:10.0.0.73/255.255.255.255 - IP:10.0.0.74/255.255.255.255 - IP:10.0.0.75/255.255.255.255 - IP:10.0.0.76/255.255.255.255 - IP:10.0.0.77/255.255.255.255 - IP:10.0.0.78/255.255.255.255 - IP:10.0.0.79/255.255.255.255 - IP:10.0.0.80/255.255.255.255 - IP:10.0.0.81/255.255.255.255 - IP:10.0.0.82/255.255.255.255 - IP:10.0.0.83/255.255.255.255 - IP:10.0.0.84/255.255.255.255 - IP:10.0.0.85/255.255.255.255 - IP:10.0.0.86/255.255.255.255 - IP:10.0.0.87/255.255.255.255 - IP:10.0.0.88/255.255.255.255 - IP:10.0.0.89/255.255.255.255 - IP:10.0.0.90/255.255.255.255 - IP:10.0.0.91/255.255.255.255 - IP:10.0.0.92/255.255.255.255 - IP:10.0.0.93/255.255.255.255 - IP:10.0.0.94/255.255.255.255 - IP:10.0.0.95/255.255.255.255 - IP:10.0.0.96/255.255.255.255 - IP:10.0.0.97/255.255.255.255 - IP:10.0.0.98/255.255.255.255 - IP:10.0.0.99/255.255.255.255 - IP:10.0.0.100/255.255.255.255 - IP:10.0.0.101/255.255.255.255 - IP:10.0.0.102/255.255.255.255 - IP:10.0.0.103/255.255.255.255 - IP:10.0.0.104/255.255.255.255 - IP:10.0.0.105/255.255.255.255 - IP:10.0.0.106/255.255.255.255 - IP:10.0.0.107/255.255.255.255 - IP:10.0.0.108/255.255.255.255 - IP:10.0.0.109/255.255.255.255 - IP:10.0.0.110/255.255.255.255 - IP:10.0.0.111/255.255.255.255 - IP:10.0.0.112/255.255.255.255 - IP:10.0.0.113/255.255.255.255 - IP:10.0.0.114/255.255.255.255 - IP:10.0.0.115/255.255.255.255 - IP:10.0.0.116/255.255.255.255 - IP:10.0.0.117/255.255.255.255 - IP:10.0.0.118/255.255.255.255 - IP:10.0.0.119/255.255.255.255 - IP:10.0.0.120/255.255.255.255 - IP:10.0.0.121/255.255.255.255 - IP:10.0.0.122/255.255.255.255 - IP:10.0.0.123/255.255.255.255 - IP:10.0.0.124/255.255.255.255 - IP:10.0.0.125/255.255.255.255 - IP:10.0.0.126/255.255.255.255 - IP:10.0.0.127/255.255.255.255 - IP:10.0.0.128/255.255.255.255 - IP:10.0.0.129/255.255.255.255 - IP:10.0.0.130/255.255.255.255 - IP:10.0.0.131/255.255.255.255 - IP:10.0.0.132/255.255.255.255 - IP:10.0.0.133/255.255.255.255 - IP:10.0.0.134/255.255.255.255 - IP:10.0.0.135/255.255.255.255 - IP:10.0.0.136/255.255.255.255 - IP:10.0.0.137/255.255.255.255 - IP:10.0.0.138/255.255.255.255 - IP:10.0.0.139/255.255.255.255 - IP:10.0.0.140/255.255.255.255 - IP:10.0.0.141/255.255.255.255 - IP:10.0.0.142/255.255.255.255 - IP:10.0.0.143/255.255.255.255 - IP:10.0.0.144/255.255.255.255 - IP:10.0.0.145/255.255.255.255 - IP:10.0.0.146/255.255.255.255 - IP:10.0.0.147/255.255.255.255 - IP:10.0.0.148/255.255.255.255 - IP:10.0.0.149/255.255.255.255 - IP:10.0.0.150/255.255.255.255 - IP:10.0.0.151/255.255.255.255 - IP:10.0.0.152/255.255.255.255 - IP:10.0.0.153/255.255.255.255 - IP:10.0.0.154/255.255.255.255 - IP:10.0.0.155/255.255.255.255 - IP:10.0.0.156/255.255.255.255 - IP:10.0.0.157/255.255.255.255 - IP:10.0.0.158/255.255.255.255 - IP:10.0.0.159/255.255.255.255 - IP:10.0.0.160/255.255.255.255 - IP:10.0.0.161/255.255.255.255 - IP:10.0.0.162/255.255.255.255 - IP:10.0.0.163/255.255.255.255 - IP:10.0.0.164/255.255.255.255 - IP:10.0.0.165/255.255.255.255 - IP:10.0.0.166/255.255.255.255 - IP:10.0.0.167/255.255.255.255 - IP:10.0.0.168/255.255.255.255 - IP:10.0.0.169/255.255.255.255 - IP:10.0.0.170/255.255.255.255 - DirName: CN = t0 - DirName: CN = t1 - DirName: CN = t2 - DirName: CN = t3 - DirName: CN = t4 - DirName: CN = t5 - DirName: CN = t6 - DirName: CN = t7 - DirName: CN = t8 - DirName: CN = t9 - DirName: CN = t10 - DirName: CN = t11 - DirName: CN = t12 - DirName: CN = t13 - DirName: CN = t14 - DirName: CN = t15 - DirName: CN = t16 - DirName: CN = t17 - DirName: CN = t18 - DirName: CN = t19 - DirName: CN = t20 - DirName: CN = t21 - DirName: CN = t22 - DirName: CN = t23 - DirName: CN = t24 - DirName: CN = t25 - DirName: CN = t26 - DirName: CN = t27 - DirName: CN = t28 - DirName: CN = t29 - DirName: CN = t30 - DirName: CN = t31 - DirName: CN = t32 - DirName: CN = t33 - DirName: CN = t34 - DirName: CN = t35 - DirName: CN = t36 - DirName: CN = t37 - DirName: CN = t38 - DirName: CN = t39 - DirName: CN = t40 - DirName: CN = t41 - DirName: CN = t42 - DirName: CN = t43 - DirName: CN = t44 - DirName: CN = t45 - DirName: CN = t46 - DirName: CN = t47 - DirName: CN = t48 - DirName: CN = t49 - DirName: CN = t50 - DirName: CN = t51 - DirName: CN = t52 - DirName: CN = t53 - DirName: CN = t54 - DirName: CN = t55 - DirName: CN = t56 - DirName: CN = t57 - DirName: CN = t58 - DirName: CN = t59 - DirName: CN = t60 - DirName: CN = t61 - DirName: CN = t62 - DirName: CN = t63 - DirName: CN = t64 - DirName: CN = t65 - DirName: CN = t66 - DirName: CN = t67 - DirName: CN = t68 - DirName: CN = t69 - DirName: CN = t70 - DirName: CN = t71 - DirName: CN = t72 - DirName: CN = t73 - DirName: CN = t74 - DirName: CN = t75 - DirName: CN = t76 - DirName: CN = t77 - DirName: CN = t78 - DirName: CN = t79 - DirName: CN = t80 - DirName: CN = t81 - DirName: CN = t82 - DirName: CN = t83 - DirName: CN = t84 - DirName: CN = t85 - DirName: CN = t86 - DirName: CN = t87 - DirName: CN = t88 - DirName: CN = t89 - DirName: CN = t90 - DirName: CN = t91 - DirName: CN = t92 - DirName: CN = t93 - DirName: CN = t94 - DirName: CN = t95 - DirName: CN = t96 - DirName: CN = t97 - DirName: CN = t98 - DirName: CN = t99 - DirName: CN = t100 - DirName: CN = t101 - DirName: CN = t102 - DirName: CN = t103 - DirName: CN = t104 - DirName: CN = t105 - DirName: CN = t106 - DirName: CN = t107 - DirName: CN = t108 - DirName: CN = t109 - DirName: CN = t110 - DirName: CN = t111 - DirName: CN = t112 - DirName: CN = t113 - DirName: CN = t114 - DirName: CN = t115 - DirName: CN = t116 - DirName: CN = t117 - DirName: CN = t118 - DirName: CN = t119 - DirName: CN = t120 - DirName: CN = t121 - DirName: CN = t122 - DirName: CN = t123 - DirName: CN = t124 - DirName: CN = t125 - DirName: CN = t126 - DirName: CN = t127 - DirName: CN = t128 - DirName: CN = t129 - DirName: CN = t130 - DirName: CN = t131 - DirName: CN = t132 - DirName: CN = t133 - DirName: CN = t134 - DirName: CN = t135 - DirName: CN = t136 - DirName: CN = t137 - DirName: CN = t138 - DirName: CN = t139 - DirName: CN = t140 - DirName: CN = t141 - DirName: CN = t142 - DirName: CN = t143 - DirName: CN = t144 - DirName: CN = t145 - DirName: CN = t146 - DirName: CN = t147 - DirName: CN = t148 - DirName: CN = t149 - DirName: CN = t150 - DirName: CN = t151 - DirName: CN = t152 - DirName: CN = t153 - DirName: CN = t154 - DirName: CN = t155 - DirName: CN = t156 - DirName: CN = t157 - DirName: CN = t158 - DirName: CN = t159 - DirName: CN = t160 - DirName: CN = t161 - DirName: CN = t162 - DirName: CN = t163 - DirName: CN = t164 - DirName: CN = t165 - DirName: CN = t166 - DirName: CN = t167 - DirName: CN = t168 - DirName: CN = t169 - DirName: CN = t170 - DirName: CN = t171 - URI:http://test/0 - URI:http://test/1 - URI:http://test/2 - URI:http://test/3 - URI:http://test/4 - URI:http://test/5 - URI:http://test/6 - URI:http://test/7 - URI:http://test/8 - URI:http://test/9 - URI:http://test/10 - URI:http://test/11 - URI:http://test/12 - URI:http://test/13 - URI:http://test/14 - URI:http://test/15 - URI:http://test/16 - URI:http://test/17 - URI:http://test/18 - URI:http://test/19 - URI:http://test/20 - URI:http://test/21 - URI:http://test/22 - URI:http://test/23 - URI:http://test/24 - URI:http://test/25 - URI:http://test/26 - URI:http://test/27 - URI:http://test/28 - URI:http://test/29 - URI:http://test/30 - URI:http://test/31 - URI:http://test/32 - URI:http://test/33 - URI:http://test/34 - URI:http://test/35 - URI:http://test/36 - URI:http://test/37 - URI:http://test/38 - URI:http://test/39 - URI:http://test/40 - URI:http://test/41 - URI:http://test/42 - URI:http://test/43 - URI:http://test/44 - URI:http://test/45 - URI:http://test/46 - URI:http://test/47 - URI:http://test/48 - URI:http://test/49 - URI:http://test/50 - URI:http://test/51 - URI:http://test/52 - URI:http://test/53 - URI:http://test/54 - URI:http://test/55 - URI:http://test/56 - URI:http://test/57 - URI:http://test/58 - URI:http://test/59 - URI:http://test/60 - URI:http://test/61 - URI:http://test/62 - URI:http://test/63 - URI:http://test/64 - URI:http://test/65 - URI:http://test/66 - URI:http://test/67 - URI:http://test/68 - URI:http://test/69 - URI:http://test/70 - URI:http://test/71 - URI:http://test/72 - URI:http://test/73 - URI:http://test/74 - URI:http://test/75 - URI:http://test/76 - URI:http://test/77 - URI:http://test/78 - URI:http://test/79 - URI:http://test/80 - URI:http://test/81 - URI:http://test/82 - URI:http://test/83 - URI:http://test/84 - URI:http://test/85 - URI:http://test/86 - URI:http://test/87 - URI:http://test/88 - URI:http://test/89 - URI:http://test/90 - URI:http://test/91 - URI:http://test/92 - URI:http://test/93 - URI:http://test/94 - URI:http://test/95 - URI:http://test/96 - URI:http://test/97 - URI:http://test/98 - URI:http://test/99 - URI:http://test/100 - URI:http://test/101 - URI:http://test/102 - URI:http://test/103 - URI:http://test/104 - URI:http://test/105 - URI:http://test/106 - URI:http://test/107 - URI:http://test/108 - URI:http://test/109 - URI:http://test/110 - URI:http://test/111 - URI:http://test/112 - URI:http://test/113 - URI:http://test/114 - URI:http://test/115 - URI:http://test/116 - URI:http://test/117 - URI:http://test/118 - URI:http://test/119 - URI:http://test/120 - URI:http://test/121 - URI:http://test/122 - URI:http://test/123 - URI:http://test/124 - URI:http://test/125 - URI:http://test/126 - URI:http://test/127 - URI:http://test/128 - URI:http://test/129 - URI:http://test/130 - URI:http://test/131 - URI:http://test/132 - URI:http://test/133 - URI:http://test/134 - URI:http://test/135 - URI:http://test/136 - URI:http://test/137 - URI:http://test/138 - URI:http://test/139 - URI:http://test/140 - URI:http://test/141 - URI:http://test/142 - URI:http://test/143 - URI:http://test/144 - URI:http://test/145 - URI:http://test/146 - URI:http://test/147 - URI:http://test/148 - URI:http://test/149 - URI:http://test/150 - URI:http://test/151 - URI:http://test/152 - URI:http://test/153 - URI:http://test/154 - URI:http://test/155 - URI:http://test/156 - URI:http://test/157 - URI:http://test/158 - URI:http://test/159 - URI:http://test/160 - URI:http://test/161 - URI:http://test/162 - URI:http://test/163 - URI:http://test/164 - URI:http://test/165 - URI:http://test/166 - URI:http://test/167 - URI:http://test/168 - URI:http://test/169 - URI:http://test/170 - URI:http://test/171 - URI:http://test/172 - URI:http://test/173 - URI:http://test/174 - URI:http://test/175 - URI:http://test/176 - URI:http://test/177 - URI:http://test/178 - URI:http://test/179 - URI:http://test/180 - URI:http://test/181 - URI:http://test/182 - URI:http://test/183 - URI:http://test/184 - URI:http://test/185 - URI:http://test/186 - URI:http://test/187 - URI:http://test/188 - URI:http://test/189 - URI:http://test/190 - URI:http://test/191 - URI:http://test/192 - URI:http://test/193 - URI:http://test/194 - URI:http://test/195 - URI:http://test/196 - URI:http://test/197 - URI:http://test/198 - URI:http://test/199 - URI:http://test/200 - URI:http://test/201 - URI:http://test/202 - URI:http://test/203 - URI:http://test/204 - URI:http://test/205 - URI:http://test/206 - URI:http://test/207 - URI:http://test/208 - URI:http://test/209 - URI:http://test/210 - URI:http://test/211 - URI:http://test/212 - URI:http://test/213 - URI:http://test/214 - URI:http://test/215 - URI:http://test/216 - URI:http://test/217 - URI:http://test/218 - URI:http://test/219 - URI:http://test/220 - URI:http://test/221 - URI:http://test/222 - URI:http://test/223 - URI:http://test/224 - URI:http://test/225 - URI:http://test/226 - URI:http://test/227 - URI:http://test/228 - URI:http://test/229 - URI:http://test/230 - URI:http://test/231 - URI:http://test/232 - URI:http://test/233 - URI:http://test/234 - URI:http://test/235 - URI:http://test/236 - URI:http://test/237 - URI:http://test/238 - URI:http://test/239 - URI:http://test/240 - URI:http://test/241 - URI:http://test/242 - URI:http://test/243 - URI:http://test/244 - URI:http://test/245 - URI:http://test/246 - URI:http://test/247 - URI:http://test/248 - URI:http://test/249 - URI:http://test/250 - URI:http://test/251 - URI:http://test/252 - URI:http://test/253 - URI:http://test/254 - URI:http://test/255 - URI:http://test/256 - URI:http://test/257 - URI:http://test/258 - URI:http://test/259 - URI:http://test/260 - URI:http://test/261 - URI:http://test/262 - URI:http://test/263 - URI:http://test/264 - URI:http://test/265 - URI:http://test/266 - URI:http://test/267 - URI:http://test/268 - URI:http://test/269 - URI:http://test/270 - URI:http://test/271 - URI:http://test/272 - URI:http://test/273 - URI:http://test/274 - URI:http://test/275 - URI:http://test/276 - URI:http://test/277 - URI:http://test/278 - URI:http://test/279 - URI:http://test/280 - URI:http://test/281 - URI:http://test/282 - URI:http://test/283 - URI:http://test/284 - URI:http://test/285 - URI:http://test/286 - URI:http://test/287 - URI:http://test/288 - URI:http://test/289 - URI:http://test/290 - URI:http://test/291 - URI:http://test/292 - URI:http://test/293 - URI:http://test/294 - URI:http://test/295 - URI:http://test/296 - URI:http://test/297 - URI:http://test/298 - URI:http://test/299 - URI:http://test/300 - URI:http://test/301 - URI:http://test/302 - URI:http://test/303 - URI:http://test/304 - URI:http://test/305 - URI:http://test/306 - URI:http://test/307 - URI:http://test/308 - URI:http://test/309 - URI:http://test/310 - URI:http://test/311 - URI:http://test/312 - URI:http://test/313 - URI:http://test/314 - URI:http://test/315 - URI:http://test/316 - URI:http://test/317 - URI:http://test/318 - URI:http://test/319 - URI:http://test/320 - URI:http://test/321 - URI:http://test/322 - URI:http://test/323 - URI:http://test/324 - URI:http://test/325 - URI:http://test/326 - URI:http://test/327 - URI:http://test/328 - URI:http://test/329 - URI:http://test/330 - URI:http://test/331 - URI:http://test/332 - URI:http://test/333 - URI:http://test/334 - URI:http://test/335 - URI:http://test/336 - URI:http://test/337 - URI:http://test/338 - URI:http://test/339 - URI:http://test/340 - URI:http://test/341 - URI:http://test/342 - URI:http://test/343 - URI:http://test/344 - URI:http://test/345 - URI:http://test/346 - URI:http://test/347 - URI:http://test/348 - URI:http://test/349 - URI:http://test/350 - URI:http://test/351 - URI:http://test/352 - URI:http://test/353 - URI:http://test/354 - URI:http://test/355 - URI:http://test/356 - URI:http://test/357 - URI:http://test/358 - URI:http://test/359 - URI:http://test/360 - URI:http://test/361 - URI:http://test/362 - URI:http://test/363 - URI:http://test/364 - URI:http://test/365 - URI:http://test/366 - URI:http://test/367 - URI:http://test/368 - URI:http://test/369 - URI:http://test/370 - URI:http://test/371 - URI:http://test/372 - URI:http://test/373 - URI:http://test/374 - URI:http://test/375 - URI:http://test/376 - URI:http://test/377 - URI:http://test/378 - URI:http://test/379 - URI:http://test/380 - URI:http://test/381 - URI:http://test/382 - URI:http://test/383 - URI:http://test/384 - URI:http://test/385 - URI:http://test/386 - URI:http://test/387 - URI:http://test/388 - URI:http://test/389 - URI:http://test/390 - URI:http://test/391 - URI:http://test/392 - URI:http://test/393 - URI:http://test/394 - URI:http://test/395 - URI:http://test/396 - URI:http://test/397 - URI:http://test/398 - URI:http://test/399 - URI:http://test/400 - URI:http://test/401 - URI:http://test/402 - URI:http://test/403 - URI:http://test/404 - URI:http://test/405 - URI:http://test/406 - URI:http://test/407 - URI:http://test/408 - URI:http://test/409 - URI:http://test/410 - URI:http://test/411 - URI:http://test/412 - URI:http://test/413 - URI:http://test/414 - URI:http://test/415 - URI:http://test/416 - URI:http://test/417 - URI:http://test/418 - URI:http://test/419 - URI:http://test/420 - URI:http://test/421 - URI:http://test/422 - URI:http://test/423 - URI:http://test/424 - URI:http://test/425 - URI:http://test/426 - URI:http://test/427 - URI:http://test/428 - URI:http://test/429 - URI:http://test/430 - URI:http://test/431 - URI:http://test/432 - URI:http://test/433 - URI:http://test/434 - URI:http://test/435 - URI:http://test/436 - URI:http://test/437 - URI:http://test/438 - URI:http://test/439 - URI:http://test/440 - URI:http://test/441 - URI:http://test/442 - URI:http://test/443 - URI:http://test/444 - URI:http://test/445 - URI:http://test/446 - URI:http://test/447 - URI:http://test/448 - URI:http://test/449 - URI:http://test/450 - URI:http://test/451 - URI:http://test/452 - URI:http://test/453 - URI:http://test/454 - URI:http://test/455 - URI:http://test/456 - URI:http://test/457 - URI:http://test/458 - URI:http://test/459 - URI:http://test/460 - URI:http://test/461 - URI:http://test/462 - URI:http://test/463 - URI:http://test/464 - URI:http://test/465 - URI:http://test/466 - URI:http://test/467 - URI:http://test/468 - URI:http://test/469 - URI:http://test/470 - URI:http://test/471 - URI:http://test/472 - URI:http://test/473 - URI:http://test/474 - URI:http://test/475 - URI:http://test/476 - URI:http://test/477 - URI:http://test/478 - URI:http://test/479 - URI:http://test/480 - URI:http://test/481 - URI:http://test/482 - URI:http://test/483 - URI:http://test/484 - URI:http://test/485 - URI:http://test/486 - URI:http://test/487 - URI:http://test/488 - URI:http://test/489 - URI:http://test/490 - URI:http://test/491 - URI:http://test/492 - URI:http://test/493 - URI:http://test/494 - URI:http://test/495 - URI:http://test/496 - URI:http://test/497 - URI:http://test/498 - URI:http://test/499 - URI:http://test/500 - URI:http://test/501 - URI:http://test/502 - URI:http://test/503 - URI:http://test/504 - URI:http://test/505 - URI:http://test/506 - URI:http://test/507 - URI:http://test/508 - URI:http://test/509 - URI:http://test/510 - URI:http://test/511 - URI:http://test/512 - URI:http://test/513 - URI:http://test/514 - URI:http://test/515 - URI:http://test/516 - URI:http://test/517 - URI:http://test/518 - URI:http://test/519 - URI:http://test/520 - URI:http://test/521 - URI:http://test/522 - URI:http://test/523 - URI:http://test/524 - URI:http://test/525 - URI:http://test/526 - URI:http://test/527 - URI:http://test/528 - URI:http://test/529 - URI:http://test/530 - URI:http://test/531 - URI:http://test/532 - URI:http://test/533 - URI:http://test/534 - URI:http://test/535 - URI:http://test/536 - URI:http://test/537 - URI:http://test/538 - URI:http://test/539 - URI:http://test/540 - URI:http://test/541 - URI:http://test/542 - URI:http://test/543 - URI:http://test/544 - URI:http://test/545 - URI:http://test/546 - URI:http://test/547 - URI:http://test/548 - URI:http://test/549 - URI:http://test/550 - URI:http://test/551 - URI:http://test/552 - URI:http://test/553 - URI:http://test/554 - URI:http://test/555 - URI:http://test/556 - URI:http://test/557 - URI:http://test/558 - URI:http://test/559 - URI:http://test/560 - URI:http://test/561 - URI:http://test/562 - URI:http://test/563 - URI:http://test/564 - URI:http://test/565 - URI:http://test/566 - URI:http://test/567 - URI:http://test/568 - URI:http://test/569 - URI:http://test/570 - URI:http://test/571 - URI:http://test/572 - URI:http://test/573 - URI:http://test/574 - URI:http://test/575 - URI:http://test/576 - URI:http://test/577 - URI:http://test/578 - URI:http://test/579 - URI:http://test/580 - URI:http://test/581 - URI:http://test/582 - URI:http://test/583 - URI:http://test/584 - URI:http://test/585 - URI:http://test/586 - URI:http://test/587 - URI:http://test/588 - URI:http://test/589 - URI:http://test/590 - URI:http://test/591 - URI:http://test/592 - URI:http://test/593 - URI:http://test/594 - URI:http://test/595 - URI:http://test/596 - URI:http://test/597 - URI:http://test/598 - URI:http://test/599 - URI:http://test/600 - URI:http://test/601 - URI:http://test/602 - URI:http://test/603 - URI:http://test/604 - URI:http://test/605 - URI:http://test/606 - URI:http://test/607 - URI:http://test/608 - URI:http://test/609 - URI:http://test/610 - URI:http://test/611 - URI:http://test/612 - URI:http://test/613 - URI:http://test/614 - URI:http://test/615 - URI:http://test/616 - URI:http://test/617 - URI:http://test/618 - URI:http://test/619 - URI:http://test/620 - URI:http://test/621 - URI:http://test/622 - URI:http://test/623 - URI:http://test/624 - URI:http://test/625 - URI:http://test/626 - URI:http://test/627 - URI:http://test/628 - URI:http://test/629 - URI:http://test/630 - URI:http://test/631 - URI:http://test/632 - URI:http://test/633 - URI:http://test/634 - URI:http://test/635 - URI:http://test/636 - URI:http://test/637 - URI:http://test/638 - URI:http://test/639 - URI:http://test/640 - URI:http://test/641 - URI:http://test/642 - URI:http://test/643 - URI:http://test/644 - URI:http://test/645 - URI:http://test/646 - URI:http://test/647 - URI:http://test/648 - URI:http://test/649 - URI:http://test/650 - URI:http://test/651 - URI:http://test/652 - URI:http://test/653 - URI:http://test/654 - URI:http://test/655 - URI:http://test/656 - URI:http://test/657 - URI:http://test/658 - URI:http://test/659 - URI:http://test/660 - URI:http://test/661 - URI:http://test/662 - URI:http://test/663 - URI:http://test/664 - URI:http://test/665 - URI:http://test/666 - URI:http://test/667 - URI:http://test/668 - URI:http://test/669 - URI:http://test/670 - URI:http://test/671 - URI:http://test/672 - URI:http://test/673 - URI:http://test/674 - URI:http://test/675 - URI:http://test/676 - URI:http://test/677 - URI:http://test/678 - URI:http://test/679 - URI:http://test/680 - URI:http://test/681 - URI:http://test/682 - URI:http://test/683 - URI:http://test/684 - URI:http://test/685 - URI:http://test/686 - URI:http://test/687 - URI:http://test/688 - URI:http://test/689 - URI:http://test/690 - URI:http://test/691 - URI:http://test/692 - URI:http://test/693 - URI:http://test/694 - URI:http://test/695 - URI:http://test/696 - URI:http://test/697 - URI:http://test/698 - URI:http://test/699 - URI:http://test/700 - URI:http://test/701 - URI:http://test/702 - URI:http://test/703 - URI:http://test/704 - URI:http://test/705 - URI:http://test/706 - URI:http://test/707 - URI:http://test/708 - URI:http://test/709 - URI:http://test/710 - URI:http://test/711 - URI:http://test/712 - URI:http://test/713 - URI:http://test/714 - URI:http://test/715 - URI:http://test/716 - URI:http://test/717 - URI:http://test/718 - URI:http://test/719 - URI:http://test/720 - URI:http://test/721 - URI:http://test/722 - URI:http://test/723 - URI:http://test/724 - URI:http://test/725 - URI:http://test/726 - URI:http://test/727 - URI:http://test/728 - URI:http://test/729 - URI:http://test/730 - URI:http://test/731 - URI:http://test/732 - URI:http://test/733 - URI:http://test/734 - URI:http://test/735 - URI:http://test/736 - URI:http://test/737 - URI:http://test/738 - URI:http://test/739 - URI:http://test/740 - URI:http://test/741 - URI:http://test/742 - URI:http://test/743 - URI:http://test/744 - URI:http://test/745 - URI:http://test/746 - URI:http://test/747 - URI:http://test/748 - URI:http://test/749 - URI:http://test/750 - URI:http://test/751 - URI:http://test/752 - URI:http://test/753 - URI:http://test/754 - URI:http://test/755 - URI:http://test/756 - URI:http://test/757 - URI:http://test/758 - URI:http://test/759 - URI:http://test/760 - URI:http://test/761 - URI:http://test/762 - URI:http://test/763 - URI:http://test/764 - URI:http://test/765 - URI:http://test/766 - URI:http://test/767 - URI:http://test/768 - URI:http://test/769 - URI:http://test/770 - URI:http://test/771 - URI:http://test/772 - URI:http://test/773 - URI:http://test/774 - URI:http://test/775 - URI:http://test/776 - URI:http://test/777 - URI:http://test/778 - URI:http://test/779 - URI:http://test/780 - URI:http://test/781 - URI:http://test/782 - URI:http://test/783 - URI:http://test/784 - URI:http://test/785 - URI:http://test/786 - URI:http://test/787 - URI:http://test/788 - URI:http://test/789 - URI:http://test/790 - URI:http://test/791 - URI:http://test/792 - URI:http://test/793 - URI:http://test/794 - URI:http://test/795 - URI:http://test/796 - URI:http://test/797 - URI:http://test/798 - URI:http://test/799 - URI:http://test/800 - URI:http://test/801 - URI:http://test/802 - URI:http://test/803 - URI:http://test/804 - URI:http://test/805 - URI:http://test/806 - URI:http://test/807 - URI:http://test/808 - URI:http://test/809 - URI:http://test/810 - URI:http://test/811 - URI:http://test/812 - URI:http://test/813 - URI:http://test/814 - URI:http://test/815 - URI:http://test/816 - URI:http://test/817 - URI:http://test/818 - URI:http://test/819 - URI:http://test/820 - URI:http://test/821 - URI:http://test/822 - URI:http://test/823 - URI:http://test/824 - URI:http://test/825 - URI:http://test/826 - URI:http://test/827 - URI:http://test/828 - URI:http://test/829 - URI:http://test/830 - URI:http://test/831 - URI:http://test/832 - URI:http://test/833 - URI:http://test/834 - URI:http://test/835 - URI:http://test/836 - URI:http://test/837 - URI:http://test/838 - URI:http://test/839 - URI:http://test/840 - URI:http://test/841 - URI:http://test/842 - URI:http://test/843 - URI:http://test/844 - URI:http://test/845 - URI:http://test/846 - URI:http://test/847 - URI:http://test/848 - URI:http://test/849 - URI:http://test/850 - URI:http://test/851 - URI:http://test/852 - URI:http://test/853 - URI:http://test/854 - URI:http://test/855 - URI:http://test/856 - URI:http://test/857 - URI:http://test/858 - URI:http://test/859 - URI:http://test/860 - URI:http://test/861 - URI:http://test/862 - URI:http://test/863 - URI:http://test/864 - URI:http://test/865 - URI:http://test/866 - URI:http://test/867 - URI:http://test/868 - URI:http://test/869 - URI:http://test/870 - URI:http://test/871 - URI:http://test/872 - URI:http://test/873 - URI:http://test/874 - URI:http://test/875 - URI:http://test/876 - URI:http://test/877 - URI:http://test/878 - URI:http://test/879 - URI:http://test/880 - URI:http://test/881 - URI:http://test/882 - URI:http://test/883 - URI:http://test/884 - URI:http://test/885 - URI:http://test/886 - URI:http://test/887 - URI:http://test/888 - URI:http://test/889 - URI:http://test/890 - URI:http://test/891 - URI:http://test/892 - URI:http://test/893 - URI:http://test/894 - URI:http://test/895 - URI:http://test/896 - URI:http://test/897 - URI:http://test/898 - URI:http://test/899 - URI:http://test/900 - URI:http://test/901 - URI:http://test/902 - URI:http://test/903 - URI:http://test/904 - URI:http://test/905 - URI:http://test/906 - URI:http://test/907 - URI:http://test/908 - URI:http://test/909 - URI:http://test/910 - URI:http://test/911 - URI:http://test/912 - URI:http://test/913 - URI:http://test/914 - URI:http://test/915 - URI:http://test/916 - URI:http://test/917 - URI:http://test/918 - URI:http://test/919 - URI:http://test/920 - URI:http://test/921 - URI:http://test/922 - URI:http://test/923 - URI:http://test/924 - URI:http://test/925 - URI:http://test/926 - URI:http://test/927 - URI:http://test/928 - URI:http://test/929 - URI:http://test/930 - URI:http://test/931 - URI:http://test/932 - URI:http://test/933 - URI:http://test/934 - URI:http://test/935 - URI:http://test/936 - URI:http://test/937 - URI:http://test/938 - URI:http://test/939 - URI:http://test/940 - URI:http://test/941 - URI:http://test/942 - URI:http://test/943 - URI:http://test/944 - URI:http://test/945 - URI:http://test/946 - URI:http://test/947 - URI:http://test/948 - URI:http://test/949 - URI:http://test/950 - URI:http://test/951 - URI:http://test/952 - URI:http://test/953 - URI:http://test/954 - URI:http://test/955 - URI:http://test/956 - URI:http://test/957 - URI:http://test/958 - URI:http://test/959 - URI:http://test/960 - URI:http://test/961 - URI:http://test/962 - URI:http://test/963 - URI:http://test/964 - URI:http://test/965 - URI:http://test/966 - URI:http://test/967 - URI:http://test/968 - URI:http://test/969 - URI:http://test/970 - URI:http://test/971 - URI:http://test/972 - URI:http://test/973 - URI:http://test/974 - URI:http://test/975 - URI:http://test/976 - URI:http://test/977 - URI:http://test/978 - URI:http://test/979 - URI:http://test/980 - URI:http://test/981 - URI:http://test/982 - URI:http://test/983 - URI:http://test/984 - URI:http://test/985 - URI:http://test/986 - URI:http://test/987 - URI:http://test/988 - URI:http://test/989 - URI:http://test/990 - URI:http://test/991 - URI:http://test/992 - URI:http://test/993 - URI:http://test/994 - URI:http://test/995 - URI:http://test/996 - URI:http://test/997 - URI:http://test/998 - URI:http://test/999 - URI:http://test/1000 - URI:http://test/1001 - URI:http://test/1002 - URI:http://test/1003 - URI:http://test/1004 - URI:http://test/1005 - URI:http://test/1006 - URI:http://test/1007 - URI:http://test/1008 - URI:http://test/1009 - URI:http://test/1010 - URI:http://test/1011 - URI:http://test/1012 - URI:http://test/1013 - URI:http://test/1014 - URI:http://test/1015 - URI:http://test/1016 - URI:http://test/1017 - URI:http://test/1018 - URI:http://test/1019 - URI:http://test/1020 - URI:http://test/1021 - URI:http://test/1022 - URI:http://test/1023 - URI:http://test/1024 - Excluded: - DNS:x0.test - DNS:x1.test - DNS:x2.test - DNS:x3.test - DNS:x4.test - DNS:x5.test - DNS:x6.test - DNS:x7.test - DNS:x8.test - DNS:x9.test - DNS:x10.test - DNS:x11.test - DNS:x12.test - DNS:x13.test - DNS:x14.test - DNS:x15.test - DNS:x16.test - DNS:x17.test - DNS:x18.test - DNS:x19.test - DNS:x20.test - DNS:x21.test - DNS:x22.test - DNS:x23.test - DNS:x24.test - DNS:x25.test - DNS:x26.test - DNS:x27.test - DNS:x28.test - DNS:x29.test - DNS:x30.test - DNS:x31.test - DNS:x32.test - DNS:x33.test - DNS:x34.test - DNS:x35.test - DNS:x36.test - DNS:x37.test - DNS:x38.test - DNS:x39.test - DNS:x40.test - DNS:x41.test - DNS:x42.test - DNS:x43.test - DNS:x44.test - DNS:x45.test - DNS:x46.test - DNS:x47.test - DNS:x48.test - DNS:x49.test - DNS:x50.test - DNS:x51.test - DNS:x52.test - DNS:x53.test - DNS:x54.test - DNS:x55.test - DNS:x56.test - DNS:x57.test - DNS:x58.test - DNS:x59.test - DNS:x60.test - DNS:x61.test - DNS:x62.test - DNS:x63.test - DNS:x64.test - DNS:x65.test - DNS:x66.test - DNS:x67.test - DNS:x68.test - DNS:x69.test - DNS:x70.test - DNS:x71.test - DNS:x72.test - DNS:x73.test - DNS:x74.test - DNS:x75.test - DNS:x76.test - DNS:x77.test - DNS:x78.test - DNS:x79.test - DNS:x80.test - DNS:x81.test - DNS:x82.test - DNS:x83.test - DNS:x84.test - DNS:x85.test - DNS:x86.test - DNS:x87.test - DNS:x88.test - DNS:x89.test - DNS:x90.test - DNS:x91.test - DNS:x92.test - DNS:x93.test - DNS:x94.test - DNS:x95.test - DNS:x96.test - DNS:x97.test - DNS:x98.test - DNS:x99.test - DNS:x100.test - DNS:x101.test - DNS:x102.test - DNS:x103.test - DNS:x104.test - DNS:x105.test - DNS:x106.test - DNS:x107.test - DNS:x108.test - DNS:x109.test - DNS:x110.test - DNS:x111.test - DNS:x112.test - DNS:x113.test - DNS:x114.test - DNS:x115.test - DNS:x116.test - DNS:x117.test - DNS:x118.test - DNS:x119.test - DNS:x120.test - DNS:x121.test - DNS:x122.test - DNS:x123.test - DNS:x124.test - DNS:x125.test - DNS:x126.test - DNS:x127.test - DNS:x128.test - DNS:x129.test - DNS:x130.test - DNS:x131.test - DNS:x132.test - DNS:x133.test - DNS:x134.test - DNS:x135.test - DNS:x136.test - DNS:x137.test - DNS:x138.test - DNS:x139.test - DNS:x140.test - DNS:x141.test - DNS:x142.test - DNS:x143.test - DNS:x144.test - DNS:x145.test - DNS:x146.test - DNS:x147.test - DNS:x148.test - DNS:x149.test - DNS:x150.test - DNS:x151.test - DNS:x152.test - DNS:x153.test - DNS:x154.test - DNS:x155.test - DNS:x156.test - DNS:x157.test - DNS:x158.test - DNS:x159.test - DNS:x160.test - DNS:x161.test - DNS:x162.test - DNS:x163.test - DNS:x164.test - DNS:x165.test - DNS:x166.test - DNS:x167.test - DNS:x168.test - DNS:x169.test - IP:11.0.0.0/255.255.255.255 - IP:11.0.0.1/255.255.255.255 - IP:11.0.0.2/255.255.255.255 - IP:11.0.0.3/255.255.255.255 - IP:11.0.0.4/255.255.255.255 - IP:11.0.0.5/255.255.255.255 - IP:11.0.0.6/255.255.255.255 - IP:11.0.0.7/255.255.255.255 - IP:11.0.0.8/255.255.255.255 - IP:11.0.0.9/255.255.255.255 - IP:11.0.0.10/255.255.255.255 - IP:11.0.0.11/255.255.255.255 - IP:11.0.0.12/255.255.255.255 - IP:11.0.0.13/255.255.255.255 - IP:11.0.0.14/255.255.255.255 - IP:11.0.0.15/255.255.255.255 - IP:11.0.0.16/255.255.255.255 - IP:11.0.0.17/255.255.255.255 - IP:11.0.0.18/255.255.255.255 - IP:11.0.0.19/255.255.255.255 - IP:11.0.0.20/255.255.255.255 - IP:11.0.0.21/255.255.255.255 - IP:11.0.0.22/255.255.255.255 - IP:11.0.0.23/255.255.255.255 - IP:11.0.0.24/255.255.255.255 - IP:11.0.0.25/255.255.255.255 - IP:11.0.0.26/255.255.255.255 - IP:11.0.0.27/255.255.255.255 - IP:11.0.0.28/255.255.255.255 - IP:11.0.0.29/255.255.255.255 - IP:11.0.0.30/255.255.255.255 - IP:11.0.0.31/255.255.255.255 - IP:11.0.0.32/255.255.255.255 - IP:11.0.0.33/255.255.255.255 - IP:11.0.0.34/255.255.255.255 - IP:11.0.0.35/255.255.255.255 - IP:11.0.0.36/255.255.255.255 - IP:11.0.0.37/255.255.255.255 - IP:11.0.0.38/255.255.255.255 - IP:11.0.0.39/255.255.255.255 - IP:11.0.0.40/255.255.255.255 - IP:11.0.0.41/255.255.255.255 - IP:11.0.0.42/255.255.255.255 - IP:11.0.0.43/255.255.255.255 - IP:11.0.0.44/255.255.255.255 - IP:11.0.0.45/255.255.255.255 - IP:11.0.0.46/255.255.255.255 - IP:11.0.0.47/255.255.255.255 - IP:11.0.0.48/255.255.255.255 - IP:11.0.0.49/255.255.255.255 - IP:11.0.0.50/255.255.255.255 - IP:11.0.0.51/255.255.255.255 - IP:11.0.0.52/255.255.255.255 - IP:11.0.0.53/255.255.255.255 - IP:11.0.0.54/255.255.255.255 - IP:11.0.0.55/255.255.255.255 - IP:11.0.0.56/255.255.255.255 - IP:11.0.0.57/255.255.255.255 - IP:11.0.0.58/255.255.255.255 - IP:11.0.0.59/255.255.255.255 - IP:11.0.0.60/255.255.255.255 - IP:11.0.0.61/255.255.255.255 - IP:11.0.0.62/255.255.255.255 - IP:11.0.0.63/255.255.255.255 - IP:11.0.0.64/255.255.255.255 - IP:11.0.0.65/255.255.255.255 - IP:11.0.0.66/255.255.255.255 - IP:11.0.0.67/255.255.255.255 - IP:11.0.0.68/255.255.255.255 - IP:11.0.0.69/255.255.255.255 - IP:11.0.0.70/255.255.255.255 - IP:11.0.0.71/255.255.255.255 - IP:11.0.0.72/255.255.255.255 - IP:11.0.0.73/255.255.255.255 - IP:11.0.0.74/255.255.255.255 - IP:11.0.0.75/255.255.255.255 - IP:11.0.0.76/255.255.255.255 - IP:11.0.0.77/255.255.255.255 - IP:11.0.0.78/255.255.255.255 - IP:11.0.0.79/255.255.255.255 - IP:11.0.0.80/255.255.255.255 - IP:11.0.0.81/255.255.255.255 - IP:11.0.0.82/255.255.255.255 - IP:11.0.0.83/255.255.255.255 - IP:11.0.0.84/255.255.255.255 - IP:11.0.0.85/255.255.255.255 - IP:11.0.0.86/255.255.255.255 - IP:11.0.0.87/255.255.255.255 - IP:11.0.0.88/255.255.255.255 - IP:11.0.0.89/255.255.255.255 - IP:11.0.0.90/255.255.255.255 - IP:11.0.0.91/255.255.255.255 - IP:11.0.0.92/255.255.255.255 - IP:11.0.0.93/255.255.255.255 - IP:11.0.0.94/255.255.255.255 - IP:11.0.0.95/255.255.255.255 - IP:11.0.0.96/255.255.255.255 - IP:11.0.0.97/255.255.255.255 - IP:11.0.0.98/255.255.255.255 - IP:11.0.0.99/255.255.255.255 - IP:11.0.0.100/255.255.255.255 - IP:11.0.0.101/255.255.255.255 - IP:11.0.0.102/255.255.255.255 - IP:11.0.0.103/255.255.255.255 - IP:11.0.0.104/255.255.255.255 - IP:11.0.0.105/255.255.255.255 - IP:11.0.0.106/255.255.255.255 - IP:11.0.0.107/255.255.255.255 - IP:11.0.0.108/255.255.255.255 - IP:11.0.0.109/255.255.255.255 - IP:11.0.0.110/255.255.255.255 - IP:11.0.0.111/255.255.255.255 - IP:11.0.0.112/255.255.255.255 - IP:11.0.0.113/255.255.255.255 - IP:11.0.0.114/255.255.255.255 - IP:11.0.0.115/255.255.255.255 - IP:11.0.0.116/255.255.255.255 - IP:11.0.0.117/255.255.255.255 - IP:11.0.0.118/255.255.255.255 - IP:11.0.0.119/255.255.255.255 - IP:11.0.0.120/255.255.255.255 - IP:11.0.0.121/255.255.255.255 - IP:11.0.0.122/255.255.255.255 - IP:11.0.0.123/255.255.255.255 - IP:11.0.0.124/255.255.255.255 - IP:11.0.0.125/255.255.255.255 - IP:11.0.0.126/255.255.255.255 - IP:11.0.0.127/255.255.255.255 - IP:11.0.0.128/255.255.255.255 - IP:11.0.0.129/255.255.255.255 - IP:11.0.0.130/255.255.255.255 - IP:11.0.0.131/255.255.255.255 - IP:11.0.0.132/255.255.255.255 - IP:11.0.0.133/255.255.255.255 - IP:11.0.0.134/255.255.255.255 - IP:11.0.0.135/255.255.255.255 - IP:11.0.0.136/255.255.255.255 - IP:11.0.0.137/255.255.255.255 - IP:11.0.0.138/255.255.255.255 - IP:11.0.0.139/255.255.255.255 - IP:11.0.0.140/255.255.255.255 - IP:11.0.0.141/255.255.255.255 - IP:11.0.0.142/255.255.255.255 - IP:11.0.0.143/255.255.255.255 - IP:11.0.0.144/255.255.255.255 - IP:11.0.0.145/255.255.255.255 - IP:11.0.0.146/255.255.255.255 - IP:11.0.0.147/255.255.255.255 - IP:11.0.0.148/255.255.255.255 - IP:11.0.0.149/255.255.255.255 - IP:11.0.0.150/255.255.255.255 - IP:11.0.0.151/255.255.255.255 - IP:11.0.0.152/255.255.255.255 - IP:11.0.0.153/255.255.255.255 - IP:11.0.0.154/255.255.255.255 - IP:11.0.0.155/255.255.255.255 - IP:11.0.0.156/255.255.255.255 - IP:11.0.0.157/255.255.255.255 - IP:11.0.0.158/255.255.255.255 - IP:11.0.0.159/255.255.255.255 - IP:11.0.0.160/255.255.255.255 - IP:11.0.0.161/255.255.255.255 - IP:11.0.0.162/255.255.255.255 - IP:11.0.0.163/255.255.255.255 - IP:11.0.0.164/255.255.255.255 - IP:11.0.0.165/255.255.255.255 - IP:11.0.0.166/255.255.255.255 - IP:11.0.0.167/255.255.255.255 - IP:11.0.0.168/255.255.255.255 - IP:11.0.0.169/255.255.255.255 - DirName: CN = x0 - DirName: CN = x1 - DirName: CN = x2 - DirName: CN = x3 - DirName: CN = x4 - DirName: CN = x5 - DirName: CN = x6 - DirName: CN = x7 - DirName: CN = x8 - DirName: CN = x9 - DirName: CN = x10 - DirName: CN = x11 - DirName: CN = x12 - DirName: CN = x13 - DirName: CN = x14 - DirName: CN = x15 - DirName: CN = x16 - DirName: CN = x17 - DirName: CN = x18 - DirName: CN = x19 - DirName: CN = x20 - DirName: CN = x21 - DirName: CN = x22 - DirName: CN = x23 - DirName: CN = x24 - DirName: CN = x25 - DirName: CN = x26 - DirName: CN = x27 - DirName: CN = x28 - DirName: CN = x29 - DirName: CN = x30 - DirName: CN = x31 - DirName: CN = x32 - DirName: CN = x33 - DirName: CN = x34 - DirName: CN = x35 - DirName: CN = x36 - DirName: CN = x37 - DirName: CN = x38 - DirName: CN = x39 - DirName: CN = x40 - DirName: CN = x41 - DirName: CN = x42 - DirName: CN = x43 - DirName: CN = x44 - DirName: CN = x45 - DirName: CN = x46 - DirName: CN = x47 - DirName: CN = x48 - DirName: CN = x49 - DirName: CN = x50 - DirName: CN = x51 - DirName: CN = x52 - DirName: CN = x53 - DirName: CN = x54 - DirName: CN = x55 - DirName: CN = x56 - DirName: CN = x57 - DirName: CN = x58 - DirName: CN = x59 - DirName: CN = x60 - DirName: CN = x61 - DirName: CN = x62 - DirName: CN = x63 - DirName: CN = x64 - DirName: CN = x65 - DirName: CN = x66 - DirName: CN = x67 - DirName: CN = x68 - DirName: CN = x69 - DirName: CN = x70 - DirName: CN = x71 - DirName: CN = x72 - DirName: CN = x73 - DirName: CN = x74 - DirName: CN = x75 - DirName: CN = x76 - DirName: CN = x77 - DirName: CN = x78 - DirName: CN = x79 - DirName: CN = x80 - DirName: CN = x81 - DirName: CN = x82 - DirName: CN = x83 - DirName: CN = x84 - DirName: CN = x85 - DirName: CN = x86 - DirName: CN = x87 - DirName: CN = x88 - DirName: CN = x89 - DirName: CN = x90 - DirName: CN = x91 - DirName: CN = x92 - DirName: CN = x93 - DirName: CN = x94 - DirName: CN = x95 - DirName: CN = x96 - DirName: CN = x97 - DirName: CN = x98 - DirName: CN = x99 - DirName: CN = x100 - DirName: CN = x101 - DirName: CN = x102 - DirName: CN = x103 - DirName: CN = x104 - DirName: CN = x105 - DirName: CN = x106 - DirName: CN = x107 - DirName: CN = x108 - DirName: CN = x109 - DirName: CN = x110 - DirName: CN = x111 - DirName: CN = x112 - DirName: CN = x113 - DirName: CN = x114 - DirName: CN = x115 - DirName: CN = x116 - DirName: CN = x117 - DirName: CN = x118 - DirName: CN = x119 - DirName: CN = x120 - DirName: CN = x121 - DirName: CN = x122 - DirName: CN = x123 - DirName: CN = x124 - DirName: CN = x125 - DirName: CN = x126 - DirName: CN = x127 - DirName: CN = x128 - DirName: CN = x129 - DirName: CN = x130 - DirName: CN = x131 - DirName: CN = x132 - DirName: CN = x133 - DirName: CN = x134 - DirName: CN = x135 - DirName: CN = x136 - DirName: CN = x137 - DirName: CN = x138 - DirName: CN = x139 - DirName: CN = x140 - DirName: CN = x141 - DirName: CN = x142 - DirName: CN = x143 - DirName: CN = x144 - DirName: CN = x145 - DirName: CN = x146 - DirName: CN = x147 - DirName: CN = x148 - DirName: CN = x149 - DirName: CN = x150 - DirName: CN = x151 - DirName: CN = x152 - DirName: CN = x153 - DirName: CN = x154 - DirName: CN = x155 - DirName: CN = x156 - DirName: CN = x157 - DirName: CN = x158 - DirName: CN = x159 - DirName: CN = x160 - DirName: CN = x161 - DirName: CN = x162 - DirName: CN = x163 - DirName: CN = x164 - DirName: CN = x165 - DirName: CN = x166 - DirName: CN = x167 - DirName: CN = x168 - DirName: CN = x169 - URI:http://xest/0 - URI:http://xest/1 - URI:http://xest/2 - URI:http://xest/3 - URI:http://xest/4 - URI:http://xest/5 - URI:http://xest/6 - URI:http://xest/7 - URI:http://xest/8 - URI:http://xest/9 - URI:http://xest/10 - URI:http://xest/11 - URI:http://xest/12 - URI:http://xest/13 - URI:http://xest/14 - URI:http://xest/15 - URI:http://xest/16 - URI:http://xest/17 - URI:http://xest/18 - URI:http://xest/19 - URI:http://xest/20 - URI:http://xest/21 - URI:http://xest/22 - URI:http://xest/23 - URI:http://xest/24 - URI:http://xest/25 - URI:http://xest/26 - URI:http://xest/27 - URI:http://xest/28 - URI:http://xest/29 - URI:http://xest/30 - URI:http://xest/31 - URI:http://xest/32 - URI:http://xest/33 - URI:http://xest/34 - URI:http://xest/35 - URI:http://xest/36 - URI:http://xest/37 - URI:http://xest/38 - URI:http://xest/39 - URI:http://xest/40 - URI:http://xest/41 - URI:http://xest/42 - URI:http://xest/43 - URI:http://xest/44 - URI:http://xest/45 - URI:http://xest/46 - URI:http://xest/47 - URI:http://xest/48 - URI:http://xest/49 - URI:http://xest/50 - URI:http://xest/51 - URI:http://xest/52 - URI:http://xest/53 - URI:http://xest/54 - URI:http://xest/55 - URI:http://xest/56 - URI:http://xest/57 - URI:http://xest/58 - URI:http://xest/59 - URI:http://xest/60 - URI:http://xest/61 - URI:http://xest/62 - URI:http://xest/63 - URI:http://xest/64 - URI:http://xest/65 - URI:http://xest/66 - URI:http://xest/67 - URI:http://xest/68 - URI:http://xest/69 - URI:http://xest/70 - URI:http://xest/71 - URI:http://xest/72 - URI:http://xest/73 - URI:http://xest/74 - URI:http://xest/75 - URI:http://xest/76 - URI:http://xest/77 - URI:http://xest/78 - URI:http://xest/79 - URI:http://xest/80 - URI:http://xest/81 - URI:http://xest/82 - URI:http://xest/83 - URI:http://xest/84 - URI:http://xest/85 - URI:http://xest/86 - URI:http://xest/87 - URI:http://xest/88 - URI:http://xest/89 - URI:http://xest/90 - URI:http://xest/91 - URI:http://xest/92 - URI:http://xest/93 - URI:http://xest/94 - URI:http://xest/95 - URI:http://xest/96 - URI:http://xest/97 - URI:http://xest/98 - URI:http://xest/99 - URI:http://xest/100 - URI:http://xest/101 - URI:http://xest/102 - URI:http://xest/103 - URI:http://xest/104 - URI:http://xest/105 - URI:http://xest/106 - URI:http://xest/107 - URI:http://xest/108 - URI:http://xest/109 - URI:http://xest/110 - URI:http://xest/111 - URI:http://xest/112 - URI:http://xest/113 - URI:http://xest/114 - URI:http://xest/115 - URI:http://xest/116 - URI:http://xest/117 - URI:http://xest/118 - URI:http://xest/119 - URI:http://xest/120 - URI:http://xest/121 - URI:http://xest/122 - URI:http://xest/123 - URI:http://xest/124 - URI:http://xest/125 - URI:http://xest/126 - URI:http://xest/127 - URI:http://xest/128 - URI:http://xest/129 - URI:http://xest/130 - URI:http://xest/131 - URI:http://xest/132 - URI:http://xest/133 - URI:http://xest/134 - URI:http://xest/135 - URI:http://xest/136 - URI:http://xest/137 - URI:http://xest/138 - URI:http://xest/139 - URI:http://xest/140 - URI:http://xest/141 - URI:http://xest/142 - URI:http://xest/143 - URI:http://xest/144 - URI:http://xest/145 - URI:http://xest/146 - URI:http://xest/147 - URI:http://xest/148 - URI:http://xest/149 - URI:http://xest/150 - URI:http://xest/151 - URI:http://xest/152 - URI:http://xest/153 - URI:http://xest/154 - URI:http://xest/155 - URI:http://xest/156 - URI:http://xest/157 - URI:http://xest/158 - URI:http://xest/159 - URI:http://xest/160 - URI:http://xest/161 - URI:http://xest/162 - URI:http://xest/163 - URI:http://xest/164 - URI:http://xest/165 - URI:http://xest/166 - URI:http://xest/167 - URI:http://xest/168 - URI:http://xest/169 - URI:http://xest/170 - URI:http://xest/171 - URI:http://xest/172 - URI:http://xest/173 - URI:http://xest/174 - URI:http://xest/175 - URI:http://xest/176 - URI:http://xest/177 - URI:http://xest/178 - URI:http://xest/179 - URI:http://xest/180 - URI:http://xest/181 - URI:http://xest/182 - URI:http://xest/183 - URI:http://xest/184 - URI:http://xest/185 - URI:http://xest/186 - URI:http://xest/187 - URI:http://xest/188 - URI:http://xest/189 - URI:http://xest/190 - URI:http://xest/191 - URI:http://xest/192 - URI:http://xest/193 - URI:http://xest/194 - URI:http://xest/195 - URI:http://xest/196 - URI:http://xest/197 - URI:http://xest/198 - URI:http://xest/199 - URI:http://xest/200 - URI:http://xest/201 - URI:http://xest/202 - URI:http://xest/203 - URI:http://xest/204 - URI:http://xest/205 - URI:http://xest/206 - URI:http://xest/207 - URI:http://xest/208 - URI:http://xest/209 - URI:http://xest/210 - URI:http://xest/211 - URI:http://xest/212 - URI:http://xest/213 - URI:http://xest/214 - URI:http://xest/215 - URI:http://xest/216 - URI:http://xest/217 - URI:http://xest/218 - URI:http://xest/219 - URI:http://xest/220 - URI:http://xest/221 - URI:http://xest/222 - URI:http://xest/223 - URI:http://xest/224 - URI:http://xest/225 - URI:http://xest/226 - URI:http://xest/227 - URI:http://xest/228 - URI:http://xest/229 - URI:http://xest/230 - URI:http://xest/231 - URI:http://xest/232 - URI:http://xest/233 - URI:http://xest/234 - URI:http://xest/235 - URI:http://xest/236 - URI:http://xest/237 - URI:http://xest/238 - URI:http://xest/239 - URI:http://xest/240 - URI:http://xest/241 - URI:http://xest/242 - URI:http://xest/243 - URI:http://xest/244 - URI:http://xest/245 - URI:http://xest/246 - URI:http://xest/247 - URI:http://xest/248 - URI:http://xest/249 - URI:http://xest/250 - URI:http://xest/251 - URI:http://xest/252 - URI:http://xest/253 - URI:http://xest/254 - URI:http://xest/255 - URI:http://xest/256 - URI:http://xest/257 - URI:http://xest/258 - URI:http://xest/259 - URI:http://xest/260 - URI:http://xest/261 - URI:http://xest/262 - URI:http://xest/263 - URI:http://xest/264 - URI:http://xest/265 - URI:http://xest/266 - URI:http://xest/267 - URI:http://xest/268 - URI:http://xest/269 - URI:http://xest/270 - URI:http://xest/271 - URI:http://xest/272 - URI:http://xest/273 - URI:http://xest/274 - URI:http://xest/275 - URI:http://xest/276 - URI:http://xest/277 - URI:http://xest/278 - URI:http://xest/279 - URI:http://xest/280 - URI:http://xest/281 - URI:http://xest/282 - URI:http://xest/283 - URI:http://xest/284 - URI:http://xest/285 - URI:http://xest/286 - URI:http://xest/287 - URI:http://xest/288 - URI:http://xest/289 - URI:http://xest/290 - URI:http://xest/291 - URI:http://xest/292 - URI:http://xest/293 - URI:http://xest/294 - URI:http://xest/295 - URI:http://xest/296 - URI:http://xest/297 - URI:http://xest/298 - URI:http://xest/299 - URI:http://xest/300 - URI:http://xest/301 - URI:http://xest/302 - URI:http://xest/303 - URI:http://xest/304 - URI:http://xest/305 - URI:http://xest/306 - URI:http://xest/307 - URI:http://xest/308 - URI:http://xest/309 - URI:http://xest/310 - URI:http://xest/311 - URI:http://xest/312 - URI:http://xest/313 - URI:http://xest/314 - URI:http://xest/315 - URI:http://xest/316 - URI:http://xest/317 - URI:http://xest/318 - URI:http://xest/319 - URI:http://xest/320 - URI:http://xest/321 - URI:http://xest/322 - URI:http://xest/323 - URI:http://xest/324 - URI:http://xest/325 - URI:http://xest/326 - URI:http://xest/327 - URI:http://xest/328 - URI:http://xest/329 - URI:http://xest/330 - URI:http://xest/331 - URI:http://xest/332 - URI:http://xest/333 - URI:http://xest/334 - URI:http://xest/335 - URI:http://xest/336 - URI:http://xest/337 - URI:http://xest/338 - URI:http://xest/339 - URI:http://xest/340 - URI:http://xest/341 - URI:http://xest/342 - URI:http://xest/343 - URI:http://xest/344 - URI:http://xest/345 - URI:http://xest/346 - URI:http://xest/347 - URI:http://xest/348 - URI:http://xest/349 - URI:http://xest/350 - URI:http://xest/351 - URI:http://xest/352 - URI:http://xest/353 - URI:http://xest/354 - URI:http://xest/355 - URI:http://xest/356 - URI:http://xest/357 - URI:http://xest/358 - URI:http://xest/359 - URI:http://xest/360 - URI:http://xest/361 - URI:http://xest/362 - URI:http://xest/363 - URI:http://xest/364 - URI:http://xest/365 - URI:http://xest/366 - URI:http://xest/367 - URI:http://xest/368 - URI:http://xest/369 - URI:http://xest/370 - URI:http://xest/371 - URI:http://xest/372 - URI:http://xest/373 - URI:http://xest/374 - URI:http://xest/375 - URI:http://xest/376 - URI:http://xest/377 - URI:http://xest/378 - URI:http://xest/379 - URI:http://xest/380 - URI:http://xest/381 - URI:http://xest/382 - URI:http://xest/383 - URI:http://xest/384 - URI:http://xest/385 - URI:http://xest/386 - URI:http://xest/387 - URI:http://xest/388 - URI:http://xest/389 - URI:http://xest/390 - URI:http://xest/391 - URI:http://xest/392 - URI:http://xest/393 - URI:http://xest/394 - URI:http://xest/395 - URI:http://xest/396 - URI:http://xest/397 - URI:http://xest/398 - URI:http://xest/399 - URI:http://xest/400 - URI:http://xest/401 - URI:http://xest/402 - URI:http://xest/403 - URI:http://xest/404 - URI:http://xest/405 - URI:http://xest/406 - URI:http://xest/407 - URI:http://xest/408 - URI:http://xest/409 - URI:http://xest/410 - URI:http://xest/411 - URI:http://xest/412 - URI:http://xest/413 - URI:http://xest/414 - URI:http://xest/415 - URI:http://xest/416 - URI:http://xest/417 - URI:http://xest/418 - URI:http://xest/419 - URI:http://xest/420 - URI:http://xest/421 - URI:http://xest/422 - URI:http://xest/423 - URI:http://xest/424 - URI:http://xest/425 - URI:http://xest/426 - URI:http://xest/427 - URI:http://xest/428 - URI:http://xest/429 - URI:http://xest/430 - URI:http://xest/431 - URI:http://xest/432 - URI:http://xest/433 - URI:http://xest/434 - URI:http://xest/435 - URI:http://xest/436 - URI:http://xest/437 - URI:http://xest/438 - URI:http://xest/439 - URI:http://xest/440 - URI:http://xest/441 - URI:http://xest/442 - URI:http://xest/443 - URI:http://xest/444 - URI:http://xest/445 - URI:http://xest/446 - URI:http://xest/447 - URI:http://xest/448 - URI:http://xest/449 - URI:http://xest/450 - URI:http://xest/451 - URI:http://xest/452 - URI:http://xest/453 - URI:http://xest/454 - URI:http://xest/455 - URI:http://xest/456 - URI:http://xest/457 - URI:http://xest/458 - URI:http://xest/459 - URI:http://xest/460 - URI:http://xest/461 - URI:http://xest/462 - URI:http://xest/463 - URI:http://xest/464 - URI:http://xest/465 - URI:http://xest/466 - URI:http://xest/467 - URI:http://xest/468 - URI:http://xest/469 - URI:http://xest/470 - URI:http://xest/471 - URI:http://xest/472 - URI:http://xest/473 - URI:http://xest/474 - URI:http://xest/475 - URI:http://xest/476 - URI:http://xest/477 - URI:http://xest/478 - URI:http://xest/479 - URI:http://xest/480 - URI:http://xest/481 - URI:http://xest/482 - URI:http://xest/483 - URI:http://xest/484 - URI:http://xest/485 - URI:http://xest/486 - URI:http://xest/487 - URI:http://xest/488 - URI:http://xest/489 - URI:http://xest/490 - URI:http://xest/491 - URI:http://xest/492 - URI:http://xest/493 - URI:http://xest/494 - URI:http://xest/495 - URI:http://xest/496 - URI:http://xest/497 - URI:http://xest/498 - URI:http://xest/499 - URI:http://xest/500 - URI:http://xest/501 - URI:http://xest/502 - URI:http://xest/503 - URI:http://xest/504 - URI:http://xest/505 - URI:http://xest/506 - URI:http://xest/507 - URI:http://xest/508 - URI:http://xest/509 - URI:http://xest/510 - URI:http://xest/511 - URI:http://xest/512 - URI:http://xest/513 - URI:http://xest/514 - URI:http://xest/515 - URI:http://xest/516 - URI:http://xest/517 - URI:http://xest/518 - URI:http://xest/519 - URI:http://xest/520 - URI:http://xest/521 - URI:http://xest/522 - URI:http://xest/523 - URI:http://xest/524 - URI:http://xest/525 - URI:http://xest/526 - URI:http://xest/527 - URI:http://xest/528 - URI:http://xest/529 - URI:http://xest/530 - URI:http://xest/531 - URI:http://xest/532 - URI:http://xest/533 - URI:http://xest/534 - URI:http://xest/535 - URI:http://xest/536 - URI:http://xest/537 - URI:http://xest/538 - URI:http://xest/539 - URI:http://xest/540 - URI:http://xest/541 - URI:http://xest/542 - URI:http://xest/543 - URI:http://xest/544 - URI:http://xest/545 - URI:http://xest/546 - URI:http://xest/547 - URI:http://xest/548 - URI:http://xest/549 - URI:http://xest/550 - URI:http://xest/551 - URI:http://xest/552 - URI:http://xest/553 - URI:http://xest/554 - URI:http://xest/555 - URI:http://xest/556 - URI:http://xest/557 - URI:http://xest/558 - URI:http://xest/559 - URI:http://xest/560 - URI:http://xest/561 - URI:http://xest/562 - URI:http://xest/563 - URI:http://xest/564 - URI:http://xest/565 - URI:http://xest/566 - URI:http://xest/567 - URI:http://xest/568 - URI:http://xest/569 - URI:http://xest/570 - URI:http://xest/571 - URI:http://xest/572 - URI:http://xest/573 - URI:http://xest/574 - URI:http://xest/575 - URI:http://xest/576 - URI:http://xest/577 - URI:http://xest/578 - URI:http://xest/579 - URI:http://xest/580 - URI:http://xest/581 - URI:http://xest/582 - URI:http://xest/583 - URI:http://xest/584 - URI:http://xest/585 - URI:http://xest/586 - URI:http://xest/587 - URI:http://xest/588 - URI:http://xest/589 - URI:http://xest/590 - URI:http://xest/591 - URI:http://xest/592 - URI:http://xest/593 - URI:http://xest/594 - URI:http://xest/595 - URI:http://xest/596 - URI:http://xest/597 - URI:http://xest/598 - URI:http://xest/599 - URI:http://xest/600 - URI:http://xest/601 - URI:http://xest/602 - URI:http://xest/603 - URI:http://xest/604 - URI:http://xest/605 - URI:http://xest/606 - URI:http://xest/607 - URI:http://xest/608 - URI:http://xest/609 - URI:http://xest/610 - URI:http://xest/611 - URI:http://xest/612 - URI:http://xest/613 - URI:http://xest/614 - URI:http://xest/615 - URI:http://xest/616 - URI:http://xest/617 - URI:http://xest/618 - URI:http://xest/619 - URI:http://xest/620 - URI:http://xest/621 - URI:http://xest/622 - URI:http://xest/623 - URI:http://xest/624 - URI:http://xest/625 - URI:http://xest/626 - URI:http://xest/627 - URI:http://xest/628 - URI:http://xest/629 - URI:http://xest/630 - URI:http://xest/631 - URI:http://xest/632 - URI:http://xest/633 - URI:http://xest/634 - URI:http://xest/635 - URI:http://xest/636 - URI:http://xest/637 - URI:http://xest/638 - URI:http://xest/639 - URI:http://xest/640 - URI:http://xest/641 - URI:http://xest/642 - URI:http://xest/643 - URI:http://xest/644 - URI:http://xest/645 - URI:http://xest/646 - URI:http://xest/647 - URI:http://xest/648 - URI:http://xest/649 - URI:http://xest/650 - URI:http://xest/651 - URI:http://xest/652 - URI:http://xest/653 - URI:http://xest/654 - URI:http://xest/655 - URI:http://xest/656 - URI:http://xest/657 - URI:http://xest/658 - URI:http://xest/659 - URI:http://xest/660 - URI:http://xest/661 - URI:http://xest/662 - URI:http://xest/663 - URI:http://xest/664 - URI:http://xest/665 - URI:http://xest/666 - URI:http://xest/667 - URI:http://xest/668 - URI:http://xest/669 - URI:http://xest/670 - URI:http://xest/671 - URI:http://xest/672 - URI:http://xest/673 - URI:http://xest/674 - URI:http://xest/675 - URI:http://xest/676 - URI:http://xest/677 - URI:http://xest/678 - URI:http://xest/679 - URI:http://xest/680 - URI:http://xest/681 - URI:http://xest/682 - URI:http://xest/683 - URI:http://xest/684 - URI:http://xest/685 - URI:http://xest/686 - URI:http://xest/687 - URI:http://xest/688 - URI:http://xest/689 - URI:http://xest/690 - URI:http://xest/691 - URI:http://xest/692 - URI:http://xest/693 - URI:http://xest/694 - URI:http://xest/695 - URI:http://xest/696 - URI:http://xest/697 - URI:http://xest/698 - URI:http://xest/699 - URI:http://xest/700 - URI:http://xest/701 - URI:http://xest/702 - URI:http://xest/703 - URI:http://xest/704 - URI:http://xest/705 - URI:http://xest/706 - URI:http://xest/707 - URI:http://xest/708 - URI:http://xest/709 - URI:http://xest/710 - URI:http://xest/711 - URI:http://xest/712 - URI:http://xest/713 - URI:http://xest/714 - URI:http://xest/715 - URI:http://xest/716 - URI:http://xest/717 - URI:http://xest/718 - URI:http://xest/719 - URI:http://xest/720 - URI:http://xest/721 - URI:http://xest/722 - URI:http://xest/723 - URI:http://xest/724 - URI:http://xest/725 - URI:http://xest/726 - URI:http://xest/727 - URI:http://xest/728 - URI:http://xest/729 - URI:http://xest/730 - URI:http://xest/731 - URI:http://xest/732 - URI:http://xest/733 - URI:http://xest/734 - URI:http://xest/735 - URI:http://xest/736 - URI:http://xest/737 - URI:http://xest/738 - URI:http://xest/739 - URI:http://xest/740 - URI:http://xest/741 - URI:http://xest/742 - URI:http://xest/743 - URI:http://xest/744 - URI:http://xest/745 - URI:http://xest/746 - URI:http://xest/747 - URI:http://xest/748 - URI:http://xest/749 - URI:http://xest/750 - URI:http://xest/751 - URI:http://xest/752 - URI:http://xest/753 - URI:http://xest/754 - URI:http://xest/755 - URI:http://xest/756 - URI:http://xest/757 - URI:http://xest/758 - URI:http://xest/759 - URI:http://xest/760 - URI:http://xest/761 - URI:http://xest/762 - URI:http://xest/763 - URI:http://xest/764 - URI:http://xest/765 - URI:http://xest/766 - URI:http://xest/767 - URI:http://xest/768 - URI:http://xest/769 - URI:http://xest/770 - URI:http://xest/771 - URI:http://xest/772 - URI:http://xest/773 - URI:http://xest/774 - URI:http://xest/775 - URI:http://xest/776 - URI:http://xest/777 - URI:http://xest/778 - URI:http://xest/779 - URI:http://xest/780 - URI:http://xest/781 - URI:http://xest/782 - URI:http://xest/783 - URI:http://xest/784 - URI:http://xest/785 - URI:http://xest/786 - URI:http://xest/787 - URI:http://xest/788 - URI:http://xest/789 - URI:http://xest/790 - URI:http://xest/791 - URI:http://xest/792 - URI:http://xest/793 - URI:http://xest/794 - URI:http://xest/795 - URI:http://xest/796 - URI:http://xest/797 - URI:http://xest/798 - URI:http://xest/799 - URI:http://xest/800 - URI:http://xest/801 - URI:http://xest/802 - URI:http://xest/803 - URI:http://xest/804 - URI:http://xest/805 - URI:http://xest/806 - URI:http://xest/807 - URI:http://xest/808 - URI:http://xest/809 - URI:http://xest/810 - URI:http://xest/811 - URI:http://xest/812 - URI:http://xest/813 - URI:http://xest/814 - URI:http://xest/815 - URI:http://xest/816 - URI:http://xest/817 - URI:http://xest/818 - URI:http://xest/819 - URI:http://xest/820 - URI:http://xest/821 - URI:http://xest/822 - URI:http://xest/823 - URI:http://xest/824 - URI:http://xest/825 - URI:http://xest/826 - URI:http://xest/827 - URI:http://xest/828 - URI:http://xest/829 - URI:http://xest/830 - URI:http://xest/831 - URI:http://xest/832 - URI:http://xest/833 - URI:http://xest/834 - URI:http://xest/835 - URI:http://xest/836 - URI:http://xest/837 - URI:http://xest/838 - URI:http://xest/839 - URI:http://xest/840 - URI:http://xest/841 - URI:http://xest/842 - URI:http://xest/843 - URI:http://xest/844 - URI:http://xest/845 - URI:http://xest/846 - URI:http://xest/847 - URI:http://xest/848 - URI:http://xest/849 - URI:http://xest/850 - URI:http://xest/851 - URI:http://xest/852 - URI:http://xest/853 - URI:http://xest/854 - URI:http://xest/855 - URI:http://xest/856 - URI:http://xest/857 - URI:http://xest/858 - URI:http://xest/859 - URI:http://xest/860 - URI:http://xest/861 - URI:http://xest/862 - URI:http://xest/863 - URI:http://xest/864 - URI:http://xest/865 - URI:http://xest/866 - URI:http://xest/867 - URI:http://xest/868 - URI:http://xest/869 - URI:http://xest/870 - URI:http://xest/871 - URI:http://xest/872 - URI:http://xest/873 - URI:http://xest/874 - URI:http://xest/875 - URI:http://xest/876 - URI:http://xest/877 - URI:http://xest/878 - URI:http://xest/879 - URI:http://xest/880 - URI:http://xest/881 - URI:http://xest/882 - URI:http://xest/883 - URI:http://xest/884 - URI:http://xest/885 - URI:http://xest/886 - URI:http://xest/887 - URI:http://xest/888 - URI:http://xest/889 - URI:http://xest/890 - URI:http://xest/891 - URI:http://xest/892 - URI:http://xest/893 - URI:http://xest/894 - URI:http://xest/895 - URI:http://xest/896 - URI:http://xest/897 - URI:http://xest/898 - URI:http://xest/899 - URI:http://xest/900 - URI:http://xest/901 - URI:http://xest/902 - URI:http://xest/903 - URI:http://xest/904 - URI:http://xest/905 - URI:http://xest/906 - URI:http://xest/907 - URI:http://xest/908 - URI:http://xest/909 - URI:http://xest/910 - URI:http://xest/911 - URI:http://xest/912 - URI:http://xest/913 - URI:http://xest/914 - URI:http://xest/915 - URI:http://xest/916 - URI:http://xest/917 - URI:http://xest/918 - URI:http://xest/919 - URI:http://xest/920 - URI:http://xest/921 - URI:http://xest/922 - URI:http://xest/923 - URI:http://xest/924 - URI:http://xest/925 - URI:http://xest/926 - URI:http://xest/927 - URI:http://xest/928 - URI:http://xest/929 - URI:http://xest/930 - URI:http://xest/931 - URI:http://xest/932 - URI:http://xest/933 - URI:http://xest/934 - URI:http://xest/935 - URI:http://xest/936 - URI:http://xest/937 - URI:http://xest/938 - URI:http://xest/939 - URI:http://xest/940 - URI:http://xest/941 - URI:http://xest/942 - URI:http://xest/943 - URI:http://xest/944 - URI:http://xest/945 - URI:http://xest/946 - URI:http://xest/947 - URI:http://xest/948 - URI:http://xest/949 - URI:http://xest/950 - URI:http://xest/951 - URI:http://xest/952 - URI:http://xest/953 - URI:http://xest/954 - URI:http://xest/955 - URI:http://xest/956 - URI:http://xest/957 - URI:http://xest/958 - URI:http://xest/959 - URI:http://xest/960 - URI:http://xest/961 - URI:http://xest/962 - URI:http://xest/963 - URI:http://xest/964 - URI:http://xest/965 - URI:http://xest/966 - URI:http://xest/967 - URI:http://xest/968 - URI:http://xest/969 - URI:http://xest/970 - URI:http://xest/971 - URI:http://xest/972 - URI:http://xest/973 - URI:http://xest/974 - URI:http://xest/975 - URI:http://xest/976 - URI:http://xest/977 - URI:http://xest/978 - URI:http://xest/979 - URI:http://xest/980 - URI:http://xest/981 - URI:http://xest/982 - URI:http://xest/983 - URI:http://xest/984 - URI:http://xest/985 - URI:http://xest/986 - URI:http://xest/987 - URI:http://xest/988 - URI:http://xest/989 - URI:http://xest/990 - URI:http://xest/991 - URI:http://xest/992 - URI:http://xest/993 - URI:http://xest/994 - URI:http://xest/995 - URI:http://xest/996 - URI:http://xest/997 - URI:http://xest/998 - URI:http://xest/999 - URI:http://xest/1000 - URI:http://xest/1001 - URI:http://xest/1002 - URI:http://xest/1003 - URI:http://xest/1004 - URI:http://xest/1005 - URI:http://xest/1006 - URI:http://xest/1007 - URI:http://xest/1008 - URI:http://xest/1009 - URI:http://xest/1010 - URI:http://xest/1011 - URI:http://xest/1012 - URI:http://xest/1013 - URI:http://xest/1014 - URI:http://xest/1015 - URI:http://xest/1016 - URI:http://xest/1017 - URI:http://xest/1018 - URI:http://xest/1019 - URI:http://xest/1020 - URI:http://xest/1021 - URI:http://xest/1022 - URI:http://xest/1023 - URI:http://xest/1024 - - Signature Algorithm: sha256WithRSAEncryption - 37:a8:be:e4:03:62:63:15:b0:fe:be:49:7f:22:5e:7a:f8:b4: - 33:0c:fe:3b:41:0c:99:dc:bd:b0:a3:0c:3a:54:42:27:62:18: - 15:af:e6:d5:91:63:17:1d:1b:3f:ca:f6:2e:2f:6e:71:5e:66: - 86:27:69:91:31:5d:35:85:d4:46:77:69:45:50:05:9c:bc:39: - b8:0f:d0:96:a6:65:02:d3:80:53:ac:58:9c:f3:ec:27:27:b2: - 33:44:51:17:79:90:ea:b1:57:32:f7:e0:58:a4:99:64:78:55: - 61:16:d3:51:62:cf:26:02:8d:7d:df:2d:d8:c3:d2:00:5e:03: - 49:78:20:b7:78:9e:9e:b6:56:e9:48:4d:c5:5a:ea:28:e8:16: - 70:4a:39:bb:1d:88:40:5a:fd:67:82:73:f3:c6:f2:e9:ed:70: - 83:de:72:3f:7d:08:2f:1a:43:4d:c9:b2:e9:ce:e6:43:a9:74: - 25:cd:ba:95:cd:51:97:cb:56:d4:e6:e6:d9:69:0a:5f:48:17: - 2a:3b:41:ac:a5:ec:1f:30:c9:b2:f1:68:8f:a1:0f:1e:7d:9e: - e3:be:bb:8d:cb:6e:41:6a:16:7a:48:f5:ac:14:69:f7:de:63: - fc:94:80:e7:62:da:e6:99:12:ad:f1:d2:5d:76:6b:c3:11:6e: - 55:5d:7e:ec ------BEGIN CERTIFICATE----- -MILWujCC1aKgAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vYwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOC1AQwgtQAMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgtM0BgNVHR4EgtMrMILTJ6CCabEwCYIHdDAudGVzdDAJggd0MS50ZXN0MAmC -B3QyLnRlc3QwCYIHdDMudGVzdDAJggd0NC50ZXN0MAmCB3Q1LnRlc3QwCYIHdDYu -dGVzdDAJggd0Ny50ZXN0MAmCB3Q4LnRlc3QwCYIHdDkudGVzdDAKggh0MTAudGVz -dDAKggh0MTEudGVzdDAKggh0MTIudGVzdDAKggh0MTMudGVzdDAKggh0MTQudGVz -dDAKggh0MTUudGVzdDAKggh0MTYudGVzdDAKggh0MTcudGVzdDAKggh0MTgudGVz -dDAKggh0MTkudGVzdDAKggh0MjAudGVzdDAKggh0MjEudGVzdDAKggh0MjIudGVz -dDAKggh0MjMudGVzdDAKggh0MjQudGVzdDAKggh0MjUudGVzdDAKggh0MjYudGVz -dDAKggh0MjcudGVzdDAKggh0MjgudGVzdDAKggh0MjkudGVzdDAKggh0MzAudGVz -dDAKggh0MzEudGVzdDAKggh0MzIudGVzdDAKggh0MzMudGVzdDAKggh0MzQudGVz -dDAKggh0MzUudGVzdDAKggh0MzYudGVzdDAKggh0MzcudGVzdDAKggh0MzgudGVz -dDAKggh0MzkudGVzdDAKggh0NDAudGVzdDAKggh0NDEudGVzdDAKggh0NDIudGVz -dDAKggh0NDMudGVzdDAKggh0NDQudGVzdDAKggh0NDUudGVzdDAKggh0NDYudGVz -dDAKggh0NDcudGVzdDAKggh0NDgudGVzdDAKggh0NDkudGVzdDAKggh0NTAudGVz -dDAKggh0NTEudGVzdDAKggh0NTIudGVzdDAKggh0NTMudGVzdDAKggh0NTQudGVz -dDAKggh0NTUudGVzdDAKggh0NTYudGVzdDAKggh0NTcudGVzdDAKggh0NTgudGVz -dDAKggh0NTkudGVzdDAKggh0NjAudGVzdDAKggh0NjEudGVzdDAKggh0NjIudGVz -dDAKggh0NjMudGVzdDAKggh0NjQudGVzdDAKggh0NjUudGVzdDAKggh0NjYudGVz -dDAKggh0NjcudGVzdDAKggh0NjgudGVzdDAKggh0NjkudGVzdDAKggh0NzAudGVz -dDAKggh0NzEudGVzdDAKggh0NzIudGVzdDAKggh0NzMudGVzdDAKggh0NzQudGVz -dDAKggh0NzUudGVzdDAKggh0NzYudGVzdDAKggh0NzcudGVzdDAKggh0NzgudGVz -dDAKggh0NzkudGVzdDAKggh0ODAudGVzdDAKggh0ODEudGVzdDAKggh0ODIudGVz -dDAKggh0ODMudGVzdDAKggh0ODQudGVzdDAKggh0ODUudGVzdDAKggh0ODYudGVz -dDAKggh0ODcudGVzdDAKggh0ODgudGVzdDAKggh0ODkudGVzdDAKggh0OTAudGVz -dDAKggh0OTEudGVzdDAKggh0OTIudGVzdDAKggh0OTMudGVzdDAKggh0OTQudGVz -dDAKggh0OTUudGVzdDAKggh0OTYudGVzdDAKggh0OTcudGVzdDAKggh0OTgudGVz -dDAKggh0OTkudGVzdDALggl0MTAwLnRlc3QwC4IJdDEwMS50ZXN0MAuCCXQxMDIu -dGVzdDALggl0MTAzLnRlc3QwC4IJdDEwNC50ZXN0MAuCCXQxMDUudGVzdDALggl0 -MTA2LnRlc3QwC4IJdDEwNy50ZXN0MAuCCXQxMDgudGVzdDALggl0MTA5LnRlc3Qw -C4IJdDExMC50ZXN0MAuCCXQxMTEudGVzdDALggl0MTEyLnRlc3QwC4IJdDExMy50 -ZXN0MAuCCXQxMTQudGVzdDALggl0MTE1LnRlc3QwC4IJdDExNi50ZXN0MAuCCXQx -MTcudGVzdDALggl0MTE4LnRlc3QwC4IJdDExOS50ZXN0MAuCCXQxMjAudGVzdDAL -ggl0MTIxLnRlc3QwC4IJdDEyMi50ZXN0MAuCCXQxMjMudGVzdDALggl0MTI0LnRl -c3QwC4IJdDEyNS50ZXN0MAuCCXQxMjYudGVzdDALggl0MTI3LnRlc3QwC4IJdDEy -OC50ZXN0MAuCCXQxMjkudGVzdDALggl0MTMwLnRlc3QwC4IJdDEzMS50ZXN0MAuC -CXQxMzIudGVzdDALggl0MTMzLnRlc3QwC4IJdDEzNC50ZXN0MAuCCXQxMzUudGVz -dDALggl0MTM2LnRlc3QwC4IJdDEzNy50ZXN0MAuCCXQxMzgudGVzdDALggl0MTM5 -LnRlc3QwC4IJdDE0MC50ZXN0MAuCCXQxNDEudGVzdDALggl0MTQyLnRlc3QwC4IJ -dDE0My50ZXN0MAuCCXQxNDQudGVzdDALggl0MTQ1LnRlc3QwC4IJdDE0Ni50ZXN0 -MAuCCXQxNDcudGVzdDALggl0MTQ4LnRlc3QwC4IJdDE0OS50ZXN0MAuCCXQxNTAu -dGVzdDALggl0MTUxLnRlc3QwC4IJdDE1Mi50ZXN0MAuCCXQxNTMudGVzdDALggl0 -MTU0LnRlc3QwC4IJdDE1NS50ZXN0MAuCCXQxNTYudGVzdDALggl0MTU3LnRlc3Qw -C4IJdDE1OC50ZXN0MAuCCXQxNTkudGVzdDALggl0MTYwLnRlc3QwC4IJdDE2MS50 -ZXN0MAuCCXQxNjIudGVzdDALggl0MTYzLnRlc3QwC4IJdDE2NC50ZXN0MAuCCXQx -NjUudGVzdDALggl0MTY2LnRlc3QwC4IJdDE2Ny50ZXN0MAuCCXQxNjgudGVzdDAL -ggl0MTY5LnRlc3QwC4IJdDE3MC50ZXN0MAqHCAoAAAD/////MAqHCAoAAAH///// -MAqHCAoAAAL/////MAqHCAoAAAP/////MAqHCAoAAAT/////MAqHCAoAAAX///// -MAqHCAoAAAb/////MAqHCAoAAAf/////MAqHCAoAAAj/////MAqHCAoAAAn///// -MAqHCAoAAAr/////MAqHCAoAAAv/////MAqHCAoAAAz/////MAqHCAoAAA3///// -MAqHCAoAAA7/////MAqHCAoAAA//////MAqHCAoAABD/////MAqHCAoAABH///// -MAqHCAoAABL/////MAqHCAoAABP/////MAqHCAoAABT/////MAqHCAoAABX///// -MAqHCAoAABb/////MAqHCAoAABf/////MAqHCAoAABj/////MAqHCAoAABn///// -MAqHCAoAABr/////MAqHCAoAABv/////MAqHCAoAABz/////MAqHCAoAAB3///// -MAqHCAoAAB7/////MAqHCAoAAB//////MAqHCAoAACD/////MAqHCAoAACH///// -MAqHCAoAACL/////MAqHCAoAACP/////MAqHCAoAACT/////MAqHCAoAACX///// -MAqHCAoAACb/////MAqHCAoAACf/////MAqHCAoAACj/////MAqHCAoAACn///// -MAqHCAoAACr/////MAqHCAoAACv/////MAqHCAoAACz/////MAqHCAoAAC3///// -MAqHCAoAAC7/////MAqHCAoAAC//////MAqHCAoAADD/////MAqHCAoAADH///// -MAqHCAoAADL/////MAqHCAoAADP/////MAqHCAoAADT/////MAqHCAoAADX///// -MAqHCAoAADb/////MAqHCAoAADf/////MAqHCAoAADj/////MAqHCAoAADn///// -MAqHCAoAADr/////MAqHCAoAADv/////MAqHCAoAADz/////MAqHCAoAAD3///// -MAqHCAoAAD7/////MAqHCAoAAD//////MAqHCAoAAED/////MAqHCAoAAEH///// -MAqHCAoAAEL/////MAqHCAoAAEP/////MAqHCAoAAET/////MAqHCAoAAEX///// -MAqHCAoAAEb/////MAqHCAoAAEf/////MAqHCAoAAEj/////MAqHCAoAAEn///// -MAqHCAoAAEr/////MAqHCAoAAEv/////MAqHCAoAAEz/////MAqHCAoAAE3///// -MAqHCAoAAE7/////MAqHCAoAAE//////MAqHCAoAAFD/////MAqHCAoAAFH///// -MAqHCAoAAFL/////MAqHCAoAAFP/////MAqHCAoAAFT/////MAqHCAoAAFX///// -MAqHCAoAAFb/////MAqHCAoAAFf/////MAqHCAoAAFj/////MAqHCAoAAFn///// -MAqHCAoAAFr/////MAqHCAoAAFv/////MAqHCAoAAFz/////MAqHCAoAAF3///// -MAqHCAoAAF7/////MAqHCAoAAF//////MAqHCAoAAGD/////MAqHCAoAAGH///// -MAqHCAoAAGL/////MAqHCAoAAGP/////MAqHCAoAAGT/////MAqHCAoAAGX///// -MAqHCAoAAGb/////MAqHCAoAAGf/////MAqHCAoAAGj/////MAqHCAoAAGn///// -MAqHCAoAAGr/////MAqHCAoAAGv/////MAqHCAoAAGz/////MAqHCAoAAG3///// -MAqHCAoAAG7/////MAqHCAoAAG//////MAqHCAoAAHD/////MAqHCAoAAHH///// -MAqHCAoAAHL/////MAqHCAoAAHP/////MAqHCAoAAHT/////MAqHCAoAAHX///// -MAqHCAoAAHb/////MAqHCAoAAHf/////MAqHCAoAAHj/////MAqHCAoAAHn///// -MAqHCAoAAHr/////MAqHCAoAAHv/////MAqHCAoAAHz/////MAqHCAoAAH3///// -MAqHCAoAAH7/////MAqHCAoAAH//////MAqHCAoAAID/////MAqHCAoAAIH///// -MAqHCAoAAIL/////MAqHCAoAAIP/////MAqHCAoAAIT/////MAqHCAoAAIX///// -MAqHCAoAAIb/////MAqHCAoAAIf/////MAqHCAoAAIj/////MAqHCAoAAIn///// -MAqHCAoAAIr/////MAqHCAoAAIv/////MAqHCAoAAIz/////MAqHCAoAAI3///// -MAqHCAoAAI7/////MAqHCAoAAI//////MAqHCAoAAJD/////MAqHCAoAAJH///// -MAqHCAoAAJL/////MAqHCAoAAJP/////MAqHCAoAAJT/////MAqHCAoAAJX///// -MAqHCAoAAJb/////MAqHCAoAAJf/////MAqHCAoAAJj/////MAqHCAoAAJn///// -MAqHCAoAAJr/////MAqHCAoAAJv/////MAqHCAoAAJz/////MAqHCAoAAJ3///// -MAqHCAoAAJ7/////MAqHCAoAAJ//////MAqHCAoAAKD/////MAqHCAoAAKH///// -MAqHCAoAAKL/////MAqHCAoAAKP/////MAqHCAoAAKT/////MAqHCAoAAKX///// -MAqHCAoAAKb/////MAqHCAoAAKf/////MAqHCAoAAKj/////MAqHCAoAAKn///// -MAqHCAoAAKr/////MBGkDzANMQswCQYDVQQDDAJ0MDARpA8wDTELMAkGA1UEAwwC -dDEwEaQPMA0xCzAJBgNVBAMMAnQyMBGkDzANMQswCQYDVQQDDAJ0MzARpA8wDTEL -MAkGA1UEAwwCdDQwEaQPMA0xCzAJBgNVBAMMAnQ1MBGkDzANMQswCQYDVQQDDAJ0 -NjARpA8wDTELMAkGA1UEAwwCdDcwEaQPMA0xCzAJBgNVBAMMAnQ4MBGkDzANMQsw -CQYDVQQDDAJ0OTASpBAwDjEMMAoGA1UEAwwDdDEwMBKkEDAOMQwwCgYDVQQDDAN0 -MTEwEqQQMA4xDDAKBgNVBAMMA3QxMjASpBAwDjEMMAoGA1UEAwwDdDEzMBKkEDAO -MQwwCgYDVQQDDAN0MTQwEqQQMA4xDDAKBgNVBAMMA3QxNTASpBAwDjEMMAoGA1UE -AwwDdDE2MBKkEDAOMQwwCgYDVQQDDAN0MTcwEqQQMA4xDDAKBgNVBAMMA3QxODAS -pBAwDjEMMAoGA1UEAwwDdDE5MBKkEDAOMQwwCgYDVQQDDAN0MjAwEqQQMA4xDDAK -BgNVBAMMA3QyMTASpBAwDjEMMAoGA1UEAwwDdDIyMBKkEDAOMQwwCgYDVQQDDAN0 -MjMwEqQQMA4xDDAKBgNVBAMMA3QyNDASpBAwDjEMMAoGA1UEAwwDdDI1MBKkEDAO -MQwwCgYDVQQDDAN0MjYwEqQQMA4xDDAKBgNVBAMMA3QyNzASpBAwDjEMMAoGA1UE -AwwDdDI4MBKkEDAOMQwwCgYDVQQDDAN0MjkwEqQQMA4xDDAKBgNVBAMMA3QzMDAS -pBAwDjEMMAoGA1UEAwwDdDMxMBKkEDAOMQwwCgYDVQQDDAN0MzIwEqQQMA4xDDAK -BgNVBAMMA3QzMzASpBAwDjEMMAoGA1UEAwwDdDM0MBKkEDAOMQwwCgYDVQQDDAN0 -MzUwEqQQMA4xDDAKBgNVBAMMA3QzNjASpBAwDjEMMAoGA1UEAwwDdDM3MBKkEDAO -MQwwCgYDVQQDDAN0MzgwEqQQMA4xDDAKBgNVBAMMA3QzOTASpBAwDjEMMAoGA1UE -AwwDdDQwMBKkEDAOMQwwCgYDVQQDDAN0NDEwEqQQMA4xDDAKBgNVBAMMA3Q0MjAS -pBAwDjEMMAoGA1UEAwwDdDQzMBKkEDAOMQwwCgYDVQQDDAN0NDQwEqQQMA4xDDAK -BgNVBAMMA3Q0NTASpBAwDjEMMAoGA1UEAwwDdDQ2MBKkEDAOMQwwCgYDVQQDDAN0 -NDcwEqQQMA4xDDAKBgNVBAMMA3Q0ODASpBAwDjEMMAoGA1UEAwwDdDQ5MBKkEDAO -MQwwCgYDVQQDDAN0NTAwEqQQMA4xDDAKBgNVBAMMA3Q1MTASpBAwDjEMMAoGA1UE -AwwDdDUyMBKkEDAOMQwwCgYDVQQDDAN0NTMwEqQQMA4xDDAKBgNVBAMMA3Q1NDAS -pBAwDjEMMAoGA1UEAwwDdDU1MBKkEDAOMQwwCgYDVQQDDAN0NTYwEqQQMA4xDDAK -BgNVBAMMA3Q1NzASpBAwDjEMMAoGA1UEAwwDdDU4MBKkEDAOMQwwCgYDVQQDDAN0 -NTkwEqQQMA4xDDAKBgNVBAMMA3Q2MDASpBAwDjEMMAoGA1UEAwwDdDYxMBKkEDAO -MQwwCgYDVQQDDAN0NjIwEqQQMA4xDDAKBgNVBAMMA3Q2MzASpBAwDjEMMAoGA1UE -AwwDdDY0MBKkEDAOMQwwCgYDVQQDDAN0NjUwEqQQMA4xDDAKBgNVBAMMA3Q2NjAS -pBAwDjEMMAoGA1UEAwwDdDY3MBKkEDAOMQwwCgYDVQQDDAN0NjgwEqQQMA4xDDAK -BgNVBAMMA3Q2OTASpBAwDjEMMAoGA1UEAwwDdDcwMBKkEDAOMQwwCgYDVQQDDAN0 -NzEwEqQQMA4xDDAKBgNVBAMMA3Q3MjASpBAwDjEMMAoGA1UEAwwDdDczMBKkEDAO -MQwwCgYDVQQDDAN0NzQwEqQQMA4xDDAKBgNVBAMMA3Q3NTASpBAwDjEMMAoGA1UE -AwwDdDc2MBKkEDAOMQwwCgYDVQQDDAN0NzcwEqQQMA4xDDAKBgNVBAMMA3Q3ODAS -pBAwDjEMMAoGA1UEAwwDdDc5MBKkEDAOMQwwCgYDVQQDDAN0ODAwEqQQMA4xDDAK -BgNVBAMMA3Q4MTASpBAwDjEMMAoGA1UEAwwDdDgyMBKkEDAOMQwwCgYDVQQDDAN0 -ODMwEqQQMA4xDDAKBgNVBAMMA3Q4NDASpBAwDjEMMAoGA1UEAwwDdDg1MBKkEDAO -MQwwCgYDVQQDDAN0ODYwEqQQMA4xDDAKBgNVBAMMA3Q4NzASpBAwDjEMMAoGA1UE -AwwDdDg4MBKkEDAOMQwwCgYDVQQDDAN0ODkwEqQQMA4xDDAKBgNVBAMMA3Q5MDAS -pBAwDjEMMAoGA1UEAwwDdDkxMBKkEDAOMQwwCgYDVQQDDAN0OTIwEqQQMA4xDDAK -BgNVBAMMA3Q5MzASpBAwDjEMMAoGA1UEAwwDdDk0MBKkEDAOMQwwCgYDVQQDDAN0 -OTUwEqQQMA4xDDAKBgNVBAMMA3Q5NjASpBAwDjEMMAoGA1UEAwwDdDk3MBKkEDAO -MQwwCgYDVQQDDAN0OTgwEqQQMA4xDDAKBgNVBAMMA3Q5OTATpBEwDzENMAsGA1UE -AwwEdDEwMDATpBEwDzENMAsGA1UEAwwEdDEwMTATpBEwDzENMAsGA1UEAwwEdDEw -MjATpBEwDzENMAsGA1UEAwwEdDEwMzATpBEwDzENMAsGA1UEAwwEdDEwNDATpBEw -DzENMAsGA1UEAwwEdDEwNTATpBEwDzENMAsGA1UEAwwEdDEwNjATpBEwDzENMAsG -A1UEAwwEdDEwNzATpBEwDzENMAsGA1UEAwwEdDEwODATpBEwDzENMAsGA1UEAwwE -dDEwOTATpBEwDzENMAsGA1UEAwwEdDExMDATpBEwDzENMAsGA1UEAwwEdDExMTAT -pBEwDzENMAsGA1UEAwwEdDExMjATpBEwDzENMAsGA1UEAwwEdDExMzATpBEwDzEN -MAsGA1UEAwwEdDExNDATpBEwDzENMAsGA1UEAwwEdDExNTATpBEwDzENMAsGA1UE -AwwEdDExNjATpBEwDzENMAsGA1UEAwwEdDExNzATpBEwDzENMAsGA1UEAwwEdDEx -ODATpBEwDzENMAsGA1UEAwwEdDExOTATpBEwDzENMAsGA1UEAwwEdDEyMDATpBEw -DzENMAsGA1UEAwwEdDEyMTATpBEwDzENMAsGA1UEAwwEdDEyMjATpBEwDzENMAsG -A1UEAwwEdDEyMzATpBEwDzENMAsGA1UEAwwEdDEyNDATpBEwDzENMAsGA1UEAwwE -dDEyNTATpBEwDzENMAsGA1UEAwwEdDEyNjATpBEwDzENMAsGA1UEAwwEdDEyNzAT -pBEwDzENMAsGA1UEAwwEdDEyODATpBEwDzENMAsGA1UEAwwEdDEyOTATpBEwDzEN -MAsGA1UEAwwEdDEzMDATpBEwDzENMAsGA1UEAwwEdDEzMTATpBEwDzENMAsGA1UE -AwwEdDEzMjATpBEwDzENMAsGA1UEAwwEdDEzMzATpBEwDzENMAsGA1UEAwwEdDEz -NDATpBEwDzENMAsGA1UEAwwEdDEzNTATpBEwDzENMAsGA1UEAwwEdDEzNjATpBEw -DzENMAsGA1UEAwwEdDEzNzATpBEwDzENMAsGA1UEAwwEdDEzODATpBEwDzENMAsG -A1UEAwwEdDEzOTATpBEwDzENMAsGA1UEAwwEdDE0MDATpBEwDzENMAsGA1UEAwwE -dDE0MTATpBEwDzENMAsGA1UEAwwEdDE0MjATpBEwDzENMAsGA1UEAwwEdDE0MzAT -pBEwDzENMAsGA1UEAwwEdDE0NDATpBEwDzENMAsGA1UEAwwEdDE0NTATpBEwDzEN -MAsGA1UEAwwEdDE0NjATpBEwDzENMAsGA1UEAwwEdDE0NzATpBEwDzENMAsGA1UE -AwwEdDE0ODATpBEwDzENMAsGA1UEAwwEdDE0OTATpBEwDzENMAsGA1UEAwwEdDE1 -MDATpBEwDzENMAsGA1UEAwwEdDE1MTATpBEwDzENMAsGA1UEAwwEdDE1MjATpBEw -DzENMAsGA1UEAwwEdDE1MzATpBEwDzENMAsGA1UEAwwEdDE1NDATpBEwDzENMAsG -A1UEAwwEdDE1NTATpBEwDzENMAsGA1UEAwwEdDE1NjATpBEwDzENMAsGA1UEAwwE -dDE1NzATpBEwDzENMAsGA1UEAwwEdDE1ODATpBEwDzENMAsGA1UEAwwEdDE1OTAT -pBEwDzENMAsGA1UEAwwEdDE2MDATpBEwDzENMAsGA1UEAwwEdDE2MTATpBEwDzEN -MAsGA1UEAwwEdDE2MjATpBEwDzENMAsGA1UEAwwEdDE2MzATpBEwDzENMAsGA1UE -AwwEdDE2NDATpBEwDzENMAsGA1UEAwwEdDE2NTATpBEwDzENMAsGA1UEAwwEdDE2 -NjATpBEwDzENMAsGA1UEAwwEdDE2NzATpBEwDzENMAsGA1UEAwwEdDE2ODATpBEw -DzENMAsGA1UEAwwEdDE2OTATpBEwDzENMAsGA1UEAwwEdDE3MDATpBEwDzENMAsG -A1UEAwwEdDE3MTAPhg1odHRwOi8vdGVzdC8wMA+GDWh0dHA6Ly90ZXN0LzEwD4YN -aHR0cDovL3Rlc3QvMjAPhg1odHRwOi8vdGVzdC8zMA+GDWh0dHA6Ly90ZXN0LzQw -D4YNaHR0cDovL3Rlc3QvNTAPhg1odHRwOi8vdGVzdC82MA+GDWh0dHA6Ly90ZXN0 -LzcwD4YNaHR0cDovL3Rlc3QvODAPhg1odHRwOi8vdGVzdC85MBCGDmh0dHA6Ly90 -ZXN0LzEwMBCGDmh0dHA6Ly90ZXN0LzExMBCGDmh0dHA6Ly90ZXN0LzEyMBCGDmh0 -dHA6Ly90ZXN0LzEzMBCGDmh0dHA6Ly90ZXN0LzE0MBCGDmh0dHA6Ly90ZXN0LzE1 -MBCGDmh0dHA6Ly90ZXN0LzE2MBCGDmh0dHA6Ly90ZXN0LzE3MBCGDmh0dHA6Ly90 -ZXN0LzE4MBCGDmh0dHA6Ly90ZXN0LzE5MBCGDmh0dHA6Ly90ZXN0LzIwMBCGDmh0 -dHA6Ly90ZXN0LzIxMBCGDmh0dHA6Ly90ZXN0LzIyMBCGDmh0dHA6Ly90ZXN0LzIz -MBCGDmh0dHA6Ly90ZXN0LzI0MBCGDmh0dHA6Ly90ZXN0LzI1MBCGDmh0dHA6Ly90 -ZXN0LzI2MBCGDmh0dHA6Ly90ZXN0LzI3MBCGDmh0dHA6Ly90ZXN0LzI4MBCGDmh0 -dHA6Ly90ZXN0LzI5MBCGDmh0dHA6Ly90ZXN0LzMwMBCGDmh0dHA6Ly90ZXN0LzMx -MBCGDmh0dHA6Ly90ZXN0LzMyMBCGDmh0dHA6Ly90ZXN0LzMzMBCGDmh0dHA6Ly90 -ZXN0LzM0MBCGDmh0dHA6Ly90ZXN0LzM1MBCGDmh0dHA6Ly90ZXN0LzM2MBCGDmh0 -dHA6Ly90ZXN0LzM3MBCGDmh0dHA6Ly90ZXN0LzM4MBCGDmh0dHA6Ly90ZXN0LzM5 -MBCGDmh0dHA6Ly90ZXN0LzQwMBCGDmh0dHA6Ly90ZXN0LzQxMBCGDmh0dHA6Ly90 -ZXN0LzQyMBCGDmh0dHA6Ly90ZXN0LzQzMBCGDmh0dHA6Ly90ZXN0LzQ0MBCGDmh0 -dHA6Ly90ZXN0LzQ1MBCGDmh0dHA6Ly90ZXN0LzQ2MBCGDmh0dHA6Ly90ZXN0LzQ3 -MBCGDmh0dHA6Ly90ZXN0LzQ4MBCGDmh0dHA6Ly90ZXN0LzQ5MBCGDmh0dHA6Ly90 -ZXN0LzUwMBCGDmh0dHA6Ly90ZXN0LzUxMBCGDmh0dHA6Ly90ZXN0LzUyMBCGDmh0 -dHA6Ly90ZXN0LzUzMBCGDmh0dHA6Ly90ZXN0LzU0MBCGDmh0dHA6Ly90ZXN0LzU1 -MBCGDmh0dHA6Ly90ZXN0LzU2MBCGDmh0dHA6Ly90ZXN0LzU3MBCGDmh0dHA6Ly90 -ZXN0LzU4MBCGDmh0dHA6Ly90ZXN0LzU5MBCGDmh0dHA6Ly90ZXN0LzYwMBCGDmh0 -dHA6Ly90ZXN0LzYxMBCGDmh0dHA6Ly90ZXN0LzYyMBCGDmh0dHA6Ly90ZXN0LzYz -MBCGDmh0dHA6Ly90ZXN0LzY0MBCGDmh0dHA6Ly90ZXN0LzY1MBCGDmh0dHA6Ly90 -ZXN0LzY2MBCGDmh0dHA6Ly90ZXN0LzY3MBCGDmh0dHA6Ly90ZXN0LzY4MBCGDmh0 -dHA6Ly90ZXN0LzY5MBCGDmh0dHA6Ly90ZXN0LzcwMBCGDmh0dHA6Ly90ZXN0Lzcx -MBCGDmh0dHA6Ly90ZXN0LzcyMBCGDmh0dHA6Ly90ZXN0LzczMBCGDmh0dHA6Ly90 -ZXN0Lzc0MBCGDmh0dHA6Ly90ZXN0Lzc1MBCGDmh0dHA6Ly90ZXN0Lzc2MBCGDmh0 -dHA6Ly90ZXN0Lzc3MBCGDmh0dHA6Ly90ZXN0Lzc4MBCGDmh0dHA6Ly90ZXN0Lzc5 -MBCGDmh0dHA6Ly90ZXN0LzgwMBCGDmh0dHA6Ly90ZXN0LzgxMBCGDmh0dHA6Ly90 -ZXN0LzgyMBCGDmh0dHA6Ly90ZXN0LzgzMBCGDmh0dHA6Ly90ZXN0Lzg0MBCGDmh0 -dHA6Ly90ZXN0Lzg1MBCGDmh0dHA6Ly90ZXN0Lzg2MBCGDmh0dHA6Ly90ZXN0Lzg3 -MBCGDmh0dHA6Ly90ZXN0Lzg4MBCGDmh0dHA6Ly90ZXN0Lzg5MBCGDmh0dHA6Ly90 -ZXN0LzkwMBCGDmh0dHA6Ly90ZXN0LzkxMBCGDmh0dHA6Ly90ZXN0LzkyMBCGDmh0 -dHA6Ly90ZXN0LzkzMBCGDmh0dHA6Ly90ZXN0Lzk0MBCGDmh0dHA6Ly90ZXN0Lzk1 -MBCGDmh0dHA6Ly90ZXN0Lzk2MBCGDmh0dHA6Ly90ZXN0Lzk3MBCGDmh0dHA6Ly90 -ZXN0Lzk4MBCGDmh0dHA6Ly90ZXN0Lzk5MBGGD2h0dHA6Ly90ZXN0LzEwMDARhg9o -dHRwOi8vdGVzdC8xMDEwEYYPaHR0cDovL3Rlc3QvMTAyMBGGD2h0dHA6Ly90ZXN0 -LzEwMzARhg9odHRwOi8vdGVzdC8xMDQwEYYPaHR0cDovL3Rlc3QvMTA1MBGGD2h0 -dHA6Ly90ZXN0LzEwNjARhg9odHRwOi8vdGVzdC8xMDcwEYYPaHR0cDovL3Rlc3Qv -MTA4MBGGD2h0dHA6Ly90ZXN0LzEwOTARhg9odHRwOi8vdGVzdC8xMTAwEYYPaHR0 -cDovL3Rlc3QvMTExMBGGD2h0dHA6Ly90ZXN0LzExMjARhg9odHRwOi8vdGVzdC8x -MTMwEYYPaHR0cDovL3Rlc3QvMTE0MBGGD2h0dHA6Ly90ZXN0LzExNTARhg9odHRw -Oi8vdGVzdC8xMTYwEYYPaHR0cDovL3Rlc3QvMTE3MBGGD2h0dHA6Ly90ZXN0LzEx -ODARhg9odHRwOi8vdGVzdC8xMTkwEYYPaHR0cDovL3Rlc3QvMTIwMBGGD2h0dHA6 -Ly90ZXN0LzEyMTARhg9odHRwOi8vdGVzdC8xMjIwEYYPaHR0cDovL3Rlc3QvMTIz -MBGGD2h0dHA6Ly90ZXN0LzEyNDARhg9odHRwOi8vdGVzdC8xMjUwEYYPaHR0cDov -L3Rlc3QvMTI2MBGGD2h0dHA6Ly90ZXN0LzEyNzARhg9odHRwOi8vdGVzdC8xMjgw -EYYPaHR0cDovL3Rlc3QvMTI5MBGGD2h0dHA6Ly90ZXN0LzEzMDARhg9odHRwOi8v -dGVzdC8xMzEwEYYPaHR0cDovL3Rlc3QvMTMyMBGGD2h0dHA6Ly90ZXN0LzEzMzAR -hg9odHRwOi8vdGVzdC8xMzQwEYYPaHR0cDovL3Rlc3QvMTM1MBGGD2h0dHA6Ly90 -ZXN0LzEzNjARhg9odHRwOi8vdGVzdC8xMzcwEYYPaHR0cDovL3Rlc3QvMTM4MBGG -D2h0dHA6Ly90ZXN0LzEzOTARhg9odHRwOi8vdGVzdC8xNDAwEYYPaHR0cDovL3Rl -c3QvMTQxMBGGD2h0dHA6Ly90ZXN0LzE0MjARhg9odHRwOi8vdGVzdC8xNDMwEYYP -aHR0cDovL3Rlc3QvMTQ0MBGGD2h0dHA6Ly90ZXN0LzE0NTARhg9odHRwOi8vdGVz -dC8xNDYwEYYPaHR0cDovL3Rlc3QvMTQ3MBGGD2h0dHA6Ly90ZXN0LzE0ODARhg9o -dHRwOi8vdGVzdC8xNDkwEYYPaHR0cDovL3Rlc3QvMTUwMBGGD2h0dHA6Ly90ZXN0 -LzE1MTARhg9odHRwOi8vdGVzdC8xNTIwEYYPaHR0cDovL3Rlc3QvMTUzMBGGD2h0 -dHA6Ly90ZXN0LzE1NDARhg9odHRwOi8vdGVzdC8xNTUwEYYPaHR0cDovL3Rlc3Qv -MTU2MBGGD2h0dHA6Ly90ZXN0LzE1NzARhg9odHRwOi8vdGVzdC8xNTgwEYYPaHR0 -cDovL3Rlc3QvMTU5MBGGD2h0dHA6Ly90ZXN0LzE2MDARhg9odHRwOi8vdGVzdC8x -NjEwEYYPaHR0cDovL3Rlc3QvMTYyMBGGD2h0dHA6Ly90ZXN0LzE2MzARhg9odHRw -Oi8vdGVzdC8xNjQwEYYPaHR0cDovL3Rlc3QvMTY1MBGGD2h0dHA6Ly90ZXN0LzE2 -NjARhg9odHRwOi8vdGVzdC8xNjcwEYYPaHR0cDovL3Rlc3QvMTY4MBGGD2h0dHA6 -Ly90ZXN0LzE2OTARhg9odHRwOi8vdGVzdC8xNzAwEYYPaHR0cDovL3Rlc3QvMTcx -MBGGD2h0dHA6Ly90ZXN0LzE3MjARhg9odHRwOi8vdGVzdC8xNzMwEYYPaHR0cDov -L3Rlc3QvMTc0MBGGD2h0dHA6Ly90ZXN0LzE3NTARhg9odHRwOi8vdGVzdC8xNzYw -EYYPaHR0cDovL3Rlc3QvMTc3MBGGD2h0dHA6Ly90ZXN0LzE3ODARhg9odHRwOi8v -dGVzdC8xNzkwEYYPaHR0cDovL3Rlc3QvMTgwMBGGD2h0dHA6Ly90ZXN0LzE4MTAR -hg9odHRwOi8vdGVzdC8xODIwEYYPaHR0cDovL3Rlc3QvMTgzMBGGD2h0dHA6Ly90 -ZXN0LzE4NDARhg9odHRwOi8vdGVzdC8xODUwEYYPaHR0cDovL3Rlc3QvMTg2MBGG -D2h0dHA6Ly90ZXN0LzE4NzARhg9odHRwOi8vdGVzdC8xODgwEYYPaHR0cDovL3Rl -c3QvMTg5MBGGD2h0dHA6Ly90ZXN0LzE5MDARhg9odHRwOi8vdGVzdC8xOTEwEYYP -aHR0cDovL3Rlc3QvMTkyMBGGD2h0dHA6Ly90ZXN0LzE5MzARhg9odHRwOi8vdGVz -dC8xOTQwEYYPaHR0cDovL3Rlc3QvMTk1MBGGD2h0dHA6Ly90ZXN0LzE5NjARhg9o -dHRwOi8vdGVzdC8xOTcwEYYPaHR0cDovL3Rlc3QvMTk4MBGGD2h0dHA6Ly90ZXN0 -LzE5OTARhg9odHRwOi8vdGVzdC8yMDAwEYYPaHR0cDovL3Rlc3QvMjAxMBGGD2h0 -dHA6Ly90ZXN0LzIwMjARhg9odHRwOi8vdGVzdC8yMDMwEYYPaHR0cDovL3Rlc3Qv -MjA0MBGGD2h0dHA6Ly90ZXN0LzIwNTARhg9odHRwOi8vdGVzdC8yMDYwEYYPaHR0 -cDovL3Rlc3QvMjA3MBGGD2h0dHA6Ly90ZXN0LzIwODARhg9odHRwOi8vdGVzdC8y -MDkwEYYPaHR0cDovL3Rlc3QvMjEwMBGGD2h0dHA6Ly90ZXN0LzIxMTARhg9odHRw -Oi8vdGVzdC8yMTIwEYYPaHR0cDovL3Rlc3QvMjEzMBGGD2h0dHA6Ly90ZXN0LzIx -NDARhg9odHRwOi8vdGVzdC8yMTUwEYYPaHR0cDovL3Rlc3QvMjE2MBGGD2h0dHA6 -Ly90ZXN0LzIxNzARhg9odHRwOi8vdGVzdC8yMTgwEYYPaHR0cDovL3Rlc3QvMjE5 -MBGGD2h0dHA6Ly90ZXN0LzIyMDARhg9odHRwOi8vdGVzdC8yMjEwEYYPaHR0cDov -L3Rlc3QvMjIyMBGGD2h0dHA6Ly90ZXN0LzIyMzARhg9odHRwOi8vdGVzdC8yMjQw -EYYPaHR0cDovL3Rlc3QvMjI1MBGGD2h0dHA6Ly90ZXN0LzIyNjARhg9odHRwOi8v -dGVzdC8yMjcwEYYPaHR0cDovL3Rlc3QvMjI4MBGGD2h0dHA6Ly90ZXN0LzIyOTAR -hg9odHRwOi8vdGVzdC8yMzAwEYYPaHR0cDovL3Rlc3QvMjMxMBGGD2h0dHA6Ly90 -ZXN0LzIzMjARhg9odHRwOi8vdGVzdC8yMzMwEYYPaHR0cDovL3Rlc3QvMjM0MBGG -D2h0dHA6Ly90ZXN0LzIzNTARhg9odHRwOi8vdGVzdC8yMzYwEYYPaHR0cDovL3Rl -c3QvMjM3MBGGD2h0dHA6Ly90ZXN0LzIzODARhg9odHRwOi8vdGVzdC8yMzkwEYYP -aHR0cDovL3Rlc3QvMjQwMBGGD2h0dHA6Ly90ZXN0LzI0MTARhg9odHRwOi8vdGVz -dC8yNDIwEYYPaHR0cDovL3Rlc3QvMjQzMBGGD2h0dHA6Ly90ZXN0LzI0NDARhg9o -dHRwOi8vdGVzdC8yNDUwEYYPaHR0cDovL3Rlc3QvMjQ2MBGGD2h0dHA6Ly90ZXN0 -LzI0NzARhg9odHRwOi8vdGVzdC8yNDgwEYYPaHR0cDovL3Rlc3QvMjQ5MBGGD2h0 -dHA6Ly90ZXN0LzI1MDARhg9odHRwOi8vdGVzdC8yNTEwEYYPaHR0cDovL3Rlc3Qv -MjUyMBGGD2h0dHA6Ly90ZXN0LzI1MzARhg9odHRwOi8vdGVzdC8yNTQwEYYPaHR0 -cDovL3Rlc3QvMjU1MBGGD2h0dHA6Ly90ZXN0LzI1NjARhg9odHRwOi8vdGVzdC8y -NTcwEYYPaHR0cDovL3Rlc3QvMjU4MBGGD2h0dHA6Ly90ZXN0LzI1OTARhg9odHRw -Oi8vdGVzdC8yNjAwEYYPaHR0cDovL3Rlc3QvMjYxMBGGD2h0dHA6Ly90ZXN0LzI2 -MjARhg9odHRwOi8vdGVzdC8yNjMwEYYPaHR0cDovL3Rlc3QvMjY0MBGGD2h0dHA6 -Ly90ZXN0LzI2NTARhg9odHRwOi8vdGVzdC8yNjYwEYYPaHR0cDovL3Rlc3QvMjY3 -MBGGD2h0dHA6Ly90ZXN0LzI2ODARhg9odHRwOi8vdGVzdC8yNjkwEYYPaHR0cDov -L3Rlc3QvMjcwMBGGD2h0dHA6Ly90ZXN0LzI3MTARhg9odHRwOi8vdGVzdC8yNzIw -EYYPaHR0cDovL3Rlc3QvMjczMBGGD2h0dHA6Ly90ZXN0LzI3NDARhg9odHRwOi8v -dGVzdC8yNzUwEYYPaHR0cDovL3Rlc3QvMjc2MBGGD2h0dHA6Ly90ZXN0LzI3NzAR -hg9odHRwOi8vdGVzdC8yNzgwEYYPaHR0cDovL3Rlc3QvMjc5MBGGD2h0dHA6Ly90 -ZXN0LzI4MDARhg9odHRwOi8vdGVzdC8yODEwEYYPaHR0cDovL3Rlc3QvMjgyMBGG -D2h0dHA6Ly90ZXN0LzI4MzARhg9odHRwOi8vdGVzdC8yODQwEYYPaHR0cDovL3Rl -c3QvMjg1MBGGD2h0dHA6Ly90ZXN0LzI4NjARhg9odHRwOi8vdGVzdC8yODcwEYYP -aHR0cDovL3Rlc3QvMjg4MBGGD2h0dHA6Ly90ZXN0LzI4OTARhg9odHRwOi8vdGVz -dC8yOTAwEYYPaHR0cDovL3Rlc3QvMjkxMBGGD2h0dHA6Ly90ZXN0LzI5MjARhg9o -dHRwOi8vdGVzdC8yOTMwEYYPaHR0cDovL3Rlc3QvMjk0MBGGD2h0dHA6Ly90ZXN0 -LzI5NTARhg9odHRwOi8vdGVzdC8yOTYwEYYPaHR0cDovL3Rlc3QvMjk3MBGGD2h0 -dHA6Ly90ZXN0LzI5ODARhg9odHRwOi8vdGVzdC8yOTkwEYYPaHR0cDovL3Rlc3Qv -MzAwMBGGD2h0dHA6Ly90ZXN0LzMwMTARhg9odHRwOi8vdGVzdC8zMDIwEYYPaHR0 -cDovL3Rlc3QvMzAzMBGGD2h0dHA6Ly90ZXN0LzMwNDARhg9odHRwOi8vdGVzdC8z -MDUwEYYPaHR0cDovL3Rlc3QvMzA2MBGGD2h0dHA6Ly90ZXN0LzMwNzARhg9odHRw -Oi8vdGVzdC8zMDgwEYYPaHR0cDovL3Rlc3QvMzA5MBGGD2h0dHA6Ly90ZXN0LzMx -MDARhg9odHRwOi8vdGVzdC8zMTEwEYYPaHR0cDovL3Rlc3QvMzEyMBGGD2h0dHA6 -Ly90ZXN0LzMxMzARhg9odHRwOi8vdGVzdC8zMTQwEYYPaHR0cDovL3Rlc3QvMzE1 -MBGGD2h0dHA6Ly90ZXN0LzMxNjARhg9odHRwOi8vdGVzdC8zMTcwEYYPaHR0cDov -L3Rlc3QvMzE4MBGGD2h0dHA6Ly90ZXN0LzMxOTARhg9odHRwOi8vdGVzdC8zMjAw -EYYPaHR0cDovL3Rlc3QvMzIxMBGGD2h0dHA6Ly90ZXN0LzMyMjARhg9odHRwOi8v -dGVzdC8zMjMwEYYPaHR0cDovL3Rlc3QvMzI0MBGGD2h0dHA6Ly90ZXN0LzMyNTAR -hg9odHRwOi8vdGVzdC8zMjYwEYYPaHR0cDovL3Rlc3QvMzI3MBGGD2h0dHA6Ly90 -ZXN0LzMyODARhg9odHRwOi8vdGVzdC8zMjkwEYYPaHR0cDovL3Rlc3QvMzMwMBGG -D2h0dHA6Ly90ZXN0LzMzMTARhg9odHRwOi8vdGVzdC8zMzIwEYYPaHR0cDovL3Rl -c3QvMzMzMBGGD2h0dHA6Ly90ZXN0LzMzNDARhg9odHRwOi8vdGVzdC8zMzUwEYYP -aHR0cDovL3Rlc3QvMzM2MBGGD2h0dHA6Ly90ZXN0LzMzNzARhg9odHRwOi8vdGVz -dC8zMzgwEYYPaHR0cDovL3Rlc3QvMzM5MBGGD2h0dHA6Ly90ZXN0LzM0MDARhg9o -dHRwOi8vdGVzdC8zNDEwEYYPaHR0cDovL3Rlc3QvMzQyMBGGD2h0dHA6Ly90ZXN0 -LzM0MzARhg9odHRwOi8vdGVzdC8zNDQwEYYPaHR0cDovL3Rlc3QvMzQ1MBGGD2h0 -dHA6Ly90ZXN0LzM0NjARhg9odHRwOi8vdGVzdC8zNDcwEYYPaHR0cDovL3Rlc3Qv -MzQ4MBGGD2h0dHA6Ly90ZXN0LzM0OTARhg9odHRwOi8vdGVzdC8zNTAwEYYPaHR0 -cDovL3Rlc3QvMzUxMBGGD2h0dHA6Ly90ZXN0LzM1MjARhg9odHRwOi8vdGVzdC8z -NTMwEYYPaHR0cDovL3Rlc3QvMzU0MBGGD2h0dHA6Ly90ZXN0LzM1NTARhg9odHRw -Oi8vdGVzdC8zNTYwEYYPaHR0cDovL3Rlc3QvMzU3MBGGD2h0dHA6Ly90ZXN0LzM1 -ODARhg9odHRwOi8vdGVzdC8zNTkwEYYPaHR0cDovL3Rlc3QvMzYwMBGGD2h0dHA6 -Ly90ZXN0LzM2MTARhg9odHRwOi8vdGVzdC8zNjIwEYYPaHR0cDovL3Rlc3QvMzYz -MBGGD2h0dHA6Ly90ZXN0LzM2NDARhg9odHRwOi8vdGVzdC8zNjUwEYYPaHR0cDov -L3Rlc3QvMzY2MBGGD2h0dHA6Ly90ZXN0LzM2NzARhg9odHRwOi8vdGVzdC8zNjgw -EYYPaHR0cDovL3Rlc3QvMzY5MBGGD2h0dHA6Ly90ZXN0LzM3MDARhg9odHRwOi8v -dGVzdC8zNzEwEYYPaHR0cDovL3Rlc3QvMzcyMBGGD2h0dHA6Ly90ZXN0LzM3MzAR -hg9odHRwOi8vdGVzdC8zNzQwEYYPaHR0cDovL3Rlc3QvMzc1MBGGD2h0dHA6Ly90 -ZXN0LzM3NjARhg9odHRwOi8vdGVzdC8zNzcwEYYPaHR0cDovL3Rlc3QvMzc4MBGG -D2h0dHA6Ly90ZXN0LzM3OTARhg9odHRwOi8vdGVzdC8zODAwEYYPaHR0cDovL3Rl -c3QvMzgxMBGGD2h0dHA6Ly90ZXN0LzM4MjARhg9odHRwOi8vdGVzdC8zODMwEYYP -aHR0cDovL3Rlc3QvMzg0MBGGD2h0dHA6Ly90ZXN0LzM4NTARhg9odHRwOi8vdGVz -dC8zODYwEYYPaHR0cDovL3Rlc3QvMzg3MBGGD2h0dHA6Ly90ZXN0LzM4ODARhg9o -dHRwOi8vdGVzdC8zODkwEYYPaHR0cDovL3Rlc3QvMzkwMBGGD2h0dHA6Ly90ZXN0 -LzM5MTARhg9odHRwOi8vdGVzdC8zOTIwEYYPaHR0cDovL3Rlc3QvMzkzMBGGD2h0 -dHA6Ly90ZXN0LzM5NDARhg9odHRwOi8vdGVzdC8zOTUwEYYPaHR0cDovL3Rlc3Qv -Mzk2MBGGD2h0dHA6Ly90ZXN0LzM5NzARhg9odHRwOi8vdGVzdC8zOTgwEYYPaHR0 -cDovL3Rlc3QvMzk5MBGGD2h0dHA6Ly90ZXN0LzQwMDARhg9odHRwOi8vdGVzdC80 -MDEwEYYPaHR0cDovL3Rlc3QvNDAyMBGGD2h0dHA6Ly90ZXN0LzQwMzARhg9odHRw -Oi8vdGVzdC80MDQwEYYPaHR0cDovL3Rlc3QvNDA1MBGGD2h0dHA6Ly90ZXN0LzQw -NjARhg9odHRwOi8vdGVzdC80MDcwEYYPaHR0cDovL3Rlc3QvNDA4MBGGD2h0dHA6 -Ly90ZXN0LzQwOTARhg9odHRwOi8vdGVzdC80MTAwEYYPaHR0cDovL3Rlc3QvNDEx -MBGGD2h0dHA6Ly90ZXN0LzQxMjARhg9odHRwOi8vdGVzdC80MTMwEYYPaHR0cDov -L3Rlc3QvNDE0MBGGD2h0dHA6Ly90ZXN0LzQxNTARhg9odHRwOi8vdGVzdC80MTYw -EYYPaHR0cDovL3Rlc3QvNDE3MBGGD2h0dHA6Ly90ZXN0LzQxODARhg9odHRwOi8v -dGVzdC80MTkwEYYPaHR0cDovL3Rlc3QvNDIwMBGGD2h0dHA6Ly90ZXN0LzQyMTAR -hg9odHRwOi8vdGVzdC80MjIwEYYPaHR0cDovL3Rlc3QvNDIzMBGGD2h0dHA6Ly90 -ZXN0LzQyNDARhg9odHRwOi8vdGVzdC80MjUwEYYPaHR0cDovL3Rlc3QvNDI2MBGG -D2h0dHA6Ly90ZXN0LzQyNzARhg9odHRwOi8vdGVzdC80MjgwEYYPaHR0cDovL3Rl -c3QvNDI5MBGGD2h0dHA6Ly90ZXN0LzQzMDARhg9odHRwOi8vdGVzdC80MzEwEYYP -aHR0cDovL3Rlc3QvNDMyMBGGD2h0dHA6Ly90ZXN0LzQzMzARhg9odHRwOi8vdGVz -dC80MzQwEYYPaHR0cDovL3Rlc3QvNDM1MBGGD2h0dHA6Ly90ZXN0LzQzNjARhg9o -dHRwOi8vdGVzdC80MzcwEYYPaHR0cDovL3Rlc3QvNDM4MBGGD2h0dHA6Ly90ZXN0 -LzQzOTARhg9odHRwOi8vdGVzdC80NDAwEYYPaHR0cDovL3Rlc3QvNDQxMBGGD2h0 -dHA6Ly90ZXN0LzQ0MjARhg9odHRwOi8vdGVzdC80NDMwEYYPaHR0cDovL3Rlc3Qv -NDQ0MBGGD2h0dHA6Ly90ZXN0LzQ0NTARhg9odHRwOi8vdGVzdC80NDYwEYYPaHR0 -cDovL3Rlc3QvNDQ3MBGGD2h0dHA6Ly90ZXN0LzQ0ODARhg9odHRwOi8vdGVzdC80 -NDkwEYYPaHR0cDovL3Rlc3QvNDUwMBGGD2h0dHA6Ly90ZXN0LzQ1MTARhg9odHRw -Oi8vdGVzdC80NTIwEYYPaHR0cDovL3Rlc3QvNDUzMBGGD2h0dHA6Ly90ZXN0LzQ1 -NDARhg9odHRwOi8vdGVzdC80NTUwEYYPaHR0cDovL3Rlc3QvNDU2MBGGD2h0dHA6 -Ly90ZXN0LzQ1NzARhg9odHRwOi8vdGVzdC80NTgwEYYPaHR0cDovL3Rlc3QvNDU5 -MBGGD2h0dHA6Ly90ZXN0LzQ2MDARhg9odHRwOi8vdGVzdC80NjEwEYYPaHR0cDov -L3Rlc3QvNDYyMBGGD2h0dHA6Ly90ZXN0LzQ2MzARhg9odHRwOi8vdGVzdC80NjQw -EYYPaHR0cDovL3Rlc3QvNDY1MBGGD2h0dHA6Ly90ZXN0LzQ2NjARhg9odHRwOi8v -dGVzdC80NjcwEYYPaHR0cDovL3Rlc3QvNDY4MBGGD2h0dHA6Ly90ZXN0LzQ2OTAR -hg9odHRwOi8vdGVzdC80NzAwEYYPaHR0cDovL3Rlc3QvNDcxMBGGD2h0dHA6Ly90 -ZXN0LzQ3MjARhg9odHRwOi8vdGVzdC80NzMwEYYPaHR0cDovL3Rlc3QvNDc0MBGG -D2h0dHA6Ly90ZXN0LzQ3NTARhg9odHRwOi8vdGVzdC80NzYwEYYPaHR0cDovL3Rl -c3QvNDc3MBGGD2h0dHA6Ly90ZXN0LzQ3ODARhg9odHRwOi8vdGVzdC80NzkwEYYP -aHR0cDovL3Rlc3QvNDgwMBGGD2h0dHA6Ly90ZXN0LzQ4MTARhg9odHRwOi8vdGVz -dC80ODIwEYYPaHR0cDovL3Rlc3QvNDgzMBGGD2h0dHA6Ly90ZXN0LzQ4NDARhg9o -dHRwOi8vdGVzdC80ODUwEYYPaHR0cDovL3Rlc3QvNDg2MBGGD2h0dHA6Ly90ZXN0 -LzQ4NzARhg9odHRwOi8vdGVzdC80ODgwEYYPaHR0cDovL3Rlc3QvNDg5MBGGD2h0 -dHA6Ly90ZXN0LzQ5MDARhg9odHRwOi8vdGVzdC80OTEwEYYPaHR0cDovL3Rlc3Qv -NDkyMBGGD2h0dHA6Ly90ZXN0LzQ5MzARhg9odHRwOi8vdGVzdC80OTQwEYYPaHR0 -cDovL3Rlc3QvNDk1MBGGD2h0dHA6Ly90ZXN0LzQ5NjARhg9odHRwOi8vdGVzdC80 -OTcwEYYPaHR0cDovL3Rlc3QvNDk4MBGGD2h0dHA6Ly90ZXN0LzQ5OTARhg9odHRw -Oi8vdGVzdC81MDAwEYYPaHR0cDovL3Rlc3QvNTAxMBGGD2h0dHA6Ly90ZXN0LzUw -MjARhg9odHRwOi8vdGVzdC81MDMwEYYPaHR0cDovL3Rlc3QvNTA0MBGGD2h0dHA6 -Ly90ZXN0LzUwNTARhg9odHRwOi8vdGVzdC81MDYwEYYPaHR0cDovL3Rlc3QvNTA3 -MBGGD2h0dHA6Ly90ZXN0LzUwODARhg9odHRwOi8vdGVzdC81MDkwEYYPaHR0cDov -L3Rlc3QvNTEwMBGGD2h0dHA6Ly90ZXN0LzUxMTARhg9odHRwOi8vdGVzdC81MTIw -EYYPaHR0cDovL3Rlc3QvNTEzMBGGD2h0dHA6Ly90ZXN0LzUxNDARhg9odHRwOi8v -dGVzdC81MTUwEYYPaHR0cDovL3Rlc3QvNTE2MBGGD2h0dHA6Ly90ZXN0LzUxNzAR -hg9odHRwOi8vdGVzdC81MTgwEYYPaHR0cDovL3Rlc3QvNTE5MBGGD2h0dHA6Ly90 -ZXN0LzUyMDARhg9odHRwOi8vdGVzdC81MjEwEYYPaHR0cDovL3Rlc3QvNTIyMBGG -D2h0dHA6Ly90ZXN0LzUyMzARhg9odHRwOi8vdGVzdC81MjQwEYYPaHR0cDovL3Rl -c3QvNTI1MBGGD2h0dHA6Ly90ZXN0LzUyNjARhg9odHRwOi8vdGVzdC81MjcwEYYP -aHR0cDovL3Rlc3QvNTI4MBGGD2h0dHA6Ly90ZXN0LzUyOTARhg9odHRwOi8vdGVz -dC81MzAwEYYPaHR0cDovL3Rlc3QvNTMxMBGGD2h0dHA6Ly90ZXN0LzUzMjARhg9o -dHRwOi8vdGVzdC81MzMwEYYPaHR0cDovL3Rlc3QvNTM0MBGGD2h0dHA6Ly90ZXN0 -LzUzNTARhg9odHRwOi8vdGVzdC81MzYwEYYPaHR0cDovL3Rlc3QvNTM3MBGGD2h0 -dHA6Ly90ZXN0LzUzODARhg9odHRwOi8vdGVzdC81MzkwEYYPaHR0cDovL3Rlc3Qv -NTQwMBGGD2h0dHA6Ly90ZXN0LzU0MTARhg9odHRwOi8vdGVzdC81NDIwEYYPaHR0 -cDovL3Rlc3QvNTQzMBGGD2h0dHA6Ly90ZXN0LzU0NDARhg9odHRwOi8vdGVzdC81 -NDUwEYYPaHR0cDovL3Rlc3QvNTQ2MBGGD2h0dHA6Ly90ZXN0LzU0NzARhg9odHRw -Oi8vdGVzdC81NDgwEYYPaHR0cDovL3Rlc3QvNTQ5MBGGD2h0dHA6Ly90ZXN0LzU1 -MDARhg9odHRwOi8vdGVzdC81NTEwEYYPaHR0cDovL3Rlc3QvNTUyMBGGD2h0dHA6 -Ly90ZXN0LzU1MzARhg9odHRwOi8vdGVzdC81NTQwEYYPaHR0cDovL3Rlc3QvNTU1 -MBGGD2h0dHA6Ly90ZXN0LzU1NjARhg9odHRwOi8vdGVzdC81NTcwEYYPaHR0cDov -L3Rlc3QvNTU4MBGGD2h0dHA6Ly90ZXN0LzU1OTARhg9odHRwOi8vdGVzdC81NjAw -EYYPaHR0cDovL3Rlc3QvNTYxMBGGD2h0dHA6Ly90ZXN0LzU2MjARhg9odHRwOi8v -dGVzdC81NjMwEYYPaHR0cDovL3Rlc3QvNTY0MBGGD2h0dHA6Ly90ZXN0LzU2NTAR -hg9odHRwOi8vdGVzdC81NjYwEYYPaHR0cDovL3Rlc3QvNTY3MBGGD2h0dHA6Ly90 -ZXN0LzU2ODARhg9odHRwOi8vdGVzdC81NjkwEYYPaHR0cDovL3Rlc3QvNTcwMBGG -D2h0dHA6Ly90ZXN0LzU3MTARhg9odHRwOi8vdGVzdC81NzIwEYYPaHR0cDovL3Rl -c3QvNTczMBGGD2h0dHA6Ly90ZXN0LzU3NDARhg9odHRwOi8vdGVzdC81NzUwEYYP -aHR0cDovL3Rlc3QvNTc2MBGGD2h0dHA6Ly90ZXN0LzU3NzARhg9odHRwOi8vdGVz -dC81NzgwEYYPaHR0cDovL3Rlc3QvNTc5MBGGD2h0dHA6Ly90ZXN0LzU4MDARhg9o -dHRwOi8vdGVzdC81ODEwEYYPaHR0cDovL3Rlc3QvNTgyMBGGD2h0dHA6Ly90ZXN0 -LzU4MzARhg9odHRwOi8vdGVzdC81ODQwEYYPaHR0cDovL3Rlc3QvNTg1MBGGD2h0 -dHA6Ly90ZXN0LzU4NjARhg9odHRwOi8vdGVzdC81ODcwEYYPaHR0cDovL3Rlc3Qv -NTg4MBGGD2h0dHA6Ly90ZXN0LzU4OTARhg9odHRwOi8vdGVzdC81OTAwEYYPaHR0 -cDovL3Rlc3QvNTkxMBGGD2h0dHA6Ly90ZXN0LzU5MjARhg9odHRwOi8vdGVzdC81 -OTMwEYYPaHR0cDovL3Rlc3QvNTk0MBGGD2h0dHA6Ly90ZXN0LzU5NTARhg9odHRw -Oi8vdGVzdC81OTYwEYYPaHR0cDovL3Rlc3QvNTk3MBGGD2h0dHA6Ly90ZXN0LzU5 -ODARhg9odHRwOi8vdGVzdC81OTkwEYYPaHR0cDovL3Rlc3QvNjAwMBGGD2h0dHA6 -Ly90ZXN0LzYwMTARhg9odHRwOi8vdGVzdC82MDIwEYYPaHR0cDovL3Rlc3QvNjAz -MBGGD2h0dHA6Ly90ZXN0LzYwNDARhg9odHRwOi8vdGVzdC82MDUwEYYPaHR0cDov -L3Rlc3QvNjA2MBGGD2h0dHA6Ly90ZXN0LzYwNzARhg9odHRwOi8vdGVzdC82MDgw -EYYPaHR0cDovL3Rlc3QvNjA5MBGGD2h0dHA6Ly90ZXN0LzYxMDARhg9odHRwOi8v -dGVzdC82MTEwEYYPaHR0cDovL3Rlc3QvNjEyMBGGD2h0dHA6Ly90ZXN0LzYxMzAR -hg9odHRwOi8vdGVzdC82MTQwEYYPaHR0cDovL3Rlc3QvNjE1MBGGD2h0dHA6Ly90 -ZXN0LzYxNjARhg9odHRwOi8vdGVzdC82MTcwEYYPaHR0cDovL3Rlc3QvNjE4MBGG -D2h0dHA6Ly90ZXN0LzYxOTARhg9odHRwOi8vdGVzdC82MjAwEYYPaHR0cDovL3Rl -c3QvNjIxMBGGD2h0dHA6Ly90ZXN0LzYyMjARhg9odHRwOi8vdGVzdC82MjMwEYYP -aHR0cDovL3Rlc3QvNjI0MBGGD2h0dHA6Ly90ZXN0LzYyNTARhg9odHRwOi8vdGVz -dC82MjYwEYYPaHR0cDovL3Rlc3QvNjI3MBGGD2h0dHA6Ly90ZXN0LzYyODARhg9o -dHRwOi8vdGVzdC82MjkwEYYPaHR0cDovL3Rlc3QvNjMwMBGGD2h0dHA6Ly90ZXN0 -LzYzMTARhg9odHRwOi8vdGVzdC82MzIwEYYPaHR0cDovL3Rlc3QvNjMzMBGGD2h0 -dHA6Ly90ZXN0LzYzNDARhg9odHRwOi8vdGVzdC82MzUwEYYPaHR0cDovL3Rlc3Qv -NjM2MBGGD2h0dHA6Ly90ZXN0LzYzNzARhg9odHRwOi8vdGVzdC82MzgwEYYPaHR0 -cDovL3Rlc3QvNjM5MBGGD2h0dHA6Ly90ZXN0LzY0MDARhg9odHRwOi8vdGVzdC82 -NDEwEYYPaHR0cDovL3Rlc3QvNjQyMBGGD2h0dHA6Ly90ZXN0LzY0MzARhg9odHRw -Oi8vdGVzdC82NDQwEYYPaHR0cDovL3Rlc3QvNjQ1MBGGD2h0dHA6Ly90ZXN0LzY0 -NjARhg9odHRwOi8vdGVzdC82NDcwEYYPaHR0cDovL3Rlc3QvNjQ4MBGGD2h0dHA6 -Ly90ZXN0LzY0OTARhg9odHRwOi8vdGVzdC82NTAwEYYPaHR0cDovL3Rlc3QvNjUx -MBGGD2h0dHA6Ly90ZXN0LzY1MjARhg9odHRwOi8vdGVzdC82NTMwEYYPaHR0cDov -L3Rlc3QvNjU0MBGGD2h0dHA6Ly90ZXN0LzY1NTARhg9odHRwOi8vdGVzdC82NTYw -EYYPaHR0cDovL3Rlc3QvNjU3MBGGD2h0dHA6Ly90ZXN0LzY1ODARhg9odHRwOi8v -dGVzdC82NTkwEYYPaHR0cDovL3Rlc3QvNjYwMBGGD2h0dHA6Ly90ZXN0LzY2MTAR -hg9odHRwOi8vdGVzdC82NjIwEYYPaHR0cDovL3Rlc3QvNjYzMBGGD2h0dHA6Ly90 -ZXN0LzY2NDARhg9odHRwOi8vdGVzdC82NjUwEYYPaHR0cDovL3Rlc3QvNjY2MBGG -D2h0dHA6Ly90ZXN0LzY2NzARhg9odHRwOi8vdGVzdC82NjgwEYYPaHR0cDovL3Rl -c3QvNjY5MBGGD2h0dHA6Ly90ZXN0LzY3MDARhg9odHRwOi8vdGVzdC82NzEwEYYP -aHR0cDovL3Rlc3QvNjcyMBGGD2h0dHA6Ly90ZXN0LzY3MzARhg9odHRwOi8vdGVz -dC82NzQwEYYPaHR0cDovL3Rlc3QvNjc1MBGGD2h0dHA6Ly90ZXN0LzY3NjARhg9o -dHRwOi8vdGVzdC82NzcwEYYPaHR0cDovL3Rlc3QvNjc4MBGGD2h0dHA6Ly90ZXN0 -LzY3OTARhg9odHRwOi8vdGVzdC82ODAwEYYPaHR0cDovL3Rlc3QvNjgxMBGGD2h0 -dHA6Ly90ZXN0LzY4MjARhg9odHRwOi8vdGVzdC82ODMwEYYPaHR0cDovL3Rlc3Qv -Njg0MBGGD2h0dHA6Ly90ZXN0LzY4NTARhg9odHRwOi8vdGVzdC82ODYwEYYPaHR0 -cDovL3Rlc3QvNjg3MBGGD2h0dHA6Ly90ZXN0LzY4ODARhg9odHRwOi8vdGVzdC82 -ODkwEYYPaHR0cDovL3Rlc3QvNjkwMBGGD2h0dHA6Ly90ZXN0LzY5MTARhg9odHRw -Oi8vdGVzdC82OTIwEYYPaHR0cDovL3Rlc3QvNjkzMBGGD2h0dHA6Ly90ZXN0LzY5 -NDARhg9odHRwOi8vdGVzdC82OTUwEYYPaHR0cDovL3Rlc3QvNjk2MBGGD2h0dHA6 -Ly90ZXN0LzY5NzARhg9odHRwOi8vdGVzdC82OTgwEYYPaHR0cDovL3Rlc3QvNjk5 -MBGGD2h0dHA6Ly90ZXN0LzcwMDARhg9odHRwOi8vdGVzdC83MDEwEYYPaHR0cDov -L3Rlc3QvNzAyMBGGD2h0dHA6Ly90ZXN0LzcwMzARhg9odHRwOi8vdGVzdC83MDQw -EYYPaHR0cDovL3Rlc3QvNzA1MBGGD2h0dHA6Ly90ZXN0LzcwNjARhg9odHRwOi8v -dGVzdC83MDcwEYYPaHR0cDovL3Rlc3QvNzA4MBGGD2h0dHA6Ly90ZXN0LzcwOTAR -hg9odHRwOi8vdGVzdC83MTAwEYYPaHR0cDovL3Rlc3QvNzExMBGGD2h0dHA6Ly90 -ZXN0LzcxMjARhg9odHRwOi8vdGVzdC83MTMwEYYPaHR0cDovL3Rlc3QvNzE0MBGG -D2h0dHA6Ly90ZXN0LzcxNTARhg9odHRwOi8vdGVzdC83MTYwEYYPaHR0cDovL3Rl -c3QvNzE3MBGGD2h0dHA6Ly90ZXN0LzcxODARhg9odHRwOi8vdGVzdC83MTkwEYYP -aHR0cDovL3Rlc3QvNzIwMBGGD2h0dHA6Ly90ZXN0LzcyMTARhg9odHRwOi8vdGVz -dC83MjIwEYYPaHR0cDovL3Rlc3QvNzIzMBGGD2h0dHA6Ly90ZXN0LzcyNDARhg9o -dHRwOi8vdGVzdC83MjUwEYYPaHR0cDovL3Rlc3QvNzI2MBGGD2h0dHA6Ly90ZXN0 -LzcyNzARhg9odHRwOi8vdGVzdC83MjgwEYYPaHR0cDovL3Rlc3QvNzI5MBGGD2h0 -dHA6Ly90ZXN0LzczMDARhg9odHRwOi8vdGVzdC83MzEwEYYPaHR0cDovL3Rlc3Qv -NzMyMBGGD2h0dHA6Ly90ZXN0LzczMzARhg9odHRwOi8vdGVzdC83MzQwEYYPaHR0 -cDovL3Rlc3QvNzM1MBGGD2h0dHA6Ly90ZXN0LzczNjARhg9odHRwOi8vdGVzdC83 -MzcwEYYPaHR0cDovL3Rlc3QvNzM4MBGGD2h0dHA6Ly90ZXN0LzczOTARhg9odHRw -Oi8vdGVzdC83NDAwEYYPaHR0cDovL3Rlc3QvNzQxMBGGD2h0dHA6Ly90ZXN0Lzc0 -MjARhg9odHRwOi8vdGVzdC83NDMwEYYPaHR0cDovL3Rlc3QvNzQ0MBGGD2h0dHA6 -Ly90ZXN0Lzc0NTARhg9odHRwOi8vdGVzdC83NDYwEYYPaHR0cDovL3Rlc3QvNzQ3 -MBGGD2h0dHA6Ly90ZXN0Lzc0ODARhg9odHRwOi8vdGVzdC83NDkwEYYPaHR0cDov -L3Rlc3QvNzUwMBGGD2h0dHA6Ly90ZXN0Lzc1MTARhg9odHRwOi8vdGVzdC83NTIw -EYYPaHR0cDovL3Rlc3QvNzUzMBGGD2h0dHA6Ly90ZXN0Lzc1NDARhg9odHRwOi8v -dGVzdC83NTUwEYYPaHR0cDovL3Rlc3QvNzU2MBGGD2h0dHA6Ly90ZXN0Lzc1NzAR -hg9odHRwOi8vdGVzdC83NTgwEYYPaHR0cDovL3Rlc3QvNzU5MBGGD2h0dHA6Ly90 -ZXN0Lzc2MDARhg9odHRwOi8vdGVzdC83NjEwEYYPaHR0cDovL3Rlc3QvNzYyMBGG -D2h0dHA6Ly90ZXN0Lzc2MzARhg9odHRwOi8vdGVzdC83NjQwEYYPaHR0cDovL3Rl -c3QvNzY1MBGGD2h0dHA6Ly90ZXN0Lzc2NjARhg9odHRwOi8vdGVzdC83NjcwEYYP -aHR0cDovL3Rlc3QvNzY4MBGGD2h0dHA6Ly90ZXN0Lzc2OTARhg9odHRwOi8vdGVz -dC83NzAwEYYPaHR0cDovL3Rlc3QvNzcxMBGGD2h0dHA6Ly90ZXN0Lzc3MjARhg9o -dHRwOi8vdGVzdC83NzMwEYYPaHR0cDovL3Rlc3QvNzc0MBGGD2h0dHA6Ly90ZXN0 -Lzc3NTARhg9odHRwOi8vdGVzdC83NzYwEYYPaHR0cDovL3Rlc3QvNzc3MBGGD2h0 -dHA6Ly90ZXN0Lzc3ODARhg9odHRwOi8vdGVzdC83NzkwEYYPaHR0cDovL3Rlc3Qv -NzgwMBGGD2h0dHA6Ly90ZXN0Lzc4MTARhg9odHRwOi8vdGVzdC83ODIwEYYPaHR0 -cDovL3Rlc3QvNzgzMBGGD2h0dHA6Ly90ZXN0Lzc4NDARhg9odHRwOi8vdGVzdC83 -ODUwEYYPaHR0cDovL3Rlc3QvNzg2MBGGD2h0dHA6Ly90ZXN0Lzc4NzARhg9odHRw -Oi8vdGVzdC83ODgwEYYPaHR0cDovL3Rlc3QvNzg5MBGGD2h0dHA6Ly90ZXN0Lzc5 -MDARhg9odHRwOi8vdGVzdC83OTEwEYYPaHR0cDovL3Rlc3QvNzkyMBGGD2h0dHA6 -Ly90ZXN0Lzc5MzARhg9odHRwOi8vdGVzdC83OTQwEYYPaHR0cDovL3Rlc3QvNzk1 -MBGGD2h0dHA6Ly90ZXN0Lzc5NjARhg9odHRwOi8vdGVzdC83OTcwEYYPaHR0cDov -L3Rlc3QvNzk4MBGGD2h0dHA6Ly90ZXN0Lzc5OTARhg9odHRwOi8vdGVzdC84MDAw -EYYPaHR0cDovL3Rlc3QvODAxMBGGD2h0dHA6Ly90ZXN0LzgwMjARhg9odHRwOi8v -dGVzdC84MDMwEYYPaHR0cDovL3Rlc3QvODA0MBGGD2h0dHA6Ly90ZXN0LzgwNTAR -hg9odHRwOi8vdGVzdC84MDYwEYYPaHR0cDovL3Rlc3QvODA3MBGGD2h0dHA6Ly90 -ZXN0LzgwODARhg9odHRwOi8vdGVzdC84MDkwEYYPaHR0cDovL3Rlc3QvODEwMBGG -D2h0dHA6Ly90ZXN0LzgxMTARhg9odHRwOi8vdGVzdC84MTIwEYYPaHR0cDovL3Rl -c3QvODEzMBGGD2h0dHA6Ly90ZXN0LzgxNDARhg9odHRwOi8vdGVzdC84MTUwEYYP -aHR0cDovL3Rlc3QvODE2MBGGD2h0dHA6Ly90ZXN0LzgxNzARhg9odHRwOi8vdGVz -dC84MTgwEYYPaHR0cDovL3Rlc3QvODE5MBGGD2h0dHA6Ly90ZXN0LzgyMDARhg9o -dHRwOi8vdGVzdC84MjEwEYYPaHR0cDovL3Rlc3QvODIyMBGGD2h0dHA6Ly90ZXN0 -LzgyMzARhg9odHRwOi8vdGVzdC84MjQwEYYPaHR0cDovL3Rlc3QvODI1MBGGD2h0 -dHA6Ly90ZXN0LzgyNjARhg9odHRwOi8vdGVzdC84MjcwEYYPaHR0cDovL3Rlc3Qv -ODI4MBGGD2h0dHA6Ly90ZXN0LzgyOTARhg9odHRwOi8vdGVzdC84MzAwEYYPaHR0 -cDovL3Rlc3QvODMxMBGGD2h0dHA6Ly90ZXN0LzgzMjARhg9odHRwOi8vdGVzdC84 -MzMwEYYPaHR0cDovL3Rlc3QvODM0MBGGD2h0dHA6Ly90ZXN0LzgzNTARhg9odHRw -Oi8vdGVzdC84MzYwEYYPaHR0cDovL3Rlc3QvODM3MBGGD2h0dHA6Ly90ZXN0Lzgz -ODARhg9odHRwOi8vdGVzdC84MzkwEYYPaHR0cDovL3Rlc3QvODQwMBGGD2h0dHA6 -Ly90ZXN0Lzg0MTARhg9odHRwOi8vdGVzdC84NDIwEYYPaHR0cDovL3Rlc3QvODQz -MBGGD2h0dHA6Ly90ZXN0Lzg0NDARhg9odHRwOi8vdGVzdC84NDUwEYYPaHR0cDov -L3Rlc3QvODQ2MBGGD2h0dHA6Ly90ZXN0Lzg0NzARhg9odHRwOi8vdGVzdC84NDgw -EYYPaHR0cDovL3Rlc3QvODQ5MBGGD2h0dHA6Ly90ZXN0Lzg1MDARhg9odHRwOi8v -dGVzdC84NTEwEYYPaHR0cDovL3Rlc3QvODUyMBGGD2h0dHA6Ly90ZXN0Lzg1MzAR -hg9odHRwOi8vdGVzdC84NTQwEYYPaHR0cDovL3Rlc3QvODU1MBGGD2h0dHA6Ly90 -ZXN0Lzg1NjARhg9odHRwOi8vdGVzdC84NTcwEYYPaHR0cDovL3Rlc3QvODU4MBGG -D2h0dHA6Ly90ZXN0Lzg1OTARhg9odHRwOi8vdGVzdC84NjAwEYYPaHR0cDovL3Rl -c3QvODYxMBGGD2h0dHA6Ly90ZXN0Lzg2MjARhg9odHRwOi8vdGVzdC84NjMwEYYP -aHR0cDovL3Rlc3QvODY0MBGGD2h0dHA6Ly90ZXN0Lzg2NTARhg9odHRwOi8vdGVz -dC84NjYwEYYPaHR0cDovL3Rlc3QvODY3MBGGD2h0dHA6Ly90ZXN0Lzg2ODARhg9o -dHRwOi8vdGVzdC84NjkwEYYPaHR0cDovL3Rlc3QvODcwMBGGD2h0dHA6Ly90ZXN0 -Lzg3MTARhg9odHRwOi8vdGVzdC84NzIwEYYPaHR0cDovL3Rlc3QvODczMBGGD2h0 -dHA6Ly90ZXN0Lzg3NDARhg9odHRwOi8vdGVzdC84NzUwEYYPaHR0cDovL3Rlc3Qv -ODc2MBGGD2h0dHA6Ly90ZXN0Lzg3NzARhg9odHRwOi8vdGVzdC84NzgwEYYPaHR0 -cDovL3Rlc3QvODc5MBGGD2h0dHA6Ly90ZXN0Lzg4MDARhg9odHRwOi8vdGVzdC84 -ODEwEYYPaHR0cDovL3Rlc3QvODgyMBGGD2h0dHA6Ly90ZXN0Lzg4MzARhg9odHRw -Oi8vdGVzdC84ODQwEYYPaHR0cDovL3Rlc3QvODg1MBGGD2h0dHA6Ly90ZXN0Lzg4 -NjARhg9odHRwOi8vdGVzdC84ODcwEYYPaHR0cDovL3Rlc3QvODg4MBGGD2h0dHA6 -Ly90ZXN0Lzg4OTARhg9odHRwOi8vdGVzdC84OTAwEYYPaHR0cDovL3Rlc3QvODkx -MBGGD2h0dHA6Ly90ZXN0Lzg5MjARhg9odHRwOi8vdGVzdC84OTMwEYYPaHR0cDov -L3Rlc3QvODk0MBGGD2h0dHA6Ly90ZXN0Lzg5NTARhg9odHRwOi8vdGVzdC84OTYw -EYYPaHR0cDovL3Rlc3QvODk3MBGGD2h0dHA6Ly90ZXN0Lzg5ODARhg9odHRwOi8v -dGVzdC84OTkwEYYPaHR0cDovL3Rlc3QvOTAwMBGGD2h0dHA6Ly90ZXN0LzkwMTAR -hg9odHRwOi8vdGVzdC85MDIwEYYPaHR0cDovL3Rlc3QvOTAzMBGGD2h0dHA6Ly90 -ZXN0LzkwNDARhg9odHRwOi8vdGVzdC85MDUwEYYPaHR0cDovL3Rlc3QvOTA2MBGG -D2h0dHA6Ly90ZXN0LzkwNzARhg9odHRwOi8vdGVzdC85MDgwEYYPaHR0cDovL3Rl -c3QvOTA5MBGGD2h0dHA6Ly90ZXN0LzkxMDARhg9odHRwOi8vdGVzdC85MTEwEYYP -aHR0cDovL3Rlc3QvOTEyMBGGD2h0dHA6Ly90ZXN0LzkxMzARhg9odHRwOi8vdGVz -dC85MTQwEYYPaHR0cDovL3Rlc3QvOTE1MBGGD2h0dHA6Ly90ZXN0LzkxNjARhg9o -dHRwOi8vdGVzdC85MTcwEYYPaHR0cDovL3Rlc3QvOTE4MBGGD2h0dHA6Ly90ZXN0 -LzkxOTARhg9odHRwOi8vdGVzdC85MjAwEYYPaHR0cDovL3Rlc3QvOTIxMBGGD2h0 -dHA6Ly90ZXN0LzkyMjARhg9odHRwOi8vdGVzdC85MjMwEYYPaHR0cDovL3Rlc3Qv -OTI0MBGGD2h0dHA6Ly90ZXN0LzkyNTARhg9odHRwOi8vdGVzdC85MjYwEYYPaHR0 -cDovL3Rlc3QvOTI3MBGGD2h0dHA6Ly90ZXN0LzkyODARhg9odHRwOi8vdGVzdC85 -MjkwEYYPaHR0cDovL3Rlc3QvOTMwMBGGD2h0dHA6Ly90ZXN0LzkzMTARhg9odHRw -Oi8vdGVzdC85MzIwEYYPaHR0cDovL3Rlc3QvOTMzMBGGD2h0dHA6Ly90ZXN0Lzkz -NDARhg9odHRwOi8vdGVzdC85MzUwEYYPaHR0cDovL3Rlc3QvOTM2MBGGD2h0dHA6 -Ly90ZXN0LzkzNzARhg9odHRwOi8vdGVzdC85MzgwEYYPaHR0cDovL3Rlc3QvOTM5 -MBGGD2h0dHA6Ly90ZXN0Lzk0MDARhg9odHRwOi8vdGVzdC85NDEwEYYPaHR0cDov -L3Rlc3QvOTQyMBGGD2h0dHA6Ly90ZXN0Lzk0MzARhg9odHRwOi8vdGVzdC85NDQw -EYYPaHR0cDovL3Rlc3QvOTQ1MBGGD2h0dHA6Ly90ZXN0Lzk0NjARhg9odHRwOi8v -dGVzdC85NDcwEYYPaHR0cDovL3Rlc3QvOTQ4MBGGD2h0dHA6Ly90ZXN0Lzk0OTAR -hg9odHRwOi8vdGVzdC85NTAwEYYPaHR0cDovL3Rlc3QvOTUxMBGGD2h0dHA6Ly90 -ZXN0Lzk1MjARhg9odHRwOi8vdGVzdC85NTMwEYYPaHR0cDovL3Rlc3QvOTU0MBGG -D2h0dHA6Ly90ZXN0Lzk1NTARhg9odHRwOi8vdGVzdC85NTYwEYYPaHR0cDovL3Rl -c3QvOTU3MBGGD2h0dHA6Ly90ZXN0Lzk1ODARhg9odHRwOi8vdGVzdC85NTkwEYYP -aHR0cDovL3Rlc3QvOTYwMBGGD2h0dHA6Ly90ZXN0Lzk2MTARhg9odHRwOi8vdGVz -dC85NjIwEYYPaHR0cDovL3Rlc3QvOTYzMBGGD2h0dHA6Ly90ZXN0Lzk2NDARhg9o -dHRwOi8vdGVzdC85NjUwEYYPaHR0cDovL3Rlc3QvOTY2MBGGD2h0dHA6Ly90ZXN0 -Lzk2NzARhg9odHRwOi8vdGVzdC85NjgwEYYPaHR0cDovL3Rlc3QvOTY5MBGGD2h0 -dHA6Ly90ZXN0Lzk3MDARhg9odHRwOi8vdGVzdC85NzEwEYYPaHR0cDovL3Rlc3Qv -OTcyMBGGD2h0dHA6Ly90ZXN0Lzk3MzARhg9odHRwOi8vdGVzdC85NzQwEYYPaHR0 -cDovL3Rlc3QvOTc1MBGGD2h0dHA6Ly90ZXN0Lzk3NjARhg9odHRwOi8vdGVzdC85 -NzcwEYYPaHR0cDovL3Rlc3QvOTc4MBGGD2h0dHA6Ly90ZXN0Lzk3OTARhg9odHRw -Oi8vdGVzdC85ODAwEYYPaHR0cDovL3Rlc3QvOTgxMBGGD2h0dHA6Ly90ZXN0Lzk4 -MjARhg9odHRwOi8vdGVzdC85ODMwEYYPaHR0cDovL3Rlc3QvOTg0MBGGD2h0dHA6 -Ly90ZXN0Lzk4NTARhg9odHRwOi8vdGVzdC85ODYwEYYPaHR0cDovL3Rlc3QvOTg3 -MBGGD2h0dHA6Ly90ZXN0Lzk4ODARhg9odHRwOi8vdGVzdC85ODkwEYYPaHR0cDov -L3Rlc3QvOTkwMBGGD2h0dHA6Ly90ZXN0Lzk5MTARhg9odHRwOi8vdGVzdC85OTIw -EYYPaHR0cDovL3Rlc3QvOTkzMBGGD2h0dHA6Ly90ZXN0Lzk5NDARhg9odHRwOi8v -dGVzdC85OTUwEYYPaHR0cDovL3Rlc3QvOTk2MBGGD2h0dHA6Ly90ZXN0Lzk5NzAR -hg9odHRwOi8vdGVzdC85OTgwEYYPaHR0cDovL3Rlc3QvOTk5MBKGEGh0dHA6Ly90 -ZXN0LzEwMDAwEoYQaHR0cDovL3Rlc3QvMTAwMTAShhBodHRwOi8vdGVzdC8xMDAy -MBKGEGh0dHA6Ly90ZXN0LzEwMDMwEoYQaHR0cDovL3Rlc3QvMTAwNDAShhBodHRw -Oi8vdGVzdC8xMDA1MBKGEGh0dHA6Ly90ZXN0LzEwMDYwEoYQaHR0cDovL3Rlc3Qv -MTAwNzAShhBodHRwOi8vdGVzdC8xMDA4MBKGEGh0dHA6Ly90ZXN0LzEwMDkwEoYQ -aHR0cDovL3Rlc3QvMTAxMDAShhBodHRwOi8vdGVzdC8xMDExMBKGEGh0dHA6Ly90 -ZXN0LzEwMTIwEoYQaHR0cDovL3Rlc3QvMTAxMzAShhBodHRwOi8vdGVzdC8xMDE0 -MBKGEGh0dHA6Ly90ZXN0LzEwMTUwEoYQaHR0cDovL3Rlc3QvMTAxNjAShhBodHRw -Oi8vdGVzdC8xMDE3MBKGEGh0dHA6Ly90ZXN0LzEwMTgwEoYQaHR0cDovL3Rlc3Qv -MTAxOTAShhBodHRwOi8vdGVzdC8xMDIwMBKGEGh0dHA6Ly90ZXN0LzEwMjEwEoYQ -aHR0cDovL3Rlc3QvMTAyMjAShhBodHRwOi8vdGVzdC8xMDIzMBKGEGh0dHA6Ly90 -ZXN0LzEwMjShgmluMAmCB3gwLnRlc3QwCYIHeDEudGVzdDAJggd4Mi50ZXN0MAmC -B3gzLnRlc3QwCYIHeDQudGVzdDAJggd4NS50ZXN0MAmCB3g2LnRlc3QwCYIHeDcu -dGVzdDAJggd4OC50ZXN0MAmCB3g5LnRlc3QwCoIIeDEwLnRlc3QwCoIIeDExLnRl -c3QwCoIIeDEyLnRlc3QwCoIIeDEzLnRlc3QwCoIIeDE0LnRlc3QwCoIIeDE1LnRl -c3QwCoIIeDE2LnRlc3QwCoIIeDE3LnRlc3QwCoIIeDE4LnRlc3QwCoIIeDE5LnRl -c3QwCoIIeDIwLnRlc3QwCoIIeDIxLnRlc3QwCoIIeDIyLnRlc3QwCoIIeDIzLnRl -c3QwCoIIeDI0LnRlc3QwCoIIeDI1LnRlc3QwCoIIeDI2LnRlc3QwCoIIeDI3LnRl -c3QwCoIIeDI4LnRlc3QwCoIIeDI5LnRlc3QwCoIIeDMwLnRlc3QwCoIIeDMxLnRl -c3QwCoIIeDMyLnRlc3QwCoIIeDMzLnRlc3QwCoIIeDM0LnRlc3QwCoIIeDM1LnRl -c3QwCoIIeDM2LnRlc3QwCoIIeDM3LnRlc3QwCoIIeDM4LnRlc3QwCoIIeDM5LnRl -c3QwCoIIeDQwLnRlc3QwCoIIeDQxLnRlc3QwCoIIeDQyLnRlc3QwCoIIeDQzLnRl -c3QwCoIIeDQ0LnRlc3QwCoIIeDQ1LnRlc3QwCoIIeDQ2LnRlc3QwCoIIeDQ3LnRl -c3QwCoIIeDQ4LnRlc3QwCoIIeDQ5LnRlc3QwCoIIeDUwLnRlc3QwCoIIeDUxLnRl -c3QwCoIIeDUyLnRlc3QwCoIIeDUzLnRlc3QwCoIIeDU0LnRlc3QwCoIIeDU1LnRl -c3QwCoIIeDU2LnRlc3QwCoIIeDU3LnRlc3QwCoIIeDU4LnRlc3QwCoIIeDU5LnRl -c3QwCoIIeDYwLnRlc3QwCoIIeDYxLnRlc3QwCoIIeDYyLnRlc3QwCoIIeDYzLnRl -c3QwCoIIeDY0LnRlc3QwCoIIeDY1LnRlc3QwCoIIeDY2LnRlc3QwCoIIeDY3LnRl -c3QwCoIIeDY4LnRlc3QwCoIIeDY5LnRlc3QwCoIIeDcwLnRlc3QwCoIIeDcxLnRl -c3QwCoIIeDcyLnRlc3QwCoIIeDczLnRlc3QwCoIIeDc0LnRlc3QwCoIIeDc1LnRl -c3QwCoIIeDc2LnRlc3QwCoIIeDc3LnRlc3QwCoIIeDc4LnRlc3QwCoIIeDc5LnRl -c3QwCoIIeDgwLnRlc3QwCoIIeDgxLnRlc3QwCoIIeDgyLnRlc3QwCoIIeDgzLnRl -c3QwCoIIeDg0LnRlc3QwCoIIeDg1LnRlc3QwCoIIeDg2LnRlc3QwCoIIeDg3LnRl -c3QwCoIIeDg4LnRlc3QwCoIIeDg5LnRlc3QwCoIIeDkwLnRlc3QwCoIIeDkxLnRl -c3QwCoIIeDkyLnRlc3QwCoIIeDkzLnRlc3QwCoIIeDk0LnRlc3QwCoIIeDk1LnRl -c3QwCoIIeDk2LnRlc3QwCoIIeDk3LnRlc3QwCoIIeDk4LnRlc3QwCoIIeDk5LnRl -c3QwC4IJeDEwMC50ZXN0MAuCCXgxMDEudGVzdDALggl4MTAyLnRlc3QwC4IJeDEw -My50ZXN0MAuCCXgxMDQudGVzdDALggl4MTA1LnRlc3QwC4IJeDEwNi50ZXN0MAuC -CXgxMDcudGVzdDALggl4MTA4LnRlc3QwC4IJeDEwOS50ZXN0MAuCCXgxMTAudGVz -dDALggl4MTExLnRlc3QwC4IJeDExMi50ZXN0MAuCCXgxMTMudGVzdDALggl4MTE0 -LnRlc3QwC4IJeDExNS50ZXN0MAuCCXgxMTYudGVzdDALggl4MTE3LnRlc3QwC4IJ -eDExOC50ZXN0MAuCCXgxMTkudGVzdDALggl4MTIwLnRlc3QwC4IJeDEyMS50ZXN0 -MAuCCXgxMjIudGVzdDALggl4MTIzLnRlc3QwC4IJeDEyNC50ZXN0MAuCCXgxMjUu -dGVzdDALggl4MTI2LnRlc3QwC4IJeDEyNy50ZXN0MAuCCXgxMjgudGVzdDALggl4 -MTI5LnRlc3QwC4IJeDEzMC50ZXN0MAuCCXgxMzEudGVzdDALggl4MTMyLnRlc3Qw -C4IJeDEzMy50ZXN0MAuCCXgxMzQudGVzdDALggl4MTM1LnRlc3QwC4IJeDEzNi50 -ZXN0MAuCCXgxMzcudGVzdDALggl4MTM4LnRlc3QwC4IJeDEzOS50ZXN0MAuCCXgx -NDAudGVzdDALggl4MTQxLnRlc3QwC4IJeDE0Mi50ZXN0MAuCCXgxNDMudGVzdDAL -ggl4MTQ0LnRlc3QwC4IJeDE0NS50ZXN0MAuCCXgxNDYudGVzdDALggl4MTQ3LnRl -c3QwC4IJeDE0OC50ZXN0MAuCCXgxNDkudGVzdDALggl4MTUwLnRlc3QwC4IJeDE1 -MS50ZXN0MAuCCXgxNTIudGVzdDALggl4MTUzLnRlc3QwC4IJeDE1NC50ZXN0MAuC -CXgxNTUudGVzdDALggl4MTU2LnRlc3QwC4IJeDE1Ny50ZXN0MAuCCXgxNTgudGVz -dDALggl4MTU5LnRlc3QwC4IJeDE2MC50ZXN0MAuCCXgxNjEudGVzdDALggl4MTYy -LnRlc3QwC4IJeDE2My50ZXN0MAuCCXgxNjQudGVzdDALggl4MTY1LnRlc3QwC4IJ -eDE2Ni50ZXN0MAuCCXgxNjcudGVzdDALggl4MTY4LnRlc3QwC4IJeDE2OS50ZXN0 -MAqHCAsAAAD/////MAqHCAsAAAH/////MAqHCAsAAAL/////MAqHCAsAAAP///// -MAqHCAsAAAT/////MAqHCAsAAAX/////MAqHCAsAAAb/////MAqHCAsAAAf///// -MAqHCAsAAAj/////MAqHCAsAAAn/////MAqHCAsAAAr/////MAqHCAsAAAv///// -MAqHCAsAAAz/////MAqHCAsAAA3/////MAqHCAsAAA7/////MAqHCAsAAA////// -MAqHCAsAABD/////MAqHCAsAABH/////MAqHCAsAABL/////MAqHCAsAABP///// -MAqHCAsAABT/////MAqHCAsAABX/////MAqHCAsAABb/////MAqHCAsAABf///// -MAqHCAsAABj/////MAqHCAsAABn/////MAqHCAsAABr/////MAqHCAsAABv///// -MAqHCAsAABz/////MAqHCAsAAB3/////MAqHCAsAAB7/////MAqHCAsAAB////// -MAqHCAsAACD/////MAqHCAsAACH/////MAqHCAsAACL/////MAqHCAsAACP///// -MAqHCAsAACT/////MAqHCAsAACX/////MAqHCAsAACb/////MAqHCAsAACf///// -MAqHCAsAACj/////MAqHCAsAACn/////MAqHCAsAACr/////MAqHCAsAACv///// -MAqHCAsAACz/////MAqHCAsAAC3/////MAqHCAsAAC7/////MAqHCAsAAC////// -MAqHCAsAADD/////MAqHCAsAADH/////MAqHCAsAADL/////MAqHCAsAADP///// -MAqHCAsAADT/////MAqHCAsAADX/////MAqHCAsAADb/////MAqHCAsAADf///// -MAqHCAsAADj/////MAqHCAsAADn/////MAqHCAsAADr/////MAqHCAsAADv///// -MAqHCAsAADz/////MAqHCAsAAD3/////MAqHCAsAAD7/////MAqHCAsAAD////// -MAqHCAsAAED/////MAqHCAsAAEH/////MAqHCAsAAEL/////MAqHCAsAAEP///// -MAqHCAsAAET/////MAqHCAsAAEX/////MAqHCAsAAEb/////MAqHCAsAAEf///// -MAqHCAsAAEj/////MAqHCAsAAEn/////MAqHCAsAAEr/////MAqHCAsAAEv///// -MAqHCAsAAEz/////MAqHCAsAAE3/////MAqHCAsAAE7/////MAqHCAsAAE////// -MAqHCAsAAFD/////MAqHCAsAAFH/////MAqHCAsAAFL/////MAqHCAsAAFP///// -MAqHCAsAAFT/////MAqHCAsAAFX/////MAqHCAsAAFb/////MAqHCAsAAFf///// -MAqHCAsAAFj/////MAqHCAsAAFn/////MAqHCAsAAFr/////MAqHCAsAAFv///// -MAqHCAsAAFz/////MAqHCAsAAF3/////MAqHCAsAAF7/////MAqHCAsAAF////// -MAqHCAsAAGD/////MAqHCAsAAGH/////MAqHCAsAAGL/////MAqHCAsAAGP///// -MAqHCAsAAGT/////MAqHCAsAAGX/////MAqHCAsAAGb/////MAqHCAsAAGf///// -MAqHCAsAAGj/////MAqHCAsAAGn/////MAqHCAsAAGr/////MAqHCAsAAGv///// -MAqHCAsAAGz/////MAqHCAsAAG3/////MAqHCAsAAG7/////MAqHCAsAAG////// -MAqHCAsAAHD/////MAqHCAsAAHH/////MAqHCAsAAHL/////MAqHCAsAAHP///// -MAqHCAsAAHT/////MAqHCAsAAHX/////MAqHCAsAAHb/////MAqHCAsAAHf///// -MAqHCAsAAHj/////MAqHCAsAAHn/////MAqHCAsAAHr/////MAqHCAsAAHv///// -MAqHCAsAAHz/////MAqHCAsAAH3/////MAqHCAsAAH7/////MAqHCAsAAH////// -MAqHCAsAAID/////MAqHCAsAAIH/////MAqHCAsAAIL/////MAqHCAsAAIP///// -MAqHCAsAAIT/////MAqHCAsAAIX/////MAqHCAsAAIb/////MAqHCAsAAIf///// -MAqHCAsAAIj/////MAqHCAsAAIn/////MAqHCAsAAIr/////MAqHCAsAAIv///// -MAqHCAsAAIz/////MAqHCAsAAI3/////MAqHCAsAAI7/////MAqHCAsAAI////// -MAqHCAsAAJD/////MAqHCAsAAJH/////MAqHCAsAAJL/////MAqHCAsAAJP///// -MAqHCAsAAJT/////MAqHCAsAAJX/////MAqHCAsAAJb/////MAqHCAsAAJf///// -MAqHCAsAAJj/////MAqHCAsAAJn/////MAqHCAsAAJr/////MAqHCAsAAJv///// -MAqHCAsAAJz/////MAqHCAsAAJ3/////MAqHCAsAAJ7/////MAqHCAsAAJ////// -MAqHCAsAAKD/////MAqHCAsAAKH/////MAqHCAsAAKL/////MAqHCAsAAKP///// -MAqHCAsAAKT/////MAqHCAsAAKX/////MAqHCAsAAKb/////MAqHCAsAAKf///// -MAqHCAsAAKj/////MAqHCAsAAKn/////MBGkDzANMQswCQYDVQQDDAJ4MDARpA8w -DTELMAkGA1UEAwwCeDEwEaQPMA0xCzAJBgNVBAMMAngyMBGkDzANMQswCQYDVQQD -DAJ4MzARpA8wDTELMAkGA1UEAwwCeDQwEaQPMA0xCzAJBgNVBAMMAng1MBGkDzAN -MQswCQYDVQQDDAJ4NjARpA8wDTELMAkGA1UEAwwCeDcwEaQPMA0xCzAJBgNVBAMM -Ang4MBGkDzANMQswCQYDVQQDDAJ4OTASpBAwDjEMMAoGA1UEAwwDeDEwMBKkEDAO -MQwwCgYDVQQDDAN4MTEwEqQQMA4xDDAKBgNVBAMMA3gxMjASpBAwDjEMMAoGA1UE -AwwDeDEzMBKkEDAOMQwwCgYDVQQDDAN4MTQwEqQQMA4xDDAKBgNVBAMMA3gxNTAS -pBAwDjEMMAoGA1UEAwwDeDE2MBKkEDAOMQwwCgYDVQQDDAN4MTcwEqQQMA4xDDAK -BgNVBAMMA3gxODASpBAwDjEMMAoGA1UEAwwDeDE5MBKkEDAOMQwwCgYDVQQDDAN4 -MjAwEqQQMA4xDDAKBgNVBAMMA3gyMTASpBAwDjEMMAoGA1UEAwwDeDIyMBKkEDAO -MQwwCgYDVQQDDAN4MjMwEqQQMA4xDDAKBgNVBAMMA3gyNDASpBAwDjEMMAoGA1UE -AwwDeDI1MBKkEDAOMQwwCgYDVQQDDAN4MjYwEqQQMA4xDDAKBgNVBAMMA3gyNzAS -pBAwDjEMMAoGA1UEAwwDeDI4MBKkEDAOMQwwCgYDVQQDDAN4MjkwEqQQMA4xDDAK -BgNVBAMMA3gzMDASpBAwDjEMMAoGA1UEAwwDeDMxMBKkEDAOMQwwCgYDVQQDDAN4 -MzIwEqQQMA4xDDAKBgNVBAMMA3gzMzASpBAwDjEMMAoGA1UEAwwDeDM0MBKkEDAO -MQwwCgYDVQQDDAN4MzUwEqQQMA4xDDAKBgNVBAMMA3gzNjASpBAwDjEMMAoGA1UE -AwwDeDM3MBKkEDAOMQwwCgYDVQQDDAN4MzgwEqQQMA4xDDAKBgNVBAMMA3gzOTAS -pBAwDjEMMAoGA1UEAwwDeDQwMBKkEDAOMQwwCgYDVQQDDAN4NDEwEqQQMA4xDDAK -BgNVBAMMA3g0MjASpBAwDjEMMAoGA1UEAwwDeDQzMBKkEDAOMQwwCgYDVQQDDAN4 -NDQwEqQQMA4xDDAKBgNVBAMMA3g0NTASpBAwDjEMMAoGA1UEAwwDeDQ2MBKkEDAO -MQwwCgYDVQQDDAN4NDcwEqQQMA4xDDAKBgNVBAMMA3g0ODASpBAwDjEMMAoGA1UE -AwwDeDQ5MBKkEDAOMQwwCgYDVQQDDAN4NTAwEqQQMA4xDDAKBgNVBAMMA3g1MTAS -pBAwDjEMMAoGA1UEAwwDeDUyMBKkEDAOMQwwCgYDVQQDDAN4NTMwEqQQMA4xDDAK -BgNVBAMMA3g1NDASpBAwDjEMMAoGA1UEAwwDeDU1MBKkEDAOMQwwCgYDVQQDDAN4 -NTYwEqQQMA4xDDAKBgNVBAMMA3g1NzASpBAwDjEMMAoGA1UEAwwDeDU4MBKkEDAO -MQwwCgYDVQQDDAN4NTkwEqQQMA4xDDAKBgNVBAMMA3g2MDASpBAwDjEMMAoGA1UE -AwwDeDYxMBKkEDAOMQwwCgYDVQQDDAN4NjIwEqQQMA4xDDAKBgNVBAMMA3g2MzAS -pBAwDjEMMAoGA1UEAwwDeDY0MBKkEDAOMQwwCgYDVQQDDAN4NjUwEqQQMA4xDDAK -BgNVBAMMA3g2NjASpBAwDjEMMAoGA1UEAwwDeDY3MBKkEDAOMQwwCgYDVQQDDAN4 -NjgwEqQQMA4xDDAKBgNVBAMMA3g2OTASpBAwDjEMMAoGA1UEAwwDeDcwMBKkEDAO -MQwwCgYDVQQDDAN4NzEwEqQQMA4xDDAKBgNVBAMMA3g3MjASpBAwDjEMMAoGA1UE -AwwDeDczMBKkEDAOMQwwCgYDVQQDDAN4NzQwEqQQMA4xDDAKBgNVBAMMA3g3NTAS -pBAwDjEMMAoGA1UEAwwDeDc2MBKkEDAOMQwwCgYDVQQDDAN4NzcwEqQQMA4xDDAK -BgNVBAMMA3g3ODASpBAwDjEMMAoGA1UEAwwDeDc5MBKkEDAOMQwwCgYDVQQDDAN4 -ODAwEqQQMA4xDDAKBgNVBAMMA3g4MTASpBAwDjEMMAoGA1UEAwwDeDgyMBKkEDAO -MQwwCgYDVQQDDAN4ODMwEqQQMA4xDDAKBgNVBAMMA3g4NDASpBAwDjEMMAoGA1UE -AwwDeDg1MBKkEDAOMQwwCgYDVQQDDAN4ODYwEqQQMA4xDDAKBgNVBAMMA3g4NzAS -pBAwDjEMMAoGA1UEAwwDeDg4MBKkEDAOMQwwCgYDVQQDDAN4ODkwEqQQMA4xDDAK -BgNVBAMMA3g5MDASpBAwDjEMMAoGA1UEAwwDeDkxMBKkEDAOMQwwCgYDVQQDDAN4 -OTIwEqQQMA4xDDAKBgNVBAMMA3g5MzASpBAwDjEMMAoGA1UEAwwDeDk0MBKkEDAO -MQwwCgYDVQQDDAN4OTUwEqQQMA4xDDAKBgNVBAMMA3g5NjASpBAwDjEMMAoGA1UE -AwwDeDk3MBKkEDAOMQwwCgYDVQQDDAN4OTgwEqQQMA4xDDAKBgNVBAMMA3g5OTAT -pBEwDzENMAsGA1UEAwwEeDEwMDATpBEwDzENMAsGA1UEAwwEeDEwMTATpBEwDzEN -MAsGA1UEAwwEeDEwMjATpBEwDzENMAsGA1UEAwwEeDEwMzATpBEwDzENMAsGA1UE -AwwEeDEwNDATpBEwDzENMAsGA1UEAwwEeDEwNTATpBEwDzENMAsGA1UEAwwEeDEw -NjATpBEwDzENMAsGA1UEAwwEeDEwNzATpBEwDzENMAsGA1UEAwwEeDEwODATpBEw -DzENMAsGA1UEAwwEeDEwOTATpBEwDzENMAsGA1UEAwwEeDExMDATpBEwDzENMAsG -A1UEAwwEeDExMTATpBEwDzENMAsGA1UEAwwEeDExMjATpBEwDzENMAsGA1UEAwwE -eDExMzATpBEwDzENMAsGA1UEAwwEeDExNDATpBEwDzENMAsGA1UEAwwEeDExNTAT -pBEwDzENMAsGA1UEAwwEeDExNjATpBEwDzENMAsGA1UEAwwEeDExNzATpBEwDzEN -MAsGA1UEAwwEeDExODATpBEwDzENMAsGA1UEAwwEeDExOTATpBEwDzENMAsGA1UE -AwwEeDEyMDATpBEwDzENMAsGA1UEAwwEeDEyMTATpBEwDzENMAsGA1UEAwwEeDEy -MjATpBEwDzENMAsGA1UEAwwEeDEyMzATpBEwDzENMAsGA1UEAwwEeDEyNDATpBEw -DzENMAsGA1UEAwwEeDEyNTATpBEwDzENMAsGA1UEAwwEeDEyNjATpBEwDzENMAsG -A1UEAwwEeDEyNzATpBEwDzENMAsGA1UEAwwEeDEyODATpBEwDzENMAsGA1UEAwwE -eDEyOTATpBEwDzENMAsGA1UEAwwEeDEzMDATpBEwDzENMAsGA1UEAwwEeDEzMTAT -pBEwDzENMAsGA1UEAwwEeDEzMjATpBEwDzENMAsGA1UEAwwEeDEzMzATpBEwDzEN -MAsGA1UEAwwEeDEzNDATpBEwDzENMAsGA1UEAwwEeDEzNTATpBEwDzENMAsGA1UE -AwwEeDEzNjATpBEwDzENMAsGA1UEAwwEeDEzNzATpBEwDzENMAsGA1UEAwwEeDEz -ODATpBEwDzENMAsGA1UEAwwEeDEzOTATpBEwDzENMAsGA1UEAwwEeDE0MDATpBEw -DzENMAsGA1UEAwwEeDE0MTATpBEwDzENMAsGA1UEAwwEeDE0MjATpBEwDzENMAsG -A1UEAwwEeDE0MzATpBEwDzENMAsGA1UEAwwEeDE0NDATpBEwDzENMAsGA1UEAwwE -eDE0NTATpBEwDzENMAsGA1UEAwwEeDE0NjATpBEwDzENMAsGA1UEAwwEeDE0NzAT -pBEwDzENMAsGA1UEAwwEeDE0ODATpBEwDzENMAsGA1UEAwwEeDE0OTATpBEwDzEN -MAsGA1UEAwwEeDE1MDATpBEwDzENMAsGA1UEAwwEeDE1MTATpBEwDzENMAsGA1UE -AwwEeDE1MjATpBEwDzENMAsGA1UEAwwEeDE1MzATpBEwDzENMAsGA1UEAwwEeDE1 -NDATpBEwDzENMAsGA1UEAwwEeDE1NTATpBEwDzENMAsGA1UEAwwEeDE1NjATpBEw -DzENMAsGA1UEAwwEeDE1NzATpBEwDzENMAsGA1UEAwwEeDE1ODATpBEwDzENMAsG -A1UEAwwEeDE1OTATpBEwDzENMAsGA1UEAwwEeDE2MDATpBEwDzENMAsGA1UEAwwE -eDE2MTATpBEwDzENMAsGA1UEAwwEeDE2MjATpBEwDzENMAsGA1UEAwwEeDE2MzAT -pBEwDzENMAsGA1UEAwwEeDE2NDATpBEwDzENMAsGA1UEAwwEeDE2NTATpBEwDzEN -MAsGA1UEAwwEeDE2NjATpBEwDzENMAsGA1UEAwwEeDE2NzATpBEwDzENMAsGA1UE -AwwEeDE2ODATpBEwDzENMAsGA1UEAwwEeDE2OTAPhg1odHRwOi8veGVzdC8wMA+G -DWh0dHA6Ly94ZXN0LzEwD4YNaHR0cDovL3hlc3QvMjAPhg1odHRwOi8veGVzdC8z -MA+GDWh0dHA6Ly94ZXN0LzQwD4YNaHR0cDovL3hlc3QvNTAPhg1odHRwOi8veGVz -dC82MA+GDWh0dHA6Ly94ZXN0LzcwD4YNaHR0cDovL3hlc3QvODAPhg1odHRwOi8v -eGVzdC85MBCGDmh0dHA6Ly94ZXN0LzEwMBCGDmh0dHA6Ly94ZXN0LzExMBCGDmh0 -dHA6Ly94ZXN0LzEyMBCGDmh0dHA6Ly94ZXN0LzEzMBCGDmh0dHA6Ly94ZXN0LzE0 -MBCGDmh0dHA6Ly94ZXN0LzE1MBCGDmh0dHA6Ly94ZXN0LzE2MBCGDmh0dHA6Ly94 -ZXN0LzE3MBCGDmh0dHA6Ly94ZXN0LzE4MBCGDmh0dHA6Ly94ZXN0LzE5MBCGDmh0 -dHA6Ly94ZXN0LzIwMBCGDmh0dHA6Ly94ZXN0LzIxMBCGDmh0dHA6Ly94ZXN0LzIy -MBCGDmh0dHA6Ly94ZXN0LzIzMBCGDmh0dHA6Ly94ZXN0LzI0MBCGDmh0dHA6Ly94 -ZXN0LzI1MBCGDmh0dHA6Ly94ZXN0LzI2MBCGDmh0dHA6Ly94ZXN0LzI3MBCGDmh0 -dHA6Ly94ZXN0LzI4MBCGDmh0dHA6Ly94ZXN0LzI5MBCGDmh0dHA6Ly94ZXN0LzMw -MBCGDmh0dHA6Ly94ZXN0LzMxMBCGDmh0dHA6Ly94ZXN0LzMyMBCGDmh0dHA6Ly94 -ZXN0LzMzMBCGDmh0dHA6Ly94ZXN0LzM0MBCGDmh0dHA6Ly94ZXN0LzM1MBCGDmh0 -dHA6Ly94ZXN0LzM2MBCGDmh0dHA6Ly94ZXN0LzM3MBCGDmh0dHA6Ly94ZXN0LzM4 -MBCGDmh0dHA6Ly94ZXN0LzM5MBCGDmh0dHA6Ly94ZXN0LzQwMBCGDmh0dHA6Ly94 -ZXN0LzQxMBCGDmh0dHA6Ly94ZXN0LzQyMBCGDmh0dHA6Ly94ZXN0LzQzMBCGDmh0 -dHA6Ly94ZXN0LzQ0MBCGDmh0dHA6Ly94ZXN0LzQ1MBCGDmh0dHA6Ly94ZXN0LzQ2 -MBCGDmh0dHA6Ly94ZXN0LzQ3MBCGDmh0dHA6Ly94ZXN0LzQ4MBCGDmh0dHA6Ly94 -ZXN0LzQ5MBCGDmh0dHA6Ly94ZXN0LzUwMBCGDmh0dHA6Ly94ZXN0LzUxMBCGDmh0 -dHA6Ly94ZXN0LzUyMBCGDmh0dHA6Ly94ZXN0LzUzMBCGDmh0dHA6Ly94ZXN0LzU0 -MBCGDmh0dHA6Ly94ZXN0LzU1MBCGDmh0dHA6Ly94ZXN0LzU2MBCGDmh0dHA6Ly94 -ZXN0LzU3MBCGDmh0dHA6Ly94ZXN0LzU4MBCGDmh0dHA6Ly94ZXN0LzU5MBCGDmh0 -dHA6Ly94ZXN0LzYwMBCGDmh0dHA6Ly94ZXN0LzYxMBCGDmh0dHA6Ly94ZXN0LzYy -MBCGDmh0dHA6Ly94ZXN0LzYzMBCGDmh0dHA6Ly94ZXN0LzY0MBCGDmh0dHA6Ly94 -ZXN0LzY1MBCGDmh0dHA6Ly94ZXN0LzY2MBCGDmh0dHA6Ly94ZXN0LzY3MBCGDmh0 -dHA6Ly94ZXN0LzY4MBCGDmh0dHA6Ly94ZXN0LzY5MBCGDmh0dHA6Ly94ZXN0Lzcw -MBCGDmh0dHA6Ly94ZXN0LzcxMBCGDmh0dHA6Ly94ZXN0LzcyMBCGDmh0dHA6Ly94 -ZXN0LzczMBCGDmh0dHA6Ly94ZXN0Lzc0MBCGDmh0dHA6Ly94ZXN0Lzc1MBCGDmh0 -dHA6Ly94ZXN0Lzc2MBCGDmh0dHA6Ly94ZXN0Lzc3MBCGDmh0dHA6Ly94ZXN0Lzc4 -MBCGDmh0dHA6Ly94ZXN0Lzc5MBCGDmh0dHA6Ly94ZXN0LzgwMBCGDmh0dHA6Ly94 -ZXN0LzgxMBCGDmh0dHA6Ly94ZXN0LzgyMBCGDmh0dHA6Ly94ZXN0LzgzMBCGDmh0 -dHA6Ly94ZXN0Lzg0MBCGDmh0dHA6Ly94ZXN0Lzg1MBCGDmh0dHA6Ly94ZXN0Lzg2 -MBCGDmh0dHA6Ly94ZXN0Lzg3MBCGDmh0dHA6Ly94ZXN0Lzg4MBCGDmh0dHA6Ly94 -ZXN0Lzg5MBCGDmh0dHA6Ly94ZXN0LzkwMBCGDmh0dHA6Ly94ZXN0LzkxMBCGDmh0 -dHA6Ly94ZXN0LzkyMBCGDmh0dHA6Ly94ZXN0LzkzMBCGDmh0dHA6Ly94ZXN0Lzk0 -MBCGDmh0dHA6Ly94ZXN0Lzk1MBCGDmh0dHA6Ly94ZXN0Lzk2MBCGDmh0dHA6Ly94 -ZXN0Lzk3MBCGDmh0dHA6Ly94ZXN0Lzk4MBCGDmh0dHA6Ly94ZXN0Lzk5MBGGD2h0 -dHA6Ly94ZXN0LzEwMDARhg9odHRwOi8veGVzdC8xMDEwEYYPaHR0cDovL3hlc3Qv -MTAyMBGGD2h0dHA6Ly94ZXN0LzEwMzARhg9odHRwOi8veGVzdC8xMDQwEYYPaHR0 -cDovL3hlc3QvMTA1MBGGD2h0dHA6Ly94ZXN0LzEwNjARhg9odHRwOi8veGVzdC8x -MDcwEYYPaHR0cDovL3hlc3QvMTA4MBGGD2h0dHA6Ly94ZXN0LzEwOTARhg9odHRw -Oi8veGVzdC8xMTAwEYYPaHR0cDovL3hlc3QvMTExMBGGD2h0dHA6Ly94ZXN0LzEx -MjARhg9odHRwOi8veGVzdC8xMTMwEYYPaHR0cDovL3hlc3QvMTE0MBGGD2h0dHA6 -Ly94ZXN0LzExNTARhg9odHRwOi8veGVzdC8xMTYwEYYPaHR0cDovL3hlc3QvMTE3 -MBGGD2h0dHA6Ly94ZXN0LzExODARhg9odHRwOi8veGVzdC8xMTkwEYYPaHR0cDov -L3hlc3QvMTIwMBGGD2h0dHA6Ly94ZXN0LzEyMTARhg9odHRwOi8veGVzdC8xMjIw -EYYPaHR0cDovL3hlc3QvMTIzMBGGD2h0dHA6Ly94ZXN0LzEyNDARhg9odHRwOi8v -eGVzdC8xMjUwEYYPaHR0cDovL3hlc3QvMTI2MBGGD2h0dHA6Ly94ZXN0LzEyNzAR -hg9odHRwOi8veGVzdC8xMjgwEYYPaHR0cDovL3hlc3QvMTI5MBGGD2h0dHA6Ly94 -ZXN0LzEzMDARhg9odHRwOi8veGVzdC8xMzEwEYYPaHR0cDovL3hlc3QvMTMyMBGG -D2h0dHA6Ly94ZXN0LzEzMzARhg9odHRwOi8veGVzdC8xMzQwEYYPaHR0cDovL3hl -c3QvMTM1MBGGD2h0dHA6Ly94ZXN0LzEzNjARhg9odHRwOi8veGVzdC8xMzcwEYYP -aHR0cDovL3hlc3QvMTM4MBGGD2h0dHA6Ly94ZXN0LzEzOTARhg9odHRwOi8veGVz -dC8xNDAwEYYPaHR0cDovL3hlc3QvMTQxMBGGD2h0dHA6Ly94ZXN0LzE0MjARhg9o -dHRwOi8veGVzdC8xNDMwEYYPaHR0cDovL3hlc3QvMTQ0MBGGD2h0dHA6Ly94ZXN0 -LzE0NTARhg9odHRwOi8veGVzdC8xNDYwEYYPaHR0cDovL3hlc3QvMTQ3MBGGD2h0 -dHA6Ly94ZXN0LzE0ODARhg9odHRwOi8veGVzdC8xNDkwEYYPaHR0cDovL3hlc3Qv -MTUwMBGGD2h0dHA6Ly94ZXN0LzE1MTARhg9odHRwOi8veGVzdC8xNTIwEYYPaHR0 -cDovL3hlc3QvMTUzMBGGD2h0dHA6Ly94ZXN0LzE1NDARhg9odHRwOi8veGVzdC8x -NTUwEYYPaHR0cDovL3hlc3QvMTU2MBGGD2h0dHA6Ly94ZXN0LzE1NzARhg9odHRw -Oi8veGVzdC8xNTgwEYYPaHR0cDovL3hlc3QvMTU5MBGGD2h0dHA6Ly94ZXN0LzE2 -MDARhg9odHRwOi8veGVzdC8xNjEwEYYPaHR0cDovL3hlc3QvMTYyMBGGD2h0dHA6 -Ly94ZXN0LzE2MzARhg9odHRwOi8veGVzdC8xNjQwEYYPaHR0cDovL3hlc3QvMTY1 -MBGGD2h0dHA6Ly94ZXN0LzE2NjARhg9odHRwOi8veGVzdC8xNjcwEYYPaHR0cDov -L3hlc3QvMTY4MBGGD2h0dHA6Ly94ZXN0LzE2OTARhg9odHRwOi8veGVzdC8xNzAw -EYYPaHR0cDovL3hlc3QvMTcxMBGGD2h0dHA6Ly94ZXN0LzE3MjARhg9odHRwOi8v -eGVzdC8xNzMwEYYPaHR0cDovL3hlc3QvMTc0MBGGD2h0dHA6Ly94ZXN0LzE3NTAR -hg9odHRwOi8veGVzdC8xNzYwEYYPaHR0cDovL3hlc3QvMTc3MBGGD2h0dHA6Ly94 -ZXN0LzE3ODARhg9odHRwOi8veGVzdC8xNzkwEYYPaHR0cDovL3hlc3QvMTgwMBGG -D2h0dHA6Ly94ZXN0LzE4MTARhg9odHRwOi8veGVzdC8xODIwEYYPaHR0cDovL3hl -c3QvMTgzMBGGD2h0dHA6Ly94ZXN0LzE4NDARhg9odHRwOi8veGVzdC8xODUwEYYP -aHR0cDovL3hlc3QvMTg2MBGGD2h0dHA6Ly94ZXN0LzE4NzARhg9odHRwOi8veGVz -dC8xODgwEYYPaHR0cDovL3hlc3QvMTg5MBGGD2h0dHA6Ly94ZXN0LzE5MDARhg9o -dHRwOi8veGVzdC8xOTEwEYYPaHR0cDovL3hlc3QvMTkyMBGGD2h0dHA6Ly94ZXN0 -LzE5MzARhg9odHRwOi8veGVzdC8xOTQwEYYPaHR0cDovL3hlc3QvMTk1MBGGD2h0 -dHA6Ly94ZXN0LzE5NjARhg9odHRwOi8veGVzdC8xOTcwEYYPaHR0cDovL3hlc3Qv -MTk4MBGGD2h0dHA6Ly94ZXN0LzE5OTARhg9odHRwOi8veGVzdC8yMDAwEYYPaHR0 -cDovL3hlc3QvMjAxMBGGD2h0dHA6Ly94ZXN0LzIwMjARhg9odHRwOi8veGVzdC8y -MDMwEYYPaHR0cDovL3hlc3QvMjA0MBGGD2h0dHA6Ly94ZXN0LzIwNTARhg9odHRw -Oi8veGVzdC8yMDYwEYYPaHR0cDovL3hlc3QvMjA3MBGGD2h0dHA6Ly94ZXN0LzIw -ODARhg9odHRwOi8veGVzdC8yMDkwEYYPaHR0cDovL3hlc3QvMjEwMBGGD2h0dHA6 -Ly94ZXN0LzIxMTARhg9odHRwOi8veGVzdC8yMTIwEYYPaHR0cDovL3hlc3QvMjEz -MBGGD2h0dHA6Ly94ZXN0LzIxNDARhg9odHRwOi8veGVzdC8yMTUwEYYPaHR0cDov -L3hlc3QvMjE2MBGGD2h0dHA6Ly94ZXN0LzIxNzARhg9odHRwOi8veGVzdC8yMTgw -EYYPaHR0cDovL3hlc3QvMjE5MBGGD2h0dHA6Ly94ZXN0LzIyMDARhg9odHRwOi8v -eGVzdC8yMjEwEYYPaHR0cDovL3hlc3QvMjIyMBGGD2h0dHA6Ly94ZXN0LzIyMzAR -hg9odHRwOi8veGVzdC8yMjQwEYYPaHR0cDovL3hlc3QvMjI1MBGGD2h0dHA6Ly94 -ZXN0LzIyNjARhg9odHRwOi8veGVzdC8yMjcwEYYPaHR0cDovL3hlc3QvMjI4MBGG -D2h0dHA6Ly94ZXN0LzIyOTARhg9odHRwOi8veGVzdC8yMzAwEYYPaHR0cDovL3hl -c3QvMjMxMBGGD2h0dHA6Ly94ZXN0LzIzMjARhg9odHRwOi8veGVzdC8yMzMwEYYP -aHR0cDovL3hlc3QvMjM0MBGGD2h0dHA6Ly94ZXN0LzIzNTARhg9odHRwOi8veGVz -dC8yMzYwEYYPaHR0cDovL3hlc3QvMjM3MBGGD2h0dHA6Ly94ZXN0LzIzODARhg9o -dHRwOi8veGVzdC8yMzkwEYYPaHR0cDovL3hlc3QvMjQwMBGGD2h0dHA6Ly94ZXN0 -LzI0MTARhg9odHRwOi8veGVzdC8yNDIwEYYPaHR0cDovL3hlc3QvMjQzMBGGD2h0 -dHA6Ly94ZXN0LzI0NDARhg9odHRwOi8veGVzdC8yNDUwEYYPaHR0cDovL3hlc3Qv -MjQ2MBGGD2h0dHA6Ly94ZXN0LzI0NzARhg9odHRwOi8veGVzdC8yNDgwEYYPaHR0 -cDovL3hlc3QvMjQ5MBGGD2h0dHA6Ly94ZXN0LzI1MDARhg9odHRwOi8veGVzdC8y -NTEwEYYPaHR0cDovL3hlc3QvMjUyMBGGD2h0dHA6Ly94ZXN0LzI1MzARhg9odHRw -Oi8veGVzdC8yNTQwEYYPaHR0cDovL3hlc3QvMjU1MBGGD2h0dHA6Ly94ZXN0LzI1 -NjARhg9odHRwOi8veGVzdC8yNTcwEYYPaHR0cDovL3hlc3QvMjU4MBGGD2h0dHA6 -Ly94ZXN0LzI1OTARhg9odHRwOi8veGVzdC8yNjAwEYYPaHR0cDovL3hlc3QvMjYx -MBGGD2h0dHA6Ly94ZXN0LzI2MjARhg9odHRwOi8veGVzdC8yNjMwEYYPaHR0cDov -L3hlc3QvMjY0MBGGD2h0dHA6Ly94ZXN0LzI2NTARhg9odHRwOi8veGVzdC8yNjYw -EYYPaHR0cDovL3hlc3QvMjY3MBGGD2h0dHA6Ly94ZXN0LzI2ODARhg9odHRwOi8v -eGVzdC8yNjkwEYYPaHR0cDovL3hlc3QvMjcwMBGGD2h0dHA6Ly94ZXN0LzI3MTAR -hg9odHRwOi8veGVzdC8yNzIwEYYPaHR0cDovL3hlc3QvMjczMBGGD2h0dHA6Ly94 -ZXN0LzI3NDARhg9odHRwOi8veGVzdC8yNzUwEYYPaHR0cDovL3hlc3QvMjc2MBGG -D2h0dHA6Ly94ZXN0LzI3NzARhg9odHRwOi8veGVzdC8yNzgwEYYPaHR0cDovL3hl -c3QvMjc5MBGGD2h0dHA6Ly94ZXN0LzI4MDARhg9odHRwOi8veGVzdC8yODEwEYYP -aHR0cDovL3hlc3QvMjgyMBGGD2h0dHA6Ly94ZXN0LzI4MzARhg9odHRwOi8veGVz -dC8yODQwEYYPaHR0cDovL3hlc3QvMjg1MBGGD2h0dHA6Ly94ZXN0LzI4NjARhg9o -dHRwOi8veGVzdC8yODcwEYYPaHR0cDovL3hlc3QvMjg4MBGGD2h0dHA6Ly94ZXN0 -LzI4OTARhg9odHRwOi8veGVzdC8yOTAwEYYPaHR0cDovL3hlc3QvMjkxMBGGD2h0 -dHA6Ly94ZXN0LzI5MjARhg9odHRwOi8veGVzdC8yOTMwEYYPaHR0cDovL3hlc3Qv -Mjk0MBGGD2h0dHA6Ly94ZXN0LzI5NTARhg9odHRwOi8veGVzdC8yOTYwEYYPaHR0 -cDovL3hlc3QvMjk3MBGGD2h0dHA6Ly94ZXN0LzI5ODARhg9odHRwOi8veGVzdC8y -OTkwEYYPaHR0cDovL3hlc3QvMzAwMBGGD2h0dHA6Ly94ZXN0LzMwMTARhg9odHRw -Oi8veGVzdC8zMDIwEYYPaHR0cDovL3hlc3QvMzAzMBGGD2h0dHA6Ly94ZXN0LzMw -NDARhg9odHRwOi8veGVzdC8zMDUwEYYPaHR0cDovL3hlc3QvMzA2MBGGD2h0dHA6 -Ly94ZXN0LzMwNzARhg9odHRwOi8veGVzdC8zMDgwEYYPaHR0cDovL3hlc3QvMzA5 -MBGGD2h0dHA6Ly94ZXN0LzMxMDARhg9odHRwOi8veGVzdC8zMTEwEYYPaHR0cDov -L3hlc3QvMzEyMBGGD2h0dHA6Ly94ZXN0LzMxMzARhg9odHRwOi8veGVzdC8zMTQw -EYYPaHR0cDovL3hlc3QvMzE1MBGGD2h0dHA6Ly94ZXN0LzMxNjARhg9odHRwOi8v -eGVzdC8zMTcwEYYPaHR0cDovL3hlc3QvMzE4MBGGD2h0dHA6Ly94ZXN0LzMxOTAR -hg9odHRwOi8veGVzdC8zMjAwEYYPaHR0cDovL3hlc3QvMzIxMBGGD2h0dHA6Ly94 -ZXN0LzMyMjARhg9odHRwOi8veGVzdC8zMjMwEYYPaHR0cDovL3hlc3QvMzI0MBGG -D2h0dHA6Ly94ZXN0LzMyNTARhg9odHRwOi8veGVzdC8zMjYwEYYPaHR0cDovL3hl -c3QvMzI3MBGGD2h0dHA6Ly94ZXN0LzMyODARhg9odHRwOi8veGVzdC8zMjkwEYYP -aHR0cDovL3hlc3QvMzMwMBGGD2h0dHA6Ly94ZXN0LzMzMTARhg9odHRwOi8veGVz -dC8zMzIwEYYPaHR0cDovL3hlc3QvMzMzMBGGD2h0dHA6Ly94ZXN0LzMzNDARhg9o -dHRwOi8veGVzdC8zMzUwEYYPaHR0cDovL3hlc3QvMzM2MBGGD2h0dHA6Ly94ZXN0 -LzMzNzARhg9odHRwOi8veGVzdC8zMzgwEYYPaHR0cDovL3hlc3QvMzM5MBGGD2h0 -dHA6Ly94ZXN0LzM0MDARhg9odHRwOi8veGVzdC8zNDEwEYYPaHR0cDovL3hlc3Qv -MzQyMBGGD2h0dHA6Ly94ZXN0LzM0MzARhg9odHRwOi8veGVzdC8zNDQwEYYPaHR0 -cDovL3hlc3QvMzQ1MBGGD2h0dHA6Ly94ZXN0LzM0NjARhg9odHRwOi8veGVzdC8z -NDcwEYYPaHR0cDovL3hlc3QvMzQ4MBGGD2h0dHA6Ly94ZXN0LzM0OTARhg9odHRw -Oi8veGVzdC8zNTAwEYYPaHR0cDovL3hlc3QvMzUxMBGGD2h0dHA6Ly94ZXN0LzM1 -MjARhg9odHRwOi8veGVzdC8zNTMwEYYPaHR0cDovL3hlc3QvMzU0MBGGD2h0dHA6 -Ly94ZXN0LzM1NTARhg9odHRwOi8veGVzdC8zNTYwEYYPaHR0cDovL3hlc3QvMzU3 -MBGGD2h0dHA6Ly94ZXN0LzM1ODARhg9odHRwOi8veGVzdC8zNTkwEYYPaHR0cDov -L3hlc3QvMzYwMBGGD2h0dHA6Ly94ZXN0LzM2MTARhg9odHRwOi8veGVzdC8zNjIw -EYYPaHR0cDovL3hlc3QvMzYzMBGGD2h0dHA6Ly94ZXN0LzM2NDARhg9odHRwOi8v -eGVzdC8zNjUwEYYPaHR0cDovL3hlc3QvMzY2MBGGD2h0dHA6Ly94ZXN0LzM2NzAR -hg9odHRwOi8veGVzdC8zNjgwEYYPaHR0cDovL3hlc3QvMzY5MBGGD2h0dHA6Ly94 -ZXN0LzM3MDARhg9odHRwOi8veGVzdC8zNzEwEYYPaHR0cDovL3hlc3QvMzcyMBGG -D2h0dHA6Ly94ZXN0LzM3MzARhg9odHRwOi8veGVzdC8zNzQwEYYPaHR0cDovL3hl -c3QvMzc1MBGGD2h0dHA6Ly94ZXN0LzM3NjARhg9odHRwOi8veGVzdC8zNzcwEYYP -aHR0cDovL3hlc3QvMzc4MBGGD2h0dHA6Ly94ZXN0LzM3OTARhg9odHRwOi8veGVz -dC8zODAwEYYPaHR0cDovL3hlc3QvMzgxMBGGD2h0dHA6Ly94ZXN0LzM4MjARhg9o -dHRwOi8veGVzdC8zODMwEYYPaHR0cDovL3hlc3QvMzg0MBGGD2h0dHA6Ly94ZXN0 -LzM4NTARhg9odHRwOi8veGVzdC8zODYwEYYPaHR0cDovL3hlc3QvMzg3MBGGD2h0 -dHA6Ly94ZXN0LzM4ODARhg9odHRwOi8veGVzdC8zODkwEYYPaHR0cDovL3hlc3Qv -MzkwMBGGD2h0dHA6Ly94ZXN0LzM5MTARhg9odHRwOi8veGVzdC8zOTIwEYYPaHR0 -cDovL3hlc3QvMzkzMBGGD2h0dHA6Ly94ZXN0LzM5NDARhg9odHRwOi8veGVzdC8z -OTUwEYYPaHR0cDovL3hlc3QvMzk2MBGGD2h0dHA6Ly94ZXN0LzM5NzARhg9odHRw -Oi8veGVzdC8zOTgwEYYPaHR0cDovL3hlc3QvMzk5MBGGD2h0dHA6Ly94ZXN0LzQw -MDARhg9odHRwOi8veGVzdC80MDEwEYYPaHR0cDovL3hlc3QvNDAyMBGGD2h0dHA6 -Ly94ZXN0LzQwMzARhg9odHRwOi8veGVzdC80MDQwEYYPaHR0cDovL3hlc3QvNDA1 -MBGGD2h0dHA6Ly94ZXN0LzQwNjARhg9odHRwOi8veGVzdC80MDcwEYYPaHR0cDov -L3hlc3QvNDA4MBGGD2h0dHA6Ly94ZXN0LzQwOTARhg9odHRwOi8veGVzdC80MTAw -EYYPaHR0cDovL3hlc3QvNDExMBGGD2h0dHA6Ly94ZXN0LzQxMjARhg9odHRwOi8v -eGVzdC80MTMwEYYPaHR0cDovL3hlc3QvNDE0MBGGD2h0dHA6Ly94ZXN0LzQxNTAR -hg9odHRwOi8veGVzdC80MTYwEYYPaHR0cDovL3hlc3QvNDE3MBGGD2h0dHA6Ly94 -ZXN0LzQxODARhg9odHRwOi8veGVzdC80MTkwEYYPaHR0cDovL3hlc3QvNDIwMBGG -D2h0dHA6Ly94ZXN0LzQyMTARhg9odHRwOi8veGVzdC80MjIwEYYPaHR0cDovL3hl -c3QvNDIzMBGGD2h0dHA6Ly94ZXN0LzQyNDARhg9odHRwOi8veGVzdC80MjUwEYYP -aHR0cDovL3hlc3QvNDI2MBGGD2h0dHA6Ly94ZXN0LzQyNzARhg9odHRwOi8veGVz -dC80MjgwEYYPaHR0cDovL3hlc3QvNDI5MBGGD2h0dHA6Ly94ZXN0LzQzMDARhg9o -dHRwOi8veGVzdC80MzEwEYYPaHR0cDovL3hlc3QvNDMyMBGGD2h0dHA6Ly94ZXN0 -LzQzMzARhg9odHRwOi8veGVzdC80MzQwEYYPaHR0cDovL3hlc3QvNDM1MBGGD2h0 -dHA6Ly94ZXN0LzQzNjARhg9odHRwOi8veGVzdC80MzcwEYYPaHR0cDovL3hlc3Qv -NDM4MBGGD2h0dHA6Ly94ZXN0LzQzOTARhg9odHRwOi8veGVzdC80NDAwEYYPaHR0 -cDovL3hlc3QvNDQxMBGGD2h0dHA6Ly94ZXN0LzQ0MjARhg9odHRwOi8veGVzdC80 -NDMwEYYPaHR0cDovL3hlc3QvNDQ0MBGGD2h0dHA6Ly94ZXN0LzQ0NTARhg9odHRw -Oi8veGVzdC80NDYwEYYPaHR0cDovL3hlc3QvNDQ3MBGGD2h0dHA6Ly94ZXN0LzQ0 -ODARhg9odHRwOi8veGVzdC80NDkwEYYPaHR0cDovL3hlc3QvNDUwMBGGD2h0dHA6 -Ly94ZXN0LzQ1MTARhg9odHRwOi8veGVzdC80NTIwEYYPaHR0cDovL3hlc3QvNDUz -MBGGD2h0dHA6Ly94ZXN0LzQ1NDARhg9odHRwOi8veGVzdC80NTUwEYYPaHR0cDov -L3hlc3QvNDU2MBGGD2h0dHA6Ly94ZXN0LzQ1NzARhg9odHRwOi8veGVzdC80NTgw -EYYPaHR0cDovL3hlc3QvNDU5MBGGD2h0dHA6Ly94ZXN0LzQ2MDARhg9odHRwOi8v -eGVzdC80NjEwEYYPaHR0cDovL3hlc3QvNDYyMBGGD2h0dHA6Ly94ZXN0LzQ2MzAR -hg9odHRwOi8veGVzdC80NjQwEYYPaHR0cDovL3hlc3QvNDY1MBGGD2h0dHA6Ly94 -ZXN0LzQ2NjARhg9odHRwOi8veGVzdC80NjcwEYYPaHR0cDovL3hlc3QvNDY4MBGG -D2h0dHA6Ly94ZXN0LzQ2OTARhg9odHRwOi8veGVzdC80NzAwEYYPaHR0cDovL3hl -c3QvNDcxMBGGD2h0dHA6Ly94ZXN0LzQ3MjARhg9odHRwOi8veGVzdC80NzMwEYYP -aHR0cDovL3hlc3QvNDc0MBGGD2h0dHA6Ly94ZXN0LzQ3NTARhg9odHRwOi8veGVz -dC80NzYwEYYPaHR0cDovL3hlc3QvNDc3MBGGD2h0dHA6Ly94ZXN0LzQ3ODARhg9o -dHRwOi8veGVzdC80NzkwEYYPaHR0cDovL3hlc3QvNDgwMBGGD2h0dHA6Ly94ZXN0 -LzQ4MTARhg9odHRwOi8veGVzdC80ODIwEYYPaHR0cDovL3hlc3QvNDgzMBGGD2h0 -dHA6Ly94ZXN0LzQ4NDARhg9odHRwOi8veGVzdC80ODUwEYYPaHR0cDovL3hlc3Qv -NDg2MBGGD2h0dHA6Ly94ZXN0LzQ4NzARhg9odHRwOi8veGVzdC80ODgwEYYPaHR0 -cDovL3hlc3QvNDg5MBGGD2h0dHA6Ly94ZXN0LzQ5MDARhg9odHRwOi8veGVzdC80 -OTEwEYYPaHR0cDovL3hlc3QvNDkyMBGGD2h0dHA6Ly94ZXN0LzQ5MzARhg9odHRw -Oi8veGVzdC80OTQwEYYPaHR0cDovL3hlc3QvNDk1MBGGD2h0dHA6Ly94ZXN0LzQ5 -NjARhg9odHRwOi8veGVzdC80OTcwEYYPaHR0cDovL3hlc3QvNDk4MBGGD2h0dHA6 -Ly94ZXN0LzQ5OTARhg9odHRwOi8veGVzdC81MDAwEYYPaHR0cDovL3hlc3QvNTAx -MBGGD2h0dHA6Ly94ZXN0LzUwMjARhg9odHRwOi8veGVzdC81MDMwEYYPaHR0cDov -L3hlc3QvNTA0MBGGD2h0dHA6Ly94ZXN0LzUwNTARhg9odHRwOi8veGVzdC81MDYw -EYYPaHR0cDovL3hlc3QvNTA3MBGGD2h0dHA6Ly94ZXN0LzUwODARhg9odHRwOi8v -eGVzdC81MDkwEYYPaHR0cDovL3hlc3QvNTEwMBGGD2h0dHA6Ly94ZXN0LzUxMTAR -hg9odHRwOi8veGVzdC81MTIwEYYPaHR0cDovL3hlc3QvNTEzMBGGD2h0dHA6Ly94 -ZXN0LzUxNDARhg9odHRwOi8veGVzdC81MTUwEYYPaHR0cDovL3hlc3QvNTE2MBGG -D2h0dHA6Ly94ZXN0LzUxNzARhg9odHRwOi8veGVzdC81MTgwEYYPaHR0cDovL3hl -c3QvNTE5MBGGD2h0dHA6Ly94ZXN0LzUyMDARhg9odHRwOi8veGVzdC81MjEwEYYP -aHR0cDovL3hlc3QvNTIyMBGGD2h0dHA6Ly94ZXN0LzUyMzARhg9odHRwOi8veGVz -dC81MjQwEYYPaHR0cDovL3hlc3QvNTI1MBGGD2h0dHA6Ly94ZXN0LzUyNjARhg9o -dHRwOi8veGVzdC81MjcwEYYPaHR0cDovL3hlc3QvNTI4MBGGD2h0dHA6Ly94ZXN0 -LzUyOTARhg9odHRwOi8veGVzdC81MzAwEYYPaHR0cDovL3hlc3QvNTMxMBGGD2h0 -dHA6Ly94ZXN0LzUzMjARhg9odHRwOi8veGVzdC81MzMwEYYPaHR0cDovL3hlc3Qv -NTM0MBGGD2h0dHA6Ly94ZXN0LzUzNTARhg9odHRwOi8veGVzdC81MzYwEYYPaHR0 -cDovL3hlc3QvNTM3MBGGD2h0dHA6Ly94ZXN0LzUzODARhg9odHRwOi8veGVzdC81 -MzkwEYYPaHR0cDovL3hlc3QvNTQwMBGGD2h0dHA6Ly94ZXN0LzU0MTARhg9odHRw -Oi8veGVzdC81NDIwEYYPaHR0cDovL3hlc3QvNTQzMBGGD2h0dHA6Ly94ZXN0LzU0 -NDARhg9odHRwOi8veGVzdC81NDUwEYYPaHR0cDovL3hlc3QvNTQ2MBGGD2h0dHA6 -Ly94ZXN0LzU0NzARhg9odHRwOi8veGVzdC81NDgwEYYPaHR0cDovL3hlc3QvNTQ5 -MBGGD2h0dHA6Ly94ZXN0LzU1MDARhg9odHRwOi8veGVzdC81NTEwEYYPaHR0cDov -L3hlc3QvNTUyMBGGD2h0dHA6Ly94ZXN0LzU1MzARhg9odHRwOi8veGVzdC81NTQw -EYYPaHR0cDovL3hlc3QvNTU1MBGGD2h0dHA6Ly94ZXN0LzU1NjARhg9odHRwOi8v -eGVzdC81NTcwEYYPaHR0cDovL3hlc3QvNTU4MBGGD2h0dHA6Ly94ZXN0LzU1OTAR -hg9odHRwOi8veGVzdC81NjAwEYYPaHR0cDovL3hlc3QvNTYxMBGGD2h0dHA6Ly94 -ZXN0LzU2MjARhg9odHRwOi8veGVzdC81NjMwEYYPaHR0cDovL3hlc3QvNTY0MBGG -D2h0dHA6Ly94ZXN0LzU2NTARhg9odHRwOi8veGVzdC81NjYwEYYPaHR0cDovL3hl -c3QvNTY3MBGGD2h0dHA6Ly94ZXN0LzU2ODARhg9odHRwOi8veGVzdC81NjkwEYYP -aHR0cDovL3hlc3QvNTcwMBGGD2h0dHA6Ly94ZXN0LzU3MTARhg9odHRwOi8veGVz -dC81NzIwEYYPaHR0cDovL3hlc3QvNTczMBGGD2h0dHA6Ly94ZXN0LzU3NDARhg9o -dHRwOi8veGVzdC81NzUwEYYPaHR0cDovL3hlc3QvNTc2MBGGD2h0dHA6Ly94ZXN0 -LzU3NzARhg9odHRwOi8veGVzdC81NzgwEYYPaHR0cDovL3hlc3QvNTc5MBGGD2h0 -dHA6Ly94ZXN0LzU4MDARhg9odHRwOi8veGVzdC81ODEwEYYPaHR0cDovL3hlc3Qv -NTgyMBGGD2h0dHA6Ly94ZXN0LzU4MzARhg9odHRwOi8veGVzdC81ODQwEYYPaHR0 -cDovL3hlc3QvNTg1MBGGD2h0dHA6Ly94ZXN0LzU4NjARhg9odHRwOi8veGVzdC81 -ODcwEYYPaHR0cDovL3hlc3QvNTg4MBGGD2h0dHA6Ly94ZXN0LzU4OTARhg9odHRw -Oi8veGVzdC81OTAwEYYPaHR0cDovL3hlc3QvNTkxMBGGD2h0dHA6Ly94ZXN0LzU5 -MjARhg9odHRwOi8veGVzdC81OTMwEYYPaHR0cDovL3hlc3QvNTk0MBGGD2h0dHA6 -Ly94ZXN0LzU5NTARhg9odHRwOi8veGVzdC81OTYwEYYPaHR0cDovL3hlc3QvNTk3 -MBGGD2h0dHA6Ly94ZXN0LzU5ODARhg9odHRwOi8veGVzdC81OTkwEYYPaHR0cDov -L3hlc3QvNjAwMBGGD2h0dHA6Ly94ZXN0LzYwMTARhg9odHRwOi8veGVzdC82MDIw -EYYPaHR0cDovL3hlc3QvNjAzMBGGD2h0dHA6Ly94ZXN0LzYwNDARhg9odHRwOi8v -eGVzdC82MDUwEYYPaHR0cDovL3hlc3QvNjA2MBGGD2h0dHA6Ly94ZXN0LzYwNzAR -hg9odHRwOi8veGVzdC82MDgwEYYPaHR0cDovL3hlc3QvNjA5MBGGD2h0dHA6Ly94 -ZXN0LzYxMDARhg9odHRwOi8veGVzdC82MTEwEYYPaHR0cDovL3hlc3QvNjEyMBGG -D2h0dHA6Ly94ZXN0LzYxMzARhg9odHRwOi8veGVzdC82MTQwEYYPaHR0cDovL3hl -c3QvNjE1MBGGD2h0dHA6Ly94ZXN0LzYxNjARhg9odHRwOi8veGVzdC82MTcwEYYP -aHR0cDovL3hlc3QvNjE4MBGGD2h0dHA6Ly94ZXN0LzYxOTARhg9odHRwOi8veGVz -dC82MjAwEYYPaHR0cDovL3hlc3QvNjIxMBGGD2h0dHA6Ly94ZXN0LzYyMjARhg9o -dHRwOi8veGVzdC82MjMwEYYPaHR0cDovL3hlc3QvNjI0MBGGD2h0dHA6Ly94ZXN0 -LzYyNTARhg9odHRwOi8veGVzdC82MjYwEYYPaHR0cDovL3hlc3QvNjI3MBGGD2h0 -dHA6Ly94ZXN0LzYyODARhg9odHRwOi8veGVzdC82MjkwEYYPaHR0cDovL3hlc3Qv -NjMwMBGGD2h0dHA6Ly94ZXN0LzYzMTARhg9odHRwOi8veGVzdC82MzIwEYYPaHR0 -cDovL3hlc3QvNjMzMBGGD2h0dHA6Ly94ZXN0LzYzNDARhg9odHRwOi8veGVzdC82 -MzUwEYYPaHR0cDovL3hlc3QvNjM2MBGGD2h0dHA6Ly94ZXN0LzYzNzARhg9odHRw -Oi8veGVzdC82MzgwEYYPaHR0cDovL3hlc3QvNjM5MBGGD2h0dHA6Ly94ZXN0LzY0 -MDARhg9odHRwOi8veGVzdC82NDEwEYYPaHR0cDovL3hlc3QvNjQyMBGGD2h0dHA6 -Ly94ZXN0LzY0MzARhg9odHRwOi8veGVzdC82NDQwEYYPaHR0cDovL3hlc3QvNjQ1 -MBGGD2h0dHA6Ly94ZXN0LzY0NjARhg9odHRwOi8veGVzdC82NDcwEYYPaHR0cDov -L3hlc3QvNjQ4MBGGD2h0dHA6Ly94ZXN0LzY0OTARhg9odHRwOi8veGVzdC82NTAw -EYYPaHR0cDovL3hlc3QvNjUxMBGGD2h0dHA6Ly94ZXN0LzY1MjARhg9odHRwOi8v -eGVzdC82NTMwEYYPaHR0cDovL3hlc3QvNjU0MBGGD2h0dHA6Ly94ZXN0LzY1NTAR -hg9odHRwOi8veGVzdC82NTYwEYYPaHR0cDovL3hlc3QvNjU3MBGGD2h0dHA6Ly94 -ZXN0LzY1ODARhg9odHRwOi8veGVzdC82NTkwEYYPaHR0cDovL3hlc3QvNjYwMBGG -D2h0dHA6Ly94ZXN0LzY2MTARhg9odHRwOi8veGVzdC82NjIwEYYPaHR0cDovL3hl -c3QvNjYzMBGGD2h0dHA6Ly94ZXN0LzY2NDARhg9odHRwOi8veGVzdC82NjUwEYYP -aHR0cDovL3hlc3QvNjY2MBGGD2h0dHA6Ly94ZXN0LzY2NzARhg9odHRwOi8veGVz -dC82NjgwEYYPaHR0cDovL3hlc3QvNjY5MBGGD2h0dHA6Ly94ZXN0LzY3MDARhg9o -dHRwOi8veGVzdC82NzEwEYYPaHR0cDovL3hlc3QvNjcyMBGGD2h0dHA6Ly94ZXN0 -LzY3MzARhg9odHRwOi8veGVzdC82NzQwEYYPaHR0cDovL3hlc3QvNjc1MBGGD2h0 -dHA6Ly94ZXN0LzY3NjARhg9odHRwOi8veGVzdC82NzcwEYYPaHR0cDovL3hlc3Qv -Njc4MBGGD2h0dHA6Ly94ZXN0LzY3OTARhg9odHRwOi8veGVzdC82ODAwEYYPaHR0 -cDovL3hlc3QvNjgxMBGGD2h0dHA6Ly94ZXN0LzY4MjARhg9odHRwOi8veGVzdC82 -ODMwEYYPaHR0cDovL3hlc3QvNjg0MBGGD2h0dHA6Ly94ZXN0LzY4NTARhg9odHRw -Oi8veGVzdC82ODYwEYYPaHR0cDovL3hlc3QvNjg3MBGGD2h0dHA6Ly94ZXN0LzY4 -ODARhg9odHRwOi8veGVzdC82ODkwEYYPaHR0cDovL3hlc3QvNjkwMBGGD2h0dHA6 -Ly94ZXN0LzY5MTARhg9odHRwOi8veGVzdC82OTIwEYYPaHR0cDovL3hlc3QvNjkz -MBGGD2h0dHA6Ly94ZXN0LzY5NDARhg9odHRwOi8veGVzdC82OTUwEYYPaHR0cDov -L3hlc3QvNjk2MBGGD2h0dHA6Ly94ZXN0LzY5NzARhg9odHRwOi8veGVzdC82OTgw -EYYPaHR0cDovL3hlc3QvNjk5MBGGD2h0dHA6Ly94ZXN0LzcwMDARhg9odHRwOi8v -eGVzdC83MDEwEYYPaHR0cDovL3hlc3QvNzAyMBGGD2h0dHA6Ly94ZXN0LzcwMzAR -hg9odHRwOi8veGVzdC83MDQwEYYPaHR0cDovL3hlc3QvNzA1MBGGD2h0dHA6Ly94 -ZXN0LzcwNjARhg9odHRwOi8veGVzdC83MDcwEYYPaHR0cDovL3hlc3QvNzA4MBGG -D2h0dHA6Ly94ZXN0LzcwOTARhg9odHRwOi8veGVzdC83MTAwEYYPaHR0cDovL3hl -c3QvNzExMBGGD2h0dHA6Ly94ZXN0LzcxMjARhg9odHRwOi8veGVzdC83MTMwEYYP -aHR0cDovL3hlc3QvNzE0MBGGD2h0dHA6Ly94ZXN0LzcxNTARhg9odHRwOi8veGVz -dC83MTYwEYYPaHR0cDovL3hlc3QvNzE3MBGGD2h0dHA6Ly94ZXN0LzcxODARhg9o -dHRwOi8veGVzdC83MTkwEYYPaHR0cDovL3hlc3QvNzIwMBGGD2h0dHA6Ly94ZXN0 -LzcyMTARhg9odHRwOi8veGVzdC83MjIwEYYPaHR0cDovL3hlc3QvNzIzMBGGD2h0 -dHA6Ly94ZXN0LzcyNDARhg9odHRwOi8veGVzdC83MjUwEYYPaHR0cDovL3hlc3Qv -NzI2MBGGD2h0dHA6Ly94ZXN0LzcyNzARhg9odHRwOi8veGVzdC83MjgwEYYPaHR0 -cDovL3hlc3QvNzI5MBGGD2h0dHA6Ly94ZXN0LzczMDARhg9odHRwOi8veGVzdC83 -MzEwEYYPaHR0cDovL3hlc3QvNzMyMBGGD2h0dHA6Ly94ZXN0LzczMzARhg9odHRw -Oi8veGVzdC83MzQwEYYPaHR0cDovL3hlc3QvNzM1MBGGD2h0dHA6Ly94ZXN0Lzcz -NjARhg9odHRwOi8veGVzdC83MzcwEYYPaHR0cDovL3hlc3QvNzM4MBGGD2h0dHA6 -Ly94ZXN0LzczOTARhg9odHRwOi8veGVzdC83NDAwEYYPaHR0cDovL3hlc3QvNzQx -MBGGD2h0dHA6Ly94ZXN0Lzc0MjARhg9odHRwOi8veGVzdC83NDMwEYYPaHR0cDov -L3hlc3QvNzQ0MBGGD2h0dHA6Ly94ZXN0Lzc0NTARhg9odHRwOi8veGVzdC83NDYw -EYYPaHR0cDovL3hlc3QvNzQ3MBGGD2h0dHA6Ly94ZXN0Lzc0ODARhg9odHRwOi8v -eGVzdC83NDkwEYYPaHR0cDovL3hlc3QvNzUwMBGGD2h0dHA6Ly94ZXN0Lzc1MTAR -hg9odHRwOi8veGVzdC83NTIwEYYPaHR0cDovL3hlc3QvNzUzMBGGD2h0dHA6Ly94 -ZXN0Lzc1NDARhg9odHRwOi8veGVzdC83NTUwEYYPaHR0cDovL3hlc3QvNzU2MBGG -D2h0dHA6Ly94ZXN0Lzc1NzARhg9odHRwOi8veGVzdC83NTgwEYYPaHR0cDovL3hl -c3QvNzU5MBGGD2h0dHA6Ly94ZXN0Lzc2MDARhg9odHRwOi8veGVzdC83NjEwEYYP -aHR0cDovL3hlc3QvNzYyMBGGD2h0dHA6Ly94ZXN0Lzc2MzARhg9odHRwOi8veGVz -dC83NjQwEYYPaHR0cDovL3hlc3QvNzY1MBGGD2h0dHA6Ly94ZXN0Lzc2NjARhg9o -dHRwOi8veGVzdC83NjcwEYYPaHR0cDovL3hlc3QvNzY4MBGGD2h0dHA6Ly94ZXN0 -Lzc2OTARhg9odHRwOi8veGVzdC83NzAwEYYPaHR0cDovL3hlc3QvNzcxMBGGD2h0 -dHA6Ly94ZXN0Lzc3MjARhg9odHRwOi8veGVzdC83NzMwEYYPaHR0cDovL3hlc3Qv -Nzc0MBGGD2h0dHA6Ly94ZXN0Lzc3NTARhg9odHRwOi8veGVzdC83NzYwEYYPaHR0 -cDovL3hlc3QvNzc3MBGGD2h0dHA6Ly94ZXN0Lzc3ODARhg9odHRwOi8veGVzdC83 -NzkwEYYPaHR0cDovL3hlc3QvNzgwMBGGD2h0dHA6Ly94ZXN0Lzc4MTARhg9odHRw -Oi8veGVzdC83ODIwEYYPaHR0cDovL3hlc3QvNzgzMBGGD2h0dHA6Ly94ZXN0Lzc4 -NDARhg9odHRwOi8veGVzdC83ODUwEYYPaHR0cDovL3hlc3QvNzg2MBGGD2h0dHA6 -Ly94ZXN0Lzc4NzARhg9odHRwOi8veGVzdC83ODgwEYYPaHR0cDovL3hlc3QvNzg5 -MBGGD2h0dHA6Ly94ZXN0Lzc5MDARhg9odHRwOi8veGVzdC83OTEwEYYPaHR0cDov -L3hlc3QvNzkyMBGGD2h0dHA6Ly94ZXN0Lzc5MzARhg9odHRwOi8veGVzdC83OTQw -EYYPaHR0cDovL3hlc3QvNzk1MBGGD2h0dHA6Ly94ZXN0Lzc5NjARhg9odHRwOi8v -eGVzdC83OTcwEYYPaHR0cDovL3hlc3QvNzk4MBGGD2h0dHA6Ly94ZXN0Lzc5OTAR -hg9odHRwOi8veGVzdC84MDAwEYYPaHR0cDovL3hlc3QvODAxMBGGD2h0dHA6Ly94 -ZXN0LzgwMjARhg9odHRwOi8veGVzdC84MDMwEYYPaHR0cDovL3hlc3QvODA0MBGG -D2h0dHA6Ly94ZXN0LzgwNTARhg9odHRwOi8veGVzdC84MDYwEYYPaHR0cDovL3hl -c3QvODA3MBGGD2h0dHA6Ly94ZXN0LzgwODARhg9odHRwOi8veGVzdC84MDkwEYYP -aHR0cDovL3hlc3QvODEwMBGGD2h0dHA6Ly94ZXN0LzgxMTARhg9odHRwOi8veGVz -dC84MTIwEYYPaHR0cDovL3hlc3QvODEzMBGGD2h0dHA6Ly94ZXN0LzgxNDARhg9o -dHRwOi8veGVzdC84MTUwEYYPaHR0cDovL3hlc3QvODE2MBGGD2h0dHA6Ly94ZXN0 -LzgxNzARhg9odHRwOi8veGVzdC84MTgwEYYPaHR0cDovL3hlc3QvODE5MBGGD2h0 -dHA6Ly94ZXN0LzgyMDARhg9odHRwOi8veGVzdC84MjEwEYYPaHR0cDovL3hlc3Qv -ODIyMBGGD2h0dHA6Ly94ZXN0LzgyMzARhg9odHRwOi8veGVzdC84MjQwEYYPaHR0 -cDovL3hlc3QvODI1MBGGD2h0dHA6Ly94ZXN0LzgyNjARhg9odHRwOi8veGVzdC84 -MjcwEYYPaHR0cDovL3hlc3QvODI4MBGGD2h0dHA6Ly94ZXN0LzgyOTARhg9odHRw -Oi8veGVzdC84MzAwEYYPaHR0cDovL3hlc3QvODMxMBGGD2h0dHA6Ly94ZXN0Lzgz -MjARhg9odHRwOi8veGVzdC84MzMwEYYPaHR0cDovL3hlc3QvODM0MBGGD2h0dHA6 -Ly94ZXN0LzgzNTARhg9odHRwOi8veGVzdC84MzYwEYYPaHR0cDovL3hlc3QvODM3 -MBGGD2h0dHA6Ly94ZXN0LzgzODARhg9odHRwOi8veGVzdC84MzkwEYYPaHR0cDov -L3hlc3QvODQwMBGGD2h0dHA6Ly94ZXN0Lzg0MTARhg9odHRwOi8veGVzdC84NDIw -EYYPaHR0cDovL3hlc3QvODQzMBGGD2h0dHA6Ly94ZXN0Lzg0NDARhg9odHRwOi8v -eGVzdC84NDUwEYYPaHR0cDovL3hlc3QvODQ2MBGGD2h0dHA6Ly94ZXN0Lzg0NzAR -hg9odHRwOi8veGVzdC84NDgwEYYPaHR0cDovL3hlc3QvODQ5MBGGD2h0dHA6Ly94 -ZXN0Lzg1MDARhg9odHRwOi8veGVzdC84NTEwEYYPaHR0cDovL3hlc3QvODUyMBGG -D2h0dHA6Ly94ZXN0Lzg1MzARhg9odHRwOi8veGVzdC84NTQwEYYPaHR0cDovL3hl -c3QvODU1MBGGD2h0dHA6Ly94ZXN0Lzg1NjARhg9odHRwOi8veGVzdC84NTcwEYYP -aHR0cDovL3hlc3QvODU4MBGGD2h0dHA6Ly94ZXN0Lzg1OTARhg9odHRwOi8veGVz -dC84NjAwEYYPaHR0cDovL3hlc3QvODYxMBGGD2h0dHA6Ly94ZXN0Lzg2MjARhg9o -dHRwOi8veGVzdC84NjMwEYYPaHR0cDovL3hlc3QvODY0MBGGD2h0dHA6Ly94ZXN0 -Lzg2NTARhg9odHRwOi8veGVzdC84NjYwEYYPaHR0cDovL3hlc3QvODY3MBGGD2h0 -dHA6Ly94ZXN0Lzg2ODARhg9odHRwOi8veGVzdC84NjkwEYYPaHR0cDovL3hlc3Qv -ODcwMBGGD2h0dHA6Ly94ZXN0Lzg3MTARhg9odHRwOi8veGVzdC84NzIwEYYPaHR0 -cDovL3hlc3QvODczMBGGD2h0dHA6Ly94ZXN0Lzg3NDARhg9odHRwOi8veGVzdC84 -NzUwEYYPaHR0cDovL3hlc3QvODc2MBGGD2h0dHA6Ly94ZXN0Lzg3NzARhg9odHRw -Oi8veGVzdC84NzgwEYYPaHR0cDovL3hlc3QvODc5MBGGD2h0dHA6Ly94ZXN0Lzg4 -MDARhg9odHRwOi8veGVzdC84ODEwEYYPaHR0cDovL3hlc3QvODgyMBGGD2h0dHA6 -Ly94ZXN0Lzg4MzARhg9odHRwOi8veGVzdC84ODQwEYYPaHR0cDovL3hlc3QvODg1 -MBGGD2h0dHA6Ly94ZXN0Lzg4NjARhg9odHRwOi8veGVzdC84ODcwEYYPaHR0cDov -L3hlc3QvODg4MBGGD2h0dHA6Ly94ZXN0Lzg4OTARhg9odHRwOi8veGVzdC84OTAw -EYYPaHR0cDovL3hlc3QvODkxMBGGD2h0dHA6Ly94ZXN0Lzg5MjARhg9odHRwOi8v -eGVzdC84OTMwEYYPaHR0cDovL3hlc3QvODk0MBGGD2h0dHA6Ly94ZXN0Lzg5NTAR -hg9odHRwOi8veGVzdC84OTYwEYYPaHR0cDovL3hlc3QvODk3MBGGD2h0dHA6Ly94 -ZXN0Lzg5ODARhg9odHRwOi8veGVzdC84OTkwEYYPaHR0cDovL3hlc3QvOTAwMBGG -D2h0dHA6Ly94ZXN0LzkwMTARhg9odHRwOi8veGVzdC85MDIwEYYPaHR0cDovL3hl -c3QvOTAzMBGGD2h0dHA6Ly94ZXN0LzkwNDARhg9odHRwOi8veGVzdC85MDUwEYYP -aHR0cDovL3hlc3QvOTA2MBGGD2h0dHA6Ly94ZXN0LzkwNzARhg9odHRwOi8veGVz -dC85MDgwEYYPaHR0cDovL3hlc3QvOTA5MBGGD2h0dHA6Ly94ZXN0LzkxMDARhg9o -dHRwOi8veGVzdC85MTEwEYYPaHR0cDovL3hlc3QvOTEyMBGGD2h0dHA6Ly94ZXN0 -LzkxMzARhg9odHRwOi8veGVzdC85MTQwEYYPaHR0cDovL3hlc3QvOTE1MBGGD2h0 -dHA6Ly94ZXN0LzkxNjARhg9odHRwOi8veGVzdC85MTcwEYYPaHR0cDovL3hlc3Qv -OTE4MBGGD2h0dHA6Ly94ZXN0LzkxOTARhg9odHRwOi8veGVzdC85MjAwEYYPaHR0 -cDovL3hlc3QvOTIxMBGGD2h0dHA6Ly94ZXN0LzkyMjARhg9odHRwOi8veGVzdC85 -MjMwEYYPaHR0cDovL3hlc3QvOTI0MBGGD2h0dHA6Ly94ZXN0LzkyNTARhg9odHRw -Oi8veGVzdC85MjYwEYYPaHR0cDovL3hlc3QvOTI3MBGGD2h0dHA6Ly94ZXN0Lzky -ODARhg9odHRwOi8veGVzdC85MjkwEYYPaHR0cDovL3hlc3QvOTMwMBGGD2h0dHA6 -Ly94ZXN0LzkzMTARhg9odHRwOi8veGVzdC85MzIwEYYPaHR0cDovL3hlc3QvOTMz -MBGGD2h0dHA6Ly94ZXN0LzkzNDARhg9odHRwOi8veGVzdC85MzUwEYYPaHR0cDov -L3hlc3QvOTM2MBGGD2h0dHA6Ly94ZXN0LzkzNzARhg9odHRwOi8veGVzdC85Mzgw -EYYPaHR0cDovL3hlc3QvOTM5MBGGD2h0dHA6Ly94ZXN0Lzk0MDARhg9odHRwOi8v -eGVzdC85NDEwEYYPaHR0cDovL3hlc3QvOTQyMBGGD2h0dHA6Ly94ZXN0Lzk0MzAR -hg9odHRwOi8veGVzdC85NDQwEYYPaHR0cDovL3hlc3QvOTQ1MBGGD2h0dHA6Ly94 -ZXN0Lzk0NjARhg9odHRwOi8veGVzdC85NDcwEYYPaHR0cDovL3hlc3QvOTQ4MBGG -D2h0dHA6Ly94ZXN0Lzk0OTARhg9odHRwOi8veGVzdC85NTAwEYYPaHR0cDovL3hl -c3QvOTUxMBGGD2h0dHA6Ly94ZXN0Lzk1MjARhg9odHRwOi8veGVzdC85NTMwEYYP -aHR0cDovL3hlc3QvOTU0MBGGD2h0dHA6Ly94ZXN0Lzk1NTARhg9odHRwOi8veGVz -dC85NTYwEYYPaHR0cDovL3hlc3QvOTU3MBGGD2h0dHA6Ly94ZXN0Lzk1ODARhg9o -dHRwOi8veGVzdC85NTkwEYYPaHR0cDovL3hlc3QvOTYwMBGGD2h0dHA6Ly94ZXN0 -Lzk2MTARhg9odHRwOi8veGVzdC85NjIwEYYPaHR0cDovL3hlc3QvOTYzMBGGD2h0 -dHA6Ly94ZXN0Lzk2NDARhg9odHRwOi8veGVzdC85NjUwEYYPaHR0cDovL3hlc3Qv -OTY2MBGGD2h0dHA6Ly94ZXN0Lzk2NzARhg9odHRwOi8veGVzdC85NjgwEYYPaHR0 -cDovL3hlc3QvOTY5MBGGD2h0dHA6Ly94ZXN0Lzk3MDARhg9odHRwOi8veGVzdC85 -NzEwEYYPaHR0cDovL3hlc3QvOTcyMBGGD2h0dHA6Ly94ZXN0Lzk3MzARhg9odHRw -Oi8veGVzdC85NzQwEYYPaHR0cDovL3hlc3QvOTc1MBGGD2h0dHA6Ly94ZXN0Lzk3 -NjARhg9odHRwOi8veGVzdC85NzcwEYYPaHR0cDovL3hlc3QvOTc4MBGGD2h0dHA6 -Ly94ZXN0Lzk3OTARhg9odHRwOi8veGVzdC85ODAwEYYPaHR0cDovL3hlc3QvOTgx -MBGGD2h0dHA6Ly94ZXN0Lzk4MjARhg9odHRwOi8veGVzdC85ODMwEYYPaHR0cDov -L3hlc3QvOTg0MBGGD2h0dHA6Ly94ZXN0Lzk4NTARhg9odHRwOi8veGVzdC85ODYw -EYYPaHR0cDovL3hlc3QvOTg3MBGGD2h0dHA6Ly94ZXN0Lzk4ODARhg9odHRwOi8v -eGVzdC85ODkwEYYPaHR0cDovL3hlc3QvOTkwMBGGD2h0dHA6Ly94ZXN0Lzk5MTAR -hg9odHRwOi8veGVzdC85OTIwEYYPaHR0cDovL3hlc3QvOTkzMBGGD2h0dHA6Ly94 -ZXN0Lzk5NDARhg9odHRwOi8veGVzdC85OTUwEYYPaHR0cDovL3hlc3QvOTk2MBGG -D2h0dHA6Ly94ZXN0Lzk5NzARhg9odHRwOi8veGVzdC85OTgwEYYPaHR0cDovL3hl -c3QvOTk5MBKGEGh0dHA6Ly94ZXN0LzEwMDAwEoYQaHR0cDovL3hlc3QvMTAwMTAS -hhBodHRwOi8veGVzdC8xMDAyMBKGEGh0dHA6Ly94ZXN0LzEwMDMwEoYQaHR0cDov -L3hlc3QvMTAwNDAShhBodHRwOi8veGVzdC8xMDA1MBKGEGh0dHA6Ly94ZXN0LzEw -MDYwEoYQaHR0cDovL3hlc3QvMTAwNzAShhBodHRwOi8veGVzdC8xMDA4MBKGEGh0 -dHA6Ly94ZXN0LzEwMDkwEoYQaHR0cDovL3hlc3QvMTAxMDAShhBodHRwOi8veGVz -dC8xMDExMBKGEGh0dHA6Ly94ZXN0LzEwMTIwEoYQaHR0cDovL3hlc3QvMTAxMzAS -hhBodHRwOi8veGVzdC8xMDE0MBKGEGh0dHA6Ly94ZXN0LzEwMTUwEoYQaHR0cDov -L3hlc3QvMTAxNjAShhBodHRwOi8veGVzdC8xMDE3MBKGEGh0dHA6Ly94ZXN0LzEw -MTgwEoYQaHR0cDovL3hlc3QvMTAxOTAShhBodHRwOi8veGVzdC8xMDIwMBKGEGh0 -dHA6Ly94ZXN0LzEwMjEwEoYQaHR0cDovL3hlc3QvMTAyMjAShhBodHRwOi8veGVz -dC8xMDIzMBKGEGh0dHA6Ly94ZXN0LzEwMjQwDQYJKoZIhvcNAQELBQADggEBADeo -vuQDYmMVsP6+SX8iXnr4tDMM/jtBDJncvbCjDDpUQidiGBWv5tWRYxcdGz/K9i4v -bnFeZoYnaZExXTWF1EZ3aUVQBZy8ObgP0JamZQLTgFOsWJzz7CcnsjNEURd5kOqx -VzL34FikmWR4VWEW01FizyYCjX3fLdjD0gBeA0l4ILd4np62VulITcVa6ijoFnBK -ObsdiEBa/WeCc/PG8untcIPecj99CC8aQ03JsunO5kOpdCXNupXNUZfLVtTm5tlp -Cl9IFyo7Qayl7B8wybLxaI+hDx59nuO+u43LbkFqFnpI9awUaffeY/yUgOdi2uaZ -Eq3x0l12a8MRblVdfuw= ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F7.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F7.pem deleted file mode 100644 index 5f017298c5..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F7.pem +++ /dev/null @@ -1,1437 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:f7 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Permitted: - DNS:t0.test - DNS:t1.test - DNS:t2.test - DNS:t3.test - DNS:t4.test - DNS:t5.test - DNS:t6.test - DNS:t7.test - DNS:t8.test - DNS:t9.test - DNS:t10.test - DNS:t11.test - DNS:t12.test - DNS:t13.test - DNS:t14.test - DNS:t15.test - DNS:t16.test - DNS:t17.test - DNS:t18.test - DNS:t19.test - DNS:t20.test - DNS:t21.test - DNS:t22.test - DNS:t23.test - DNS:t24.test - DNS:t25.test - DNS:t26.test - DNS:t27.test - DNS:t28.test - DNS:t29.test - DNS:t30.test - DNS:t31.test - DNS:t32.test - DNS:t33.test - DNS:t34.test - DNS:t35.test - DNS:t36.test - DNS:t37.test - DNS:t38.test - DNS:t39.test - DNS:t40.test - DNS:t41.test - DNS:t42.test - DNS:t43.test - DNS:t44.test - DNS:t45.test - DNS:t46.test - DNS:t47.test - DNS:t48.test - DNS:t49.test - DNS:t50.test - DNS:t51.test - DNS:t52.test - DNS:t53.test - DNS:t54.test - DNS:t55.test - DNS:t56.test - DNS:t57.test - DNS:t58.test - DNS:t59.test - DNS:t60.test - DNS:t61.test - DNS:t62.test - DNS:t63.test - DNS:t64.test - DNS:t65.test - DNS:t66.test - DNS:t67.test - DNS:t68.test - DNS:t69.test - DNS:t70.test - DNS:t71.test - DNS:t72.test - DNS:t73.test - DNS:t74.test - DNS:t75.test - DNS:t76.test - DNS:t77.test - DNS:t78.test - DNS:t79.test - DNS:t80.test - DNS:t81.test - DNS:t82.test - DNS:t83.test - DNS:t84.test - DNS:t85.test - DNS:t86.test - DNS:t87.test - DNS:t88.test - DNS:t89.test - DNS:t90.test - DNS:t91.test - DNS:t92.test - DNS:t93.test - DNS:t94.test - DNS:t95.test - DNS:t96.test - DNS:t97.test - DNS:t98.test - DNS:t99.test - DNS:t100.test - DNS:t101.test - DNS:t102.test - DNS:t103.test - DNS:t104.test - DNS:t105.test - DNS:t106.test - DNS:t107.test - DNS:t108.test - DNS:t109.test - DNS:t110.test - DNS:t111.test - DNS:t112.test - DNS:t113.test - DNS:t114.test - DNS:t115.test - DNS:t116.test - DNS:t117.test - DNS:t118.test - DNS:t119.test - DNS:t120.test - DNS:t121.test - DNS:t122.test - DNS:t123.test - DNS:t124.test - DNS:t125.test - DNS:t126.test - DNS:t127.test - DNS:t128.test - DNS:t129.test - DNS:t130.test - DNS:t131.test - DNS:t132.test - DNS:t133.test - DNS:t134.test - DNS:t135.test - DNS:t136.test - DNS:t137.test - DNS:t138.test - DNS:t139.test - DNS:t140.test - DNS:t141.test - DNS:t142.test - DNS:t143.test - DNS:t144.test - DNS:t145.test - DNS:t146.test - DNS:t147.test - DNS:t148.test - DNS:t149.test - DNS:t150.test - DNS:t151.test - DNS:t152.test - DNS:t153.test - DNS:t154.test - DNS:t155.test - DNS:t156.test - DNS:t157.test - DNS:t158.test - DNS:t159.test - DNS:t160.test - DNS:t161.test - DNS:t162.test - DNS:t163.test - DNS:t164.test - DNS:t165.test - DNS:t166.test - DNS:t167.test - DNS:t168.test - DNS:t169.test - DNS:t170.test - DNS:t171.test - IP:10.0.0.0/255.255.255.255 - IP:10.0.0.1/255.255.255.255 - IP:10.0.0.2/255.255.255.255 - IP:10.0.0.3/255.255.255.255 - IP:10.0.0.4/255.255.255.255 - IP:10.0.0.5/255.255.255.255 - IP:10.0.0.6/255.255.255.255 - IP:10.0.0.7/255.255.255.255 - IP:10.0.0.8/255.255.255.255 - IP:10.0.0.9/255.255.255.255 - IP:10.0.0.10/255.255.255.255 - IP:10.0.0.11/255.255.255.255 - IP:10.0.0.12/255.255.255.255 - IP:10.0.0.13/255.255.255.255 - IP:10.0.0.14/255.255.255.255 - IP:10.0.0.15/255.255.255.255 - IP:10.0.0.16/255.255.255.255 - IP:10.0.0.17/255.255.255.255 - IP:10.0.0.18/255.255.255.255 - IP:10.0.0.19/255.255.255.255 - IP:10.0.0.20/255.255.255.255 - IP:10.0.0.21/255.255.255.255 - IP:10.0.0.22/255.255.255.255 - IP:10.0.0.23/255.255.255.255 - IP:10.0.0.24/255.255.255.255 - IP:10.0.0.25/255.255.255.255 - IP:10.0.0.26/255.255.255.255 - IP:10.0.0.27/255.255.255.255 - IP:10.0.0.28/255.255.255.255 - IP:10.0.0.29/255.255.255.255 - IP:10.0.0.30/255.255.255.255 - IP:10.0.0.31/255.255.255.255 - IP:10.0.0.32/255.255.255.255 - IP:10.0.0.33/255.255.255.255 - IP:10.0.0.34/255.255.255.255 - IP:10.0.0.35/255.255.255.255 - IP:10.0.0.36/255.255.255.255 - IP:10.0.0.37/255.255.255.255 - IP:10.0.0.38/255.255.255.255 - IP:10.0.0.39/255.255.255.255 - IP:10.0.0.40/255.255.255.255 - IP:10.0.0.41/255.255.255.255 - IP:10.0.0.42/255.255.255.255 - IP:10.0.0.43/255.255.255.255 - IP:10.0.0.44/255.255.255.255 - IP:10.0.0.45/255.255.255.255 - IP:10.0.0.46/255.255.255.255 - IP:10.0.0.47/255.255.255.255 - IP:10.0.0.48/255.255.255.255 - IP:10.0.0.49/255.255.255.255 - IP:10.0.0.50/255.255.255.255 - IP:10.0.0.51/255.255.255.255 - IP:10.0.0.52/255.255.255.255 - IP:10.0.0.53/255.255.255.255 - IP:10.0.0.54/255.255.255.255 - IP:10.0.0.55/255.255.255.255 - IP:10.0.0.56/255.255.255.255 - IP:10.0.0.57/255.255.255.255 - IP:10.0.0.58/255.255.255.255 - IP:10.0.0.59/255.255.255.255 - IP:10.0.0.60/255.255.255.255 - IP:10.0.0.61/255.255.255.255 - IP:10.0.0.62/255.255.255.255 - IP:10.0.0.63/255.255.255.255 - IP:10.0.0.64/255.255.255.255 - IP:10.0.0.65/255.255.255.255 - IP:10.0.0.66/255.255.255.255 - IP:10.0.0.67/255.255.255.255 - IP:10.0.0.68/255.255.255.255 - IP:10.0.0.69/255.255.255.255 - IP:10.0.0.70/255.255.255.255 - IP:10.0.0.71/255.255.255.255 - IP:10.0.0.72/255.255.255.255 - IP:10.0.0.73/255.255.255.255 - IP:10.0.0.74/255.255.255.255 - IP:10.0.0.75/255.255.255.255 - IP:10.0.0.76/255.255.255.255 - IP:10.0.0.77/255.255.255.255 - IP:10.0.0.78/255.255.255.255 - IP:10.0.0.79/255.255.255.255 - IP:10.0.0.80/255.255.255.255 - IP:10.0.0.81/255.255.255.255 - IP:10.0.0.82/255.255.255.255 - IP:10.0.0.83/255.255.255.255 - IP:10.0.0.84/255.255.255.255 - IP:10.0.0.85/255.255.255.255 - IP:10.0.0.86/255.255.255.255 - IP:10.0.0.87/255.255.255.255 - IP:10.0.0.88/255.255.255.255 - IP:10.0.0.89/255.255.255.255 - IP:10.0.0.90/255.255.255.255 - IP:10.0.0.91/255.255.255.255 - IP:10.0.0.92/255.255.255.255 - IP:10.0.0.93/255.255.255.255 - IP:10.0.0.94/255.255.255.255 - IP:10.0.0.95/255.255.255.255 - IP:10.0.0.96/255.255.255.255 - IP:10.0.0.97/255.255.255.255 - IP:10.0.0.98/255.255.255.255 - IP:10.0.0.99/255.255.255.255 - IP:10.0.0.100/255.255.255.255 - IP:10.0.0.101/255.255.255.255 - IP:10.0.0.102/255.255.255.255 - IP:10.0.0.103/255.255.255.255 - IP:10.0.0.104/255.255.255.255 - IP:10.0.0.105/255.255.255.255 - IP:10.0.0.106/255.255.255.255 - IP:10.0.0.107/255.255.255.255 - IP:10.0.0.108/255.255.255.255 - IP:10.0.0.109/255.255.255.255 - IP:10.0.0.110/255.255.255.255 - IP:10.0.0.111/255.255.255.255 - IP:10.0.0.112/255.255.255.255 - IP:10.0.0.113/255.255.255.255 - IP:10.0.0.114/255.255.255.255 - IP:10.0.0.115/255.255.255.255 - IP:10.0.0.116/255.255.255.255 - IP:10.0.0.117/255.255.255.255 - IP:10.0.0.118/255.255.255.255 - IP:10.0.0.119/255.255.255.255 - IP:10.0.0.120/255.255.255.255 - IP:10.0.0.121/255.255.255.255 - IP:10.0.0.122/255.255.255.255 - IP:10.0.0.123/255.255.255.255 - IP:10.0.0.124/255.255.255.255 - IP:10.0.0.125/255.255.255.255 - IP:10.0.0.126/255.255.255.255 - IP:10.0.0.127/255.255.255.255 - IP:10.0.0.128/255.255.255.255 - IP:10.0.0.129/255.255.255.255 - IP:10.0.0.130/255.255.255.255 - IP:10.0.0.131/255.255.255.255 - IP:10.0.0.132/255.255.255.255 - IP:10.0.0.133/255.255.255.255 - IP:10.0.0.134/255.255.255.255 - IP:10.0.0.135/255.255.255.255 - IP:10.0.0.136/255.255.255.255 - IP:10.0.0.137/255.255.255.255 - IP:10.0.0.138/255.255.255.255 - IP:10.0.0.139/255.255.255.255 - IP:10.0.0.140/255.255.255.255 - IP:10.0.0.141/255.255.255.255 - IP:10.0.0.142/255.255.255.255 - IP:10.0.0.143/255.255.255.255 - IP:10.0.0.144/255.255.255.255 - IP:10.0.0.145/255.255.255.255 - IP:10.0.0.146/255.255.255.255 - IP:10.0.0.147/255.255.255.255 - IP:10.0.0.148/255.255.255.255 - IP:10.0.0.149/255.255.255.255 - IP:10.0.0.150/255.255.255.255 - IP:10.0.0.151/255.255.255.255 - IP:10.0.0.152/255.255.255.255 - IP:10.0.0.153/255.255.255.255 - IP:10.0.0.154/255.255.255.255 - IP:10.0.0.155/255.255.255.255 - IP:10.0.0.156/255.255.255.255 - IP:10.0.0.157/255.255.255.255 - IP:10.0.0.158/255.255.255.255 - IP:10.0.0.159/255.255.255.255 - IP:10.0.0.160/255.255.255.255 - IP:10.0.0.161/255.255.255.255 - IP:10.0.0.162/255.255.255.255 - IP:10.0.0.163/255.255.255.255 - IP:10.0.0.164/255.255.255.255 - IP:10.0.0.165/255.255.255.255 - IP:10.0.0.166/255.255.255.255 - IP:10.0.0.167/255.255.255.255 - IP:10.0.0.168/255.255.255.255 - IP:10.0.0.169/255.255.255.255 - IP:10.0.0.170/255.255.255.255 - DirName: CN = t0 - DirName: CN = t1 - DirName: CN = t2 - DirName: CN = t3 - DirName: CN = t4 - DirName: CN = t5 - DirName: CN = t6 - DirName: CN = t7 - DirName: CN = t8 - DirName: CN = t9 - DirName: CN = t10 - DirName: CN = t11 - DirName: CN = t12 - DirName: CN = t13 - DirName: CN = t14 - DirName: CN = t15 - DirName: CN = t16 - DirName: CN = t17 - DirName: CN = t18 - DirName: CN = t19 - DirName: CN = t20 - DirName: CN = t21 - DirName: CN = t22 - DirName: CN = t23 - DirName: CN = t24 - DirName: CN = t25 - DirName: CN = t26 - DirName: CN = t27 - DirName: CN = t28 - DirName: CN = t29 - DirName: CN = t30 - DirName: CN = t31 - DirName: CN = t32 - DirName: CN = t33 - DirName: CN = t34 - DirName: CN = t35 - DirName: CN = t36 - DirName: CN = t37 - DirName: CN = t38 - DirName: CN = t39 - DirName: CN = t40 - DirName: CN = t41 - DirName: CN = t42 - DirName: CN = t43 - DirName: CN = t44 - DirName: CN = t45 - DirName: CN = t46 - DirName: CN = t47 - DirName: CN = t48 - DirName: CN = t49 - DirName: CN = t50 - DirName: CN = t51 - DirName: CN = t52 - DirName: CN = t53 - DirName: CN = t54 - DirName: CN = t55 - DirName: CN = t56 - DirName: CN = t57 - DirName: CN = t58 - DirName: CN = t59 - DirName: CN = t60 - DirName: CN = t61 - DirName: CN = t62 - DirName: CN = t63 - DirName: CN = t64 - DirName: CN = t65 - DirName: CN = t66 - DirName: CN = t67 - DirName: CN = t68 - DirName: CN = t69 - DirName: CN = t70 - DirName: CN = t71 - DirName: CN = t72 - DirName: CN = t73 - DirName: CN = t74 - DirName: CN = t75 - DirName: CN = t76 - DirName: CN = t77 - DirName: CN = t78 - DirName: CN = t79 - DirName: CN = t80 - DirName: CN = t81 - DirName: CN = t82 - DirName: CN = t83 - DirName: CN = t84 - DirName: CN = t85 - DirName: CN = t86 - DirName: CN = t87 - DirName: CN = t88 - DirName: CN = t89 - DirName: CN = t90 - DirName: CN = t91 - DirName: CN = t92 - DirName: CN = t93 - DirName: CN = t94 - DirName: CN = t95 - DirName: CN = t96 - DirName: CN = t97 - DirName: CN = t98 - DirName: CN = t99 - DirName: CN = t100 - DirName: CN = t101 - DirName: CN = t102 - DirName: CN = t103 - DirName: CN = t104 - DirName: CN = t105 - DirName: CN = t106 - DirName: CN = t107 - DirName: CN = t108 - DirName: CN = t109 - DirName: CN = t110 - DirName: CN = t111 - DirName: CN = t112 - DirName: CN = t113 - DirName: CN = t114 - DirName: CN = t115 - DirName: CN = t116 - DirName: CN = t117 - DirName: CN = t118 - DirName: CN = t119 - DirName: CN = t120 - DirName: CN = t121 - DirName: CN = t122 - DirName: CN = t123 - DirName: CN = t124 - DirName: CN = t125 - DirName: CN = t126 - DirName: CN = t127 - DirName: CN = t128 - DirName: CN = t129 - DirName: CN = t130 - DirName: CN = t131 - DirName: CN = t132 - DirName: CN = t133 - DirName: CN = t134 - DirName: CN = t135 - DirName: CN = t136 - DirName: CN = t137 - DirName: CN = t138 - DirName: CN = t139 - DirName: CN = t140 - DirName: CN = t141 - DirName: CN = t142 - DirName: CN = t143 - DirName: CN = t144 - DirName: CN = t145 - DirName: CN = t146 - DirName: CN = t147 - DirName: CN = t148 - DirName: CN = t149 - DirName: CN = t150 - DirName: CN = t151 - DirName: CN = t152 - DirName: CN = t153 - DirName: CN = t154 - DirName: CN = t155 - DirName: CN = t156 - DirName: CN = t157 - DirName: CN = t158 - DirName: CN = t159 - DirName: CN = t160 - DirName: CN = t161 - DirName: CN = t162 - DirName: CN = t163 - DirName: CN = t164 - DirName: CN = t165 - DirName: CN = t166 - DirName: CN = t167 - DirName: CN = t168 - DirName: CN = t169 - DirName: CN = t170 - DirName: CN = t171 - Excluded: - DNS:x0.test - DNS:x1.test - DNS:x2.test - DNS:x3.test - DNS:x4.test - DNS:x5.test - DNS:x6.test - DNS:x7.test - DNS:x8.test - DNS:x9.test - DNS:x10.test - DNS:x11.test - DNS:x12.test - DNS:x13.test - DNS:x14.test - DNS:x15.test - DNS:x16.test - DNS:x17.test - DNS:x18.test - DNS:x19.test - DNS:x20.test - DNS:x21.test - DNS:x22.test - DNS:x23.test - DNS:x24.test - DNS:x25.test - DNS:x26.test - DNS:x27.test - DNS:x28.test - DNS:x29.test - DNS:x30.test - DNS:x31.test - DNS:x32.test - DNS:x33.test - DNS:x34.test - DNS:x35.test - DNS:x36.test - DNS:x37.test - DNS:x38.test - DNS:x39.test - DNS:x40.test - DNS:x41.test - DNS:x42.test - DNS:x43.test - DNS:x44.test - DNS:x45.test - DNS:x46.test - DNS:x47.test - DNS:x48.test - DNS:x49.test - DNS:x50.test - DNS:x51.test - DNS:x52.test - DNS:x53.test - DNS:x54.test - DNS:x55.test - DNS:x56.test - DNS:x57.test - DNS:x58.test - DNS:x59.test - DNS:x60.test - DNS:x61.test - DNS:x62.test - DNS:x63.test - DNS:x64.test - DNS:x65.test - DNS:x66.test - DNS:x67.test - DNS:x68.test - DNS:x69.test - DNS:x70.test - DNS:x71.test - DNS:x72.test - DNS:x73.test - DNS:x74.test - DNS:x75.test - DNS:x76.test - DNS:x77.test - DNS:x78.test - DNS:x79.test - DNS:x80.test - DNS:x81.test - DNS:x82.test - DNS:x83.test - DNS:x84.test - DNS:x85.test - DNS:x86.test - DNS:x87.test - DNS:x88.test - DNS:x89.test - DNS:x90.test - DNS:x91.test - DNS:x92.test - DNS:x93.test - DNS:x94.test - DNS:x95.test - DNS:x96.test - DNS:x97.test - DNS:x98.test - DNS:x99.test - DNS:x100.test - DNS:x101.test - DNS:x102.test - DNS:x103.test - DNS:x104.test - DNS:x105.test - DNS:x106.test - DNS:x107.test - DNS:x108.test - DNS:x109.test - DNS:x110.test - DNS:x111.test - DNS:x112.test - DNS:x113.test - DNS:x114.test - DNS:x115.test - DNS:x116.test - DNS:x117.test - DNS:x118.test - DNS:x119.test - DNS:x120.test - DNS:x121.test - DNS:x122.test - DNS:x123.test - DNS:x124.test - DNS:x125.test - DNS:x126.test - DNS:x127.test - DNS:x128.test - DNS:x129.test - DNS:x130.test - DNS:x131.test - DNS:x132.test - DNS:x133.test - DNS:x134.test - DNS:x135.test - DNS:x136.test - DNS:x137.test - DNS:x138.test - DNS:x139.test - DNS:x140.test - DNS:x141.test - DNS:x142.test - DNS:x143.test - DNS:x144.test - DNS:x145.test - DNS:x146.test - DNS:x147.test - DNS:x148.test - DNS:x149.test - DNS:x150.test - DNS:x151.test - DNS:x152.test - DNS:x153.test - DNS:x154.test - DNS:x155.test - DNS:x156.test - DNS:x157.test - DNS:x158.test - DNS:x159.test - DNS:x160.test - DNS:x161.test - DNS:x162.test - DNS:x163.test - DNS:x164.test - DNS:x165.test - DNS:x166.test - DNS:x167.test - DNS:x168.test - DNS:x169.test - IP:11.0.0.0/255.255.255.255 - IP:11.0.0.1/255.255.255.255 - IP:11.0.0.2/255.255.255.255 - IP:11.0.0.3/255.255.255.255 - IP:11.0.0.4/255.255.255.255 - IP:11.0.0.5/255.255.255.255 - IP:11.0.0.6/255.255.255.255 - IP:11.0.0.7/255.255.255.255 - IP:11.0.0.8/255.255.255.255 - IP:11.0.0.9/255.255.255.255 - IP:11.0.0.10/255.255.255.255 - IP:11.0.0.11/255.255.255.255 - IP:11.0.0.12/255.255.255.255 - IP:11.0.0.13/255.255.255.255 - IP:11.0.0.14/255.255.255.255 - IP:11.0.0.15/255.255.255.255 - IP:11.0.0.16/255.255.255.255 - IP:11.0.0.17/255.255.255.255 - IP:11.0.0.18/255.255.255.255 - IP:11.0.0.19/255.255.255.255 - IP:11.0.0.20/255.255.255.255 - IP:11.0.0.21/255.255.255.255 - IP:11.0.0.22/255.255.255.255 - IP:11.0.0.23/255.255.255.255 - IP:11.0.0.24/255.255.255.255 - IP:11.0.0.25/255.255.255.255 - IP:11.0.0.26/255.255.255.255 - IP:11.0.0.27/255.255.255.255 - IP:11.0.0.28/255.255.255.255 - IP:11.0.0.29/255.255.255.255 - IP:11.0.0.30/255.255.255.255 - IP:11.0.0.31/255.255.255.255 - IP:11.0.0.32/255.255.255.255 - IP:11.0.0.33/255.255.255.255 - IP:11.0.0.34/255.255.255.255 - IP:11.0.0.35/255.255.255.255 - IP:11.0.0.36/255.255.255.255 - IP:11.0.0.37/255.255.255.255 - IP:11.0.0.38/255.255.255.255 - IP:11.0.0.39/255.255.255.255 - IP:11.0.0.40/255.255.255.255 - IP:11.0.0.41/255.255.255.255 - IP:11.0.0.42/255.255.255.255 - IP:11.0.0.43/255.255.255.255 - IP:11.0.0.44/255.255.255.255 - IP:11.0.0.45/255.255.255.255 - IP:11.0.0.46/255.255.255.255 - IP:11.0.0.47/255.255.255.255 - IP:11.0.0.48/255.255.255.255 - IP:11.0.0.49/255.255.255.255 - IP:11.0.0.50/255.255.255.255 - IP:11.0.0.51/255.255.255.255 - IP:11.0.0.52/255.255.255.255 - IP:11.0.0.53/255.255.255.255 - IP:11.0.0.54/255.255.255.255 - IP:11.0.0.55/255.255.255.255 - IP:11.0.0.56/255.255.255.255 - IP:11.0.0.57/255.255.255.255 - IP:11.0.0.58/255.255.255.255 - IP:11.0.0.59/255.255.255.255 - IP:11.0.0.60/255.255.255.255 - IP:11.0.0.61/255.255.255.255 - IP:11.0.0.62/255.255.255.255 - IP:11.0.0.63/255.255.255.255 - IP:11.0.0.64/255.255.255.255 - IP:11.0.0.65/255.255.255.255 - IP:11.0.0.66/255.255.255.255 - IP:11.0.0.67/255.255.255.255 - IP:11.0.0.68/255.255.255.255 - IP:11.0.0.69/255.255.255.255 - IP:11.0.0.70/255.255.255.255 - IP:11.0.0.71/255.255.255.255 - IP:11.0.0.72/255.255.255.255 - IP:11.0.0.73/255.255.255.255 - IP:11.0.0.74/255.255.255.255 - IP:11.0.0.75/255.255.255.255 - IP:11.0.0.76/255.255.255.255 - IP:11.0.0.77/255.255.255.255 - IP:11.0.0.78/255.255.255.255 - IP:11.0.0.79/255.255.255.255 - IP:11.0.0.80/255.255.255.255 - IP:11.0.0.81/255.255.255.255 - IP:11.0.0.82/255.255.255.255 - IP:11.0.0.83/255.255.255.255 - IP:11.0.0.84/255.255.255.255 - IP:11.0.0.85/255.255.255.255 - IP:11.0.0.86/255.255.255.255 - IP:11.0.0.87/255.255.255.255 - IP:11.0.0.88/255.255.255.255 - IP:11.0.0.89/255.255.255.255 - IP:11.0.0.90/255.255.255.255 - IP:11.0.0.91/255.255.255.255 - IP:11.0.0.92/255.255.255.255 - IP:11.0.0.93/255.255.255.255 - IP:11.0.0.94/255.255.255.255 - IP:11.0.0.95/255.255.255.255 - IP:11.0.0.96/255.255.255.255 - IP:11.0.0.97/255.255.255.255 - IP:11.0.0.98/255.255.255.255 - IP:11.0.0.99/255.255.255.255 - IP:11.0.0.100/255.255.255.255 - IP:11.0.0.101/255.255.255.255 - IP:11.0.0.102/255.255.255.255 - IP:11.0.0.103/255.255.255.255 - IP:11.0.0.104/255.255.255.255 - IP:11.0.0.105/255.255.255.255 - IP:11.0.0.106/255.255.255.255 - IP:11.0.0.107/255.255.255.255 - IP:11.0.0.108/255.255.255.255 - IP:11.0.0.109/255.255.255.255 - IP:11.0.0.110/255.255.255.255 - IP:11.0.0.111/255.255.255.255 - IP:11.0.0.112/255.255.255.255 - IP:11.0.0.113/255.255.255.255 - IP:11.0.0.114/255.255.255.255 - IP:11.0.0.115/255.255.255.255 - IP:11.0.0.116/255.255.255.255 - IP:11.0.0.117/255.255.255.255 - IP:11.0.0.118/255.255.255.255 - IP:11.0.0.119/255.255.255.255 - IP:11.0.0.120/255.255.255.255 - IP:11.0.0.121/255.255.255.255 - IP:11.0.0.122/255.255.255.255 - IP:11.0.0.123/255.255.255.255 - IP:11.0.0.124/255.255.255.255 - IP:11.0.0.125/255.255.255.255 - IP:11.0.0.126/255.255.255.255 - IP:11.0.0.127/255.255.255.255 - IP:11.0.0.128/255.255.255.255 - IP:11.0.0.129/255.255.255.255 - IP:11.0.0.130/255.255.255.255 - IP:11.0.0.131/255.255.255.255 - IP:11.0.0.132/255.255.255.255 - IP:11.0.0.133/255.255.255.255 - IP:11.0.0.134/255.255.255.255 - IP:11.0.0.135/255.255.255.255 - IP:11.0.0.136/255.255.255.255 - IP:11.0.0.137/255.255.255.255 - IP:11.0.0.138/255.255.255.255 - IP:11.0.0.139/255.255.255.255 - IP:11.0.0.140/255.255.255.255 - IP:11.0.0.141/255.255.255.255 - IP:11.0.0.142/255.255.255.255 - IP:11.0.0.143/255.255.255.255 - IP:11.0.0.144/255.255.255.255 - IP:11.0.0.145/255.255.255.255 - IP:11.0.0.146/255.255.255.255 - IP:11.0.0.147/255.255.255.255 - IP:11.0.0.148/255.255.255.255 - IP:11.0.0.149/255.255.255.255 - IP:11.0.0.150/255.255.255.255 - IP:11.0.0.151/255.255.255.255 - IP:11.0.0.152/255.255.255.255 - IP:11.0.0.153/255.255.255.255 - IP:11.0.0.154/255.255.255.255 - IP:11.0.0.155/255.255.255.255 - IP:11.0.0.156/255.255.255.255 - IP:11.0.0.157/255.255.255.255 - IP:11.0.0.158/255.255.255.255 - IP:11.0.0.159/255.255.255.255 - IP:11.0.0.160/255.255.255.255 - IP:11.0.0.161/255.255.255.255 - IP:11.0.0.162/255.255.255.255 - IP:11.0.0.163/255.255.255.255 - IP:11.0.0.164/255.255.255.255 - IP:11.0.0.165/255.255.255.255 - IP:11.0.0.166/255.255.255.255 - IP:11.0.0.167/255.255.255.255 - IP:11.0.0.168/255.255.255.255 - IP:11.0.0.169/255.255.255.255 - DirName: CN = x0 - DirName: CN = x1 - DirName: CN = x2 - DirName: CN = x3 - DirName: CN = x4 - DirName: CN = x5 - DirName: CN = x6 - DirName: CN = x7 - DirName: CN = x8 - DirName: CN = x9 - DirName: CN = x10 - DirName: CN = x11 - DirName: CN = x12 - DirName: CN = x13 - DirName: CN = x14 - DirName: CN = x15 - DirName: CN = x16 - DirName: CN = x17 - DirName: CN = x18 - DirName: CN = x19 - DirName: CN = x20 - DirName: CN = x21 - DirName: CN = x22 - DirName: CN = x23 - DirName: CN = x24 - DirName: CN = x25 - DirName: CN = x26 - DirName: CN = x27 - DirName: CN = x28 - DirName: CN = x29 - DirName: CN = x30 - DirName: CN = x31 - DirName: CN = x32 - DirName: CN = x33 - DirName: CN = x34 - DirName: CN = x35 - DirName: CN = x36 - DirName: CN = x37 - DirName: CN = x38 - DirName: CN = x39 - DirName: CN = x40 - DirName: CN = x41 - DirName: CN = x42 - DirName: CN = x43 - DirName: CN = x44 - DirName: CN = x45 - DirName: CN = x46 - DirName: CN = x47 - DirName: CN = x48 - DirName: CN = x49 - DirName: CN = x50 - DirName: CN = x51 - DirName: CN = x52 - DirName: CN = x53 - DirName: CN = x54 - DirName: CN = x55 - DirName: CN = x56 - DirName: CN = x57 - DirName: CN = x58 - DirName: CN = x59 - DirName: CN = x60 - DirName: CN = x61 - DirName: CN = x62 - DirName: CN = x63 - DirName: CN = x64 - DirName: CN = x65 - DirName: CN = x66 - DirName: CN = x67 - DirName: CN = x68 - DirName: CN = x69 - DirName: CN = x70 - DirName: CN = x71 - DirName: CN = x72 - DirName: CN = x73 - DirName: CN = x74 - DirName: CN = x75 - DirName: CN = x76 - DirName: CN = x77 - DirName: CN = x78 - DirName: CN = x79 - DirName: CN = x80 - DirName: CN = x81 - DirName: CN = x82 - DirName: CN = x83 - DirName: CN = x84 - DirName: CN = x85 - DirName: CN = x86 - DirName: CN = x87 - DirName: CN = x88 - DirName: CN = x89 - DirName: CN = x90 - DirName: CN = x91 - DirName: CN = x92 - DirName: CN = x93 - DirName: CN = x94 - DirName: CN = x95 - DirName: CN = x96 - DirName: CN = x97 - DirName: CN = x98 - DirName: CN = x99 - DirName: CN = x100 - DirName: CN = x101 - DirName: CN = x102 - DirName: CN = x103 - DirName: CN = x104 - DirName: CN = x105 - DirName: CN = x106 - DirName: CN = x107 - DirName: CN = x108 - DirName: CN = x109 - DirName: CN = x110 - DirName: CN = x111 - DirName: CN = x112 - DirName: CN = x113 - DirName: CN = x114 - DirName: CN = x115 - DirName: CN = x116 - DirName: CN = x117 - DirName: CN = x118 - DirName: CN = x119 - DirName: CN = x120 - DirName: CN = x121 - DirName: CN = x122 - DirName: CN = x123 - DirName: CN = x124 - DirName: CN = x125 - DirName: CN = x126 - DirName: CN = x127 - DirName: CN = x128 - DirName: CN = x129 - DirName: CN = x130 - DirName: CN = x131 - DirName: CN = x132 - DirName: CN = x133 - DirName: CN = x134 - DirName: CN = x135 - DirName: CN = x136 - DirName: CN = x137 - DirName: CN = x138 - DirName: CN = x139 - DirName: CN = x140 - DirName: CN = x141 - DirName: CN = x142 - DirName: CN = x143 - DirName: CN = x144 - DirName: CN = x145 - DirName: CN = x146 - DirName: CN = x147 - DirName: CN = x148 - DirName: CN = x149 - DirName: CN = x150 - DirName: CN = x151 - DirName: CN = x152 - DirName: CN = x153 - DirName: CN = x154 - DirName: CN = x155 - DirName: CN = x156 - DirName: CN = x157 - DirName: CN = x158 - DirName: CN = x159 - DirName: CN = x160 - DirName: CN = x161 - DirName: CN = x162 - DirName: CN = x163 - DirName: CN = x164 - DirName: CN = x165 - DirName: CN = x166 - DirName: CN = x167 - DirName: CN = x168 - DirName: CN = x169 - - Signature Algorithm: sha256WithRSAEncryption - 9f:cb:83:7b:e2:3c:57:27:25:ec:82:3f:30:c2:ff:12:51:71: - 3f:d5:94:05:1a:5b:58:44:80:b4:89:1e:e0:89:45:e5:e3:72: - 8b:c4:d8:ca:54:a3:db:f2:a3:fd:16:00:c1:86:21:e2:ed:e3: - 6c:94:7e:09:ae:ed:36:1c:e3:97:6f:3d:0a:b1:39:78:7a:b3: - b9:ce:c3:68:ee:60:27:7c:cb:6b:33:3c:5f:a2:6a:99:d4:08: - 2a:e9:21:04:ea:12:d9:28:53:1f:cc:af:ab:41:a3:6e:34:fa: - 56:56:44:d5:c5:10:bd:f4:37:3b:45:94:74:19:b2:49:cf:0f: - 98:94:75:68:ec:4e:6f:b0:41:ac:f7:38:02:1d:dd:1f:14:f6: - b5:c6:0c:a2:b2:a7:07:75:99:54:4e:fe:68:0c:1d:ae:a0:90: - d7:d5:64:60:15:ff:c7:fd:31:da:ab:50:43:44:b7:cc:3f:d2: - ee:e4:03:3e:a0:9d:8e:81:48:21:86:34:66:27:be:b2:73:01: - 2b:65:ee:51:3b:57:3f:76:51:ad:82:fc:7e:c9:ce:89:38:04: - 5f:c9:f6:41:62:32:60:b2:b9:d1:fe:4e:78:d6:a5:79:56:7b: - 57:e4:1d:42:7a:1f:aa:f7:b0:d0:82:ba:d4:f1:bb:f9:9c:ec: - ca:e7:f7:09 ------BEGIN CERTIFICATE----- -MII/SzCCPjOgAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vcwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCPJUwgjyRMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgjvFBgNVHR4Egju8MII7uKCCHgAwCYIHdDAudGVzdDAJggd0MS50ZXN0MAmC -B3QyLnRlc3QwCYIHdDMudGVzdDAJggd0NC50ZXN0MAmCB3Q1LnRlc3QwCYIHdDYu -dGVzdDAJggd0Ny50ZXN0MAmCB3Q4LnRlc3QwCYIHdDkudGVzdDAKggh0MTAudGVz -dDAKggh0MTEudGVzdDAKggh0MTIudGVzdDAKggh0MTMudGVzdDAKggh0MTQudGVz -dDAKggh0MTUudGVzdDAKggh0MTYudGVzdDAKggh0MTcudGVzdDAKggh0MTgudGVz -dDAKggh0MTkudGVzdDAKggh0MjAudGVzdDAKggh0MjEudGVzdDAKggh0MjIudGVz -dDAKggh0MjMudGVzdDAKggh0MjQudGVzdDAKggh0MjUudGVzdDAKggh0MjYudGVz -dDAKggh0MjcudGVzdDAKggh0MjgudGVzdDAKggh0MjkudGVzdDAKggh0MzAudGVz -dDAKggh0MzEudGVzdDAKggh0MzIudGVzdDAKggh0MzMudGVzdDAKggh0MzQudGVz -dDAKggh0MzUudGVzdDAKggh0MzYudGVzdDAKggh0MzcudGVzdDAKggh0MzgudGVz -dDAKggh0MzkudGVzdDAKggh0NDAudGVzdDAKggh0NDEudGVzdDAKggh0NDIudGVz -dDAKggh0NDMudGVzdDAKggh0NDQudGVzdDAKggh0NDUudGVzdDAKggh0NDYudGVz -dDAKggh0NDcudGVzdDAKggh0NDgudGVzdDAKggh0NDkudGVzdDAKggh0NTAudGVz -dDAKggh0NTEudGVzdDAKggh0NTIudGVzdDAKggh0NTMudGVzdDAKggh0NTQudGVz -dDAKggh0NTUudGVzdDAKggh0NTYudGVzdDAKggh0NTcudGVzdDAKggh0NTgudGVz -dDAKggh0NTkudGVzdDAKggh0NjAudGVzdDAKggh0NjEudGVzdDAKggh0NjIudGVz -dDAKggh0NjMudGVzdDAKggh0NjQudGVzdDAKggh0NjUudGVzdDAKggh0NjYudGVz -dDAKggh0NjcudGVzdDAKggh0NjgudGVzdDAKggh0NjkudGVzdDAKggh0NzAudGVz -dDAKggh0NzEudGVzdDAKggh0NzIudGVzdDAKggh0NzMudGVzdDAKggh0NzQudGVz -dDAKggh0NzUudGVzdDAKggh0NzYudGVzdDAKggh0NzcudGVzdDAKggh0NzgudGVz -dDAKggh0NzkudGVzdDAKggh0ODAudGVzdDAKggh0ODEudGVzdDAKggh0ODIudGVz -dDAKggh0ODMudGVzdDAKggh0ODQudGVzdDAKggh0ODUudGVzdDAKggh0ODYudGVz -dDAKggh0ODcudGVzdDAKggh0ODgudGVzdDAKggh0ODkudGVzdDAKggh0OTAudGVz -dDAKggh0OTEudGVzdDAKggh0OTIudGVzdDAKggh0OTMudGVzdDAKggh0OTQudGVz -dDAKggh0OTUudGVzdDAKggh0OTYudGVzdDAKggh0OTcudGVzdDAKggh0OTgudGVz -dDAKggh0OTkudGVzdDALggl0MTAwLnRlc3QwC4IJdDEwMS50ZXN0MAuCCXQxMDIu -dGVzdDALggl0MTAzLnRlc3QwC4IJdDEwNC50ZXN0MAuCCXQxMDUudGVzdDALggl0 -MTA2LnRlc3QwC4IJdDEwNy50ZXN0MAuCCXQxMDgudGVzdDALggl0MTA5LnRlc3Qw -C4IJdDExMC50ZXN0MAuCCXQxMTEudGVzdDALggl0MTEyLnRlc3QwC4IJdDExMy50 -ZXN0MAuCCXQxMTQudGVzdDALggl0MTE1LnRlc3QwC4IJdDExNi50ZXN0MAuCCXQx -MTcudGVzdDALggl0MTE4LnRlc3QwC4IJdDExOS50ZXN0MAuCCXQxMjAudGVzdDAL -ggl0MTIxLnRlc3QwC4IJdDEyMi50ZXN0MAuCCXQxMjMudGVzdDALggl0MTI0LnRl -c3QwC4IJdDEyNS50ZXN0MAuCCXQxMjYudGVzdDALggl0MTI3LnRlc3QwC4IJdDEy -OC50ZXN0MAuCCXQxMjkudGVzdDALggl0MTMwLnRlc3QwC4IJdDEzMS50ZXN0MAuC -CXQxMzIudGVzdDALggl0MTMzLnRlc3QwC4IJdDEzNC50ZXN0MAuCCXQxMzUudGVz -dDALggl0MTM2LnRlc3QwC4IJdDEzNy50ZXN0MAuCCXQxMzgudGVzdDALggl0MTM5 -LnRlc3QwC4IJdDE0MC50ZXN0MAuCCXQxNDEudGVzdDALggl0MTQyLnRlc3QwC4IJ -dDE0My50ZXN0MAuCCXQxNDQudGVzdDALggl0MTQ1LnRlc3QwC4IJdDE0Ni50ZXN0 -MAuCCXQxNDcudGVzdDALggl0MTQ4LnRlc3QwC4IJdDE0OS50ZXN0MAuCCXQxNTAu -dGVzdDALggl0MTUxLnRlc3QwC4IJdDE1Mi50ZXN0MAuCCXQxNTMudGVzdDALggl0 -MTU0LnRlc3QwC4IJdDE1NS50ZXN0MAuCCXQxNTYudGVzdDALggl0MTU3LnRlc3Qw -C4IJdDE1OC50ZXN0MAuCCXQxNTkudGVzdDALggl0MTYwLnRlc3QwC4IJdDE2MS50 -ZXN0MAuCCXQxNjIudGVzdDALggl0MTYzLnRlc3QwC4IJdDE2NC50ZXN0MAuCCXQx -NjUudGVzdDALggl0MTY2LnRlc3QwC4IJdDE2Ny50ZXN0MAuCCXQxNjgudGVzdDAL -ggl0MTY5LnRlc3QwC4IJdDE3MC50ZXN0MAuCCXQxNzEudGVzdDAKhwgKAAAA//// -/zAKhwgKAAAB/////zAKhwgKAAAC/////zAKhwgKAAAD/////zAKhwgKAAAE//// -/zAKhwgKAAAF/////zAKhwgKAAAG/////zAKhwgKAAAH/////zAKhwgKAAAI//// -/zAKhwgKAAAJ/////zAKhwgKAAAK/////zAKhwgKAAAL/////zAKhwgKAAAM//// -/zAKhwgKAAAN/////zAKhwgKAAAO/////zAKhwgKAAAP/////zAKhwgKAAAQ//// -/zAKhwgKAAAR/////zAKhwgKAAAS/////zAKhwgKAAAT/////zAKhwgKAAAU//// -/zAKhwgKAAAV/////zAKhwgKAAAW/////zAKhwgKAAAX/////zAKhwgKAAAY//// -/zAKhwgKAAAZ/////zAKhwgKAAAa/////zAKhwgKAAAb/////zAKhwgKAAAc//// -/zAKhwgKAAAd/////zAKhwgKAAAe/////zAKhwgKAAAf/////zAKhwgKAAAg//// -/zAKhwgKAAAh/////zAKhwgKAAAi/////zAKhwgKAAAj/////zAKhwgKAAAk//// -/zAKhwgKAAAl/////zAKhwgKAAAm/////zAKhwgKAAAn/////zAKhwgKAAAo//// -/zAKhwgKAAAp/////zAKhwgKAAAq/////zAKhwgKAAAr/////zAKhwgKAAAs//// -/zAKhwgKAAAt/////zAKhwgKAAAu/////zAKhwgKAAAv/////zAKhwgKAAAw//// -/zAKhwgKAAAx/////zAKhwgKAAAy/////zAKhwgKAAAz/////zAKhwgKAAA0//// -/zAKhwgKAAA1/////zAKhwgKAAA2/////zAKhwgKAAA3/////zAKhwgKAAA4//// -/zAKhwgKAAA5/////zAKhwgKAAA6/////zAKhwgKAAA7/////zAKhwgKAAA8//// -/zAKhwgKAAA9/////zAKhwgKAAA+/////zAKhwgKAAA//////zAKhwgKAABA//// -/zAKhwgKAABB/////zAKhwgKAABC/////zAKhwgKAABD/////zAKhwgKAABE//// -/zAKhwgKAABF/////zAKhwgKAABG/////zAKhwgKAABH/////zAKhwgKAABI//// -/zAKhwgKAABJ/////zAKhwgKAABK/////zAKhwgKAABL/////zAKhwgKAABM//// -/zAKhwgKAABN/////zAKhwgKAABO/////zAKhwgKAABP/////zAKhwgKAABQ//// -/zAKhwgKAABR/////zAKhwgKAABS/////zAKhwgKAABT/////zAKhwgKAABU//// -/zAKhwgKAABV/////zAKhwgKAABW/////zAKhwgKAABX/////zAKhwgKAABY//// -/zAKhwgKAABZ/////zAKhwgKAABa/////zAKhwgKAABb/////zAKhwgKAABc//// -/zAKhwgKAABd/////zAKhwgKAABe/////zAKhwgKAABf/////zAKhwgKAABg//// -/zAKhwgKAABh/////zAKhwgKAABi/////zAKhwgKAABj/////zAKhwgKAABk//// -/zAKhwgKAABl/////zAKhwgKAABm/////zAKhwgKAABn/////zAKhwgKAABo//// -/zAKhwgKAABp/////zAKhwgKAABq/////zAKhwgKAABr/////zAKhwgKAABs//// -/zAKhwgKAABt/////zAKhwgKAABu/////zAKhwgKAABv/////zAKhwgKAABw//// -/zAKhwgKAABx/////zAKhwgKAABy/////zAKhwgKAABz/////zAKhwgKAAB0//// -/zAKhwgKAAB1/////zAKhwgKAAB2/////zAKhwgKAAB3/////zAKhwgKAAB4//// -/zAKhwgKAAB5/////zAKhwgKAAB6/////zAKhwgKAAB7/////zAKhwgKAAB8//// -/zAKhwgKAAB9/////zAKhwgKAAB+/////zAKhwgKAAB//////zAKhwgKAACA//// -/zAKhwgKAACB/////zAKhwgKAACC/////zAKhwgKAACD/////zAKhwgKAACE//// -/zAKhwgKAACF/////zAKhwgKAACG/////zAKhwgKAACH/////zAKhwgKAACI//// -/zAKhwgKAACJ/////zAKhwgKAACK/////zAKhwgKAACL/////zAKhwgKAACM//// -/zAKhwgKAACN/////zAKhwgKAACO/////zAKhwgKAACP/////zAKhwgKAACQ//// -/zAKhwgKAACR/////zAKhwgKAACS/////zAKhwgKAACT/////zAKhwgKAACU//// -/zAKhwgKAACV/////zAKhwgKAACW/////zAKhwgKAACX/////zAKhwgKAACY//// -/zAKhwgKAACZ/////zAKhwgKAACa/////zAKhwgKAACb/////zAKhwgKAACc//// -/zAKhwgKAACd/////zAKhwgKAACe/////zAKhwgKAACf/////zAKhwgKAACg//// -/zAKhwgKAACh/////zAKhwgKAACi/////zAKhwgKAACj/////zAKhwgKAACk//// -/zAKhwgKAACl/////zAKhwgKAACm/////zAKhwgKAACn/////zAKhwgKAACo//// -/zAKhwgKAACp/////zAKhwgKAACq/////zARpA8wDTELMAkGA1UEAwwCdDAwEaQP -MA0xCzAJBgNVBAMMAnQxMBGkDzANMQswCQYDVQQDDAJ0MjARpA8wDTELMAkGA1UE -AwwCdDMwEaQPMA0xCzAJBgNVBAMMAnQ0MBGkDzANMQswCQYDVQQDDAJ0NTARpA8w -DTELMAkGA1UEAwwCdDYwEaQPMA0xCzAJBgNVBAMMAnQ3MBGkDzANMQswCQYDVQQD -DAJ0ODARpA8wDTELMAkGA1UEAwwCdDkwEqQQMA4xDDAKBgNVBAMMA3QxMDASpBAw -DjEMMAoGA1UEAwwDdDExMBKkEDAOMQwwCgYDVQQDDAN0MTIwEqQQMA4xDDAKBgNV -BAMMA3QxMzASpBAwDjEMMAoGA1UEAwwDdDE0MBKkEDAOMQwwCgYDVQQDDAN0MTUw -EqQQMA4xDDAKBgNVBAMMA3QxNjASpBAwDjEMMAoGA1UEAwwDdDE3MBKkEDAOMQww -CgYDVQQDDAN0MTgwEqQQMA4xDDAKBgNVBAMMA3QxOTASpBAwDjEMMAoGA1UEAwwD -dDIwMBKkEDAOMQwwCgYDVQQDDAN0MjEwEqQQMA4xDDAKBgNVBAMMA3QyMjASpBAw -DjEMMAoGA1UEAwwDdDIzMBKkEDAOMQwwCgYDVQQDDAN0MjQwEqQQMA4xDDAKBgNV -BAMMA3QyNTASpBAwDjEMMAoGA1UEAwwDdDI2MBKkEDAOMQwwCgYDVQQDDAN0Mjcw -EqQQMA4xDDAKBgNVBAMMA3QyODASpBAwDjEMMAoGA1UEAwwDdDI5MBKkEDAOMQww -CgYDVQQDDAN0MzAwEqQQMA4xDDAKBgNVBAMMA3QzMTASpBAwDjEMMAoGA1UEAwwD -dDMyMBKkEDAOMQwwCgYDVQQDDAN0MzMwEqQQMA4xDDAKBgNVBAMMA3QzNDASpBAw -DjEMMAoGA1UEAwwDdDM1MBKkEDAOMQwwCgYDVQQDDAN0MzYwEqQQMA4xDDAKBgNV -BAMMA3QzNzASpBAwDjEMMAoGA1UEAwwDdDM4MBKkEDAOMQwwCgYDVQQDDAN0Mzkw -EqQQMA4xDDAKBgNVBAMMA3Q0MDASpBAwDjEMMAoGA1UEAwwDdDQxMBKkEDAOMQww -CgYDVQQDDAN0NDIwEqQQMA4xDDAKBgNVBAMMA3Q0MzASpBAwDjEMMAoGA1UEAwwD -dDQ0MBKkEDAOMQwwCgYDVQQDDAN0NDUwEqQQMA4xDDAKBgNVBAMMA3Q0NjASpBAw -DjEMMAoGA1UEAwwDdDQ3MBKkEDAOMQwwCgYDVQQDDAN0NDgwEqQQMA4xDDAKBgNV -BAMMA3Q0OTASpBAwDjEMMAoGA1UEAwwDdDUwMBKkEDAOMQwwCgYDVQQDDAN0NTEw -EqQQMA4xDDAKBgNVBAMMA3Q1MjASpBAwDjEMMAoGA1UEAwwDdDUzMBKkEDAOMQww -CgYDVQQDDAN0NTQwEqQQMA4xDDAKBgNVBAMMA3Q1NTASpBAwDjEMMAoGA1UEAwwD -dDU2MBKkEDAOMQwwCgYDVQQDDAN0NTcwEqQQMA4xDDAKBgNVBAMMA3Q1ODASpBAw -DjEMMAoGA1UEAwwDdDU5MBKkEDAOMQwwCgYDVQQDDAN0NjAwEqQQMA4xDDAKBgNV -BAMMA3Q2MTASpBAwDjEMMAoGA1UEAwwDdDYyMBKkEDAOMQwwCgYDVQQDDAN0NjMw -EqQQMA4xDDAKBgNVBAMMA3Q2NDASpBAwDjEMMAoGA1UEAwwDdDY1MBKkEDAOMQww -CgYDVQQDDAN0NjYwEqQQMA4xDDAKBgNVBAMMA3Q2NzASpBAwDjEMMAoGA1UEAwwD -dDY4MBKkEDAOMQwwCgYDVQQDDAN0NjkwEqQQMA4xDDAKBgNVBAMMA3Q3MDASpBAw -DjEMMAoGA1UEAwwDdDcxMBKkEDAOMQwwCgYDVQQDDAN0NzIwEqQQMA4xDDAKBgNV -BAMMA3Q3MzASpBAwDjEMMAoGA1UEAwwDdDc0MBKkEDAOMQwwCgYDVQQDDAN0NzUw -EqQQMA4xDDAKBgNVBAMMA3Q3NjASpBAwDjEMMAoGA1UEAwwDdDc3MBKkEDAOMQww -CgYDVQQDDAN0NzgwEqQQMA4xDDAKBgNVBAMMA3Q3OTASpBAwDjEMMAoGA1UEAwwD -dDgwMBKkEDAOMQwwCgYDVQQDDAN0ODEwEqQQMA4xDDAKBgNVBAMMA3Q4MjASpBAw -DjEMMAoGA1UEAwwDdDgzMBKkEDAOMQwwCgYDVQQDDAN0ODQwEqQQMA4xDDAKBgNV -BAMMA3Q4NTASpBAwDjEMMAoGA1UEAwwDdDg2MBKkEDAOMQwwCgYDVQQDDAN0ODcw -EqQQMA4xDDAKBgNVBAMMA3Q4ODASpBAwDjEMMAoGA1UEAwwDdDg5MBKkEDAOMQww -CgYDVQQDDAN0OTAwEqQQMA4xDDAKBgNVBAMMA3Q5MTASpBAwDjEMMAoGA1UEAwwD -dDkyMBKkEDAOMQwwCgYDVQQDDAN0OTMwEqQQMA4xDDAKBgNVBAMMA3Q5NDASpBAw -DjEMMAoGA1UEAwwDdDk1MBKkEDAOMQwwCgYDVQQDDAN0OTYwEqQQMA4xDDAKBgNV -BAMMA3Q5NzASpBAwDjEMMAoGA1UEAwwDdDk4MBKkEDAOMQwwCgYDVQQDDAN0OTkw -E6QRMA8xDTALBgNVBAMMBHQxMDAwE6QRMA8xDTALBgNVBAMMBHQxMDEwE6QRMA8x -DTALBgNVBAMMBHQxMDIwE6QRMA8xDTALBgNVBAMMBHQxMDMwE6QRMA8xDTALBgNV -BAMMBHQxMDQwE6QRMA8xDTALBgNVBAMMBHQxMDUwE6QRMA8xDTALBgNVBAMMBHQx -MDYwE6QRMA8xDTALBgNVBAMMBHQxMDcwE6QRMA8xDTALBgNVBAMMBHQxMDgwE6QR -MA8xDTALBgNVBAMMBHQxMDkwE6QRMA8xDTALBgNVBAMMBHQxMTAwE6QRMA8xDTAL -BgNVBAMMBHQxMTEwE6QRMA8xDTALBgNVBAMMBHQxMTIwE6QRMA8xDTALBgNVBAMM -BHQxMTMwE6QRMA8xDTALBgNVBAMMBHQxMTQwE6QRMA8xDTALBgNVBAMMBHQxMTUw -E6QRMA8xDTALBgNVBAMMBHQxMTYwE6QRMA8xDTALBgNVBAMMBHQxMTcwE6QRMA8x -DTALBgNVBAMMBHQxMTgwE6QRMA8xDTALBgNVBAMMBHQxMTkwE6QRMA8xDTALBgNV -BAMMBHQxMjAwE6QRMA8xDTALBgNVBAMMBHQxMjEwE6QRMA8xDTALBgNVBAMMBHQx -MjIwE6QRMA8xDTALBgNVBAMMBHQxMjMwE6QRMA8xDTALBgNVBAMMBHQxMjQwE6QR -MA8xDTALBgNVBAMMBHQxMjUwE6QRMA8xDTALBgNVBAMMBHQxMjYwE6QRMA8xDTAL -BgNVBAMMBHQxMjcwE6QRMA8xDTALBgNVBAMMBHQxMjgwE6QRMA8xDTALBgNVBAMM -BHQxMjkwE6QRMA8xDTALBgNVBAMMBHQxMzAwE6QRMA8xDTALBgNVBAMMBHQxMzEw -E6QRMA8xDTALBgNVBAMMBHQxMzIwE6QRMA8xDTALBgNVBAMMBHQxMzMwE6QRMA8x -DTALBgNVBAMMBHQxMzQwE6QRMA8xDTALBgNVBAMMBHQxMzUwE6QRMA8xDTALBgNV -BAMMBHQxMzYwE6QRMA8xDTALBgNVBAMMBHQxMzcwE6QRMA8xDTALBgNVBAMMBHQx -MzgwE6QRMA8xDTALBgNVBAMMBHQxMzkwE6QRMA8xDTALBgNVBAMMBHQxNDAwE6QR -MA8xDTALBgNVBAMMBHQxNDEwE6QRMA8xDTALBgNVBAMMBHQxNDIwE6QRMA8xDTAL -BgNVBAMMBHQxNDMwE6QRMA8xDTALBgNVBAMMBHQxNDQwE6QRMA8xDTALBgNVBAMM -BHQxNDUwE6QRMA8xDTALBgNVBAMMBHQxNDYwE6QRMA8xDTALBgNVBAMMBHQxNDcw -E6QRMA8xDTALBgNVBAMMBHQxNDgwE6QRMA8xDTALBgNVBAMMBHQxNDkwE6QRMA8x -DTALBgNVBAMMBHQxNTAwE6QRMA8xDTALBgNVBAMMBHQxNTEwE6QRMA8xDTALBgNV -BAMMBHQxNTIwE6QRMA8xDTALBgNVBAMMBHQxNTMwE6QRMA8xDTALBgNVBAMMBHQx -NTQwE6QRMA8xDTALBgNVBAMMBHQxNTUwE6QRMA8xDTALBgNVBAMMBHQxNTYwE6QR -MA8xDTALBgNVBAMMBHQxNTcwE6QRMA8xDTALBgNVBAMMBHQxNTgwE6QRMA8xDTAL -BgNVBAMMBHQxNTkwE6QRMA8xDTALBgNVBAMMBHQxNjAwE6QRMA8xDTALBgNVBAMM -BHQxNjEwE6QRMA8xDTALBgNVBAMMBHQxNjIwE6QRMA8xDTALBgNVBAMMBHQxNjMw -E6QRMA8xDTALBgNVBAMMBHQxNjQwE6QRMA8xDTALBgNVBAMMBHQxNjUwE6QRMA8x -DTALBgNVBAMMBHQxNjYwE6QRMA8xDTALBgNVBAMMBHQxNjcwE6QRMA8xDTALBgNV -BAMMBHQxNjgwE6QRMA8xDTALBgNVBAMMBHQxNjkwE6QRMA8xDTALBgNVBAMMBHQx -NzAwE6QRMA8xDTALBgNVBAMMBHQxNzGhgh2wMAmCB3gwLnRlc3QwCYIHeDEudGVz -dDAJggd4Mi50ZXN0MAmCB3gzLnRlc3QwCYIHeDQudGVzdDAJggd4NS50ZXN0MAmC -B3g2LnRlc3QwCYIHeDcudGVzdDAJggd4OC50ZXN0MAmCB3g5LnRlc3QwCoIIeDEw -LnRlc3QwCoIIeDExLnRlc3QwCoIIeDEyLnRlc3QwCoIIeDEzLnRlc3QwCoIIeDE0 -LnRlc3QwCoIIeDE1LnRlc3QwCoIIeDE2LnRlc3QwCoIIeDE3LnRlc3QwCoIIeDE4 -LnRlc3QwCoIIeDE5LnRlc3QwCoIIeDIwLnRlc3QwCoIIeDIxLnRlc3QwCoIIeDIy -LnRlc3QwCoIIeDIzLnRlc3QwCoIIeDI0LnRlc3QwCoIIeDI1LnRlc3QwCoIIeDI2 -LnRlc3QwCoIIeDI3LnRlc3QwCoIIeDI4LnRlc3QwCoIIeDI5LnRlc3QwCoIIeDMw -LnRlc3QwCoIIeDMxLnRlc3QwCoIIeDMyLnRlc3QwCoIIeDMzLnRlc3QwCoIIeDM0 -LnRlc3QwCoIIeDM1LnRlc3QwCoIIeDM2LnRlc3QwCoIIeDM3LnRlc3QwCoIIeDM4 -LnRlc3QwCoIIeDM5LnRlc3QwCoIIeDQwLnRlc3QwCoIIeDQxLnRlc3QwCoIIeDQy -LnRlc3QwCoIIeDQzLnRlc3QwCoIIeDQ0LnRlc3QwCoIIeDQ1LnRlc3QwCoIIeDQ2 -LnRlc3QwCoIIeDQ3LnRlc3QwCoIIeDQ4LnRlc3QwCoIIeDQ5LnRlc3QwCoIIeDUw -LnRlc3QwCoIIeDUxLnRlc3QwCoIIeDUyLnRlc3QwCoIIeDUzLnRlc3QwCoIIeDU0 -LnRlc3QwCoIIeDU1LnRlc3QwCoIIeDU2LnRlc3QwCoIIeDU3LnRlc3QwCoIIeDU4 -LnRlc3QwCoIIeDU5LnRlc3QwCoIIeDYwLnRlc3QwCoIIeDYxLnRlc3QwCoIIeDYy -LnRlc3QwCoIIeDYzLnRlc3QwCoIIeDY0LnRlc3QwCoIIeDY1LnRlc3QwCoIIeDY2 -LnRlc3QwCoIIeDY3LnRlc3QwCoIIeDY4LnRlc3QwCoIIeDY5LnRlc3QwCoIIeDcw -LnRlc3QwCoIIeDcxLnRlc3QwCoIIeDcyLnRlc3QwCoIIeDczLnRlc3QwCoIIeDc0 -LnRlc3QwCoIIeDc1LnRlc3QwCoIIeDc2LnRlc3QwCoIIeDc3LnRlc3QwCoIIeDc4 -LnRlc3QwCoIIeDc5LnRlc3QwCoIIeDgwLnRlc3QwCoIIeDgxLnRlc3QwCoIIeDgy -LnRlc3QwCoIIeDgzLnRlc3QwCoIIeDg0LnRlc3QwCoIIeDg1LnRlc3QwCoIIeDg2 -LnRlc3QwCoIIeDg3LnRlc3QwCoIIeDg4LnRlc3QwCoIIeDg5LnRlc3QwCoIIeDkw -LnRlc3QwCoIIeDkxLnRlc3QwCoIIeDkyLnRlc3QwCoIIeDkzLnRlc3QwCoIIeDk0 -LnRlc3QwCoIIeDk1LnRlc3QwCoIIeDk2LnRlc3QwCoIIeDk3LnRlc3QwCoIIeDk4 -LnRlc3QwCoIIeDk5LnRlc3QwC4IJeDEwMC50ZXN0MAuCCXgxMDEudGVzdDALggl4 -MTAyLnRlc3QwC4IJeDEwMy50ZXN0MAuCCXgxMDQudGVzdDALggl4MTA1LnRlc3Qw -C4IJeDEwNi50ZXN0MAuCCXgxMDcudGVzdDALggl4MTA4LnRlc3QwC4IJeDEwOS50 -ZXN0MAuCCXgxMTAudGVzdDALggl4MTExLnRlc3QwC4IJeDExMi50ZXN0MAuCCXgx -MTMudGVzdDALggl4MTE0LnRlc3QwC4IJeDExNS50ZXN0MAuCCXgxMTYudGVzdDAL -ggl4MTE3LnRlc3QwC4IJeDExOC50ZXN0MAuCCXgxMTkudGVzdDALggl4MTIwLnRl -c3QwC4IJeDEyMS50ZXN0MAuCCXgxMjIudGVzdDALggl4MTIzLnRlc3QwC4IJeDEy -NC50ZXN0MAuCCXgxMjUudGVzdDALggl4MTI2LnRlc3QwC4IJeDEyNy50ZXN0MAuC -CXgxMjgudGVzdDALggl4MTI5LnRlc3QwC4IJeDEzMC50ZXN0MAuCCXgxMzEudGVz -dDALggl4MTMyLnRlc3QwC4IJeDEzMy50ZXN0MAuCCXgxMzQudGVzdDALggl4MTM1 -LnRlc3QwC4IJeDEzNi50ZXN0MAuCCXgxMzcudGVzdDALggl4MTM4LnRlc3QwC4IJ -eDEzOS50ZXN0MAuCCXgxNDAudGVzdDALggl4MTQxLnRlc3QwC4IJeDE0Mi50ZXN0 -MAuCCXgxNDMudGVzdDALggl4MTQ0LnRlc3QwC4IJeDE0NS50ZXN0MAuCCXgxNDYu -dGVzdDALggl4MTQ3LnRlc3QwC4IJeDE0OC50ZXN0MAuCCXgxNDkudGVzdDALggl4 -MTUwLnRlc3QwC4IJeDE1MS50ZXN0MAuCCXgxNTIudGVzdDALggl4MTUzLnRlc3Qw -C4IJeDE1NC50ZXN0MAuCCXgxNTUudGVzdDALggl4MTU2LnRlc3QwC4IJeDE1Ny50 -ZXN0MAuCCXgxNTgudGVzdDALggl4MTU5LnRlc3QwC4IJeDE2MC50ZXN0MAuCCXgx -NjEudGVzdDALggl4MTYyLnRlc3QwC4IJeDE2My50ZXN0MAuCCXgxNjQudGVzdDAL -ggl4MTY1LnRlc3QwC4IJeDE2Ni50ZXN0MAuCCXgxNjcudGVzdDALggl4MTY4LnRl -c3QwC4IJeDE2OS50ZXN0MAqHCAsAAAD/////MAqHCAsAAAH/////MAqHCAsAAAL/ -////MAqHCAsAAAP/////MAqHCAsAAAT/////MAqHCAsAAAX/////MAqHCAsAAAb/ -////MAqHCAsAAAf/////MAqHCAsAAAj/////MAqHCAsAAAn/////MAqHCAsAAAr/ -////MAqHCAsAAAv/////MAqHCAsAAAz/////MAqHCAsAAA3/////MAqHCAsAAA7/ -////MAqHCAsAAA//////MAqHCAsAABD/////MAqHCAsAABH/////MAqHCAsAABL/ -////MAqHCAsAABP/////MAqHCAsAABT/////MAqHCAsAABX/////MAqHCAsAABb/ -////MAqHCAsAABf/////MAqHCAsAABj/////MAqHCAsAABn/////MAqHCAsAABr/ -////MAqHCAsAABv/////MAqHCAsAABz/////MAqHCAsAAB3/////MAqHCAsAAB7/ -////MAqHCAsAAB//////MAqHCAsAACD/////MAqHCAsAACH/////MAqHCAsAACL/ -////MAqHCAsAACP/////MAqHCAsAACT/////MAqHCAsAACX/////MAqHCAsAACb/ -////MAqHCAsAACf/////MAqHCAsAACj/////MAqHCAsAACn/////MAqHCAsAACr/ -////MAqHCAsAACv/////MAqHCAsAACz/////MAqHCAsAAC3/////MAqHCAsAAC7/ -////MAqHCAsAAC//////MAqHCAsAADD/////MAqHCAsAADH/////MAqHCAsAADL/ -////MAqHCAsAADP/////MAqHCAsAADT/////MAqHCAsAADX/////MAqHCAsAADb/ -////MAqHCAsAADf/////MAqHCAsAADj/////MAqHCAsAADn/////MAqHCAsAADr/ -////MAqHCAsAADv/////MAqHCAsAADz/////MAqHCAsAAD3/////MAqHCAsAAD7/ -////MAqHCAsAAD//////MAqHCAsAAED/////MAqHCAsAAEH/////MAqHCAsAAEL/ -////MAqHCAsAAEP/////MAqHCAsAAET/////MAqHCAsAAEX/////MAqHCAsAAEb/ -////MAqHCAsAAEf/////MAqHCAsAAEj/////MAqHCAsAAEn/////MAqHCAsAAEr/ -////MAqHCAsAAEv/////MAqHCAsAAEz/////MAqHCAsAAE3/////MAqHCAsAAE7/ -////MAqHCAsAAE//////MAqHCAsAAFD/////MAqHCAsAAFH/////MAqHCAsAAFL/ -////MAqHCAsAAFP/////MAqHCAsAAFT/////MAqHCAsAAFX/////MAqHCAsAAFb/ -////MAqHCAsAAFf/////MAqHCAsAAFj/////MAqHCAsAAFn/////MAqHCAsAAFr/ -////MAqHCAsAAFv/////MAqHCAsAAFz/////MAqHCAsAAF3/////MAqHCAsAAF7/ -////MAqHCAsAAF//////MAqHCAsAAGD/////MAqHCAsAAGH/////MAqHCAsAAGL/ -////MAqHCAsAAGP/////MAqHCAsAAGT/////MAqHCAsAAGX/////MAqHCAsAAGb/ -////MAqHCAsAAGf/////MAqHCAsAAGj/////MAqHCAsAAGn/////MAqHCAsAAGr/ -////MAqHCAsAAGv/////MAqHCAsAAGz/////MAqHCAsAAG3/////MAqHCAsAAG7/ -////MAqHCAsAAG//////MAqHCAsAAHD/////MAqHCAsAAHH/////MAqHCAsAAHL/ -////MAqHCAsAAHP/////MAqHCAsAAHT/////MAqHCAsAAHX/////MAqHCAsAAHb/ -////MAqHCAsAAHf/////MAqHCAsAAHj/////MAqHCAsAAHn/////MAqHCAsAAHr/ -////MAqHCAsAAHv/////MAqHCAsAAHz/////MAqHCAsAAH3/////MAqHCAsAAH7/ -////MAqHCAsAAH//////MAqHCAsAAID/////MAqHCAsAAIH/////MAqHCAsAAIL/ -////MAqHCAsAAIP/////MAqHCAsAAIT/////MAqHCAsAAIX/////MAqHCAsAAIb/ -////MAqHCAsAAIf/////MAqHCAsAAIj/////MAqHCAsAAIn/////MAqHCAsAAIr/ -////MAqHCAsAAIv/////MAqHCAsAAIz/////MAqHCAsAAI3/////MAqHCAsAAI7/ -////MAqHCAsAAI//////MAqHCAsAAJD/////MAqHCAsAAJH/////MAqHCAsAAJL/ -////MAqHCAsAAJP/////MAqHCAsAAJT/////MAqHCAsAAJX/////MAqHCAsAAJb/ -////MAqHCAsAAJf/////MAqHCAsAAJj/////MAqHCAsAAJn/////MAqHCAsAAJr/ -////MAqHCAsAAJv/////MAqHCAsAAJz/////MAqHCAsAAJ3/////MAqHCAsAAJ7/ -////MAqHCAsAAJ//////MAqHCAsAAKD/////MAqHCAsAAKH/////MAqHCAsAAKL/ -////MAqHCAsAAKP/////MAqHCAsAAKT/////MAqHCAsAAKX/////MAqHCAsAAKb/ -////MAqHCAsAAKf/////MAqHCAsAAKj/////MAqHCAsAAKn/////MBGkDzANMQsw -CQYDVQQDDAJ4MDARpA8wDTELMAkGA1UEAwwCeDEwEaQPMA0xCzAJBgNVBAMMAngy -MBGkDzANMQswCQYDVQQDDAJ4MzARpA8wDTELMAkGA1UEAwwCeDQwEaQPMA0xCzAJ -BgNVBAMMAng1MBGkDzANMQswCQYDVQQDDAJ4NjARpA8wDTELMAkGA1UEAwwCeDcw -EaQPMA0xCzAJBgNVBAMMAng4MBGkDzANMQswCQYDVQQDDAJ4OTASpBAwDjEMMAoG -A1UEAwwDeDEwMBKkEDAOMQwwCgYDVQQDDAN4MTEwEqQQMA4xDDAKBgNVBAMMA3gx -MjASpBAwDjEMMAoGA1UEAwwDeDEzMBKkEDAOMQwwCgYDVQQDDAN4MTQwEqQQMA4x -DDAKBgNVBAMMA3gxNTASpBAwDjEMMAoGA1UEAwwDeDE2MBKkEDAOMQwwCgYDVQQD -DAN4MTcwEqQQMA4xDDAKBgNVBAMMA3gxODASpBAwDjEMMAoGA1UEAwwDeDE5MBKk -EDAOMQwwCgYDVQQDDAN4MjAwEqQQMA4xDDAKBgNVBAMMA3gyMTASpBAwDjEMMAoG -A1UEAwwDeDIyMBKkEDAOMQwwCgYDVQQDDAN4MjMwEqQQMA4xDDAKBgNVBAMMA3gy -NDASpBAwDjEMMAoGA1UEAwwDeDI1MBKkEDAOMQwwCgYDVQQDDAN4MjYwEqQQMA4x -DDAKBgNVBAMMA3gyNzASpBAwDjEMMAoGA1UEAwwDeDI4MBKkEDAOMQwwCgYDVQQD -DAN4MjkwEqQQMA4xDDAKBgNVBAMMA3gzMDASpBAwDjEMMAoGA1UEAwwDeDMxMBKk -EDAOMQwwCgYDVQQDDAN4MzIwEqQQMA4xDDAKBgNVBAMMA3gzMzASpBAwDjEMMAoG -A1UEAwwDeDM0MBKkEDAOMQwwCgYDVQQDDAN4MzUwEqQQMA4xDDAKBgNVBAMMA3gz -NjASpBAwDjEMMAoGA1UEAwwDeDM3MBKkEDAOMQwwCgYDVQQDDAN4MzgwEqQQMA4x -DDAKBgNVBAMMA3gzOTASpBAwDjEMMAoGA1UEAwwDeDQwMBKkEDAOMQwwCgYDVQQD -DAN4NDEwEqQQMA4xDDAKBgNVBAMMA3g0MjASpBAwDjEMMAoGA1UEAwwDeDQzMBKk -EDAOMQwwCgYDVQQDDAN4NDQwEqQQMA4xDDAKBgNVBAMMA3g0NTASpBAwDjEMMAoG -A1UEAwwDeDQ2MBKkEDAOMQwwCgYDVQQDDAN4NDcwEqQQMA4xDDAKBgNVBAMMA3g0 -ODASpBAwDjEMMAoGA1UEAwwDeDQ5MBKkEDAOMQwwCgYDVQQDDAN4NTAwEqQQMA4x -DDAKBgNVBAMMA3g1MTASpBAwDjEMMAoGA1UEAwwDeDUyMBKkEDAOMQwwCgYDVQQD -DAN4NTMwEqQQMA4xDDAKBgNVBAMMA3g1NDASpBAwDjEMMAoGA1UEAwwDeDU1MBKk -EDAOMQwwCgYDVQQDDAN4NTYwEqQQMA4xDDAKBgNVBAMMA3g1NzASpBAwDjEMMAoG -A1UEAwwDeDU4MBKkEDAOMQwwCgYDVQQDDAN4NTkwEqQQMA4xDDAKBgNVBAMMA3g2 -MDASpBAwDjEMMAoGA1UEAwwDeDYxMBKkEDAOMQwwCgYDVQQDDAN4NjIwEqQQMA4x -DDAKBgNVBAMMA3g2MzASpBAwDjEMMAoGA1UEAwwDeDY0MBKkEDAOMQwwCgYDVQQD -DAN4NjUwEqQQMA4xDDAKBgNVBAMMA3g2NjASpBAwDjEMMAoGA1UEAwwDeDY3MBKk -EDAOMQwwCgYDVQQDDAN4NjgwEqQQMA4xDDAKBgNVBAMMA3g2OTASpBAwDjEMMAoG -A1UEAwwDeDcwMBKkEDAOMQwwCgYDVQQDDAN4NzEwEqQQMA4xDDAKBgNVBAMMA3g3 -MjASpBAwDjEMMAoGA1UEAwwDeDczMBKkEDAOMQwwCgYDVQQDDAN4NzQwEqQQMA4x -DDAKBgNVBAMMA3g3NTASpBAwDjEMMAoGA1UEAwwDeDc2MBKkEDAOMQwwCgYDVQQD -DAN4NzcwEqQQMA4xDDAKBgNVBAMMA3g3ODASpBAwDjEMMAoGA1UEAwwDeDc5MBKk -EDAOMQwwCgYDVQQDDAN4ODAwEqQQMA4xDDAKBgNVBAMMA3g4MTASpBAwDjEMMAoG -A1UEAwwDeDgyMBKkEDAOMQwwCgYDVQQDDAN4ODMwEqQQMA4xDDAKBgNVBAMMA3g4 -NDASpBAwDjEMMAoGA1UEAwwDeDg1MBKkEDAOMQwwCgYDVQQDDAN4ODYwEqQQMA4x -DDAKBgNVBAMMA3g4NzASpBAwDjEMMAoGA1UEAwwDeDg4MBKkEDAOMQwwCgYDVQQD -DAN4ODkwEqQQMA4xDDAKBgNVBAMMA3g5MDASpBAwDjEMMAoGA1UEAwwDeDkxMBKk -EDAOMQwwCgYDVQQDDAN4OTIwEqQQMA4xDDAKBgNVBAMMA3g5MzASpBAwDjEMMAoG -A1UEAwwDeDk0MBKkEDAOMQwwCgYDVQQDDAN4OTUwEqQQMA4xDDAKBgNVBAMMA3g5 -NjASpBAwDjEMMAoGA1UEAwwDeDk3MBKkEDAOMQwwCgYDVQQDDAN4OTgwEqQQMA4x -DDAKBgNVBAMMA3g5OTATpBEwDzENMAsGA1UEAwwEeDEwMDATpBEwDzENMAsGA1UE -AwwEeDEwMTATpBEwDzENMAsGA1UEAwwEeDEwMjATpBEwDzENMAsGA1UEAwwEeDEw -MzATpBEwDzENMAsGA1UEAwwEeDEwNDATpBEwDzENMAsGA1UEAwwEeDEwNTATpBEw -DzENMAsGA1UEAwwEeDEwNjATpBEwDzENMAsGA1UEAwwEeDEwNzATpBEwDzENMAsG -A1UEAwwEeDEwODATpBEwDzENMAsGA1UEAwwEeDEwOTATpBEwDzENMAsGA1UEAwwE -eDExMDATpBEwDzENMAsGA1UEAwwEeDExMTATpBEwDzENMAsGA1UEAwwEeDExMjAT -pBEwDzENMAsGA1UEAwwEeDExMzATpBEwDzENMAsGA1UEAwwEeDExNDATpBEwDzEN -MAsGA1UEAwwEeDExNTATpBEwDzENMAsGA1UEAwwEeDExNjATpBEwDzENMAsGA1UE -AwwEeDExNzATpBEwDzENMAsGA1UEAwwEeDExODATpBEwDzENMAsGA1UEAwwEeDEx -OTATpBEwDzENMAsGA1UEAwwEeDEyMDATpBEwDzENMAsGA1UEAwwEeDEyMTATpBEw -DzENMAsGA1UEAwwEeDEyMjATpBEwDzENMAsGA1UEAwwEeDEyMzATpBEwDzENMAsG -A1UEAwwEeDEyNDATpBEwDzENMAsGA1UEAwwEeDEyNTATpBEwDzENMAsGA1UEAwwE -eDEyNjATpBEwDzENMAsGA1UEAwwEeDEyNzATpBEwDzENMAsGA1UEAwwEeDEyODAT -pBEwDzENMAsGA1UEAwwEeDEyOTATpBEwDzENMAsGA1UEAwwEeDEzMDATpBEwDzEN -MAsGA1UEAwwEeDEzMTATpBEwDzENMAsGA1UEAwwEeDEzMjATpBEwDzENMAsGA1UE -AwwEeDEzMzATpBEwDzENMAsGA1UEAwwEeDEzNDATpBEwDzENMAsGA1UEAwwEeDEz -NTATpBEwDzENMAsGA1UEAwwEeDEzNjATpBEwDzENMAsGA1UEAwwEeDEzNzATpBEw -DzENMAsGA1UEAwwEeDEzODATpBEwDzENMAsGA1UEAwwEeDEzOTATpBEwDzENMAsG -A1UEAwwEeDE0MDATpBEwDzENMAsGA1UEAwwEeDE0MTATpBEwDzENMAsGA1UEAwwE -eDE0MjATpBEwDzENMAsGA1UEAwwEeDE0MzATpBEwDzENMAsGA1UEAwwEeDE0NDAT -pBEwDzENMAsGA1UEAwwEeDE0NTATpBEwDzENMAsGA1UEAwwEeDE0NjATpBEwDzEN -MAsGA1UEAwwEeDE0NzATpBEwDzENMAsGA1UEAwwEeDE0ODATpBEwDzENMAsGA1UE -AwwEeDE0OTATpBEwDzENMAsGA1UEAwwEeDE1MDATpBEwDzENMAsGA1UEAwwEeDE1 -MTATpBEwDzENMAsGA1UEAwwEeDE1MjATpBEwDzENMAsGA1UEAwwEeDE1MzATpBEw -DzENMAsGA1UEAwwEeDE1NDATpBEwDzENMAsGA1UEAwwEeDE1NTATpBEwDzENMAsG -A1UEAwwEeDE1NjATpBEwDzENMAsGA1UEAwwEeDE1NzATpBEwDzENMAsGA1UEAwwE -eDE1ODATpBEwDzENMAsGA1UEAwwEeDE1OTATpBEwDzENMAsGA1UEAwwEeDE2MDAT -pBEwDzENMAsGA1UEAwwEeDE2MTATpBEwDzENMAsGA1UEAwwEeDE2MjATpBEwDzEN -MAsGA1UEAwwEeDE2MzATpBEwDzENMAsGA1UEAwwEeDE2NDATpBEwDzENMAsGA1UE -AwwEeDE2NTATpBEwDzENMAsGA1UEAwwEeDE2NjATpBEwDzENMAsGA1UEAwwEeDE2 -NzATpBEwDzENMAsGA1UEAwwEeDE2ODATpBEwDzENMAsGA1UEAwwEeDE2OTANBgkq -hkiG9w0BAQsFAAOCAQEAn8uDe+I8Vycl7II/MML/ElFxP9WUBRpbWESAtIke4IlF -5eNyi8TYylSj2/Kj/RYAwYYh4u3jbJR+Ca7tNhzjl289CrE5eHqzuc7DaO5gJ3zL -azM8X6JqmdQIKukhBOoS2ShTH8yvq0GjbjT6VlZE1cUQvfQ3O0WUdBmySc8PmJR1 -aOxOb7BBrPc4Ah3dHxT2tcYMorKnB3WZVE7+aAwdrqCQ19VkYBX/x/0x2qtQQ0S3 -zD/S7uQDPqCdjoFIIYY0Zie+snMBK2XuUTtXP3ZRrYL8fsnOiTgEX8n2QWIyYLK5 -0f5OeNaleVZ7V+QdQnofqvew0IK61PG7+Zzsyuf3CQ== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F8.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F8.pem deleted file mode 100644 index 186a4023e2..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F8.pem +++ /dev/null @@ -1,1394 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:f8 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Excluded: - DNS:x0.test - DNS:x1.test - DNS:x2.test - DNS:x3.test - DNS:x4.test - DNS:x5.test - DNS:x6.test - DNS:x7.test - DNS:x8.test - DNS:x9.test - DNS:x10.test - DNS:x11.test - DNS:x12.test - DNS:x13.test - DNS:x14.test - DNS:x15.test - DNS:x16.test - DNS:x17.test - DNS:x18.test - DNS:x19.test - DNS:x20.test - DNS:x21.test - DNS:x22.test - DNS:x23.test - DNS:x24.test - DNS:x25.test - DNS:x26.test - DNS:x27.test - DNS:x28.test - DNS:x29.test - DNS:x30.test - DNS:x31.test - DNS:x32.test - DNS:x33.test - DNS:x34.test - DNS:x35.test - DNS:x36.test - DNS:x37.test - DNS:x38.test - DNS:x39.test - DNS:x40.test - DNS:x41.test - DNS:x42.test - DNS:x43.test - DNS:x44.test - DNS:x45.test - DNS:x46.test - DNS:x47.test - DNS:x48.test - DNS:x49.test - DNS:x50.test - DNS:x51.test - DNS:x52.test - DNS:x53.test - DNS:x54.test - DNS:x55.test - DNS:x56.test - DNS:x57.test - DNS:x58.test - DNS:x59.test - DNS:x60.test - DNS:x61.test - DNS:x62.test - DNS:x63.test - DNS:x64.test - DNS:x65.test - DNS:x66.test - DNS:x67.test - DNS:x68.test - DNS:x69.test - DNS:x70.test - DNS:x71.test - DNS:x72.test - DNS:x73.test - DNS:x74.test - DNS:x75.test - DNS:x76.test - DNS:x77.test - DNS:x78.test - DNS:x79.test - DNS:x80.test - DNS:x81.test - DNS:x82.test - DNS:x83.test - DNS:x84.test - DNS:x85.test - DNS:x86.test - DNS:x87.test - DNS:x88.test - DNS:x89.test - DNS:x90.test - DNS:x91.test - DNS:x92.test - DNS:x93.test - DNS:x94.test - DNS:x95.test - DNS:x96.test - DNS:x97.test - DNS:x98.test - DNS:x99.test - DNS:x100.test - DNS:x101.test - DNS:x102.test - DNS:x103.test - DNS:x104.test - DNS:x105.test - DNS:x106.test - DNS:x107.test - DNS:x108.test - DNS:x109.test - DNS:x110.test - DNS:x111.test - DNS:x112.test - DNS:x113.test - DNS:x114.test - DNS:x115.test - DNS:x116.test - DNS:x117.test - DNS:x118.test - DNS:x119.test - DNS:x120.test - DNS:x121.test - DNS:x122.test - DNS:x123.test - DNS:x124.test - DNS:x125.test - DNS:x126.test - DNS:x127.test - DNS:x128.test - DNS:x129.test - DNS:x130.test - DNS:x131.test - DNS:x132.test - DNS:x133.test - DNS:x134.test - DNS:x135.test - DNS:x136.test - DNS:x137.test - DNS:x138.test - DNS:x139.test - DNS:x140.test - DNS:x141.test - DNS:x142.test - DNS:x143.test - DNS:x144.test - DNS:x145.test - DNS:x146.test - DNS:x147.test - DNS:x148.test - DNS:x149.test - DNS:x150.test - DNS:x151.test - DNS:x152.test - DNS:x153.test - DNS:x154.test - DNS:x155.test - DNS:x156.test - DNS:x157.test - DNS:x158.test - DNS:x159.test - DNS:x160.test - DNS:x161.test - DNS:x162.test - DNS:x163.test - DNS:x164.test - DNS:x165.test - DNS:x166.test - DNS:x167.test - DNS:x168.test - DNS:x169.test - DNS:x170.test - DNS:x171.test - DNS:x172.test - DNS:x173.test - DNS:x174.test - DNS:x175.test - DNS:x176.test - DNS:x177.test - DNS:x178.test - DNS:x179.test - DNS:x180.test - DNS:x181.test - DNS:x182.test - DNS:x183.test - DNS:x184.test - DNS:x185.test - DNS:x186.test - DNS:x187.test - DNS:x188.test - DNS:x189.test - DNS:x190.test - DNS:x191.test - DNS:x192.test - DNS:x193.test - DNS:x194.test - DNS:x195.test - DNS:x196.test - DNS:x197.test - DNS:x198.test - DNS:x199.test - DNS:x200.test - DNS:x201.test - DNS:x202.test - DNS:x203.test - DNS:x204.test - DNS:x205.test - DNS:x206.test - DNS:x207.test - DNS:x208.test - DNS:x209.test - DNS:x210.test - DNS:x211.test - DNS:x212.test - DNS:x213.test - DNS:x214.test - DNS:x215.test - DNS:x216.test - DNS:x217.test - DNS:x218.test - DNS:x219.test - DNS:x220.test - DNS:x221.test - DNS:x222.test - DNS:x223.test - DNS:x224.test - DNS:x225.test - DNS:x226.test - DNS:x227.test - DNS:x228.test - DNS:x229.test - DNS:x230.test - DNS:x231.test - DNS:x232.test - DNS:x233.test - DNS:x234.test - DNS:x235.test - DNS:x236.test - DNS:x237.test - DNS:x238.test - DNS:x239.test - DNS:x240.test - DNS:x241.test - DNS:x242.test - DNS:x243.test - DNS:x244.test - DNS:x245.test - DNS:x246.test - DNS:x247.test - DNS:x248.test - DNS:x249.test - DNS:x250.test - DNS:x251.test - DNS:x252.test - DNS:x253.test - DNS:x254.test - DNS:x255.test - DNS:x256.test - DNS:x257.test - DNS:x258.test - DNS:x259.test - DNS:x260.test - DNS:x261.test - DNS:x262.test - DNS:x263.test - DNS:x264.test - DNS:x265.test - DNS:x266.test - DNS:x267.test - DNS:x268.test - DNS:x269.test - DNS:x270.test - DNS:x271.test - DNS:x272.test - DNS:x273.test - DNS:x274.test - DNS:x275.test - DNS:x276.test - DNS:x277.test - DNS:x278.test - DNS:x279.test - DNS:x280.test - DNS:x281.test - DNS:x282.test - DNS:x283.test - DNS:x284.test - DNS:x285.test - DNS:x286.test - DNS:x287.test - DNS:x288.test - DNS:x289.test - DNS:x290.test - DNS:x291.test - DNS:x292.test - DNS:x293.test - DNS:x294.test - DNS:x295.test - DNS:x296.test - DNS:x297.test - DNS:x298.test - DNS:x299.test - DNS:x300.test - DNS:x301.test - DNS:x302.test - DNS:x303.test - DNS:x304.test - DNS:x305.test - DNS:x306.test - DNS:x307.test - DNS:x308.test - DNS:x309.test - DNS:x310.test - DNS:x311.test - DNS:x312.test - DNS:x313.test - DNS:x314.test - DNS:x315.test - DNS:x316.test - DNS:x317.test - DNS:x318.test - DNS:x319.test - DNS:x320.test - DNS:x321.test - DNS:x322.test - DNS:x323.test - DNS:x324.test - DNS:x325.test - DNS:x326.test - DNS:x327.test - DNS:x328.test - DNS:x329.test - DNS:x330.test - DNS:x331.test - DNS:x332.test - DNS:x333.test - DNS:x334.test - DNS:x335.test - DNS:x336.test - DNS:x337.test - DNS:x338.test - DNS:x339.test - DNS:x340.test - DNS:x341.test - DNS:x342.test - DNS:x343.test - DNS:x344.test - DNS:x345.test - DNS:x346.test - DNS:x347.test - DNS:x348.test - DNS:x349.test - DNS:x350.test - DNS:x351.test - DNS:x352.test - DNS:x353.test - DNS:x354.test - DNS:x355.test - DNS:x356.test - DNS:x357.test - DNS:x358.test - DNS:x359.test - DNS:x360.test - DNS:x361.test - DNS:x362.test - DNS:x363.test - DNS:x364.test - DNS:x365.test - DNS:x366.test - DNS:x367.test - DNS:x368.test - DNS:x369.test - DNS:x370.test - DNS:x371.test - DNS:x372.test - DNS:x373.test - DNS:x374.test - DNS:x375.test - DNS:x376.test - DNS:x377.test - DNS:x378.test - DNS:x379.test - DNS:x380.test - DNS:x381.test - DNS:x382.test - DNS:x383.test - DNS:x384.test - DNS:x385.test - DNS:x386.test - DNS:x387.test - DNS:x388.test - DNS:x389.test - DNS:x390.test - DNS:x391.test - DNS:x392.test - DNS:x393.test - DNS:x394.test - DNS:x395.test - DNS:x396.test - DNS:x397.test - DNS:x398.test - DNS:x399.test - DNS:x400.test - DNS:x401.test - DNS:x402.test - DNS:x403.test - DNS:x404.test - DNS:x405.test - DNS:x406.test - DNS:x407.test - DNS:x408.test - DNS:x409.test - DNS:x410.test - DNS:x411.test - DNS:x412.test - DNS:x413.test - DNS:x414.test - DNS:x415.test - DNS:x416.test - DNS:x417.test - DNS:x418.test - DNS:x419.test - DNS:x420.test - DNS:x421.test - DNS:x422.test - DNS:x423.test - DNS:x424.test - DNS:x425.test - DNS:x426.test - DNS:x427.test - DNS:x428.test - DNS:x429.test - DNS:x430.test - DNS:x431.test - DNS:x432.test - DNS:x433.test - DNS:x434.test - DNS:x435.test - DNS:x436.test - DNS:x437.test - DNS:x438.test - DNS:x439.test - DNS:x440.test - DNS:x441.test - DNS:x442.test - DNS:x443.test - DNS:x444.test - DNS:x445.test - DNS:x446.test - DNS:x447.test - DNS:x448.test - DNS:x449.test - DNS:x450.test - DNS:x451.test - DNS:x452.test - DNS:x453.test - DNS:x454.test - DNS:x455.test - DNS:x456.test - DNS:x457.test - DNS:x458.test - DNS:x459.test - DNS:x460.test - DNS:x461.test - DNS:x462.test - DNS:x463.test - DNS:x464.test - DNS:x465.test - DNS:x466.test - DNS:x467.test - DNS:x468.test - DNS:x469.test - DNS:x470.test - DNS:x471.test - DNS:x472.test - DNS:x473.test - DNS:x474.test - DNS:x475.test - DNS:x476.test - DNS:x477.test - DNS:x478.test - DNS:x479.test - DNS:x480.test - DNS:x481.test - DNS:x482.test - DNS:x483.test - DNS:x484.test - DNS:x485.test - DNS:x486.test - DNS:x487.test - DNS:x488.test - DNS:x489.test - DNS:x490.test - DNS:x491.test - DNS:x492.test - DNS:x493.test - DNS:x494.test - DNS:x495.test - DNS:x496.test - DNS:x497.test - DNS:x498.test - DNS:x499.test - DNS:x500.test - DNS:x501.test - DNS:x502.test - DNS:x503.test - DNS:x504.test - DNS:x505.test - DNS:x506.test - DNS:x507.test - DNS:x508.test - DNS:x509.test - DNS:x510.test - DNS:x511.test - DNS:x512.test - DNS:x513.test - DNS:x514.test - DNS:x515.test - DNS:x516.test - DNS:x517.test - DNS:x518.test - DNS:x519.test - DNS:x520.test - DNS:x521.test - DNS:x522.test - DNS:x523.test - DNS:x524.test - DNS:x525.test - DNS:x526.test - DNS:x527.test - DNS:x528.test - DNS:x529.test - DNS:x530.test - DNS:x531.test - DNS:x532.test - DNS:x533.test - DNS:x534.test - DNS:x535.test - DNS:x536.test - DNS:x537.test - DNS:x538.test - DNS:x539.test - DNS:x540.test - DNS:x541.test - DNS:x542.test - DNS:x543.test - DNS:x544.test - DNS:x545.test - DNS:x546.test - DNS:x547.test - DNS:x548.test - DNS:x549.test - DNS:x550.test - DNS:x551.test - DNS:x552.test - DNS:x553.test - DNS:x554.test - DNS:x555.test - DNS:x556.test - DNS:x557.test - DNS:x558.test - DNS:x559.test - DNS:x560.test - DNS:x561.test - DNS:x562.test - DNS:x563.test - DNS:x564.test - DNS:x565.test - DNS:x566.test - DNS:x567.test - DNS:x568.test - DNS:x569.test - DNS:x570.test - DNS:x571.test - DNS:x572.test - DNS:x573.test - DNS:x574.test - DNS:x575.test - DNS:x576.test - DNS:x577.test - DNS:x578.test - DNS:x579.test - DNS:x580.test - DNS:x581.test - DNS:x582.test - DNS:x583.test - DNS:x584.test - DNS:x585.test - DNS:x586.test - DNS:x587.test - DNS:x588.test - DNS:x589.test - DNS:x590.test - DNS:x591.test - DNS:x592.test - DNS:x593.test - DNS:x594.test - DNS:x595.test - DNS:x596.test - DNS:x597.test - DNS:x598.test - DNS:x599.test - DNS:x600.test - DNS:x601.test - DNS:x602.test - DNS:x603.test - DNS:x604.test - DNS:x605.test - DNS:x606.test - DNS:x607.test - DNS:x608.test - DNS:x609.test - DNS:x610.test - DNS:x611.test - DNS:x612.test - DNS:x613.test - DNS:x614.test - DNS:x615.test - DNS:x616.test - DNS:x617.test - DNS:x618.test - DNS:x619.test - DNS:x620.test - DNS:x621.test - DNS:x622.test - DNS:x623.test - DNS:x624.test - DNS:x625.test - DNS:x626.test - DNS:x627.test - DNS:x628.test - DNS:x629.test - DNS:x630.test - DNS:x631.test - DNS:x632.test - DNS:x633.test - DNS:x634.test - DNS:x635.test - DNS:x636.test - DNS:x637.test - DNS:x638.test - DNS:x639.test - DNS:x640.test - DNS:x641.test - DNS:x642.test - DNS:x643.test - DNS:x644.test - DNS:x645.test - DNS:x646.test - DNS:x647.test - DNS:x648.test - DNS:x649.test - DNS:x650.test - DNS:x651.test - DNS:x652.test - DNS:x653.test - DNS:x654.test - DNS:x655.test - DNS:x656.test - DNS:x657.test - DNS:x658.test - DNS:x659.test - DNS:x660.test - DNS:x661.test - DNS:x662.test - DNS:x663.test - DNS:x664.test - DNS:x665.test - DNS:x666.test - DNS:x667.test - DNS:x668.test - DNS:x669.test - DNS:x670.test - DNS:x671.test - DNS:x672.test - DNS:x673.test - DNS:x674.test - DNS:x675.test - DNS:x676.test - DNS:x677.test - DNS:x678.test - DNS:x679.test - DNS:x680.test - DNS:x681.test - DNS:x682.test - DNS:x683.test - DNS:x684.test - DNS:x685.test - DNS:x686.test - DNS:x687.test - DNS:x688.test - DNS:x689.test - DNS:x690.test - DNS:x691.test - DNS:x692.test - DNS:x693.test - DNS:x694.test - DNS:x695.test - DNS:x696.test - DNS:x697.test - DNS:x698.test - DNS:x699.test - DNS:x700.test - DNS:x701.test - DNS:x702.test - DNS:x703.test - DNS:x704.test - DNS:x705.test - DNS:x706.test - DNS:x707.test - DNS:x708.test - DNS:x709.test - DNS:x710.test - DNS:x711.test - DNS:x712.test - DNS:x713.test - DNS:x714.test - DNS:x715.test - DNS:x716.test - DNS:x717.test - DNS:x718.test - DNS:x719.test - DNS:x720.test - DNS:x721.test - DNS:x722.test - DNS:x723.test - DNS:x724.test - DNS:x725.test - DNS:x726.test - DNS:x727.test - DNS:x728.test - DNS:x729.test - DNS:x730.test - DNS:x731.test - DNS:x732.test - DNS:x733.test - DNS:x734.test - DNS:x735.test - DNS:x736.test - DNS:x737.test - DNS:x738.test - DNS:x739.test - DNS:x740.test - DNS:x741.test - DNS:x742.test - DNS:x743.test - DNS:x744.test - DNS:x745.test - DNS:x746.test - DNS:x747.test - DNS:x748.test - DNS:x749.test - DNS:x750.test - DNS:x751.test - DNS:x752.test - DNS:x753.test - DNS:x754.test - DNS:x755.test - DNS:x756.test - DNS:x757.test - DNS:x758.test - DNS:x759.test - DNS:x760.test - DNS:x761.test - DNS:x762.test - DNS:x763.test - DNS:x764.test - DNS:x765.test - DNS:x766.test - DNS:x767.test - DNS:x768.test - DNS:x769.test - DNS:x770.test - DNS:x771.test - DNS:x772.test - DNS:x773.test - DNS:x774.test - DNS:x775.test - DNS:x776.test - DNS:x777.test - DNS:x778.test - DNS:x779.test - DNS:x780.test - DNS:x781.test - DNS:x782.test - DNS:x783.test - DNS:x784.test - DNS:x785.test - DNS:x786.test - DNS:x787.test - DNS:x788.test - DNS:x789.test - DNS:x790.test - DNS:x791.test - DNS:x792.test - DNS:x793.test - DNS:x794.test - DNS:x795.test - DNS:x796.test - DNS:x797.test - DNS:x798.test - DNS:x799.test - DNS:x800.test - DNS:x801.test - DNS:x802.test - DNS:x803.test - DNS:x804.test - DNS:x805.test - DNS:x806.test - DNS:x807.test - DNS:x808.test - DNS:x809.test - DNS:x810.test - DNS:x811.test - DNS:x812.test - DNS:x813.test - DNS:x814.test - DNS:x815.test - DNS:x816.test - DNS:x817.test - DNS:x818.test - DNS:x819.test - DNS:x820.test - DNS:x821.test - DNS:x822.test - DNS:x823.test - DNS:x824.test - DNS:x825.test - DNS:x826.test - DNS:x827.test - DNS:x828.test - DNS:x829.test - DNS:x830.test - DNS:x831.test - DNS:x832.test - DNS:x833.test - DNS:x834.test - DNS:x835.test - DNS:x836.test - DNS:x837.test - DNS:x838.test - DNS:x839.test - DNS:x840.test - DNS:x841.test - DNS:x842.test - DNS:x843.test - DNS:x844.test - DNS:x845.test - DNS:x846.test - DNS:x847.test - DNS:x848.test - DNS:x849.test - DNS:x850.test - DNS:x851.test - DNS:x852.test - DNS:x853.test - DNS:x854.test - DNS:x855.test - DNS:x856.test - DNS:x857.test - DNS:x858.test - DNS:x859.test - DNS:x860.test - DNS:x861.test - DNS:x862.test - DNS:x863.test - DNS:x864.test - DNS:x865.test - DNS:x866.test - DNS:x867.test - DNS:x868.test - DNS:x869.test - DNS:x870.test - DNS:x871.test - DNS:x872.test - DNS:x873.test - DNS:x874.test - DNS:x875.test - DNS:x876.test - DNS:x877.test - DNS:x878.test - DNS:x879.test - DNS:x880.test - DNS:x881.test - DNS:x882.test - DNS:x883.test - DNS:x884.test - DNS:x885.test - DNS:x886.test - DNS:x887.test - DNS:x888.test - DNS:x889.test - DNS:x890.test - DNS:x891.test - DNS:x892.test - DNS:x893.test - DNS:x894.test - DNS:x895.test - DNS:x896.test - DNS:x897.test - DNS:x898.test - DNS:x899.test - DNS:x900.test - DNS:x901.test - DNS:x902.test - DNS:x903.test - DNS:x904.test - DNS:x905.test - DNS:x906.test - DNS:x907.test - DNS:x908.test - DNS:x909.test - DNS:x910.test - DNS:x911.test - DNS:x912.test - DNS:x913.test - DNS:x914.test - DNS:x915.test - DNS:x916.test - DNS:x917.test - DNS:x918.test - DNS:x919.test - DNS:x920.test - DNS:x921.test - DNS:x922.test - DNS:x923.test - DNS:x924.test - DNS:x925.test - DNS:x926.test - DNS:x927.test - DNS:x928.test - DNS:x929.test - DNS:x930.test - DNS:x931.test - DNS:x932.test - DNS:x933.test - DNS:x934.test - DNS:x935.test - DNS:x936.test - DNS:x937.test - DNS:x938.test - DNS:x939.test - DNS:x940.test - DNS:x941.test - DNS:x942.test - DNS:x943.test - DNS:x944.test - DNS:x945.test - DNS:x946.test - DNS:x947.test - DNS:x948.test - DNS:x949.test - DNS:x950.test - DNS:x951.test - DNS:x952.test - DNS:x953.test - DNS:x954.test - DNS:x955.test - DNS:x956.test - DNS:x957.test - DNS:x958.test - DNS:x959.test - DNS:x960.test - DNS:x961.test - DNS:x962.test - DNS:x963.test - DNS:x964.test - DNS:x965.test - DNS:x966.test - DNS:x967.test - DNS:x968.test - DNS:x969.test - DNS:x970.test - DNS:x971.test - DNS:x972.test - DNS:x973.test - DNS:x974.test - DNS:x975.test - DNS:x976.test - DNS:x977.test - DNS:x978.test - DNS:x979.test - DNS:x980.test - DNS:x981.test - DNS:x982.test - DNS:x983.test - DNS:x984.test - DNS:x985.test - DNS:x986.test - DNS:x987.test - DNS:x988.test - DNS:x989.test - DNS:x990.test - DNS:x991.test - DNS:x992.test - DNS:x993.test - DNS:x994.test - DNS:x995.test - DNS:x996.test - DNS:x997.test - DNS:x998.test - DNS:x999.test - DNS:x1000.test - DNS:x1001.test - DNS:x1002.test - DNS:x1003.test - DNS:x1004.test - DNS:x1005.test - DNS:x1006.test - DNS:x1007.test - DNS:x1008.test - DNS:x1009.test - DNS:x1010.test - DNS:x1011.test - DNS:x1012.test - DNS:x1013.test - DNS:x1014.test - DNS:x1015.test - DNS:x1016.test - DNS:x1017.test - DNS:x1018.test - DNS:x1019.test - DNS:x1020.test - DNS:x1021.test - DNS:x1022.test - DNS:x1023.test - DNS:x1024.test - - Signature Algorithm: sha256WithRSAEncryption - a3:61:e0:bd:55:1b:55:36:05:4b:22:0a:7c:93:62:ba:08:ce: - 68:b5:8a:62:f7:57:27:6c:0f:d0:03:f4:57:f1:a0:e5:35:69: - 91:fe:66:af:27:ae:54:92:67:3b:a7:ce:86:7e:dd:66:e9:a4: - dc:69:49:6d:c3:96:da:fd:3d:4a:27:60:f1:24:f8:f1:be:34: - f6:b6:43:53:02:8a:0f:87:42:07:5d:91:d3:9d:96:39:93:9c: - b6:f2:38:fd:37:2f:7d:f4:02:67:3f:73:bb:96:7e:55:1b:38: - f2:6e:c8:35:90:28:1d:d9:c2:45:e7:17:03:33:96:f9:59:eb: - 0f:bc:2c:52:57:6a:fc:2f:3d:f0:f3:5c:1d:d7:1a:8d:e2:02: - a8:96:15:e0:61:95:d6:09:ba:b9:7b:c0:36:cc:ce:96:7b:7f: - ef:35:f7:f3:08:28:b6:ac:2a:41:a6:22:43:6c:76:c5:34:1d: - e8:47:bf:dd:56:7a:0f:7d:bd:2e:a9:6b:ed:92:39:a5:36:35: - 09:52:6b:fa:03:b0:6d:68:e2:83:2e:8f:7e:87:71:fc:42:2d: - f2:07:16:53:8d:1a:02:c0:03:55:d3:bf:1d:c1:07:f5:63:ec: - 3f:6f:26:4c:e7:47:d0:9d:e6:04:00:ad:b6:87:de:03:59:b0: - 80:10:78:3e ------BEGIN CERTIFICATE----- -MII3TzCCNjegAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vgwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCNJkwgjSVMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgjPJBgNVHR4EgjPAMIIzvKGCM7gwCYIHeDAudGVzdDAJggd4MS50ZXN0MAmC -B3gyLnRlc3QwCYIHeDMudGVzdDAJggd4NC50ZXN0MAmCB3g1LnRlc3QwCYIHeDYu -dGVzdDAJggd4Ny50ZXN0MAmCB3g4LnRlc3QwCYIHeDkudGVzdDAKggh4MTAudGVz -dDAKggh4MTEudGVzdDAKggh4MTIudGVzdDAKggh4MTMudGVzdDAKggh4MTQudGVz -dDAKggh4MTUudGVzdDAKggh4MTYudGVzdDAKggh4MTcudGVzdDAKggh4MTgudGVz -dDAKggh4MTkudGVzdDAKggh4MjAudGVzdDAKggh4MjEudGVzdDAKggh4MjIudGVz -dDAKggh4MjMudGVzdDAKggh4MjQudGVzdDAKggh4MjUudGVzdDAKggh4MjYudGVz -dDAKggh4MjcudGVzdDAKggh4MjgudGVzdDAKggh4MjkudGVzdDAKggh4MzAudGVz -dDAKggh4MzEudGVzdDAKggh4MzIudGVzdDAKggh4MzMudGVzdDAKggh4MzQudGVz -dDAKggh4MzUudGVzdDAKggh4MzYudGVzdDAKggh4MzcudGVzdDAKggh4MzgudGVz -dDAKggh4MzkudGVzdDAKggh4NDAudGVzdDAKggh4NDEudGVzdDAKggh4NDIudGVz -dDAKggh4NDMudGVzdDAKggh4NDQudGVzdDAKggh4NDUudGVzdDAKggh4NDYudGVz -dDAKggh4NDcudGVzdDAKggh4NDgudGVzdDAKggh4NDkudGVzdDAKggh4NTAudGVz -dDAKggh4NTEudGVzdDAKggh4NTIudGVzdDAKggh4NTMudGVzdDAKggh4NTQudGVz -dDAKggh4NTUudGVzdDAKggh4NTYudGVzdDAKggh4NTcudGVzdDAKggh4NTgudGVz -dDAKggh4NTkudGVzdDAKggh4NjAudGVzdDAKggh4NjEudGVzdDAKggh4NjIudGVz -dDAKggh4NjMudGVzdDAKggh4NjQudGVzdDAKggh4NjUudGVzdDAKggh4NjYudGVz -dDAKggh4NjcudGVzdDAKggh4NjgudGVzdDAKggh4NjkudGVzdDAKggh4NzAudGVz -dDAKggh4NzEudGVzdDAKggh4NzIudGVzdDAKggh4NzMudGVzdDAKggh4NzQudGVz -dDAKggh4NzUudGVzdDAKggh4NzYudGVzdDAKggh4NzcudGVzdDAKggh4NzgudGVz -dDAKggh4NzkudGVzdDAKggh4ODAudGVzdDAKggh4ODEudGVzdDAKggh4ODIudGVz -dDAKggh4ODMudGVzdDAKggh4ODQudGVzdDAKggh4ODUudGVzdDAKggh4ODYudGVz -dDAKggh4ODcudGVzdDAKggh4ODgudGVzdDAKggh4ODkudGVzdDAKggh4OTAudGVz -dDAKggh4OTEudGVzdDAKggh4OTIudGVzdDAKggh4OTMudGVzdDAKggh4OTQudGVz -dDAKggh4OTUudGVzdDAKggh4OTYudGVzdDAKggh4OTcudGVzdDAKggh4OTgudGVz -dDAKggh4OTkudGVzdDALggl4MTAwLnRlc3QwC4IJeDEwMS50ZXN0MAuCCXgxMDIu -dGVzdDALggl4MTAzLnRlc3QwC4IJeDEwNC50ZXN0MAuCCXgxMDUudGVzdDALggl4 -MTA2LnRlc3QwC4IJeDEwNy50ZXN0MAuCCXgxMDgudGVzdDALggl4MTA5LnRlc3Qw -C4IJeDExMC50ZXN0MAuCCXgxMTEudGVzdDALggl4MTEyLnRlc3QwC4IJeDExMy50 -ZXN0MAuCCXgxMTQudGVzdDALggl4MTE1LnRlc3QwC4IJeDExNi50ZXN0MAuCCXgx -MTcudGVzdDALggl4MTE4LnRlc3QwC4IJeDExOS50ZXN0MAuCCXgxMjAudGVzdDAL -ggl4MTIxLnRlc3QwC4IJeDEyMi50ZXN0MAuCCXgxMjMudGVzdDALggl4MTI0LnRl -c3QwC4IJeDEyNS50ZXN0MAuCCXgxMjYudGVzdDALggl4MTI3LnRlc3QwC4IJeDEy -OC50ZXN0MAuCCXgxMjkudGVzdDALggl4MTMwLnRlc3QwC4IJeDEzMS50ZXN0MAuC -CXgxMzIudGVzdDALggl4MTMzLnRlc3QwC4IJeDEzNC50ZXN0MAuCCXgxMzUudGVz -dDALggl4MTM2LnRlc3QwC4IJeDEzNy50ZXN0MAuCCXgxMzgudGVzdDALggl4MTM5 -LnRlc3QwC4IJeDE0MC50ZXN0MAuCCXgxNDEudGVzdDALggl4MTQyLnRlc3QwC4IJ -eDE0My50ZXN0MAuCCXgxNDQudGVzdDALggl4MTQ1LnRlc3QwC4IJeDE0Ni50ZXN0 -MAuCCXgxNDcudGVzdDALggl4MTQ4LnRlc3QwC4IJeDE0OS50ZXN0MAuCCXgxNTAu -dGVzdDALggl4MTUxLnRlc3QwC4IJeDE1Mi50ZXN0MAuCCXgxNTMudGVzdDALggl4 -MTU0LnRlc3QwC4IJeDE1NS50ZXN0MAuCCXgxNTYudGVzdDALggl4MTU3LnRlc3Qw -C4IJeDE1OC50ZXN0MAuCCXgxNTkudGVzdDALggl4MTYwLnRlc3QwC4IJeDE2MS50 -ZXN0MAuCCXgxNjIudGVzdDALggl4MTYzLnRlc3QwC4IJeDE2NC50ZXN0MAuCCXgx -NjUudGVzdDALggl4MTY2LnRlc3QwC4IJeDE2Ny50ZXN0MAuCCXgxNjgudGVzdDAL -ggl4MTY5LnRlc3QwC4IJeDE3MC50ZXN0MAuCCXgxNzEudGVzdDALggl4MTcyLnRl -c3QwC4IJeDE3My50ZXN0MAuCCXgxNzQudGVzdDALggl4MTc1LnRlc3QwC4IJeDE3 -Ni50ZXN0MAuCCXgxNzcudGVzdDALggl4MTc4LnRlc3QwC4IJeDE3OS50ZXN0MAuC -CXgxODAudGVzdDALggl4MTgxLnRlc3QwC4IJeDE4Mi50ZXN0MAuCCXgxODMudGVz -dDALggl4MTg0LnRlc3QwC4IJeDE4NS50ZXN0MAuCCXgxODYudGVzdDALggl4MTg3 -LnRlc3QwC4IJeDE4OC50ZXN0MAuCCXgxODkudGVzdDALggl4MTkwLnRlc3QwC4IJ -eDE5MS50ZXN0MAuCCXgxOTIudGVzdDALggl4MTkzLnRlc3QwC4IJeDE5NC50ZXN0 -MAuCCXgxOTUudGVzdDALggl4MTk2LnRlc3QwC4IJeDE5Ny50ZXN0MAuCCXgxOTgu -dGVzdDALggl4MTk5LnRlc3QwC4IJeDIwMC50ZXN0MAuCCXgyMDEudGVzdDALggl4 -MjAyLnRlc3QwC4IJeDIwMy50ZXN0MAuCCXgyMDQudGVzdDALggl4MjA1LnRlc3Qw -C4IJeDIwNi50ZXN0MAuCCXgyMDcudGVzdDALggl4MjA4LnRlc3QwC4IJeDIwOS50 -ZXN0MAuCCXgyMTAudGVzdDALggl4MjExLnRlc3QwC4IJeDIxMi50ZXN0MAuCCXgy -MTMudGVzdDALggl4MjE0LnRlc3QwC4IJeDIxNS50ZXN0MAuCCXgyMTYudGVzdDAL -ggl4MjE3LnRlc3QwC4IJeDIxOC50ZXN0MAuCCXgyMTkudGVzdDALggl4MjIwLnRl -c3QwC4IJeDIyMS50ZXN0MAuCCXgyMjIudGVzdDALggl4MjIzLnRlc3QwC4IJeDIy -NC50ZXN0MAuCCXgyMjUudGVzdDALggl4MjI2LnRlc3QwC4IJeDIyNy50ZXN0MAuC -CXgyMjgudGVzdDALggl4MjI5LnRlc3QwC4IJeDIzMC50ZXN0MAuCCXgyMzEudGVz -dDALggl4MjMyLnRlc3QwC4IJeDIzMy50ZXN0MAuCCXgyMzQudGVzdDALggl4MjM1 -LnRlc3QwC4IJeDIzNi50ZXN0MAuCCXgyMzcudGVzdDALggl4MjM4LnRlc3QwC4IJ -eDIzOS50ZXN0MAuCCXgyNDAudGVzdDALggl4MjQxLnRlc3QwC4IJeDI0Mi50ZXN0 -MAuCCXgyNDMudGVzdDALggl4MjQ0LnRlc3QwC4IJeDI0NS50ZXN0MAuCCXgyNDYu -dGVzdDALggl4MjQ3LnRlc3QwC4IJeDI0OC50ZXN0MAuCCXgyNDkudGVzdDALggl4 -MjUwLnRlc3QwC4IJeDI1MS50ZXN0MAuCCXgyNTIudGVzdDALggl4MjUzLnRlc3Qw -C4IJeDI1NC50ZXN0MAuCCXgyNTUudGVzdDALggl4MjU2LnRlc3QwC4IJeDI1Ny50 -ZXN0MAuCCXgyNTgudGVzdDALggl4MjU5LnRlc3QwC4IJeDI2MC50ZXN0MAuCCXgy -NjEudGVzdDALggl4MjYyLnRlc3QwC4IJeDI2My50ZXN0MAuCCXgyNjQudGVzdDAL -ggl4MjY1LnRlc3QwC4IJeDI2Ni50ZXN0MAuCCXgyNjcudGVzdDALggl4MjY4LnRl -c3QwC4IJeDI2OS50ZXN0MAuCCXgyNzAudGVzdDALggl4MjcxLnRlc3QwC4IJeDI3 -Mi50ZXN0MAuCCXgyNzMudGVzdDALggl4Mjc0LnRlc3QwC4IJeDI3NS50ZXN0MAuC -CXgyNzYudGVzdDALggl4Mjc3LnRlc3QwC4IJeDI3OC50ZXN0MAuCCXgyNzkudGVz -dDALggl4MjgwLnRlc3QwC4IJeDI4MS50ZXN0MAuCCXgyODIudGVzdDALggl4Mjgz -LnRlc3QwC4IJeDI4NC50ZXN0MAuCCXgyODUudGVzdDALggl4Mjg2LnRlc3QwC4IJ -eDI4Ny50ZXN0MAuCCXgyODgudGVzdDALggl4Mjg5LnRlc3QwC4IJeDI5MC50ZXN0 -MAuCCXgyOTEudGVzdDALggl4MjkyLnRlc3QwC4IJeDI5My50ZXN0MAuCCXgyOTQu -dGVzdDALggl4Mjk1LnRlc3QwC4IJeDI5Ni50ZXN0MAuCCXgyOTcudGVzdDALggl4 -Mjk4LnRlc3QwC4IJeDI5OS50ZXN0MAuCCXgzMDAudGVzdDALggl4MzAxLnRlc3Qw -C4IJeDMwMi50ZXN0MAuCCXgzMDMudGVzdDALggl4MzA0LnRlc3QwC4IJeDMwNS50 -ZXN0MAuCCXgzMDYudGVzdDALggl4MzA3LnRlc3QwC4IJeDMwOC50ZXN0MAuCCXgz -MDkudGVzdDALggl4MzEwLnRlc3QwC4IJeDMxMS50ZXN0MAuCCXgzMTIudGVzdDAL -ggl4MzEzLnRlc3QwC4IJeDMxNC50ZXN0MAuCCXgzMTUudGVzdDALggl4MzE2LnRl -c3QwC4IJeDMxNy50ZXN0MAuCCXgzMTgudGVzdDALggl4MzE5LnRlc3QwC4IJeDMy -MC50ZXN0MAuCCXgzMjEudGVzdDALggl4MzIyLnRlc3QwC4IJeDMyMy50ZXN0MAuC -CXgzMjQudGVzdDALggl4MzI1LnRlc3QwC4IJeDMyNi50ZXN0MAuCCXgzMjcudGVz -dDALggl4MzI4LnRlc3QwC4IJeDMyOS50ZXN0MAuCCXgzMzAudGVzdDALggl4MzMx -LnRlc3QwC4IJeDMzMi50ZXN0MAuCCXgzMzMudGVzdDALggl4MzM0LnRlc3QwC4IJ -eDMzNS50ZXN0MAuCCXgzMzYudGVzdDALggl4MzM3LnRlc3QwC4IJeDMzOC50ZXN0 -MAuCCXgzMzkudGVzdDALggl4MzQwLnRlc3QwC4IJeDM0MS50ZXN0MAuCCXgzNDIu -dGVzdDALggl4MzQzLnRlc3QwC4IJeDM0NC50ZXN0MAuCCXgzNDUudGVzdDALggl4 -MzQ2LnRlc3QwC4IJeDM0Ny50ZXN0MAuCCXgzNDgudGVzdDALggl4MzQ5LnRlc3Qw -C4IJeDM1MC50ZXN0MAuCCXgzNTEudGVzdDALggl4MzUyLnRlc3QwC4IJeDM1My50 -ZXN0MAuCCXgzNTQudGVzdDALggl4MzU1LnRlc3QwC4IJeDM1Ni50ZXN0MAuCCXgz -NTcudGVzdDALggl4MzU4LnRlc3QwC4IJeDM1OS50ZXN0MAuCCXgzNjAudGVzdDAL -ggl4MzYxLnRlc3QwC4IJeDM2Mi50ZXN0MAuCCXgzNjMudGVzdDALggl4MzY0LnRl -c3QwC4IJeDM2NS50ZXN0MAuCCXgzNjYudGVzdDALggl4MzY3LnRlc3QwC4IJeDM2 -OC50ZXN0MAuCCXgzNjkudGVzdDALggl4MzcwLnRlc3QwC4IJeDM3MS50ZXN0MAuC -CXgzNzIudGVzdDALggl4MzczLnRlc3QwC4IJeDM3NC50ZXN0MAuCCXgzNzUudGVz -dDALggl4Mzc2LnRlc3QwC4IJeDM3Ny50ZXN0MAuCCXgzNzgudGVzdDALggl4Mzc5 -LnRlc3QwC4IJeDM4MC50ZXN0MAuCCXgzODEudGVzdDALggl4MzgyLnRlc3QwC4IJ -eDM4My50ZXN0MAuCCXgzODQudGVzdDALggl4Mzg1LnRlc3QwC4IJeDM4Ni50ZXN0 -MAuCCXgzODcudGVzdDALggl4Mzg4LnRlc3QwC4IJeDM4OS50ZXN0MAuCCXgzOTAu -dGVzdDALggl4MzkxLnRlc3QwC4IJeDM5Mi50ZXN0MAuCCXgzOTMudGVzdDALggl4 -Mzk0LnRlc3QwC4IJeDM5NS50ZXN0MAuCCXgzOTYudGVzdDALggl4Mzk3LnRlc3Qw -C4IJeDM5OC50ZXN0MAuCCXgzOTkudGVzdDALggl4NDAwLnRlc3QwC4IJeDQwMS50 -ZXN0MAuCCXg0MDIudGVzdDALggl4NDAzLnRlc3QwC4IJeDQwNC50ZXN0MAuCCXg0 -MDUudGVzdDALggl4NDA2LnRlc3QwC4IJeDQwNy50ZXN0MAuCCXg0MDgudGVzdDAL -ggl4NDA5LnRlc3QwC4IJeDQxMC50ZXN0MAuCCXg0MTEudGVzdDALggl4NDEyLnRl -c3QwC4IJeDQxMy50ZXN0MAuCCXg0MTQudGVzdDALggl4NDE1LnRlc3QwC4IJeDQx -Ni50ZXN0MAuCCXg0MTcudGVzdDALggl4NDE4LnRlc3QwC4IJeDQxOS50ZXN0MAuC -CXg0MjAudGVzdDALggl4NDIxLnRlc3QwC4IJeDQyMi50ZXN0MAuCCXg0MjMudGVz -dDALggl4NDI0LnRlc3QwC4IJeDQyNS50ZXN0MAuCCXg0MjYudGVzdDALggl4NDI3 -LnRlc3QwC4IJeDQyOC50ZXN0MAuCCXg0MjkudGVzdDALggl4NDMwLnRlc3QwC4IJ -eDQzMS50ZXN0MAuCCXg0MzIudGVzdDALggl4NDMzLnRlc3QwC4IJeDQzNC50ZXN0 -MAuCCXg0MzUudGVzdDALggl4NDM2LnRlc3QwC4IJeDQzNy50ZXN0MAuCCXg0Mzgu -dGVzdDALggl4NDM5LnRlc3QwC4IJeDQ0MC50ZXN0MAuCCXg0NDEudGVzdDALggl4 -NDQyLnRlc3QwC4IJeDQ0My50ZXN0MAuCCXg0NDQudGVzdDALggl4NDQ1LnRlc3Qw -C4IJeDQ0Ni50ZXN0MAuCCXg0NDcudGVzdDALggl4NDQ4LnRlc3QwC4IJeDQ0OS50 -ZXN0MAuCCXg0NTAudGVzdDALggl4NDUxLnRlc3QwC4IJeDQ1Mi50ZXN0MAuCCXg0 -NTMudGVzdDALggl4NDU0LnRlc3QwC4IJeDQ1NS50ZXN0MAuCCXg0NTYudGVzdDAL -ggl4NDU3LnRlc3QwC4IJeDQ1OC50ZXN0MAuCCXg0NTkudGVzdDALggl4NDYwLnRl -c3QwC4IJeDQ2MS50ZXN0MAuCCXg0NjIudGVzdDALggl4NDYzLnRlc3QwC4IJeDQ2 -NC50ZXN0MAuCCXg0NjUudGVzdDALggl4NDY2LnRlc3QwC4IJeDQ2Ny50ZXN0MAuC -CXg0NjgudGVzdDALggl4NDY5LnRlc3QwC4IJeDQ3MC50ZXN0MAuCCXg0NzEudGVz -dDALggl4NDcyLnRlc3QwC4IJeDQ3My50ZXN0MAuCCXg0NzQudGVzdDALggl4NDc1 -LnRlc3QwC4IJeDQ3Ni50ZXN0MAuCCXg0NzcudGVzdDALggl4NDc4LnRlc3QwC4IJ -eDQ3OS50ZXN0MAuCCXg0ODAudGVzdDALggl4NDgxLnRlc3QwC4IJeDQ4Mi50ZXN0 -MAuCCXg0ODMudGVzdDALggl4NDg0LnRlc3QwC4IJeDQ4NS50ZXN0MAuCCXg0ODYu -dGVzdDALggl4NDg3LnRlc3QwC4IJeDQ4OC50ZXN0MAuCCXg0ODkudGVzdDALggl4 -NDkwLnRlc3QwC4IJeDQ5MS50ZXN0MAuCCXg0OTIudGVzdDALggl4NDkzLnRlc3Qw -C4IJeDQ5NC50ZXN0MAuCCXg0OTUudGVzdDALggl4NDk2LnRlc3QwC4IJeDQ5Ny50 -ZXN0MAuCCXg0OTgudGVzdDALggl4NDk5LnRlc3QwC4IJeDUwMC50ZXN0MAuCCXg1 -MDEudGVzdDALggl4NTAyLnRlc3QwC4IJeDUwMy50ZXN0MAuCCXg1MDQudGVzdDAL -ggl4NTA1LnRlc3QwC4IJeDUwNi50ZXN0MAuCCXg1MDcudGVzdDALggl4NTA4LnRl -c3QwC4IJeDUwOS50ZXN0MAuCCXg1MTAudGVzdDALggl4NTExLnRlc3QwC4IJeDUx -Mi50ZXN0MAuCCXg1MTMudGVzdDALggl4NTE0LnRlc3QwC4IJeDUxNS50ZXN0MAuC -CXg1MTYudGVzdDALggl4NTE3LnRlc3QwC4IJeDUxOC50ZXN0MAuCCXg1MTkudGVz -dDALggl4NTIwLnRlc3QwC4IJeDUyMS50ZXN0MAuCCXg1MjIudGVzdDALggl4NTIz -LnRlc3QwC4IJeDUyNC50ZXN0MAuCCXg1MjUudGVzdDALggl4NTI2LnRlc3QwC4IJ -eDUyNy50ZXN0MAuCCXg1MjgudGVzdDALggl4NTI5LnRlc3QwC4IJeDUzMC50ZXN0 -MAuCCXg1MzEudGVzdDALggl4NTMyLnRlc3QwC4IJeDUzMy50ZXN0MAuCCXg1MzQu -dGVzdDALggl4NTM1LnRlc3QwC4IJeDUzNi50ZXN0MAuCCXg1MzcudGVzdDALggl4 -NTM4LnRlc3QwC4IJeDUzOS50ZXN0MAuCCXg1NDAudGVzdDALggl4NTQxLnRlc3Qw -C4IJeDU0Mi50ZXN0MAuCCXg1NDMudGVzdDALggl4NTQ0LnRlc3QwC4IJeDU0NS50 -ZXN0MAuCCXg1NDYudGVzdDALggl4NTQ3LnRlc3QwC4IJeDU0OC50ZXN0MAuCCXg1 -NDkudGVzdDALggl4NTUwLnRlc3QwC4IJeDU1MS50ZXN0MAuCCXg1NTIudGVzdDAL -ggl4NTUzLnRlc3QwC4IJeDU1NC50ZXN0MAuCCXg1NTUudGVzdDALggl4NTU2LnRl -c3QwC4IJeDU1Ny50ZXN0MAuCCXg1NTgudGVzdDALggl4NTU5LnRlc3QwC4IJeDU2 -MC50ZXN0MAuCCXg1NjEudGVzdDALggl4NTYyLnRlc3QwC4IJeDU2My50ZXN0MAuC -CXg1NjQudGVzdDALggl4NTY1LnRlc3QwC4IJeDU2Ni50ZXN0MAuCCXg1NjcudGVz -dDALggl4NTY4LnRlc3QwC4IJeDU2OS50ZXN0MAuCCXg1NzAudGVzdDALggl4NTcx -LnRlc3QwC4IJeDU3Mi50ZXN0MAuCCXg1NzMudGVzdDALggl4NTc0LnRlc3QwC4IJ -eDU3NS50ZXN0MAuCCXg1NzYudGVzdDALggl4NTc3LnRlc3QwC4IJeDU3OC50ZXN0 -MAuCCXg1NzkudGVzdDALggl4NTgwLnRlc3QwC4IJeDU4MS50ZXN0MAuCCXg1ODIu -dGVzdDALggl4NTgzLnRlc3QwC4IJeDU4NC50ZXN0MAuCCXg1ODUudGVzdDALggl4 -NTg2LnRlc3QwC4IJeDU4Ny50ZXN0MAuCCXg1ODgudGVzdDALggl4NTg5LnRlc3Qw -C4IJeDU5MC50ZXN0MAuCCXg1OTEudGVzdDALggl4NTkyLnRlc3QwC4IJeDU5My50 -ZXN0MAuCCXg1OTQudGVzdDALggl4NTk1LnRlc3QwC4IJeDU5Ni50ZXN0MAuCCXg1 -OTcudGVzdDALggl4NTk4LnRlc3QwC4IJeDU5OS50ZXN0MAuCCXg2MDAudGVzdDAL -ggl4NjAxLnRlc3QwC4IJeDYwMi50ZXN0MAuCCXg2MDMudGVzdDALggl4NjA0LnRl -c3QwC4IJeDYwNS50ZXN0MAuCCXg2MDYudGVzdDALggl4NjA3LnRlc3QwC4IJeDYw -OC50ZXN0MAuCCXg2MDkudGVzdDALggl4NjEwLnRlc3QwC4IJeDYxMS50ZXN0MAuC -CXg2MTIudGVzdDALggl4NjEzLnRlc3QwC4IJeDYxNC50ZXN0MAuCCXg2MTUudGVz -dDALggl4NjE2LnRlc3QwC4IJeDYxNy50ZXN0MAuCCXg2MTgudGVzdDALggl4NjE5 -LnRlc3QwC4IJeDYyMC50ZXN0MAuCCXg2MjEudGVzdDALggl4NjIyLnRlc3QwC4IJ -eDYyMy50ZXN0MAuCCXg2MjQudGVzdDALggl4NjI1LnRlc3QwC4IJeDYyNi50ZXN0 -MAuCCXg2MjcudGVzdDALggl4NjI4LnRlc3QwC4IJeDYyOS50ZXN0MAuCCXg2MzAu -dGVzdDALggl4NjMxLnRlc3QwC4IJeDYzMi50ZXN0MAuCCXg2MzMudGVzdDALggl4 -NjM0LnRlc3QwC4IJeDYzNS50ZXN0MAuCCXg2MzYudGVzdDALggl4NjM3LnRlc3Qw -C4IJeDYzOC50ZXN0MAuCCXg2MzkudGVzdDALggl4NjQwLnRlc3QwC4IJeDY0MS50 -ZXN0MAuCCXg2NDIudGVzdDALggl4NjQzLnRlc3QwC4IJeDY0NC50ZXN0MAuCCXg2 -NDUudGVzdDALggl4NjQ2LnRlc3QwC4IJeDY0Ny50ZXN0MAuCCXg2NDgudGVzdDAL -ggl4NjQ5LnRlc3QwC4IJeDY1MC50ZXN0MAuCCXg2NTEudGVzdDALggl4NjUyLnRl -c3QwC4IJeDY1My50ZXN0MAuCCXg2NTQudGVzdDALggl4NjU1LnRlc3QwC4IJeDY1 -Ni50ZXN0MAuCCXg2NTcudGVzdDALggl4NjU4LnRlc3QwC4IJeDY1OS50ZXN0MAuC -CXg2NjAudGVzdDALggl4NjYxLnRlc3QwC4IJeDY2Mi50ZXN0MAuCCXg2NjMudGVz -dDALggl4NjY0LnRlc3QwC4IJeDY2NS50ZXN0MAuCCXg2NjYudGVzdDALggl4NjY3 -LnRlc3QwC4IJeDY2OC50ZXN0MAuCCXg2NjkudGVzdDALggl4NjcwLnRlc3QwC4IJ -eDY3MS50ZXN0MAuCCXg2NzIudGVzdDALggl4NjczLnRlc3QwC4IJeDY3NC50ZXN0 -MAuCCXg2NzUudGVzdDALggl4Njc2LnRlc3QwC4IJeDY3Ny50ZXN0MAuCCXg2Nzgu -dGVzdDALggl4Njc5LnRlc3QwC4IJeDY4MC50ZXN0MAuCCXg2ODEudGVzdDALggl4 -NjgyLnRlc3QwC4IJeDY4My50ZXN0MAuCCXg2ODQudGVzdDALggl4Njg1LnRlc3Qw -C4IJeDY4Ni50ZXN0MAuCCXg2ODcudGVzdDALggl4Njg4LnRlc3QwC4IJeDY4OS50 -ZXN0MAuCCXg2OTAudGVzdDALggl4NjkxLnRlc3QwC4IJeDY5Mi50ZXN0MAuCCXg2 -OTMudGVzdDALggl4Njk0LnRlc3QwC4IJeDY5NS50ZXN0MAuCCXg2OTYudGVzdDAL -ggl4Njk3LnRlc3QwC4IJeDY5OC50ZXN0MAuCCXg2OTkudGVzdDALggl4NzAwLnRl -c3QwC4IJeDcwMS50ZXN0MAuCCXg3MDIudGVzdDALggl4NzAzLnRlc3QwC4IJeDcw -NC50ZXN0MAuCCXg3MDUudGVzdDALggl4NzA2LnRlc3QwC4IJeDcwNy50ZXN0MAuC -CXg3MDgudGVzdDALggl4NzA5LnRlc3QwC4IJeDcxMC50ZXN0MAuCCXg3MTEudGVz -dDALggl4NzEyLnRlc3QwC4IJeDcxMy50ZXN0MAuCCXg3MTQudGVzdDALggl4NzE1 -LnRlc3QwC4IJeDcxNi50ZXN0MAuCCXg3MTcudGVzdDALggl4NzE4LnRlc3QwC4IJ -eDcxOS50ZXN0MAuCCXg3MjAudGVzdDALggl4NzIxLnRlc3QwC4IJeDcyMi50ZXN0 -MAuCCXg3MjMudGVzdDALggl4NzI0LnRlc3QwC4IJeDcyNS50ZXN0MAuCCXg3MjYu -dGVzdDALggl4NzI3LnRlc3QwC4IJeDcyOC50ZXN0MAuCCXg3MjkudGVzdDALggl4 -NzMwLnRlc3QwC4IJeDczMS50ZXN0MAuCCXg3MzIudGVzdDALggl4NzMzLnRlc3Qw -C4IJeDczNC50ZXN0MAuCCXg3MzUudGVzdDALggl4NzM2LnRlc3QwC4IJeDczNy50 -ZXN0MAuCCXg3MzgudGVzdDALggl4NzM5LnRlc3QwC4IJeDc0MC50ZXN0MAuCCXg3 -NDEudGVzdDALggl4NzQyLnRlc3QwC4IJeDc0My50ZXN0MAuCCXg3NDQudGVzdDAL -ggl4NzQ1LnRlc3QwC4IJeDc0Ni50ZXN0MAuCCXg3NDcudGVzdDALggl4NzQ4LnRl -c3QwC4IJeDc0OS50ZXN0MAuCCXg3NTAudGVzdDALggl4NzUxLnRlc3QwC4IJeDc1 -Mi50ZXN0MAuCCXg3NTMudGVzdDALggl4NzU0LnRlc3QwC4IJeDc1NS50ZXN0MAuC -CXg3NTYudGVzdDALggl4NzU3LnRlc3QwC4IJeDc1OC50ZXN0MAuCCXg3NTkudGVz -dDALggl4NzYwLnRlc3QwC4IJeDc2MS50ZXN0MAuCCXg3NjIudGVzdDALggl4NzYz -LnRlc3QwC4IJeDc2NC50ZXN0MAuCCXg3NjUudGVzdDALggl4NzY2LnRlc3QwC4IJ -eDc2Ny50ZXN0MAuCCXg3NjgudGVzdDALggl4NzY5LnRlc3QwC4IJeDc3MC50ZXN0 -MAuCCXg3NzEudGVzdDALggl4NzcyLnRlc3QwC4IJeDc3My50ZXN0MAuCCXg3NzQu -dGVzdDALggl4Nzc1LnRlc3QwC4IJeDc3Ni50ZXN0MAuCCXg3NzcudGVzdDALggl4 -Nzc4LnRlc3QwC4IJeDc3OS50ZXN0MAuCCXg3ODAudGVzdDALggl4NzgxLnRlc3Qw -C4IJeDc4Mi50ZXN0MAuCCXg3ODMudGVzdDALggl4Nzg0LnRlc3QwC4IJeDc4NS50 -ZXN0MAuCCXg3ODYudGVzdDALggl4Nzg3LnRlc3QwC4IJeDc4OC50ZXN0MAuCCXg3 -ODkudGVzdDALggl4NzkwLnRlc3QwC4IJeDc5MS50ZXN0MAuCCXg3OTIudGVzdDAL -ggl4NzkzLnRlc3QwC4IJeDc5NC50ZXN0MAuCCXg3OTUudGVzdDALggl4Nzk2LnRl -c3QwC4IJeDc5Ny50ZXN0MAuCCXg3OTgudGVzdDALggl4Nzk5LnRlc3QwC4IJeDgw -MC50ZXN0MAuCCXg4MDEudGVzdDALggl4ODAyLnRlc3QwC4IJeDgwMy50ZXN0MAuC -CXg4MDQudGVzdDALggl4ODA1LnRlc3QwC4IJeDgwNi50ZXN0MAuCCXg4MDcudGVz -dDALggl4ODA4LnRlc3QwC4IJeDgwOS50ZXN0MAuCCXg4MTAudGVzdDALggl4ODEx -LnRlc3QwC4IJeDgxMi50ZXN0MAuCCXg4MTMudGVzdDALggl4ODE0LnRlc3QwC4IJ -eDgxNS50ZXN0MAuCCXg4MTYudGVzdDALggl4ODE3LnRlc3QwC4IJeDgxOC50ZXN0 -MAuCCXg4MTkudGVzdDALggl4ODIwLnRlc3QwC4IJeDgyMS50ZXN0MAuCCXg4MjIu -dGVzdDALggl4ODIzLnRlc3QwC4IJeDgyNC50ZXN0MAuCCXg4MjUudGVzdDALggl4 -ODI2LnRlc3QwC4IJeDgyNy50ZXN0MAuCCXg4MjgudGVzdDALggl4ODI5LnRlc3Qw -C4IJeDgzMC50ZXN0MAuCCXg4MzEudGVzdDALggl4ODMyLnRlc3QwC4IJeDgzMy50 -ZXN0MAuCCXg4MzQudGVzdDALggl4ODM1LnRlc3QwC4IJeDgzNi50ZXN0MAuCCXg4 -MzcudGVzdDALggl4ODM4LnRlc3QwC4IJeDgzOS50ZXN0MAuCCXg4NDAudGVzdDAL -ggl4ODQxLnRlc3QwC4IJeDg0Mi50ZXN0MAuCCXg4NDMudGVzdDALggl4ODQ0LnRl -c3QwC4IJeDg0NS50ZXN0MAuCCXg4NDYudGVzdDALggl4ODQ3LnRlc3QwC4IJeDg0 -OC50ZXN0MAuCCXg4NDkudGVzdDALggl4ODUwLnRlc3QwC4IJeDg1MS50ZXN0MAuC -CXg4NTIudGVzdDALggl4ODUzLnRlc3QwC4IJeDg1NC50ZXN0MAuCCXg4NTUudGVz -dDALggl4ODU2LnRlc3QwC4IJeDg1Ny50ZXN0MAuCCXg4NTgudGVzdDALggl4ODU5 -LnRlc3QwC4IJeDg2MC50ZXN0MAuCCXg4NjEudGVzdDALggl4ODYyLnRlc3QwC4IJ -eDg2My50ZXN0MAuCCXg4NjQudGVzdDALggl4ODY1LnRlc3QwC4IJeDg2Ni50ZXN0 -MAuCCXg4NjcudGVzdDALggl4ODY4LnRlc3QwC4IJeDg2OS50ZXN0MAuCCXg4NzAu -dGVzdDALggl4ODcxLnRlc3QwC4IJeDg3Mi50ZXN0MAuCCXg4NzMudGVzdDALggl4 -ODc0LnRlc3QwC4IJeDg3NS50ZXN0MAuCCXg4NzYudGVzdDALggl4ODc3LnRlc3Qw -C4IJeDg3OC50ZXN0MAuCCXg4NzkudGVzdDALggl4ODgwLnRlc3QwC4IJeDg4MS50 -ZXN0MAuCCXg4ODIudGVzdDALggl4ODgzLnRlc3QwC4IJeDg4NC50ZXN0MAuCCXg4 -ODUudGVzdDALggl4ODg2LnRlc3QwC4IJeDg4Ny50ZXN0MAuCCXg4ODgudGVzdDAL -ggl4ODg5LnRlc3QwC4IJeDg5MC50ZXN0MAuCCXg4OTEudGVzdDALggl4ODkyLnRl -c3QwC4IJeDg5My50ZXN0MAuCCXg4OTQudGVzdDALggl4ODk1LnRlc3QwC4IJeDg5 -Ni50ZXN0MAuCCXg4OTcudGVzdDALggl4ODk4LnRlc3QwC4IJeDg5OS50ZXN0MAuC -CXg5MDAudGVzdDALggl4OTAxLnRlc3QwC4IJeDkwMi50ZXN0MAuCCXg5MDMudGVz -dDALggl4OTA0LnRlc3QwC4IJeDkwNS50ZXN0MAuCCXg5MDYudGVzdDALggl4OTA3 -LnRlc3QwC4IJeDkwOC50ZXN0MAuCCXg5MDkudGVzdDALggl4OTEwLnRlc3QwC4IJ -eDkxMS50ZXN0MAuCCXg5MTIudGVzdDALggl4OTEzLnRlc3QwC4IJeDkxNC50ZXN0 -MAuCCXg5MTUudGVzdDALggl4OTE2LnRlc3QwC4IJeDkxNy50ZXN0MAuCCXg5MTgu -dGVzdDALggl4OTE5LnRlc3QwC4IJeDkyMC50ZXN0MAuCCXg5MjEudGVzdDALggl4 -OTIyLnRlc3QwC4IJeDkyMy50ZXN0MAuCCXg5MjQudGVzdDALggl4OTI1LnRlc3Qw -C4IJeDkyNi50ZXN0MAuCCXg5MjcudGVzdDALggl4OTI4LnRlc3QwC4IJeDkyOS50 -ZXN0MAuCCXg5MzAudGVzdDALggl4OTMxLnRlc3QwC4IJeDkzMi50ZXN0MAuCCXg5 -MzMudGVzdDALggl4OTM0LnRlc3QwC4IJeDkzNS50ZXN0MAuCCXg5MzYudGVzdDAL -ggl4OTM3LnRlc3QwC4IJeDkzOC50ZXN0MAuCCXg5MzkudGVzdDALggl4OTQwLnRl -c3QwC4IJeDk0MS50ZXN0MAuCCXg5NDIudGVzdDALggl4OTQzLnRlc3QwC4IJeDk0 -NC50ZXN0MAuCCXg5NDUudGVzdDALggl4OTQ2LnRlc3QwC4IJeDk0Ny50ZXN0MAuC -CXg5NDgudGVzdDALggl4OTQ5LnRlc3QwC4IJeDk1MC50ZXN0MAuCCXg5NTEudGVz -dDALggl4OTUyLnRlc3QwC4IJeDk1My50ZXN0MAuCCXg5NTQudGVzdDALggl4OTU1 -LnRlc3QwC4IJeDk1Ni50ZXN0MAuCCXg5NTcudGVzdDALggl4OTU4LnRlc3QwC4IJ -eDk1OS50ZXN0MAuCCXg5NjAudGVzdDALggl4OTYxLnRlc3QwC4IJeDk2Mi50ZXN0 -MAuCCXg5NjMudGVzdDALggl4OTY0LnRlc3QwC4IJeDk2NS50ZXN0MAuCCXg5NjYu -dGVzdDALggl4OTY3LnRlc3QwC4IJeDk2OC50ZXN0MAuCCXg5NjkudGVzdDALggl4 -OTcwLnRlc3QwC4IJeDk3MS50ZXN0MAuCCXg5NzIudGVzdDALggl4OTczLnRlc3Qw -C4IJeDk3NC50ZXN0MAuCCXg5NzUudGVzdDALggl4OTc2LnRlc3QwC4IJeDk3Ny50 -ZXN0MAuCCXg5NzgudGVzdDALggl4OTc5LnRlc3QwC4IJeDk4MC50ZXN0MAuCCXg5 -ODEudGVzdDALggl4OTgyLnRlc3QwC4IJeDk4My50ZXN0MAuCCXg5ODQudGVzdDAL -ggl4OTg1LnRlc3QwC4IJeDk4Ni50ZXN0MAuCCXg5ODcudGVzdDALggl4OTg4LnRl -c3QwC4IJeDk4OS50ZXN0MAuCCXg5OTAudGVzdDALggl4OTkxLnRlc3QwC4IJeDk5 -Mi50ZXN0MAuCCXg5OTMudGVzdDALggl4OTk0LnRlc3QwC4IJeDk5NS50ZXN0MAuC -CXg5OTYudGVzdDALggl4OTk3LnRlc3QwC4IJeDk5OC50ZXN0MAuCCXg5OTkudGVz -dDAMggp4MTAwMC50ZXN0MAyCCngxMDAxLnRlc3QwDIIKeDEwMDIudGVzdDAMggp4 -MTAwMy50ZXN0MAyCCngxMDA0LnRlc3QwDIIKeDEwMDUudGVzdDAMggp4MTAwNi50 -ZXN0MAyCCngxMDA3LnRlc3QwDIIKeDEwMDgudGVzdDAMggp4MTAwOS50ZXN0MAyC -CngxMDEwLnRlc3QwDIIKeDEwMTEudGVzdDAMggp4MTAxMi50ZXN0MAyCCngxMDEz -LnRlc3QwDIIKeDEwMTQudGVzdDAMggp4MTAxNS50ZXN0MAyCCngxMDE2LnRlc3Qw -DIIKeDEwMTcudGVzdDAMggp4MTAxOC50ZXN0MAyCCngxMDE5LnRlc3QwDIIKeDEw -MjAudGVzdDAMggp4MTAyMS50ZXN0MAyCCngxMDIyLnRlc3QwDIIKeDEwMjMudGVz -dDAMggp4MTAyNC50ZXN0MA0GCSqGSIb3DQEBCwUAA4IBAQCjYeC9VRtVNgVLIgp8 -k2K6CM5otYpi91cnbA/QA/RX8aDlNWmR/mavJ65Ukmc7p86Gft1m6aTcaUltw5ba -/T1KJ2DxJPjxvjT2tkNTAooPh0IHXZHTnZY5k5y28jj9Ny999AJnP3O7ln5VGzjy -bsg1kCgd2cJF5xcDM5b5WesPvCxSV2r8Lz3w81wd1xqN4gKolhXgYZXWCbq5e8A2 -zM6We3/vNffzCCi2rCpBpiJDbHbFNB3oR7/dVnoPfb0uqWvtkjmlNjUJUmv6A7Bt -aOKDLo9+h3H8Qi3yBxZTjRoCwANV078dwQf1Y+w/byZM50fQneYEAK22h94DWbCA -EHg+ ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F9.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F9.pem deleted file mode 100644 index c4dfd8fbbc..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6F9.pem +++ /dev/null @@ -1,1374 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:f9 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Excluded: - IP:11.0.0.0/255.255.255.255 - IP:11.0.0.1/255.255.255.255 - IP:11.0.0.2/255.255.255.255 - IP:11.0.0.3/255.255.255.255 - IP:11.0.0.4/255.255.255.255 - IP:11.0.0.5/255.255.255.255 - IP:11.0.0.6/255.255.255.255 - IP:11.0.0.7/255.255.255.255 - IP:11.0.0.8/255.255.255.255 - IP:11.0.0.9/255.255.255.255 - IP:11.0.0.10/255.255.255.255 - IP:11.0.0.11/255.255.255.255 - IP:11.0.0.12/255.255.255.255 - IP:11.0.0.13/255.255.255.255 - IP:11.0.0.14/255.255.255.255 - IP:11.0.0.15/255.255.255.255 - IP:11.0.0.16/255.255.255.255 - IP:11.0.0.17/255.255.255.255 - IP:11.0.0.18/255.255.255.255 - IP:11.0.0.19/255.255.255.255 - IP:11.0.0.20/255.255.255.255 - IP:11.0.0.21/255.255.255.255 - IP:11.0.0.22/255.255.255.255 - IP:11.0.0.23/255.255.255.255 - IP:11.0.0.24/255.255.255.255 - IP:11.0.0.25/255.255.255.255 - IP:11.0.0.26/255.255.255.255 - IP:11.0.0.27/255.255.255.255 - IP:11.0.0.28/255.255.255.255 - IP:11.0.0.29/255.255.255.255 - IP:11.0.0.30/255.255.255.255 - IP:11.0.0.31/255.255.255.255 - IP:11.0.0.32/255.255.255.255 - IP:11.0.0.33/255.255.255.255 - IP:11.0.0.34/255.255.255.255 - IP:11.0.0.35/255.255.255.255 - IP:11.0.0.36/255.255.255.255 - IP:11.0.0.37/255.255.255.255 - IP:11.0.0.38/255.255.255.255 - IP:11.0.0.39/255.255.255.255 - IP:11.0.0.40/255.255.255.255 - IP:11.0.0.41/255.255.255.255 - IP:11.0.0.42/255.255.255.255 - IP:11.0.0.43/255.255.255.255 - IP:11.0.0.44/255.255.255.255 - IP:11.0.0.45/255.255.255.255 - IP:11.0.0.46/255.255.255.255 - IP:11.0.0.47/255.255.255.255 - IP:11.0.0.48/255.255.255.255 - IP:11.0.0.49/255.255.255.255 - IP:11.0.0.50/255.255.255.255 - IP:11.0.0.51/255.255.255.255 - IP:11.0.0.52/255.255.255.255 - IP:11.0.0.53/255.255.255.255 - IP:11.0.0.54/255.255.255.255 - IP:11.0.0.55/255.255.255.255 - IP:11.0.0.56/255.255.255.255 - IP:11.0.0.57/255.255.255.255 - IP:11.0.0.58/255.255.255.255 - IP:11.0.0.59/255.255.255.255 - IP:11.0.0.60/255.255.255.255 - IP:11.0.0.61/255.255.255.255 - IP:11.0.0.62/255.255.255.255 - IP:11.0.0.63/255.255.255.255 - IP:11.0.0.64/255.255.255.255 - IP:11.0.0.65/255.255.255.255 - IP:11.0.0.66/255.255.255.255 - IP:11.0.0.67/255.255.255.255 - IP:11.0.0.68/255.255.255.255 - IP:11.0.0.69/255.255.255.255 - IP:11.0.0.70/255.255.255.255 - IP:11.0.0.71/255.255.255.255 - IP:11.0.0.72/255.255.255.255 - IP:11.0.0.73/255.255.255.255 - IP:11.0.0.74/255.255.255.255 - IP:11.0.0.75/255.255.255.255 - IP:11.0.0.76/255.255.255.255 - IP:11.0.0.77/255.255.255.255 - IP:11.0.0.78/255.255.255.255 - IP:11.0.0.79/255.255.255.255 - IP:11.0.0.80/255.255.255.255 - IP:11.0.0.81/255.255.255.255 - IP:11.0.0.82/255.255.255.255 - IP:11.0.0.83/255.255.255.255 - IP:11.0.0.84/255.255.255.255 - IP:11.0.0.85/255.255.255.255 - IP:11.0.0.86/255.255.255.255 - IP:11.0.0.87/255.255.255.255 - IP:11.0.0.88/255.255.255.255 - IP:11.0.0.89/255.255.255.255 - IP:11.0.0.90/255.255.255.255 - IP:11.0.0.91/255.255.255.255 - IP:11.0.0.92/255.255.255.255 - IP:11.0.0.93/255.255.255.255 - IP:11.0.0.94/255.255.255.255 - IP:11.0.0.95/255.255.255.255 - IP:11.0.0.96/255.255.255.255 - IP:11.0.0.97/255.255.255.255 - IP:11.0.0.98/255.255.255.255 - IP:11.0.0.99/255.255.255.255 - IP:11.0.0.100/255.255.255.255 - IP:11.0.0.101/255.255.255.255 - IP:11.0.0.102/255.255.255.255 - IP:11.0.0.103/255.255.255.255 - IP:11.0.0.104/255.255.255.255 - IP:11.0.0.105/255.255.255.255 - IP:11.0.0.106/255.255.255.255 - IP:11.0.0.107/255.255.255.255 - IP:11.0.0.108/255.255.255.255 - IP:11.0.0.109/255.255.255.255 - IP:11.0.0.110/255.255.255.255 - IP:11.0.0.111/255.255.255.255 - IP:11.0.0.112/255.255.255.255 - IP:11.0.0.113/255.255.255.255 - IP:11.0.0.114/255.255.255.255 - IP:11.0.0.115/255.255.255.255 - IP:11.0.0.116/255.255.255.255 - IP:11.0.0.117/255.255.255.255 - IP:11.0.0.118/255.255.255.255 - IP:11.0.0.119/255.255.255.255 - IP:11.0.0.120/255.255.255.255 - IP:11.0.0.121/255.255.255.255 - IP:11.0.0.122/255.255.255.255 - IP:11.0.0.123/255.255.255.255 - IP:11.0.0.124/255.255.255.255 - IP:11.0.0.125/255.255.255.255 - IP:11.0.0.126/255.255.255.255 - IP:11.0.0.127/255.255.255.255 - IP:11.0.0.128/255.255.255.255 - IP:11.0.0.129/255.255.255.255 - IP:11.0.0.130/255.255.255.255 - IP:11.0.0.131/255.255.255.255 - IP:11.0.0.132/255.255.255.255 - IP:11.0.0.133/255.255.255.255 - IP:11.0.0.134/255.255.255.255 - IP:11.0.0.135/255.255.255.255 - IP:11.0.0.136/255.255.255.255 - IP:11.0.0.137/255.255.255.255 - IP:11.0.0.138/255.255.255.255 - IP:11.0.0.139/255.255.255.255 - IP:11.0.0.140/255.255.255.255 - IP:11.0.0.141/255.255.255.255 - IP:11.0.0.142/255.255.255.255 - IP:11.0.0.143/255.255.255.255 - IP:11.0.0.144/255.255.255.255 - IP:11.0.0.145/255.255.255.255 - IP:11.0.0.146/255.255.255.255 - IP:11.0.0.147/255.255.255.255 - IP:11.0.0.148/255.255.255.255 - IP:11.0.0.149/255.255.255.255 - IP:11.0.0.150/255.255.255.255 - IP:11.0.0.151/255.255.255.255 - IP:11.0.0.152/255.255.255.255 - IP:11.0.0.153/255.255.255.255 - IP:11.0.0.154/255.255.255.255 - IP:11.0.0.155/255.255.255.255 - IP:11.0.0.156/255.255.255.255 - IP:11.0.0.157/255.255.255.255 - IP:11.0.0.158/255.255.255.255 - IP:11.0.0.159/255.255.255.255 - IP:11.0.0.160/255.255.255.255 - IP:11.0.0.161/255.255.255.255 - IP:11.0.0.162/255.255.255.255 - IP:11.0.0.163/255.255.255.255 - IP:11.0.0.164/255.255.255.255 - IP:11.0.0.165/255.255.255.255 - IP:11.0.0.166/255.255.255.255 - IP:11.0.0.167/255.255.255.255 - IP:11.0.0.168/255.255.255.255 - IP:11.0.0.169/255.255.255.255 - IP:11.0.0.170/255.255.255.255 - IP:11.0.0.171/255.255.255.255 - IP:11.0.0.172/255.255.255.255 - IP:11.0.0.173/255.255.255.255 - IP:11.0.0.174/255.255.255.255 - IP:11.0.0.175/255.255.255.255 - IP:11.0.0.176/255.255.255.255 - IP:11.0.0.177/255.255.255.255 - IP:11.0.0.178/255.255.255.255 - IP:11.0.0.179/255.255.255.255 - IP:11.0.0.180/255.255.255.255 - IP:11.0.0.181/255.255.255.255 - IP:11.0.0.182/255.255.255.255 - IP:11.0.0.183/255.255.255.255 - IP:11.0.0.184/255.255.255.255 - IP:11.0.0.185/255.255.255.255 - IP:11.0.0.186/255.255.255.255 - IP:11.0.0.187/255.255.255.255 - IP:11.0.0.188/255.255.255.255 - IP:11.0.0.189/255.255.255.255 - IP:11.0.0.190/255.255.255.255 - IP:11.0.0.191/255.255.255.255 - IP:11.0.0.192/255.255.255.255 - IP:11.0.0.193/255.255.255.255 - IP:11.0.0.194/255.255.255.255 - IP:11.0.0.195/255.255.255.255 - IP:11.0.0.196/255.255.255.255 - IP:11.0.0.197/255.255.255.255 - IP:11.0.0.198/255.255.255.255 - IP:11.0.0.199/255.255.255.255 - IP:11.0.0.200/255.255.255.255 - IP:11.0.0.201/255.255.255.255 - IP:11.0.0.202/255.255.255.255 - IP:11.0.0.203/255.255.255.255 - IP:11.0.0.204/255.255.255.255 - IP:11.0.0.205/255.255.255.255 - IP:11.0.0.206/255.255.255.255 - IP:11.0.0.207/255.255.255.255 - IP:11.0.0.208/255.255.255.255 - IP:11.0.0.209/255.255.255.255 - IP:11.0.0.210/255.255.255.255 - IP:11.0.0.211/255.255.255.255 - IP:11.0.0.212/255.255.255.255 - IP:11.0.0.213/255.255.255.255 - IP:11.0.0.214/255.255.255.255 - IP:11.0.0.215/255.255.255.255 - IP:11.0.0.216/255.255.255.255 - IP:11.0.0.217/255.255.255.255 - IP:11.0.0.218/255.255.255.255 - IP:11.0.0.219/255.255.255.255 - IP:11.0.0.220/255.255.255.255 - IP:11.0.0.221/255.255.255.255 - IP:11.0.0.222/255.255.255.255 - IP:11.0.0.223/255.255.255.255 - IP:11.0.0.224/255.255.255.255 - IP:11.0.0.225/255.255.255.255 - IP:11.0.0.226/255.255.255.255 - IP:11.0.0.227/255.255.255.255 - IP:11.0.0.228/255.255.255.255 - IP:11.0.0.229/255.255.255.255 - IP:11.0.0.230/255.255.255.255 - IP:11.0.0.231/255.255.255.255 - IP:11.0.0.232/255.255.255.255 - IP:11.0.0.233/255.255.255.255 - IP:11.0.0.234/255.255.255.255 - IP:11.0.0.235/255.255.255.255 - IP:11.0.0.236/255.255.255.255 - IP:11.0.0.237/255.255.255.255 - IP:11.0.0.238/255.255.255.255 - IP:11.0.0.239/255.255.255.255 - IP:11.0.0.240/255.255.255.255 - IP:11.0.0.241/255.255.255.255 - IP:11.0.0.242/255.255.255.255 - IP:11.0.0.243/255.255.255.255 - IP:11.0.0.244/255.255.255.255 - IP:11.0.0.245/255.255.255.255 - IP:11.0.0.246/255.255.255.255 - IP:11.0.0.247/255.255.255.255 - IP:11.0.0.248/255.255.255.255 - IP:11.0.0.249/255.255.255.255 - IP:11.0.0.250/255.255.255.255 - IP:11.0.0.251/255.255.255.255 - IP:11.0.0.252/255.255.255.255 - IP:11.0.0.253/255.255.255.255 - IP:11.0.0.254/255.255.255.255 - IP:11.0.0.255/255.255.255.255 - IP:11.0.1.0/255.255.255.255 - IP:11.0.1.1/255.255.255.255 - IP:11.0.1.2/255.255.255.255 - IP:11.0.1.3/255.255.255.255 - IP:11.0.1.4/255.255.255.255 - IP:11.0.1.5/255.255.255.255 - IP:11.0.1.6/255.255.255.255 - IP:11.0.1.7/255.255.255.255 - IP:11.0.1.8/255.255.255.255 - IP:11.0.1.9/255.255.255.255 - IP:11.0.1.10/255.255.255.255 - IP:11.0.1.11/255.255.255.255 - IP:11.0.1.12/255.255.255.255 - IP:11.0.1.13/255.255.255.255 - IP:11.0.1.14/255.255.255.255 - IP:11.0.1.15/255.255.255.255 - IP:11.0.1.16/255.255.255.255 - IP:11.0.1.17/255.255.255.255 - IP:11.0.1.18/255.255.255.255 - IP:11.0.1.19/255.255.255.255 - IP:11.0.1.20/255.255.255.255 - IP:11.0.1.21/255.255.255.255 - IP:11.0.1.22/255.255.255.255 - IP:11.0.1.23/255.255.255.255 - IP:11.0.1.24/255.255.255.255 - IP:11.0.1.25/255.255.255.255 - IP:11.0.1.26/255.255.255.255 - IP:11.0.1.27/255.255.255.255 - IP:11.0.1.28/255.255.255.255 - IP:11.0.1.29/255.255.255.255 - IP:11.0.1.30/255.255.255.255 - IP:11.0.1.31/255.255.255.255 - IP:11.0.1.32/255.255.255.255 - IP:11.0.1.33/255.255.255.255 - IP:11.0.1.34/255.255.255.255 - IP:11.0.1.35/255.255.255.255 - IP:11.0.1.36/255.255.255.255 - IP:11.0.1.37/255.255.255.255 - IP:11.0.1.38/255.255.255.255 - IP:11.0.1.39/255.255.255.255 - IP:11.0.1.40/255.255.255.255 - IP:11.0.1.41/255.255.255.255 - IP:11.0.1.42/255.255.255.255 - IP:11.0.1.43/255.255.255.255 - IP:11.0.1.44/255.255.255.255 - IP:11.0.1.45/255.255.255.255 - IP:11.0.1.46/255.255.255.255 - IP:11.0.1.47/255.255.255.255 - IP:11.0.1.48/255.255.255.255 - IP:11.0.1.49/255.255.255.255 - IP:11.0.1.50/255.255.255.255 - IP:11.0.1.51/255.255.255.255 - IP:11.0.1.52/255.255.255.255 - IP:11.0.1.53/255.255.255.255 - IP:11.0.1.54/255.255.255.255 - IP:11.0.1.55/255.255.255.255 - IP:11.0.1.56/255.255.255.255 - IP:11.0.1.57/255.255.255.255 - IP:11.0.1.58/255.255.255.255 - IP:11.0.1.59/255.255.255.255 - IP:11.0.1.60/255.255.255.255 - IP:11.0.1.61/255.255.255.255 - IP:11.0.1.62/255.255.255.255 - IP:11.0.1.63/255.255.255.255 - IP:11.0.1.64/255.255.255.255 - IP:11.0.1.65/255.255.255.255 - IP:11.0.1.66/255.255.255.255 - IP:11.0.1.67/255.255.255.255 - IP:11.0.1.68/255.255.255.255 - IP:11.0.1.69/255.255.255.255 - IP:11.0.1.70/255.255.255.255 - IP:11.0.1.71/255.255.255.255 - IP:11.0.1.72/255.255.255.255 - IP:11.0.1.73/255.255.255.255 - IP:11.0.1.74/255.255.255.255 - IP:11.0.1.75/255.255.255.255 - IP:11.0.1.76/255.255.255.255 - IP:11.0.1.77/255.255.255.255 - IP:11.0.1.78/255.255.255.255 - IP:11.0.1.79/255.255.255.255 - IP:11.0.1.80/255.255.255.255 - IP:11.0.1.81/255.255.255.255 - IP:11.0.1.82/255.255.255.255 - IP:11.0.1.83/255.255.255.255 - IP:11.0.1.84/255.255.255.255 - IP:11.0.1.85/255.255.255.255 - IP:11.0.1.86/255.255.255.255 - IP:11.0.1.87/255.255.255.255 - IP:11.0.1.88/255.255.255.255 - IP:11.0.1.89/255.255.255.255 - IP:11.0.1.90/255.255.255.255 - IP:11.0.1.91/255.255.255.255 - IP:11.0.1.92/255.255.255.255 - IP:11.0.1.93/255.255.255.255 - IP:11.0.1.94/255.255.255.255 - IP:11.0.1.95/255.255.255.255 - IP:11.0.1.96/255.255.255.255 - IP:11.0.1.97/255.255.255.255 - IP:11.0.1.98/255.255.255.255 - IP:11.0.1.99/255.255.255.255 - IP:11.0.1.100/255.255.255.255 - IP:11.0.1.101/255.255.255.255 - IP:11.0.1.102/255.255.255.255 - IP:11.0.1.103/255.255.255.255 - IP:11.0.1.104/255.255.255.255 - IP:11.0.1.105/255.255.255.255 - IP:11.0.1.106/255.255.255.255 - IP:11.0.1.107/255.255.255.255 - IP:11.0.1.108/255.255.255.255 - IP:11.0.1.109/255.255.255.255 - IP:11.0.1.110/255.255.255.255 - IP:11.0.1.111/255.255.255.255 - IP:11.0.1.112/255.255.255.255 - IP:11.0.1.113/255.255.255.255 - IP:11.0.1.114/255.255.255.255 - IP:11.0.1.115/255.255.255.255 - IP:11.0.1.116/255.255.255.255 - IP:11.0.1.117/255.255.255.255 - IP:11.0.1.118/255.255.255.255 - IP:11.0.1.119/255.255.255.255 - IP:11.0.1.120/255.255.255.255 - IP:11.0.1.121/255.255.255.255 - IP:11.0.1.122/255.255.255.255 - IP:11.0.1.123/255.255.255.255 - IP:11.0.1.124/255.255.255.255 - IP:11.0.1.125/255.255.255.255 - IP:11.0.1.126/255.255.255.255 - IP:11.0.1.127/255.255.255.255 - IP:11.0.1.128/255.255.255.255 - IP:11.0.1.129/255.255.255.255 - IP:11.0.1.130/255.255.255.255 - IP:11.0.1.131/255.255.255.255 - IP:11.0.1.132/255.255.255.255 - IP:11.0.1.133/255.255.255.255 - IP:11.0.1.134/255.255.255.255 - IP:11.0.1.135/255.255.255.255 - IP:11.0.1.136/255.255.255.255 - IP:11.0.1.137/255.255.255.255 - IP:11.0.1.138/255.255.255.255 - IP:11.0.1.139/255.255.255.255 - IP:11.0.1.140/255.255.255.255 - IP:11.0.1.141/255.255.255.255 - IP:11.0.1.142/255.255.255.255 - IP:11.0.1.143/255.255.255.255 - IP:11.0.1.144/255.255.255.255 - IP:11.0.1.145/255.255.255.255 - IP:11.0.1.146/255.255.255.255 - IP:11.0.1.147/255.255.255.255 - IP:11.0.1.148/255.255.255.255 - IP:11.0.1.149/255.255.255.255 - IP:11.0.1.150/255.255.255.255 - IP:11.0.1.151/255.255.255.255 - IP:11.0.1.152/255.255.255.255 - IP:11.0.1.153/255.255.255.255 - IP:11.0.1.154/255.255.255.255 - IP:11.0.1.155/255.255.255.255 - IP:11.0.1.156/255.255.255.255 - IP:11.0.1.157/255.255.255.255 - IP:11.0.1.158/255.255.255.255 - IP:11.0.1.159/255.255.255.255 - IP:11.0.1.160/255.255.255.255 - IP:11.0.1.161/255.255.255.255 - IP:11.0.1.162/255.255.255.255 - IP:11.0.1.163/255.255.255.255 - IP:11.0.1.164/255.255.255.255 - IP:11.0.1.165/255.255.255.255 - IP:11.0.1.166/255.255.255.255 - IP:11.0.1.167/255.255.255.255 - IP:11.0.1.168/255.255.255.255 - IP:11.0.1.169/255.255.255.255 - IP:11.0.1.170/255.255.255.255 - IP:11.0.1.171/255.255.255.255 - IP:11.0.1.172/255.255.255.255 - IP:11.0.1.173/255.255.255.255 - IP:11.0.1.174/255.255.255.255 - IP:11.0.1.175/255.255.255.255 - IP:11.0.1.176/255.255.255.255 - IP:11.0.1.177/255.255.255.255 - IP:11.0.1.178/255.255.255.255 - IP:11.0.1.179/255.255.255.255 - IP:11.0.1.180/255.255.255.255 - IP:11.0.1.181/255.255.255.255 - IP:11.0.1.182/255.255.255.255 - IP:11.0.1.183/255.255.255.255 - IP:11.0.1.184/255.255.255.255 - IP:11.0.1.185/255.255.255.255 - IP:11.0.1.186/255.255.255.255 - IP:11.0.1.187/255.255.255.255 - IP:11.0.1.188/255.255.255.255 - IP:11.0.1.189/255.255.255.255 - IP:11.0.1.190/255.255.255.255 - IP:11.0.1.191/255.255.255.255 - IP:11.0.1.192/255.255.255.255 - IP:11.0.1.193/255.255.255.255 - IP:11.0.1.194/255.255.255.255 - IP:11.0.1.195/255.255.255.255 - IP:11.0.1.196/255.255.255.255 - IP:11.0.1.197/255.255.255.255 - IP:11.0.1.198/255.255.255.255 - IP:11.0.1.199/255.255.255.255 - IP:11.0.1.200/255.255.255.255 - IP:11.0.1.201/255.255.255.255 - IP:11.0.1.202/255.255.255.255 - IP:11.0.1.203/255.255.255.255 - IP:11.0.1.204/255.255.255.255 - IP:11.0.1.205/255.255.255.255 - IP:11.0.1.206/255.255.255.255 - IP:11.0.1.207/255.255.255.255 - IP:11.0.1.208/255.255.255.255 - IP:11.0.1.209/255.255.255.255 - IP:11.0.1.210/255.255.255.255 - IP:11.0.1.211/255.255.255.255 - IP:11.0.1.212/255.255.255.255 - IP:11.0.1.213/255.255.255.255 - IP:11.0.1.214/255.255.255.255 - IP:11.0.1.215/255.255.255.255 - IP:11.0.1.216/255.255.255.255 - IP:11.0.1.217/255.255.255.255 - IP:11.0.1.218/255.255.255.255 - IP:11.0.1.219/255.255.255.255 - IP:11.0.1.220/255.255.255.255 - IP:11.0.1.221/255.255.255.255 - IP:11.0.1.222/255.255.255.255 - IP:11.0.1.223/255.255.255.255 - IP:11.0.1.224/255.255.255.255 - IP:11.0.1.225/255.255.255.255 - IP:11.0.1.226/255.255.255.255 - IP:11.0.1.227/255.255.255.255 - IP:11.0.1.228/255.255.255.255 - IP:11.0.1.229/255.255.255.255 - IP:11.0.1.230/255.255.255.255 - IP:11.0.1.231/255.255.255.255 - IP:11.0.1.232/255.255.255.255 - IP:11.0.1.233/255.255.255.255 - IP:11.0.1.234/255.255.255.255 - IP:11.0.1.235/255.255.255.255 - IP:11.0.1.236/255.255.255.255 - IP:11.0.1.237/255.255.255.255 - IP:11.0.1.238/255.255.255.255 - IP:11.0.1.239/255.255.255.255 - IP:11.0.1.240/255.255.255.255 - IP:11.0.1.241/255.255.255.255 - IP:11.0.1.242/255.255.255.255 - IP:11.0.1.243/255.255.255.255 - IP:11.0.1.244/255.255.255.255 - IP:11.0.1.245/255.255.255.255 - IP:11.0.1.246/255.255.255.255 - IP:11.0.1.247/255.255.255.255 - IP:11.0.1.248/255.255.255.255 - IP:11.0.1.249/255.255.255.255 - IP:11.0.1.250/255.255.255.255 - IP:11.0.1.251/255.255.255.255 - IP:11.0.1.252/255.255.255.255 - IP:11.0.1.253/255.255.255.255 - IP:11.0.1.254/255.255.255.255 - IP:11.0.1.255/255.255.255.255 - IP:11.0.2.0/255.255.255.255 - IP:11.0.2.1/255.255.255.255 - IP:11.0.2.2/255.255.255.255 - IP:11.0.2.3/255.255.255.255 - IP:11.0.2.4/255.255.255.255 - IP:11.0.2.5/255.255.255.255 - IP:11.0.2.6/255.255.255.255 - IP:11.0.2.7/255.255.255.255 - IP:11.0.2.8/255.255.255.255 - IP:11.0.2.9/255.255.255.255 - IP:11.0.2.10/255.255.255.255 - IP:11.0.2.11/255.255.255.255 - IP:11.0.2.12/255.255.255.255 - IP:11.0.2.13/255.255.255.255 - IP:11.0.2.14/255.255.255.255 - IP:11.0.2.15/255.255.255.255 - IP:11.0.2.16/255.255.255.255 - IP:11.0.2.17/255.255.255.255 - IP:11.0.2.18/255.255.255.255 - IP:11.0.2.19/255.255.255.255 - IP:11.0.2.20/255.255.255.255 - IP:11.0.2.21/255.255.255.255 - IP:11.0.2.22/255.255.255.255 - IP:11.0.2.23/255.255.255.255 - IP:11.0.2.24/255.255.255.255 - IP:11.0.2.25/255.255.255.255 - IP:11.0.2.26/255.255.255.255 - IP:11.0.2.27/255.255.255.255 - IP:11.0.2.28/255.255.255.255 - IP:11.0.2.29/255.255.255.255 - IP:11.0.2.30/255.255.255.255 - IP:11.0.2.31/255.255.255.255 - IP:11.0.2.32/255.255.255.255 - IP:11.0.2.33/255.255.255.255 - IP:11.0.2.34/255.255.255.255 - IP:11.0.2.35/255.255.255.255 - IP:11.0.2.36/255.255.255.255 - IP:11.0.2.37/255.255.255.255 - IP:11.0.2.38/255.255.255.255 - IP:11.0.2.39/255.255.255.255 - IP:11.0.2.40/255.255.255.255 - IP:11.0.2.41/255.255.255.255 - IP:11.0.2.42/255.255.255.255 - IP:11.0.2.43/255.255.255.255 - IP:11.0.2.44/255.255.255.255 - IP:11.0.2.45/255.255.255.255 - IP:11.0.2.46/255.255.255.255 - IP:11.0.2.47/255.255.255.255 - IP:11.0.2.48/255.255.255.255 - IP:11.0.2.49/255.255.255.255 - IP:11.0.2.50/255.255.255.255 - IP:11.0.2.51/255.255.255.255 - IP:11.0.2.52/255.255.255.255 - IP:11.0.2.53/255.255.255.255 - IP:11.0.2.54/255.255.255.255 - IP:11.0.2.55/255.255.255.255 - IP:11.0.2.56/255.255.255.255 - IP:11.0.2.57/255.255.255.255 - IP:11.0.2.58/255.255.255.255 - IP:11.0.2.59/255.255.255.255 - IP:11.0.2.60/255.255.255.255 - IP:11.0.2.61/255.255.255.255 - IP:11.0.2.62/255.255.255.255 - IP:11.0.2.63/255.255.255.255 - IP:11.0.2.64/255.255.255.255 - IP:11.0.2.65/255.255.255.255 - IP:11.0.2.66/255.255.255.255 - IP:11.0.2.67/255.255.255.255 - IP:11.0.2.68/255.255.255.255 - IP:11.0.2.69/255.255.255.255 - IP:11.0.2.70/255.255.255.255 - IP:11.0.2.71/255.255.255.255 - IP:11.0.2.72/255.255.255.255 - IP:11.0.2.73/255.255.255.255 - IP:11.0.2.74/255.255.255.255 - IP:11.0.2.75/255.255.255.255 - IP:11.0.2.76/255.255.255.255 - IP:11.0.2.77/255.255.255.255 - IP:11.0.2.78/255.255.255.255 - IP:11.0.2.79/255.255.255.255 - IP:11.0.2.80/255.255.255.255 - IP:11.0.2.81/255.255.255.255 - IP:11.0.2.82/255.255.255.255 - IP:11.0.2.83/255.255.255.255 - IP:11.0.2.84/255.255.255.255 - IP:11.0.2.85/255.255.255.255 - IP:11.0.2.86/255.255.255.255 - IP:11.0.2.87/255.255.255.255 - IP:11.0.2.88/255.255.255.255 - IP:11.0.2.89/255.255.255.255 - IP:11.0.2.90/255.255.255.255 - IP:11.0.2.91/255.255.255.255 - IP:11.0.2.92/255.255.255.255 - IP:11.0.2.93/255.255.255.255 - IP:11.0.2.94/255.255.255.255 - IP:11.0.2.95/255.255.255.255 - IP:11.0.2.96/255.255.255.255 - IP:11.0.2.97/255.255.255.255 - IP:11.0.2.98/255.255.255.255 - IP:11.0.2.99/255.255.255.255 - IP:11.0.2.100/255.255.255.255 - IP:11.0.2.101/255.255.255.255 - IP:11.0.2.102/255.255.255.255 - IP:11.0.2.103/255.255.255.255 - IP:11.0.2.104/255.255.255.255 - IP:11.0.2.105/255.255.255.255 - IP:11.0.2.106/255.255.255.255 - IP:11.0.2.107/255.255.255.255 - IP:11.0.2.108/255.255.255.255 - IP:11.0.2.109/255.255.255.255 - IP:11.0.2.110/255.255.255.255 - IP:11.0.2.111/255.255.255.255 - IP:11.0.2.112/255.255.255.255 - IP:11.0.2.113/255.255.255.255 - IP:11.0.2.114/255.255.255.255 - IP:11.0.2.115/255.255.255.255 - IP:11.0.2.116/255.255.255.255 - IP:11.0.2.117/255.255.255.255 - IP:11.0.2.118/255.255.255.255 - IP:11.0.2.119/255.255.255.255 - IP:11.0.2.120/255.255.255.255 - IP:11.0.2.121/255.255.255.255 - IP:11.0.2.122/255.255.255.255 - IP:11.0.2.123/255.255.255.255 - IP:11.0.2.124/255.255.255.255 - IP:11.0.2.125/255.255.255.255 - IP:11.0.2.126/255.255.255.255 - IP:11.0.2.127/255.255.255.255 - IP:11.0.2.128/255.255.255.255 - IP:11.0.2.129/255.255.255.255 - IP:11.0.2.130/255.255.255.255 - IP:11.0.2.131/255.255.255.255 - IP:11.0.2.132/255.255.255.255 - IP:11.0.2.133/255.255.255.255 - IP:11.0.2.134/255.255.255.255 - IP:11.0.2.135/255.255.255.255 - IP:11.0.2.136/255.255.255.255 - IP:11.0.2.137/255.255.255.255 - IP:11.0.2.138/255.255.255.255 - IP:11.0.2.139/255.255.255.255 - IP:11.0.2.140/255.255.255.255 - IP:11.0.2.141/255.255.255.255 - IP:11.0.2.142/255.255.255.255 - IP:11.0.2.143/255.255.255.255 - IP:11.0.2.144/255.255.255.255 - IP:11.0.2.145/255.255.255.255 - IP:11.0.2.146/255.255.255.255 - IP:11.0.2.147/255.255.255.255 - IP:11.0.2.148/255.255.255.255 - IP:11.0.2.149/255.255.255.255 - IP:11.0.2.150/255.255.255.255 - IP:11.0.2.151/255.255.255.255 - IP:11.0.2.152/255.255.255.255 - IP:11.0.2.153/255.255.255.255 - IP:11.0.2.154/255.255.255.255 - IP:11.0.2.155/255.255.255.255 - IP:11.0.2.156/255.255.255.255 - IP:11.0.2.157/255.255.255.255 - IP:11.0.2.158/255.255.255.255 - IP:11.0.2.159/255.255.255.255 - IP:11.0.2.160/255.255.255.255 - IP:11.0.2.161/255.255.255.255 - IP:11.0.2.162/255.255.255.255 - IP:11.0.2.163/255.255.255.255 - IP:11.0.2.164/255.255.255.255 - IP:11.0.2.165/255.255.255.255 - IP:11.0.2.166/255.255.255.255 - IP:11.0.2.167/255.255.255.255 - IP:11.0.2.168/255.255.255.255 - IP:11.0.2.169/255.255.255.255 - IP:11.0.2.170/255.255.255.255 - IP:11.0.2.171/255.255.255.255 - IP:11.0.2.172/255.255.255.255 - IP:11.0.2.173/255.255.255.255 - IP:11.0.2.174/255.255.255.255 - IP:11.0.2.175/255.255.255.255 - IP:11.0.2.176/255.255.255.255 - IP:11.0.2.177/255.255.255.255 - IP:11.0.2.178/255.255.255.255 - IP:11.0.2.179/255.255.255.255 - IP:11.0.2.180/255.255.255.255 - IP:11.0.2.181/255.255.255.255 - IP:11.0.2.182/255.255.255.255 - IP:11.0.2.183/255.255.255.255 - IP:11.0.2.184/255.255.255.255 - IP:11.0.2.185/255.255.255.255 - IP:11.0.2.186/255.255.255.255 - IP:11.0.2.187/255.255.255.255 - IP:11.0.2.188/255.255.255.255 - IP:11.0.2.189/255.255.255.255 - IP:11.0.2.190/255.255.255.255 - IP:11.0.2.191/255.255.255.255 - IP:11.0.2.192/255.255.255.255 - IP:11.0.2.193/255.255.255.255 - IP:11.0.2.194/255.255.255.255 - IP:11.0.2.195/255.255.255.255 - IP:11.0.2.196/255.255.255.255 - IP:11.0.2.197/255.255.255.255 - IP:11.0.2.198/255.255.255.255 - IP:11.0.2.199/255.255.255.255 - IP:11.0.2.200/255.255.255.255 - IP:11.0.2.201/255.255.255.255 - IP:11.0.2.202/255.255.255.255 - IP:11.0.2.203/255.255.255.255 - IP:11.0.2.204/255.255.255.255 - IP:11.0.2.205/255.255.255.255 - IP:11.0.2.206/255.255.255.255 - IP:11.0.2.207/255.255.255.255 - IP:11.0.2.208/255.255.255.255 - IP:11.0.2.209/255.255.255.255 - IP:11.0.2.210/255.255.255.255 - IP:11.0.2.211/255.255.255.255 - IP:11.0.2.212/255.255.255.255 - IP:11.0.2.213/255.255.255.255 - IP:11.0.2.214/255.255.255.255 - IP:11.0.2.215/255.255.255.255 - IP:11.0.2.216/255.255.255.255 - IP:11.0.2.217/255.255.255.255 - IP:11.0.2.218/255.255.255.255 - IP:11.0.2.219/255.255.255.255 - IP:11.0.2.220/255.255.255.255 - IP:11.0.2.221/255.255.255.255 - IP:11.0.2.222/255.255.255.255 - IP:11.0.2.223/255.255.255.255 - IP:11.0.2.224/255.255.255.255 - IP:11.0.2.225/255.255.255.255 - IP:11.0.2.226/255.255.255.255 - IP:11.0.2.227/255.255.255.255 - IP:11.0.2.228/255.255.255.255 - IP:11.0.2.229/255.255.255.255 - IP:11.0.2.230/255.255.255.255 - IP:11.0.2.231/255.255.255.255 - IP:11.0.2.232/255.255.255.255 - IP:11.0.2.233/255.255.255.255 - IP:11.0.2.234/255.255.255.255 - IP:11.0.2.235/255.255.255.255 - IP:11.0.2.236/255.255.255.255 - IP:11.0.2.237/255.255.255.255 - IP:11.0.2.238/255.255.255.255 - IP:11.0.2.239/255.255.255.255 - IP:11.0.2.240/255.255.255.255 - IP:11.0.2.241/255.255.255.255 - IP:11.0.2.242/255.255.255.255 - IP:11.0.2.243/255.255.255.255 - IP:11.0.2.244/255.255.255.255 - IP:11.0.2.245/255.255.255.255 - IP:11.0.2.246/255.255.255.255 - IP:11.0.2.247/255.255.255.255 - IP:11.0.2.248/255.255.255.255 - IP:11.0.2.249/255.255.255.255 - IP:11.0.2.250/255.255.255.255 - IP:11.0.2.251/255.255.255.255 - IP:11.0.2.252/255.255.255.255 - IP:11.0.2.253/255.255.255.255 - IP:11.0.2.254/255.255.255.255 - IP:11.0.2.255/255.255.255.255 - IP:11.0.3.0/255.255.255.255 - IP:11.0.3.1/255.255.255.255 - IP:11.0.3.2/255.255.255.255 - IP:11.0.3.3/255.255.255.255 - IP:11.0.3.4/255.255.255.255 - IP:11.0.3.5/255.255.255.255 - IP:11.0.3.6/255.255.255.255 - IP:11.0.3.7/255.255.255.255 - IP:11.0.3.8/255.255.255.255 - IP:11.0.3.9/255.255.255.255 - IP:11.0.3.10/255.255.255.255 - IP:11.0.3.11/255.255.255.255 - IP:11.0.3.12/255.255.255.255 - IP:11.0.3.13/255.255.255.255 - IP:11.0.3.14/255.255.255.255 - IP:11.0.3.15/255.255.255.255 - IP:11.0.3.16/255.255.255.255 - IP:11.0.3.17/255.255.255.255 - IP:11.0.3.18/255.255.255.255 - IP:11.0.3.19/255.255.255.255 - IP:11.0.3.20/255.255.255.255 - IP:11.0.3.21/255.255.255.255 - IP:11.0.3.22/255.255.255.255 - IP:11.0.3.23/255.255.255.255 - IP:11.0.3.24/255.255.255.255 - IP:11.0.3.25/255.255.255.255 - IP:11.0.3.26/255.255.255.255 - IP:11.0.3.27/255.255.255.255 - IP:11.0.3.28/255.255.255.255 - IP:11.0.3.29/255.255.255.255 - IP:11.0.3.30/255.255.255.255 - IP:11.0.3.31/255.255.255.255 - IP:11.0.3.32/255.255.255.255 - IP:11.0.3.33/255.255.255.255 - IP:11.0.3.34/255.255.255.255 - IP:11.0.3.35/255.255.255.255 - IP:11.0.3.36/255.255.255.255 - IP:11.0.3.37/255.255.255.255 - IP:11.0.3.38/255.255.255.255 - IP:11.0.3.39/255.255.255.255 - IP:11.0.3.40/255.255.255.255 - IP:11.0.3.41/255.255.255.255 - IP:11.0.3.42/255.255.255.255 - IP:11.0.3.43/255.255.255.255 - IP:11.0.3.44/255.255.255.255 - IP:11.0.3.45/255.255.255.255 - IP:11.0.3.46/255.255.255.255 - IP:11.0.3.47/255.255.255.255 - IP:11.0.3.48/255.255.255.255 - IP:11.0.3.49/255.255.255.255 - IP:11.0.3.50/255.255.255.255 - IP:11.0.3.51/255.255.255.255 - IP:11.0.3.52/255.255.255.255 - IP:11.0.3.53/255.255.255.255 - IP:11.0.3.54/255.255.255.255 - IP:11.0.3.55/255.255.255.255 - IP:11.0.3.56/255.255.255.255 - IP:11.0.3.57/255.255.255.255 - IP:11.0.3.58/255.255.255.255 - IP:11.0.3.59/255.255.255.255 - IP:11.0.3.60/255.255.255.255 - IP:11.0.3.61/255.255.255.255 - IP:11.0.3.62/255.255.255.255 - IP:11.0.3.63/255.255.255.255 - IP:11.0.3.64/255.255.255.255 - IP:11.0.3.65/255.255.255.255 - IP:11.0.3.66/255.255.255.255 - IP:11.0.3.67/255.255.255.255 - IP:11.0.3.68/255.255.255.255 - IP:11.0.3.69/255.255.255.255 - IP:11.0.3.70/255.255.255.255 - IP:11.0.3.71/255.255.255.255 - IP:11.0.3.72/255.255.255.255 - IP:11.0.3.73/255.255.255.255 - IP:11.0.3.74/255.255.255.255 - IP:11.0.3.75/255.255.255.255 - IP:11.0.3.76/255.255.255.255 - IP:11.0.3.77/255.255.255.255 - IP:11.0.3.78/255.255.255.255 - IP:11.0.3.79/255.255.255.255 - IP:11.0.3.80/255.255.255.255 - IP:11.0.3.81/255.255.255.255 - IP:11.0.3.82/255.255.255.255 - IP:11.0.3.83/255.255.255.255 - IP:11.0.3.84/255.255.255.255 - IP:11.0.3.85/255.255.255.255 - IP:11.0.3.86/255.255.255.255 - IP:11.0.3.87/255.255.255.255 - IP:11.0.3.88/255.255.255.255 - IP:11.0.3.89/255.255.255.255 - IP:11.0.3.90/255.255.255.255 - IP:11.0.3.91/255.255.255.255 - IP:11.0.3.92/255.255.255.255 - IP:11.0.3.93/255.255.255.255 - IP:11.0.3.94/255.255.255.255 - IP:11.0.3.95/255.255.255.255 - IP:11.0.3.96/255.255.255.255 - IP:11.0.3.97/255.255.255.255 - IP:11.0.3.98/255.255.255.255 - IP:11.0.3.99/255.255.255.255 - IP:11.0.3.100/255.255.255.255 - IP:11.0.3.101/255.255.255.255 - IP:11.0.3.102/255.255.255.255 - IP:11.0.3.103/255.255.255.255 - IP:11.0.3.104/255.255.255.255 - IP:11.0.3.105/255.255.255.255 - IP:11.0.3.106/255.255.255.255 - IP:11.0.3.107/255.255.255.255 - IP:11.0.3.108/255.255.255.255 - IP:11.0.3.109/255.255.255.255 - IP:11.0.3.110/255.255.255.255 - IP:11.0.3.111/255.255.255.255 - IP:11.0.3.112/255.255.255.255 - IP:11.0.3.113/255.255.255.255 - IP:11.0.3.114/255.255.255.255 - IP:11.0.3.115/255.255.255.255 - IP:11.0.3.116/255.255.255.255 - IP:11.0.3.117/255.255.255.255 - IP:11.0.3.118/255.255.255.255 - IP:11.0.3.119/255.255.255.255 - IP:11.0.3.120/255.255.255.255 - IP:11.0.3.121/255.255.255.255 - IP:11.0.3.122/255.255.255.255 - IP:11.0.3.123/255.255.255.255 - IP:11.0.3.124/255.255.255.255 - IP:11.0.3.125/255.255.255.255 - IP:11.0.3.126/255.255.255.255 - IP:11.0.3.127/255.255.255.255 - IP:11.0.3.128/255.255.255.255 - IP:11.0.3.129/255.255.255.255 - IP:11.0.3.130/255.255.255.255 - IP:11.0.3.131/255.255.255.255 - IP:11.0.3.132/255.255.255.255 - IP:11.0.3.133/255.255.255.255 - IP:11.0.3.134/255.255.255.255 - IP:11.0.3.135/255.255.255.255 - IP:11.0.3.136/255.255.255.255 - IP:11.0.3.137/255.255.255.255 - IP:11.0.3.138/255.255.255.255 - IP:11.0.3.139/255.255.255.255 - IP:11.0.3.140/255.255.255.255 - IP:11.0.3.141/255.255.255.255 - IP:11.0.3.142/255.255.255.255 - IP:11.0.3.143/255.255.255.255 - IP:11.0.3.144/255.255.255.255 - IP:11.0.3.145/255.255.255.255 - IP:11.0.3.146/255.255.255.255 - IP:11.0.3.147/255.255.255.255 - IP:11.0.3.148/255.255.255.255 - IP:11.0.3.149/255.255.255.255 - IP:11.0.3.150/255.255.255.255 - IP:11.0.3.151/255.255.255.255 - IP:11.0.3.152/255.255.255.255 - IP:11.0.3.153/255.255.255.255 - IP:11.0.3.154/255.255.255.255 - IP:11.0.3.155/255.255.255.255 - IP:11.0.3.156/255.255.255.255 - IP:11.0.3.157/255.255.255.255 - IP:11.0.3.158/255.255.255.255 - IP:11.0.3.159/255.255.255.255 - IP:11.0.3.160/255.255.255.255 - IP:11.0.3.161/255.255.255.255 - IP:11.0.3.162/255.255.255.255 - IP:11.0.3.163/255.255.255.255 - IP:11.0.3.164/255.255.255.255 - IP:11.0.3.165/255.255.255.255 - IP:11.0.3.166/255.255.255.255 - IP:11.0.3.167/255.255.255.255 - IP:11.0.3.168/255.255.255.255 - IP:11.0.3.169/255.255.255.255 - IP:11.0.3.170/255.255.255.255 - IP:11.0.3.171/255.255.255.255 - IP:11.0.3.172/255.255.255.255 - IP:11.0.3.173/255.255.255.255 - IP:11.0.3.174/255.255.255.255 - IP:11.0.3.175/255.255.255.255 - IP:11.0.3.176/255.255.255.255 - IP:11.0.3.177/255.255.255.255 - IP:11.0.3.178/255.255.255.255 - IP:11.0.3.179/255.255.255.255 - IP:11.0.3.180/255.255.255.255 - IP:11.0.3.181/255.255.255.255 - IP:11.0.3.182/255.255.255.255 - IP:11.0.3.183/255.255.255.255 - IP:11.0.3.184/255.255.255.255 - IP:11.0.3.185/255.255.255.255 - IP:11.0.3.186/255.255.255.255 - IP:11.0.3.187/255.255.255.255 - IP:11.0.3.188/255.255.255.255 - IP:11.0.3.189/255.255.255.255 - IP:11.0.3.190/255.255.255.255 - IP:11.0.3.191/255.255.255.255 - IP:11.0.3.192/255.255.255.255 - IP:11.0.3.193/255.255.255.255 - IP:11.0.3.194/255.255.255.255 - IP:11.0.3.195/255.255.255.255 - IP:11.0.3.196/255.255.255.255 - IP:11.0.3.197/255.255.255.255 - IP:11.0.3.198/255.255.255.255 - IP:11.0.3.199/255.255.255.255 - IP:11.0.3.200/255.255.255.255 - IP:11.0.3.201/255.255.255.255 - IP:11.0.3.202/255.255.255.255 - IP:11.0.3.203/255.255.255.255 - IP:11.0.3.204/255.255.255.255 - IP:11.0.3.205/255.255.255.255 - IP:11.0.3.206/255.255.255.255 - IP:11.0.3.207/255.255.255.255 - IP:11.0.3.208/255.255.255.255 - IP:11.0.3.209/255.255.255.255 - IP:11.0.3.210/255.255.255.255 - IP:11.0.3.211/255.255.255.255 - IP:11.0.3.212/255.255.255.255 - IP:11.0.3.213/255.255.255.255 - IP:11.0.3.214/255.255.255.255 - IP:11.0.3.215/255.255.255.255 - IP:11.0.3.216/255.255.255.255 - IP:11.0.3.217/255.255.255.255 - IP:11.0.3.218/255.255.255.255 - IP:11.0.3.219/255.255.255.255 - IP:11.0.3.220/255.255.255.255 - IP:11.0.3.221/255.255.255.255 - IP:11.0.3.222/255.255.255.255 - IP:11.0.3.223/255.255.255.255 - IP:11.0.3.224/255.255.255.255 - IP:11.0.3.225/255.255.255.255 - IP:11.0.3.226/255.255.255.255 - IP:11.0.3.227/255.255.255.255 - IP:11.0.3.228/255.255.255.255 - IP:11.0.3.229/255.255.255.255 - IP:11.0.3.230/255.255.255.255 - IP:11.0.3.231/255.255.255.255 - IP:11.0.3.232/255.255.255.255 - IP:11.0.3.233/255.255.255.255 - IP:11.0.3.234/255.255.255.255 - IP:11.0.3.235/255.255.255.255 - IP:11.0.3.236/255.255.255.255 - IP:11.0.3.237/255.255.255.255 - IP:11.0.3.238/255.255.255.255 - IP:11.0.3.239/255.255.255.255 - IP:11.0.3.240/255.255.255.255 - IP:11.0.3.241/255.255.255.255 - IP:11.0.3.242/255.255.255.255 - IP:11.0.3.243/255.255.255.255 - IP:11.0.3.244/255.255.255.255 - IP:11.0.3.245/255.255.255.255 - IP:11.0.3.246/255.255.255.255 - IP:11.0.3.247/255.255.255.255 - IP:11.0.3.248/255.255.255.255 - IP:11.0.3.249/255.255.255.255 - IP:11.0.3.250/255.255.255.255 - IP:11.0.3.251/255.255.255.255 - IP:11.0.3.252/255.255.255.255 - IP:11.0.3.253/255.255.255.255 - IP:11.0.3.254/255.255.255.255 - IP:11.0.3.255/255.255.255.255 - IP:11.0.4.0/255.255.255.255 - - Signature Algorithm: sha256WithRSAEncryption - 7a:02:f3:cd:04:f5:98:dc:c0:7a:aa:25:b5:a1:72:e5:09:99: - 3f:b8:54:a2:b7:28:72:61:af:46:c0:09:cc:63:fd:d4:1b:a6: - 36:c5:e2:62:bb:aa:71:f7:92:d2:7a:07:1b:35:ec:c7:2f:ad: - 44:86:6b:43:df:7a:49:05:ac:33:80:81:77:15:76:fb:be:03: - df:89:76:72:1e:c6:7a:ee:01:84:35:4f:a9:7f:67:5a:a5:e0: - 01:df:83:ac:02:ff:9f:77:d8:57:fc:07:ce:87:d1:24:e8:c0: - ac:dd:9b:46:3a:70:86:f9:94:02:c5:63:75:f6:70:10:55:99: - 14:11:57:22:65:30:56:54:2b:95:db:36:02:72:b0:95:87:98: - 87:42:40:44:ff:4a:16:9e:f8:14:c4:b4:d5:ea:a8:06:b4:7b: - fb:eb:0d:45:35:db:8b:1a:3d:2c:df:39:d4:cd:9e:54:e8:e8: - 4f:37:1c:42:25:45:52:e6:c4:42:e7:85:f5:c7:3d:25:db:7f: - a0:29:4d:35:26:f4:d9:c1:4b:64:08:a7:66:fa:8f:4c:d3:94: - bf:8e:60:f3:53:bc:e9:83:c4:96:a1:97:66:27:df:55:90:1f: - 01:8e:6f:90:89:57:18:da:81:26:f1:f4:ad:74:1f:3b:2a:63: - 53:bf:2a:3e ------BEGIN CERTIFICATE----- -MIIzozCCMougAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vkwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCMO0wgjDpMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgjAdBgNVHR4EgjAUMIIwEKGCMAwwCocICwAAAP////8wCocICwAAAf////8w -CocICwAAAv////8wCocICwAAA/////8wCocICwAABP////8wCocICwAABf////8w -CocICwAABv////8wCocICwAAB/////8wCocICwAACP////8wCocICwAACf////8w -CocICwAACv////8wCocICwAAC/////8wCocICwAADP////8wCocICwAADf////8w -CocICwAADv////8wCocICwAAD/////8wCocICwAAEP////8wCocICwAAEf////8w -CocICwAAEv////8wCocICwAAE/////8wCocICwAAFP////8wCocICwAAFf////8w -CocICwAAFv////8wCocICwAAF/////8wCocICwAAGP////8wCocICwAAGf////8w -CocICwAAGv////8wCocICwAAG/////8wCocICwAAHP////8wCocICwAAHf////8w -CocICwAAHv////8wCocICwAAH/////8wCocICwAAIP////8wCocICwAAIf////8w -CocICwAAIv////8wCocICwAAI/////8wCocICwAAJP////8wCocICwAAJf////8w -CocICwAAJv////8wCocICwAAJ/////8wCocICwAAKP////8wCocICwAAKf////8w -CocICwAAKv////8wCocICwAAK/////8wCocICwAALP////8wCocICwAALf////8w -CocICwAALv////8wCocICwAAL/////8wCocICwAAMP////8wCocICwAAMf////8w -CocICwAAMv////8wCocICwAAM/////8wCocICwAANP////8wCocICwAANf////8w -CocICwAANv////8wCocICwAAN/////8wCocICwAAOP////8wCocICwAAOf////8w -CocICwAAOv////8wCocICwAAO/////8wCocICwAAPP////8wCocICwAAPf////8w -CocICwAAPv////8wCocICwAAP/////8wCocICwAAQP////8wCocICwAAQf////8w -CocICwAAQv////8wCocICwAAQ/////8wCocICwAARP////8wCocICwAARf////8w -CocICwAARv////8wCocICwAAR/////8wCocICwAASP////8wCocICwAASf////8w -CocICwAASv////8wCocICwAAS/////8wCocICwAATP////8wCocICwAATf////8w -CocICwAATv////8wCocICwAAT/////8wCocICwAAUP////8wCocICwAAUf////8w -CocICwAAUv////8wCocICwAAU/////8wCocICwAAVP////8wCocICwAAVf////8w -CocICwAAVv////8wCocICwAAV/////8wCocICwAAWP////8wCocICwAAWf////8w -CocICwAAWv////8wCocICwAAW/////8wCocICwAAXP////8wCocICwAAXf////8w -CocICwAAXv////8wCocICwAAX/////8wCocICwAAYP////8wCocICwAAYf////8w -CocICwAAYv////8wCocICwAAY/////8wCocICwAAZP////8wCocICwAAZf////8w -CocICwAAZv////8wCocICwAAZ/////8wCocICwAAaP////8wCocICwAAaf////8w -CocICwAAav////8wCocICwAAa/////8wCocICwAAbP////8wCocICwAAbf////8w -CocICwAAbv////8wCocICwAAb/////8wCocICwAAcP////8wCocICwAAcf////8w -CocICwAAcv////8wCocICwAAc/////8wCocICwAAdP////8wCocICwAAdf////8w -CocICwAAdv////8wCocICwAAd/////8wCocICwAAeP////8wCocICwAAef////8w -CocICwAAev////8wCocICwAAe/////8wCocICwAAfP////8wCocICwAAff////8w -CocICwAAfv////8wCocICwAAf/////8wCocICwAAgP////8wCocICwAAgf////8w -CocICwAAgv////8wCocICwAAg/////8wCocICwAAhP////8wCocICwAAhf////8w -CocICwAAhv////8wCocICwAAh/////8wCocICwAAiP////8wCocICwAAif////8w -CocICwAAiv////8wCocICwAAi/////8wCocICwAAjP////8wCocICwAAjf////8w -CocICwAAjv////8wCocICwAAj/////8wCocICwAAkP////8wCocICwAAkf////8w -CocICwAAkv////8wCocICwAAk/////8wCocICwAAlP////8wCocICwAAlf////8w -CocICwAAlv////8wCocICwAAl/////8wCocICwAAmP////8wCocICwAAmf////8w -CocICwAAmv////8wCocICwAAm/////8wCocICwAAnP////8wCocICwAAnf////8w -CocICwAAnv////8wCocICwAAn/////8wCocICwAAoP////8wCocICwAAof////8w -CocICwAAov////8wCocICwAAo/////8wCocICwAApP////8wCocICwAApf////8w -CocICwAApv////8wCocICwAAp/////8wCocICwAAqP////8wCocICwAAqf////8w -CocICwAAqv////8wCocICwAAq/////8wCocICwAArP////8wCocICwAArf////8w -CocICwAArv////8wCocICwAAr/////8wCocICwAAsP////8wCocICwAAsf////8w -CocICwAAsv////8wCocICwAAs/////8wCocICwAAtP////8wCocICwAAtf////8w -CocICwAAtv////8wCocICwAAt/////8wCocICwAAuP////8wCocICwAAuf////8w -CocICwAAuv////8wCocICwAAu/////8wCocICwAAvP////8wCocICwAAvf////8w -CocICwAAvv////8wCocICwAAv/////8wCocICwAAwP////8wCocICwAAwf////8w -CocICwAAwv////8wCocICwAAw/////8wCocICwAAxP////8wCocICwAAxf////8w -CocICwAAxv////8wCocICwAAx/////8wCocICwAAyP////8wCocICwAAyf////8w -CocICwAAyv////8wCocICwAAy/////8wCocICwAAzP////8wCocICwAAzf////8w -CocICwAAzv////8wCocICwAAz/////8wCocICwAA0P////8wCocICwAA0f////8w -CocICwAA0v////8wCocICwAA0/////8wCocICwAA1P////8wCocICwAA1f////8w -CocICwAA1v////8wCocICwAA1/////8wCocICwAA2P////8wCocICwAA2f////8w -CocICwAA2v////8wCocICwAA2/////8wCocICwAA3P////8wCocICwAA3f////8w -CocICwAA3v////8wCocICwAA3/////8wCocICwAA4P////8wCocICwAA4f////8w -CocICwAA4v////8wCocICwAA4/////8wCocICwAA5P////8wCocICwAA5f////8w -CocICwAA5v////8wCocICwAA5/////8wCocICwAA6P////8wCocICwAA6f////8w -CocICwAA6v////8wCocICwAA6/////8wCocICwAA7P////8wCocICwAA7f////8w -CocICwAA7v////8wCocICwAA7/////8wCocICwAA8P////8wCocICwAA8f////8w -CocICwAA8v////8wCocICwAA8/////8wCocICwAA9P////8wCocICwAA9f////8w -CocICwAA9v////8wCocICwAA9/////8wCocICwAA+P////8wCocICwAA+f////8w -CocICwAA+v////8wCocICwAA+/////8wCocICwAA/P////8wCocICwAA/f////8w -CocICwAA/v////8wCocICwAA//////8wCocICwABAP////8wCocICwABAf////8w -CocICwABAv////8wCocICwABA/////8wCocICwABBP////8wCocICwABBf////8w -CocICwABBv////8wCocICwABB/////8wCocICwABCP////8wCocICwABCf////8w -CocICwABCv////8wCocICwABC/////8wCocICwABDP////8wCocICwABDf////8w -CocICwABDv////8wCocICwABD/////8wCocICwABEP////8wCocICwABEf////8w -CocICwABEv////8wCocICwABE/////8wCocICwABFP////8wCocICwABFf////8w -CocICwABFv////8wCocICwABF/////8wCocICwABGP////8wCocICwABGf////8w -CocICwABGv////8wCocICwABG/////8wCocICwABHP////8wCocICwABHf////8w -CocICwABHv////8wCocICwABH/////8wCocICwABIP////8wCocICwABIf////8w -CocICwABIv////8wCocICwABI/////8wCocICwABJP////8wCocICwABJf////8w -CocICwABJv////8wCocICwABJ/////8wCocICwABKP////8wCocICwABKf////8w -CocICwABKv////8wCocICwABK/////8wCocICwABLP////8wCocICwABLf////8w -CocICwABLv////8wCocICwABL/////8wCocICwABMP////8wCocICwABMf////8w -CocICwABMv////8wCocICwABM/////8wCocICwABNP////8wCocICwABNf////8w -CocICwABNv////8wCocICwABN/////8wCocICwABOP////8wCocICwABOf////8w -CocICwABOv////8wCocICwABO/////8wCocICwABPP////8wCocICwABPf////8w -CocICwABPv////8wCocICwABP/////8wCocICwABQP////8wCocICwABQf////8w -CocICwABQv////8wCocICwABQ/////8wCocICwABRP////8wCocICwABRf////8w -CocICwABRv////8wCocICwABR/////8wCocICwABSP////8wCocICwABSf////8w -CocICwABSv////8wCocICwABS/////8wCocICwABTP////8wCocICwABTf////8w -CocICwABTv////8wCocICwABT/////8wCocICwABUP////8wCocICwABUf////8w -CocICwABUv////8wCocICwABU/////8wCocICwABVP////8wCocICwABVf////8w -CocICwABVv////8wCocICwABV/////8wCocICwABWP////8wCocICwABWf////8w -CocICwABWv////8wCocICwABW/////8wCocICwABXP////8wCocICwABXf////8w -CocICwABXv////8wCocICwABX/////8wCocICwABYP////8wCocICwABYf////8w -CocICwABYv////8wCocICwABY/////8wCocICwABZP////8wCocICwABZf////8w -CocICwABZv////8wCocICwABZ/////8wCocICwABaP////8wCocICwABaf////8w -CocICwABav////8wCocICwABa/////8wCocICwABbP////8wCocICwABbf////8w -CocICwABbv////8wCocICwABb/////8wCocICwABcP////8wCocICwABcf////8w -CocICwABcv////8wCocICwABc/////8wCocICwABdP////8wCocICwABdf////8w -CocICwABdv////8wCocICwABd/////8wCocICwABeP////8wCocICwABef////8w -CocICwABev////8wCocICwABe/////8wCocICwABfP////8wCocICwABff////8w -CocICwABfv////8wCocICwABf/////8wCocICwABgP////8wCocICwABgf////8w -CocICwABgv////8wCocICwABg/////8wCocICwABhP////8wCocICwABhf////8w -CocICwABhv////8wCocICwABh/////8wCocICwABiP////8wCocICwABif////8w -CocICwABiv////8wCocICwABi/////8wCocICwABjP////8wCocICwABjf////8w -CocICwABjv////8wCocICwABj/////8wCocICwABkP////8wCocICwABkf////8w -CocICwABkv////8wCocICwABk/////8wCocICwABlP////8wCocICwABlf////8w -CocICwABlv////8wCocICwABl/////8wCocICwABmP////8wCocICwABmf////8w -CocICwABmv////8wCocICwABm/////8wCocICwABnP////8wCocICwABnf////8w -CocICwABnv////8wCocICwABn/////8wCocICwABoP////8wCocICwABof////8w -CocICwABov////8wCocICwABo/////8wCocICwABpP////8wCocICwABpf////8w -CocICwABpv////8wCocICwABp/////8wCocICwABqP////8wCocICwABqf////8w -CocICwABqv////8wCocICwABq/////8wCocICwABrP////8wCocICwABrf////8w -CocICwABrv////8wCocICwABr/////8wCocICwABsP////8wCocICwABsf////8w -CocICwABsv////8wCocICwABs/////8wCocICwABtP////8wCocICwABtf////8w -CocICwABtv////8wCocICwABt/////8wCocICwABuP////8wCocICwABuf////8w -CocICwABuv////8wCocICwABu/////8wCocICwABvP////8wCocICwABvf////8w -CocICwABvv////8wCocICwABv/////8wCocICwABwP////8wCocICwABwf////8w -CocICwABwv////8wCocICwABw/////8wCocICwABxP////8wCocICwABxf////8w -CocICwABxv////8wCocICwABx/////8wCocICwAByP////8wCocICwAByf////8w -CocICwAByv////8wCocICwABy/////8wCocICwABzP////8wCocICwABzf////8w -CocICwABzv////8wCocICwABz/////8wCocICwAB0P////8wCocICwAB0f////8w -CocICwAB0v////8wCocICwAB0/////8wCocICwAB1P////8wCocICwAB1f////8w -CocICwAB1v////8wCocICwAB1/////8wCocICwAB2P////8wCocICwAB2f////8w -CocICwAB2v////8wCocICwAB2/////8wCocICwAB3P////8wCocICwAB3f////8w -CocICwAB3v////8wCocICwAB3/////8wCocICwAB4P////8wCocICwAB4f////8w -CocICwAB4v////8wCocICwAB4/////8wCocICwAB5P////8wCocICwAB5f////8w -CocICwAB5v////8wCocICwAB5/////8wCocICwAB6P////8wCocICwAB6f////8w -CocICwAB6v////8wCocICwAB6/////8wCocICwAB7P////8wCocICwAB7f////8w -CocICwAB7v////8wCocICwAB7/////8wCocICwAB8P////8wCocICwAB8f////8w -CocICwAB8v////8wCocICwAB8/////8wCocICwAB9P////8wCocICwAB9f////8w -CocICwAB9v////8wCocICwAB9/////8wCocICwAB+P////8wCocICwAB+f////8w -CocICwAB+v////8wCocICwAB+/////8wCocICwAB/P////8wCocICwAB/f////8w -CocICwAB/v////8wCocICwAB//////8wCocICwACAP////8wCocICwACAf////8w -CocICwACAv////8wCocICwACA/////8wCocICwACBP////8wCocICwACBf////8w -CocICwACBv////8wCocICwACB/////8wCocICwACCP////8wCocICwACCf////8w -CocICwACCv////8wCocICwACC/////8wCocICwACDP////8wCocICwACDf////8w -CocICwACDv////8wCocICwACD/////8wCocICwACEP////8wCocICwACEf////8w -CocICwACEv////8wCocICwACE/////8wCocICwACFP////8wCocICwACFf////8w -CocICwACFv////8wCocICwACF/////8wCocICwACGP////8wCocICwACGf////8w -CocICwACGv////8wCocICwACG/////8wCocICwACHP////8wCocICwACHf////8w -CocICwACHv////8wCocICwACH/////8wCocICwACIP////8wCocICwACIf////8w -CocICwACIv////8wCocICwACI/////8wCocICwACJP////8wCocICwACJf////8w -CocICwACJv////8wCocICwACJ/////8wCocICwACKP////8wCocICwACKf////8w -CocICwACKv////8wCocICwACK/////8wCocICwACLP////8wCocICwACLf////8w -CocICwACLv////8wCocICwACL/////8wCocICwACMP////8wCocICwACMf////8w -CocICwACMv////8wCocICwACM/////8wCocICwACNP////8wCocICwACNf////8w -CocICwACNv////8wCocICwACN/////8wCocICwACOP////8wCocICwACOf////8w -CocICwACOv////8wCocICwACO/////8wCocICwACPP////8wCocICwACPf////8w -CocICwACPv////8wCocICwACP/////8wCocICwACQP////8wCocICwACQf////8w -CocICwACQv////8wCocICwACQ/////8wCocICwACRP////8wCocICwACRf////8w -CocICwACRv////8wCocICwACR/////8wCocICwACSP////8wCocICwACSf////8w -CocICwACSv////8wCocICwACS/////8wCocICwACTP////8wCocICwACTf////8w -CocICwACTv////8wCocICwACT/////8wCocICwACUP////8wCocICwACUf////8w -CocICwACUv////8wCocICwACU/////8wCocICwACVP////8wCocICwACVf////8w -CocICwACVv////8wCocICwACV/////8wCocICwACWP////8wCocICwACWf////8w -CocICwACWv////8wCocICwACW/////8wCocICwACXP////8wCocICwACXf////8w -CocICwACXv////8wCocICwACX/////8wCocICwACYP////8wCocICwACYf////8w -CocICwACYv////8wCocICwACY/////8wCocICwACZP////8wCocICwACZf////8w -CocICwACZv////8wCocICwACZ/////8wCocICwACaP////8wCocICwACaf////8w -CocICwACav////8wCocICwACa/////8wCocICwACbP////8wCocICwACbf////8w -CocICwACbv////8wCocICwACb/////8wCocICwACcP////8wCocICwACcf////8w -CocICwACcv////8wCocICwACc/////8wCocICwACdP////8wCocICwACdf////8w -CocICwACdv////8wCocICwACd/////8wCocICwACeP////8wCocICwACef////8w -CocICwACev////8wCocICwACe/////8wCocICwACfP////8wCocICwACff////8w -CocICwACfv////8wCocICwACf/////8wCocICwACgP////8wCocICwACgf////8w -CocICwACgv////8wCocICwACg/////8wCocICwAChP////8wCocICwAChf////8w -CocICwAChv////8wCocICwACh/////8wCocICwACiP////8wCocICwACif////8w -CocICwACiv////8wCocICwACi/////8wCocICwACjP////8wCocICwACjf////8w -CocICwACjv////8wCocICwACj/////8wCocICwACkP////8wCocICwACkf////8w -CocICwACkv////8wCocICwACk/////8wCocICwAClP////8wCocICwAClf////8w -CocICwAClv////8wCocICwACl/////8wCocICwACmP////8wCocICwACmf////8w -CocICwACmv////8wCocICwACm/////8wCocICwACnP////8wCocICwACnf////8w -CocICwACnv////8wCocICwACn/////8wCocICwACoP////8wCocICwACof////8w -CocICwACov////8wCocICwACo/////8wCocICwACpP////8wCocICwACpf////8w -CocICwACpv////8wCocICwACp/////8wCocICwACqP////8wCocICwACqf////8w -CocICwACqv////8wCocICwACq/////8wCocICwACrP////8wCocICwACrf////8w -CocICwACrv////8wCocICwACr/////8wCocICwACsP////8wCocICwACsf////8w -CocICwACsv////8wCocICwACs/////8wCocICwACtP////8wCocICwACtf////8w -CocICwACtv////8wCocICwACt/////8wCocICwACuP////8wCocICwACuf////8w -CocICwACuv////8wCocICwACu/////8wCocICwACvP////8wCocICwACvf////8w -CocICwACvv////8wCocICwACv/////8wCocICwACwP////8wCocICwACwf////8w -CocICwACwv////8wCocICwACw/////8wCocICwACxP////8wCocICwACxf////8w -CocICwACxv////8wCocICwACx/////8wCocICwACyP////8wCocICwACyf////8w -CocICwACyv////8wCocICwACy/////8wCocICwACzP////8wCocICwACzf////8w -CocICwACzv////8wCocICwACz/////8wCocICwAC0P////8wCocICwAC0f////8w -CocICwAC0v////8wCocICwAC0/////8wCocICwAC1P////8wCocICwAC1f////8w -CocICwAC1v////8wCocICwAC1/////8wCocICwAC2P////8wCocICwAC2f////8w -CocICwAC2v////8wCocICwAC2/////8wCocICwAC3P////8wCocICwAC3f////8w -CocICwAC3v////8wCocICwAC3/////8wCocICwAC4P////8wCocICwAC4f////8w -CocICwAC4v////8wCocICwAC4/////8wCocICwAC5P////8wCocICwAC5f////8w -CocICwAC5v////8wCocICwAC5/////8wCocICwAC6P////8wCocICwAC6f////8w -CocICwAC6v////8wCocICwAC6/////8wCocICwAC7P////8wCocICwAC7f////8w -CocICwAC7v////8wCocICwAC7/////8wCocICwAC8P////8wCocICwAC8f////8w -CocICwAC8v////8wCocICwAC8/////8wCocICwAC9P////8wCocICwAC9f////8w -CocICwAC9v////8wCocICwAC9/////8wCocICwAC+P////8wCocICwAC+f////8w -CocICwAC+v////8wCocICwAC+/////8wCocICwAC/P////8wCocICwAC/f////8w -CocICwAC/v////8wCocICwAC//////8wCocICwADAP////8wCocICwADAf////8w -CocICwADAv////8wCocICwADA/////8wCocICwADBP////8wCocICwADBf////8w -CocICwADBv////8wCocICwADB/////8wCocICwADCP////8wCocICwADCf////8w -CocICwADCv////8wCocICwADC/////8wCocICwADDP////8wCocICwADDf////8w -CocICwADDv////8wCocICwADD/////8wCocICwADEP////8wCocICwADEf////8w -CocICwADEv////8wCocICwADE/////8wCocICwADFP////8wCocICwADFf////8w -CocICwADFv////8wCocICwADF/////8wCocICwADGP////8wCocICwADGf////8w -CocICwADGv////8wCocICwADG/////8wCocICwADHP////8wCocICwADHf////8w -CocICwADHv////8wCocICwADH/////8wCocICwADIP////8wCocICwADIf////8w -CocICwADIv////8wCocICwADI/////8wCocICwADJP////8wCocICwADJf////8w -CocICwADJv////8wCocICwADJ/////8wCocICwADKP////8wCocICwADKf////8w -CocICwADKv////8wCocICwADK/////8wCocICwADLP////8wCocICwADLf////8w -CocICwADLv////8wCocICwADL/////8wCocICwADMP////8wCocICwADMf////8w -CocICwADMv////8wCocICwADM/////8wCocICwADNP////8wCocICwADNf////8w -CocICwADNv////8wCocICwADN/////8wCocICwADOP////8wCocICwADOf////8w -CocICwADOv////8wCocICwADO/////8wCocICwADPP////8wCocICwADPf////8w -CocICwADPv////8wCocICwADP/////8wCocICwADQP////8wCocICwADQf////8w -CocICwADQv////8wCocICwADQ/////8wCocICwADRP////8wCocICwADRf////8w -CocICwADRv////8wCocICwADR/////8wCocICwADSP////8wCocICwADSf////8w -CocICwADSv////8wCocICwADS/////8wCocICwADTP////8wCocICwADTf////8w -CocICwADTv////8wCocICwADT/////8wCocICwADUP////8wCocICwADUf////8w -CocICwADUv////8wCocICwADU/////8wCocICwADVP////8wCocICwADVf////8w -CocICwADVv////8wCocICwADV/////8wCocICwADWP////8wCocICwADWf////8w -CocICwADWv////8wCocICwADW/////8wCocICwADXP////8wCocICwADXf////8w -CocICwADXv////8wCocICwADX/////8wCocICwADYP////8wCocICwADYf////8w -CocICwADYv////8wCocICwADY/////8wCocICwADZP////8wCocICwADZf////8w -CocICwADZv////8wCocICwADZ/////8wCocICwADaP////8wCocICwADaf////8w -CocICwADav////8wCocICwADa/////8wCocICwADbP////8wCocICwADbf////8w -CocICwADbv////8wCocICwADb/////8wCocICwADcP////8wCocICwADcf////8w -CocICwADcv////8wCocICwADc/////8wCocICwADdP////8wCocICwADdf////8w -CocICwADdv////8wCocICwADd/////8wCocICwADeP////8wCocICwADef////8w -CocICwADev////8wCocICwADe/////8wCocICwADfP////8wCocICwADff////8w -CocICwADfv////8wCocICwADf/////8wCocICwADgP////8wCocICwADgf////8w -CocICwADgv////8wCocICwADg/////8wCocICwADhP////8wCocICwADhf////8w -CocICwADhv////8wCocICwADh/////8wCocICwADiP////8wCocICwADif////8w -CocICwADiv////8wCocICwADi/////8wCocICwADjP////8wCocICwADjf////8w -CocICwADjv////8wCocICwADj/////8wCocICwADkP////8wCocICwADkf////8w -CocICwADkv////8wCocICwADk/////8wCocICwADlP////8wCocICwADlf////8w -CocICwADlv////8wCocICwADl/////8wCocICwADmP////8wCocICwADmf////8w -CocICwADmv////8wCocICwADm/////8wCocICwADnP////8wCocICwADnf////8w -CocICwADnv////8wCocICwADn/////8wCocICwADoP////8wCocICwADof////8w -CocICwADov////8wCocICwADo/////8wCocICwADpP////8wCocICwADpf////8w -CocICwADpv////8wCocICwADp/////8wCocICwADqP////8wCocICwADqf////8w -CocICwADqv////8wCocICwADq/////8wCocICwADrP////8wCocICwADrf////8w -CocICwADrv////8wCocICwADr/////8wCocICwADsP////8wCocICwADsf////8w -CocICwADsv////8wCocICwADs/////8wCocICwADtP////8wCocICwADtf////8w -CocICwADtv////8wCocICwADt/////8wCocICwADuP////8wCocICwADuf////8w -CocICwADuv////8wCocICwADu/////8wCocICwADvP////8wCocICwADvf////8w -CocICwADvv////8wCocICwADv/////8wCocICwADwP////8wCocICwADwf////8w -CocICwADwv////8wCocICwADw/////8wCocICwADxP////8wCocICwADxf////8w -CocICwADxv////8wCocICwADx/////8wCocICwADyP////8wCocICwADyf////8w -CocICwADyv////8wCocICwADy/////8wCocICwADzP////8wCocICwADzf////8w -CocICwADzv////8wCocICwADz/////8wCocICwAD0P////8wCocICwAD0f////8w -CocICwAD0v////8wCocICwAD0/////8wCocICwAD1P////8wCocICwAD1f////8w -CocICwAD1v////8wCocICwAD1/////8wCocICwAD2P////8wCocICwAD2f////8w -CocICwAD2v////8wCocICwAD2/////8wCocICwAD3P////8wCocICwAD3f////8w -CocICwAD3v////8wCocICwAD3/////8wCocICwAD4P////8wCocICwAD4f////8w -CocICwAD4v////8wCocICwAD4/////8wCocICwAD5P////8wCocICwAD5f////8w -CocICwAD5v////8wCocICwAD5/////8wCocICwAD6P////8wCocICwAD6f////8w -CocICwAD6v////8wCocICwAD6/////8wCocICwAD7P////8wCocICwAD7f////8w -CocICwAD7v////8wCocICwAD7/////8wCocICwAD8P////8wCocICwAD8f////8w -CocICwAD8v////8wCocICwAD8/////8wCocICwAD9P////8wCocICwAD9f////8w -CocICwAD9v////8wCocICwAD9/////8wCocICwAD+P////8wCocICwAD+f////8w -CocICwAD+v////8wCocICwAD+/////8wCocICwAD/P////8wCocICwAD/f////8w -CocICwAD/v////8wCocICwAD//////8wCocICwAEAP////8wDQYJKoZIhvcNAQEL -BQADggEBAHoC880E9ZjcwHqqJbWhcuUJmT+4VKK3KHJhr0bACcxj/dQbpjbF4mK7 -qnH3ktJ6Bxs17McvrUSGa0PfekkFrDOAgXcVdvu+A9+JdnIexnruAYQ1T6l/Z1ql -4AHfg6wC/5932Ff8B86H0STowKzdm0Y6cIb5lALFY3X2cBBVmRQRVyJlMFZUK5Xb -NgJysJWHmIdCQET/Shae+BTEtNXqqAa0e/vrDUU124saPSzfOdTNnlTo6E83HEIl -RVLmxELnhfXHPSXbf6ApTTUm9NnBS2QIp2b6j0zTlL+OYPNTvOmDxJahl2Yn31WQ -HwGOb5CJVxjagSbx9K10HzsqY1O/Kj4= ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FA.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FA.pem deleted file mode 100644 index 5c9553ca67..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FA.pem +++ /dev/null @@ -1,1564 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:fa - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Excluded: - DirName: CN = x0 - DirName: CN = x1 - DirName: CN = x2 - DirName: CN = x3 - DirName: CN = x4 - DirName: CN = x5 - DirName: CN = x6 - DirName: CN = x7 - DirName: CN = x8 - DirName: CN = x9 - DirName: CN = x10 - DirName: CN = x11 - DirName: CN = x12 - DirName: CN = x13 - DirName: CN = x14 - DirName: CN = x15 - DirName: CN = x16 - DirName: CN = x17 - DirName: CN = x18 - DirName: CN = x19 - DirName: CN = x20 - DirName: CN = x21 - DirName: CN = x22 - DirName: CN = x23 - DirName: CN = x24 - DirName: CN = x25 - DirName: CN = x26 - DirName: CN = x27 - DirName: CN = x28 - DirName: CN = x29 - DirName: CN = x30 - DirName: CN = x31 - DirName: CN = x32 - DirName: CN = x33 - DirName: CN = x34 - DirName: CN = x35 - DirName: CN = x36 - DirName: CN = x37 - DirName: CN = x38 - DirName: CN = x39 - DirName: CN = x40 - DirName: CN = x41 - DirName: CN = x42 - DirName: CN = x43 - DirName: CN = x44 - DirName: CN = x45 - DirName: CN = x46 - DirName: CN = x47 - DirName: CN = x48 - DirName: CN = x49 - DirName: CN = x50 - DirName: CN = x51 - DirName: CN = x52 - DirName: CN = x53 - DirName: CN = x54 - DirName: CN = x55 - DirName: CN = x56 - DirName: CN = x57 - DirName: CN = x58 - DirName: CN = x59 - DirName: CN = x60 - DirName: CN = x61 - DirName: CN = x62 - DirName: CN = x63 - DirName: CN = x64 - DirName: CN = x65 - DirName: CN = x66 - DirName: CN = x67 - DirName: CN = x68 - DirName: CN = x69 - DirName: CN = x70 - DirName: CN = x71 - DirName: CN = x72 - DirName: CN = x73 - DirName: CN = x74 - DirName: CN = x75 - DirName: CN = x76 - DirName: CN = x77 - DirName: CN = x78 - DirName: CN = x79 - DirName: CN = x80 - DirName: CN = x81 - DirName: CN = x82 - DirName: CN = x83 - DirName: CN = x84 - DirName: CN = x85 - DirName: CN = x86 - DirName: CN = x87 - DirName: CN = x88 - DirName: CN = x89 - DirName: CN = x90 - DirName: CN = x91 - DirName: CN = x92 - DirName: CN = x93 - DirName: CN = x94 - DirName: CN = x95 - DirName: CN = x96 - DirName: CN = x97 - DirName: CN = x98 - DirName: CN = x99 - DirName: CN = x100 - DirName: CN = x101 - DirName: CN = x102 - DirName: CN = x103 - DirName: CN = x104 - DirName: CN = x105 - DirName: CN = x106 - DirName: CN = x107 - DirName: CN = x108 - DirName: CN = x109 - DirName: CN = x110 - DirName: CN = x111 - DirName: CN = x112 - DirName: CN = x113 - DirName: CN = x114 - DirName: CN = x115 - DirName: CN = x116 - DirName: CN = x117 - DirName: CN = x118 - DirName: CN = x119 - DirName: CN = x120 - DirName: CN = x121 - DirName: CN = x122 - DirName: CN = x123 - DirName: CN = x124 - DirName: CN = x125 - DirName: CN = x126 - DirName: CN = x127 - DirName: CN = x128 - DirName: CN = x129 - DirName: CN = x130 - DirName: CN = x131 - DirName: CN = x132 - DirName: CN = x133 - DirName: CN = x134 - DirName: CN = x135 - DirName: CN = x136 - DirName: CN = x137 - DirName: CN = x138 - DirName: CN = x139 - DirName: CN = x140 - DirName: CN = x141 - DirName: CN = x142 - DirName: CN = x143 - DirName: CN = x144 - DirName: CN = x145 - DirName: CN = x146 - DirName: CN = x147 - DirName: CN = x148 - DirName: CN = x149 - DirName: CN = x150 - DirName: CN = x151 - DirName: CN = x152 - DirName: CN = x153 - DirName: CN = x154 - DirName: CN = x155 - DirName: CN = x156 - DirName: CN = x157 - DirName: CN = x158 - DirName: CN = x159 - DirName: CN = x160 - DirName: CN = x161 - DirName: CN = x162 - DirName: CN = x163 - DirName: CN = x164 - DirName: CN = x165 - DirName: CN = x166 - DirName: CN = x167 - DirName: CN = x168 - DirName: CN = x169 - DirName: CN = x170 - DirName: CN = x171 - DirName: CN = x172 - DirName: CN = x173 - DirName: CN = x174 - DirName: CN = x175 - DirName: CN = x176 - DirName: CN = x177 - DirName: CN = x178 - DirName: CN = x179 - DirName: CN = x180 - DirName: CN = x181 - DirName: CN = x182 - DirName: CN = x183 - DirName: CN = x184 - DirName: CN = x185 - DirName: CN = x186 - DirName: CN = x187 - DirName: CN = x188 - DirName: CN = x189 - DirName: CN = x190 - DirName: CN = x191 - DirName: CN = x192 - DirName: CN = x193 - DirName: CN = x194 - DirName: CN = x195 - DirName: CN = x196 - DirName: CN = x197 - DirName: CN = x198 - DirName: CN = x199 - DirName: CN = x200 - DirName: CN = x201 - DirName: CN = x202 - DirName: CN = x203 - DirName: CN = x204 - DirName: CN = x205 - DirName: CN = x206 - DirName: CN = x207 - DirName: CN = x208 - DirName: CN = x209 - DirName: CN = x210 - DirName: CN = x211 - DirName: CN = x212 - DirName: CN = x213 - DirName: CN = x214 - DirName: CN = x215 - DirName: CN = x216 - DirName: CN = x217 - DirName: CN = x218 - DirName: CN = x219 - DirName: CN = x220 - DirName: CN = x221 - DirName: CN = x222 - DirName: CN = x223 - DirName: CN = x224 - DirName: CN = x225 - DirName: CN = x226 - DirName: CN = x227 - DirName: CN = x228 - DirName: CN = x229 - DirName: CN = x230 - DirName: CN = x231 - DirName: CN = x232 - DirName: CN = x233 - DirName: CN = x234 - DirName: CN = x235 - DirName: CN = x236 - DirName: CN = x237 - DirName: CN = x238 - DirName: CN = x239 - DirName: CN = x240 - DirName: CN = x241 - DirName: CN = x242 - DirName: CN = x243 - DirName: CN = x244 - DirName: CN = x245 - DirName: CN = x246 - DirName: CN = x247 - DirName: CN = x248 - DirName: CN = x249 - DirName: CN = x250 - DirName: CN = x251 - DirName: CN = x252 - DirName: CN = x253 - DirName: CN = x254 - DirName: CN = x255 - DirName: CN = x256 - DirName: CN = x257 - DirName: CN = x258 - DirName: CN = x259 - DirName: CN = x260 - DirName: CN = x261 - DirName: CN = x262 - DirName: CN = x263 - DirName: CN = x264 - DirName: CN = x265 - DirName: CN = x266 - DirName: CN = x267 - DirName: CN = x268 - DirName: CN = x269 - DirName: CN = x270 - DirName: CN = x271 - DirName: CN = x272 - DirName: CN = x273 - DirName: CN = x274 - DirName: CN = x275 - DirName: CN = x276 - DirName: CN = x277 - DirName: CN = x278 - DirName: CN = x279 - DirName: CN = x280 - DirName: CN = x281 - DirName: CN = x282 - DirName: CN = x283 - DirName: CN = x284 - DirName: CN = x285 - DirName: CN = x286 - DirName: CN = x287 - DirName: CN = x288 - DirName: CN = x289 - DirName: CN = x290 - DirName: CN = x291 - DirName: CN = x292 - DirName: CN = x293 - DirName: CN = x294 - DirName: CN = x295 - DirName: CN = x296 - DirName: CN = x297 - DirName: CN = x298 - DirName: CN = x299 - DirName: CN = x300 - DirName: CN = x301 - DirName: CN = x302 - DirName: CN = x303 - DirName: CN = x304 - DirName: CN = x305 - DirName: CN = x306 - DirName: CN = x307 - DirName: CN = x308 - DirName: CN = x309 - DirName: CN = x310 - DirName: CN = x311 - DirName: CN = x312 - DirName: CN = x313 - DirName: CN = x314 - DirName: CN = x315 - DirName: CN = x316 - DirName: CN = x317 - DirName: CN = x318 - DirName: CN = x319 - DirName: CN = x320 - DirName: CN = x321 - DirName: CN = x322 - DirName: CN = x323 - DirName: CN = x324 - DirName: CN = x325 - DirName: CN = x326 - DirName: CN = x327 - DirName: CN = x328 - DirName: CN = x329 - DirName: CN = x330 - DirName: CN = x331 - DirName: CN = x332 - DirName: CN = x333 - DirName: CN = x334 - DirName: CN = x335 - DirName: CN = x336 - DirName: CN = x337 - DirName: CN = x338 - DirName: CN = x339 - DirName: CN = x340 - DirName: CN = x341 - DirName: CN = x342 - DirName: CN = x343 - DirName: CN = x344 - DirName: CN = x345 - DirName: CN = x346 - DirName: CN = x347 - DirName: CN = x348 - DirName: CN = x349 - DirName: CN = x350 - DirName: CN = x351 - DirName: CN = x352 - DirName: CN = x353 - DirName: CN = x354 - DirName: CN = x355 - DirName: CN = x356 - DirName: CN = x357 - DirName: CN = x358 - DirName: CN = x359 - DirName: CN = x360 - DirName: CN = x361 - DirName: CN = x362 - DirName: CN = x363 - DirName: CN = x364 - DirName: CN = x365 - DirName: CN = x366 - DirName: CN = x367 - DirName: CN = x368 - DirName: CN = x369 - DirName: CN = x370 - DirName: CN = x371 - DirName: CN = x372 - DirName: CN = x373 - DirName: CN = x374 - DirName: CN = x375 - DirName: CN = x376 - DirName: CN = x377 - DirName: CN = x378 - DirName: CN = x379 - DirName: CN = x380 - DirName: CN = x381 - DirName: CN = x382 - DirName: CN = x383 - DirName: CN = x384 - DirName: CN = x385 - DirName: CN = x386 - DirName: CN = x387 - DirName: CN = x388 - DirName: CN = x389 - DirName: CN = x390 - DirName: CN = x391 - DirName: CN = x392 - DirName: CN = x393 - DirName: CN = x394 - DirName: CN = x395 - DirName: CN = x396 - DirName: CN = x397 - DirName: CN = x398 - DirName: CN = x399 - DirName: CN = x400 - DirName: CN = x401 - DirName: CN = x402 - DirName: CN = x403 - DirName: CN = x404 - DirName: CN = x405 - DirName: CN = x406 - DirName: CN = x407 - DirName: CN = x408 - DirName: CN = x409 - DirName: CN = x410 - DirName: CN = x411 - DirName: CN = x412 - DirName: CN = x413 - DirName: CN = x414 - DirName: CN = x415 - DirName: CN = x416 - DirName: CN = x417 - DirName: CN = x418 - DirName: CN = x419 - DirName: CN = x420 - DirName: CN = x421 - DirName: CN = x422 - DirName: CN = x423 - DirName: CN = x424 - DirName: CN = x425 - DirName: CN = x426 - DirName: CN = x427 - DirName: CN = x428 - DirName: CN = x429 - DirName: CN = x430 - DirName: CN = x431 - DirName: CN = x432 - DirName: CN = x433 - DirName: CN = x434 - DirName: CN = x435 - DirName: CN = x436 - DirName: CN = x437 - DirName: CN = x438 - DirName: CN = x439 - DirName: CN = x440 - DirName: CN = x441 - DirName: CN = x442 - DirName: CN = x443 - DirName: CN = x444 - DirName: CN = x445 - DirName: CN = x446 - DirName: CN = x447 - DirName: CN = x448 - DirName: CN = x449 - DirName: CN = x450 - DirName: CN = x451 - DirName: CN = x452 - DirName: CN = x453 - DirName: CN = x454 - DirName: CN = x455 - DirName: CN = x456 - DirName: CN = x457 - DirName: CN = x458 - DirName: CN = x459 - DirName: CN = x460 - DirName: CN = x461 - DirName: CN = x462 - DirName: CN = x463 - DirName: CN = x464 - DirName: CN = x465 - DirName: CN = x466 - DirName: CN = x467 - DirName: CN = x468 - DirName: CN = x469 - DirName: CN = x470 - DirName: CN = x471 - DirName: CN = x472 - DirName: CN = x473 - DirName: CN = x474 - DirName: CN = x475 - DirName: CN = x476 - DirName: CN = x477 - DirName: CN = x478 - DirName: CN = x479 - DirName: CN = x480 - DirName: CN = x481 - DirName: CN = x482 - DirName: CN = x483 - DirName: CN = x484 - DirName: CN = x485 - DirName: CN = x486 - DirName: CN = x487 - DirName: CN = x488 - DirName: CN = x489 - DirName: CN = x490 - DirName: CN = x491 - DirName: CN = x492 - DirName: CN = x493 - DirName: CN = x494 - DirName: CN = x495 - DirName: CN = x496 - DirName: CN = x497 - DirName: CN = x498 - DirName: CN = x499 - DirName: CN = x500 - DirName: CN = x501 - DirName: CN = x502 - DirName: CN = x503 - DirName: CN = x504 - DirName: CN = x505 - DirName: CN = x506 - DirName: CN = x507 - DirName: CN = x508 - DirName: CN = x509 - DirName: CN = x510 - DirName: CN = x511 - DirName: CN = x512 - DirName: CN = x513 - DirName: CN = x514 - DirName: CN = x515 - DirName: CN = x516 - DirName: CN = x517 - DirName: CN = x518 - DirName: CN = x519 - DirName: CN = x520 - DirName: CN = x521 - DirName: CN = x522 - DirName: CN = x523 - DirName: CN = x524 - DirName: CN = x525 - DirName: CN = x526 - DirName: CN = x527 - DirName: CN = x528 - DirName: CN = x529 - DirName: CN = x530 - DirName: CN = x531 - DirName: CN = x532 - DirName: CN = x533 - DirName: CN = x534 - DirName: CN = x535 - DirName: CN = x536 - DirName: CN = x537 - DirName: CN = x538 - DirName: CN = x539 - DirName: CN = x540 - DirName: CN = x541 - DirName: CN = x542 - DirName: CN = x543 - DirName: CN = x544 - DirName: CN = x545 - DirName: CN = x546 - DirName: CN = x547 - DirName: CN = x548 - DirName: CN = x549 - DirName: CN = x550 - DirName: CN = x551 - DirName: CN = x552 - DirName: CN = x553 - DirName: CN = x554 - DirName: CN = x555 - DirName: CN = x556 - DirName: CN = x557 - DirName: CN = x558 - DirName: CN = x559 - DirName: CN = x560 - DirName: CN = x561 - DirName: CN = x562 - DirName: CN = x563 - DirName: CN = x564 - DirName: CN = x565 - DirName: CN = x566 - DirName: CN = x567 - DirName: CN = x568 - DirName: CN = x569 - DirName: CN = x570 - DirName: CN = x571 - DirName: CN = x572 - DirName: CN = x573 - DirName: CN = x574 - DirName: CN = x575 - DirName: CN = x576 - DirName: CN = x577 - DirName: CN = x578 - DirName: CN = x579 - DirName: CN = x580 - DirName: CN = x581 - DirName: CN = x582 - DirName: CN = x583 - DirName: CN = x584 - DirName: CN = x585 - DirName: CN = x586 - DirName: CN = x587 - DirName: CN = x588 - DirName: CN = x589 - DirName: CN = x590 - DirName: CN = x591 - DirName: CN = x592 - DirName: CN = x593 - DirName: CN = x594 - DirName: CN = x595 - DirName: CN = x596 - DirName: CN = x597 - DirName: CN = x598 - DirName: CN = x599 - DirName: CN = x600 - DirName: CN = x601 - DirName: CN = x602 - DirName: CN = x603 - DirName: CN = x604 - DirName: CN = x605 - DirName: CN = x606 - DirName: CN = x607 - DirName: CN = x608 - DirName: CN = x609 - DirName: CN = x610 - DirName: CN = x611 - DirName: CN = x612 - DirName: CN = x613 - DirName: CN = x614 - DirName: CN = x615 - DirName: CN = x616 - DirName: CN = x617 - DirName: CN = x618 - DirName: CN = x619 - DirName: CN = x620 - DirName: CN = x621 - DirName: CN = x622 - DirName: CN = x623 - DirName: CN = x624 - DirName: CN = x625 - DirName: CN = x626 - DirName: CN = x627 - DirName: CN = x628 - DirName: CN = x629 - DirName: CN = x630 - DirName: CN = x631 - DirName: CN = x632 - DirName: CN = x633 - DirName: CN = x634 - DirName: CN = x635 - DirName: CN = x636 - DirName: CN = x637 - DirName: CN = x638 - DirName: CN = x639 - DirName: CN = x640 - DirName: CN = x641 - DirName: CN = x642 - DirName: CN = x643 - DirName: CN = x644 - DirName: CN = x645 - DirName: CN = x646 - DirName: CN = x647 - DirName: CN = x648 - DirName: CN = x649 - DirName: CN = x650 - DirName: CN = x651 - DirName: CN = x652 - DirName: CN = x653 - DirName: CN = x654 - DirName: CN = x655 - DirName: CN = x656 - DirName: CN = x657 - DirName: CN = x658 - DirName: CN = x659 - DirName: CN = x660 - DirName: CN = x661 - DirName: CN = x662 - DirName: CN = x663 - DirName: CN = x664 - DirName: CN = x665 - DirName: CN = x666 - DirName: CN = x667 - DirName: CN = x668 - DirName: CN = x669 - DirName: CN = x670 - DirName: CN = x671 - DirName: CN = x672 - DirName: CN = x673 - DirName: CN = x674 - DirName: CN = x675 - DirName: CN = x676 - DirName: CN = x677 - DirName: CN = x678 - DirName: CN = x679 - DirName: CN = x680 - DirName: CN = x681 - DirName: CN = x682 - DirName: CN = x683 - DirName: CN = x684 - DirName: CN = x685 - DirName: CN = x686 - DirName: CN = x687 - DirName: CN = x688 - DirName: CN = x689 - DirName: CN = x690 - DirName: CN = x691 - DirName: CN = x692 - DirName: CN = x693 - DirName: CN = x694 - DirName: CN = x695 - DirName: CN = x696 - DirName: CN = x697 - DirName: CN = x698 - DirName: CN = x699 - DirName: CN = x700 - DirName: CN = x701 - DirName: CN = x702 - DirName: CN = x703 - DirName: CN = x704 - DirName: CN = x705 - DirName: CN = x706 - DirName: CN = x707 - DirName: CN = x708 - DirName: CN = x709 - DirName: CN = x710 - DirName: CN = x711 - DirName: CN = x712 - DirName: CN = x713 - DirName: CN = x714 - DirName: CN = x715 - DirName: CN = x716 - DirName: CN = x717 - DirName: CN = x718 - DirName: CN = x719 - DirName: CN = x720 - DirName: CN = x721 - DirName: CN = x722 - DirName: CN = x723 - DirName: CN = x724 - DirName: CN = x725 - DirName: CN = x726 - DirName: CN = x727 - DirName: CN = x728 - DirName: CN = x729 - DirName: CN = x730 - DirName: CN = x731 - DirName: CN = x732 - DirName: CN = x733 - DirName: CN = x734 - DirName: CN = x735 - DirName: CN = x736 - DirName: CN = x737 - DirName: CN = x738 - DirName: CN = x739 - DirName: CN = x740 - DirName: CN = x741 - DirName: CN = x742 - DirName: CN = x743 - DirName: CN = x744 - DirName: CN = x745 - DirName: CN = x746 - DirName: CN = x747 - DirName: CN = x748 - DirName: CN = x749 - DirName: CN = x750 - DirName: CN = x751 - DirName: CN = x752 - DirName: CN = x753 - DirName: CN = x754 - DirName: CN = x755 - DirName: CN = x756 - DirName: CN = x757 - DirName: CN = x758 - DirName: CN = x759 - DirName: CN = x760 - DirName: CN = x761 - DirName: CN = x762 - DirName: CN = x763 - DirName: CN = x764 - DirName: CN = x765 - DirName: CN = x766 - DirName: CN = x767 - DirName: CN = x768 - DirName: CN = x769 - DirName: CN = x770 - DirName: CN = x771 - DirName: CN = x772 - DirName: CN = x773 - DirName: CN = x774 - DirName: CN = x775 - DirName: CN = x776 - DirName: CN = x777 - DirName: CN = x778 - DirName: CN = x779 - DirName: CN = x780 - DirName: CN = x781 - DirName: CN = x782 - DirName: CN = x783 - DirName: CN = x784 - DirName: CN = x785 - DirName: CN = x786 - DirName: CN = x787 - DirName: CN = x788 - DirName: CN = x789 - DirName: CN = x790 - DirName: CN = x791 - DirName: CN = x792 - DirName: CN = x793 - DirName: CN = x794 - DirName: CN = x795 - DirName: CN = x796 - DirName: CN = x797 - DirName: CN = x798 - DirName: CN = x799 - DirName: CN = x800 - DirName: CN = x801 - DirName: CN = x802 - DirName: CN = x803 - DirName: CN = x804 - DirName: CN = x805 - DirName: CN = x806 - DirName: CN = x807 - DirName: CN = x808 - DirName: CN = x809 - DirName: CN = x810 - DirName: CN = x811 - DirName: CN = x812 - DirName: CN = x813 - DirName: CN = x814 - DirName: CN = x815 - DirName: CN = x816 - DirName: CN = x817 - DirName: CN = x818 - DirName: CN = x819 - DirName: CN = x820 - DirName: CN = x821 - DirName: CN = x822 - DirName: CN = x823 - DirName: CN = x824 - DirName: CN = x825 - DirName: CN = x826 - DirName: CN = x827 - DirName: CN = x828 - DirName: CN = x829 - DirName: CN = x830 - DirName: CN = x831 - DirName: CN = x832 - DirName: CN = x833 - DirName: CN = x834 - DirName: CN = x835 - DirName: CN = x836 - DirName: CN = x837 - DirName: CN = x838 - DirName: CN = x839 - DirName: CN = x840 - DirName: CN = x841 - DirName: CN = x842 - DirName: CN = x843 - DirName: CN = x844 - DirName: CN = x845 - DirName: CN = x846 - DirName: CN = x847 - DirName: CN = x848 - DirName: CN = x849 - DirName: CN = x850 - DirName: CN = x851 - DirName: CN = x852 - DirName: CN = x853 - DirName: CN = x854 - DirName: CN = x855 - DirName: CN = x856 - DirName: CN = x857 - DirName: CN = x858 - DirName: CN = x859 - DirName: CN = x860 - DirName: CN = x861 - DirName: CN = x862 - DirName: CN = x863 - DirName: CN = x864 - DirName: CN = x865 - DirName: CN = x866 - DirName: CN = x867 - DirName: CN = x868 - DirName: CN = x869 - DirName: CN = x870 - DirName: CN = x871 - DirName: CN = x872 - DirName: CN = x873 - DirName: CN = x874 - DirName: CN = x875 - DirName: CN = x876 - DirName: CN = x877 - DirName: CN = x878 - DirName: CN = x879 - DirName: CN = x880 - DirName: CN = x881 - DirName: CN = x882 - DirName: CN = x883 - DirName: CN = x884 - DirName: CN = x885 - DirName: CN = x886 - DirName: CN = x887 - DirName: CN = x888 - DirName: CN = x889 - DirName: CN = x890 - DirName: CN = x891 - DirName: CN = x892 - DirName: CN = x893 - DirName: CN = x894 - DirName: CN = x895 - DirName: CN = x896 - DirName: CN = x897 - DirName: CN = x898 - DirName: CN = x899 - DirName: CN = x900 - DirName: CN = x901 - DirName: CN = x902 - DirName: CN = x903 - DirName: CN = x904 - DirName: CN = x905 - DirName: CN = x906 - DirName: CN = x907 - DirName: CN = x908 - DirName: CN = x909 - DirName: CN = x910 - DirName: CN = x911 - DirName: CN = x912 - DirName: CN = x913 - DirName: CN = x914 - DirName: CN = x915 - DirName: CN = x916 - DirName: CN = x917 - DirName: CN = x918 - DirName: CN = x919 - DirName: CN = x920 - DirName: CN = x921 - DirName: CN = x922 - DirName: CN = x923 - DirName: CN = x924 - DirName: CN = x925 - DirName: CN = x926 - DirName: CN = x927 - DirName: CN = x928 - DirName: CN = x929 - DirName: CN = x930 - DirName: CN = x931 - DirName: CN = x932 - DirName: CN = x933 - DirName: CN = x934 - DirName: CN = x935 - DirName: CN = x936 - DirName: CN = x937 - DirName: CN = x938 - DirName: CN = x939 - DirName: CN = x940 - DirName: CN = x941 - DirName: CN = x942 - DirName: CN = x943 - DirName: CN = x944 - DirName: CN = x945 - DirName: CN = x946 - DirName: CN = x947 - DirName: CN = x948 - DirName: CN = x949 - DirName: CN = x950 - DirName: CN = x951 - DirName: CN = x952 - DirName: CN = x953 - DirName: CN = x954 - DirName: CN = x955 - DirName: CN = x956 - DirName: CN = x957 - DirName: CN = x958 - DirName: CN = x959 - DirName: CN = x960 - DirName: CN = x961 - DirName: CN = x962 - DirName: CN = x963 - DirName: CN = x964 - DirName: CN = x965 - DirName: CN = x966 - DirName: CN = x967 - DirName: CN = x968 - DirName: CN = x969 - DirName: CN = x970 - DirName: CN = x971 - DirName: CN = x972 - DirName: CN = x973 - DirName: CN = x974 - DirName: CN = x975 - DirName: CN = x976 - DirName: CN = x977 - DirName: CN = x978 - DirName: CN = x979 - DirName: CN = x980 - DirName: CN = x981 - DirName: CN = x982 - DirName: CN = x983 - DirName: CN = x984 - DirName: CN = x985 - DirName: CN = x986 - DirName: CN = x987 - DirName: CN = x988 - DirName: CN = x989 - DirName: CN = x990 - DirName: CN = x991 - DirName: CN = x992 - DirName: CN = x993 - DirName: CN = x994 - DirName: CN = x995 - DirName: CN = x996 - DirName: CN = x997 - DirName: CN = x998 - DirName: CN = x999 - DirName: CN = x1000 - DirName: CN = x1001 - DirName: CN = x1002 - DirName: CN = x1003 - DirName: CN = x1004 - DirName: CN = x1005 - DirName: CN = x1006 - DirName: CN = x1007 - DirName: CN = x1008 - DirName: CN = x1009 - DirName: CN = x1010 - DirName: CN = x1011 - DirName: CN = x1012 - DirName: CN = x1013 - DirName: CN = x1014 - DirName: CN = x1015 - DirName: CN = x1016 - DirName: CN = x1017 - DirName: CN = x1018 - DirName: CN = x1019 - DirName: CN = x1020 - DirName: CN = x1021 - DirName: CN = x1022 - DirName: CN = x1023 - DirName: CN = x1024 - - Signature Algorithm: sha256WithRSAEncryption - 75:8f:ad:5f:a0:8c:a2:05:18:d8:98:a6:c5:1d:7c:b9:11:f4: - 14:6a:24:56:21:11:98:c7:df:0c:12:6c:43:3d:45:54:de:10: - 14:e5:7b:c0:d8:77:64:c2:01:8b:f3:d0:10:d8:03:43:fe:f9: - 50:79:c6:91:34:38:77:bf:0e:09:7f:1f:7f:8f:50:9f:2a:f2: - 31:5b:37:0e:04:55:13:2b:1b:34:32:0e:8d:db:a8:ed:34:d0: - 6a:83:a0:f9:31:d1:5f:2d:58:07:29:25:d3:1c:de:f8:7a:ac: - 3d:a7:67:4a:4c:ea:e0:f9:0f:91:ff:d8:48:dc:11:ec:a8:23: - a1:e4:62:51:b0:93:f8:6d:63:0f:26:c4:aa:09:e7:30:85:94: - cc:22:2d:a6:c1:e1:5a:77:70:e2:be:50:67:2b:7a:85:8e:56: - 35:f7:59:89:70:6f:8a:fe:1c:bd:16:b5:85:22:0e:f2:1e:d0: - 00:5b:63:7f:5b:eb:1e:23:c0:d5:c6:c9:97:9d:9a:a7:f6:2b: - 8d:54:64:0b:f7:db:26:5e:08:b2:0c:8e:dc:df:1f:e9:92:3a: - f1:cb:89:d4:1f:46:45:9c:e8:0c:b2:6c:aa:9f:55:fc:cd:02: - fc:3c:82:9c:a5:79:f2:27:a6:a5:83:83:64:7f:02:d0:8c:f3: - 8f:32:a7:e1 ------BEGIN CERTIFICATE----- -MIJXVzCCVj+gAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vowDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCVKEwglSdMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wglPRBgNVHR4EglPIMIJTxKGCU8AwEaQPMA0xCzAJBgNVBAMMAngwMBGkDzAN -MQswCQYDVQQDDAJ4MTARpA8wDTELMAkGA1UEAwwCeDIwEaQPMA0xCzAJBgNVBAMM -AngzMBGkDzANMQswCQYDVQQDDAJ4NDARpA8wDTELMAkGA1UEAwwCeDUwEaQPMA0x -CzAJBgNVBAMMAng2MBGkDzANMQswCQYDVQQDDAJ4NzARpA8wDTELMAkGA1UEAwwC -eDgwEaQPMA0xCzAJBgNVBAMMAng5MBKkEDAOMQwwCgYDVQQDDAN4MTAwEqQQMA4x -DDAKBgNVBAMMA3gxMTASpBAwDjEMMAoGA1UEAwwDeDEyMBKkEDAOMQwwCgYDVQQD -DAN4MTMwEqQQMA4xDDAKBgNVBAMMA3gxNDASpBAwDjEMMAoGA1UEAwwDeDE1MBKk -EDAOMQwwCgYDVQQDDAN4MTYwEqQQMA4xDDAKBgNVBAMMA3gxNzASpBAwDjEMMAoG -A1UEAwwDeDE4MBKkEDAOMQwwCgYDVQQDDAN4MTkwEqQQMA4xDDAKBgNVBAMMA3gy -MDASpBAwDjEMMAoGA1UEAwwDeDIxMBKkEDAOMQwwCgYDVQQDDAN4MjIwEqQQMA4x -DDAKBgNVBAMMA3gyMzASpBAwDjEMMAoGA1UEAwwDeDI0MBKkEDAOMQwwCgYDVQQD -DAN4MjUwEqQQMA4xDDAKBgNVBAMMA3gyNjASpBAwDjEMMAoGA1UEAwwDeDI3MBKk -EDAOMQwwCgYDVQQDDAN4MjgwEqQQMA4xDDAKBgNVBAMMA3gyOTASpBAwDjEMMAoG -A1UEAwwDeDMwMBKkEDAOMQwwCgYDVQQDDAN4MzEwEqQQMA4xDDAKBgNVBAMMA3gz -MjASpBAwDjEMMAoGA1UEAwwDeDMzMBKkEDAOMQwwCgYDVQQDDAN4MzQwEqQQMA4x -DDAKBgNVBAMMA3gzNTASpBAwDjEMMAoGA1UEAwwDeDM2MBKkEDAOMQwwCgYDVQQD -DAN4MzcwEqQQMA4xDDAKBgNVBAMMA3gzODASpBAwDjEMMAoGA1UEAwwDeDM5MBKk -EDAOMQwwCgYDVQQDDAN4NDAwEqQQMA4xDDAKBgNVBAMMA3g0MTASpBAwDjEMMAoG -A1UEAwwDeDQyMBKkEDAOMQwwCgYDVQQDDAN4NDMwEqQQMA4xDDAKBgNVBAMMA3g0 -NDASpBAwDjEMMAoGA1UEAwwDeDQ1MBKkEDAOMQwwCgYDVQQDDAN4NDYwEqQQMA4x -DDAKBgNVBAMMA3g0NzASpBAwDjEMMAoGA1UEAwwDeDQ4MBKkEDAOMQwwCgYDVQQD -DAN4NDkwEqQQMA4xDDAKBgNVBAMMA3g1MDASpBAwDjEMMAoGA1UEAwwDeDUxMBKk -EDAOMQwwCgYDVQQDDAN4NTIwEqQQMA4xDDAKBgNVBAMMA3g1MzASpBAwDjEMMAoG -A1UEAwwDeDU0MBKkEDAOMQwwCgYDVQQDDAN4NTUwEqQQMA4xDDAKBgNVBAMMA3g1 -NjASpBAwDjEMMAoGA1UEAwwDeDU3MBKkEDAOMQwwCgYDVQQDDAN4NTgwEqQQMA4x -DDAKBgNVBAMMA3g1OTASpBAwDjEMMAoGA1UEAwwDeDYwMBKkEDAOMQwwCgYDVQQD -DAN4NjEwEqQQMA4xDDAKBgNVBAMMA3g2MjASpBAwDjEMMAoGA1UEAwwDeDYzMBKk -EDAOMQwwCgYDVQQDDAN4NjQwEqQQMA4xDDAKBgNVBAMMA3g2NTASpBAwDjEMMAoG -A1UEAwwDeDY2MBKkEDAOMQwwCgYDVQQDDAN4NjcwEqQQMA4xDDAKBgNVBAMMA3g2 -ODASpBAwDjEMMAoGA1UEAwwDeDY5MBKkEDAOMQwwCgYDVQQDDAN4NzAwEqQQMA4x -DDAKBgNVBAMMA3g3MTASpBAwDjEMMAoGA1UEAwwDeDcyMBKkEDAOMQwwCgYDVQQD -DAN4NzMwEqQQMA4xDDAKBgNVBAMMA3g3NDASpBAwDjEMMAoGA1UEAwwDeDc1MBKk -EDAOMQwwCgYDVQQDDAN4NzYwEqQQMA4xDDAKBgNVBAMMA3g3NzASpBAwDjEMMAoG -A1UEAwwDeDc4MBKkEDAOMQwwCgYDVQQDDAN4NzkwEqQQMA4xDDAKBgNVBAMMA3g4 -MDASpBAwDjEMMAoGA1UEAwwDeDgxMBKkEDAOMQwwCgYDVQQDDAN4ODIwEqQQMA4x -DDAKBgNVBAMMA3g4MzASpBAwDjEMMAoGA1UEAwwDeDg0MBKkEDAOMQwwCgYDVQQD -DAN4ODUwEqQQMA4xDDAKBgNVBAMMA3g4NjASpBAwDjEMMAoGA1UEAwwDeDg3MBKk -EDAOMQwwCgYDVQQDDAN4ODgwEqQQMA4xDDAKBgNVBAMMA3g4OTASpBAwDjEMMAoG -A1UEAwwDeDkwMBKkEDAOMQwwCgYDVQQDDAN4OTEwEqQQMA4xDDAKBgNVBAMMA3g5 -MjASpBAwDjEMMAoGA1UEAwwDeDkzMBKkEDAOMQwwCgYDVQQDDAN4OTQwEqQQMA4x -DDAKBgNVBAMMA3g5NTASpBAwDjEMMAoGA1UEAwwDeDk2MBKkEDAOMQwwCgYDVQQD -DAN4OTcwEqQQMA4xDDAKBgNVBAMMA3g5ODASpBAwDjEMMAoGA1UEAwwDeDk5MBOk -ETAPMQ0wCwYDVQQDDAR4MTAwMBOkETAPMQ0wCwYDVQQDDAR4MTAxMBOkETAPMQ0w -CwYDVQQDDAR4MTAyMBOkETAPMQ0wCwYDVQQDDAR4MTAzMBOkETAPMQ0wCwYDVQQD -DAR4MTA0MBOkETAPMQ0wCwYDVQQDDAR4MTA1MBOkETAPMQ0wCwYDVQQDDAR4MTA2 -MBOkETAPMQ0wCwYDVQQDDAR4MTA3MBOkETAPMQ0wCwYDVQQDDAR4MTA4MBOkETAP -MQ0wCwYDVQQDDAR4MTA5MBOkETAPMQ0wCwYDVQQDDAR4MTEwMBOkETAPMQ0wCwYD -VQQDDAR4MTExMBOkETAPMQ0wCwYDVQQDDAR4MTEyMBOkETAPMQ0wCwYDVQQDDAR4 -MTEzMBOkETAPMQ0wCwYDVQQDDAR4MTE0MBOkETAPMQ0wCwYDVQQDDAR4MTE1MBOk -ETAPMQ0wCwYDVQQDDAR4MTE2MBOkETAPMQ0wCwYDVQQDDAR4MTE3MBOkETAPMQ0w -CwYDVQQDDAR4MTE4MBOkETAPMQ0wCwYDVQQDDAR4MTE5MBOkETAPMQ0wCwYDVQQD -DAR4MTIwMBOkETAPMQ0wCwYDVQQDDAR4MTIxMBOkETAPMQ0wCwYDVQQDDAR4MTIy -MBOkETAPMQ0wCwYDVQQDDAR4MTIzMBOkETAPMQ0wCwYDVQQDDAR4MTI0MBOkETAP -MQ0wCwYDVQQDDAR4MTI1MBOkETAPMQ0wCwYDVQQDDAR4MTI2MBOkETAPMQ0wCwYD -VQQDDAR4MTI3MBOkETAPMQ0wCwYDVQQDDAR4MTI4MBOkETAPMQ0wCwYDVQQDDAR4 -MTI5MBOkETAPMQ0wCwYDVQQDDAR4MTMwMBOkETAPMQ0wCwYDVQQDDAR4MTMxMBOk -ETAPMQ0wCwYDVQQDDAR4MTMyMBOkETAPMQ0wCwYDVQQDDAR4MTMzMBOkETAPMQ0w -CwYDVQQDDAR4MTM0MBOkETAPMQ0wCwYDVQQDDAR4MTM1MBOkETAPMQ0wCwYDVQQD -DAR4MTM2MBOkETAPMQ0wCwYDVQQDDAR4MTM3MBOkETAPMQ0wCwYDVQQDDAR4MTM4 -MBOkETAPMQ0wCwYDVQQDDAR4MTM5MBOkETAPMQ0wCwYDVQQDDAR4MTQwMBOkETAP -MQ0wCwYDVQQDDAR4MTQxMBOkETAPMQ0wCwYDVQQDDAR4MTQyMBOkETAPMQ0wCwYD -VQQDDAR4MTQzMBOkETAPMQ0wCwYDVQQDDAR4MTQ0MBOkETAPMQ0wCwYDVQQDDAR4 -MTQ1MBOkETAPMQ0wCwYDVQQDDAR4MTQ2MBOkETAPMQ0wCwYDVQQDDAR4MTQ3MBOk -ETAPMQ0wCwYDVQQDDAR4MTQ4MBOkETAPMQ0wCwYDVQQDDAR4MTQ5MBOkETAPMQ0w -CwYDVQQDDAR4MTUwMBOkETAPMQ0wCwYDVQQDDAR4MTUxMBOkETAPMQ0wCwYDVQQD -DAR4MTUyMBOkETAPMQ0wCwYDVQQDDAR4MTUzMBOkETAPMQ0wCwYDVQQDDAR4MTU0 -MBOkETAPMQ0wCwYDVQQDDAR4MTU1MBOkETAPMQ0wCwYDVQQDDAR4MTU2MBOkETAP -MQ0wCwYDVQQDDAR4MTU3MBOkETAPMQ0wCwYDVQQDDAR4MTU4MBOkETAPMQ0wCwYD -VQQDDAR4MTU5MBOkETAPMQ0wCwYDVQQDDAR4MTYwMBOkETAPMQ0wCwYDVQQDDAR4 -MTYxMBOkETAPMQ0wCwYDVQQDDAR4MTYyMBOkETAPMQ0wCwYDVQQDDAR4MTYzMBOk -ETAPMQ0wCwYDVQQDDAR4MTY0MBOkETAPMQ0wCwYDVQQDDAR4MTY1MBOkETAPMQ0w -CwYDVQQDDAR4MTY2MBOkETAPMQ0wCwYDVQQDDAR4MTY3MBOkETAPMQ0wCwYDVQQD -DAR4MTY4MBOkETAPMQ0wCwYDVQQDDAR4MTY5MBOkETAPMQ0wCwYDVQQDDAR4MTcw -MBOkETAPMQ0wCwYDVQQDDAR4MTcxMBOkETAPMQ0wCwYDVQQDDAR4MTcyMBOkETAP -MQ0wCwYDVQQDDAR4MTczMBOkETAPMQ0wCwYDVQQDDAR4MTc0MBOkETAPMQ0wCwYD -VQQDDAR4MTc1MBOkETAPMQ0wCwYDVQQDDAR4MTc2MBOkETAPMQ0wCwYDVQQDDAR4 -MTc3MBOkETAPMQ0wCwYDVQQDDAR4MTc4MBOkETAPMQ0wCwYDVQQDDAR4MTc5MBOk -ETAPMQ0wCwYDVQQDDAR4MTgwMBOkETAPMQ0wCwYDVQQDDAR4MTgxMBOkETAPMQ0w -CwYDVQQDDAR4MTgyMBOkETAPMQ0wCwYDVQQDDAR4MTgzMBOkETAPMQ0wCwYDVQQD -DAR4MTg0MBOkETAPMQ0wCwYDVQQDDAR4MTg1MBOkETAPMQ0wCwYDVQQDDAR4MTg2 -MBOkETAPMQ0wCwYDVQQDDAR4MTg3MBOkETAPMQ0wCwYDVQQDDAR4MTg4MBOkETAP -MQ0wCwYDVQQDDAR4MTg5MBOkETAPMQ0wCwYDVQQDDAR4MTkwMBOkETAPMQ0wCwYD -VQQDDAR4MTkxMBOkETAPMQ0wCwYDVQQDDAR4MTkyMBOkETAPMQ0wCwYDVQQDDAR4 -MTkzMBOkETAPMQ0wCwYDVQQDDAR4MTk0MBOkETAPMQ0wCwYDVQQDDAR4MTk1MBOk -ETAPMQ0wCwYDVQQDDAR4MTk2MBOkETAPMQ0wCwYDVQQDDAR4MTk3MBOkETAPMQ0w -CwYDVQQDDAR4MTk4MBOkETAPMQ0wCwYDVQQDDAR4MTk5MBOkETAPMQ0wCwYDVQQD -DAR4MjAwMBOkETAPMQ0wCwYDVQQDDAR4MjAxMBOkETAPMQ0wCwYDVQQDDAR4MjAy -MBOkETAPMQ0wCwYDVQQDDAR4MjAzMBOkETAPMQ0wCwYDVQQDDAR4MjA0MBOkETAP -MQ0wCwYDVQQDDAR4MjA1MBOkETAPMQ0wCwYDVQQDDAR4MjA2MBOkETAPMQ0wCwYD -VQQDDAR4MjA3MBOkETAPMQ0wCwYDVQQDDAR4MjA4MBOkETAPMQ0wCwYDVQQDDAR4 -MjA5MBOkETAPMQ0wCwYDVQQDDAR4MjEwMBOkETAPMQ0wCwYDVQQDDAR4MjExMBOk -ETAPMQ0wCwYDVQQDDAR4MjEyMBOkETAPMQ0wCwYDVQQDDAR4MjEzMBOkETAPMQ0w -CwYDVQQDDAR4MjE0MBOkETAPMQ0wCwYDVQQDDAR4MjE1MBOkETAPMQ0wCwYDVQQD -DAR4MjE2MBOkETAPMQ0wCwYDVQQDDAR4MjE3MBOkETAPMQ0wCwYDVQQDDAR4MjE4 -MBOkETAPMQ0wCwYDVQQDDAR4MjE5MBOkETAPMQ0wCwYDVQQDDAR4MjIwMBOkETAP -MQ0wCwYDVQQDDAR4MjIxMBOkETAPMQ0wCwYDVQQDDAR4MjIyMBOkETAPMQ0wCwYD -VQQDDAR4MjIzMBOkETAPMQ0wCwYDVQQDDAR4MjI0MBOkETAPMQ0wCwYDVQQDDAR4 -MjI1MBOkETAPMQ0wCwYDVQQDDAR4MjI2MBOkETAPMQ0wCwYDVQQDDAR4MjI3MBOk -ETAPMQ0wCwYDVQQDDAR4MjI4MBOkETAPMQ0wCwYDVQQDDAR4MjI5MBOkETAPMQ0w -CwYDVQQDDAR4MjMwMBOkETAPMQ0wCwYDVQQDDAR4MjMxMBOkETAPMQ0wCwYDVQQD -DAR4MjMyMBOkETAPMQ0wCwYDVQQDDAR4MjMzMBOkETAPMQ0wCwYDVQQDDAR4MjM0 -MBOkETAPMQ0wCwYDVQQDDAR4MjM1MBOkETAPMQ0wCwYDVQQDDAR4MjM2MBOkETAP -MQ0wCwYDVQQDDAR4MjM3MBOkETAPMQ0wCwYDVQQDDAR4MjM4MBOkETAPMQ0wCwYD -VQQDDAR4MjM5MBOkETAPMQ0wCwYDVQQDDAR4MjQwMBOkETAPMQ0wCwYDVQQDDAR4 -MjQxMBOkETAPMQ0wCwYDVQQDDAR4MjQyMBOkETAPMQ0wCwYDVQQDDAR4MjQzMBOk -ETAPMQ0wCwYDVQQDDAR4MjQ0MBOkETAPMQ0wCwYDVQQDDAR4MjQ1MBOkETAPMQ0w -CwYDVQQDDAR4MjQ2MBOkETAPMQ0wCwYDVQQDDAR4MjQ3MBOkETAPMQ0wCwYDVQQD -DAR4MjQ4MBOkETAPMQ0wCwYDVQQDDAR4MjQ5MBOkETAPMQ0wCwYDVQQDDAR4MjUw -MBOkETAPMQ0wCwYDVQQDDAR4MjUxMBOkETAPMQ0wCwYDVQQDDAR4MjUyMBOkETAP -MQ0wCwYDVQQDDAR4MjUzMBOkETAPMQ0wCwYDVQQDDAR4MjU0MBOkETAPMQ0wCwYD -VQQDDAR4MjU1MBOkETAPMQ0wCwYDVQQDDAR4MjU2MBOkETAPMQ0wCwYDVQQDDAR4 -MjU3MBOkETAPMQ0wCwYDVQQDDAR4MjU4MBOkETAPMQ0wCwYDVQQDDAR4MjU5MBOk -ETAPMQ0wCwYDVQQDDAR4MjYwMBOkETAPMQ0wCwYDVQQDDAR4MjYxMBOkETAPMQ0w -CwYDVQQDDAR4MjYyMBOkETAPMQ0wCwYDVQQDDAR4MjYzMBOkETAPMQ0wCwYDVQQD -DAR4MjY0MBOkETAPMQ0wCwYDVQQDDAR4MjY1MBOkETAPMQ0wCwYDVQQDDAR4MjY2 -MBOkETAPMQ0wCwYDVQQDDAR4MjY3MBOkETAPMQ0wCwYDVQQDDAR4MjY4MBOkETAP -MQ0wCwYDVQQDDAR4MjY5MBOkETAPMQ0wCwYDVQQDDAR4MjcwMBOkETAPMQ0wCwYD -VQQDDAR4MjcxMBOkETAPMQ0wCwYDVQQDDAR4MjcyMBOkETAPMQ0wCwYDVQQDDAR4 -MjczMBOkETAPMQ0wCwYDVQQDDAR4Mjc0MBOkETAPMQ0wCwYDVQQDDAR4Mjc1MBOk -ETAPMQ0wCwYDVQQDDAR4Mjc2MBOkETAPMQ0wCwYDVQQDDAR4Mjc3MBOkETAPMQ0w -CwYDVQQDDAR4Mjc4MBOkETAPMQ0wCwYDVQQDDAR4Mjc5MBOkETAPMQ0wCwYDVQQD -DAR4MjgwMBOkETAPMQ0wCwYDVQQDDAR4MjgxMBOkETAPMQ0wCwYDVQQDDAR4Mjgy -MBOkETAPMQ0wCwYDVQQDDAR4MjgzMBOkETAPMQ0wCwYDVQQDDAR4Mjg0MBOkETAP -MQ0wCwYDVQQDDAR4Mjg1MBOkETAPMQ0wCwYDVQQDDAR4Mjg2MBOkETAPMQ0wCwYD -VQQDDAR4Mjg3MBOkETAPMQ0wCwYDVQQDDAR4Mjg4MBOkETAPMQ0wCwYDVQQDDAR4 -Mjg5MBOkETAPMQ0wCwYDVQQDDAR4MjkwMBOkETAPMQ0wCwYDVQQDDAR4MjkxMBOk -ETAPMQ0wCwYDVQQDDAR4MjkyMBOkETAPMQ0wCwYDVQQDDAR4MjkzMBOkETAPMQ0w -CwYDVQQDDAR4Mjk0MBOkETAPMQ0wCwYDVQQDDAR4Mjk1MBOkETAPMQ0wCwYDVQQD -DAR4Mjk2MBOkETAPMQ0wCwYDVQQDDAR4Mjk3MBOkETAPMQ0wCwYDVQQDDAR4Mjk4 -MBOkETAPMQ0wCwYDVQQDDAR4Mjk5MBOkETAPMQ0wCwYDVQQDDAR4MzAwMBOkETAP -MQ0wCwYDVQQDDAR4MzAxMBOkETAPMQ0wCwYDVQQDDAR4MzAyMBOkETAPMQ0wCwYD -VQQDDAR4MzAzMBOkETAPMQ0wCwYDVQQDDAR4MzA0MBOkETAPMQ0wCwYDVQQDDAR4 -MzA1MBOkETAPMQ0wCwYDVQQDDAR4MzA2MBOkETAPMQ0wCwYDVQQDDAR4MzA3MBOk -ETAPMQ0wCwYDVQQDDAR4MzA4MBOkETAPMQ0wCwYDVQQDDAR4MzA5MBOkETAPMQ0w -CwYDVQQDDAR4MzEwMBOkETAPMQ0wCwYDVQQDDAR4MzExMBOkETAPMQ0wCwYDVQQD -DAR4MzEyMBOkETAPMQ0wCwYDVQQDDAR4MzEzMBOkETAPMQ0wCwYDVQQDDAR4MzE0 -MBOkETAPMQ0wCwYDVQQDDAR4MzE1MBOkETAPMQ0wCwYDVQQDDAR4MzE2MBOkETAP -MQ0wCwYDVQQDDAR4MzE3MBOkETAPMQ0wCwYDVQQDDAR4MzE4MBOkETAPMQ0wCwYD -VQQDDAR4MzE5MBOkETAPMQ0wCwYDVQQDDAR4MzIwMBOkETAPMQ0wCwYDVQQDDAR4 -MzIxMBOkETAPMQ0wCwYDVQQDDAR4MzIyMBOkETAPMQ0wCwYDVQQDDAR4MzIzMBOk -ETAPMQ0wCwYDVQQDDAR4MzI0MBOkETAPMQ0wCwYDVQQDDAR4MzI1MBOkETAPMQ0w -CwYDVQQDDAR4MzI2MBOkETAPMQ0wCwYDVQQDDAR4MzI3MBOkETAPMQ0wCwYDVQQD -DAR4MzI4MBOkETAPMQ0wCwYDVQQDDAR4MzI5MBOkETAPMQ0wCwYDVQQDDAR4MzMw -MBOkETAPMQ0wCwYDVQQDDAR4MzMxMBOkETAPMQ0wCwYDVQQDDAR4MzMyMBOkETAP -MQ0wCwYDVQQDDAR4MzMzMBOkETAPMQ0wCwYDVQQDDAR4MzM0MBOkETAPMQ0wCwYD -VQQDDAR4MzM1MBOkETAPMQ0wCwYDVQQDDAR4MzM2MBOkETAPMQ0wCwYDVQQDDAR4 -MzM3MBOkETAPMQ0wCwYDVQQDDAR4MzM4MBOkETAPMQ0wCwYDVQQDDAR4MzM5MBOk -ETAPMQ0wCwYDVQQDDAR4MzQwMBOkETAPMQ0wCwYDVQQDDAR4MzQxMBOkETAPMQ0w -CwYDVQQDDAR4MzQyMBOkETAPMQ0wCwYDVQQDDAR4MzQzMBOkETAPMQ0wCwYDVQQD -DAR4MzQ0MBOkETAPMQ0wCwYDVQQDDAR4MzQ1MBOkETAPMQ0wCwYDVQQDDAR4MzQ2 -MBOkETAPMQ0wCwYDVQQDDAR4MzQ3MBOkETAPMQ0wCwYDVQQDDAR4MzQ4MBOkETAP -MQ0wCwYDVQQDDAR4MzQ5MBOkETAPMQ0wCwYDVQQDDAR4MzUwMBOkETAPMQ0wCwYD -VQQDDAR4MzUxMBOkETAPMQ0wCwYDVQQDDAR4MzUyMBOkETAPMQ0wCwYDVQQDDAR4 -MzUzMBOkETAPMQ0wCwYDVQQDDAR4MzU0MBOkETAPMQ0wCwYDVQQDDAR4MzU1MBOk -ETAPMQ0wCwYDVQQDDAR4MzU2MBOkETAPMQ0wCwYDVQQDDAR4MzU3MBOkETAPMQ0w -CwYDVQQDDAR4MzU4MBOkETAPMQ0wCwYDVQQDDAR4MzU5MBOkETAPMQ0wCwYDVQQD -DAR4MzYwMBOkETAPMQ0wCwYDVQQDDAR4MzYxMBOkETAPMQ0wCwYDVQQDDAR4MzYy -MBOkETAPMQ0wCwYDVQQDDAR4MzYzMBOkETAPMQ0wCwYDVQQDDAR4MzY0MBOkETAP -MQ0wCwYDVQQDDAR4MzY1MBOkETAPMQ0wCwYDVQQDDAR4MzY2MBOkETAPMQ0wCwYD -VQQDDAR4MzY3MBOkETAPMQ0wCwYDVQQDDAR4MzY4MBOkETAPMQ0wCwYDVQQDDAR4 -MzY5MBOkETAPMQ0wCwYDVQQDDAR4MzcwMBOkETAPMQ0wCwYDVQQDDAR4MzcxMBOk -ETAPMQ0wCwYDVQQDDAR4MzcyMBOkETAPMQ0wCwYDVQQDDAR4MzczMBOkETAPMQ0w -CwYDVQQDDAR4Mzc0MBOkETAPMQ0wCwYDVQQDDAR4Mzc1MBOkETAPMQ0wCwYDVQQD -DAR4Mzc2MBOkETAPMQ0wCwYDVQQDDAR4Mzc3MBOkETAPMQ0wCwYDVQQDDAR4Mzc4 -MBOkETAPMQ0wCwYDVQQDDAR4Mzc5MBOkETAPMQ0wCwYDVQQDDAR4MzgwMBOkETAP -MQ0wCwYDVQQDDAR4MzgxMBOkETAPMQ0wCwYDVQQDDAR4MzgyMBOkETAPMQ0wCwYD -VQQDDAR4MzgzMBOkETAPMQ0wCwYDVQQDDAR4Mzg0MBOkETAPMQ0wCwYDVQQDDAR4 -Mzg1MBOkETAPMQ0wCwYDVQQDDAR4Mzg2MBOkETAPMQ0wCwYDVQQDDAR4Mzg3MBOk -ETAPMQ0wCwYDVQQDDAR4Mzg4MBOkETAPMQ0wCwYDVQQDDAR4Mzg5MBOkETAPMQ0w -CwYDVQQDDAR4MzkwMBOkETAPMQ0wCwYDVQQDDAR4MzkxMBOkETAPMQ0wCwYDVQQD -DAR4MzkyMBOkETAPMQ0wCwYDVQQDDAR4MzkzMBOkETAPMQ0wCwYDVQQDDAR4Mzk0 -MBOkETAPMQ0wCwYDVQQDDAR4Mzk1MBOkETAPMQ0wCwYDVQQDDAR4Mzk2MBOkETAP -MQ0wCwYDVQQDDAR4Mzk3MBOkETAPMQ0wCwYDVQQDDAR4Mzk4MBOkETAPMQ0wCwYD -VQQDDAR4Mzk5MBOkETAPMQ0wCwYDVQQDDAR4NDAwMBOkETAPMQ0wCwYDVQQDDAR4 -NDAxMBOkETAPMQ0wCwYDVQQDDAR4NDAyMBOkETAPMQ0wCwYDVQQDDAR4NDAzMBOk -ETAPMQ0wCwYDVQQDDAR4NDA0MBOkETAPMQ0wCwYDVQQDDAR4NDA1MBOkETAPMQ0w -CwYDVQQDDAR4NDA2MBOkETAPMQ0wCwYDVQQDDAR4NDA3MBOkETAPMQ0wCwYDVQQD -DAR4NDA4MBOkETAPMQ0wCwYDVQQDDAR4NDA5MBOkETAPMQ0wCwYDVQQDDAR4NDEw -MBOkETAPMQ0wCwYDVQQDDAR4NDExMBOkETAPMQ0wCwYDVQQDDAR4NDEyMBOkETAP -MQ0wCwYDVQQDDAR4NDEzMBOkETAPMQ0wCwYDVQQDDAR4NDE0MBOkETAPMQ0wCwYD -VQQDDAR4NDE1MBOkETAPMQ0wCwYDVQQDDAR4NDE2MBOkETAPMQ0wCwYDVQQDDAR4 -NDE3MBOkETAPMQ0wCwYDVQQDDAR4NDE4MBOkETAPMQ0wCwYDVQQDDAR4NDE5MBOk -ETAPMQ0wCwYDVQQDDAR4NDIwMBOkETAPMQ0wCwYDVQQDDAR4NDIxMBOkETAPMQ0w -CwYDVQQDDAR4NDIyMBOkETAPMQ0wCwYDVQQDDAR4NDIzMBOkETAPMQ0wCwYDVQQD -DAR4NDI0MBOkETAPMQ0wCwYDVQQDDAR4NDI1MBOkETAPMQ0wCwYDVQQDDAR4NDI2 -MBOkETAPMQ0wCwYDVQQDDAR4NDI3MBOkETAPMQ0wCwYDVQQDDAR4NDI4MBOkETAP -MQ0wCwYDVQQDDAR4NDI5MBOkETAPMQ0wCwYDVQQDDAR4NDMwMBOkETAPMQ0wCwYD -VQQDDAR4NDMxMBOkETAPMQ0wCwYDVQQDDAR4NDMyMBOkETAPMQ0wCwYDVQQDDAR4 -NDMzMBOkETAPMQ0wCwYDVQQDDAR4NDM0MBOkETAPMQ0wCwYDVQQDDAR4NDM1MBOk -ETAPMQ0wCwYDVQQDDAR4NDM2MBOkETAPMQ0wCwYDVQQDDAR4NDM3MBOkETAPMQ0w -CwYDVQQDDAR4NDM4MBOkETAPMQ0wCwYDVQQDDAR4NDM5MBOkETAPMQ0wCwYDVQQD -DAR4NDQwMBOkETAPMQ0wCwYDVQQDDAR4NDQxMBOkETAPMQ0wCwYDVQQDDAR4NDQy -MBOkETAPMQ0wCwYDVQQDDAR4NDQzMBOkETAPMQ0wCwYDVQQDDAR4NDQ0MBOkETAP -MQ0wCwYDVQQDDAR4NDQ1MBOkETAPMQ0wCwYDVQQDDAR4NDQ2MBOkETAPMQ0wCwYD -VQQDDAR4NDQ3MBOkETAPMQ0wCwYDVQQDDAR4NDQ4MBOkETAPMQ0wCwYDVQQDDAR4 -NDQ5MBOkETAPMQ0wCwYDVQQDDAR4NDUwMBOkETAPMQ0wCwYDVQQDDAR4NDUxMBOk -ETAPMQ0wCwYDVQQDDAR4NDUyMBOkETAPMQ0wCwYDVQQDDAR4NDUzMBOkETAPMQ0w -CwYDVQQDDAR4NDU0MBOkETAPMQ0wCwYDVQQDDAR4NDU1MBOkETAPMQ0wCwYDVQQD -DAR4NDU2MBOkETAPMQ0wCwYDVQQDDAR4NDU3MBOkETAPMQ0wCwYDVQQDDAR4NDU4 -MBOkETAPMQ0wCwYDVQQDDAR4NDU5MBOkETAPMQ0wCwYDVQQDDAR4NDYwMBOkETAP -MQ0wCwYDVQQDDAR4NDYxMBOkETAPMQ0wCwYDVQQDDAR4NDYyMBOkETAPMQ0wCwYD -VQQDDAR4NDYzMBOkETAPMQ0wCwYDVQQDDAR4NDY0MBOkETAPMQ0wCwYDVQQDDAR4 -NDY1MBOkETAPMQ0wCwYDVQQDDAR4NDY2MBOkETAPMQ0wCwYDVQQDDAR4NDY3MBOk -ETAPMQ0wCwYDVQQDDAR4NDY4MBOkETAPMQ0wCwYDVQQDDAR4NDY5MBOkETAPMQ0w -CwYDVQQDDAR4NDcwMBOkETAPMQ0wCwYDVQQDDAR4NDcxMBOkETAPMQ0wCwYDVQQD -DAR4NDcyMBOkETAPMQ0wCwYDVQQDDAR4NDczMBOkETAPMQ0wCwYDVQQDDAR4NDc0 -MBOkETAPMQ0wCwYDVQQDDAR4NDc1MBOkETAPMQ0wCwYDVQQDDAR4NDc2MBOkETAP -MQ0wCwYDVQQDDAR4NDc3MBOkETAPMQ0wCwYDVQQDDAR4NDc4MBOkETAPMQ0wCwYD -VQQDDAR4NDc5MBOkETAPMQ0wCwYDVQQDDAR4NDgwMBOkETAPMQ0wCwYDVQQDDAR4 -NDgxMBOkETAPMQ0wCwYDVQQDDAR4NDgyMBOkETAPMQ0wCwYDVQQDDAR4NDgzMBOk -ETAPMQ0wCwYDVQQDDAR4NDg0MBOkETAPMQ0wCwYDVQQDDAR4NDg1MBOkETAPMQ0w -CwYDVQQDDAR4NDg2MBOkETAPMQ0wCwYDVQQDDAR4NDg3MBOkETAPMQ0wCwYDVQQD -DAR4NDg4MBOkETAPMQ0wCwYDVQQDDAR4NDg5MBOkETAPMQ0wCwYDVQQDDAR4NDkw -MBOkETAPMQ0wCwYDVQQDDAR4NDkxMBOkETAPMQ0wCwYDVQQDDAR4NDkyMBOkETAP -MQ0wCwYDVQQDDAR4NDkzMBOkETAPMQ0wCwYDVQQDDAR4NDk0MBOkETAPMQ0wCwYD -VQQDDAR4NDk1MBOkETAPMQ0wCwYDVQQDDAR4NDk2MBOkETAPMQ0wCwYDVQQDDAR4 -NDk3MBOkETAPMQ0wCwYDVQQDDAR4NDk4MBOkETAPMQ0wCwYDVQQDDAR4NDk5MBOk -ETAPMQ0wCwYDVQQDDAR4NTAwMBOkETAPMQ0wCwYDVQQDDAR4NTAxMBOkETAPMQ0w -CwYDVQQDDAR4NTAyMBOkETAPMQ0wCwYDVQQDDAR4NTAzMBOkETAPMQ0wCwYDVQQD -DAR4NTA0MBOkETAPMQ0wCwYDVQQDDAR4NTA1MBOkETAPMQ0wCwYDVQQDDAR4NTA2 -MBOkETAPMQ0wCwYDVQQDDAR4NTA3MBOkETAPMQ0wCwYDVQQDDAR4NTA4MBOkETAP -MQ0wCwYDVQQDDAR4NTA5MBOkETAPMQ0wCwYDVQQDDAR4NTEwMBOkETAPMQ0wCwYD -VQQDDAR4NTExMBOkETAPMQ0wCwYDVQQDDAR4NTEyMBOkETAPMQ0wCwYDVQQDDAR4 -NTEzMBOkETAPMQ0wCwYDVQQDDAR4NTE0MBOkETAPMQ0wCwYDVQQDDAR4NTE1MBOk -ETAPMQ0wCwYDVQQDDAR4NTE2MBOkETAPMQ0wCwYDVQQDDAR4NTE3MBOkETAPMQ0w -CwYDVQQDDAR4NTE4MBOkETAPMQ0wCwYDVQQDDAR4NTE5MBOkETAPMQ0wCwYDVQQD -DAR4NTIwMBOkETAPMQ0wCwYDVQQDDAR4NTIxMBOkETAPMQ0wCwYDVQQDDAR4NTIy -MBOkETAPMQ0wCwYDVQQDDAR4NTIzMBOkETAPMQ0wCwYDVQQDDAR4NTI0MBOkETAP -MQ0wCwYDVQQDDAR4NTI1MBOkETAPMQ0wCwYDVQQDDAR4NTI2MBOkETAPMQ0wCwYD -VQQDDAR4NTI3MBOkETAPMQ0wCwYDVQQDDAR4NTI4MBOkETAPMQ0wCwYDVQQDDAR4 -NTI5MBOkETAPMQ0wCwYDVQQDDAR4NTMwMBOkETAPMQ0wCwYDVQQDDAR4NTMxMBOk -ETAPMQ0wCwYDVQQDDAR4NTMyMBOkETAPMQ0wCwYDVQQDDAR4NTMzMBOkETAPMQ0w -CwYDVQQDDAR4NTM0MBOkETAPMQ0wCwYDVQQDDAR4NTM1MBOkETAPMQ0wCwYDVQQD -DAR4NTM2MBOkETAPMQ0wCwYDVQQDDAR4NTM3MBOkETAPMQ0wCwYDVQQDDAR4NTM4 -MBOkETAPMQ0wCwYDVQQDDAR4NTM5MBOkETAPMQ0wCwYDVQQDDAR4NTQwMBOkETAP -MQ0wCwYDVQQDDAR4NTQxMBOkETAPMQ0wCwYDVQQDDAR4NTQyMBOkETAPMQ0wCwYD -VQQDDAR4NTQzMBOkETAPMQ0wCwYDVQQDDAR4NTQ0MBOkETAPMQ0wCwYDVQQDDAR4 -NTQ1MBOkETAPMQ0wCwYDVQQDDAR4NTQ2MBOkETAPMQ0wCwYDVQQDDAR4NTQ3MBOk -ETAPMQ0wCwYDVQQDDAR4NTQ4MBOkETAPMQ0wCwYDVQQDDAR4NTQ5MBOkETAPMQ0w -CwYDVQQDDAR4NTUwMBOkETAPMQ0wCwYDVQQDDAR4NTUxMBOkETAPMQ0wCwYDVQQD -DAR4NTUyMBOkETAPMQ0wCwYDVQQDDAR4NTUzMBOkETAPMQ0wCwYDVQQDDAR4NTU0 -MBOkETAPMQ0wCwYDVQQDDAR4NTU1MBOkETAPMQ0wCwYDVQQDDAR4NTU2MBOkETAP -MQ0wCwYDVQQDDAR4NTU3MBOkETAPMQ0wCwYDVQQDDAR4NTU4MBOkETAPMQ0wCwYD -VQQDDAR4NTU5MBOkETAPMQ0wCwYDVQQDDAR4NTYwMBOkETAPMQ0wCwYDVQQDDAR4 -NTYxMBOkETAPMQ0wCwYDVQQDDAR4NTYyMBOkETAPMQ0wCwYDVQQDDAR4NTYzMBOk -ETAPMQ0wCwYDVQQDDAR4NTY0MBOkETAPMQ0wCwYDVQQDDAR4NTY1MBOkETAPMQ0w -CwYDVQQDDAR4NTY2MBOkETAPMQ0wCwYDVQQDDAR4NTY3MBOkETAPMQ0wCwYDVQQD -DAR4NTY4MBOkETAPMQ0wCwYDVQQDDAR4NTY5MBOkETAPMQ0wCwYDVQQDDAR4NTcw -MBOkETAPMQ0wCwYDVQQDDAR4NTcxMBOkETAPMQ0wCwYDVQQDDAR4NTcyMBOkETAP -MQ0wCwYDVQQDDAR4NTczMBOkETAPMQ0wCwYDVQQDDAR4NTc0MBOkETAPMQ0wCwYD -VQQDDAR4NTc1MBOkETAPMQ0wCwYDVQQDDAR4NTc2MBOkETAPMQ0wCwYDVQQDDAR4 -NTc3MBOkETAPMQ0wCwYDVQQDDAR4NTc4MBOkETAPMQ0wCwYDVQQDDAR4NTc5MBOk -ETAPMQ0wCwYDVQQDDAR4NTgwMBOkETAPMQ0wCwYDVQQDDAR4NTgxMBOkETAPMQ0w -CwYDVQQDDAR4NTgyMBOkETAPMQ0wCwYDVQQDDAR4NTgzMBOkETAPMQ0wCwYDVQQD -DAR4NTg0MBOkETAPMQ0wCwYDVQQDDAR4NTg1MBOkETAPMQ0wCwYDVQQDDAR4NTg2 -MBOkETAPMQ0wCwYDVQQDDAR4NTg3MBOkETAPMQ0wCwYDVQQDDAR4NTg4MBOkETAP -MQ0wCwYDVQQDDAR4NTg5MBOkETAPMQ0wCwYDVQQDDAR4NTkwMBOkETAPMQ0wCwYD -VQQDDAR4NTkxMBOkETAPMQ0wCwYDVQQDDAR4NTkyMBOkETAPMQ0wCwYDVQQDDAR4 -NTkzMBOkETAPMQ0wCwYDVQQDDAR4NTk0MBOkETAPMQ0wCwYDVQQDDAR4NTk1MBOk -ETAPMQ0wCwYDVQQDDAR4NTk2MBOkETAPMQ0wCwYDVQQDDAR4NTk3MBOkETAPMQ0w -CwYDVQQDDAR4NTk4MBOkETAPMQ0wCwYDVQQDDAR4NTk5MBOkETAPMQ0wCwYDVQQD -DAR4NjAwMBOkETAPMQ0wCwYDVQQDDAR4NjAxMBOkETAPMQ0wCwYDVQQDDAR4NjAy -MBOkETAPMQ0wCwYDVQQDDAR4NjAzMBOkETAPMQ0wCwYDVQQDDAR4NjA0MBOkETAP -MQ0wCwYDVQQDDAR4NjA1MBOkETAPMQ0wCwYDVQQDDAR4NjA2MBOkETAPMQ0wCwYD -VQQDDAR4NjA3MBOkETAPMQ0wCwYDVQQDDAR4NjA4MBOkETAPMQ0wCwYDVQQDDAR4 -NjA5MBOkETAPMQ0wCwYDVQQDDAR4NjEwMBOkETAPMQ0wCwYDVQQDDAR4NjExMBOk -ETAPMQ0wCwYDVQQDDAR4NjEyMBOkETAPMQ0wCwYDVQQDDAR4NjEzMBOkETAPMQ0w -CwYDVQQDDAR4NjE0MBOkETAPMQ0wCwYDVQQDDAR4NjE1MBOkETAPMQ0wCwYDVQQD -DAR4NjE2MBOkETAPMQ0wCwYDVQQDDAR4NjE3MBOkETAPMQ0wCwYDVQQDDAR4NjE4 -MBOkETAPMQ0wCwYDVQQDDAR4NjE5MBOkETAPMQ0wCwYDVQQDDAR4NjIwMBOkETAP -MQ0wCwYDVQQDDAR4NjIxMBOkETAPMQ0wCwYDVQQDDAR4NjIyMBOkETAPMQ0wCwYD -VQQDDAR4NjIzMBOkETAPMQ0wCwYDVQQDDAR4NjI0MBOkETAPMQ0wCwYDVQQDDAR4 -NjI1MBOkETAPMQ0wCwYDVQQDDAR4NjI2MBOkETAPMQ0wCwYDVQQDDAR4NjI3MBOk -ETAPMQ0wCwYDVQQDDAR4NjI4MBOkETAPMQ0wCwYDVQQDDAR4NjI5MBOkETAPMQ0w -CwYDVQQDDAR4NjMwMBOkETAPMQ0wCwYDVQQDDAR4NjMxMBOkETAPMQ0wCwYDVQQD -DAR4NjMyMBOkETAPMQ0wCwYDVQQDDAR4NjMzMBOkETAPMQ0wCwYDVQQDDAR4NjM0 -MBOkETAPMQ0wCwYDVQQDDAR4NjM1MBOkETAPMQ0wCwYDVQQDDAR4NjM2MBOkETAP -MQ0wCwYDVQQDDAR4NjM3MBOkETAPMQ0wCwYDVQQDDAR4NjM4MBOkETAPMQ0wCwYD -VQQDDAR4NjM5MBOkETAPMQ0wCwYDVQQDDAR4NjQwMBOkETAPMQ0wCwYDVQQDDAR4 -NjQxMBOkETAPMQ0wCwYDVQQDDAR4NjQyMBOkETAPMQ0wCwYDVQQDDAR4NjQzMBOk -ETAPMQ0wCwYDVQQDDAR4NjQ0MBOkETAPMQ0wCwYDVQQDDAR4NjQ1MBOkETAPMQ0w -CwYDVQQDDAR4NjQ2MBOkETAPMQ0wCwYDVQQDDAR4NjQ3MBOkETAPMQ0wCwYDVQQD -DAR4NjQ4MBOkETAPMQ0wCwYDVQQDDAR4NjQ5MBOkETAPMQ0wCwYDVQQDDAR4NjUw -MBOkETAPMQ0wCwYDVQQDDAR4NjUxMBOkETAPMQ0wCwYDVQQDDAR4NjUyMBOkETAP -MQ0wCwYDVQQDDAR4NjUzMBOkETAPMQ0wCwYDVQQDDAR4NjU0MBOkETAPMQ0wCwYD -VQQDDAR4NjU1MBOkETAPMQ0wCwYDVQQDDAR4NjU2MBOkETAPMQ0wCwYDVQQDDAR4 -NjU3MBOkETAPMQ0wCwYDVQQDDAR4NjU4MBOkETAPMQ0wCwYDVQQDDAR4NjU5MBOk -ETAPMQ0wCwYDVQQDDAR4NjYwMBOkETAPMQ0wCwYDVQQDDAR4NjYxMBOkETAPMQ0w -CwYDVQQDDAR4NjYyMBOkETAPMQ0wCwYDVQQDDAR4NjYzMBOkETAPMQ0wCwYDVQQD -DAR4NjY0MBOkETAPMQ0wCwYDVQQDDAR4NjY1MBOkETAPMQ0wCwYDVQQDDAR4NjY2 -MBOkETAPMQ0wCwYDVQQDDAR4NjY3MBOkETAPMQ0wCwYDVQQDDAR4NjY4MBOkETAP -MQ0wCwYDVQQDDAR4NjY5MBOkETAPMQ0wCwYDVQQDDAR4NjcwMBOkETAPMQ0wCwYD -VQQDDAR4NjcxMBOkETAPMQ0wCwYDVQQDDAR4NjcyMBOkETAPMQ0wCwYDVQQDDAR4 -NjczMBOkETAPMQ0wCwYDVQQDDAR4Njc0MBOkETAPMQ0wCwYDVQQDDAR4Njc1MBOk -ETAPMQ0wCwYDVQQDDAR4Njc2MBOkETAPMQ0wCwYDVQQDDAR4Njc3MBOkETAPMQ0w -CwYDVQQDDAR4Njc4MBOkETAPMQ0wCwYDVQQDDAR4Njc5MBOkETAPMQ0wCwYDVQQD -DAR4NjgwMBOkETAPMQ0wCwYDVQQDDAR4NjgxMBOkETAPMQ0wCwYDVQQDDAR4Njgy -MBOkETAPMQ0wCwYDVQQDDAR4NjgzMBOkETAPMQ0wCwYDVQQDDAR4Njg0MBOkETAP -MQ0wCwYDVQQDDAR4Njg1MBOkETAPMQ0wCwYDVQQDDAR4Njg2MBOkETAPMQ0wCwYD -VQQDDAR4Njg3MBOkETAPMQ0wCwYDVQQDDAR4Njg4MBOkETAPMQ0wCwYDVQQDDAR4 -Njg5MBOkETAPMQ0wCwYDVQQDDAR4NjkwMBOkETAPMQ0wCwYDVQQDDAR4NjkxMBOk -ETAPMQ0wCwYDVQQDDAR4NjkyMBOkETAPMQ0wCwYDVQQDDAR4NjkzMBOkETAPMQ0w -CwYDVQQDDAR4Njk0MBOkETAPMQ0wCwYDVQQDDAR4Njk1MBOkETAPMQ0wCwYDVQQD -DAR4Njk2MBOkETAPMQ0wCwYDVQQDDAR4Njk3MBOkETAPMQ0wCwYDVQQDDAR4Njk4 -MBOkETAPMQ0wCwYDVQQDDAR4Njk5MBOkETAPMQ0wCwYDVQQDDAR4NzAwMBOkETAP -MQ0wCwYDVQQDDAR4NzAxMBOkETAPMQ0wCwYDVQQDDAR4NzAyMBOkETAPMQ0wCwYD -VQQDDAR4NzAzMBOkETAPMQ0wCwYDVQQDDAR4NzA0MBOkETAPMQ0wCwYDVQQDDAR4 -NzA1MBOkETAPMQ0wCwYDVQQDDAR4NzA2MBOkETAPMQ0wCwYDVQQDDAR4NzA3MBOk -ETAPMQ0wCwYDVQQDDAR4NzA4MBOkETAPMQ0wCwYDVQQDDAR4NzA5MBOkETAPMQ0w -CwYDVQQDDAR4NzEwMBOkETAPMQ0wCwYDVQQDDAR4NzExMBOkETAPMQ0wCwYDVQQD -DAR4NzEyMBOkETAPMQ0wCwYDVQQDDAR4NzEzMBOkETAPMQ0wCwYDVQQDDAR4NzE0 -MBOkETAPMQ0wCwYDVQQDDAR4NzE1MBOkETAPMQ0wCwYDVQQDDAR4NzE2MBOkETAP -MQ0wCwYDVQQDDAR4NzE3MBOkETAPMQ0wCwYDVQQDDAR4NzE4MBOkETAPMQ0wCwYD -VQQDDAR4NzE5MBOkETAPMQ0wCwYDVQQDDAR4NzIwMBOkETAPMQ0wCwYDVQQDDAR4 -NzIxMBOkETAPMQ0wCwYDVQQDDAR4NzIyMBOkETAPMQ0wCwYDVQQDDAR4NzIzMBOk -ETAPMQ0wCwYDVQQDDAR4NzI0MBOkETAPMQ0wCwYDVQQDDAR4NzI1MBOkETAPMQ0w -CwYDVQQDDAR4NzI2MBOkETAPMQ0wCwYDVQQDDAR4NzI3MBOkETAPMQ0wCwYDVQQD -DAR4NzI4MBOkETAPMQ0wCwYDVQQDDAR4NzI5MBOkETAPMQ0wCwYDVQQDDAR4NzMw -MBOkETAPMQ0wCwYDVQQDDAR4NzMxMBOkETAPMQ0wCwYDVQQDDAR4NzMyMBOkETAP -MQ0wCwYDVQQDDAR4NzMzMBOkETAPMQ0wCwYDVQQDDAR4NzM0MBOkETAPMQ0wCwYD -VQQDDAR4NzM1MBOkETAPMQ0wCwYDVQQDDAR4NzM2MBOkETAPMQ0wCwYDVQQDDAR4 -NzM3MBOkETAPMQ0wCwYDVQQDDAR4NzM4MBOkETAPMQ0wCwYDVQQDDAR4NzM5MBOk -ETAPMQ0wCwYDVQQDDAR4NzQwMBOkETAPMQ0wCwYDVQQDDAR4NzQxMBOkETAPMQ0w -CwYDVQQDDAR4NzQyMBOkETAPMQ0wCwYDVQQDDAR4NzQzMBOkETAPMQ0wCwYDVQQD -DAR4NzQ0MBOkETAPMQ0wCwYDVQQDDAR4NzQ1MBOkETAPMQ0wCwYDVQQDDAR4NzQ2 -MBOkETAPMQ0wCwYDVQQDDAR4NzQ3MBOkETAPMQ0wCwYDVQQDDAR4NzQ4MBOkETAP -MQ0wCwYDVQQDDAR4NzQ5MBOkETAPMQ0wCwYDVQQDDAR4NzUwMBOkETAPMQ0wCwYD -VQQDDAR4NzUxMBOkETAPMQ0wCwYDVQQDDAR4NzUyMBOkETAPMQ0wCwYDVQQDDAR4 -NzUzMBOkETAPMQ0wCwYDVQQDDAR4NzU0MBOkETAPMQ0wCwYDVQQDDAR4NzU1MBOk -ETAPMQ0wCwYDVQQDDAR4NzU2MBOkETAPMQ0wCwYDVQQDDAR4NzU3MBOkETAPMQ0w -CwYDVQQDDAR4NzU4MBOkETAPMQ0wCwYDVQQDDAR4NzU5MBOkETAPMQ0wCwYDVQQD -DAR4NzYwMBOkETAPMQ0wCwYDVQQDDAR4NzYxMBOkETAPMQ0wCwYDVQQDDAR4NzYy -MBOkETAPMQ0wCwYDVQQDDAR4NzYzMBOkETAPMQ0wCwYDVQQDDAR4NzY0MBOkETAP -MQ0wCwYDVQQDDAR4NzY1MBOkETAPMQ0wCwYDVQQDDAR4NzY2MBOkETAPMQ0wCwYD -VQQDDAR4NzY3MBOkETAPMQ0wCwYDVQQDDAR4NzY4MBOkETAPMQ0wCwYDVQQDDAR4 -NzY5MBOkETAPMQ0wCwYDVQQDDAR4NzcwMBOkETAPMQ0wCwYDVQQDDAR4NzcxMBOk -ETAPMQ0wCwYDVQQDDAR4NzcyMBOkETAPMQ0wCwYDVQQDDAR4NzczMBOkETAPMQ0w -CwYDVQQDDAR4Nzc0MBOkETAPMQ0wCwYDVQQDDAR4Nzc1MBOkETAPMQ0wCwYDVQQD -DAR4Nzc2MBOkETAPMQ0wCwYDVQQDDAR4Nzc3MBOkETAPMQ0wCwYDVQQDDAR4Nzc4 -MBOkETAPMQ0wCwYDVQQDDAR4Nzc5MBOkETAPMQ0wCwYDVQQDDAR4NzgwMBOkETAP -MQ0wCwYDVQQDDAR4NzgxMBOkETAPMQ0wCwYDVQQDDAR4NzgyMBOkETAPMQ0wCwYD -VQQDDAR4NzgzMBOkETAPMQ0wCwYDVQQDDAR4Nzg0MBOkETAPMQ0wCwYDVQQDDAR4 -Nzg1MBOkETAPMQ0wCwYDVQQDDAR4Nzg2MBOkETAPMQ0wCwYDVQQDDAR4Nzg3MBOk -ETAPMQ0wCwYDVQQDDAR4Nzg4MBOkETAPMQ0wCwYDVQQDDAR4Nzg5MBOkETAPMQ0w -CwYDVQQDDAR4NzkwMBOkETAPMQ0wCwYDVQQDDAR4NzkxMBOkETAPMQ0wCwYDVQQD -DAR4NzkyMBOkETAPMQ0wCwYDVQQDDAR4NzkzMBOkETAPMQ0wCwYDVQQDDAR4Nzk0 -MBOkETAPMQ0wCwYDVQQDDAR4Nzk1MBOkETAPMQ0wCwYDVQQDDAR4Nzk2MBOkETAP -MQ0wCwYDVQQDDAR4Nzk3MBOkETAPMQ0wCwYDVQQDDAR4Nzk4MBOkETAPMQ0wCwYD -VQQDDAR4Nzk5MBOkETAPMQ0wCwYDVQQDDAR4ODAwMBOkETAPMQ0wCwYDVQQDDAR4 -ODAxMBOkETAPMQ0wCwYDVQQDDAR4ODAyMBOkETAPMQ0wCwYDVQQDDAR4ODAzMBOk -ETAPMQ0wCwYDVQQDDAR4ODA0MBOkETAPMQ0wCwYDVQQDDAR4ODA1MBOkETAPMQ0w -CwYDVQQDDAR4ODA2MBOkETAPMQ0wCwYDVQQDDAR4ODA3MBOkETAPMQ0wCwYDVQQD -DAR4ODA4MBOkETAPMQ0wCwYDVQQDDAR4ODA5MBOkETAPMQ0wCwYDVQQDDAR4ODEw -MBOkETAPMQ0wCwYDVQQDDAR4ODExMBOkETAPMQ0wCwYDVQQDDAR4ODEyMBOkETAP -MQ0wCwYDVQQDDAR4ODEzMBOkETAPMQ0wCwYDVQQDDAR4ODE0MBOkETAPMQ0wCwYD -VQQDDAR4ODE1MBOkETAPMQ0wCwYDVQQDDAR4ODE2MBOkETAPMQ0wCwYDVQQDDAR4 -ODE3MBOkETAPMQ0wCwYDVQQDDAR4ODE4MBOkETAPMQ0wCwYDVQQDDAR4ODE5MBOk -ETAPMQ0wCwYDVQQDDAR4ODIwMBOkETAPMQ0wCwYDVQQDDAR4ODIxMBOkETAPMQ0w -CwYDVQQDDAR4ODIyMBOkETAPMQ0wCwYDVQQDDAR4ODIzMBOkETAPMQ0wCwYDVQQD -DAR4ODI0MBOkETAPMQ0wCwYDVQQDDAR4ODI1MBOkETAPMQ0wCwYDVQQDDAR4ODI2 -MBOkETAPMQ0wCwYDVQQDDAR4ODI3MBOkETAPMQ0wCwYDVQQDDAR4ODI4MBOkETAP -MQ0wCwYDVQQDDAR4ODI5MBOkETAPMQ0wCwYDVQQDDAR4ODMwMBOkETAPMQ0wCwYD -VQQDDAR4ODMxMBOkETAPMQ0wCwYDVQQDDAR4ODMyMBOkETAPMQ0wCwYDVQQDDAR4 -ODMzMBOkETAPMQ0wCwYDVQQDDAR4ODM0MBOkETAPMQ0wCwYDVQQDDAR4ODM1MBOk -ETAPMQ0wCwYDVQQDDAR4ODM2MBOkETAPMQ0wCwYDVQQDDAR4ODM3MBOkETAPMQ0w -CwYDVQQDDAR4ODM4MBOkETAPMQ0wCwYDVQQDDAR4ODM5MBOkETAPMQ0wCwYDVQQD -DAR4ODQwMBOkETAPMQ0wCwYDVQQDDAR4ODQxMBOkETAPMQ0wCwYDVQQDDAR4ODQy -MBOkETAPMQ0wCwYDVQQDDAR4ODQzMBOkETAPMQ0wCwYDVQQDDAR4ODQ0MBOkETAP -MQ0wCwYDVQQDDAR4ODQ1MBOkETAPMQ0wCwYDVQQDDAR4ODQ2MBOkETAPMQ0wCwYD -VQQDDAR4ODQ3MBOkETAPMQ0wCwYDVQQDDAR4ODQ4MBOkETAPMQ0wCwYDVQQDDAR4 -ODQ5MBOkETAPMQ0wCwYDVQQDDAR4ODUwMBOkETAPMQ0wCwYDVQQDDAR4ODUxMBOk -ETAPMQ0wCwYDVQQDDAR4ODUyMBOkETAPMQ0wCwYDVQQDDAR4ODUzMBOkETAPMQ0w -CwYDVQQDDAR4ODU0MBOkETAPMQ0wCwYDVQQDDAR4ODU1MBOkETAPMQ0wCwYDVQQD -DAR4ODU2MBOkETAPMQ0wCwYDVQQDDAR4ODU3MBOkETAPMQ0wCwYDVQQDDAR4ODU4 -MBOkETAPMQ0wCwYDVQQDDAR4ODU5MBOkETAPMQ0wCwYDVQQDDAR4ODYwMBOkETAP -MQ0wCwYDVQQDDAR4ODYxMBOkETAPMQ0wCwYDVQQDDAR4ODYyMBOkETAPMQ0wCwYD -VQQDDAR4ODYzMBOkETAPMQ0wCwYDVQQDDAR4ODY0MBOkETAPMQ0wCwYDVQQDDAR4 -ODY1MBOkETAPMQ0wCwYDVQQDDAR4ODY2MBOkETAPMQ0wCwYDVQQDDAR4ODY3MBOk -ETAPMQ0wCwYDVQQDDAR4ODY4MBOkETAPMQ0wCwYDVQQDDAR4ODY5MBOkETAPMQ0w -CwYDVQQDDAR4ODcwMBOkETAPMQ0wCwYDVQQDDAR4ODcxMBOkETAPMQ0wCwYDVQQD -DAR4ODcyMBOkETAPMQ0wCwYDVQQDDAR4ODczMBOkETAPMQ0wCwYDVQQDDAR4ODc0 -MBOkETAPMQ0wCwYDVQQDDAR4ODc1MBOkETAPMQ0wCwYDVQQDDAR4ODc2MBOkETAP -MQ0wCwYDVQQDDAR4ODc3MBOkETAPMQ0wCwYDVQQDDAR4ODc4MBOkETAPMQ0wCwYD -VQQDDAR4ODc5MBOkETAPMQ0wCwYDVQQDDAR4ODgwMBOkETAPMQ0wCwYDVQQDDAR4 -ODgxMBOkETAPMQ0wCwYDVQQDDAR4ODgyMBOkETAPMQ0wCwYDVQQDDAR4ODgzMBOk -ETAPMQ0wCwYDVQQDDAR4ODg0MBOkETAPMQ0wCwYDVQQDDAR4ODg1MBOkETAPMQ0w -CwYDVQQDDAR4ODg2MBOkETAPMQ0wCwYDVQQDDAR4ODg3MBOkETAPMQ0wCwYDVQQD -DAR4ODg4MBOkETAPMQ0wCwYDVQQDDAR4ODg5MBOkETAPMQ0wCwYDVQQDDAR4ODkw -MBOkETAPMQ0wCwYDVQQDDAR4ODkxMBOkETAPMQ0wCwYDVQQDDAR4ODkyMBOkETAP -MQ0wCwYDVQQDDAR4ODkzMBOkETAPMQ0wCwYDVQQDDAR4ODk0MBOkETAPMQ0wCwYD -VQQDDAR4ODk1MBOkETAPMQ0wCwYDVQQDDAR4ODk2MBOkETAPMQ0wCwYDVQQDDAR4 -ODk3MBOkETAPMQ0wCwYDVQQDDAR4ODk4MBOkETAPMQ0wCwYDVQQDDAR4ODk5MBOk -ETAPMQ0wCwYDVQQDDAR4OTAwMBOkETAPMQ0wCwYDVQQDDAR4OTAxMBOkETAPMQ0w -CwYDVQQDDAR4OTAyMBOkETAPMQ0wCwYDVQQDDAR4OTAzMBOkETAPMQ0wCwYDVQQD -DAR4OTA0MBOkETAPMQ0wCwYDVQQDDAR4OTA1MBOkETAPMQ0wCwYDVQQDDAR4OTA2 -MBOkETAPMQ0wCwYDVQQDDAR4OTA3MBOkETAPMQ0wCwYDVQQDDAR4OTA4MBOkETAP -MQ0wCwYDVQQDDAR4OTA5MBOkETAPMQ0wCwYDVQQDDAR4OTEwMBOkETAPMQ0wCwYD -VQQDDAR4OTExMBOkETAPMQ0wCwYDVQQDDAR4OTEyMBOkETAPMQ0wCwYDVQQDDAR4 -OTEzMBOkETAPMQ0wCwYDVQQDDAR4OTE0MBOkETAPMQ0wCwYDVQQDDAR4OTE1MBOk -ETAPMQ0wCwYDVQQDDAR4OTE2MBOkETAPMQ0wCwYDVQQDDAR4OTE3MBOkETAPMQ0w -CwYDVQQDDAR4OTE4MBOkETAPMQ0wCwYDVQQDDAR4OTE5MBOkETAPMQ0wCwYDVQQD -DAR4OTIwMBOkETAPMQ0wCwYDVQQDDAR4OTIxMBOkETAPMQ0wCwYDVQQDDAR4OTIy -MBOkETAPMQ0wCwYDVQQDDAR4OTIzMBOkETAPMQ0wCwYDVQQDDAR4OTI0MBOkETAP -MQ0wCwYDVQQDDAR4OTI1MBOkETAPMQ0wCwYDVQQDDAR4OTI2MBOkETAPMQ0wCwYD -VQQDDAR4OTI3MBOkETAPMQ0wCwYDVQQDDAR4OTI4MBOkETAPMQ0wCwYDVQQDDAR4 -OTI5MBOkETAPMQ0wCwYDVQQDDAR4OTMwMBOkETAPMQ0wCwYDVQQDDAR4OTMxMBOk -ETAPMQ0wCwYDVQQDDAR4OTMyMBOkETAPMQ0wCwYDVQQDDAR4OTMzMBOkETAPMQ0w -CwYDVQQDDAR4OTM0MBOkETAPMQ0wCwYDVQQDDAR4OTM1MBOkETAPMQ0wCwYDVQQD -DAR4OTM2MBOkETAPMQ0wCwYDVQQDDAR4OTM3MBOkETAPMQ0wCwYDVQQDDAR4OTM4 -MBOkETAPMQ0wCwYDVQQDDAR4OTM5MBOkETAPMQ0wCwYDVQQDDAR4OTQwMBOkETAP -MQ0wCwYDVQQDDAR4OTQxMBOkETAPMQ0wCwYDVQQDDAR4OTQyMBOkETAPMQ0wCwYD -VQQDDAR4OTQzMBOkETAPMQ0wCwYDVQQDDAR4OTQ0MBOkETAPMQ0wCwYDVQQDDAR4 -OTQ1MBOkETAPMQ0wCwYDVQQDDAR4OTQ2MBOkETAPMQ0wCwYDVQQDDAR4OTQ3MBOk -ETAPMQ0wCwYDVQQDDAR4OTQ4MBOkETAPMQ0wCwYDVQQDDAR4OTQ5MBOkETAPMQ0w -CwYDVQQDDAR4OTUwMBOkETAPMQ0wCwYDVQQDDAR4OTUxMBOkETAPMQ0wCwYDVQQD -DAR4OTUyMBOkETAPMQ0wCwYDVQQDDAR4OTUzMBOkETAPMQ0wCwYDVQQDDAR4OTU0 -MBOkETAPMQ0wCwYDVQQDDAR4OTU1MBOkETAPMQ0wCwYDVQQDDAR4OTU2MBOkETAP -MQ0wCwYDVQQDDAR4OTU3MBOkETAPMQ0wCwYDVQQDDAR4OTU4MBOkETAPMQ0wCwYD -VQQDDAR4OTU5MBOkETAPMQ0wCwYDVQQDDAR4OTYwMBOkETAPMQ0wCwYDVQQDDAR4 -OTYxMBOkETAPMQ0wCwYDVQQDDAR4OTYyMBOkETAPMQ0wCwYDVQQDDAR4OTYzMBOk -ETAPMQ0wCwYDVQQDDAR4OTY0MBOkETAPMQ0wCwYDVQQDDAR4OTY1MBOkETAPMQ0w -CwYDVQQDDAR4OTY2MBOkETAPMQ0wCwYDVQQDDAR4OTY3MBOkETAPMQ0wCwYDVQQD -DAR4OTY4MBOkETAPMQ0wCwYDVQQDDAR4OTY5MBOkETAPMQ0wCwYDVQQDDAR4OTcw -MBOkETAPMQ0wCwYDVQQDDAR4OTcxMBOkETAPMQ0wCwYDVQQDDAR4OTcyMBOkETAP -MQ0wCwYDVQQDDAR4OTczMBOkETAPMQ0wCwYDVQQDDAR4OTc0MBOkETAPMQ0wCwYD -VQQDDAR4OTc1MBOkETAPMQ0wCwYDVQQDDAR4OTc2MBOkETAPMQ0wCwYDVQQDDAR4 -OTc3MBOkETAPMQ0wCwYDVQQDDAR4OTc4MBOkETAPMQ0wCwYDVQQDDAR4OTc5MBOk -ETAPMQ0wCwYDVQQDDAR4OTgwMBOkETAPMQ0wCwYDVQQDDAR4OTgxMBOkETAPMQ0w -CwYDVQQDDAR4OTgyMBOkETAPMQ0wCwYDVQQDDAR4OTgzMBOkETAPMQ0wCwYDVQQD -DAR4OTg0MBOkETAPMQ0wCwYDVQQDDAR4OTg1MBOkETAPMQ0wCwYDVQQDDAR4OTg2 -MBOkETAPMQ0wCwYDVQQDDAR4OTg3MBOkETAPMQ0wCwYDVQQDDAR4OTg4MBOkETAP -MQ0wCwYDVQQDDAR4OTg5MBOkETAPMQ0wCwYDVQQDDAR4OTkwMBOkETAPMQ0wCwYD -VQQDDAR4OTkxMBOkETAPMQ0wCwYDVQQDDAR4OTkyMBOkETAPMQ0wCwYDVQQDDAR4 -OTkzMBOkETAPMQ0wCwYDVQQDDAR4OTk0MBOkETAPMQ0wCwYDVQQDDAR4OTk1MBOk -ETAPMQ0wCwYDVQQDDAR4OTk2MBOkETAPMQ0wCwYDVQQDDAR4OTk3MBOkETAPMQ0w -CwYDVQQDDAR4OTk4MBOkETAPMQ0wCwYDVQQDDAR4OTk5MBSkEjAQMQ4wDAYDVQQD -DAV4MTAwMDAUpBIwEDEOMAwGA1UEAwwFeDEwMDEwFKQSMBAxDjAMBgNVBAMMBXgx -MDAyMBSkEjAQMQ4wDAYDVQQDDAV4MTAwMzAUpBIwEDEOMAwGA1UEAwwFeDEwMDQw -FKQSMBAxDjAMBgNVBAMMBXgxMDA1MBSkEjAQMQ4wDAYDVQQDDAV4MTAwNjAUpBIw -EDEOMAwGA1UEAwwFeDEwMDcwFKQSMBAxDjAMBgNVBAMMBXgxMDA4MBSkEjAQMQ4w -DAYDVQQDDAV4MTAwOTAUpBIwEDEOMAwGA1UEAwwFeDEwMTAwFKQSMBAxDjAMBgNV -BAMMBXgxMDExMBSkEjAQMQ4wDAYDVQQDDAV4MTAxMjAUpBIwEDEOMAwGA1UEAwwF -eDEwMTMwFKQSMBAxDjAMBgNVBAMMBXgxMDE0MBSkEjAQMQ4wDAYDVQQDDAV4MTAx -NTAUpBIwEDEOMAwGA1UEAwwFeDEwMTYwFKQSMBAxDjAMBgNVBAMMBXgxMDE3MBSk -EjAQMQ4wDAYDVQQDDAV4MTAxODAUpBIwEDEOMAwGA1UEAwwFeDEwMTkwFKQSMBAx -DjAMBgNVBAMMBXgxMDIwMBSkEjAQMQ4wDAYDVQQDDAV4MTAyMTAUpBIwEDEOMAwG -A1UEAwwFeDEwMjIwFKQSMBAxDjAMBgNVBAMMBXgxMDIzMBSkEjAQMQ4wDAYDVQQD -DAV4MTAyNDANBgkqhkiG9w0BAQsFAAOCAQEAdY+tX6CMogUY2JimxR18uRH0FGok -ViERmMffDBJsQz1FVN4QFOV7wNh3ZMIBi/PQENgDQ/75UHnGkTQ4d78OCX8ff49Q -nyryMVs3DgRVEysbNDIOjduo7TTQaoOg+THRXy1YBykl0xze+HqsPadnSkzq4PkP -kf/YSNwR7KgjoeRiUbCT+G1jDybEqgnnMIWUzCItpsHhWndw4r5QZyt6hY5WNfdZ -iXBviv4cvRa1hSIO8h7QAFtjf1vrHiPA1cbJl52ap/YrjVRkC/fbJl4IsgyO3N8f -6ZI68cuJ1B9GRZzoDLJsqp9V/M0C/DyCnKV58iempYODZH8C0IzzjzKn4Q== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FB.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FB.pem deleted file mode 100644 index df5c47cf7e..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FB.pem +++ /dev/null @@ -1,1394 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:fb - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Permitted: - DNS:t0.test - DNS:t1.test - DNS:t2.test - DNS:t3.test - DNS:t4.test - DNS:t5.test - DNS:t6.test - DNS:t7.test - DNS:t8.test - DNS:t9.test - DNS:t10.test - DNS:t11.test - DNS:t12.test - DNS:t13.test - DNS:t14.test - DNS:t15.test - DNS:t16.test - DNS:t17.test - DNS:t18.test - DNS:t19.test - DNS:t20.test - DNS:t21.test - DNS:t22.test - DNS:t23.test - DNS:t24.test - DNS:t25.test - DNS:t26.test - DNS:t27.test - DNS:t28.test - DNS:t29.test - DNS:t30.test - DNS:t31.test - DNS:t32.test - DNS:t33.test - DNS:t34.test - DNS:t35.test - DNS:t36.test - DNS:t37.test - DNS:t38.test - DNS:t39.test - DNS:t40.test - DNS:t41.test - DNS:t42.test - DNS:t43.test - DNS:t44.test - DNS:t45.test - DNS:t46.test - DNS:t47.test - DNS:t48.test - DNS:t49.test - DNS:t50.test - DNS:t51.test - DNS:t52.test - DNS:t53.test - DNS:t54.test - DNS:t55.test - DNS:t56.test - DNS:t57.test - DNS:t58.test - DNS:t59.test - DNS:t60.test - DNS:t61.test - DNS:t62.test - DNS:t63.test - DNS:t64.test - DNS:t65.test - DNS:t66.test - DNS:t67.test - DNS:t68.test - DNS:t69.test - DNS:t70.test - DNS:t71.test - DNS:t72.test - DNS:t73.test - DNS:t74.test - DNS:t75.test - DNS:t76.test - DNS:t77.test - DNS:t78.test - DNS:t79.test - DNS:t80.test - DNS:t81.test - DNS:t82.test - DNS:t83.test - DNS:t84.test - DNS:t85.test - DNS:t86.test - DNS:t87.test - DNS:t88.test - DNS:t89.test - DNS:t90.test - DNS:t91.test - DNS:t92.test - DNS:t93.test - DNS:t94.test - DNS:t95.test - DNS:t96.test - DNS:t97.test - DNS:t98.test - DNS:t99.test - DNS:t100.test - DNS:t101.test - DNS:t102.test - DNS:t103.test - DNS:t104.test - DNS:t105.test - DNS:t106.test - DNS:t107.test - DNS:t108.test - DNS:t109.test - DNS:t110.test - DNS:t111.test - DNS:t112.test - DNS:t113.test - DNS:t114.test - DNS:t115.test - DNS:t116.test - DNS:t117.test - DNS:t118.test - DNS:t119.test - DNS:t120.test - DNS:t121.test - DNS:t122.test - DNS:t123.test - DNS:t124.test - DNS:t125.test - DNS:t126.test - DNS:t127.test - DNS:t128.test - DNS:t129.test - DNS:t130.test - DNS:t131.test - DNS:t132.test - DNS:t133.test - DNS:t134.test - DNS:t135.test - DNS:t136.test - DNS:t137.test - DNS:t138.test - DNS:t139.test - DNS:t140.test - DNS:t141.test - DNS:t142.test - DNS:t143.test - DNS:t144.test - DNS:t145.test - DNS:t146.test - DNS:t147.test - DNS:t148.test - DNS:t149.test - DNS:t150.test - DNS:t151.test - DNS:t152.test - DNS:t153.test - DNS:t154.test - DNS:t155.test - DNS:t156.test - DNS:t157.test - DNS:t158.test - DNS:t159.test - DNS:t160.test - DNS:t161.test - DNS:t162.test - DNS:t163.test - DNS:t164.test - DNS:t165.test - DNS:t166.test - DNS:t167.test - DNS:t168.test - DNS:t169.test - DNS:t170.test - DNS:t171.test - DNS:t172.test - DNS:t173.test - DNS:t174.test - DNS:t175.test - DNS:t176.test - DNS:t177.test - DNS:t178.test - DNS:t179.test - DNS:t180.test - DNS:t181.test - DNS:t182.test - DNS:t183.test - DNS:t184.test - DNS:t185.test - DNS:t186.test - DNS:t187.test - DNS:t188.test - DNS:t189.test - DNS:t190.test - DNS:t191.test - DNS:t192.test - DNS:t193.test - DNS:t194.test - DNS:t195.test - DNS:t196.test - DNS:t197.test - DNS:t198.test - DNS:t199.test - DNS:t200.test - DNS:t201.test - DNS:t202.test - DNS:t203.test - DNS:t204.test - DNS:t205.test - DNS:t206.test - DNS:t207.test - DNS:t208.test - DNS:t209.test - DNS:t210.test - DNS:t211.test - DNS:t212.test - DNS:t213.test - DNS:t214.test - DNS:t215.test - DNS:t216.test - DNS:t217.test - DNS:t218.test - DNS:t219.test - DNS:t220.test - DNS:t221.test - DNS:t222.test - DNS:t223.test - DNS:t224.test - DNS:t225.test - DNS:t226.test - DNS:t227.test - DNS:t228.test - DNS:t229.test - DNS:t230.test - DNS:t231.test - DNS:t232.test - DNS:t233.test - DNS:t234.test - DNS:t235.test - DNS:t236.test - DNS:t237.test - DNS:t238.test - DNS:t239.test - DNS:t240.test - DNS:t241.test - DNS:t242.test - DNS:t243.test - DNS:t244.test - DNS:t245.test - DNS:t246.test - DNS:t247.test - DNS:t248.test - DNS:t249.test - DNS:t250.test - DNS:t251.test - DNS:t252.test - DNS:t253.test - DNS:t254.test - DNS:t255.test - DNS:t256.test - DNS:t257.test - DNS:t258.test - DNS:t259.test - DNS:t260.test - DNS:t261.test - DNS:t262.test - DNS:t263.test - DNS:t264.test - DNS:t265.test - DNS:t266.test - DNS:t267.test - DNS:t268.test - DNS:t269.test - DNS:t270.test - DNS:t271.test - DNS:t272.test - DNS:t273.test - DNS:t274.test - DNS:t275.test - DNS:t276.test - DNS:t277.test - DNS:t278.test - DNS:t279.test - DNS:t280.test - DNS:t281.test - DNS:t282.test - DNS:t283.test - DNS:t284.test - DNS:t285.test - DNS:t286.test - DNS:t287.test - DNS:t288.test - DNS:t289.test - DNS:t290.test - DNS:t291.test - DNS:t292.test - DNS:t293.test - DNS:t294.test - DNS:t295.test - DNS:t296.test - DNS:t297.test - DNS:t298.test - DNS:t299.test - DNS:t300.test - DNS:t301.test - DNS:t302.test - DNS:t303.test - DNS:t304.test - DNS:t305.test - DNS:t306.test - DNS:t307.test - DNS:t308.test - DNS:t309.test - DNS:t310.test - DNS:t311.test - DNS:t312.test - DNS:t313.test - DNS:t314.test - DNS:t315.test - DNS:t316.test - DNS:t317.test - DNS:t318.test - DNS:t319.test - DNS:t320.test - DNS:t321.test - DNS:t322.test - DNS:t323.test - DNS:t324.test - DNS:t325.test - DNS:t326.test - DNS:t327.test - DNS:t328.test - DNS:t329.test - DNS:t330.test - DNS:t331.test - DNS:t332.test - DNS:t333.test - DNS:t334.test - DNS:t335.test - DNS:t336.test - DNS:t337.test - DNS:t338.test - DNS:t339.test - DNS:t340.test - DNS:t341.test - DNS:t342.test - DNS:t343.test - DNS:t344.test - DNS:t345.test - DNS:t346.test - DNS:t347.test - DNS:t348.test - DNS:t349.test - DNS:t350.test - DNS:t351.test - DNS:t352.test - DNS:t353.test - DNS:t354.test - DNS:t355.test - DNS:t356.test - DNS:t357.test - DNS:t358.test - DNS:t359.test - DNS:t360.test - DNS:t361.test - DNS:t362.test - DNS:t363.test - DNS:t364.test - DNS:t365.test - DNS:t366.test - DNS:t367.test - DNS:t368.test - DNS:t369.test - DNS:t370.test - DNS:t371.test - DNS:t372.test - DNS:t373.test - DNS:t374.test - DNS:t375.test - DNS:t376.test - DNS:t377.test - DNS:t378.test - DNS:t379.test - DNS:t380.test - DNS:t381.test - DNS:t382.test - DNS:t383.test - DNS:t384.test - DNS:t385.test - DNS:t386.test - DNS:t387.test - DNS:t388.test - DNS:t389.test - DNS:t390.test - DNS:t391.test - DNS:t392.test - DNS:t393.test - DNS:t394.test - DNS:t395.test - DNS:t396.test - DNS:t397.test - DNS:t398.test - DNS:t399.test - DNS:t400.test - DNS:t401.test - DNS:t402.test - DNS:t403.test - DNS:t404.test - DNS:t405.test - DNS:t406.test - DNS:t407.test - DNS:t408.test - DNS:t409.test - DNS:t410.test - DNS:t411.test - DNS:t412.test - DNS:t413.test - DNS:t414.test - DNS:t415.test - DNS:t416.test - DNS:t417.test - DNS:t418.test - DNS:t419.test - DNS:t420.test - DNS:t421.test - DNS:t422.test - DNS:t423.test - DNS:t424.test - DNS:t425.test - DNS:t426.test - DNS:t427.test - DNS:t428.test - DNS:t429.test - DNS:t430.test - DNS:t431.test - DNS:t432.test - DNS:t433.test - DNS:t434.test - DNS:t435.test - DNS:t436.test - DNS:t437.test - DNS:t438.test - DNS:t439.test - DNS:t440.test - DNS:t441.test - DNS:t442.test - DNS:t443.test - DNS:t444.test - DNS:t445.test - DNS:t446.test - DNS:t447.test - DNS:t448.test - DNS:t449.test - DNS:t450.test - DNS:t451.test - DNS:t452.test - DNS:t453.test - DNS:t454.test - DNS:t455.test - DNS:t456.test - DNS:t457.test - DNS:t458.test - DNS:t459.test - DNS:t460.test - DNS:t461.test - DNS:t462.test - DNS:t463.test - DNS:t464.test - DNS:t465.test - DNS:t466.test - DNS:t467.test - DNS:t468.test - DNS:t469.test - DNS:t470.test - DNS:t471.test - DNS:t472.test - DNS:t473.test - DNS:t474.test - DNS:t475.test - DNS:t476.test - DNS:t477.test - DNS:t478.test - DNS:t479.test - DNS:t480.test - DNS:t481.test - DNS:t482.test - DNS:t483.test - DNS:t484.test - DNS:t485.test - DNS:t486.test - DNS:t487.test - DNS:t488.test - DNS:t489.test - DNS:t490.test - DNS:t491.test - DNS:t492.test - DNS:t493.test - DNS:t494.test - DNS:t495.test - DNS:t496.test - DNS:t497.test - DNS:t498.test - DNS:t499.test - DNS:t500.test - DNS:t501.test - DNS:t502.test - DNS:t503.test - DNS:t504.test - DNS:t505.test - DNS:t506.test - DNS:t507.test - DNS:t508.test - DNS:t509.test - DNS:t510.test - DNS:t511.test - DNS:t512.test - DNS:t513.test - DNS:t514.test - DNS:t515.test - DNS:t516.test - DNS:t517.test - DNS:t518.test - DNS:t519.test - DNS:t520.test - DNS:t521.test - DNS:t522.test - DNS:t523.test - DNS:t524.test - DNS:t525.test - DNS:t526.test - DNS:t527.test - DNS:t528.test - DNS:t529.test - DNS:t530.test - DNS:t531.test - DNS:t532.test - DNS:t533.test - DNS:t534.test - DNS:t535.test - DNS:t536.test - DNS:t537.test - DNS:t538.test - DNS:t539.test - DNS:t540.test - DNS:t541.test - DNS:t542.test - DNS:t543.test - DNS:t544.test - DNS:t545.test - DNS:t546.test - DNS:t547.test - DNS:t548.test - DNS:t549.test - DNS:t550.test - DNS:t551.test - DNS:t552.test - DNS:t553.test - DNS:t554.test - DNS:t555.test - DNS:t556.test - DNS:t557.test - DNS:t558.test - DNS:t559.test - DNS:t560.test - DNS:t561.test - DNS:t562.test - DNS:t563.test - DNS:t564.test - DNS:t565.test - DNS:t566.test - DNS:t567.test - DNS:t568.test - DNS:t569.test - DNS:t570.test - DNS:t571.test - DNS:t572.test - DNS:t573.test - DNS:t574.test - DNS:t575.test - DNS:t576.test - DNS:t577.test - DNS:t578.test - DNS:t579.test - DNS:t580.test - DNS:t581.test - DNS:t582.test - DNS:t583.test - DNS:t584.test - DNS:t585.test - DNS:t586.test - DNS:t587.test - DNS:t588.test - DNS:t589.test - DNS:t590.test - DNS:t591.test - DNS:t592.test - DNS:t593.test - DNS:t594.test - DNS:t595.test - DNS:t596.test - DNS:t597.test - DNS:t598.test - DNS:t599.test - DNS:t600.test - DNS:t601.test - DNS:t602.test - DNS:t603.test - DNS:t604.test - DNS:t605.test - DNS:t606.test - DNS:t607.test - DNS:t608.test - DNS:t609.test - DNS:t610.test - DNS:t611.test - DNS:t612.test - DNS:t613.test - DNS:t614.test - DNS:t615.test - DNS:t616.test - DNS:t617.test - DNS:t618.test - DNS:t619.test - DNS:t620.test - DNS:t621.test - DNS:t622.test - DNS:t623.test - DNS:t624.test - DNS:t625.test - DNS:t626.test - DNS:t627.test - DNS:t628.test - DNS:t629.test - DNS:t630.test - DNS:t631.test - DNS:t632.test - DNS:t633.test - DNS:t634.test - DNS:t635.test - DNS:t636.test - DNS:t637.test - DNS:t638.test - DNS:t639.test - DNS:t640.test - DNS:t641.test - DNS:t642.test - DNS:t643.test - DNS:t644.test - DNS:t645.test - DNS:t646.test - DNS:t647.test - DNS:t648.test - DNS:t649.test - DNS:t650.test - DNS:t651.test - DNS:t652.test - DNS:t653.test - DNS:t654.test - DNS:t655.test - DNS:t656.test - DNS:t657.test - DNS:t658.test - DNS:t659.test - DNS:t660.test - DNS:t661.test - DNS:t662.test - DNS:t663.test - DNS:t664.test - DNS:t665.test - DNS:t666.test - DNS:t667.test - DNS:t668.test - DNS:t669.test - DNS:t670.test - DNS:t671.test - DNS:t672.test - DNS:t673.test - DNS:t674.test - DNS:t675.test - DNS:t676.test - DNS:t677.test - DNS:t678.test - DNS:t679.test - DNS:t680.test - DNS:t681.test - DNS:t682.test - DNS:t683.test - DNS:t684.test - DNS:t685.test - DNS:t686.test - DNS:t687.test - DNS:t688.test - DNS:t689.test - DNS:t690.test - DNS:t691.test - DNS:t692.test - DNS:t693.test - DNS:t694.test - DNS:t695.test - DNS:t696.test - DNS:t697.test - DNS:t698.test - DNS:t699.test - DNS:t700.test - DNS:t701.test - DNS:t702.test - DNS:t703.test - DNS:t704.test - DNS:t705.test - DNS:t706.test - DNS:t707.test - DNS:t708.test - DNS:t709.test - DNS:t710.test - DNS:t711.test - DNS:t712.test - DNS:t713.test - DNS:t714.test - DNS:t715.test - DNS:t716.test - DNS:t717.test - DNS:t718.test - DNS:t719.test - DNS:t720.test - DNS:t721.test - DNS:t722.test - DNS:t723.test - DNS:t724.test - DNS:t725.test - DNS:t726.test - DNS:t727.test - DNS:t728.test - DNS:t729.test - DNS:t730.test - DNS:t731.test - DNS:t732.test - DNS:t733.test - DNS:t734.test - DNS:t735.test - DNS:t736.test - DNS:t737.test - DNS:t738.test - DNS:t739.test - DNS:t740.test - DNS:t741.test - DNS:t742.test - DNS:t743.test - DNS:t744.test - DNS:t745.test - DNS:t746.test - DNS:t747.test - DNS:t748.test - DNS:t749.test - DNS:t750.test - DNS:t751.test - DNS:t752.test - DNS:t753.test - DNS:t754.test - DNS:t755.test - DNS:t756.test - DNS:t757.test - DNS:t758.test - DNS:t759.test - DNS:t760.test - DNS:t761.test - DNS:t762.test - DNS:t763.test - DNS:t764.test - DNS:t765.test - DNS:t766.test - DNS:t767.test - DNS:t768.test - DNS:t769.test - DNS:t770.test - DNS:t771.test - DNS:t772.test - DNS:t773.test - DNS:t774.test - DNS:t775.test - DNS:t776.test - DNS:t777.test - DNS:t778.test - DNS:t779.test - DNS:t780.test - DNS:t781.test - DNS:t782.test - DNS:t783.test - DNS:t784.test - DNS:t785.test - DNS:t786.test - DNS:t787.test - DNS:t788.test - DNS:t789.test - DNS:t790.test - DNS:t791.test - DNS:t792.test - DNS:t793.test - DNS:t794.test - DNS:t795.test - DNS:t796.test - DNS:t797.test - DNS:t798.test - DNS:t799.test - DNS:t800.test - DNS:t801.test - DNS:t802.test - DNS:t803.test - DNS:t804.test - DNS:t805.test - DNS:t806.test - DNS:t807.test - DNS:t808.test - DNS:t809.test - DNS:t810.test - DNS:t811.test - DNS:t812.test - DNS:t813.test - DNS:t814.test - DNS:t815.test - DNS:t816.test - DNS:t817.test - DNS:t818.test - DNS:t819.test - DNS:t820.test - DNS:t821.test - DNS:t822.test - DNS:t823.test - DNS:t824.test - DNS:t825.test - DNS:t826.test - DNS:t827.test - DNS:t828.test - DNS:t829.test - DNS:t830.test - DNS:t831.test - DNS:t832.test - DNS:t833.test - DNS:t834.test - DNS:t835.test - DNS:t836.test - DNS:t837.test - DNS:t838.test - DNS:t839.test - DNS:t840.test - DNS:t841.test - DNS:t842.test - DNS:t843.test - DNS:t844.test - DNS:t845.test - DNS:t846.test - DNS:t847.test - DNS:t848.test - DNS:t849.test - DNS:t850.test - DNS:t851.test - DNS:t852.test - DNS:t853.test - DNS:t854.test - DNS:t855.test - DNS:t856.test - DNS:t857.test - DNS:t858.test - DNS:t859.test - DNS:t860.test - DNS:t861.test - DNS:t862.test - DNS:t863.test - DNS:t864.test - DNS:t865.test - DNS:t866.test - DNS:t867.test - DNS:t868.test - DNS:t869.test - DNS:t870.test - DNS:t871.test - DNS:t872.test - DNS:t873.test - DNS:t874.test - DNS:t875.test - DNS:t876.test - DNS:t877.test - DNS:t878.test - DNS:t879.test - DNS:t880.test - DNS:t881.test - DNS:t882.test - DNS:t883.test - DNS:t884.test - DNS:t885.test - DNS:t886.test - DNS:t887.test - DNS:t888.test - DNS:t889.test - DNS:t890.test - DNS:t891.test - DNS:t892.test - DNS:t893.test - DNS:t894.test - DNS:t895.test - DNS:t896.test - DNS:t897.test - DNS:t898.test - DNS:t899.test - DNS:t900.test - DNS:t901.test - DNS:t902.test - DNS:t903.test - DNS:t904.test - DNS:t905.test - DNS:t906.test - DNS:t907.test - DNS:t908.test - DNS:t909.test - DNS:t910.test - DNS:t911.test - DNS:t912.test - DNS:t913.test - DNS:t914.test - DNS:t915.test - DNS:t916.test - DNS:t917.test - DNS:t918.test - DNS:t919.test - DNS:t920.test - DNS:t921.test - DNS:t922.test - DNS:t923.test - DNS:t924.test - DNS:t925.test - DNS:t926.test - DNS:t927.test - DNS:t928.test - DNS:t929.test - DNS:t930.test - DNS:t931.test - DNS:t932.test - DNS:t933.test - DNS:t934.test - DNS:t935.test - DNS:t936.test - DNS:t937.test - DNS:t938.test - DNS:t939.test - DNS:t940.test - DNS:t941.test - DNS:t942.test - DNS:t943.test - DNS:t944.test - DNS:t945.test - DNS:t946.test - DNS:t947.test - DNS:t948.test - DNS:t949.test - DNS:t950.test - DNS:t951.test - DNS:t952.test - DNS:t953.test - DNS:t954.test - DNS:t955.test - DNS:t956.test - DNS:t957.test - DNS:t958.test - DNS:t959.test - DNS:t960.test - DNS:t961.test - DNS:t962.test - DNS:t963.test - DNS:t964.test - DNS:t965.test - DNS:t966.test - DNS:t967.test - DNS:t968.test - DNS:t969.test - DNS:t970.test - DNS:t971.test - DNS:t972.test - DNS:t973.test - DNS:t974.test - DNS:t975.test - DNS:t976.test - DNS:t977.test - DNS:t978.test - DNS:t979.test - DNS:t980.test - DNS:t981.test - DNS:t982.test - DNS:t983.test - DNS:t984.test - DNS:t985.test - DNS:t986.test - DNS:t987.test - DNS:t988.test - DNS:t989.test - DNS:t990.test - DNS:t991.test - DNS:t992.test - DNS:t993.test - DNS:t994.test - DNS:t995.test - DNS:t996.test - DNS:t997.test - DNS:t998.test - DNS:t999.test - DNS:t1000.test - DNS:t1001.test - DNS:t1002.test - DNS:t1003.test - DNS:t1004.test - DNS:t1005.test - DNS:t1006.test - DNS:t1007.test - DNS:t1008.test - DNS:t1009.test - DNS:t1010.test - DNS:t1011.test - DNS:t1012.test - DNS:t1013.test - DNS:t1014.test - DNS:t1015.test - DNS:t1016.test - DNS:t1017.test - DNS:t1018.test - DNS:t1019.test - DNS:t1020.test - DNS:t1021.test - DNS:t1022.test - DNS:t1023.test - DNS:t1024.test - - Signature Algorithm: sha256WithRSAEncryption - 2f:8c:9f:08:43:fa:e1:c2:16:9b:e6:5a:b9:8e:7b:d5:49:ef: - d6:de:02:25:9b:46:eb:a3:df:a8:8d:07:10:40:e7:de:fe:23: - 6a:5e:9d:eb:63:7f:a1:a9:8d:34:b9:c8:bd:5f:dc:4c:eb:b3: - 89:73:23:fa:90:a3:a2:cb:f0:1f:67:f2:e8:e1:e0:74:e2:86: - 03:96:28:20:4b:b9:fc:ba:4f:80:24:de:2b:c1:27:9b:21:e5: - d9:3e:2b:66:76:50:6c:90:a3:5a:89:3e:51:34:09:1c:37:ce: - 60:79:6a:89:9b:6b:18:f5:89:31:01:96:92:b9:a0:71:b4:50: - 3a:8c:f4:46:3a:58:54:ff:a2:34:dc:ee:86:4e:5f:ac:f8:1a: - f9:c0:22:40:82:be:5f:98:d8:3d:52:3a:18:a2:4f:e2:30:76: - ba:fa:ee:5e:1f:26:80:72:b0:06:f0:21:b7:84:2a:5d:ea:21: - 9d:e0:0f:35:80:93:d8:9d:1f:9b:a7:3d:6f:e2:1c:29:38:12: - 9d:3c:cd:4b:4c:9f:fa:d5:62:2b:56:ac:2a:3a:f8:5f:cc:32: - 0f:02:7c:a8:df:c0:c9:d1:1e:4d:a7:dc:9f:cb:4e:93:34:f6: - 6e:50:3a:1d:b3:49:e9:50:a3:19:78:a0:8d:c3:2b:5a:78:1d: - 53:55:35:47 ------BEGIN CERTIFICATE----- -MII3TzCCNjegAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vswDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCNJkwgjSVMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgjPJBgNVHR4EgjPAMIIzvKCCM7gwCYIHdDAudGVzdDAJggd0MS50ZXN0MAmC -B3QyLnRlc3QwCYIHdDMudGVzdDAJggd0NC50ZXN0MAmCB3Q1LnRlc3QwCYIHdDYu -dGVzdDAJggd0Ny50ZXN0MAmCB3Q4LnRlc3QwCYIHdDkudGVzdDAKggh0MTAudGVz -dDAKggh0MTEudGVzdDAKggh0MTIudGVzdDAKggh0MTMudGVzdDAKggh0MTQudGVz -dDAKggh0MTUudGVzdDAKggh0MTYudGVzdDAKggh0MTcudGVzdDAKggh0MTgudGVz -dDAKggh0MTkudGVzdDAKggh0MjAudGVzdDAKggh0MjEudGVzdDAKggh0MjIudGVz -dDAKggh0MjMudGVzdDAKggh0MjQudGVzdDAKggh0MjUudGVzdDAKggh0MjYudGVz -dDAKggh0MjcudGVzdDAKggh0MjgudGVzdDAKggh0MjkudGVzdDAKggh0MzAudGVz -dDAKggh0MzEudGVzdDAKggh0MzIudGVzdDAKggh0MzMudGVzdDAKggh0MzQudGVz -dDAKggh0MzUudGVzdDAKggh0MzYudGVzdDAKggh0MzcudGVzdDAKggh0MzgudGVz -dDAKggh0MzkudGVzdDAKggh0NDAudGVzdDAKggh0NDEudGVzdDAKggh0NDIudGVz -dDAKggh0NDMudGVzdDAKggh0NDQudGVzdDAKggh0NDUudGVzdDAKggh0NDYudGVz -dDAKggh0NDcudGVzdDAKggh0NDgudGVzdDAKggh0NDkudGVzdDAKggh0NTAudGVz -dDAKggh0NTEudGVzdDAKggh0NTIudGVzdDAKggh0NTMudGVzdDAKggh0NTQudGVz -dDAKggh0NTUudGVzdDAKggh0NTYudGVzdDAKggh0NTcudGVzdDAKggh0NTgudGVz -dDAKggh0NTkudGVzdDAKggh0NjAudGVzdDAKggh0NjEudGVzdDAKggh0NjIudGVz -dDAKggh0NjMudGVzdDAKggh0NjQudGVzdDAKggh0NjUudGVzdDAKggh0NjYudGVz -dDAKggh0NjcudGVzdDAKggh0NjgudGVzdDAKggh0NjkudGVzdDAKggh0NzAudGVz -dDAKggh0NzEudGVzdDAKggh0NzIudGVzdDAKggh0NzMudGVzdDAKggh0NzQudGVz -dDAKggh0NzUudGVzdDAKggh0NzYudGVzdDAKggh0NzcudGVzdDAKggh0NzgudGVz -dDAKggh0NzkudGVzdDAKggh0ODAudGVzdDAKggh0ODEudGVzdDAKggh0ODIudGVz -dDAKggh0ODMudGVzdDAKggh0ODQudGVzdDAKggh0ODUudGVzdDAKggh0ODYudGVz -dDAKggh0ODcudGVzdDAKggh0ODgudGVzdDAKggh0ODkudGVzdDAKggh0OTAudGVz -dDAKggh0OTEudGVzdDAKggh0OTIudGVzdDAKggh0OTMudGVzdDAKggh0OTQudGVz -dDAKggh0OTUudGVzdDAKggh0OTYudGVzdDAKggh0OTcudGVzdDAKggh0OTgudGVz -dDAKggh0OTkudGVzdDALggl0MTAwLnRlc3QwC4IJdDEwMS50ZXN0MAuCCXQxMDIu -dGVzdDALggl0MTAzLnRlc3QwC4IJdDEwNC50ZXN0MAuCCXQxMDUudGVzdDALggl0 -MTA2LnRlc3QwC4IJdDEwNy50ZXN0MAuCCXQxMDgudGVzdDALggl0MTA5LnRlc3Qw -C4IJdDExMC50ZXN0MAuCCXQxMTEudGVzdDALggl0MTEyLnRlc3QwC4IJdDExMy50 -ZXN0MAuCCXQxMTQudGVzdDALggl0MTE1LnRlc3QwC4IJdDExNi50ZXN0MAuCCXQx -MTcudGVzdDALggl0MTE4LnRlc3QwC4IJdDExOS50ZXN0MAuCCXQxMjAudGVzdDAL -ggl0MTIxLnRlc3QwC4IJdDEyMi50ZXN0MAuCCXQxMjMudGVzdDALggl0MTI0LnRl -c3QwC4IJdDEyNS50ZXN0MAuCCXQxMjYudGVzdDALggl0MTI3LnRlc3QwC4IJdDEy -OC50ZXN0MAuCCXQxMjkudGVzdDALggl0MTMwLnRlc3QwC4IJdDEzMS50ZXN0MAuC -CXQxMzIudGVzdDALggl0MTMzLnRlc3QwC4IJdDEzNC50ZXN0MAuCCXQxMzUudGVz -dDALggl0MTM2LnRlc3QwC4IJdDEzNy50ZXN0MAuCCXQxMzgudGVzdDALggl0MTM5 -LnRlc3QwC4IJdDE0MC50ZXN0MAuCCXQxNDEudGVzdDALggl0MTQyLnRlc3QwC4IJ -dDE0My50ZXN0MAuCCXQxNDQudGVzdDALggl0MTQ1LnRlc3QwC4IJdDE0Ni50ZXN0 -MAuCCXQxNDcudGVzdDALggl0MTQ4LnRlc3QwC4IJdDE0OS50ZXN0MAuCCXQxNTAu -dGVzdDALggl0MTUxLnRlc3QwC4IJdDE1Mi50ZXN0MAuCCXQxNTMudGVzdDALggl0 -MTU0LnRlc3QwC4IJdDE1NS50ZXN0MAuCCXQxNTYudGVzdDALggl0MTU3LnRlc3Qw -C4IJdDE1OC50ZXN0MAuCCXQxNTkudGVzdDALggl0MTYwLnRlc3QwC4IJdDE2MS50 -ZXN0MAuCCXQxNjIudGVzdDALggl0MTYzLnRlc3QwC4IJdDE2NC50ZXN0MAuCCXQx -NjUudGVzdDALggl0MTY2LnRlc3QwC4IJdDE2Ny50ZXN0MAuCCXQxNjgudGVzdDAL -ggl0MTY5LnRlc3QwC4IJdDE3MC50ZXN0MAuCCXQxNzEudGVzdDALggl0MTcyLnRl -c3QwC4IJdDE3My50ZXN0MAuCCXQxNzQudGVzdDALggl0MTc1LnRlc3QwC4IJdDE3 -Ni50ZXN0MAuCCXQxNzcudGVzdDALggl0MTc4LnRlc3QwC4IJdDE3OS50ZXN0MAuC -CXQxODAudGVzdDALggl0MTgxLnRlc3QwC4IJdDE4Mi50ZXN0MAuCCXQxODMudGVz -dDALggl0MTg0LnRlc3QwC4IJdDE4NS50ZXN0MAuCCXQxODYudGVzdDALggl0MTg3 -LnRlc3QwC4IJdDE4OC50ZXN0MAuCCXQxODkudGVzdDALggl0MTkwLnRlc3QwC4IJ -dDE5MS50ZXN0MAuCCXQxOTIudGVzdDALggl0MTkzLnRlc3QwC4IJdDE5NC50ZXN0 -MAuCCXQxOTUudGVzdDALggl0MTk2LnRlc3QwC4IJdDE5Ny50ZXN0MAuCCXQxOTgu -dGVzdDALggl0MTk5LnRlc3QwC4IJdDIwMC50ZXN0MAuCCXQyMDEudGVzdDALggl0 -MjAyLnRlc3QwC4IJdDIwMy50ZXN0MAuCCXQyMDQudGVzdDALggl0MjA1LnRlc3Qw -C4IJdDIwNi50ZXN0MAuCCXQyMDcudGVzdDALggl0MjA4LnRlc3QwC4IJdDIwOS50 -ZXN0MAuCCXQyMTAudGVzdDALggl0MjExLnRlc3QwC4IJdDIxMi50ZXN0MAuCCXQy -MTMudGVzdDALggl0MjE0LnRlc3QwC4IJdDIxNS50ZXN0MAuCCXQyMTYudGVzdDAL -ggl0MjE3LnRlc3QwC4IJdDIxOC50ZXN0MAuCCXQyMTkudGVzdDALggl0MjIwLnRl -c3QwC4IJdDIyMS50ZXN0MAuCCXQyMjIudGVzdDALggl0MjIzLnRlc3QwC4IJdDIy -NC50ZXN0MAuCCXQyMjUudGVzdDALggl0MjI2LnRlc3QwC4IJdDIyNy50ZXN0MAuC -CXQyMjgudGVzdDALggl0MjI5LnRlc3QwC4IJdDIzMC50ZXN0MAuCCXQyMzEudGVz -dDALggl0MjMyLnRlc3QwC4IJdDIzMy50ZXN0MAuCCXQyMzQudGVzdDALggl0MjM1 -LnRlc3QwC4IJdDIzNi50ZXN0MAuCCXQyMzcudGVzdDALggl0MjM4LnRlc3QwC4IJ -dDIzOS50ZXN0MAuCCXQyNDAudGVzdDALggl0MjQxLnRlc3QwC4IJdDI0Mi50ZXN0 -MAuCCXQyNDMudGVzdDALggl0MjQ0LnRlc3QwC4IJdDI0NS50ZXN0MAuCCXQyNDYu -dGVzdDALggl0MjQ3LnRlc3QwC4IJdDI0OC50ZXN0MAuCCXQyNDkudGVzdDALggl0 -MjUwLnRlc3QwC4IJdDI1MS50ZXN0MAuCCXQyNTIudGVzdDALggl0MjUzLnRlc3Qw -C4IJdDI1NC50ZXN0MAuCCXQyNTUudGVzdDALggl0MjU2LnRlc3QwC4IJdDI1Ny50 -ZXN0MAuCCXQyNTgudGVzdDALggl0MjU5LnRlc3QwC4IJdDI2MC50ZXN0MAuCCXQy -NjEudGVzdDALggl0MjYyLnRlc3QwC4IJdDI2My50ZXN0MAuCCXQyNjQudGVzdDAL -ggl0MjY1LnRlc3QwC4IJdDI2Ni50ZXN0MAuCCXQyNjcudGVzdDALggl0MjY4LnRl -c3QwC4IJdDI2OS50ZXN0MAuCCXQyNzAudGVzdDALggl0MjcxLnRlc3QwC4IJdDI3 -Mi50ZXN0MAuCCXQyNzMudGVzdDALggl0Mjc0LnRlc3QwC4IJdDI3NS50ZXN0MAuC -CXQyNzYudGVzdDALggl0Mjc3LnRlc3QwC4IJdDI3OC50ZXN0MAuCCXQyNzkudGVz -dDALggl0MjgwLnRlc3QwC4IJdDI4MS50ZXN0MAuCCXQyODIudGVzdDALggl0Mjgz -LnRlc3QwC4IJdDI4NC50ZXN0MAuCCXQyODUudGVzdDALggl0Mjg2LnRlc3QwC4IJ -dDI4Ny50ZXN0MAuCCXQyODgudGVzdDALggl0Mjg5LnRlc3QwC4IJdDI5MC50ZXN0 -MAuCCXQyOTEudGVzdDALggl0MjkyLnRlc3QwC4IJdDI5My50ZXN0MAuCCXQyOTQu -dGVzdDALggl0Mjk1LnRlc3QwC4IJdDI5Ni50ZXN0MAuCCXQyOTcudGVzdDALggl0 -Mjk4LnRlc3QwC4IJdDI5OS50ZXN0MAuCCXQzMDAudGVzdDALggl0MzAxLnRlc3Qw -C4IJdDMwMi50ZXN0MAuCCXQzMDMudGVzdDALggl0MzA0LnRlc3QwC4IJdDMwNS50 -ZXN0MAuCCXQzMDYudGVzdDALggl0MzA3LnRlc3QwC4IJdDMwOC50ZXN0MAuCCXQz -MDkudGVzdDALggl0MzEwLnRlc3QwC4IJdDMxMS50ZXN0MAuCCXQzMTIudGVzdDAL -ggl0MzEzLnRlc3QwC4IJdDMxNC50ZXN0MAuCCXQzMTUudGVzdDALggl0MzE2LnRl -c3QwC4IJdDMxNy50ZXN0MAuCCXQzMTgudGVzdDALggl0MzE5LnRlc3QwC4IJdDMy -MC50ZXN0MAuCCXQzMjEudGVzdDALggl0MzIyLnRlc3QwC4IJdDMyMy50ZXN0MAuC -CXQzMjQudGVzdDALggl0MzI1LnRlc3QwC4IJdDMyNi50ZXN0MAuCCXQzMjcudGVz -dDALggl0MzI4LnRlc3QwC4IJdDMyOS50ZXN0MAuCCXQzMzAudGVzdDALggl0MzMx -LnRlc3QwC4IJdDMzMi50ZXN0MAuCCXQzMzMudGVzdDALggl0MzM0LnRlc3QwC4IJ -dDMzNS50ZXN0MAuCCXQzMzYudGVzdDALggl0MzM3LnRlc3QwC4IJdDMzOC50ZXN0 -MAuCCXQzMzkudGVzdDALggl0MzQwLnRlc3QwC4IJdDM0MS50ZXN0MAuCCXQzNDIu -dGVzdDALggl0MzQzLnRlc3QwC4IJdDM0NC50ZXN0MAuCCXQzNDUudGVzdDALggl0 -MzQ2LnRlc3QwC4IJdDM0Ny50ZXN0MAuCCXQzNDgudGVzdDALggl0MzQ5LnRlc3Qw -C4IJdDM1MC50ZXN0MAuCCXQzNTEudGVzdDALggl0MzUyLnRlc3QwC4IJdDM1My50 -ZXN0MAuCCXQzNTQudGVzdDALggl0MzU1LnRlc3QwC4IJdDM1Ni50ZXN0MAuCCXQz -NTcudGVzdDALggl0MzU4LnRlc3QwC4IJdDM1OS50ZXN0MAuCCXQzNjAudGVzdDAL -ggl0MzYxLnRlc3QwC4IJdDM2Mi50ZXN0MAuCCXQzNjMudGVzdDALggl0MzY0LnRl -c3QwC4IJdDM2NS50ZXN0MAuCCXQzNjYudGVzdDALggl0MzY3LnRlc3QwC4IJdDM2 -OC50ZXN0MAuCCXQzNjkudGVzdDALggl0MzcwLnRlc3QwC4IJdDM3MS50ZXN0MAuC -CXQzNzIudGVzdDALggl0MzczLnRlc3QwC4IJdDM3NC50ZXN0MAuCCXQzNzUudGVz -dDALggl0Mzc2LnRlc3QwC4IJdDM3Ny50ZXN0MAuCCXQzNzgudGVzdDALggl0Mzc5 -LnRlc3QwC4IJdDM4MC50ZXN0MAuCCXQzODEudGVzdDALggl0MzgyLnRlc3QwC4IJ -dDM4My50ZXN0MAuCCXQzODQudGVzdDALggl0Mzg1LnRlc3QwC4IJdDM4Ni50ZXN0 -MAuCCXQzODcudGVzdDALggl0Mzg4LnRlc3QwC4IJdDM4OS50ZXN0MAuCCXQzOTAu -dGVzdDALggl0MzkxLnRlc3QwC4IJdDM5Mi50ZXN0MAuCCXQzOTMudGVzdDALggl0 -Mzk0LnRlc3QwC4IJdDM5NS50ZXN0MAuCCXQzOTYudGVzdDALggl0Mzk3LnRlc3Qw -C4IJdDM5OC50ZXN0MAuCCXQzOTkudGVzdDALggl0NDAwLnRlc3QwC4IJdDQwMS50 -ZXN0MAuCCXQ0MDIudGVzdDALggl0NDAzLnRlc3QwC4IJdDQwNC50ZXN0MAuCCXQ0 -MDUudGVzdDALggl0NDA2LnRlc3QwC4IJdDQwNy50ZXN0MAuCCXQ0MDgudGVzdDAL -ggl0NDA5LnRlc3QwC4IJdDQxMC50ZXN0MAuCCXQ0MTEudGVzdDALggl0NDEyLnRl -c3QwC4IJdDQxMy50ZXN0MAuCCXQ0MTQudGVzdDALggl0NDE1LnRlc3QwC4IJdDQx -Ni50ZXN0MAuCCXQ0MTcudGVzdDALggl0NDE4LnRlc3QwC4IJdDQxOS50ZXN0MAuC -CXQ0MjAudGVzdDALggl0NDIxLnRlc3QwC4IJdDQyMi50ZXN0MAuCCXQ0MjMudGVz -dDALggl0NDI0LnRlc3QwC4IJdDQyNS50ZXN0MAuCCXQ0MjYudGVzdDALggl0NDI3 -LnRlc3QwC4IJdDQyOC50ZXN0MAuCCXQ0MjkudGVzdDALggl0NDMwLnRlc3QwC4IJ -dDQzMS50ZXN0MAuCCXQ0MzIudGVzdDALggl0NDMzLnRlc3QwC4IJdDQzNC50ZXN0 -MAuCCXQ0MzUudGVzdDALggl0NDM2LnRlc3QwC4IJdDQzNy50ZXN0MAuCCXQ0Mzgu -dGVzdDALggl0NDM5LnRlc3QwC4IJdDQ0MC50ZXN0MAuCCXQ0NDEudGVzdDALggl0 -NDQyLnRlc3QwC4IJdDQ0My50ZXN0MAuCCXQ0NDQudGVzdDALggl0NDQ1LnRlc3Qw -C4IJdDQ0Ni50ZXN0MAuCCXQ0NDcudGVzdDALggl0NDQ4LnRlc3QwC4IJdDQ0OS50 -ZXN0MAuCCXQ0NTAudGVzdDALggl0NDUxLnRlc3QwC4IJdDQ1Mi50ZXN0MAuCCXQ0 -NTMudGVzdDALggl0NDU0LnRlc3QwC4IJdDQ1NS50ZXN0MAuCCXQ0NTYudGVzdDAL -ggl0NDU3LnRlc3QwC4IJdDQ1OC50ZXN0MAuCCXQ0NTkudGVzdDALggl0NDYwLnRl -c3QwC4IJdDQ2MS50ZXN0MAuCCXQ0NjIudGVzdDALggl0NDYzLnRlc3QwC4IJdDQ2 -NC50ZXN0MAuCCXQ0NjUudGVzdDALggl0NDY2LnRlc3QwC4IJdDQ2Ny50ZXN0MAuC -CXQ0NjgudGVzdDALggl0NDY5LnRlc3QwC4IJdDQ3MC50ZXN0MAuCCXQ0NzEudGVz -dDALggl0NDcyLnRlc3QwC4IJdDQ3My50ZXN0MAuCCXQ0NzQudGVzdDALggl0NDc1 -LnRlc3QwC4IJdDQ3Ni50ZXN0MAuCCXQ0NzcudGVzdDALggl0NDc4LnRlc3QwC4IJ -dDQ3OS50ZXN0MAuCCXQ0ODAudGVzdDALggl0NDgxLnRlc3QwC4IJdDQ4Mi50ZXN0 -MAuCCXQ0ODMudGVzdDALggl0NDg0LnRlc3QwC4IJdDQ4NS50ZXN0MAuCCXQ0ODYu -dGVzdDALggl0NDg3LnRlc3QwC4IJdDQ4OC50ZXN0MAuCCXQ0ODkudGVzdDALggl0 -NDkwLnRlc3QwC4IJdDQ5MS50ZXN0MAuCCXQ0OTIudGVzdDALggl0NDkzLnRlc3Qw -C4IJdDQ5NC50ZXN0MAuCCXQ0OTUudGVzdDALggl0NDk2LnRlc3QwC4IJdDQ5Ny50 -ZXN0MAuCCXQ0OTgudGVzdDALggl0NDk5LnRlc3QwC4IJdDUwMC50ZXN0MAuCCXQ1 -MDEudGVzdDALggl0NTAyLnRlc3QwC4IJdDUwMy50ZXN0MAuCCXQ1MDQudGVzdDAL -ggl0NTA1LnRlc3QwC4IJdDUwNi50ZXN0MAuCCXQ1MDcudGVzdDALggl0NTA4LnRl -c3QwC4IJdDUwOS50ZXN0MAuCCXQ1MTAudGVzdDALggl0NTExLnRlc3QwC4IJdDUx -Mi50ZXN0MAuCCXQ1MTMudGVzdDALggl0NTE0LnRlc3QwC4IJdDUxNS50ZXN0MAuC -CXQ1MTYudGVzdDALggl0NTE3LnRlc3QwC4IJdDUxOC50ZXN0MAuCCXQ1MTkudGVz -dDALggl0NTIwLnRlc3QwC4IJdDUyMS50ZXN0MAuCCXQ1MjIudGVzdDALggl0NTIz -LnRlc3QwC4IJdDUyNC50ZXN0MAuCCXQ1MjUudGVzdDALggl0NTI2LnRlc3QwC4IJ -dDUyNy50ZXN0MAuCCXQ1MjgudGVzdDALggl0NTI5LnRlc3QwC4IJdDUzMC50ZXN0 -MAuCCXQ1MzEudGVzdDALggl0NTMyLnRlc3QwC4IJdDUzMy50ZXN0MAuCCXQ1MzQu -dGVzdDALggl0NTM1LnRlc3QwC4IJdDUzNi50ZXN0MAuCCXQ1MzcudGVzdDALggl0 -NTM4LnRlc3QwC4IJdDUzOS50ZXN0MAuCCXQ1NDAudGVzdDALggl0NTQxLnRlc3Qw -C4IJdDU0Mi50ZXN0MAuCCXQ1NDMudGVzdDALggl0NTQ0LnRlc3QwC4IJdDU0NS50 -ZXN0MAuCCXQ1NDYudGVzdDALggl0NTQ3LnRlc3QwC4IJdDU0OC50ZXN0MAuCCXQ1 -NDkudGVzdDALggl0NTUwLnRlc3QwC4IJdDU1MS50ZXN0MAuCCXQ1NTIudGVzdDAL -ggl0NTUzLnRlc3QwC4IJdDU1NC50ZXN0MAuCCXQ1NTUudGVzdDALggl0NTU2LnRl -c3QwC4IJdDU1Ny50ZXN0MAuCCXQ1NTgudGVzdDALggl0NTU5LnRlc3QwC4IJdDU2 -MC50ZXN0MAuCCXQ1NjEudGVzdDALggl0NTYyLnRlc3QwC4IJdDU2My50ZXN0MAuC -CXQ1NjQudGVzdDALggl0NTY1LnRlc3QwC4IJdDU2Ni50ZXN0MAuCCXQ1NjcudGVz -dDALggl0NTY4LnRlc3QwC4IJdDU2OS50ZXN0MAuCCXQ1NzAudGVzdDALggl0NTcx -LnRlc3QwC4IJdDU3Mi50ZXN0MAuCCXQ1NzMudGVzdDALggl0NTc0LnRlc3QwC4IJ -dDU3NS50ZXN0MAuCCXQ1NzYudGVzdDALggl0NTc3LnRlc3QwC4IJdDU3OC50ZXN0 -MAuCCXQ1NzkudGVzdDALggl0NTgwLnRlc3QwC4IJdDU4MS50ZXN0MAuCCXQ1ODIu -dGVzdDALggl0NTgzLnRlc3QwC4IJdDU4NC50ZXN0MAuCCXQ1ODUudGVzdDALggl0 -NTg2LnRlc3QwC4IJdDU4Ny50ZXN0MAuCCXQ1ODgudGVzdDALggl0NTg5LnRlc3Qw -C4IJdDU5MC50ZXN0MAuCCXQ1OTEudGVzdDALggl0NTkyLnRlc3QwC4IJdDU5My50 -ZXN0MAuCCXQ1OTQudGVzdDALggl0NTk1LnRlc3QwC4IJdDU5Ni50ZXN0MAuCCXQ1 -OTcudGVzdDALggl0NTk4LnRlc3QwC4IJdDU5OS50ZXN0MAuCCXQ2MDAudGVzdDAL -ggl0NjAxLnRlc3QwC4IJdDYwMi50ZXN0MAuCCXQ2MDMudGVzdDALggl0NjA0LnRl -c3QwC4IJdDYwNS50ZXN0MAuCCXQ2MDYudGVzdDALggl0NjA3LnRlc3QwC4IJdDYw -OC50ZXN0MAuCCXQ2MDkudGVzdDALggl0NjEwLnRlc3QwC4IJdDYxMS50ZXN0MAuC -CXQ2MTIudGVzdDALggl0NjEzLnRlc3QwC4IJdDYxNC50ZXN0MAuCCXQ2MTUudGVz -dDALggl0NjE2LnRlc3QwC4IJdDYxNy50ZXN0MAuCCXQ2MTgudGVzdDALggl0NjE5 -LnRlc3QwC4IJdDYyMC50ZXN0MAuCCXQ2MjEudGVzdDALggl0NjIyLnRlc3QwC4IJ -dDYyMy50ZXN0MAuCCXQ2MjQudGVzdDALggl0NjI1LnRlc3QwC4IJdDYyNi50ZXN0 -MAuCCXQ2MjcudGVzdDALggl0NjI4LnRlc3QwC4IJdDYyOS50ZXN0MAuCCXQ2MzAu -dGVzdDALggl0NjMxLnRlc3QwC4IJdDYzMi50ZXN0MAuCCXQ2MzMudGVzdDALggl0 -NjM0LnRlc3QwC4IJdDYzNS50ZXN0MAuCCXQ2MzYudGVzdDALggl0NjM3LnRlc3Qw -C4IJdDYzOC50ZXN0MAuCCXQ2MzkudGVzdDALggl0NjQwLnRlc3QwC4IJdDY0MS50 -ZXN0MAuCCXQ2NDIudGVzdDALggl0NjQzLnRlc3QwC4IJdDY0NC50ZXN0MAuCCXQ2 -NDUudGVzdDALggl0NjQ2LnRlc3QwC4IJdDY0Ny50ZXN0MAuCCXQ2NDgudGVzdDAL -ggl0NjQ5LnRlc3QwC4IJdDY1MC50ZXN0MAuCCXQ2NTEudGVzdDALggl0NjUyLnRl -c3QwC4IJdDY1My50ZXN0MAuCCXQ2NTQudGVzdDALggl0NjU1LnRlc3QwC4IJdDY1 -Ni50ZXN0MAuCCXQ2NTcudGVzdDALggl0NjU4LnRlc3QwC4IJdDY1OS50ZXN0MAuC -CXQ2NjAudGVzdDALggl0NjYxLnRlc3QwC4IJdDY2Mi50ZXN0MAuCCXQ2NjMudGVz -dDALggl0NjY0LnRlc3QwC4IJdDY2NS50ZXN0MAuCCXQ2NjYudGVzdDALggl0NjY3 -LnRlc3QwC4IJdDY2OC50ZXN0MAuCCXQ2NjkudGVzdDALggl0NjcwLnRlc3QwC4IJ -dDY3MS50ZXN0MAuCCXQ2NzIudGVzdDALggl0NjczLnRlc3QwC4IJdDY3NC50ZXN0 -MAuCCXQ2NzUudGVzdDALggl0Njc2LnRlc3QwC4IJdDY3Ny50ZXN0MAuCCXQ2Nzgu -dGVzdDALggl0Njc5LnRlc3QwC4IJdDY4MC50ZXN0MAuCCXQ2ODEudGVzdDALggl0 -NjgyLnRlc3QwC4IJdDY4My50ZXN0MAuCCXQ2ODQudGVzdDALggl0Njg1LnRlc3Qw -C4IJdDY4Ni50ZXN0MAuCCXQ2ODcudGVzdDALggl0Njg4LnRlc3QwC4IJdDY4OS50 -ZXN0MAuCCXQ2OTAudGVzdDALggl0NjkxLnRlc3QwC4IJdDY5Mi50ZXN0MAuCCXQ2 -OTMudGVzdDALggl0Njk0LnRlc3QwC4IJdDY5NS50ZXN0MAuCCXQ2OTYudGVzdDAL -ggl0Njk3LnRlc3QwC4IJdDY5OC50ZXN0MAuCCXQ2OTkudGVzdDALggl0NzAwLnRl -c3QwC4IJdDcwMS50ZXN0MAuCCXQ3MDIudGVzdDALggl0NzAzLnRlc3QwC4IJdDcw -NC50ZXN0MAuCCXQ3MDUudGVzdDALggl0NzA2LnRlc3QwC4IJdDcwNy50ZXN0MAuC -CXQ3MDgudGVzdDALggl0NzA5LnRlc3QwC4IJdDcxMC50ZXN0MAuCCXQ3MTEudGVz -dDALggl0NzEyLnRlc3QwC4IJdDcxMy50ZXN0MAuCCXQ3MTQudGVzdDALggl0NzE1 -LnRlc3QwC4IJdDcxNi50ZXN0MAuCCXQ3MTcudGVzdDALggl0NzE4LnRlc3QwC4IJ -dDcxOS50ZXN0MAuCCXQ3MjAudGVzdDALggl0NzIxLnRlc3QwC4IJdDcyMi50ZXN0 -MAuCCXQ3MjMudGVzdDALggl0NzI0LnRlc3QwC4IJdDcyNS50ZXN0MAuCCXQ3MjYu -dGVzdDALggl0NzI3LnRlc3QwC4IJdDcyOC50ZXN0MAuCCXQ3MjkudGVzdDALggl0 -NzMwLnRlc3QwC4IJdDczMS50ZXN0MAuCCXQ3MzIudGVzdDALggl0NzMzLnRlc3Qw -C4IJdDczNC50ZXN0MAuCCXQ3MzUudGVzdDALggl0NzM2LnRlc3QwC4IJdDczNy50 -ZXN0MAuCCXQ3MzgudGVzdDALggl0NzM5LnRlc3QwC4IJdDc0MC50ZXN0MAuCCXQ3 -NDEudGVzdDALggl0NzQyLnRlc3QwC4IJdDc0My50ZXN0MAuCCXQ3NDQudGVzdDAL -ggl0NzQ1LnRlc3QwC4IJdDc0Ni50ZXN0MAuCCXQ3NDcudGVzdDALggl0NzQ4LnRl -c3QwC4IJdDc0OS50ZXN0MAuCCXQ3NTAudGVzdDALggl0NzUxLnRlc3QwC4IJdDc1 -Mi50ZXN0MAuCCXQ3NTMudGVzdDALggl0NzU0LnRlc3QwC4IJdDc1NS50ZXN0MAuC -CXQ3NTYudGVzdDALggl0NzU3LnRlc3QwC4IJdDc1OC50ZXN0MAuCCXQ3NTkudGVz -dDALggl0NzYwLnRlc3QwC4IJdDc2MS50ZXN0MAuCCXQ3NjIudGVzdDALggl0NzYz -LnRlc3QwC4IJdDc2NC50ZXN0MAuCCXQ3NjUudGVzdDALggl0NzY2LnRlc3QwC4IJ -dDc2Ny50ZXN0MAuCCXQ3NjgudGVzdDALggl0NzY5LnRlc3QwC4IJdDc3MC50ZXN0 -MAuCCXQ3NzEudGVzdDALggl0NzcyLnRlc3QwC4IJdDc3My50ZXN0MAuCCXQ3NzQu -dGVzdDALggl0Nzc1LnRlc3QwC4IJdDc3Ni50ZXN0MAuCCXQ3NzcudGVzdDALggl0 -Nzc4LnRlc3QwC4IJdDc3OS50ZXN0MAuCCXQ3ODAudGVzdDALggl0NzgxLnRlc3Qw -C4IJdDc4Mi50ZXN0MAuCCXQ3ODMudGVzdDALggl0Nzg0LnRlc3QwC4IJdDc4NS50 -ZXN0MAuCCXQ3ODYudGVzdDALggl0Nzg3LnRlc3QwC4IJdDc4OC50ZXN0MAuCCXQ3 -ODkudGVzdDALggl0NzkwLnRlc3QwC4IJdDc5MS50ZXN0MAuCCXQ3OTIudGVzdDAL -ggl0NzkzLnRlc3QwC4IJdDc5NC50ZXN0MAuCCXQ3OTUudGVzdDALggl0Nzk2LnRl -c3QwC4IJdDc5Ny50ZXN0MAuCCXQ3OTgudGVzdDALggl0Nzk5LnRlc3QwC4IJdDgw -MC50ZXN0MAuCCXQ4MDEudGVzdDALggl0ODAyLnRlc3QwC4IJdDgwMy50ZXN0MAuC -CXQ4MDQudGVzdDALggl0ODA1LnRlc3QwC4IJdDgwNi50ZXN0MAuCCXQ4MDcudGVz -dDALggl0ODA4LnRlc3QwC4IJdDgwOS50ZXN0MAuCCXQ4MTAudGVzdDALggl0ODEx -LnRlc3QwC4IJdDgxMi50ZXN0MAuCCXQ4MTMudGVzdDALggl0ODE0LnRlc3QwC4IJ -dDgxNS50ZXN0MAuCCXQ4MTYudGVzdDALggl0ODE3LnRlc3QwC4IJdDgxOC50ZXN0 -MAuCCXQ4MTkudGVzdDALggl0ODIwLnRlc3QwC4IJdDgyMS50ZXN0MAuCCXQ4MjIu -dGVzdDALggl0ODIzLnRlc3QwC4IJdDgyNC50ZXN0MAuCCXQ4MjUudGVzdDALggl0 -ODI2LnRlc3QwC4IJdDgyNy50ZXN0MAuCCXQ4MjgudGVzdDALggl0ODI5LnRlc3Qw -C4IJdDgzMC50ZXN0MAuCCXQ4MzEudGVzdDALggl0ODMyLnRlc3QwC4IJdDgzMy50 -ZXN0MAuCCXQ4MzQudGVzdDALggl0ODM1LnRlc3QwC4IJdDgzNi50ZXN0MAuCCXQ4 -MzcudGVzdDALggl0ODM4LnRlc3QwC4IJdDgzOS50ZXN0MAuCCXQ4NDAudGVzdDAL -ggl0ODQxLnRlc3QwC4IJdDg0Mi50ZXN0MAuCCXQ4NDMudGVzdDALggl0ODQ0LnRl -c3QwC4IJdDg0NS50ZXN0MAuCCXQ4NDYudGVzdDALggl0ODQ3LnRlc3QwC4IJdDg0 -OC50ZXN0MAuCCXQ4NDkudGVzdDALggl0ODUwLnRlc3QwC4IJdDg1MS50ZXN0MAuC -CXQ4NTIudGVzdDALggl0ODUzLnRlc3QwC4IJdDg1NC50ZXN0MAuCCXQ4NTUudGVz -dDALggl0ODU2LnRlc3QwC4IJdDg1Ny50ZXN0MAuCCXQ4NTgudGVzdDALggl0ODU5 -LnRlc3QwC4IJdDg2MC50ZXN0MAuCCXQ4NjEudGVzdDALggl0ODYyLnRlc3QwC4IJ -dDg2My50ZXN0MAuCCXQ4NjQudGVzdDALggl0ODY1LnRlc3QwC4IJdDg2Ni50ZXN0 -MAuCCXQ4NjcudGVzdDALggl0ODY4LnRlc3QwC4IJdDg2OS50ZXN0MAuCCXQ4NzAu -dGVzdDALggl0ODcxLnRlc3QwC4IJdDg3Mi50ZXN0MAuCCXQ4NzMudGVzdDALggl0 -ODc0LnRlc3QwC4IJdDg3NS50ZXN0MAuCCXQ4NzYudGVzdDALggl0ODc3LnRlc3Qw -C4IJdDg3OC50ZXN0MAuCCXQ4NzkudGVzdDALggl0ODgwLnRlc3QwC4IJdDg4MS50 -ZXN0MAuCCXQ4ODIudGVzdDALggl0ODgzLnRlc3QwC4IJdDg4NC50ZXN0MAuCCXQ4 -ODUudGVzdDALggl0ODg2LnRlc3QwC4IJdDg4Ny50ZXN0MAuCCXQ4ODgudGVzdDAL -ggl0ODg5LnRlc3QwC4IJdDg5MC50ZXN0MAuCCXQ4OTEudGVzdDALggl0ODkyLnRl -c3QwC4IJdDg5My50ZXN0MAuCCXQ4OTQudGVzdDALggl0ODk1LnRlc3QwC4IJdDg5 -Ni50ZXN0MAuCCXQ4OTcudGVzdDALggl0ODk4LnRlc3QwC4IJdDg5OS50ZXN0MAuC -CXQ5MDAudGVzdDALggl0OTAxLnRlc3QwC4IJdDkwMi50ZXN0MAuCCXQ5MDMudGVz -dDALggl0OTA0LnRlc3QwC4IJdDkwNS50ZXN0MAuCCXQ5MDYudGVzdDALggl0OTA3 -LnRlc3QwC4IJdDkwOC50ZXN0MAuCCXQ5MDkudGVzdDALggl0OTEwLnRlc3QwC4IJ -dDkxMS50ZXN0MAuCCXQ5MTIudGVzdDALggl0OTEzLnRlc3QwC4IJdDkxNC50ZXN0 -MAuCCXQ5MTUudGVzdDALggl0OTE2LnRlc3QwC4IJdDkxNy50ZXN0MAuCCXQ5MTgu -dGVzdDALggl0OTE5LnRlc3QwC4IJdDkyMC50ZXN0MAuCCXQ5MjEudGVzdDALggl0 -OTIyLnRlc3QwC4IJdDkyMy50ZXN0MAuCCXQ5MjQudGVzdDALggl0OTI1LnRlc3Qw -C4IJdDkyNi50ZXN0MAuCCXQ5MjcudGVzdDALggl0OTI4LnRlc3QwC4IJdDkyOS50 -ZXN0MAuCCXQ5MzAudGVzdDALggl0OTMxLnRlc3QwC4IJdDkzMi50ZXN0MAuCCXQ5 -MzMudGVzdDALggl0OTM0LnRlc3QwC4IJdDkzNS50ZXN0MAuCCXQ5MzYudGVzdDAL -ggl0OTM3LnRlc3QwC4IJdDkzOC50ZXN0MAuCCXQ5MzkudGVzdDALggl0OTQwLnRl -c3QwC4IJdDk0MS50ZXN0MAuCCXQ5NDIudGVzdDALggl0OTQzLnRlc3QwC4IJdDk0 -NC50ZXN0MAuCCXQ5NDUudGVzdDALggl0OTQ2LnRlc3QwC4IJdDk0Ny50ZXN0MAuC -CXQ5NDgudGVzdDALggl0OTQ5LnRlc3QwC4IJdDk1MC50ZXN0MAuCCXQ5NTEudGVz -dDALggl0OTUyLnRlc3QwC4IJdDk1My50ZXN0MAuCCXQ5NTQudGVzdDALggl0OTU1 -LnRlc3QwC4IJdDk1Ni50ZXN0MAuCCXQ5NTcudGVzdDALggl0OTU4LnRlc3QwC4IJ -dDk1OS50ZXN0MAuCCXQ5NjAudGVzdDALggl0OTYxLnRlc3QwC4IJdDk2Mi50ZXN0 -MAuCCXQ5NjMudGVzdDALggl0OTY0LnRlc3QwC4IJdDk2NS50ZXN0MAuCCXQ5NjYu -dGVzdDALggl0OTY3LnRlc3QwC4IJdDk2OC50ZXN0MAuCCXQ5NjkudGVzdDALggl0 -OTcwLnRlc3QwC4IJdDk3MS50ZXN0MAuCCXQ5NzIudGVzdDALggl0OTczLnRlc3Qw -C4IJdDk3NC50ZXN0MAuCCXQ5NzUudGVzdDALggl0OTc2LnRlc3QwC4IJdDk3Ny50 -ZXN0MAuCCXQ5NzgudGVzdDALggl0OTc5LnRlc3QwC4IJdDk4MC50ZXN0MAuCCXQ5 -ODEudGVzdDALggl0OTgyLnRlc3QwC4IJdDk4My50ZXN0MAuCCXQ5ODQudGVzdDAL -ggl0OTg1LnRlc3QwC4IJdDk4Ni50ZXN0MAuCCXQ5ODcudGVzdDALggl0OTg4LnRl -c3QwC4IJdDk4OS50ZXN0MAuCCXQ5OTAudGVzdDALggl0OTkxLnRlc3QwC4IJdDk5 -Mi50ZXN0MAuCCXQ5OTMudGVzdDALggl0OTk0LnRlc3QwC4IJdDk5NS50ZXN0MAuC -CXQ5OTYudGVzdDALggl0OTk3LnRlc3QwC4IJdDk5OC50ZXN0MAuCCXQ5OTkudGVz -dDAMggp0MTAwMC50ZXN0MAyCCnQxMDAxLnRlc3QwDIIKdDEwMDIudGVzdDAMggp0 -MTAwMy50ZXN0MAyCCnQxMDA0LnRlc3QwDIIKdDEwMDUudGVzdDAMggp0MTAwNi50 -ZXN0MAyCCnQxMDA3LnRlc3QwDIIKdDEwMDgudGVzdDAMggp0MTAwOS50ZXN0MAyC -CnQxMDEwLnRlc3QwDIIKdDEwMTEudGVzdDAMggp0MTAxMi50ZXN0MAyCCnQxMDEz -LnRlc3QwDIIKdDEwMTQudGVzdDAMggp0MTAxNS50ZXN0MAyCCnQxMDE2LnRlc3Qw -DIIKdDEwMTcudGVzdDAMggp0MTAxOC50ZXN0MAyCCnQxMDE5LnRlc3QwDIIKdDEw -MjAudGVzdDAMggp0MTAyMS50ZXN0MAyCCnQxMDIyLnRlc3QwDIIKdDEwMjMudGVz -dDAMggp0MTAyNC50ZXN0MA0GCSqGSIb3DQEBCwUAA4IBAQAvjJ8IQ/rhwhab5lq5 -jnvVSe/W3gIlm0bro9+ojQcQQOfe/iNqXp3rY3+hqY00uci9X9xM67OJcyP6kKOi -y/AfZ/Lo4eB04oYDliggS7n8uk+AJN4rwSebIeXZPitmdlBskKNaiT5RNAkcN85g -eWqJm2sY9YkxAZaSuaBxtFA6jPRGOlhU/6I03O6GTl+s+Br5wCJAgr5fmNg9UjoY -ok/iMHa6+u5eHyaAcrAG8CG3hCpd6iGd4A81gJPYnR+bpz1v4hwpOBKdPM1LTJ/6 -1WIrVqwqOvhfzDIPAnyo38DJ0R5Np9yfy06TNPZuUDods0npUKMZeKCNwytaeB1T -VTVH ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FC.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FC.pem deleted file mode 100644 index 30ee03a71f..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FC.pem +++ /dev/null @@ -1,1374 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:fc - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Permitted: - IP:10.0.0.0/255.255.255.255 - IP:10.0.0.1/255.255.255.255 - IP:10.0.0.2/255.255.255.255 - IP:10.0.0.3/255.255.255.255 - IP:10.0.0.4/255.255.255.255 - IP:10.0.0.5/255.255.255.255 - IP:10.0.0.6/255.255.255.255 - IP:10.0.0.7/255.255.255.255 - IP:10.0.0.8/255.255.255.255 - IP:10.0.0.9/255.255.255.255 - IP:10.0.0.10/255.255.255.255 - IP:10.0.0.11/255.255.255.255 - IP:10.0.0.12/255.255.255.255 - IP:10.0.0.13/255.255.255.255 - IP:10.0.0.14/255.255.255.255 - IP:10.0.0.15/255.255.255.255 - IP:10.0.0.16/255.255.255.255 - IP:10.0.0.17/255.255.255.255 - IP:10.0.0.18/255.255.255.255 - IP:10.0.0.19/255.255.255.255 - IP:10.0.0.20/255.255.255.255 - IP:10.0.0.21/255.255.255.255 - IP:10.0.0.22/255.255.255.255 - IP:10.0.0.23/255.255.255.255 - IP:10.0.0.24/255.255.255.255 - IP:10.0.0.25/255.255.255.255 - IP:10.0.0.26/255.255.255.255 - IP:10.0.0.27/255.255.255.255 - IP:10.0.0.28/255.255.255.255 - IP:10.0.0.29/255.255.255.255 - IP:10.0.0.30/255.255.255.255 - IP:10.0.0.31/255.255.255.255 - IP:10.0.0.32/255.255.255.255 - IP:10.0.0.33/255.255.255.255 - IP:10.0.0.34/255.255.255.255 - IP:10.0.0.35/255.255.255.255 - IP:10.0.0.36/255.255.255.255 - IP:10.0.0.37/255.255.255.255 - IP:10.0.0.38/255.255.255.255 - IP:10.0.0.39/255.255.255.255 - IP:10.0.0.40/255.255.255.255 - IP:10.0.0.41/255.255.255.255 - IP:10.0.0.42/255.255.255.255 - IP:10.0.0.43/255.255.255.255 - IP:10.0.0.44/255.255.255.255 - IP:10.0.0.45/255.255.255.255 - IP:10.0.0.46/255.255.255.255 - IP:10.0.0.47/255.255.255.255 - IP:10.0.0.48/255.255.255.255 - IP:10.0.0.49/255.255.255.255 - IP:10.0.0.50/255.255.255.255 - IP:10.0.0.51/255.255.255.255 - IP:10.0.0.52/255.255.255.255 - IP:10.0.0.53/255.255.255.255 - IP:10.0.0.54/255.255.255.255 - IP:10.0.0.55/255.255.255.255 - IP:10.0.0.56/255.255.255.255 - IP:10.0.0.57/255.255.255.255 - IP:10.0.0.58/255.255.255.255 - IP:10.0.0.59/255.255.255.255 - IP:10.0.0.60/255.255.255.255 - IP:10.0.0.61/255.255.255.255 - IP:10.0.0.62/255.255.255.255 - IP:10.0.0.63/255.255.255.255 - IP:10.0.0.64/255.255.255.255 - IP:10.0.0.65/255.255.255.255 - IP:10.0.0.66/255.255.255.255 - IP:10.0.0.67/255.255.255.255 - IP:10.0.0.68/255.255.255.255 - IP:10.0.0.69/255.255.255.255 - IP:10.0.0.70/255.255.255.255 - IP:10.0.0.71/255.255.255.255 - IP:10.0.0.72/255.255.255.255 - IP:10.0.0.73/255.255.255.255 - IP:10.0.0.74/255.255.255.255 - IP:10.0.0.75/255.255.255.255 - IP:10.0.0.76/255.255.255.255 - IP:10.0.0.77/255.255.255.255 - IP:10.0.0.78/255.255.255.255 - IP:10.0.0.79/255.255.255.255 - IP:10.0.0.80/255.255.255.255 - IP:10.0.0.81/255.255.255.255 - IP:10.0.0.82/255.255.255.255 - IP:10.0.0.83/255.255.255.255 - IP:10.0.0.84/255.255.255.255 - IP:10.0.0.85/255.255.255.255 - IP:10.0.0.86/255.255.255.255 - IP:10.0.0.87/255.255.255.255 - IP:10.0.0.88/255.255.255.255 - IP:10.0.0.89/255.255.255.255 - IP:10.0.0.90/255.255.255.255 - IP:10.0.0.91/255.255.255.255 - IP:10.0.0.92/255.255.255.255 - IP:10.0.0.93/255.255.255.255 - IP:10.0.0.94/255.255.255.255 - IP:10.0.0.95/255.255.255.255 - IP:10.0.0.96/255.255.255.255 - IP:10.0.0.97/255.255.255.255 - IP:10.0.0.98/255.255.255.255 - IP:10.0.0.99/255.255.255.255 - IP:10.0.0.100/255.255.255.255 - IP:10.0.0.101/255.255.255.255 - IP:10.0.0.102/255.255.255.255 - IP:10.0.0.103/255.255.255.255 - IP:10.0.0.104/255.255.255.255 - IP:10.0.0.105/255.255.255.255 - IP:10.0.0.106/255.255.255.255 - IP:10.0.0.107/255.255.255.255 - IP:10.0.0.108/255.255.255.255 - IP:10.0.0.109/255.255.255.255 - IP:10.0.0.110/255.255.255.255 - IP:10.0.0.111/255.255.255.255 - IP:10.0.0.112/255.255.255.255 - IP:10.0.0.113/255.255.255.255 - IP:10.0.0.114/255.255.255.255 - IP:10.0.0.115/255.255.255.255 - IP:10.0.0.116/255.255.255.255 - IP:10.0.0.117/255.255.255.255 - IP:10.0.0.118/255.255.255.255 - IP:10.0.0.119/255.255.255.255 - IP:10.0.0.120/255.255.255.255 - IP:10.0.0.121/255.255.255.255 - IP:10.0.0.122/255.255.255.255 - IP:10.0.0.123/255.255.255.255 - IP:10.0.0.124/255.255.255.255 - IP:10.0.0.125/255.255.255.255 - IP:10.0.0.126/255.255.255.255 - IP:10.0.0.127/255.255.255.255 - IP:10.0.0.128/255.255.255.255 - IP:10.0.0.129/255.255.255.255 - IP:10.0.0.130/255.255.255.255 - IP:10.0.0.131/255.255.255.255 - IP:10.0.0.132/255.255.255.255 - IP:10.0.0.133/255.255.255.255 - IP:10.0.0.134/255.255.255.255 - IP:10.0.0.135/255.255.255.255 - IP:10.0.0.136/255.255.255.255 - IP:10.0.0.137/255.255.255.255 - IP:10.0.0.138/255.255.255.255 - IP:10.0.0.139/255.255.255.255 - IP:10.0.0.140/255.255.255.255 - IP:10.0.0.141/255.255.255.255 - IP:10.0.0.142/255.255.255.255 - IP:10.0.0.143/255.255.255.255 - IP:10.0.0.144/255.255.255.255 - IP:10.0.0.145/255.255.255.255 - IP:10.0.0.146/255.255.255.255 - IP:10.0.0.147/255.255.255.255 - IP:10.0.0.148/255.255.255.255 - IP:10.0.0.149/255.255.255.255 - IP:10.0.0.150/255.255.255.255 - IP:10.0.0.151/255.255.255.255 - IP:10.0.0.152/255.255.255.255 - IP:10.0.0.153/255.255.255.255 - IP:10.0.0.154/255.255.255.255 - IP:10.0.0.155/255.255.255.255 - IP:10.0.0.156/255.255.255.255 - IP:10.0.0.157/255.255.255.255 - IP:10.0.0.158/255.255.255.255 - IP:10.0.0.159/255.255.255.255 - IP:10.0.0.160/255.255.255.255 - IP:10.0.0.161/255.255.255.255 - IP:10.0.0.162/255.255.255.255 - IP:10.0.0.163/255.255.255.255 - IP:10.0.0.164/255.255.255.255 - IP:10.0.0.165/255.255.255.255 - IP:10.0.0.166/255.255.255.255 - IP:10.0.0.167/255.255.255.255 - IP:10.0.0.168/255.255.255.255 - IP:10.0.0.169/255.255.255.255 - IP:10.0.0.170/255.255.255.255 - IP:10.0.0.171/255.255.255.255 - IP:10.0.0.172/255.255.255.255 - IP:10.0.0.173/255.255.255.255 - IP:10.0.0.174/255.255.255.255 - IP:10.0.0.175/255.255.255.255 - IP:10.0.0.176/255.255.255.255 - IP:10.0.0.177/255.255.255.255 - IP:10.0.0.178/255.255.255.255 - IP:10.0.0.179/255.255.255.255 - IP:10.0.0.180/255.255.255.255 - IP:10.0.0.181/255.255.255.255 - IP:10.0.0.182/255.255.255.255 - IP:10.0.0.183/255.255.255.255 - IP:10.0.0.184/255.255.255.255 - IP:10.0.0.185/255.255.255.255 - IP:10.0.0.186/255.255.255.255 - IP:10.0.0.187/255.255.255.255 - IP:10.0.0.188/255.255.255.255 - IP:10.0.0.189/255.255.255.255 - IP:10.0.0.190/255.255.255.255 - IP:10.0.0.191/255.255.255.255 - IP:10.0.0.192/255.255.255.255 - IP:10.0.0.193/255.255.255.255 - IP:10.0.0.194/255.255.255.255 - IP:10.0.0.195/255.255.255.255 - IP:10.0.0.196/255.255.255.255 - IP:10.0.0.197/255.255.255.255 - IP:10.0.0.198/255.255.255.255 - IP:10.0.0.199/255.255.255.255 - IP:10.0.0.200/255.255.255.255 - IP:10.0.0.201/255.255.255.255 - IP:10.0.0.202/255.255.255.255 - IP:10.0.0.203/255.255.255.255 - IP:10.0.0.204/255.255.255.255 - IP:10.0.0.205/255.255.255.255 - IP:10.0.0.206/255.255.255.255 - IP:10.0.0.207/255.255.255.255 - IP:10.0.0.208/255.255.255.255 - IP:10.0.0.209/255.255.255.255 - IP:10.0.0.210/255.255.255.255 - IP:10.0.0.211/255.255.255.255 - IP:10.0.0.212/255.255.255.255 - IP:10.0.0.213/255.255.255.255 - IP:10.0.0.214/255.255.255.255 - IP:10.0.0.215/255.255.255.255 - IP:10.0.0.216/255.255.255.255 - IP:10.0.0.217/255.255.255.255 - IP:10.0.0.218/255.255.255.255 - IP:10.0.0.219/255.255.255.255 - IP:10.0.0.220/255.255.255.255 - IP:10.0.0.221/255.255.255.255 - IP:10.0.0.222/255.255.255.255 - IP:10.0.0.223/255.255.255.255 - IP:10.0.0.224/255.255.255.255 - IP:10.0.0.225/255.255.255.255 - IP:10.0.0.226/255.255.255.255 - IP:10.0.0.227/255.255.255.255 - IP:10.0.0.228/255.255.255.255 - IP:10.0.0.229/255.255.255.255 - IP:10.0.0.230/255.255.255.255 - IP:10.0.0.231/255.255.255.255 - IP:10.0.0.232/255.255.255.255 - IP:10.0.0.233/255.255.255.255 - IP:10.0.0.234/255.255.255.255 - IP:10.0.0.235/255.255.255.255 - IP:10.0.0.236/255.255.255.255 - IP:10.0.0.237/255.255.255.255 - IP:10.0.0.238/255.255.255.255 - IP:10.0.0.239/255.255.255.255 - IP:10.0.0.240/255.255.255.255 - IP:10.0.0.241/255.255.255.255 - IP:10.0.0.242/255.255.255.255 - IP:10.0.0.243/255.255.255.255 - IP:10.0.0.244/255.255.255.255 - IP:10.0.0.245/255.255.255.255 - IP:10.0.0.246/255.255.255.255 - IP:10.0.0.247/255.255.255.255 - IP:10.0.0.248/255.255.255.255 - IP:10.0.0.249/255.255.255.255 - IP:10.0.0.250/255.255.255.255 - IP:10.0.0.251/255.255.255.255 - IP:10.0.0.252/255.255.255.255 - IP:10.0.0.253/255.255.255.255 - IP:10.0.0.254/255.255.255.255 - IP:10.0.0.255/255.255.255.255 - IP:10.0.1.0/255.255.255.255 - IP:10.0.1.1/255.255.255.255 - IP:10.0.1.2/255.255.255.255 - IP:10.0.1.3/255.255.255.255 - IP:10.0.1.4/255.255.255.255 - IP:10.0.1.5/255.255.255.255 - IP:10.0.1.6/255.255.255.255 - IP:10.0.1.7/255.255.255.255 - IP:10.0.1.8/255.255.255.255 - IP:10.0.1.9/255.255.255.255 - IP:10.0.1.10/255.255.255.255 - IP:10.0.1.11/255.255.255.255 - IP:10.0.1.12/255.255.255.255 - IP:10.0.1.13/255.255.255.255 - IP:10.0.1.14/255.255.255.255 - IP:10.0.1.15/255.255.255.255 - IP:10.0.1.16/255.255.255.255 - IP:10.0.1.17/255.255.255.255 - IP:10.0.1.18/255.255.255.255 - IP:10.0.1.19/255.255.255.255 - IP:10.0.1.20/255.255.255.255 - IP:10.0.1.21/255.255.255.255 - IP:10.0.1.22/255.255.255.255 - IP:10.0.1.23/255.255.255.255 - IP:10.0.1.24/255.255.255.255 - IP:10.0.1.25/255.255.255.255 - IP:10.0.1.26/255.255.255.255 - IP:10.0.1.27/255.255.255.255 - IP:10.0.1.28/255.255.255.255 - IP:10.0.1.29/255.255.255.255 - IP:10.0.1.30/255.255.255.255 - IP:10.0.1.31/255.255.255.255 - IP:10.0.1.32/255.255.255.255 - IP:10.0.1.33/255.255.255.255 - IP:10.0.1.34/255.255.255.255 - IP:10.0.1.35/255.255.255.255 - IP:10.0.1.36/255.255.255.255 - IP:10.0.1.37/255.255.255.255 - IP:10.0.1.38/255.255.255.255 - IP:10.0.1.39/255.255.255.255 - IP:10.0.1.40/255.255.255.255 - IP:10.0.1.41/255.255.255.255 - IP:10.0.1.42/255.255.255.255 - IP:10.0.1.43/255.255.255.255 - IP:10.0.1.44/255.255.255.255 - IP:10.0.1.45/255.255.255.255 - IP:10.0.1.46/255.255.255.255 - IP:10.0.1.47/255.255.255.255 - IP:10.0.1.48/255.255.255.255 - IP:10.0.1.49/255.255.255.255 - IP:10.0.1.50/255.255.255.255 - IP:10.0.1.51/255.255.255.255 - IP:10.0.1.52/255.255.255.255 - IP:10.0.1.53/255.255.255.255 - IP:10.0.1.54/255.255.255.255 - IP:10.0.1.55/255.255.255.255 - IP:10.0.1.56/255.255.255.255 - IP:10.0.1.57/255.255.255.255 - IP:10.0.1.58/255.255.255.255 - IP:10.0.1.59/255.255.255.255 - IP:10.0.1.60/255.255.255.255 - IP:10.0.1.61/255.255.255.255 - IP:10.0.1.62/255.255.255.255 - IP:10.0.1.63/255.255.255.255 - IP:10.0.1.64/255.255.255.255 - IP:10.0.1.65/255.255.255.255 - IP:10.0.1.66/255.255.255.255 - IP:10.0.1.67/255.255.255.255 - IP:10.0.1.68/255.255.255.255 - IP:10.0.1.69/255.255.255.255 - IP:10.0.1.70/255.255.255.255 - IP:10.0.1.71/255.255.255.255 - IP:10.0.1.72/255.255.255.255 - IP:10.0.1.73/255.255.255.255 - IP:10.0.1.74/255.255.255.255 - IP:10.0.1.75/255.255.255.255 - IP:10.0.1.76/255.255.255.255 - IP:10.0.1.77/255.255.255.255 - IP:10.0.1.78/255.255.255.255 - IP:10.0.1.79/255.255.255.255 - IP:10.0.1.80/255.255.255.255 - IP:10.0.1.81/255.255.255.255 - IP:10.0.1.82/255.255.255.255 - IP:10.0.1.83/255.255.255.255 - IP:10.0.1.84/255.255.255.255 - IP:10.0.1.85/255.255.255.255 - IP:10.0.1.86/255.255.255.255 - IP:10.0.1.87/255.255.255.255 - IP:10.0.1.88/255.255.255.255 - IP:10.0.1.89/255.255.255.255 - IP:10.0.1.90/255.255.255.255 - IP:10.0.1.91/255.255.255.255 - IP:10.0.1.92/255.255.255.255 - IP:10.0.1.93/255.255.255.255 - IP:10.0.1.94/255.255.255.255 - IP:10.0.1.95/255.255.255.255 - IP:10.0.1.96/255.255.255.255 - IP:10.0.1.97/255.255.255.255 - IP:10.0.1.98/255.255.255.255 - IP:10.0.1.99/255.255.255.255 - IP:10.0.1.100/255.255.255.255 - IP:10.0.1.101/255.255.255.255 - IP:10.0.1.102/255.255.255.255 - IP:10.0.1.103/255.255.255.255 - IP:10.0.1.104/255.255.255.255 - IP:10.0.1.105/255.255.255.255 - IP:10.0.1.106/255.255.255.255 - IP:10.0.1.107/255.255.255.255 - IP:10.0.1.108/255.255.255.255 - IP:10.0.1.109/255.255.255.255 - IP:10.0.1.110/255.255.255.255 - IP:10.0.1.111/255.255.255.255 - IP:10.0.1.112/255.255.255.255 - IP:10.0.1.113/255.255.255.255 - IP:10.0.1.114/255.255.255.255 - IP:10.0.1.115/255.255.255.255 - IP:10.0.1.116/255.255.255.255 - IP:10.0.1.117/255.255.255.255 - IP:10.0.1.118/255.255.255.255 - IP:10.0.1.119/255.255.255.255 - IP:10.0.1.120/255.255.255.255 - IP:10.0.1.121/255.255.255.255 - IP:10.0.1.122/255.255.255.255 - IP:10.0.1.123/255.255.255.255 - IP:10.0.1.124/255.255.255.255 - IP:10.0.1.125/255.255.255.255 - IP:10.0.1.126/255.255.255.255 - IP:10.0.1.127/255.255.255.255 - IP:10.0.1.128/255.255.255.255 - IP:10.0.1.129/255.255.255.255 - IP:10.0.1.130/255.255.255.255 - IP:10.0.1.131/255.255.255.255 - IP:10.0.1.132/255.255.255.255 - IP:10.0.1.133/255.255.255.255 - IP:10.0.1.134/255.255.255.255 - IP:10.0.1.135/255.255.255.255 - IP:10.0.1.136/255.255.255.255 - IP:10.0.1.137/255.255.255.255 - IP:10.0.1.138/255.255.255.255 - IP:10.0.1.139/255.255.255.255 - IP:10.0.1.140/255.255.255.255 - IP:10.0.1.141/255.255.255.255 - IP:10.0.1.142/255.255.255.255 - IP:10.0.1.143/255.255.255.255 - IP:10.0.1.144/255.255.255.255 - IP:10.0.1.145/255.255.255.255 - IP:10.0.1.146/255.255.255.255 - IP:10.0.1.147/255.255.255.255 - IP:10.0.1.148/255.255.255.255 - IP:10.0.1.149/255.255.255.255 - IP:10.0.1.150/255.255.255.255 - IP:10.0.1.151/255.255.255.255 - IP:10.0.1.152/255.255.255.255 - IP:10.0.1.153/255.255.255.255 - IP:10.0.1.154/255.255.255.255 - IP:10.0.1.155/255.255.255.255 - IP:10.0.1.156/255.255.255.255 - IP:10.0.1.157/255.255.255.255 - IP:10.0.1.158/255.255.255.255 - IP:10.0.1.159/255.255.255.255 - IP:10.0.1.160/255.255.255.255 - IP:10.0.1.161/255.255.255.255 - IP:10.0.1.162/255.255.255.255 - IP:10.0.1.163/255.255.255.255 - IP:10.0.1.164/255.255.255.255 - IP:10.0.1.165/255.255.255.255 - IP:10.0.1.166/255.255.255.255 - IP:10.0.1.167/255.255.255.255 - IP:10.0.1.168/255.255.255.255 - IP:10.0.1.169/255.255.255.255 - IP:10.0.1.170/255.255.255.255 - IP:10.0.1.171/255.255.255.255 - IP:10.0.1.172/255.255.255.255 - IP:10.0.1.173/255.255.255.255 - IP:10.0.1.174/255.255.255.255 - IP:10.0.1.175/255.255.255.255 - IP:10.0.1.176/255.255.255.255 - IP:10.0.1.177/255.255.255.255 - IP:10.0.1.178/255.255.255.255 - IP:10.0.1.179/255.255.255.255 - IP:10.0.1.180/255.255.255.255 - IP:10.0.1.181/255.255.255.255 - IP:10.0.1.182/255.255.255.255 - IP:10.0.1.183/255.255.255.255 - IP:10.0.1.184/255.255.255.255 - IP:10.0.1.185/255.255.255.255 - IP:10.0.1.186/255.255.255.255 - IP:10.0.1.187/255.255.255.255 - IP:10.0.1.188/255.255.255.255 - IP:10.0.1.189/255.255.255.255 - IP:10.0.1.190/255.255.255.255 - IP:10.0.1.191/255.255.255.255 - IP:10.0.1.192/255.255.255.255 - IP:10.0.1.193/255.255.255.255 - IP:10.0.1.194/255.255.255.255 - IP:10.0.1.195/255.255.255.255 - IP:10.0.1.196/255.255.255.255 - IP:10.0.1.197/255.255.255.255 - IP:10.0.1.198/255.255.255.255 - IP:10.0.1.199/255.255.255.255 - IP:10.0.1.200/255.255.255.255 - IP:10.0.1.201/255.255.255.255 - IP:10.0.1.202/255.255.255.255 - IP:10.0.1.203/255.255.255.255 - IP:10.0.1.204/255.255.255.255 - IP:10.0.1.205/255.255.255.255 - IP:10.0.1.206/255.255.255.255 - IP:10.0.1.207/255.255.255.255 - IP:10.0.1.208/255.255.255.255 - IP:10.0.1.209/255.255.255.255 - IP:10.0.1.210/255.255.255.255 - IP:10.0.1.211/255.255.255.255 - IP:10.0.1.212/255.255.255.255 - IP:10.0.1.213/255.255.255.255 - IP:10.0.1.214/255.255.255.255 - IP:10.0.1.215/255.255.255.255 - IP:10.0.1.216/255.255.255.255 - IP:10.0.1.217/255.255.255.255 - IP:10.0.1.218/255.255.255.255 - IP:10.0.1.219/255.255.255.255 - IP:10.0.1.220/255.255.255.255 - IP:10.0.1.221/255.255.255.255 - IP:10.0.1.222/255.255.255.255 - IP:10.0.1.223/255.255.255.255 - IP:10.0.1.224/255.255.255.255 - IP:10.0.1.225/255.255.255.255 - IP:10.0.1.226/255.255.255.255 - IP:10.0.1.227/255.255.255.255 - IP:10.0.1.228/255.255.255.255 - IP:10.0.1.229/255.255.255.255 - IP:10.0.1.230/255.255.255.255 - IP:10.0.1.231/255.255.255.255 - IP:10.0.1.232/255.255.255.255 - IP:10.0.1.233/255.255.255.255 - IP:10.0.1.234/255.255.255.255 - IP:10.0.1.235/255.255.255.255 - IP:10.0.1.236/255.255.255.255 - IP:10.0.1.237/255.255.255.255 - IP:10.0.1.238/255.255.255.255 - IP:10.0.1.239/255.255.255.255 - IP:10.0.1.240/255.255.255.255 - IP:10.0.1.241/255.255.255.255 - IP:10.0.1.242/255.255.255.255 - IP:10.0.1.243/255.255.255.255 - IP:10.0.1.244/255.255.255.255 - IP:10.0.1.245/255.255.255.255 - IP:10.0.1.246/255.255.255.255 - IP:10.0.1.247/255.255.255.255 - IP:10.0.1.248/255.255.255.255 - IP:10.0.1.249/255.255.255.255 - IP:10.0.1.250/255.255.255.255 - IP:10.0.1.251/255.255.255.255 - IP:10.0.1.252/255.255.255.255 - IP:10.0.1.253/255.255.255.255 - IP:10.0.1.254/255.255.255.255 - IP:10.0.1.255/255.255.255.255 - IP:10.0.2.0/255.255.255.255 - IP:10.0.2.1/255.255.255.255 - IP:10.0.2.2/255.255.255.255 - IP:10.0.2.3/255.255.255.255 - IP:10.0.2.4/255.255.255.255 - IP:10.0.2.5/255.255.255.255 - IP:10.0.2.6/255.255.255.255 - IP:10.0.2.7/255.255.255.255 - IP:10.0.2.8/255.255.255.255 - IP:10.0.2.9/255.255.255.255 - IP:10.0.2.10/255.255.255.255 - IP:10.0.2.11/255.255.255.255 - IP:10.0.2.12/255.255.255.255 - IP:10.0.2.13/255.255.255.255 - IP:10.0.2.14/255.255.255.255 - IP:10.0.2.15/255.255.255.255 - IP:10.0.2.16/255.255.255.255 - IP:10.0.2.17/255.255.255.255 - IP:10.0.2.18/255.255.255.255 - IP:10.0.2.19/255.255.255.255 - IP:10.0.2.20/255.255.255.255 - IP:10.0.2.21/255.255.255.255 - IP:10.0.2.22/255.255.255.255 - IP:10.0.2.23/255.255.255.255 - IP:10.0.2.24/255.255.255.255 - IP:10.0.2.25/255.255.255.255 - IP:10.0.2.26/255.255.255.255 - IP:10.0.2.27/255.255.255.255 - IP:10.0.2.28/255.255.255.255 - IP:10.0.2.29/255.255.255.255 - IP:10.0.2.30/255.255.255.255 - IP:10.0.2.31/255.255.255.255 - IP:10.0.2.32/255.255.255.255 - IP:10.0.2.33/255.255.255.255 - IP:10.0.2.34/255.255.255.255 - IP:10.0.2.35/255.255.255.255 - IP:10.0.2.36/255.255.255.255 - IP:10.0.2.37/255.255.255.255 - IP:10.0.2.38/255.255.255.255 - IP:10.0.2.39/255.255.255.255 - IP:10.0.2.40/255.255.255.255 - IP:10.0.2.41/255.255.255.255 - IP:10.0.2.42/255.255.255.255 - IP:10.0.2.43/255.255.255.255 - IP:10.0.2.44/255.255.255.255 - IP:10.0.2.45/255.255.255.255 - IP:10.0.2.46/255.255.255.255 - IP:10.0.2.47/255.255.255.255 - IP:10.0.2.48/255.255.255.255 - IP:10.0.2.49/255.255.255.255 - IP:10.0.2.50/255.255.255.255 - IP:10.0.2.51/255.255.255.255 - IP:10.0.2.52/255.255.255.255 - IP:10.0.2.53/255.255.255.255 - IP:10.0.2.54/255.255.255.255 - IP:10.0.2.55/255.255.255.255 - IP:10.0.2.56/255.255.255.255 - IP:10.0.2.57/255.255.255.255 - IP:10.0.2.58/255.255.255.255 - IP:10.0.2.59/255.255.255.255 - IP:10.0.2.60/255.255.255.255 - IP:10.0.2.61/255.255.255.255 - IP:10.0.2.62/255.255.255.255 - IP:10.0.2.63/255.255.255.255 - IP:10.0.2.64/255.255.255.255 - IP:10.0.2.65/255.255.255.255 - IP:10.0.2.66/255.255.255.255 - IP:10.0.2.67/255.255.255.255 - IP:10.0.2.68/255.255.255.255 - IP:10.0.2.69/255.255.255.255 - IP:10.0.2.70/255.255.255.255 - IP:10.0.2.71/255.255.255.255 - IP:10.0.2.72/255.255.255.255 - IP:10.0.2.73/255.255.255.255 - IP:10.0.2.74/255.255.255.255 - IP:10.0.2.75/255.255.255.255 - IP:10.0.2.76/255.255.255.255 - IP:10.0.2.77/255.255.255.255 - IP:10.0.2.78/255.255.255.255 - IP:10.0.2.79/255.255.255.255 - IP:10.0.2.80/255.255.255.255 - IP:10.0.2.81/255.255.255.255 - IP:10.0.2.82/255.255.255.255 - IP:10.0.2.83/255.255.255.255 - IP:10.0.2.84/255.255.255.255 - IP:10.0.2.85/255.255.255.255 - IP:10.0.2.86/255.255.255.255 - IP:10.0.2.87/255.255.255.255 - IP:10.0.2.88/255.255.255.255 - IP:10.0.2.89/255.255.255.255 - IP:10.0.2.90/255.255.255.255 - IP:10.0.2.91/255.255.255.255 - IP:10.0.2.92/255.255.255.255 - IP:10.0.2.93/255.255.255.255 - IP:10.0.2.94/255.255.255.255 - IP:10.0.2.95/255.255.255.255 - IP:10.0.2.96/255.255.255.255 - IP:10.0.2.97/255.255.255.255 - IP:10.0.2.98/255.255.255.255 - IP:10.0.2.99/255.255.255.255 - IP:10.0.2.100/255.255.255.255 - IP:10.0.2.101/255.255.255.255 - IP:10.0.2.102/255.255.255.255 - IP:10.0.2.103/255.255.255.255 - IP:10.0.2.104/255.255.255.255 - IP:10.0.2.105/255.255.255.255 - IP:10.0.2.106/255.255.255.255 - IP:10.0.2.107/255.255.255.255 - IP:10.0.2.108/255.255.255.255 - IP:10.0.2.109/255.255.255.255 - IP:10.0.2.110/255.255.255.255 - IP:10.0.2.111/255.255.255.255 - IP:10.0.2.112/255.255.255.255 - IP:10.0.2.113/255.255.255.255 - IP:10.0.2.114/255.255.255.255 - IP:10.0.2.115/255.255.255.255 - IP:10.0.2.116/255.255.255.255 - IP:10.0.2.117/255.255.255.255 - IP:10.0.2.118/255.255.255.255 - IP:10.0.2.119/255.255.255.255 - IP:10.0.2.120/255.255.255.255 - IP:10.0.2.121/255.255.255.255 - IP:10.0.2.122/255.255.255.255 - IP:10.0.2.123/255.255.255.255 - IP:10.0.2.124/255.255.255.255 - IP:10.0.2.125/255.255.255.255 - IP:10.0.2.126/255.255.255.255 - IP:10.0.2.127/255.255.255.255 - IP:10.0.2.128/255.255.255.255 - IP:10.0.2.129/255.255.255.255 - IP:10.0.2.130/255.255.255.255 - IP:10.0.2.131/255.255.255.255 - IP:10.0.2.132/255.255.255.255 - IP:10.0.2.133/255.255.255.255 - IP:10.0.2.134/255.255.255.255 - IP:10.0.2.135/255.255.255.255 - IP:10.0.2.136/255.255.255.255 - IP:10.0.2.137/255.255.255.255 - IP:10.0.2.138/255.255.255.255 - IP:10.0.2.139/255.255.255.255 - IP:10.0.2.140/255.255.255.255 - IP:10.0.2.141/255.255.255.255 - IP:10.0.2.142/255.255.255.255 - IP:10.0.2.143/255.255.255.255 - IP:10.0.2.144/255.255.255.255 - IP:10.0.2.145/255.255.255.255 - IP:10.0.2.146/255.255.255.255 - IP:10.0.2.147/255.255.255.255 - IP:10.0.2.148/255.255.255.255 - IP:10.0.2.149/255.255.255.255 - IP:10.0.2.150/255.255.255.255 - IP:10.0.2.151/255.255.255.255 - IP:10.0.2.152/255.255.255.255 - IP:10.0.2.153/255.255.255.255 - IP:10.0.2.154/255.255.255.255 - IP:10.0.2.155/255.255.255.255 - IP:10.0.2.156/255.255.255.255 - IP:10.0.2.157/255.255.255.255 - IP:10.0.2.158/255.255.255.255 - IP:10.0.2.159/255.255.255.255 - IP:10.0.2.160/255.255.255.255 - IP:10.0.2.161/255.255.255.255 - IP:10.0.2.162/255.255.255.255 - IP:10.0.2.163/255.255.255.255 - IP:10.0.2.164/255.255.255.255 - IP:10.0.2.165/255.255.255.255 - IP:10.0.2.166/255.255.255.255 - IP:10.0.2.167/255.255.255.255 - IP:10.0.2.168/255.255.255.255 - IP:10.0.2.169/255.255.255.255 - IP:10.0.2.170/255.255.255.255 - IP:10.0.2.171/255.255.255.255 - IP:10.0.2.172/255.255.255.255 - IP:10.0.2.173/255.255.255.255 - IP:10.0.2.174/255.255.255.255 - IP:10.0.2.175/255.255.255.255 - IP:10.0.2.176/255.255.255.255 - IP:10.0.2.177/255.255.255.255 - IP:10.0.2.178/255.255.255.255 - IP:10.0.2.179/255.255.255.255 - IP:10.0.2.180/255.255.255.255 - IP:10.0.2.181/255.255.255.255 - IP:10.0.2.182/255.255.255.255 - IP:10.0.2.183/255.255.255.255 - IP:10.0.2.184/255.255.255.255 - IP:10.0.2.185/255.255.255.255 - IP:10.0.2.186/255.255.255.255 - IP:10.0.2.187/255.255.255.255 - IP:10.0.2.188/255.255.255.255 - IP:10.0.2.189/255.255.255.255 - IP:10.0.2.190/255.255.255.255 - IP:10.0.2.191/255.255.255.255 - IP:10.0.2.192/255.255.255.255 - IP:10.0.2.193/255.255.255.255 - IP:10.0.2.194/255.255.255.255 - IP:10.0.2.195/255.255.255.255 - IP:10.0.2.196/255.255.255.255 - IP:10.0.2.197/255.255.255.255 - IP:10.0.2.198/255.255.255.255 - IP:10.0.2.199/255.255.255.255 - IP:10.0.2.200/255.255.255.255 - IP:10.0.2.201/255.255.255.255 - IP:10.0.2.202/255.255.255.255 - IP:10.0.2.203/255.255.255.255 - IP:10.0.2.204/255.255.255.255 - IP:10.0.2.205/255.255.255.255 - IP:10.0.2.206/255.255.255.255 - IP:10.0.2.207/255.255.255.255 - IP:10.0.2.208/255.255.255.255 - IP:10.0.2.209/255.255.255.255 - IP:10.0.2.210/255.255.255.255 - IP:10.0.2.211/255.255.255.255 - IP:10.0.2.212/255.255.255.255 - IP:10.0.2.213/255.255.255.255 - IP:10.0.2.214/255.255.255.255 - IP:10.0.2.215/255.255.255.255 - IP:10.0.2.216/255.255.255.255 - IP:10.0.2.217/255.255.255.255 - IP:10.0.2.218/255.255.255.255 - IP:10.0.2.219/255.255.255.255 - IP:10.0.2.220/255.255.255.255 - IP:10.0.2.221/255.255.255.255 - IP:10.0.2.222/255.255.255.255 - IP:10.0.2.223/255.255.255.255 - IP:10.0.2.224/255.255.255.255 - IP:10.0.2.225/255.255.255.255 - IP:10.0.2.226/255.255.255.255 - IP:10.0.2.227/255.255.255.255 - IP:10.0.2.228/255.255.255.255 - IP:10.0.2.229/255.255.255.255 - IP:10.0.2.230/255.255.255.255 - IP:10.0.2.231/255.255.255.255 - IP:10.0.2.232/255.255.255.255 - IP:10.0.2.233/255.255.255.255 - IP:10.0.2.234/255.255.255.255 - IP:10.0.2.235/255.255.255.255 - IP:10.0.2.236/255.255.255.255 - IP:10.0.2.237/255.255.255.255 - IP:10.0.2.238/255.255.255.255 - IP:10.0.2.239/255.255.255.255 - IP:10.0.2.240/255.255.255.255 - IP:10.0.2.241/255.255.255.255 - IP:10.0.2.242/255.255.255.255 - IP:10.0.2.243/255.255.255.255 - IP:10.0.2.244/255.255.255.255 - IP:10.0.2.245/255.255.255.255 - IP:10.0.2.246/255.255.255.255 - IP:10.0.2.247/255.255.255.255 - IP:10.0.2.248/255.255.255.255 - IP:10.0.2.249/255.255.255.255 - IP:10.0.2.250/255.255.255.255 - IP:10.0.2.251/255.255.255.255 - IP:10.0.2.252/255.255.255.255 - IP:10.0.2.253/255.255.255.255 - IP:10.0.2.254/255.255.255.255 - IP:10.0.2.255/255.255.255.255 - IP:10.0.3.0/255.255.255.255 - IP:10.0.3.1/255.255.255.255 - IP:10.0.3.2/255.255.255.255 - IP:10.0.3.3/255.255.255.255 - IP:10.0.3.4/255.255.255.255 - IP:10.0.3.5/255.255.255.255 - IP:10.0.3.6/255.255.255.255 - IP:10.0.3.7/255.255.255.255 - IP:10.0.3.8/255.255.255.255 - IP:10.0.3.9/255.255.255.255 - IP:10.0.3.10/255.255.255.255 - IP:10.0.3.11/255.255.255.255 - IP:10.0.3.12/255.255.255.255 - IP:10.0.3.13/255.255.255.255 - IP:10.0.3.14/255.255.255.255 - IP:10.0.3.15/255.255.255.255 - IP:10.0.3.16/255.255.255.255 - IP:10.0.3.17/255.255.255.255 - IP:10.0.3.18/255.255.255.255 - IP:10.0.3.19/255.255.255.255 - IP:10.0.3.20/255.255.255.255 - IP:10.0.3.21/255.255.255.255 - IP:10.0.3.22/255.255.255.255 - IP:10.0.3.23/255.255.255.255 - IP:10.0.3.24/255.255.255.255 - IP:10.0.3.25/255.255.255.255 - IP:10.0.3.26/255.255.255.255 - IP:10.0.3.27/255.255.255.255 - IP:10.0.3.28/255.255.255.255 - IP:10.0.3.29/255.255.255.255 - IP:10.0.3.30/255.255.255.255 - IP:10.0.3.31/255.255.255.255 - IP:10.0.3.32/255.255.255.255 - IP:10.0.3.33/255.255.255.255 - IP:10.0.3.34/255.255.255.255 - IP:10.0.3.35/255.255.255.255 - IP:10.0.3.36/255.255.255.255 - IP:10.0.3.37/255.255.255.255 - IP:10.0.3.38/255.255.255.255 - IP:10.0.3.39/255.255.255.255 - IP:10.0.3.40/255.255.255.255 - IP:10.0.3.41/255.255.255.255 - IP:10.0.3.42/255.255.255.255 - IP:10.0.3.43/255.255.255.255 - IP:10.0.3.44/255.255.255.255 - IP:10.0.3.45/255.255.255.255 - IP:10.0.3.46/255.255.255.255 - IP:10.0.3.47/255.255.255.255 - IP:10.0.3.48/255.255.255.255 - IP:10.0.3.49/255.255.255.255 - IP:10.0.3.50/255.255.255.255 - IP:10.0.3.51/255.255.255.255 - IP:10.0.3.52/255.255.255.255 - IP:10.0.3.53/255.255.255.255 - IP:10.0.3.54/255.255.255.255 - IP:10.0.3.55/255.255.255.255 - IP:10.0.3.56/255.255.255.255 - IP:10.0.3.57/255.255.255.255 - IP:10.0.3.58/255.255.255.255 - IP:10.0.3.59/255.255.255.255 - IP:10.0.3.60/255.255.255.255 - IP:10.0.3.61/255.255.255.255 - IP:10.0.3.62/255.255.255.255 - IP:10.0.3.63/255.255.255.255 - IP:10.0.3.64/255.255.255.255 - IP:10.0.3.65/255.255.255.255 - IP:10.0.3.66/255.255.255.255 - IP:10.0.3.67/255.255.255.255 - IP:10.0.3.68/255.255.255.255 - IP:10.0.3.69/255.255.255.255 - IP:10.0.3.70/255.255.255.255 - IP:10.0.3.71/255.255.255.255 - IP:10.0.3.72/255.255.255.255 - IP:10.0.3.73/255.255.255.255 - IP:10.0.3.74/255.255.255.255 - IP:10.0.3.75/255.255.255.255 - IP:10.0.3.76/255.255.255.255 - IP:10.0.3.77/255.255.255.255 - IP:10.0.3.78/255.255.255.255 - IP:10.0.3.79/255.255.255.255 - IP:10.0.3.80/255.255.255.255 - IP:10.0.3.81/255.255.255.255 - IP:10.0.3.82/255.255.255.255 - IP:10.0.3.83/255.255.255.255 - IP:10.0.3.84/255.255.255.255 - IP:10.0.3.85/255.255.255.255 - IP:10.0.3.86/255.255.255.255 - IP:10.0.3.87/255.255.255.255 - IP:10.0.3.88/255.255.255.255 - IP:10.0.3.89/255.255.255.255 - IP:10.0.3.90/255.255.255.255 - IP:10.0.3.91/255.255.255.255 - IP:10.0.3.92/255.255.255.255 - IP:10.0.3.93/255.255.255.255 - IP:10.0.3.94/255.255.255.255 - IP:10.0.3.95/255.255.255.255 - IP:10.0.3.96/255.255.255.255 - IP:10.0.3.97/255.255.255.255 - IP:10.0.3.98/255.255.255.255 - IP:10.0.3.99/255.255.255.255 - IP:10.0.3.100/255.255.255.255 - IP:10.0.3.101/255.255.255.255 - IP:10.0.3.102/255.255.255.255 - IP:10.0.3.103/255.255.255.255 - IP:10.0.3.104/255.255.255.255 - IP:10.0.3.105/255.255.255.255 - IP:10.0.3.106/255.255.255.255 - IP:10.0.3.107/255.255.255.255 - IP:10.0.3.108/255.255.255.255 - IP:10.0.3.109/255.255.255.255 - IP:10.0.3.110/255.255.255.255 - IP:10.0.3.111/255.255.255.255 - IP:10.0.3.112/255.255.255.255 - IP:10.0.3.113/255.255.255.255 - IP:10.0.3.114/255.255.255.255 - IP:10.0.3.115/255.255.255.255 - IP:10.0.3.116/255.255.255.255 - IP:10.0.3.117/255.255.255.255 - IP:10.0.3.118/255.255.255.255 - IP:10.0.3.119/255.255.255.255 - IP:10.0.3.120/255.255.255.255 - IP:10.0.3.121/255.255.255.255 - IP:10.0.3.122/255.255.255.255 - IP:10.0.3.123/255.255.255.255 - IP:10.0.3.124/255.255.255.255 - IP:10.0.3.125/255.255.255.255 - IP:10.0.3.126/255.255.255.255 - IP:10.0.3.127/255.255.255.255 - IP:10.0.3.128/255.255.255.255 - IP:10.0.3.129/255.255.255.255 - IP:10.0.3.130/255.255.255.255 - IP:10.0.3.131/255.255.255.255 - IP:10.0.3.132/255.255.255.255 - IP:10.0.3.133/255.255.255.255 - IP:10.0.3.134/255.255.255.255 - IP:10.0.3.135/255.255.255.255 - IP:10.0.3.136/255.255.255.255 - IP:10.0.3.137/255.255.255.255 - IP:10.0.3.138/255.255.255.255 - IP:10.0.3.139/255.255.255.255 - IP:10.0.3.140/255.255.255.255 - IP:10.0.3.141/255.255.255.255 - IP:10.0.3.142/255.255.255.255 - IP:10.0.3.143/255.255.255.255 - IP:10.0.3.144/255.255.255.255 - IP:10.0.3.145/255.255.255.255 - IP:10.0.3.146/255.255.255.255 - IP:10.0.3.147/255.255.255.255 - IP:10.0.3.148/255.255.255.255 - IP:10.0.3.149/255.255.255.255 - IP:10.0.3.150/255.255.255.255 - IP:10.0.3.151/255.255.255.255 - IP:10.0.3.152/255.255.255.255 - IP:10.0.3.153/255.255.255.255 - IP:10.0.3.154/255.255.255.255 - IP:10.0.3.155/255.255.255.255 - IP:10.0.3.156/255.255.255.255 - IP:10.0.3.157/255.255.255.255 - IP:10.0.3.158/255.255.255.255 - IP:10.0.3.159/255.255.255.255 - IP:10.0.3.160/255.255.255.255 - IP:10.0.3.161/255.255.255.255 - IP:10.0.3.162/255.255.255.255 - IP:10.0.3.163/255.255.255.255 - IP:10.0.3.164/255.255.255.255 - IP:10.0.3.165/255.255.255.255 - IP:10.0.3.166/255.255.255.255 - IP:10.0.3.167/255.255.255.255 - IP:10.0.3.168/255.255.255.255 - IP:10.0.3.169/255.255.255.255 - IP:10.0.3.170/255.255.255.255 - IP:10.0.3.171/255.255.255.255 - IP:10.0.3.172/255.255.255.255 - IP:10.0.3.173/255.255.255.255 - IP:10.0.3.174/255.255.255.255 - IP:10.0.3.175/255.255.255.255 - IP:10.0.3.176/255.255.255.255 - IP:10.0.3.177/255.255.255.255 - IP:10.0.3.178/255.255.255.255 - IP:10.0.3.179/255.255.255.255 - IP:10.0.3.180/255.255.255.255 - IP:10.0.3.181/255.255.255.255 - IP:10.0.3.182/255.255.255.255 - IP:10.0.3.183/255.255.255.255 - IP:10.0.3.184/255.255.255.255 - IP:10.0.3.185/255.255.255.255 - IP:10.0.3.186/255.255.255.255 - IP:10.0.3.187/255.255.255.255 - IP:10.0.3.188/255.255.255.255 - IP:10.0.3.189/255.255.255.255 - IP:10.0.3.190/255.255.255.255 - IP:10.0.3.191/255.255.255.255 - IP:10.0.3.192/255.255.255.255 - IP:10.0.3.193/255.255.255.255 - IP:10.0.3.194/255.255.255.255 - IP:10.0.3.195/255.255.255.255 - IP:10.0.3.196/255.255.255.255 - IP:10.0.3.197/255.255.255.255 - IP:10.0.3.198/255.255.255.255 - IP:10.0.3.199/255.255.255.255 - IP:10.0.3.200/255.255.255.255 - IP:10.0.3.201/255.255.255.255 - IP:10.0.3.202/255.255.255.255 - IP:10.0.3.203/255.255.255.255 - IP:10.0.3.204/255.255.255.255 - IP:10.0.3.205/255.255.255.255 - IP:10.0.3.206/255.255.255.255 - IP:10.0.3.207/255.255.255.255 - IP:10.0.3.208/255.255.255.255 - IP:10.0.3.209/255.255.255.255 - IP:10.0.3.210/255.255.255.255 - IP:10.0.3.211/255.255.255.255 - IP:10.0.3.212/255.255.255.255 - IP:10.0.3.213/255.255.255.255 - IP:10.0.3.214/255.255.255.255 - IP:10.0.3.215/255.255.255.255 - IP:10.0.3.216/255.255.255.255 - IP:10.0.3.217/255.255.255.255 - IP:10.0.3.218/255.255.255.255 - IP:10.0.3.219/255.255.255.255 - IP:10.0.3.220/255.255.255.255 - IP:10.0.3.221/255.255.255.255 - IP:10.0.3.222/255.255.255.255 - IP:10.0.3.223/255.255.255.255 - IP:10.0.3.224/255.255.255.255 - IP:10.0.3.225/255.255.255.255 - IP:10.0.3.226/255.255.255.255 - IP:10.0.3.227/255.255.255.255 - IP:10.0.3.228/255.255.255.255 - IP:10.0.3.229/255.255.255.255 - IP:10.0.3.230/255.255.255.255 - IP:10.0.3.231/255.255.255.255 - IP:10.0.3.232/255.255.255.255 - IP:10.0.3.233/255.255.255.255 - IP:10.0.3.234/255.255.255.255 - IP:10.0.3.235/255.255.255.255 - IP:10.0.3.236/255.255.255.255 - IP:10.0.3.237/255.255.255.255 - IP:10.0.3.238/255.255.255.255 - IP:10.0.3.239/255.255.255.255 - IP:10.0.3.240/255.255.255.255 - IP:10.0.3.241/255.255.255.255 - IP:10.0.3.242/255.255.255.255 - IP:10.0.3.243/255.255.255.255 - IP:10.0.3.244/255.255.255.255 - IP:10.0.3.245/255.255.255.255 - IP:10.0.3.246/255.255.255.255 - IP:10.0.3.247/255.255.255.255 - IP:10.0.3.248/255.255.255.255 - IP:10.0.3.249/255.255.255.255 - IP:10.0.3.250/255.255.255.255 - IP:10.0.3.251/255.255.255.255 - IP:10.0.3.252/255.255.255.255 - IP:10.0.3.253/255.255.255.255 - IP:10.0.3.254/255.255.255.255 - IP:10.0.3.255/255.255.255.255 - IP:10.0.4.0/255.255.255.255 - - Signature Algorithm: sha256WithRSAEncryption - 58:a8:fb:63:46:45:e4:1c:02:f9:5f:1a:8f:a3:1d:d4:d0:41: - 9a:13:72:6d:3a:7b:6a:24:dc:70:47:29:f6:c9:73:80:1a:5f: - ee:92:a6:ce:26:94:d0:7b:29:18:07:c8:69:a6:dd:d8:cf:65: - fa:9b:e1:00:a0:7e:ea:a3:a5:92:09:01:95:6d:52:66:12:5f: - c0:49:6b:38:aa:ba:bc:58:ac:c2:03:ee:6f:2d:5f:8e:73:71: - 19:8a:d8:04:4b:00:fd:94:d3:7f:fa:38:6d:21:15:ba:e5:8e: - 7c:5f:2c:5d:58:67:71:f6:37:14:a5:ac:d5:ff:44:ca:b0:2b: - 41:b3:2c:d4:93:25:0a:d2:ff:1d:bb:de:d4:43:fd:05:b7:5f: - 07:3f:b3:04:52:54:83:5d:1f:05:b3:ff:50:47:83:ec:6f:8a: - 92:9a:3b:27:82:05:ea:e2:6f:a2:4a:43:8b:7a:39:a9:6b:da: - 9c:63:39:5d:57:a8:b8:86:84:c9:fe:5b:2a:1e:07:6c:05:18: - d5:40:e7:6d:75:e3:31:1c:d2:1c:e6:3e:46:63:b4:7e:30:d3: - a1:14:77:40:28:6e:d3:3a:fc:e1:80:45:37:7e:5f:ec:5c:66: - bb:6f:4f:82:30:24:53:6c:8f:4a:db:6d:5a:8f:71:63:20:fa: - f9:b6:54:fc ------BEGIN CERTIFICATE----- -MIIzozCCMougAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vwwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCMO0wgjDpMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgjAdBgNVHR4EgjAUMIIwEKCCMAwwCocICgAAAP////8wCocICgAAAf////8w -CocICgAAAv////8wCocICgAAA/////8wCocICgAABP////8wCocICgAABf////8w -CocICgAABv////8wCocICgAAB/////8wCocICgAACP////8wCocICgAACf////8w -CocICgAACv////8wCocICgAAC/////8wCocICgAADP////8wCocICgAADf////8w -CocICgAADv////8wCocICgAAD/////8wCocICgAAEP////8wCocICgAAEf////8w -CocICgAAEv////8wCocICgAAE/////8wCocICgAAFP////8wCocICgAAFf////8w -CocICgAAFv////8wCocICgAAF/////8wCocICgAAGP////8wCocICgAAGf////8w -CocICgAAGv////8wCocICgAAG/////8wCocICgAAHP////8wCocICgAAHf////8w -CocICgAAHv////8wCocICgAAH/////8wCocICgAAIP////8wCocICgAAIf////8w -CocICgAAIv////8wCocICgAAI/////8wCocICgAAJP////8wCocICgAAJf////8w -CocICgAAJv////8wCocICgAAJ/////8wCocICgAAKP////8wCocICgAAKf////8w -CocICgAAKv////8wCocICgAAK/////8wCocICgAALP////8wCocICgAALf////8w -CocICgAALv////8wCocICgAAL/////8wCocICgAAMP////8wCocICgAAMf////8w -CocICgAAMv////8wCocICgAAM/////8wCocICgAANP////8wCocICgAANf////8w -CocICgAANv////8wCocICgAAN/////8wCocICgAAOP////8wCocICgAAOf////8w -CocICgAAOv////8wCocICgAAO/////8wCocICgAAPP////8wCocICgAAPf////8w -CocICgAAPv////8wCocICgAAP/////8wCocICgAAQP////8wCocICgAAQf////8w -CocICgAAQv////8wCocICgAAQ/////8wCocICgAARP////8wCocICgAARf////8w -CocICgAARv////8wCocICgAAR/////8wCocICgAASP////8wCocICgAASf////8w -CocICgAASv////8wCocICgAAS/////8wCocICgAATP////8wCocICgAATf////8w -CocICgAATv////8wCocICgAAT/////8wCocICgAAUP////8wCocICgAAUf////8w -CocICgAAUv////8wCocICgAAU/////8wCocICgAAVP////8wCocICgAAVf////8w -CocICgAAVv////8wCocICgAAV/////8wCocICgAAWP////8wCocICgAAWf////8w -CocICgAAWv////8wCocICgAAW/////8wCocICgAAXP////8wCocICgAAXf////8w -CocICgAAXv////8wCocICgAAX/////8wCocICgAAYP////8wCocICgAAYf////8w -CocICgAAYv////8wCocICgAAY/////8wCocICgAAZP////8wCocICgAAZf////8w -CocICgAAZv////8wCocICgAAZ/////8wCocICgAAaP////8wCocICgAAaf////8w -CocICgAAav////8wCocICgAAa/////8wCocICgAAbP////8wCocICgAAbf////8w -CocICgAAbv////8wCocICgAAb/////8wCocICgAAcP////8wCocICgAAcf////8w -CocICgAAcv////8wCocICgAAc/////8wCocICgAAdP////8wCocICgAAdf////8w -CocICgAAdv////8wCocICgAAd/////8wCocICgAAeP////8wCocICgAAef////8w -CocICgAAev////8wCocICgAAe/////8wCocICgAAfP////8wCocICgAAff////8w -CocICgAAfv////8wCocICgAAf/////8wCocICgAAgP////8wCocICgAAgf////8w -CocICgAAgv////8wCocICgAAg/////8wCocICgAAhP////8wCocICgAAhf////8w -CocICgAAhv////8wCocICgAAh/////8wCocICgAAiP////8wCocICgAAif////8w -CocICgAAiv////8wCocICgAAi/////8wCocICgAAjP////8wCocICgAAjf////8w -CocICgAAjv////8wCocICgAAj/////8wCocICgAAkP////8wCocICgAAkf////8w -CocICgAAkv////8wCocICgAAk/////8wCocICgAAlP////8wCocICgAAlf////8w -CocICgAAlv////8wCocICgAAl/////8wCocICgAAmP////8wCocICgAAmf////8w -CocICgAAmv////8wCocICgAAm/////8wCocICgAAnP////8wCocICgAAnf////8w -CocICgAAnv////8wCocICgAAn/////8wCocICgAAoP////8wCocICgAAof////8w -CocICgAAov////8wCocICgAAo/////8wCocICgAApP////8wCocICgAApf////8w -CocICgAApv////8wCocICgAAp/////8wCocICgAAqP////8wCocICgAAqf////8w -CocICgAAqv////8wCocICgAAq/////8wCocICgAArP////8wCocICgAArf////8w -CocICgAArv////8wCocICgAAr/////8wCocICgAAsP////8wCocICgAAsf////8w -CocICgAAsv////8wCocICgAAs/////8wCocICgAAtP////8wCocICgAAtf////8w -CocICgAAtv////8wCocICgAAt/////8wCocICgAAuP////8wCocICgAAuf////8w -CocICgAAuv////8wCocICgAAu/////8wCocICgAAvP////8wCocICgAAvf////8w -CocICgAAvv////8wCocICgAAv/////8wCocICgAAwP////8wCocICgAAwf////8w -CocICgAAwv////8wCocICgAAw/////8wCocICgAAxP////8wCocICgAAxf////8w -CocICgAAxv////8wCocICgAAx/////8wCocICgAAyP////8wCocICgAAyf////8w -CocICgAAyv////8wCocICgAAy/////8wCocICgAAzP////8wCocICgAAzf////8w -CocICgAAzv////8wCocICgAAz/////8wCocICgAA0P////8wCocICgAA0f////8w -CocICgAA0v////8wCocICgAA0/////8wCocICgAA1P////8wCocICgAA1f////8w -CocICgAA1v////8wCocICgAA1/////8wCocICgAA2P////8wCocICgAA2f////8w -CocICgAA2v////8wCocICgAA2/////8wCocICgAA3P////8wCocICgAA3f////8w -CocICgAA3v////8wCocICgAA3/////8wCocICgAA4P////8wCocICgAA4f////8w -CocICgAA4v////8wCocICgAA4/////8wCocICgAA5P////8wCocICgAA5f////8w -CocICgAA5v////8wCocICgAA5/////8wCocICgAA6P////8wCocICgAA6f////8w -CocICgAA6v////8wCocICgAA6/////8wCocICgAA7P////8wCocICgAA7f////8w -CocICgAA7v////8wCocICgAA7/////8wCocICgAA8P////8wCocICgAA8f////8w -CocICgAA8v////8wCocICgAA8/////8wCocICgAA9P////8wCocICgAA9f////8w -CocICgAA9v////8wCocICgAA9/////8wCocICgAA+P////8wCocICgAA+f////8w -CocICgAA+v////8wCocICgAA+/////8wCocICgAA/P////8wCocICgAA/f////8w -CocICgAA/v////8wCocICgAA//////8wCocICgABAP////8wCocICgABAf////8w -CocICgABAv////8wCocICgABA/////8wCocICgABBP////8wCocICgABBf////8w -CocICgABBv////8wCocICgABB/////8wCocICgABCP////8wCocICgABCf////8w -CocICgABCv////8wCocICgABC/////8wCocICgABDP////8wCocICgABDf////8w -CocICgABDv////8wCocICgABD/////8wCocICgABEP////8wCocICgABEf////8w -CocICgABEv////8wCocICgABE/////8wCocICgABFP////8wCocICgABFf////8w -CocICgABFv////8wCocICgABF/////8wCocICgABGP////8wCocICgABGf////8w -CocICgABGv////8wCocICgABG/////8wCocICgABHP////8wCocICgABHf////8w -CocICgABHv////8wCocICgABH/////8wCocICgABIP////8wCocICgABIf////8w -CocICgABIv////8wCocICgABI/////8wCocICgABJP////8wCocICgABJf////8w -CocICgABJv////8wCocICgABJ/////8wCocICgABKP////8wCocICgABKf////8w -CocICgABKv////8wCocICgABK/////8wCocICgABLP////8wCocICgABLf////8w -CocICgABLv////8wCocICgABL/////8wCocICgABMP////8wCocICgABMf////8w -CocICgABMv////8wCocICgABM/////8wCocICgABNP////8wCocICgABNf////8w -CocICgABNv////8wCocICgABN/////8wCocICgABOP////8wCocICgABOf////8w -CocICgABOv////8wCocICgABO/////8wCocICgABPP////8wCocICgABPf////8w -CocICgABPv////8wCocICgABP/////8wCocICgABQP////8wCocICgABQf////8w -CocICgABQv////8wCocICgABQ/////8wCocICgABRP////8wCocICgABRf////8w -CocICgABRv////8wCocICgABR/////8wCocICgABSP////8wCocICgABSf////8w -CocICgABSv////8wCocICgABS/////8wCocICgABTP////8wCocICgABTf////8w -CocICgABTv////8wCocICgABT/////8wCocICgABUP////8wCocICgABUf////8w -CocICgABUv////8wCocICgABU/////8wCocICgABVP////8wCocICgABVf////8w -CocICgABVv////8wCocICgABV/////8wCocICgABWP////8wCocICgABWf////8w -CocICgABWv////8wCocICgABW/////8wCocICgABXP////8wCocICgABXf////8w -CocICgABXv////8wCocICgABX/////8wCocICgABYP////8wCocICgABYf////8w -CocICgABYv////8wCocICgABY/////8wCocICgABZP////8wCocICgABZf////8w -CocICgABZv////8wCocICgABZ/////8wCocICgABaP////8wCocICgABaf////8w -CocICgABav////8wCocICgABa/////8wCocICgABbP////8wCocICgABbf////8w -CocICgABbv////8wCocICgABb/////8wCocICgABcP////8wCocICgABcf////8w -CocICgABcv////8wCocICgABc/////8wCocICgABdP////8wCocICgABdf////8w -CocICgABdv////8wCocICgABd/////8wCocICgABeP////8wCocICgABef////8w -CocICgABev////8wCocICgABe/////8wCocICgABfP////8wCocICgABff////8w -CocICgABfv////8wCocICgABf/////8wCocICgABgP////8wCocICgABgf////8w -CocICgABgv////8wCocICgABg/////8wCocICgABhP////8wCocICgABhf////8w -CocICgABhv////8wCocICgABh/////8wCocICgABiP////8wCocICgABif////8w -CocICgABiv////8wCocICgABi/////8wCocICgABjP////8wCocICgABjf////8w -CocICgABjv////8wCocICgABj/////8wCocICgABkP////8wCocICgABkf////8w -CocICgABkv////8wCocICgABk/////8wCocICgABlP////8wCocICgABlf////8w -CocICgABlv////8wCocICgABl/////8wCocICgABmP////8wCocICgABmf////8w -CocICgABmv////8wCocICgABm/////8wCocICgABnP////8wCocICgABnf////8w -CocICgABnv////8wCocICgABn/////8wCocICgABoP////8wCocICgABof////8w -CocICgABov////8wCocICgABo/////8wCocICgABpP////8wCocICgABpf////8w -CocICgABpv////8wCocICgABp/////8wCocICgABqP////8wCocICgABqf////8w -CocICgABqv////8wCocICgABq/////8wCocICgABrP////8wCocICgABrf////8w -CocICgABrv////8wCocICgABr/////8wCocICgABsP////8wCocICgABsf////8w -CocICgABsv////8wCocICgABs/////8wCocICgABtP////8wCocICgABtf////8w -CocICgABtv////8wCocICgABt/////8wCocICgABuP////8wCocICgABuf////8w -CocICgABuv////8wCocICgABu/////8wCocICgABvP////8wCocICgABvf////8w -CocICgABvv////8wCocICgABv/////8wCocICgABwP////8wCocICgABwf////8w -CocICgABwv////8wCocICgABw/////8wCocICgABxP////8wCocICgABxf////8w -CocICgABxv////8wCocICgABx/////8wCocICgAByP////8wCocICgAByf////8w -CocICgAByv////8wCocICgABy/////8wCocICgABzP////8wCocICgABzf////8w -CocICgABzv////8wCocICgABz/////8wCocICgAB0P////8wCocICgAB0f////8w -CocICgAB0v////8wCocICgAB0/////8wCocICgAB1P////8wCocICgAB1f////8w -CocICgAB1v////8wCocICgAB1/////8wCocICgAB2P////8wCocICgAB2f////8w -CocICgAB2v////8wCocICgAB2/////8wCocICgAB3P////8wCocICgAB3f////8w -CocICgAB3v////8wCocICgAB3/////8wCocICgAB4P////8wCocICgAB4f////8w -CocICgAB4v////8wCocICgAB4/////8wCocICgAB5P////8wCocICgAB5f////8w -CocICgAB5v////8wCocICgAB5/////8wCocICgAB6P////8wCocICgAB6f////8w -CocICgAB6v////8wCocICgAB6/////8wCocICgAB7P////8wCocICgAB7f////8w -CocICgAB7v////8wCocICgAB7/////8wCocICgAB8P////8wCocICgAB8f////8w -CocICgAB8v////8wCocICgAB8/////8wCocICgAB9P////8wCocICgAB9f////8w -CocICgAB9v////8wCocICgAB9/////8wCocICgAB+P////8wCocICgAB+f////8w -CocICgAB+v////8wCocICgAB+/////8wCocICgAB/P////8wCocICgAB/f////8w -CocICgAB/v////8wCocICgAB//////8wCocICgACAP////8wCocICgACAf////8w -CocICgACAv////8wCocICgACA/////8wCocICgACBP////8wCocICgACBf////8w -CocICgACBv////8wCocICgACB/////8wCocICgACCP////8wCocICgACCf////8w -CocICgACCv////8wCocICgACC/////8wCocICgACDP////8wCocICgACDf////8w -CocICgACDv////8wCocICgACD/////8wCocICgACEP////8wCocICgACEf////8w -CocICgACEv////8wCocICgACE/////8wCocICgACFP////8wCocICgACFf////8w -CocICgACFv////8wCocICgACF/////8wCocICgACGP////8wCocICgACGf////8w -CocICgACGv////8wCocICgACG/////8wCocICgACHP////8wCocICgACHf////8w -CocICgACHv////8wCocICgACH/////8wCocICgACIP////8wCocICgACIf////8w -CocICgACIv////8wCocICgACI/////8wCocICgACJP////8wCocICgACJf////8w -CocICgACJv////8wCocICgACJ/////8wCocICgACKP////8wCocICgACKf////8w -CocICgACKv////8wCocICgACK/////8wCocICgACLP////8wCocICgACLf////8w -CocICgACLv////8wCocICgACL/////8wCocICgACMP////8wCocICgACMf////8w -CocICgACMv////8wCocICgACM/////8wCocICgACNP////8wCocICgACNf////8w -CocICgACNv////8wCocICgACN/////8wCocICgACOP////8wCocICgACOf////8w -CocICgACOv////8wCocICgACO/////8wCocICgACPP////8wCocICgACPf////8w -CocICgACPv////8wCocICgACP/////8wCocICgACQP////8wCocICgACQf////8w -CocICgACQv////8wCocICgACQ/////8wCocICgACRP////8wCocICgACRf////8w -CocICgACRv////8wCocICgACR/////8wCocICgACSP////8wCocICgACSf////8w -CocICgACSv////8wCocICgACS/////8wCocICgACTP////8wCocICgACTf////8w -CocICgACTv////8wCocICgACT/////8wCocICgACUP////8wCocICgACUf////8w -CocICgACUv////8wCocICgACU/////8wCocICgACVP////8wCocICgACVf////8w -CocICgACVv////8wCocICgACV/////8wCocICgACWP////8wCocICgACWf////8w -CocICgACWv////8wCocICgACW/////8wCocICgACXP////8wCocICgACXf////8w -CocICgACXv////8wCocICgACX/////8wCocICgACYP////8wCocICgACYf////8w -CocICgACYv////8wCocICgACY/////8wCocICgACZP////8wCocICgACZf////8w -CocICgACZv////8wCocICgACZ/////8wCocICgACaP////8wCocICgACaf////8w -CocICgACav////8wCocICgACa/////8wCocICgACbP////8wCocICgACbf////8w -CocICgACbv////8wCocICgACb/////8wCocICgACcP////8wCocICgACcf////8w -CocICgACcv////8wCocICgACc/////8wCocICgACdP////8wCocICgACdf////8w -CocICgACdv////8wCocICgACd/////8wCocICgACeP////8wCocICgACef////8w -CocICgACev////8wCocICgACe/////8wCocICgACfP////8wCocICgACff////8w -CocICgACfv////8wCocICgACf/////8wCocICgACgP////8wCocICgACgf////8w -CocICgACgv////8wCocICgACg/////8wCocICgAChP////8wCocICgAChf////8w -CocICgAChv////8wCocICgACh/////8wCocICgACiP////8wCocICgACif////8w -CocICgACiv////8wCocICgACi/////8wCocICgACjP////8wCocICgACjf////8w -CocICgACjv////8wCocICgACj/////8wCocICgACkP////8wCocICgACkf////8w -CocICgACkv////8wCocICgACk/////8wCocICgAClP////8wCocICgAClf////8w -CocICgAClv////8wCocICgACl/////8wCocICgACmP////8wCocICgACmf////8w -CocICgACmv////8wCocICgACm/////8wCocICgACnP////8wCocICgACnf////8w -CocICgACnv////8wCocICgACn/////8wCocICgACoP////8wCocICgACof////8w -CocICgACov////8wCocICgACo/////8wCocICgACpP////8wCocICgACpf////8w -CocICgACpv////8wCocICgACp/////8wCocICgACqP////8wCocICgACqf////8w -CocICgACqv////8wCocICgACq/////8wCocICgACrP////8wCocICgACrf////8w -CocICgACrv////8wCocICgACr/////8wCocICgACsP////8wCocICgACsf////8w -CocICgACsv////8wCocICgACs/////8wCocICgACtP////8wCocICgACtf////8w -CocICgACtv////8wCocICgACt/////8wCocICgACuP////8wCocICgACuf////8w -CocICgACuv////8wCocICgACu/////8wCocICgACvP////8wCocICgACvf////8w -CocICgACvv////8wCocICgACv/////8wCocICgACwP////8wCocICgACwf////8w -CocICgACwv////8wCocICgACw/////8wCocICgACxP////8wCocICgACxf////8w -CocICgACxv////8wCocICgACx/////8wCocICgACyP////8wCocICgACyf////8w -CocICgACyv////8wCocICgACy/////8wCocICgACzP////8wCocICgACzf////8w -CocICgACzv////8wCocICgACz/////8wCocICgAC0P////8wCocICgAC0f////8w -CocICgAC0v////8wCocICgAC0/////8wCocICgAC1P////8wCocICgAC1f////8w -CocICgAC1v////8wCocICgAC1/////8wCocICgAC2P////8wCocICgAC2f////8w -CocICgAC2v////8wCocICgAC2/////8wCocICgAC3P////8wCocICgAC3f////8w -CocICgAC3v////8wCocICgAC3/////8wCocICgAC4P////8wCocICgAC4f////8w -CocICgAC4v////8wCocICgAC4/////8wCocICgAC5P////8wCocICgAC5f////8w -CocICgAC5v////8wCocICgAC5/////8wCocICgAC6P////8wCocICgAC6f////8w -CocICgAC6v////8wCocICgAC6/////8wCocICgAC7P////8wCocICgAC7f////8w -CocICgAC7v////8wCocICgAC7/////8wCocICgAC8P////8wCocICgAC8f////8w -CocICgAC8v////8wCocICgAC8/////8wCocICgAC9P////8wCocICgAC9f////8w -CocICgAC9v////8wCocICgAC9/////8wCocICgAC+P////8wCocICgAC+f////8w -CocICgAC+v////8wCocICgAC+/////8wCocICgAC/P////8wCocICgAC/f////8w -CocICgAC/v////8wCocICgAC//////8wCocICgADAP////8wCocICgADAf////8w -CocICgADAv////8wCocICgADA/////8wCocICgADBP////8wCocICgADBf////8w -CocICgADBv////8wCocICgADB/////8wCocICgADCP////8wCocICgADCf////8w -CocICgADCv////8wCocICgADC/////8wCocICgADDP////8wCocICgADDf////8w -CocICgADDv////8wCocICgADD/////8wCocICgADEP////8wCocICgADEf////8w -CocICgADEv////8wCocICgADE/////8wCocICgADFP////8wCocICgADFf////8w -CocICgADFv////8wCocICgADF/////8wCocICgADGP////8wCocICgADGf////8w -CocICgADGv////8wCocICgADG/////8wCocICgADHP////8wCocICgADHf////8w -CocICgADHv////8wCocICgADH/////8wCocICgADIP////8wCocICgADIf////8w -CocICgADIv////8wCocICgADI/////8wCocICgADJP////8wCocICgADJf////8w -CocICgADJv////8wCocICgADJ/////8wCocICgADKP////8wCocICgADKf////8w -CocICgADKv////8wCocICgADK/////8wCocICgADLP////8wCocICgADLf////8w -CocICgADLv////8wCocICgADL/////8wCocICgADMP////8wCocICgADMf////8w -CocICgADMv////8wCocICgADM/////8wCocICgADNP////8wCocICgADNf////8w -CocICgADNv////8wCocICgADN/////8wCocICgADOP////8wCocICgADOf////8w -CocICgADOv////8wCocICgADO/////8wCocICgADPP////8wCocICgADPf////8w -CocICgADPv////8wCocICgADP/////8wCocICgADQP////8wCocICgADQf////8w -CocICgADQv////8wCocICgADQ/////8wCocICgADRP////8wCocICgADRf////8w -CocICgADRv////8wCocICgADR/////8wCocICgADSP////8wCocICgADSf////8w -CocICgADSv////8wCocICgADS/////8wCocICgADTP////8wCocICgADTf////8w -CocICgADTv////8wCocICgADT/////8wCocICgADUP////8wCocICgADUf////8w -CocICgADUv////8wCocICgADU/////8wCocICgADVP////8wCocICgADVf////8w -CocICgADVv////8wCocICgADV/////8wCocICgADWP////8wCocICgADWf////8w -CocICgADWv////8wCocICgADW/////8wCocICgADXP////8wCocICgADXf////8w -CocICgADXv////8wCocICgADX/////8wCocICgADYP////8wCocICgADYf////8w -CocICgADYv////8wCocICgADY/////8wCocICgADZP////8wCocICgADZf////8w -CocICgADZv////8wCocICgADZ/////8wCocICgADaP////8wCocICgADaf////8w -CocICgADav////8wCocICgADa/////8wCocICgADbP////8wCocICgADbf////8w -CocICgADbv////8wCocICgADb/////8wCocICgADcP////8wCocICgADcf////8w -CocICgADcv////8wCocICgADc/////8wCocICgADdP////8wCocICgADdf////8w -CocICgADdv////8wCocICgADd/////8wCocICgADeP////8wCocICgADef////8w -CocICgADev////8wCocICgADe/////8wCocICgADfP////8wCocICgADff////8w -CocICgADfv////8wCocICgADf/////8wCocICgADgP////8wCocICgADgf////8w -CocICgADgv////8wCocICgADg/////8wCocICgADhP////8wCocICgADhf////8w -CocICgADhv////8wCocICgADh/////8wCocICgADiP////8wCocICgADif////8w -CocICgADiv////8wCocICgADi/////8wCocICgADjP////8wCocICgADjf////8w -CocICgADjv////8wCocICgADj/////8wCocICgADkP////8wCocICgADkf////8w -CocICgADkv////8wCocICgADk/////8wCocICgADlP////8wCocICgADlf////8w -CocICgADlv////8wCocICgADl/////8wCocICgADmP////8wCocICgADmf////8w -CocICgADmv////8wCocICgADm/////8wCocICgADnP////8wCocICgADnf////8w -CocICgADnv////8wCocICgADn/////8wCocICgADoP////8wCocICgADof////8w -CocICgADov////8wCocICgADo/////8wCocICgADpP////8wCocICgADpf////8w -CocICgADpv////8wCocICgADp/////8wCocICgADqP////8wCocICgADqf////8w -CocICgADqv////8wCocICgADq/////8wCocICgADrP////8wCocICgADrf////8w -CocICgADrv////8wCocICgADr/////8wCocICgADsP////8wCocICgADsf////8w -CocICgADsv////8wCocICgADs/////8wCocICgADtP////8wCocICgADtf////8w -CocICgADtv////8wCocICgADt/////8wCocICgADuP////8wCocICgADuf////8w -CocICgADuv////8wCocICgADu/////8wCocICgADvP////8wCocICgADvf////8w -CocICgADvv////8wCocICgADv/////8wCocICgADwP////8wCocICgADwf////8w -CocICgADwv////8wCocICgADw/////8wCocICgADxP////8wCocICgADxf////8w -CocICgADxv////8wCocICgADx/////8wCocICgADyP////8wCocICgADyf////8w -CocICgADyv////8wCocICgADy/////8wCocICgADzP////8wCocICgADzf////8w -CocICgADzv////8wCocICgADz/////8wCocICgAD0P////8wCocICgAD0f////8w -CocICgAD0v////8wCocICgAD0/////8wCocICgAD1P////8wCocICgAD1f////8w -CocICgAD1v////8wCocICgAD1/////8wCocICgAD2P////8wCocICgAD2f////8w -CocICgAD2v////8wCocICgAD2/////8wCocICgAD3P////8wCocICgAD3f////8w -CocICgAD3v////8wCocICgAD3/////8wCocICgAD4P////8wCocICgAD4f////8w -CocICgAD4v////8wCocICgAD4/////8wCocICgAD5P////8wCocICgAD5f////8w -CocICgAD5v////8wCocICgAD5/////8wCocICgAD6P////8wCocICgAD6f////8w -CocICgAD6v////8wCocICgAD6/////8wCocICgAD7P////8wCocICgAD7f////8w -CocICgAD7v////8wCocICgAD7/////8wCocICgAD8P////8wCocICgAD8f////8w -CocICgAD8v////8wCocICgAD8/////8wCocICgAD9P////8wCocICgAD9f////8w -CocICgAD9v////8wCocICgAD9/////8wCocICgAD+P////8wCocICgAD+f////8w -CocICgAD+v////8wCocICgAD+/////8wCocICgAD/P////8wCocICgAD/f////8w -CocICgAD/v////8wCocICgAD//////8wCocICgAEAP////8wDQYJKoZIhvcNAQEL -BQADggEBAFio+2NGReQcAvlfGo+jHdTQQZoTcm06e2ok3HBHKfbJc4AaX+6Sps4m -lNB7KRgHyGmm3djPZfqb4QCgfuqjpZIJAZVtUmYSX8BJaziqurxYrMID7m8tX45z -cRmK2ARLAP2U03/6OG0hFbrljnxfLF1YZ3H2NxSlrNX/RMqwK0GzLNSTJQrS/x27 -3tRD/QW3Xwc/swRSVINdHwWz/1BHg+xvipKaOyeCBerib6JKQ4t6Oalr2pxjOV1X -qLiGhMn+WyoeB2wFGNVA52114zEc0hzmPkZjtH4w06EUd0AobtM6/OGARTd+X+xc -ZrtvT4IwJFNsj0rbbVqPcWMg+vm2VPw= ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FD.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FD.pem deleted file mode 100644 index 6447d3c6a3..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/3CE5FC818859A85016C17FD7E52AE5967FC2F6FD.pem +++ /dev/null @@ -1,1564 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:fd - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Permitted: - DirName: CN = t0 - DirName: CN = t1 - DirName: CN = t2 - DirName: CN = t3 - DirName: CN = t4 - DirName: CN = t5 - DirName: CN = t6 - DirName: CN = t7 - DirName: CN = t8 - DirName: CN = t9 - DirName: CN = t10 - DirName: CN = t11 - DirName: CN = t12 - DirName: CN = t13 - DirName: CN = t14 - DirName: CN = t15 - DirName: CN = t16 - DirName: CN = t17 - DirName: CN = t18 - DirName: CN = t19 - DirName: CN = t20 - DirName: CN = t21 - DirName: CN = t22 - DirName: CN = t23 - DirName: CN = t24 - DirName: CN = t25 - DirName: CN = t26 - DirName: CN = t27 - DirName: CN = t28 - DirName: CN = t29 - DirName: CN = t30 - DirName: CN = t31 - DirName: CN = t32 - DirName: CN = t33 - DirName: CN = t34 - DirName: CN = t35 - DirName: CN = t36 - DirName: CN = t37 - DirName: CN = t38 - DirName: CN = t39 - DirName: CN = t40 - DirName: CN = t41 - DirName: CN = t42 - DirName: CN = t43 - DirName: CN = t44 - DirName: CN = t45 - DirName: CN = t46 - DirName: CN = t47 - DirName: CN = t48 - DirName: CN = t49 - DirName: CN = t50 - DirName: CN = t51 - DirName: CN = t52 - DirName: CN = t53 - DirName: CN = t54 - DirName: CN = t55 - DirName: CN = t56 - DirName: CN = t57 - DirName: CN = t58 - DirName: CN = t59 - DirName: CN = t60 - DirName: CN = t61 - DirName: CN = t62 - DirName: CN = t63 - DirName: CN = t64 - DirName: CN = t65 - DirName: CN = t66 - DirName: CN = t67 - DirName: CN = t68 - DirName: CN = t69 - DirName: CN = t70 - DirName: CN = t71 - DirName: CN = t72 - DirName: CN = t73 - DirName: CN = t74 - DirName: CN = t75 - DirName: CN = t76 - DirName: CN = t77 - DirName: CN = t78 - DirName: CN = t79 - DirName: CN = t80 - DirName: CN = t81 - DirName: CN = t82 - DirName: CN = t83 - DirName: CN = t84 - DirName: CN = t85 - DirName: CN = t86 - DirName: CN = t87 - DirName: CN = t88 - DirName: CN = t89 - DirName: CN = t90 - DirName: CN = t91 - DirName: CN = t92 - DirName: CN = t93 - DirName: CN = t94 - DirName: CN = t95 - DirName: CN = t96 - DirName: CN = t97 - DirName: CN = t98 - DirName: CN = t99 - DirName: CN = t100 - DirName: CN = t101 - DirName: CN = t102 - DirName: CN = t103 - DirName: CN = t104 - DirName: CN = t105 - DirName: CN = t106 - DirName: CN = t107 - DirName: CN = t108 - DirName: CN = t109 - DirName: CN = t110 - DirName: CN = t111 - DirName: CN = t112 - DirName: CN = t113 - DirName: CN = t114 - DirName: CN = t115 - DirName: CN = t116 - DirName: CN = t117 - DirName: CN = t118 - DirName: CN = t119 - DirName: CN = t120 - DirName: CN = t121 - DirName: CN = t122 - DirName: CN = t123 - DirName: CN = t124 - DirName: CN = t125 - DirName: CN = t126 - DirName: CN = t127 - DirName: CN = t128 - DirName: CN = t129 - DirName: CN = t130 - DirName: CN = t131 - DirName: CN = t132 - DirName: CN = t133 - DirName: CN = t134 - DirName: CN = t135 - DirName: CN = t136 - DirName: CN = t137 - DirName: CN = t138 - DirName: CN = t139 - DirName: CN = t140 - DirName: CN = t141 - DirName: CN = t142 - DirName: CN = t143 - DirName: CN = t144 - DirName: CN = t145 - DirName: CN = t146 - DirName: CN = t147 - DirName: CN = t148 - DirName: CN = t149 - DirName: CN = t150 - DirName: CN = t151 - DirName: CN = t152 - DirName: CN = t153 - DirName: CN = t154 - DirName: CN = t155 - DirName: CN = t156 - DirName: CN = t157 - DirName: CN = t158 - DirName: CN = t159 - DirName: CN = t160 - DirName: CN = t161 - DirName: CN = t162 - DirName: CN = t163 - DirName: CN = t164 - DirName: CN = t165 - DirName: CN = t166 - DirName: CN = t167 - DirName: CN = t168 - DirName: CN = t169 - DirName: CN = t170 - DirName: CN = t171 - DirName: CN = t172 - DirName: CN = t173 - DirName: CN = t174 - DirName: CN = t175 - DirName: CN = t176 - DirName: CN = t177 - DirName: CN = t178 - DirName: CN = t179 - DirName: CN = t180 - DirName: CN = t181 - DirName: CN = t182 - DirName: CN = t183 - DirName: CN = t184 - DirName: CN = t185 - DirName: CN = t186 - DirName: CN = t187 - DirName: CN = t188 - DirName: CN = t189 - DirName: CN = t190 - DirName: CN = t191 - DirName: CN = t192 - DirName: CN = t193 - DirName: CN = t194 - DirName: CN = t195 - DirName: CN = t196 - DirName: CN = t197 - DirName: CN = t198 - DirName: CN = t199 - DirName: CN = t200 - DirName: CN = t201 - DirName: CN = t202 - DirName: CN = t203 - DirName: CN = t204 - DirName: CN = t205 - DirName: CN = t206 - DirName: CN = t207 - DirName: CN = t208 - DirName: CN = t209 - DirName: CN = t210 - DirName: CN = t211 - DirName: CN = t212 - DirName: CN = t213 - DirName: CN = t214 - DirName: CN = t215 - DirName: CN = t216 - DirName: CN = t217 - DirName: CN = t218 - DirName: CN = t219 - DirName: CN = t220 - DirName: CN = t221 - DirName: CN = t222 - DirName: CN = t223 - DirName: CN = t224 - DirName: CN = t225 - DirName: CN = t226 - DirName: CN = t227 - DirName: CN = t228 - DirName: CN = t229 - DirName: CN = t230 - DirName: CN = t231 - DirName: CN = t232 - DirName: CN = t233 - DirName: CN = t234 - DirName: CN = t235 - DirName: CN = t236 - DirName: CN = t237 - DirName: CN = t238 - DirName: CN = t239 - DirName: CN = t240 - DirName: CN = t241 - DirName: CN = t242 - DirName: CN = t243 - DirName: CN = t244 - DirName: CN = t245 - DirName: CN = t246 - DirName: CN = t247 - DirName: CN = t248 - DirName: CN = t249 - DirName: CN = t250 - DirName: CN = t251 - DirName: CN = t252 - DirName: CN = t253 - DirName: CN = t254 - DirName: CN = t255 - DirName: CN = t256 - DirName: CN = t257 - DirName: CN = t258 - DirName: CN = t259 - DirName: CN = t260 - DirName: CN = t261 - DirName: CN = t262 - DirName: CN = t263 - DirName: CN = t264 - DirName: CN = t265 - DirName: CN = t266 - DirName: CN = t267 - DirName: CN = t268 - DirName: CN = t269 - DirName: CN = t270 - DirName: CN = t271 - DirName: CN = t272 - DirName: CN = t273 - DirName: CN = t274 - DirName: CN = t275 - DirName: CN = t276 - DirName: CN = t277 - DirName: CN = t278 - DirName: CN = t279 - DirName: CN = t280 - DirName: CN = t281 - DirName: CN = t282 - DirName: CN = t283 - DirName: CN = t284 - DirName: CN = t285 - DirName: CN = t286 - DirName: CN = t287 - DirName: CN = t288 - DirName: CN = t289 - DirName: CN = t290 - DirName: CN = t291 - DirName: CN = t292 - DirName: CN = t293 - DirName: CN = t294 - DirName: CN = t295 - DirName: CN = t296 - DirName: CN = t297 - DirName: CN = t298 - DirName: CN = t299 - DirName: CN = t300 - DirName: CN = t301 - DirName: CN = t302 - DirName: CN = t303 - DirName: CN = t304 - DirName: CN = t305 - DirName: CN = t306 - DirName: CN = t307 - DirName: CN = t308 - DirName: CN = t309 - DirName: CN = t310 - DirName: CN = t311 - DirName: CN = t312 - DirName: CN = t313 - DirName: CN = t314 - DirName: CN = t315 - DirName: CN = t316 - DirName: CN = t317 - DirName: CN = t318 - DirName: CN = t319 - DirName: CN = t320 - DirName: CN = t321 - DirName: CN = t322 - DirName: CN = t323 - DirName: CN = t324 - DirName: CN = t325 - DirName: CN = t326 - DirName: CN = t327 - DirName: CN = t328 - DirName: CN = t329 - DirName: CN = t330 - DirName: CN = t331 - DirName: CN = t332 - DirName: CN = t333 - DirName: CN = t334 - DirName: CN = t335 - DirName: CN = t336 - DirName: CN = t337 - DirName: CN = t338 - DirName: CN = t339 - DirName: CN = t340 - DirName: CN = t341 - DirName: CN = t342 - DirName: CN = t343 - DirName: CN = t344 - DirName: CN = t345 - DirName: CN = t346 - DirName: CN = t347 - DirName: CN = t348 - DirName: CN = t349 - DirName: CN = t350 - DirName: CN = t351 - DirName: CN = t352 - DirName: CN = t353 - DirName: CN = t354 - DirName: CN = t355 - DirName: CN = t356 - DirName: CN = t357 - DirName: CN = t358 - DirName: CN = t359 - DirName: CN = t360 - DirName: CN = t361 - DirName: CN = t362 - DirName: CN = t363 - DirName: CN = t364 - DirName: CN = t365 - DirName: CN = t366 - DirName: CN = t367 - DirName: CN = t368 - DirName: CN = t369 - DirName: CN = t370 - DirName: CN = t371 - DirName: CN = t372 - DirName: CN = t373 - DirName: CN = t374 - DirName: CN = t375 - DirName: CN = t376 - DirName: CN = t377 - DirName: CN = t378 - DirName: CN = t379 - DirName: CN = t380 - DirName: CN = t381 - DirName: CN = t382 - DirName: CN = t383 - DirName: CN = t384 - DirName: CN = t385 - DirName: CN = t386 - DirName: CN = t387 - DirName: CN = t388 - DirName: CN = t389 - DirName: CN = t390 - DirName: CN = t391 - DirName: CN = t392 - DirName: CN = t393 - DirName: CN = t394 - DirName: CN = t395 - DirName: CN = t396 - DirName: CN = t397 - DirName: CN = t398 - DirName: CN = t399 - DirName: CN = t400 - DirName: CN = t401 - DirName: CN = t402 - DirName: CN = t403 - DirName: CN = t404 - DirName: CN = t405 - DirName: CN = t406 - DirName: CN = t407 - DirName: CN = t408 - DirName: CN = t409 - DirName: CN = t410 - DirName: CN = t411 - DirName: CN = t412 - DirName: CN = t413 - DirName: CN = t414 - DirName: CN = t415 - DirName: CN = t416 - DirName: CN = t417 - DirName: CN = t418 - DirName: CN = t419 - DirName: CN = t420 - DirName: CN = t421 - DirName: CN = t422 - DirName: CN = t423 - DirName: CN = t424 - DirName: CN = t425 - DirName: CN = t426 - DirName: CN = t427 - DirName: CN = t428 - DirName: CN = t429 - DirName: CN = t430 - DirName: CN = t431 - DirName: CN = t432 - DirName: CN = t433 - DirName: CN = t434 - DirName: CN = t435 - DirName: CN = t436 - DirName: CN = t437 - DirName: CN = t438 - DirName: CN = t439 - DirName: CN = t440 - DirName: CN = t441 - DirName: CN = t442 - DirName: CN = t443 - DirName: CN = t444 - DirName: CN = t445 - DirName: CN = t446 - DirName: CN = t447 - DirName: CN = t448 - DirName: CN = t449 - DirName: CN = t450 - DirName: CN = t451 - DirName: CN = t452 - DirName: CN = t453 - DirName: CN = t454 - DirName: CN = t455 - DirName: CN = t456 - DirName: CN = t457 - DirName: CN = t458 - DirName: CN = t459 - DirName: CN = t460 - DirName: CN = t461 - DirName: CN = t462 - DirName: CN = t463 - DirName: CN = t464 - DirName: CN = t465 - DirName: CN = t466 - DirName: CN = t467 - DirName: CN = t468 - DirName: CN = t469 - DirName: CN = t470 - DirName: CN = t471 - DirName: CN = t472 - DirName: CN = t473 - DirName: CN = t474 - DirName: CN = t475 - DirName: CN = t476 - DirName: CN = t477 - DirName: CN = t478 - DirName: CN = t479 - DirName: CN = t480 - DirName: CN = t481 - DirName: CN = t482 - DirName: CN = t483 - DirName: CN = t484 - DirName: CN = t485 - DirName: CN = t486 - DirName: CN = t487 - DirName: CN = t488 - DirName: CN = t489 - DirName: CN = t490 - DirName: CN = t491 - DirName: CN = t492 - DirName: CN = t493 - DirName: CN = t494 - DirName: CN = t495 - DirName: CN = t496 - DirName: CN = t497 - DirName: CN = t498 - DirName: CN = t499 - DirName: CN = t500 - DirName: CN = t501 - DirName: CN = t502 - DirName: CN = t503 - DirName: CN = t504 - DirName: CN = t505 - DirName: CN = t506 - DirName: CN = t507 - DirName: CN = t508 - DirName: CN = t509 - DirName: CN = t510 - DirName: CN = t511 - DirName: CN = t512 - DirName: CN = t513 - DirName: CN = t514 - DirName: CN = t515 - DirName: CN = t516 - DirName: CN = t517 - DirName: CN = t518 - DirName: CN = t519 - DirName: CN = t520 - DirName: CN = t521 - DirName: CN = t522 - DirName: CN = t523 - DirName: CN = t524 - DirName: CN = t525 - DirName: CN = t526 - DirName: CN = t527 - DirName: CN = t528 - DirName: CN = t529 - DirName: CN = t530 - DirName: CN = t531 - DirName: CN = t532 - DirName: CN = t533 - DirName: CN = t534 - DirName: CN = t535 - DirName: CN = t536 - DirName: CN = t537 - DirName: CN = t538 - DirName: CN = t539 - DirName: CN = t540 - DirName: CN = t541 - DirName: CN = t542 - DirName: CN = t543 - DirName: CN = t544 - DirName: CN = t545 - DirName: CN = t546 - DirName: CN = t547 - DirName: CN = t548 - DirName: CN = t549 - DirName: CN = t550 - DirName: CN = t551 - DirName: CN = t552 - DirName: CN = t553 - DirName: CN = t554 - DirName: CN = t555 - DirName: CN = t556 - DirName: CN = t557 - DirName: CN = t558 - DirName: CN = t559 - DirName: CN = t560 - DirName: CN = t561 - DirName: CN = t562 - DirName: CN = t563 - DirName: CN = t564 - DirName: CN = t565 - DirName: CN = t566 - DirName: CN = t567 - DirName: CN = t568 - DirName: CN = t569 - DirName: CN = t570 - DirName: CN = t571 - DirName: CN = t572 - DirName: CN = t573 - DirName: CN = t574 - DirName: CN = t575 - DirName: CN = t576 - DirName: CN = t577 - DirName: CN = t578 - DirName: CN = t579 - DirName: CN = t580 - DirName: CN = t581 - DirName: CN = t582 - DirName: CN = t583 - DirName: CN = t584 - DirName: CN = t585 - DirName: CN = t586 - DirName: CN = t587 - DirName: CN = t588 - DirName: CN = t589 - DirName: CN = t590 - DirName: CN = t591 - DirName: CN = t592 - DirName: CN = t593 - DirName: CN = t594 - DirName: CN = t595 - DirName: CN = t596 - DirName: CN = t597 - DirName: CN = t598 - DirName: CN = t599 - DirName: CN = t600 - DirName: CN = t601 - DirName: CN = t602 - DirName: CN = t603 - DirName: CN = t604 - DirName: CN = t605 - DirName: CN = t606 - DirName: CN = t607 - DirName: CN = t608 - DirName: CN = t609 - DirName: CN = t610 - DirName: CN = t611 - DirName: CN = t612 - DirName: CN = t613 - DirName: CN = t614 - DirName: CN = t615 - DirName: CN = t616 - DirName: CN = t617 - DirName: CN = t618 - DirName: CN = t619 - DirName: CN = t620 - DirName: CN = t621 - DirName: CN = t622 - DirName: CN = t623 - DirName: CN = t624 - DirName: CN = t625 - DirName: CN = t626 - DirName: CN = t627 - DirName: CN = t628 - DirName: CN = t629 - DirName: CN = t630 - DirName: CN = t631 - DirName: CN = t632 - DirName: CN = t633 - DirName: CN = t634 - DirName: CN = t635 - DirName: CN = t636 - DirName: CN = t637 - DirName: CN = t638 - DirName: CN = t639 - DirName: CN = t640 - DirName: CN = t641 - DirName: CN = t642 - DirName: CN = t643 - DirName: CN = t644 - DirName: CN = t645 - DirName: CN = t646 - DirName: CN = t647 - DirName: CN = t648 - DirName: CN = t649 - DirName: CN = t650 - DirName: CN = t651 - DirName: CN = t652 - DirName: CN = t653 - DirName: CN = t654 - DirName: CN = t655 - DirName: CN = t656 - DirName: CN = t657 - DirName: CN = t658 - DirName: CN = t659 - DirName: CN = t660 - DirName: CN = t661 - DirName: CN = t662 - DirName: CN = t663 - DirName: CN = t664 - DirName: CN = t665 - DirName: CN = t666 - DirName: CN = t667 - DirName: CN = t668 - DirName: CN = t669 - DirName: CN = t670 - DirName: CN = t671 - DirName: CN = t672 - DirName: CN = t673 - DirName: CN = t674 - DirName: CN = t675 - DirName: CN = t676 - DirName: CN = t677 - DirName: CN = t678 - DirName: CN = t679 - DirName: CN = t680 - DirName: CN = t681 - DirName: CN = t682 - DirName: CN = t683 - DirName: CN = t684 - DirName: CN = t685 - DirName: CN = t686 - DirName: CN = t687 - DirName: CN = t688 - DirName: CN = t689 - DirName: CN = t690 - DirName: CN = t691 - DirName: CN = t692 - DirName: CN = t693 - DirName: CN = t694 - DirName: CN = t695 - DirName: CN = t696 - DirName: CN = t697 - DirName: CN = t698 - DirName: CN = t699 - DirName: CN = t700 - DirName: CN = t701 - DirName: CN = t702 - DirName: CN = t703 - DirName: CN = t704 - DirName: CN = t705 - DirName: CN = t706 - DirName: CN = t707 - DirName: CN = t708 - DirName: CN = t709 - DirName: CN = t710 - DirName: CN = t711 - DirName: CN = t712 - DirName: CN = t713 - DirName: CN = t714 - DirName: CN = t715 - DirName: CN = t716 - DirName: CN = t717 - DirName: CN = t718 - DirName: CN = t719 - DirName: CN = t720 - DirName: CN = t721 - DirName: CN = t722 - DirName: CN = t723 - DirName: CN = t724 - DirName: CN = t725 - DirName: CN = t726 - DirName: CN = t727 - DirName: CN = t728 - DirName: CN = t729 - DirName: CN = t730 - DirName: CN = t731 - DirName: CN = t732 - DirName: CN = t733 - DirName: CN = t734 - DirName: CN = t735 - DirName: CN = t736 - DirName: CN = t737 - DirName: CN = t738 - DirName: CN = t739 - DirName: CN = t740 - DirName: CN = t741 - DirName: CN = t742 - DirName: CN = t743 - DirName: CN = t744 - DirName: CN = t745 - DirName: CN = t746 - DirName: CN = t747 - DirName: CN = t748 - DirName: CN = t749 - DirName: CN = t750 - DirName: CN = t751 - DirName: CN = t752 - DirName: CN = t753 - DirName: CN = t754 - DirName: CN = t755 - DirName: CN = t756 - DirName: CN = t757 - DirName: CN = t758 - DirName: CN = t759 - DirName: CN = t760 - DirName: CN = t761 - DirName: CN = t762 - DirName: CN = t763 - DirName: CN = t764 - DirName: CN = t765 - DirName: CN = t766 - DirName: CN = t767 - DirName: CN = t768 - DirName: CN = t769 - DirName: CN = t770 - DirName: CN = t771 - DirName: CN = t772 - DirName: CN = t773 - DirName: CN = t774 - DirName: CN = t775 - DirName: CN = t776 - DirName: CN = t777 - DirName: CN = t778 - DirName: CN = t779 - DirName: CN = t780 - DirName: CN = t781 - DirName: CN = t782 - DirName: CN = t783 - DirName: CN = t784 - DirName: CN = t785 - DirName: CN = t786 - DirName: CN = t787 - DirName: CN = t788 - DirName: CN = t789 - DirName: CN = t790 - DirName: CN = t791 - DirName: CN = t792 - DirName: CN = t793 - DirName: CN = t794 - DirName: CN = t795 - DirName: CN = t796 - DirName: CN = t797 - DirName: CN = t798 - DirName: CN = t799 - DirName: CN = t800 - DirName: CN = t801 - DirName: CN = t802 - DirName: CN = t803 - DirName: CN = t804 - DirName: CN = t805 - DirName: CN = t806 - DirName: CN = t807 - DirName: CN = t808 - DirName: CN = t809 - DirName: CN = t810 - DirName: CN = t811 - DirName: CN = t812 - DirName: CN = t813 - DirName: CN = t814 - DirName: CN = t815 - DirName: CN = t816 - DirName: CN = t817 - DirName: CN = t818 - DirName: CN = t819 - DirName: CN = t820 - DirName: CN = t821 - DirName: CN = t822 - DirName: CN = t823 - DirName: CN = t824 - DirName: CN = t825 - DirName: CN = t826 - DirName: CN = t827 - DirName: CN = t828 - DirName: CN = t829 - DirName: CN = t830 - DirName: CN = t831 - DirName: CN = t832 - DirName: CN = t833 - DirName: CN = t834 - DirName: CN = t835 - DirName: CN = t836 - DirName: CN = t837 - DirName: CN = t838 - DirName: CN = t839 - DirName: CN = t840 - DirName: CN = t841 - DirName: CN = t842 - DirName: CN = t843 - DirName: CN = t844 - DirName: CN = t845 - DirName: CN = t846 - DirName: CN = t847 - DirName: CN = t848 - DirName: CN = t849 - DirName: CN = t850 - DirName: CN = t851 - DirName: CN = t852 - DirName: CN = t853 - DirName: CN = t854 - DirName: CN = t855 - DirName: CN = t856 - DirName: CN = t857 - DirName: CN = t858 - DirName: CN = t859 - DirName: CN = t860 - DirName: CN = t861 - DirName: CN = t862 - DirName: CN = t863 - DirName: CN = t864 - DirName: CN = t865 - DirName: CN = t866 - DirName: CN = t867 - DirName: CN = t868 - DirName: CN = t869 - DirName: CN = t870 - DirName: CN = t871 - DirName: CN = t872 - DirName: CN = t873 - DirName: CN = t874 - DirName: CN = t875 - DirName: CN = t876 - DirName: CN = t877 - DirName: CN = t878 - DirName: CN = t879 - DirName: CN = t880 - DirName: CN = t881 - DirName: CN = t882 - DirName: CN = t883 - DirName: CN = t884 - DirName: CN = t885 - DirName: CN = t886 - DirName: CN = t887 - DirName: CN = t888 - DirName: CN = t889 - DirName: CN = t890 - DirName: CN = t891 - DirName: CN = t892 - DirName: CN = t893 - DirName: CN = t894 - DirName: CN = t895 - DirName: CN = t896 - DirName: CN = t897 - DirName: CN = t898 - DirName: CN = t899 - DirName: CN = t900 - DirName: CN = t901 - DirName: CN = t902 - DirName: CN = t903 - DirName: CN = t904 - DirName: CN = t905 - DirName: CN = t906 - DirName: CN = t907 - DirName: CN = t908 - DirName: CN = t909 - DirName: CN = t910 - DirName: CN = t911 - DirName: CN = t912 - DirName: CN = t913 - DirName: CN = t914 - DirName: CN = t915 - DirName: CN = t916 - DirName: CN = t917 - DirName: CN = t918 - DirName: CN = t919 - DirName: CN = t920 - DirName: CN = t921 - DirName: CN = t922 - DirName: CN = t923 - DirName: CN = t924 - DirName: CN = t925 - DirName: CN = t926 - DirName: CN = t927 - DirName: CN = t928 - DirName: CN = t929 - DirName: CN = t930 - DirName: CN = t931 - DirName: CN = t932 - DirName: CN = t933 - DirName: CN = t934 - DirName: CN = t935 - DirName: CN = t936 - DirName: CN = t937 - DirName: CN = t938 - DirName: CN = t939 - DirName: CN = t940 - DirName: CN = t941 - DirName: CN = t942 - DirName: CN = t943 - DirName: CN = t944 - DirName: CN = t945 - DirName: CN = t946 - DirName: CN = t947 - DirName: CN = t948 - DirName: CN = t949 - DirName: CN = t950 - DirName: CN = t951 - DirName: CN = t952 - DirName: CN = t953 - DirName: CN = t954 - DirName: CN = t955 - DirName: CN = t956 - DirName: CN = t957 - DirName: CN = t958 - DirName: CN = t959 - DirName: CN = t960 - DirName: CN = t961 - DirName: CN = t962 - DirName: CN = t963 - DirName: CN = t964 - DirName: CN = t965 - DirName: CN = t966 - DirName: CN = t967 - DirName: CN = t968 - DirName: CN = t969 - DirName: CN = t970 - DirName: CN = t971 - DirName: CN = t972 - DirName: CN = t973 - DirName: CN = t974 - DirName: CN = t975 - DirName: CN = t976 - DirName: CN = t977 - DirName: CN = t978 - DirName: CN = t979 - DirName: CN = t980 - DirName: CN = t981 - DirName: CN = t982 - DirName: CN = t983 - DirName: CN = t984 - DirName: CN = t985 - DirName: CN = t986 - DirName: CN = t987 - DirName: CN = t988 - DirName: CN = t989 - DirName: CN = t990 - DirName: CN = t991 - DirName: CN = t992 - DirName: CN = t993 - DirName: CN = t994 - DirName: CN = t995 - DirName: CN = t996 - DirName: CN = t997 - DirName: CN = t998 - DirName: CN = t999 - DirName: CN = t1000 - DirName: CN = t1001 - DirName: CN = t1002 - DirName: CN = t1003 - DirName: CN = t1004 - DirName: CN = t1005 - DirName: CN = t1006 - DirName: CN = t1007 - DirName: CN = t1008 - DirName: CN = t1009 - DirName: CN = t1010 - DirName: CN = t1011 - DirName: CN = t1012 - DirName: CN = t1013 - DirName: CN = t1014 - DirName: CN = t1015 - DirName: CN = t1016 - DirName: CN = t1017 - DirName: CN = t1018 - DirName: CN = t1019 - DirName: CN = t1020 - DirName: CN = t1021 - DirName: CN = t1022 - DirName: CN = t1023 - DirName: CN = t1024 - - Signature Algorithm: sha256WithRSAEncryption - 12:ce:60:d6:3b:b5:7e:7a:8e:9e:d0:f5:fd:a8:8a:33:24:95: - 6d:79:56:24:23:12:10:8f:12:7c:e0:13:99:ba:6d:b9:b2:51: - b4:cc:50:2c:06:28:b8:d1:18:1a:16:e6:03:b4:7f:cd:b7:f6: - 06:7b:c2:77:97:52:76:8f:81:d1:f6:2c:08:e2:70:27:76:3f: - 90:a7:52:f3:15:f0:1f:40:97:99:fb:fa:9a:c1:eb:10:fa:a0: - 74:df:f1:df:8a:d2:4b:67:11:2f:5c:a9:52:78:69:e8:4b:21: - be:f2:a9:65:62:cc:0e:d9:59:8e:7a:ca:5f:01:41:d9:d2:e9: - 89:5f:bc:3c:8c:bb:4f:90:80:06:05:37:be:0c:1f:a8:56:82: - e7:92:2d:c5:89:56:d8:d4:86:9d:8a:bc:5e:43:d3:07:65:da: - d4:08:75:27:e5:49:0e:e9:f8:54:2b:7a:53:99:37:29:9b:ea: - 14:de:80:68:a9:79:26:5e:64:ff:21:6c:da:83:ef:8f:a4:df: - 3a:20:6e:5c:d3:68:48:82:ab:b9:ac:4a:28:b6:2f:35:14:98: - 54:16:a8:fa:ee:30:c3:ba:c5:2d:33:bc:32:ae:96:c6:8a:17: - 49:32:78:d4:61:29:66:7f:75:ae:16:2e:81:b2:b9:fa:56:b1: - d5:c6:9e:77 ------BEGIN CERTIFICATE----- -MIJXVzCCVj+gAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9v0wDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCVKEwglSdMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wglPRBgNVHR4EglPIMIJTxKCCU8AwEaQPMA0xCzAJBgNVBAMMAnQwMBGkDzAN -MQswCQYDVQQDDAJ0MTARpA8wDTELMAkGA1UEAwwCdDIwEaQPMA0xCzAJBgNVBAMM -AnQzMBGkDzANMQswCQYDVQQDDAJ0NDARpA8wDTELMAkGA1UEAwwCdDUwEaQPMA0x -CzAJBgNVBAMMAnQ2MBGkDzANMQswCQYDVQQDDAJ0NzARpA8wDTELMAkGA1UEAwwC -dDgwEaQPMA0xCzAJBgNVBAMMAnQ5MBKkEDAOMQwwCgYDVQQDDAN0MTAwEqQQMA4x -DDAKBgNVBAMMA3QxMTASpBAwDjEMMAoGA1UEAwwDdDEyMBKkEDAOMQwwCgYDVQQD -DAN0MTMwEqQQMA4xDDAKBgNVBAMMA3QxNDASpBAwDjEMMAoGA1UEAwwDdDE1MBKk -EDAOMQwwCgYDVQQDDAN0MTYwEqQQMA4xDDAKBgNVBAMMA3QxNzASpBAwDjEMMAoG -A1UEAwwDdDE4MBKkEDAOMQwwCgYDVQQDDAN0MTkwEqQQMA4xDDAKBgNVBAMMA3Qy -MDASpBAwDjEMMAoGA1UEAwwDdDIxMBKkEDAOMQwwCgYDVQQDDAN0MjIwEqQQMA4x -DDAKBgNVBAMMA3QyMzASpBAwDjEMMAoGA1UEAwwDdDI0MBKkEDAOMQwwCgYDVQQD -DAN0MjUwEqQQMA4xDDAKBgNVBAMMA3QyNjASpBAwDjEMMAoGA1UEAwwDdDI3MBKk -EDAOMQwwCgYDVQQDDAN0MjgwEqQQMA4xDDAKBgNVBAMMA3QyOTASpBAwDjEMMAoG -A1UEAwwDdDMwMBKkEDAOMQwwCgYDVQQDDAN0MzEwEqQQMA4xDDAKBgNVBAMMA3Qz -MjASpBAwDjEMMAoGA1UEAwwDdDMzMBKkEDAOMQwwCgYDVQQDDAN0MzQwEqQQMA4x -DDAKBgNVBAMMA3QzNTASpBAwDjEMMAoGA1UEAwwDdDM2MBKkEDAOMQwwCgYDVQQD -DAN0MzcwEqQQMA4xDDAKBgNVBAMMA3QzODASpBAwDjEMMAoGA1UEAwwDdDM5MBKk -EDAOMQwwCgYDVQQDDAN0NDAwEqQQMA4xDDAKBgNVBAMMA3Q0MTASpBAwDjEMMAoG -A1UEAwwDdDQyMBKkEDAOMQwwCgYDVQQDDAN0NDMwEqQQMA4xDDAKBgNVBAMMA3Q0 -NDASpBAwDjEMMAoGA1UEAwwDdDQ1MBKkEDAOMQwwCgYDVQQDDAN0NDYwEqQQMA4x -DDAKBgNVBAMMA3Q0NzASpBAwDjEMMAoGA1UEAwwDdDQ4MBKkEDAOMQwwCgYDVQQD -DAN0NDkwEqQQMA4xDDAKBgNVBAMMA3Q1MDASpBAwDjEMMAoGA1UEAwwDdDUxMBKk -EDAOMQwwCgYDVQQDDAN0NTIwEqQQMA4xDDAKBgNVBAMMA3Q1MzASpBAwDjEMMAoG -A1UEAwwDdDU0MBKkEDAOMQwwCgYDVQQDDAN0NTUwEqQQMA4xDDAKBgNVBAMMA3Q1 -NjASpBAwDjEMMAoGA1UEAwwDdDU3MBKkEDAOMQwwCgYDVQQDDAN0NTgwEqQQMA4x -DDAKBgNVBAMMA3Q1OTASpBAwDjEMMAoGA1UEAwwDdDYwMBKkEDAOMQwwCgYDVQQD -DAN0NjEwEqQQMA4xDDAKBgNVBAMMA3Q2MjASpBAwDjEMMAoGA1UEAwwDdDYzMBKk -EDAOMQwwCgYDVQQDDAN0NjQwEqQQMA4xDDAKBgNVBAMMA3Q2NTASpBAwDjEMMAoG -A1UEAwwDdDY2MBKkEDAOMQwwCgYDVQQDDAN0NjcwEqQQMA4xDDAKBgNVBAMMA3Q2 -ODASpBAwDjEMMAoGA1UEAwwDdDY5MBKkEDAOMQwwCgYDVQQDDAN0NzAwEqQQMA4x -DDAKBgNVBAMMA3Q3MTASpBAwDjEMMAoGA1UEAwwDdDcyMBKkEDAOMQwwCgYDVQQD -DAN0NzMwEqQQMA4xDDAKBgNVBAMMA3Q3NDASpBAwDjEMMAoGA1UEAwwDdDc1MBKk -EDAOMQwwCgYDVQQDDAN0NzYwEqQQMA4xDDAKBgNVBAMMA3Q3NzASpBAwDjEMMAoG -A1UEAwwDdDc4MBKkEDAOMQwwCgYDVQQDDAN0NzkwEqQQMA4xDDAKBgNVBAMMA3Q4 -MDASpBAwDjEMMAoGA1UEAwwDdDgxMBKkEDAOMQwwCgYDVQQDDAN0ODIwEqQQMA4x -DDAKBgNVBAMMA3Q4MzASpBAwDjEMMAoGA1UEAwwDdDg0MBKkEDAOMQwwCgYDVQQD -DAN0ODUwEqQQMA4xDDAKBgNVBAMMA3Q4NjASpBAwDjEMMAoGA1UEAwwDdDg3MBKk -EDAOMQwwCgYDVQQDDAN0ODgwEqQQMA4xDDAKBgNVBAMMA3Q4OTASpBAwDjEMMAoG -A1UEAwwDdDkwMBKkEDAOMQwwCgYDVQQDDAN0OTEwEqQQMA4xDDAKBgNVBAMMA3Q5 -MjASpBAwDjEMMAoGA1UEAwwDdDkzMBKkEDAOMQwwCgYDVQQDDAN0OTQwEqQQMA4x -DDAKBgNVBAMMA3Q5NTASpBAwDjEMMAoGA1UEAwwDdDk2MBKkEDAOMQwwCgYDVQQD -DAN0OTcwEqQQMA4xDDAKBgNVBAMMA3Q5ODASpBAwDjEMMAoGA1UEAwwDdDk5MBOk -ETAPMQ0wCwYDVQQDDAR0MTAwMBOkETAPMQ0wCwYDVQQDDAR0MTAxMBOkETAPMQ0w -CwYDVQQDDAR0MTAyMBOkETAPMQ0wCwYDVQQDDAR0MTAzMBOkETAPMQ0wCwYDVQQD -DAR0MTA0MBOkETAPMQ0wCwYDVQQDDAR0MTA1MBOkETAPMQ0wCwYDVQQDDAR0MTA2 -MBOkETAPMQ0wCwYDVQQDDAR0MTA3MBOkETAPMQ0wCwYDVQQDDAR0MTA4MBOkETAP -MQ0wCwYDVQQDDAR0MTA5MBOkETAPMQ0wCwYDVQQDDAR0MTEwMBOkETAPMQ0wCwYD -VQQDDAR0MTExMBOkETAPMQ0wCwYDVQQDDAR0MTEyMBOkETAPMQ0wCwYDVQQDDAR0 -MTEzMBOkETAPMQ0wCwYDVQQDDAR0MTE0MBOkETAPMQ0wCwYDVQQDDAR0MTE1MBOk -ETAPMQ0wCwYDVQQDDAR0MTE2MBOkETAPMQ0wCwYDVQQDDAR0MTE3MBOkETAPMQ0w -CwYDVQQDDAR0MTE4MBOkETAPMQ0wCwYDVQQDDAR0MTE5MBOkETAPMQ0wCwYDVQQD -DAR0MTIwMBOkETAPMQ0wCwYDVQQDDAR0MTIxMBOkETAPMQ0wCwYDVQQDDAR0MTIy -MBOkETAPMQ0wCwYDVQQDDAR0MTIzMBOkETAPMQ0wCwYDVQQDDAR0MTI0MBOkETAP -MQ0wCwYDVQQDDAR0MTI1MBOkETAPMQ0wCwYDVQQDDAR0MTI2MBOkETAPMQ0wCwYD -VQQDDAR0MTI3MBOkETAPMQ0wCwYDVQQDDAR0MTI4MBOkETAPMQ0wCwYDVQQDDAR0 -MTI5MBOkETAPMQ0wCwYDVQQDDAR0MTMwMBOkETAPMQ0wCwYDVQQDDAR0MTMxMBOk -ETAPMQ0wCwYDVQQDDAR0MTMyMBOkETAPMQ0wCwYDVQQDDAR0MTMzMBOkETAPMQ0w -CwYDVQQDDAR0MTM0MBOkETAPMQ0wCwYDVQQDDAR0MTM1MBOkETAPMQ0wCwYDVQQD -DAR0MTM2MBOkETAPMQ0wCwYDVQQDDAR0MTM3MBOkETAPMQ0wCwYDVQQDDAR0MTM4 -MBOkETAPMQ0wCwYDVQQDDAR0MTM5MBOkETAPMQ0wCwYDVQQDDAR0MTQwMBOkETAP -MQ0wCwYDVQQDDAR0MTQxMBOkETAPMQ0wCwYDVQQDDAR0MTQyMBOkETAPMQ0wCwYD -VQQDDAR0MTQzMBOkETAPMQ0wCwYDVQQDDAR0MTQ0MBOkETAPMQ0wCwYDVQQDDAR0 -MTQ1MBOkETAPMQ0wCwYDVQQDDAR0MTQ2MBOkETAPMQ0wCwYDVQQDDAR0MTQ3MBOk -ETAPMQ0wCwYDVQQDDAR0MTQ4MBOkETAPMQ0wCwYDVQQDDAR0MTQ5MBOkETAPMQ0w -CwYDVQQDDAR0MTUwMBOkETAPMQ0wCwYDVQQDDAR0MTUxMBOkETAPMQ0wCwYDVQQD -DAR0MTUyMBOkETAPMQ0wCwYDVQQDDAR0MTUzMBOkETAPMQ0wCwYDVQQDDAR0MTU0 -MBOkETAPMQ0wCwYDVQQDDAR0MTU1MBOkETAPMQ0wCwYDVQQDDAR0MTU2MBOkETAP -MQ0wCwYDVQQDDAR0MTU3MBOkETAPMQ0wCwYDVQQDDAR0MTU4MBOkETAPMQ0wCwYD -VQQDDAR0MTU5MBOkETAPMQ0wCwYDVQQDDAR0MTYwMBOkETAPMQ0wCwYDVQQDDAR0 -MTYxMBOkETAPMQ0wCwYDVQQDDAR0MTYyMBOkETAPMQ0wCwYDVQQDDAR0MTYzMBOk -ETAPMQ0wCwYDVQQDDAR0MTY0MBOkETAPMQ0wCwYDVQQDDAR0MTY1MBOkETAPMQ0w -CwYDVQQDDAR0MTY2MBOkETAPMQ0wCwYDVQQDDAR0MTY3MBOkETAPMQ0wCwYDVQQD -DAR0MTY4MBOkETAPMQ0wCwYDVQQDDAR0MTY5MBOkETAPMQ0wCwYDVQQDDAR0MTcw -MBOkETAPMQ0wCwYDVQQDDAR0MTcxMBOkETAPMQ0wCwYDVQQDDAR0MTcyMBOkETAP -MQ0wCwYDVQQDDAR0MTczMBOkETAPMQ0wCwYDVQQDDAR0MTc0MBOkETAPMQ0wCwYD -VQQDDAR0MTc1MBOkETAPMQ0wCwYDVQQDDAR0MTc2MBOkETAPMQ0wCwYDVQQDDAR0 -MTc3MBOkETAPMQ0wCwYDVQQDDAR0MTc4MBOkETAPMQ0wCwYDVQQDDAR0MTc5MBOk -ETAPMQ0wCwYDVQQDDAR0MTgwMBOkETAPMQ0wCwYDVQQDDAR0MTgxMBOkETAPMQ0w -CwYDVQQDDAR0MTgyMBOkETAPMQ0wCwYDVQQDDAR0MTgzMBOkETAPMQ0wCwYDVQQD -DAR0MTg0MBOkETAPMQ0wCwYDVQQDDAR0MTg1MBOkETAPMQ0wCwYDVQQDDAR0MTg2 -MBOkETAPMQ0wCwYDVQQDDAR0MTg3MBOkETAPMQ0wCwYDVQQDDAR0MTg4MBOkETAP -MQ0wCwYDVQQDDAR0MTg5MBOkETAPMQ0wCwYDVQQDDAR0MTkwMBOkETAPMQ0wCwYD -VQQDDAR0MTkxMBOkETAPMQ0wCwYDVQQDDAR0MTkyMBOkETAPMQ0wCwYDVQQDDAR0 -MTkzMBOkETAPMQ0wCwYDVQQDDAR0MTk0MBOkETAPMQ0wCwYDVQQDDAR0MTk1MBOk -ETAPMQ0wCwYDVQQDDAR0MTk2MBOkETAPMQ0wCwYDVQQDDAR0MTk3MBOkETAPMQ0w -CwYDVQQDDAR0MTk4MBOkETAPMQ0wCwYDVQQDDAR0MTk5MBOkETAPMQ0wCwYDVQQD -DAR0MjAwMBOkETAPMQ0wCwYDVQQDDAR0MjAxMBOkETAPMQ0wCwYDVQQDDAR0MjAy -MBOkETAPMQ0wCwYDVQQDDAR0MjAzMBOkETAPMQ0wCwYDVQQDDAR0MjA0MBOkETAP -MQ0wCwYDVQQDDAR0MjA1MBOkETAPMQ0wCwYDVQQDDAR0MjA2MBOkETAPMQ0wCwYD -VQQDDAR0MjA3MBOkETAPMQ0wCwYDVQQDDAR0MjA4MBOkETAPMQ0wCwYDVQQDDAR0 -MjA5MBOkETAPMQ0wCwYDVQQDDAR0MjEwMBOkETAPMQ0wCwYDVQQDDAR0MjExMBOk -ETAPMQ0wCwYDVQQDDAR0MjEyMBOkETAPMQ0wCwYDVQQDDAR0MjEzMBOkETAPMQ0w -CwYDVQQDDAR0MjE0MBOkETAPMQ0wCwYDVQQDDAR0MjE1MBOkETAPMQ0wCwYDVQQD -DAR0MjE2MBOkETAPMQ0wCwYDVQQDDAR0MjE3MBOkETAPMQ0wCwYDVQQDDAR0MjE4 -MBOkETAPMQ0wCwYDVQQDDAR0MjE5MBOkETAPMQ0wCwYDVQQDDAR0MjIwMBOkETAP -MQ0wCwYDVQQDDAR0MjIxMBOkETAPMQ0wCwYDVQQDDAR0MjIyMBOkETAPMQ0wCwYD -VQQDDAR0MjIzMBOkETAPMQ0wCwYDVQQDDAR0MjI0MBOkETAPMQ0wCwYDVQQDDAR0 -MjI1MBOkETAPMQ0wCwYDVQQDDAR0MjI2MBOkETAPMQ0wCwYDVQQDDAR0MjI3MBOk -ETAPMQ0wCwYDVQQDDAR0MjI4MBOkETAPMQ0wCwYDVQQDDAR0MjI5MBOkETAPMQ0w -CwYDVQQDDAR0MjMwMBOkETAPMQ0wCwYDVQQDDAR0MjMxMBOkETAPMQ0wCwYDVQQD -DAR0MjMyMBOkETAPMQ0wCwYDVQQDDAR0MjMzMBOkETAPMQ0wCwYDVQQDDAR0MjM0 -MBOkETAPMQ0wCwYDVQQDDAR0MjM1MBOkETAPMQ0wCwYDVQQDDAR0MjM2MBOkETAP -MQ0wCwYDVQQDDAR0MjM3MBOkETAPMQ0wCwYDVQQDDAR0MjM4MBOkETAPMQ0wCwYD -VQQDDAR0MjM5MBOkETAPMQ0wCwYDVQQDDAR0MjQwMBOkETAPMQ0wCwYDVQQDDAR0 -MjQxMBOkETAPMQ0wCwYDVQQDDAR0MjQyMBOkETAPMQ0wCwYDVQQDDAR0MjQzMBOk -ETAPMQ0wCwYDVQQDDAR0MjQ0MBOkETAPMQ0wCwYDVQQDDAR0MjQ1MBOkETAPMQ0w -CwYDVQQDDAR0MjQ2MBOkETAPMQ0wCwYDVQQDDAR0MjQ3MBOkETAPMQ0wCwYDVQQD -DAR0MjQ4MBOkETAPMQ0wCwYDVQQDDAR0MjQ5MBOkETAPMQ0wCwYDVQQDDAR0MjUw -MBOkETAPMQ0wCwYDVQQDDAR0MjUxMBOkETAPMQ0wCwYDVQQDDAR0MjUyMBOkETAP -MQ0wCwYDVQQDDAR0MjUzMBOkETAPMQ0wCwYDVQQDDAR0MjU0MBOkETAPMQ0wCwYD -VQQDDAR0MjU1MBOkETAPMQ0wCwYDVQQDDAR0MjU2MBOkETAPMQ0wCwYDVQQDDAR0 -MjU3MBOkETAPMQ0wCwYDVQQDDAR0MjU4MBOkETAPMQ0wCwYDVQQDDAR0MjU5MBOk -ETAPMQ0wCwYDVQQDDAR0MjYwMBOkETAPMQ0wCwYDVQQDDAR0MjYxMBOkETAPMQ0w -CwYDVQQDDAR0MjYyMBOkETAPMQ0wCwYDVQQDDAR0MjYzMBOkETAPMQ0wCwYDVQQD -DAR0MjY0MBOkETAPMQ0wCwYDVQQDDAR0MjY1MBOkETAPMQ0wCwYDVQQDDAR0MjY2 -MBOkETAPMQ0wCwYDVQQDDAR0MjY3MBOkETAPMQ0wCwYDVQQDDAR0MjY4MBOkETAP -MQ0wCwYDVQQDDAR0MjY5MBOkETAPMQ0wCwYDVQQDDAR0MjcwMBOkETAPMQ0wCwYD -VQQDDAR0MjcxMBOkETAPMQ0wCwYDVQQDDAR0MjcyMBOkETAPMQ0wCwYDVQQDDAR0 -MjczMBOkETAPMQ0wCwYDVQQDDAR0Mjc0MBOkETAPMQ0wCwYDVQQDDAR0Mjc1MBOk -ETAPMQ0wCwYDVQQDDAR0Mjc2MBOkETAPMQ0wCwYDVQQDDAR0Mjc3MBOkETAPMQ0w -CwYDVQQDDAR0Mjc4MBOkETAPMQ0wCwYDVQQDDAR0Mjc5MBOkETAPMQ0wCwYDVQQD -DAR0MjgwMBOkETAPMQ0wCwYDVQQDDAR0MjgxMBOkETAPMQ0wCwYDVQQDDAR0Mjgy -MBOkETAPMQ0wCwYDVQQDDAR0MjgzMBOkETAPMQ0wCwYDVQQDDAR0Mjg0MBOkETAP -MQ0wCwYDVQQDDAR0Mjg1MBOkETAPMQ0wCwYDVQQDDAR0Mjg2MBOkETAPMQ0wCwYD -VQQDDAR0Mjg3MBOkETAPMQ0wCwYDVQQDDAR0Mjg4MBOkETAPMQ0wCwYDVQQDDAR0 -Mjg5MBOkETAPMQ0wCwYDVQQDDAR0MjkwMBOkETAPMQ0wCwYDVQQDDAR0MjkxMBOk -ETAPMQ0wCwYDVQQDDAR0MjkyMBOkETAPMQ0wCwYDVQQDDAR0MjkzMBOkETAPMQ0w -CwYDVQQDDAR0Mjk0MBOkETAPMQ0wCwYDVQQDDAR0Mjk1MBOkETAPMQ0wCwYDVQQD -DAR0Mjk2MBOkETAPMQ0wCwYDVQQDDAR0Mjk3MBOkETAPMQ0wCwYDVQQDDAR0Mjk4 -MBOkETAPMQ0wCwYDVQQDDAR0Mjk5MBOkETAPMQ0wCwYDVQQDDAR0MzAwMBOkETAP -MQ0wCwYDVQQDDAR0MzAxMBOkETAPMQ0wCwYDVQQDDAR0MzAyMBOkETAPMQ0wCwYD -VQQDDAR0MzAzMBOkETAPMQ0wCwYDVQQDDAR0MzA0MBOkETAPMQ0wCwYDVQQDDAR0 -MzA1MBOkETAPMQ0wCwYDVQQDDAR0MzA2MBOkETAPMQ0wCwYDVQQDDAR0MzA3MBOk -ETAPMQ0wCwYDVQQDDAR0MzA4MBOkETAPMQ0wCwYDVQQDDAR0MzA5MBOkETAPMQ0w -CwYDVQQDDAR0MzEwMBOkETAPMQ0wCwYDVQQDDAR0MzExMBOkETAPMQ0wCwYDVQQD -DAR0MzEyMBOkETAPMQ0wCwYDVQQDDAR0MzEzMBOkETAPMQ0wCwYDVQQDDAR0MzE0 -MBOkETAPMQ0wCwYDVQQDDAR0MzE1MBOkETAPMQ0wCwYDVQQDDAR0MzE2MBOkETAP -MQ0wCwYDVQQDDAR0MzE3MBOkETAPMQ0wCwYDVQQDDAR0MzE4MBOkETAPMQ0wCwYD -VQQDDAR0MzE5MBOkETAPMQ0wCwYDVQQDDAR0MzIwMBOkETAPMQ0wCwYDVQQDDAR0 -MzIxMBOkETAPMQ0wCwYDVQQDDAR0MzIyMBOkETAPMQ0wCwYDVQQDDAR0MzIzMBOk -ETAPMQ0wCwYDVQQDDAR0MzI0MBOkETAPMQ0wCwYDVQQDDAR0MzI1MBOkETAPMQ0w -CwYDVQQDDAR0MzI2MBOkETAPMQ0wCwYDVQQDDAR0MzI3MBOkETAPMQ0wCwYDVQQD -DAR0MzI4MBOkETAPMQ0wCwYDVQQDDAR0MzI5MBOkETAPMQ0wCwYDVQQDDAR0MzMw -MBOkETAPMQ0wCwYDVQQDDAR0MzMxMBOkETAPMQ0wCwYDVQQDDAR0MzMyMBOkETAP -MQ0wCwYDVQQDDAR0MzMzMBOkETAPMQ0wCwYDVQQDDAR0MzM0MBOkETAPMQ0wCwYD -VQQDDAR0MzM1MBOkETAPMQ0wCwYDVQQDDAR0MzM2MBOkETAPMQ0wCwYDVQQDDAR0 -MzM3MBOkETAPMQ0wCwYDVQQDDAR0MzM4MBOkETAPMQ0wCwYDVQQDDAR0MzM5MBOk -ETAPMQ0wCwYDVQQDDAR0MzQwMBOkETAPMQ0wCwYDVQQDDAR0MzQxMBOkETAPMQ0w -CwYDVQQDDAR0MzQyMBOkETAPMQ0wCwYDVQQDDAR0MzQzMBOkETAPMQ0wCwYDVQQD -DAR0MzQ0MBOkETAPMQ0wCwYDVQQDDAR0MzQ1MBOkETAPMQ0wCwYDVQQDDAR0MzQ2 -MBOkETAPMQ0wCwYDVQQDDAR0MzQ3MBOkETAPMQ0wCwYDVQQDDAR0MzQ4MBOkETAP -MQ0wCwYDVQQDDAR0MzQ5MBOkETAPMQ0wCwYDVQQDDAR0MzUwMBOkETAPMQ0wCwYD -VQQDDAR0MzUxMBOkETAPMQ0wCwYDVQQDDAR0MzUyMBOkETAPMQ0wCwYDVQQDDAR0 -MzUzMBOkETAPMQ0wCwYDVQQDDAR0MzU0MBOkETAPMQ0wCwYDVQQDDAR0MzU1MBOk -ETAPMQ0wCwYDVQQDDAR0MzU2MBOkETAPMQ0wCwYDVQQDDAR0MzU3MBOkETAPMQ0w -CwYDVQQDDAR0MzU4MBOkETAPMQ0wCwYDVQQDDAR0MzU5MBOkETAPMQ0wCwYDVQQD -DAR0MzYwMBOkETAPMQ0wCwYDVQQDDAR0MzYxMBOkETAPMQ0wCwYDVQQDDAR0MzYy -MBOkETAPMQ0wCwYDVQQDDAR0MzYzMBOkETAPMQ0wCwYDVQQDDAR0MzY0MBOkETAP -MQ0wCwYDVQQDDAR0MzY1MBOkETAPMQ0wCwYDVQQDDAR0MzY2MBOkETAPMQ0wCwYD -VQQDDAR0MzY3MBOkETAPMQ0wCwYDVQQDDAR0MzY4MBOkETAPMQ0wCwYDVQQDDAR0 -MzY5MBOkETAPMQ0wCwYDVQQDDAR0MzcwMBOkETAPMQ0wCwYDVQQDDAR0MzcxMBOk -ETAPMQ0wCwYDVQQDDAR0MzcyMBOkETAPMQ0wCwYDVQQDDAR0MzczMBOkETAPMQ0w -CwYDVQQDDAR0Mzc0MBOkETAPMQ0wCwYDVQQDDAR0Mzc1MBOkETAPMQ0wCwYDVQQD -DAR0Mzc2MBOkETAPMQ0wCwYDVQQDDAR0Mzc3MBOkETAPMQ0wCwYDVQQDDAR0Mzc4 -MBOkETAPMQ0wCwYDVQQDDAR0Mzc5MBOkETAPMQ0wCwYDVQQDDAR0MzgwMBOkETAP -MQ0wCwYDVQQDDAR0MzgxMBOkETAPMQ0wCwYDVQQDDAR0MzgyMBOkETAPMQ0wCwYD -VQQDDAR0MzgzMBOkETAPMQ0wCwYDVQQDDAR0Mzg0MBOkETAPMQ0wCwYDVQQDDAR0 -Mzg1MBOkETAPMQ0wCwYDVQQDDAR0Mzg2MBOkETAPMQ0wCwYDVQQDDAR0Mzg3MBOk -ETAPMQ0wCwYDVQQDDAR0Mzg4MBOkETAPMQ0wCwYDVQQDDAR0Mzg5MBOkETAPMQ0w -CwYDVQQDDAR0MzkwMBOkETAPMQ0wCwYDVQQDDAR0MzkxMBOkETAPMQ0wCwYDVQQD -DAR0MzkyMBOkETAPMQ0wCwYDVQQDDAR0MzkzMBOkETAPMQ0wCwYDVQQDDAR0Mzk0 -MBOkETAPMQ0wCwYDVQQDDAR0Mzk1MBOkETAPMQ0wCwYDVQQDDAR0Mzk2MBOkETAP -MQ0wCwYDVQQDDAR0Mzk3MBOkETAPMQ0wCwYDVQQDDAR0Mzk4MBOkETAPMQ0wCwYD -VQQDDAR0Mzk5MBOkETAPMQ0wCwYDVQQDDAR0NDAwMBOkETAPMQ0wCwYDVQQDDAR0 -NDAxMBOkETAPMQ0wCwYDVQQDDAR0NDAyMBOkETAPMQ0wCwYDVQQDDAR0NDAzMBOk -ETAPMQ0wCwYDVQQDDAR0NDA0MBOkETAPMQ0wCwYDVQQDDAR0NDA1MBOkETAPMQ0w -CwYDVQQDDAR0NDA2MBOkETAPMQ0wCwYDVQQDDAR0NDA3MBOkETAPMQ0wCwYDVQQD -DAR0NDA4MBOkETAPMQ0wCwYDVQQDDAR0NDA5MBOkETAPMQ0wCwYDVQQDDAR0NDEw -MBOkETAPMQ0wCwYDVQQDDAR0NDExMBOkETAPMQ0wCwYDVQQDDAR0NDEyMBOkETAP -MQ0wCwYDVQQDDAR0NDEzMBOkETAPMQ0wCwYDVQQDDAR0NDE0MBOkETAPMQ0wCwYD -VQQDDAR0NDE1MBOkETAPMQ0wCwYDVQQDDAR0NDE2MBOkETAPMQ0wCwYDVQQDDAR0 -NDE3MBOkETAPMQ0wCwYDVQQDDAR0NDE4MBOkETAPMQ0wCwYDVQQDDAR0NDE5MBOk -ETAPMQ0wCwYDVQQDDAR0NDIwMBOkETAPMQ0wCwYDVQQDDAR0NDIxMBOkETAPMQ0w -CwYDVQQDDAR0NDIyMBOkETAPMQ0wCwYDVQQDDAR0NDIzMBOkETAPMQ0wCwYDVQQD -DAR0NDI0MBOkETAPMQ0wCwYDVQQDDAR0NDI1MBOkETAPMQ0wCwYDVQQDDAR0NDI2 -MBOkETAPMQ0wCwYDVQQDDAR0NDI3MBOkETAPMQ0wCwYDVQQDDAR0NDI4MBOkETAP -MQ0wCwYDVQQDDAR0NDI5MBOkETAPMQ0wCwYDVQQDDAR0NDMwMBOkETAPMQ0wCwYD -VQQDDAR0NDMxMBOkETAPMQ0wCwYDVQQDDAR0NDMyMBOkETAPMQ0wCwYDVQQDDAR0 -NDMzMBOkETAPMQ0wCwYDVQQDDAR0NDM0MBOkETAPMQ0wCwYDVQQDDAR0NDM1MBOk -ETAPMQ0wCwYDVQQDDAR0NDM2MBOkETAPMQ0wCwYDVQQDDAR0NDM3MBOkETAPMQ0w -CwYDVQQDDAR0NDM4MBOkETAPMQ0wCwYDVQQDDAR0NDM5MBOkETAPMQ0wCwYDVQQD -DAR0NDQwMBOkETAPMQ0wCwYDVQQDDAR0NDQxMBOkETAPMQ0wCwYDVQQDDAR0NDQy -MBOkETAPMQ0wCwYDVQQDDAR0NDQzMBOkETAPMQ0wCwYDVQQDDAR0NDQ0MBOkETAP -MQ0wCwYDVQQDDAR0NDQ1MBOkETAPMQ0wCwYDVQQDDAR0NDQ2MBOkETAPMQ0wCwYD -VQQDDAR0NDQ3MBOkETAPMQ0wCwYDVQQDDAR0NDQ4MBOkETAPMQ0wCwYDVQQDDAR0 -NDQ5MBOkETAPMQ0wCwYDVQQDDAR0NDUwMBOkETAPMQ0wCwYDVQQDDAR0NDUxMBOk -ETAPMQ0wCwYDVQQDDAR0NDUyMBOkETAPMQ0wCwYDVQQDDAR0NDUzMBOkETAPMQ0w -CwYDVQQDDAR0NDU0MBOkETAPMQ0wCwYDVQQDDAR0NDU1MBOkETAPMQ0wCwYDVQQD -DAR0NDU2MBOkETAPMQ0wCwYDVQQDDAR0NDU3MBOkETAPMQ0wCwYDVQQDDAR0NDU4 -MBOkETAPMQ0wCwYDVQQDDAR0NDU5MBOkETAPMQ0wCwYDVQQDDAR0NDYwMBOkETAP -MQ0wCwYDVQQDDAR0NDYxMBOkETAPMQ0wCwYDVQQDDAR0NDYyMBOkETAPMQ0wCwYD -VQQDDAR0NDYzMBOkETAPMQ0wCwYDVQQDDAR0NDY0MBOkETAPMQ0wCwYDVQQDDAR0 -NDY1MBOkETAPMQ0wCwYDVQQDDAR0NDY2MBOkETAPMQ0wCwYDVQQDDAR0NDY3MBOk -ETAPMQ0wCwYDVQQDDAR0NDY4MBOkETAPMQ0wCwYDVQQDDAR0NDY5MBOkETAPMQ0w -CwYDVQQDDAR0NDcwMBOkETAPMQ0wCwYDVQQDDAR0NDcxMBOkETAPMQ0wCwYDVQQD -DAR0NDcyMBOkETAPMQ0wCwYDVQQDDAR0NDczMBOkETAPMQ0wCwYDVQQDDAR0NDc0 -MBOkETAPMQ0wCwYDVQQDDAR0NDc1MBOkETAPMQ0wCwYDVQQDDAR0NDc2MBOkETAP -MQ0wCwYDVQQDDAR0NDc3MBOkETAPMQ0wCwYDVQQDDAR0NDc4MBOkETAPMQ0wCwYD -VQQDDAR0NDc5MBOkETAPMQ0wCwYDVQQDDAR0NDgwMBOkETAPMQ0wCwYDVQQDDAR0 -NDgxMBOkETAPMQ0wCwYDVQQDDAR0NDgyMBOkETAPMQ0wCwYDVQQDDAR0NDgzMBOk -ETAPMQ0wCwYDVQQDDAR0NDg0MBOkETAPMQ0wCwYDVQQDDAR0NDg1MBOkETAPMQ0w -CwYDVQQDDAR0NDg2MBOkETAPMQ0wCwYDVQQDDAR0NDg3MBOkETAPMQ0wCwYDVQQD -DAR0NDg4MBOkETAPMQ0wCwYDVQQDDAR0NDg5MBOkETAPMQ0wCwYDVQQDDAR0NDkw -MBOkETAPMQ0wCwYDVQQDDAR0NDkxMBOkETAPMQ0wCwYDVQQDDAR0NDkyMBOkETAP -MQ0wCwYDVQQDDAR0NDkzMBOkETAPMQ0wCwYDVQQDDAR0NDk0MBOkETAPMQ0wCwYD -VQQDDAR0NDk1MBOkETAPMQ0wCwYDVQQDDAR0NDk2MBOkETAPMQ0wCwYDVQQDDAR0 -NDk3MBOkETAPMQ0wCwYDVQQDDAR0NDk4MBOkETAPMQ0wCwYDVQQDDAR0NDk5MBOk -ETAPMQ0wCwYDVQQDDAR0NTAwMBOkETAPMQ0wCwYDVQQDDAR0NTAxMBOkETAPMQ0w -CwYDVQQDDAR0NTAyMBOkETAPMQ0wCwYDVQQDDAR0NTAzMBOkETAPMQ0wCwYDVQQD -DAR0NTA0MBOkETAPMQ0wCwYDVQQDDAR0NTA1MBOkETAPMQ0wCwYDVQQDDAR0NTA2 -MBOkETAPMQ0wCwYDVQQDDAR0NTA3MBOkETAPMQ0wCwYDVQQDDAR0NTA4MBOkETAP -MQ0wCwYDVQQDDAR0NTA5MBOkETAPMQ0wCwYDVQQDDAR0NTEwMBOkETAPMQ0wCwYD -VQQDDAR0NTExMBOkETAPMQ0wCwYDVQQDDAR0NTEyMBOkETAPMQ0wCwYDVQQDDAR0 -NTEzMBOkETAPMQ0wCwYDVQQDDAR0NTE0MBOkETAPMQ0wCwYDVQQDDAR0NTE1MBOk -ETAPMQ0wCwYDVQQDDAR0NTE2MBOkETAPMQ0wCwYDVQQDDAR0NTE3MBOkETAPMQ0w -CwYDVQQDDAR0NTE4MBOkETAPMQ0wCwYDVQQDDAR0NTE5MBOkETAPMQ0wCwYDVQQD -DAR0NTIwMBOkETAPMQ0wCwYDVQQDDAR0NTIxMBOkETAPMQ0wCwYDVQQDDAR0NTIy -MBOkETAPMQ0wCwYDVQQDDAR0NTIzMBOkETAPMQ0wCwYDVQQDDAR0NTI0MBOkETAP -MQ0wCwYDVQQDDAR0NTI1MBOkETAPMQ0wCwYDVQQDDAR0NTI2MBOkETAPMQ0wCwYD -VQQDDAR0NTI3MBOkETAPMQ0wCwYDVQQDDAR0NTI4MBOkETAPMQ0wCwYDVQQDDAR0 -NTI5MBOkETAPMQ0wCwYDVQQDDAR0NTMwMBOkETAPMQ0wCwYDVQQDDAR0NTMxMBOk -ETAPMQ0wCwYDVQQDDAR0NTMyMBOkETAPMQ0wCwYDVQQDDAR0NTMzMBOkETAPMQ0w -CwYDVQQDDAR0NTM0MBOkETAPMQ0wCwYDVQQDDAR0NTM1MBOkETAPMQ0wCwYDVQQD -DAR0NTM2MBOkETAPMQ0wCwYDVQQDDAR0NTM3MBOkETAPMQ0wCwYDVQQDDAR0NTM4 -MBOkETAPMQ0wCwYDVQQDDAR0NTM5MBOkETAPMQ0wCwYDVQQDDAR0NTQwMBOkETAP -MQ0wCwYDVQQDDAR0NTQxMBOkETAPMQ0wCwYDVQQDDAR0NTQyMBOkETAPMQ0wCwYD -VQQDDAR0NTQzMBOkETAPMQ0wCwYDVQQDDAR0NTQ0MBOkETAPMQ0wCwYDVQQDDAR0 -NTQ1MBOkETAPMQ0wCwYDVQQDDAR0NTQ2MBOkETAPMQ0wCwYDVQQDDAR0NTQ3MBOk -ETAPMQ0wCwYDVQQDDAR0NTQ4MBOkETAPMQ0wCwYDVQQDDAR0NTQ5MBOkETAPMQ0w -CwYDVQQDDAR0NTUwMBOkETAPMQ0wCwYDVQQDDAR0NTUxMBOkETAPMQ0wCwYDVQQD -DAR0NTUyMBOkETAPMQ0wCwYDVQQDDAR0NTUzMBOkETAPMQ0wCwYDVQQDDAR0NTU0 -MBOkETAPMQ0wCwYDVQQDDAR0NTU1MBOkETAPMQ0wCwYDVQQDDAR0NTU2MBOkETAP -MQ0wCwYDVQQDDAR0NTU3MBOkETAPMQ0wCwYDVQQDDAR0NTU4MBOkETAPMQ0wCwYD -VQQDDAR0NTU5MBOkETAPMQ0wCwYDVQQDDAR0NTYwMBOkETAPMQ0wCwYDVQQDDAR0 -NTYxMBOkETAPMQ0wCwYDVQQDDAR0NTYyMBOkETAPMQ0wCwYDVQQDDAR0NTYzMBOk -ETAPMQ0wCwYDVQQDDAR0NTY0MBOkETAPMQ0wCwYDVQQDDAR0NTY1MBOkETAPMQ0w -CwYDVQQDDAR0NTY2MBOkETAPMQ0wCwYDVQQDDAR0NTY3MBOkETAPMQ0wCwYDVQQD -DAR0NTY4MBOkETAPMQ0wCwYDVQQDDAR0NTY5MBOkETAPMQ0wCwYDVQQDDAR0NTcw -MBOkETAPMQ0wCwYDVQQDDAR0NTcxMBOkETAPMQ0wCwYDVQQDDAR0NTcyMBOkETAP -MQ0wCwYDVQQDDAR0NTczMBOkETAPMQ0wCwYDVQQDDAR0NTc0MBOkETAPMQ0wCwYD -VQQDDAR0NTc1MBOkETAPMQ0wCwYDVQQDDAR0NTc2MBOkETAPMQ0wCwYDVQQDDAR0 -NTc3MBOkETAPMQ0wCwYDVQQDDAR0NTc4MBOkETAPMQ0wCwYDVQQDDAR0NTc5MBOk -ETAPMQ0wCwYDVQQDDAR0NTgwMBOkETAPMQ0wCwYDVQQDDAR0NTgxMBOkETAPMQ0w -CwYDVQQDDAR0NTgyMBOkETAPMQ0wCwYDVQQDDAR0NTgzMBOkETAPMQ0wCwYDVQQD -DAR0NTg0MBOkETAPMQ0wCwYDVQQDDAR0NTg1MBOkETAPMQ0wCwYDVQQDDAR0NTg2 -MBOkETAPMQ0wCwYDVQQDDAR0NTg3MBOkETAPMQ0wCwYDVQQDDAR0NTg4MBOkETAP -MQ0wCwYDVQQDDAR0NTg5MBOkETAPMQ0wCwYDVQQDDAR0NTkwMBOkETAPMQ0wCwYD -VQQDDAR0NTkxMBOkETAPMQ0wCwYDVQQDDAR0NTkyMBOkETAPMQ0wCwYDVQQDDAR0 -NTkzMBOkETAPMQ0wCwYDVQQDDAR0NTk0MBOkETAPMQ0wCwYDVQQDDAR0NTk1MBOk -ETAPMQ0wCwYDVQQDDAR0NTk2MBOkETAPMQ0wCwYDVQQDDAR0NTk3MBOkETAPMQ0w -CwYDVQQDDAR0NTk4MBOkETAPMQ0wCwYDVQQDDAR0NTk5MBOkETAPMQ0wCwYDVQQD -DAR0NjAwMBOkETAPMQ0wCwYDVQQDDAR0NjAxMBOkETAPMQ0wCwYDVQQDDAR0NjAy -MBOkETAPMQ0wCwYDVQQDDAR0NjAzMBOkETAPMQ0wCwYDVQQDDAR0NjA0MBOkETAP -MQ0wCwYDVQQDDAR0NjA1MBOkETAPMQ0wCwYDVQQDDAR0NjA2MBOkETAPMQ0wCwYD -VQQDDAR0NjA3MBOkETAPMQ0wCwYDVQQDDAR0NjA4MBOkETAPMQ0wCwYDVQQDDAR0 -NjA5MBOkETAPMQ0wCwYDVQQDDAR0NjEwMBOkETAPMQ0wCwYDVQQDDAR0NjExMBOk -ETAPMQ0wCwYDVQQDDAR0NjEyMBOkETAPMQ0wCwYDVQQDDAR0NjEzMBOkETAPMQ0w -CwYDVQQDDAR0NjE0MBOkETAPMQ0wCwYDVQQDDAR0NjE1MBOkETAPMQ0wCwYDVQQD -DAR0NjE2MBOkETAPMQ0wCwYDVQQDDAR0NjE3MBOkETAPMQ0wCwYDVQQDDAR0NjE4 -MBOkETAPMQ0wCwYDVQQDDAR0NjE5MBOkETAPMQ0wCwYDVQQDDAR0NjIwMBOkETAP -MQ0wCwYDVQQDDAR0NjIxMBOkETAPMQ0wCwYDVQQDDAR0NjIyMBOkETAPMQ0wCwYD -VQQDDAR0NjIzMBOkETAPMQ0wCwYDVQQDDAR0NjI0MBOkETAPMQ0wCwYDVQQDDAR0 -NjI1MBOkETAPMQ0wCwYDVQQDDAR0NjI2MBOkETAPMQ0wCwYDVQQDDAR0NjI3MBOk -ETAPMQ0wCwYDVQQDDAR0NjI4MBOkETAPMQ0wCwYDVQQDDAR0NjI5MBOkETAPMQ0w -CwYDVQQDDAR0NjMwMBOkETAPMQ0wCwYDVQQDDAR0NjMxMBOkETAPMQ0wCwYDVQQD -DAR0NjMyMBOkETAPMQ0wCwYDVQQDDAR0NjMzMBOkETAPMQ0wCwYDVQQDDAR0NjM0 -MBOkETAPMQ0wCwYDVQQDDAR0NjM1MBOkETAPMQ0wCwYDVQQDDAR0NjM2MBOkETAP -MQ0wCwYDVQQDDAR0NjM3MBOkETAPMQ0wCwYDVQQDDAR0NjM4MBOkETAPMQ0wCwYD -VQQDDAR0NjM5MBOkETAPMQ0wCwYDVQQDDAR0NjQwMBOkETAPMQ0wCwYDVQQDDAR0 -NjQxMBOkETAPMQ0wCwYDVQQDDAR0NjQyMBOkETAPMQ0wCwYDVQQDDAR0NjQzMBOk -ETAPMQ0wCwYDVQQDDAR0NjQ0MBOkETAPMQ0wCwYDVQQDDAR0NjQ1MBOkETAPMQ0w -CwYDVQQDDAR0NjQ2MBOkETAPMQ0wCwYDVQQDDAR0NjQ3MBOkETAPMQ0wCwYDVQQD -DAR0NjQ4MBOkETAPMQ0wCwYDVQQDDAR0NjQ5MBOkETAPMQ0wCwYDVQQDDAR0NjUw -MBOkETAPMQ0wCwYDVQQDDAR0NjUxMBOkETAPMQ0wCwYDVQQDDAR0NjUyMBOkETAP -MQ0wCwYDVQQDDAR0NjUzMBOkETAPMQ0wCwYDVQQDDAR0NjU0MBOkETAPMQ0wCwYD -VQQDDAR0NjU1MBOkETAPMQ0wCwYDVQQDDAR0NjU2MBOkETAPMQ0wCwYDVQQDDAR0 -NjU3MBOkETAPMQ0wCwYDVQQDDAR0NjU4MBOkETAPMQ0wCwYDVQQDDAR0NjU5MBOk -ETAPMQ0wCwYDVQQDDAR0NjYwMBOkETAPMQ0wCwYDVQQDDAR0NjYxMBOkETAPMQ0w -CwYDVQQDDAR0NjYyMBOkETAPMQ0wCwYDVQQDDAR0NjYzMBOkETAPMQ0wCwYDVQQD -DAR0NjY0MBOkETAPMQ0wCwYDVQQDDAR0NjY1MBOkETAPMQ0wCwYDVQQDDAR0NjY2 -MBOkETAPMQ0wCwYDVQQDDAR0NjY3MBOkETAPMQ0wCwYDVQQDDAR0NjY4MBOkETAP -MQ0wCwYDVQQDDAR0NjY5MBOkETAPMQ0wCwYDVQQDDAR0NjcwMBOkETAPMQ0wCwYD -VQQDDAR0NjcxMBOkETAPMQ0wCwYDVQQDDAR0NjcyMBOkETAPMQ0wCwYDVQQDDAR0 -NjczMBOkETAPMQ0wCwYDVQQDDAR0Njc0MBOkETAPMQ0wCwYDVQQDDAR0Njc1MBOk -ETAPMQ0wCwYDVQQDDAR0Njc2MBOkETAPMQ0wCwYDVQQDDAR0Njc3MBOkETAPMQ0w -CwYDVQQDDAR0Njc4MBOkETAPMQ0wCwYDVQQDDAR0Njc5MBOkETAPMQ0wCwYDVQQD -DAR0NjgwMBOkETAPMQ0wCwYDVQQDDAR0NjgxMBOkETAPMQ0wCwYDVQQDDAR0Njgy -MBOkETAPMQ0wCwYDVQQDDAR0NjgzMBOkETAPMQ0wCwYDVQQDDAR0Njg0MBOkETAP -MQ0wCwYDVQQDDAR0Njg1MBOkETAPMQ0wCwYDVQQDDAR0Njg2MBOkETAPMQ0wCwYD -VQQDDAR0Njg3MBOkETAPMQ0wCwYDVQQDDAR0Njg4MBOkETAPMQ0wCwYDVQQDDAR0 -Njg5MBOkETAPMQ0wCwYDVQQDDAR0NjkwMBOkETAPMQ0wCwYDVQQDDAR0NjkxMBOk -ETAPMQ0wCwYDVQQDDAR0NjkyMBOkETAPMQ0wCwYDVQQDDAR0NjkzMBOkETAPMQ0w -CwYDVQQDDAR0Njk0MBOkETAPMQ0wCwYDVQQDDAR0Njk1MBOkETAPMQ0wCwYDVQQD -DAR0Njk2MBOkETAPMQ0wCwYDVQQDDAR0Njk3MBOkETAPMQ0wCwYDVQQDDAR0Njk4 -MBOkETAPMQ0wCwYDVQQDDAR0Njk5MBOkETAPMQ0wCwYDVQQDDAR0NzAwMBOkETAP -MQ0wCwYDVQQDDAR0NzAxMBOkETAPMQ0wCwYDVQQDDAR0NzAyMBOkETAPMQ0wCwYD -VQQDDAR0NzAzMBOkETAPMQ0wCwYDVQQDDAR0NzA0MBOkETAPMQ0wCwYDVQQDDAR0 -NzA1MBOkETAPMQ0wCwYDVQQDDAR0NzA2MBOkETAPMQ0wCwYDVQQDDAR0NzA3MBOk -ETAPMQ0wCwYDVQQDDAR0NzA4MBOkETAPMQ0wCwYDVQQDDAR0NzA5MBOkETAPMQ0w -CwYDVQQDDAR0NzEwMBOkETAPMQ0wCwYDVQQDDAR0NzExMBOkETAPMQ0wCwYDVQQD -DAR0NzEyMBOkETAPMQ0wCwYDVQQDDAR0NzEzMBOkETAPMQ0wCwYDVQQDDAR0NzE0 -MBOkETAPMQ0wCwYDVQQDDAR0NzE1MBOkETAPMQ0wCwYDVQQDDAR0NzE2MBOkETAP -MQ0wCwYDVQQDDAR0NzE3MBOkETAPMQ0wCwYDVQQDDAR0NzE4MBOkETAPMQ0wCwYD -VQQDDAR0NzE5MBOkETAPMQ0wCwYDVQQDDAR0NzIwMBOkETAPMQ0wCwYDVQQDDAR0 -NzIxMBOkETAPMQ0wCwYDVQQDDAR0NzIyMBOkETAPMQ0wCwYDVQQDDAR0NzIzMBOk -ETAPMQ0wCwYDVQQDDAR0NzI0MBOkETAPMQ0wCwYDVQQDDAR0NzI1MBOkETAPMQ0w -CwYDVQQDDAR0NzI2MBOkETAPMQ0wCwYDVQQDDAR0NzI3MBOkETAPMQ0wCwYDVQQD -DAR0NzI4MBOkETAPMQ0wCwYDVQQDDAR0NzI5MBOkETAPMQ0wCwYDVQQDDAR0NzMw -MBOkETAPMQ0wCwYDVQQDDAR0NzMxMBOkETAPMQ0wCwYDVQQDDAR0NzMyMBOkETAP -MQ0wCwYDVQQDDAR0NzMzMBOkETAPMQ0wCwYDVQQDDAR0NzM0MBOkETAPMQ0wCwYD -VQQDDAR0NzM1MBOkETAPMQ0wCwYDVQQDDAR0NzM2MBOkETAPMQ0wCwYDVQQDDAR0 -NzM3MBOkETAPMQ0wCwYDVQQDDAR0NzM4MBOkETAPMQ0wCwYDVQQDDAR0NzM5MBOk -ETAPMQ0wCwYDVQQDDAR0NzQwMBOkETAPMQ0wCwYDVQQDDAR0NzQxMBOkETAPMQ0w -CwYDVQQDDAR0NzQyMBOkETAPMQ0wCwYDVQQDDAR0NzQzMBOkETAPMQ0wCwYDVQQD -DAR0NzQ0MBOkETAPMQ0wCwYDVQQDDAR0NzQ1MBOkETAPMQ0wCwYDVQQDDAR0NzQ2 -MBOkETAPMQ0wCwYDVQQDDAR0NzQ3MBOkETAPMQ0wCwYDVQQDDAR0NzQ4MBOkETAP -MQ0wCwYDVQQDDAR0NzQ5MBOkETAPMQ0wCwYDVQQDDAR0NzUwMBOkETAPMQ0wCwYD -VQQDDAR0NzUxMBOkETAPMQ0wCwYDVQQDDAR0NzUyMBOkETAPMQ0wCwYDVQQDDAR0 -NzUzMBOkETAPMQ0wCwYDVQQDDAR0NzU0MBOkETAPMQ0wCwYDVQQDDAR0NzU1MBOk -ETAPMQ0wCwYDVQQDDAR0NzU2MBOkETAPMQ0wCwYDVQQDDAR0NzU3MBOkETAPMQ0w -CwYDVQQDDAR0NzU4MBOkETAPMQ0wCwYDVQQDDAR0NzU5MBOkETAPMQ0wCwYDVQQD -DAR0NzYwMBOkETAPMQ0wCwYDVQQDDAR0NzYxMBOkETAPMQ0wCwYDVQQDDAR0NzYy -MBOkETAPMQ0wCwYDVQQDDAR0NzYzMBOkETAPMQ0wCwYDVQQDDAR0NzY0MBOkETAP -MQ0wCwYDVQQDDAR0NzY1MBOkETAPMQ0wCwYDVQQDDAR0NzY2MBOkETAPMQ0wCwYD -VQQDDAR0NzY3MBOkETAPMQ0wCwYDVQQDDAR0NzY4MBOkETAPMQ0wCwYDVQQDDAR0 -NzY5MBOkETAPMQ0wCwYDVQQDDAR0NzcwMBOkETAPMQ0wCwYDVQQDDAR0NzcxMBOk -ETAPMQ0wCwYDVQQDDAR0NzcyMBOkETAPMQ0wCwYDVQQDDAR0NzczMBOkETAPMQ0w -CwYDVQQDDAR0Nzc0MBOkETAPMQ0wCwYDVQQDDAR0Nzc1MBOkETAPMQ0wCwYDVQQD -DAR0Nzc2MBOkETAPMQ0wCwYDVQQDDAR0Nzc3MBOkETAPMQ0wCwYDVQQDDAR0Nzc4 -MBOkETAPMQ0wCwYDVQQDDAR0Nzc5MBOkETAPMQ0wCwYDVQQDDAR0NzgwMBOkETAP -MQ0wCwYDVQQDDAR0NzgxMBOkETAPMQ0wCwYDVQQDDAR0NzgyMBOkETAPMQ0wCwYD -VQQDDAR0NzgzMBOkETAPMQ0wCwYDVQQDDAR0Nzg0MBOkETAPMQ0wCwYDVQQDDAR0 -Nzg1MBOkETAPMQ0wCwYDVQQDDAR0Nzg2MBOkETAPMQ0wCwYDVQQDDAR0Nzg3MBOk -ETAPMQ0wCwYDVQQDDAR0Nzg4MBOkETAPMQ0wCwYDVQQDDAR0Nzg5MBOkETAPMQ0w -CwYDVQQDDAR0NzkwMBOkETAPMQ0wCwYDVQQDDAR0NzkxMBOkETAPMQ0wCwYDVQQD -DAR0NzkyMBOkETAPMQ0wCwYDVQQDDAR0NzkzMBOkETAPMQ0wCwYDVQQDDAR0Nzk0 -MBOkETAPMQ0wCwYDVQQDDAR0Nzk1MBOkETAPMQ0wCwYDVQQDDAR0Nzk2MBOkETAP -MQ0wCwYDVQQDDAR0Nzk3MBOkETAPMQ0wCwYDVQQDDAR0Nzk4MBOkETAPMQ0wCwYD -VQQDDAR0Nzk5MBOkETAPMQ0wCwYDVQQDDAR0ODAwMBOkETAPMQ0wCwYDVQQDDAR0 -ODAxMBOkETAPMQ0wCwYDVQQDDAR0ODAyMBOkETAPMQ0wCwYDVQQDDAR0ODAzMBOk -ETAPMQ0wCwYDVQQDDAR0ODA0MBOkETAPMQ0wCwYDVQQDDAR0ODA1MBOkETAPMQ0w -CwYDVQQDDAR0ODA2MBOkETAPMQ0wCwYDVQQDDAR0ODA3MBOkETAPMQ0wCwYDVQQD -DAR0ODA4MBOkETAPMQ0wCwYDVQQDDAR0ODA5MBOkETAPMQ0wCwYDVQQDDAR0ODEw -MBOkETAPMQ0wCwYDVQQDDAR0ODExMBOkETAPMQ0wCwYDVQQDDAR0ODEyMBOkETAP -MQ0wCwYDVQQDDAR0ODEzMBOkETAPMQ0wCwYDVQQDDAR0ODE0MBOkETAPMQ0wCwYD -VQQDDAR0ODE1MBOkETAPMQ0wCwYDVQQDDAR0ODE2MBOkETAPMQ0wCwYDVQQDDAR0 -ODE3MBOkETAPMQ0wCwYDVQQDDAR0ODE4MBOkETAPMQ0wCwYDVQQDDAR0ODE5MBOk -ETAPMQ0wCwYDVQQDDAR0ODIwMBOkETAPMQ0wCwYDVQQDDAR0ODIxMBOkETAPMQ0w -CwYDVQQDDAR0ODIyMBOkETAPMQ0wCwYDVQQDDAR0ODIzMBOkETAPMQ0wCwYDVQQD -DAR0ODI0MBOkETAPMQ0wCwYDVQQDDAR0ODI1MBOkETAPMQ0wCwYDVQQDDAR0ODI2 -MBOkETAPMQ0wCwYDVQQDDAR0ODI3MBOkETAPMQ0wCwYDVQQDDAR0ODI4MBOkETAP -MQ0wCwYDVQQDDAR0ODI5MBOkETAPMQ0wCwYDVQQDDAR0ODMwMBOkETAPMQ0wCwYD -VQQDDAR0ODMxMBOkETAPMQ0wCwYDVQQDDAR0ODMyMBOkETAPMQ0wCwYDVQQDDAR0 -ODMzMBOkETAPMQ0wCwYDVQQDDAR0ODM0MBOkETAPMQ0wCwYDVQQDDAR0ODM1MBOk -ETAPMQ0wCwYDVQQDDAR0ODM2MBOkETAPMQ0wCwYDVQQDDAR0ODM3MBOkETAPMQ0w -CwYDVQQDDAR0ODM4MBOkETAPMQ0wCwYDVQQDDAR0ODM5MBOkETAPMQ0wCwYDVQQD -DAR0ODQwMBOkETAPMQ0wCwYDVQQDDAR0ODQxMBOkETAPMQ0wCwYDVQQDDAR0ODQy -MBOkETAPMQ0wCwYDVQQDDAR0ODQzMBOkETAPMQ0wCwYDVQQDDAR0ODQ0MBOkETAP -MQ0wCwYDVQQDDAR0ODQ1MBOkETAPMQ0wCwYDVQQDDAR0ODQ2MBOkETAPMQ0wCwYD -VQQDDAR0ODQ3MBOkETAPMQ0wCwYDVQQDDAR0ODQ4MBOkETAPMQ0wCwYDVQQDDAR0 -ODQ5MBOkETAPMQ0wCwYDVQQDDAR0ODUwMBOkETAPMQ0wCwYDVQQDDAR0ODUxMBOk -ETAPMQ0wCwYDVQQDDAR0ODUyMBOkETAPMQ0wCwYDVQQDDAR0ODUzMBOkETAPMQ0w -CwYDVQQDDAR0ODU0MBOkETAPMQ0wCwYDVQQDDAR0ODU1MBOkETAPMQ0wCwYDVQQD -DAR0ODU2MBOkETAPMQ0wCwYDVQQDDAR0ODU3MBOkETAPMQ0wCwYDVQQDDAR0ODU4 -MBOkETAPMQ0wCwYDVQQDDAR0ODU5MBOkETAPMQ0wCwYDVQQDDAR0ODYwMBOkETAP -MQ0wCwYDVQQDDAR0ODYxMBOkETAPMQ0wCwYDVQQDDAR0ODYyMBOkETAPMQ0wCwYD -VQQDDAR0ODYzMBOkETAPMQ0wCwYDVQQDDAR0ODY0MBOkETAPMQ0wCwYDVQQDDAR0 -ODY1MBOkETAPMQ0wCwYDVQQDDAR0ODY2MBOkETAPMQ0wCwYDVQQDDAR0ODY3MBOk -ETAPMQ0wCwYDVQQDDAR0ODY4MBOkETAPMQ0wCwYDVQQDDAR0ODY5MBOkETAPMQ0w -CwYDVQQDDAR0ODcwMBOkETAPMQ0wCwYDVQQDDAR0ODcxMBOkETAPMQ0wCwYDVQQD -DAR0ODcyMBOkETAPMQ0wCwYDVQQDDAR0ODczMBOkETAPMQ0wCwYDVQQDDAR0ODc0 -MBOkETAPMQ0wCwYDVQQDDAR0ODc1MBOkETAPMQ0wCwYDVQQDDAR0ODc2MBOkETAP -MQ0wCwYDVQQDDAR0ODc3MBOkETAPMQ0wCwYDVQQDDAR0ODc4MBOkETAPMQ0wCwYD -VQQDDAR0ODc5MBOkETAPMQ0wCwYDVQQDDAR0ODgwMBOkETAPMQ0wCwYDVQQDDAR0 -ODgxMBOkETAPMQ0wCwYDVQQDDAR0ODgyMBOkETAPMQ0wCwYDVQQDDAR0ODgzMBOk -ETAPMQ0wCwYDVQQDDAR0ODg0MBOkETAPMQ0wCwYDVQQDDAR0ODg1MBOkETAPMQ0w -CwYDVQQDDAR0ODg2MBOkETAPMQ0wCwYDVQQDDAR0ODg3MBOkETAPMQ0wCwYDVQQD -DAR0ODg4MBOkETAPMQ0wCwYDVQQDDAR0ODg5MBOkETAPMQ0wCwYDVQQDDAR0ODkw -MBOkETAPMQ0wCwYDVQQDDAR0ODkxMBOkETAPMQ0wCwYDVQQDDAR0ODkyMBOkETAP -MQ0wCwYDVQQDDAR0ODkzMBOkETAPMQ0wCwYDVQQDDAR0ODk0MBOkETAPMQ0wCwYD -VQQDDAR0ODk1MBOkETAPMQ0wCwYDVQQDDAR0ODk2MBOkETAPMQ0wCwYDVQQDDAR0 -ODk3MBOkETAPMQ0wCwYDVQQDDAR0ODk4MBOkETAPMQ0wCwYDVQQDDAR0ODk5MBOk -ETAPMQ0wCwYDVQQDDAR0OTAwMBOkETAPMQ0wCwYDVQQDDAR0OTAxMBOkETAPMQ0w -CwYDVQQDDAR0OTAyMBOkETAPMQ0wCwYDVQQDDAR0OTAzMBOkETAPMQ0wCwYDVQQD -DAR0OTA0MBOkETAPMQ0wCwYDVQQDDAR0OTA1MBOkETAPMQ0wCwYDVQQDDAR0OTA2 -MBOkETAPMQ0wCwYDVQQDDAR0OTA3MBOkETAPMQ0wCwYDVQQDDAR0OTA4MBOkETAP -MQ0wCwYDVQQDDAR0OTA5MBOkETAPMQ0wCwYDVQQDDAR0OTEwMBOkETAPMQ0wCwYD -VQQDDAR0OTExMBOkETAPMQ0wCwYDVQQDDAR0OTEyMBOkETAPMQ0wCwYDVQQDDAR0 -OTEzMBOkETAPMQ0wCwYDVQQDDAR0OTE0MBOkETAPMQ0wCwYDVQQDDAR0OTE1MBOk -ETAPMQ0wCwYDVQQDDAR0OTE2MBOkETAPMQ0wCwYDVQQDDAR0OTE3MBOkETAPMQ0w -CwYDVQQDDAR0OTE4MBOkETAPMQ0wCwYDVQQDDAR0OTE5MBOkETAPMQ0wCwYDVQQD -DAR0OTIwMBOkETAPMQ0wCwYDVQQDDAR0OTIxMBOkETAPMQ0wCwYDVQQDDAR0OTIy -MBOkETAPMQ0wCwYDVQQDDAR0OTIzMBOkETAPMQ0wCwYDVQQDDAR0OTI0MBOkETAP -MQ0wCwYDVQQDDAR0OTI1MBOkETAPMQ0wCwYDVQQDDAR0OTI2MBOkETAPMQ0wCwYD -VQQDDAR0OTI3MBOkETAPMQ0wCwYDVQQDDAR0OTI4MBOkETAPMQ0wCwYDVQQDDAR0 -OTI5MBOkETAPMQ0wCwYDVQQDDAR0OTMwMBOkETAPMQ0wCwYDVQQDDAR0OTMxMBOk -ETAPMQ0wCwYDVQQDDAR0OTMyMBOkETAPMQ0wCwYDVQQDDAR0OTMzMBOkETAPMQ0w -CwYDVQQDDAR0OTM0MBOkETAPMQ0wCwYDVQQDDAR0OTM1MBOkETAPMQ0wCwYDVQQD -DAR0OTM2MBOkETAPMQ0wCwYDVQQDDAR0OTM3MBOkETAPMQ0wCwYDVQQDDAR0OTM4 -MBOkETAPMQ0wCwYDVQQDDAR0OTM5MBOkETAPMQ0wCwYDVQQDDAR0OTQwMBOkETAP -MQ0wCwYDVQQDDAR0OTQxMBOkETAPMQ0wCwYDVQQDDAR0OTQyMBOkETAPMQ0wCwYD -VQQDDAR0OTQzMBOkETAPMQ0wCwYDVQQDDAR0OTQ0MBOkETAPMQ0wCwYDVQQDDAR0 -OTQ1MBOkETAPMQ0wCwYDVQQDDAR0OTQ2MBOkETAPMQ0wCwYDVQQDDAR0OTQ3MBOk -ETAPMQ0wCwYDVQQDDAR0OTQ4MBOkETAPMQ0wCwYDVQQDDAR0OTQ5MBOkETAPMQ0w -CwYDVQQDDAR0OTUwMBOkETAPMQ0wCwYDVQQDDAR0OTUxMBOkETAPMQ0wCwYDVQQD -DAR0OTUyMBOkETAPMQ0wCwYDVQQDDAR0OTUzMBOkETAPMQ0wCwYDVQQDDAR0OTU0 -MBOkETAPMQ0wCwYDVQQDDAR0OTU1MBOkETAPMQ0wCwYDVQQDDAR0OTU2MBOkETAP -MQ0wCwYDVQQDDAR0OTU3MBOkETAPMQ0wCwYDVQQDDAR0OTU4MBOkETAPMQ0wCwYD -VQQDDAR0OTU5MBOkETAPMQ0wCwYDVQQDDAR0OTYwMBOkETAPMQ0wCwYDVQQDDAR0 -OTYxMBOkETAPMQ0wCwYDVQQDDAR0OTYyMBOkETAPMQ0wCwYDVQQDDAR0OTYzMBOk -ETAPMQ0wCwYDVQQDDAR0OTY0MBOkETAPMQ0wCwYDVQQDDAR0OTY1MBOkETAPMQ0w -CwYDVQQDDAR0OTY2MBOkETAPMQ0wCwYDVQQDDAR0OTY3MBOkETAPMQ0wCwYDVQQD -DAR0OTY4MBOkETAPMQ0wCwYDVQQDDAR0OTY5MBOkETAPMQ0wCwYDVQQDDAR0OTcw -MBOkETAPMQ0wCwYDVQQDDAR0OTcxMBOkETAPMQ0wCwYDVQQDDAR0OTcyMBOkETAP -MQ0wCwYDVQQDDAR0OTczMBOkETAPMQ0wCwYDVQQDDAR0OTc0MBOkETAPMQ0wCwYD -VQQDDAR0OTc1MBOkETAPMQ0wCwYDVQQDDAR0OTc2MBOkETAPMQ0wCwYDVQQDDAR0 -OTc3MBOkETAPMQ0wCwYDVQQDDAR0OTc4MBOkETAPMQ0wCwYDVQQDDAR0OTc5MBOk -ETAPMQ0wCwYDVQQDDAR0OTgwMBOkETAPMQ0wCwYDVQQDDAR0OTgxMBOkETAPMQ0w -CwYDVQQDDAR0OTgyMBOkETAPMQ0wCwYDVQQDDAR0OTgzMBOkETAPMQ0wCwYDVQQD -DAR0OTg0MBOkETAPMQ0wCwYDVQQDDAR0OTg1MBOkETAPMQ0wCwYDVQQDDAR0OTg2 -MBOkETAPMQ0wCwYDVQQDDAR0OTg3MBOkETAPMQ0wCwYDVQQDDAR0OTg4MBOkETAP -MQ0wCwYDVQQDDAR0OTg5MBOkETAPMQ0wCwYDVQQDDAR0OTkwMBOkETAPMQ0wCwYD -VQQDDAR0OTkxMBOkETAPMQ0wCwYDVQQDDAR0OTkyMBOkETAPMQ0wCwYDVQQDDAR0 -OTkzMBOkETAPMQ0wCwYDVQQDDAR0OTk0MBOkETAPMQ0wCwYDVQQDDAR0OTk1MBOk -ETAPMQ0wCwYDVQQDDAR0OTk2MBOkETAPMQ0wCwYDVQQDDAR0OTk3MBOkETAPMQ0w -CwYDVQQDDAR0OTk4MBOkETAPMQ0wCwYDVQQDDAR0OTk5MBSkEjAQMQ4wDAYDVQQD -DAV0MTAwMDAUpBIwEDEOMAwGA1UEAwwFdDEwMDEwFKQSMBAxDjAMBgNVBAMMBXQx -MDAyMBSkEjAQMQ4wDAYDVQQDDAV0MTAwMzAUpBIwEDEOMAwGA1UEAwwFdDEwMDQw -FKQSMBAxDjAMBgNVBAMMBXQxMDA1MBSkEjAQMQ4wDAYDVQQDDAV0MTAwNjAUpBIw -EDEOMAwGA1UEAwwFdDEwMDcwFKQSMBAxDjAMBgNVBAMMBXQxMDA4MBSkEjAQMQ4w -DAYDVQQDDAV0MTAwOTAUpBIwEDEOMAwGA1UEAwwFdDEwMTAwFKQSMBAxDjAMBgNV -BAMMBXQxMDExMBSkEjAQMQ4wDAYDVQQDDAV0MTAxMjAUpBIwEDEOMAwGA1UEAwwF -dDEwMTMwFKQSMBAxDjAMBgNVBAMMBXQxMDE0MBSkEjAQMQ4wDAYDVQQDDAV0MTAx -NTAUpBIwEDEOMAwGA1UEAwwFdDEwMTYwFKQSMBAxDjAMBgNVBAMMBXQxMDE3MBSk -EjAQMQ4wDAYDVQQDDAV0MTAxODAUpBIwEDEOMAwGA1UEAwwFdDEwMTkwFKQSMBAx -DjAMBgNVBAMMBXQxMDIwMBSkEjAQMQ4wDAYDVQQDDAV0MTAyMTAUpBIwEDEOMAwG -A1UEAwwFdDEwMjIwFKQSMBAxDjAMBgNVBAMMBXQxMDIzMBSkEjAQMQ4wDAYDVQQD -DAV0MTAyNDANBgkqhkiG9w0BAQsFAAOCAQEAEs5g1ju1fnqOntD1/aiKMySVbXlW -JCMSEI8SfOATmbptubJRtMxQLAYouNEYGhbmA7R/zbf2BnvCd5dSdo+B0fYsCOJw -J3Y/kKdS8xXwH0CXmfv6msHrEPqgdN/x34rSS2cRL1ypUnhp6EshvvKpZWLMDtlZ -jnrKXwFB2dLpiV+8PIy7T5CABgU3vgwfqFaC55ItxYlW2NSGnYq8XkPTB2Xa1Ah1 -J+VJDun4VCt6U5k3KZvqFN6AaKl5Jl5k/yFs2oPvj6TfOiBuXNNoSIKruaxKKLYv -NRSYVBao+u4ww7rFLTO8Mq6WxooXSTJ41GEpZn91rhYugbK5+lax1caedw== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.cnf deleted file mode 100644 index d771260c0f..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.cnf +++ /dev/null @@ -1,4167 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Intermediate" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,keyCertSign,cRLSign -basicConstraints = critical,CA:true -nameConstraints = @nameConstraints_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Intermediate.pem -new_certs_dir = out -serial = out/Intermediate.serial -database = out/Intermediate.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Intermediate.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Intermediate.cer - -[crl_info] -URI.0 = http://url-for-crl/Intermediate.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[nameConstraints_info] -excluded;DNS.1 = x0.test -excluded;DNS.2 = x1.test -excluded;DNS.3 = x2.test -excluded;DNS.4 = x3.test -excluded;DNS.5 = x4.test -excluded;DNS.6 = x5.test -excluded;DNS.7 = x6.test -excluded;DNS.8 = x7.test -excluded;DNS.9 = x8.test -excluded;DNS.10 = x9.test -excluded;DNS.11 = x10.test -excluded;DNS.12 = x11.test -excluded;DNS.13 = x12.test -excluded;DNS.14 = x13.test -excluded;DNS.15 = x14.test -excluded;DNS.16 = x15.test -excluded;DNS.17 = x16.test -excluded;DNS.18 = x17.test -excluded;DNS.19 = x18.test -excluded;DNS.20 = x19.test -excluded;DNS.21 = x20.test -excluded;DNS.22 = x21.test -excluded;DNS.23 = x22.test -excluded;DNS.24 = x23.test -excluded;DNS.25 = x24.test -excluded;DNS.26 = x25.test -excluded;DNS.27 = x26.test -excluded;DNS.28 = x27.test -excluded;DNS.29 = x28.test -excluded;DNS.30 = x29.test -excluded;DNS.31 = x30.test -excluded;DNS.32 = x31.test -excluded;DNS.33 = x32.test -excluded;DNS.34 = x33.test -excluded;DNS.35 = x34.test -excluded;DNS.36 = x35.test -excluded;DNS.37 = x36.test -excluded;DNS.38 = x37.test -excluded;DNS.39 = x38.test -excluded;DNS.40 = x39.test -excluded;DNS.41 = x40.test -excluded;DNS.42 = x41.test -excluded;DNS.43 = x42.test -excluded;DNS.44 = x43.test -excluded;DNS.45 = x44.test -excluded;DNS.46 = x45.test -excluded;DNS.47 = x46.test -excluded;DNS.48 = x47.test -excluded;DNS.49 = x48.test -excluded;DNS.50 = x49.test -excluded;DNS.51 = x50.test -excluded;DNS.52 = x51.test -excluded;DNS.53 = x52.test -excluded;DNS.54 = x53.test -excluded;DNS.55 = x54.test -excluded;DNS.56 = x55.test -excluded;DNS.57 = x56.test -excluded;DNS.58 = x57.test -excluded;DNS.59 = x58.test -excluded;DNS.60 = x59.test -excluded;DNS.61 = x60.test -excluded;DNS.62 = x61.test -excluded;DNS.63 = x62.test -excluded;DNS.64 = x63.test -excluded;DNS.65 = x64.test -excluded;DNS.66 = x65.test -excluded;DNS.67 = x66.test -excluded;DNS.68 = x67.test -excluded;DNS.69 = x68.test -excluded;DNS.70 = x69.test -excluded;DNS.71 = x70.test -excluded;DNS.72 = x71.test -excluded;DNS.73 = x72.test -excluded;DNS.74 = x73.test -excluded;DNS.75 = x74.test -excluded;DNS.76 = x75.test -excluded;DNS.77 = x76.test -excluded;DNS.78 = x77.test -excluded;DNS.79 = x78.test -excluded;DNS.80 = x79.test -excluded;DNS.81 = x80.test -excluded;DNS.82 = x81.test -excluded;DNS.83 = x82.test -excluded;DNS.84 = x83.test -excluded;DNS.85 = x84.test -excluded;DNS.86 = x85.test -excluded;DNS.87 = x86.test -excluded;DNS.88 = x87.test -excluded;DNS.89 = x88.test -excluded;DNS.90 = x89.test -excluded;DNS.91 = x90.test -excluded;DNS.92 = x91.test -excluded;DNS.93 = x92.test -excluded;DNS.94 = x93.test -excluded;DNS.95 = x94.test -excluded;DNS.96 = x95.test -excluded;DNS.97 = x96.test -excluded;DNS.98 = x97.test -excluded;DNS.99 = x98.test -excluded;DNS.100 = x99.test -excluded;DNS.101 = x100.test -excluded;DNS.102 = x101.test -excluded;DNS.103 = x102.test -excluded;DNS.104 = x103.test -excluded;DNS.105 = x104.test -excluded;DNS.106 = x105.test -excluded;DNS.107 = x106.test -excluded;DNS.108 = x107.test -excluded;DNS.109 = x108.test -excluded;DNS.110 = x109.test -excluded;DNS.111 = x110.test -excluded;DNS.112 = x111.test -excluded;DNS.113 = x112.test -excluded;DNS.114 = x113.test -excluded;DNS.115 = x114.test -excluded;DNS.116 = x115.test -excluded;DNS.117 = x116.test -excluded;DNS.118 = x117.test -excluded;DNS.119 = x118.test -excluded;DNS.120 = x119.test -excluded;DNS.121 = x120.test -excluded;DNS.122 = x121.test -excluded;DNS.123 = x122.test -excluded;DNS.124 = x123.test -excluded;DNS.125 = x124.test -excluded;DNS.126 = x125.test -excluded;DNS.127 = x126.test -excluded;DNS.128 = x127.test -excluded;DNS.129 = x128.test -excluded;DNS.130 = x129.test -excluded;DNS.131 = x130.test -excluded;DNS.132 = x131.test -excluded;DNS.133 = x132.test -excluded;DNS.134 = x133.test -excluded;DNS.135 = x134.test -excluded;DNS.136 = x135.test -excluded;DNS.137 = x136.test -excluded;DNS.138 = x137.test -excluded;DNS.139 = x138.test -excluded;DNS.140 = x139.test -excluded;DNS.141 = x140.test -excluded;DNS.142 = x141.test -excluded;DNS.143 = x142.test -excluded;DNS.144 = x143.test -excluded;DNS.145 = x144.test -excluded;DNS.146 = x145.test -excluded;DNS.147 = x146.test -excluded;DNS.148 = x147.test -excluded;DNS.149 = x148.test -excluded;DNS.150 = x149.test -excluded;DNS.151 = x150.test -excluded;DNS.152 = x151.test -excluded;DNS.153 = x152.test -excluded;DNS.154 = x153.test -excluded;DNS.155 = x154.test -excluded;DNS.156 = x155.test -excluded;DNS.157 = x156.test -excluded;DNS.158 = x157.test -excluded;DNS.159 = x158.test -excluded;DNS.160 = x159.test -excluded;DNS.161 = x160.test -excluded;DNS.162 = x161.test -excluded;DNS.163 = x162.test -excluded;DNS.164 = x163.test -excluded;DNS.165 = x164.test -excluded;DNS.166 = x165.test -excluded;DNS.167 = x166.test -excluded;DNS.168 = x167.test -excluded;DNS.169 = x168.test -excluded;DNS.170 = x169.test -excluded;IP.1 = 11.0.0.0/255.255.255.255 -excluded;IP.2 = 11.0.0.1/255.255.255.255 -excluded;IP.3 = 11.0.0.2/255.255.255.255 -excluded;IP.4 = 11.0.0.3/255.255.255.255 -excluded;IP.5 = 11.0.0.4/255.255.255.255 -excluded;IP.6 = 11.0.0.5/255.255.255.255 -excluded;IP.7 = 11.0.0.6/255.255.255.255 -excluded;IP.8 = 11.0.0.7/255.255.255.255 -excluded;IP.9 = 11.0.0.8/255.255.255.255 -excluded;IP.10 = 11.0.0.9/255.255.255.255 -excluded;IP.11 = 11.0.0.10/255.255.255.255 -excluded;IP.12 = 11.0.0.11/255.255.255.255 -excluded;IP.13 = 11.0.0.12/255.255.255.255 -excluded;IP.14 = 11.0.0.13/255.255.255.255 -excluded;IP.15 = 11.0.0.14/255.255.255.255 -excluded;IP.16 = 11.0.0.15/255.255.255.255 -excluded;IP.17 = 11.0.0.16/255.255.255.255 -excluded;IP.18 = 11.0.0.17/255.255.255.255 -excluded;IP.19 = 11.0.0.18/255.255.255.255 -excluded;IP.20 = 11.0.0.19/255.255.255.255 -excluded;IP.21 = 11.0.0.20/255.255.255.255 -excluded;IP.22 = 11.0.0.21/255.255.255.255 -excluded;IP.23 = 11.0.0.22/255.255.255.255 -excluded;IP.24 = 11.0.0.23/255.255.255.255 -excluded;IP.25 = 11.0.0.24/255.255.255.255 -excluded;IP.26 = 11.0.0.25/255.255.255.255 -excluded;IP.27 = 11.0.0.26/255.255.255.255 -excluded;IP.28 = 11.0.0.27/255.255.255.255 -excluded;IP.29 = 11.0.0.28/255.255.255.255 -excluded;IP.30 = 11.0.0.29/255.255.255.255 -excluded;IP.31 = 11.0.0.30/255.255.255.255 -excluded;IP.32 = 11.0.0.31/255.255.255.255 -excluded;IP.33 = 11.0.0.32/255.255.255.255 -excluded;IP.34 = 11.0.0.33/255.255.255.255 -excluded;IP.35 = 11.0.0.34/255.255.255.255 -excluded;IP.36 = 11.0.0.35/255.255.255.255 -excluded;IP.37 = 11.0.0.36/255.255.255.255 -excluded;IP.38 = 11.0.0.37/255.255.255.255 -excluded;IP.39 = 11.0.0.38/255.255.255.255 -excluded;IP.40 = 11.0.0.39/255.255.255.255 -excluded;IP.41 = 11.0.0.40/255.255.255.255 -excluded;IP.42 = 11.0.0.41/255.255.255.255 -excluded;IP.43 = 11.0.0.42/255.255.255.255 -excluded;IP.44 = 11.0.0.43/255.255.255.255 -excluded;IP.45 = 11.0.0.44/255.255.255.255 -excluded;IP.46 = 11.0.0.45/255.255.255.255 -excluded;IP.47 = 11.0.0.46/255.255.255.255 -excluded;IP.48 = 11.0.0.47/255.255.255.255 -excluded;IP.49 = 11.0.0.48/255.255.255.255 -excluded;IP.50 = 11.0.0.49/255.255.255.255 -excluded;IP.51 = 11.0.0.50/255.255.255.255 -excluded;IP.52 = 11.0.0.51/255.255.255.255 -excluded;IP.53 = 11.0.0.52/255.255.255.255 -excluded;IP.54 = 11.0.0.53/255.255.255.255 -excluded;IP.55 = 11.0.0.54/255.255.255.255 -excluded;IP.56 = 11.0.0.55/255.255.255.255 -excluded;IP.57 = 11.0.0.56/255.255.255.255 -excluded;IP.58 = 11.0.0.57/255.255.255.255 -excluded;IP.59 = 11.0.0.58/255.255.255.255 -excluded;IP.60 = 11.0.0.59/255.255.255.255 -excluded;IP.61 = 11.0.0.60/255.255.255.255 -excluded;IP.62 = 11.0.0.61/255.255.255.255 -excluded;IP.63 = 11.0.0.62/255.255.255.255 -excluded;IP.64 = 11.0.0.63/255.255.255.255 -excluded;IP.65 = 11.0.0.64/255.255.255.255 -excluded;IP.66 = 11.0.0.65/255.255.255.255 -excluded;IP.67 = 11.0.0.66/255.255.255.255 -excluded;IP.68 = 11.0.0.67/255.255.255.255 -excluded;IP.69 = 11.0.0.68/255.255.255.255 -excluded;IP.70 = 11.0.0.69/255.255.255.255 -excluded;IP.71 = 11.0.0.70/255.255.255.255 -excluded;IP.72 = 11.0.0.71/255.255.255.255 -excluded;IP.73 = 11.0.0.72/255.255.255.255 -excluded;IP.74 = 11.0.0.73/255.255.255.255 -excluded;IP.75 = 11.0.0.74/255.255.255.255 -excluded;IP.76 = 11.0.0.75/255.255.255.255 -excluded;IP.77 = 11.0.0.76/255.255.255.255 -excluded;IP.78 = 11.0.0.77/255.255.255.255 -excluded;IP.79 = 11.0.0.78/255.255.255.255 -excluded;IP.80 = 11.0.0.79/255.255.255.255 -excluded;IP.81 = 11.0.0.80/255.255.255.255 -excluded;IP.82 = 11.0.0.81/255.255.255.255 -excluded;IP.83 = 11.0.0.82/255.255.255.255 -excluded;IP.84 = 11.0.0.83/255.255.255.255 -excluded;IP.85 = 11.0.0.84/255.255.255.255 -excluded;IP.86 = 11.0.0.85/255.255.255.255 -excluded;IP.87 = 11.0.0.86/255.255.255.255 -excluded;IP.88 = 11.0.0.87/255.255.255.255 -excluded;IP.89 = 11.0.0.88/255.255.255.255 -excluded;IP.90 = 11.0.0.89/255.255.255.255 -excluded;IP.91 = 11.0.0.90/255.255.255.255 -excluded;IP.92 = 11.0.0.91/255.255.255.255 -excluded;IP.93 = 11.0.0.92/255.255.255.255 -excluded;IP.94 = 11.0.0.93/255.255.255.255 -excluded;IP.95 = 11.0.0.94/255.255.255.255 -excluded;IP.96 = 11.0.0.95/255.255.255.255 -excluded;IP.97 = 11.0.0.96/255.255.255.255 -excluded;IP.98 = 11.0.0.97/255.255.255.255 -excluded;IP.99 = 11.0.0.98/255.255.255.255 -excluded;IP.100 = 11.0.0.99/255.255.255.255 -excluded;IP.101 = 11.0.0.100/255.255.255.255 -excluded;IP.102 = 11.0.0.101/255.255.255.255 -excluded;IP.103 = 11.0.0.102/255.255.255.255 -excluded;IP.104 = 11.0.0.103/255.255.255.255 -excluded;IP.105 = 11.0.0.104/255.255.255.255 -excluded;IP.106 = 11.0.0.105/255.255.255.255 -excluded;IP.107 = 11.0.0.106/255.255.255.255 -excluded;IP.108 = 11.0.0.107/255.255.255.255 -excluded;IP.109 = 11.0.0.108/255.255.255.255 -excluded;IP.110 = 11.0.0.109/255.255.255.255 -excluded;IP.111 = 11.0.0.110/255.255.255.255 -excluded;IP.112 = 11.0.0.111/255.255.255.255 -excluded;IP.113 = 11.0.0.112/255.255.255.255 -excluded;IP.114 = 11.0.0.113/255.255.255.255 -excluded;IP.115 = 11.0.0.114/255.255.255.255 -excluded;IP.116 = 11.0.0.115/255.255.255.255 -excluded;IP.117 = 11.0.0.116/255.255.255.255 -excluded;IP.118 = 11.0.0.117/255.255.255.255 -excluded;IP.119 = 11.0.0.118/255.255.255.255 -excluded;IP.120 = 11.0.0.119/255.255.255.255 -excluded;IP.121 = 11.0.0.120/255.255.255.255 -excluded;IP.122 = 11.0.0.121/255.255.255.255 -excluded;IP.123 = 11.0.0.122/255.255.255.255 -excluded;IP.124 = 11.0.0.123/255.255.255.255 -excluded;IP.125 = 11.0.0.124/255.255.255.255 -excluded;IP.126 = 11.0.0.125/255.255.255.255 -excluded;IP.127 = 11.0.0.126/255.255.255.255 -excluded;IP.128 = 11.0.0.127/255.255.255.255 -excluded;IP.129 = 11.0.0.128/255.255.255.255 -excluded;IP.130 = 11.0.0.129/255.255.255.255 -excluded;IP.131 = 11.0.0.130/255.255.255.255 -excluded;IP.132 = 11.0.0.131/255.255.255.255 -excluded;IP.133 = 11.0.0.132/255.255.255.255 -excluded;IP.134 = 11.0.0.133/255.255.255.255 -excluded;IP.135 = 11.0.0.134/255.255.255.255 -excluded;IP.136 = 11.0.0.135/255.255.255.255 -excluded;IP.137 = 11.0.0.136/255.255.255.255 -excluded;IP.138 = 11.0.0.137/255.255.255.255 -excluded;IP.139 = 11.0.0.138/255.255.255.255 -excluded;IP.140 = 11.0.0.139/255.255.255.255 -excluded;IP.141 = 11.0.0.140/255.255.255.255 -excluded;IP.142 = 11.0.0.141/255.255.255.255 -excluded;IP.143 = 11.0.0.142/255.255.255.255 -excluded;IP.144 = 11.0.0.143/255.255.255.255 -excluded;IP.145 = 11.0.0.144/255.255.255.255 -excluded;IP.146 = 11.0.0.145/255.255.255.255 -excluded;IP.147 = 11.0.0.146/255.255.255.255 -excluded;IP.148 = 11.0.0.147/255.255.255.255 -excluded;IP.149 = 11.0.0.148/255.255.255.255 -excluded;IP.150 = 11.0.0.149/255.255.255.255 -excluded;IP.151 = 11.0.0.150/255.255.255.255 -excluded;IP.152 = 11.0.0.151/255.255.255.255 -excluded;IP.153 = 11.0.0.152/255.255.255.255 -excluded;IP.154 = 11.0.0.153/255.255.255.255 -excluded;IP.155 = 11.0.0.154/255.255.255.255 -excluded;IP.156 = 11.0.0.155/255.255.255.255 -excluded;IP.157 = 11.0.0.156/255.255.255.255 -excluded;IP.158 = 11.0.0.157/255.255.255.255 -excluded;IP.159 = 11.0.0.158/255.255.255.255 -excluded;IP.160 = 11.0.0.159/255.255.255.255 -excluded;IP.161 = 11.0.0.160/255.255.255.255 -excluded;IP.162 = 11.0.0.161/255.255.255.255 -excluded;IP.163 = 11.0.0.162/255.255.255.255 -excluded;IP.164 = 11.0.0.163/255.255.255.255 -excluded;IP.165 = 11.0.0.164/255.255.255.255 -excluded;IP.166 = 11.0.0.165/255.255.255.255 -excluded;IP.167 = 11.0.0.166/255.255.255.255 -excluded;IP.168 = 11.0.0.167/255.255.255.255 -excluded;IP.169 = 11.0.0.168/255.255.255.255 -excluded;IP.170 = 11.0.0.169/255.255.255.255 -excluded;dirName.1 = nameConstraints_dirname_x1 -excluded;dirName.2 = nameConstraints_dirname_x2 -excluded;dirName.3 = nameConstraints_dirname_x3 -excluded;dirName.4 = nameConstraints_dirname_x4 -excluded;dirName.5 = nameConstraints_dirname_x5 -excluded;dirName.6 = nameConstraints_dirname_x6 -excluded;dirName.7 = nameConstraints_dirname_x7 -excluded;dirName.8 = nameConstraints_dirname_x8 -excluded;dirName.9 = nameConstraints_dirname_x9 -excluded;dirName.10 = nameConstraints_dirname_x10 -excluded;dirName.11 = nameConstraints_dirname_x11 -excluded;dirName.12 = nameConstraints_dirname_x12 -excluded;dirName.13 = nameConstraints_dirname_x13 -excluded;dirName.14 = nameConstraints_dirname_x14 -excluded;dirName.15 = nameConstraints_dirname_x15 -excluded;dirName.16 = nameConstraints_dirname_x16 -excluded;dirName.17 = nameConstraints_dirname_x17 -excluded;dirName.18 = nameConstraints_dirname_x18 -excluded;dirName.19 = nameConstraints_dirname_x19 -excluded;dirName.20 = nameConstraints_dirname_x20 -excluded;dirName.21 = nameConstraints_dirname_x21 -excluded;dirName.22 = nameConstraints_dirname_x22 -excluded;dirName.23 = nameConstraints_dirname_x23 -excluded;dirName.24 = nameConstraints_dirname_x24 -excluded;dirName.25 = nameConstraints_dirname_x25 -excluded;dirName.26 = nameConstraints_dirname_x26 -excluded;dirName.27 = nameConstraints_dirname_x27 -excluded;dirName.28 = nameConstraints_dirname_x28 -excluded;dirName.29 = nameConstraints_dirname_x29 -excluded;dirName.30 = nameConstraints_dirname_x30 -excluded;dirName.31 = nameConstraints_dirname_x31 -excluded;dirName.32 = nameConstraints_dirname_x32 -excluded;dirName.33 = nameConstraints_dirname_x33 -excluded;dirName.34 = nameConstraints_dirname_x34 -excluded;dirName.35 = nameConstraints_dirname_x35 -excluded;dirName.36 = nameConstraints_dirname_x36 -excluded;dirName.37 = nameConstraints_dirname_x37 -excluded;dirName.38 = nameConstraints_dirname_x38 -excluded;dirName.39 = nameConstraints_dirname_x39 -excluded;dirName.40 = nameConstraints_dirname_x40 -excluded;dirName.41 = nameConstraints_dirname_x41 -excluded;dirName.42 = nameConstraints_dirname_x42 -excluded;dirName.43 = nameConstraints_dirname_x43 -excluded;dirName.44 = nameConstraints_dirname_x44 -excluded;dirName.45 = nameConstraints_dirname_x45 -excluded;dirName.46 = nameConstraints_dirname_x46 -excluded;dirName.47 = nameConstraints_dirname_x47 -excluded;dirName.48 = nameConstraints_dirname_x48 -excluded;dirName.49 = nameConstraints_dirname_x49 -excluded;dirName.50 = nameConstraints_dirname_x50 -excluded;dirName.51 = nameConstraints_dirname_x51 -excluded;dirName.52 = nameConstraints_dirname_x52 -excluded;dirName.53 = nameConstraints_dirname_x53 -excluded;dirName.54 = nameConstraints_dirname_x54 -excluded;dirName.55 = nameConstraints_dirname_x55 -excluded;dirName.56 = nameConstraints_dirname_x56 -excluded;dirName.57 = nameConstraints_dirname_x57 -excluded;dirName.58 = nameConstraints_dirname_x58 -excluded;dirName.59 = nameConstraints_dirname_x59 -excluded;dirName.60 = nameConstraints_dirname_x60 -excluded;dirName.61 = nameConstraints_dirname_x61 -excluded;dirName.62 = nameConstraints_dirname_x62 -excluded;dirName.63 = nameConstraints_dirname_x63 -excluded;dirName.64 = nameConstraints_dirname_x64 -excluded;dirName.65 = nameConstraints_dirname_x65 -excluded;dirName.66 = nameConstraints_dirname_x66 -excluded;dirName.67 = nameConstraints_dirname_x67 -excluded;dirName.68 = nameConstraints_dirname_x68 -excluded;dirName.69 = nameConstraints_dirname_x69 -excluded;dirName.70 = nameConstraints_dirname_x70 -excluded;dirName.71 = nameConstraints_dirname_x71 -excluded;dirName.72 = nameConstraints_dirname_x72 -excluded;dirName.73 = nameConstraints_dirname_x73 -excluded;dirName.74 = nameConstraints_dirname_x74 -excluded;dirName.75 = nameConstraints_dirname_x75 -excluded;dirName.76 = nameConstraints_dirname_x76 -excluded;dirName.77 = nameConstraints_dirname_x77 -excluded;dirName.78 = nameConstraints_dirname_x78 -excluded;dirName.79 = nameConstraints_dirname_x79 -excluded;dirName.80 = nameConstraints_dirname_x80 -excluded;dirName.81 = nameConstraints_dirname_x81 -excluded;dirName.82 = nameConstraints_dirname_x82 -excluded;dirName.83 = nameConstraints_dirname_x83 -excluded;dirName.84 = nameConstraints_dirname_x84 -excluded;dirName.85 = nameConstraints_dirname_x85 -excluded;dirName.86 = nameConstraints_dirname_x86 -excluded;dirName.87 = nameConstraints_dirname_x87 -excluded;dirName.88 = nameConstraints_dirname_x88 -excluded;dirName.89 = nameConstraints_dirname_x89 -excluded;dirName.90 = nameConstraints_dirname_x90 -excluded;dirName.91 = nameConstraints_dirname_x91 -excluded;dirName.92 = nameConstraints_dirname_x92 -excluded;dirName.93 = nameConstraints_dirname_x93 -excluded;dirName.94 = nameConstraints_dirname_x94 -excluded;dirName.95 = nameConstraints_dirname_x95 -excluded;dirName.96 = nameConstraints_dirname_x96 -excluded;dirName.97 = nameConstraints_dirname_x97 -excluded;dirName.98 = nameConstraints_dirname_x98 -excluded;dirName.99 = nameConstraints_dirname_x99 -excluded;dirName.100 = nameConstraints_dirname_x100 -excluded;dirName.101 = nameConstraints_dirname_x101 -excluded;dirName.102 = nameConstraints_dirname_x102 -excluded;dirName.103 = nameConstraints_dirname_x103 -excluded;dirName.104 = nameConstraints_dirname_x104 -excluded;dirName.105 = nameConstraints_dirname_x105 -excluded;dirName.106 = nameConstraints_dirname_x106 -excluded;dirName.107 = nameConstraints_dirname_x107 -excluded;dirName.108 = nameConstraints_dirname_x108 -excluded;dirName.109 = nameConstraints_dirname_x109 -excluded;dirName.110 = nameConstraints_dirname_x110 -excluded;dirName.111 = nameConstraints_dirname_x111 -excluded;dirName.112 = nameConstraints_dirname_x112 -excluded;dirName.113 = nameConstraints_dirname_x113 -excluded;dirName.114 = nameConstraints_dirname_x114 -excluded;dirName.115 = nameConstraints_dirname_x115 -excluded;dirName.116 = nameConstraints_dirname_x116 -excluded;dirName.117 = nameConstraints_dirname_x117 -excluded;dirName.118 = nameConstraints_dirname_x118 -excluded;dirName.119 = nameConstraints_dirname_x119 -excluded;dirName.120 = nameConstraints_dirname_x120 -excluded;dirName.121 = nameConstraints_dirname_x121 -excluded;dirName.122 = nameConstraints_dirname_x122 -excluded;dirName.123 = nameConstraints_dirname_x123 -excluded;dirName.124 = nameConstraints_dirname_x124 -excluded;dirName.125 = nameConstraints_dirname_x125 -excluded;dirName.126 = nameConstraints_dirname_x126 -excluded;dirName.127 = nameConstraints_dirname_x127 -excluded;dirName.128 = nameConstraints_dirname_x128 -excluded;dirName.129 = nameConstraints_dirname_x129 -excluded;dirName.130 = nameConstraints_dirname_x130 -excluded;dirName.131 = nameConstraints_dirname_x131 -excluded;dirName.132 = nameConstraints_dirname_x132 -excluded;dirName.133 = nameConstraints_dirname_x133 -excluded;dirName.134 = nameConstraints_dirname_x134 -excluded;dirName.135 = nameConstraints_dirname_x135 -excluded;dirName.136 = nameConstraints_dirname_x136 -excluded;dirName.137 = nameConstraints_dirname_x137 -excluded;dirName.138 = nameConstraints_dirname_x138 -excluded;dirName.139 = nameConstraints_dirname_x139 -excluded;dirName.140 = nameConstraints_dirname_x140 -excluded;dirName.141 = nameConstraints_dirname_x141 -excluded;dirName.142 = nameConstraints_dirname_x142 -excluded;dirName.143 = nameConstraints_dirname_x143 -excluded;dirName.144 = nameConstraints_dirname_x144 -excluded;dirName.145 = nameConstraints_dirname_x145 -excluded;dirName.146 = nameConstraints_dirname_x146 -excluded;dirName.147 = nameConstraints_dirname_x147 -excluded;dirName.148 = nameConstraints_dirname_x148 -excluded;dirName.149 = nameConstraints_dirname_x149 -excluded;dirName.150 = nameConstraints_dirname_x150 -excluded;dirName.151 = nameConstraints_dirname_x151 -excluded;dirName.152 = nameConstraints_dirname_x152 -excluded;dirName.153 = nameConstraints_dirname_x153 -excluded;dirName.154 = nameConstraints_dirname_x154 -excluded;dirName.155 = nameConstraints_dirname_x155 -excluded;dirName.156 = nameConstraints_dirname_x156 -excluded;dirName.157 = nameConstraints_dirname_x157 -excluded;dirName.158 = nameConstraints_dirname_x158 -excluded;dirName.159 = nameConstraints_dirname_x159 -excluded;dirName.160 = nameConstraints_dirname_x160 -excluded;dirName.161 = nameConstraints_dirname_x161 -excluded;dirName.162 = nameConstraints_dirname_x162 -excluded;dirName.163 = nameConstraints_dirname_x163 -excluded;dirName.164 = nameConstraints_dirname_x164 -excluded;dirName.165 = nameConstraints_dirname_x165 -excluded;dirName.166 = nameConstraints_dirname_x166 -excluded;dirName.167 = nameConstraints_dirname_x167 -excluded;dirName.168 = nameConstraints_dirname_x168 -excluded;dirName.169 = nameConstraints_dirname_x169 -excluded;dirName.170 = nameConstraints_dirname_x170 -excluded;URI.1 = http://xest/0 -excluded;URI.2 = http://xest/1 -excluded;URI.3 = http://xest/2 -excluded;URI.4 = http://xest/3 -excluded;URI.5 = http://xest/4 -excluded;URI.6 = http://xest/5 -excluded;URI.7 = http://xest/6 -excluded;URI.8 = http://xest/7 -excluded;URI.9 = http://xest/8 -excluded;URI.10 = http://xest/9 -excluded;URI.11 = http://xest/10 -excluded;URI.12 = http://xest/11 -excluded;URI.13 = http://xest/12 -excluded;URI.14 = http://xest/13 -excluded;URI.15 = http://xest/14 -excluded;URI.16 = http://xest/15 -excluded;URI.17 = http://xest/16 -excluded;URI.18 = http://xest/17 -excluded;URI.19 = http://xest/18 -excluded;URI.20 = http://xest/19 -excluded;URI.21 = http://xest/20 -excluded;URI.22 = http://xest/21 -excluded;URI.23 = http://xest/22 -excluded;URI.24 = http://xest/23 -excluded;URI.25 = http://xest/24 -excluded;URI.26 = http://xest/25 -excluded;URI.27 = http://xest/26 -excluded;URI.28 = http://xest/27 -excluded;URI.29 = http://xest/28 -excluded;URI.30 = http://xest/29 -excluded;URI.31 = http://xest/30 -excluded;URI.32 = http://xest/31 -excluded;URI.33 = http://xest/32 -excluded;URI.34 = http://xest/33 -excluded;URI.35 = http://xest/34 -excluded;URI.36 = http://xest/35 -excluded;URI.37 = http://xest/36 -excluded;URI.38 = http://xest/37 -excluded;URI.39 = http://xest/38 -excluded;URI.40 = http://xest/39 -excluded;URI.41 = http://xest/40 -excluded;URI.42 = http://xest/41 -excluded;URI.43 = http://xest/42 -excluded;URI.44 = http://xest/43 -excluded;URI.45 = http://xest/44 -excluded;URI.46 = http://xest/45 -excluded;URI.47 = http://xest/46 -excluded;URI.48 = http://xest/47 -excluded;URI.49 = http://xest/48 -excluded;URI.50 = http://xest/49 -excluded;URI.51 = http://xest/50 -excluded;URI.52 = http://xest/51 -excluded;URI.53 = http://xest/52 -excluded;URI.54 = http://xest/53 -excluded;URI.55 = http://xest/54 -excluded;URI.56 = http://xest/55 -excluded;URI.57 = http://xest/56 -excluded;URI.58 = http://xest/57 -excluded;URI.59 = http://xest/58 -excluded;URI.60 = http://xest/59 -excluded;URI.61 = http://xest/60 -excluded;URI.62 = http://xest/61 -excluded;URI.63 = http://xest/62 -excluded;URI.64 = http://xest/63 -excluded;URI.65 = http://xest/64 -excluded;URI.66 = http://xest/65 -excluded;URI.67 = http://xest/66 -excluded;URI.68 = http://xest/67 -excluded;URI.69 = http://xest/68 -excluded;URI.70 = http://xest/69 -excluded;URI.71 = http://xest/70 -excluded;URI.72 = http://xest/71 -excluded;URI.73 = http://xest/72 -excluded;URI.74 = http://xest/73 -excluded;URI.75 = http://xest/74 -excluded;URI.76 = http://xest/75 -excluded;URI.77 = http://xest/76 -excluded;URI.78 = http://xest/77 -excluded;URI.79 = http://xest/78 -excluded;URI.80 = http://xest/79 -excluded;URI.81 = http://xest/80 -excluded;URI.82 = http://xest/81 -excluded;URI.83 = http://xest/82 -excluded;URI.84 = http://xest/83 -excluded;URI.85 = http://xest/84 -excluded;URI.86 = http://xest/85 -excluded;URI.87 = http://xest/86 -excluded;URI.88 = http://xest/87 -excluded;URI.89 = http://xest/88 -excluded;URI.90 = http://xest/89 -excluded;URI.91 = http://xest/90 -excluded;URI.92 = http://xest/91 -excluded;URI.93 = http://xest/92 -excluded;URI.94 = http://xest/93 -excluded;URI.95 = http://xest/94 -excluded;URI.96 = http://xest/95 -excluded;URI.97 = http://xest/96 -excluded;URI.98 = http://xest/97 -excluded;URI.99 = http://xest/98 -excluded;URI.100 = http://xest/99 -excluded;URI.101 = http://xest/100 -excluded;URI.102 = http://xest/101 -excluded;URI.103 = http://xest/102 -excluded;URI.104 = http://xest/103 -excluded;URI.105 = http://xest/104 -excluded;URI.106 = http://xest/105 -excluded;URI.107 = http://xest/106 -excluded;URI.108 = http://xest/107 -excluded;URI.109 = http://xest/108 -excluded;URI.110 = http://xest/109 -excluded;URI.111 = http://xest/110 -excluded;URI.112 = http://xest/111 -excluded;URI.113 = http://xest/112 -excluded;URI.114 = http://xest/113 -excluded;URI.115 = http://xest/114 -excluded;URI.116 = http://xest/115 -excluded;URI.117 = http://xest/116 -excluded;URI.118 = http://xest/117 -excluded;URI.119 = http://xest/118 -excluded;URI.120 = http://xest/119 -excluded;URI.121 = http://xest/120 -excluded;URI.122 = http://xest/121 -excluded;URI.123 = http://xest/122 -excluded;URI.124 = http://xest/123 -excluded;URI.125 = http://xest/124 -excluded;URI.126 = http://xest/125 -excluded;URI.127 = http://xest/126 -excluded;URI.128 = http://xest/127 -excluded;URI.129 = http://xest/128 -excluded;URI.130 = http://xest/129 -excluded;URI.131 = http://xest/130 -excluded;URI.132 = http://xest/131 -excluded;URI.133 = http://xest/132 -excluded;URI.134 = http://xest/133 -excluded;URI.135 = http://xest/134 -excluded;URI.136 = http://xest/135 -excluded;URI.137 = http://xest/136 -excluded;URI.138 = http://xest/137 -excluded;URI.139 = http://xest/138 -excluded;URI.140 = http://xest/139 -excluded;URI.141 = http://xest/140 -excluded;URI.142 = http://xest/141 -excluded;URI.143 = http://xest/142 -excluded;URI.144 = http://xest/143 -excluded;URI.145 = http://xest/144 -excluded;URI.146 = http://xest/145 -excluded;URI.147 = http://xest/146 -excluded;URI.148 = http://xest/147 -excluded;URI.149 = http://xest/148 -excluded;URI.150 = http://xest/149 -excluded;URI.151 = http://xest/150 -excluded;URI.152 = http://xest/151 -excluded;URI.153 = http://xest/152 -excluded;URI.154 = http://xest/153 -excluded;URI.155 = http://xest/154 -excluded;URI.156 = http://xest/155 -excluded;URI.157 = http://xest/156 -excluded;URI.158 = http://xest/157 -excluded;URI.159 = http://xest/158 -excluded;URI.160 = http://xest/159 -excluded;URI.161 = http://xest/160 -excluded;URI.162 = http://xest/161 -excluded;URI.163 = http://xest/162 -excluded;URI.164 = http://xest/163 -excluded;URI.165 = http://xest/164 -excluded;URI.166 = http://xest/165 -excluded;URI.167 = http://xest/166 -excluded;URI.168 = http://xest/167 -excluded;URI.169 = http://xest/168 -excluded;URI.170 = http://xest/169 -excluded;URI.171 = http://xest/170 -excluded;URI.172 = http://xest/171 -excluded;URI.173 = http://xest/172 -excluded;URI.174 = http://xest/173 -excluded;URI.175 = http://xest/174 -excluded;URI.176 = http://xest/175 -excluded;URI.177 = http://xest/176 -excluded;URI.178 = http://xest/177 -excluded;URI.179 = http://xest/178 -excluded;URI.180 = http://xest/179 -excluded;URI.181 = http://xest/180 -excluded;URI.182 = http://xest/181 -excluded;URI.183 = http://xest/182 -excluded;URI.184 = http://xest/183 -excluded;URI.185 = http://xest/184 -excluded;URI.186 = http://xest/185 -excluded;URI.187 = http://xest/186 -excluded;URI.188 = http://xest/187 -excluded;URI.189 = http://xest/188 -excluded;URI.190 = http://xest/189 -excluded;URI.191 = http://xest/190 -excluded;URI.192 = http://xest/191 -excluded;URI.193 = http://xest/192 -excluded;URI.194 = http://xest/193 -excluded;URI.195 = http://xest/194 -excluded;URI.196 = http://xest/195 -excluded;URI.197 = http://xest/196 -excluded;URI.198 = http://xest/197 -excluded;URI.199 = http://xest/198 -excluded;URI.200 = http://xest/199 -excluded;URI.201 = http://xest/200 -excluded;URI.202 = http://xest/201 -excluded;URI.203 = http://xest/202 -excluded;URI.204 = http://xest/203 -excluded;URI.205 = http://xest/204 -excluded;URI.206 = http://xest/205 -excluded;URI.207 = http://xest/206 -excluded;URI.208 = http://xest/207 -excluded;URI.209 = http://xest/208 -excluded;URI.210 = http://xest/209 -excluded;URI.211 = http://xest/210 -excluded;URI.212 = http://xest/211 -excluded;URI.213 = http://xest/212 -excluded;URI.214 = http://xest/213 -excluded;URI.215 = http://xest/214 -excluded;URI.216 = http://xest/215 -excluded;URI.217 = http://xest/216 -excluded;URI.218 = http://xest/217 -excluded;URI.219 = http://xest/218 -excluded;URI.220 = http://xest/219 -excluded;URI.221 = http://xest/220 -excluded;URI.222 = http://xest/221 -excluded;URI.223 = http://xest/222 -excluded;URI.224 = http://xest/223 -excluded;URI.225 = http://xest/224 -excluded;URI.226 = http://xest/225 -excluded;URI.227 = http://xest/226 -excluded;URI.228 = http://xest/227 -excluded;URI.229 = http://xest/228 -excluded;URI.230 = http://xest/229 -excluded;URI.231 = http://xest/230 -excluded;URI.232 = http://xest/231 -excluded;URI.233 = http://xest/232 -excluded;URI.234 = http://xest/233 -excluded;URI.235 = http://xest/234 -excluded;URI.236 = http://xest/235 -excluded;URI.237 = http://xest/236 -excluded;URI.238 = http://xest/237 -excluded;URI.239 = http://xest/238 -excluded;URI.240 = http://xest/239 -excluded;URI.241 = http://xest/240 -excluded;URI.242 = http://xest/241 -excluded;URI.243 = http://xest/242 -excluded;URI.244 = http://xest/243 -excluded;URI.245 = http://xest/244 -excluded;URI.246 = http://xest/245 -excluded;URI.247 = http://xest/246 -excluded;URI.248 = http://xest/247 -excluded;URI.249 = http://xest/248 -excluded;URI.250 = http://xest/249 -excluded;URI.251 = http://xest/250 -excluded;URI.252 = http://xest/251 -excluded;URI.253 = http://xest/252 -excluded;URI.254 = http://xest/253 -excluded;URI.255 = http://xest/254 -excluded;URI.256 = http://xest/255 -excluded;URI.257 = http://xest/256 -excluded;URI.258 = http://xest/257 -excluded;URI.259 = http://xest/258 -excluded;URI.260 = http://xest/259 -excluded;URI.261 = http://xest/260 -excluded;URI.262 = http://xest/261 -excluded;URI.263 = http://xest/262 -excluded;URI.264 = http://xest/263 -excluded;URI.265 = http://xest/264 -excluded;URI.266 = http://xest/265 -excluded;URI.267 = http://xest/266 -excluded;URI.268 = http://xest/267 -excluded;URI.269 = http://xest/268 -excluded;URI.270 = http://xest/269 -excluded;URI.271 = http://xest/270 -excluded;URI.272 = http://xest/271 -excluded;URI.273 = http://xest/272 -excluded;URI.274 = http://xest/273 -excluded;URI.275 = http://xest/274 -excluded;URI.276 = http://xest/275 -excluded;URI.277 = http://xest/276 -excluded;URI.278 = http://xest/277 -excluded;URI.279 = http://xest/278 -excluded;URI.280 = http://xest/279 -excluded;URI.281 = http://xest/280 -excluded;URI.282 = http://xest/281 -excluded;URI.283 = http://xest/282 -excluded;URI.284 = http://xest/283 -excluded;URI.285 = http://xest/284 -excluded;URI.286 = http://xest/285 -excluded;URI.287 = http://xest/286 -excluded;URI.288 = http://xest/287 -excluded;URI.289 = http://xest/288 -excluded;URI.290 = http://xest/289 -excluded;URI.291 = http://xest/290 -excluded;URI.292 = http://xest/291 -excluded;URI.293 = http://xest/292 -excluded;URI.294 = http://xest/293 -excluded;URI.295 = http://xest/294 -excluded;URI.296 = http://xest/295 -excluded;URI.297 = http://xest/296 -excluded;URI.298 = http://xest/297 -excluded;URI.299 = http://xest/298 -excluded;URI.300 = http://xest/299 -excluded;URI.301 = http://xest/300 -excluded;URI.302 = http://xest/301 -excluded;URI.303 = http://xest/302 -excluded;URI.304 = http://xest/303 -excluded;URI.305 = http://xest/304 -excluded;URI.306 = http://xest/305 -excluded;URI.307 = http://xest/306 -excluded;URI.308 = http://xest/307 -excluded;URI.309 = http://xest/308 -excluded;URI.310 = http://xest/309 -excluded;URI.311 = http://xest/310 -excluded;URI.312 = http://xest/311 -excluded;URI.313 = http://xest/312 -excluded;URI.314 = http://xest/313 -excluded;URI.315 = http://xest/314 -excluded;URI.316 = http://xest/315 -excluded;URI.317 = http://xest/316 -excluded;URI.318 = http://xest/317 -excluded;URI.319 = http://xest/318 -excluded;URI.320 = http://xest/319 -excluded;URI.321 = http://xest/320 -excluded;URI.322 = http://xest/321 -excluded;URI.323 = http://xest/322 -excluded;URI.324 = http://xest/323 -excluded;URI.325 = http://xest/324 -excluded;URI.326 = http://xest/325 -excluded;URI.327 = http://xest/326 -excluded;URI.328 = http://xest/327 -excluded;URI.329 = http://xest/328 -excluded;URI.330 = http://xest/329 -excluded;URI.331 = http://xest/330 -excluded;URI.332 = http://xest/331 -excluded;URI.333 = http://xest/332 -excluded;URI.334 = http://xest/333 -excluded;URI.335 = http://xest/334 -excluded;URI.336 = http://xest/335 -excluded;URI.337 = http://xest/336 -excluded;URI.338 = http://xest/337 -excluded;URI.339 = http://xest/338 -excluded;URI.340 = http://xest/339 -excluded;URI.341 = http://xest/340 -excluded;URI.342 = http://xest/341 -excluded;URI.343 = http://xest/342 -excluded;URI.344 = http://xest/343 -excluded;URI.345 = http://xest/344 -excluded;URI.346 = http://xest/345 -excluded;URI.347 = http://xest/346 -excluded;URI.348 = http://xest/347 -excluded;URI.349 = http://xest/348 -excluded;URI.350 = http://xest/349 -excluded;URI.351 = http://xest/350 -excluded;URI.352 = http://xest/351 -excluded;URI.353 = http://xest/352 -excluded;URI.354 = http://xest/353 -excluded;URI.355 = http://xest/354 -excluded;URI.356 = http://xest/355 -excluded;URI.357 = http://xest/356 -excluded;URI.358 = http://xest/357 -excluded;URI.359 = http://xest/358 -excluded;URI.360 = http://xest/359 -excluded;URI.361 = http://xest/360 -excluded;URI.362 = http://xest/361 -excluded;URI.363 = http://xest/362 -excluded;URI.364 = http://xest/363 -excluded;URI.365 = http://xest/364 -excluded;URI.366 = http://xest/365 -excluded;URI.367 = http://xest/366 -excluded;URI.368 = http://xest/367 -excluded;URI.369 = http://xest/368 -excluded;URI.370 = http://xest/369 -excluded;URI.371 = http://xest/370 -excluded;URI.372 = http://xest/371 -excluded;URI.373 = http://xest/372 -excluded;URI.374 = http://xest/373 -excluded;URI.375 = http://xest/374 -excluded;URI.376 = http://xest/375 -excluded;URI.377 = http://xest/376 -excluded;URI.378 = http://xest/377 -excluded;URI.379 = http://xest/378 -excluded;URI.380 = http://xest/379 -excluded;URI.381 = http://xest/380 -excluded;URI.382 = http://xest/381 -excluded;URI.383 = http://xest/382 -excluded;URI.384 = http://xest/383 -excluded;URI.385 = http://xest/384 -excluded;URI.386 = http://xest/385 -excluded;URI.387 = http://xest/386 -excluded;URI.388 = http://xest/387 -excluded;URI.389 = http://xest/388 -excluded;URI.390 = http://xest/389 -excluded;URI.391 = http://xest/390 -excluded;URI.392 = http://xest/391 -excluded;URI.393 = http://xest/392 -excluded;URI.394 = http://xest/393 -excluded;URI.395 = http://xest/394 -excluded;URI.396 = http://xest/395 -excluded;URI.397 = http://xest/396 -excluded;URI.398 = http://xest/397 -excluded;URI.399 = http://xest/398 -excluded;URI.400 = http://xest/399 -excluded;URI.401 = http://xest/400 -excluded;URI.402 = http://xest/401 -excluded;URI.403 = http://xest/402 -excluded;URI.404 = http://xest/403 -excluded;URI.405 = http://xest/404 -excluded;URI.406 = http://xest/405 -excluded;URI.407 = http://xest/406 -excluded;URI.408 = http://xest/407 -excluded;URI.409 = http://xest/408 -excluded;URI.410 = http://xest/409 -excluded;URI.411 = http://xest/410 -excluded;URI.412 = http://xest/411 -excluded;URI.413 = http://xest/412 -excluded;URI.414 = http://xest/413 -excluded;URI.415 = http://xest/414 -excluded;URI.416 = http://xest/415 -excluded;URI.417 = http://xest/416 -excluded;URI.418 = http://xest/417 -excluded;URI.419 = http://xest/418 -excluded;URI.420 = http://xest/419 -excluded;URI.421 = http://xest/420 -excluded;URI.422 = http://xest/421 -excluded;URI.423 = http://xest/422 -excluded;URI.424 = http://xest/423 -excluded;URI.425 = http://xest/424 -excluded;URI.426 = http://xest/425 -excluded;URI.427 = http://xest/426 -excluded;URI.428 = http://xest/427 -excluded;URI.429 = http://xest/428 -excluded;URI.430 = http://xest/429 -excluded;URI.431 = http://xest/430 -excluded;URI.432 = http://xest/431 -excluded;URI.433 = http://xest/432 -excluded;URI.434 = http://xest/433 -excluded;URI.435 = http://xest/434 -excluded;URI.436 = http://xest/435 -excluded;URI.437 = http://xest/436 -excluded;URI.438 = http://xest/437 -excluded;URI.439 = http://xest/438 -excluded;URI.440 = http://xest/439 -excluded;URI.441 = http://xest/440 -excluded;URI.442 = http://xest/441 -excluded;URI.443 = http://xest/442 -excluded;URI.444 = http://xest/443 -excluded;URI.445 = http://xest/444 -excluded;URI.446 = http://xest/445 -excluded;URI.447 = http://xest/446 -excluded;URI.448 = http://xest/447 -excluded;URI.449 = http://xest/448 -excluded;URI.450 = http://xest/449 -excluded;URI.451 = http://xest/450 -excluded;URI.452 = http://xest/451 -excluded;URI.453 = http://xest/452 -excluded;URI.454 = http://xest/453 -excluded;URI.455 = http://xest/454 -excluded;URI.456 = http://xest/455 -excluded;URI.457 = http://xest/456 -excluded;URI.458 = http://xest/457 -excluded;URI.459 = http://xest/458 -excluded;URI.460 = http://xest/459 -excluded;URI.461 = http://xest/460 -excluded;URI.462 = http://xest/461 -excluded;URI.463 = http://xest/462 -excluded;URI.464 = http://xest/463 -excluded;URI.465 = http://xest/464 -excluded;URI.466 = http://xest/465 -excluded;URI.467 = http://xest/466 -excluded;URI.468 = http://xest/467 -excluded;URI.469 = http://xest/468 -excluded;URI.470 = http://xest/469 -excluded;URI.471 = http://xest/470 -excluded;URI.472 = http://xest/471 -excluded;URI.473 = http://xest/472 -excluded;URI.474 = http://xest/473 -excluded;URI.475 = http://xest/474 -excluded;URI.476 = http://xest/475 -excluded;URI.477 = http://xest/476 -excluded;URI.478 = http://xest/477 -excluded;URI.479 = http://xest/478 -excluded;URI.480 = http://xest/479 -excluded;URI.481 = http://xest/480 -excluded;URI.482 = http://xest/481 -excluded;URI.483 = http://xest/482 -excluded;URI.484 = http://xest/483 -excluded;URI.485 = http://xest/484 -excluded;URI.486 = http://xest/485 -excluded;URI.487 = http://xest/486 -excluded;URI.488 = http://xest/487 -excluded;URI.489 = http://xest/488 -excluded;URI.490 = http://xest/489 -excluded;URI.491 = http://xest/490 -excluded;URI.492 = http://xest/491 -excluded;URI.493 = http://xest/492 -excluded;URI.494 = http://xest/493 -excluded;URI.495 = http://xest/494 -excluded;URI.496 = http://xest/495 -excluded;URI.497 = http://xest/496 -excluded;URI.498 = http://xest/497 -excluded;URI.499 = http://xest/498 -excluded;URI.500 = http://xest/499 -excluded;URI.501 = http://xest/500 -excluded;URI.502 = http://xest/501 -excluded;URI.503 = http://xest/502 -excluded;URI.504 = http://xest/503 -excluded;URI.505 = http://xest/504 -excluded;URI.506 = http://xest/505 -excluded;URI.507 = http://xest/506 -excluded;URI.508 = http://xest/507 -excluded;URI.509 = http://xest/508 -excluded;URI.510 = http://xest/509 -excluded;URI.511 = http://xest/510 -excluded;URI.512 = http://xest/511 -excluded;URI.513 = http://xest/512 -excluded;URI.514 = http://xest/513 -excluded;URI.515 = http://xest/514 -excluded;URI.516 = http://xest/515 -excluded;URI.517 = http://xest/516 -excluded;URI.518 = http://xest/517 -excluded;URI.519 = http://xest/518 -excluded;URI.520 = http://xest/519 -excluded;URI.521 = http://xest/520 -excluded;URI.522 = http://xest/521 -excluded;URI.523 = http://xest/522 -excluded;URI.524 = http://xest/523 -excluded;URI.525 = http://xest/524 -excluded;URI.526 = http://xest/525 -excluded;URI.527 = http://xest/526 -excluded;URI.528 = http://xest/527 -excluded;URI.529 = http://xest/528 -excluded;URI.530 = http://xest/529 -excluded;URI.531 = http://xest/530 -excluded;URI.532 = http://xest/531 -excluded;URI.533 = http://xest/532 -excluded;URI.534 = http://xest/533 -excluded;URI.535 = http://xest/534 -excluded;URI.536 = http://xest/535 -excluded;URI.537 = http://xest/536 -excluded;URI.538 = http://xest/537 -excluded;URI.539 = http://xest/538 -excluded;URI.540 = http://xest/539 -excluded;URI.541 = http://xest/540 -excluded;URI.542 = http://xest/541 -excluded;URI.543 = http://xest/542 -excluded;URI.544 = http://xest/543 -excluded;URI.545 = http://xest/544 -excluded;URI.546 = http://xest/545 -excluded;URI.547 = http://xest/546 -excluded;URI.548 = http://xest/547 -excluded;URI.549 = http://xest/548 -excluded;URI.550 = http://xest/549 -excluded;URI.551 = http://xest/550 -excluded;URI.552 = http://xest/551 -excluded;URI.553 = http://xest/552 -excluded;URI.554 = http://xest/553 -excluded;URI.555 = http://xest/554 -excluded;URI.556 = http://xest/555 -excluded;URI.557 = http://xest/556 -excluded;URI.558 = http://xest/557 -excluded;URI.559 = http://xest/558 -excluded;URI.560 = http://xest/559 -excluded;URI.561 = http://xest/560 -excluded;URI.562 = http://xest/561 -excluded;URI.563 = http://xest/562 -excluded;URI.564 = http://xest/563 -excluded;URI.565 = http://xest/564 -excluded;URI.566 = http://xest/565 -excluded;URI.567 = http://xest/566 -excluded;URI.568 = http://xest/567 -excluded;URI.569 = http://xest/568 -excluded;URI.570 = http://xest/569 -excluded;URI.571 = http://xest/570 -excluded;URI.572 = http://xest/571 -excluded;URI.573 = http://xest/572 -excluded;URI.574 = http://xest/573 -excluded;URI.575 = http://xest/574 -excluded;URI.576 = http://xest/575 -excluded;URI.577 = http://xest/576 -excluded;URI.578 = http://xest/577 -excluded;URI.579 = http://xest/578 -excluded;URI.580 = http://xest/579 -excluded;URI.581 = http://xest/580 -excluded;URI.582 = http://xest/581 -excluded;URI.583 = http://xest/582 -excluded;URI.584 = http://xest/583 -excluded;URI.585 = http://xest/584 -excluded;URI.586 = http://xest/585 -excluded;URI.587 = http://xest/586 -excluded;URI.588 = http://xest/587 -excluded;URI.589 = http://xest/588 -excluded;URI.590 = http://xest/589 -excluded;URI.591 = http://xest/590 -excluded;URI.592 = http://xest/591 -excluded;URI.593 = http://xest/592 -excluded;URI.594 = http://xest/593 -excluded;URI.595 = http://xest/594 -excluded;URI.596 = http://xest/595 -excluded;URI.597 = http://xest/596 -excluded;URI.598 = http://xest/597 -excluded;URI.599 = http://xest/598 -excluded;URI.600 = http://xest/599 -excluded;URI.601 = http://xest/600 -excluded;URI.602 = http://xest/601 -excluded;URI.603 = http://xest/602 -excluded;URI.604 = http://xest/603 -excluded;URI.605 = http://xest/604 -excluded;URI.606 = http://xest/605 -excluded;URI.607 = http://xest/606 -excluded;URI.608 = http://xest/607 -excluded;URI.609 = http://xest/608 -excluded;URI.610 = http://xest/609 -excluded;URI.611 = http://xest/610 -excluded;URI.612 = http://xest/611 -excluded;URI.613 = http://xest/612 -excluded;URI.614 = http://xest/613 -excluded;URI.615 = http://xest/614 -excluded;URI.616 = http://xest/615 -excluded;URI.617 = http://xest/616 -excluded;URI.618 = http://xest/617 -excluded;URI.619 = http://xest/618 -excluded;URI.620 = http://xest/619 -excluded;URI.621 = http://xest/620 -excluded;URI.622 = http://xest/621 -excluded;URI.623 = http://xest/622 -excluded;URI.624 = http://xest/623 -excluded;URI.625 = http://xest/624 -excluded;URI.626 = http://xest/625 -excluded;URI.627 = http://xest/626 -excluded;URI.628 = http://xest/627 -excluded;URI.629 = http://xest/628 -excluded;URI.630 = http://xest/629 -excluded;URI.631 = http://xest/630 -excluded;URI.632 = http://xest/631 -excluded;URI.633 = http://xest/632 -excluded;URI.634 = http://xest/633 -excluded;URI.635 = http://xest/634 -excluded;URI.636 = http://xest/635 -excluded;URI.637 = http://xest/636 -excluded;URI.638 = http://xest/637 -excluded;URI.639 = http://xest/638 -excluded;URI.640 = http://xest/639 -excluded;URI.641 = http://xest/640 -excluded;URI.642 = http://xest/641 -excluded;URI.643 = http://xest/642 -excluded;URI.644 = http://xest/643 -excluded;URI.645 = http://xest/644 -excluded;URI.646 = http://xest/645 -excluded;URI.647 = http://xest/646 -excluded;URI.648 = http://xest/647 -excluded;URI.649 = http://xest/648 -excluded;URI.650 = http://xest/649 -excluded;URI.651 = http://xest/650 -excluded;URI.652 = http://xest/651 -excluded;URI.653 = http://xest/652 -excluded;URI.654 = http://xest/653 -excluded;URI.655 = http://xest/654 -excluded;URI.656 = http://xest/655 -excluded;URI.657 = http://xest/656 -excluded;URI.658 = http://xest/657 -excluded;URI.659 = http://xest/658 -excluded;URI.660 = http://xest/659 -excluded;URI.661 = http://xest/660 -excluded;URI.662 = http://xest/661 -excluded;URI.663 = http://xest/662 -excluded;URI.664 = http://xest/663 -excluded;URI.665 = http://xest/664 -excluded;URI.666 = http://xest/665 -excluded;URI.667 = http://xest/666 -excluded;URI.668 = http://xest/667 -excluded;URI.669 = http://xest/668 -excluded;URI.670 = http://xest/669 -excluded;URI.671 = http://xest/670 -excluded;URI.672 = http://xest/671 -excluded;URI.673 = http://xest/672 -excluded;URI.674 = http://xest/673 -excluded;URI.675 = http://xest/674 -excluded;URI.676 = http://xest/675 -excluded;URI.677 = http://xest/676 -excluded;URI.678 = http://xest/677 -excluded;URI.679 = http://xest/678 -excluded;URI.680 = http://xest/679 -excluded;URI.681 = http://xest/680 -excluded;URI.682 = http://xest/681 -excluded;URI.683 = http://xest/682 -excluded;URI.684 = http://xest/683 -excluded;URI.685 = http://xest/684 -excluded;URI.686 = http://xest/685 -excluded;URI.687 = http://xest/686 -excluded;URI.688 = http://xest/687 -excluded;URI.689 = http://xest/688 -excluded;URI.690 = http://xest/689 -excluded;URI.691 = http://xest/690 -excluded;URI.692 = http://xest/691 -excluded;URI.693 = http://xest/692 -excluded;URI.694 = http://xest/693 -excluded;URI.695 = http://xest/694 -excluded;URI.696 = http://xest/695 -excluded;URI.697 = http://xest/696 -excluded;URI.698 = http://xest/697 -excluded;URI.699 = http://xest/698 -excluded;URI.700 = http://xest/699 -excluded;URI.701 = http://xest/700 -excluded;URI.702 = http://xest/701 -excluded;URI.703 = http://xest/702 -excluded;URI.704 = http://xest/703 -excluded;URI.705 = http://xest/704 -excluded;URI.706 = http://xest/705 -excluded;URI.707 = http://xest/706 -excluded;URI.708 = http://xest/707 -excluded;URI.709 = http://xest/708 -excluded;URI.710 = http://xest/709 -excluded;URI.711 = http://xest/710 -excluded;URI.712 = http://xest/711 -excluded;URI.713 = http://xest/712 -excluded;URI.714 = http://xest/713 -excluded;URI.715 = http://xest/714 -excluded;URI.716 = http://xest/715 -excluded;URI.717 = http://xest/716 -excluded;URI.718 = http://xest/717 -excluded;URI.719 = http://xest/718 -excluded;URI.720 = http://xest/719 -excluded;URI.721 = http://xest/720 -excluded;URI.722 = http://xest/721 -excluded;URI.723 = http://xest/722 -excluded;URI.724 = http://xest/723 -excluded;URI.725 = http://xest/724 -excluded;URI.726 = http://xest/725 -excluded;URI.727 = http://xest/726 -excluded;URI.728 = http://xest/727 -excluded;URI.729 = http://xest/728 -excluded;URI.730 = http://xest/729 -excluded;URI.731 = http://xest/730 -excluded;URI.732 = http://xest/731 -excluded;URI.733 = http://xest/732 -excluded;URI.734 = http://xest/733 -excluded;URI.735 = http://xest/734 -excluded;URI.736 = http://xest/735 -excluded;URI.737 = http://xest/736 -excluded;URI.738 = http://xest/737 -excluded;URI.739 = http://xest/738 -excluded;URI.740 = http://xest/739 -excluded;URI.741 = http://xest/740 -excluded;URI.742 = http://xest/741 -excluded;URI.743 = http://xest/742 -excluded;URI.744 = http://xest/743 -excluded;URI.745 = http://xest/744 -excluded;URI.746 = http://xest/745 -excluded;URI.747 = http://xest/746 -excluded;URI.748 = http://xest/747 -excluded;URI.749 = http://xest/748 -excluded;URI.750 = http://xest/749 -excluded;URI.751 = http://xest/750 -excluded;URI.752 = http://xest/751 -excluded;URI.753 = http://xest/752 -excluded;URI.754 = http://xest/753 -excluded;URI.755 = http://xest/754 -excluded;URI.756 = http://xest/755 -excluded;URI.757 = http://xest/756 -excluded;URI.758 = http://xest/757 -excluded;URI.759 = http://xest/758 -excluded;URI.760 = http://xest/759 -excluded;URI.761 = http://xest/760 -excluded;URI.762 = http://xest/761 -excluded;URI.763 = http://xest/762 -excluded;URI.764 = http://xest/763 -excluded;URI.765 = http://xest/764 -excluded;URI.766 = http://xest/765 -excluded;URI.767 = http://xest/766 -excluded;URI.768 = http://xest/767 -excluded;URI.769 = http://xest/768 -excluded;URI.770 = http://xest/769 -excluded;URI.771 = http://xest/770 -excluded;URI.772 = http://xest/771 -excluded;URI.773 = http://xest/772 -excluded;URI.774 = http://xest/773 -excluded;URI.775 = http://xest/774 -excluded;URI.776 = http://xest/775 -excluded;URI.777 = http://xest/776 -excluded;URI.778 = http://xest/777 -excluded;URI.779 = http://xest/778 -excluded;URI.780 = http://xest/779 -excluded;URI.781 = http://xest/780 -excluded;URI.782 = http://xest/781 -excluded;URI.783 = http://xest/782 -excluded;URI.784 = http://xest/783 -excluded;URI.785 = http://xest/784 -excluded;URI.786 = http://xest/785 -excluded;URI.787 = http://xest/786 -excluded;URI.788 = http://xest/787 -excluded;URI.789 = http://xest/788 -excluded;URI.790 = http://xest/789 -excluded;URI.791 = http://xest/790 -excluded;URI.792 = http://xest/791 -excluded;URI.793 = http://xest/792 -excluded;URI.794 = http://xest/793 -excluded;URI.795 = http://xest/794 -excluded;URI.796 = http://xest/795 -excluded;URI.797 = http://xest/796 -excluded;URI.798 = http://xest/797 -excluded;URI.799 = http://xest/798 -excluded;URI.800 = http://xest/799 -excluded;URI.801 = http://xest/800 -excluded;URI.802 = http://xest/801 -excluded;URI.803 = http://xest/802 -excluded;URI.804 = http://xest/803 -excluded;URI.805 = http://xest/804 -excluded;URI.806 = http://xest/805 -excluded;URI.807 = http://xest/806 -excluded;URI.808 = http://xest/807 -excluded;URI.809 = http://xest/808 -excluded;URI.810 = http://xest/809 -excluded;URI.811 = http://xest/810 -excluded;URI.812 = http://xest/811 -excluded;URI.813 = http://xest/812 -excluded;URI.814 = http://xest/813 -excluded;URI.815 = http://xest/814 -excluded;URI.816 = http://xest/815 -excluded;URI.817 = http://xest/816 -excluded;URI.818 = http://xest/817 -excluded;URI.819 = http://xest/818 -excluded;URI.820 = http://xest/819 -excluded;URI.821 = http://xest/820 -excluded;URI.822 = http://xest/821 -excluded;URI.823 = http://xest/822 -excluded;URI.824 = http://xest/823 -excluded;URI.825 = http://xest/824 -excluded;URI.826 = http://xest/825 -excluded;URI.827 = http://xest/826 -excluded;URI.828 = http://xest/827 -excluded;URI.829 = http://xest/828 -excluded;URI.830 = http://xest/829 -excluded;URI.831 = http://xest/830 -excluded;URI.832 = http://xest/831 -excluded;URI.833 = http://xest/832 -excluded;URI.834 = http://xest/833 -excluded;URI.835 = http://xest/834 -excluded;URI.836 = http://xest/835 -excluded;URI.837 = http://xest/836 -excluded;URI.838 = http://xest/837 -excluded;URI.839 = http://xest/838 -excluded;URI.840 = http://xest/839 -excluded;URI.841 = http://xest/840 -excluded;URI.842 = http://xest/841 -excluded;URI.843 = http://xest/842 -excluded;URI.844 = http://xest/843 -excluded;URI.845 = http://xest/844 -excluded;URI.846 = http://xest/845 -excluded;URI.847 = http://xest/846 -excluded;URI.848 = http://xest/847 -excluded;URI.849 = http://xest/848 -excluded;URI.850 = http://xest/849 -excluded;URI.851 = http://xest/850 -excluded;URI.852 = http://xest/851 -excluded;URI.853 = http://xest/852 -excluded;URI.854 = http://xest/853 -excluded;URI.855 = http://xest/854 -excluded;URI.856 = http://xest/855 -excluded;URI.857 = http://xest/856 -excluded;URI.858 = http://xest/857 -excluded;URI.859 = http://xest/858 -excluded;URI.860 = http://xest/859 -excluded;URI.861 = http://xest/860 -excluded;URI.862 = http://xest/861 -excluded;URI.863 = http://xest/862 -excluded;URI.864 = http://xest/863 -excluded;URI.865 = http://xest/864 -excluded;URI.866 = http://xest/865 -excluded;URI.867 = http://xest/866 -excluded;URI.868 = http://xest/867 -excluded;URI.869 = http://xest/868 -excluded;URI.870 = http://xest/869 -excluded;URI.871 = http://xest/870 -excluded;URI.872 = http://xest/871 -excluded;URI.873 = http://xest/872 -excluded;URI.874 = http://xest/873 -excluded;URI.875 = http://xest/874 -excluded;URI.876 = http://xest/875 -excluded;URI.877 = http://xest/876 -excluded;URI.878 = http://xest/877 -excluded;URI.879 = http://xest/878 -excluded;URI.880 = http://xest/879 -excluded;URI.881 = http://xest/880 -excluded;URI.882 = http://xest/881 -excluded;URI.883 = http://xest/882 -excluded;URI.884 = http://xest/883 -excluded;URI.885 = http://xest/884 -excluded;URI.886 = http://xest/885 -excluded;URI.887 = http://xest/886 -excluded;URI.888 = http://xest/887 -excluded;URI.889 = http://xest/888 -excluded;URI.890 = http://xest/889 -excluded;URI.891 = http://xest/890 -excluded;URI.892 = http://xest/891 -excluded;URI.893 = http://xest/892 -excluded;URI.894 = http://xest/893 -excluded;URI.895 = http://xest/894 -excluded;URI.896 = http://xest/895 -excluded;URI.897 = http://xest/896 -excluded;URI.898 = http://xest/897 -excluded;URI.899 = http://xest/898 -excluded;URI.900 = http://xest/899 -excluded;URI.901 = http://xest/900 -excluded;URI.902 = http://xest/901 -excluded;URI.903 = http://xest/902 -excluded;URI.904 = http://xest/903 -excluded;URI.905 = http://xest/904 -excluded;URI.906 = http://xest/905 -excluded;URI.907 = http://xest/906 -excluded;URI.908 = http://xest/907 -excluded;URI.909 = http://xest/908 -excluded;URI.910 = http://xest/909 -excluded;URI.911 = http://xest/910 -excluded;URI.912 = http://xest/911 -excluded;URI.913 = http://xest/912 -excluded;URI.914 = http://xest/913 -excluded;URI.915 = http://xest/914 -excluded;URI.916 = http://xest/915 -excluded;URI.917 = http://xest/916 -excluded;URI.918 = http://xest/917 -excluded;URI.919 = http://xest/918 -excluded;URI.920 = http://xest/919 -excluded;URI.921 = http://xest/920 -excluded;URI.922 = http://xest/921 -excluded;URI.923 = http://xest/922 -excluded;URI.924 = http://xest/923 -excluded;URI.925 = http://xest/924 -excluded;URI.926 = http://xest/925 -excluded;URI.927 = http://xest/926 -excluded;URI.928 = http://xest/927 -excluded;URI.929 = http://xest/928 -excluded;URI.930 = http://xest/929 -excluded;URI.931 = http://xest/930 -excluded;URI.932 = http://xest/931 -excluded;URI.933 = http://xest/932 -excluded;URI.934 = http://xest/933 -excluded;URI.935 = http://xest/934 -excluded;URI.936 = http://xest/935 -excluded;URI.937 = http://xest/936 -excluded;URI.938 = http://xest/937 -excluded;URI.939 = http://xest/938 -excluded;URI.940 = http://xest/939 -excluded;URI.941 = http://xest/940 -excluded;URI.942 = http://xest/941 -excluded;URI.943 = http://xest/942 -excluded;URI.944 = http://xest/943 -excluded;URI.945 = http://xest/944 -excluded;URI.946 = http://xest/945 -excluded;URI.947 = http://xest/946 -excluded;URI.948 = http://xest/947 -excluded;URI.949 = http://xest/948 -excluded;URI.950 = http://xest/949 -excluded;URI.951 = http://xest/950 -excluded;URI.952 = http://xest/951 -excluded;URI.953 = http://xest/952 -excluded;URI.954 = http://xest/953 -excluded;URI.955 = http://xest/954 -excluded;URI.956 = http://xest/955 -excluded;URI.957 = http://xest/956 -excluded;URI.958 = http://xest/957 -excluded;URI.959 = http://xest/958 -excluded;URI.960 = http://xest/959 -excluded;URI.961 = http://xest/960 -excluded;URI.962 = http://xest/961 -excluded;URI.963 = http://xest/962 -excluded;URI.964 = http://xest/963 -excluded;URI.965 = http://xest/964 -excluded;URI.966 = http://xest/965 -excluded;URI.967 = http://xest/966 -excluded;URI.968 = http://xest/967 -excluded;URI.969 = http://xest/968 -excluded;URI.970 = http://xest/969 -excluded;URI.971 = http://xest/970 -excluded;URI.972 = http://xest/971 -excluded;URI.973 = http://xest/972 -excluded;URI.974 = http://xest/973 -excluded;URI.975 = http://xest/974 -excluded;URI.976 = http://xest/975 -excluded;URI.977 = http://xest/976 -excluded;URI.978 = http://xest/977 -excluded;URI.979 = http://xest/978 -excluded;URI.980 = http://xest/979 -excluded;URI.981 = http://xest/980 -excluded;URI.982 = http://xest/981 -excluded;URI.983 = http://xest/982 -excluded;URI.984 = http://xest/983 -excluded;URI.985 = http://xest/984 -excluded;URI.986 = http://xest/985 -excluded;URI.987 = http://xest/986 -excluded;URI.988 = http://xest/987 -excluded;URI.989 = http://xest/988 -excluded;URI.990 = http://xest/989 -excluded;URI.991 = http://xest/990 -excluded;URI.992 = http://xest/991 -excluded;URI.993 = http://xest/992 -excluded;URI.994 = http://xest/993 -excluded;URI.995 = http://xest/994 -excluded;URI.996 = http://xest/995 -excluded;URI.997 = http://xest/996 -excluded;URI.998 = http://xest/997 -excluded;URI.999 = http://xest/998 -excluded;URI.1000 = http://xest/999 -excluded;URI.1001 = http://xest/1000 -excluded;URI.1002 = http://xest/1001 -excluded;URI.1003 = http://xest/1002 -excluded;URI.1004 = http://xest/1003 -excluded;URI.1005 = http://xest/1004 -excluded;URI.1006 = http://xest/1005 -excluded;URI.1007 = http://xest/1006 -excluded;URI.1008 = http://xest/1007 -excluded;URI.1009 = http://xest/1008 -excluded;URI.1010 = http://xest/1009 -excluded;URI.1011 = http://xest/1010 -excluded;URI.1012 = http://xest/1011 -excluded;URI.1013 = http://xest/1012 -excluded;URI.1014 = http://xest/1013 -excluded;URI.1015 = http://xest/1014 -excluded;URI.1016 = http://xest/1015 -excluded;URI.1017 = http://xest/1016 -excluded;URI.1018 = http://xest/1017 -excluded;URI.1019 = http://xest/1018 -excluded;URI.1020 = http://xest/1019 -excluded;URI.1021 = http://xest/1020 -excluded;URI.1022 = http://xest/1021 -excluded;URI.1023 = http://xest/1022 -excluded;URI.1024 = http://xest/1023 -excluded;URI.1025 = http://xest/1024 -permitted;DNS.1 = t0.test -permitted;DNS.2 = t1.test -permitted;DNS.3 = t2.test -permitted;DNS.4 = t3.test -permitted;DNS.5 = t4.test -permitted;DNS.6 = t5.test -permitted;DNS.7 = t6.test -permitted;DNS.8 = t7.test -permitted;DNS.9 = t8.test -permitted;DNS.10 = t9.test -permitted;DNS.11 = t10.test -permitted;DNS.12 = t11.test -permitted;DNS.13 = t12.test -permitted;DNS.14 = t13.test -permitted;DNS.15 = t14.test -permitted;DNS.16 = t15.test -permitted;DNS.17 = t16.test -permitted;DNS.18 = t17.test -permitted;DNS.19 = t18.test -permitted;DNS.20 = t19.test -permitted;DNS.21 = t20.test -permitted;DNS.22 = t21.test -permitted;DNS.23 = t22.test -permitted;DNS.24 = t23.test -permitted;DNS.25 = t24.test -permitted;DNS.26 = t25.test -permitted;DNS.27 = t26.test -permitted;DNS.28 = t27.test -permitted;DNS.29 = t28.test -permitted;DNS.30 = t29.test -permitted;DNS.31 = t30.test -permitted;DNS.32 = t31.test -permitted;DNS.33 = t32.test -permitted;DNS.34 = t33.test -permitted;DNS.35 = t34.test -permitted;DNS.36 = t35.test -permitted;DNS.37 = t36.test -permitted;DNS.38 = t37.test -permitted;DNS.39 = t38.test -permitted;DNS.40 = t39.test -permitted;DNS.41 = t40.test -permitted;DNS.42 = t41.test -permitted;DNS.43 = t42.test -permitted;DNS.44 = t43.test -permitted;DNS.45 = t44.test -permitted;DNS.46 = t45.test -permitted;DNS.47 = t46.test -permitted;DNS.48 = t47.test -permitted;DNS.49 = t48.test -permitted;DNS.50 = t49.test -permitted;DNS.51 = t50.test -permitted;DNS.52 = t51.test -permitted;DNS.53 = t52.test -permitted;DNS.54 = t53.test -permitted;DNS.55 = t54.test -permitted;DNS.56 = t55.test -permitted;DNS.57 = t56.test -permitted;DNS.58 = t57.test -permitted;DNS.59 = t58.test -permitted;DNS.60 = t59.test -permitted;DNS.61 = t60.test -permitted;DNS.62 = t61.test -permitted;DNS.63 = t62.test -permitted;DNS.64 = t63.test -permitted;DNS.65 = t64.test -permitted;DNS.66 = t65.test -permitted;DNS.67 = t66.test -permitted;DNS.68 = t67.test -permitted;DNS.69 = t68.test -permitted;DNS.70 = t69.test -permitted;DNS.71 = t70.test -permitted;DNS.72 = t71.test -permitted;DNS.73 = t72.test -permitted;DNS.74 = t73.test -permitted;DNS.75 = t74.test -permitted;DNS.76 = t75.test -permitted;DNS.77 = t76.test -permitted;DNS.78 = t77.test -permitted;DNS.79 = t78.test -permitted;DNS.80 = t79.test -permitted;DNS.81 = t80.test -permitted;DNS.82 = t81.test -permitted;DNS.83 = t82.test -permitted;DNS.84 = t83.test -permitted;DNS.85 = t84.test -permitted;DNS.86 = t85.test -permitted;DNS.87 = t86.test -permitted;DNS.88 = t87.test -permitted;DNS.89 = t88.test -permitted;DNS.90 = t89.test -permitted;DNS.91 = t90.test -permitted;DNS.92 = t91.test -permitted;DNS.93 = t92.test -permitted;DNS.94 = t93.test -permitted;DNS.95 = t94.test -permitted;DNS.96 = t95.test -permitted;DNS.97 = t96.test -permitted;DNS.98 = t97.test -permitted;DNS.99 = t98.test -permitted;DNS.100 = t99.test -permitted;DNS.101 = t100.test -permitted;DNS.102 = t101.test -permitted;DNS.103 = t102.test -permitted;DNS.104 = t103.test -permitted;DNS.105 = t104.test -permitted;DNS.106 = t105.test -permitted;DNS.107 = t106.test -permitted;DNS.108 = t107.test -permitted;DNS.109 = t108.test -permitted;DNS.110 = t109.test -permitted;DNS.111 = t110.test -permitted;DNS.112 = t111.test -permitted;DNS.113 = t112.test -permitted;DNS.114 = t113.test -permitted;DNS.115 = t114.test -permitted;DNS.116 = t115.test -permitted;DNS.117 = t116.test -permitted;DNS.118 = t117.test -permitted;DNS.119 = t118.test -permitted;DNS.120 = t119.test -permitted;DNS.121 = t120.test -permitted;DNS.122 = t121.test -permitted;DNS.123 = t122.test -permitted;DNS.124 = t123.test -permitted;DNS.125 = t124.test -permitted;DNS.126 = t125.test -permitted;DNS.127 = t126.test -permitted;DNS.128 = t127.test -permitted;DNS.129 = t128.test -permitted;DNS.130 = t129.test -permitted;DNS.131 = t130.test -permitted;DNS.132 = t131.test -permitted;DNS.133 = t132.test -permitted;DNS.134 = t133.test -permitted;DNS.135 = t134.test -permitted;DNS.136 = t135.test -permitted;DNS.137 = t136.test -permitted;DNS.138 = t137.test -permitted;DNS.139 = t138.test -permitted;DNS.140 = t139.test -permitted;DNS.141 = t140.test -permitted;DNS.142 = t141.test -permitted;DNS.143 = t142.test -permitted;DNS.144 = t143.test -permitted;DNS.145 = t144.test -permitted;DNS.146 = t145.test -permitted;DNS.147 = t146.test -permitted;DNS.148 = t147.test -permitted;DNS.149 = t148.test -permitted;DNS.150 = t149.test -permitted;DNS.151 = t150.test -permitted;DNS.152 = t151.test -permitted;DNS.153 = t152.test -permitted;DNS.154 = t153.test -permitted;DNS.155 = t154.test -permitted;DNS.156 = t155.test -permitted;DNS.157 = t156.test -permitted;DNS.158 = t157.test -permitted;DNS.159 = t158.test -permitted;DNS.160 = t159.test -permitted;DNS.161 = t160.test -permitted;DNS.162 = t161.test -permitted;DNS.163 = t162.test -permitted;DNS.164 = t163.test -permitted;DNS.165 = t164.test -permitted;DNS.166 = t165.test -permitted;DNS.167 = t166.test -permitted;DNS.168 = t167.test -permitted;DNS.169 = t168.test -permitted;DNS.170 = t169.test -permitted;DNS.171 = t170.test -permitted;IP.1 = 10.0.0.0/255.255.255.255 -permitted;IP.2 = 10.0.0.1/255.255.255.255 -permitted;IP.3 = 10.0.0.2/255.255.255.255 -permitted;IP.4 = 10.0.0.3/255.255.255.255 -permitted;IP.5 = 10.0.0.4/255.255.255.255 -permitted;IP.6 = 10.0.0.5/255.255.255.255 -permitted;IP.7 = 10.0.0.6/255.255.255.255 -permitted;IP.8 = 10.0.0.7/255.255.255.255 -permitted;IP.9 = 10.0.0.8/255.255.255.255 -permitted;IP.10 = 10.0.0.9/255.255.255.255 -permitted;IP.11 = 10.0.0.10/255.255.255.255 -permitted;IP.12 = 10.0.0.11/255.255.255.255 -permitted;IP.13 = 10.0.0.12/255.255.255.255 -permitted;IP.14 = 10.0.0.13/255.255.255.255 -permitted;IP.15 = 10.0.0.14/255.255.255.255 -permitted;IP.16 = 10.0.0.15/255.255.255.255 -permitted;IP.17 = 10.0.0.16/255.255.255.255 -permitted;IP.18 = 10.0.0.17/255.255.255.255 -permitted;IP.19 = 10.0.0.18/255.255.255.255 -permitted;IP.20 = 10.0.0.19/255.255.255.255 -permitted;IP.21 = 10.0.0.20/255.255.255.255 -permitted;IP.22 = 10.0.0.21/255.255.255.255 -permitted;IP.23 = 10.0.0.22/255.255.255.255 -permitted;IP.24 = 10.0.0.23/255.255.255.255 -permitted;IP.25 = 10.0.0.24/255.255.255.255 -permitted;IP.26 = 10.0.0.25/255.255.255.255 -permitted;IP.27 = 10.0.0.26/255.255.255.255 -permitted;IP.28 = 10.0.0.27/255.255.255.255 -permitted;IP.29 = 10.0.0.28/255.255.255.255 -permitted;IP.30 = 10.0.0.29/255.255.255.255 -permitted;IP.31 = 10.0.0.30/255.255.255.255 -permitted;IP.32 = 10.0.0.31/255.255.255.255 -permitted;IP.33 = 10.0.0.32/255.255.255.255 -permitted;IP.34 = 10.0.0.33/255.255.255.255 -permitted;IP.35 = 10.0.0.34/255.255.255.255 -permitted;IP.36 = 10.0.0.35/255.255.255.255 -permitted;IP.37 = 10.0.0.36/255.255.255.255 -permitted;IP.38 = 10.0.0.37/255.255.255.255 -permitted;IP.39 = 10.0.0.38/255.255.255.255 -permitted;IP.40 = 10.0.0.39/255.255.255.255 -permitted;IP.41 = 10.0.0.40/255.255.255.255 -permitted;IP.42 = 10.0.0.41/255.255.255.255 -permitted;IP.43 = 10.0.0.42/255.255.255.255 -permitted;IP.44 = 10.0.0.43/255.255.255.255 -permitted;IP.45 = 10.0.0.44/255.255.255.255 -permitted;IP.46 = 10.0.0.45/255.255.255.255 -permitted;IP.47 = 10.0.0.46/255.255.255.255 -permitted;IP.48 = 10.0.0.47/255.255.255.255 -permitted;IP.49 = 10.0.0.48/255.255.255.255 -permitted;IP.50 = 10.0.0.49/255.255.255.255 -permitted;IP.51 = 10.0.0.50/255.255.255.255 -permitted;IP.52 = 10.0.0.51/255.255.255.255 -permitted;IP.53 = 10.0.0.52/255.255.255.255 -permitted;IP.54 = 10.0.0.53/255.255.255.255 -permitted;IP.55 = 10.0.0.54/255.255.255.255 -permitted;IP.56 = 10.0.0.55/255.255.255.255 -permitted;IP.57 = 10.0.0.56/255.255.255.255 -permitted;IP.58 = 10.0.0.57/255.255.255.255 -permitted;IP.59 = 10.0.0.58/255.255.255.255 -permitted;IP.60 = 10.0.0.59/255.255.255.255 -permitted;IP.61 = 10.0.0.60/255.255.255.255 -permitted;IP.62 = 10.0.0.61/255.255.255.255 -permitted;IP.63 = 10.0.0.62/255.255.255.255 -permitted;IP.64 = 10.0.0.63/255.255.255.255 -permitted;IP.65 = 10.0.0.64/255.255.255.255 -permitted;IP.66 = 10.0.0.65/255.255.255.255 -permitted;IP.67 = 10.0.0.66/255.255.255.255 -permitted;IP.68 = 10.0.0.67/255.255.255.255 -permitted;IP.69 = 10.0.0.68/255.255.255.255 -permitted;IP.70 = 10.0.0.69/255.255.255.255 -permitted;IP.71 = 10.0.0.70/255.255.255.255 -permitted;IP.72 = 10.0.0.71/255.255.255.255 -permitted;IP.73 = 10.0.0.72/255.255.255.255 -permitted;IP.74 = 10.0.0.73/255.255.255.255 -permitted;IP.75 = 10.0.0.74/255.255.255.255 -permitted;IP.76 = 10.0.0.75/255.255.255.255 -permitted;IP.77 = 10.0.0.76/255.255.255.255 -permitted;IP.78 = 10.0.0.77/255.255.255.255 -permitted;IP.79 = 10.0.0.78/255.255.255.255 -permitted;IP.80 = 10.0.0.79/255.255.255.255 -permitted;IP.81 = 10.0.0.80/255.255.255.255 -permitted;IP.82 = 10.0.0.81/255.255.255.255 -permitted;IP.83 = 10.0.0.82/255.255.255.255 -permitted;IP.84 = 10.0.0.83/255.255.255.255 -permitted;IP.85 = 10.0.0.84/255.255.255.255 -permitted;IP.86 = 10.0.0.85/255.255.255.255 -permitted;IP.87 = 10.0.0.86/255.255.255.255 -permitted;IP.88 = 10.0.0.87/255.255.255.255 -permitted;IP.89 = 10.0.0.88/255.255.255.255 -permitted;IP.90 = 10.0.0.89/255.255.255.255 -permitted;IP.91 = 10.0.0.90/255.255.255.255 -permitted;IP.92 = 10.0.0.91/255.255.255.255 -permitted;IP.93 = 10.0.0.92/255.255.255.255 -permitted;IP.94 = 10.0.0.93/255.255.255.255 -permitted;IP.95 = 10.0.0.94/255.255.255.255 -permitted;IP.96 = 10.0.0.95/255.255.255.255 -permitted;IP.97 = 10.0.0.96/255.255.255.255 -permitted;IP.98 = 10.0.0.97/255.255.255.255 -permitted;IP.99 = 10.0.0.98/255.255.255.255 -permitted;IP.100 = 10.0.0.99/255.255.255.255 -permitted;IP.101 = 10.0.0.100/255.255.255.255 -permitted;IP.102 = 10.0.0.101/255.255.255.255 -permitted;IP.103 = 10.0.0.102/255.255.255.255 -permitted;IP.104 = 10.0.0.103/255.255.255.255 -permitted;IP.105 = 10.0.0.104/255.255.255.255 -permitted;IP.106 = 10.0.0.105/255.255.255.255 -permitted;IP.107 = 10.0.0.106/255.255.255.255 -permitted;IP.108 = 10.0.0.107/255.255.255.255 -permitted;IP.109 = 10.0.0.108/255.255.255.255 -permitted;IP.110 = 10.0.0.109/255.255.255.255 -permitted;IP.111 = 10.0.0.110/255.255.255.255 -permitted;IP.112 = 10.0.0.111/255.255.255.255 -permitted;IP.113 = 10.0.0.112/255.255.255.255 -permitted;IP.114 = 10.0.0.113/255.255.255.255 -permitted;IP.115 = 10.0.0.114/255.255.255.255 -permitted;IP.116 = 10.0.0.115/255.255.255.255 -permitted;IP.117 = 10.0.0.116/255.255.255.255 -permitted;IP.118 = 10.0.0.117/255.255.255.255 -permitted;IP.119 = 10.0.0.118/255.255.255.255 -permitted;IP.120 = 10.0.0.119/255.255.255.255 -permitted;IP.121 = 10.0.0.120/255.255.255.255 -permitted;IP.122 = 10.0.0.121/255.255.255.255 -permitted;IP.123 = 10.0.0.122/255.255.255.255 -permitted;IP.124 = 10.0.0.123/255.255.255.255 -permitted;IP.125 = 10.0.0.124/255.255.255.255 -permitted;IP.126 = 10.0.0.125/255.255.255.255 -permitted;IP.127 = 10.0.0.126/255.255.255.255 -permitted;IP.128 = 10.0.0.127/255.255.255.255 -permitted;IP.129 = 10.0.0.128/255.255.255.255 -permitted;IP.130 = 10.0.0.129/255.255.255.255 -permitted;IP.131 = 10.0.0.130/255.255.255.255 -permitted;IP.132 = 10.0.0.131/255.255.255.255 -permitted;IP.133 = 10.0.0.132/255.255.255.255 -permitted;IP.134 = 10.0.0.133/255.255.255.255 -permitted;IP.135 = 10.0.0.134/255.255.255.255 -permitted;IP.136 = 10.0.0.135/255.255.255.255 -permitted;IP.137 = 10.0.0.136/255.255.255.255 -permitted;IP.138 = 10.0.0.137/255.255.255.255 -permitted;IP.139 = 10.0.0.138/255.255.255.255 -permitted;IP.140 = 10.0.0.139/255.255.255.255 -permitted;IP.141 = 10.0.0.140/255.255.255.255 -permitted;IP.142 = 10.0.0.141/255.255.255.255 -permitted;IP.143 = 10.0.0.142/255.255.255.255 -permitted;IP.144 = 10.0.0.143/255.255.255.255 -permitted;IP.145 = 10.0.0.144/255.255.255.255 -permitted;IP.146 = 10.0.0.145/255.255.255.255 -permitted;IP.147 = 10.0.0.146/255.255.255.255 -permitted;IP.148 = 10.0.0.147/255.255.255.255 -permitted;IP.149 = 10.0.0.148/255.255.255.255 -permitted;IP.150 = 10.0.0.149/255.255.255.255 -permitted;IP.151 = 10.0.0.150/255.255.255.255 -permitted;IP.152 = 10.0.0.151/255.255.255.255 -permitted;IP.153 = 10.0.0.152/255.255.255.255 -permitted;IP.154 = 10.0.0.153/255.255.255.255 -permitted;IP.155 = 10.0.0.154/255.255.255.255 -permitted;IP.156 = 10.0.0.155/255.255.255.255 -permitted;IP.157 = 10.0.0.156/255.255.255.255 -permitted;IP.158 = 10.0.0.157/255.255.255.255 -permitted;IP.159 = 10.0.0.158/255.255.255.255 -permitted;IP.160 = 10.0.0.159/255.255.255.255 -permitted;IP.161 = 10.0.0.160/255.255.255.255 -permitted;IP.162 = 10.0.0.161/255.255.255.255 -permitted;IP.163 = 10.0.0.162/255.255.255.255 -permitted;IP.164 = 10.0.0.163/255.255.255.255 -permitted;IP.165 = 10.0.0.164/255.255.255.255 -permitted;IP.166 = 10.0.0.165/255.255.255.255 -permitted;IP.167 = 10.0.0.166/255.255.255.255 -permitted;IP.168 = 10.0.0.167/255.255.255.255 -permitted;IP.169 = 10.0.0.168/255.255.255.255 -permitted;IP.170 = 10.0.0.169/255.255.255.255 -permitted;IP.171 = 10.0.0.170/255.255.255.255 -permitted;dirName.1 = nameConstraints_dirname_p1 -permitted;dirName.2 = nameConstraints_dirname_p2 -permitted;dirName.3 = nameConstraints_dirname_p3 -permitted;dirName.4 = nameConstraints_dirname_p4 -permitted;dirName.5 = nameConstraints_dirname_p5 -permitted;dirName.6 = nameConstraints_dirname_p6 -permitted;dirName.7 = nameConstraints_dirname_p7 -permitted;dirName.8 = nameConstraints_dirname_p8 -permitted;dirName.9 = nameConstraints_dirname_p9 -permitted;dirName.10 = nameConstraints_dirname_p10 -permitted;dirName.11 = nameConstraints_dirname_p11 -permitted;dirName.12 = nameConstraints_dirname_p12 -permitted;dirName.13 = nameConstraints_dirname_p13 -permitted;dirName.14 = nameConstraints_dirname_p14 -permitted;dirName.15 = nameConstraints_dirname_p15 -permitted;dirName.16 = nameConstraints_dirname_p16 -permitted;dirName.17 = nameConstraints_dirname_p17 -permitted;dirName.18 = nameConstraints_dirname_p18 -permitted;dirName.19 = nameConstraints_dirname_p19 -permitted;dirName.20 = nameConstraints_dirname_p20 -permitted;dirName.21 = nameConstraints_dirname_p21 -permitted;dirName.22 = nameConstraints_dirname_p22 -permitted;dirName.23 = nameConstraints_dirname_p23 -permitted;dirName.24 = nameConstraints_dirname_p24 -permitted;dirName.25 = nameConstraints_dirname_p25 -permitted;dirName.26 = nameConstraints_dirname_p26 -permitted;dirName.27 = nameConstraints_dirname_p27 -permitted;dirName.28 = nameConstraints_dirname_p28 -permitted;dirName.29 = nameConstraints_dirname_p29 -permitted;dirName.30 = nameConstraints_dirname_p30 -permitted;dirName.31 = nameConstraints_dirname_p31 -permitted;dirName.32 = nameConstraints_dirname_p32 -permitted;dirName.33 = nameConstraints_dirname_p33 -permitted;dirName.34 = nameConstraints_dirname_p34 -permitted;dirName.35 = nameConstraints_dirname_p35 -permitted;dirName.36 = nameConstraints_dirname_p36 -permitted;dirName.37 = nameConstraints_dirname_p37 -permitted;dirName.38 = nameConstraints_dirname_p38 -permitted;dirName.39 = nameConstraints_dirname_p39 -permitted;dirName.40 = nameConstraints_dirname_p40 -permitted;dirName.41 = nameConstraints_dirname_p41 -permitted;dirName.42 = nameConstraints_dirname_p42 -permitted;dirName.43 = nameConstraints_dirname_p43 -permitted;dirName.44 = nameConstraints_dirname_p44 -permitted;dirName.45 = nameConstraints_dirname_p45 -permitted;dirName.46 = nameConstraints_dirname_p46 -permitted;dirName.47 = nameConstraints_dirname_p47 -permitted;dirName.48 = nameConstraints_dirname_p48 -permitted;dirName.49 = nameConstraints_dirname_p49 -permitted;dirName.50 = nameConstraints_dirname_p50 -permitted;dirName.51 = nameConstraints_dirname_p51 -permitted;dirName.52 = nameConstraints_dirname_p52 -permitted;dirName.53 = nameConstraints_dirname_p53 -permitted;dirName.54 = nameConstraints_dirname_p54 -permitted;dirName.55 = nameConstraints_dirname_p55 -permitted;dirName.56 = nameConstraints_dirname_p56 -permitted;dirName.57 = nameConstraints_dirname_p57 -permitted;dirName.58 = nameConstraints_dirname_p58 -permitted;dirName.59 = nameConstraints_dirname_p59 -permitted;dirName.60 = nameConstraints_dirname_p60 -permitted;dirName.61 = nameConstraints_dirname_p61 -permitted;dirName.62 = nameConstraints_dirname_p62 -permitted;dirName.63 = nameConstraints_dirname_p63 -permitted;dirName.64 = nameConstraints_dirname_p64 -permitted;dirName.65 = nameConstraints_dirname_p65 -permitted;dirName.66 = nameConstraints_dirname_p66 -permitted;dirName.67 = nameConstraints_dirname_p67 -permitted;dirName.68 = nameConstraints_dirname_p68 -permitted;dirName.69 = nameConstraints_dirname_p69 -permitted;dirName.70 = nameConstraints_dirname_p70 -permitted;dirName.71 = nameConstraints_dirname_p71 -permitted;dirName.72 = nameConstraints_dirname_p72 -permitted;dirName.73 = nameConstraints_dirname_p73 -permitted;dirName.74 = nameConstraints_dirname_p74 -permitted;dirName.75 = nameConstraints_dirname_p75 -permitted;dirName.76 = nameConstraints_dirname_p76 -permitted;dirName.77 = nameConstraints_dirname_p77 -permitted;dirName.78 = nameConstraints_dirname_p78 -permitted;dirName.79 = nameConstraints_dirname_p79 -permitted;dirName.80 = nameConstraints_dirname_p80 -permitted;dirName.81 = nameConstraints_dirname_p81 -permitted;dirName.82 = nameConstraints_dirname_p82 -permitted;dirName.83 = nameConstraints_dirname_p83 -permitted;dirName.84 = nameConstraints_dirname_p84 -permitted;dirName.85 = nameConstraints_dirname_p85 -permitted;dirName.86 = nameConstraints_dirname_p86 -permitted;dirName.87 = nameConstraints_dirname_p87 -permitted;dirName.88 = nameConstraints_dirname_p88 -permitted;dirName.89 = nameConstraints_dirname_p89 -permitted;dirName.90 = nameConstraints_dirname_p90 -permitted;dirName.91 = nameConstraints_dirname_p91 -permitted;dirName.92 = nameConstraints_dirname_p92 -permitted;dirName.93 = nameConstraints_dirname_p93 -permitted;dirName.94 = nameConstraints_dirname_p94 -permitted;dirName.95 = nameConstraints_dirname_p95 -permitted;dirName.96 = nameConstraints_dirname_p96 -permitted;dirName.97 = nameConstraints_dirname_p97 -permitted;dirName.98 = nameConstraints_dirname_p98 -permitted;dirName.99 = nameConstraints_dirname_p99 -permitted;dirName.100 = nameConstraints_dirname_p100 -permitted;dirName.101 = nameConstraints_dirname_p101 -permitted;dirName.102 = nameConstraints_dirname_p102 -permitted;dirName.103 = nameConstraints_dirname_p103 -permitted;dirName.104 = nameConstraints_dirname_p104 -permitted;dirName.105 = nameConstraints_dirname_p105 -permitted;dirName.106 = nameConstraints_dirname_p106 -permitted;dirName.107 = nameConstraints_dirname_p107 -permitted;dirName.108 = nameConstraints_dirname_p108 -permitted;dirName.109 = nameConstraints_dirname_p109 -permitted;dirName.110 = nameConstraints_dirname_p110 -permitted;dirName.111 = nameConstraints_dirname_p111 -permitted;dirName.112 = nameConstraints_dirname_p112 -permitted;dirName.113 = nameConstraints_dirname_p113 -permitted;dirName.114 = nameConstraints_dirname_p114 -permitted;dirName.115 = nameConstraints_dirname_p115 -permitted;dirName.116 = nameConstraints_dirname_p116 -permitted;dirName.117 = nameConstraints_dirname_p117 -permitted;dirName.118 = nameConstraints_dirname_p118 -permitted;dirName.119 = nameConstraints_dirname_p119 -permitted;dirName.120 = nameConstraints_dirname_p120 -permitted;dirName.121 = nameConstraints_dirname_p121 -permitted;dirName.122 = nameConstraints_dirname_p122 -permitted;dirName.123 = nameConstraints_dirname_p123 -permitted;dirName.124 = nameConstraints_dirname_p124 -permitted;dirName.125 = nameConstraints_dirname_p125 -permitted;dirName.126 = nameConstraints_dirname_p126 -permitted;dirName.127 = nameConstraints_dirname_p127 -permitted;dirName.128 = nameConstraints_dirname_p128 -permitted;dirName.129 = nameConstraints_dirname_p129 -permitted;dirName.130 = nameConstraints_dirname_p130 -permitted;dirName.131 = nameConstraints_dirname_p131 -permitted;dirName.132 = nameConstraints_dirname_p132 -permitted;dirName.133 = nameConstraints_dirname_p133 -permitted;dirName.134 = nameConstraints_dirname_p134 -permitted;dirName.135 = nameConstraints_dirname_p135 -permitted;dirName.136 = nameConstraints_dirname_p136 -permitted;dirName.137 = nameConstraints_dirname_p137 -permitted;dirName.138 = nameConstraints_dirname_p138 -permitted;dirName.139 = nameConstraints_dirname_p139 -permitted;dirName.140 = nameConstraints_dirname_p140 -permitted;dirName.141 = nameConstraints_dirname_p141 -permitted;dirName.142 = nameConstraints_dirname_p142 -permitted;dirName.143 = nameConstraints_dirname_p143 -permitted;dirName.144 = nameConstraints_dirname_p144 -permitted;dirName.145 = nameConstraints_dirname_p145 -permitted;dirName.146 = nameConstraints_dirname_p146 -permitted;dirName.147 = nameConstraints_dirname_p147 -permitted;dirName.148 = nameConstraints_dirname_p148 -permitted;dirName.149 = nameConstraints_dirname_p149 -permitted;dirName.150 = nameConstraints_dirname_p150 -permitted;dirName.151 = nameConstraints_dirname_p151 -permitted;dirName.152 = nameConstraints_dirname_p152 -permitted;dirName.153 = nameConstraints_dirname_p153 -permitted;dirName.154 = nameConstraints_dirname_p154 -permitted;dirName.155 = nameConstraints_dirname_p155 -permitted;dirName.156 = nameConstraints_dirname_p156 -permitted;dirName.157 = nameConstraints_dirname_p157 -permitted;dirName.158 = nameConstraints_dirname_p158 -permitted;dirName.159 = nameConstraints_dirname_p159 -permitted;dirName.160 = nameConstraints_dirname_p160 -permitted;dirName.161 = nameConstraints_dirname_p161 -permitted;dirName.162 = nameConstraints_dirname_p162 -permitted;dirName.163 = nameConstraints_dirname_p163 -permitted;dirName.164 = nameConstraints_dirname_p164 -permitted;dirName.165 = nameConstraints_dirname_p165 -permitted;dirName.166 = nameConstraints_dirname_p166 -permitted;dirName.167 = nameConstraints_dirname_p167 -permitted;dirName.168 = nameConstraints_dirname_p168 -permitted;dirName.169 = nameConstraints_dirname_p169 -permitted;dirName.170 = nameConstraints_dirname_p170 -permitted;dirName.171 = nameConstraints_dirname_p171 -permitted;dirName.172 = nameConstraints_dirname_p172 -permitted;URI.1 = http://test/0 -permitted;URI.2 = http://test/1 -permitted;URI.3 = http://test/2 -permitted;URI.4 = http://test/3 -permitted;URI.5 = http://test/4 -permitted;URI.6 = http://test/5 -permitted;URI.7 = http://test/6 -permitted;URI.8 = http://test/7 -permitted;URI.9 = http://test/8 -permitted;URI.10 = http://test/9 -permitted;URI.11 = http://test/10 -permitted;URI.12 = http://test/11 -permitted;URI.13 = http://test/12 -permitted;URI.14 = http://test/13 -permitted;URI.15 = http://test/14 -permitted;URI.16 = http://test/15 -permitted;URI.17 = http://test/16 -permitted;URI.18 = http://test/17 -permitted;URI.19 = http://test/18 -permitted;URI.20 = http://test/19 -permitted;URI.21 = http://test/20 -permitted;URI.22 = http://test/21 -permitted;URI.23 = http://test/22 -permitted;URI.24 = http://test/23 -permitted;URI.25 = http://test/24 -permitted;URI.26 = http://test/25 -permitted;URI.27 = http://test/26 -permitted;URI.28 = http://test/27 -permitted;URI.29 = http://test/28 -permitted;URI.30 = http://test/29 -permitted;URI.31 = http://test/30 -permitted;URI.32 = http://test/31 -permitted;URI.33 = http://test/32 -permitted;URI.34 = http://test/33 -permitted;URI.35 = http://test/34 -permitted;URI.36 = http://test/35 -permitted;URI.37 = http://test/36 -permitted;URI.38 = http://test/37 -permitted;URI.39 = http://test/38 -permitted;URI.40 = http://test/39 -permitted;URI.41 = http://test/40 -permitted;URI.42 = http://test/41 -permitted;URI.43 = http://test/42 -permitted;URI.44 = http://test/43 -permitted;URI.45 = http://test/44 -permitted;URI.46 = http://test/45 -permitted;URI.47 = http://test/46 -permitted;URI.48 = http://test/47 -permitted;URI.49 = http://test/48 -permitted;URI.50 = http://test/49 -permitted;URI.51 = http://test/50 -permitted;URI.52 = http://test/51 -permitted;URI.53 = http://test/52 -permitted;URI.54 = http://test/53 -permitted;URI.55 = http://test/54 -permitted;URI.56 = http://test/55 -permitted;URI.57 = http://test/56 -permitted;URI.58 = http://test/57 -permitted;URI.59 = http://test/58 -permitted;URI.60 = http://test/59 -permitted;URI.61 = http://test/60 -permitted;URI.62 = http://test/61 -permitted;URI.63 = http://test/62 -permitted;URI.64 = http://test/63 -permitted;URI.65 = http://test/64 -permitted;URI.66 = http://test/65 -permitted;URI.67 = http://test/66 -permitted;URI.68 = http://test/67 -permitted;URI.69 = http://test/68 -permitted;URI.70 = http://test/69 -permitted;URI.71 = http://test/70 -permitted;URI.72 = http://test/71 -permitted;URI.73 = http://test/72 -permitted;URI.74 = http://test/73 -permitted;URI.75 = http://test/74 -permitted;URI.76 = http://test/75 -permitted;URI.77 = http://test/76 -permitted;URI.78 = http://test/77 -permitted;URI.79 = http://test/78 -permitted;URI.80 = http://test/79 -permitted;URI.81 = http://test/80 -permitted;URI.82 = http://test/81 -permitted;URI.83 = http://test/82 -permitted;URI.84 = http://test/83 -permitted;URI.85 = http://test/84 -permitted;URI.86 = http://test/85 -permitted;URI.87 = http://test/86 -permitted;URI.88 = http://test/87 -permitted;URI.89 = http://test/88 -permitted;URI.90 = http://test/89 -permitted;URI.91 = http://test/90 -permitted;URI.92 = http://test/91 -permitted;URI.93 = http://test/92 -permitted;URI.94 = http://test/93 -permitted;URI.95 = http://test/94 -permitted;URI.96 = http://test/95 -permitted;URI.97 = http://test/96 -permitted;URI.98 = http://test/97 -permitted;URI.99 = http://test/98 -permitted;URI.100 = http://test/99 -permitted;URI.101 = http://test/100 -permitted;URI.102 = http://test/101 -permitted;URI.103 = http://test/102 -permitted;URI.104 = http://test/103 -permitted;URI.105 = http://test/104 -permitted;URI.106 = http://test/105 -permitted;URI.107 = http://test/106 -permitted;URI.108 = http://test/107 -permitted;URI.109 = http://test/108 -permitted;URI.110 = http://test/109 -permitted;URI.111 = http://test/110 -permitted;URI.112 = http://test/111 -permitted;URI.113 = http://test/112 -permitted;URI.114 = http://test/113 -permitted;URI.115 = http://test/114 -permitted;URI.116 = http://test/115 -permitted;URI.117 = http://test/116 -permitted;URI.118 = http://test/117 -permitted;URI.119 = http://test/118 -permitted;URI.120 = http://test/119 -permitted;URI.121 = http://test/120 -permitted;URI.122 = http://test/121 -permitted;URI.123 = http://test/122 -permitted;URI.124 = http://test/123 -permitted;URI.125 = http://test/124 -permitted;URI.126 = http://test/125 -permitted;URI.127 = http://test/126 -permitted;URI.128 = http://test/127 -permitted;URI.129 = http://test/128 -permitted;URI.130 = http://test/129 -permitted;URI.131 = http://test/130 -permitted;URI.132 = http://test/131 -permitted;URI.133 = http://test/132 -permitted;URI.134 = http://test/133 -permitted;URI.135 = http://test/134 -permitted;URI.136 = http://test/135 -permitted;URI.137 = http://test/136 -permitted;URI.138 = http://test/137 -permitted;URI.139 = http://test/138 -permitted;URI.140 = http://test/139 -permitted;URI.141 = http://test/140 -permitted;URI.142 = http://test/141 -permitted;URI.143 = http://test/142 -permitted;URI.144 = http://test/143 -permitted;URI.145 = http://test/144 -permitted;URI.146 = http://test/145 -permitted;URI.147 = http://test/146 -permitted;URI.148 = http://test/147 -permitted;URI.149 = http://test/148 -permitted;URI.150 = http://test/149 -permitted;URI.151 = http://test/150 -permitted;URI.152 = http://test/151 -permitted;URI.153 = http://test/152 -permitted;URI.154 = http://test/153 -permitted;URI.155 = http://test/154 -permitted;URI.156 = http://test/155 -permitted;URI.157 = http://test/156 -permitted;URI.158 = http://test/157 -permitted;URI.159 = http://test/158 -permitted;URI.160 = http://test/159 -permitted;URI.161 = http://test/160 -permitted;URI.162 = http://test/161 -permitted;URI.163 = http://test/162 -permitted;URI.164 = http://test/163 -permitted;URI.165 = http://test/164 -permitted;URI.166 = http://test/165 -permitted;URI.167 = http://test/166 -permitted;URI.168 = http://test/167 -permitted;URI.169 = http://test/168 -permitted;URI.170 = http://test/169 -permitted;URI.171 = http://test/170 -permitted;URI.172 = http://test/171 -permitted;URI.173 = http://test/172 -permitted;URI.174 = http://test/173 -permitted;URI.175 = http://test/174 -permitted;URI.176 = http://test/175 -permitted;URI.177 = http://test/176 -permitted;URI.178 = http://test/177 -permitted;URI.179 = http://test/178 -permitted;URI.180 = http://test/179 -permitted;URI.181 = http://test/180 -permitted;URI.182 = http://test/181 -permitted;URI.183 = http://test/182 -permitted;URI.184 = http://test/183 -permitted;URI.185 = http://test/184 -permitted;URI.186 = http://test/185 -permitted;URI.187 = http://test/186 -permitted;URI.188 = http://test/187 -permitted;URI.189 = http://test/188 -permitted;URI.190 = http://test/189 -permitted;URI.191 = http://test/190 -permitted;URI.192 = http://test/191 -permitted;URI.193 = http://test/192 -permitted;URI.194 = http://test/193 -permitted;URI.195 = http://test/194 -permitted;URI.196 = http://test/195 -permitted;URI.197 = http://test/196 -permitted;URI.198 = http://test/197 -permitted;URI.199 = http://test/198 -permitted;URI.200 = http://test/199 -permitted;URI.201 = http://test/200 -permitted;URI.202 = http://test/201 -permitted;URI.203 = http://test/202 -permitted;URI.204 = http://test/203 -permitted;URI.205 = http://test/204 -permitted;URI.206 = http://test/205 -permitted;URI.207 = http://test/206 -permitted;URI.208 = http://test/207 -permitted;URI.209 = http://test/208 -permitted;URI.210 = http://test/209 -permitted;URI.211 = http://test/210 -permitted;URI.212 = http://test/211 -permitted;URI.213 = http://test/212 -permitted;URI.214 = http://test/213 -permitted;URI.215 = http://test/214 -permitted;URI.216 = http://test/215 -permitted;URI.217 = http://test/216 -permitted;URI.218 = http://test/217 -permitted;URI.219 = http://test/218 -permitted;URI.220 = http://test/219 -permitted;URI.221 = http://test/220 -permitted;URI.222 = http://test/221 -permitted;URI.223 = http://test/222 -permitted;URI.224 = http://test/223 -permitted;URI.225 = http://test/224 -permitted;URI.226 = http://test/225 -permitted;URI.227 = http://test/226 -permitted;URI.228 = http://test/227 -permitted;URI.229 = http://test/228 -permitted;URI.230 = http://test/229 -permitted;URI.231 = http://test/230 -permitted;URI.232 = http://test/231 -permitted;URI.233 = http://test/232 -permitted;URI.234 = http://test/233 -permitted;URI.235 = http://test/234 -permitted;URI.236 = http://test/235 -permitted;URI.237 = http://test/236 -permitted;URI.238 = http://test/237 -permitted;URI.239 = http://test/238 -permitted;URI.240 = http://test/239 -permitted;URI.241 = http://test/240 -permitted;URI.242 = http://test/241 -permitted;URI.243 = http://test/242 -permitted;URI.244 = http://test/243 -permitted;URI.245 = http://test/244 -permitted;URI.246 = http://test/245 -permitted;URI.247 = http://test/246 -permitted;URI.248 = http://test/247 -permitted;URI.249 = http://test/248 -permitted;URI.250 = http://test/249 -permitted;URI.251 = http://test/250 -permitted;URI.252 = http://test/251 -permitted;URI.253 = http://test/252 -permitted;URI.254 = http://test/253 -permitted;URI.255 = http://test/254 -permitted;URI.256 = http://test/255 -permitted;URI.257 = http://test/256 -permitted;URI.258 = http://test/257 -permitted;URI.259 = http://test/258 -permitted;URI.260 = http://test/259 -permitted;URI.261 = http://test/260 -permitted;URI.262 = http://test/261 -permitted;URI.263 = http://test/262 -permitted;URI.264 = http://test/263 -permitted;URI.265 = http://test/264 -permitted;URI.266 = http://test/265 -permitted;URI.267 = http://test/266 -permitted;URI.268 = http://test/267 -permitted;URI.269 = http://test/268 -permitted;URI.270 = http://test/269 -permitted;URI.271 = http://test/270 -permitted;URI.272 = http://test/271 -permitted;URI.273 = http://test/272 -permitted;URI.274 = http://test/273 -permitted;URI.275 = http://test/274 -permitted;URI.276 = http://test/275 -permitted;URI.277 = http://test/276 -permitted;URI.278 = http://test/277 -permitted;URI.279 = http://test/278 -permitted;URI.280 = http://test/279 -permitted;URI.281 = http://test/280 -permitted;URI.282 = http://test/281 -permitted;URI.283 = http://test/282 -permitted;URI.284 = http://test/283 -permitted;URI.285 = http://test/284 -permitted;URI.286 = http://test/285 -permitted;URI.287 = http://test/286 -permitted;URI.288 = http://test/287 -permitted;URI.289 = http://test/288 -permitted;URI.290 = http://test/289 -permitted;URI.291 = http://test/290 -permitted;URI.292 = http://test/291 -permitted;URI.293 = http://test/292 -permitted;URI.294 = http://test/293 -permitted;URI.295 = http://test/294 -permitted;URI.296 = http://test/295 -permitted;URI.297 = http://test/296 -permitted;URI.298 = http://test/297 -permitted;URI.299 = http://test/298 -permitted;URI.300 = http://test/299 -permitted;URI.301 = http://test/300 -permitted;URI.302 = http://test/301 -permitted;URI.303 = http://test/302 -permitted;URI.304 = http://test/303 -permitted;URI.305 = http://test/304 -permitted;URI.306 = http://test/305 -permitted;URI.307 = http://test/306 -permitted;URI.308 = http://test/307 -permitted;URI.309 = http://test/308 -permitted;URI.310 = http://test/309 -permitted;URI.311 = http://test/310 -permitted;URI.312 = http://test/311 -permitted;URI.313 = http://test/312 -permitted;URI.314 = http://test/313 -permitted;URI.315 = http://test/314 -permitted;URI.316 = http://test/315 -permitted;URI.317 = http://test/316 -permitted;URI.318 = http://test/317 -permitted;URI.319 = http://test/318 -permitted;URI.320 = http://test/319 -permitted;URI.321 = http://test/320 -permitted;URI.322 = http://test/321 -permitted;URI.323 = http://test/322 -permitted;URI.324 = http://test/323 -permitted;URI.325 = http://test/324 -permitted;URI.326 = http://test/325 -permitted;URI.327 = http://test/326 -permitted;URI.328 = http://test/327 -permitted;URI.329 = http://test/328 -permitted;URI.330 = http://test/329 -permitted;URI.331 = http://test/330 -permitted;URI.332 = http://test/331 -permitted;URI.333 = http://test/332 -permitted;URI.334 = http://test/333 -permitted;URI.335 = http://test/334 -permitted;URI.336 = http://test/335 -permitted;URI.337 = http://test/336 -permitted;URI.338 = http://test/337 -permitted;URI.339 = http://test/338 -permitted;URI.340 = http://test/339 -permitted;URI.341 = http://test/340 -permitted;URI.342 = http://test/341 -permitted;URI.343 = http://test/342 -permitted;URI.344 = http://test/343 -permitted;URI.345 = http://test/344 -permitted;URI.346 = http://test/345 -permitted;URI.347 = http://test/346 -permitted;URI.348 = http://test/347 -permitted;URI.349 = http://test/348 -permitted;URI.350 = http://test/349 -permitted;URI.351 = http://test/350 -permitted;URI.352 = http://test/351 -permitted;URI.353 = http://test/352 -permitted;URI.354 = http://test/353 -permitted;URI.355 = http://test/354 -permitted;URI.356 = http://test/355 -permitted;URI.357 = http://test/356 -permitted;URI.358 = http://test/357 -permitted;URI.359 = http://test/358 -permitted;URI.360 = http://test/359 -permitted;URI.361 = http://test/360 -permitted;URI.362 = http://test/361 -permitted;URI.363 = http://test/362 -permitted;URI.364 = http://test/363 -permitted;URI.365 = http://test/364 -permitted;URI.366 = http://test/365 -permitted;URI.367 = http://test/366 -permitted;URI.368 = http://test/367 -permitted;URI.369 = http://test/368 -permitted;URI.370 = http://test/369 -permitted;URI.371 = http://test/370 -permitted;URI.372 = http://test/371 -permitted;URI.373 = http://test/372 -permitted;URI.374 = http://test/373 -permitted;URI.375 = http://test/374 -permitted;URI.376 = http://test/375 -permitted;URI.377 = http://test/376 -permitted;URI.378 = http://test/377 -permitted;URI.379 = http://test/378 -permitted;URI.380 = http://test/379 -permitted;URI.381 = http://test/380 -permitted;URI.382 = http://test/381 -permitted;URI.383 = http://test/382 -permitted;URI.384 = http://test/383 -permitted;URI.385 = http://test/384 -permitted;URI.386 = http://test/385 -permitted;URI.387 = http://test/386 -permitted;URI.388 = http://test/387 -permitted;URI.389 = http://test/388 -permitted;URI.390 = http://test/389 -permitted;URI.391 = http://test/390 -permitted;URI.392 = http://test/391 -permitted;URI.393 = http://test/392 -permitted;URI.394 = http://test/393 -permitted;URI.395 = http://test/394 -permitted;URI.396 = http://test/395 -permitted;URI.397 = http://test/396 -permitted;URI.398 = http://test/397 -permitted;URI.399 = http://test/398 -permitted;URI.400 = http://test/399 -permitted;URI.401 = http://test/400 -permitted;URI.402 = http://test/401 -permitted;URI.403 = http://test/402 -permitted;URI.404 = http://test/403 -permitted;URI.405 = http://test/404 -permitted;URI.406 = http://test/405 -permitted;URI.407 = http://test/406 -permitted;URI.408 = http://test/407 -permitted;URI.409 = http://test/408 -permitted;URI.410 = http://test/409 -permitted;URI.411 = http://test/410 -permitted;URI.412 = http://test/411 -permitted;URI.413 = http://test/412 -permitted;URI.414 = http://test/413 -permitted;URI.415 = http://test/414 -permitted;URI.416 = http://test/415 -permitted;URI.417 = http://test/416 -permitted;URI.418 = http://test/417 -permitted;URI.419 = http://test/418 -permitted;URI.420 = http://test/419 -permitted;URI.421 = http://test/420 -permitted;URI.422 = http://test/421 -permitted;URI.423 = http://test/422 -permitted;URI.424 = http://test/423 -permitted;URI.425 = http://test/424 -permitted;URI.426 = http://test/425 -permitted;URI.427 = http://test/426 -permitted;URI.428 = http://test/427 -permitted;URI.429 = http://test/428 -permitted;URI.430 = http://test/429 -permitted;URI.431 = http://test/430 -permitted;URI.432 = http://test/431 -permitted;URI.433 = http://test/432 -permitted;URI.434 = http://test/433 -permitted;URI.435 = http://test/434 -permitted;URI.436 = http://test/435 -permitted;URI.437 = http://test/436 -permitted;URI.438 = http://test/437 -permitted;URI.439 = http://test/438 -permitted;URI.440 = http://test/439 -permitted;URI.441 = http://test/440 -permitted;URI.442 = http://test/441 -permitted;URI.443 = http://test/442 -permitted;URI.444 = http://test/443 -permitted;URI.445 = http://test/444 -permitted;URI.446 = http://test/445 -permitted;URI.447 = http://test/446 -permitted;URI.448 = http://test/447 -permitted;URI.449 = http://test/448 -permitted;URI.450 = http://test/449 -permitted;URI.451 = http://test/450 -permitted;URI.452 = http://test/451 -permitted;URI.453 = http://test/452 -permitted;URI.454 = http://test/453 -permitted;URI.455 = http://test/454 -permitted;URI.456 = http://test/455 -permitted;URI.457 = http://test/456 -permitted;URI.458 = http://test/457 -permitted;URI.459 = http://test/458 -permitted;URI.460 = http://test/459 -permitted;URI.461 = http://test/460 -permitted;URI.462 = http://test/461 -permitted;URI.463 = http://test/462 -permitted;URI.464 = http://test/463 -permitted;URI.465 = http://test/464 -permitted;URI.466 = http://test/465 -permitted;URI.467 = http://test/466 -permitted;URI.468 = http://test/467 -permitted;URI.469 = http://test/468 -permitted;URI.470 = http://test/469 -permitted;URI.471 = http://test/470 -permitted;URI.472 = http://test/471 -permitted;URI.473 = http://test/472 -permitted;URI.474 = http://test/473 -permitted;URI.475 = http://test/474 -permitted;URI.476 = http://test/475 -permitted;URI.477 = http://test/476 -permitted;URI.478 = http://test/477 -permitted;URI.479 = http://test/478 -permitted;URI.480 = http://test/479 -permitted;URI.481 = http://test/480 -permitted;URI.482 = http://test/481 -permitted;URI.483 = http://test/482 -permitted;URI.484 = http://test/483 -permitted;URI.485 = http://test/484 -permitted;URI.486 = http://test/485 -permitted;URI.487 = http://test/486 -permitted;URI.488 = http://test/487 -permitted;URI.489 = http://test/488 -permitted;URI.490 = http://test/489 -permitted;URI.491 = http://test/490 -permitted;URI.492 = http://test/491 -permitted;URI.493 = http://test/492 -permitted;URI.494 = http://test/493 -permitted;URI.495 = http://test/494 -permitted;URI.496 = http://test/495 -permitted;URI.497 = http://test/496 -permitted;URI.498 = http://test/497 -permitted;URI.499 = http://test/498 -permitted;URI.500 = http://test/499 -permitted;URI.501 = http://test/500 -permitted;URI.502 = http://test/501 -permitted;URI.503 = http://test/502 -permitted;URI.504 = http://test/503 -permitted;URI.505 = http://test/504 -permitted;URI.506 = http://test/505 -permitted;URI.507 = http://test/506 -permitted;URI.508 = http://test/507 -permitted;URI.509 = http://test/508 -permitted;URI.510 = http://test/509 -permitted;URI.511 = http://test/510 -permitted;URI.512 = http://test/511 -permitted;URI.513 = http://test/512 -permitted;URI.514 = http://test/513 -permitted;URI.515 = http://test/514 -permitted;URI.516 = http://test/515 -permitted;URI.517 = http://test/516 -permitted;URI.518 = http://test/517 -permitted;URI.519 = http://test/518 -permitted;URI.520 = http://test/519 -permitted;URI.521 = http://test/520 -permitted;URI.522 = http://test/521 -permitted;URI.523 = http://test/522 -permitted;URI.524 = http://test/523 -permitted;URI.525 = http://test/524 -permitted;URI.526 = http://test/525 -permitted;URI.527 = http://test/526 -permitted;URI.528 = http://test/527 -permitted;URI.529 = http://test/528 -permitted;URI.530 = http://test/529 -permitted;URI.531 = http://test/530 -permitted;URI.532 = http://test/531 -permitted;URI.533 = http://test/532 -permitted;URI.534 = http://test/533 -permitted;URI.535 = http://test/534 -permitted;URI.536 = http://test/535 -permitted;URI.537 = http://test/536 -permitted;URI.538 = http://test/537 -permitted;URI.539 = http://test/538 -permitted;URI.540 = http://test/539 -permitted;URI.541 = http://test/540 -permitted;URI.542 = http://test/541 -permitted;URI.543 = http://test/542 -permitted;URI.544 = http://test/543 -permitted;URI.545 = http://test/544 -permitted;URI.546 = http://test/545 -permitted;URI.547 = http://test/546 -permitted;URI.548 = http://test/547 -permitted;URI.549 = http://test/548 -permitted;URI.550 = http://test/549 -permitted;URI.551 = http://test/550 -permitted;URI.552 = http://test/551 -permitted;URI.553 = http://test/552 -permitted;URI.554 = http://test/553 -permitted;URI.555 = http://test/554 -permitted;URI.556 = http://test/555 -permitted;URI.557 = http://test/556 -permitted;URI.558 = http://test/557 -permitted;URI.559 = http://test/558 -permitted;URI.560 = http://test/559 -permitted;URI.561 = http://test/560 -permitted;URI.562 = http://test/561 -permitted;URI.563 = http://test/562 -permitted;URI.564 = http://test/563 -permitted;URI.565 = http://test/564 -permitted;URI.566 = http://test/565 -permitted;URI.567 = http://test/566 -permitted;URI.568 = http://test/567 -permitted;URI.569 = http://test/568 -permitted;URI.570 = http://test/569 -permitted;URI.571 = http://test/570 -permitted;URI.572 = http://test/571 -permitted;URI.573 = http://test/572 -permitted;URI.574 = http://test/573 -permitted;URI.575 = http://test/574 -permitted;URI.576 = http://test/575 -permitted;URI.577 = http://test/576 -permitted;URI.578 = http://test/577 -permitted;URI.579 = http://test/578 -permitted;URI.580 = http://test/579 -permitted;URI.581 = http://test/580 -permitted;URI.582 = http://test/581 -permitted;URI.583 = http://test/582 -permitted;URI.584 = http://test/583 -permitted;URI.585 = http://test/584 -permitted;URI.586 = http://test/585 -permitted;URI.587 = http://test/586 -permitted;URI.588 = http://test/587 -permitted;URI.589 = http://test/588 -permitted;URI.590 = http://test/589 -permitted;URI.591 = http://test/590 -permitted;URI.592 = http://test/591 -permitted;URI.593 = http://test/592 -permitted;URI.594 = http://test/593 -permitted;URI.595 = http://test/594 -permitted;URI.596 = http://test/595 -permitted;URI.597 = http://test/596 -permitted;URI.598 = http://test/597 -permitted;URI.599 = http://test/598 -permitted;URI.600 = http://test/599 -permitted;URI.601 = http://test/600 -permitted;URI.602 = http://test/601 -permitted;URI.603 = http://test/602 -permitted;URI.604 = http://test/603 -permitted;URI.605 = http://test/604 -permitted;URI.606 = http://test/605 -permitted;URI.607 = http://test/606 -permitted;URI.608 = http://test/607 -permitted;URI.609 = http://test/608 -permitted;URI.610 = http://test/609 -permitted;URI.611 = http://test/610 -permitted;URI.612 = http://test/611 -permitted;URI.613 = http://test/612 -permitted;URI.614 = http://test/613 -permitted;URI.615 = http://test/614 -permitted;URI.616 = http://test/615 -permitted;URI.617 = http://test/616 -permitted;URI.618 = http://test/617 -permitted;URI.619 = http://test/618 -permitted;URI.620 = http://test/619 -permitted;URI.621 = http://test/620 -permitted;URI.622 = http://test/621 -permitted;URI.623 = http://test/622 -permitted;URI.624 = http://test/623 -permitted;URI.625 = http://test/624 -permitted;URI.626 = http://test/625 -permitted;URI.627 = http://test/626 -permitted;URI.628 = http://test/627 -permitted;URI.629 = http://test/628 -permitted;URI.630 = http://test/629 -permitted;URI.631 = http://test/630 -permitted;URI.632 = http://test/631 -permitted;URI.633 = http://test/632 -permitted;URI.634 = http://test/633 -permitted;URI.635 = http://test/634 -permitted;URI.636 = http://test/635 -permitted;URI.637 = http://test/636 -permitted;URI.638 = http://test/637 -permitted;URI.639 = http://test/638 -permitted;URI.640 = http://test/639 -permitted;URI.641 = http://test/640 -permitted;URI.642 = http://test/641 -permitted;URI.643 = http://test/642 -permitted;URI.644 = http://test/643 -permitted;URI.645 = http://test/644 -permitted;URI.646 = http://test/645 -permitted;URI.647 = http://test/646 -permitted;URI.648 = http://test/647 -permitted;URI.649 = http://test/648 -permitted;URI.650 = http://test/649 -permitted;URI.651 = http://test/650 -permitted;URI.652 = http://test/651 -permitted;URI.653 = http://test/652 -permitted;URI.654 = http://test/653 -permitted;URI.655 = http://test/654 -permitted;URI.656 = http://test/655 -permitted;URI.657 = http://test/656 -permitted;URI.658 = http://test/657 -permitted;URI.659 = http://test/658 -permitted;URI.660 = http://test/659 -permitted;URI.661 = http://test/660 -permitted;URI.662 = http://test/661 -permitted;URI.663 = http://test/662 -permitted;URI.664 = http://test/663 -permitted;URI.665 = http://test/664 -permitted;URI.666 = http://test/665 -permitted;URI.667 = http://test/666 -permitted;URI.668 = http://test/667 -permitted;URI.669 = http://test/668 -permitted;URI.670 = http://test/669 -permitted;URI.671 = http://test/670 -permitted;URI.672 = http://test/671 -permitted;URI.673 = http://test/672 -permitted;URI.674 = http://test/673 -permitted;URI.675 = http://test/674 -permitted;URI.676 = http://test/675 -permitted;URI.677 = http://test/676 -permitted;URI.678 = http://test/677 -permitted;URI.679 = http://test/678 -permitted;URI.680 = http://test/679 -permitted;URI.681 = http://test/680 -permitted;URI.682 = http://test/681 -permitted;URI.683 = http://test/682 -permitted;URI.684 = http://test/683 -permitted;URI.685 = http://test/684 -permitted;URI.686 = http://test/685 -permitted;URI.687 = http://test/686 -permitted;URI.688 = http://test/687 -permitted;URI.689 = http://test/688 -permitted;URI.690 = http://test/689 -permitted;URI.691 = http://test/690 -permitted;URI.692 = http://test/691 -permitted;URI.693 = http://test/692 -permitted;URI.694 = http://test/693 -permitted;URI.695 = http://test/694 -permitted;URI.696 = http://test/695 -permitted;URI.697 = http://test/696 -permitted;URI.698 = http://test/697 -permitted;URI.699 = http://test/698 -permitted;URI.700 = http://test/699 -permitted;URI.701 = http://test/700 -permitted;URI.702 = http://test/701 -permitted;URI.703 = http://test/702 -permitted;URI.704 = http://test/703 -permitted;URI.705 = http://test/704 -permitted;URI.706 = http://test/705 -permitted;URI.707 = http://test/706 -permitted;URI.708 = http://test/707 -permitted;URI.709 = http://test/708 -permitted;URI.710 = http://test/709 -permitted;URI.711 = http://test/710 -permitted;URI.712 = http://test/711 -permitted;URI.713 = http://test/712 -permitted;URI.714 = http://test/713 -permitted;URI.715 = http://test/714 -permitted;URI.716 = http://test/715 -permitted;URI.717 = http://test/716 -permitted;URI.718 = http://test/717 -permitted;URI.719 = http://test/718 -permitted;URI.720 = http://test/719 -permitted;URI.721 = http://test/720 -permitted;URI.722 = http://test/721 -permitted;URI.723 = http://test/722 -permitted;URI.724 = http://test/723 -permitted;URI.725 = http://test/724 -permitted;URI.726 = http://test/725 -permitted;URI.727 = http://test/726 -permitted;URI.728 = http://test/727 -permitted;URI.729 = http://test/728 -permitted;URI.730 = http://test/729 -permitted;URI.731 = http://test/730 -permitted;URI.732 = http://test/731 -permitted;URI.733 = http://test/732 -permitted;URI.734 = http://test/733 -permitted;URI.735 = http://test/734 -permitted;URI.736 = http://test/735 -permitted;URI.737 = http://test/736 -permitted;URI.738 = http://test/737 -permitted;URI.739 = http://test/738 -permitted;URI.740 = http://test/739 -permitted;URI.741 = http://test/740 -permitted;URI.742 = http://test/741 -permitted;URI.743 = http://test/742 -permitted;URI.744 = http://test/743 -permitted;URI.745 = http://test/744 -permitted;URI.746 = http://test/745 -permitted;URI.747 = http://test/746 -permitted;URI.748 = http://test/747 -permitted;URI.749 = http://test/748 -permitted;URI.750 = http://test/749 -permitted;URI.751 = http://test/750 -permitted;URI.752 = http://test/751 -permitted;URI.753 = http://test/752 -permitted;URI.754 = http://test/753 -permitted;URI.755 = http://test/754 -permitted;URI.756 = http://test/755 -permitted;URI.757 = http://test/756 -permitted;URI.758 = http://test/757 -permitted;URI.759 = http://test/758 -permitted;URI.760 = http://test/759 -permitted;URI.761 = http://test/760 -permitted;URI.762 = http://test/761 -permitted;URI.763 = http://test/762 -permitted;URI.764 = http://test/763 -permitted;URI.765 = http://test/764 -permitted;URI.766 = http://test/765 -permitted;URI.767 = http://test/766 -permitted;URI.768 = http://test/767 -permitted;URI.769 = http://test/768 -permitted;URI.770 = http://test/769 -permitted;URI.771 = http://test/770 -permitted;URI.772 = http://test/771 -permitted;URI.773 = http://test/772 -permitted;URI.774 = http://test/773 -permitted;URI.775 = http://test/774 -permitted;URI.776 = http://test/775 -permitted;URI.777 = http://test/776 -permitted;URI.778 = http://test/777 -permitted;URI.779 = http://test/778 -permitted;URI.780 = http://test/779 -permitted;URI.781 = http://test/780 -permitted;URI.782 = http://test/781 -permitted;URI.783 = http://test/782 -permitted;URI.784 = http://test/783 -permitted;URI.785 = http://test/784 -permitted;URI.786 = http://test/785 -permitted;URI.787 = http://test/786 -permitted;URI.788 = http://test/787 -permitted;URI.789 = http://test/788 -permitted;URI.790 = http://test/789 -permitted;URI.791 = http://test/790 -permitted;URI.792 = http://test/791 -permitted;URI.793 = http://test/792 -permitted;URI.794 = http://test/793 -permitted;URI.795 = http://test/794 -permitted;URI.796 = http://test/795 -permitted;URI.797 = http://test/796 -permitted;URI.798 = http://test/797 -permitted;URI.799 = http://test/798 -permitted;URI.800 = http://test/799 -permitted;URI.801 = http://test/800 -permitted;URI.802 = http://test/801 -permitted;URI.803 = http://test/802 -permitted;URI.804 = http://test/803 -permitted;URI.805 = http://test/804 -permitted;URI.806 = http://test/805 -permitted;URI.807 = http://test/806 -permitted;URI.808 = http://test/807 -permitted;URI.809 = http://test/808 -permitted;URI.810 = http://test/809 -permitted;URI.811 = http://test/810 -permitted;URI.812 = http://test/811 -permitted;URI.813 = http://test/812 -permitted;URI.814 = http://test/813 -permitted;URI.815 = http://test/814 -permitted;URI.816 = http://test/815 -permitted;URI.817 = http://test/816 -permitted;URI.818 = http://test/817 -permitted;URI.819 = http://test/818 -permitted;URI.820 = http://test/819 -permitted;URI.821 = http://test/820 -permitted;URI.822 = http://test/821 -permitted;URI.823 = http://test/822 -permitted;URI.824 = http://test/823 -permitted;URI.825 = http://test/824 -permitted;URI.826 = http://test/825 -permitted;URI.827 = http://test/826 -permitted;URI.828 = http://test/827 -permitted;URI.829 = http://test/828 -permitted;URI.830 = http://test/829 -permitted;URI.831 = http://test/830 -permitted;URI.832 = http://test/831 -permitted;URI.833 = http://test/832 -permitted;URI.834 = http://test/833 -permitted;URI.835 = http://test/834 -permitted;URI.836 = http://test/835 -permitted;URI.837 = http://test/836 -permitted;URI.838 = http://test/837 -permitted;URI.839 = http://test/838 -permitted;URI.840 = http://test/839 -permitted;URI.841 = http://test/840 -permitted;URI.842 = http://test/841 -permitted;URI.843 = http://test/842 -permitted;URI.844 = http://test/843 -permitted;URI.845 = http://test/844 -permitted;URI.846 = http://test/845 -permitted;URI.847 = http://test/846 -permitted;URI.848 = http://test/847 -permitted;URI.849 = http://test/848 -permitted;URI.850 = http://test/849 -permitted;URI.851 = http://test/850 -permitted;URI.852 = http://test/851 -permitted;URI.853 = http://test/852 -permitted;URI.854 = http://test/853 -permitted;URI.855 = http://test/854 -permitted;URI.856 = http://test/855 -permitted;URI.857 = http://test/856 -permitted;URI.858 = http://test/857 -permitted;URI.859 = http://test/858 -permitted;URI.860 = http://test/859 -permitted;URI.861 = http://test/860 -permitted;URI.862 = http://test/861 -permitted;URI.863 = http://test/862 -permitted;URI.864 = http://test/863 -permitted;URI.865 = http://test/864 -permitted;URI.866 = http://test/865 -permitted;URI.867 = http://test/866 -permitted;URI.868 = http://test/867 -permitted;URI.869 = http://test/868 -permitted;URI.870 = http://test/869 -permitted;URI.871 = http://test/870 -permitted;URI.872 = http://test/871 -permitted;URI.873 = http://test/872 -permitted;URI.874 = http://test/873 -permitted;URI.875 = http://test/874 -permitted;URI.876 = http://test/875 -permitted;URI.877 = http://test/876 -permitted;URI.878 = http://test/877 -permitted;URI.879 = http://test/878 -permitted;URI.880 = http://test/879 -permitted;URI.881 = http://test/880 -permitted;URI.882 = http://test/881 -permitted;URI.883 = http://test/882 -permitted;URI.884 = http://test/883 -permitted;URI.885 = http://test/884 -permitted;URI.886 = http://test/885 -permitted;URI.887 = http://test/886 -permitted;URI.888 = http://test/887 -permitted;URI.889 = http://test/888 -permitted;URI.890 = http://test/889 -permitted;URI.891 = http://test/890 -permitted;URI.892 = http://test/891 -permitted;URI.893 = http://test/892 -permitted;URI.894 = http://test/893 -permitted;URI.895 = http://test/894 -permitted;URI.896 = http://test/895 -permitted;URI.897 = http://test/896 -permitted;URI.898 = http://test/897 -permitted;URI.899 = http://test/898 -permitted;URI.900 = http://test/899 -permitted;URI.901 = http://test/900 -permitted;URI.902 = http://test/901 -permitted;URI.903 = http://test/902 -permitted;URI.904 = http://test/903 -permitted;URI.905 = http://test/904 -permitted;URI.906 = http://test/905 -permitted;URI.907 = http://test/906 -permitted;URI.908 = http://test/907 -permitted;URI.909 = http://test/908 -permitted;URI.910 = http://test/909 -permitted;URI.911 = http://test/910 -permitted;URI.912 = http://test/911 -permitted;URI.913 = http://test/912 -permitted;URI.914 = http://test/913 -permitted;URI.915 = http://test/914 -permitted;URI.916 = http://test/915 -permitted;URI.917 = http://test/916 -permitted;URI.918 = http://test/917 -permitted;URI.919 = http://test/918 -permitted;URI.920 = http://test/919 -permitted;URI.921 = http://test/920 -permitted;URI.922 = http://test/921 -permitted;URI.923 = http://test/922 -permitted;URI.924 = http://test/923 -permitted;URI.925 = http://test/924 -permitted;URI.926 = http://test/925 -permitted;URI.927 = http://test/926 -permitted;URI.928 = http://test/927 -permitted;URI.929 = http://test/928 -permitted;URI.930 = http://test/929 -permitted;URI.931 = http://test/930 -permitted;URI.932 = http://test/931 -permitted;URI.933 = http://test/932 -permitted;URI.934 = http://test/933 -permitted;URI.935 = http://test/934 -permitted;URI.936 = http://test/935 -permitted;URI.937 = http://test/936 -permitted;URI.938 = http://test/937 -permitted;URI.939 = http://test/938 -permitted;URI.940 = http://test/939 -permitted;URI.941 = http://test/940 -permitted;URI.942 = http://test/941 -permitted;URI.943 = http://test/942 -permitted;URI.944 = http://test/943 -permitted;URI.945 = http://test/944 -permitted;URI.946 = http://test/945 -permitted;URI.947 = http://test/946 -permitted;URI.948 = http://test/947 -permitted;URI.949 = http://test/948 -permitted;URI.950 = http://test/949 -permitted;URI.951 = http://test/950 -permitted;URI.952 = http://test/951 -permitted;URI.953 = http://test/952 -permitted;URI.954 = http://test/953 -permitted;URI.955 = http://test/954 -permitted;URI.956 = http://test/955 -permitted;URI.957 = http://test/956 -permitted;URI.958 = http://test/957 -permitted;URI.959 = http://test/958 -permitted;URI.960 = http://test/959 -permitted;URI.961 = http://test/960 -permitted;URI.962 = http://test/961 -permitted;URI.963 = http://test/962 -permitted;URI.964 = http://test/963 -permitted;URI.965 = http://test/964 -permitted;URI.966 = http://test/965 -permitted;URI.967 = http://test/966 -permitted;URI.968 = http://test/967 -permitted;URI.969 = http://test/968 -permitted;URI.970 = http://test/969 -permitted;URI.971 = http://test/970 -permitted;URI.972 = http://test/971 -permitted;URI.973 = http://test/972 -permitted;URI.974 = http://test/973 -permitted;URI.975 = http://test/974 -permitted;URI.976 = http://test/975 -permitted;URI.977 = http://test/976 -permitted;URI.978 = http://test/977 -permitted;URI.979 = http://test/978 -permitted;URI.980 = http://test/979 -permitted;URI.981 = http://test/980 -permitted;URI.982 = http://test/981 -permitted;URI.983 = http://test/982 -permitted;URI.984 = http://test/983 -permitted;URI.985 = http://test/984 -permitted;URI.986 = http://test/985 -permitted;URI.987 = http://test/986 -permitted;URI.988 = http://test/987 -permitted;URI.989 = http://test/988 -permitted;URI.990 = http://test/989 -permitted;URI.991 = http://test/990 -permitted;URI.992 = http://test/991 -permitted;URI.993 = http://test/992 -permitted;URI.994 = http://test/993 -permitted;URI.995 = http://test/994 -permitted;URI.996 = http://test/995 -permitted;URI.997 = http://test/996 -permitted;URI.998 = http://test/997 -permitted;URI.999 = http://test/998 -permitted;URI.1000 = http://test/999 -permitted;URI.1001 = http://test/1000 -permitted;URI.1002 = http://test/1001 -permitted;URI.1003 = http://test/1002 -permitted;URI.1004 = http://test/1003 -permitted;URI.1005 = http://test/1004 -permitted;URI.1006 = http://test/1005 -permitted;URI.1007 = http://test/1006 -permitted;URI.1008 = http://test/1007 -permitted;URI.1009 = http://test/1008 -permitted;URI.1010 = http://test/1009 -permitted;URI.1011 = http://test/1010 -permitted;URI.1012 = http://test/1011 -permitted;URI.1013 = http://test/1012 -permitted;URI.1014 = http://test/1013 -permitted;URI.1015 = http://test/1014 -permitted;URI.1016 = http://test/1015 -permitted;URI.1017 = http://test/1016 -permitted;URI.1018 = http://test/1017 -permitted;URI.1019 = http://test/1018 -permitted;URI.1020 = http://test/1019 -permitted;URI.1021 = http://test/1020 -permitted;URI.1022 = http://test/1021 -permitted;URI.1023 = http://test/1022 -permitted;URI.1024 = http://test/1023 -permitted;URI.1025 = http://test/1024 - -[nameConstraints_dirname_x1] -commonName = "x0 - -[nameConstraints_dirname_x2] -commonName = "x1 - -[nameConstraints_dirname_x3] -commonName = "x2 - -[nameConstraints_dirname_x4] -commonName = "x3 - -[nameConstraints_dirname_x5] -commonName = "x4 - -[nameConstraints_dirname_x6] -commonName = "x5 - -[nameConstraints_dirname_x7] -commonName = "x6 - -[nameConstraints_dirname_x8] -commonName = "x7 - -[nameConstraints_dirname_x9] -commonName = "x8 - -[nameConstraints_dirname_x10] -commonName = "x9 - -[nameConstraints_dirname_x11] -commonName = "x10 - -[nameConstraints_dirname_x12] -commonName = "x11 - -[nameConstraints_dirname_x13] -commonName = "x12 - -[nameConstraints_dirname_x14] -commonName = "x13 - -[nameConstraints_dirname_x15] -commonName = "x14 - -[nameConstraints_dirname_x16] -commonName = "x15 - -[nameConstraints_dirname_x17] -commonName = "x16 - -[nameConstraints_dirname_x18] -commonName = "x17 - -[nameConstraints_dirname_x19] -commonName = "x18 - -[nameConstraints_dirname_x20] -commonName = "x19 - -[nameConstraints_dirname_x21] -commonName = "x20 - -[nameConstraints_dirname_x22] -commonName = "x21 - -[nameConstraints_dirname_x23] -commonName = "x22 - -[nameConstraints_dirname_x24] -commonName = "x23 - -[nameConstraints_dirname_x25] -commonName = "x24 - -[nameConstraints_dirname_x26] -commonName = "x25 - -[nameConstraints_dirname_x27] -commonName = "x26 - -[nameConstraints_dirname_x28] -commonName = "x27 - -[nameConstraints_dirname_x29] -commonName = "x28 - -[nameConstraints_dirname_x30] -commonName = "x29 - -[nameConstraints_dirname_x31] -commonName = "x30 - -[nameConstraints_dirname_x32] -commonName = "x31 - -[nameConstraints_dirname_x33] -commonName = "x32 - -[nameConstraints_dirname_x34] -commonName = "x33 - -[nameConstraints_dirname_x35] -commonName = "x34 - -[nameConstraints_dirname_x36] -commonName = "x35 - -[nameConstraints_dirname_x37] -commonName = "x36 - -[nameConstraints_dirname_x38] -commonName = "x37 - -[nameConstraints_dirname_x39] -commonName = "x38 - -[nameConstraints_dirname_x40] -commonName = "x39 - -[nameConstraints_dirname_x41] -commonName = "x40 - -[nameConstraints_dirname_x42] -commonName = "x41 - -[nameConstraints_dirname_x43] -commonName = "x42 - -[nameConstraints_dirname_x44] -commonName = "x43 - -[nameConstraints_dirname_x45] -commonName = "x44 - -[nameConstraints_dirname_x46] -commonName = "x45 - -[nameConstraints_dirname_x47] -commonName = "x46 - -[nameConstraints_dirname_x48] -commonName = "x47 - -[nameConstraints_dirname_x49] -commonName = "x48 - -[nameConstraints_dirname_x50] -commonName = "x49 - -[nameConstraints_dirname_x51] -commonName = "x50 - -[nameConstraints_dirname_x52] -commonName = "x51 - -[nameConstraints_dirname_x53] -commonName = "x52 - -[nameConstraints_dirname_x54] -commonName = "x53 - -[nameConstraints_dirname_x55] -commonName = "x54 - -[nameConstraints_dirname_x56] -commonName = "x55 - -[nameConstraints_dirname_x57] -commonName = "x56 - -[nameConstraints_dirname_x58] -commonName = "x57 - -[nameConstraints_dirname_x59] -commonName = "x58 - -[nameConstraints_dirname_x60] -commonName = "x59 - -[nameConstraints_dirname_x61] -commonName = "x60 - -[nameConstraints_dirname_x62] -commonName = "x61 - -[nameConstraints_dirname_x63] -commonName = "x62 - -[nameConstraints_dirname_x64] -commonName = "x63 - -[nameConstraints_dirname_x65] -commonName = "x64 - -[nameConstraints_dirname_x66] -commonName = "x65 - -[nameConstraints_dirname_x67] -commonName = "x66 - -[nameConstraints_dirname_x68] -commonName = "x67 - -[nameConstraints_dirname_x69] -commonName = "x68 - -[nameConstraints_dirname_x70] -commonName = "x69 - -[nameConstraints_dirname_x71] -commonName = "x70 - -[nameConstraints_dirname_x72] -commonName = "x71 - -[nameConstraints_dirname_x73] -commonName = "x72 - -[nameConstraints_dirname_x74] -commonName = "x73 - -[nameConstraints_dirname_x75] -commonName = "x74 - -[nameConstraints_dirname_x76] -commonName = "x75 - -[nameConstraints_dirname_x77] -commonName = "x76 - -[nameConstraints_dirname_x78] -commonName = "x77 - -[nameConstraints_dirname_x79] -commonName = "x78 - -[nameConstraints_dirname_x80] -commonName = "x79 - -[nameConstraints_dirname_x81] -commonName = "x80 - -[nameConstraints_dirname_x82] -commonName = "x81 - -[nameConstraints_dirname_x83] -commonName = "x82 - -[nameConstraints_dirname_x84] -commonName = "x83 - -[nameConstraints_dirname_x85] -commonName = "x84 - -[nameConstraints_dirname_x86] -commonName = "x85 - -[nameConstraints_dirname_x87] -commonName = "x86 - -[nameConstraints_dirname_x88] -commonName = "x87 - -[nameConstraints_dirname_x89] -commonName = "x88 - -[nameConstraints_dirname_x90] -commonName = "x89 - -[nameConstraints_dirname_x91] -commonName = "x90 - -[nameConstraints_dirname_x92] -commonName = "x91 - -[nameConstraints_dirname_x93] -commonName = "x92 - -[nameConstraints_dirname_x94] -commonName = "x93 - -[nameConstraints_dirname_x95] -commonName = "x94 - -[nameConstraints_dirname_x96] -commonName = "x95 - -[nameConstraints_dirname_x97] -commonName = "x96 - -[nameConstraints_dirname_x98] -commonName = "x97 - -[nameConstraints_dirname_x99] -commonName = "x98 - -[nameConstraints_dirname_x100] -commonName = "x99 - -[nameConstraints_dirname_x101] -commonName = "x100 - -[nameConstraints_dirname_x102] -commonName = "x101 - -[nameConstraints_dirname_x103] -commonName = "x102 - -[nameConstraints_dirname_x104] -commonName = "x103 - -[nameConstraints_dirname_x105] -commonName = "x104 - -[nameConstraints_dirname_x106] -commonName = "x105 - -[nameConstraints_dirname_x107] -commonName = "x106 - -[nameConstraints_dirname_x108] -commonName = "x107 - -[nameConstraints_dirname_x109] -commonName = "x108 - -[nameConstraints_dirname_x110] -commonName = "x109 - -[nameConstraints_dirname_x111] -commonName = "x110 - -[nameConstraints_dirname_x112] -commonName = "x111 - -[nameConstraints_dirname_x113] -commonName = "x112 - -[nameConstraints_dirname_x114] -commonName = "x113 - -[nameConstraints_dirname_x115] -commonName = "x114 - -[nameConstraints_dirname_x116] -commonName = "x115 - -[nameConstraints_dirname_x117] -commonName = "x116 - -[nameConstraints_dirname_x118] -commonName = "x117 - -[nameConstraints_dirname_x119] -commonName = "x118 - -[nameConstraints_dirname_x120] -commonName = "x119 - -[nameConstraints_dirname_x121] -commonName = "x120 - -[nameConstraints_dirname_x122] -commonName = "x121 - -[nameConstraints_dirname_x123] -commonName = "x122 - -[nameConstraints_dirname_x124] -commonName = "x123 - -[nameConstraints_dirname_x125] -commonName = "x124 - -[nameConstraints_dirname_x126] -commonName = "x125 - -[nameConstraints_dirname_x127] -commonName = "x126 - -[nameConstraints_dirname_x128] -commonName = "x127 - -[nameConstraints_dirname_x129] -commonName = "x128 - -[nameConstraints_dirname_x130] -commonName = "x129 - -[nameConstraints_dirname_x131] -commonName = "x130 - -[nameConstraints_dirname_x132] -commonName = "x131 - -[nameConstraints_dirname_x133] -commonName = "x132 - -[nameConstraints_dirname_x134] -commonName = "x133 - -[nameConstraints_dirname_x135] -commonName = "x134 - -[nameConstraints_dirname_x136] -commonName = "x135 - -[nameConstraints_dirname_x137] -commonName = "x136 - -[nameConstraints_dirname_x138] -commonName = "x137 - -[nameConstraints_dirname_x139] -commonName = "x138 - -[nameConstraints_dirname_x140] -commonName = "x139 - -[nameConstraints_dirname_x141] -commonName = "x140 - -[nameConstraints_dirname_x142] -commonName = "x141 - -[nameConstraints_dirname_x143] -commonName = "x142 - -[nameConstraints_dirname_x144] -commonName = "x143 - -[nameConstraints_dirname_x145] -commonName = "x144 - -[nameConstraints_dirname_x146] -commonName = "x145 - -[nameConstraints_dirname_x147] -commonName = "x146 - -[nameConstraints_dirname_x148] -commonName = "x147 - -[nameConstraints_dirname_x149] -commonName = "x148 - -[nameConstraints_dirname_x150] -commonName = "x149 - -[nameConstraints_dirname_x151] -commonName = "x150 - -[nameConstraints_dirname_x152] -commonName = "x151 - -[nameConstraints_dirname_x153] -commonName = "x152 - -[nameConstraints_dirname_x154] -commonName = "x153 - -[nameConstraints_dirname_x155] -commonName = "x154 - -[nameConstraints_dirname_x156] -commonName = "x155 - -[nameConstraints_dirname_x157] -commonName = "x156 - -[nameConstraints_dirname_x158] -commonName = "x157 - -[nameConstraints_dirname_x159] -commonName = "x158 - -[nameConstraints_dirname_x160] -commonName = "x159 - -[nameConstraints_dirname_x161] -commonName = "x160 - -[nameConstraints_dirname_x162] -commonName = "x161 - -[nameConstraints_dirname_x163] -commonName = "x162 - -[nameConstraints_dirname_x164] -commonName = "x163 - -[nameConstraints_dirname_x165] -commonName = "x164 - -[nameConstraints_dirname_x166] -commonName = "x165 - -[nameConstraints_dirname_x167] -commonName = "x166 - -[nameConstraints_dirname_x168] -commonName = "x167 - -[nameConstraints_dirname_x169] -commonName = "x168 - -[nameConstraints_dirname_x170] -commonName = "x169 - -[nameConstraints_dirname_p1] -commonName = "t0 - -[nameConstraints_dirname_p2] -commonName = "t1 - -[nameConstraints_dirname_p3] -commonName = "t2 - -[nameConstraints_dirname_p4] -commonName = "t3 - -[nameConstraints_dirname_p5] -commonName = "t4 - -[nameConstraints_dirname_p6] -commonName = "t5 - -[nameConstraints_dirname_p7] -commonName = "t6 - -[nameConstraints_dirname_p8] -commonName = "t7 - -[nameConstraints_dirname_p9] -commonName = "t8 - -[nameConstraints_dirname_p10] -commonName = "t9 - -[nameConstraints_dirname_p11] -commonName = "t10 - -[nameConstraints_dirname_p12] -commonName = "t11 - -[nameConstraints_dirname_p13] -commonName = "t12 - -[nameConstraints_dirname_p14] -commonName = "t13 - -[nameConstraints_dirname_p15] -commonName = "t14 - -[nameConstraints_dirname_p16] -commonName = "t15 - -[nameConstraints_dirname_p17] -commonName = "t16 - -[nameConstraints_dirname_p18] -commonName = "t17 - -[nameConstraints_dirname_p19] -commonName = "t18 - -[nameConstraints_dirname_p20] -commonName = "t19 - -[nameConstraints_dirname_p21] -commonName = "t20 - -[nameConstraints_dirname_p22] -commonName = "t21 - -[nameConstraints_dirname_p23] -commonName = "t22 - -[nameConstraints_dirname_p24] -commonName = "t23 - -[nameConstraints_dirname_p25] -commonName = "t24 - -[nameConstraints_dirname_p26] -commonName = "t25 - -[nameConstraints_dirname_p27] -commonName = "t26 - -[nameConstraints_dirname_p28] -commonName = "t27 - -[nameConstraints_dirname_p29] -commonName = "t28 - -[nameConstraints_dirname_p30] -commonName = "t29 - -[nameConstraints_dirname_p31] -commonName = "t30 - -[nameConstraints_dirname_p32] -commonName = "t31 - -[nameConstraints_dirname_p33] -commonName = "t32 - -[nameConstraints_dirname_p34] -commonName = "t33 - -[nameConstraints_dirname_p35] -commonName = "t34 - -[nameConstraints_dirname_p36] -commonName = "t35 - -[nameConstraints_dirname_p37] -commonName = "t36 - -[nameConstraints_dirname_p38] -commonName = "t37 - -[nameConstraints_dirname_p39] -commonName = "t38 - -[nameConstraints_dirname_p40] -commonName = "t39 - -[nameConstraints_dirname_p41] -commonName = "t40 - -[nameConstraints_dirname_p42] -commonName = "t41 - -[nameConstraints_dirname_p43] -commonName = "t42 - -[nameConstraints_dirname_p44] -commonName = "t43 - -[nameConstraints_dirname_p45] -commonName = "t44 - -[nameConstraints_dirname_p46] -commonName = "t45 - -[nameConstraints_dirname_p47] -commonName = "t46 - -[nameConstraints_dirname_p48] -commonName = "t47 - -[nameConstraints_dirname_p49] -commonName = "t48 - -[nameConstraints_dirname_p50] -commonName = "t49 - -[nameConstraints_dirname_p51] -commonName = "t50 - -[nameConstraints_dirname_p52] -commonName = "t51 - -[nameConstraints_dirname_p53] -commonName = "t52 - -[nameConstraints_dirname_p54] -commonName = "t53 - -[nameConstraints_dirname_p55] -commonName = "t54 - -[nameConstraints_dirname_p56] -commonName = "t55 - -[nameConstraints_dirname_p57] -commonName = "t56 - -[nameConstraints_dirname_p58] -commonName = "t57 - -[nameConstraints_dirname_p59] -commonName = "t58 - -[nameConstraints_dirname_p60] -commonName = "t59 - -[nameConstraints_dirname_p61] -commonName = "t60 - -[nameConstraints_dirname_p62] -commonName = "t61 - -[nameConstraints_dirname_p63] -commonName = "t62 - -[nameConstraints_dirname_p64] -commonName = "t63 - -[nameConstraints_dirname_p65] -commonName = "t64 - -[nameConstraints_dirname_p66] -commonName = "t65 - -[nameConstraints_dirname_p67] -commonName = "t66 - -[nameConstraints_dirname_p68] -commonName = "t67 - -[nameConstraints_dirname_p69] -commonName = "t68 - -[nameConstraints_dirname_p70] -commonName = "t69 - -[nameConstraints_dirname_p71] -commonName = "t70 - -[nameConstraints_dirname_p72] -commonName = "t71 - -[nameConstraints_dirname_p73] -commonName = "t72 - -[nameConstraints_dirname_p74] -commonName = "t73 - -[nameConstraints_dirname_p75] -commonName = "t74 - -[nameConstraints_dirname_p76] -commonName = "t75 - -[nameConstraints_dirname_p77] -commonName = "t76 - -[nameConstraints_dirname_p78] -commonName = "t77 - -[nameConstraints_dirname_p79] -commonName = "t78 - -[nameConstraints_dirname_p80] -commonName = "t79 - -[nameConstraints_dirname_p81] -commonName = "t80 - -[nameConstraints_dirname_p82] -commonName = "t81 - -[nameConstraints_dirname_p83] -commonName = "t82 - -[nameConstraints_dirname_p84] -commonName = "t83 - -[nameConstraints_dirname_p85] -commonName = "t84 - -[nameConstraints_dirname_p86] -commonName = "t85 - -[nameConstraints_dirname_p87] -commonName = "t86 - -[nameConstraints_dirname_p88] -commonName = "t87 - -[nameConstraints_dirname_p89] -commonName = "t88 - -[nameConstraints_dirname_p90] -commonName = "t89 - -[nameConstraints_dirname_p91] -commonName = "t90 - -[nameConstraints_dirname_p92] -commonName = "t91 - -[nameConstraints_dirname_p93] -commonName = "t92 - -[nameConstraints_dirname_p94] -commonName = "t93 - -[nameConstraints_dirname_p95] -commonName = "t94 - -[nameConstraints_dirname_p96] -commonName = "t95 - -[nameConstraints_dirname_p97] -commonName = "t96 - -[nameConstraints_dirname_p98] -commonName = "t97 - -[nameConstraints_dirname_p99] -commonName = "t98 - -[nameConstraints_dirname_p100] -commonName = "t99 - -[nameConstraints_dirname_p101] -commonName = "t100 - -[nameConstraints_dirname_p102] -commonName = "t101 - -[nameConstraints_dirname_p103] -commonName = "t102 - -[nameConstraints_dirname_p104] -commonName = "t103 - -[nameConstraints_dirname_p105] -commonName = "t104 - -[nameConstraints_dirname_p106] -commonName = "t105 - -[nameConstraints_dirname_p107] -commonName = "t106 - -[nameConstraints_dirname_p108] -commonName = "t107 - -[nameConstraints_dirname_p109] -commonName = "t108 - -[nameConstraints_dirname_p110] -commonName = "t109 - -[nameConstraints_dirname_p111] -commonName = "t110 - -[nameConstraints_dirname_p112] -commonName = "t111 - -[nameConstraints_dirname_p113] -commonName = "t112 - -[nameConstraints_dirname_p114] -commonName = "t113 - -[nameConstraints_dirname_p115] -commonName = "t114 - -[nameConstraints_dirname_p116] -commonName = "t115 - -[nameConstraints_dirname_p117] -commonName = "t116 - -[nameConstraints_dirname_p118] -commonName = "t117 - -[nameConstraints_dirname_p119] -commonName = "t118 - -[nameConstraints_dirname_p120] -commonName = "t119 - -[nameConstraints_dirname_p121] -commonName = "t120 - -[nameConstraints_dirname_p122] -commonName = "t121 - -[nameConstraints_dirname_p123] -commonName = "t122 - -[nameConstraints_dirname_p124] -commonName = "t123 - -[nameConstraints_dirname_p125] -commonName = "t124 - -[nameConstraints_dirname_p126] -commonName = "t125 - -[nameConstraints_dirname_p127] -commonName = "t126 - -[nameConstraints_dirname_p128] -commonName = "t127 - -[nameConstraints_dirname_p129] -commonName = "t128 - -[nameConstraints_dirname_p130] -commonName = "t129 - -[nameConstraints_dirname_p131] -commonName = "t130 - -[nameConstraints_dirname_p132] -commonName = "t131 - -[nameConstraints_dirname_p133] -commonName = "t132 - -[nameConstraints_dirname_p134] -commonName = "t133 - -[nameConstraints_dirname_p135] -commonName = "t134 - -[nameConstraints_dirname_p136] -commonName = "t135 - -[nameConstraints_dirname_p137] -commonName = "t136 - -[nameConstraints_dirname_p138] -commonName = "t137 - -[nameConstraints_dirname_p139] -commonName = "t138 - -[nameConstraints_dirname_p140] -commonName = "t139 - -[nameConstraints_dirname_p141] -commonName = "t140 - -[nameConstraints_dirname_p142] -commonName = "t141 - -[nameConstraints_dirname_p143] -commonName = "t142 - -[nameConstraints_dirname_p144] -commonName = "t143 - -[nameConstraints_dirname_p145] -commonName = "t144 - -[nameConstraints_dirname_p146] -commonName = "t145 - -[nameConstraints_dirname_p147] -commonName = "t146 - -[nameConstraints_dirname_p148] -commonName = "t147 - -[nameConstraints_dirname_p149] -commonName = "t148 - -[nameConstraints_dirname_p150] -commonName = "t149 - -[nameConstraints_dirname_p151] -commonName = "t150 - -[nameConstraints_dirname_p152] -commonName = "t151 - -[nameConstraints_dirname_p153] -commonName = "t152 - -[nameConstraints_dirname_p154] -commonName = "t153 - -[nameConstraints_dirname_p155] -commonName = "t154 - -[nameConstraints_dirname_p156] -commonName = "t155 - -[nameConstraints_dirname_p157] -commonName = "t156 - -[nameConstraints_dirname_p158] -commonName = "t157 - -[nameConstraints_dirname_p159] -commonName = "t158 - -[nameConstraints_dirname_p160] -commonName = "t159 - -[nameConstraints_dirname_p161] -commonName = "t160 - -[nameConstraints_dirname_p162] -commonName = "t161 - -[nameConstraints_dirname_p163] -commonName = "t162 - -[nameConstraints_dirname_p164] -commonName = "t163 - -[nameConstraints_dirname_p165] -commonName = "t164 - -[nameConstraints_dirname_p166] -commonName = "t165 - -[nameConstraints_dirname_p167] -commonName = "t166 - -[nameConstraints_dirname_p168] -commonName = "t167 - -[nameConstraints_dirname_p169] -commonName = "t168 - -[nameConstraints_dirname_p170] -commonName = "t169 - -[nameConstraints_dirname_p171] -commonName = "t170 - -[nameConstraints_dirname_p172] -commonName = "t171 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.csr deleted file mode 100644 index 287009b5a5..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.csr +++ /dev/null @@ -1,1144 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MILV7TCC1NUCAQAwFzEVMBMGA1UEAwwMSW50ZXJtZWRpYXRlMIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzvbBG4X4FRSuiN3JLw043DZmZ5TXTMLqcxL -Ha4GJxiOVbqtEscdMlltwxYg22Kmd4AS4IdYUVXjZn/R4DoiZeVwJqIEBPBd+V9W -yNroD1cod26aoEpTNBpjN6JDqw5KzQcj3VWDRAAMcEHfNWTQxQ5qh9vK/DXV4luv -C6DmdaXS4XJOImMBQXO4lVAs/e3DYbY21IOVYcPgYf/0noroutzR9ontnTBElSf0 -0YvmLxRmVvHa8cwEG3eSpZ9YQAyfDDLWBcJMwMWf5aQwPUzpnQNsTAa25ZW9Ibjm -K6igvwa7QzMZPXsXWfFkTSRnsVEPNa7wcXV5rlsCNAQx42aGZQIDAQABoILTjzCC -04sGCSqGSIb3DQEJDjGC03wwgtN4MB0GA1UdDgQWBBSSET+sEZbHZjfPg1ok8Dp3 -rzONfzAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zCC0zQGA1UdHgSC -0yswgtMnoIJpsTAJggd0MC50ZXN0MAmCB3QxLnRlc3QwCYIHdDIudGVzdDAJggd0 -My50ZXN0MAmCB3Q0LnRlc3QwCYIHdDUudGVzdDAJggd0Ni50ZXN0MAmCB3Q3LnRl -c3QwCYIHdDgudGVzdDAJggd0OS50ZXN0MAqCCHQxMC50ZXN0MAqCCHQxMS50ZXN0 -MAqCCHQxMi50ZXN0MAqCCHQxMy50ZXN0MAqCCHQxNC50ZXN0MAqCCHQxNS50ZXN0 -MAqCCHQxNi50ZXN0MAqCCHQxNy50ZXN0MAqCCHQxOC50ZXN0MAqCCHQxOS50ZXN0 -MAqCCHQyMC50ZXN0MAqCCHQyMS50ZXN0MAqCCHQyMi50ZXN0MAqCCHQyMy50ZXN0 -MAqCCHQyNC50ZXN0MAqCCHQyNS50ZXN0MAqCCHQyNi50ZXN0MAqCCHQyNy50ZXN0 -MAqCCHQyOC50ZXN0MAqCCHQyOS50ZXN0MAqCCHQzMC50ZXN0MAqCCHQzMS50ZXN0 -MAqCCHQzMi50ZXN0MAqCCHQzMy50ZXN0MAqCCHQzNC50ZXN0MAqCCHQzNS50ZXN0 -MAqCCHQzNi50ZXN0MAqCCHQzNy50ZXN0MAqCCHQzOC50ZXN0MAqCCHQzOS50ZXN0 -MAqCCHQ0MC50ZXN0MAqCCHQ0MS50ZXN0MAqCCHQ0Mi50ZXN0MAqCCHQ0My50ZXN0 -MAqCCHQ0NC50ZXN0MAqCCHQ0NS50ZXN0MAqCCHQ0Ni50ZXN0MAqCCHQ0Ny50ZXN0 -MAqCCHQ0OC50ZXN0MAqCCHQ0OS50ZXN0MAqCCHQ1MC50ZXN0MAqCCHQ1MS50ZXN0 -MAqCCHQ1Mi50ZXN0MAqCCHQ1My50ZXN0MAqCCHQ1NC50ZXN0MAqCCHQ1NS50ZXN0 -MAqCCHQ1Ni50ZXN0MAqCCHQ1Ny50ZXN0MAqCCHQ1OC50ZXN0MAqCCHQ1OS50ZXN0 -MAqCCHQ2MC50ZXN0MAqCCHQ2MS50ZXN0MAqCCHQ2Mi50ZXN0MAqCCHQ2My50ZXN0 -MAqCCHQ2NC50ZXN0MAqCCHQ2NS50ZXN0MAqCCHQ2Ni50ZXN0MAqCCHQ2Ny50ZXN0 -MAqCCHQ2OC50ZXN0MAqCCHQ2OS50ZXN0MAqCCHQ3MC50ZXN0MAqCCHQ3MS50ZXN0 -MAqCCHQ3Mi50ZXN0MAqCCHQ3My50ZXN0MAqCCHQ3NC50ZXN0MAqCCHQ3NS50ZXN0 -MAqCCHQ3Ni50ZXN0MAqCCHQ3Ny50ZXN0MAqCCHQ3OC50ZXN0MAqCCHQ3OS50ZXN0 -MAqCCHQ4MC50ZXN0MAqCCHQ4MS50ZXN0MAqCCHQ4Mi50ZXN0MAqCCHQ4My50ZXN0 -MAqCCHQ4NC50ZXN0MAqCCHQ4NS50ZXN0MAqCCHQ4Ni50ZXN0MAqCCHQ4Ny50ZXN0 -MAqCCHQ4OC50ZXN0MAqCCHQ4OS50ZXN0MAqCCHQ5MC50ZXN0MAqCCHQ5MS50ZXN0 -MAqCCHQ5Mi50ZXN0MAqCCHQ5My50ZXN0MAqCCHQ5NC50ZXN0MAqCCHQ5NS50ZXN0 -MAqCCHQ5Ni50ZXN0MAqCCHQ5Ny50ZXN0MAqCCHQ5OC50ZXN0MAqCCHQ5OS50ZXN0 -MAuCCXQxMDAudGVzdDALggl0MTAxLnRlc3QwC4IJdDEwMi50ZXN0MAuCCXQxMDMu -dGVzdDALggl0MTA0LnRlc3QwC4IJdDEwNS50ZXN0MAuCCXQxMDYudGVzdDALggl0 -MTA3LnRlc3QwC4IJdDEwOC50ZXN0MAuCCXQxMDkudGVzdDALggl0MTEwLnRlc3Qw -C4IJdDExMS50ZXN0MAuCCXQxMTIudGVzdDALggl0MTEzLnRlc3QwC4IJdDExNC50 -ZXN0MAuCCXQxMTUudGVzdDALggl0MTE2LnRlc3QwC4IJdDExNy50ZXN0MAuCCXQx -MTgudGVzdDALggl0MTE5LnRlc3QwC4IJdDEyMC50ZXN0MAuCCXQxMjEudGVzdDAL -ggl0MTIyLnRlc3QwC4IJdDEyMy50ZXN0MAuCCXQxMjQudGVzdDALggl0MTI1LnRl -c3QwC4IJdDEyNi50ZXN0MAuCCXQxMjcudGVzdDALggl0MTI4LnRlc3QwC4IJdDEy -OS50ZXN0MAuCCXQxMzAudGVzdDALggl0MTMxLnRlc3QwC4IJdDEzMi50ZXN0MAuC -CXQxMzMudGVzdDALggl0MTM0LnRlc3QwC4IJdDEzNS50ZXN0MAuCCXQxMzYudGVz -dDALggl0MTM3LnRlc3QwC4IJdDEzOC50ZXN0MAuCCXQxMzkudGVzdDALggl0MTQw -LnRlc3QwC4IJdDE0MS50ZXN0MAuCCXQxNDIudGVzdDALggl0MTQzLnRlc3QwC4IJ -dDE0NC50ZXN0MAuCCXQxNDUudGVzdDALggl0MTQ2LnRlc3QwC4IJdDE0Ny50ZXN0 -MAuCCXQxNDgudGVzdDALggl0MTQ5LnRlc3QwC4IJdDE1MC50ZXN0MAuCCXQxNTEu -dGVzdDALggl0MTUyLnRlc3QwC4IJdDE1My50ZXN0MAuCCXQxNTQudGVzdDALggl0 -MTU1LnRlc3QwC4IJdDE1Ni50ZXN0MAuCCXQxNTcudGVzdDALggl0MTU4LnRlc3Qw -C4IJdDE1OS50ZXN0MAuCCXQxNjAudGVzdDALggl0MTYxLnRlc3QwC4IJdDE2Mi50 -ZXN0MAuCCXQxNjMudGVzdDALggl0MTY0LnRlc3QwC4IJdDE2NS50ZXN0MAuCCXQx -NjYudGVzdDALggl0MTY3LnRlc3QwC4IJdDE2OC50ZXN0MAuCCXQxNjkudGVzdDAL -ggl0MTcwLnRlc3QwCocICgAAAP////8wCocICgAAAf////8wCocICgAAAv////8w -CocICgAAA/////8wCocICgAABP////8wCocICgAABf////8wCocICgAABv////8w -CocICgAAB/////8wCocICgAACP////8wCocICgAACf////8wCocICgAACv////8w -CocICgAAC/////8wCocICgAADP////8wCocICgAADf////8wCocICgAADv////8w -CocICgAAD/////8wCocICgAAEP////8wCocICgAAEf////8wCocICgAAEv////8w -CocICgAAE/////8wCocICgAAFP////8wCocICgAAFf////8wCocICgAAFv////8w -CocICgAAF/////8wCocICgAAGP////8wCocICgAAGf////8wCocICgAAGv////8w -CocICgAAG/////8wCocICgAAHP////8wCocICgAAHf////8wCocICgAAHv////8w -CocICgAAH/////8wCocICgAAIP////8wCocICgAAIf////8wCocICgAAIv////8w -CocICgAAI/////8wCocICgAAJP////8wCocICgAAJf////8wCocICgAAJv////8w -CocICgAAJ/////8wCocICgAAKP////8wCocICgAAKf////8wCocICgAAKv////8w -CocICgAAK/////8wCocICgAALP////8wCocICgAALf////8wCocICgAALv////8w -CocICgAAL/////8wCocICgAAMP////8wCocICgAAMf////8wCocICgAAMv////8w -CocICgAAM/////8wCocICgAANP////8wCocICgAANf////8wCocICgAANv////8w -CocICgAAN/////8wCocICgAAOP////8wCocICgAAOf////8wCocICgAAOv////8w -CocICgAAO/////8wCocICgAAPP////8wCocICgAAPf////8wCocICgAAPv////8w -CocICgAAP/////8wCocICgAAQP////8wCocICgAAQf////8wCocICgAAQv////8w -CocICgAAQ/////8wCocICgAARP////8wCocICgAARf////8wCocICgAARv////8w -CocICgAAR/////8wCocICgAASP////8wCocICgAASf////8wCocICgAASv////8w -CocICgAAS/////8wCocICgAATP////8wCocICgAATf////8wCocICgAATv////8w -CocICgAAT/////8wCocICgAAUP////8wCocICgAAUf////8wCocICgAAUv////8w -CocICgAAU/////8wCocICgAAVP////8wCocICgAAVf////8wCocICgAAVv////8w -CocICgAAV/////8wCocICgAAWP////8wCocICgAAWf////8wCocICgAAWv////8w -CocICgAAW/////8wCocICgAAXP////8wCocICgAAXf////8wCocICgAAXv////8w -CocICgAAX/////8wCocICgAAYP////8wCocICgAAYf////8wCocICgAAYv////8w -CocICgAAY/////8wCocICgAAZP////8wCocICgAAZf////8wCocICgAAZv////8w -CocICgAAZ/////8wCocICgAAaP////8wCocICgAAaf////8wCocICgAAav////8w -CocICgAAa/////8wCocICgAAbP////8wCocICgAAbf////8wCocICgAAbv////8w -CocICgAAb/////8wCocICgAAcP////8wCocICgAAcf////8wCocICgAAcv////8w -CocICgAAc/////8wCocICgAAdP////8wCocICgAAdf////8wCocICgAAdv////8w -CocICgAAd/////8wCocICgAAeP////8wCocICgAAef////8wCocICgAAev////8w -CocICgAAe/////8wCocICgAAfP////8wCocICgAAff////8wCocICgAAfv////8w -CocICgAAf/////8wCocICgAAgP////8wCocICgAAgf////8wCocICgAAgv////8w -CocICgAAg/////8wCocICgAAhP////8wCocICgAAhf////8wCocICgAAhv////8w -CocICgAAh/////8wCocICgAAiP////8wCocICgAAif////8wCocICgAAiv////8w -CocICgAAi/////8wCocICgAAjP////8wCocICgAAjf////8wCocICgAAjv////8w -CocICgAAj/////8wCocICgAAkP////8wCocICgAAkf////8wCocICgAAkv////8w -CocICgAAk/////8wCocICgAAlP////8wCocICgAAlf////8wCocICgAAlv////8w -CocICgAAl/////8wCocICgAAmP////8wCocICgAAmf////8wCocICgAAmv////8w -CocICgAAm/////8wCocICgAAnP////8wCocICgAAnf////8wCocICgAAnv////8w -CocICgAAn/////8wCocICgAAoP////8wCocICgAAof////8wCocICgAAov////8w -CocICgAAo/////8wCocICgAApP////8wCocICgAApf////8wCocICgAApv////8w -CocICgAAp/////8wCocICgAAqP////8wCocICgAAqf////8wCocICgAAqv////8w -EaQPMA0xCzAJBgNVBAMMAnQwMBGkDzANMQswCQYDVQQDDAJ0MTARpA8wDTELMAkG -A1UEAwwCdDIwEaQPMA0xCzAJBgNVBAMMAnQzMBGkDzANMQswCQYDVQQDDAJ0NDAR -pA8wDTELMAkGA1UEAwwCdDUwEaQPMA0xCzAJBgNVBAMMAnQ2MBGkDzANMQswCQYD -VQQDDAJ0NzARpA8wDTELMAkGA1UEAwwCdDgwEaQPMA0xCzAJBgNVBAMMAnQ5MBKk -EDAOMQwwCgYDVQQDDAN0MTAwEqQQMA4xDDAKBgNVBAMMA3QxMTASpBAwDjEMMAoG -A1UEAwwDdDEyMBKkEDAOMQwwCgYDVQQDDAN0MTMwEqQQMA4xDDAKBgNVBAMMA3Qx -NDASpBAwDjEMMAoGA1UEAwwDdDE1MBKkEDAOMQwwCgYDVQQDDAN0MTYwEqQQMA4x -DDAKBgNVBAMMA3QxNzASpBAwDjEMMAoGA1UEAwwDdDE4MBKkEDAOMQwwCgYDVQQD -DAN0MTkwEqQQMA4xDDAKBgNVBAMMA3QyMDASpBAwDjEMMAoGA1UEAwwDdDIxMBKk -EDAOMQwwCgYDVQQDDAN0MjIwEqQQMA4xDDAKBgNVBAMMA3QyMzASpBAwDjEMMAoG -A1UEAwwDdDI0MBKkEDAOMQwwCgYDVQQDDAN0MjUwEqQQMA4xDDAKBgNVBAMMA3Qy -NjASpBAwDjEMMAoGA1UEAwwDdDI3MBKkEDAOMQwwCgYDVQQDDAN0MjgwEqQQMA4x -DDAKBgNVBAMMA3QyOTASpBAwDjEMMAoGA1UEAwwDdDMwMBKkEDAOMQwwCgYDVQQD -DAN0MzEwEqQQMA4xDDAKBgNVBAMMA3QzMjASpBAwDjEMMAoGA1UEAwwDdDMzMBKk -EDAOMQwwCgYDVQQDDAN0MzQwEqQQMA4xDDAKBgNVBAMMA3QzNTASpBAwDjEMMAoG -A1UEAwwDdDM2MBKkEDAOMQwwCgYDVQQDDAN0MzcwEqQQMA4xDDAKBgNVBAMMA3Qz -ODASpBAwDjEMMAoGA1UEAwwDdDM5MBKkEDAOMQwwCgYDVQQDDAN0NDAwEqQQMA4x -DDAKBgNVBAMMA3Q0MTASpBAwDjEMMAoGA1UEAwwDdDQyMBKkEDAOMQwwCgYDVQQD -DAN0NDMwEqQQMA4xDDAKBgNVBAMMA3Q0NDASpBAwDjEMMAoGA1UEAwwDdDQ1MBKk -EDAOMQwwCgYDVQQDDAN0NDYwEqQQMA4xDDAKBgNVBAMMA3Q0NzASpBAwDjEMMAoG -A1UEAwwDdDQ4MBKkEDAOMQwwCgYDVQQDDAN0NDkwEqQQMA4xDDAKBgNVBAMMA3Q1 -MDASpBAwDjEMMAoGA1UEAwwDdDUxMBKkEDAOMQwwCgYDVQQDDAN0NTIwEqQQMA4x -DDAKBgNVBAMMA3Q1MzASpBAwDjEMMAoGA1UEAwwDdDU0MBKkEDAOMQwwCgYDVQQD -DAN0NTUwEqQQMA4xDDAKBgNVBAMMA3Q1NjASpBAwDjEMMAoGA1UEAwwDdDU3MBKk -EDAOMQwwCgYDVQQDDAN0NTgwEqQQMA4xDDAKBgNVBAMMA3Q1OTASpBAwDjEMMAoG -A1UEAwwDdDYwMBKkEDAOMQwwCgYDVQQDDAN0NjEwEqQQMA4xDDAKBgNVBAMMA3Q2 -MjASpBAwDjEMMAoGA1UEAwwDdDYzMBKkEDAOMQwwCgYDVQQDDAN0NjQwEqQQMA4x -DDAKBgNVBAMMA3Q2NTASpBAwDjEMMAoGA1UEAwwDdDY2MBKkEDAOMQwwCgYDVQQD -DAN0NjcwEqQQMA4xDDAKBgNVBAMMA3Q2ODASpBAwDjEMMAoGA1UEAwwDdDY5MBKk -EDAOMQwwCgYDVQQDDAN0NzAwEqQQMA4xDDAKBgNVBAMMA3Q3MTASpBAwDjEMMAoG -A1UEAwwDdDcyMBKkEDAOMQwwCgYDVQQDDAN0NzMwEqQQMA4xDDAKBgNVBAMMA3Q3 -NDASpBAwDjEMMAoGA1UEAwwDdDc1MBKkEDAOMQwwCgYDVQQDDAN0NzYwEqQQMA4x -DDAKBgNVBAMMA3Q3NzASpBAwDjEMMAoGA1UEAwwDdDc4MBKkEDAOMQwwCgYDVQQD -DAN0NzkwEqQQMA4xDDAKBgNVBAMMA3Q4MDASpBAwDjEMMAoGA1UEAwwDdDgxMBKk -EDAOMQwwCgYDVQQDDAN0ODIwEqQQMA4xDDAKBgNVBAMMA3Q4MzASpBAwDjEMMAoG -A1UEAwwDdDg0MBKkEDAOMQwwCgYDVQQDDAN0ODUwEqQQMA4xDDAKBgNVBAMMA3Q4 -NjASpBAwDjEMMAoGA1UEAwwDdDg3MBKkEDAOMQwwCgYDVQQDDAN0ODgwEqQQMA4x -DDAKBgNVBAMMA3Q4OTASpBAwDjEMMAoGA1UEAwwDdDkwMBKkEDAOMQwwCgYDVQQD -DAN0OTEwEqQQMA4xDDAKBgNVBAMMA3Q5MjASpBAwDjEMMAoGA1UEAwwDdDkzMBKk -EDAOMQwwCgYDVQQDDAN0OTQwEqQQMA4xDDAKBgNVBAMMA3Q5NTASpBAwDjEMMAoG -A1UEAwwDdDk2MBKkEDAOMQwwCgYDVQQDDAN0OTcwEqQQMA4xDDAKBgNVBAMMA3Q5 -ODASpBAwDjEMMAoGA1UEAwwDdDk5MBOkETAPMQ0wCwYDVQQDDAR0MTAwMBOkETAP -MQ0wCwYDVQQDDAR0MTAxMBOkETAPMQ0wCwYDVQQDDAR0MTAyMBOkETAPMQ0wCwYD -VQQDDAR0MTAzMBOkETAPMQ0wCwYDVQQDDAR0MTA0MBOkETAPMQ0wCwYDVQQDDAR0 -MTA1MBOkETAPMQ0wCwYDVQQDDAR0MTA2MBOkETAPMQ0wCwYDVQQDDAR0MTA3MBOk -ETAPMQ0wCwYDVQQDDAR0MTA4MBOkETAPMQ0wCwYDVQQDDAR0MTA5MBOkETAPMQ0w -CwYDVQQDDAR0MTEwMBOkETAPMQ0wCwYDVQQDDAR0MTExMBOkETAPMQ0wCwYDVQQD -DAR0MTEyMBOkETAPMQ0wCwYDVQQDDAR0MTEzMBOkETAPMQ0wCwYDVQQDDAR0MTE0 -MBOkETAPMQ0wCwYDVQQDDAR0MTE1MBOkETAPMQ0wCwYDVQQDDAR0MTE2MBOkETAP -MQ0wCwYDVQQDDAR0MTE3MBOkETAPMQ0wCwYDVQQDDAR0MTE4MBOkETAPMQ0wCwYD -VQQDDAR0MTE5MBOkETAPMQ0wCwYDVQQDDAR0MTIwMBOkETAPMQ0wCwYDVQQDDAR0 -MTIxMBOkETAPMQ0wCwYDVQQDDAR0MTIyMBOkETAPMQ0wCwYDVQQDDAR0MTIzMBOk -ETAPMQ0wCwYDVQQDDAR0MTI0MBOkETAPMQ0wCwYDVQQDDAR0MTI1MBOkETAPMQ0w -CwYDVQQDDAR0MTI2MBOkETAPMQ0wCwYDVQQDDAR0MTI3MBOkETAPMQ0wCwYDVQQD -DAR0MTI4MBOkETAPMQ0wCwYDVQQDDAR0MTI5MBOkETAPMQ0wCwYDVQQDDAR0MTMw -MBOkETAPMQ0wCwYDVQQDDAR0MTMxMBOkETAPMQ0wCwYDVQQDDAR0MTMyMBOkETAP -MQ0wCwYDVQQDDAR0MTMzMBOkETAPMQ0wCwYDVQQDDAR0MTM0MBOkETAPMQ0wCwYD -VQQDDAR0MTM1MBOkETAPMQ0wCwYDVQQDDAR0MTM2MBOkETAPMQ0wCwYDVQQDDAR0 -MTM3MBOkETAPMQ0wCwYDVQQDDAR0MTM4MBOkETAPMQ0wCwYDVQQDDAR0MTM5MBOk -ETAPMQ0wCwYDVQQDDAR0MTQwMBOkETAPMQ0wCwYDVQQDDAR0MTQxMBOkETAPMQ0w -CwYDVQQDDAR0MTQyMBOkETAPMQ0wCwYDVQQDDAR0MTQzMBOkETAPMQ0wCwYDVQQD -DAR0MTQ0MBOkETAPMQ0wCwYDVQQDDAR0MTQ1MBOkETAPMQ0wCwYDVQQDDAR0MTQ2 -MBOkETAPMQ0wCwYDVQQDDAR0MTQ3MBOkETAPMQ0wCwYDVQQDDAR0MTQ4MBOkETAP -MQ0wCwYDVQQDDAR0MTQ5MBOkETAPMQ0wCwYDVQQDDAR0MTUwMBOkETAPMQ0wCwYD -VQQDDAR0MTUxMBOkETAPMQ0wCwYDVQQDDAR0MTUyMBOkETAPMQ0wCwYDVQQDDAR0 -MTUzMBOkETAPMQ0wCwYDVQQDDAR0MTU0MBOkETAPMQ0wCwYDVQQDDAR0MTU1MBOk -ETAPMQ0wCwYDVQQDDAR0MTU2MBOkETAPMQ0wCwYDVQQDDAR0MTU3MBOkETAPMQ0w -CwYDVQQDDAR0MTU4MBOkETAPMQ0wCwYDVQQDDAR0MTU5MBOkETAPMQ0wCwYDVQQD -DAR0MTYwMBOkETAPMQ0wCwYDVQQDDAR0MTYxMBOkETAPMQ0wCwYDVQQDDAR0MTYy -MBOkETAPMQ0wCwYDVQQDDAR0MTYzMBOkETAPMQ0wCwYDVQQDDAR0MTY0MBOkETAP -MQ0wCwYDVQQDDAR0MTY1MBOkETAPMQ0wCwYDVQQDDAR0MTY2MBOkETAPMQ0wCwYD -VQQDDAR0MTY3MBOkETAPMQ0wCwYDVQQDDAR0MTY4MBOkETAPMQ0wCwYDVQQDDAR0 -MTY5MBOkETAPMQ0wCwYDVQQDDAR0MTcwMBOkETAPMQ0wCwYDVQQDDAR0MTcxMA+G -DWh0dHA6Ly90ZXN0LzAwD4YNaHR0cDovL3Rlc3QvMTAPhg1odHRwOi8vdGVzdC8y -MA+GDWh0dHA6Ly90ZXN0LzMwD4YNaHR0cDovL3Rlc3QvNDAPhg1odHRwOi8vdGVz -dC81MA+GDWh0dHA6Ly90ZXN0LzYwD4YNaHR0cDovL3Rlc3QvNzAPhg1odHRwOi8v -dGVzdC84MA+GDWh0dHA6Ly90ZXN0LzkwEIYOaHR0cDovL3Rlc3QvMTAwEIYOaHR0 -cDovL3Rlc3QvMTEwEIYOaHR0cDovL3Rlc3QvMTIwEIYOaHR0cDovL3Rlc3QvMTMw -EIYOaHR0cDovL3Rlc3QvMTQwEIYOaHR0cDovL3Rlc3QvMTUwEIYOaHR0cDovL3Rl -c3QvMTYwEIYOaHR0cDovL3Rlc3QvMTcwEIYOaHR0cDovL3Rlc3QvMTgwEIYOaHR0 -cDovL3Rlc3QvMTkwEIYOaHR0cDovL3Rlc3QvMjAwEIYOaHR0cDovL3Rlc3QvMjEw -EIYOaHR0cDovL3Rlc3QvMjIwEIYOaHR0cDovL3Rlc3QvMjMwEIYOaHR0cDovL3Rl -c3QvMjQwEIYOaHR0cDovL3Rlc3QvMjUwEIYOaHR0cDovL3Rlc3QvMjYwEIYOaHR0 -cDovL3Rlc3QvMjcwEIYOaHR0cDovL3Rlc3QvMjgwEIYOaHR0cDovL3Rlc3QvMjkw -EIYOaHR0cDovL3Rlc3QvMzAwEIYOaHR0cDovL3Rlc3QvMzEwEIYOaHR0cDovL3Rl -c3QvMzIwEIYOaHR0cDovL3Rlc3QvMzMwEIYOaHR0cDovL3Rlc3QvMzQwEIYOaHR0 -cDovL3Rlc3QvMzUwEIYOaHR0cDovL3Rlc3QvMzYwEIYOaHR0cDovL3Rlc3QvMzcw -EIYOaHR0cDovL3Rlc3QvMzgwEIYOaHR0cDovL3Rlc3QvMzkwEIYOaHR0cDovL3Rl -c3QvNDAwEIYOaHR0cDovL3Rlc3QvNDEwEIYOaHR0cDovL3Rlc3QvNDIwEIYOaHR0 -cDovL3Rlc3QvNDMwEIYOaHR0cDovL3Rlc3QvNDQwEIYOaHR0cDovL3Rlc3QvNDUw -EIYOaHR0cDovL3Rlc3QvNDYwEIYOaHR0cDovL3Rlc3QvNDcwEIYOaHR0cDovL3Rl -c3QvNDgwEIYOaHR0cDovL3Rlc3QvNDkwEIYOaHR0cDovL3Rlc3QvNTAwEIYOaHR0 -cDovL3Rlc3QvNTEwEIYOaHR0cDovL3Rlc3QvNTIwEIYOaHR0cDovL3Rlc3QvNTMw -EIYOaHR0cDovL3Rlc3QvNTQwEIYOaHR0cDovL3Rlc3QvNTUwEIYOaHR0cDovL3Rl -c3QvNTYwEIYOaHR0cDovL3Rlc3QvNTcwEIYOaHR0cDovL3Rlc3QvNTgwEIYOaHR0 -cDovL3Rlc3QvNTkwEIYOaHR0cDovL3Rlc3QvNjAwEIYOaHR0cDovL3Rlc3QvNjEw -EIYOaHR0cDovL3Rlc3QvNjIwEIYOaHR0cDovL3Rlc3QvNjMwEIYOaHR0cDovL3Rl -c3QvNjQwEIYOaHR0cDovL3Rlc3QvNjUwEIYOaHR0cDovL3Rlc3QvNjYwEIYOaHR0 -cDovL3Rlc3QvNjcwEIYOaHR0cDovL3Rlc3QvNjgwEIYOaHR0cDovL3Rlc3QvNjkw -EIYOaHR0cDovL3Rlc3QvNzAwEIYOaHR0cDovL3Rlc3QvNzEwEIYOaHR0cDovL3Rl -c3QvNzIwEIYOaHR0cDovL3Rlc3QvNzMwEIYOaHR0cDovL3Rlc3QvNzQwEIYOaHR0 -cDovL3Rlc3QvNzUwEIYOaHR0cDovL3Rlc3QvNzYwEIYOaHR0cDovL3Rlc3QvNzcw -EIYOaHR0cDovL3Rlc3QvNzgwEIYOaHR0cDovL3Rlc3QvNzkwEIYOaHR0cDovL3Rl -c3QvODAwEIYOaHR0cDovL3Rlc3QvODEwEIYOaHR0cDovL3Rlc3QvODIwEIYOaHR0 -cDovL3Rlc3QvODMwEIYOaHR0cDovL3Rlc3QvODQwEIYOaHR0cDovL3Rlc3QvODUw -EIYOaHR0cDovL3Rlc3QvODYwEIYOaHR0cDovL3Rlc3QvODcwEIYOaHR0cDovL3Rl -c3QvODgwEIYOaHR0cDovL3Rlc3QvODkwEIYOaHR0cDovL3Rlc3QvOTAwEIYOaHR0 -cDovL3Rlc3QvOTEwEIYOaHR0cDovL3Rlc3QvOTIwEIYOaHR0cDovL3Rlc3QvOTMw -EIYOaHR0cDovL3Rlc3QvOTQwEIYOaHR0cDovL3Rlc3QvOTUwEIYOaHR0cDovL3Rl -c3QvOTYwEIYOaHR0cDovL3Rlc3QvOTcwEIYOaHR0cDovL3Rlc3QvOTgwEIYOaHR0 -cDovL3Rlc3QvOTkwEYYPaHR0cDovL3Rlc3QvMTAwMBGGD2h0dHA6Ly90ZXN0LzEw -MTARhg9odHRwOi8vdGVzdC8xMDIwEYYPaHR0cDovL3Rlc3QvMTAzMBGGD2h0dHA6 -Ly90ZXN0LzEwNDARhg9odHRwOi8vdGVzdC8xMDUwEYYPaHR0cDovL3Rlc3QvMTA2 -MBGGD2h0dHA6Ly90ZXN0LzEwNzARhg9odHRwOi8vdGVzdC8xMDgwEYYPaHR0cDov -L3Rlc3QvMTA5MBGGD2h0dHA6Ly90ZXN0LzExMDARhg9odHRwOi8vdGVzdC8xMTEw -EYYPaHR0cDovL3Rlc3QvMTEyMBGGD2h0dHA6Ly90ZXN0LzExMzARhg9odHRwOi8v -dGVzdC8xMTQwEYYPaHR0cDovL3Rlc3QvMTE1MBGGD2h0dHA6Ly90ZXN0LzExNjAR -hg9odHRwOi8vdGVzdC8xMTcwEYYPaHR0cDovL3Rlc3QvMTE4MBGGD2h0dHA6Ly90 -ZXN0LzExOTARhg9odHRwOi8vdGVzdC8xMjAwEYYPaHR0cDovL3Rlc3QvMTIxMBGG -D2h0dHA6Ly90ZXN0LzEyMjARhg9odHRwOi8vdGVzdC8xMjMwEYYPaHR0cDovL3Rl -c3QvMTI0MBGGD2h0dHA6Ly90ZXN0LzEyNTARhg9odHRwOi8vdGVzdC8xMjYwEYYP -aHR0cDovL3Rlc3QvMTI3MBGGD2h0dHA6Ly90ZXN0LzEyODARhg9odHRwOi8vdGVz -dC8xMjkwEYYPaHR0cDovL3Rlc3QvMTMwMBGGD2h0dHA6Ly90ZXN0LzEzMTARhg9o -dHRwOi8vdGVzdC8xMzIwEYYPaHR0cDovL3Rlc3QvMTMzMBGGD2h0dHA6Ly90ZXN0 -LzEzNDARhg9odHRwOi8vdGVzdC8xMzUwEYYPaHR0cDovL3Rlc3QvMTM2MBGGD2h0 -dHA6Ly90ZXN0LzEzNzARhg9odHRwOi8vdGVzdC8xMzgwEYYPaHR0cDovL3Rlc3Qv -MTM5MBGGD2h0dHA6Ly90ZXN0LzE0MDARhg9odHRwOi8vdGVzdC8xNDEwEYYPaHR0 -cDovL3Rlc3QvMTQyMBGGD2h0dHA6Ly90ZXN0LzE0MzARhg9odHRwOi8vdGVzdC8x -NDQwEYYPaHR0cDovL3Rlc3QvMTQ1MBGGD2h0dHA6Ly90ZXN0LzE0NjARhg9odHRw -Oi8vdGVzdC8xNDcwEYYPaHR0cDovL3Rlc3QvMTQ4MBGGD2h0dHA6Ly90ZXN0LzE0 -OTARhg9odHRwOi8vdGVzdC8xNTAwEYYPaHR0cDovL3Rlc3QvMTUxMBGGD2h0dHA6 -Ly90ZXN0LzE1MjARhg9odHRwOi8vdGVzdC8xNTMwEYYPaHR0cDovL3Rlc3QvMTU0 -MBGGD2h0dHA6Ly90ZXN0LzE1NTARhg9odHRwOi8vdGVzdC8xNTYwEYYPaHR0cDov -L3Rlc3QvMTU3MBGGD2h0dHA6Ly90ZXN0LzE1ODARhg9odHRwOi8vdGVzdC8xNTkw -EYYPaHR0cDovL3Rlc3QvMTYwMBGGD2h0dHA6Ly90ZXN0LzE2MTARhg9odHRwOi8v -dGVzdC8xNjIwEYYPaHR0cDovL3Rlc3QvMTYzMBGGD2h0dHA6Ly90ZXN0LzE2NDAR -hg9odHRwOi8vdGVzdC8xNjUwEYYPaHR0cDovL3Rlc3QvMTY2MBGGD2h0dHA6Ly90 -ZXN0LzE2NzARhg9odHRwOi8vdGVzdC8xNjgwEYYPaHR0cDovL3Rlc3QvMTY5MBGG -D2h0dHA6Ly90ZXN0LzE3MDARhg9odHRwOi8vdGVzdC8xNzEwEYYPaHR0cDovL3Rl -c3QvMTcyMBGGD2h0dHA6Ly90ZXN0LzE3MzARhg9odHRwOi8vdGVzdC8xNzQwEYYP -aHR0cDovL3Rlc3QvMTc1MBGGD2h0dHA6Ly90ZXN0LzE3NjARhg9odHRwOi8vdGVz -dC8xNzcwEYYPaHR0cDovL3Rlc3QvMTc4MBGGD2h0dHA6Ly90ZXN0LzE3OTARhg9o -dHRwOi8vdGVzdC8xODAwEYYPaHR0cDovL3Rlc3QvMTgxMBGGD2h0dHA6Ly90ZXN0 -LzE4MjARhg9odHRwOi8vdGVzdC8xODMwEYYPaHR0cDovL3Rlc3QvMTg0MBGGD2h0 -dHA6Ly90ZXN0LzE4NTARhg9odHRwOi8vdGVzdC8xODYwEYYPaHR0cDovL3Rlc3Qv -MTg3MBGGD2h0dHA6Ly90ZXN0LzE4ODARhg9odHRwOi8vdGVzdC8xODkwEYYPaHR0 -cDovL3Rlc3QvMTkwMBGGD2h0dHA6Ly90ZXN0LzE5MTARhg9odHRwOi8vdGVzdC8x -OTIwEYYPaHR0cDovL3Rlc3QvMTkzMBGGD2h0dHA6Ly90ZXN0LzE5NDARhg9odHRw -Oi8vdGVzdC8xOTUwEYYPaHR0cDovL3Rlc3QvMTk2MBGGD2h0dHA6Ly90ZXN0LzE5 -NzARhg9odHRwOi8vdGVzdC8xOTgwEYYPaHR0cDovL3Rlc3QvMTk5MBGGD2h0dHA6 -Ly90ZXN0LzIwMDARhg9odHRwOi8vdGVzdC8yMDEwEYYPaHR0cDovL3Rlc3QvMjAy -MBGGD2h0dHA6Ly90ZXN0LzIwMzARhg9odHRwOi8vdGVzdC8yMDQwEYYPaHR0cDov -L3Rlc3QvMjA1MBGGD2h0dHA6Ly90ZXN0LzIwNjARhg9odHRwOi8vdGVzdC8yMDcw -EYYPaHR0cDovL3Rlc3QvMjA4MBGGD2h0dHA6Ly90ZXN0LzIwOTARhg9odHRwOi8v -dGVzdC8yMTAwEYYPaHR0cDovL3Rlc3QvMjExMBGGD2h0dHA6Ly90ZXN0LzIxMjAR -hg9odHRwOi8vdGVzdC8yMTMwEYYPaHR0cDovL3Rlc3QvMjE0MBGGD2h0dHA6Ly90 -ZXN0LzIxNTARhg9odHRwOi8vdGVzdC8yMTYwEYYPaHR0cDovL3Rlc3QvMjE3MBGG -D2h0dHA6Ly90ZXN0LzIxODARhg9odHRwOi8vdGVzdC8yMTkwEYYPaHR0cDovL3Rl -c3QvMjIwMBGGD2h0dHA6Ly90ZXN0LzIyMTARhg9odHRwOi8vdGVzdC8yMjIwEYYP -aHR0cDovL3Rlc3QvMjIzMBGGD2h0dHA6Ly90ZXN0LzIyNDARhg9odHRwOi8vdGVz -dC8yMjUwEYYPaHR0cDovL3Rlc3QvMjI2MBGGD2h0dHA6Ly90ZXN0LzIyNzARhg9o -dHRwOi8vdGVzdC8yMjgwEYYPaHR0cDovL3Rlc3QvMjI5MBGGD2h0dHA6Ly90ZXN0 -LzIzMDARhg9odHRwOi8vdGVzdC8yMzEwEYYPaHR0cDovL3Rlc3QvMjMyMBGGD2h0 -dHA6Ly90ZXN0LzIzMzARhg9odHRwOi8vdGVzdC8yMzQwEYYPaHR0cDovL3Rlc3Qv -MjM1MBGGD2h0dHA6Ly90ZXN0LzIzNjARhg9odHRwOi8vdGVzdC8yMzcwEYYPaHR0 -cDovL3Rlc3QvMjM4MBGGD2h0dHA6Ly90ZXN0LzIzOTARhg9odHRwOi8vdGVzdC8y -NDAwEYYPaHR0cDovL3Rlc3QvMjQxMBGGD2h0dHA6Ly90ZXN0LzI0MjARhg9odHRw -Oi8vdGVzdC8yNDMwEYYPaHR0cDovL3Rlc3QvMjQ0MBGGD2h0dHA6Ly90ZXN0LzI0 -NTARhg9odHRwOi8vdGVzdC8yNDYwEYYPaHR0cDovL3Rlc3QvMjQ3MBGGD2h0dHA6 -Ly90ZXN0LzI0ODARhg9odHRwOi8vdGVzdC8yNDkwEYYPaHR0cDovL3Rlc3QvMjUw -MBGGD2h0dHA6Ly90ZXN0LzI1MTARhg9odHRwOi8vdGVzdC8yNTIwEYYPaHR0cDov -L3Rlc3QvMjUzMBGGD2h0dHA6Ly90ZXN0LzI1NDARhg9odHRwOi8vdGVzdC8yNTUw -EYYPaHR0cDovL3Rlc3QvMjU2MBGGD2h0dHA6Ly90ZXN0LzI1NzARhg9odHRwOi8v -dGVzdC8yNTgwEYYPaHR0cDovL3Rlc3QvMjU5MBGGD2h0dHA6Ly90ZXN0LzI2MDAR -hg9odHRwOi8vdGVzdC8yNjEwEYYPaHR0cDovL3Rlc3QvMjYyMBGGD2h0dHA6Ly90 -ZXN0LzI2MzARhg9odHRwOi8vdGVzdC8yNjQwEYYPaHR0cDovL3Rlc3QvMjY1MBGG -D2h0dHA6Ly90ZXN0LzI2NjARhg9odHRwOi8vdGVzdC8yNjcwEYYPaHR0cDovL3Rl -c3QvMjY4MBGGD2h0dHA6Ly90ZXN0LzI2OTARhg9odHRwOi8vdGVzdC8yNzAwEYYP -aHR0cDovL3Rlc3QvMjcxMBGGD2h0dHA6Ly90ZXN0LzI3MjARhg9odHRwOi8vdGVz -dC8yNzMwEYYPaHR0cDovL3Rlc3QvMjc0MBGGD2h0dHA6Ly90ZXN0LzI3NTARhg9o -dHRwOi8vdGVzdC8yNzYwEYYPaHR0cDovL3Rlc3QvMjc3MBGGD2h0dHA6Ly90ZXN0 -LzI3ODARhg9odHRwOi8vdGVzdC8yNzkwEYYPaHR0cDovL3Rlc3QvMjgwMBGGD2h0 -dHA6Ly90ZXN0LzI4MTARhg9odHRwOi8vdGVzdC8yODIwEYYPaHR0cDovL3Rlc3Qv -MjgzMBGGD2h0dHA6Ly90ZXN0LzI4NDARhg9odHRwOi8vdGVzdC8yODUwEYYPaHR0 -cDovL3Rlc3QvMjg2MBGGD2h0dHA6Ly90ZXN0LzI4NzARhg9odHRwOi8vdGVzdC8y -ODgwEYYPaHR0cDovL3Rlc3QvMjg5MBGGD2h0dHA6Ly90ZXN0LzI5MDARhg9odHRw -Oi8vdGVzdC8yOTEwEYYPaHR0cDovL3Rlc3QvMjkyMBGGD2h0dHA6Ly90ZXN0LzI5 -MzARhg9odHRwOi8vdGVzdC8yOTQwEYYPaHR0cDovL3Rlc3QvMjk1MBGGD2h0dHA6 -Ly90ZXN0LzI5NjARhg9odHRwOi8vdGVzdC8yOTcwEYYPaHR0cDovL3Rlc3QvMjk4 -MBGGD2h0dHA6Ly90ZXN0LzI5OTARhg9odHRwOi8vdGVzdC8zMDAwEYYPaHR0cDov -L3Rlc3QvMzAxMBGGD2h0dHA6Ly90ZXN0LzMwMjARhg9odHRwOi8vdGVzdC8zMDMw -EYYPaHR0cDovL3Rlc3QvMzA0MBGGD2h0dHA6Ly90ZXN0LzMwNTARhg9odHRwOi8v -dGVzdC8zMDYwEYYPaHR0cDovL3Rlc3QvMzA3MBGGD2h0dHA6Ly90ZXN0LzMwODAR -hg9odHRwOi8vdGVzdC8zMDkwEYYPaHR0cDovL3Rlc3QvMzEwMBGGD2h0dHA6Ly90 -ZXN0LzMxMTARhg9odHRwOi8vdGVzdC8zMTIwEYYPaHR0cDovL3Rlc3QvMzEzMBGG -D2h0dHA6Ly90ZXN0LzMxNDARhg9odHRwOi8vdGVzdC8zMTUwEYYPaHR0cDovL3Rl -c3QvMzE2MBGGD2h0dHA6Ly90ZXN0LzMxNzARhg9odHRwOi8vdGVzdC8zMTgwEYYP -aHR0cDovL3Rlc3QvMzE5MBGGD2h0dHA6Ly90ZXN0LzMyMDARhg9odHRwOi8vdGVz -dC8zMjEwEYYPaHR0cDovL3Rlc3QvMzIyMBGGD2h0dHA6Ly90ZXN0LzMyMzARhg9o -dHRwOi8vdGVzdC8zMjQwEYYPaHR0cDovL3Rlc3QvMzI1MBGGD2h0dHA6Ly90ZXN0 -LzMyNjARhg9odHRwOi8vdGVzdC8zMjcwEYYPaHR0cDovL3Rlc3QvMzI4MBGGD2h0 -dHA6Ly90ZXN0LzMyOTARhg9odHRwOi8vdGVzdC8zMzAwEYYPaHR0cDovL3Rlc3Qv -MzMxMBGGD2h0dHA6Ly90ZXN0LzMzMjARhg9odHRwOi8vdGVzdC8zMzMwEYYPaHR0 -cDovL3Rlc3QvMzM0MBGGD2h0dHA6Ly90ZXN0LzMzNTARhg9odHRwOi8vdGVzdC8z -MzYwEYYPaHR0cDovL3Rlc3QvMzM3MBGGD2h0dHA6Ly90ZXN0LzMzODARhg9odHRw -Oi8vdGVzdC8zMzkwEYYPaHR0cDovL3Rlc3QvMzQwMBGGD2h0dHA6Ly90ZXN0LzM0 -MTARhg9odHRwOi8vdGVzdC8zNDIwEYYPaHR0cDovL3Rlc3QvMzQzMBGGD2h0dHA6 -Ly90ZXN0LzM0NDARhg9odHRwOi8vdGVzdC8zNDUwEYYPaHR0cDovL3Rlc3QvMzQ2 -MBGGD2h0dHA6Ly90ZXN0LzM0NzARhg9odHRwOi8vdGVzdC8zNDgwEYYPaHR0cDov -L3Rlc3QvMzQ5MBGGD2h0dHA6Ly90ZXN0LzM1MDARhg9odHRwOi8vdGVzdC8zNTEw -EYYPaHR0cDovL3Rlc3QvMzUyMBGGD2h0dHA6Ly90ZXN0LzM1MzARhg9odHRwOi8v -dGVzdC8zNTQwEYYPaHR0cDovL3Rlc3QvMzU1MBGGD2h0dHA6Ly90ZXN0LzM1NjAR -hg9odHRwOi8vdGVzdC8zNTcwEYYPaHR0cDovL3Rlc3QvMzU4MBGGD2h0dHA6Ly90 -ZXN0LzM1OTARhg9odHRwOi8vdGVzdC8zNjAwEYYPaHR0cDovL3Rlc3QvMzYxMBGG -D2h0dHA6Ly90ZXN0LzM2MjARhg9odHRwOi8vdGVzdC8zNjMwEYYPaHR0cDovL3Rl -c3QvMzY0MBGGD2h0dHA6Ly90ZXN0LzM2NTARhg9odHRwOi8vdGVzdC8zNjYwEYYP -aHR0cDovL3Rlc3QvMzY3MBGGD2h0dHA6Ly90ZXN0LzM2ODARhg9odHRwOi8vdGVz -dC8zNjkwEYYPaHR0cDovL3Rlc3QvMzcwMBGGD2h0dHA6Ly90ZXN0LzM3MTARhg9o -dHRwOi8vdGVzdC8zNzIwEYYPaHR0cDovL3Rlc3QvMzczMBGGD2h0dHA6Ly90ZXN0 -LzM3NDARhg9odHRwOi8vdGVzdC8zNzUwEYYPaHR0cDovL3Rlc3QvMzc2MBGGD2h0 -dHA6Ly90ZXN0LzM3NzARhg9odHRwOi8vdGVzdC8zNzgwEYYPaHR0cDovL3Rlc3Qv -Mzc5MBGGD2h0dHA6Ly90ZXN0LzM4MDARhg9odHRwOi8vdGVzdC8zODEwEYYPaHR0 -cDovL3Rlc3QvMzgyMBGGD2h0dHA6Ly90ZXN0LzM4MzARhg9odHRwOi8vdGVzdC8z -ODQwEYYPaHR0cDovL3Rlc3QvMzg1MBGGD2h0dHA6Ly90ZXN0LzM4NjARhg9odHRw -Oi8vdGVzdC8zODcwEYYPaHR0cDovL3Rlc3QvMzg4MBGGD2h0dHA6Ly90ZXN0LzM4 -OTARhg9odHRwOi8vdGVzdC8zOTAwEYYPaHR0cDovL3Rlc3QvMzkxMBGGD2h0dHA6 -Ly90ZXN0LzM5MjARhg9odHRwOi8vdGVzdC8zOTMwEYYPaHR0cDovL3Rlc3QvMzk0 -MBGGD2h0dHA6Ly90ZXN0LzM5NTARhg9odHRwOi8vdGVzdC8zOTYwEYYPaHR0cDov -L3Rlc3QvMzk3MBGGD2h0dHA6Ly90ZXN0LzM5ODARhg9odHRwOi8vdGVzdC8zOTkw -EYYPaHR0cDovL3Rlc3QvNDAwMBGGD2h0dHA6Ly90ZXN0LzQwMTARhg9odHRwOi8v -dGVzdC80MDIwEYYPaHR0cDovL3Rlc3QvNDAzMBGGD2h0dHA6Ly90ZXN0LzQwNDAR -hg9odHRwOi8vdGVzdC80MDUwEYYPaHR0cDovL3Rlc3QvNDA2MBGGD2h0dHA6Ly90 -ZXN0LzQwNzARhg9odHRwOi8vdGVzdC80MDgwEYYPaHR0cDovL3Rlc3QvNDA5MBGG -D2h0dHA6Ly90ZXN0LzQxMDARhg9odHRwOi8vdGVzdC80MTEwEYYPaHR0cDovL3Rl -c3QvNDEyMBGGD2h0dHA6Ly90ZXN0LzQxMzARhg9odHRwOi8vdGVzdC80MTQwEYYP -aHR0cDovL3Rlc3QvNDE1MBGGD2h0dHA6Ly90ZXN0LzQxNjARhg9odHRwOi8vdGVz -dC80MTcwEYYPaHR0cDovL3Rlc3QvNDE4MBGGD2h0dHA6Ly90ZXN0LzQxOTARhg9o -dHRwOi8vdGVzdC80MjAwEYYPaHR0cDovL3Rlc3QvNDIxMBGGD2h0dHA6Ly90ZXN0 -LzQyMjARhg9odHRwOi8vdGVzdC80MjMwEYYPaHR0cDovL3Rlc3QvNDI0MBGGD2h0 -dHA6Ly90ZXN0LzQyNTARhg9odHRwOi8vdGVzdC80MjYwEYYPaHR0cDovL3Rlc3Qv -NDI3MBGGD2h0dHA6Ly90ZXN0LzQyODARhg9odHRwOi8vdGVzdC80MjkwEYYPaHR0 -cDovL3Rlc3QvNDMwMBGGD2h0dHA6Ly90ZXN0LzQzMTARhg9odHRwOi8vdGVzdC80 -MzIwEYYPaHR0cDovL3Rlc3QvNDMzMBGGD2h0dHA6Ly90ZXN0LzQzNDARhg9odHRw -Oi8vdGVzdC80MzUwEYYPaHR0cDovL3Rlc3QvNDM2MBGGD2h0dHA6Ly90ZXN0LzQz -NzARhg9odHRwOi8vdGVzdC80MzgwEYYPaHR0cDovL3Rlc3QvNDM5MBGGD2h0dHA6 -Ly90ZXN0LzQ0MDARhg9odHRwOi8vdGVzdC80NDEwEYYPaHR0cDovL3Rlc3QvNDQy -MBGGD2h0dHA6Ly90ZXN0LzQ0MzARhg9odHRwOi8vdGVzdC80NDQwEYYPaHR0cDov -L3Rlc3QvNDQ1MBGGD2h0dHA6Ly90ZXN0LzQ0NjARhg9odHRwOi8vdGVzdC80NDcw -EYYPaHR0cDovL3Rlc3QvNDQ4MBGGD2h0dHA6Ly90ZXN0LzQ0OTARhg9odHRwOi8v -dGVzdC80NTAwEYYPaHR0cDovL3Rlc3QvNDUxMBGGD2h0dHA6Ly90ZXN0LzQ1MjAR -hg9odHRwOi8vdGVzdC80NTMwEYYPaHR0cDovL3Rlc3QvNDU0MBGGD2h0dHA6Ly90 -ZXN0LzQ1NTARhg9odHRwOi8vdGVzdC80NTYwEYYPaHR0cDovL3Rlc3QvNDU3MBGG -D2h0dHA6Ly90ZXN0LzQ1ODARhg9odHRwOi8vdGVzdC80NTkwEYYPaHR0cDovL3Rl -c3QvNDYwMBGGD2h0dHA6Ly90ZXN0LzQ2MTARhg9odHRwOi8vdGVzdC80NjIwEYYP -aHR0cDovL3Rlc3QvNDYzMBGGD2h0dHA6Ly90ZXN0LzQ2NDARhg9odHRwOi8vdGVz -dC80NjUwEYYPaHR0cDovL3Rlc3QvNDY2MBGGD2h0dHA6Ly90ZXN0LzQ2NzARhg9o -dHRwOi8vdGVzdC80NjgwEYYPaHR0cDovL3Rlc3QvNDY5MBGGD2h0dHA6Ly90ZXN0 -LzQ3MDARhg9odHRwOi8vdGVzdC80NzEwEYYPaHR0cDovL3Rlc3QvNDcyMBGGD2h0 -dHA6Ly90ZXN0LzQ3MzARhg9odHRwOi8vdGVzdC80NzQwEYYPaHR0cDovL3Rlc3Qv -NDc1MBGGD2h0dHA6Ly90ZXN0LzQ3NjARhg9odHRwOi8vdGVzdC80NzcwEYYPaHR0 -cDovL3Rlc3QvNDc4MBGGD2h0dHA6Ly90ZXN0LzQ3OTARhg9odHRwOi8vdGVzdC80 -ODAwEYYPaHR0cDovL3Rlc3QvNDgxMBGGD2h0dHA6Ly90ZXN0LzQ4MjARhg9odHRw -Oi8vdGVzdC80ODMwEYYPaHR0cDovL3Rlc3QvNDg0MBGGD2h0dHA6Ly90ZXN0LzQ4 -NTARhg9odHRwOi8vdGVzdC80ODYwEYYPaHR0cDovL3Rlc3QvNDg3MBGGD2h0dHA6 -Ly90ZXN0LzQ4ODARhg9odHRwOi8vdGVzdC80ODkwEYYPaHR0cDovL3Rlc3QvNDkw -MBGGD2h0dHA6Ly90ZXN0LzQ5MTARhg9odHRwOi8vdGVzdC80OTIwEYYPaHR0cDov -L3Rlc3QvNDkzMBGGD2h0dHA6Ly90ZXN0LzQ5NDARhg9odHRwOi8vdGVzdC80OTUw -EYYPaHR0cDovL3Rlc3QvNDk2MBGGD2h0dHA6Ly90ZXN0LzQ5NzARhg9odHRwOi8v -dGVzdC80OTgwEYYPaHR0cDovL3Rlc3QvNDk5MBGGD2h0dHA6Ly90ZXN0LzUwMDAR -hg9odHRwOi8vdGVzdC81MDEwEYYPaHR0cDovL3Rlc3QvNTAyMBGGD2h0dHA6Ly90 -ZXN0LzUwMzARhg9odHRwOi8vdGVzdC81MDQwEYYPaHR0cDovL3Rlc3QvNTA1MBGG -D2h0dHA6Ly90ZXN0LzUwNjARhg9odHRwOi8vdGVzdC81MDcwEYYPaHR0cDovL3Rl -c3QvNTA4MBGGD2h0dHA6Ly90ZXN0LzUwOTARhg9odHRwOi8vdGVzdC81MTAwEYYP -aHR0cDovL3Rlc3QvNTExMBGGD2h0dHA6Ly90ZXN0LzUxMjARhg9odHRwOi8vdGVz -dC81MTMwEYYPaHR0cDovL3Rlc3QvNTE0MBGGD2h0dHA6Ly90ZXN0LzUxNTARhg9o -dHRwOi8vdGVzdC81MTYwEYYPaHR0cDovL3Rlc3QvNTE3MBGGD2h0dHA6Ly90ZXN0 -LzUxODARhg9odHRwOi8vdGVzdC81MTkwEYYPaHR0cDovL3Rlc3QvNTIwMBGGD2h0 -dHA6Ly90ZXN0LzUyMTARhg9odHRwOi8vdGVzdC81MjIwEYYPaHR0cDovL3Rlc3Qv -NTIzMBGGD2h0dHA6Ly90ZXN0LzUyNDARhg9odHRwOi8vdGVzdC81MjUwEYYPaHR0 -cDovL3Rlc3QvNTI2MBGGD2h0dHA6Ly90ZXN0LzUyNzARhg9odHRwOi8vdGVzdC81 -MjgwEYYPaHR0cDovL3Rlc3QvNTI5MBGGD2h0dHA6Ly90ZXN0LzUzMDARhg9odHRw -Oi8vdGVzdC81MzEwEYYPaHR0cDovL3Rlc3QvNTMyMBGGD2h0dHA6Ly90ZXN0LzUz -MzARhg9odHRwOi8vdGVzdC81MzQwEYYPaHR0cDovL3Rlc3QvNTM1MBGGD2h0dHA6 -Ly90ZXN0LzUzNjARhg9odHRwOi8vdGVzdC81MzcwEYYPaHR0cDovL3Rlc3QvNTM4 -MBGGD2h0dHA6Ly90ZXN0LzUzOTARhg9odHRwOi8vdGVzdC81NDAwEYYPaHR0cDov -L3Rlc3QvNTQxMBGGD2h0dHA6Ly90ZXN0LzU0MjARhg9odHRwOi8vdGVzdC81NDMw -EYYPaHR0cDovL3Rlc3QvNTQ0MBGGD2h0dHA6Ly90ZXN0LzU0NTARhg9odHRwOi8v -dGVzdC81NDYwEYYPaHR0cDovL3Rlc3QvNTQ3MBGGD2h0dHA6Ly90ZXN0LzU0ODAR -hg9odHRwOi8vdGVzdC81NDkwEYYPaHR0cDovL3Rlc3QvNTUwMBGGD2h0dHA6Ly90 -ZXN0LzU1MTARhg9odHRwOi8vdGVzdC81NTIwEYYPaHR0cDovL3Rlc3QvNTUzMBGG -D2h0dHA6Ly90ZXN0LzU1NDARhg9odHRwOi8vdGVzdC81NTUwEYYPaHR0cDovL3Rl -c3QvNTU2MBGGD2h0dHA6Ly90ZXN0LzU1NzARhg9odHRwOi8vdGVzdC81NTgwEYYP -aHR0cDovL3Rlc3QvNTU5MBGGD2h0dHA6Ly90ZXN0LzU2MDARhg9odHRwOi8vdGVz -dC81NjEwEYYPaHR0cDovL3Rlc3QvNTYyMBGGD2h0dHA6Ly90ZXN0LzU2MzARhg9o -dHRwOi8vdGVzdC81NjQwEYYPaHR0cDovL3Rlc3QvNTY1MBGGD2h0dHA6Ly90ZXN0 -LzU2NjARhg9odHRwOi8vdGVzdC81NjcwEYYPaHR0cDovL3Rlc3QvNTY4MBGGD2h0 -dHA6Ly90ZXN0LzU2OTARhg9odHRwOi8vdGVzdC81NzAwEYYPaHR0cDovL3Rlc3Qv -NTcxMBGGD2h0dHA6Ly90ZXN0LzU3MjARhg9odHRwOi8vdGVzdC81NzMwEYYPaHR0 -cDovL3Rlc3QvNTc0MBGGD2h0dHA6Ly90ZXN0LzU3NTARhg9odHRwOi8vdGVzdC81 -NzYwEYYPaHR0cDovL3Rlc3QvNTc3MBGGD2h0dHA6Ly90ZXN0LzU3ODARhg9odHRw -Oi8vdGVzdC81NzkwEYYPaHR0cDovL3Rlc3QvNTgwMBGGD2h0dHA6Ly90ZXN0LzU4 -MTARhg9odHRwOi8vdGVzdC81ODIwEYYPaHR0cDovL3Rlc3QvNTgzMBGGD2h0dHA6 -Ly90ZXN0LzU4NDARhg9odHRwOi8vdGVzdC81ODUwEYYPaHR0cDovL3Rlc3QvNTg2 -MBGGD2h0dHA6Ly90ZXN0LzU4NzARhg9odHRwOi8vdGVzdC81ODgwEYYPaHR0cDov -L3Rlc3QvNTg5MBGGD2h0dHA6Ly90ZXN0LzU5MDARhg9odHRwOi8vdGVzdC81OTEw -EYYPaHR0cDovL3Rlc3QvNTkyMBGGD2h0dHA6Ly90ZXN0LzU5MzARhg9odHRwOi8v -dGVzdC81OTQwEYYPaHR0cDovL3Rlc3QvNTk1MBGGD2h0dHA6Ly90ZXN0LzU5NjAR -hg9odHRwOi8vdGVzdC81OTcwEYYPaHR0cDovL3Rlc3QvNTk4MBGGD2h0dHA6Ly90 -ZXN0LzU5OTARhg9odHRwOi8vdGVzdC82MDAwEYYPaHR0cDovL3Rlc3QvNjAxMBGG -D2h0dHA6Ly90ZXN0LzYwMjARhg9odHRwOi8vdGVzdC82MDMwEYYPaHR0cDovL3Rl -c3QvNjA0MBGGD2h0dHA6Ly90ZXN0LzYwNTARhg9odHRwOi8vdGVzdC82MDYwEYYP -aHR0cDovL3Rlc3QvNjA3MBGGD2h0dHA6Ly90ZXN0LzYwODARhg9odHRwOi8vdGVz -dC82MDkwEYYPaHR0cDovL3Rlc3QvNjEwMBGGD2h0dHA6Ly90ZXN0LzYxMTARhg9o -dHRwOi8vdGVzdC82MTIwEYYPaHR0cDovL3Rlc3QvNjEzMBGGD2h0dHA6Ly90ZXN0 -LzYxNDARhg9odHRwOi8vdGVzdC82MTUwEYYPaHR0cDovL3Rlc3QvNjE2MBGGD2h0 -dHA6Ly90ZXN0LzYxNzARhg9odHRwOi8vdGVzdC82MTgwEYYPaHR0cDovL3Rlc3Qv -NjE5MBGGD2h0dHA6Ly90ZXN0LzYyMDARhg9odHRwOi8vdGVzdC82MjEwEYYPaHR0 -cDovL3Rlc3QvNjIyMBGGD2h0dHA6Ly90ZXN0LzYyMzARhg9odHRwOi8vdGVzdC82 -MjQwEYYPaHR0cDovL3Rlc3QvNjI1MBGGD2h0dHA6Ly90ZXN0LzYyNjARhg9odHRw -Oi8vdGVzdC82MjcwEYYPaHR0cDovL3Rlc3QvNjI4MBGGD2h0dHA6Ly90ZXN0LzYy -OTARhg9odHRwOi8vdGVzdC82MzAwEYYPaHR0cDovL3Rlc3QvNjMxMBGGD2h0dHA6 -Ly90ZXN0LzYzMjARhg9odHRwOi8vdGVzdC82MzMwEYYPaHR0cDovL3Rlc3QvNjM0 -MBGGD2h0dHA6Ly90ZXN0LzYzNTARhg9odHRwOi8vdGVzdC82MzYwEYYPaHR0cDov -L3Rlc3QvNjM3MBGGD2h0dHA6Ly90ZXN0LzYzODARhg9odHRwOi8vdGVzdC82Mzkw -EYYPaHR0cDovL3Rlc3QvNjQwMBGGD2h0dHA6Ly90ZXN0LzY0MTARhg9odHRwOi8v -dGVzdC82NDIwEYYPaHR0cDovL3Rlc3QvNjQzMBGGD2h0dHA6Ly90ZXN0LzY0NDAR -hg9odHRwOi8vdGVzdC82NDUwEYYPaHR0cDovL3Rlc3QvNjQ2MBGGD2h0dHA6Ly90 -ZXN0LzY0NzARhg9odHRwOi8vdGVzdC82NDgwEYYPaHR0cDovL3Rlc3QvNjQ5MBGG -D2h0dHA6Ly90ZXN0LzY1MDARhg9odHRwOi8vdGVzdC82NTEwEYYPaHR0cDovL3Rl -c3QvNjUyMBGGD2h0dHA6Ly90ZXN0LzY1MzARhg9odHRwOi8vdGVzdC82NTQwEYYP -aHR0cDovL3Rlc3QvNjU1MBGGD2h0dHA6Ly90ZXN0LzY1NjARhg9odHRwOi8vdGVz -dC82NTcwEYYPaHR0cDovL3Rlc3QvNjU4MBGGD2h0dHA6Ly90ZXN0LzY1OTARhg9o -dHRwOi8vdGVzdC82NjAwEYYPaHR0cDovL3Rlc3QvNjYxMBGGD2h0dHA6Ly90ZXN0 -LzY2MjARhg9odHRwOi8vdGVzdC82NjMwEYYPaHR0cDovL3Rlc3QvNjY0MBGGD2h0 -dHA6Ly90ZXN0LzY2NTARhg9odHRwOi8vdGVzdC82NjYwEYYPaHR0cDovL3Rlc3Qv -NjY3MBGGD2h0dHA6Ly90ZXN0LzY2ODARhg9odHRwOi8vdGVzdC82NjkwEYYPaHR0 -cDovL3Rlc3QvNjcwMBGGD2h0dHA6Ly90ZXN0LzY3MTARhg9odHRwOi8vdGVzdC82 -NzIwEYYPaHR0cDovL3Rlc3QvNjczMBGGD2h0dHA6Ly90ZXN0LzY3NDARhg9odHRw -Oi8vdGVzdC82NzUwEYYPaHR0cDovL3Rlc3QvNjc2MBGGD2h0dHA6Ly90ZXN0LzY3 -NzARhg9odHRwOi8vdGVzdC82NzgwEYYPaHR0cDovL3Rlc3QvNjc5MBGGD2h0dHA6 -Ly90ZXN0LzY4MDARhg9odHRwOi8vdGVzdC82ODEwEYYPaHR0cDovL3Rlc3QvNjgy -MBGGD2h0dHA6Ly90ZXN0LzY4MzARhg9odHRwOi8vdGVzdC82ODQwEYYPaHR0cDov -L3Rlc3QvNjg1MBGGD2h0dHA6Ly90ZXN0LzY4NjARhg9odHRwOi8vdGVzdC82ODcw -EYYPaHR0cDovL3Rlc3QvNjg4MBGGD2h0dHA6Ly90ZXN0LzY4OTARhg9odHRwOi8v -dGVzdC82OTAwEYYPaHR0cDovL3Rlc3QvNjkxMBGGD2h0dHA6Ly90ZXN0LzY5MjAR -hg9odHRwOi8vdGVzdC82OTMwEYYPaHR0cDovL3Rlc3QvNjk0MBGGD2h0dHA6Ly90 -ZXN0LzY5NTARhg9odHRwOi8vdGVzdC82OTYwEYYPaHR0cDovL3Rlc3QvNjk3MBGG -D2h0dHA6Ly90ZXN0LzY5ODARhg9odHRwOi8vdGVzdC82OTkwEYYPaHR0cDovL3Rl -c3QvNzAwMBGGD2h0dHA6Ly90ZXN0LzcwMTARhg9odHRwOi8vdGVzdC83MDIwEYYP -aHR0cDovL3Rlc3QvNzAzMBGGD2h0dHA6Ly90ZXN0LzcwNDARhg9odHRwOi8vdGVz -dC83MDUwEYYPaHR0cDovL3Rlc3QvNzA2MBGGD2h0dHA6Ly90ZXN0LzcwNzARhg9o -dHRwOi8vdGVzdC83MDgwEYYPaHR0cDovL3Rlc3QvNzA5MBGGD2h0dHA6Ly90ZXN0 -LzcxMDARhg9odHRwOi8vdGVzdC83MTEwEYYPaHR0cDovL3Rlc3QvNzEyMBGGD2h0 -dHA6Ly90ZXN0LzcxMzARhg9odHRwOi8vdGVzdC83MTQwEYYPaHR0cDovL3Rlc3Qv -NzE1MBGGD2h0dHA6Ly90ZXN0LzcxNjARhg9odHRwOi8vdGVzdC83MTcwEYYPaHR0 -cDovL3Rlc3QvNzE4MBGGD2h0dHA6Ly90ZXN0LzcxOTARhg9odHRwOi8vdGVzdC83 -MjAwEYYPaHR0cDovL3Rlc3QvNzIxMBGGD2h0dHA6Ly90ZXN0LzcyMjARhg9odHRw -Oi8vdGVzdC83MjMwEYYPaHR0cDovL3Rlc3QvNzI0MBGGD2h0dHA6Ly90ZXN0Lzcy -NTARhg9odHRwOi8vdGVzdC83MjYwEYYPaHR0cDovL3Rlc3QvNzI3MBGGD2h0dHA6 -Ly90ZXN0LzcyODARhg9odHRwOi8vdGVzdC83MjkwEYYPaHR0cDovL3Rlc3QvNzMw -MBGGD2h0dHA6Ly90ZXN0LzczMTARhg9odHRwOi8vdGVzdC83MzIwEYYPaHR0cDov -L3Rlc3QvNzMzMBGGD2h0dHA6Ly90ZXN0LzczNDARhg9odHRwOi8vdGVzdC83MzUw -EYYPaHR0cDovL3Rlc3QvNzM2MBGGD2h0dHA6Ly90ZXN0LzczNzARhg9odHRwOi8v -dGVzdC83MzgwEYYPaHR0cDovL3Rlc3QvNzM5MBGGD2h0dHA6Ly90ZXN0Lzc0MDAR -hg9odHRwOi8vdGVzdC83NDEwEYYPaHR0cDovL3Rlc3QvNzQyMBGGD2h0dHA6Ly90 -ZXN0Lzc0MzARhg9odHRwOi8vdGVzdC83NDQwEYYPaHR0cDovL3Rlc3QvNzQ1MBGG -D2h0dHA6Ly90ZXN0Lzc0NjARhg9odHRwOi8vdGVzdC83NDcwEYYPaHR0cDovL3Rl -c3QvNzQ4MBGGD2h0dHA6Ly90ZXN0Lzc0OTARhg9odHRwOi8vdGVzdC83NTAwEYYP -aHR0cDovL3Rlc3QvNzUxMBGGD2h0dHA6Ly90ZXN0Lzc1MjARhg9odHRwOi8vdGVz -dC83NTMwEYYPaHR0cDovL3Rlc3QvNzU0MBGGD2h0dHA6Ly90ZXN0Lzc1NTARhg9o -dHRwOi8vdGVzdC83NTYwEYYPaHR0cDovL3Rlc3QvNzU3MBGGD2h0dHA6Ly90ZXN0 -Lzc1ODARhg9odHRwOi8vdGVzdC83NTkwEYYPaHR0cDovL3Rlc3QvNzYwMBGGD2h0 -dHA6Ly90ZXN0Lzc2MTARhg9odHRwOi8vdGVzdC83NjIwEYYPaHR0cDovL3Rlc3Qv -NzYzMBGGD2h0dHA6Ly90ZXN0Lzc2NDARhg9odHRwOi8vdGVzdC83NjUwEYYPaHR0 -cDovL3Rlc3QvNzY2MBGGD2h0dHA6Ly90ZXN0Lzc2NzARhg9odHRwOi8vdGVzdC83 -NjgwEYYPaHR0cDovL3Rlc3QvNzY5MBGGD2h0dHA6Ly90ZXN0Lzc3MDARhg9odHRw -Oi8vdGVzdC83NzEwEYYPaHR0cDovL3Rlc3QvNzcyMBGGD2h0dHA6Ly90ZXN0Lzc3 -MzARhg9odHRwOi8vdGVzdC83NzQwEYYPaHR0cDovL3Rlc3QvNzc1MBGGD2h0dHA6 -Ly90ZXN0Lzc3NjARhg9odHRwOi8vdGVzdC83NzcwEYYPaHR0cDovL3Rlc3QvNzc4 -MBGGD2h0dHA6Ly90ZXN0Lzc3OTARhg9odHRwOi8vdGVzdC83ODAwEYYPaHR0cDov -L3Rlc3QvNzgxMBGGD2h0dHA6Ly90ZXN0Lzc4MjARhg9odHRwOi8vdGVzdC83ODMw -EYYPaHR0cDovL3Rlc3QvNzg0MBGGD2h0dHA6Ly90ZXN0Lzc4NTARhg9odHRwOi8v -dGVzdC83ODYwEYYPaHR0cDovL3Rlc3QvNzg3MBGGD2h0dHA6Ly90ZXN0Lzc4ODAR -hg9odHRwOi8vdGVzdC83ODkwEYYPaHR0cDovL3Rlc3QvNzkwMBGGD2h0dHA6Ly90 -ZXN0Lzc5MTARhg9odHRwOi8vdGVzdC83OTIwEYYPaHR0cDovL3Rlc3QvNzkzMBGG -D2h0dHA6Ly90ZXN0Lzc5NDARhg9odHRwOi8vdGVzdC83OTUwEYYPaHR0cDovL3Rl -c3QvNzk2MBGGD2h0dHA6Ly90ZXN0Lzc5NzARhg9odHRwOi8vdGVzdC83OTgwEYYP -aHR0cDovL3Rlc3QvNzk5MBGGD2h0dHA6Ly90ZXN0LzgwMDARhg9odHRwOi8vdGVz -dC84MDEwEYYPaHR0cDovL3Rlc3QvODAyMBGGD2h0dHA6Ly90ZXN0LzgwMzARhg9o -dHRwOi8vdGVzdC84MDQwEYYPaHR0cDovL3Rlc3QvODA1MBGGD2h0dHA6Ly90ZXN0 -LzgwNjARhg9odHRwOi8vdGVzdC84MDcwEYYPaHR0cDovL3Rlc3QvODA4MBGGD2h0 -dHA6Ly90ZXN0LzgwOTARhg9odHRwOi8vdGVzdC84MTAwEYYPaHR0cDovL3Rlc3Qv -ODExMBGGD2h0dHA6Ly90ZXN0LzgxMjARhg9odHRwOi8vdGVzdC84MTMwEYYPaHR0 -cDovL3Rlc3QvODE0MBGGD2h0dHA6Ly90ZXN0LzgxNTARhg9odHRwOi8vdGVzdC84 -MTYwEYYPaHR0cDovL3Rlc3QvODE3MBGGD2h0dHA6Ly90ZXN0LzgxODARhg9odHRw -Oi8vdGVzdC84MTkwEYYPaHR0cDovL3Rlc3QvODIwMBGGD2h0dHA6Ly90ZXN0Lzgy -MTARhg9odHRwOi8vdGVzdC84MjIwEYYPaHR0cDovL3Rlc3QvODIzMBGGD2h0dHA6 -Ly90ZXN0LzgyNDARhg9odHRwOi8vdGVzdC84MjUwEYYPaHR0cDovL3Rlc3QvODI2 -MBGGD2h0dHA6Ly90ZXN0LzgyNzARhg9odHRwOi8vdGVzdC84MjgwEYYPaHR0cDov -L3Rlc3QvODI5MBGGD2h0dHA6Ly90ZXN0LzgzMDARhg9odHRwOi8vdGVzdC84MzEw -EYYPaHR0cDovL3Rlc3QvODMyMBGGD2h0dHA6Ly90ZXN0LzgzMzARhg9odHRwOi8v -dGVzdC84MzQwEYYPaHR0cDovL3Rlc3QvODM1MBGGD2h0dHA6Ly90ZXN0LzgzNjAR -hg9odHRwOi8vdGVzdC84MzcwEYYPaHR0cDovL3Rlc3QvODM4MBGGD2h0dHA6Ly90 -ZXN0LzgzOTARhg9odHRwOi8vdGVzdC84NDAwEYYPaHR0cDovL3Rlc3QvODQxMBGG -D2h0dHA6Ly90ZXN0Lzg0MjARhg9odHRwOi8vdGVzdC84NDMwEYYPaHR0cDovL3Rl -c3QvODQ0MBGGD2h0dHA6Ly90ZXN0Lzg0NTARhg9odHRwOi8vdGVzdC84NDYwEYYP -aHR0cDovL3Rlc3QvODQ3MBGGD2h0dHA6Ly90ZXN0Lzg0ODARhg9odHRwOi8vdGVz -dC84NDkwEYYPaHR0cDovL3Rlc3QvODUwMBGGD2h0dHA6Ly90ZXN0Lzg1MTARhg9o -dHRwOi8vdGVzdC84NTIwEYYPaHR0cDovL3Rlc3QvODUzMBGGD2h0dHA6Ly90ZXN0 -Lzg1NDARhg9odHRwOi8vdGVzdC84NTUwEYYPaHR0cDovL3Rlc3QvODU2MBGGD2h0 -dHA6Ly90ZXN0Lzg1NzARhg9odHRwOi8vdGVzdC84NTgwEYYPaHR0cDovL3Rlc3Qv -ODU5MBGGD2h0dHA6Ly90ZXN0Lzg2MDARhg9odHRwOi8vdGVzdC84NjEwEYYPaHR0 -cDovL3Rlc3QvODYyMBGGD2h0dHA6Ly90ZXN0Lzg2MzARhg9odHRwOi8vdGVzdC84 -NjQwEYYPaHR0cDovL3Rlc3QvODY1MBGGD2h0dHA6Ly90ZXN0Lzg2NjARhg9odHRw -Oi8vdGVzdC84NjcwEYYPaHR0cDovL3Rlc3QvODY4MBGGD2h0dHA6Ly90ZXN0Lzg2 -OTARhg9odHRwOi8vdGVzdC84NzAwEYYPaHR0cDovL3Rlc3QvODcxMBGGD2h0dHA6 -Ly90ZXN0Lzg3MjARhg9odHRwOi8vdGVzdC84NzMwEYYPaHR0cDovL3Rlc3QvODc0 -MBGGD2h0dHA6Ly90ZXN0Lzg3NTARhg9odHRwOi8vdGVzdC84NzYwEYYPaHR0cDov -L3Rlc3QvODc3MBGGD2h0dHA6Ly90ZXN0Lzg3ODARhg9odHRwOi8vdGVzdC84Nzkw -EYYPaHR0cDovL3Rlc3QvODgwMBGGD2h0dHA6Ly90ZXN0Lzg4MTARhg9odHRwOi8v -dGVzdC84ODIwEYYPaHR0cDovL3Rlc3QvODgzMBGGD2h0dHA6Ly90ZXN0Lzg4NDAR -hg9odHRwOi8vdGVzdC84ODUwEYYPaHR0cDovL3Rlc3QvODg2MBGGD2h0dHA6Ly90 -ZXN0Lzg4NzARhg9odHRwOi8vdGVzdC84ODgwEYYPaHR0cDovL3Rlc3QvODg5MBGG -D2h0dHA6Ly90ZXN0Lzg5MDARhg9odHRwOi8vdGVzdC84OTEwEYYPaHR0cDovL3Rl -c3QvODkyMBGGD2h0dHA6Ly90ZXN0Lzg5MzARhg9odHRwOi8vdGVzdC84OTQwEYYP -aHR0cDovL3Rlc3QvODk1MBGGD2h0dHA6Ly90ZXN0Lzg5NjARhg9odHRwOi8vdGVz -dC84OTcwEYYPaHR0cDovL3Rlc3QvODk4MBGGD2h0dHA6Ly90ZXN0Lzg5OTARhg9o -dHRwOi8vdGVzdC85MDAwEYYPaHR0cDovL3Rlc3QvOTAxMBGGD2h0dHA6Ly90ZXN0 -LzkwMjARhg9odHRwOi8vdGVzdC85MDMwEYYPaHR0cDovL3Rlc3QvOTA0MBGGD2h0 -dHA6Ly90ZXN0LzkwNTARhg9odHRwOi8vdGVzdC85MDYwEYYPaHR0cDovL3Rlc3Qv -OTA3MBGGD2h0dHA6Ly90ZXN0LzkwODARhg9odHRwOi8vdGVzdC85MDkwEYYPaHR0 -cDovL3Rlc3QvOTEwMBGGD2h0dHA6Ly90ZXN0LzkxMTARhg9odHRwOi8vdGVzdC85 -MTIwEYYPaHR0cDovL3Rlc3QvOTEzMBGGD2h0dHA6Ly90ZXN0LzkxNDARhg9odHRw -Oi8vdGVzdC85MTUwEYYPaHR0cDovL3Rlc3QvOTE2MBGGD2h0dHA6Ly90ZXN0Lzkx -NzARhg9odHRwOi8vdGVzdC85MTgwEYYPaHR0cDovL3Rlc3QvOTE5MBGGD2h0dHA6 -Ly90ZXN0LzkyMDARhg9odHRwOi8vdGVzdC85MjEwEYYPaHR0cDovL3Rlc3QvOTIy -MBGGD2h0dHA6Ly90ZXN0LzkyMzARhg9odHRwOi8vdGVzdC85MjQwEYYPaHR0cDov -L3Rlc3QvOTI1MBGGD2h0dHA6Ly90ZXN0LzkyNjARhg9odHRwOi8vdGVzdC85Mjcw -EYYPaHR0cDovL3Rlc3QvOTI4MBGGD2h0dHA6Ly90ZXN0LzkyOTARhg9odHRwOi8v -dGVzdC85MzAwEYYPaHR0cDovL3Rlc3QvOTMxMBGGD2h0dHA6Ly90ZXN0LzkzMjAR -hg9odHRwOi8vdGVzdC85MzMwEYYPaHR0cDovL3Rlc3QvOTM0MBGGD2h0dHA6Ly90 -ZXN0LzkzNTARhg9odHRwOi8vdGVzdC85MzYwEYYPaHR0cDovL3Rlc3QvOTM3MBGG -D2h0dHA6Ly90ZXN0LzkzODARhg9odHRwOi8vdGVzdC85MzkwEYYPaHR0cDovL3Rl -c3QvOTQwMBGGD2h0dHA6Ly90ZXN0Lzk0MTARhg9odHRwOi8vdGVzdC85NDIwEYYP -aHR0cDovL3Rlc3QvOTQzMBGGD2h0dHA6Ly90ZXN0Lzk0NDARhg9odHRwOi8vdGVz -dC85NDUwEYYPaHR0cDovL3Rlc3QvOTQ2MBGGD2h0dHA6Ly90ZXN0Lzk0NzARhg9o -dHRwOi8vdGVzdC85NDgwEYYPaHR0cDovL3Rlc3QvOTQ5MBGGD2h0dHA6Ly90ZXN0 -Lzk1MDARhg9odHRwOi8vdGVzdC85NTEwEYYPaHR0cDovL3Rlc3QvOTUyMBGGD2h0 -dHA6Ly90ZXN0Lzk1MzARhg9odHRwOi8vdGVzdC85NTQwEYYPaHR0cDovL3Rlc3Qv -OTU1MBGGD2h0dHA6Ly90ZXN0Lzk1NjARhg9odHRwOi8vdGVzdC85NTcwEYYPaHR0 -cDovL3Rlc3QvOTU4MBGGD2h0dHA6Ly90ZXN0Lzk1OTARhg9odHRwOi8vdGVzdC85 -NjAwEYYPaHR0cDovL3Rlc3QvOTYxMBGGD2h0dHA6Ly90ZXN0Lzk2MjARhg9odHRw -Oi8vdGVzdC85NjMwEYYPaHR0cDovL3Rlc3QvOTY0MBGGD2h0dHA6Ly90ZXN0Lzk2 -NTARhg9odHRwOi8vdGVzdC85NjYwEYYPaHR0cDovL3Rlc3QvOTY3MBGGD2h0dHA6 -Ly90ZXN0Lzk2ODARhg9odHRwOi8vdGVzdC85NjkwEYYPaHR0cDovL3Rlc3QvOTcw -MBGGD2h0dHA6Ly90ZXN0Lzk3MTARhg9odHRwOi8vdGVzdC85NzIwEYYPaHR0cDov -L3Rlc3QvOTczMBGGD2h0dHA6Ly90ZXN0Lzk3NDARhg9odHRwOi8vdGVzdC85NzUw -EYYPaHR0cDovL3Rlc3QvOTc2MBGGD2h0dHA6Ly90ZXN0Lzk3NzARhg9odHRwOi8v -dGVzdC85NzgwEYYPaHR0cDovL3Rlc3QvOTc5MBGGD2h0dHA6Ly90ZXN0Lzk4MDAR -hg9odHRwOi8vdGVzdC85ODEwEYYPaHR0cDovL3Rlc3QvOTgyMBGGD2h0dHA6Ly90 -ZXN0Lzk4MzARhg9odHRwOi8vdGVzdC85ODQwEYYPaHR0cDovL3Rlc3QvOTg1MBGG -D2h0dHA6Ly90ZXN0Lzk4NjARhg9odHRwOi8vdGVzdC85ODcwEYYPaHR0cDovL3Rl -c3QvOTg4MBGGD2h0dHA6Ly90ZXN0Lzk4OTARhg9odHRwOi8vdGVzdC85OTAwEYYP -aHR0cDovL3Rlc3QvOTkxMBGGD2h0dHA6Ly90ZXN0Lzk5MjARhg9odHRwOi8vdGVz -dC85OTMwEYYPaHR0cDovL3Rlc3QvOTk0MBGGD2h0dHA6Ly90ZXN0Lzk5NTARhg9o -dHRwOi8vdGVzdC85OTYwEYYPaHR0cDovL3Rlc3QvOTk3MBGGD2h0dHA6Ly90ZXN0 -Lzk5ODARhg9odHRwOi8vdGVzdC85OTkwEoYQaHR0cDovL3Rlc3QvMTAwMDAShhBo -dHRwOi8vdGVzdC8xMDAxMBKGEGh0dHA6Ly90ZXN0LzEwMDIwEoYQaHR0cDovL3Rl -c3QvMTAwMzAShhBodHRwOi8vdGVzdC8xMDA0MBKGEGh0dHA6Ly90ZXN0LzEwMDUw -EoYQaHR0cDovL3Rlc3QvMTAwNjAShhBodHRwOi8vdGVzdC8xMDA3MBKGEGh0dHA6 -Ly90ZXN0LzEwMDgwEoYQaHR0cDovL3Rlc3QvMTAwOTAShhBodHRwOi8vdGVzdC8x -MDEwMBKGEGh0dHA6Ly90ZXN0LzEwMTEwEoYQaHR0cDovL3Rlc3QvMTAxMjAShhBo -dHRwOi8vdGVzdC8xMDEzMBKGEGh0dHA6Ly90ZXN0LzEwMTQwEoYQaHR0cDovL3Rl -c3QvMTAxNTAShhBodHRwOi8vdGVzdC8xMDE2MBKGEGh0dHA6Ly90ZXN0LzEwMTcw -EoYQaHR0cDovL3Rlc3QvMTAxODAShhBodHRwOi8vdGVzdC8xMDE5MBKGEGh0dHA6 -Ly90ZXN0LzEwMjAwEoYQaHR0cDovL3Rlc3QvMTAyMTAShhBodHRwOi8vdGVzdC8x -MDIyMBKGEGh0dHA6Ly90ZXN0LzEwMjMwEoYQaHR0cDovL3Rlc3QvMTAyNKGCaW4w -CYIHeDAudGVzdDAJggd4MS50ZXN0MAmCB3gyLnRlc3QwCYIHeDMudGVzdDAJggd4 -NC50ZXN0MAmCB3g1LnRlc3QwCYIHeDYudGVzdDAJggd4Ny50ZXN0MAmCB3g4LnRl -c3QwCYIHeDkudGVzdDAKggh4MTAudGVzdDAKggh4MTEudGVzdDAKggh4MTIudGVz -dDAKggh4MTMudGVzdDAKggh4MTQudGVzdDAKggh4MTUudGVzdDAKggh4MTYudGVz -dDAKggh4MTcudGVzdDAKggh4MTgudGVzdDAKggh4MTkudGVzdDAKggh4MjAudGVz -dDAKggh4MjEudGVzdDAKggh4MjIudGVzdDAKggh4MjMudGVzdDAKggh4MjQudGVz -dDAKggh4MjUudGVzdDAKggh4MjYudGVzdDAKggh4MjcudGVzdDAKggh4MjgudGVz -dDAKggh4MjkudGVzdDAKggh4MzAudGVzdDAKggh4MzEudGVzdDAKggh4MzIudGVz -dDAKggh4MzMudGVzdDAKggh4MzQudGVzdDAKggh4MzUudGVzdDAKggh4MzYudGVz -dDAKggh4MzcudGVzdDAKggh4MzgudGVzdDAKggh4MzkudGVzdDAKggh4NDAudGVz -dDAKggh4NDEudGVzdDAKggh4NDIudGVzdDAKggh4NDMudGVzdDAKggh4NDQudGVz -dDAKggh4NDUudGVzdDAKggh4NDYudGVzdDAKggh4NDcudGVzdDAKggh4NDgudGVz -dDAKggh4NDkudGVzdDAKggh4NTAudGVzdDAKggh4NTEudGVzdDAKggh4NTIudGVz -dDAKggh4NTMudGVzdDAKggh4NTQudGVzdDAKggh4NTUudGVzdDAKggh4NTYudGVz -dDAKggh4NTcudGVzdDAKggh4NTgudGVzdDAKggh4NTkudGVzdDAKggh4NjAudGVz -dDAKggh4NjEudGVzdDAKggh4NjIudGVzdDAKggh4NjMudGVzdDAKggh4NjQudGVz -dDAKggh4NjUudGVzdDAKggh4NjYudGVzdDAKggh4NjcudGVzdDAKggh4NjgudGVz -dDAKggh4NjkudGVzdDAKggh4NzAudGVzdDAKggh4NzEudGVzdDAKggh4NzIudGVz -dDAKggh4NzMudGVzdDAKggh4NzQudGVzdDAKggh4NzUudGVzdDAKggh4NzYudGVz -dDAKggh4NzcudGVzdDAKggh4NzgudGVzdDAKggh4NzkudGVzdDAKggh4ODAudGVz -dDAKggh4ODEudGVzdDAKggh4ODIudGVzdDAKggh4ODMudGVzdDAKggh4ODQudGVz -dDAKggh4ODUudGVzdDAKggh4ODYudGVzdDAKggh4ODcudGVzdDAKggh4ODgudGVz -dDAKggh4ODkudGVzdDAKggh4OTAudGVzdDAKggh4OTEudGVzdDAKggh4OTIudGVz -dDAKggh4OTMudGVzdDAKggh4OTQudGVzdDAKggh4OTUudGVzdDAKggh4OTYudGVz -dDAKggh4OTcudGVzdDAKggh4OTgudGVzdDAKggh4OTkudGVzdDALggl4MTAwLnRl -c3QwC4IJeDEwMS50ZXN0MAuCCXgxMDIudGVzdDALggl4MTAzLnRlc3QwC4IJeDEw -NC50ZXN0MAuCCXgxMDUudGVzdDALggl4MTA2LnRlc3QwC4IJeDEwNy50ZXN0MAuC -CXgxMDgudGVzdDALggl4MTA5LnRlc3QwC4IJeDExMC50ZXN0MAuCCXgxMTEudGVz -dDALggl4MTEyLnRlc3QwC4IJeDExMy50ZXN0MAuCCXgxMTQudGVzdDALggl4MTE1 -LnRlc3QwC4IJeDExNi50ZXN0MAuCCXgxMTcudGVzdDALggl4MTE4LnRlc3QwC4IJ -eDExOS50ZXN0MAuCCXgxMjAudGVzdDALggl4MTIxLnRlc3QwC4IJeDEyMi50ZXN0 -MAuCCXgxMjMudGVzdDALggl4MTI0LnRlc3QwC4IJeDEyNS50ZXN0MAuCCXgxMjYu -dGVzdDALggl4MTI3LnRlc3QwC4IJeDEyOC50ZXN0MAuCCXgxMjkudGVzdDALggl4 -MTMwLnRlc3QwC4IJeDEzMS50ZXN0MAuCCXgxMzIudGVzdDALggl4MTMzLnRlc3Qw -C4IJeDEzNC50ZXN0MAuCCXgxMzUudGVzdDALggl4MTM2LnRlc3QwC4IJeDEzNy50 -ZXN0MAuCCXgxMzgudGVzdDALggl4MTM5LnRlc3QwC4IJeDE0MC50ZXN0MAuCCXgx -NDEudGVzdDALggl4MTQyLnRlc3QwC4IJeDE0My50ZXN0MAuCCXgxNDQudGVzdDAL -ggl4MTQ1LnRlc3QwC4IJeDE0Ni50ZXN0MAuCCXgxNDcudGVzdDALggl4MTQ4LnRl -c3QwC4IJeDE0OS50ZXN0MAuCCXgxNTAudGVzdDALggl4MTUxLnRlc3QwC4IJeDE1 -Mi50ZXN0MAuCCXgxNTMudGVzdDALggl4MTU0LnRlc3QwC4IJeDE1NS50ZXN0MAuC -CXgxNTYudGVzdDALggl4MTU3LnRlc3QwC4IJeDE1OC50ZXN0MAuCCXgxNTkudGVz -dDALggl4MTYwLnRlc3QwC4IJeDE2MS50ZXN0MAuCCXgxNjIudGVzdDALggl4MTYz -LnRlc3QwC4IJeDE2NC50ZXN0MAuCCXgxNjUudGVzdDALggl4MTY2LnRlc3QwC4IJ -eDE2Ny50ZXN0MAuCCXgxNjgudGVzdDALggl4MTY5LnRlc3QwCocICwAAAP////8w -CocICwAAAf////8wCocICwAAAv////8wCocICwAAA/////8wCocICwAABP////8w -CocICwAABf////8wCocICwAABv////8wCocICwAAB/////8wCocICwAACP////8w -CocICwAACf////8wCocICwAACv////8wCocICwAAC/////8wCocICwAADP////8w -CocICwAADf////8wCocICwAADv////8wCocICwAAD/////8wCocICwAAEP////8w -CocICwAAEf////8wCocICwAAEv////8wCocICwAAE/////8wCocICwAAFP////8w -CocICwAAFf////8wCocICwAAFv////8wCocICwAAF/////8wCocICwAAGP////8w -CocICwAAGf////8wCocICwAAGv////8wCocICwAAG/////8wCocICwAAHP////8w -CocICwAAHf////8wCocICwAAHv////8wCocICwAAH/////8wCocICwAAIP////8w -CocICwAAIf////8wCocICwAAIv////8wCocICwAAI/////8wCocICwAAJP////8w -CocICwAAJf////8wCocICwAAJv////8wCocICwAAJ/////8wCocICwAAKP////8w -CocICwAAKf////8wCocICwAAKv////8wCocICwAAK/////8wCocICwAALP////8w -CocICwAALf////8wCocICwAALv////8wCocICwAAL/////8wCocICwAAMP////8w -CocICwAAMf////8wCocICwAAMv////8wCocICwAAM/////8wCocICwAANP////8w -CocICwAANf////8wCocICwAANv////8wCocICwAAN/////8wCocICwAAOP////8w -CocICwAAOf////8wCocICwAAOv////8wCocICwAAO/////8wCocICwAAPP////8w -CocICwAAPf////8wCocICwAAPv////8wCocICwAAP/////8wCocICwAAQP////8w -CocICwAAQf////8wCocICwAAQv////8wCocICwAAQ/////8wCocICwAARP////8w -CocICwAARf////8wCocICwAARv////8wCocICwAAR/////8wCocICwAASP////8w -CocICwAASf////8wCocICwAASv////8wCocICwAAS/////8wCocICwAATP////8w -CocICwAATf////8wCocICwAATv////8wCocICwAAT/////8wCocICwAAUP////8w -CocICwAAUf////8wCocICwAAUv////8wCocICwAAU/////8wCocICwAAVP////8w -CocICwAAVf////8wCocICwAAVv////8wCocICwAAV/////8wCocICwAAWP////8w -CocICwAAWf////8wCocICwAAWv////8wCocICwAAW/////8wCocICwAAXP////8w -CocICwAAXf////8wCocICwAAXv////8wCocICwAAX/////8wCocICwAAYP////8w -CocICwAAYf////8wCocICwAAYv////8wCocICwAAY/////8wCocICwAAZP////8w -CocICwAAZf////8wCocICwAAZv////8wCocICwAAZ/////8wCocICwAAaP////8w -CocICwAAaf////8wCocICwAAav////8wCocICwAAa/////8wCocICwAAbP////8w -CocICwAAbf////8wCocICwAAbv////8wCocICwAAb/////8wCocICwAAcP////8w -CocICwAAcf////8wCocICwAAcv////8wCocICwAAc/////8wCocICwAAdP////8w -CocICwAAdf////8wCocICwAAdv////8wCocICwAAd/////8wCocICwAAeP////8w -CocICwAAef////8wCocICwAAev////8wCocICwAAe/////8wCocICwAAfP////8w -CocICwAAff////8wCocICwAAfv////8wCocICwAAf/////8wCocICwAAgP////8w -CocICwAAgf////8wCocICwAAgv////8wCocICwAAg/////8wCocICwAAhP////8w -CocICwAAhf////8wCocICwAAhv////8wCocICwAAh/////8wCocICwAAiP////8w -CocICwAAif////8wCocICwAAiv////8wCocICwAAi/////8wCocICwAAjP////8w -CocICwAAjf////8wCocICwAAjv////8wCocICwAAj/////8wCocICwAAkP////8w -CocICwAAkf////8wCocICwAAkv////8wCocICwAAk/////8wCocICwAAlP////8w -CocICwAAlf////8wCocICwAAlv////8wCocICwAAl/////8wCocICwAAmP////8w -CocICwAAmf////8wCocICwAAmv////8wCocICwAAm/////8wCocICwAAnP////8w -CocICwAAnf////8wCocICwAAnv////8wCocICwAAn/////8wCocICwAAoP////8w -CocICwAAof////8wCocICwAAov////8wCocICwAAo/////8wCocICwAApP////8w -CocICwAApf////8wCocICwAApv////8wCocICwAAp/////8wCocICwAAqP////8w -CocICwAAqf////8wEaQPMA0xCzAJBgNVBAMMAngwMBGkDzANMQswCQYDVQQDDAJ4 -MTARpA8wDTELMAkGA1UEAwwCeDIwEaQPMA0xCzAJBgNVBAMMAngzMBGkDzANMQsw -CQYDVQQDDAJ4NDARpA8wDTELMAkGA1UEAwwCeDUwEaQPMA0xCzAJBgNVBAMMAng2 -MBGkDzANMQswCQYDVQQDDAJ4NzARpA8wDTELMAkGA1UEAwwCeDgwEaQPMA0xCzAJ -BgNVBAMMAng5MBKkEDAOMQwwCgYDVQQDDAN4MTAwEqQQMA4xDDAKBgNVBAMMA3gx -MTASpBAwDjEMMAoGA1UEAwwDeDEyMBKkEDAOMQwwCgYDVQQDDAN4MTMwEqQQMA4x -DDAKBgNVBAMMA3gxNDASpBAwDjEMMAoGA1UEAwwDeDE1MBKkEDAOMQwwCgYDVQQD -DAN4MTYwEqQQMA4xDDAKBgNVBAMMA3gxNzASpBAwDjEMMAoGA1UEAwwDeDE4MBKk -EDAOMQwwCgYDVQQDDAN4MTkwEqQQMA4xDDAKBgNVBAMMA3gyMDASpBAwDjEMMAoG -A1UEAwwDeDIxMBKkEDAOMQwwCgYDVQQDDAN4MjIwEqQQMA4xDDAKBgNVBAMMA3gy -MzASpBAwDjEMMAoGA1UEAwwDeDI0MBKkEDAOMQwwCgYDVQQDDAN4MjUwEqQQMA4x -DDAKBgNVBAMMA3gyNjASpBAwDjEMMAoGA1UEAwwDeDI3MBKkEDAOMQwwCgYDVQQD -DAN4MjgwEqQQMA4xDDAKBgNVBAMMA3gyOTASpBAwDjEMMAoGA1UEAwwDeDMwMBKk -EDAOMQwwCgYDVQQDDAN4MzEwEqQQMA4xDDAKBgNVBAMMA3gzMjASpBAwDjEMMAoG -A1UEAwwDeDMzMBKkEDAOMQwwCgYDVQQDDAN4MzQwEqQQMA4xDDAKBgNVBAMMA3gz -NTASpBAwDjEMMAoGA1UEAwwDeDM2MBKkEDAOMQwwCgYDVQQDDAN4MzcwEqQQMA4x -DDAKBgNVBAMMA3gzODASpBAwDjEMMAoGA1UEAwwDeDM5MBKkEDAOMQwwCgYDVQQD -DAN4NDAwEqQQMA4xDDAKBgNVBAMMA3g0MTASpBAwDjEMMAoGA1UEAwwDeDQyMBKk -EDAOMQwwCgYDVQQDDAN4NDMwEqQQMA4xDDAKBgNVBAMMA3g0NDASpBAwDjEMMAoG -A1UEAwwDeDQ1MBKkEDAOMQwwCgYDVQQDDAN4NDYwEqQQMA4xDDAKBgNVBAMMA3g0 -NzASpBAwDjEMMAoGA1UEAwwDeDQ4MBKkEDAOMQwwCgYDVQQDDAN4NDkwEqQQMA4x -DDAKBgNVBAMMA3g1MDASpBAwDjEMMAoGA1UEAwwDeDUxMBKkEDAOMQwwCgYDVQQD -DAN4NTIwEqQQMA4xDDAKBgNVBAMMA3g1MzASpBAwDjEMMAoGA1UEAwwDeDU0MBKk -EDAOMQwwCgYDVQQDDAN4NTUwEqQQMA4xDDAKBgNVBAMMA3g1NjASpBAwDjEMMAoG -A1UEAwwDeDU3MBKkEDAOMQwwCgYDVQQDDAN4NTgwEqQQMA4xDDAKBgNVBAMMA3g1 -OTASpBAwDjEMMAoGA1UEAwwDeDYwMBKkEDAOMQwwCgYDVQQDDAN4NjEwEqQQMA4x -DDAKBgNVBAMMA3g2MjASpBAwDjEMMAoGA1UEAwwDeDYzMBKkEDAOMQwwCgYDVQQD -DAN4NjQwEqQQMA4xDDAKBgNVBAMMA3g2NTASpBAwDjEMMAoGA1UEAwwDeDY2MBKk -EDAOMQwwCgYDVQQDDAN4NjcwEqQQMA4xDDAKBgNVBAMMA3g2ODASpBAwDjEMMAoG -A1UEAwwDeDY5MBKkEDAOMQwwCgYDVQQDDAN4NzAwEqQQMA4xDDAKBgNVBAMMA3g3 -MTASpBAwDjEMMAoGA1UEAwwDeDcyMBKkEDAOMQwwCgYDVQQDDAN4NzMwEqQQMA4x -DDAKBgNVBAMMA3g3NDASpBAwDjEMMAoGA1UEAwwDeDc1MBKkEDAOMQwwCgYDVQQD -DAN4NzYwEqQQMA4xDDAKBgNVBAMMA3g3NzASpBAwDjEMMAoGA1UEAwwDeDc4MBKk -EDAOMQwwCgYDVQQDDAN4NzkwEqQQMA4xDDAKBgNVBAMMA3g4MDASpBAwDjEMMAoG -A1UEAwwDeDgxMBKkEDAOMQwwCgYDVQQDDAN4ODIwEqQQMA4xDDAKBgNVBAMMA3g4 -MzASpBAwDjEMMAoGA1UEAwwDeDg0MBKkEDAOMQwwCgYDVQQDDAN4ODUwEqQQMA4x -DDAKBgNVBAMMA3g4NjASpBAwDjEMMAoGA1UEAwwDeDg3MBKkEDAOMQwwCgYDVQQD -DAN4ODgwEqQQMA4xDDAKBgNVBAMMA3g4OTASpBAwDjEMMAoGA1UEAwwDeDkwMBKk -EDAOMQwwCgYDVQQDDAN4OTEwEqQQMA4xDDAKBgNVBAMMA3g5MjASpBAwDjEMMAoG -A1UEAwwDeDkzMBKkEDAOMQwwCgYDVQQDDAN4OTQwEqQQMA4xDDAKBgNVBAMMA3g5 -NTASpBAwDjEMMAoGA1UEAwwDeDk2MBKkEDAOMQwwCgYDVQQDDAN4OTcwEqQQMA4x -DDAKBgNVBAMMA3g5ODASpBAwDjEMMAoGA1UEAwwDeDk5MBOkETAPMQ0wCwYDVQQD -DAR4MTAwMBOkETAPMQ0wCwYDVQQDDAR4MTAxMBOkETAPMQ0wCwYDVQQDDAR4MTAy -MBOkETAPMQ0wCwYDVQQDDAR4MTAzMBOkETAPMQ0wCwYDVQQDDAR4MTA0MBOkETAP -MQ0wCwYDVQQDDAR4MTA1MBOkETAPMQ0wCwYDVQQDDAR4MTA2MBOkETAPMQ0wCwYD -VQQDDAR4MTA3MBOkETAPMQ0wCwYDVQQDDAR4MTA4MBOkETAPMQ0wCwYDVQQDDAR4 -MTA5MBOkETAPMQ0wCwYDVQQDDAR4MTEwMBOkETAPMQ0wCwYDVQQDDAR4MTExMBOk -ETAPMQ0wCwYDVQQDDAR4MTEyMBOkETAPMQ0wCwYDVQQDDAR4MTEzMBOkETAPMQ0w -CwYDVQQDDAR4MTE0MBOkETAPMQ0wCwYDVQQDDAR4MTE1MBOkETAPMQ0wCwYDVQQD -DAR4MTE2MBOkETAPMQ0wCwYDVQQDDAR4MTE3MBOkETAPMQ0wCwYDVQQDDAR4MTE4 -MBOkETAPMQ0wCwYDVQQDDAR4MTE5MBOkETAPMQ0wCwYDVQQDDAR4MTIwMBOkETAP -MQ0wCwYDVQQDDAR4MTIxMBOkETAPMQ0wCwYDVQQDDAR4MTIyMBOkETAPMQ0wCwYD -VQQDDAR4MTIzMBOkETAPMQ0wCwYDVQQDDAR4MTI0MBOkETAPMQ0wCwYDVQQDDAR4 -MTI1MBOkETAPMQ0wCwYDVQQDDAR4MTI2MBOkETAPMQ0wCwYDVQQDDAR4MTI3MBOk -ETAPMQ0wCwYDVQQDDAR4MTI4MBOkETAPMQ0wCwYDVQQDDAR4MTI5MBOkETAPMQ0w -CwYDVQQDDAR4MTMwMBOkETAPMQ0wCwYDVQQDDAR4MTMxMBOkETAPMQ0wCwYDVQQD -DAR4MTMyMBOkETAPMQ0wCwYDVQQDDAR4MTMzMBOkETAPMQ0wCwYDVQQDDAR4MTM0 -MBOkETAPMQ0wCwYDVQQDDAR4MTM1MBOkETAPMQ0wCwYDVQQDDAR4MTM2MBOkETAP -MQ0wCwYDVQQDDAR4MTM3MBOkETAPMQ0wCwYDVQQDDAR4MTM4MBOkETAPMQ0wCwYD -VQQDDAR4MTM5MBOkETAPMQ0wCwYDVQQDDAR4MTQwMBOkETAPMQ0wCwYDVQQDDAR4 -MTQxMBOkETAPMQ0wCwYDVQQDDAR4MTQyMBOkETAPMQ0wCwYDVQQDDAR4MTQzMBOk -ETAPMQ0wCwYDVQQDDAR4MTQ0MBOkETAPMQ0wCwYDVQQDDAR4MTQ1MBOkETAPMQ0w -CwYDVQQDDAR4MTQ2MBOkETAPMQ0wCwYDVQQDDAR4MTQ3MBOkETAPMQ0wCwYDVQQD -DAR4MTQ4MBOkETAPMQ0wCwYDVQQDDAR4MTQ5MBOkETAPMQ0wCwYDVQQDDAR4MTUw -MBOkETAPMQ0wCwYDVQQDDAR4MTUxMBOkETAPMQ0wCwYDVQQDDAR4MTUyMBOkETAP -MQ0wCwYDVQQDDAR4MTUzMBOkETAPMQ0wCwYDVQQDDAR4MTU0MBOkETAPMQ0wCwYD -VQQDDAR4MTU1MBOkETAPMQ0wCwYDVQQDDAR4MTU2MBOkETAPMQ0wCwYDVQQDDAR4 -MTU3MBOkETAPMQ0wCwYDVQQDDAR4MTU4MBOkETAPMQ0wCwYDVQQDDAR4MTU5MBOk -ETAPMQ0wCwYDVQQDDAR4MTYwMBOkETAPMQ0wCwYDVQQDDAR4MTYxMBOkETAPMQ0w -CwYDVQQDDAR4MTYyMBOkETAPMQ0wCwYDVQQDDAR4MTYzMBOkETAPMQ0wCwYDVQQD -DAR4MTY0MBOkETAPMQ0wCwYDVQQDDAR4MTY1MBOkETAPMQ0wCwYDVQQDDAR4MTY2 -MBOkETAPMQ0wCwYDVQQDDAR4MTY3MBOkETAPMQ0wCwYDVQQDDAR4MTY4MBOkETAP -MQ0wCwYDVQQDDAR4MTY5MA+GDWh0dHA6Ly94ZXN0LzAwD4YNaHR0cDovL3hlc3Qv -MTAPhg1odHRwOi8veGVzdC8yMA+GDWh0dHA6Ly94ZXN0LzMwD4YNaHR0cDovL3hl -c3QvNDAPhg1odHRwOi8veGVzdC81MA+GDWh0dHA6Ly94ZXN0LzYwD4YNaHR0cDov -L3hlc3QvNzAPhg1odHRwOi8veGVzdC84MA+GDWh0dHA6Ly94ZXN0LzkwEIYOaHR0 -cDovL3hlc3QvMTAwEIYOaHR0cDovL3hlc3QvMTEwEIYOaHR0cDovL3hlc3QvMTIw -EIYOaHR0cDovL3hlc3QvMTMwEIYOaHR0cDovL3hlc3QvMTQwEIYOaHR0cDovL3hl -c3QvMTUwEIYOaHR0cDovL3hlc3QvMTYwEIYOaHR0cDovL3hlc3QvMTcwEIYOaHR0 -cDovL3hlc3QvMTgwEIYOaHR0cDovL3hlc3QvMTkwEIYOaHR0cDovL3hlc3QvMjAw -EIYOaHR0cDovL3hlc3QvMjEwEIYOaHR0cDovL3hlc3QvMjIwEIYOaHR0cDovL3hl -c3QvMjMwEIYOaHR0cDovL3hlc3QvMjQwEIYOaHR0cDovL3hlc3QvMjUwEIYOaHR0 -cDovL3hlc3QvMjYwEIYOaHR0cDovL3hlc3QvMjcwEIYOaHR0cDovL3hlc3QvMjgw -EIYOaHR0cDovL3hlc3QvMjkwEIYOaHR0cDovL3hlc3QvMzAwEIYOaHR0cDovL3hl -c3QvMzEwEIYOaHR0cDovL3hlc3QvMzIwEIYOaHR0cDovL3hlc3QvMzMwEIYOaHR0 -cDovL3hlc3QvMzQwEIYOaHR0cDovL3hlc3QvMzUwEIYOaHR0cDovL3hlc3QvMzYw -EIYOaHR0cDovL3hlc3QvMzcwEIYOaHR0cDovL3hlc3QvMzgwEIYOaHR0cDovL3hl -c3QvMzkwEIYOaHR0cDovL3hlc3QvNDAwEIYOaHR0cDovL3hlc3QvNDEwEIYOaHR0 -cDovL3hlc3QvNDIwEIYOaHR0cDovL3hlc3QvNDMwEIYOaHR0cDovL3hlc3QvNDQw -EIYOaHR0cDovL3hlc3QvNDUwEIYOaHR0cDovL3hlc3QvNDYwEIYOaHR0cDovL3hl -c3QvNDcwEIYOaHR0cDovL3hlc3QvNDgwEIYOaHR0cDovL3hlc3QvNDkwEIYOaHR0 -cDovL3hlc3QvNTAwEIYOaHR0cDovL3hlc3QvNTEwEIYOaHR0cDovL3hlc3QvNTIw -EIYOaHR0cDovL3hlc3QvNTMwEIYOaHR0cDovL3hlc3QvNTQwEIYOaHR0cDovL3hl -c3QvNTUwEIYOaHR0cDovL3hlc3QvNTYwEIYOaHR0cDovL3hlc3QvNTcwEIYOaHR0 -cDovL3hlc3QvNTgwEIYOaHR0cDovL3hlc3QvNTkwEIYOaHR0cDovL3hlc3QvNjAw -EIYOaHR0cDovL3hlc3QvNjEwEIYOaHR0cDovL3hlc3QvNjIwEIYOaHR0cDovL3hl -c3QvNjMwEIYOaHR0cDovL3hlc3QvNjQwEIYOaHR0cDovL3hlc3QvNjUwEIYOaHR0 -cDovL3hlc3QvNjYwEIYOaHR0cDovL3hlc3QvNjcwEIYOaHR0cDovL3hlc3QvNjgw -EIYOaHR0cDovL3hlc3QvNjkwEIYOaHR0cDovL3hlc3QvNzAwEIYOaHR0cDovL3hl -c3QvNzEwEIYOaHR0cDovL3hlc3QvNzIwEIYOaHR0cDovL3hlc3QvNzMwEIYOaHR0 -cDovL3hlc3QvNzQwEIYOaHR0cDovL3hlc3QvNzUwEIYOaHR0cDovL3hlc3QvNzYw -EIYOaHR0cDovL3hlc3QvNzcwEIYOaHR0cDovL3hlc3QvNzgwEIYOaHR0cDovL3hl -c3QvNzkwEIYOaHR0cDovL3hlc3QvODAwEIYOaHR0cDovL3hlc3QvODEwEIYOaHR0 -cDovL3hlc3QvODIwEIYOaHR0cDovL3hlc3QvODMwEIYOaHR0cDovL3hlc3QvODQw -EIYOaHR0cDovL3hlc3QvODUwEIYOaHR0cDovL3hlc3QvODYwEIYOaHR0cDovL3hl -c3QvODcwEIYOaHR0cDovL3hlc3QvODgwEIYOaHR0cDovL3hlc3QvODkwEIYOaHR0 -cDovL3hlc3QvOTAwEIYOaHR0cDovL3hlc3QvOTEwEIYOaHR0cDovL3hlc3QvOTIw -EIYOaHR0cDovL3hlc3QvOTMwEIYOaHR0cDovL3hlc3QvOTQwEIYOaHR0cDovL3hl -c3QvOTUwEIYOaHR0cDovL3hlc3QvOTYwEIYOaHR0cDovL3hlc3QvOTcwEIYOaHR0 -cDovL3hlc3QvOTgwEIYOaHR0cDovL3hlc3QvOTkwEYYPaHR0cDovL3hlc3QvMTAw -MBGGD2h0dHA6Ly94ZXN0LzEwMTARhg9odHRwOi8veGVzdC8xMDIwEYYPaHR0cDov -L3hlc3QvMTAzMBGGD2h0dHA6Ly94ZXN0LzEwNDARhg9odHRwOi8veGVzdC8xMDUw -EYYPaHR0cDovL3hlc3QvMTA2MBGGD2h0dHA6Ly94ZXN0LzEwNzARhg9odHRwOi8v -eGVzdC8xMDgwEYYPaHR0cDovL3hlc3QvMTA5MBGGD2h0dHA6Ly94ZXN0LzExMDAR -hg9odHRwOi8veGVzdC8xMTEwEYYPaHR0cDovL3hlc3QvMTEyMBGGD2h0dHA6Ly94 -ZXN0LzExMzARhg9odHRwOi8veGVzdC8xMTQwEYYPaHR0cDovL3hlc3QvMTE1MBGG -D2h0dHA6Ly94ZXN0LzExNjARhg9odHRwOi8veGVzdC8xMTcwEYYPaHR0cDovL3hl -c3QvMTE4MBGGD2h0dHA6Ly94ZXN0LzExOTARhg9odHRwOi8veGVzdC8xMjAwEYYP -aHR0cDovL3hlc3QvMTIxMBGGD2h0dHA6Ly94ZXN0LzEyMjARhg9odHRwOi8veGVz -dC8xMjMwEYYPaHR0cDovL3hlc3QvMTI0MBGGD2h0dHA6Ly94ZXN0LzEyNTARhg9o -dHRwOi8veGVzdC8xMjYwEYYPaHR0cDovL3hlc3QvMTI3MBGGD2h0dHA6Ly94ZXN0 -LzEyODARhg9odHRwOi8veGVzdC8xMjkwEYYPaHR0cDovL3hlc3QvMTMwMBGGD2h0 -dHA6Ly94ZXN0LzEzMTARhg9odHRwOi8veGVzdC8xMzIwEYYPaHR0cDovL3hlc3Qv -MTMzMBGGD2h0dHA6Ly94ZXN0LzEzNDARhg9odHRwOi8veGVzdC8xMzUwEYYPaHR0 -cDovL3hlc3QvMTM2MBGGD2h0dHA6Ly94ZXN0LzEzNzARhg9odHRwOi8veGVzdC8x -MzgwEYYPaHR0cDovL3hlc3QvMTM5MBGGD2h0dHA6Ly94ZXN0LzE0MDARhg9odHRw -Oi8veGVzdC8xNDEwEYYPaHR0cDovL3hlc3QvMTQyMBGGD2h0dHA6Ly94ZXN0LzE0 -MzARhg9odHRwOi8veGVzdC8xNDQwEYYPaHR0cDovL3hlc3QvMTQ1MBGGD2h0dHA6 -Ly94ZXN0LzE0NjARhg9odHRwOi8veGVzdC8xNDcwEYYPaHR0cDovL3hlc3QvMTQ4 -MBGGD2h0dHA6Ly94ZXN0LzE0OTARhg9odHRwOi8veGVzdC8xNTAwEYYPaHR0cDov -L3hlc3QvMTUxMBGGD2h0dHA6Ly94ZXN0LzE1MjARhg9odHRwOi8veGVzdC8xNTMw -EYYPaHR0cDovL3hlc3QvMTU0MBGGD2h0dHA6Ly94ZXN0LzE1NTARhg9odHRwOi8v -eGVzdC8xNTYwEYYPaHR0cDovL3hlc3QvMTU3MBGGD2h0dHA6Ly94ZXN0LzE1ODAR -hg9odHRwOi8veGVzdC8xNTkwEYYPaHR0cDovL3hlc3QvMTYwMBGGD2h0dHA6Ly94 -ZXN0LzE2MTARhg9odHRwOi8veGVzdC8xNjIwEYYPaHR0cDovL3hlc3QvMTYzMBGG -D2h0dHA6Ly94ZXN0LzE2NDARhg9odHRwOi8veGVzdC8xNjUwEYYPaHR0cDovL3hl -c3QvMTY2MBGGD2h0dHA6Ly94ZXN0LzE2NzARhg9odHRwOi8veGVzdC8xNjgwEYYP -aHR0cDovL3hlc3QvMTY5MBGGD2h0dHA6Ly94ZXN0LzE3MDARhg9odHRwOi8veGVz -dC8xNzEwEYYPaHR0cDovL3hlc3QvMTcyMBGGD2h0dHA6Ly94ZXN0LzE3MzARhg9o -dHRwOi8veGVzdC8xNzQwEYYPaHR0cDovL3hlc3QvMTc1MBGGD2h0dHA6Ly94ZXN0 -LzE3NjARhg9odHRwOi8veGVzdC8xNzcwEYYPaHR0cDovL3hlc3QvMTc4MBGGD2h0 -dHA6Ly94ZXN0LzE3OTARhg9odHRwOi8veGVzdC8xODAwEYYPaHR0cDovL3hlc3Qv -MTgxMBGGD2h0dHA6Ly94ZXN0LzE4MjARhg9odHRwOi8veGVzdC8xODMwEYYPaHR0 -cDovL3hlc3QvMTg0MBGGD2h0dHA6Ly94ZXN0LzE4NTARhg9odHRwOi8veGVzdC8x -ODYwEYYPaHR0cDovL3hlc3QvMTg3MBGGD2h0dHA6Ly94ZXN0LzE4ODARhg9odHRw -Oi8veGVzdC8xODkwEYYPaHR0cDovL3hlc3QvMTkwMBGGD2h0dHA6Ly94ZXN0LzE5 -MTARhg9odHRwOi8veGVzdC8xOTIwEYYPaHR0cDovL3hlc3QvMTkzMBGGD2h0dHA6 -Ly94ZXN0LzE5NDARhg9odHRwOi8veGVzdC8xOTUwEYYPaHR0cDovL3hlc3QvMTk2 -MBGGD2h0dHA6Ly94ZXN0LzE5NzARhg9odHRwOi8veGVzdC8xOTgwEYYPaHR0cDov -L3hlc3QvMTk5MBGGD2h0dHA6Ly94ZXN0LzIwMDARhg9odHRwOi8veGVzdC8yMDEw -EYYPaHR0cDovL3hlc3QvMjAyMBGGD2h0dHA6Ly94ZXN0LzIwMzARhg9odHRwOi8v -eGVzdC8yMDQwEYYPaHR0cDovL3hlc3QvMjA1MBGGD2h0dHA6Ly94ZXN0LzIwNjAR -hg9odHRwOi8veGVzdC8yMDcwEYYPaHR0cDovL3hlc3QvMjA4MBGGD2h0dHA6Ly94 -ZXN0LzIwOTARhg9odHRwOi8veGVzdC8yMTAwEYYPaHR0cDovL3hlc3QvMjExMBGG -D2h0dHA6Ly94ZXN0LzIxMjARhg9odHRwOi8veGVzdC8yMTMwEYYPaHR0cDovL3hl -c3QvMjE0MBGGD2h0dHA6Ly94ZXN0LzIxNTARhg9odHRwOi8veGVzdC8yMTYwEYYP -aHR0cDovL3hlc3QvMjE3MBGGD2h0dHA6Ly94ZXN0LzIxODARhg9odHRwOi8veGVz -dC8yMTkwEYYPaHR0cDovL3hlc3QvMjIwMBGGD2h0dHA6Ly94ZXN0LzIyMTARhg9o -dHRwOi8veGVzdC8yMjIwEYYPaHR0cDovL3hlc3QvMjIzMBGGD2h0dHA6Ly94ZXN0 -LzIyNDARhg9odHRwOi8veGVzdC8yMjUwEYYPaHR0cDovL3hlc3QvMjI2MBGGD2h0 -dHA6Ly94ZXN0LzIyNzARhg9odHRwOi8veGVzdC8yMjgwEYYPaHR0cDovL3hlc3Qv -MjI5MBGGD2h0dHA6Ly94ZXN0LzIzMDARhg9odHRwOi8veGVzdC8yMzEwEYYPaHR0 -cDovL3hlc3QvMjMyMBGGD2h0dHA6Ly94ZXN0LzIzMzARhg9odHRwOi8veGVzdC8y -MzQwEYYPaHR0cDovL3hlc3QvMjM1MBGGD2h0dHA6Ly94ZXN0LzIzNjARhg9odHRw -Oi8veGVzdC8yMzcwEYYPaHR0cDovL3hlc3QvMjM4MBGGD2h0dHA6Ly94ZXN0LzIz -OTARhg9odHRwOi8veGVzdC8yNDAwEYYPaHR0cDovL3hlc3QvMjQxMBGGD2h0dHA6 -Ly94ZXN0LzI0MjARhg9odHRwOi8veGVzdC8yNDMwEYYPaHR0cDovL3hlc3QvMjQ0 -MBGGD2h0dHA6Ly94ZXN0LzI0NTARhg9odHRwOi8veGVzdC8yNDYwEYYPaHR0cDov -L3hlc3QvMjQ3MBGGD2h0dHA6Ly94ZXN0LzI0ODARhg9odHRwOi8veGVzdC8yNDkw -EYYPaHR0cDovL3hlc3QvMjUwMBGGD2h0dHA6Ly94ZXN0LzI1MTARhg9odHRwOi8v -eGVzdC8yNTIwEYYPaHR0cDovL3hlc3QvMjUzMBGGD2h0dHA6Ly94ZXN0LzI1NDAR -hg9odHRwOi8veGVzdC8yNTUwEYYPaHR0cDovL3hlc3QvMjU2MBGGD2h0dHA6Ly94 -ZXN0LzI1NzARhg9odHRwOi8veGVzdC8yNTgwEYYPaHR0cDovL3hlc3QvMjU5MBGG -D2h0dHA6Ly94ZXN0LzI2MDARhg9odHRwOi8veGVzdC8yNjEwEYYPaHR0cDovL3hl -c3QvMjYyMBGGD2h0dHA6Ly94ZXN0LzI2MzARhg9odHRwOi8veGVzdC8yNjQwEYYP -aHR0cDovL3hlc3QvMjY1MBGGD2h0dHA6Ly94ZXN0LzI2NjARhg9odHRwOi8veGVz -dC8yNjcwEYYPaHR0cDovL3hlc3QvMjY4MBGGD2h0dHA6Ly94ZXN0LzI2OTARhg9o -dHRwOi8veGVzdC8yNzAwEYYPaHR0cDovL3hlc3QvMjcxMBGGD2h0dHA6Ly94ZXN0 -LzI3MjARhg9odHRwOi8veGVzdC8yNzMwEYYPaHR0cDovL3hlc3QvMjc0MBGGD2h0 -dHA6Ly94ZXN0LzI3NTARhg9odHRwOi8veGVzdC8yNzYwEYYPaHR0cDovL3hlc3Qv -Mjc3MBGGD2h0dHA6Ly94ZXN0LzI3ODARhg9odHRwOi8veGVzdC8yNzkwEYYPaHR0 -cDovL3hlc3QvMjgwMBGGD2h0dHA6Ly94ZXN0LzI4MTARhg9odHRwOi8veGVzdC8y -ODIwEYYPaHR0cDovL3hlc3QvMjgzMBGGD2h0dHA6Ly94ZXN0LzI4NDARhg9odHRw -Oi8veGVzdC8yODUwEYYPaHR0cDovL3hlc3QvMjg2MBGGD2h0dHA6Ly94ZXN0LzI4 -NzARhg9odHRwOi8veGVzdC8yODgwEYYPaHR0cDovL3hlc3QvMjg5MBGGD2h0dHA6 -Ly94ZXN0LzI5MDARhg9odHRwOi8veGVzdC8yOTEwEYYPaHR0cDovL3hlc3QvMjky -MBGGD2h0dHA6Ly94ZXN0LzI5MzARhg9odHRwOi8veGVzdC8yOTQwEYYPaHR0cDov -L3hlc3QvMjk1MBGGD2h0dHA6Ly94ZXN0LzI5NjARhg9odHRwOi8veGVzdC8yOTcw -EYYPaHR0cDovL3hlc3QvMjk4MBGGD2h0dHA6Ly94ZXN0LzI5OTARhg9odHRwOi8v -eGVzdC8zMDAwEYYPaHR0cDovL3hlc3QvMzAxMBGGD2h0dHA6Ly94ZXN0LzMwMjAR -hg9odHRwOi8veGVzdC8zMDMwEYYPaHR0cDovL3hlc3QvMzA0MBGGD2h0dHA6Ly94 -ZXN0LzMwNTARhg9odHRwOi8veGVzdC8zMDYwEYYPaHR0cDovL3hlc3QvMzA3MBGG -D2h0dHA6Ly94ZXN0LzMwODARhg9odHRwOi8veGVzdC8zMDkwEYYPaHR0cDovL3hl -c3QvMzEwMBGGD2h0dHA6Ly94ZXN0LzMxMTARhg9odHRwOi8veGVzdC8zMTIwEYYP -aHR0cDovL3hlc3QvMzEzMBGGD2h0dHA6Ly94ZXN0LzMxNDARhg9odHRwOi8veGVz -dC8zMTUwEYYPaHR0cDovL3hlc3QvMzE2MBGGD2h0dHA6Ly94ZXN0LzMxNzARhg9o -dHRwOi8veGVzdC8zMTgwEYYPaHR0cDovL3hlc3QvMzE5MBGGD2h0dHA6Ly94ZXN0 -LzMyMDARhg9odHRwOi8veGVzdC8zMjEwEYYPaHR0cDovL3hlc3QvMzIyMBGGD2h0 -dHA6Ly94ZXN0LzMyMzARhg9odHRwOi8veGVzdC8zMjQwEYYPaHR0cDovL3hlc3Qv -MzI1MBGGD2h0dHA6Ly94ZXN0LzMyNjARhg9odHRwOi8veGVzdC8zMjcwEYYPaHR0 -cDovL3hlc3QvMzI4MBGGD2h0dHA6Ly94ZXN0LzMyOTARhg9odHRwOi8veGVzdC8z -MzAwEYYPaHR0cDovL3hlc3QvMzMxMBGGD2h0dHA6Ly94ZXN0LzMzMjARhg9odHRw -Oi8veGVzdC8zMzMwEYYPaHR0cDovL3hlc3QvMzM0MBGGD2h0dHA6Ly94ZXN0LzMz -NTARhg9odHRwOi8veGVzdC8zMzYwEYYPaHR0cDovL3hlc3QvMzM3MBGGD2h0dHA6 -Ly94ZXN0LzMzODARhg9odHRwOi8veGVzdC8zMzkwEYYPaHR0cDovL3hlc3QvMzQw -MBGGD2h0dHA6Ly94ZXN0LzM0MTARhg9odHRwOi8veGVzdC8zNDIwEYYPaHR0cDov -L3hlc3QvMzQzMBGGD2h0dHA6Ly94ZXN0LzM0NDARhg9odHRwOi8veGVzdC8zNDUw -EYYPaHR0cDovL3hlc3QvMzQ2MBGGD2h0dHA6Ly94ZXN0LzM0NzARhg9odHRwOi8v -eGVzdC8zNDgwEYYPaHR0cDovL3hlc3QvMzQ5MBGGD2h0dHA6Ly94ZXN0LzM1MDAR -hg9odHRwOi8veGVzdC8zNTEwEYYPaHR0cDovL3hlc3QvMzUyMBGGD2h0dHA6Ly94 -ZXN0LzM1MzARhg9odHRwOi8veGVzdC8zNTQwEYYPaHR0cDovL3hlc3QvMzU1MBGG -D2h0dHA6Ly94ZXN0LzM1NjARhg9odHRwOi8veGVzdC8zNTcwEYYPaHR0cDovL3hl -c3QvMzU4MBGGD2h0dHA6Ly94ZXN0LzM1OTARhg9odHRwOi8veGVzdC8zNjAwEYYP -aHR0cDovL3hlc3QvMzYxMBGGD2h0dHA6Ly94ZXN0LzM2MjARhg9odHRwOi8veGVz -dC8zNjMwEYYPaHR0cDovL3hlc3QvMzY0MBGGD2h0dHA6Ly94ZXN0LzM2NTARhg9o -dHRwOi8veGVzdC8zNjYwEYYPaHR0cDovL3hlc3QvMzY3MBGGD2h0dHA6Ly94ZXN0 -LzM2ODARhg9odHRwOi8veGVzdC8zNjkwEYYPaHR0cDovL3hlc3QvMzcwMBGGD2h0 -dHA6Ly94ZXN0LzM3MTARhg9odHRwOi8veGVzdC8zNzIwEYYPaHR0cDovL3hlc3Qv -MzczMBGGD2h0dHA6Ly94ZXN0LzM3NDARhg9odHRwOi8veGVzdC8zNzUwEYYPaHR0 -cDovL3hlc3QvMzc2MBGGD2h0dHA6Ly94ZXN0LzM3NzARhg9odHRwOi8veGVzdC8z -NzgwEYYPaHR0cDovL3hlc3QvMzc5MBGGD2h0dHA6Ly94ZXN0LzM4MDARhg9odHRw -Oi8veGVzdC8zODEwEYYPaHR0cDovL3hlc3QvMzgyMBGGD2h0dHA6Ly94ZXN0LzM4 -MzARhg9odHRwOi8veGVzdC8zODQwEYYPaHR0cDovL3hlc3QvMzg1MBGGD2h0dHA6 -Ly94ZXN0LzM4NjARhg9odHRwOi8veGVzdC8zODcwEYYPaHR0cDovL3hlc3QvMzg4 -MBGGD2h0dHA6Ly94ZXN0LzM4OTARhg9odHRwOi8veGVzdC8zOTAwEYYPaHR0cDov -L3hlc3QvMzkxMBGGD2h0dHA6Ly94ZXN0LzM5MjARhg9odHRwOi8veGVzdC8zOTMw -EYYPaHR0cDovL3hlc3QvMzk0MBGGD2h0dHA6Ly94ZXN0LzM5NTARhg9odHRwOi8v -eGVzdC8zOTYwEYYPaHR0cDovL3hlc3QvMzk3MBGGD2h0dHA6Ly94ZXN0LzM5ODAR -hg9odHRwOi8veGVzdC8zOTkwEYYPaHR0cDovL3hlc3QvNDAwMBGGD2h0dHA6Ly94 -ZXN0LzQwMTARhg9odHRwOi8veGVzdC80MDIwEYYPaHR0cDovL3hlc3QvNDAzMBGG -D2h0dHA6Ly94ZXN0LzQwNDARhg9odHRwOi8veGVzdC80MDUwEYYPaHR0cDovL3hl -c3QvNDA2MBGGD2h0dHA6Ly94ZXN0LzQwNzARhg9odHRwOi8veGVzdC80MDgwEYYP -aHR0cDovL3hlc3QvNDA5MBGGD2h0dHA6Ly94ZXN0LzQxMDARhg9odHRwOi8veGVz -dC80MTEwEYYPaHR0cDovL3hlc3QvNDEyMBGGD2h0dHA6Ly94ZXN0LzQxMzARhg9o -dHRwOi8veGVzdC80MTQwEYYPaHR0cDovL3hlc3QvNDE1MBGGD2h0dHA6Ly94ZXN0 -LzQxNjARhg9odHRwOi8veGVzdC80MTcwEYYPaHR0cDovL3hlc3QvNDE4MBGGD2h0 -dHA6Ly94ZXN0LzQxOTARhg9odHRwOi8veGVzdC80MjAwEYYPaHR0cDovL3hlc3Qv -NDIxMBGGD2h0dHA6Ly94ZXN0LzQyMjARhg9odHRwOi8veGVzdC80MjMwEYYPaHR0 -cDovL3hlc3QvNDI0MBGGD2h0dHA6Ly94ZXN0LzQyNTARhg9odHRwOi8veGVzdC80 -MjYwEYYPaHR0cDovL3hlc3QvNDI3MBGGD2h0dHA6Ly94ZXN0LzQyODARhg9odHRw -Oi8veGVzdC80MjkwEYYPaHR0cDovL3hlc3QvNDMwMBGGD2h0dHA6Ly94ZXN0LzQz -MTARhg9odHRwOi8veGVzdC80MzIwEYYPaHR0cDovL3hlc3QvNDMzMBGGD2h0dHA6 -Ly94ZXN0LzQzNDARhg9odHRwOi8veGVzdC80MzUwEYYPaHR0cDovL3hlc3QvNDM2 -MBGGD2h0dHA6Ly94ZXN0LzQzNzARhg9odHRwOi8veGVzdC80MzgwEYYPaHR0cDov -L3hlc3QvNDM5MBGGD2h0dHA6Ly94ZXN0LzQ0MDARhg9odHRwOi8veGVzdC80NDEw -EYYPaHR0cDovL3hlc3QvNDQyMBGGD2h0dHA6Ly94ZXN0LzQ0MzARhg9odHRwOi8v -eGVzdC80NDQwEYYPaHR0cDovL3hlc3QvNDQ1MBGGD2h0dHA6Ly94ZXN0LzQ0NjAR -hg9odHRwOi8veGVzdC80NDcwEYYPaHR0cDovL3hlc3QvNDQ4MBGGD2h0dHA6Ly94 -ZXN0LzQ0OTARhg9odHRwOi8veGVzdC80NTAwEYYPaHR0cDovL3hlc3QvNDUxMBGG -D2h0dHA6Ly94ZXN0LzQ1MjARhg9odHRwOi8veGVzdC80NTMwEYYPaHR0cDovL3hl -c3QvNDU0MBGGD2h0dHA6Ly94ZXN0LzQ1NTARhg9odHRwOi8veGVzdC80NTYwEYYP -aHR0cDovL3hlc3QvNDU3MBGGD2h0dHA6Ly94ZXN0LzQ1ODARhg9odHRwOi8veGVz -dC80NTkwEYYPaHR0cDovL3hlc3QvNDYwMBGGD2h0dHA6Ly94ZXN0LzQ2MTARhg9o -dHRwOi8veGVzdC80NjIwEYYPaHR0cDovL3hlc3QvNDYzMBGGD2h0dHA6Ly94ZXN0 -LzQ2NDARhg9odHRwOi8veGVzdC80NjUwEYYPaHR0cDovL3hlc3QvNDY2MBGGD2h0 -dHA6Ly94ZXN0LzQ2NzARhg9odHRwOi8veGVzdC80NjgwEYYPaHR0cDovL3hlc3Qv -NDY5MBGGD2h0dHA6Ly94ZXN0LzQ3MDARhg9odHRwOi8veGVzdC80NzEwEYYPaHR0 -cDovL3hlc3QvNDcyMBGGD2h0dHA6Ly94ZXN0LzQ3MzARhg9odHRwOi8veGVzdC80 -NzQwEYYPaHR0cDovL3hlc3QvNDc1MBGGD2h0dHA6Ly94ZXN0LzQ3NjARhg9odHRw -Oi8veGVzdC80NzcwEYYPaHR0cDovL3hlc3QvNDc4MBGGD2h0dHA6Ly94ZXN0LzQ3 -OTARhg9odHRwOi8veGVzdC80ODAwEYYPaHR0cDovL3hlc3QvNDgxMBGGD2h0dHA6 -Ly94ZXN0LzQ4MjARhg9odHRwOi8veGVzdC80ODMwEYYPaHR0cDovL3hlc3QvNDg0 -MBGGD2h0dHA6Ly94ZXN0LzQ4NTARhg9odHRwOi8veGVzdC80ODYwEYYPaHR0cDov -L3hlc3QvNDg3MBGGD2h0dHA6Ly94ZXN0LzQ4ODARhg9odHRwOi8veGVzdC80ODkw -EYYPaHR0cDovL3hlc3QvNDkwMBGGD2h0dHA6Ly94ZXN0LzQ5MTARhg9odHRwOi8v -eGVzdC80OTIwEYYPaHR0cDovL3hlc3QvNDkzMBGGD2h0dHA6Ly94ZXN0LzQ5NDAR -hg9odHRwOi8veGVzdC80OTUwEYYPaHR0cDovL3hlc3QvNDk2MBGGD2h0dHA6Ly94 -ZXN0LzQ5NzARhg9odHRwOi8veGVzdC80OTgwEYYPaHR0cDovL3hlc3QvNDk5MBGG -D2h0dHA6Ly94ZXN0LzUwMDARhg9odHRwOi8veGVzdC81MDEwEYYPaHR0cDovL3hl -c3QvNTAyMBGGD2h0dHA6Ly94ZXN0LzUwMzARhg9odHRwOi8veGVzdC81MDQwEYYP -aHR0cDovL3hlc3QvNTA1MBGGD2h0dHA6Ly94ZXN0LzUwNjARhg9odHRwOi8veGVz -dC81MDcwEYYPaHR0cDovL3hlc3QvNTA4MBGGD2h0dHA6Ly94ZXN0LzUwOTARhg9o -dHRwOi8veGVzdC81MTAwEYYPaHR0cDovL3hlc3QvNTExMBGGD2h0dHA6Ly94ZXN0 -LzUxMjARhg9odHRwOi8veGVzdC81MTMwEYYPaHR0cDovL3hlc3QvNTE0MBGGD2h0 -dHA6Ly94ZXN0LzUxNTARhg9odHRwOi8veGVzdC81MTYwEYYPaHR0cDovL3hlc3Qv -NTE3MBGGD2h0dHA6Ly94ZXN0LzUxODARhg9odHRwOi8veGVzdC81MTkwEYYPaHR0 -cDovL3hlc3QvNTIwMBGGD2h0dHA6Ly94ZXN0LzUyMTARhg9odHRwOi8veGVzdC81 -MjIwEYYPaHR0cDovL3hlc3QvNTIzMBGGD2h0dHA6Ly94ZXN0LzUyNDARhg9odHRw -Oi8veGVzdC81MjUwEYYPaHR0cDovL3hlc3QvNTI2MBGGD2h0dHA6Ly94ZXN0LzUy -NzARhg9odHRwOi8veGVzdC81MjgwEYYPaHR0cDovL3hlc3QvNTI5MBGGD2h0dHA6 -Ly94ZXN0LzUzMDARhg9odHRwOi8veGVzdC81MzEwEYYPaHR0cDovL3hlc3QvNTMy -MBGGD2h0dHA6Ly94ZXN0LzUzMzARhg9odHRwOi8veGVzdC81MzQwEYYPaHR0cDov -L3hlc3QvNTM1MBGGD2h0dHA6Ly94ZXN0LzUzNjARhg9odHRwOi8veGVzdC81Mzcw -EYYPaHR0cDovL3hlc3QvNTM4MBGGD2h0dHA6Ly94ZXN0LzUzOTARhg9odHRwOi8v -eGVzdC81NDAwEYYPaHR0cDovL3hlc3QvNTQxMBGGD2h0dHA6Ly94ZXN0LzU0MjAR -hg9odHRwOi8veGVzdC81NDMwEYYPaHR0cDovL3hlc3QvNTQ0MBGGD2h0dHA6Ly94 -ZXN0LzU0NTARhg9odHRwOi8veGVzdC81NDYwEYYPaHR0cDovL3hlc3QvNTQ3MBGG -D2h0dHA6Ly94ZXN0LzU0ODARhg9odHRwOi8veGVzdC81NDkwEYYPaHR0cDovL3hl -c3QvNTUwMBGGD2h0dHA6Ly94ZXN0LzU1MTARhg9odHRwOi8veGVzdC81NTIwEYYP -aHR0cDovL3hlc3QvNTUzMBGGD2h0dHA6Ly94ZXN0LzU1NDARhg9odHRwOi8veGVz -dC81NTUwEYYPaHR0cDovL3hlc3QvNTU2MBGGD2h0dHA6Ly94ZXN0LzU1NzARhg9o -dHRwOi8veGVzdC81NTgwEYYPaHR0cDovL3hlc3QvNTU5MBGGD2h0dHA6Ly94ZXN0 -LzU2MDARhg9odHRwOi8veGVzdC81NjEwEYYPaHR0cDovL3hlc3QvNTYyMBGGD2h0 -dHA6Ly94ZXN0LzU2MzARhg9odHRwOi8veGVzdC81NjQwEYYPaHR0cDovL3hlc3Qv -NTY1MBGGD2h0dHA6Ly94ZXN0LzU2NjARhg9odHRwOi8veGVzdC81NjcwEYYPaHR0 -cDovL3hlc3QvNTY4MBGGD2h0dHA6Ly94ZXN0LzU2OTARhg9odHRwOi8veGVzdC81 -NzAwEYYPaHR0cDovL3hlc3QvNTcxMBGGD2h0dHA6Ly94ZXN0LzU3MjARhg9odHRw -Oi8veGVzdC81NzMwEYYPaHR0cDovL3hlc3QvNTc0MBGGD2h0dHA6Ly94ZXN0LzU3 -NTARhg9odHRwOi8veGVzdC81NzYwEYYPaHR0cDovL3hlc3QvNTc3MBGGD2h0dHA6 -Ly94ZXN0LzU3ODARhg9odHRwOi8veGVzdC81NzkwEYYPaHR0cDovL3hlc3QvNTgw -MBGGD2h0dHA6Ly94ZXN0LzU4MTARhg9odHRwOi8veGVzdC81ODIwEYYPaHR0cDov -L3hlc3QvNTgzMBGGD2h0dHA6Ly94ZXN0LzU4NDARhg9odHRwOi8veGVzdC81ODUw -EYYPaHR0cDovL3hlc3QvNTg2MBGGD2h0dHA6Ly94ZXN0LzU4NzARhg9odHRwOi8v -eGVzdC81ODgwEYYPaHR0cDovL3hlc3QvNTg5MBGGD2h0dHA6Ly94ZXN0LzU5MDAR -hg9odHRwOi8veGVzdC81OTEwEYYPaHR0cDovL3hlc3QvNTkyMBGGD2h0dHA6Ly94 -ZXN0LzU5MzARhg9odHRwOi8veGVzdC81OTQwEYYPaHR0cDovL3hlc3QvNTk1MBGG -D2h0dHA6Ly94ZXN0LzU5NjARhg9odHRwOi8veGVzdC81OTcwEYYPaHR0cDovL3hl -c3QvNTk4MBGGD2h0dHA6Ly94ZXN0LzU5OTARhg9odHRwOi8veGVzdC82MDAwEYYP -aHR0cDovL3hlc3QvNjAxMBGGD2h0dHA6Ly94ZXN0LzYwMjARhg9odHRwOi8veGVz -dC82MDMwEYYPaHR0cDovL3hlc3QvNjA0MBGGD2h0dHA6Ly94ZXN0LzYwNTARhg9o -dHRwOi8veGVzdC82MDYwEYYPaHR0cDovL3hlc3QvNjA3MBGGD2h0dHA6Ly94ZXN0 -LzYwODARhg9odHRwOi8veGVzdC82MDkwEYYPaHR0cDovL3hlc3QvNjEwMBGGD2h0 -dHA6Ly94ZXN0LzYxMTARhg9odHRwOi8veGVzdC82MTIwEYYPaHR0cDovL3hlc3Qv -NjEzMBGGD2h0dHA6Ly94ZXN0LzYxNDARhg9odHRwOi8veGVzdC82MTUwEYYPaHR0 -cDovL3hlc3QvNjE2MBGGD2h0dHA6Ly94ZXN0LzYxNzARhg9odHRwOi8veGVzdC82 -MTgwEYYPaHR0cDovL3hlc3QvNjE5MBGGD2h0dHA6Ly94ZXN0LzYyMDARhg9odHRw -Oi8veGVzdC82MjEwEYYPaHR0cDovL3hlc3QvNjIyMBGGD2h0dHA6Ly94ZXN0LzYy -MzARhg9odHRwOi8veGVzdC82MjQwEYYPaHR0cDovL3hlc3QvNjI1MBGGD2h0dHA6 -Ly94ZXN0LzYyNjARhg9odHRwOi8veGVzdC82MjcwEYYPaHR0cDovL3hlc3QvNjI4 -MBGGD2h0dHA6Ly94ZXN0LzYyOTARhg9odHRwOi8veGVzdC82MzAwEYYPaHR0cDov -L3hlc3QvNjMxMBGGD2h0dHA6Ly94ZXN0LzYzMjARhg9odHRwOi8veGVzdC82MzMw -EYYPaHR0cDovL3hlc3QvNjM0MBGGD2h0dHA6Ly94ZXN0LzYzNTARhg9odHRwOi8v -eGVzdC82MzYwEYYPaHR0cDovL3hlc3QvNjM3MBGGD2h0dHA6Ly94ZXN0LzYzODAR -hg9odHRwOi8veGVzdC82MzkwEYYPaHR0cDovL3hlc3QvNjQwMBGGD2h0dHA6Ly94 -ZXN0LzY0MTARhg9odHRwOi8veGVzdC82NDIwEYYPaHR0cDovL3hlc3QvNjQzMBGG -D2h0dHA6Ly94ZXN0LzY0NDARhg9odHRwOi8veGVzdC82NDUwEYYPaHR0cDovL3hl -c3QvNjQ2MBGGD2h0dHA6Ly94ZXN0LzY0NzARhg9odHRwOi8veGVzdC82NDgwEYYP -aHR0cDovL3hlc3QvNjQ5MBGGD2h0dHA6Ly94ZXN0LzY1MDARhg9odHRwOi8veGVz -dC82NTEwEYYPaHR0cDovL3hlc3QvNjUyMBGGD2h0dHA6Ly94ZXN0LzY1MzARhg9o -dHRwOi8veGVzdC82NTQwEYYPaHR0cDovL3hlc3QvNjU1MBGGD2h0dHA6Ly94ZXN0 -LzY1NjARhg9odHRwOi8veGVzdC82NTcwEYYPaHR0cDovL3hlc3QvNjU4MBGGD2h0 -dHA6Ly94ZXN0LzY1OTARhg9odHRwOi8veGVzdC82NjAwEYYPaHR0cDovL3hlc3Qv -NjYxMBGGD2h0dHA6Ly94ZXN0LzY2MjARhg9odHRwOi8veGVzdC82NjMwEYYPaHR0 -cDovL3hlc3QvNjY0MBGGD2h0dHA6Ly94ZXN0LzY2NTARhg9odHRwOi8veGVzdC82 -NjYwEYYPaHR0cDovL3hlc3QvNjY3MBGGD2h0dHA6Ly94ZXN0LzY2ODARhg9odHRw -Oi8veGVzdC82NjkwEYYPaHR0cDovL3hlc3QvNjcwMBGGD2h0dHA6Ly94ZXN0LzY3 -MTARhg9odHRwOi8veGVzdC82NzIwEYYPaHR0cDovL3hlc3QvNjczMBGGD2h0dHA6 -Ly94ZXN0LzY3NDARhg9odHRwOi8veGVzdC82NzUwEYYPaHR0cDovL3hlc3QvNjc2 -MBGGD2h0dHA6Ly94ZXN0LzY3NzARhg9odHRwOi8veGVzdC82NzgwEYYPaHR0cDov -L3hlc3QvNjc5MBGGD2h0dHA6Ly94ZXN0LzY4MDARhg9odHRwOi8veGVzdC82ODEw -EYYPaHR0cDovL3hlc3QvNjgyMBGGD2h0dHA6Ly94ZXN0LzY4MzARhg9odHRwOi8v -eGVzdC82ODQwEYYPaHR0cDovL3hlc3QvNjg1MBGGD2h0dHA6Ly94ZXN0LzY4NjAR -hg9odHRwOi8veGVzdC82ODcwEYYPaHR0cDovL3hlc3QvNjg4MBGGD2h0dHA6Ly94 -ZXN0LzY4OTARhg9odHRwOi8veGVzdC82OTAwEYYPaHR0cDovL3hlc3QvNjkxMBGG -D2h0dHA6Ly94ZXN0LzY5MjARhg9odHRwOi8veGVzdC82OTMwEYYPaHR0cDovL3hl -c3QvNjk0MBGGD2h0dHA6Ly94ZXN0LzY5NTARhg9odHRwOi8veGVzdC82OTYwEYYP -aHR0cDovL3hlc3QvNjk3MBGGD2h0dHA6Ly94ZXN0LzY5ODARhg9odHRwOi8veGVz -dC82OTkwEYYPaHR0cDovL3hlc3QvNzAwMBGGD2h0dHA6Ly94ZXN0LzcwMTARhg9o -dHRwOi8veGVzdC83MDIwEYYPaHR0cDovL3hlc3QvNzAzMBGGD2h0dHA6Ly94ZXN0 -LzcwNDARhg9odHRwOi8veGVzdC83MDUwEYYPaHR0cDovL3hlc3QvNzA2MBGGD2h0 -dHA6Ly94ZXN0LzcwNzARhg9odHRwOi8veGVzdC83MDgwEYYPaHR0cDovL3hlc3Qv -NzA5MBGGD2h0dHA6Ly94ZXN0LzcxMDARhg9odHRwOi8veGVzdC83MTEwEYYPaHR0 -cDovL3hlc3QvNzEyMBGGD2h0dHA6Ly94ZXN0LzcxMzARhg9odHRwOi8veGVzdC83 -MTQwEYYPaHR0cDovL3hlc3QvNzE1MBGGD2h0dHA6Ly94ZXN0LzcxNjARhg9odHRw -Oi8veGVzdC83MTcwEYYPaHR0cDovL3hlc3QvNzE4MBGGD2h0dHA6Ly94ZXN0Lzcx -OTARhg9odHRwOi8veGVzdC83MjAwEYYPaHR0cDovL3hlc3QvNzIxMBGGD2h0dHA6 -Ly94ZXN0LzcyMjARhg9odHRwOi8veGVzdC83MjMwEYYPaHR0cDovL3hlc3QvNzI0 -MBGGD2h0dHA6Ly94ZXN0LzcyNTARhg9odHRwOi8veGVzdC83MjYwEYYPaHR0cDov -L3hlc3QvNzI3MBGGD2h0dHA6Ly94ZXN0LzcyODARhg9odHRwOi8veGVzdC83Mjkw -EYYPaHR0cDovL3hlc3QvNzMwMBGGD2h0dHA6Ly94ZXN0LzczMTARhg9odHRwOi8v -eGVzdC83MzIwEYYPaHR0cDovL3hlc3QvNzMzMBGGD2h0dHA6Ly94ZXN0LzczNDAR -hg9odHRwOi8veGVzdC83MzUwEYYPaHR0cDovL3hlc3QvNzM2MBGGD2h0dHA6Ly94 -ZXN0LzczNzARhg9odHRwOi8veGVzdC83MzgwEYYPaHR0cDovL3hlc3QvNzM5MBGG -D2h0dHA6Ly94ZXN0Lzc0MDARhg9odHRwOi8veGVzdC83NDEwEYYPaHR0cDovL3hl -c3QvNzQyMBGGD2h0dHA6Ly94ZXN0Lzc0MzARhg9odHRwOi8veGVzdC83NDQwEYYP -aHR0cDovL3hlc3QvNzQ1MBGGD2h0dHA6Ly94ZXN0Lzc0NjARhg9odHRwOi8veGVz -dC83NDcwEYYPaHR0cDovL3hlc3QvNzQ4MBGGD2h0dHA6Ly94ZXN0Lzc0OTARhg9o -dHRwOi8veGVzdC83NTAwEYYPaHR0cDovL3hlc3QvNzUxMBGGD2h0dHA6Ly94ZXN0 -Lzc1MjARhg9odHRwOi8veGVzdC83NTMwEYYPaHR0cDovL3hlc3QvNzU0MBGGD2h0 -dHA6Ly94ZXN0Lzc1NTARhg9odHRwOi8veGVzdC83NTYwEYYPaHR0cDovL3hlc3Qv -NzU3MBGGD2h0dHA6Ly94ZXN0Lzc1ODARhg9odHRwOi8veGVzdC83NTkwEYYPaHR0 -cDovL3hlc3QvNzYwMBGGD2h0dHA6Ly94ZXN0Lzc2MTARhg9odHRwOi8veGVzdC83 -NjIwEYYPaHR0cDovL3hlc3QvNzYzMBGGD2h0dHA6Ly94ZXN0Lzc2NDARhg9odHRw -Oi8veGVzdC83NjUwEYYPaHR0cDovL3hlc3QvNzY2MBGGD2h0dHA6Ly94ZXN0Lzc2 -NzARhg9odHRwOi8veGVzdC83NjgwEYYPaHR0cDovL3hlc3QvNzY5MBGGD2h0dHA6 -Ly94ZXN0Lzc3MDARhg9odHRwOi8veGVzdC83NzEwEYYPaHR0cDovL3hlc3QvNzcy -MBGGD2h0dHA6Ly94ZXN0Lzc3MzARhg9odHRwOi8veGVzdC83NzQwEYYPaHR0cDov -L3hlc3QvNzc1MBGGD2h0dHA6Ly94ZXN0Lzc3NjARhg9odHRwOi8veGVzdC83Nzcw -EYYPaHR0cDovL3hlc3QvNzc4MBGGD2h0dHA6Ly94ZXN0Lzc3OTARhg9odHRwOi8v -eGVzdC83ODAwEYYPaHR0cDovL3hlc3QvNzgxMBGGD2h0dHA6Ly94ZXN0Lzc4MjAR -hg9odHRwOi8veGVzdC83ODMwEYYPaHR0cDovL3hlc3QvNzg0MBGGD2h0dHA6Ly94 -ZXN0Lzc4NTARhg9odHRwOi8veGVzdC83ODYwEYYPaHR0cDovL3hlc3QvNzg3MBGG -D2h0dHA6Ly94ZXN0Lzc4ODARhg9odHRwOi8veGVzdC83ODkwEYYPaHR0cDovL3hl -c3QvNzkwMBGGD2h0dHA6Ly94ZXN0Lzc5MTARhg9odHRwOi8veGVzdC83OTIwEYYP -aHR0cDovL3hlc3QvNzkzMBGGD2h0dHA6Ly94ZXN0Lzc5NDARhg9odHRwOi8veGVz -dC83OTUwEYYPaHR0cDovL3hlc3QvNzk2MBGGD2h0dHA6Ly94ZXN0Lzc5NzARhg9o -dHRwOi8veGVzdC83OTgwEYYPaHR0cDovL3hlc3QvNzk5MBGGD2h0dHA6Ly94ZXN0 -LzgwMDARhg9odHRwOi8veGVzdC84MDEwEYYPaHR0cDovL3hlc3QvODAyMBGGD2h0 -dHA6Ly94ZXN0LzgwMzARhg9odHRwOi8veGVzdC84MDQwEYYPaHR0cDovL3hlc3Qv -ODA1MBGGD2h0dHA6Ly94ZXN0LzgwNjARhg9odHRwOi8veGVzdC84MDcwEYYPaHR0 -cDovL3hlc3QvODA4MBGGD2h0dHA6Ly94ZXN0LzgwOTARhg9odHRwOi8veGVzdC84 -MTAwEYYPaHR0cDovL3hlc3QvODExMBGGD2h0dHA6Ly94ZXN0LzgxMjARhg9odHRw -Oi8veGVzdC84MTMwEYYPaHR0cDovL3hlc3QvODE0MBGGD2h0dHA6Ly94ZXN0Lzgx -NTARhg9odHRwOi8veGVzdC84MTYwEYYPaHR0cDovL3hlc3QvODE3MBGGD2h0dHA6 -Ly94ZXN0LzgxODARhg9odHRwOi8veGVzdC84MTkwEYYPaHR0cDovL3hlc3QvODIw -MBGGD2h0dHA6Ly94ZXN0LzgyMTARhg9odHRwOi8veGVzdC84MjIwEYYPaHR0cDov -L3hlc3QvODIzMBGGD2h0dHA6Ly94ZXN0LzgyNDARhg9odHRwOi8veGVzdC84MjUw -EYYPaHR0cDovL3hlc3QvODI2MBGGD2h0dHA6Ly94ZXN0LzgyNzARhg9odHRwOi8v -eGVzdC84MjgwEYYPaHR0cDovL3hlc3QvODI5MBGGD2h0dHA6Ly94ZXN0LzgzMDAR -hg9odHRwOi8veGVzdC84MzEwEYYPaHR0cDovL3hlc3QvODMyMBGGD2h0dHA6Ly94 -ZXN0LzgzMzARhg9odHRwOi8veGVzdC84MzQwEYYPaHR0cDovL3hlc3QvODM1MBGG -D2h0dHA6Ly94ZXN0LzgzNjARhg9odHRwOi8veGVzdC84MzcwEYYPaHR0cDovL3hl -c3QvODM4MBGGD2h0dHA6Ly94ZXN0LzgzOTARhg9odHRwOi8veGVzdC84NDAwEYYP -aHR0cDovL3hlc3QvODQxMBGGD2h0dHA6Ly94ZXN0Lzg0MjARhg9odHRwOi8veGVz -dC84NDMwEYYPaHR0cDovL3hlc3QvODQ0MBGGD2h0dHA6Ly94ZXN0Lzg0NTARhg9o -dHRwOi8veGVzdC84NDYwEYYPaHR0cDovL3hlc3QvODQ3MBGGD2h0dHA6Ly94ZXN0 -Lzg0ODARhg9odHRwOi8veGVzdC84NDkwEYYPaHR0cDovL3hlc3QvODUwMBGGD2h0 -dHA6Ly94ZXN0Lzg1MTARhg9odHRwOi8veGVzdC84NTIwEYYPaHR0cDovL3hlc3Qv -ODUzMBGGD2h0dHA6Ly94ZXN0Lzg1NDARhg9odHRwOi8veGVzdC84NTUwEYYPaHR0 -cDovL3hlc3QvODU2MBGGD2h0dHA6Ly94ZXN0Lzg1NzARhg9odHRwOi8veGVzdC84 -NTgwEYYPaHR0cDovL3hlc3QvODU5MBGGD2h0dHA6Ly94ZXN0Lzg2MDARhg9odHRw -Oi8veGVzdC84NjEwEYYPaHR0cDovL3hlc3QvODYyMBGGD2h0dHA6Ly94ZXN0Lzg2 -MzARhg9odHRwOi8veGVzdC84NjQwEYYPaHR0cDovL3hlc3QvODY1MBGGD2h0dHA6 -Ly94ZXN0Lzg2NjARhg9odHRwOi8veGVzdC84NjcwEYYPaHR0cDovL3hlc3QvODY4 -MBGGD2h0dHA6Ly94ZXN0Lzg2OTARhg9odHRwOi8veGVzdC84NzAwEYYPaHR0cDov -L3hlc3QvODcxMBGGD2h0dHA6Ly94ZXN0Lzg3MjARhg9odHRwOi8veGVzdC84NzMw -EYYPaHR0cDovL3hlc3QvODc0MBGGD2h0dHA6Ly94ZXN0Lzg3NTARhg9odHRwOi8v -eGVzdC84NzYwEYYPaHR0cDovL3hlc3QvODc3MBGGD2h0dHA6Ly94ZXN0Lzg3ODAR -hg9odHRwOi8veGVzdC84NzkwEYYPaHR0cDovL3hlc3QvODgwMBGGD2h0dHA6Ly94 -ZXN0Lzg4MTARhg9odHRwOi8veGVzdC84ODIwEYYPaHR0cDovL3hlc3QvODgzMBGG -D2h0dHA6Ly94ZXN0Lzg4NDARhg9odHRwOi8veGVzdC84ODUwEYYPaHR0cDovL3hl -c3QvODg2MBGGD2h0dHA6Ly94ZXN0Lzg4NzARhg9odHRwOi8veGVzdC84ODgwEYYP -aHR0cDovL3hlc3QvODg5MBGGD2h0dHA6Ly94ZXN0Lzg5MDARhg9odHRwOi8veGVz -dC84OTEwEYYPaHR0cDovL3hlc3QvODkyMBGGD2h0dHA6Ly94ZXN0Lzg5MzARhg9o -dHRwOi8veGVzdC84OTQwEYYPaHR0cDovL3hlc3QvODk1MBGGD2h0dHA6Ly94ZXN0 -Lzg5NjARhg9odHRwOi8veGVzdC84OTcwEYYPaHR0cDovL3hlc3QvODk4MBGGD2h0 -dHA6Ly94ZXN0Lzg5OTARhg9odHRwOi8veGVzdC85MDAwEYYPaHR0cDovL3hlc3Qv -OTAxMBGGD2h0dHA6Ly94ZXN0LzkwMjARhg9odHRwOi8veGVzdC85MDMwEYYPaHR0 -cDovL3hlc3QvOTA0MBGGD2h0dHA6Ly94ZXN0LzkwNTARhg9odHRwOi8veGVzdC85 -MDYwEYYPaHR0cDovL3hlc3QvOTA3MBGGD2h0dHA6Ly94ZXN0LzkwODARhg9odHRw -Oi8veGVzdC85MDkwEYYPaHR0cDovL3hlc3QvOTEwMBGGD2h0dHA6Ly94ZXN0Lzkx -MTARhg9odHRwOi8veGVzdC85MTIwEYYPaHR0cDovL3hlc3QvOTEzMBGGD2h0dHA6 -Ly94ZXN0LzkxNDARhg9odHRwOi8veGVzdC85MTUwEYYPaHR0cDovL3hlc3QvOTE2 -MBGGD2h0dHA6Ly94ZXN0LzkxNzARhg9odHRwOi8veGVzdC85MTgwEYYPaHR0cDov -L3hlc3QvOTE5MBGGD2h0dHA6Ly94ZXN0LzkyMDARhg9odHRwOi8veGVzdC85MjEw -EYYPaHR0cDovL3hlc3QvOTIyMBGGD2h0dHA6Ly94ZXN0LzkyMzARhg9odHRwOi8v -eGVzdC85MjQwEYYPaHR0cDovL3hlc3QvOTI1MBGGD2h0dHA6Ly94ZXN0LzkyNjAR -hg9odHRwOi8veGVzdC85MjcwEYYPaHR0cDovL3hlc3QvOTI4MBGGD2h0dHA6Ly94 -ZXN0LzkyOTARhg9odHRwOi8veGVzdC85MzAwEYYPaHR0cDovL3hlc3QvOTMxMBGG -D2h0dHA6Ly94ZXN0LzkzMjARhg9odHRwOi8veGVzdC85MzMwEYYPaHR0cDovL3hl -c3QvOTM0MBGGD2h0dHA6Ly94ZXN0LzkzNTARhg9odHRwOi8veGVzdC85MzYwEYYP -aHR0cDovL3hlc3QvOTM3MBGGD2h0dHA6Ly94ZXN0LzkzODARhg9odHRwOi8veGVz -dC85MzkwEYYPaHR0cDovL3hlc3QvOTQwMBGGD2h0dHA6Ly94ZXN0Lzk0MTARhg9o -dHRwOi8veGVzdC85NDIwEYYPaHR0cDovL3hlc3QvOTQzMBGGD2h0dHA6Ly94ZXN0 -Lzk0NDARhg9odHRwOi8veGVzdC85NDUwEYYPaHR0cDovL3hlc3QvOTQ2MBGGD2h0 -dHA6Ly94ZXN0Lzk0NzARhg9odHRwOi8veGVzdC85NDgwEYYPaHR0cDovL3hlc3Qv -OTQ5MBGGD2h0dHA6Ly94ZXN0Lzk1MDARhg9odHRwOi8veGVzdC85NTEwEYYPaHR0 -cDovL3hlc3QvOTUyMBGGD2h0dHA6Ly94ZXN0Lzk1MzARhg9odHRwOi8veGVzdC85 -NTQwEYYPaHR0cDovL3hlc3QvOTU1MBGGD2h0dHA6Ly94ZXN0Lzk1NjARhg9odHRw -Oi8veGVzdC85NTcwEYYPaHR0cDovL3hlc3QvOTU4MBGGD2h0dHA6Ly94ZXN0Lzk1 -OTARhg9odHRwOi8veGVzdC85NjAwEYYPaHR0cDovL3hlc3QvOTYxMBGGD2h0dHA6 -Ly94ZXN0Lzk2MjARhg9odHRwOi8veGVzdC85NjMwEYYPaHR0cDovL3hlc3QvOTY0 -MBGGD2h0dHA6Ly94ZXN0Lzk2NTARhg9odHRwOi8veGVzdC85NjYwEYYPaHR0cDov -L3hlc3QvOTY3MBGGD2h0dHA6Ly94ZXN0Lzk2ODARhg9odHRwOi8veGVzdC85Njkw -EYYPaHR0cDovL3hlc3QvOTcwMBGGD2h0dHA6Ly94ZXN0Lzk3MTARhg9odHRwOi8v -eGVzdC85NzIwEYYPaHR0cDovL3hlc3QvOTczMBGGD2h0dHA6Ly94ZXN0Lzk3NDAR -hg9odHRwOi8veGVzdC85NzUwEYYPaHR0cDovL3hlc3QvOTc2MBGGD2h0dHA6Ly94 -ZXN0Lzk3NzARhg9odHRwOi8veGVzdC85NzgwEYYPaHR0cDovL3hlc3QvOTc5MBGG -D2h0dHA6Ly94ZXN0Lzk4MDARhg9odHRwOi8veGVzdC85ODEwEYYPaHR0cDovL3hl -c3QvOTgyMBGGD2h0dHA6Ly94ZXN0Lzk4MzARhg9odHRwOi8veGVzdC85ODQwEYYP -aHR0cDovL3hlc3QvOTg1MBGGD2h0dHA6Ly94ZXN0Lzk4NjARhg9odHRwOi8veGVz -dC85ODcwEYYPaHR0cDovL3hlc3QvOTg4MBGGD2h0dHA6Ly94ZXN0Lzk4OTARhg9o -dHRwOi8veGVzdC85OTAwEYYPaHR0cDovL3hlc3QvOTkxMBGGD2h0dHA6Ly94ZXN0 -Lzk5MjARhg9odHRwOi8veGVzdC85OTMwEYYPaHR0cDovL3hlc3QvOTk0MBGGD2h0 -dHA6Ly94ZXN0Lzk5NTARhg9odHRwOi8veGVzdC85OTYwEYYPaHR0cDovL3hlc3Qv -OTk3MBGGD2h0dHA6Ly94ZXN0Lzk5ODARhg9odHRwOi8veGVzdC85OTkwEoYQaHR0 -cDovL3hlc3QvMTAwMDAShhBodHRwOi8veGVzdC8xMDAxMBKGEGh0dHA6Ly94ZXN0 -LzEwMDIwEoYQaHR0cDovL3hlc3QvMTAwMzAShhBodHRwOi8veGVzdC8xMDA0MBKG -EGh0dHA6Ly94ZXN0LzEwMDUwEoYQaHR0cDovL3hlc3QvMTAwNjAShhBodHRwOi8v -eGVzdC8xMDA3MBKGEGh0dHA6Ly94ZXN0LzEwMDgwEoYQaHR0cDovL3hlc3QvMTAw -OTAShhBodHRwOi8veGVzdC8xMDEwMBKGEGh0dHA6Ly94ZXN0LzEwMTEwEoYQaHR0 -cDovL3hlc3QvMTAxMjAShhBodHRwOi8veGVzdC8xMDEzMBKGEGh0dHA6Ly94ZXN0 -LzEwMTQwEoYQaHR0cDovL3hlc3QvMTAxNTAShhBodHRwOi8veGVzdC8xMDE2MBKG -EGh0dHA6Ly94ZXN0LzEwMTcwEoYQaHR0cDovL3hlc3QvMTAxODAShhBodHRwOi8v -eGVzdC8xMDE5MBKGEGh0dHA6Ly94ZXN0LzEwMjAwEoYQaHR0cDovL3hlc3QvMTAy -MTAShhBodHRwOi8veGVzdC8xMDIyMBKGEGh0dHA6Ly94ZXN0LzEwMjMwEoYQaHR0 -cDovL3hlc3QvMTAyNDANBgkqhkiG9w0BAQsFAAOCAQEAgsk+M7BA++4VDlXfzCOT -zuINL88G39pnRJgF1zJlh43pf1q9m43BXh8sqno+Ds7lrcWsKXpC4Y0611gpm3kY -SSvte4/33aXtqs/Bja6bJiGVwqu7r3wuNSro0pw5mwFcQTh/9q1J9a1Tij0mzRDr -hIU+K7Jf/QuVZsUc0Ds8HkDM3Yyj/P4bJCNss2+VGWdseQBqLJY3NqXVTb1kzFy+ -kYIUFmsad7LHDLG/dASbz9gt2We6Xn5xHnF2bW4caamMkjXObn26Wn1QuFIiTl1R -Yv03X3jeVR1C9L77bHbmR8rpkmgFUk25ntmEbzpP9Ls7UixBLyjcFhhdUlx/pueW -KQ== ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db deleted file mode 100644 index 829edad47b..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db +++ /dev/null @@ -1,8 +0,0 @@ -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D4 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D5 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D6 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D7 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D8 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D9 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8DA unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8DB unknown /CN=t0 diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.attr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.attr deleted file mode 100644 index 3a7e39e6ee..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.attr +++ /dev/null @@ -1 +0,0 @@ -unique_subject = no diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.attr.old b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.attr.old deleted file mode 100644 index 3a7e39e6ee..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.attr.old +++ /dev/null @@ -1 +0,0 @@ -unique_subject = no diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.old b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.old deleted file mode 100644 index 9d478d5995..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.db.old +++ /dev/null @@ -1,7 +0,0 @@ -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D4 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D5 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D6 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D7 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D8 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8D9 unknown /CN=t0 -V 221005120000Z 2FABB43DDCC077802A0309AD437402BF98D8DA unknown /CN=t0 diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.pem deleted file mode 100644 index cd3f1215ab..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.pem +++ /dev/null @@ -1,4294 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:f6 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Permitted: - DNS:t0.test - DNS:t1.test - DNS:t2.test - DNS:t3.test - DNS:t4.test - DNS:t5.test - DNS:t6.test - DNS:t7.test - DNS:t8.test - DNS:t9.test - DNS:t10.test - DNS:t11.test - DNS:t12.test - DNS:t13.test - DNS:t14.test - DNS:t15.test - DNS:t16.test - DNS:t17.test - DNS:t18.test - DNS:t19.test - DNS:t20.test - DNS:t21.test - DNS:t22.test - DNS:t23.test - DNS:t24.test - DNS:t25.test - DNS:t26.test - DNS:t27.test - DNS:t28.test - DNS:t29.test - DNS:t30.test - DNS:t31.test - DNS:t32.test - DNS:t33.test - DNS:t34.test - DNS:t35.test - DNS:t36.test - DNS:t37.test - DNS:t38.test - DNS:t39.test - DNS:t40.test - DNS:t41.test - DNS:t42.test - DNS:t43.test - DNS:t44.test - DNS:t45.test - DNS:t46.test - DNS:t47.test - DNS:t48.test - DNS:t49.test - DNS:t50.test - DNS:t51.test - DNS:t52.test - DNS:t53.test - DNS:t54.test - DNS:t55.test - DNS:t56.test - DNS:t57.test - DNS:t58.test - DNS:t59.test - DNS:t60.test - DNS:t61.test - DNS:t62.test - DNS:t63.test - DNS:t64.test - DNS:t65.test - DNS:t66.test - DNS:t67.test - DNS:t68.test - DNS:t69.test - DNS:t70.test - DNS:t71.test - DNS:t72.test - DNS:t73.test - DNS:t74.test - DNS:t75.test - DNS:t76.test - DNS:t77.test - DNS:t78.test - DNS:t79.test - DNS:t80.test - DNS:t81.test - DNS:t82.test - DNS:t83.test - DNS:t84.test - DNS:t85.test - DNS:t86.test - DNS:t87.test - DNS:t88.test - DNS:t89.test - DNS:t90.test - DNS:t91.test - DNS:t92.test - DNS:t93.test - DNS:t94.test - DNS:t95.test - DNS:t96.test - DNS:t97.test - DNS:t98.test - DNS:t99.test - DNS:t100.test - DNS:t101.test - DNS:t102.test - DNS:t103.test - DNS:t104.test - DNS:t105.test - DNS:t106.test - DNS:t107.test - DNS:t108.test - DNS:t109.test - DNS:t110.test - DNS:t111.test - DNS:t112.test - DNS:t113.test - DNS:t114.test - DNS:t115.test - DNS:t116.test - DNS:t117.test - DNS:t118.test - DNS:t119.test - DNS:t120.test - DNS:t121.test - DNS:t122.test - DNS:t123.test - DNS:t124.test - DNS:t125.test - DNS:t126.test - DNS:t127.test - DNS:t128.test - DNS:t129.test - DNS:t130.test - DNS:t131.test - DNS:t132.test - DNS:t133.test - DNS:t134.test - DNS:t135.test - DNS:t136.test - DNS:t137.test - DNS:t138.test - DNS:t139.test - DNS:t140.test - DNS:t141.test - DNS:t142.test - DNS:t143.test - DNS:t144.test - DNS:t145.test - DNS:t146.test - DNS:t147.test - DNS:t148.test - DNS:t149.test - DNS:t150.test - DNS:t151.test - DNS:t152.test - DNS:t153.test - DNS:t154.test - DNS:t155.test - DNS:t156.test - DNS:t157.test - DNS:t158.test - DNS:t159.test - DNS:t160.test - DNS:t161.test - DNS:t162.test - DNS:t163.test - DNS:t164.test - DNS:t165.test - DNS:t166.test - DNS:t167.test - DNS:t168.test - DNS:t169.test - DNS:t170.test - IP:10.0.0.0/255.255.255.255 - IP:10.0.0.1/255.255.255.255 - IP:10.0.0.2/255.255.255.255 - IP:10.0.0.3/255.255.255.255 - IP:10.0.0.4/255.255.255.255 - IP:10.0.0.5/255.255.255.255 - IP:10.0.0.6/255.255.255.255 - IP:10.0.0.7/255.255.255.255 - IP:10.0.0.8/255.255.255.255 - IP:10.0.0.9/255.255.255.255 - IP:10.0.0.10/255.255.255.255 - IP:10.0.0.11/255.255.255.255 - IP:10.0.0.12/255.255.255.255 - IP:10.0.0.13/255.255.255.255 - IP:10.0.0.14/255.255.255.255 - IP:10.0.0.15/255.255.255.255 - IP:10.0.0.16/255.255.255.255 - IP:10.0.0.17/255.255.255.255 - IP:10.0.0.18/255.255.255.255 - IP:10.0.0.19/255.255.255.255 - IP:10.0.0.20/255.255.255.255 - IP:10.0.0.21/255.255.255.255 - IP:10.0.0.22/255.255.255.255 - IP:10.0.0.23/255.255.255.255 - IP:10.0.0.24/255.255.255.255 - IP:10.0.0.25/255.255.255.255 - IP:10.0.0.26/255.255.255.255 - IP:10.0.0.27/255.255.255.255 - IP:10.0.0.28/255.255.255.255 - IP:10.0.0.29/255.255.255.255 - IP:10.0.0.30/255.255.255.255 - IP:10.0.0.31/255.255.255.255 - IP:10.0.0.32/255.255.255.255 - IP:10.0.0.33/255.255.255.255 - IP:10.0.0.34/255.255.255.255 - IP:10.0.0.35/255.255.255.255 - IP:10.0.0.36/255.255.255.255 - IP:10.0.0.37/255.255.255.255 - IP:10.0.0.38/255.255.255.255 - IP:10.0.0.39/255.255.255.255 - IP:10.0.0.40/255.255.255.255 - IP:10.0.0.41/255.255.255.255 - IP:10.0.0.42/255.255.255.255 - IP:10.0.0.43/255.255.255.255 - IP:10.0.0.44/255.255.255.255 - IP:10.0.0.45/255.255.255.255 - IP:10.0.0.46/255.255.255.255 - IP:10.0.0.47/255.255.255.255 - IP:10.0.0.48/255.255.255.255 - IP:10.0.0.49/255.255.255.255 - IP:10.0.0.50/255.255.255.255 - IP:10.0.0.51/255.255.255.255 - IP:10.0.0.52/255.255.255.255 - IP:10.0.0.53/255.255.255.255 - IP:10.0.0.54/255.255.255.255 - IP:10.0.0.55/255.255.255.255 - IP:10.0.0.56/255.255.255.255 - IP:10.0.0.57/255.255.255.255 - IP:10.0.0.58/255.255.255.255 - IP:10.0.0.59/255.255.255.255 - IP:10.0.0.60/255.255.255.255 - IP:10.0.0.61/255.255.255.255 - IP:10.0.0.62/255.255.255.255 - IP:10.0.0.63/255.255.255.255 - IP:10.0.0.64/255.255.255.255 - IP:10.0.0.65/255.255.255.255 - IP:10.0.0.66/255.255.255.255 - IP:10.0.0.67/255.255.255.255 - IP:10.0.0.68/255.255.255.255 - IP:10.0.0.69/255.255.255.255 - IP:10.0.0.70/255.255.255.255 - IP:10.0.0.71/255.255.255.255 - IP:10.0.0.72/255.255.255.255 - IP:10.0.0.73/255.255.255.255 - IP:10.0.0.74/255.255.255.255 - IP:10.0.0.75/255.255.255.255 - IP:10.0.0.76/255.255.255.255 - IP:10.0.0.77/255.255.255.255 - IP:10.0.0.78/255.255.255.255 - IP:10.0.0.79/255.255.255.255 - IP:10.0.0.80/255.255.255.255 - IP:10.0.0.81/255.255.255.255 - IP:10.0.0.82/255.255.255.255 - IP:10.0.0.83/255.255.255.255 - IP:10.0.0.84/255.255.255.255 - IP:10.0.0.85/255.255.255.255 - IP:10.0.0.86/255.255.255.255 - IP:10.0.0.87/255.255.255.255 - IP:10.0.0.88/255.255.255.255 - IP:10.0.0.89/255.255.255.255 - IP:10.0.0.90/255.255.255.255 - IP:10.0.0.91/255.255.255.255 - IP:10.0.0.92/255.255.255.255 - IP:10.0.0.93/255.255.255.255 - IP:10.0.0.94/255.255.255.255 - IP:10.0.0.95/255.255.255.255 - IP:10.0.0.96/255.255.255.255 - IP:10.0.0.97/255.255.255.255 - IP:10.0.0.98/255.255.255.255 - IP:10.0.0.99/255.255.255.255 - IP:10.0.0.100/255.255.255.255 - IP:10.0.0.101/255.255.255.255 - IP:10.0.0.102/255.255.255.255 - IP:10.0.0.103/255.255.255.255 - IP:10.0.0.104/255.255.255.255 - IP:10.0.0.105/255.255.255.255 - IP:10.0.0.106/255.255.255.255 - IP:10.0.0.107/255.255.255.255 - IP:10.0.0.108/255.255.255.255 - IP:10.0.0.109/255.255.255.255 - IP:10.0.0.110/255.255.255.255 - IP:10.0.0.111/255.255.255.255 - IP:10.0.0.112/255.255.255.255 - IP:10.0.0.113/255.255.255.255 - IP:10.0.0.114/255.255.255.255 - IP:10.0.0.115/255.255.255.255 - IP:10.0.0.116/255.255.255.255 - IP:10.0.0.117/255.255.255.255 - IP:10.0.0.118/255.255.255.255 - IP:10.0.0.119/255.255.255.255 - IP:10.0.0.120/255.255.255.255 - IP:10.0.0.121/255.255.255.255 - IP:10.0.0.122/255.255.255.255 - IP:10.0.0.123/255.255.255.255 - IP:10.0.0.124/255.255.255.255 - IP:10.0.0.125/255.255.255.255 - IP:10.0.0.126/255.255.255.255 - IP:10.0.0.127/255.255.255.255 - IP:10.0.0.128/255.255.255.255 - IP:10.0.0.129/255.255.255.255 - IP:10.0.0.130/255.255.255.255 - IP:10.0.0.131/255.255.255.255 - IP:10.0.0.132/255.255.255.255 - IP:10.0.0.133/255.255.255.255 - IP:10.0.0.134/255.255.255.255 - IP:10.0.0.135/255.255.255.255 - IP:10.0.0.136/255.255.255.255 - IP:10.0.0.137/255.255.255.255 - IP:10.0.0.138/255.255.255.255 - IP:10.0.0.139/255.255.255.255 - IP:10.0.0.140/255.255.255.255 - IP:10.0.0.141/255.255.255.255 - IP:10.0.0.142/255.255.255.255 - IP:10.0.0.143/255.255.255.255 - IP:10.0.0.144/255.255.255.255 - IP:10.0.0.145/255.255.255.255 - IP:10.0.0.146/255.255.255.255 - IP:10.0.0.147/255.255.255.255 - IP:10.0.0.148/255.255.255.255 - IP:10.0.0.149/255.255.255.255 - IP:10.0.0.150/255.255.255.255 - IP:10.0.0.151/255.255.255.255 - IP:10.0.0.152/255.255.255.255 - IP:10.0.0.153/255.255.255.255 - IP:10.0.0.154/255.255.255.255 - IP:10.0.0.155/255.255.255.255 - IP:10.0.0.156/255.255.255.255 - IP:10.0.0.157/255.255.255.255 - IP:10.0.0.158/255.255.255.255 - IP:10.0.0.159/255.255.255.255 - IP:10.0.0.160/255.255.255.255 - IP:10.0.0.161/255.255.255.255 - IP:10.0.0.162/255.255.255.255 - IP:10.0.0.163/255.255.255.255 - IP:10.0.0.164/255.255.255.255 - IP:10.0.0.165/255.255.255.255 - IP:10.0.0.166/255.255.255.255 - IP:10.0.0.167/255.255.255.255 - IP:10.0.0.168/255.255.255.255 - IP:10.0.0.169/255.255.255.255 - IP:10.0.0.170/255.255.255.255 - DirName: CN = t0 - DirName: CN = t1 - DirName: CN = t2 - DirName: CN = t3 - DirName: CN = t4 - DirName: CN = t5 - DirName: CN = t6 - DirName: CN = t7 - DirName: CN = t8 - DirName: CN = t9 - DirName: CN = t10 - DirName: CN = t11 - DirName: CN = t12 - DirName: CN = t13 - DirName: CN = t14 - DirName: CN = t15 - DirName: CN = t16 - DirName: CN = t17 - DirName: CN = t18 - DirName: CN = t19 - DirName: CN = t20 - DirName: CN = t21 - DirName: CN = t22 - DirName: CN = t23 - DirName: CN = t24 - DirName: CN = t25 - DirName: CN = t26 - DirName: CN = t27 - DirName: CN = t28 - DirName: CN = t29 - DirName: CN = t30 - DirName: CN = t31 - DirName: CN = t32 - DirName: CN = t33 - DirName: CN = t34 - DirName: CN = t35 - DirName: CN = t36 - DirName: CN = t37 - DirName: CN = t38 - DirName: CN = t39 - DirName: CN = t40 - DirName: CN = t41 - DirName: CN = t42 - DirName: CN = t43 - DirName: CN = t44 - DirName: CN = t45 - DirName: CN = t46 - DirName: CN = t47 - DirName: CN = t48 - DirName: CN = t49 - DirName: CN = t50 - DirName: CN = t51 - DirName: CN = t52 - DirName: CN = t53 - DirName: CN = t54 - DirName: CN = t55 - DirName: CN = t56 - DirName: CN = t57 - DirName: CN = t58 - DirName: CN = t59 - DirName: CN = t60 - DirName: CN = t61 - DirName: CN = t62 - DirName: CN = t63 - DirName: CN = t64 - DirName: CN = t65 - DirName: CN = t66 - DirName: CN = t67 - DirName: CN = t68 - DirName: CN = t69 - DirName: CN = t70 - DirName: CN = t71 - DirName: CN = t72 - DirName: CN = t73 - DirName: CN = t74 - DirName: CN = t75 - DirName: CN = t76 - DirName: CN = t77 - DirName: CN = t78 - DirName: CN = t79 - DirName: CN = t80 - DirName: CN = t81 - DirName: CN = t82 - DirName: CN = t83 - DirName: CN = t84 - DirName: CN = t85 - DirName: CN = t86 - DirName: CN = t87 - DirName: CN = t88 - DirName: CN = t89 - DirName: CN = t90 - DirName: CN = t91 - DirName: CN = t92 - DirName: CN = t93 - DirName: CN = t94 - DirName: CN = t95 - DirName: CN = t96 - DirName: CN = t97 - DirName: CN = t98 - DirName: CN = t99 - DirName: CN = t100 - DirName: CN = t101 - DirName: CN = t102 - DirName: CN = t103 - DirName: CN = t104 - DirName: CN = t105 - DirName: CN = t106 - DirName: CN = t107 - DirName: CN = t108 - DirName: CN = t109 - DirName: CN = t110 - DirName: CN = t111 - DirName: CN = t112 - DirName: CN = t113 - DirName: CN = t114 - DirName: CN = t115 - DirName: CN = t116 - DirName: CN = t117 - DirName: CN = t118 - DirName: CN = t119 - DirName: CN = t120 - DirName: CN = t121 - DirName: CN = t122 - DirName: CN = t123 - DirName: CN = t124 - DirName: CN = t125 - DirName: CN = t126 - DirName: CN = t127 - DirName: CN = t128 - DirName: CN = t129 - DirName: CN = t130 - DirName: CN = t131 - DirName: CN = t132 - DirName: CN = t133 - DirName: CN = t134 - DirName: CN = t135 - DirName: CN = t136 - DirName: CN = t137 - DirName: CN = t138 - DirName: CN = t139 - DirName: CN = t140 - DirName: CN = t141 - DirName: CN = t142 - DirName: CN = t143 - DirName: CN = t144 - DirName: CN = t145 - DirName: CN = t146 - DirName: CN = t147 - DirName: CN = t148 - DirName: CN = t149 - DirName: CN = t150 - DirName: CN = t151 - DirName: CN = t152 - DirName: CN = t153 - DirName: CN = t154 - DirName: CN = t155 - DirName: CN = t156 - DirName: CN = t157 - DirName: CN = t158 - DirName: CN = t159 - DirName: CN = t160 - DirName: CN = t161 - DirName: CN = t162 - DirName: CN = t163 - DirName: CN = t164 - DirName: CN = t165 - DirName: CN = t166 - DirName: CN = t167 - DirName: CN = t168 - DirName: CN = t169 - DirName: CN = t170 - DirName: CN = t171 - URI:http://test/0 - URI:http://test/1 - URI:http://test/2 - URI:http://test/3 - URI:http://test/4 - URI:http://test/5 - URI:http://test/6 - URI:http://test/7 - URI:http://test/8 - URI:http://test/9 - URI:http://test/10 - URI:http://test/11 - URI:http://test/12 - URI:http://test/13 - URI:http://test/14 - URI:http://test/15 - URI:http://test/16 - URI:http://test/17 - URI:http://test/18 - URI:http://test/19 - URI:http://test/20 - URI:http://test/21 - URI:http://test/22 - URI:http://test/23 - URI:http://test/24 - URI:http://test/25 - URI:http://test/26 - URI:http://test/27 - URI:http://test/28 - URI:http://test/29 - URI:http://test/30 - URI:http://test/31 - URI:http://test/32 - URI:http://test/33 - URI:http://test/34 - URI:http://test/35 - URI:http://test/36 - URI:http://test/37 - URI:http://test/38 - URI:http://test/39 - URI:http://test/40 - URI:http://test/41 - URI:http://test/42 - URI:http://test/43 - URI:http://test/44 - URI:http://test/45 - URI:http://test/46 - URI:http://test/47 - URI:http://test/48 - URI:http://test/49 - URI:http://test/50 - URI:http://test/51 - URI:http://test/52 - URI:http://test/53 - URI:http://test/54 - URI:http://test/55 - URI:http://test/56 - URI:http://test/57 - URI:http://test/58 - URI:http://test/59 - URI:http://test/60 - URI:http://test/61 - URI:http://test/62 - URI:http://test/63 - URI:http://test/64 - URI:http://test/65 - URI:http://test/66 - URI:http://test/67 - URI:http://test/68 - URI:http://test/69 - URI:http://test/70 - URI:http://test/71 - URI:http://test/72 - URI:http://test/73 - URI:http://test/74 - URI:http://test/75 - URI:http://test/76 - URI:http://test/77 - URI:http://test/78 - URI:http://test/79 - URI:http://test/80 - URI:http://test/81 - URI:http://test/82 - URI:http://test/83 - URI:http://test/84 - URI:http://test/85 - URI:http://test/86 - URI:http://test/87 - URI:http://test/88 - URI:http://test/89 - URI:http://test/90 - URI:http://test/91 - URI:http://test/92 - URI:http://test/93 - URI:http://test/94 - URI:http://test/95 - URI:http://test/96 - URI:http://test/97 - URI:http://test/98 - URI:http://test/99 - URI:http://test/100 - URI:http://test/101 - URI:http://test/102 - URI:http://test/103 - URI:http://test/104 - URI:http://test/105 - URI:http://test/106 - URI:http://test/107 - URI:http://test/108 - URI:http://test/109 - URI:http://test/110 - URI:http://test/111 - URI:http://test/112 - URI:http://test/113 - URI:http://test/114 - URI:http://test/115 - URI:http://test/116 - URI:http://test/117 - URI:http://test/118 - URI:http://test/119 - URI:http://test/120 - URI:http://test/121 - URI:http://test/122 - URI:http://test/123 - URI:http://test/124 - URI:http://test/125 - URI:http://test/126 - URI:http://test/127 - URI:http://test/128 - URI:http://test/129 - URI:http://test/130 - URI:http://test/131 - URI:http://test/132 - URI:http://test/133 - URI:http://test/134 - URI:http://test/135 - URI:http://test/136 - URI:http://test/137 - URI:http://test/138 - URI:http://test/139 - URI:http://test/140 - URI:http://test/141 - URI:http://test/142 - URI:http://test/143 - URI:http://test/144 - URI:http://test/145 - URI:http://test/146 - URI:http://test/147 - URI:http://test/148 - URI:http://test/149 - URI:http://test/150 - URI:http://test/151 - URI:http://test/152 - URI:http://test/153 - URI:http://test/154 - URI:http://test/155 - URI:http://test/156 - URI:http://test/157 - URI:http://test/158 - URI:http://test/159 - URI:http://test/160 - URI:http://test/161 - URI:http://test/162 - URI:http://test/163 - URI:http://test/164 - URI:http://test/165 - URI:http://test/166 - URI:http://test/167 - URI:http://test/168 - URI:http://test/169 - URI:http://test/170 - URI:http://test/171 - URI:http://test/172 - URI:http://test/173 - URI:http://test/174 - URI:http://test/175 - URI:http://test/176 - URI:http://test/177 - URI:http://test/178 - URI:http://test/179 - URI:http://test/180 - URI:http://test/181 - URI:http://test/182 - URI:http://test/183 - URI:http://test/184 - URI:http://test/185 - URI:http://test/186 - URI:http://test/187 - URI:http://test/188 - URI:http://test/189 - URI:http://test/190 - URI:http://test/191 - URI:http://test/192 - URI:http://test/193 - URI:http://test/194 - URI:http://test/195 - URI:http://test/196 - URI:http://test/197 - URI:http://test/198 - URI:http://test/199 - URI:http://test/200 - URI:http://test/201 - URI:http://test/202 - URI:http://test/203 - URI:http://test/204 - URI:http://test/205 - URI:http://test/206 - URI:http://test/207 - URI:http://test/208 - URI:http://test/209 - URI:http://test/210 - URI:http://test/211 - URI:http://test/212 - URI:http://test/213 - URI:http://test/214 - URI:http://test/215 - URI:http://test/216 - URI:http://test/217 - URI:http://test/218 - URI:http://test/219 - URI:http://test/220 - URI:http://test/221 - URI:http://test/222 - URI:http://test/223 - URI:http://test/224 - URI:http://test/225 - URI:http://test/226 - URI:http://test/227 - URI:http://test/228 - URI:http://test/229 - URI:http://test/230 - URI:http://test/231 - URI:http://test/232 - URI:http://test/233 - URI:http://test/234 - URI:http://test/235 - URI:http://test/236 - URI:http://test/237 - URI:http://test/238 - URI:http://test/239 - URI:http://test/240 - URI:http://test/241 - URI:http://test/242 - URI:http://test/243 - URI:http://test/244 - URI:http://test/245 - URI:http://test/246 - URI:http://test/247 - URI:http://test/248 - URI:http://test/249 - URI:http://test/250 - URI:http://test/251 - URI:http://test/252 - URI:http://test/253 - URI:http://test/254 - URI:http://test/255 - URI:http://test/256 - URI:http://test/257 - URI:http://test/258 - URI:http://test/259 - URI:http://test/260 - URI:http://test/261 - URI:http://test/262 - URI:http://test/263 - URI:http://test/264 - URI:http://test/265 - URI:http://test/266 - URI:http://test/267 - URI:http://test/268 - URI:http://test/269 - URI:http://test/270 - URI:http://test/271 - URI:http://test/272 - URI:http://test/273 - URI:http://test/274 - URI:http://test/275 - URI:http://test/276 - URI:http://test/277 - URI:http://test/278 - URI:http://test/279 - URI:http://test/280 - URI:http://test/281 - URI:http://test/282 - URI:http://test/283 - URI:http://test/284 - URI:http://test/285 - URI:http://test/286 - URI:http://test/287 - URI:http://test/288 - URI:http://test/289 - URI:http://test/290 - URI:http://test/291 - URI:http://test/292 - URI:http://test/293 - URI:http://test/294 - URI:http://test/295 - URI:http://test/296 - URI:http://test/297 - URI:http://test/298 - URI:http://test/299 - URI:http://test/300 - URI:http://test/301 - URI:http://test/302 - URI:http://test/303 - URI:http://test/304 - URI:http://test/305 - URI:http://test/306 - URI:http://test/307 - URI:http://test/308 - URI:http://test/309 - URI:http://test/310 - URI:http://test/311 - URI:http://test/312 - URI:http://test/313 - URI:http://test/314 - URI:http://test/315 - URI:http://test/316 - URI:http://test/317 - URI:http://test/318 - URI:http://test/319 - URI:http://test/320 - URI:http://test/321 - URI:http://test/322 - URI:http://test/323 - URI:http://test/324 - URI:http://test/325 - URI:http://test/326 - URI:http://test/327 - URI:http://test/328 - URI:http://test/329 - URI:http://test/330 - URI:http://test/331 - URI:http://test/332 - URI:http://test/333 - URI:http://test/334 - URI:http://test/335 - URI:http://test/336 - URI:http://test/337 - URI:http://test/338 - URI:http://test/339 - URI:http://test/340 - URI:http://test/341 - URI:http://test/342 - URI:http://test/343 - URI:http://test/344 - URI:http://test/345 - URI:http://test/346 - URI:http://test/347 - URI:http://test/348 - URI:http://test/349 - URI:http://test/350 - URI:http://test/351 - URI:http://test/352 - URI:http://test/353 - URI:http://test/354 - URI:http://test/355 - URI:http://test/356 - URI:http://test/357 - URI:http://test/358 - URI:http://test/359 - URI:http://test/360 - URI:http://test/361 - URI:http://test/362 - URI:http://test/363 - URI:http://test/364 - URI:http://test/365 - URI:http://test/366 - URI:http://test/367 - URI:http://test/368 - URI:http://test/369 - URI:http://test/370 - URI:http://test/371 - URI:http://test/372 - URI:http://test/373 - URI:http://test/374 - URI:http://test/375 - URI:http://test/376 - URI:http://test/377 - URI:http://test/378 - URI:http://test/379 - URI:http://test/380 - URI:http://test/381 - URI:http://test/382 - URI:http://test/383 - URI:http://test/384 - URI:http://test/385 - URI:http://test/386 - URI:http://test/387 - URI:http://test/388 - URI:http://test/389 - URI:http://test/390 - URI:http://test/391 - URI:http://test/392 - URI:http://test/393 - URI:http://test/394 - URI:http://test/395 - URI:http://test/396 - URI:http://test/397 - URI:http://test/398 - URI:http://test/399 - URI:http://test/400 - URI:http://test/401 - URI:http://test/402 - URI:http://test/403 - URI:http://test/404 - URI:http://test/405 - URI:http://test/406 - URI:http://test/407 - URI:http://test/408 - URI:http://test/409 - URI:http://test/410 - URI:http://test/411 - URI:http://test/412 - URI:http://test/413 - URI:http://test/414 - URI:http://test/415 - URI:http://test/416 - URI:http://test/417 - URI:http://test/418 - URI:http://test/419 - URI:http://test/420 - URI:http://test/421 - URI:http://test/422 - URI:http://test/423 - URI:http://test/424 - URI:http://test/425 - URI:http://test/426 - URI:http://test/427 - URI:http://test/428 - URI:http://test/429 - URI:http://test/430 - URI:http://test/431 - URI:http://test/432 - URI:http://test/433 - URI:http://test/434 - URI:http://test/435 - URI:http://test/436 - URI:http://test/437 - URI:http://test/438 - URI:http://test/439 - URI:http://test/440 - URI:http://test/441 - URI:http://test/442 - URI:http://test/443 - URI:http://test/444 - URI:http://test/445 - URI:http://test/446 - URI:http://test/447 - URI:http://test/448 - URI:http://test/449 - URI:http://test/450 - URI:http://test/451 - URI:http://test/452 - URI:http://test/453 - URI:http://test/454 - URI:http://test/455 - URI:http://test/456 - URI:http://test/457 - URI:http://test/458 - URI:http://test/459 - URI:http://test/460 - URI:http://test/461 - URI:http://test/462 - URI:http://test/463 - URI:http://test/464 - URI:http://test/465 - URI:http://test/466 - URI:http://test/467 - URI:http://test/468 - URI:http://test/469 - URI:http://test/470 - URI:http://test/471 - URI:http://test/472 - URI:http://test/473 - URI:http://test/474 - URI:http://test/475 - URI:http://test/476 - URI:http://test/477 - URI:http://test/478 - URI:http://test/479 - URI:http://test/480 - URI:http://test/481 - URI:http://test/482 - URI:http://test/483 - URI:http://test/484 - URI:http://test/485 - URI:http://test/486 - URI:http://test/487 - URI:http://test/488 - URI:http://test/489 - URI:http://test/490 - URI:http://test/491 - URI:http://test/492 - URI:http://test/493 - URI:http://test/494 - URI:http://test/495 - URI:http://test/496 - URI:http://test/497 - URI:http://test/498 - URI:http://test/499 - URI:http://test/500 - URI:http://test/501 - URI:http://test/502 - URI:http://test/503 - URI:http://test/504 - URI:http://test/505 - URI:http://test/506 - URI:http://test/507 - URI:http://test/508 - URI:http://test/509 - URI:http://test/510 - URI:http://test/511 - URI:http://test/512 - URI:http://test/513 - URI:http://test/514 - URI:http://test/515 - URI:http://test/516 - URI:http://test/517 - URI:http://test/518 - URI:http://test/519 - URI:http://test/520 - URI:http://test/521 - URI:http://test/522 - URI:http://test/523 - URI:http://test/524 - URI:http://test/525 - URI:http://test/526 - URI:http://test/527 - URI:http://test/528 - URI:http://test/529 - URI:http://test/530 - URI:http://test/531 - URI:http://test/532 - URI:http://test/533 - URI:http://test/534 - URI:http://test/535 - URI:http://test/536 - URI:http://test/537 - URI:http://test/538 - URI:http://test/539 - URI:http://test/540 - URI:http://test/541 - URI:http://test/542 - URI:http://test/543 - URI:http://test/544 - URI:http://test/545 - URI:http://test/546 - URI:http://test/547 - URI:http://test/548 - URI:http://test/549 - URI:http://test/550 - URI:http://test/551 - URI:http://test/552 - URI:http://test/553 - URI:http://test/554 - URI:http://test/555 - URI:http://test/556 - URI:http://test/557 - URI:http://test/558 - URI:http://test/559 - URI:http://test/560 - URI:http://test/561 - URI:http://test/562 - URI:http://test/563 - URI:http://test/564 - URI:http://test/565 - URI:http://test/566 - URI:http://test/567 - URI:http://test/568 - URI:http://test/569 - URI:http://test/570 - URI:http://test/571 - URI:http://test/572 - URI:http://test/573 - URI:http://test/574 - URI:http://test/575 - URI:http://test/576 - URI:http://test/577 - URI:http://test/578 - URI:http://test/579 - URI:http://test/580 - URI:http://test/581 - URI:http://test/582 - URI:http://test/583 - URI:http://test/584 - URI:http://test/585 - URI:http://test/586 - URI:http://test/587 - URI:http://test/588 - URI:http://test/589 - URI:http://test/590 - URI:http://test/591 - URI:http://test/592 - URI:http://test/593 - URI:http://test/594 - URI:http://test/595 - URI:http://test/596 - URI:http://test/597 - URI:http://test/598 - URI:http://test/599 - URI:http://test/600 - URI:http://test/601 - URI:http://test/602 - URI:http://test/603 - URI:http://test/604 - URI:http://test/605 - URI:http://test/606 - URI:http://test/607 - URI:http://test/608 - URI:http://test/609 - URI:http://test/610 - URI:http://test/611 - URI:http://test/612 - URI:http://test/613 - URI:http://test/614 - URI:http://test/615 - URI:http://test/616 - URI:http://test/617 - URI:http://test/618 - URI:http://test/619 - URI:http://test/620 - URI:http://test/621 - URI:http://test/622 - URI:http://test/623 - URI:http://test/624 - URI:http://test/625 - URI:http://test/626 - URI:http://test/627 - URI:http://test/628 - URI:http://test/629 - URI:http://test/630 - URI:http://test/631 - URI:http://test/632 - URI:http://test/633 - URI:http://test/634 - URI:http://test/635 - URI:http://test/636 - URI:http://test/637 - URI:http://test/638 - URI:http://test/639 - URI:http://test/640 - URI:http://test/641 - URI:http://test/642 - URI:http://test/643 - URI:http://test/644 - URI:http://test/645 - URI:http://test/646 - URI:http://test/647 - URI:http://test/648 - URI:http://test/649 - URI:http://test/650 - URI:http://test/651 - URI:http://test/652 - URI:http://test/653 - URI:http://test/654 - URI:http://test/655 - URI:http://test/656 - URI:http://test/657 - URI:http://test/658 - URI:http://test/659 - URI:http://test/660 - URI:http://test/661 - URI:http://test/662 - URI:http://test/663 - URI:http://test/664 - URI:http://test/665 - URI:http://test/666 - URI:http://test/667 - URI:http://test/668 - URI:http://test/669 - URI:http://test/670 - URI:http://test/671 - URI:http://test/672 - URI:http://test/673 - URI:http://test/674 - URI:http://test/675 - URI:http://test/676 - URI:http://test/677 - URI:http://test/678 - URI:http://test/679 - URI:http://test/680 - URI:http://test/681 - URI:http://test/682 - URI:http://test/683 - URI:http://test/684 - URI:http://test/685 - URI:http://test/686 - URI:http://test/687 - URI:http://test/688 - URI:http://test/689 - URI:http://test/690 - URI:http://test/691 - URI:http://test/692 - URI:http://test/693 - URI:http://test/694 - URI:http://test/695 - URI:http://test/696 - URI:http://test/697 - URI:http://test/698 - URI:http://test/699 - URI:http://test/700 - URI:http://test/701 - URI:http://test/702 - URI:http://test/703 - URI:http://test/704 - URI:http://test/705 - URI:http://test/706 - URI:http://test/707 - URI:http://test/708 - URI:http://test/709 - URI:http://test/710 - URI:http://test/711 - URI:http://test/712 - URI:http://test/713 - URI:http://test/714 - URI:http://test/715 - URI:http://test/716 - URI:http://test/717 - URI:http://test/718 - URI:http://test/719 - URI:http://test/720 - URI:http://test/721 - URI:http://test/722 - URI:http://test/723 - URI:http://test/724 - URI:http://test/725 - URI:http://test/726 - URI:http://test/727 - URI:http://test/728 - URI:http://test/729 - URI:http://test/730 - URI:http://test/731 - URI:http://test/732 - URI:http://test/733 - URI:http://test/734 - URI:http://test/735 - URI:http://test/736 - URI:http://test/737 - URI:http://test/738 - URI:http://test/739 - URI:http://test/740 - URI:http://test/741 - URI:http://test/742 - URI:http://test/743 - URI:http://test/744 - URI:http://test/745 - URI:http://test/746 - URI:http://test/747 - URI:http://test/748 - URI:http://test/749 - URI:http://test/750 - URI:http://test/751 - URI:http://test/752 - URI:http://test/753 - URI:http://test/754 - URI:http://test/755 - URI:http://test/756 - URI:http://test/757 - URI:http://test/758 - URI:http://test/759 - URI:http://test/760 - URI:http://test/761 - URI:http://test/762 - URI:http://test/763 - URI:http://test/764 - URI:http://test/765 - URI:http://test/766 - URI:http://test/767 - URI:http://test/768 - URI:http://test/769 - URI:http://test/770 - URI:http://test/771 - URI:http://test/772 - URI:http://test/773 - URI:http://test/774 - URI:http://test/775 - URI:http://test/776 - URI:http://test/777 - URI:http://test/778 - URI:http://test/779 - URI:http://test/780 - URI:http://test/781 - URI:http://test/782 - URI:http://test/783 - URI:http://test/784 - URI:http://test/785 - URI:http://test/786 - URI:http://test/787 - URI:http://test/788 - URI:http://test/789 - URI:http://test/790 - URI:http://test/791 - URI:http://test/792 - URI:http://test/793 - URI:http://test/794 - URI:http://test/795 - URI:http://test/796 - URI:http://test/797 - URI:http://test/798 - URI:http://test/799 - URI:http://test/800 - URI:http://test/801 - URI:http://test/802 - URI:http://test/803 - URI:http://test/804 - URI:http://test/805 - URI:http://test/806 - URI:http://test/807 - URI:http://test/808 - URI:http://test/809 - URI:http://test/810 - URI:http://test/811 - URI:http://test/812 - URI:http://test/813 - URI:http://test/814 - URI:http://test/815 - URI:http://test/816 - URI:http://test/817 - URI:http://test/818 - URI:http://test/819 - URI:http://test/820 - URI:http://test/821 - URI:http://test/822 - URI:http://test/823 - URI:http://test/824 - URI:http://test/825 - URI:http://test/826 - URI:http://test/827 - URI:http://test/828 - URI:http://test/829 - URI:http://test/830 - URI:http://test/831 - URI:http://test/832 - URI:http://test/833 - URI:http://test/834 - URI:http://test/835 - URI:http://test/836 - URI:http://test/837 - URI:http://test/838 - URI:http://test/839 - URI:http://test/840 - URI:http://test/841 - URI:http://test/842 - URI:http://test/843 - URI:http://test/844 - URI:http://test/845 - URI:http://test/846 - URI:http://test/847 - URI:http://test/848 - URI:http://test/849 - URI:http://test/850 - URI:http://test/851 - URI:http://test/852 - URI:http://test/853 - URI:http://test/854 - URI:http://test/855 - URI:http://test/856 - URI:http://test/857 - URI:http://test/858 - URI:http://test/859 - URI:http://test/860 - URI:http://test/861 - URI:http://test/862 - URI:http://test/863 - URI:http://test/864 - URI:http://test/865 - URI:http://test/866 - URI:http://test/867 - URI:http://test/868 - URI:http://test/869 - URI:http://test/870 - URI:http://test/871 - URI:http://test/872 - URI:http://test/873 - URI:http://test/874 - URI:http://test/875 - URI:http://test/876 - URI:http://test/877 - URI:http://test/878 - URI:http://test/879 - URI:http://test/880 - URI:http://test/881 - URI:http://test/882 - URI:http://test/883 - URI:http://test/884 - URI:http://test/885 - URI:http://test/886 - URI:http://test/887 - URI:http://test/888 - URI:http://test/889 - URI:http://test/890 - URI:http://test/891 - URI:http://test/892 - URI:http://test/893 - URI:http://test/894 - URI:http://test/895 - URI:http://test/896 - URI:http://test/897 - URI:http://test/898 - URI:http://test/899 - URI:http://test/900 - URI:http://test/901 - URI:http://test/902 - URI:http://test/903 - URI:http://test/904 - URI:http://test/905 - URI:http://test/906 - URI:http://test/907 - URI:http://test/908 - URI:http://test/909 - URI:http://test/910 - URI:http://test/911 - URI:http://test/912 - URI:http://test/913 - URI:http://test/914 - URI:http://test/915 - URI:http://test/916 - URI:http://test/917 - URI:http://test/918 - URI:http://test/919 - URI:http://test/920 - URI:http://test/921 - URI:http://test/922 - URI:http://test/923 - URI:http://test/924 - URI:http://test/925 - URI:http://test/926 - URI:http://test/927 - URI:http://test/928 - URI:http://test/929 - URI:http://test/930 - URI:http://test/931 - URI:http://test/932 - URI:http://test/933 - URI:http://test/934 - URI:http://test/935 - URI:http://test/936 - URI:http://test/937 - URI:http://test/938 - URI:http://test/939 - URI:http://test/940 - URI:http://test/941 - URI:http://test/942 - URI:http://test/943 - URI:http://test/944 - URI:http://test/945 - URI:http://test/946 - URI:http://test/947 - URI:http://test/948 - URI:http://test/949 - URI:http://test/950 - URI:http://test/951 - URI:http://test/952 - URI:http://test/953 - URI:http://test/954 - URI:http://test/955 - URI:http://test/956 - URI:http://test/957 - URI:http://test/958 - URI:http://test/959 - URI:http://test/960 - URI:http://test/961 - URI:http://test/962 - URI:http://test/963 - URI:http://test/964 - URI:http://test/965 - URI:http://test/966 - URI:http://test/967 - URI:http://test/968 - URI:http://test/969 - URI:http://test/970 - URI:http://test/971 - URI:http://test/972 - URI:http://test/973 - URI:http://test/974 - URI:http://test/975 - URI:http://test/976 - URI:http://test/977 - URI:http://test/978 - URI:http://test/979 - URI:http://test/980 - URI:http://test/981 - URI:http://test/982 - URI:http://test/983 - URI:http://test/984 - URI:http://test/985 - URI:http://test/986 - URI:http://test/987 - URI:http://test/988 - URI:http://test/989 - URI:http://test/990 - URI:http://test/991 - URI:http://test/992 - URI:http://test/993 - URI:http://test/994 - URI:http://test/995 - URI:http://test/996 - URI:http://test/997 - URI:http://test/998 - URI:http://test/999 - URI:http://test/1000 - URI:http://test/1001 - URI:http://test/1002 - URI:http://test/1003 - URI:http://test/1004 - URI:http://test/1005 - URI:http://test/1006 - URI:http://test/1007 - URI:http://test/1008 - URI:http://test/1009 - URI:http://test/1010 - URI:http://test/1011 - URI:http://test/1012 - URI:http://test/1013 - URI:http://test/1014 - URI:http://test/1015 - URI:http://test/1016 - URI:http://test/1017 - URI:http://test/1018 - URI:http://test/1019 - URI:http://test/1020 - URI:http://test/1021 - URI:http://test/1022 - URI:http://test/1023 - URI:http://test/1024 - Excluded: - DNS:x0.test - DNS:x1.test - DNS:x2.test - DNS:x3.test - DNS:x4.test - DNS:x5.test - DNS:x6.test - DNS:x7.test - DNS:x8.test - DNS:x9.test - DNS:x10.test - DNS:x11.test - DNS:x12.test - DNS:x13.test - DNS:x14.test - DNS:x15.test - DNS:x16.test - DNS:x17.test - DNS:x18.test - DNS:x19.test - DNS:x20.test - DNS:x21.test - DNS:x22.test - DNS:x23.test - DNS:x24.test - DNS:x25.test - DNS:x26.test - DNS:x27.test - DNS:x28.test - DNS:x29.test - DNS:x30.test - DNS:x31.test - DNS:x32.test - DNS:x33.test - DNS:x34.test - DNS:x35.test - DNS:x36.test - DNS:x37.test - DNS:x38.test - DNS:x39.test - DNS:x40.test - DNS:x41.test - DNS:x42.test - DNS:x43.test - DNS:x44.test - DNS:x45.test - DNS:x46.test - DNS:x47.test - DNS:x48.test - DNS:x49.test - DNS:x50.test - DNS:x51.test - DNS:x52.test - DNS:x53.test - DNS:x54.test - DNS:x55.test - DNS:x56.test - DNS:x57.test - DNS:x58.test - DNS:x59.test - DNS:x60.test - DNS:x61.test - DNS:x62.test - DNS:x63.test - DNS:x64.test - DNS:x65.test - DNS:x66.test - DNS:x67.test - DNS:x68.test - DNS:x69.test - DNS:x70.test - DNS:x71.test - DNS:x72.test - DNS:x73.test - DNS:x74.test - DNS:x75.test - DNS:x76.test - DNS:x77.test - DNS:x78.test - DNS:x79.test - DNS:x80.test - DNS:x81.test - DNS:x82.test - DNS:x83.test - DNS:x84.test - DNS:x85.test - DNS:x86.test - DNS:x87.test - DNS:x88.test - DNS:x89.test - DNS:x90.test - DNS:x91.test - DNS:x92.test - DNS:x93.test - DNS:x94.test - DNS:x95.test - DNS:x96.test - DNS:x97.test - DNS:x98.test - DNS:x99.test - DNS:x100.test - DNS:x101.test - DNS:x102.test - DNS:x103.test - DNS:x104.test - DNS:x105.test - DNS:x106.test - DNS:x107.test - DNS:x108.test - DNS:x109.test - DNS:x110.test - DNS:x111.test - DNS:x112.test - DNS:x113.test - DNS:x114.test - DNS:x115.test - DNS:x116.test - DNS:x117.test - DNS:x118.test - DNS:x119.test - DNS:x120.test - DNS:x121.test - DNS:x122.test - DNS:x123.test - DNS:x124.test - DNS:x125.test - DNS:x126.test - DNS:x127.test - DNS:x128.test - DNS:x129.test - DNS:x130.test - DNS:x131.test - DNS:x132.test - DNS:x133.test - DNS:x134.test - DNS:x135.test - DNS:x136.test - DNS:x137.test - DNS:x138.test - DNS:x139.test - DNS:x140.test - DNS:x141.test - DNS:x142.test - DNS:x143.test - DNS:x144.test - DNS:x145.test - DNS:x146.test - DNS:x147.test - DNS:x148.test - DNS:x149.test - DNS:x150.test - DNS:x151.test - DNS:x152.test - DNS:x153.test - DNS:x154.test - DNS:x155.test - DNS:x156.test - DNS:x157.test - DNS:x158.test - DNS:x159.test - DNS:x160.test - DNS:x161.test - DNS:x162.test - DNS:x163.test - DNS:x164.test - DNS:x165.test - DNS:x166.test - DNS:x167.test - DNS:x168.test - DNS:x169.test - IP:11.0.0.0/255.255.255.255 - IP:11.0.0.1/255.255.255.255 - IP:11.0.0.2/255.255.255.255 - IP:11.0.0.3/255.255.255.255 - IP:11.0.0.4/255.255.255.255 - IP:11.0.0.5/255.255.255.255 - IP:11.0.0.6/255.255.255.255 - IP:11.0.0.7/255.255.255.255 - IP:11.0.0.8/255.255.255.255 - IP:11.0.0.9/255.255.255.255 - IP:11.0.0.10/255.255.255.255 - IP:11.0.0.11/255.255.255.255 - IP:11.0.0.12/255.255.255.255 - IP:11.0.0.13/255.255.255.255 - IP:11.0.0.14/255.255.255.255 - IP:11.0.0.15/255.255.255.255 - IP:11.0.0.16/255.255.255.255 - IP:11.0.0.17/255.255.255.255 - IP:11.0.0.18/255.255.255.255 - IP:11.0.0.19/255.255.255.255 - IP:11.0.0.20/255.255.255.255 - IP:11.0.0.21/255.255.255.255 - IP:11.0.0.22/255.255.255.255 - IP:11.0.0.23/255.255.255.255 - IP:11.0.0.24/255.255.255.255 - IP:11.0.0.25/255.255.255.255 - IP:11.0.0.26/255.255.255.255 - IP:11.0.0.27/255.255.255.255 - IP:11.0.0.28/255.255.255.255 - IP:11.0.0.29/255.255.255.255 - IP:11.0.0.30/255.255.255.255 - IP:11.0.0.31/255.255.255.255 - IP:11.0.0.32/255.255.255.255 - IP:11.0.0.33/255.255.255.255 - IP:11.0.0.34/255.255.255.255 - IP:11.0.0.35/255.255.255.255 - IP:11.0.0.36/255.255.255.255 - IP:11.0.0.37/255.255.255.255 - IP:11.0.0.38/255.255.255.255 - IP:11.0.0.39/255.255.255.255 - IP:11.0.0.40/255.255.255.255 - IP:11.0.0.41/255.255.255.255 - IP:11.0.0.42/255.255.255.255 - IP:11.0.0.43/255.255.255.255 - IP:11.0.0.44/255.255.255.255 - IP:11.0.0.45/255.255.255.255 - IP:11.0.0.46/255.255.255.255 - IP:11.0.0.47/255.255.255.255 - IP:11.0.0.48/255.255.255.255 - IP:11.0.0.49/255.255.255.255 - IP:11.0.0.50/255.255.255.255 - IP:11.0.0.51/255.255.255.255 - IP:11.0.0.52/255.255.255.255 - IP:11.0.0.53/255.255.255.255 - IP:11.0.0.54/255.255.255.255 - IP:11.0.0.55/255.255.255.255 - IP:11.0.0.56/255.255.255.255 - IP:11.0.0.57/255.255.255.255 - IP:11.0.0.58/255.255.255.255 - IP:11.0.0.59/255.255.255.255 - IP:11.0.0.60/255.255.255.255 - IP:11.0.0.61/255.255.255.255 - IP:11.0.0.62/255.255.255.255 - IP:11.0.0.63/255.255.255.255 - IP:11.0.0.64/255.255.255.255 - IP:11.0.0.65/255.255.255.255 - IP:11.0.0.66/255.255.255.255 - IP:11.0.0.67/255.255.255.255 - IP:11.0.0.68/255.255.255.255 - IP:11.0.0.69/255.255.255.255 - IP:11.0.0.70/255.255.255.255 - IP:11.0.0.71/255.255.255.255 - IP:11.0.0.72/255.255.255.255 - IP:11.0.0.73/255.255.255.255 - IP:11.0.0.74/255.255.255.255 - IP:11.0.0.75/255.255.255.255 - IP:11.0.0.76/255.255.255.255 - IP:11.0.0.77/255.255.255.255 - IP:11.0.0.78/255.255.255.255 - IP:11.0.0.79/255.255.255.255 - IP:11.0.0.80/255.255.255.255 - IP:11.0.0.81/255.255.255.255 - IP:11.0.0.82/255.255.255.255 - IP:11.0.0.83/255.255.255.255 - IP:11.0.0.84/255.255.255.255 - IP:11.0.0.85/255.255.255.255 - IP:11.0.0.86/255.255.255.255 - IP:11.0.0.87/255.255.255.255 - IP:11.0.0.88/255.255.255.255 - IP:11.0.0.89/255.255.255.255 - IP:11.0.0.90/255.255.255.255 - IP:11.0.0.91/255.255.255.255 - IP:11.0.0.92/255.255.255.255 - IP:11.0.0.93/255.255.255.255 - IP:11.0.0.94/255.255.255.255 - IP:11.0.0.95/255.255.255.255 - IP:11.0.0.96/255.255.255.255 - IP:11.0.0.97/255.255.255.255 - IP:11.0.0.98/255.255.255.255 - IP:11.0.0.99/255.255.255.255 - IP:11.0.0.100/255.255.255.255 - IP:11.0.0.101/255.255.255.255 - IP:11.0.0.102/255.255.255.255 - IP:11.0.0.103/255.255.255.255 - IP:11.0.0.104/255.255.255.255 - IP:11.0.0.105/255.255.255.255 - IP:11.0.0.106/255.255.255.255 - IP:11.0.0.107/255.255.255.255 - IP:11.0.0.108/255.255.255.255 - IP:11.0.0.109/255.255.255.255 - IP:11.0.0.110/255.255.255.255 - IP:11.0.0.111/255.255.255.255 - IP:11.0.0.112/255.255.255.255 - IP:11.0.0.113/255.255.255.255 - IP:11.0.0.114/255.255.255.255 - IP:11.0.0.115/255.255.255.255 - IP:11.0.0.116/255.255.255.255 - IP:11.0.0.117/255.255.255.255 - IP:11.0.0.118/255.255.255.255 - IP:11.0.0.119/255.255.255.255 - IP:11.0.0.120/255.255.255.255 - IP:11.0.0.121/255.255.255.255 - IP:11.0.0.122/255.255.255.255 - IP:11.0.0.123/255.255.255.255 - IP:11.0.0.124/255.255.255.255 - IP:11.0.0.125/255.255.255.255 - IP:11.0.0.126/255.255.255.255 - IP:11.0.0.127/255.255.255.255 - IP:11.0.0.128/255.255.255.255 - IP:11.0.0.129/255.255.255.255 - IP:11.0.0.130/255.255.255.255 - IP:11.0.0.131/255.255.255.255 - IP:11.0.0.132/255.255.255.255 - IP:11.0.0.133/255.255.255.255 - IP:11.0.0.134/255.255.255.255 - IP:11.0.0.135/255.255.255.255 - IP:11.0.0.136/255.255.255.255 - IP:11.0.0.137/255.255.255.255 - IP:11.0.0.138/255.255.255.255 - IP:11.0.0.139/255.255.255.255 - IP:11.0.0.140/255.255.255.255 - IP:11.0.0.141/255.255.255.255 - IP:11.0.0.142/255.255.255.255 - IP:11.0.0.143/255.255.255.255 - IP:11.0.0.144/255.255.255.255 - IP:11.0.0.145/255.255.255.255 - IP:11.0.0.146/255.255.255.255 - IP:11.0.0.147/255.255.255.255 - IP:11.0.0.148/255.255.255.255 - IP:11.0.0.149/255.255.255.255 - IP:11.0.0.150/255.255.255.255 - IP:11.0.0.151/255.255.255.255 - IP:11.0.0.152/255.255.255.255 - IP:11.0.0.153/255.255.255.255 - IP:11.0.0.154/255.255.255.255 - IP:11.0.0.155/255.255.255.255 - IP:11.0.0.156/255.255.255.255 - IP:11.0.0.157/255.255.255.255 - IP:11.0.0.158/255.255.255.255 - IP:11.0.0.159/255.255.255.255 - IP:11.0.0.160/255.255.255.255 - IP:11.0.0.161/255.255.255.255 - IP:11.0.0.162/255.255.255.255 - IP:11.0.0.163/255.255.255.255 - IP:11.0.0.164/255.255.255.255 - IP:11.0.0.165/255.255.255.255 - IP:11.0.0.166/255.255.255.255 - IP:11.0.0.167/255.255.255.255 - IP:11.0.0.168/255.255.255.255 - IP:11.0.0.169/255.255.255.255 - DirName: CN = x0 - DirName: CN = x1 - DirName: CN = x2 - DirName: CN = x3 - DirName: CN = x4 - DirName: CN = x5 - DirName: CN = x6 - DirName: CN = x7 - DirName: CN = x8 - DirName: CN = x9 - DirName: CN = x10 - DirName: CN = x11 - DirName: CN = x12 - DirName: CN = x13 - DirName: CN = x14 - DirName: CN = x15 - DirName: CN = x16 - DirName: CN = x17 - DirName: CN = x18 - DirName: CN = x19 - DirName: CN = x20 - DirName: CN = x21 - DirName: CN = x22 - DirName: CN = x23 - DirName: CN = x24 - DirName: CN = x25 - DirName: CN = x26 - DirName: CN = x27 - DirName: CN = x28 - DirName: CN = x29 - DirName: CN = x30 - DirName: CN = x31 - DirName: CN = x32 - DirName: CN = x33 - DirName: CN = x34 - DirName: CN = x35 - DirName: CN = x36 - DirName: CN = x37 - DirName: CN = x38 - DirName: CN = x39 - DirName: CN = x40 - DirName: CN = x41 - DirName: CN = x42 - DirName: CN = x43 - DirName: CN = x44 - DirName: CN = x45 - DirName: CN = x46 - DirName: CN = x47 - DirName: CN = x48 - DirName: CN = x49 - DirName: CN = x50 - DirName: CN = x51 - DirName: CN = x52 - DirName: CN = x53 - DirName: CN = x54 - DirName: CN = x55 - DirName: CN = x56 - DirName: CN = x57 - DirName: CN = x58 - DirName: CN = x59 - DirName: CN = x60 - DirName: CN = x61 - DirName: CN = x62 - DirName: CN = x63 - DirName: CN = x64 - DirName: CN = x65 - DirName: CN = x66 - DirName: CN = x67 - DirName: CN = x68 - DirName: CN = x69 - DirName: CN = x70 - DirName: CN = x71 - DirName: CN = x72 - DirName: CN = x73 - DirName: CN = x74 - DirName: CN = x75 - DirName: CN = x76 - DirName: CN = x77 - DirName: CN = x78 - DirName: CN = x79 - DirName: CN = x80 - DirName: CN = x81 - DirName: CN = x82 - DirName: CN = x83 - DirName: CN = x84 - DirName: CN = x85 - DirName: CN = x86 - DirName: CN = x87 - DirName: CN = x88 - DirName: CN = x89 - DirName: CN = x90 - DirName: CN = x91 - DirName: CN = x92 - DirName: CN = x93 - DirName: CN = x94 - DirName: CN = x95 - DirName: CN = x96 - DirName: CN = x97 - DirName: CN = x98 - DirName: CN = x99 - DirName: CN = x100 - DirName: CN = x101 - DirName: CN = x102 - DirName: CN = x103 - DirName: CN = x104 - DirName: CN = x105 - DirName: CN = x106 - DirName: CN = x107 - DirName: CN = x108 - DirName: CN = x109 - DirName: CN = x110 - DirName: CN = x111 - DirName: CN = x112 - DirName: CN = x113 - DirName: CN = x114 - DirName: CN = x115 - DirName: CN = x116 - DirName: CN = x117 - DirName: CN = x118 - DirName: CN = x119 - DirName: CN = x120 - DirName: CN = x121 - DirName: CN = x122 - DirName: CN = x123 - DirName: CN = x124 - DirName: CN = x125 - DirName: CN = x126 - DirName: CN = x127 - DirName: CN = x128 - DirName: CN = x129 - DirName: CN = x130 - DirName: CN = x131 - DirName: CN = x132 - DirName: CN = x133 - DirName: CN = x134 - DirName: CN = x135 - DirName: CN = x136 - DirName: CN = x137 - DirName: CN = x138 - DirName: CN = x139 - DirName: CN = x140 - DirName: CN = x141 - DirName: CN = x142 - DirName: CN = x143 - DirName: CN = x144 - DirName: CN = x145 - DirName: CN = x146 - DirName: CN = x147 - DirName: CN = x148 - DirName: CN = x149 - DirName: CN = x150 - DirName: CN = x151 - DirName: CN = x152 - DirName: CN = x153 - DirName: CN = x154 - DirName: CN = x155 - DirName: CN = x156 - DirName: CN = x157 - DirName: CN = x158 - DirName: CN = x159 - DirName: CN = x160 - DirName: CN = x161 - DirName: CN = x162 - DirName: CN = x163 - DirName: CN = x164 - DirName: CN = x165 - DirName: CN = x166 - DirName: CN = x167 - DirName: CN = x168 - DirName: CN = x169 - URI:http://xest/0 - URI:http://xest/1 - URI:http://xest/2 - URI:http://xest/3 - URI:http://xest/4 - URI:http://xest/5 - URI:http://xest/6 - URI:http://xest/7 - URI:http://xest/8 - URI:http://xest/9 - URI:http://xest/10 - URI:http://xest/11 - URI:http://xest/12 - URI:http://xest/13 - URI:http://xest/14 - URI:http://xest/15 - URI:http://xest/16 - URI:http://xest/17 - URI:http://xest/18 - URI:http://xest/19 - URI:http://xest/20 - URI:http://xest/21 - URI:http://xest/22 - URI:http://xest/23 - URI:http://xest/24 - URI:http://xest/25 - URI:http://xest/26 - URI:http://xest/27 - URI:http://xest/28 - URI:http://xest/29 - URI:http://xest/30 - URI:http://xest/31 - URI:http://xest/32 - URI:http://xest/33 - URI:http://xest/34 - URI:http://xest/35 - URI:http://xest/36 - URI:http://xest/37 - URI:http://xest/38 - URI:http://xest/39 - URI:http://xest/40 - URI:http://xest/41 - URI:http://xest/42 - URI:http://xest/43 - URI:http://xest/44 - URI:http://xest/45 - URI:http://xest/46 - URI:http://xest/47 - URI:http://xest/48 - URI:http://xest/49 - URI:http://xest/50 - URI:http://xest/51 - URI:http://xest/52 - URI:http://xest/53 - URI:http://xest/54 - URI:http://xest/55 - URI:http://xest/56 - URI:http://xest/57 - URI:http://xest/58 - URI:http://xest/59 - URI:http://xest/60 - URI:http://xest/61 - URI:http://xest/62 - URI:http://xest/63 - URI:http://xest/64 - URI:http://xest/65 - URI:http://xest/66 - URI:http://xest/67 - URI:http://xest/68 - URI:http://xest/69 - URI:http://xest/70 - URI:http://xest/71 - URI:http://xest/72 - URI:http://xest/73 - URI:http://xest/74 - URI:http://xest/75 - URI:http://xest/76 - URI:http://xest/77 - URI:http://xest/78 - URI:http://xest/79 - URI:http://xest/80 - URI:http://xest/81 - URI:http://xest/82 - URI:http://xest/83 - URI:http://xest/84 - URI:http://xest/85 - URI:http://xest/86 - URI:http://xest/87 - URI:http://xest/88 - URI:http://xest/89 - URI:http://xest/90 - URI:http://xest/91 - URI:http://xest/92 - URI:http://xest/93 - URI:http://xest/94 - URI:http://xest/95 - URI:http://xest/96 - URI:http://xest/97 - URI:http://xest/98 - URI:http://xest/99 - URI:http://xest/100 - URI:http://xest/101 - URI:http://xest/102 - URI:http://xest/103 - URI:http://xest/104 - URI:http://xest/105 - URI:http://xest/106 - URI:http://xest/107 - URI:http://xest/108 - URI:http://xest/109 - URI:http://xest/110 - URI:http://xest/111 - URI:http://xest/112 - URI:http://xest/113 - URI:http://xest/114 - URI:http://xest/115 - URI:http://xest/116 - URI:http://xest/117 - URI:http://xest/118 - URI:http://xest/119 - URI:http://xest/120 - URI:http://xest/121 - URI:http://xest/122 - URI:http://xest/123 - URI:http://xest/124 - URI:http://xest/125 - URI:http://xest/126 - URI:http://xest/127 - URI:http://xest/128 - URI:http://xest/129 - URI:http://xest/130 - URI:http://xest/131 - URI:http://xest/132 - URI:http://xest/133 - URI:http://xest/134 - URI:http://xest/135 - URI:http://xest/136 - URI:http://xest/137 - URI:http://xest/138 - URI:http://xest/139 - URI:http://xest/140 - URI:http://xest/141 - URI:http://xest/142 - URI:http://xest/143 - URI:http://xest/144 - URI:http://xest/145 - URI:http://xest/146 - URI:http://xest/147 - URI:http://xest/148 - URI:http://xest/149 - URI:http://xest/150 - URI:http://xest/151 - URI:http://xest/152 - URI:http://xest/153 - URI:http://xest/154 - URI:http://xest/155 - URI:http://xest/156 - URI:http://xest/157 - URI:http://xest/158 - URI:http://xest/159 - URI:http://xest/160 - URI:http://xest/161 - URI:http://xest/162 - URI:http://xest/163 - URI:http://xest/164 - URI:http://xest/165 - URI:http://xest/166 - URI:http://xest/167 - URI:http://xest/168 - URI:http://xest/169 - URI:http://xest/170 - URI:http://xest/171 - URI:http://xest/172 - URI:http://xest/173 - URI:http://xest/174 - URI:http://xest/175 - URI:http://xest/176 - URI:http://xest/177 - URI:http://xest/178 - URI:http://xest/179 - URI:http://xest/180 - URI:http://xest/181 - URI:http://xest/182 - URI:http://xest/183 - URI:http://xest/184 - URI:http://xest/185 - URI:http://xest/186 - URI:http://xest/187 - URI:http://xest/188 - URI:http://xest/189 - URI:http://xest/190 - URI:http://xest/191 - URI:http://xest/192 - URI:http://xest/193 - URI:http://xest/194 - URI:http://xest/195 - URI:http://xest/196 - URI:http://xest/197 - URI:http://xest/198 - URI:http://xest/199 - URI:http://xest/200 - URI:http://xest/201 - URI:http://xest/202 - URI:http://xest/203 - URI:http://xest/204 - URI:http://xest/205 - URI:http://xest/206 - URI:http://xest/207 - URI:http://xest/208 - URI:http://xest/209 - URI:http://xest/210 - URI:http://xest/211 - URI:http://xest/212 - URI:http://xest/213 - URI:http://xest/214 - URI:http://xest/215 - URI:http://xest/216 - URI:http://xest/217 - URI:http://xest/218 - URI:http://xest/219 - URI:http://xest/220 - URI:http://xest/221 - URI:http://xest/222 - URI:http://xest/223 - URI:http://xest/224 - URI:http://xest/225 - URI:http://xest/226 - URI:http://xest/227 - URI:http://xest/228 - URI:http://xest/229 - URI:http://xest/230 - URI:http://xest/231 - URI:http://xest/232 - URI:http://xest/233 - URI:http://xest/234 - URI:http://xest/235 - URI:http://xest/236 - URI:http://xest/237 - URI:http://xest/238 - URI:http://xest/239 - URI:http://xest/240 - URI:http://xest/241 - URI:http://xest/242 - URI:http://xest/243 - URI:http://xest/244 - URI:http://xest/245 - URI:http://xest/246 - URI:http://xest/247 - URI:http://xest/248 - URI:http://xest/249 - URI:http://xest/250 - URI:http://xest/251 - URI:http://xest/252 - URI:http://xest/253 - URI:http://xest/254 - URI:http://xest/255 - URI:http://xest/256 - URI:http://xest/257 - URI:http://xest/258 - URI:http://xest/259 - URI:http://xest/260 - URI:http://xest/261 - URI:http://xest/262 - URI:http://xest/263 - URI:http://xest/264 - URI:http://xest/265 - URI:http://xest/266 - URI:http://xest/267 - URI:http://xest/268 - URI:http://xest/269 - URI:http://xest/270 - URI:http://xest/271 - URI:http://xest/272 - URI:http://xest/273 - URI:http://xest/274 - URI:http://xest/275 - URI:http://xest/276 - URI:http://xest/277 - URI:http://xest/278 - URI:http://xest/279 - URI:http://xest/280 - URI:http://xest/281 - URI:http://xest/282 - URI:http://xest/283 - URI:http://xest/284 - URI:http://xest/285 - URI:http://xest/286 - URI:http://xest/287 - URI:http://xest/288 - URI:http://xest/289 - URI:http://xest/290 - URI:http://xest/291 - URI:http://xest/292 - URI:http://xest/293 - URI:http://xest/294 - URI:http://xest/295 - URI:http://xest/296 - URI:http://xest/297 - URI:http://xest/298 - URI:http://xest/299 - URI:http://xest/300 - URI:http://xest/301 - URI:http://xest/302 - URI:http://xest/303 - URI:http://xest/304 - URI:http://xest/305 - URI:http://xest/306 - URI:http://xest/307 - URI:http://xest/308 - URI:http://xest/309 - URI:http://xest/310 - URI:http://xest/311 - URI:http://xest/312 - URI:http://xest/313 - URI:http://xest/314 - URI:http://xest/315 - URI:http://xest/316 - URI:http://xest/317 - URI:http://xest/318 - URI:http://xest/319 - URI:http://xest/320 - URI:http://xest/321 - URI:http://xest/322 - URI:http://xest/323 - URI:http://xest/324 - URI:http://xest/325 - URI:http://xest/326 - URI:http://xest/327 - URI:http://xest/328 - URI:http://xest/329 - URI:http://xest/330 - URI:http://xest/331 - URI:http://xest/332 - URI:http://xest/333 - URI:http://xest/334 - URI:http://xest/335 - URI:http://xest/336 - URI:http://xest/337 - URI:http://xest/338 - URI:http://xest/339 - URI:http://xest/340 - URI:http://xest/341 - URI:http://xest/342 - URI:http://xest/343 - URI:http://xest/344 - URI:http://xest/345 - URI:http://xest/346 - URI:http://xest/347 - URI:http://xest/348 - URI:http://xest/349 - URI:http://xest/350 - URI:http://xest/351 - URI:http://xest/352 - URI:http://xest/353 - URI:http://xest/354 - URI:http://xest/355 - URI:http://xest/356 - URI:http://xest/357 - URI:http://xest/358 - URI:http://xest/359 - URI:http://xest/360 - URI:http://xest/361 - URI:http://xest/362 - URI:http://xest/363 - URI:http://xest/364 - URI:http://xest/365 - URI:http://xest/366 - URI:http://xest/367 - URI:http://xest/368 - URI:http://xest/369 - URI:http://xest/370 - URI:http://xest/371 - URI:http://xest/372 - URI:http://xest/373 - URI:http://xest/374 - URI:http://xest/375 - URI:http://xest/376 - URI:http://xest/377 - URI:http://xest/378 - URI:http://xest/379 - URI:http://xest/380 - URI:http://xest/381 - URI:http://xest/382 - URI:http://xest/383 - URI:http://xest/384 - URI:http://xest/385 - URI:http://xest/386 - URI:http://xest/387 - URI:http://xest/388 - URI:http://xest/389 - URI:http://xest/390 - URI:http://xest/391 - URI:http://xest/392 - URI:http://xest/393 - URI:http://xest/394 - URI:http://xest/395 - URI:http://xest/396 - URI:http://xest/397 - URI:http://xest/398 - URI:http://xest/399 - URI:http://xest/400 - URI:http://xest/401 - URI:http://xest/402 - URI:http://xest/403 - URI:http://xest/404 - URI:http://xest/405 - URI:http://xest/406 - URI:http://xest/407 - URI:http://xest/408 - URI:http://xest/409 - URI:http://xest/410 - URI:http://xest/411 - URI:http://xest/412 - URI:http://xest/413 - URI:http://xest/414 - URI:http://xest/415 - URI:http://xest/416 - URI:http://xest/417 - URI:http://xest/418 - URI:http://xest/419 - URI:http://xest/420 - URI:http://xest/421 - URI:http://xest/422 - URI:http://xest/423 - URI:http://xest/424 - URI:http://xest/425 - URI:http://xest/426 - URI:http://xest/427 - URI:http://xest/428 - URI:http://xest/429 - URI:http://xest/430 - URI:http://xest/431 - URI:http://xest/432 - URI:http://xest/433 - URI:http://xest/434 - URI:http://xest/435 - URI:http://xest/436 - URI:http://xest/437 - URI:http://xest/438 - URI:http://xest/439 - URI:http://xest/440 - URI:http://xest/441 - URI:http://xest/442 - URI:http://xest/443 - URI:http://xest/444 - URI:http://xest/445 - URI:http://xest/446 - URI:http://xest/447 - URI:http://xest/448 - URI:http://xest/449 - URI:http://xest/450 - URI:http://xest/451 - URI:http://xest/452 - URI:http://xest/453 - URI:http://xest/454 - URI:http://xest/455 - URI:http://xest/456 - URI:http://xest/457 - URI:http://xest/458 - URI:http://xest/459 - URI:http://xest/460 - URI:http://xest/461 - URI:http://xest/462 - URI:http://xest/463 - URI:http://xest/464 - URI:http://xest/465 - URI:http://xest/466 - URI:http://xest/467 - URI:http://xest/468 - URI:http://xest/469 - URI:http://xest/470 - URI:http://xest/471 - URI:http://xest/472 - URI:http://xest/473 - URI:http://xest/474 - URI:http://xest/475 - URI:http://xest/476 - URI:http://xest/477 - URI:http://xest/478 - URI:http://xest/479 - URI:http://xest/480 - URI:http://xest/481 - URI:http://xest/482 - URI:http://xest/483 - URI:http://xest/484 - URI:http://xest/485 - URI:http://xest/486 - URI:http://xest/487 - URI:http://xest/488 - URI:http://xest/489 - URI:http://xest/490 - URI:http://xest/491 - URI:http://xest/492 - URI:http://xest/493 - URI:http://xest/494 - URI:http://xest/495 - URI:http://xest/496 - URI:http://xest/497 - URI:http://xest/498 - URI:http://xest/499 - URI:http://xest/500 - URI:http://xest/501 - URI:http://xest/502 - URI:http://xest/503 - URI:http://xest/504 - URI:http://xest/505 - URI:http://xest/506 - URI:http://xest/507 - URI:http://xest/508 - URI:http://xest/509 - URI:http://xest/510 - URI:http://xest/511 - URI:http://xest/512 - URI:http://xest/513 - URI:http://xest/514 - URI:http://xest/515 - URI:http://xest/516 - URI:http://xest/517 - URI:http://xest/518 - URI:http://xest/519 - URI:http://xest/520 - URI:http://xest/521 - URI:http://xest/522 - URI:http://xest/523 - URI:http://xest/524 - URI:http://xest/525 - URI:http://xest/526 - URI:http://xest/527 - URI:http://xest/528 - URI:http://xest/529 - URI:http://xest/530 - URI:http://xest/531 - URI:http://xest/532 - URI:http://xest/533 - URI:http://xest/534 - URI:http://xest/535 - URI:http://xest/536 - URI:http://xest/537 - URI:http://xest/538 - URI:http://xest/539 - URI:http://xest/540 - URI:http://xest/541 - URI:http://xest/542 - URI:http://xest/543 - URI:http://xest/544 - URI:http://xest/545 - URI:http://xest/546 - URI:http://xest/547 - URI:http://xest/548 - URI:http://xest/549 - URI:http://xest/550 - URI:http://xest/551 - URI:http://xest/552 - URI:http://xest/553 - URI:http://xest/554 - URI:http://xest/555 - URI:http://xest/556 - URI:http://xest/557 - URI:http://xest/558 - URI:http://xest/559 - URI:http://xest/560 - URI:http://xest/561 - URI:http://xest/562 - URI:http://xest/563 - URI:http://xest/564 - URI:http://xest/565 - URI:http://xest/566 - URI:http://xest/567 - URI:http://xest/568 - URI:http://xest/569 - URI:http://xest/570 - URI:http://xest/571 - URI:http://xest/572 - URI:http://xest/573 - URI:http://xest/574 - URI:http://xest/575 - URI:http://xest/576 - URI:http://xest/577 - URI:http://xest/578 - URI:http://xest/579 - URI:http://xest/580 - URI:http://xest/581 - URI:http://xest/582 - URI:http://xest/583 - URI:http://xest/584 - URI:http://xest/585 - URI:http://xest/586 - URI:http://xest/587 - URI:http://xest/588 - URI:http://xest/589 - URI:http://xest/590 - URI:http://xest/591 - URI:http://xest/592 - URI:http://xest/593 - URI:http://xest/594 - URI:http://xest/595 - URI:http://xest/596 - URI:http://xest/597 - URI:http://xest/598 - URI:http://xest/599 - URI:http://xest/600 - URI:http://xest/601 - URI:http://xest/602 - URI:http://xest/603 - URI:http://xest/604 - URI:http://xest/605 - URI:http://xest/606 - URI:http://xest/607 - URI:http://xest/608 - URI:http://xest/609 - URI:http://xest/610 - URI:http://xest/611 - URI:http://xest/612 - URI:http://xest/613 - URI:http://xest/614 - URI:http://xest/615 - URI:http://xest/616 - URI:http://xest/617 - URI:http://xest/618 - URI:http://xest/619 - URI:http://xest/620 - URI:http://xest/621 - URI:http://xest/622 - URI:http://xest/623 - URI:http://xest/624 - URI:http://xest/625 - URI:http://xest/626 - URI:http://xest/627 - URI:http://xest/628 - URI:http://xest/629 - URI:http://xest/630 - URI:http://xest/631 - URI:http://xest/632 - URI:http://xest/633 - URI:http://xest/634 - URI:http://xest/635 - URI:http://xest/636 - URI:http://xest/637 - URI:http://xest/638 - URI:http://xest/639 - URI:http://xest/640 - URI:http://xest/641 - URI:http://xest/642 - URI:http://xest/643 - URI:http://xest/644 - URI:http://xest/645 - URI:http://xest/646 - URI:http://xest/647 - URI:http://xest/648 - URI:http://xest/649 - URI:http://xest/650 - URI:http://xest/651 - URI:http://xest/652 - URI:http://xest/653 - URI:http://xest/654 - URI:http://xest/655 - URI:http://xest/656 - URI:http://xest/657 - URI:http://xest/658 - URI:http://xest/659 - URI:http://xest/660 - URI:http://xest/661 - URI:http://xest/662 - URI:http://xest/663 - URI:http://xest/664 - URI:http://xest/665 - URI:http://xest/666 - URI:http://xest/667 - URI:http://xest/668 - URI:http://xest/669 - URI:http://xest/670 - URI:http://xest/671 - URI:http://xest/672 - URI:http://xest/673 - URI:http://xest/674 - URI:http://xest/675 - URI:http://xest/676 - URI:http://xest/677 - URI:http://xest/678 - URI:http://xest/679 - URI:http://xest/680 - URI:http://xest/681 - URI:http://xest/682 - URI:http://xest/683 - URI:http://xest/684 - URI:http://xest/685 - URI:http://xest/686 - URI:http://xest/687 - URI:http://xest/688 - URI:http://xest/689 - URI:http://xest/690 - URI:http://xest/691 - URI:http://xest/692 - URI:http://xest/693 - URI:http://xest/694 - URI:http://xest/695 - URI:http://xest/696 - URI:http://xest/697 - URI:http://xest/698 - URI:http://xest/699 - URI:http://xest/700 - URI:http://xest/701 - URI:http://xest/702 - URI:http://xest/703 - URI:http://xest/704 - URI:http://xest/705 - URI:http://xest/706 - URI:http://xest/707 - URI:http://xest/708 - URI:http://xest/709 - URI:http://xest/710 - URI:http://xest/711 - URI:http://xest/712 - URI:http://xest/713 - URI:http://xest/714 - URI:http://xest/715 - URI:http://xest/716 - URI:http://xest/717 - URI:http://xest/718 - URI:http://xest/719 - URI:http://xest/720 - URI:http://xest/721 - URI:http://xest/722 - URI:http://xest/723 - URI:http://xest/724 - URI:http://xest/725 - URI:http://xest/726 - URI:http://xest/727 - URI:http://xest/728 - URI:http://xest/729 - URI:http://xest/730 - URI:http://xest/731 - URI:http://xest/732 - URI:http://xest/733 - URI:http://xest/734 - URI:http://xest/735 - URI:http://xest/736 - URI:http://xest/737 - URI:http://xest/738 - URI:http://xest/739 - URI:http://xest/740 - URI:http://xest/741 - URI:http://xest/742 - URI:http://xest/743 - URI:http://xest/744 - URI:http://xest/745 - URI:http://xest/746 - URI:http://xest/747 - URI:http://xest/748 - URI:http://xest/749 - URI:http://xest/750 - URI:http://xest/751 - URI:http://xest/752 - URI:http://xest/753 - URI:http://xest/754 - URI:http://xest/755 - URI:http://xest/756 - URI:http://xest/757 - URI:http://xest/758 - URI:http://xest/759 - URI:http://xest/760 - URI:http://xest/761 - URI:http://xest/762 - URI:http://xest/763 - URI:http://xest/764 - URI:http://xest/765 - URI:http://xest/766 - URI:http://xest/767 - URI:http://xest/768 - URI:http://xest/769 - URI:http://xest/770 - URI:http://xest/771 - URI:http://xest/772 - URI:http://xest/773 - URI:http://xest/774 - URI:http://xest/775 - URI:http://xest/776 - URI:http://xest/777 - URI:http://xest/778 - URI:http://xest/779 - URI:http://xest/780 - URI:http://xest/781 - URI:http://xest/782 - URI:http://xest/783 - URI:http://xest/784 - URI:http://xest/785 - URI:http://xest/786 - URI:http://xest/787 - URI:http://xest/788 - URI:http://xest/789 - URI:http://xest/790 - URI:http://xest/791 - URI:http://xest/792 - URI:http://xest/793 - URI:http://xest/794 - URI:http://xest/795 - URI:http://xest/796 - URI:http://xest/797 - URI:http://xest/798 - URI:http://xest/799 - URI:http://xest/800 - URI:http://xest/801 - URI:http://xest/802 - URI:http://xest/803 - URI:http://xest/804 - URI:http://xest/805 - URI:http://xest/806 - URI:http://xest/807 - URI:http://xest/808 - URI:http://xest/809 - URI:http://xest/810 - URI:http://xest/811 - URI:http://xest/812 - URI:http://xest/813 - URI:http://xest/814 - URI:http://xest/815 - URI:http://xest/816 - URI:http://xest/817 - URI:http://xest/818 - URI:http://xest/819 - URI:http://xest/820 - URI:http://xest/821 - URI:http://xest/822 - URI:http://xest/823 - URI:http://xest/824 - URI:http://xest/825 - URI:http://xest/826 - URI:http://xest/827 - URI:http://xest/828 - URI:http://xest/829 - URI:http://xest/830 - URI:http://xest/831 - URI:http://xest/832 - URI:http://xest/833 - URI:http://xest/834 - URI:http://xest/835 - URI:http://xest/836 - URI:http://xest/837 - URI:http://xest/838 - URI:http://xest/839 - URI:http://xest/840 - URI:http://xest/841 - URI:http://xest/842 - URI:http://xest/843 - URI:http://xest/844 - URI:http://xest/845 - URI:http://xest/846 - URI:http://xest/847 - URI:http://xest/848 - URI:http://xest/849 - URI:http://xest/850 - URI:http://xest/851 - URI:http://xest/852 - URI:http://xest/853 - URI:http://xest/854 - URI:http://xest/855 - URI:http://xest/856 - URI:http://xest/857 - URI:http://xest/858 - URI:http://xest/859 - URI:http://xest/860 - URI:http://xest/861 - URI:http://xest/862 - URI:http://xest/863 - URI:http://xest/864 - URI:http://xest/865 - URI:http://xest/866 - URI:http://xest/867 - URI:http://xest/868 - URI:http://xest/869 - URI:http://xest/870 - URI:http://xest/871 - URI:http://xest/872 - URI:http://xest/873 - URI:http://xest/874 - URI:http://xest/875 - URI:http://xest/876 - URI:http://xest/877 - URI:http://xest/878 - URI:http://xest/879 - URI:http://xest/880 - URI:http://xest/881 - URI:http://xest/882 - URI:http://xest/883 - URI:http://xest/884 - URI:http://xest/885 - URI:http://xest/886 - URI:http://xest/887 - URI:http://xest/888 - URI:http://xest/889 - URI:http://xest/890 - URI:http://xest/891 - URI:http://xest/892 - URI:http://xest/893 - URI:http://xest/894 - URI:http://xest/895 - URI:http://xest/896 - URI:http://xest/897 - URI:http://xest/898 - URI:http://xest/899 - URI:http://xest/900 - URI:http://xest/901 - URI:http://xest/902 - URI:http://xest/903 - URI:http://xest/904 - URI:http://xest/905 - URI:http://xest/906 - URI:http://xest/907 - URI:http://xest/908 - URI:http://xest/909 - URI:http://xest/910 - URI:http://xest/911 - URI:http://xest/912 - URI:http://xest/913 - URI:http://xest/914 - URI:http://xest/915 - URI:http://xest/916 - URI:http://xest/917 - URI:http://xest/918 - URI:http://xest/919 - URI:http://xest/920 - URI:http://xest/921 - URI:http://xest/922 - URI:http://xest/923 - URI:http://xest/924 - URI:http://xest/925 - URI:http://xest/926 - URI:http://xest/927 - URI:http://xest/928 - URI:http://xest/929 - URI:http://xest/930 - URI:http://xest/931 - URI:http://xest/932 - URI:http://xest/933 - URI:http://xest/934 - URI:http://xest/935 - URI:http://xest/936 - URI:http://xest/937 - URI:http://xest/938 - URI:http://xest/939 - URI:http://xest/940 - URI:http://xest/941 - URI:http://xest/942 - URI:http://xest/943 - URI:http://xest/944 - URI:http://xest/945 - URI:http://xest/946 - URI:http://xest/947 - URI:http://xest/948 - URI:http://xest/949 - URI:http://xest/950 - URI:http://xest/951 - URI:http://xest/952 - URI:http://xest/953 - URI:http://xest/954 - URI:http://xest/955 - URI:http://xest/956 - URI:http://xest/957 - URI:http://xest/958 - URI:http://xest/959 - URI:http://xest/960 - URI:http://xest/961 - URI:http://xest/962 - URI:http://xest/963 - URI:http://xest/964 - URI:http://xest/965 - URI:http://xest/966 - URI:http://xest/967 - URI:http://xest/968 - URI:http://xest/969 - URI:http://xest/970 - URI:http://xest/971 - URI:http://xest/972 - URI:http://xest/973 - URI:http://xest/974 - URI:http://xest/975 - URI:http://xest/976 - URI:http://xest/977 - URI:http://xest/978 - URI:http://xest/979 - URI:http://xest/980 - URI:http://xest/981 - URI:http://xest/982 - URI:http://xest/983 - URI:http://xest/984 - URI:http://xest/985 - URI:http://xest/986 - URI:http://xest/987 - URI:http://xest/988 - URI:http://xest/989 - URI:http://xest/990 - URI:http://xest/991 - URI:http://xest/992 - URI:http://xest/993 - URI:http://xest/994 - URI:http://xest/995 - URI:http://xest/996 - URI:http://xest/997 - URI:http://xest/998 - URI:http://xest/999 - URI:http://xest/1000 - URI:http://xest/1001 - URI:http://xest/1002 - URI:http://xest/1003 - URI:http://xest/1004 - URI:http://xest/1005 - URI:http://xest/1006 - URI:http://xest/1007 - URI:http://xest/1008 - URI:http://xest/1009 - URI:http://xest/1010 - URI:http://xest/1011 - URI:http://xest/1012 - URI:http://xest/1013 - URI:http://xest/1014 - URI:http://xest/1015 - URI:http://xest/1016 - URI:http://xest/1017 - URI:http://xest/1018 - URI:http://xest/1019 - URI:http://xest/1020 - URI:http://xest/1021 - URI:http://xest/1022 - URI:http://xest/1023 - URI:http://xest/1024 - - Signature Algorithm: sha256WithRSAEncryption - 37:a8:be:e4:03:62:63:15:b0:fe:be:49:7f:22:5e:7a:f8:b4: - 33:0c:fe:3b:41:0c:99:dc:bd:b0:a3:0c:3a:54:42:27:62:18: - 15:af:e6:d5:91:63:17:1d:1b:3f:ca:f6:2e:2f:6e:71:5e:66: - 86:27:69:91:31:5d:35:85:d4:46:77:69:45:50:05:9c:bc:39: - b8:0f:d0:96:a6:65:02:d3:80:53:ac:58:9c:f3:ec:27:27:b2: - 33:44:51:17:79:90:ea:b1:57:32:f7:e0:58:a4:99:64:78:55: - 61:16:d3:51:62:cf:26:02:8d:7d:df:2d:d8:c3:d2:00:5e:03: - 49:78:20:b7:78:9e:9e:b6:56:e9:48:4d:c5:5a:ea:28:e8:16: - 70:4a:39:bb:1d:88:40:5a:fd:67:82:73:f3:c6:f2:e9:ed:70: - 83:de:72:3f:7d:08:2f:1a:43:4d:c9:b2:e9:ce:e6:43:a9:74: - 25:cd:ba:95:cd:51:97:cb:56:d4:e6:e6:d9:69:0a:5f:48:17: - 2a:3b:41:ac:a5:ec:1f:30:c9:b2:f1:68:8f:a1:0f:1e:7d:9e: - e3:be:bb:8d:cb:6e:41:6a:16:7a:48:f5:ac:14:69:f7:de:63: - fc:94:80:e7:62:da:e6:99:12:ad:f1:d2:5d:76:6b:c3:11:6e: - 55:5d:7e:ec ------BEGIN CERTIFICATE----- -MILWujCC1aKgAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vYwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOC1AQwgtQAMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgtM0BgNVHR4EgtMrMILTJ6CCabEwCYIHdDAudGVzdDAJggd0MS50ZXN0MAmC -B3QyLnRlc3QwCYIHdDMudGVzdDAJggd0NC50ZXN0MAmCB3Q1LnRlc3QwCYIHdDYu -dGVzdDAJggd0Ny50ZXN0MAmCB3Q4LnRlc3QwCYIHdDkudGVzdDAKggh0MTAudGVz -dDAKggh0MTEudGVzdDAKggh0MTIudGVzdDAKggh0MTMudGVzdDAKggh0MTQudGVz -dDAKggh0MTUudGVzdDAKggh0MTYudGVzdDAKggh0MTcudGVzdDAKggh0MTgudGVz -dDAKggh0MTkudGVzdDAKggh0MjAudGVzdDAKggh0MjEudGVzdDAKggh0MjIudGVz -dDAKggh0MjMudGVzdDAKggh0MjQudGVzdDAKggh0MjUudGVzdDAKggh0MjYudGVz -dDAKggh0MjcudGVzdDAKggh0MjgudGVzdDAKggh0MjkudGVzdDAKggh0MzAudGVz -dDAKggh0MzEudGVzdDAKggh0MzIudGVzdDAKggh0MzMudGVzdDAKggh0MzQudGVz -dDAKggh0MzUudGVzdDAKggh0MzYudGVzdDAKggh0MzcudGVzdDAKggh0MzgudGVz -dDAKggh0MzkudGVzdDAKggh0NDAudGVzdDAKggh0NDEudGVzdDAKggh0NDIudGVz -dDAKggh0NDMudGVzdDAKggh0NDQudGVzdDAKggh0NDUudGVzdDAKggh0NDYudGVz -dDAKggh0NDcudGVzdDAKggh0NDgudGVzdDAKggh0NDkudGVzdDAKggh0NTAudGVz -dDAKggh0NTEudGVzdDAKggh0NTIudGVzdDAKggh0NTMudGVzdDAKggh0NTQudGVz -dDAKggh0NTUudGVzdDAKggh0NTYudGVzdDAKggh0NTcudGVzdDAKggh0NTgudGVz -dDAKggh0NTkudGVzdDAKggh0NjAudGVzdDAKggh0NjEudGVzdDAKggh0NjIudGVz -dDAKggh0NjMudGVzdDAKggh0NjQudGVzdDAKggh0NjUudGVzdDAKggh0NjYudGVz -dDAKggh0NjcudGVzdDAKggh0NjgudGVzdDAKggh0NjkudGVzdDAKggh0NzAudGVz -dDAKggh0NzEudGVzdDAKggh0NzIudGVzdDAKggh0NzMudGVzdDAKggh0NzQudGVz -dDAKggh0NzUudGVzdDAKggh0NzYudGVzdDAKggh0NzcudGVzdDAKggh0NzgudGVz -dDAKggh0NzkudGVzdDAKggh0ODAudGVzdDAKggh0ODEudGVzdDAKggh0ODIudGVz -dDAKggh0ODMudGVzdDAKggh0ODQudGVzdDAKggh0ODUudGVzdDAKggh0ODYudGVz -dDAKggh0ODcudGVzdDAKggh0ODgudGVzdDAKggh0ODkudGVzdDAKggh0OTAudGVz -dDAKggh0OTEudGVzdDAKggh0OTIudGVzdDAKggh0OTMudGVzdDAKggh0OTQudGVz -dDAKggh0OTUudGVzdDAKggh0OTYudGVzdDAKggh0OTcudGVzdDAKggh0OTgudGVz -dDAKggh0OTkudGVzdDALggl0MTAwLnRlc3QwC4IJdDEwMS50ZXN0MAuCCXQxMDIu -dGVzdDALggl0MTAzLnRlc3QwC4IJdDEwNC50ZXN0MAuCCXQxMDUudGVzdDALggl0 -MTA2LnRlc3QwC4IJdDEwNy50ZXN0MAuCCXQxMDgudGVzdDALggl0MTA5LnRlc3Qw -C4IJdDExMC50ZXN0MAuCCXQxMTEudGVzdDALggl0MTEyLnRlc3QwC4IJdDExMy50 -ZXN0MAuCCXQxMTQudGVzdDALggl0MTE1LnRlc3QwC4IJdDExNi50ZXN0MAuCCXQx -MTcudGVzdDALggl0MTE4LnRlc3QwC4IJdDExOS50ZXN0MAuCCXQxMjAudGVzdDAL -ggl0MTIxLnRlc3QwC4IJdDEyMi50ZXN0MAuCCXQxMjMudGVzdDALggl0MTI0LnRl -c3QwC4IJdDEyNS50ZXN0MAuCCXQxMjYudGVzdDALggl0MTI3LnRlc3QwC4IJdDEy -OC50ZXN0MAuCCXQxMjkudGVzdDALggl0MTMwLnRlc3QwC4IJdDEzMS50ZXN0MAuC -CXQxMzIudGVzdDALggl0MTMzLnRlc3QwC4IJdDEzNC50ZXN0MAuCCXQxMzUudGVz -dDALggl0MTM2LnRlc3QwC4IJdDEzNy50ZXN0MAuCCXQxMzgudGVzdDALggl0MTM5 -LnRlc3QwC4IJdDE0MC50ZXN0MAuCCXQxNDEudGVzdDALggl0MTQyLnRlc3QwC4IJ -dDE0My50ZXN0MAuCCXQxNDQudGVzdDALggl0MTQ1LnRlc3QwC4IJdDE0Ni50ZXN0 -MAuCCXQxNDcudGVzdDALggl0MTQ4LnRlc3QwC4IJdDE0OS50ZXN0MAuCCXQxNTAu -dGVzdDALggl0MTUxLnRlc3QwC4IJdDE1Mi50ZXN0MAuCCXQxNTMudGVzdDALggl0 -MTU0LnRlc3QwC4IJdDE1NS50ZXN0MAuCCXQxNTYudGVzdDALggl0MTU3LnRlc3Qw -C4IJdDE1OC50ZXN0MAuCCXQxNTkudGVzdDALggl0MTYwLnRlc3QwC4IJdDE2MS50 -ZXN0MAuCCXQxNjIudGVzdDALggl0MTYzLnRlc3QwC4IJdDE2NC50ZXN0MAuCCXQx -NjUudGVzdDALggl0MTY2LnRlc3QwC4IJdDE2Ny50ZXN0MAuCCXQxNjgudGVzdDAL -ggl0MTY5LnRlc3QwC4IJdDE3MC50ZXN0MAqHCAoAAAD/////MAqHCAoAAAH///// -MAqHCAoAAAL/////MAqHCAoAAAP/////MAqHCAoAAAT/////MAqHCAoAAAX///// -MAqHCAoAAAb/////MAqHCAoAAAf/////MAqHCAoAAAj/////MAqHCAoAAAn///// -MAqHCAoAAAr/////MAqHCAoAAAv/////MAqHCAoAAAz/////MAqHCAoAAA3///// -MAqHCAoAAA7/////MAqHCAoAAA//////MAqHCAoAABD/////MAqHCAoAABH///// -MAqHCAoAABL/////MAqHCAoAABP/////MAqHCAoAABT/////MAqHCAoAABX///// -MAqHCAoAABb/////MAqHCAoAABf/////MAqHCAoAABj/////MAqHCAoAABn///// -MAqHCAoAABr/////MAqHCAoAABv/////MAqHCAoAABz/////MAqHCAoAAB3///// -MAqHCAoAAB7/////MAqHCAoAAB//////MAqHCAoAACD/////MAqHCAoAACH///// -MAqHCAoAACL/////MAqHCAoAACP/////MAqHCAoAACT/////MAqHCAoAACX///// -MAqHCAoAACb/////MAqHCAoAACf/////MAqHCAoAACj/////MAqHCAoAACn///// -MAqHCAoAACr/////MAqHCAoAACv/////MAqHCAoAACz/////MAqHCAoAAC3///// -MAqHCAoAAC7/////MAqHCAoAAC//////MAqHCAoAADD/////MAqHCAoAADH///// -MAqHCAoAADL/////MAqHCAoAADP/////MAqHCAoAADT/////MAqHCAoAADX///// -MAqHCAoAADb/////MAqHCAoAADf/////MAqHCAoAADj/////MAqHCAoAADn///// -MAqHCAoAADr/////MAqHCAoAADv/////MAqHCAoAADz/////MAqHCAoAAD3///// -MAqHCAoAAD7/////MAqHCAoAAD//////MAqHCAoAAED/////MAqHCAoAAEH///// -MAqHCAoAAEL/////MAqHCAoAAEP/////MAqHCAoAAET/////MAqHCAoAAEX///// -MAqHCAoAAEb/////MAqHCAoAAEf/////MAqHCAoAAEj/////MAqHCAoAAEn///// -MAqHCAoAAEr/////MAqHCAoAAEv/////MAqHCAoAAEz/////MAqHCAoAAE3///// -MAqHCAoAAE7/////MAqHCAoAAE//////MAqHCAoAAFD/////MAqHCAoAAFH///// -MAqHCAoAAFL/////MAqHCAoAAFP/////MAqHCAoAAFT/////MAqHCAoAAFX///// -MAqHCAoAAFb/////MAqHCAoAAFf/////MAqHCAoAAFj/////MAqHCAoAAFn///// -MAqHCAoAAFr/////MAqHCAoAAFv/////MAqHCAoAAFz/////MAqHCAoAAF3///// -MAqHCAoAAF7/////MAqHCAoAAF//////MAqHCAoAAGD/////MAqHCAoAAGH///// -MAqHCAoAAGL/////MAqHCAoAAGP/////MAqHCAoAAGT/////MAqHCAoAAGX///// -MAqHCAoAAGb/////MAqHCAoAAGf/////MAqHCAoAAGj/////MAqHCAoAAGn///// -MAqHCAoAAGr/////MAqHCAoAAGv/////MAqHCAoAAGz/////MAqHCAoAAG3///// -MAqHCAoAAG7/////MAqHCAoAAG//////MAqHCAoAAHD/////MAqHCAoAAHH///// -MAqHCAoAAHL/////MAqHCAoAAHP/////MAqHCAoAAHT/////MAqHCAoAAHX///// -MAqHCAoAAHb/////MAqHCAoAAHf/////MAqHCAoAAHj/////MAqHCAoAAHn///// -MAqHCAoAAHr/////MAqHCAoAAHv/////MAqHCAoAAHz/////MAqHCAoAAH3///// -MAqHCAoAAH7/////MAqHCAoAAH//////MAqHCAoAAID/////MAqHCAoAAIH///// -MAqHCAoAAIL/////MAqHCAoAAIP/////MAqHCAoAAIT/////MAqHCAoAAIX///// -MAqHCAoAAIb/////MAqHCAoAAIf/////MAqHCAoAAIj/////MAqHCAoAAIn///// -MAqHCAoAAIr/////MAqHCAoAAIv/////MAqHCAoAAIz/////MAqHCAoAAI3///// -MAqHCAoAAI7/////MAqHCAoAAI//////MAqHCAoAAJD/////MAqHCAoAAJH///// -MAqHCAoAAJL/////MAqHCAoAAJP/////MAqHCAoAAJT/////MAqHCAoAAJX///// -MAqHCAoAAJb/////MAqHCAoAAJf/////MAqHCAoAAJj/////MAqHCAoAAJn///// -MAqHCAoAAJr/////MAqHCAoAAJv/////MAqHCAoAAJz/////MAqHCAoAAJ3///// -MAqHCAoAAJ7/////MAqHCAoAAJ//////MAqHCAoAAKD/////MAqHCAoAAKH///// -MAqHCAoAAKL/////MAqHCAoAAKP/////MAqHCAoAAKT/////MAqHCAoAAKX///// -MAqHCAoAAKb/////MAqHCAoAAKf/////MAqHCAoAAKj/////MAqHCAoAAKn///// -MAqHCAoAAKr/////MBGkDzANMQswCQYDVQQDDAJ0MDARpA8wDTELMAkGA1UEAwwC -dDEwEaQPMA0xCzAJBgNVBAMMAnQyMBGkDzANMQswCQYDVQQDDAJ0MzARpA8wDTEL -MAkGA1UEAwwCdDQwEaQPMA0xCzAJBgNVBAMMAnQ1MBGkDzANMQswCQYDVQQDDAJ0 -NjARpA8wDTELMAkGA1UEAwwCdDcwEaQPMA0xCzAJBgNVBAMMAnQ4MBGkDzANMQsw -CQYDVQQDDAJ0OTASpBAwDjEMMAoGA1UEAwwDdDEwMBKkEDAOMQwwCgYDVQQDDAN0 -MTEwEqQQMA4xDDAKBgNVBAMMA3QxMjASpBAwDjEMMAoGA1UEAwwDdDEzMBKkEDAO -MQwwCgYDVQQDDAN0MTQwEqQQMA4xDDAKBgNVBAMMA3QxNTASpBAwDjEMMAoGA1UE -AwwDdDE2MBKkEDAOMQwwCgYDVQQDDAN0MTcwEqQQMA4xDDAKBgNVBAMMA3QxODAS -pBAwDjEMMAoGA1UEAwwDdDE5MBKkEDAOMQwwCgYDVQQDDAN0MjAwEqQQMA4xDDAK -BgNVBAMMA3QyMTASpBAwDjEMMAoGA1UEAwwDdDIyMBKkEDAOMQwwCgYDVQQDDAN0 -MjMwEqQQMA4xDDAKBgNVBAMMA3QyNDASpBAwDjEMMAoGA1UEAwwDdDI1MBKkEDAO -MQwwCgYDVQQDDAN0MjYwEqQQMA4xDDAKBgNVBAMMA3QyNzASpBAwDjEMMAoGA1UE -AwwDdDI4MBKkEDAOMQwwCgYDVQQDDAN0MjkwEqQQMA4xDDAKBgNVBAMMA3QzMDAS -pBAwDjEMMAoGA1UEAwwDdDMxMBKkEDAOMQwwCgYDVQQDDAN0MzIwEqQQMA4xDDAK -BgNVBAMMA3QzMzASpBAwDjEMMAoGA1UEAwwDdDM0MBKkEDAOMQwwCgYDVQQDDAN0 -MzUwEqQQMA4xDDAKBgNVBAMMA3QzNjASpBAwDjEMMAoGA1UEAwwDdDM3MBKkEDAO -MQwwCgYDVQQDDAN0MzgwEqQQMA4xDDAKBgNVBAMMA3QzOTASpBAwDjEMMAoGA1UE -AwwDdDQwMBKkEDAOMQwwCgYDVQQDDAN0NDEwEqQQMA4xDDAKBgNVBAMMA3Q0MjAS -pBAwDjEMMAoGA1UEAwwDdDQzMBKkEDAOMQwwCgYDVQQDDAN0NDQwEqQQMA4xDDAK -BgNVBAMMA3Q0NTASpBAwDjEMMAoGA1UEAwwDdDQ2MBKkEDAOMQwwCgYDVQQDDAN0 -NDcwEqQQMA4xDDAKBgNVBAMMA3Q0ODASpBAwDjEMMAoGA1UEAwwDdDQ5MBKkEDAO -MQwwCgYDVQQDDAN0NTAwEqQQMA4xDDAKBgNVBAMMA3Q1MTASpBAwDjEMMAoGA1UE -AwwDdDUyMBKkEDAOMQwwCgYDVQQDDAN0NTMwEqQQMA4xDDAKBgNVBAMMA3Q1NDAS -pBAwDjEMMAoGA1UEAwwDdDU1MBKkEDAOMQwwCgYDVQQDDAN0NTYwEqQQMA4xDDAK -BgNVBAMMA3Q1NzASpBAwDjEMMAoGA1UEAwwDdDU4MBKkEDAOMQwwCgYDVQQDDAN0 -NTkwEqQQMA4xDDAKBgNVBAMMA3Q2MDASpBAwDjEMMAoGA1UEAwwDdDYxMBKkEDAO -MQwwCgYDVQQDDAN0NjIwEqQQMA4xDDAKBgNVBAMMA3Q2MzASpBAwDjEMMAoGA1UE -AwwDdDY0MBKkEDAOMQwwCgYDVQQDDAN0NjUwEqQQMA4xDDAKBgNVBAMMA3Q2NjAS -pBAwDjEMMAoGA1UEAwwDdDY3MBKkEDAOMQwwCgYDVQQDDAN0NjgwEqQQMA4xDDAK -BgNVBAMMA3Q2OTASpBAwDjEMMAoGA1UEAwwDdDcwMBKkEDAOMQwwCgYDVQQDDAN0 -NzEwEqQQMA4xDDAKBgNVBAMMA3Q3MjASpBAwDjEMMAoGA1UEAwwDdDczMBKkEDAO -MQwwCgYDVQQDDAN0NzQwEqQQMA4xDDAKBgNVBAMMA3Q3NTASpBAwDjEMMAoGA1UE -AwwDdDc2MBKkEDAOMQwwCgYDVQQDDAN0NzcwEqQQMA4xDDAKBgNVBAMMA3Q3ODAS -pBAwDjEMMAoGA1UEAwwDdDc5MBKkEDAOMQwwCgYDVQQDDAN0ODAwEqQQMA4xDDAK -BgNVBAMMA3Q4MTASpBAwDjEMMAoGA1UEAwwDdDgyMBKkEDAOMQwwCgYDVQQDDAN0 -ODMwEqQQMA4xDDAKBgNVBAMMA3Q4NDASpBAwDjEMMAoGA1UEAwwDdDg1MBKkEDAO -MQwwCgYDVQQDDAN0ODYwEqQQMA4xDDAKBgNVBAMMA3Q4NzASpBAwDjEMMAoGA1UE -AwwDdDg4MBKkEDAOMQwwCgYDVQQDDAN0ODkwEqQQMA4xDDAKBgNVBAMMA3Q5MDAS -pBAwDjEMMAoGA1UEAwwDdDkxMBKkEDAOMQwwCgYDVQQDDAN0OTIwEqQQMA4xDDAK -BgNVBAMMA3Q5MzASpBAwDjEMMAoGA1UEAwwDdDk0MBKkEDAOMQwwCgYDVQQDDAN0 -OTUwEqQQMA4xDDAKBgNVBAMMA3Q5NjASpBAwDjEMMAoGA1UEAwwDdDk3MBKkEDAO -MQwwCgYDVQQDDAN0OTgwEqQQMA4xDDAKBgNVBAMMA3Q5OTATpBEwDzENMAsGA1UE -AwwEdDEwMDATpBEwDzENMAsGA1UEAwwEdDEwMTATpBEwDzENMAsGA1UEAwwEdDEw -MjATpBEwDzENMAsGA1UEAwwEdDEwMzATpBEwDzENMAsGA1UEAwwEdDEwNDATpBEw -DzENMAsGA1UEAwwEdDEwNTATpBEwDzENMAsGA1UEAwwEdDEwNjATpBEwDzENMAsG -A1UEAwwEdDEwNzATpBEwDzENMAsGA1UEAwwEdDEwODATpBEwDzENMAsGA1UEAwwE -dDEwOTATpBEwDzENMAsGA1UEAwwEdDExMDATpBEwDzENMAsGA1UEAwwEdDExMTAT -pBEwDzENMAsGA1UEAwwEdDExMjATpBEwDzENMAsGA1UEAwwEdDExMzATpBEwDzEN -MAsGA1UEAwwEdDExNDATpBEwDzENMAsGA1UEAwwEdDExNTATpBEwDzENMAsGA1UE -AwwEdDExNjATpBEwDzENMAsGA1UEAwwEdDExNzATpBEwDzENMAsGA1UEAwwEdDEx -ODATpBEwDzENMAsGA1UEAwwEdDExOTATpBEwDzENMAsGA1UEAwwEdDEyMDATpBEw -DzENMAsGA1UEAwwEdDEyMTATpBEwDzENMAsGA1UEAwwEdDEyMjATpBEwDzENMAsG -A1UEAwwEdDEyMzATpBEwDzENMAsGA1UEAwwEdDEyNDATpBEwDzENMAsGA1UEAwwE -dDEyNTATpBEwDzENMAsGA1UEAwwEdDEyNjATpBEwDzENMAsGA1UEAwwEdDEyNzAT -pBEwDzENMAsGA1UEAwwEdDEyODATpBEwDzENMAsGA1UEAwwEdDEyOTATpBEwDzEN -MAsGA1UEAwwEdDEzMDATpBEwDzENMAsGA1UEAwwEdDEzMTATpBEwDzENMAsGA1UE -AwwEdDEzMjATpBEwDzENMAsGA1UEAwwEdDEzMzATpBEwDzENMAsGA1UEAwwEdDEz -NDATpBEwDzENMAsGA1UEAwwEdDEzNTATpBEwDzENMAsGA1UEAwwEdDEzNjATpBEw -DzENMAsGA1UEAwwEdDEzNzATpBEwDzENMAsGA1UEAwwEdDEzODATpBEwDzENMAsG -A1UEAwwEdDEzOTATpBEwDzENMAsGA1UEAwwEdDE0MDATpBEwDzENMAsGA1UEAwwE -dDE0MTATpBEwDzENMAsGA1UEAwwEdDE0MjATpBEwDzENMAsGA1UEAwwEdDE0MzAT -pBEwDzENMAsGA1UEAwwEdDE0NDATpBEwDzENMAsGA1UEAwwEdDE0NTATpBEwDzEN -MAsGA1UEAwwEdDE0NjATpBEwDzENMAsGA1UEAwwEdDE0NzATpBEwDzENMAsGA1UE -AwwEdDE0ODATpBEwDzENMAsGA1UEAwwEdDE0OTATpBEwDzENMAsGA1UEAwwEdDE1 -MDATpBEwDzENMAsGA1UEAwwEdDE1MTATpBEwDzENMAsGA1UEAwwEdDE1MjATpBEw -DzENMAsGA1UEAwwEdDE1MzATpBEwDzENMAsGA1UEAwwEdDE1NDATpBEwDzENMAsG -A1UEAwwEdDE1NTATpBEwDzENMAsGA1UEAwwEdDE1NjATpBEwDzENMAsGA1UEAwwE -dDE1NzATpBEwDzENMAsGA1UEAwwEdDE1ODATpBEwDzENMAsGA1UEAwwEdDE1OTAT -pBEwDzENMAsGA1UEAwwEdDE2MDATpBEwDzENMAsGA1UEAwwEdDE2MTATpBEwDzEN -MAsGA1UEAwwEdDE2MjATpBEwDzENMAsGA1UEAwwEdDE2MzATpBEwDzENMAsGA1UE -AwwEdDE2NDATpBEwDzENMAsGA1UEAwwEdDE2NTATpBEwDzENMAsGA1UEAwwEdDE2 -NjATpBEwDzENMAsGA1UEAwwEdDE2NzATpBEwDzENMAsGA1UEAwwEdDE2ODATpBEw -DzENMAsGA1UEAwwEdDE2OTATpBEwDzENMAsGA1UEAwwEdDE3MDATpBEwDzENMAsG -A1UEAwwEdDE3MTAPhg1odHRwOi8vdGVzdC8wMA+GDWh0dHA6Ly90ZXN0LzEwD4YN -aHR0cDovL3Rlc3QvMjAPhg1odHRwOi8vdGVzdC8zMA+GDWh0dHA6Ly90ZXN0LzQw -D4YNaHR0cDovL3Rlc3QvNTAPhg1odHRwOi8vdGVzdC82MA+GDWh0dHA6Ly90ZXN0 -LzcwD4YNaHR0cDovL3Rlc3QvODAPhg1odHRwOi8vdGVzdC85MBCGDmh0dHA6Ly90 -ZXN0LzEwMBCGDmh0dHA6Ly90ZXN0LzExMBCGDmh0dHA6Ly90ZXN0LzEyMBCGDmh0 -dHA6Ly90ZXN0LzEzMBCGDmh0dHA6Ly90ZXN0LzE0MBCGDmh0dHA6Ly90ZXN0LzE1 -MBCGDmh0dHA6Ly90ZXN0LzE2MBCGDmh0dHA6Ly90ZXN0LzE3MBCGDmh0dHA6Ly90 -ZXN0LzE4MBCGDmh0dHA6Ly90ZXN0LzE5MBCGDmh0dHA6Ly90ZXN0LzIwMBCGDmh0 -dHA6Ly90ZXN0LzIxMBCGDmh0dHA6Ly90ZXN0LzIyMBCGDmh0dHA6Ly90ZXN0LzIz -MBCGDmh0dHA6Ly90ZXN0LzI0MBCGDmh0dHA6Ly90ZXN0LzI1MBCGDmh0dHA6Ly90 -ZXN0LzI2MBCGDmh0dHA6Ly90ZXN0LzI3MBCGDmh0dHA6Ly90ZXN0LzI4MBCGDmh0 -dHA6Ly90ZXN0LzI5MBCGDmh0dHA6Ly90ZXN0LzMwMBCGDmh0dHA6Ly90ZXN0LzMx -MBCGDmh0dHA6Ly90ZXN0LzMyMBCGDmh0dHA6Ly90ZXN0LzMzMBCGDmh0dHA6Ly90 -ZXN0LzM0MBCGDmh0dHA6Ly90ZXN0LzM1MBCGDmh0dHA6Ly90ZXN0LzM2MBCGDmh0 -dHA6Ly90ZXN0LzM3MBCGDmh0dHA6Ly90ZXN0LzM4MBCGDmh0dHA6Ly90ZXN0LzM5 -MBCGDmh0dHA6Ly90ZXN0LzQwMBCGDmh0dHA6Ly90ZXN0LzQxMBCGDmh0dHA6Ly90 -ZXN0LzQyMBCGDmh0dHA6Ly90ZXN0LzQzMBCGDmh0dHA6Ly90ZXN0LzQ0MBCGDmh0 -dHA6Ly90ZXN0LzQ1MBCGDmh0dHA6Ly90ZXN0LzQ2MBCGDmh0dHA6Ly90ZXN0LzQ3 -MBCGDmh0dHA6Ly90ZXN0LzQ4MBCGDmh0dHA6Ly90ZXN0LzQ5MBCGDmh0dHA6Ly90 -ZXN0LzUwMBCGDmh0dHA6Ly90ZXN0LzUxMBCGDmh0dHA6Ly90ZXN0LzUyMBCGDmh0 -dHA6Ly90ZXN0LzUzMBCGDmh0dHA6Ly90ZXN0LzU0MBCGDmh0dHA6Ly90ZXN0LzU1 -MBCGDmh0dHA6Ly90ZXN0LzU2MBCGDmh0dHA6Ly90ZXN0LzU3MBCGDmh0dHA6Ly90 -ZXN0LzU4MBCGDmh0dHA6Ly90ZXN0LzU5MBCGDmh0dHA6Ly90ZXN0LzYwMBCGDmh0 -dHA6Ly90ZXN0LzYxMBCGDmh0dHA6Ly90ZXN0LzYyMBCGDmh0dHA6Ly90ZXN0LzYz -MBCGDmh0dHA6Ly90ZXN0LzY0MBCGDmh0dHA6Ly90ZXN0LzY1MBCGDmh0dHA6Ly90 -ZXN0LzY2MBCGDmh0dHA6Ly90ZXN0LzY3MBCGDmh0dHA6Ly90ZXN0LzY4MBCGDmh0 -dHA6Ly90ZXN0LzY5MBCGDmh0dHA6Ly90ZXN0LzcwMBCGDmh0dHA6Ly90ZXN0Lzcx -MBCGDmh0dHA6Ly90ZXN0LzcyMBCGDmh0dHA6Ly90ZXN0LzczMBCGDmh0dHA6Ly90 -ZXN0Lzc0MBCGDmh0dHA6Ly90ZXN0Lzc1MBCGDmh0dHA6Ly90ZXN0Lzc2MBCGDmh0 -dHA6Ly90ZXN0Lzc3MBCGDmh0dHA6Ly90ZXN0Lzc4MBCGDmh0dHA6Ly90ZXN0Lzc5 -MBCGDmh0dHA6Ly90ZXN0LzgwMBCGDmh0dHA6Ly90ZXN0LzgxMBCGDmh0dHA6Ly90 -ZXN0LzgyMBCGDmh0dHA6Ly90ZXN0LzgzMBCGDmh0dHA6Ly90ZXN0Lzg0MBCGDmh0 -dHA6Ly90ZXN0Lzg1MBCGDmh0dHA6Ly90ZXN0Lzg2MBCGDmh0dHA6Ly90ZXN0Lzg3 -MBCGDmh0dHA6Ly90ZXN0Lzg4MBCGDmh0dHA6Ly90ZXN0Lzg5MBCGDmh0dHA6Ly90 -ZXN0LzkwMBCGDmh0dHA6Ly90ZXN0LzkxMBCGDmh0dHA6Ly90ZXN0LzkyMBCGDmh0 -dHA6Ly90ZXN0LzkzMBCGDmh0dHA6Ly90ZXN0Lzk0MBCGDmh0dHA6Ly90ZXN0Lzk1 -MBCGDmh0dHA6Ly90ZXN0Lzk2MBCGDmh0dHA6Ly90ZXN0Lzk3MBCGDmh0dHA6Ly90 -ZXN0Lzk4MBCGDmh0dHA6Ly90ZXN0Lzk5MBGGD2h0dHA6Ly90ZXN0LzEwMDARhg9o -dHRwOi8vdGVzdC8xMDEwEYYPaHR0cDovL3Rlc3QvMTAyMBGGD2h0dHA6Ly90ZXN0 -LzEwMzARhg9odHRwOi8vdGVzdC8xMDQwEYYPaHR0cDovL3Rlc3QvMTA1MBGGD2h0 -dHA6Ly90ZXN0LzEwNjARhg9odHRwOi8vdGVzdC8xMDcwEYYPaHR0cDovL3Rlc3Qv -MTA4MBGGD2h0dHA6Ly90ZXN0LzEwOTARhg9odHRwOi8vdGVzdC8xMTAwEYYPaHR0 -cDovL3Rlc3QvMTExMBGGD2h0dHA6Ly90ZXN0LzExMjARhg9odHRwOi8vdGVzdC8x -MTMwEYYPaHR0cDovL3Rlc3QvMTE0MBGGD2h0dHA6Ly90ZXN0LzExNTARhg9odHRw -Oi8vdGVzdC8xMTYwEYYPaHR0cDovL3Rlc3QvMTE3MBGGD2h0dHA6Ly90ZXN0LzEx -ODARhg9odHRwOi8vdGVzdC8xMTkwEYYPaHR0cDovL3Rlc3QvMTIwMBGGD2h0dHA6 -Ly90ZXN0LzEyMTARhg9odHRwOi8vdGVzdC8xMjIwEYYPaHR0cDovL3Rlc3QvMTIz -MBGGD2h0dHA6Ly90ZXN0LzEyNDARhg9odHRwOi8vdGVzdC8xMjUwEYYPaHR0cDov -L3Rlc3QvMTI2MBGGD2h0dHA6Ly90ZXN0LzEyNzARhg9odHRwOi8vdGVzdC8xMjgw -EYYPaHR0cDovL3Rlc3QvMTI5MBGGD2h0dHA6Ly90ZXN0LzEzMDARhg9odHRwOi8v -dGVzdC8xMzEwEYYPaHR0cDovL3Rlc3QvMTMyMBGGD2h0dHA6Ly90ZXN0LzEzMzAR -hg9odHRwOi8vdGVzdC8xMzQwEYYPaHR0cDovL3Rlc3QvMTM1MBGGD2h0dHA6Ly90 -ZXN0LzEzNjARhg9odHRwOi8vdGVzdC8xMzcwEYYPaHR0cDovL3Rlc3QvMTM4MBGG -D2h0dHA6Ly90ZXN0LzEzOTARhg9odHRwOi8vdGVzdC8xNDAwEYYPaHR0cDovL3Rl -c3QvMTQxMBGGD2h0dHA6Ly90ZXN0LzE0MjARhg9odHRwOi8vdGVzdC8xNDMwEYYP -aHR0cDovL3Rlc3QvMTQ0MBGGD2h0dHA6Ly90ZXN0LzE0NTARhg9odHRwOi8vdGVz -dC8xNDYwEYYPaHR0cDovL3Rlc3QvMTQ3MBGGD2h0dHA6Ly90ZXN0LzE0ODARhg9o -dHRwOi8vdGVzdC8xNDkwEYYPaHR0cDovL3Rlc3QvMTUwMBGGD2h0dHA6Ly90ZXN0 -LzE1MTARhg9odHRwOi8vdGVzdC8xNTIwEYYPaHR0cDovL3Rlc3QvMTUzMBGGD2h0 -dHA6Ly90ZXN0LzE1NDARhg9odHRwOi8vdGVzdC8xNTUwEYYPaHR0cDovL3Rlc3Qv -MTU2MBGGD2h0dHA6Ly90ZXN0LzE1NzARhg9odHRwOi8vdGVzdC8xNTgwEYYPaHR0 -cDovL3Rlc3QvMTU5MBGGD2h0dHA6Ly90ZXN0LzE2MDARhg9odHRwOi8vdGVzdC8x -NjEwEYYPaHR0cDovL3Rlc3QvMTYyMBGGD2h0dHA6Ly90ZXN0LzE2MzARhg9odHRw -Oi8vdGVzdC8xNjQwEYYPaHR0cDovL3Rlc3QvMTY1MBGGD2h0dHA6Ly90ZXN0LzE2 -NjARhg9odHRwOi8vdGVzdC8xNjcwEYYPaHR0cDovL3Rlc3QvMTY4MBGGD2h0dHA6 -Ly90ZXN0LzE2OTARhg9odHRwOi8vdGVzdC8xNzAwEYYPaHR0cDovL3Rlc3QvMTcx -MBGGD2h0dHA6Ly90ZXN0LzE3MjARhg9odHRwOi8vdGVzdC8xNzMwEYYPaHR0cDov -L3Rlc3QvMTc0MBGGD2h0dHA6Ly90ZXN0LzE3NTARhg9odHRwOi8vdGVzdC8xNzYw -EYYPaHR0cDovL3Rlc3QvMTc3MBGGD2h0dHA6Ly90ZXN0LzE3ODARhg9odHRwOi8v -dGVzdC8xNzkwEYYPaHR0cDovL3Rlc3QvMTgwMBGGD2h0dHA6Ly90ZXN0LzE4MTAR -hg9odHRwOi8vdGVzdC8xODIwEYYPaHR0cDovL3Rlc3QvMTgzMBGGD2h0dHA6Ly90 -ZXN0LzE4NDARhg9odHRwOi8vdGVzdC8xODUwEYYPaHR0cDovL3Rlc3QvMTg2MBGG -D2h0dHA6Ly90ZXN0LzE4NzARhg9odHRwOi8vdGVzdC8xODgwEYYPaHR0cDovL3Rl -c3QvMTg5MBGGD2h0dHA6Ly90ZXN0LzE5MDARhg9odHRwOi8vdGVzdC8xOTEwEYYP -aHR0cDovL3Rlc3QvMTkyMBGGD2h0dHA6Ly90ZXN0LzE5MzARhg9odHRwOi8vdGVz -dC8xOTQwEYYPaHR0cDovL3Rlc3QvMTk1MBGGD2h0dHA6Ly90ZXN0LzE5NjARhg9o -dHRwOi8vdGVzdC8xOTcwEYYPaHR0cDovL3Rlc3QvMTk4MBGGD2h0dHA6Ly90ZXN0 -LzE5OTARhg9odHRwOi8vdGVzdC8yMDAwEYYPaHR0cDovL3Rlc3QvMjAxMBGGD2h0 -dHA6Ly90ZXN0LzIwMjARhg9odHRwOi8vdGVzdC8yMDMwEYYPaHR0cDovL3Rlc3Qv -MjA0MBGGD2h0dHA6Ly90ZXN0LzIwNTARhg9odHRwOi8vdGVzdC8yMDYwEYYPaHR0 -cDovL3Rlc3QvMjA3MBGGD2h0dHA6Ly90ZXN0LzIwODARhg9odHRwOi8vdGVzdC8y -MDkwEYYPaHR0cDovL3Rlc3QvMjEwMBGGD2h0dHA6Ly90ZXN0LzIxMTARhg9odHRw -Oi8vdGVzdC8yMTIwEYYPaHR0cDovL3Rlc3QvMjEzMBGGD2h0dHA6Ly90ZXN0LzIx -NDARhg9odHRwOi8vdGVzdC8yMTUwEYYPaHR0cDovL3Rlc3QvMjE2MBGGD2h0dHA6 -Ly90ZXN0LzIxNzARhg9odHRwOi8vdGVzdC8yMTgwEYYPaHR0cDovL3Rlc3QvMjE5 -MBGGD2h0dHA6Ly90ZXN0LzIyMDARhg9odHRwOi8vdGVzdC8yMjEwEYYPaHR0cDov -L3Rlc3QvMjIyMBGGD2h0dHA6Ly90ZXN0LzIyMzARhg9odHRwOi8vdGVzdC8yMjQw -EYYPaHR0cDovL3Rlc3QvMjI1MBGGD2h0dHA6Ly90ZXN0LzIyNjARhg9odHRwOi8v -dGVzdC8yMjcwEYYPaHR0cDovL3Rlc3QvMjI4MBGGD2h0dHA6Ly90ZXN0LzIyOTAR -hg9odHRwOi8vdGVzdC8yMzAwEYYPaHR0cDovL3Rlc3QvMjMxMBGGD2h0dHA6Ly90 -ZXN0LzIzMjARhg9odHRwOi8vdGVzdC8yMzMwEYYPaHR0cDovL3Rlc3QvMjM0MBGG -D2h0dHA6Ly90ZXN0LzIzNTARhg9odHRwOi8vdGVzdC8yMzYwEYYPaHR0cDovL3Rl -c3QvMjM3MBGGD2h0dHA6Ly90ZXN0LzIzODARhg9odHRwOi8vdGVzdC8yMzkwEYYP -aHR0cDovL3Rlc3QvMjQwMBGGD2h0dHA6Ly90ZXN0LzI0MTARhg9odHRwOi8vdGVz -dC8yNDIwEYYPaHR0cDovL3Rlc3QvMjQzMBGGD2h0dHA6Ly90ZXN0LzI0NDARhg9o -dHRwOi8vdGVzdC8yNDUwEYYPaHR0cDovL3Rlc3QvMjQ2MBGGD2h0dHA6Ly90ZXN0 -LzI0NzARhg9odHRwOi8vdGVzdC8yNDgwEYYPaHR0cDovL3Rlc3QvMjQ5MBGGD2h0 -dHA6Ly90ZXN0LzI1MDARhg9odHRwOi8vdGVzdC8yNTEwEYYPaHR0cDovL3Rlc3Qv -MjUyMBGGD2h0dHA6Ly90ZXN0LzI1MzARhg9odHRwOi8vdGVzdC8yNTQwEYYPaHR0 -cDovL3Rlc3QvMjU1MBGGD2h0dHA6Ly90ZXN0LzI1NjARhg9odHRwOi8vdGVzdC8y -NTcwEYYPaHR0cDovL3Rlc3QvMjU4MBGGD2h0dHA6Ly90ZXN0LzI1OTARhg9odHRw -Oi8vdGVzdC8yNjAwEYYPaHR0cDovL3Rlc3QvMjYxMBGGD2h0dHA6Ly90ZXN0LzI2 -MjARhg9odHRwOi8vdGVzdC8yNjMwEYYPaHR0cDovL3Rlc3QvMjY0MBGGD2h0dHA6 -Ly90ZXN0LzI2NTARhg9odHRwOi8vdGVzdC8yNjYwEYYPaHR0cDovL3Rlc3QvMjY3 -MBGGD2h0dHA6Ly90ZXN0LzI2ODARhg9odHRwOi8vdGVzdC8yNjkwEYYPaHR0cDov -L3Rlc3QvMjcwMBGGD2h0dHA6Ly90ZXN0LzI3MTARhg9odHRwOi8vdGVzdC8yNzIw -EYYPaHR0cDovL3Rlc3QvMjczMBGGD2h0dHA6Ly90ZXN0LzI3NDARhg9odHRwOi8v -dGVzdC8yNzUwEYYPaHR0cDovL3Rlc3QvMjc2MBGGD2h0dHA6Ly90ZXN0LzI3NzAR -hg9odHRwOi8vdGVzdC8yNzgwEYYPaHR0cDovL3Rlc3QvMjc5MBGGD2h0dHA6Ly90 -ZXN0LzI4MDARhg9odHRwOi8vdGVzdC8yODEwEYYPaHR0cDovL3Rlc3QvMjgyMBGG -D2h0dHA6Ly90ZXN0LzI4MzARhg9odHRwOi8vdGVzdC8yODQwEYYPaHR0cDovL3Rl -c3QvMjg1MBGGD2h0dHA6Ly90ZXN0LzI4NjARhg9odHRwOi8vdGVzdC8yODcwEYYP -aHR0cDovL3Rlc3QvMjg4MBGGD2h0dHA6Ly90ZXN0LzI4OTARhg9odHRwOi8vdGVz -dC8yOTAwEYYPaHR0cDovL3Rlc3QvMjkxMBGGD2h0dHA6Ly90ZXN0LzI5MjARhg9o -dHRwOi8vdGVzdC8yOTMwEYYPaHR0cDovL3Rlc3QvMjk0MBGGD2h0dHA6Ly90ZXN0 -LzI5NTARhg9odHRwOi8vdGVzdC8yOTYwEYYPaHR0cDovL3Rlc3QvMjk3MBGGD2h0 -dHA6Ly90ZXN0LzI5ODARhg9odHRwOi8vdGVzdC8yOTkwEYYPaHR0cDovL3Rlc3Qv -MzAwMBGGD2h0dHA6Ly90ZXN0LzMwMTARhg9odHRwOi8vdGVzdC8zMDIwEYYPaHR0 -cDovL3Rlc3QvMzAzMBGGD2h0dHA6Ly90ZXN0LzMwNDARhg9odHRwOi8vdGVzdC8z -MDUwEYYPaHR0cDovL3Rlc3QvMzA2MBGGD2h0dHA6Ly90ZXN0LzMwNzARhg9odHRw -Oi8vdGVzdC8zMDgwEYYPaHR0cDovL3Rlc3QvMzA5MBGGD2h0dHA6Ly90ZXN0LzMx -MDARhg9odHRwOi8vdGVzdC8zMTEwEYYPaHR0cDovL3Rlc3QvMzEyMBGGD2h0dHA6 -Ly90ZXN0LzMxMzARhg9odHRwOi8vdGVzdC8zMTQwEYYPaHR0cDovL3Rlc3QvMzE1 -MBGGD2h0dHA6Ly90ZXN0LzMxNjARhg9odHRwOi8vdGVzdC8zMTcwEYYPaHR0cDov -L3Rlc3QvMzE4MBGGD2h0dHA6Ly90ZXN0LzMxOTARhg9odHRwOi8vdGVzdC8zMjAw -EYYPaHR0cDovL3Rlc3QvMzIxMBGGD2h0dHA6Ly90ZXN0LzMyMjARhg9odHRwOi8v -dGVzdC8zMjMwEYYPaHR0cDovL3Rlc3QvMzI0MBGGD2h0dHA6Ly90ZXN0LzMyNTAR -hg9odHRwOi8vdGVzdC8zMjYwEYYPaHR0cDovL3Rlc3QvMzI3MBGGD2h0dHA6Ly90 -ZXN0LzMyODARhg9odHRwOi8vdGVzdC8zMjkwEYYPaHR0cDovL3Rlc3QvMzMwMBGG -D2h0dHA6Ly90ZXN0LzMzMTARhg9odHRwOi8vdGVzdC8zMzIwEYYPaHR0cDovL3Rl -c3QvMzMzMBGGD2h0dHA6Ly90ZXN0LzMzNDARhg9odHRwOi8vdGVzdC8zMzUwEYYP -aHR0cDovL3Rlc3QvMzM2MBGGD2h0dHA6Ly90ZXN0LzMzNzARhg9odHRwOi8vdGVz -dC8zMzgwEYYPaHR0cDovL3Rlc3QvMzM5MBGGD2h0dHA6Ly90ZXN0LzM0MDARhg9o -dHRwOi8vdGVzdC8zNDEwEYYPaHR0cDovL3Rlc3QvMzQyMBGGD2h0dHA6Ly90ZXN0 -LzM0MzARhg9odHRwOi8vdGVzdC8zNDQwEYYPaHR0cDovL3Rlc3QvMzQ1MBGGD2h0 -dHA6Ly90ZXN0LzM0NjARhg9odHRwOi8vdGVzdC8zNDcwEYYPaHR0cDovL3Rlc3Qv -MzQ4MBGGD2h0dHA6Ly90ZXN0LzM0OTARhg9odHRwOi8vdGVzdC8zNTAwEYYPaHR0 -cDovL3Rlc3QvMzUxMBGGD2h0dHA6Ly90ZXN0LzM1MjARhg9odHRwOi8vdGVzdC8z -NTMwEYYPaHR0cDovL3Rlc3QvMzU0MBGGD2h0dHA6Ly90ZXN0LzM1NTARhg9odHRw -Oi8vdGVzdC8zNTYwEYYPaHR0cDovL3Rlc3QvMzU3MBGGD2h0dHA6Ly90ZXN0LzM1 -ODARhg9odHRwOi8vdGVzdC8zNTkwEYYPaHR0cDovL3Rlc3QvMzYwMBGGD2h0dHA6 -Ly90ZXN0LzM2MTARhg9odHRwOi8vdGVzdC8zNjIwEYYPaHR0cDovL3Rlc3QvMzYz -MBGGD2h0dHA6Ly90ZXN0LzM2NDARhg9odHRwOi8vdGVzdC8zNjUwEYYPaHR0cDov -L3Rlc3QvMzY2MBGGD2h0dHA6Ly90ZXN0LzM2NzARhg9odHRwOi8vdGVzdC8zNjgw -EYYPaHR0cDovL3Rlc3QvMzY5MBGGD2h0dHA6Ly90ZXN0LzM3MDARhg9odHRwOi8v -dGVzdC8zNzEwEYYPaHR0cDovL3Rlc3QvMzcyMBGGD2h0dHA6Ly90ZXN0LzM3MzAR -hg9odHRwOi8vdGVzdC8zNzQwEYYPaHR0cDovL3Rlc3QvMzc1MBGGD2h0dHA6Ly90 -ZXN0LzM3NjARhg9odHRwOi8vdGVzdC8zNzcwEYYPaHR0cDovL3Rlc3QvMzc4MBGG -D2h0dHA6Ly90ZXN0LzM3OTARhg9odHRwOi8vdGVzdC8zODAwEYYPaHR0cDovL3Rl -c3QvMzgxMBGGD2h0dHA6Ly90ZXN0LzM4MjARhg9odHRwOi8vdGVzdC8zODMwEYYP -aHR0cDovL3Rlc3QvMzg0MBGGD2h0dHA6Ly90ZXN0LzM4NTARhg9odHRwOi8vdGVz -dC8zODYwEYYPaHR0cDovL3Rlc3QvMzg3MBGGD2h0dHA6Ly90ZXN0LzM4ODARhg9o -dHRwOi8vdGVzdC8zODkwEYYPaHR0cDovL3Rlc3QvMzkwMBGGD2h0dHA6Ly90ZXN0 -LzM5MTARhg9odHRwOi8vdGVzdC8zOTIwEYYPaHR0cDovL3Rlc3QvMzkzMBGGD2h0 -dHA6Ly90ZXN0LzM5NDARhg9odHRwOi8vdGVzdC8zOTUwEYYPaHR0cDovL3Rlc3Qv -Mzk2MBGGD2h0dHA6Ly90ZXN0LzM5NzARhg9odHRwOi8vdGVzdC8zOTgwEYYPaHR0 -cDovL3Rlc3QvMzk5MBGGD2h0dHA6Ly90ZXN0LzQwMDARhg9odHRwOi8vdGVzdC80 -MDEwEYYPaHR0cDovL3Rlc3QvNDAyMBGGD2h0dHA6Ly90ZXN0LzQwMzARhg9odHRw -Oi8vdGVzdC80MDQwEYYPaHR0cDovL3Rlc3QvNDA1MBGGD2h0dHA6Ly90ZXN0LzQw -NjARhg9odHRwOi8vdGVzdC80MDcwEYYPaHR0cDovL3Rlc3QvNDA4MBGGD2h0dHA6 -Ly90ZXN0LzQwOTARhg9odHRwOi8vdGVzdC80MTAwEYYPaHR0cDovL3Rlc3QvNDEx -MBGGD2h0dHA6Ly90ZXN0LzQxMjARhg9odHRwOi8vdGVzdC80MTMwEYYPaHR0cDov -L3Rlc3QvNDE0MBGGD2h0dHA6Ly90ZXN0LzQxNTARhg9odHRwOi8vdGVzdC80MTYw -EYYPaHR0cDovL3Rlc3QvNDE3MBGGD2h0dHA6Ly90ZXN0LzQxODARhg9odHRwOi8v -dGVzdC80MTkwEYYPaHR0cDovL3Rlc3QvNDIwMBGGD2h0dHA6Ly90ZXN0LzQyMTAR -hg9odHRwOi8vdGVzdC80MjIwEYYPaHR0cDovL3Rlc3QvNDIzMBGGD2h0dHA6Ly90 -ZXN0LzQyNDARhg9odHRwOi8vdGVzdC80MjUwEYYPaHR0cDovL3Rlc3QvNDI2MBGG -D2h0dHA6Ly90ZXN0LzQyNzARhg9odHRwOi8vdGVzdC80MjgwEYYPaHR0cDovL3Rl -c3QvNDI5MBGGD2h0dHA6Ly90ZXN0LzQzMDARhg9odHRwOi8vdGVzdC80MzEwEYYP -aHR0cDovL3Rlc3QvNDMyMBGGD2h0dHA6Ly90ZXN0LzQzMzARhg9odHRwOi8vdGVz -dC80MzQwEYYPaHR0cDovL3Rlc3QvNDM1MBGGD2h0dHA6Ly90ZXN0LzQzNjARhg9o -dHRwOi8vdGVzdC80MzcwEYYPaHR0cDovL3Rlc3QvNDM4MBGGD2h0dHA6Ly90ZXN0 -LzQzOTARhg9odHRwOi8vdGVzdC80NDAwEYYPaHR0cDovL3Rlc3QvNDQxMBGGD2h0 -dHA6Ly90ZXN0LzQ0MjARhg9odHRwOi8vdGVzdC80NDMwEYYPaHR0cDovL3Rlc3Qv -NDQ0MBGGD2h0dHA6Ly90ZXN0LzQ0NTARhg9odHRwOi8vdGVzdC80NDYwEYYPaHR0 -cDovL3Rlc3QvNDQ3MBGGD2h0dHA6Ly90ZXN0LzQ0ODARhg9odHRwOi8vdGVzdC80 -NDkwEYYPaHR0cDovL3Rlc3QvNDUwMBGGD2h0dHA6Ly90ZXN0LzQ1MTARhg9odHRw -Oi8vdGVzdC80NTIwEYYPaHR0cDovL3Rlc3QvNDUzMBGGD2h0dHA6Ly90ZXN0LzQ1 -NDARhg9odHRwOi8vdGVzdC80NTUwEYYPaHR0cDovL3Rlc3QvNDU2MBGGD2h0dHA6 -Ly90ZXN0LzQ1NzARhg9odHRwOi8vdGVzdC80NTgwEYYPaHR0cDovL3Rlc3QvNDU5 -MBGGD2h0dHA6Ly90ZXN0LzQ2MDARhg9odHRwOi8vdGVzdC80NjEwEYYPaHR0cDov -L3Rlc3QvNDYyMBGGD2h0dHA6Ly90ZXN0LzQ2MzARhg9odHRwOi8vdGVzdC80NjQw -EYYPaHR0cDovL3Rlc3QvNDY1MBGGD2h0dHA6Ly90ZXN0LzQ2NjARhg9odHRwOi8v -dGVzdC80NjcwEYYPaHR0cDovL3Rlc3QvNDY4MBGGD2h0dHA6Ly90ZXN0LzQ2OTAR -hg9odHRwOi8vdGVzdC80NzAwEYYPaHR0cDovL3Rlc3QvNDcxMBGGD2h0dHA6Ly90 -ZXN0LzQ3MjARhg9odHRwOi8vdGVzdC80NzMwEYYPaHR0cDovL3Rlc3QvNDc0MBGG -D2h0dHA6Ly90ZXN0LzQ3NTARhg9odHRwOi8vdGVzdC80NzYwEYYPaHR0cDovL3Rl -c3QvNDc3MBGGD2h0dHA6Ly90ZXN0LzQ3ODARhg9odHRwOi8vdGVzdC80NzkwEYYP -aHR0cDovL3Rlc3QvNDgwMBGGD2h0dHA6Ly90ZXN0LzQ4MTARhg9odHRwOi8vdGVz -dC80ODIwEYYPaHR0cDovL3Rlc3QvNDgzMBGGD2h0dHA6Ly90ZXN0LzQ4NDARhg9o -dHRwOi8vdGVzdC80ODUwEYYPaHR0cDovL3Rlc3QvNDg2MBGGD2h0dHA6Ly90ZXN0 -LzQ4NzARhg9odHRwOi8vdGVzdC80ODgwEYYPaHR0cDovL3Rlc3QvNDg5MBGGD2h0 -dHA6Ly90ZXN0LzQ5MDARhg9odHRwOi8vdGVzdC80OTEwEYYPaHR0cDovL3Rlc3Qv -NDkyMBGGD2h0dHA6Ly90ZXN0LzQ5MzARhg9odHRwOi8vdGVzdC80OTQwEYYPaHR0 -cDovL3Rlc3QvNDk1MBGGD2h0dHA6Ly90ZXN0LzQ5NjARhg9odHRwOi8vdGVzdC80 -OTcwEYYPaHR0cDovL3Rlc3QvNDk4MBGGD2h0dHA6Ly90ZXN0LzQ5OTARhg9odHRw -Oi8vdGVzdC81MDAwEYYPaHR0cDovL3Rlc3QvNTAxMBGGD2h0dHA6Ly90ZXN0LzUw -MjARhg9odHRwOi8vdGVzdC81MDMwEYYPaHR0cDovL3Rlc3QvNTA0MBGGD2h0dHA6 -Ly90ZXN0LzUwNTARhg9odHRwOi8vdGVzdC81MDYwEYYPaHR0cDovL3Rlc3QvNTA3 -MBGGD2h0dHA6Ly90ZXN0LzUwODARhg9odHRwOi8vdGVzdC81MDkwEYYPaHR0cDov -L3Rlc3QvNTEwMBGGD2h0dHA6Ly90ZXN0LzUxMTARhg9odHRwOi8vdGVzdC81MTIw -EYYPaHR0cDovL3Rlc3QvNTEzMBGGD2h0dHA6Ly90ZXN0LzUxNDARhg9odHRwOi8v -dGVzdC81MTUwEYYPaHR0cDovL3Rlc3QvNTE2MBGGD2h0dHA6Ly90ZXN0LzUxNzAR -hg9odHRwOi8vdGVzdC81MTgwEYYPaHR0cDovL3Rlc3QvNTE5MBGGD2h0dHA6Ly90 -ZXN0LzUyMDARhg9odHRwOi8vdGVzdC81MjEwEYYPaHR0cDovL3Rlc3QvNTIyMBGG -D2h0dHA6Ly90ZXN0LzUyMzARhg9odHRwOi8vdGVzdC81MjQwEYYPaHR0cDovL3Rl -c3QvNTI1MBGGD2h0dHA6Ly90ZXN0LzUyNjARhg9odHRwOi8vdGVzdC81MjcwEYYP -aHR0cDovL3Rlc3QvNTI4MBGGD2h0dHA6Ly90ZXN0LzUyOTARhg9odHRwOi8vdGVz -dC81MzAwEYYPaHR0cDovL3Rlc3QvNTMxMBGGD2h0dHA6Ly90ZXN0LzUzMjARhg9o -dHRwOi8vdGVzdC81MzMwEYYPaHR0cDovL3Rlc3QvNTM0MBGGD2h0dHA6Ly90ZXN0 -LzUzNTARhg9odHRwOi8vdGVzdC81MzYwEYYPaHR0cDovL3Rlc3QvNTM3MBGGD2h0 -dHA6Ly90ZXN0LzUzODARhg9odHRwOi8vdGVzdC81MzkwEYYPaHR0cDovL3Rlc3Qv -NTQwMBGGD2h0dHA6Ly90ZXN0LzU0MTARhg9odHRwOi8vdGVzdC81NDIwEYYPaHR0 -cDovL3Rlc3QvNTQzMBGGD2h0dHA6Ly90ZXN0LzU0NDARhg9odHRwOi8vdGVzdC81 -NDUwEYYPaHR0cDovL3Rlc3QvNTQ2MBGGD2h0dHA6Ly90ZXN0LzU0NzARhg9odHRw -Oi8vdGVzdC81NDgwEYYPaHR0cDovL3Rlc3QvNTQ5MBGGD2h0dHA6Ly90ZXN0LzU1 -MDARhg9odHRwOi8vdGVzdC81NTEwEYYPaHR0cDovL3Rlc3QvNTUyMBGGD2h0dHA6 -Ly90ZXN0LzU1MzARhg9odHRwOi8vdGVzdC81NTQwEYYPaHR0cDovL3Rlc3QvNTU1 -MBGGD2h0dHA6Ly90ZXN0LzU1NjARhg9odHRwOi8vdGVzdC81NTcwEYYPaHR0cDov -L3Rlc3QvNTU4MBGGD2h0dHA6Ly90ZXN0LzU1OTARhg9odHRwOi8vdGVzdC81NjAw -EYYPaHR0cDovL3Rlc3QvNTYxMBGGD2h0dHA6Ly90ZXN0LzU2MjARhg9odHRwOi8v -dGVzdC81NjMwEYYPaHR0cDovL3Rlc3QvNTY0MBGGD2h0dHA6Ly90ZXN0LzU2NTAR -hg9odHRwOi8vdGVzdC81NjYwEYYPaHR0cDovL3Rlc3QvNTY3MBGGD2h0dHA6Ly90 -ZXN0LzU2ODARhg9odHRwOi8vdGVzdC81NjkwEYYPaHR0cDovL3Rlc3QvNTcwMBGG -D2h0dHA6Ly90ZXN0LzU3MTARhg9odHRwOi8vdGVzdC81NzIwEYYPaHR0cDovL3Rl -c3QvNTczMBGGD2h0dHA6Ly90ZXN0LzU3NDARhg9odHRwOi8vdGVzdC81NzUwEYYP -aHR0cDovL3Rlc3QvNTc2MBGGD2h0dHA6Ly90ZXN0LzU3NzARhg9odHRwOi8vdGVz -dC81NzgwEYYPaHR0cDovL3Rlc3QvNTc5MBGGD2h0dHA6Ly90ZXN0LzU4MDARhg9o -dHRwOi8vdGVzdC81ODEwEYYPaHR0cDovL3Rlc3QvNTgyMBGGD2h0dHA6Ly90ZXN0 -LzU4MzARhg9odHRwOi8vdGVzdC81ODQwEYYPaHR0cDovL3Rlc3QvNTg1MBGGD2h0 -dHA6Ly90ZXN0LzU4NjARhg9odHRwOi8vdGVzdC81ODcwEYYPaHR0cDovL3Rlc3Qv -NTg4MBGGD2h0dHA6Ly90ZXN0LzU4OTARhg9odHRwOi8vdGVzdC81OTAwEYYPaHR0 -cDovL3Rlc3QvNTkxMBGGD2h0dHA6Ly90ZXN0LzU5MjARhg9odHRwOi8vdGVzdC81 -OTMwEYYPaHR0cDovL3Rlc3QvNTk0MBGGD2h0dHA6Ly90ZXN0LzU5NTARhg9odHRw -Oi8vdGVzdC81OTYwEYYPaHR0cDovL3Rlc3QvNTk3MBGGD2h0dHA6Ly90ZXN0LzU5 -ODARhg9odHRwOi8vdGVzdC81OTkwEYYPaHR0cDovL3Rlc3QvNjAwMBGGD2h0dHA6 -Ly90ZXN0LzYwMTARhg9odHRwOi8vdGVzdC82MDIwEYYPaHR0cDovL3Rlc3QvNjAz -MBGGD2h0dHA6Ly90ZXN0LzYwNDARhg9odHRwOi8vdGVzdC82MDUwEYYPaHR0cDov -L3Rlc3QvNjA2MBGGD2h0dHA6Ly90ZXN0LzYwNzARhg9odHRwOi8vdGVzdC82MDgw -EYYPaHR0cDovL3Rlc3QvNjA5MBGGD2h0dHA6Ly90ZXN0LzYxMDARhg9odHRwOi8v -dGVzdC82MTEwEYYPaHR0cDovL3Rlc3QvNjEyMBGGD2h0dHA6Ly90ZXN0LzYxMzAR -hg9odHRwOi8vdGVzdC82MTQwEYYPaHR0cDovL3Rlc3QvNjE1MBGGD2h0dHA6Ly90 -ZXN0LzYxNjARhg9odHRwOi8vdGVzdC82MTcwEYYPaHR0cDovL3Rlc3QvNjE4MBGG -D2h0dHA6Ly90ZXN0LzYxOTARhg9odHRwOi8vdGVzdC82MjAwEYYPaHR0cDovL3Rl -c3QvNjIxMBGGD2h0dHA6Ly90ZXN0LzYyMjARhg9odHRwOi8vdGVzdC82MjMwEYYP -aHR0cDovL3Rlc3QvNjI0MBGGD2h0dHA6Ly90ZXN0LzYyNTARhg9odHRwOi8vdGVz -dC82MjYwEYYPaHR0cDovL3Rlc3QvNjI3MBGGD2h0dHA6Ly90ZXN0LzYyODARhg9o -dHRwOi8vdGVzdC82MjkwEYYPaHR0cDovL3Rlc3QvNjMwMBGGD2h0dHA6Ly90ZXN0 -LzYzMTARhg9odHRwOi8vdGVzdC82MzIwEYYPaHR0cDovL3Rlc3QvNjMzMBGGD2h0 -dHA6Ly90ZXN0LzYzNDARhg9odHRwOi8vdGVzdC82MzUwEYYPaHR0cDovL3Rlc3Qv -NjM2MBGGD2h0dHA6Ly90ZXN0LzYzNzARhg9odHRwOi8vdGVzdC82MzgwEYYPaHR0 -cDovL3Rlc3QvNjM5MBGGD2h0dHA6Ly90ZXN0LzY0MDARhg9odHRwOi8vdGVzdC82 -NDEwEYYPaHR0cDovL3Rlc3QvNjQyMBGGD2h0dHA6Ly90ZXN0LzY0MzARhg9odHRw -Oi8vdGVzdC82NDQwEYYPaHR0cDovL3Rlc3QvNjQ1MBGGD2h0dHA6Ly90ZXN0LzY0 -NjARhg9odHRwOi8vdGVzdC82NDcwEYYPaHR0cDovL3Rlc3QvNjQ4MBGGD2h0dHA6 -Ly90ZXN0LzY0OTARhg9odHRwOi8vdGVzdC82NTAwEYYPaHR0cDovL3Rlc3QvNjUx -MBGGD2h0dHA6Ly90ZXN0LzY1MjARhg9odHRwOi8vdGVzdC82NTMwEYYPaHR0cDov -L3Rlc3QvNjU0MBGGD2h0dHA6Ly90ZXN0LzY1NTARhg9odHRwOi8vdGVzdC82NTYw -EYYPaHR0cDovL3Rlc3QvNjU3MBGGD2h0dHA6Ly90ZXN0LzY1ODARhg9odHRwOi8v -dGVzdC82NTkwEYYPaHR0cDovL3Rlc3QvNjYwMBGGD2h0dHA6Ly90ZXN0LzY2MTAR -hg9odHRwOi8vdGVzdC82NjIwEYYPaHR0cDovL3Rlc3QvNjYzMBGGD2h0dHA6Ly90 -ZXN0LzY2NDARhg9odHRwOi8vdGVzdC82NjUwEYYPaHR0cDovL3Rlc3QvNjY2MBGG -D2h0dHA6Ly90ZXN0LzY2NzARhg9odHRwOi8vdGVzdC82NjgwEYYPaHR0cDovL3Rl -c3QvNjY5MBGGD2h0dHA6Ly90ZXN0LzY3MDARhg9odHRwOi8vdGVzdC82NzEwEYYP -aHR0cDovL3Rlc3QvNjcyMBGGD2h0dHA6Ly90ZXN0LzY3MzARhg9odHRwOi8vdGVz -dC82NzQwEYYPaHR0cDovL3Rlc3QvNjc1MBGGD2h0dHA6Ly90ZXN0LzY3NjARhg9o -dHRwOi8vdGVzdC82NzcwEYYPaHR0cDovL3Rlc3QvNjc4MBGGD2h0dHA6Ly90ZXN0 -LzY3OTARhg9odHRwOi8vdGVzdC82ODAwEYYPaHR0cDovL3Rlc3QvNjgxMBGGD2h0 -dHA6Ly90ZXN0LzY4MjARhg9odHRwOi8vdGVzdC82ODMwEYYPaHR0cDovL3Rlc3Qv -Njg0MBGGD2h0dHA6Ly90ZXN0LzY4NTARhg9odHRwOi8vdGVzdC82ODYwEYYPaHR0 -cDovL3Rlc3QvNjg3MBGGD2h0dHA6Ly90ZXN0LzY4ODARhg9odHRwOi8vdGVzdC82 -ODkwEYYPaHR0cDovL3Rlc3QvNjkwMBGGD2h0dHA6Ly90ZXN0LzY5MTARhg9odHRw -Oi8vdGVzdC82OTIwEYYPaHR0cDovL3Rlc3QvNjkzMBGGD2h0dHA6Ly90ZXN0LzY5 -NDARhg9odHRwOi8vdGVzdC82OTUwEYYPaHR0cDovL3Rlc3QvNjk2MBGGD2h0dHA6 -Ly90ZXN0LzY5NzARhg9odHRwOi8vdGVzdC82OTgwEYYPaHR0cDovL3Rlc3QvNjk5 -MBGGD2h0dHA6Ly90ZXN0LzcwMDARhg9odHRwOi8vdGVzdC83MDEwEYYPaHR0cDov -L3Rlc3QvNzAyMBGGD2h0dHA6Ly90ZXN0LzcwMzARhg9odHRwOi8vdGVzdC83MDQw -EYYPaHR0cDovL3Rlc3QvNzA1MBGGD2h0dHA6Ly90ZXN0LzcwNjARhg9odHRwOi8v -dGVzdC83MDcwEYYPaHR0cDovL3Rlc3QvNzA4MBGGD2h0dHA6Ly90ZXN0LzcwOTAR -hg9odHRwOi8vdGVzdC83MTAwEYYPaHR0cDovL3Rlc3QvNzExMBGGD2h0dHA6Ly90 -ZXN0LzcxMjARhg9odHRwOi8vdGVzdC83MTMwEYYPaHR0cDovL3Rlc3QvNzE0MBGG -D2h0dHA6Ly90ZXN0LzcxNTARhg9odHRwOi8vdGVzdC83MTYwEYYPaHR0cDovL3Rl -c3QvNzE3MBGGD2h0dHA6Ly90ZXN0LzcxODARhg9odHRwOi8vdGVzdC83MTkwEYYP -aHR0cDovL3Rlc3QvNzIwMBGGD2h0dHA6Ly90ZXN0LzcyMTARhg9odHRwOi8vdGVz -dC83MjIwEYYPaHR0cDovL3Rlc3QvNzIzMBGGD2h0dHA6Ly90ZXN0LzcyNDARhg9o -dHRwOi8vdGVzdC83MjUwEYYPaHR0cDovL3Rlc3QvNzI2MBGGD2h0dHA6Ly90ZXN0 -LzcyNzARhg9odHRwOi8vdGVzdC83MjgwEYYPaHR0cDovL3Rlc3QvNzI5MBGGD2h0 -dHA6Ly90ZXN0LzczMDARhg9odHRwOi8vdGVzdC83MzEwEYYPaHR0cDovL3Rlc3Qv -NzMyMBGGD2h0dHA6Ly90ZXN0LzczMzARhg9odHRwOi8vdGVzdC83MzQwEYYPaHR0 -cDovL3Rlc3QvNzM1MBGGD2h0dHA6Ly90ZXN0LzczNjARhg9odHRwOi8vdGVzdC83 -MzcwEYYPaHR0cDovL3Rlc3QvNzM4MBGGD2h0dHA6Ly90ZXN0LzczOTARhg9odHRw -Oi8vdGVzdC83NDAwEYYPaHR0cDovL3Rlc3QvNzQxMBGGD2h0dHA6Ly90ZXN0Lzc0 -MjARhg9odHRwOi8vdGVzdC83NDMwEYYPaHR0cDovL3Rlc3QvNzQ0MBGGD2h0dHA6 -Ly90ZXN0Lzc0NTARhg9odHRwOi8vdGVzdC83NDYwEYYPaHR0cDovL3Rlc3QvNzQ3 -MBGGD2h0dHA6Ly90ZXN0Lzc0ODARhg9odHRwOi8vdGVzdC83NDkwEYYPaHR0cDov -L3Rlc3QvNzUwMBGGD2h0dHA6Ly90ZXN0Lzc1MTARhg9odHRwOi8vdGVzdC83NTIw -EYYPaHR0cDovL3Rlc3QvNzUzMBGGD2h0dHA6Ly90ZXN0Lzc1NDARhg9odHRwOi8v -dGVzdC83NTUwEYYPaHR0cDovL3Rlc3QvNzU2MBGGD2h0dHA6Ly90ZXN0Lzc1NzAR -hg9odHRwOi8vdGVzdC83NTgwEYYPaHR0cDovL3Rlc3QvNzU5MBGGD2h0dHA6Ly90 -ZXN0Lzc2MDARhg9odHRwOi8vdGVzdC83NjEwEYYPaHR0cDovL3Rlc3QvNzYyMBGG -D2h0dHA6Ly90ZXN0Lzc2MzARhg9odHRwOi8vdGVzdC83NjQwEYYPaHR0cDovL3Rl -c3QvNzY1MBGGD2h0dHA6Ly90ZXN0Lzc2NjARhg9odHRwOi8vdGVzdC83NjcwEYYP -aHR0cDovL3Rlc3QvNzY4MBGGD2h0dHA6Ly90ZXN0Lzc2OTARhg9odHRwOi8vdGVz -dC83NzAwEYYPaHR0cDovL3Rlc3QvNzcxMBGGD2h0dHA6Ly90ZXN0Lzc3MjARhg9o -dHRwOi8vdGVzdC83NzMwEYYPaHR0cDovL3Rlc3QvNzc0MBGGD2h0dHA6Ly90ZXN0 -Lzc3NTARhg9odHRwOi8vdGVzdC83NzYwEYYPaHR0cDovL3Rlc3QvNzc3MBGGD2h0 -dHA6Ly90ZXN0Lzc3ODARhg9odHRwOi8vdGVzdC83NzkwEYYPaHR0cDovL3Rlc3Qv -NzgwMBGGD2h0dHA6Ly90ZXN0Lzc4MTARhg9odHRwOi8vdGVzdC83ODIwEYYPaHR0 -cDovL3Rlc3QvNzgzMBGGD2h0dHA6Ly90ZXN0Lzc4NDARhg9odHRwOi8vdGVzdC83 -ODUwEYYPaHR0cDovL3Rlc3QvNzg2MBGGD2h0dHA6Ly90ZXN0Lzc4NzARhg9odHRw -Oi8vdGVzdC83ODgwEYYPaHR0cDovL3Rlc3QvNzg5MBGGD2h0dHA6Ly90ZXN0Lzc5 -MDARhg9odHRwOi8vdGVzdC83OTEwEYYPaHR0cDovL3Rlc3QvNzkyMBGGD2h0dHA6 -Ly90ZXN0Lzc5MzARhg9odHRwOi8vdGVzdC83OTQwEYYPaHR0cDovL3Rlc3QvNzk1 -MBGGD2h0dHA6Ly90ZXN0Lzc5NjARhg9odHRwOi8vdGVzdC83OTcwEYYPaHR0cDov -L3Rlc3QvNzk4MBGGD2h0dHA6Ly90ZXN0Lzc5OTARhg9odHRwOi8vdGVzdC84MDAw -EYYPaHR0cDovL3Rlc3QvODAxMBGGD2h0dHA6Ly90ZXN0LzgwMjARhg9odHRwOi8v -dGVzdC84MDMwEYYPaHR0cDovL3Rlc3QvODA0MBGGD2h0dHA6Ly90ZXN0LzgwNTAR -hg9odHRwOi8vdGVzdC84MDYwEYYPaHR0cDovL3Rlc3QvODA3MBGGD2h0dHA6Ly90 -ZXN0LzgwODARhg9odHRwOi8vdGVzdC84MDkwEYYPaHR0cDovL3Rlc3QvODEwMBGG -D2h0dHA6Ly90ZXN0LzgxMTARhg9odHRwOi8vdGVzdC84MTIwEYYPaHR0cDovL3Rl -c3QvODEzMBGGD2h0dHA6Ly90ZXN0LzgxNDARhg9odHRwOi8vdGVzdC84MTUwEYYP -aHR0cDovL3Rlc3QvODE2MBGGD2h0dHA6Ly90ZXN0LzgxNzARhg9odHRwOi8vdGVz -dC84MTgwEYYPaHR0cDovL3Rlc3QvODE5MBGGD2h0dHA6Ly90ZXN0LzgyMDARhg9o -dHRwOi8vdGVzdC84MjEwEYYPaHR0cDovL3Rlc3QvODIyMBGGD2h0dHA6Ly90ZXN0 -LzgyMzARhg9odHRwOi8vdGVzdC84MjQwEYYPaHR0cDovL3Rlc3QvODI1MBGGD2h0 -dHA6Ly90ZXN0LzgyNjARhg9odHRwOi8vdGVzdC84MjcwEYYPaHR0cDovL3Rlc3Qv -ODI4MBGGD2h0dHA6Ly90ZXN0LzgyOTARhg9odHRwOi8vdGVzdC84MzAwEYYPaHR0 -cDovL3Rlc3QvODMxMBGGD2h0dHA6Ly90ZXN0LzgzMjARhg9odHRwOi8vdGVzdC84 -MzMwEYYPaHR0cDovL3Rlc3QvODM0MBGGD2h0dHA6Ly90ZXN0LzgzNTARhg9odHRw -Oi8vdGVzdC84MzYwEYYPaHR0cDovL3Rlc3QvODM3MBGGD2h0dHA6Ly90ZXN0Lzgz -ODARhg9odHRwOi8vdGVzdC84MzkwEYYPaHR0cDovL3Rlc3QvODQwMBGGD2h0dHA6 -Ly90ZXN0Lzg0MTARhg9odHRwOi8vdGVzdC84NDIwEYYPaHR0cDovL3Rlc3QvODQz -MBGGD2h0dHA6Ly90ZXN0Lzg0NDARhg9odHRwOi8vdGVzdC84NDUwEYYPaHR0cDov -L3Rlc3QvODQ2MBGGD2h0dHA6Ly90ZXN0Lzg0NzARhg9odHRwOi8vdGVzdC84NDgw -EYYPaHR0cDovL3Rlc3QvODQ5MBGGD2h0dHA6Ly90ZXN0Lzg1MDARhg9odHRwOi8v -dGVzdC84NTEwEYYPaHR0cDovL3Rlc3QvODUyMBGGD2h0dHA6Ly90ZXN0Lzg1MzAR -hg9odHRwOi8vdGVzdC84NTQwEYYPaHR0cDovL3Rlc3QvODU1MBGGD2h0dHA6Ly90 -ZXN0Lzg1NjARhg9odHRwOi8vdGVzdC84NTcwEYYPaHR0cDovL3Rlc3QvODU4MBGG -D2h0dHA6Ly90ZXN0Lzg1OTARhg9odHRwOi8vdGVzdC84NjAwEYYPaHR0cDovL3Rl -c3QvODYxMBGGD2h0dHA6Ly90ZXN0Lzg2MjARhg9odHRwOi8vdGVzdC84NjMwEYYP -aHR0cDovL3Rlc3QvODY0MBGGD2h0dHA6Ly90ZXN0Lzg2NTARhg9odHRwOi8vdGVz -dC84NjYwEYYPaHR0cDovL3Rlc3QvODY3MBGGD2h0dHA6Ly90ZXN0Lzg2ODARhg9o -dHRwOi8vdGVzdC84NjkwEYYPaHR0cDovL3Rlc3QvODcwMBGGD2h0dHA6Ly90ZXN0 -Lzg3MTARhg9odHRwOi8vdGVzdC84NzIwEYYPaHR0cDovL3Rlc3QvODczMBGGD2h0 -dHA6Ly90ZXN0Lzg3NDARhg9odHRwOi8vdGVzdC84NzUwEYYPaHR0cDovL3Rlc3Qv -ODc2MBGGD2h0dHA6Ly90ZXN0Lzg3NzARhg9odHRwOi8vdGVzdC84NzgwEYYPaHR0 -cDovL3Rlc3QvODc5MBGGD2h0dHA6Ly90ZXN0Lzg4MDARhg9odHRwOi8vdGVzdC84 -ODEwEYYPaHR0cDovL3Rlc3QvODgyMBGGD2h0dHA6Ly90ZXN0Lzg4MzARhg9odHRw -Oi8vdGVzdC84ODQwEYYPaHR0cDovL3Rlc3QvODg1MBGGD2h0dHA6Ly90ZXN0Lzg4 -NjARhg9odHRwOi8vdGVzdC84ODcwEYYPaHR0cDovL3Rlc3QvODg4MBGGD2h0dHA6 -Ly90ZXN0Lzg4OTARhg9odHRwOi8vdGVzdC84OTAwEYYPaHR0cDovL3Rlc3QvODkx -MBGGD2h0dHA6Ly90ZXN0Lzg5MjARhg9odHRwOi8vdGVzdC84OTMwEYYPaHR0cDov -L3Rlc3QvODk0MBGGD2h0dHA6Ly90ZXN0Lzg5NTARhg9odHRwOi8vdGVzdC84OTYw -EYYPaHR0cDovL3Rlc3QvODk3MBGGD2h0dHA6Ly90ZXN0Lzg5ODARhg9odHRwOi8v -dGVzdC84OTkwEYYPaHR0cDovL3Rlc3QvOTAwMBGGD2h0dHA6Ly90ZXN0LzkwMTAR -hg9odHRwOi8vdGVzdC85MDIwEYYPaHR0cDovL3Rlc3QvOTAzMBGGD2h0dHA6Ly90 -ZXN0LzkwNDARhg9odHRwOi8vdGVzdC85MDUwEYYPaHR0cDovL3Rlc3QvOTA2MBGG -D2h0dHA6Ly90ZXN0LzkwNzARhg9odHRwOi8vdGVzdC85MDgwEYYPaHR0cDovL3Rl -c3QvOTA5MBGGD2h0dHA6Ly90ZXN0LzkxMDARhg9odHRwOi8vdGVzdC85MTEwEYYP -aHR0cDovL3Rlc3QvOTEyMBGGD2h0dHA6Ly90ZXN0LzkxMzARhg9odHRwOi8vdGVz -dC85MTQwEYYPaHR0cDovL3Rlc3QvOTE1MBGGD2h0dHA6Ly90ZXN0LzkxNjARhg9o -dHRwOi8vdGVzdC85MTcwEYYPaHR0cDovL3Rlc3QvOTE4MBGGD2h0dHA6Ly90ZXN0 -LzkxOTARhg9odHRwOi8vdGVzdC85MjAwEYYPaHR0cDovL3Rlc3QvOTIxMBGGD2h0 -dHA6Ly90ZXN0LzkyMjARhg9odHRwOi8vdGVzdC85MjMwEYYPaHR0cDovL3Rlc3Qv -OTI0MBGGD2h0dHA6Ly90ZXN0LzkyNTARhg9odHRwOi8vdGVzdC85MjYwEYYPaHR0 -cDovL3Rlc3QvOTI3MBGGD2h0dHA6Ly90ZXN0LzkyODARhg9odHRwOi8vdGVzdC85 -MjkwEYYPaHR0cDovL3Rlc3QvOTMwMBGGD2h0dHA6Ly90ZXN0LzkzMTARhg9odHRw -Oi8vdGVzdC85MzIwEYYPaHR0cDovL3Rlc3QvOTMzMBGGD2h0dHA6Ly90ZXN0Lzkz -NDARhg9odHRwOi8vdGVzdC85MzUwEYYPaHR0cDovL3Rlc3QvOTM2MBGGD2h0dHA6 -Ly90ZXN0LzkzNzARhg9odHRwOi8vdGVzdC85MzgwEYYPaHR0cDovL3Rlc3QvOTM5 -MBGGD2h0dHA6Ly90ZXN0Lzk0MDARhg9odHRwOi8vdGVzdC85NDEwEYYPaHR0cDov -L3Rlc3QvOTQyMBGGD2h0dHA6Ly90ZXN0Lzk0MzARhg9odHRwOi8vdGVzdC85NDQw -EYYPaHR0cDovL3Rlc3QvOTQ1MBGGD2h0dHA6Ly90ZXN0Lzk0NjARhg9odHRwOi8v -dGVzdC85NDcwEYYPaHR0cDovL3Rlc3QvOTQ4MBGGD2h0dHA6Ly90ZXN0Lzk0OTAR -hg9odHRwOi8vdGVzdC85NTAwEYYPaHR0cDovL3Rlc3QvOTUxMBGGD2h0dHA6Ly90 -ZXN0Lzk1MjARhg9odHRwOi8vdGVzdC85NTMwEYYPaHR0cDovL3Rlc3QvOTU0MBGG -D2h0dHA6Ly90ZXN0Lzk1NTARhg9odHRwOi8vdGVzdC85NTYwEYYPaHR0cDovL3Rl -c3QvOTU3MBGGD2h0dHA6Ly90ZXN0Lzk1ODARhg9odHRwOi8vdGVzdC85NTkwEYYP -aHR0cDovL3Rlc3QvOTYwMBGGD2h0dHA6Ly90ZXN0Lzk2MTARhg9odHRwOi8vdGVz -dC85NjIwEYYPaHR0cDovL3Rlc3QvOTYzMBGGD2h0dHA6Ly90ZXN0Lzk2NDARhg9o -dHRwOi8vdGVzdC85NjUwEYYPaHR0cDovL3Rlc3QvOTY2MBGGD2h0dHA6Ly90ZXN0 -Lzk2NzARhg9odHRwOi8vdGVzdC85NjgwEYYPaHR0cDovL3Rlc3QvOTY5MBGGD2h0 -dHA6Ly90ZXN0Lzk3MDARhg9odHRwOi8vdGVzdC85NzEwEYYPaHR0cDovL3Rlc3Qv -OTcyMBGGD2h0dHA6Ly90ZXN0Lzk3MzARhg9odHRwOi8vdGVzdC85NzQwEYYPaHR0 -cDovL3Rlc3QvOTc1MBGGD2h0dHA6Ly90ZXN0Lzk3NjARhg9odHRwOi8vdGVzdC85 -NzcwEYYPaHR0cDovL3Rlc3QvOTc4MBGGD2h0dHA6Ly90ZXN0Lzk3OTARhg9odHRw -Oi8vdGVzdC85ODAwEYYPaHR0cDovL3Rlc3QvOTgxMBGGD2h0dHA6Ly90ZXN0Lzk4 -MjARhg9odHRwOi8vdGVzdC85ODMwEYYPaHR0cDovL3Rlc3QvOTg0MBGGD2h0dHA6 -Ly90ZXN0Lzk4NTARhg9odHRwOi8vdGVzdC85ODYwEYYPaHR0cDovL3Rlc3QvOTg3 -MBGGD2h0dHA6Ly90ZXN0Lzk4ODARhg9odHRwOi8vdGVzdC85ODkwEYYPaHR0cDov -L3Rlc3QvOTkwMBGGD2h0dHA6Ly90ZXN0Lzk5MTARhg9odHRwOi8vdGVzdC85OTIw -EYYPaHR0cDovL3Rlc3QvOTkzMBGGD2h0dHA6Ly90ZXN0Lzk5NDARhg9odHRwOi8v -dGVzdC85OTUwEYYPaHR0cDovL3Rlc3QvOTk2MBGGD2h0dHA6Ly90ZXN0Lzk5NzAR -hg9odHRwOi8vdGVzdC85OTgwEYYPaHR0cDovL3Rlc3QvOTk5MBKGEGh0dHA6Ly90 -ZXN0LzEwMDAwEoYQaHR0cDovL3Rlc3QvMTAwMTAShhBodHRwOi8vdGVzdC8xMDAy -MBKGEGh0dHA6Ly90ZXN0LzEwMDMwEoYQaHR0cDovL3Rlc3QvMTAwNDAShhBodHRw -Oi8vdGVzdC8xMDA1MBKGEGh0dHA6Ly90ZXN0LzEwMDYwEoYQaHR0cDovL3Rlc3Qv -MTAwNzAShhBodHRwOi8vdGVzdC8xMDA4MBKGEGh0dHA6Ly90ZXN0LzEwMDkwEoYQ -aHR0cDovL3Rlc3QvMTAxMDAShhBodHRwOi8vdGVzdC8xMDExMBKGEGh0dHA6Ly90 -ZXN0LzEwMTIwEoYQaHR0cDovL3Rlc3QvMTAxMzAShhBodHRwOi8vdGVzdC8xMDE0 -MBKGEGh0dHA6Ly90ZXN0LzEwMTUwEoYQaHR0cDovL3Rlc3QvMTAxNjAShhBodHRw -Oi8vdGVzdC8xMDE3MBKGEGh0dHA6Ly90ZXN0LzEwMTgwEoYQaHR0cDovL3Rlc3Qv -MTAxOTAShhBodHRwOi8vdGVzdC8xMDIwMBKGEGh0dHA6Ly90ZXN0LzEwMjEwEoYQ -aHR0cDovL3Rlc3QvMTAyMjAShhBodHRwOi8vdGVzdC8xMDIzMBKGEGh0dHA6Ly90 -ZXN0LzEwMjShgmluMAmCB3gwLnRlc3QwCYIHeDEudGVzdDAJggd4Mi50ZXN0MAmC -B3gzLnRlc3QwCYIHeDQudGVzdDAJggd4NS50ZXN0MAmCB3g2LnRlc3QwCYIHeDcu -dGVzdDAJggd4OC50ZXN0MAmCB3g5LnRlc3QwCoIIeDEwLnRlc3QwCoIIeDExLnRl -c3QwCoIIeDEyLnRlc3QwCoIIeDEzLnRlc3QwCoIIeDE0LnRlc3QwCoIIeDE1LnRl -c3QwCoIIeDE2LnRlc3QwCoIIeDE3LnRlc3QwCoIIeDE4LnRlc3QwCoIIeDE5LnRl -c3QwCoIIeDIwLnRlc3QwCoIIeDIxLnRlc3QwCoIIeDIyLnRlc3QwCoIIeDIzLnRl -c3QwCoIIeDI0LnRlc3QwCoIIeDI1LnRlc3QwCoIIeDI2LnRlc3QwCoIIeDI3LnRl -c3QwCoIIeDI4LnRlc3QwCoIIeDI5LnRlc3QwCoIIeDMwLnRlc3QwCoIIeDMxLnRl -c3QwCoIIeDMyLnRlc3QwCoIIeDMzLnRlc3QwCoIIeDM0LnRlc3QwCoIIeDM1LnRl -c3QwCoIIeDM2LnRlc3QwCoIIeDM3LnRlc3QwCoIIeDM4LnRlc3QwCoIIeDM5LnRl -c3QwCoIIeDQwLnRlc3QwCoIIeDQxLnRlc3QwCoIIeDQyLnRlc3QwCoIIeDQzLnRl -c3QwCoIIeDQ0LnRlc3QwCoIIeDQ1LnRlc3QwCoIIeDQ2LnRlc3QwCoIIeDQ3LnRl -c3QwCoIIeDQ4LnRlc3QwCoIIeDQ5LnRlc3QwCoIIeDUwLnRlc3QwCoIIeDUxLnRl -c3QwCoIIeDUyLnRlc3QwCoIIeDUzLnRlc3QwCoIIeDU0LnRlc3QwCoIIeDU1LnRl -c3QwCoIIeDU2LnRlc3QwCoIIeDU3LnRlc3QwCoIIeDU4LnRlc3QwCoIIeDU5LnRl -c3QwCoIIeDYwLnRlc3QwCoIIeDYxLnRlc3QwCoIIeDYyLnRlc3QwCoIIeDYzLnRl -c3QwCoIIeDY0LnRlc3QwCoIIeDY1LnRlc3QwCoIIeDY2LnRlc3QwCoIIeDY3LnRl -c3QwCoIIeDY4LnRlc3QwCoIIeDY5LnRlc3QwCoIIeDcwLnRlc3QwCoIIeDcxLnRl -c3QwCoIIeDcyLnRlc3QwCoIIeDczLnRlc3QwCoIIeDc0LnRlc3QwCoIIeDc1LnRl -c3QwCoIIeDc2LnRlc3QwCoIIeDc3LnRlc3QwCoIIeDc4LnRlc3QwCoIIeDc5LnRl -c3QwCoIIeDgwLnRlc3QwCoIIeDgxLnRlc3QwCoIIeDgyLnRlc3QwCoIIeDgzLnRl -c3QwCoIIeDg0LnRlc3QwCoIIeDg1LnRlc3QwCoIIeDg2LnRlc3QwCoIIeDg3LnRl -c3QwCoIIeDg4LnRlc3QwCoIIeDg5LnRlc3QwCoIIeDkwLnRlc3QwCoIIeDkxLnRl -c3QwCoIIeDkyLnRlc3QwCoIIeDkzLnRlc3QwCoIIeDk0LnRlc3QwCoIIeDk1LnRl -c3QwCoIIeDk2LnRlc3QwCoIIeDk3LnRlc3QwCoIIeDk4LnRlc3QwCoIIeDk5LnRl -c3QwC4IJeDEwMC50ZXN0MAuCCXgxMDEudGVzdDALggl4MTAyLnRlc3QwC4IJeDEw -My50ZXN0MAuCCXgxMDQudGVzdDALggl4MTA1LnRlc3QwC4IJeDEwNi50ZXN0MAuC -CXgxMDcudGVzdDALggl4MTA4LnRlc3QwC4IJeDEwOS50ZXN0MAuCCXgxMTAudGVz -dDALggl4MTExLnRlc3QwC4IJeDExMi50ZXN0MAuCCXgxMTMudGVzdDALggl4MTE0 -LnRlc3QwC4IJeDExNS50ZXN0MAuCCXgxMTYudGVzdDALggl4MTE3LnRlc3QwC4IJ -eDExOC50ZXN0MAuCCXgxMTkudGVzdDALggl4MTIwLnRlc3QwC4IJeDEyMS50ZXN0 -MAuCCXgxMjIudGVzdDALggl4MTIzLnRlc3QwC4IJeDEyNC50ZXN0MAuCCXgxMjUu -dGVzdDALggl4MTI2LnRlc3QwC4IJeDEyNy50ZXN0MAuCCXgxMjgudGVzdDALggl4 -MTI5LnRlc3QwC4IJeDEzMC50ZXN0MAuCCXgxMzEudGVzdDALggl4MTMyLnRlc3Qw -C4IJeDEzMy50ZXN0MAuCCXgxMzQudGVzdDALggl4MTM1LnRlc3QwC4IJeDEzNi50 -ZXN0MAuCCXgxMzcudGVzdDALggl4MTM4LnRlc3QwC4IJeDEzOS50ZXN0MAuCCXgx -NDAudGVzdDALggl4MTQxLnRlc3QwC4IJeDE0Mi50ZXN0MAuCCXgxNDMudGVzdDAL -ggl4MTQ0LnRlc3QwC4IJeDE0NS50ZXN0MAuCCXgxNDYudGVzdDALggl4MTQ3LnRl -c3QwC4IJeDE0OC50ZXN0MAuCCXgxNDkudGVzdDALggl4MTUwLnRlc3QwC4IJeDE1 -MS50ZXN0MAuCCXgxNTIudGVzdDALggl4MTUzLnRlc3QwC4IJeDE1NC50ZXN0MAuC -CXgxNTUudGVzdDALggl4MTU2LnRlc3QwC4IJeDE1Ny50ZXN0MAuCCXgxNTgudGVz -dDALggl4MTU5LnRlc3QwC4IJeDE2MC50ZXN0MAuCCXgxNjEudGVzdDALggl4MTYy -LnRlc3QwC4IJeDE2My50ZXN0MAuCCXgxNjQudGVzdDALggl4MTY1LnRlc3QwC4IJ -eDE2Ni50ZXN0MAuCCXgxNjcudGVzdDALggl4MTY4LnRlc3QwC4IJeDE2OS50ZXN0 -MAqHCAsAAAD/////MAqHCAsAAAH/////MAqHCAsAAAL/////MAqHCAsAAAP///// -MAqHCAsAAAT/////MAqHCAsAAAX/////MAqHCAsAAAb/////MAqHCAsAAAf///// -MAqHCAsAAAj/////MAqHCAsAAAn/////MAqHCAsAAAr/////MAqHCAsAAAv///// -MAqHCAsAAAz/////MAqHCAsAAA3/////MAqHCAsAAA7/////MAqHCAsAAA////// -MAqHCAsAABD/////MAqHCAsAABH/////MAqHCAsAABL/////MAqHCAsAABP///// -MAqHCAsAABT/////MAqHCAsAABX/////MAqHCAsAABb/////MAqHCAsAABf///// -MAqHCAsAABj/////MAqHCAsAABn/////MAqHCAsAABr/////MAqHCAsAABv///// -MAqHCAsAABz/////MAqHCAsAAB3/////MAqHCAsAAB7/////MAqHCAsAAB////// -MAqHCAsAACD/////MAqHCAsAACH/////MAqHCAsAACL/////MAqHCAsAACP///// -MAqHCAsAACT/////MAqHCAsAACX/////MAqHCAsAACb/////MAqHCAsAACf///// -MAqHCAsAACj/////MAqHCAsAACn/////MAqHCAsAACr/////MAqHCAsAACv///// -MAqHCAsAACz/////MAqHCAsAAC3/////MAqHCAsAAC7/////MAqHCAsAAC////// -MAqHCAsAADD/////MAqHCAsAADH/////MAqHCAsAADL/////MAqHCAsAADP///// -MAqHCAsAADT/////MAqHCAsAADX/////MAqHCAsAADb/////MAqHCAsAADf///// -MAqHCAsAADj/////MAqHCAsAADn/////MAqHCAsAADr/////MAqHCAsAADv///// -MAqHCAsAADz/////MAqHCAsAAD3/////MAqHCAsAAD7/////MAqHCAsAAD////// -MAqHCAsAAED/////MAqHCAsAAEH/////MAqHCAsAAEL/////MAqHCAsAAEP///// -MAqHCAsAAET/////MAqHCAsAAEX/////MAqHCAsAAEb/////MAqHCAsAAEf///// -MAqHCAsAAEj/////MAqHCAsAAEn/////MAqHCAsAAEr/////MAqHCAsAAEv///// -MAqHCAsAAEz/////MAqHCAsAAE3/////MAqHCAsAAE7/////MAqHCAsAAE////// -MAqHCAsAAFD/////MAqHCAsAAFH/////MAqHCAsAAFL/////MAqHCAsAAFP///// -MAqHCAsAAFT/////MAqHCAsAAFX/////MAqHCAsAAFb/////MAqHCAsAAFf///// -MAqHCAsAAFj/////MAqHCAsAAFn/////MAqHCAsAAFr/////MAqHCAsAAFv///// -MAqHCAsAAFz/////MAqHCAsAAF3/////MAqHCAsAAF7/////MAqHCAsAAF////// -MAqHCAsAAGD/////MAqHCAsAAGH/////MAqHCAsAAGL/////MAqHCAsAAGP///// -MAqHCAsAAGT/////MAqHCAsAAGX/////MAqHCAsAAGb/////MAqHCAsAAGf///// -MAqHCAsAAGj/////MAqHCAsAAGn/////MAqHCAsAAGr/////MAqHCAsAAGv///// -MAqHCAsAAGz/////MAqHCAsAAG3/////MAqHCAsAAG7/////MAqHCAsAAG////// -MAqHCAsAAHD/////MAqHCAsAAHH/////MAqHCAsAAHL/////MAqHCAsAAHP///// -MAqHCAsAAHT/////MAqHCAsAAHX/////MAqHCAsAAHb/////MAqHCAsAAHf///// -MAqHCAsAAHj/////MAqHCAsAAHn/////MAqHCAsAAHr/////MAqHCAsAAHv///// -MAqHCAsAAHz/////MAqHCAsAAH3/////MAqHCAsAAH7/////MAqHCAsAAH////// -MAqHCAsAAID/////MAqHCAsAAIH/////MAqHCAsAAIL/////MAqHCAsAAIP///// -MAqHCAsAAIT/////MAqHCAsAAIX/////MAqHCAsAAIb/////MAqHCAsAAIf///// -MAqHCAsAAIj/////MAqHCAsAAIn/////MAqHCAsAAIr/////MAqHCAsAAIv///// -MAqHCAsAAIz/////MAqHCAsAAI3/////MAqHCAsAAI7/////MAqHCAsAAI////// -MAqHCAsAAJD/////MAqHCAsAAJH/////MAqHCAsAAJL/////MAqHCAsAAJP///// -MAqHCAsAAJT/////MAqHCAsAAJX/////MAqHCAsAAJb/////MAqHCAsAAJf///// -MAqHCAsAAJj/////MAqHCAsAAJn/////MAqHCAsAAJr/////MAqHCAsAAJv///// -MAqHCAsAAJz/////MAqHCAsAAJ3/////MAqHCAsAAJ7/////MAqHCAsAAJ////// -MAqHCAsAAKD/////MAqHCAsAAKH/////MAqHCAsAAKL/////MAqHCAsAAKP///// -MAqHCAsAAKT/////MAqHCAsAAKX/////MAqHCAsAAKb/////MAqHCAsAAKf///// -MAqHCAsAAKj/////MAqHCAsAAKn/////MBGkDzANMQswCQYDVQQDDAJ4MDARpA8w -DTELMAkGA1UEAwwCeDEwEaQPMA0xCzAJBgNVBAMMAngyMBGkDzANMQswCQYDVQQD -DAJ4MzARpA8wDTELMAkGA1UEAwwCeDQwEaQPMA0xCzAJBgNVBAMMAng1MBGkDzAN -MQswCQYDVQQDDAJ4NjARpA8wDTELMAkGA1UEAwwCeDcwEaQPMA0xCzAJBgNVBAMM -Ang4MBGkDzANMQswCQYDVQQDDAJ4OTASpBAwDjEMMAoGA1UEAwwDeDEwMBKkEDAO -MQwwCgYDVQQDDAN4MTEwEqQQMA4xDDAKBgNVBAMMA3gxMjASpBAwDjEMMAoGA1UE -AwwDeDEzMBKkEDAOMQwwCgYDVQQDDAN4MTQwEqQQMA4xDDAKBgNVBAMMA3gxNTAS -pBAwDjEMMAoGA1UEAwwDeDE2MBKkEDAOMQwwCgYDVQQDDAN4MTcwEqQQMA4xDDAK -BgNVBAMMA3gxODASpBAwDjEMMAoGA1UEAwwDeDE5MBKkEDAOMQwwCgYDVQQDDAN4 -MjAwEqQQMA4xDDAKBgNVBAMMA3gyMTASpBAwDjEMMAoGA1UEAwwDeDIyMBKkEDAO -MQwwCgYDVQQDDAN4MjMwEqQQMA4xDDAKBgNVBAMMA3gyNDASpBAwDjEMMAoGA1UE -AwwDeDI1MBKkEDAOMQwwCgYDVQQDDAN4MjYwEqQQMA4xDDAKBgNVBAMMA3gyNzAS -pBAwDjEMMAoGA1UEAwwDeDI4MBKkEDAOMQwwCgYDVQQDDAN4MjkwEqQQMA4xDDAK -BgNVBAMMA3gzMDASpBAwDjEMMAoGA1UEAwwDeDMxMBKkEDAOMQwwCgYDVQQDDAN4 -MzIwEqQQMA4xDDAKBgNVBAMMA3gzMzASpBAwDjEMMAoGA1UEAwwDeDM0MBKkEDAO -MQwwCgYDVQQDDAN4MzUwEqQQMA4xDDAKBgNVBAMMA3gzNjASpBAwDjEMMAoGA1UE -AwwDeDM3MBKkEDAOMQwwCgYDVQQDDAN4MzgwEqQQMA4xDDAKBgNVBAMMA3gzOTAS -pBAwDjEMMAoGA1UEAwwDeDQwMBKkEDAOMQwwCgYDVQQDDAN4NDEwEqQQMA4xDDAK -BgNVBAMMA3g0MjASpBAwDjEMMAoGA1UEAwwDeDQzMBKkEDAOMQwwCgYDVQQDDAN4 -NDQwEqQQMA4xDDAKBgNVBAMMA3g0NTASpBAwDjEMMAoGA1UEAwwDeDQ2MBKkEDAO -MQwwCgYDVQQDDAN4NDcwEqQQMA4xDDAKBgNVBAMMA3g0ODASpBAwDjEMMAoGA1UE -AwwDeDQ5MBKkEDAOMQwwCgYDVQQDDAN4NTAwEqQQMA4xDDAKBgNVBAMMA3g1MTAS -pBAwDjEMMAoGA1UEAwwDeDUyMBKkEDAOMQwwCgYDVQQDDAN4NTMwEqQQMA4xDDAK -BgNVBAMMA3g1NDASpBAwDjEMMAoGA1UEAwwDeDU1MBKkEDAOMQwwCgYDVQQDDAN4 -NTYwEqQQMA4xDDAKBgNVBAMMA3g1NzASpBAwDjEMMAoGA1UEAwwDeDU4MBKkEDAO -MQwwCgYDVQQDDAN4NTkwEqQQMA4xDDAKBgNVBAMMA3g2MDASpBAwDjEMMAoGA1UE -AwwDeDYxMBKkEDAOMQwwCgYDVQQDDAN4NjIwEqQQMA4xDDAKBgNVBAMMA3g2MzAS -pBAwDjEMMAoGA1UEAwwDeDY0MBKkEDAOMQwwCgYDVQQDDAN4NjUwEqQQMA4xDDAK -BgNVBAMMA3g2NjASpBAwDjEMMAoGA1UEAwwDeDY3MBKkEDAOMQwwCgYDVQQDDAN4 -NjgwEqQQMA4xDDAKBgNVBAMMA3g2OTASpBAwDjEMMAoGA1UEAwwDeDcwMBKkEDAO -MQwwCgYDVQQDDAN4NzEwEqQQMA4xDDAKBgNVBAMMA3g3MjASpBAwDjEMMAoGA1UE -AwwDeDczMBKkEDAOMQwwCgYDVQQDDAN4NzQwEqQQMA4xDDAKBgNVBAMMA3g3NTAS -pBAwDjEMMAoGA1UEAwwDeDc2MBKkEDAOMQwwCgYDVQQDDAN4NzcwEqQQMA4xDDAK -BgNVBAMMA3g3ODASpBAwDjEMMAoGA1UEAwwDeDc5MBKkEDAOMQwwCgYDVQQDDAN4 -ODAwEqQQMA4xDDAKBgNVBAMMA3g4MTASpBAwDjEMMAoGA1UEAwwDeDgyMBKkEDAO -MQwwCgYDVQQDDAN4ODMwEqQQMA4xDDAKBgNVBAMMA3g4NDASpBAwDjEMMAoGA1UE -AwwDeDg1MBKkEDAOMQwwCgYDVQQDDAN4ODYwEqQQMA4xDDAKBgNVBAMMA3g4NzAS -pBAwDjEMMAoGA1UEAwwDeDg4MBKkEDAOMQwwCgYDVQQDDAN4ODkwEqQQMA4xDDAK -BgNVBAMMA3g5MDASpBAwDjEMMAoGA1UEAwwDeDkxMBKkEDAOMQwwCgYDVQQDDAN4 -OTIwEqQQMA4xDDAKBgNVBAMMA3g5MzASpBAwDjEMMAoGA1UEAwwDeDk0MBKkEDAO -MQwwCgYDVQQDDAN4OTUwEqQQMA4xDDAKBgNVBAMMA3g5NjASpBAwDjEMMAoGA1UE -AwwDeDk3MBKkEDAOMQwwCgYDVQQDDAN4OTgwEqQQMA4xDDAKBgNVBAMMA3g5OTAT -pBEwDzENMAsGA1UEAwwEeDEwMDATpBEwDzENMAsGA1UEAwwEeDEwMTATpBEwDzEN -MAsGA1UEAwwEeDEwMjATpBEwDzENMAsGA1UEAwwEeDEwMzATpBEwDzENMAsGA1UE -AwwEeDEwNDATpBEwDzENMAsGA1UEAwwEeDEwNTATpBEwDzENMAsGA1UEAwwEeDEw -NjATpBEwDzENMAsGA1UEAwwEeDEwNzATpBEwDzENMAsGA1UEAwwEeDEwODATpBEw -DzENMAsGA1UEAwwEeDEwOTATpBEwDzENMAsGA1UEAwwEeDExMDATpBEwDzENMAsG -A1UEAwwEeDExMTATpBEwDzENMAsGA1UEAwwEeDExMjATpBEwDzENMAsGA1UEAwwE -eDExMzATpBEwDzENMAsGA1UEAwwEeDExNDATpBEwDzENMAsGA1UEAwwEeDExNTAT -pBEwDzENMAsGA1UEAwwEeDExNjATpBEwDzENMAsGA1UEAwwEeDExNzATpBEwDzEN -MAsGA1UEAwwEeDExODATpBEwDzENMAsGA1UEAwwEeDExOTATpBEwDzENMAsGA1UE -AwwEeDEyMDATpBEwDzENMAsGA1UEAwwEeDEyMTATpBEwDzENMAsGA1UEAwwEeDEy -MjATpBEwDzENMAsGA1UEAwwEeDEyMzATpBEwDzENMAsGA1UEAwwEeDEyNDATpBEw -DzENMAsGA1UEAwwEeDEyNTATpBEwDzENMAsGA1UEAwwEeDEyNjATpBEwDzENMAsG -A1UEAwwEeDEyNzATpBEwDzENMAsGA1UEAwwEeDEyODATpBEwDzENMAsGA1UEAwwE -eDEyOTATpBEwDzENMAsGA1UEAwwEeDEzMDATpBEwDzENMAsGA1UEAwwEeDEzMTAT -pBEwDzENMAsGA1UEAwwEeDEzMjATpBEwDzENMAsGA1UEAwwEeDEzMzATpBEwDzEN -MAsGA1UEAwwEeDEzNDATpBEwDzENMAsGA1UEAwwEeDEzNTATpBEwDzENMAsGA1UE -AwwEeDEzNjATpBEwDzENMAsGA1UEAwwEeDEzNzATpBEwDzENMAsGA1UEAwwEeDEz -ODATpBEwDzENMAsGA1UEAwwEeDEzOTATpBEwDzENMAsGA1UEAwwEeDE0MDATpBEw -DzENMAsGA1UEAwwEeDE0MTATpBEwDzENMAsGA1UEAwwEeDE0MjATpBEwDzENMAsG -A1UEAwwEeDE0MzATpBEwDzENMAsGA1UEAwwEeDE0NDATpBEwDzENMAsGA1UEAwwE -eDE0NTATpBEwDzENMAsGA1UEAwwEeDE0NjATpBEwDzENMAsGA1UEAwwEeDE0NzAT -pBEwDzENMAsGA1UEAwwEeDE0ODATpBEwDzENMAsGA1UEAwwEeDE0OTATpBEwDzEN -MAsGA1UEAwwEeDE1MDATpBEwDzENMAsGA1UEAwwEeDE1MTATpBEwDzENMAsGA1UE -AwwEeDE1MjATpBEwDzENMAsGA1UEAwwEeDE1MzATpBEwDzENMAsGA1UEAwwEeDE1 -NDATpBEwDzENMAsGA1UEAwwEeDE1NTATpBEwDzENMAsGA1UEAwwEeDE1NjATpBEw -DzENMAsGA1UEAwwEeDE1NzATpBEwDzENMAsGA1UEAwwEeDE1ODATpBEwDzENMAsG -A1UEAwwEeDE1OTATpBEwDzENMAsGA1UEAwwEeDE2MDATpBEwDzENMAsGA1UEAwwE -eDE2MTATpBEwDzENMAsGA1UEAwwEeDE2MjATpBEwDzENMAsGA1UEAwwEeDE2MzAT -pBEwDzENMAsGA1UEAwwEeDE2NDATpBEwDzENMAsGA1UEAwwEeDE2NTATpBEwDzEN -MAsGA1UEAwwEeDE2NjATpBEwDzENMAsGA1UEAwwEeDE2NzATpBEwDzENMAsGA1UE -AwwEeDE2ODATpBEwDzENMAsGA1UEAwwEeDE2OTAPhg1odHRwOi8veGVzdC8wMA+G -DWh0dHA6Ly94ZXN0LzEwD4YNaHR0cDovL3hlc3QvMjAPhg1odHRwOi8veGVzdC8z -MA+GDWh0dHA6Ly94ZXN0LzQwD4YNaHR0cDovL3hlc3QvNTAPhg1odHRwOi8veGVz -dC82MA+GDWh0dHA6Ly94ZXN0LzcwD4YNaHR0cDovL3hlc3QvODAPhg1odHRwOi8v -eGVzdC85MBCGDmh0dHA6Ly94ZXN0LzEwMBCGDmh0dHA6Ly94ZXN0LzExMBCGDmh0 -dHA6Ly94ZXN0LzEyMBCGDmh0dHA6Ly94ZXN0LzEzMBCGDmh0dHA6Ly94ZXN0LzE0 -MBCGDmh0dHA6Ly94ZXN0LzE1MBCGDmh0dHA6Ly94ZXN0LzE2MBCGDmh0dHA6Ly94 -ZXN0LzE3MBCGDmh0dHA6Ly94ZXN0LzE4MBCGDmh0dHA6Ly94ZXN0LzE5MBCGDmh0 -dHA6Ly94ZXN0LzIwMBCGDmh0dHA6Ly94ZXN0LzIxMBCGDmh0dHA6Ly94ZXN0LzIy -MBCGDmh0dHA6Ly94ZXN0LzIzMBCGDmh0dHA6Ly94ZXN0LzI0MBCGDmh0dHA6Ly94 -ZXN0LzI1MBCGDmh0dHA6Ly94ZXN0LzI2MBCGDmh0dHA6Ly94ZXN0LzI3MBCGDmh0 -dHA6Ly94ZXN0LzI4MBCGDmh0dHA6Ly94ZXN0LzI5MBCGDmh0dHA6Ly94ZXN0LzMw -MBCGDmh0dHA6Ly94ZXN0LzMxMBCGDmh0dHA6Ly94ZXN0LzMyMBCGDmh0dHA6Ly94 -ZXN0LzMzMBCGDmh0dHA6Ly94ZXN0LzM0MBCGDmh0dHA6Ly94ZXN0LzM1MBCGDmh0 -dHA6Ly94ZXN0LzM2MBCGDmh0dHA6Ly94ZXN0LzM3MBCGDmh0dHA6Ly94ZXN0LzM4 -MBCGDmh0dHA6Ly94ZXN0LzM5MBCGDmh0dHA6Ly94ZXN0LzQwMBCGDmh0dHA6Ly94 -ZXN0LzQxMBCGDmh0dHA6Ly94ZXN0LzQyMBCGDmh0dHA6Ly94ZXN0LzQzMBCGDmh0 -dHA6Ly94ZXN0LzQ0MBCGDmh0dHA6Ly94ZXN0LzQ1MBCGDmh0dHA6Ly94ZXN0LzQ2 -MBCGDmh0dHA6Ly94ZXN0LzQ3MBCGDmh0dHA6Ly94ZXN0LzQ4MBCGDmh0dHA6Ly94 -ZXN0LzQ5MBCGDmh0dHA6Ly94ZXN0LzUwMBCGDmh0dHA6Ly94ZXN0LzUxMBCGDmh0 -dHA6Ly94ZXN0LzUyMBCGDmh0dHA6Ly94ZXN0LzUzMBCGDmh0dHA6Ly94ZXN0LzU0 -MBCGDmh0dHA6Ly94ZXN0LzU1MBCGDmh0dHA6Ly94ZXN0LzU2MBCGDmh0dHA6Ly94 -ZXN0LzU3MBCGDmh0dHA6Ly94ZXN0LzU4MBCGDmh0dHA6Ly94ZXN0LzU5MBCGDmh0 -dHA6Ly94ZXN0LzYwMBCGDmh0dHA6Ly94ZXN0LzYxMBCGDmh0dHA6Ly94ZXN0LzYy -MBCGDmh0dHA6Ly94ZXN0LzYzMBCGDmh0dHA6Ly94ZXN0LzY0MBCGDmh0dHA6Ly94 -ZXN0LzY1MBCGDmh0dHA6Ly94ZXN0LzY2MBCGDmh0dHA6Ly94ZXN0LzY3MBCGDmh0 -dHA6Ly94ZXN0LzY4MBCGDmh0dHA6Ly94ZXN0LzY5MBCGDmh0dHA6Ly94ZXN0Lzcw -MBCGDmh0dHA6Ly94ZXN0LzcxMBCGDmh0dHA6Ly94ZXN0LzcyMBCGDmh0dHA6Ly94 -ZXN0LzczMBCGDmh0dHA6Ly94ZXN0Lzc0MBCGDmh0dHA6Ly94ZXN0Lzc1MBCGDmh0 -dHA6Ly94ZXN0Lzc2MBCGDmh0dHA6Ly94ZXN0Lzc3MBCGDmh0dHA6Ly94ZXN0Lzc4 -MBCGDmh0dHA6Ly94ZXN0Lzc5MBCGDmh0dHA6Ly94ZXN0LzgwMBCGDmh0dHA6Ly94 -ZXN0LzgxMBCGDmh0dHA6Ly94ZXN0LzgyMBCGDmh0dHA6Ly94ZXN0LzgzMBCGDmh0 -dHA6Ly94ZXN0Lzg0MBCGDmh0dHA6Ly94ZXN0Lzg1MBCGDmh0dHA6Ly94ZXN0Lzg2 -MBCGDmh0dHA6Ly94ZXN0Lzg3MBCGDmh0dHA6Ly94ZXN0Lzg4MBCGDmh0dHA6Ly94 -ZXN0Lzg5MBCGDmh0dHA6Ly94ZXN0LzkwMBCGDmh0dHA6Ly94ZXN0LzkxMBCGDmh0 -dHA6Ly94ZXN0LzkyMBCGDmh0dHA6Ly94ZXN0LzkzMBCGDmh0dHA6Ly94ZXN0Lzk0 -MBCGDmh0dHA6Ly94ZXN0Lzk1MBCGDmh0dHA6Ly94ZXN0Lzk2MBCGDmh0dHA6Ly94 -ZXN0Lzk3MBCGDmh0dHA6Ly94ZXN0Lzk4MBCGDmh0dHA6Ly94ZXN0Lzk5MBGGD2h0 -dHA6Ly94ZXN0LzEwMDARhg9odHRwOi8veGVzdC8xMDEwEYYPaHR0cDovL3hlc3Qv -MTAyMBGGD2h0dHA6Ly94ZXN0LzEwMzARhg9odHRwOi8veGVzdC8xMDQwEYYPaHR0 -cDovL3hlc3QvMTA1MBGGD2h0dHA6Ly94ZXN0LzEwNjARhg9odHRwOi8veGVzdC8x -MDcwEYYPaHR0cDovL3hlc3QvMTA4MBGGD2h0dHA6Ly94ZXN0LzEwOTARhg9odHRw -Oi8veGVzdC8xMTAwEYYPaHR0cDovL3hlc3QvMTExMBGGD2h0dHA6Ly94ZXN0LzEx -MjARhg9odHRwOi8veGVzdC8xMTMwEYYPaHR0cDovL3hlc3QvMTE0MBGGD2h0dHA6 -Ly94ZXN0LzExNTARhg9odHRwOi8veGVzdC8xMTYwEYYPaHR0cDovL3hlc3QvMTE3 -MBGGD2h0dHA6Ly94ZXN0LzExODARhg9odHRwOi8veGVzdC8xMTkwEYYPaHR0cDov -L3hlc3QvMTIwMBGGD2h0dHA6Ly94ZXN0LzEyMTARhg9odHRwOi8veGVzdC8xMjIw -EYYPaHR0cDovL3hlc3QvMTIzMBGGD2h0dHA6Ly94ZXN0LzEyNDARhg9odHRwOi8v -eGVzdC8xMjUwEYYPaHR0cDovL3hlc3QvMTI2MBGGD2h0dHA6Ly94ZXN0LzEyNzAR -hg9odHRwOi8veGVzdC8xMjgwEYYPaHR0cDovL3hlc3QvMTI5MBGGD2h0dHA6Ly94 -ZXN0LzEzMDARhg9odHRwOi8veGVzdC8xMzEwEYYPaHR0cDovL3hlc3QvMTMyMBGG -D2h0dHA6Ly94ZXN0LzEzMzARhg9odHRwOi8veGVzdC8xMzQwEYYPaHR0cDovL3hl -c3QvMTM1MBGGD2h0dHA6Ly94ZXN0LzEzNjARhg9odHRwOi8veGVzdC8xMzcwEYYP -aHR0cDovL3hlc3QvMTM4MBGGD2h0dHA6Ly94ZXN0LzEzOTARhg9odHRwOi8veGVz -dC8xNDAwEYYPaHR0cDovL3hlc3QvMTQxMBGGD2h0dHA6Ly94ZXN0LzE0MjARhg9o -dHRwOi8veGVzdC8xNDMwEYYPaHR0cDovL3hlc3QvMTQ0MBGGD2h0dHA6Ly94ZXN0 -LzE0NTARhg9odHRwOi8veGVzdC8xNDYwEYYPaHR0cDovL3hlc3QvMTQ3MBGGD2h0 -dHA6Ly94ZXN0LzE0ODARhg9odHRwOi8veGVzdC8xNDkwEYYPaHR0cDovL3hlc3Qv -MTUwMBGGD2h0dHA6Ly94ZXN0LzE1MTARhg9odHRwOi8veGVzdC8xNTIwEYYPaHR0 -cDovL3hlc3QvMTUzMBGGD2h0dHA6Ly94ZXN0LzE1NDARhg9odHRwOi8veGVzdC8x -NTUwEYYPaHR0cDovL3hlc3QvMTU2MBGGD2h0dHA6Ly94ZXN0LzE1NzARhg9odHRw -Oi8veGVzdC8xNTgwEYYPaHR0cDovL3hlc3QvMTU5MBGGD2h0dHA6Ly94ZXN0LzE2 -MDARhg9odHRwOi8veGVzdC8xNjEwEYYPaHR0cDovL3hlc3QvMTYyMBGGD2h0dHA6 -Ly94ZXN0LzE2MzARhg9odHRwOi8veGVzdC8xNjQwEYYPaHR0cDovL3hlc3QvMTY1 -MBGGD2h0dHA6Ly94ZXN0LzE2NjARhg9odHRwOi8veGVzdC8xNjcwEYYPaHR0cDov -L3hlc3QvMTY4MBGGD2h0dHA6Ly94ZXN0LzE2OTARhg9odHRwOi8veGVzdC8xNzAw -EYYPaHR0cDovL3hlc3QvMTcxMBGGD2h0dHA6Ly94ZXN0LzE3MjARhg9odHRwOi8v -eGVzdC8xNzMwEYYPaHR0cDovL3hlc3QvMTc0MBGGD2h0dHA6Ly94ZXN0LzE3NTAR -hg9odHRwOi8veGVzdC8xNzYwEYYPaHR0cDovL3hlc3QvMTc3MBGGD2h0dHA6Ly94 -ZXN0LzE3ODARhg9odHRwOi8veGVzdC8xNzkwEYYPaHR0cDovL3hlc3QvMTgwMBGG -D2h0dHA6Ly94ZXN0LzE4MTARhg9odHRwOi8veGVzdC8xODIwEYYPaHR0cDovL3hl -c3QvMTgzMBGGD2h0dHA6Ly94ZXN0LzE4NDARhg9odHRwOi8veGVzdC8xODUwEYYP -aHR0cDovL3hlc3QvMTg2MBGGD2h0dHA6Ly94ZXN0LzE4NzARhg9odHRwOi8veGVz -dC8xODgwEYYPaHR0cDovL3hlc3QvMTg5MBGGD2h0dHA6Ly94ZXN0LzE5MDARhg9o -dHRwOi8veGVzdC8xOTEwEYYPaHR0cDovL3hlc3QvMTkyMBGGD2h0dHA6Ly94ZXN0 -LzE5MzARhg9odHRwOi8veGVzdC8xOTQwEYYPaHR0cDovL3hlc3QvMTk1MBGGD2h0 -dHA6Ly94ZXN0LzE5NjARhg9odHRwOi8veGVzdC8xOTcwEYYPaHR0cDovL3hlc3Qv -MTk4MBGGD2h0dHA6Ly94ZXN0LzE5OTARhg9odHRwOi8veGVzdC8yMDAwEYYPaHR0 -cDovL3hlc3QvMjAxMBGGD2h0dHA6Ly94ZXN0LzIwMjARhg9odHRwOi8veGVzdC8y -MDMwEYYPaHR0cDovL3hlc3QvMjA0MBGGD2h0dHA6Ly94ZXN0LzIwNTARhg9odHRw -Oi8veGVzdC8yMDYwEYYPaHR0cDovL3hlc3QvMjA3MBGGD2h0dHA6Ly94ZXN0LzIw -ODARhg9odHRwOi8veGVzdC8yMDkwEYYPaHR0cDovL3hlc3QvMjEwMBGGD2h0dHA6 -Ly94ZXN0LzIxMTARhg9odHRwOi8veGVzdC8yMTIwEYYPaHR0cDovL3hlc3QvMjEz -MBGGD2h0dHA6Ly94ZXN0LzIxNDARhg9odHRwOi8veGVzdC8yMTUwEYYPaHR0cDov -L3hlc3QvMjE2MBGGD2h0dHA6Ly94ZXN0LzIxNzARhg9odHRwOi8veGVzdC8yMTgw -EYYPaHR0cDovL3hlc3QvMjE5MBGGD2h0dHA6Ly94ZXN0LzIyMDARhg9odHRwOi8v -eGVzdC8yMjEwEYYPaHR0cDovL3hlc3QvMjIyMBGGD2h0dHA6Ly94ZXN0LzIyMzAR -hg9odHRwOi8veGVzdC8yMjQwEYYPaHR0cDovL3hlc3QvMjI1MBGGD2h0dHA6Ly94 -ZXN0LzIyNjARhg9odHRwOi8veGVzdC8yMjcwEYYPaHR0cDovL3hlc3QvMjI4MBGG -D2h0dHA6Ly94ZXN0LzIyOTARhg9odHRwOi8veGVzdC8yMzAwEYYPaHR0cDovL3hl -c3QvMjMxMBGGD2h0dHA6Ly94ZXN0LzIzMjARhg9odHRwOi8veGVzdC8yMzMwEYYP -aHR0cDovL3hlc3QvMjM0MBGGD2h0dHA6Ly94ZXN0LzIzNTARhg9odHRwOi8veGVz -dC8yMzYwEYYPaHR0cDovL3hlc3QvMjM3MBGGD2h0dHA6Ly94ZXN0LzIzODARhg9o -dHRwOi8veGVzdC8yMzkwEYYPaHR0cDovL3hlc3QvMjQwMBGGD2h0dHA6Ly94ZXN0 -LzI0MTARhg9odHRwOi8veGVzdC8yNDIwEYYPaHR0cDovL3hlc3QvMjQzMBGGD2h0 -dHA6Ly94ZXN0LzI0NDARhg9odHRwOi8veGVzdC8yNDUwEYYPaHR0cDovL3hlc3Qv -MjQ2MBGGD2h0dHA6Ly94ZXN0LzI0NzARhg9odHRwOi8veGVzdC8yNDgwEYYPaHR0 -cDovL3hlc3QvMjQ5MBGGD2h0dHA6Ly94ZXN0LzI1MDARhg9odHRwOi8veGVzdC8y -NTEwEYYPaHR0cDovL3hlc3QvMjUyMBGGD2h0dHA6Ly94ZXN0LzI1MzARhg9odHRw -Oi8veGVzdC8yNTQwEYYPaHR0cDovL3hlc3QvMjU1MBGGD2h0dHA6Ly94ZXN0LzI1 -NjARhg9odHRwOi8veGVzdC8yNTcwEYYPaHR0cDovL3hlc3QvMjU4MBGGD2h0dHA6 -Ly94ZXN0LzI1OTARhg9odHRwOi8veGVzdC8yNjAwEYYPaHR0cDovL3hlc3QvMjYx -MBGGD2h0dHA6Ly94ZXN0LzI2MjARhg9odHRwOi8veGVzdC8yNjMwEYYPaHR0cDov -L3hlc3QvMjY0MBGGD2h0dHA6Ly94ZXN0LzI2NTARhg9odHRwOi8veGVzdC8yNjYw -EYYPaHR0cDovL3hlc3QvMjY3MBGGD2h0dHA6Ly94ZXN0LzI2ODARhg9odHRwOi8v -eGVzdC8yNjkwEYYPaHR0cDovL3hlc3QvMjcwMBGGD2h0dHA6Ly94ZXN0LzI3MTAR -hg9odHRwOi8veGVzdC8yNzIwEYYPaHR0cDovL3hlc3QvMjczMBGGD2h0dHA6Ly94 -ZXN0LzI3NDARhg9odHRwOi8veGVzdC8yNzUwEYYPaHR0cDovL3hlc3QvMjc2MBGG -D2h0dHA6Ly94ZXN0LzI3NzARhg9odHRwOi8veGVzdC8yNzgwEYYPaHR0cDovL3hl -c3QvMjc5MBGGD2h0dHA6Ly94ZXN0LzI4MDARhg9odHRwOi8veGVzdC8yODEwEYYP -aHR0cDovL3hlc3QvMjgyMBGGD2h0dHA6Ly94ZXN0LzI4MzARhg9odHRwOi8veGVz -dC8yODQwEYYPaHR0cDovL3hlc3QvMjg1MBGGD2h0dHA6Ly94ZXN0LzI4NjARhg9o -dHRwOi8veGVzdC8yODcwEYYPaHR0cDovL3hlc3QvMjg4MBGGD2h0dHA6Ly94ZXN0 -LzI4OTARhg9odHRwOi8veGVzdC8yOTAwEYYPaHR0cDovL3hlc3QvMjkxMBGGD2h0 -dHA6Ly94ZXN0LzI5MjARhg9odHRwOi8veGVzdC8yOTMwEYYPaHR0cDovL3hlc3Qv -Mjk0MBGGD2h0dHA6Ly94ZXN0LzI5NTARhg9odHRwOi8veGVzdC8yOTYwEYYPaHR0 -cDovL3hlc3QvMjk3MBGGD2h0dHA6Ly94ZXN0LzI5ODARhg9odHRwOi8veGVzdC8y -OTkwEYYPaHR0cDovL3hlc3QvMzAwMBGGD2h0dHA6Ly94ZXN0LzMwMTARhg9odHRw -Oi8veGVzdC8zMDIwEYYPaHR0cDovL3hlc3QvMzAzMBGGD2h0dHA6Ly94ZXN0LzMw -NDARhg9odHRwOi8veGVzdC8zMDUwEYYPaHR0cDovL3hlc3QvMzA2MBGGD2h0dHA6 -Ly94ZXN0LzMwNzARhg9odHRwOi8veGVzdC8zMDgwEYYPaHR0cDovL3hlc3QvMzA5 -MBGGD2h0dHA6Ly94ZXN0LzMxMDARhg9odHRwOi8veGVzdC8zMTEwEYYPaHR0cDov -L3hlc3QvMzEyMBGGD2h0dHA6Ly94ZXN0LzMxMzARhg9odHRwOi8veGVzdC8zMTQw -EYYPaHR0cDovL3hlc3QvMzE1MBGGD2h0dHA6Ly94ZXN0LzMxNjARhg9odHRwOi8v -eGVzdC8zMTcwEYYPaHR0cDovL3hlc3QvMzE4MBGGD2h0dHA6Ly94ZXN0LzMxOTAR -hg9odHRwOi8veGVzdC8zMjAwEYYPaHR0cDovL3hlc3QvMzIxMBGGD2h0dHA6Ly94 -ZXN0LzMyMjARhg9odHRwOi8veGVzdC8zMjMwEYYPaHR0cDovL3hlc3QvMzI0MBGG -D2h0dHA6Ly94ZXN0LzMyNTARhg9odHRwOi8veGVzdC8zMjYwEYYPaHR0cDovL3hl -c3QvMzI3MBGGD2h0dHA6Ly94ZXN0LzMyODARhg9odHRwOi8veGVzdC8zMjkwEYYP -aHR0cDovL3hlc3QvMzMwMBGGD2h0dHA6Ly94ZXN0LzMzMTARhg9odHRwOi8veGVz -dC8zMzIwEYYPaHR0cDovL3hlc3QvMzMzMBGGD2h0dHA6Ly94ZXN0LzMzNDARhg9o -dHRwOi8veGVzdC8zMzUwEYYPaHR0cDovL3hlc3QvMzM2MBGGD2h0dHA6Ly94ZXN0 -LzMzNzARhg9odHRwOi8veGVzdC8zMzgwEYYPaHR0cDovL3hlc3QvMzM5MBGGD2h0 -dHA6Ly94ZXN0LzM0MDARhg9odHRwOi8veGVzdC8zNDEwEYYPaHR0cDovL3hlc3Qv -MzQyMBGGD2h0dHA6Ly94ZXN0LzM0MzARhg9odHRwOi8veGVzdC8zNDQwEYYPaHR0 -cDovL3hlc3QvMzQ1MBGGD2h0dHA6Ly94ZXN0LzM0NjARhg9odHRwOi8veGVzdC8z -NDcwEYYPaHR0cDovL3hlc3QvMzQ4MBGGD2h0dHA6Ly94ZXN0LzM0OTARhg9odHRw -Oi8veGVzdC8zNTAwEYYPaHR0cDovL3hlc3QvMzUxMBGGD2h0dHA6Ly94ZXN0LzM1 -MjARhg9odHRwOi8veGVzdC8zNTMwEYYPaHR0cDovL3hlc3QvMzU0MBGGD2h0dHA6 -Ly94ZXN0LzM1NTARhg9odHRwOi8veGVzdC8zNTYwEYYPaHR0cDovL3hlc3QvMzU3 -MBGGD2h0dHA6Ly94ZXN0LzM1ODARhg9odHRwOi8veGVzdC8zNTkwEYYPaHR0cDov -L3hlc3QvMzYwMBGGD2h0dHA6Ly94ZXN0LzM2MTARhg9odHRwOi8veGVzdC8zNjIw -EYYPaHR0cDovL3hlc3QvMzYzMBGGD2h0dHA6Ly94ZXN0LzM2NDARhg9odHRwOi8v -eGVzdC8zNjUwEYYPaHR0cDovL3hlc3QvMzY2MBGGD2h0dHA6Ly94ZXN0LzM2NzAR -hg9odHRwOi8veGVzdC8zNjgwEYYPaHR0cDovL3hlc3QvMzY5MBGGD2h0dHA6Ly94 -ZXN0LzM3MDARhg9odHRwOi8veGVzdC8zNzEwEYYPaHR0cDovL3hlc3QvMzcyMBGG -D2h0dHA6Ly94ZXN0LzM3MzARhg9odHRwOi8veGVzdC8zNzQwEYYPaHR0cDovL3hl -c3QvMzc1MBGGD2h0dHA6Ly94ZXN0LzM3NjARhg9odHRwOi8veGVzdC8zNzcwEYYP -aHR0cDovL3hlc3QvMzc4MBGGD2h0dHA6Ly94ZXN0LzM3OTARhg9odHRwOi8veGVz -dC8zODAwEYYPaHR0cDovL3hlc3QvMzgxMBGGD2h0dHA6Ly94ZXN0LzM4MjARhg9o -dHRwOi8veGVzdC8zODMwEYYPaHR0cDovL3hlc3QvMzg0MBGGD2h0dHA6Ly94ZXN0 -LzM4NTARhg9odHRwOi8veGVzdC8zODYwEYYPaHR0cDovL3hlc3QvMzg3MBGGD2h0 -dHA6Ly94ZXN0LzM4ODARhg9odHRwOi8veGVzdC8zODkwEYYPaHR0cDovL3hlc3Qv -MzkwMBGGD2h0dHA6Ly94ZXN0LzM5MTARhg9odHRwOi8veGVzdC8zOTIwEYYPaHR0 -cDovL3hlc3QvMzkzMBGGD2h0dHA6Ly94ZXN0LzM5NDARhg9odHRwOi8veGVzdC8z -OTUwEYYPaHR0cDovL3hlc3QvMzk2MBGGD2h0dHA6Ly94ZXN0LzM5NzARhg9odHRw -Oi8veGVzdC8zOTgwEYYPaHR0cDovL3hlc3QvMzk5MBGGD2h0dHA6Ly94ZXN0LzQw -MDARhg9odHRwOi8veGVzdC80MDEwEYYPaHR0cDovL3hlc3QvNDAyMBGGD2h0dHA6 -Ly94ZXN0LzQwMzARhg9odHRwOi8veGVzdC80MDQwEYYPaHR0cDovL3hlc3QvNDA1 -MBGGD2h0dHA6Ly94ZXN0LzQwNjARhg9odHRwOi8veGVzdC80MDcwEYYPaHR0cDov -L3hlc3QvNDA4MBGGD2h0dHA6Ly94ZXN0LzQwOTARhg9odHRwOi8veGVzdC80MTAw -EYYPaHR0cDovL3hlc3QvNDExMBGGD2h0dHA6Ly94ZXN0LzQxMjARhg9odHRwOi8v -eGVzdC80MTMwEYYPaHR0cDovL3hlc3QvNDE0MBGGD2h0dHA6Ly94ZXN0LzQxNTAR -hg9odHRwOi8veGVzdC80MTYwEYYPaHR0cDovL3hlc3QvNDE3MBGGD2h0dHA6Ly94 -ZXN0LzQxODARhg9odHRwOi8veGVzdC80MTkwEYYPaHR0cDovL3hlc3QvNDIwMBGG -D2h0dHA6Ly94ZXN0LzQyMTARhg9odHRwOi8veGVzdC80MjIwEYYPaHR0cDovL3hl -c3QvNDIzMBGGD2h0dHA6Ly94ZXN0LzQyNDARhg9odHRwOi8veGVzdC80MjUwEYYP -aHR0cDovL3hlc3QvNDI2MBGGD2h0dHA6Ly94ZXN0LzQyNzARhg9odHRwOi8veGVz -dC80MjgwEYYPaHR0cDovL3hlc3QvNDI5MBGGD2h0dHA6Ly94ZXN0LzQzMDARhg9o -dHRwOi8veGVzdC80MzEwEYYPaHR0cDovL3hlc3QvNDMyMBGGD2h0dHA6Ly94ZXN0 -LzQzMzARhg9odHRwOi8veGVzdC80MzQwEYYPaHR0cDovL3hlc3QvNDM1MBGGD2h0 -dHA6Ly94ZXN0LzQzNjARhg9odHRwOi8veGVzdC80MzcwEYYPaHR0cDovL3hlc3Qv -NDM4MBGGD2h0dHA6Ly94ZXN0LzQzOTARhg9odHRwOi8veGVzdC80NDAwEYYPaHR0 -cDovL3hlc3QvNDQxMBGGD2h0dHA6Ly94ZXN0LzQ0MjARhg9odHRwOi8veGVzdC80 -NDMwEYYPaHR0cDovL3hlc3QvNDQ0MBGGD2h0dHA6Ly94ZXN0LzQ0NTARhg9odHRw -Oi8veGVzdC80NDYwEYYPaHR0cDovL3hlc3QvNDQ3MBGGD2h0dHA6Ly94ZXN0LzQ0 -ODARhg9odHRwOi8veGVzdC80NDkwEYYPaHR0cDovL3hlc3QvNDUwMBGGD2h0dHA6 -Ly94ZXN0LzQ1MTARhg9odHRwOi8veGVzdC80NTIwEYYPaHR0cDovL3hlc3QvNDUz -MBGGD2h0dHA6Ly94ZXN0LzQ1NDARhg9odHRwOi8veGVzdC80NTUwEYYPaHR0cDov -L3hlc3QvNDU2MBGGD2h0dHA6Ly94ZXN0LzQ1NzARhg9odHRwOi8veGVzdC80NTgw -EYYPaHR0cDovL3hlc3QvNDU5MBGGD2h0dHA6Ly94ZXN0LzQ2MDARhg9odHRwOi8v -eGVzdC80NjEwEYYPaHR0cDovL3hlc3QvNDYyMBGGD2h0dHA6Ly94ZXN0LzQ2MzAR -hg9odHRwOi8veGVzdC80NjQwEYYPaHR0cDovL3hlc3QvNDY1MBGGD2h0dHA6Ly94 -ZXN0LzQ2NjARhg9odHRwOi8veGVzdC80NjcwEYYPaHR0cDovL3hlc3QvNDY4MBGG -D2h0dHA6Ly94ZXN0LzQ2OTARhg9odHRwOi8veGVzdC80NzAwEYYPaHR0cDovL3hl -c3QvNDcxMBGGD2h0dHA6Ly94ZXN0LzQ3MjARhg9odHRwOi8veGVzdC80NzMwEYYP -aHR0cDovL3hlc3QvNDc0MBGGD2h0dHA6Ly94ZXN0LzQ3NTARhg9odHRwOi8veGVz -dC80NzYwEYYPaHR0cDovL3hlc3QvNDc3MBGGD2h0dHA6Ly94ZXN0LzQ3ODARhg9o -dHRwOi8veGVzdC80NzkwEYYPaHR0cDovL3hlc3QvNDgwMBGGD2h0dHA6Ly94ZXN0 -LzQ4MTARhg9odHRwOi8veGVzdC80ODIwEYYPaHR0cDovL3hlc3QvNDgzMBGGD2h0 -dHA6Ly94ZXN0LzQ4NDARhg9odHRwOi8veGVzdC80ODUwEYYPaHR0cDovL3hlc3Qv -NDg2MBGGD2h0dHA6Ly94ZXN0LzQ4NzARhg9odHRwOi8veGVzdC80ODgwEYYPaHR0 -cDovL3hlc3QvNDg5MBGGD2h0dHA6Ly94ZXN0LzQ5MDARhg9odHRwOi8veGVzdC80 -OTEwEYYPaHR0cDovL3hlc3QvNDkyMBGGD2h0dHA6Ly94ZXN0LzQ5MzARhg9odHRw -Oi8veGVzdC80OTQwEYYPaHR0cDovL3hlc3QvNDk1MBGGD2h0dHA6Ly94ZXN0LzQ5 -NjARhg9odHRwOi8veGVzdC80OTcwEYYPaHR0cDovL3hlc3QvNDk4MBGGD2h0dHA6 -Ly94ZXN0LzQ5OTARhg9odHRwOi8veGVzdC81MDAwEYYPaHR0cDovL3hlc3QvNTAx -MBGGD2h0dHA6Ly94ZXN0LzUwMjARhg9odHRwOi8veGVzdC81MDMwEYYPaHR0cDov -L3hlc3QvNTA0MBGGD2h0dHA6Ly94ZXN0LzUwNTARhg9odHRwOi8veGVzdC81MDYw -EYYPaHR0cDovL3hlc3QvNTA3MBGGD2h0dHA6Ly94ZXN0LzUwODARhg9odHRwOi8v -eGVzdC81MDkwEYYPaHR0cDovL3hlc3QvNTEwMBGGD2h0dHA6Ly94ZXN0LzUxMTAR -hg9odHRwOi8veGVzdC81MTIwEYYPaHR0cDovL3hlc3QvNTEzMBGGD2h0dHA6Ly94 -ZXN0LzUxNDARhg9odHRwOi8veGVzdC81MTUwEYYPaHR0cDovL3hlc3QvNTE2MBGG -D2h0dHA6Ly94ZXN0LzUxNzARhg9odHRwOi8veGVzdC81MTgwEYYPaHR0cDovL3hl -c3QvNTE5MBGGD2h0dHA6Ly94ZXN0LzUyMDARhg9odHRwOi8veGVzdC81MjEwEYYP -aHR0cDovL3hlc3QvNTIyMBGGD2h0dHA6Ly94ZXN0LzUyMzARhg9odHRwOi8veGVz -dC81MjQwEYYPaHR0cDovL3hlc3QvNTI1MBGGD2h0dHA6Ly94ZXN0LzUyNjARhg9o -dHRwOi8veGVzdC81MjcwEYYPaHR0cDovL3hlc3QvNTI4MBGGD2h0dHA6Ly94ZXN0 -LzUyOTARhg9odHRwOi8veGVzdC81MzAwEYYPaHR0cDovL3hlc3QvNTMxMBGGD2h0 -dHA6Ly94ZXN0LzUzMjARhg9odHRwOi8veGVzdC81MzMwEYYPaHR0cDovL3hlc3Qv -NTM0MBGGD2h0dHA6Ly94ZXN0LzUzNTARhg9odHRwOi8veGVzdC81MzYwEYYPaHR0 -cDovL3hlc3QvNTM3MBGGD2h0dHA6Ly94ZXN0LzUzODARhg9odHRwOi8veGVzdC81 -MzkwEYYPaHR0cDovL3hlc3QvNTQwMBGGD2h0dHA6Ly94ZXN0LzU0MTARhg9odHRw -Oi8veGVzdC81NDIwEYYPaHR0cDovL3hlc3QvNTQzMBGGD2h0dHA6Ly94ZXN0LzU0 -NDARhg9odHRwOi8veGVzdC81NDUwEYYPaHR0cDovL3hlc3QvNTQ2MBGGD2h0dHA6 -Ly94ZXN0LzU0NzARhg9odHRwOi8veGVzdC81NDgwEYYPaHR0cDovL3hlc3QvNTQ5 -MBGGD2h0dHA6Ly94ZXN0LzU1MDARhg9odHRwOi8veGVzdC81NTEwEYYPaHR0cDov -L3hlc3QvNTUyMBGGD2h0dHA6Ly94ZXN0LzU1MzARhg9odHRwOi8veGVzdC81NTQw -EYYPaHR0cDovL3hlc3QvNTU1MBGGD2h0dHA6Ly94ZXN0LzU1NjARhg9odHRwOi8v -eGVzdC81NTcwEYYPaHR0cDovL3hlc3QvNTU4MBGGD2h0dHA6Ly94ZXN0LzU1OTAR -hg9odHRwOi8veGVzdC81NjAwEYYPaHR0cDovL3hlc3QvNTYxMBGGD2h0dHA6Ly94 -ZXN0LzU2MjARhg9odHRwOi8veGVzdC81NjMwEYYPaHR0cDovL3hlc3QvNTY0MBGG -D2h0dHA6Ly94ZXN0LzU2NTARhg9odHRwOi8veGVzdC81NjYwEYYPaHR0cDovL3hl -c3QvNTY3MBGGD2h0dHA6Ly94ZXN0LzU2ODARhg9odHRwOi8veGVzdC81NjkwEYYP -aHR0cDovL3hlc3QvNTcwMBGGD2h0dHA6Ly94ZXN0LzU3MTARhg9odHRwOi8veGVz -dC81NzIwEYYPaHR0cDovL3hlc3QvNTczMBGGD2h0dHA6Ly94ZXN0LzU3NDARhg9o -dHRwOi8veGVzdC81NzUwEYYPaHR0cDovL3hlc3QvNTc2MBGGD2h0dHA6Ly94ZXN0 -LzU3NzARhg9odHRwOi8veGVzdC81NzgwEYYPaHR0cDovL3hlc3QvNTc5MBGGD2h0 -dHA6Ly94ZXN0LzU4MDARhg9odHRwOi8veGVzdC81ODEwEYYPaHR0cDovL3hlc3Qv -NTgyMBGGD2h0dHA6Ly94ZXN0LzU4MzARhg9odHRwOi8veGVzdC81ODQwEYYPaHR0 -cDovL3hlc3QvNTg1MBGGD2h0dHA6Ly94ZXN0LzU4NjARhg9odHRwOi8veGVzdC81 -ODcwEYYPaHR0cDovL3hlc3QvNTg4MBGGD2h0dHA6Ly94ZXN0LzU4OTARhg9odHRw -Oi8veGVzdC81OTAwEYYPaHR0cDovL3hlc3QvNTkxMBGGD2h0dHA6Ly94ZXN0LzU5 -MjARhg9odHRwOi8veGVzdC81OTMwEYYPaHR0cDovL3hlc3QvNTk0MBGGD2h0dHA6 -Ly94ZXN0LzU5NTARhg9odHRwOi8veGVzdC81OTYwEYYPaHR0cDovL3hlc3QvNTk3 -MBGGD2h0dHA6Ly94ZXN0LzU5ODARhg9odHRwOi8veGVzdC81OTkwEYYPaHR0cDov -L3hlc3QvNjAwMBGGD2h0dHA6Ly94ZXN0LzYwMTARhg9odHRwOi8veGVzdC82MDIw -EYYPaHR0cDovL3hlc3QvNjAzMBGGD2h0dHA6Ly94ZXN0LzYwNDARhg9odHRwOi8v -eGVzdC82MDUwEYYPaHR0cDovL3hlc3QvNjA2MBGGD2h0dHA6Ly94ZXN0LzYwNzAR -hg9odHRwOi8veGVzdC82MDgwEYYPaHR0cDovL3hlc3QvNjA5MBGGD2h0dHA6Ly94 -ZXN0LzYxMDARhg9odHRwOi8veGVzdC82MTEwEYYPaHR0cDovL3hlc3QvNjEyMBGG -D2h0dHA6Ly94ZXN0LzYxMzARhg9odHRwOi8veGVzdC82MTQwEYYPaHR0cDovL3hl -c3QvNjE1MBGGD2h0dHA6Ly94ZXN0LzYxNjARhg9odHRwOi8veGVzdC82MTcwEYYP -aHR0cDovL3hlc3QvNjE4MBGGD2h0dHA6Ly94ZXN0LzYxOTARhg9odHRwOi8veGVz -dC82MjAwEYYPaHR0cDovL3hlc3QvNjIxMBGGD2h0dHA6Ly94ZXN0LzYyMjARhg9o -dHRwOi8veGVzdC82MjMwEYYPaHR0cDovL3hlc3QvNjI0MBGGD2h0dHA6Ly94ZXN0 -LzYyNTARhg9odHRwOi8veGVzdC82MjYwEYYPaHR0cDovL3hlc3QvNjI3MBGGD2h0 -dHA6Ly94ZXN0LzYyODARhg9odHRwOi8veGVzdC82MjkwEYYPaHR0cDovL3hlc3Qv -NjMwMBGGD2h0dHA6Ly94ZXN0LzYzMTARhg9odHRwOi8veGVzdC82MzIwEYYPaHR0 -cDovL3hlc3QvNjMzMBGGD2h0dHA6Ly94ZXN0LzYzNDARhg9odHRwOi8veGVzdC82 -MzUwEYYPaHR0cDovL3hlc3QvNjM2MBGGD2h0dHA6Ly94ZXN0LzYzNzARhg9odHRw -Oi8veGVzdC82MzgwEYYPaHR0cDovL3hlc3QvNjM5MBGGD2h0dHA6Ly94ZXN0LzY0 -MDARhg9odHRwOi8veGVzdC82NDEwEYYPaHR0cDovL3hlc3QvNjQyMBGGD2h0dHA6 -Ly94ZXN0LzY0MzARhg9odHRwOi8veGVzdC82NDQwEYYPaHR0cDovL3hlc3QvNjQ1 -MBGGD2h0dHA6Ly94ZXN0LzY0NjARhg9odHRwOi8veGVzdC82NDcwEYYPaHR0cDov -L3hlc3QvNjQ4MBGGD2h0dHA6Ly94ZXN0LzY0OTARhg9odHRwOi8veGVzdC82NTAw -EYYPaHR0cDovL3hlc3QvNjUxMBGGD2h0dHA6Ly94ZXN0LzY1MjARhg9odHRwOi8v -eGVzdC82NTMwEYYPaHR0cDovL3hlc3QvNjU0MBGGD2h0dHA6Ly94ZXN0LzY1NTAR -hg9odHRwOi8veGVzdC82NTYwEYYPaHR0cDovL3hlc3QvNjU3MBGGD2h0dHA6Ly94 -ZXN0LzY1ODARhg9odHRwOi8veGVzdC82NTkwEYYPaHR0cDovL3hlc3QvNjYwMBGG -D2h0dHA6Ly94ZXN0LzY2MTARhg9odHRwOi8veGVzdC82NjIwEYYPaHR0cDovL3hl -c3QvNjYzMBGGD2h0dHA6Ly94ZXN0LzY2NDARhg9odHRwOi8veGVzdC82NjUwEYYP -aHR0cDovL3hlc3QvNjY2MBGGD2h0dHA6Ly94ZXN0LzY2NzARhg9odHRwOi8veGVz -dC82NjgwEYYPaHR0cDovL3hlc3QvNjY5MBGGD2h0dHA6Ly94ZXN0LzY3MDARhg9o -dHRwOi8veGVzdC82NzEwEYYPaHR0cDovL3hlc3QvNjcyMBGGD2h0dHA6Ly94ZXN0 -LzY3MzARhg9odHRwOi8veGVzdC82NzQwEYYPaHR0cDovL3hlc3QvNjc1MBGGD2h0 -dHA6Ly94ZXN0LzY3NjARhg9odHRwOi8veGVzdC82NzcwEYYPaHR0cDovL3hlc3Qv -Njc4MBGGD2h0dHA6Ly94ZXN0LzY3OTARhg9odHRwOi8veGVzdC82ODAwEYYPaHR0 -cDovL3hlc3QvNjgxMBGGD2h0dHA6Ly94ZXN0LzY4MjARhg9odHRwOi8veGVzdC82 -ODMwEYYPaHR0cDovL3hlc3QvNjg0MBGGD2h0dHA6Ly94ZXN0LzY4NTARhg9odHRw -Oi8veGVzdC82ODYwEYYPaHR0cDovL3hlc3QvNjg3MBGGD2h0dHA6Ly94ZXN0LzY4 -ODARhg9odHRwOi8veGVzdC82ODkwEYYPaHR0cDovL3hlc3QvNjkwMBGGD2h0dHA6 -Ly94ZXN0LzY5MTARhg9odHRwOi8veGVzdC82OTIwEYYPaHR0cDovL3hlc3QvNjkz -MBGGD2h0dHA6Ly94ZXN0LzY5NDARhg9odHRwOi8veGVzdC82OTUwEYYPaHR0cDov -L3hlc3QvNjk2MBGGD2h0dHA6Ly94ZXN0LzY5NzARhg9odHRwOi8veGVzdC82OTgw -EYYPaHR0cDovL3hlc3QvNjk5MBGGD2h0dHA6Ly94ZXN0LzcwMDARhg9odHRwOi8v -eGVzdC83MDEwEYYPaHR0cDovL3hlc3QvNzAyMBGGD2h0dHA6Ly94ZXN0LzcwMzAR -hg9odHRwOi8veGVzdC83MDQwEYYPaHR0cDovL3hlc3QvNzA1MBGGD2h0dHA6Ly94 -ZXN0LzcwNjARhg9odHRwOi8veGVzdC83MDcwEYYPaHR0cDovL3hlc3QvNzA4MBGG -D2h0dHA6Ly94ZXN0LzcwOTARhg9odHRwOi8veGVzdC83MTAwEYYPaHR0cDovL3hl -c3QvNzExMBGGD2h0dHA6Ly94ZXN0LzcxMjARhg9odHRwOi8veGVzdC83MTMwEYYP -aHR0cDovL3hlc3QvNzE0MBGGD2h0dHA6Ly94ZXN0LzcxNTARhg9odHRwOi8veGVz -dC83MTYwEYYPaHR0cDovL3hlc3QvNzE3MBGGD2h0dHA6Ly94ZXN0LzcxODARhg9o -dHRwOi8veGVzdC83MTkwEYYPaHR0cDovL3hlc3QvNzIwMBGGD2h0dHA6Ly94ZXN0 -LzcyMTARhg9odHRwOi8veGVzdC83MjIwEYYPaHR0cDovL3hlc3QvNzIzMBGGD2h0 -dHA6Ly94ZXN0LzcyNDARhg9odHRwOi8veGVzdC83MjUwEYYPaHR0cDovL3hlc3Qv -NzI2MBGGD2h0dHA6Ly94ZXN0LzcyNzARhg9odHRwOi8veGVzdC83MjgwEYYPaHR0 -cDovL3hlc3QvNzI5MBGGD2h0dHA6Ly94ZXN0LzczMDARhg9odHRwOi8veGVzdC83 -MzEwEYYPaHR0cDovL3hlc3QvNzMyMBGGD2h0dHA6Ly94ZXN0LzczMzARhg9odHRw -Oi8veGVzdC83MzQwEYYPaHR0cDovL3hlc3QvNzM1MBGGD2h0dHA6Ly94ZXN0Lzcz -NjARhg9odHRwOi8veGVzdC83MzcwEYYPaHR0cDovL3hlc3QvNzM4MBGGD2h0dHA6 -Ly94ZXN0LzczOTARhg9odHRwOi8veGVzdC83NDAwEYYPaHR0cDovL3hlc3QvNzQx -MBGGD2h0dHA6Ly94ZXN0Lzc0MjARhg9odHRwOi8veGVzdC83NDMwEYYPaHR0cDov -L3hlc3QvNzQ0MBGGD2h0dHA6Ly94ZXN0Lzc0NTARhg9odHRwOi8veGVzdC83NDYw -EYYPaHR0cDovL3hlc3QvNzQ3MBGGD2h0dHA6Ly94ZXN0Lzc0ODARhg9odHRwOi8v -eGVzdC83NDkwEYYPaHR0cDovL3hlc3QvNzUwMBGGD2h0dHA6Ly94ZXN0Lzc1MTAR -hg9odHRwOi8veGVzdC83NTIwEYYPaHR0cDovL3hlc3QvNzUzMBGGD2h0dHA6Ly94 -ZXN0Lzc1NDARhg9odHRwOi8veGVzdC83NTUwEYYPaHR0cDovL3hlc3QvNzU2MBGG -D2h0dHA6Ly94ZXN0Lzc1NzARhg9odHRwOi8veGVzdC83NTgwEYYPaHR0cDovL3hl -c3QvNzU5MBGGD2h0dHA6Ly94ZXN0Lzc2MDARhg9odHRwOi8veGVzdC83NjEwEYYP -aHR0cDovL3hlc3QvNzYyMBGGD2h0dHA6Ly94ZXN0Lzc2MzARhg9odHRwOi8veGVz -dC83NjQwEYYPaHR0cDovL3hlc3QvNzY1MBGGD2h0dHA6Ly94ZXN0Lzc2NjARhg9o -dHRwOi8veGVzdC83NjcwEYYPaHR0cDovL3hlc3QvNzY4MBGGD2h0dHA6Ly94ZXN0 -Lzc2OTARhg9odHRwOi8veGVzdC83NzAwEYYPaHR0cDovL3hlc3QvNzcxMBGGD2h0 -dHA6Ly94ZXN0Lzc3MjARhg9odHRwOi8veGVzdC83NzMwEYYPaHR0cDovL3hlc3Qv -Nzc0MBGGD2h0dHA6Ly94ZXN0Lzc3NTARhg9odHRwOi8veGVzdC83NzYwEYYPaHR0 -cDovL3hlc3QvNzc3MBGGD2h0dHA6Ly94ZXN0Lzc3ODARhg9odHRwOi8veGVzdC83 -NzkwEYYPaHR0cDovL3hlc3QvNzgwMBGGD2h0dHA6Ly94ZXN0Lzc4MTARhg9odHRw -Oi8veGVzdC83ODIwEYYPaHR0cDovL3hlc3QvNzgzMBGGD2h0dHA6Ly94ZXN0Lzc4 -NDARhg9odHRwOi8veGVzdC83ODUwEYYPaHR0cDovL3hlc3QvNzg2MBGGD2h0dHA6 -Ly94ZXN0Lzc4NzARhg9odHRwOi8veGVzdC83ODgwEYYPaHR0cDovL3hlc3QvNzg5 -MBGGD2h0dHA6Ly94ZXN0Lzc5MDARhg9odHRwOi8veGVzdC83OTEwEYYPaHR0cDov -L3hlc3QvNzkyMBGGD2h0dHA6Ly94ZXN0Lzc5MzARhg9odHRwOi8veGVzdC83OTQw -EYYPaHR0cDovL3hlc3QvNzk1MBGGD2h0dHA6Ly94ZXN0Lzc5NjARhg9odHRwOi8v -eGVzdC83OTcwEYYPaHR0cDovL3hlc3QvNzk4MBGGD2h0dHA6Ly94ZXN0Lzc5OTAR -hg9odHRwOi8veGVzdC84MDAwEYYPaHR0cDovL3hlc3QvODAxMBGGD2h0dHA6Ly94 -ZXN0LzgwMjARhg9odHRwOi8veGVzdC84MDMwEYYPaHR0cDovL3hlc3QvODA0MBGG -D2h0dHA6Ly94ZXN0LzgwNTARhg9odHRwOi8veGVzdC84MDYwEYYPaHR0cDovL3hl -c3QvODA3MBGGD2h0dHA6Ly94ZXN0LzgwODARhg9odHRwOi8veGVzdC84MDkwEYYP -aHR0cDovL3hlc3QvODEwMBGGD2h0dHA6Ly94ZXN0LzgxMTARhg9odHRwOi8veGVz -dC84MTIwEYYPaHR0cDovL3hlc3QvODEzMBGGD2h0dHA6Ly94ZXN0LzgxNDARhg9o -dHRwOi8veGVzdC84MTUwEYYPaHR0cDovL3hlc3QvODE2MBGGD2h0dHA6Ly94ZXN0 -LzgxNzARhg9odHRwOi8veGVzdC84MTgwEYYPaHR0cDovL3hlc3QvODE5MBGGD2h0 -dHA6Ly94ZXN0LzgyMDARhg9odHRwOi8veGVzdC84MjEwEYYPaHR0cDovL3hlc3Qv -ODIyMBGGD2h0dHA6Ly94ZXN0LzgyMzARhg9odHRwOi8veGVzdC84MjQwEYYPaHR0 -cDovL3hlc3QvODI1MBGGD2h0dHA6Ly94ZXN0LzgyNjARhg9odHRwOi8veGVzdC84 -MjcwEYYPaHR0cDovL3hlc3QvODI4MBGGD2h0dHA6Ly94ZXN0LzgyOTARhg9odHRw -Oi8veGVzdC84MzAwEYYPaHR0cDovL3hlc3QvODMxMBGGD2h0dHA6Ly94ZXN0Lzgz -MjARhg9odHRwOi8veGVzdC84MzMwEYYPaHR0cDovL3hlc3QvODM0MBGGD2h0dHA6 -Ly94ZXN0LzgzNTARhg9odHRwOi8veGVzdC84MzYwEYYPaHR0cDovL3hlc3QvODM3 -MBGGD2h0dHA6Ly94ZXN0LzgzODARhg9odHRwOi8veGVzdC84MzkwEYYPaHR0cDov -L3hlc3QvODQwMBGGD2h0dHA6Ly94ZXN0Lzg0MTARhg9odHRwOi8veGVzdC84NDIw -EYYPaHR0cDovL3hlc3QvODQzMBGGD2h0dHA6Ly94ZXN0Lzg0NDARhg9odHRwOi8v -eGVzdC84NDUwEYYPaHR0cDovL3hlc3QvODQ2MBGGD2h0dHA6Ly94ZXN0Lzg0NzAR -hg9odHRwOi8veGVzdC84NDgwEYYPaHR0cDovL3hlc3QvODQ5MBGGD2h0dHA6Ly94 -ZXN0Lzg1MDARhg9odHRwOi8veGVzdC84NTEwEYYPaHR0cDovL3hlc3QvODUyMBGG -D2h0dHA6Ly94ZXN0Lzg1MzARhg9odHRwOi8veGVzdC84NTQwEYYPaHR0cDovL3hl -c3QvODU1MBGGD2h0dHA6Ly94ZXN0Lzg1NjARhg9odHRwOi8veGVzdC84NTcwEYYP -aHR0cDovL3hlc3QvODU4MBGGD2h0dHA6Ly94ZXN0Lzg1OTARhg9odHRwOi8veGVz -dC84NjAwEYYPaHR0cDovL3hlc3QvODYxMBGGD2h0dHA6Ly94ZXN0Lzg2MjARhg9o -dHRwOi8veGVzdC84NjMwEYYPaHR0cDovL3hlc3QvODY0MBGGD2h0dHA6Ly94ZXN0 -Lzg2NTARhg9odHRwOi8veGVzdC84NjYwEYYPaHR0cDovL3hlc3QvODY3MBGGD2h0 -dHA6Ly94ZXN0Lzg2ODARhg9odHRwOi8veGVzdC84NjkwEYYPaHR0cDovL3hlc3Qv -ODcwMBGGD2h0dHA6Ly94ZXN0Lzg3MTARhg9odHRwOi8veGVzdC84NzIwEYYPaHR0 -cDovL3hlc3QvODczMBGGD2h0dHA6Ly94ZXN0Lzg3NDARhg9odHRwOi8veGVzdC84 -NzUwEYYPaHR0cDovL3hlc3QvODc2MBGGD2h0dHA6Ly94ZXN0Lzg3NzARhg9odHRw -Oi8veGVzdC84NzgwEYYPaHR0cDovL3hlc3QvODc5MBGGD2h0dHA6Ly94ZXN0Lzg4 -MDARhg9odHRwOi8veGVzdC84ODEwEYYPaHR0cDovL3hlc3QvODgyMBGGD2h0dHA6 -Ly94ZXN0Lzg4MzARhg9odHRwOi8veGVzdC84ODQwEYYPaHR0cDovL3hlc3QvODg1 -MBGGD2h0dHA6Ly94ZXN0Lzg4NjARhg9odHRwOi8veGVzdC84ODcwEYYPaHR0cDov -L3hlc3QvODg4MBGGD2h0dHA6Ly94ZXN0Lzg4OTARhg9odHRwOi8veGVzdC84OTAw -EYYPaHR0cDovL3hlc3QvODkxMBGGD2h0dHA6Ly94ZXN0Lzg5MjARhg9odHRwOi8v -eGVzdC84OTMwEYYPaHR0cDovL3hlc3QvODk0MBGGD2h0dHA6Ly94ZXN0Lzg5NTAR -hg9odHRwOi8veGVzdC84OTYwEYYPaHR0cDovL3hlc3QvODk3MBGGD2h0dHA6Ly94 -ZXN0Lzg5ODARhg9odHRwOi8veGVzdC84OTkwEYYPaHR0cDovL3hlc3QvOTAwMBGG -D2h0dHA6Ly94ZXN0LzkwMTARhg9odHRwOi8veGVzdC85MDIwEYYPaHR0cDovL3hl -c3QvOTAzMBGGD2h0dHA6Ly94ZXN0LzkwNDARhg9odHRwOi8veGVzdC85MDUwEYYP -aHR0cDovL3hlc3QvOTA2MBGGD2h0dHA6Ly94ZXN0LzkwNzARhg9odHRwOi8veGVz -dC85MDgwEYYPaHR0cDovL3hlc3QvOTA5MBGGD2h0dHA6Ly94ZXN0LzkxMDARhg9o -dHRwOi8veGVzdC85MTEwEYYPaHR0cDovL3hlc3QvOTEyMBGGD2h0dHA6Ly94ZXN0 -LzkxMzARhg9odHRwOi8veGVzdC85MTQwEYYPaHR0cDovL3hlc3QvOTE1MBGGD2h0 -dHA6Ly94ZXN0LzkxNjARhg9odHRwOi8veGVzdC85MTcwEYYPaHR0cDovL3hlc3Qv -OTE4MBGGD2h0dHA6Ly94ZXN0LzkxOTARhg9odHRwOi8veGVzdC85MjAwEYYPaHR0 -cDovL3hlc3QvOTIxMBGGD2h0dHA6Ly94ZXN0LzkyMjARhg9odHRwOi8veGVzdC85 -MjMwEYYPaHR0cDovL3hlc3QvOTI0MBGGD2h0dHA6Ly94ZXN0LzkyNTARhg9odHRw -Oi8veGVzdC85MjYwEYYPaHR0cDovL3hlc3QvOTI3MBGGD2h0dHA6Ly94ZXN0Lzky -ODARhg9odHRwOi8veGVzdC85MjkwEYYPaHR0cDovL3hlc3QvOTMwMBGGD2h0dHA6 -Ly94ZXN0LzkzMTARhg9odHRwOi8veGVzdC85MzIwEYYPaHR0cDovL3hlc3QvOTMz -MBGGD2h0dHA6Ly94ZXN0LzkzNDARhg9odHRwOi8veGVzdC85MzUwEYYPaHR0cDov -L3hlc3QvOTM2MBGGD2h0dHA6Ly94ZXN0LzkzNzARhg9odHRwOi8veGVzdC85Mzgw -EYYPaHR0cDovL3hlc3QvOTM5MBGGD2h0dHA6Ly94ZXN0Lzk0MDARhg9odHRwOi8v -eGVzdC85NDEwEYYPaHR0cDovL3hlc3QvOTQyMBGGD2h0dHA6Ly94ZXN0Lzk0MzAR -hg9odHRwOi8veGVzdC85NDQwEYYPaHR0cDovL3hlc3QvOTQ1MBGGD2h0dHA6Ly94 -ZXN0Lzk0NjARhg9odHRwOi8veGVzdC85NDcwEYYPaHR0cDovL3hlc3QvOTQ4MBGG -D2h0dHA6Ly94ZXN0Lzk0OTARhg9odHRwOi8veGVzdC85NTAwEYYPaHR0cDovL3hl -c3QvOTUxMBGGD2h0dHA6Ly94ZXN0Lzk1MjARhg9odHRwOi8veGVzdC85NTMwEYYP -aHR0cDovL3hlc3QvOTU0MBGGD2h0dHA6Ly94ZXN0Lzk1NTARhg9odHRwOi8veGVz -dC85NTYwEYYPaHR0cDovL3hlc3QvOTU3MBGGD2h0dHA6Ly94ZXN0Lzk1ODARhg9o -dHRwOi8veGVzdC85NTkwEYYPaHR0cDovL3hlc3QvOTYwMBGGD2h0dHA6Ly94ZXN0 -Lzk2MTARhg9odHRwOi8veGVzdC85NjIwEYYPaHR0cDovL3hlc3QvOTYzMBGGD2h0 -dHA6Ly94ZXN0Lzk2NDARhg9odHRwOi8veGVzdC85NjUwEYYPaHR0cDovL3hlc3Qv -OTY2MBGGD2h0dHA6Ly94ZXN0Lzk2NzARhg9odHRwOi8veGVzdC85NjgwEYYPaHR0 -cDovL3hlc3QvOTY5MBGGD2h0dHA6Ly94ZXN0Lzk3MDARhg9odHRwOi8veGVzdC85 -NzEwEYYPaHR0cDovL3hlc3QvOTcyMBGGD2h0dHA6Ly94ZXN0Lzk3MzARhg9odHRw -Oi8veGVzdC85NzQwEYYPaHR0cDovL3hlc3QvOTc1MBGGD2h0dHA6Ly94ZXN0Lzk3 -NjARhg9odHRwOi8veGVzdC85NzcwEYYPaHR0cDovL3hlc3QvOTc4MBGGD2h0dHA6 -Ly94ZXN0Lzk3OTARhg9odHRwOi8veGVzdC85ODAwEYYPaHR0cDovL3hlc3QvOTgx -MBGGD2h0dHA6Ly94ZXN0Lzk4MjARhg9odHRwOi8veGVzdC85ODMwEYYPaHR0cDov -L3hlc3QvOTg0MBGGD2h0dHA6Ly94ZXN0Lzk4NTARhg9odHRwOi8veGVzdC85ODYw -EYYPaHR0cDovL3hlc3QvOTg3MBGGD2h0dHA6Ly94ZXN0Lzk4ODARhg9odHRwOi8v -eGVzdC85ODkwEYYPaHR0cDovL3hlc3QvOTkwMBGGD2h0dHA6Ly94ZXN0Lzk5MTAR -hg9odHRwOi8veGVzdC85OTIwEYYPaHR0cDovL3hlc3QvOTkzMBGGD2h0dHA6Ly94 -ZXN0Lzk5NDARhg9odHRwOi8veGVzdC85OTUwEYYPaHR0cDovL3hlc3QvOTk2MBGG -D2h0dHA6Ly94ZXN0Lzk5NzARhg9odHRwOi8veGVzdC85OTgwEYYPaHR0cDovL3hl -c3QvOTk5MBKGEGh0dHA6Ly94ZXN0LzEwMDAwEoYQaHR0cDovL3hlc3QvMTAwMTAS -hhBodHRwOi8veGVzdC8xMDAyMBKGEGh0dHA6Ly94ZXN0LzEwMDMwEoYQaHR0cDov -L3hlc3QvMTAwNDAShhBodHRwOi8veGVzdC8xMDA1MBKGEGh0dHA6Ly94ZXN0LzEw -MDYwEoYQaHR0cDovL3hlc3QvMTAwNzAShhBodHRwOi8veGVzdC8xMDA4MBKGEGh0 -dHA6Ly94ZXN0LzEwMDkwEoYQaHR0cDovL3hlc3QvMTAxMDAShhBodHRwOi8veGVz -dC8xMDExMBKGEGh0dHA6Ly94ZXN0LzEwMTIwEoYQaHR0cDovL3hlc3QvMTAxMzAS -hhBodHRwOi8veGVzdC8xMDE0MBKGEGh0dHA6Ly94ZXN0LzEwMTUwEoYQaHR0cDov -L3hlc3QvMTAxNjAShhBodHRwOi8veGVzdC8xMDE3MBKGEGh0dHA6Ly94ZXN0LzEw -MTgwEoYQaHR0cDovL3hlc3QvMTAxOTAShhBodHRwOi8veGVzdC8xMDIwMBKGEGh0 -dHA6Ly94ZXN0LzEwMjEwEoYQaHR0cDovL3hlc3QvMTAyMjAShhBodHRwOi8veGVz -dC8xMDIzMBKGEGh0dHA6Ly94ZXN0LzEwMjQwDQYJKoZIhvcNAQELBQADggEBADeo -vuQDYmMVsP6+SX8iXnr4tDMM/jtBDJncvbCjDDpUQidiGBWv5tWRYxcdGz/K9i4v -bnFeZoYnaZExXTWF1EZ3aUVQBZy8ObgP0JamZQLTgFOsWJzz7CcnsjNEURd5kOqx -VzL34FikmWR4VWEW01FizyYCjX3fLdjD0gBeA0l4ILd4np62VulITcVa6ijoFnBK -ObsdiEBa/WeCc/PG8untcIPecj99CC8aQ03JsunO5kOpdCXNupXNUZfLVtTm5tlp -Cl9IFyo7Qayl7B8wybLxaI+hDx59nuO+u43LbkFqFnpI9awUaffeY/yUgOdi2uaZ -Eq3x0l12a8MRblVdfuw= ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.serial b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.serial deleted file mode 100644 index 5fcb2f4265..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.serial +++ /dev/null @@ -1 +0,0 @@ -2FABB43DDCC077802A0309AD437402BF98D8DC diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.serial.old b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.serial.old deleted file mode 100644 index 32296209b4..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate.serial.old +++ /dev/null @@ -1 +0,0 @@ -2FABB43DDCC077802A0309AD437402BF98D8DB diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.cnf deleted file mode 100644 index fb582a1c60..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.cnf +++ /dev/null @@ -1,2118 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Intermediate" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,keyCertSign,cRLSign -basicConstraints = critical,CA:true -nameConstraints = @nameConstraints_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Intermediate_1.pem -new_certs_dir = out -serial = out/Intermediate.serial -database = out/Intermediate.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Intermediate.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Intermediate.cer - -[crl_info] -URI.0 = http://url-for-crl/Intermediate.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[nameConstraints_info] -excluded;DNS.1 = x0.test -excluded;DNS.2 = x1.test -excluded;DNS.3 = x2.test -excluded;DNS.4 = x3.test -excluded;DNS.5 = x4.test -excluded;DNS.6 = x5.test -excluded;DNS.7 = x6.test -excluded;DNS.8 = x7.test -excluded;DNS.9 = x8.test -excluded;DNS.10 = x9.test -excluded;DNS.11 = x10.test -excluded;DNS.12 = x11.test -excluded;DNS.13 = x12.test -excluded;DNS.14 = x13.test -excluded;DNS.15 = x14.test -excluded;DNS.16 = x15.test -excluded;DNS.17 = x16.test -excluded;DNS.18 = x17.test -excluded;DNS.19 = x18.test -excluded;DNS.20 = x19.test -excluded;DNS.21 = x20.test -excluded;DNS.22 = x21.test -excluded;DNS.23 = x22.test -excluded;DNS.24 = x23.test -excluded;DNS.25 = x24.test -excluded;DNS.26 = x25.test -excluded;DNS.27 = x26.test -excluded;DNS.28 = x27.test -excluded;DNS.29 = x28.test -excluded;DNS.30 = x29.test -excluded;DNS.31 = x30.test -excluded;DNS.32 = x31.test -excluded;DNS.33 = x32.test -excluded;DNS.34 = x33.test -excluded;DNS.35 = x34.test -excluded;DNS.36 = x35.test -excluded;DNS.37 = x36.test -excluded;DNS.38 = x37.test -excluded;DNS.39 = x38.test -excluded;DNS.40 = x39.test -excluded;DNS.41 = x40.test -excluded;DNS.42 = x41.test -excluded;DNS.43 = x42.test -excluded;DNS.44 = x43.test -excluded;DNS.45 = x44.test -excluded;DNS.46 = x45.test -excluded;DNS.47 = x46.test -excluded;DNS.48 = x47.test -excluded;DNS.49 = x48.test -excluded;DNS.50 = x49.test -excluded;DNS.51 = x50.test -excluded;DNS.52 = x51.test -excluded;DNS.53 = x52.test -excluded;DNS.54 = x53.test -excluded;DNS.55 = x54.test -excluded;DNS.56 = x55.test -excluded;DNS.57 = x56.test -excluded;DNS.58 = x57.test -excluded;DNS.59 = x58.test -excluded;DNS.60 = x59.test -excluded;DNS.61 = x60.test -excluded;DNS.62 = x61.test -excluded;DNS.63 = x62.test -excluded;DNS.64 = x63.test -excluded;DNS.65 = x64.test -excluded;DNS.66 = x65.test -excluded;DNS.67 = x66.test -excluded;DNS.68 = x67.test -excluded;DNS.69 = x68.test -excluded;DNS.70 = x69.test -excluded;DNS.71 = x70.test -excluded;DNS.72 = x71.test -excluded;DNS.73 = x72.test -excluded;DNS.74 = x73.test -excluded;DNS.75 = x74.test -excluded;DNS.76 = x75.test -excluded;DNS.77 = x76.test -excluded;DNS.78 = x77.test -excluded;DNS.79 = x78.test -excluded;DNS.80 = x79.test -excluded;DNS.81 = x80.test -excluded;DNS.82 = x81.test -excluded;DNS.83 = x82.test -excluded;DNS.84 = x83.test -excluded;DNS.85 = x84.test -excluded;DNS.86 = x85.test -excluded;DNS.87 = x86.test -excluded;DNS.88 = x87.test -excluded;DNS.89 = x88.test -excluded;DNS.90 = x89.test -excluded;DNS.91 = x90.test -excluded;DNS.92 = x91.test -excluded;DNS.93 = x92.test -excluded;DNS.94 = x93.test -excluded;DNS.95 = x94.test -excluded;DNS.96 = x95.test -excluded;DNS.97 = x96.test -excluded;DNS.98 = x97.test -excluded;DNS.99 = x98.test -excluded;DNS.100 = x99.test -excluded;DNS.101 = x100.test -excluded;DNS.102 = x101.test -excluded;DNS.103 = x102.test -excluded;DNS.104 = x103.test -excluded;DNS.105 = x104.test -excluded;DNS.106 = x105.test -excluded;DNS.107 = x106.test -excluded;DNS.108 = x107.test -excluded;DNS.109 = x108.test -excluded;DNS.110 = x109.test -excluded;DNS.111 = x110.test -excluded;DNS.112 = x111.test -excluded;DNS.113 = x112.test -excluded;DNS.114 = x113.test -excluded;DNS.115 = x114.test -excluded;DNS.116 = x115.test -excluded;DNS.117 = x116.test -excluded;DNS.118 = x117.test -excluded;DNS.119 = x118.test -excluded;DNS.120 = x119.test -excluded;DNS.121 = x120.test -excluded;DNS.122 = x121.test -excluded;DNS.123 = x122.test -excluded;DNS.124 = x123.test -excluded;DNS.125 = x124.test -excluded;DNS.126 = x125.test -excluded;DNS.127 = x126.test -excluded;DNS.128 = x127.test -excluded;DNS.129 = x128.test -excluded;DNS.130 = x129.test -excluded;DNS.131 = x130.test -excluded;DNS.132 = x131.test -excluded;DNS.133 = x132.test -excluded;DNS.134 = x133.test -excluded;DNS.135 = x134.test -excluded;DNS.136 = x135.test -excluded;DNS.137 = x136.test -excluded;DNS.138 = x137.test -excluded;DNS.139 = x138.test -excluded;DNS.140 = x139.test -excluded;DNS.141 = x140.test -excluded;DNS.142 = x141.test -excluded;DNS.143 = x142.test -excluded;DNS.144 = x143.test -excluded;DNS.145 = x144.test -excluded;DNS.146 = x145.test -excluded;DNS.147 = x146.test -excluded;DNS.148 = x147.test -excluded;DNS.149 = x148.test -excluded;DNS.150 = x149.test -excluded;DNS.151 = x150.test -excluded;DNS.152 = x151.test -excluded;DNS.153 = x152.test -excluded;DNS.154 = x153.test -excluded;DNS.155 = x154.test -excluded;DNS.156 = x155.test -excluded;DNS.157 = x156.test -excluded;DNS.158 = x157.test -excluded;DNS.159 = x158.test -excluded;DNS.160 = x159.test -excluded;DNS.161 = x160.test -excluded;DNS.162 = x161.test -excluded;DNS.163 = x162.test -excluded;DNS.164 = x163.test -excluded;DNS.165 = x164.test -excluded;DNS.166 = x165.test -excluded;DNS.167 = x166.test -excluded;DNS.168 = x167.test -excluded;DNS.169 = x168.test -excluded;DNS.170 = x169.test -excluded;IP.1 = 11.0.0.0/255.255.255.255 -excluded;IP.2 = 11.0.0.1/255.255.255.255 -excluded;IP.3 = 11.0.0.2/255.255.255.255 -excluded;IP.4 = 11.0.0.3/255.255.255.255 -excluded;IP.5 = 11.0.0.4/255.255.255.255 -excluded;IP.6 = 11.0.0.5/255.255.255.255 -excluded;IP.7 = 11.0.0.6/255.255.255.255 -excluded;IP.8 = 11.0.0.7/255.255.255.255 -excluded;IP.9 = 11.0.0.8/255.255.255.255 -excluded;IP.10 = 11.0.0.9/255.255.255.255 -excluded;IP.11 = 11.0.0.10/255.255.255.255 -excluded;IP.12 = 11.0.0.11/255.255.255.255 -excluded;IP.13 = 11.0.0.12/255.255.255.255 -excluded;IP.14 = 11.0.0.13/255.255.255.255 -excluded;IP.15 = 11.0.0.14/255.255.255.255 -excluded;IP.16 = 11.0.0.15/255.255.255.255 -excluded;IP.17 = 11.0.0.16/255.255.255.255 -excluded;IP.18 = 11.0.0.17/255.255.255.255 -excluded;IP.19 = 11.0.0.18/255.255.255.255 -excluded;IP.20 = 11.0.0.19/255.255.255.255 -excluded;IP.21 = 11.0.0.20/255.255.255.255 -excluded;IP.22 = 11.0.0.21/255.255.255.255 -excluded;IP.23 = 11.0.0.22/255.255.255.255 -excluded;IP.24 = 11.0.0.23/255.255.255.255 -excluded;IP.25 = 11.0.0.24/255.255.255.255 -excluded;IP.26 = 11.0.0.25/255.255.255.255 -excluded;IP.27 = 11.0.0.26/255.255.255.255 -excluded;IP.28 = 11.0.0.27/255.255.255.255 -excluded;IP.29 = 11.0.0.28/255.255.255.255 -excluded;IP.30 = 11.0.0.29/255.255.255.255 -excluded;IP.31 = 11.0.0.30/255.255.255.255 -excluded;IP.32 = 11.0.0.31/255.255.255.255 -excluded;IP.33 = 11.0.0.32/255.255.255.255 -excluded;IP.34 = 11.0.0.33/255.255.255.255 -excluded;IP.35 = 11.0.0.34/255.255.255.255 -excluded;IP.36 = 11.0.0.35/255.255.255.255 -excluded;IP.37 = 11.0.0.36/255.255.255.255 -excluded;IP.38 = 11.0.0.37/255.255.255.255 -excluded;IP.39 = 11.0.0.38/255.255.255.255 -excluded;IP.40 = 11.0.0.39/255.255.255.255 -excluded;IP.41 = 11.0.0.40/255.255.255.255 -excluded;IP.42 = 11.0.0.41/255.255.255.255 -excluded;IP.43 = 11.0.0.42/255.255.255.255 -excluded;IP.44 = 11.0.0.43/255.255.255.255 -excluded;IP.45 = 11.0.0.44/255.255.255.255 -excluded;IP.46 = 11.0.0.45/255.255.255.255 -excluded;IP.47 = 11.0.0.46/255.255.255.255 -excluded;IP.48 = 11.0.0.47/255.255.255.255 -excluded;IP.49 = 11.0.0.48/255.255.255.255 -excluded;IP.50 = 11.0.0.49/255.255.255.255 -excluded;IP.51 = 11.0.0.50/255.255.255.255 -excluded;IP.52 = 11.0.0.51/255.255.255.255 -excluded;IP.53 = 11.0.0.52/255.255.255.255 -excluded;IP.54 = 11.0.0.53/255.255.255.255 -excluded;IP.55 = 11.0.0.54/255.255.255.255 -excluded;IP.56 = 11.0.0.55/255.255.255.255 -excluded;IP.57 = 11.0.0.56/255.255.255.255 -excluded;IP.58 = 11.0.0.57/255.255.255.255 -excluded;IP.59 = 11.0.0.58/255.255.255.255 -excluded;IP.60 = 11.0.0.59/255.255.255.255 -excluded;IP.61 = 11.0.0.60/255.255.255.255 -excluded;IP.62 = 11.0.0.61/255.255.255.255 -excluded;IP.63 = 11.0.0.62/255.255.255.255 -excluded;IP.64 = 11.0.0.63/255.255.255.255 -excluded;IP.65 = 11.0.0.64/255.255.255.255 -excluded;IP.66 = 11.0.0.65/255.255.255.255 -excluded;IP.67 = 11.0.0.66/255.255.255.255 -excluded;IP.68 = 11.0.0.67/255.255.255.255 -excluded;IP.69 = 11.0.0.68/255.255.255.255 -excluded;IP.70 = 11.0.0.69/255.255.255.255 -excluded;IP.71 = 11.0.0.70/255.255.255.255 -excluded;IP.72 = 11.0.0.71/255.255.255.255 -excluded;IP.73 = 11.0.0.72/255.255.255.255 -excluded;IP.74 = 11.0.0.73/255.255.255.255 -excluded;IP.75 = 11.0.0.74/255.255.255.255 -excluded;IP.76 = 11.0.0.75/255.255.255.255 -excluded;IP.77 = 11.0.0.76/255.255.255.255 -excluded;IP.78 = 11.0.0.77/255.255.255.255 -excluded;IP.79 = 11.0.0.78/255.255.255.255 -excluded;IP.80 = 11.0.0.79/255.255.255.255 -excluded;IP.81 = 11.0.0.80/255.255.255.255 -excluded;IP.82 = 11.0.0.81/255.255.255.255 -excluded;IP.83 = 11.0.0.82/255.255.255.255 -excluded;IP.84 = 11.0.0.83/255.255.255.255 -excluded;IP.85 = 11.0.0.84/255.255.255.255 -excluded;IP.86 = 11.0.0.85/255.255.255.255 -excluded;IP.87 = 11.0.0.86/255.255.255.255 -excluded;IP.88 = 11.0.0.87/255.255.255.255 -excluded;IP.89 = 11.0.0.88/255.255.255.255 -excluded;IP.90 = 11.0.0.89/255.255.255.255 -excluded;IP.91 = 11.0.0.90/255.255.255.255 -excluded;IP.92 = 11.0.0.91/255.255.255.255 -excluded;IP.93 = 11.0.0.92/255.255.255.255 -excluded;IP.94 = 11.0.0.93/255.255.255.255 -excluded;IP.95 = 11.0.0.94/255.255.255.255 -excluded;IP.96 = 11.0.0.95/255.255.255.255 -excluded;IP.97 = 11.0.0.96/255.255.255.255 -excluded;IP.98 = 11.0.0.97/255.255.255.255 -excluded;IP.99 = 11.0.0.98/255.255.255.255 -excluded;IP.100 = 11.0.0.99/255.255.255.255 -excluded;IP.101 = 11.0.0.100/255.255.255.255 -excluded;IP.102 = 11.0.0.101/255.255.255.255 -excluded;IP.103 = 11.0.0.102/255.255.255.255 -excluded;IP.104 = 11.0.0.103/255.255.255.255 -excluded;IP.105 = 11.0.0.104/255.255.255.255 -excluded;IP.106 = 11.0.0.105/255.255.255.255 -excluded;IP.107 = 11.0.0.106/255.255.255.255 -excluded;IP.108 = 11.0.0.107/255.255.255.255 -excluded;IP.109 = 11.0.0.108/255.255.255.255 -excluded;IP.110 = 11.0.0.109/255.255.255.255 -excluded;IP.111 = 11.0.0.110/255.255.255.255 -excluded;IP.112 = 11.0.0.111/255.255.255.255 -excluded;IP.113 = 11.0.0.112/255.255.255.255 -excluded;IP.114 = 11.0.0.113/255.255.255.255 -excluded;IP.115 = 11.0.0.114/255.255.255.255 -excluded;IP.116 = 11.0.0.115/255.255.255.255 -excluded;IP.117 = 11.0.0.116/255.255.255.255 -excluded;IP.118 = 11.0.0.117/255.255.255.255 -excluded;IP.119 = 11.0.0.118/255.255.255.255 -excluded;IP.120 = 11.0.0.119/255.255.255.255 -excluded;IP.121 = 11.0.0.120/255.255.255.255 -excluded;IP.122 = 11.0.0.121/255.255.255.255 -excluded;IP.123 = 11.0.0.122/255.255.255.255 -excluded;IP.124 = 11.0.0.123/255.255.255.255 -excluded;IP.125 = 11.0.0.124/255.255.255.255 -excluded;IP.126 = 11.0.0.125/255.255.255.255 -excluded;IP.127 = 11.0.0.126/255.255.255.255 -excluded;IP.128 = 11.0.0.127/255.255.255.255 -excluded;IP.129 = 11.0.0.128/255.255.255.255 -excluded;IP.130 = 11.0.0.129/255.255.255.255 -excluded;IP.131 = 11.0.0.130/255.255.255.255 -excluded;IP.132 = 11.0.0.131/255.255.255.255 -excluded;IP.133 = 11.0.0.132/255.255.255.255 -excluded;IP.134 = 11.0.0.133/255.255.255.255 -excluded;IP.135 = 11.0.0.134/255.255.255.255 -excluded;IP.136 = 11.0.0.135/255.255.255.255 -excluded;IP.137 = 11.0.0.136/255.255.255.255 -excluded;IP.138 = 11.0.0.137/255.255.255.255 -excluded;IP.139 = 11.0.0.138/255.255.255.255 -excluded;IP.140 = 11.0.0.139/255.255.255.255 -excluded;IP.141 = 11.0.0.140/255.255.255.255 -excluded;IP.142 = 11.0.0.141/255.255.255.255 -excluded;IP.143 = 11.0.0.142/255.255.255.255 -excluded;IP.144 = 11.0.0.143/255.255.255.255 -excluded;IP.145 = 11.0.0.144/255.255.255.255 -excluded;IP.146 = 11.0.0.145/255.255.255.255 -excluded;IP.147 = 11.0.0.146/255.255.255.255 -excluded;IP.148 = 11.0.0.147/255.255.255.255 -excluded;IP.149 = 11.0.0.148/255.255.255.255 -excluded;IP.150 = 11.0.0.149/255.255.255.255 -excluded;IP.151 = 11.0.0.150/255.255.255.255 -excluded;IP.152 = 11.0.0.151/255.255.255.255 -excluded;IP.153 = 11.0.0.152/255.255.255.255 -excluded;IP.154 = 11.0.0.153/255.255.255.255 -excluded;IP.155 = 11.0.0.154/255.255.255.255 -excluded;IP.156 = 11.0.0.155/255.255.255.255 -excluded;IP.157 = 11.0.0.156/255.255.255.255 -excluded;IP.158 = 11.0.0.157/255.255.255.255 -excluded;IP.159 = 11.0.0.158/255.255.255.255 -excluded;IP.160 = 11.0.0.159/255.255.255.255 -excluded;IP.161 = 11.0.0.160/255.255.255.255 -excluded;IP.162 = 11.0.0.161/255.255.255.255 -excluded;IP.163 = 11.0.0.162/255.255.255.255 -excluded;IP.164 = 11.0.0.163/255.255.255.255 -excluded;IP.165 = 11.0.0.164/255.255.255.255 -excluded;IP.166 = 11.0.0.165/255.255.255.255 -excluded;IP.167 = 11.0.0.166/255.255.255.255 -excluded;IP.168 = 11.0.0.167/255.255.255.255 -excluded;IP.169 = 11.0.0.168/255.255.255.255 -excluded;IP.170 = 11.0.0.169/255.255.255.255 -excluded;dirName.1 = nameConstraints_dirname_x1 -excluded;dirName.2 = nameConstraints_dirname_x2 -excluded;dirName.3 = nameConstraints_dirname_x3 -excluded;dirName.4 = nameConstraints_dirname_x4 -excluded;dirName.5 = nameConstraints_dirname_x5 -excluded;dirName.6 = nameConstraints_dirname_x6 -excluded;dirName.7 = nameConstraints_dirname_x7 -excluded;dirName.8 = nameConstraints_dirname_x8 -excluded;dirName.9 = nameConstraints_dirname_x9 -excluded;dirName.10 = nameConstraints_dirname_x10 -excluded;dirName.11 = nameConstraints_dirname_x11 -excluded;dirName.12 = nameConstraints_dirname_x12 -excluded;dirName.13 = nameConstraints_dirname_x13 -excluded;dirName.14 = nameConstraints_dirname_x14 -excluded;dirName.15 = nameConstraints_dirname_x15 -excluded;dirName.16 = nameConstraints_dirname_x16 -excluded;dirName.17 = nameConstraints_dirname_x17 -excluded;dirName.18 = nameConstraints_dirname_x18 -excluded;dirName.19 = nameConstraints_dirname_x19 -excluded;dirName.20 = nameConstraints_dirname_x20 -excluded;dirName.21 = nameConstraints_dirname_x21 -excluded;dirName.22 = nameConstraints_dirname_x22 -excluded;dirName.23 = nameConstraints_dirname_x23 -excluded;dirName.24 = nameConstraints_dirname_x24 -excluded;dirName.25 = nameConstraints_dirname_x25 -excluded;dirName.26 = nameConstraints_dirname_x26 -excluded;dirName.27 = nameConstraints_dirname_x27 -excluded;dirName.28 = nameConstraints_dirname_x28 -excluded;dirName.29 = nameConstraints_dirname_x29 -excluded;dirName.30 = nameConstraints_dirname_x30 -excluded;dirName.31 = nameConstraints_dirname_x31 -excluded;dirName.32 = nameConstraints_dirname_x32 -excluded;dirName.33 = nameConstraints_dirname_x33 -excluded;dirName.34 = nameConstraints_dirname_x34 -excluded;dirName.35 = nameConstraints_dirname_x35 -excluded;dirName.36 = nameConstraints_dirname_x36 -excluded;dirName.37 = nameConstraints_dirname_x37 -excluded;dirName.38 = nameConstraints_dirname_x38 -excluded;dirName.39 = nameConstraints_dirname_x39 -excluded;dirName.40 = nameConstraints_dirname_x40 -excluded;dirName.41 = nameConstraints_dirname_x41 -excluded;dirName.42 = nameConstraints_dirname_x42 -excluded;dirName.43 = nameConstraints_dirname_x43 -excluded;dirName.44 = nameConstraints_dirname_x44 -excluded;dirName.45 = nameConstraints_dirname_x45 -excluded;dirName.46 = nameConstraints_dirname_x46 -excluded;dirName.47 = nameConstraints_dirname_x47 -excluded;dirName.48 = nameConstraints_dirname_x48 -excluded;dirName.49 = nameConstraints_dirname_x49 -excluded;dirName.50 = nameConstraints_dirname_x50 -excluded;dirName.51 = nameConstraints_dirname_x51 -excluded;dirName.52 = nameConstraints_dirname_x52 -excluded;dirName.53 = nameConstraints_dirname_x53 -excluded;dirName.54 = nameConstraints_dirname_x54 -excluded;dirName.55 = nameConstraints_dirname_x55 -excluded;dirName.56 = nameConstraints_dirname_x56 -excluded;dirName.57 = nameConstraints_dirname_x57 -excluded;dirName.58 = nameConstraints_dirname_x58 -excluded;dirName.59 = nameConstraints_dirname_x59 -excluded;dirName.60 = nameConstraints_dirname_x60 -excluded;dirName.61 = nameConstraints_dirname_x61 -excluded;dirName.62 = nameConstraints_dirname_x62 -excluded;dirName.63 = nameConstraints_dirname_x63 -excluded;dirName.64 = nameConstraints_dirname_x64 -excluded;dirName.65 = nameConstraints_dirname_x65 -excluded;dirName.66 = nameConstraints_dirname_x66 -excluded;dirName.67 = nameConstraints_dirname_x67 -excluded;dirName.68 = nameConstraints_dirname_x68 -excluded;dirName.69 = nameConstraints_dirname_x69 -excluded;dirName.70 = nameConstraints_dirname_x70 -excluded;dirName.71 = nameConstraints_dirname_x71 -excluded;dirName.72 = nameConstraints_dirname_x72 -excluded;dirName.73 = nameConstraints_dirname_x73 -excluded;dirName.74 = nameConstraints_dirname_x74 -excluded;dirName.75 = nameConstraints_dirname_x75 -excluded;dirName.76 = nameConstraints_dirname_x76 -excluded;dirName.77 = nameConstraints_dirname_x77 -excluded;dirName.78 = nameConstraints_dirname_x78 -excluded;dirName.79 = nameConstraints_dirname_x79 -excluded;dirName.80 = nameConstraints_dirname_x80 -excluded;dirName.81 = nameConstraints_dirname_x81 -excluded;dirName.82 = nameConstraints_dirname_x82 -excluded;dirName.83 = nameConstraints_dirname_x83 -excluded;dirName.84 = nameConstraints_dirname_x84 -excluded;dirName.85 = nameConstraints_dirname_x85 -excluded;dirName.86 = nameConstraints_dirname_x86 -excluded;dirName.87 = nameConstraints_dirname_x87 -excluded;dirName.88 = nameConstraints_dirname_x88 -excluded;dirName.89 = nameConstraints_dirname_x89 -excluded;dirName.90 = nameConstraints_dirname_x90 -excluded;dirName.91 = nameConstraints_dirname_x91 -excluded;dirName.92 = nameConstraints_dirname_x92 -excluded;dirName.93 = nameConstraints_dirname_x93 -excluded;dirName.94 = nameConstraints_dirname_x94 -excluded;dirName.95 = nameConstraints_dirname_x95 -excluded;dirName.96 = nameConstraints_dirname_x96 -excluded;dirName.97 = nameConstraints_dirname_x97 -excluded;dirName.98 = nameConstraints_dirname_x98 -excluded;dirName.99 = nameConstraints_dirname_x99 -excluded;dirName.100 = nameConstraints_dirname_x100 -excluded;dirName.101 = nameConstraints_dirname_x101 -excluded;dirName.102 = nameConstraints_dirname_x102 -excluded;dirName.103 = nameConstraints_dirname_x103 -excluded;dirName.104 = nameConstraints_dirname_x104 -excluded;dirName.105 = nameConstraints_dirname_x105 -excluded;dirName.106 = nameConstraints_dirname_x106 -excluded;dirName.107 = nameConstraints_dirname_x107 -excluded;dirName.108 = nameConstraints_dirname_x108 -excluded;dirName.109 = nameConstraints_dirname_x109 -excluded;dirName.110 = nameConstraints_dirname_x110 -excluded;dirName.111 = nameConstraints_dirname_x111 -excluded;dirName.112 = nameConstraints_dirname_x112 -excluded;dirName.113 = nameConstraints_dirname_x113 -excluded;dirName.114 = nameConstraints_dirname_x114 -excluded;dirName.115 = nameConstraints_dirname_x115 -excluded;dirName.116 = nameConstraints_dirname_x116 -excluded;dirName.117 = nameConstraints_dirname_x117 -excluded;dirName.118 = nameConstraints_dirname_x118 -excluded;dirName.119 = nameConstraints_dirname_x119 -excluded;dirName.120 = nameConstraints_dirname_x120 -excluded;dirName.121 = nameConstraints_dirname_x121 -excluded;dirName.122 = nameConstraints_dirname_x122 -excluded;dirName.123 = nameConstraints_dirname_x123 -excluded;dirName.124 = nameConstraints_dirname_x124 -excluded;dirName.125 = nameConstraints_dirname_x125 -excluded;dirName.126 = nameConstraints_dirname_x126 -excluded;dirName.127 = nameConstraints_dirname_x127 -excluded;dirName.128 = nameConstraints_dirname_x128 -excluded;dirName.129 = nameConstraints_dirname_x129 -excluded;dirName.130 = nameConstraints_dirname_x130 -excluded;dirName.131 = nameConstraints_dirname_x131 -excluded;dirName.132 = nameConstraints_dirname_x132 -excluded;dirName.133 = nameConstraints_dirname_x133 -excluded;dirName.134 = nameConstraints_dirname_x134 -excluded;dirName.135 = nameConstraints_dirname_x135 -excluded;dirName.136 = nameConstraints_dirname_x136 -excluded;dirName.137 = nameConstraints_dirname_x137 -excluded;dirName.138 = nameConstraints_dirname_x138 -excluded;dirName.139 = nameConstraints_dirname_x139 -excluded;dirName.140 = nameConstraints_dirname_x140 -excluded;dirName.141 = nameConstraints_dirname_x141 -excluded;dirName.142 = nameConstraints_dirname_x142 -excluded;dirName.143 = nameConstraints_dirname_x143 -excluded;dirName.144 = nameConstraints_dirname_x144 -excluded;dirName.145 = nameConstraints_dirname_x145 -excluded;dirName.146 = nameConstraints_dirname_x146 -excluded;dirName.147 = nameConstraints_dirname_x147 -excluded;dirName.148 = nameConstraints_dirname_x148 -excluded;dirName.149 = nameConstraints_dirname_x149 -excluded;dirName.150 = nameConstraints_dirname_x150 -excluded;dirName.151 = nameConstraints_dirname_x151 -excluded;dirName.152 = nameConstraints_dirname_x152 -excluded;dirName.153 = nameConstraints_dirname_x153 -excluded;dirName.154 = nameConstraints_dirname_x154 -excluded;dirName.155 = nameConstraints_dirname_x155 -excluded;dirName.156 = nameConstraints_dirname_x156 -excluded;dirName.157 = nameConstraints_dirname_x157 -excluded;dirName.158 = nameConstraints_dirname_x158 -excluded;dirName.159 = nameConstraints_dirname_x159 -excluded;dirName.160 = nameConstraints_dirname_x160 -excluded;dirName.161 = nameConstraints_dirname_x161 -excluded;dirName.162 = nameConstraints_dirname_x162 -excluded;dirName.163 = nameConstraints_dirname_x163 -excluded;dirName.164 = nameConstraints_dirname_x164 -excluded;dirName.165 = nameConstraints_dirname_x165 -excluded;dirName.166 = nameConstraints_dirname_x166 -excluded;dirName.167 = nameConstraints_dirname_x167 -excluded;dirName.168 = nameConstraints_dirname_x168 -excluded;dirName.169 = nameConstraints_dirname_x169 -excluded;dirName.170 = nameConstraints_dirname_x170 -permitted;DNS.1 = t0.test -permitted;DNS.2 = t1.test -permitted;DNS.3 = t2.test -permitted;DNS.4 = t3.test -permitted;DNS.5 = t4.test -permitted;DNS.6 = t5.test -permitted;DNS.7 = t6.test -permitted;DNS.8 = t7.test -permitted;DNS.9 = t8.test -permitted;DNS.10 = t9.test -permitted;DNS.11 = t10.test -permitted;DNS.12 = t11.test -permitted;DNS.13 = t12.test -permitted;DNS.14 = t13.test -permitted;DNS.15 = t14.test -permitted;DNS.16 = t15.test -permitted;DNS.17 = t16.test -permitted;DNS.18 = t17.test -permitted;DNS.19 = t18.test -permitted;DNS.20 = t19.test -permitted;DNS.21 = t20.test -permitted;DNS.22 = t21.test -permitted;DNS.23 = t22.test -permitted;DNS.24 = t23.test -permitted;DNS.25 = t24.test -permitted;DNS.26 = t25.test -permitted;DNS.27 = t26.test -permitted;DNS.28 = t27.test -permitted;DNS.29 = t28.test -permitted;DNS.30 = t29.test -permitted;DNS.31 = t30.test -permitted;DNS.32 = t31.test -permitted;DNS.33 = t32.test -permitted;DNS.34 = t33.test -permitted;DNS.35 = t34.test -permitted;DNS.36 = t35.test -permitted;DNS.37 = t36.test -permitted;DNS.38 = t37.test -permitted;DNS.39 = t38.test -permitted;DNS.40 = t39.test -permitted;DNS.41 = t40.test -permitted;DNS.42 = t41.test -permitted;DNS.43 = t42.test -permitted;DNS.44 = t43.test -permitted;DNS.45 = t44.test -permitted;DNS.46 = t45.test -permitted;DNS.47 = t46.test -permitted;DNS.48 = t47.test -permitted;DNS.49 = t48.test -permitted;DNS.50 = t49.test -permitted;DNS.51 = t50.test -permitted;DNS.52 = t51.test -permitted;DNS.53 = t52.test -permitted;DNS.54 = t53.test -permitted;DNS.55 = t54.test -permitted;DNS.56 = t55.test -permitted;DNS.57 = t56.test -permitted;DNS.58 = t57.test -permitted;DNS.59 = t58.test -permitted;DNS.60 = t59.test -permitted;DNS.61 = t60.test -permitted;DNS.62 = t61.test -permitted;DNS.63 = t62.test -permitted;DNS.64 = t63.test -permitted;DNS.65 = t64.test -permitted;DNS.66 = t65.test -permitted;DNS.67 = t66.test -permitted;DNS.68 = t67.test -permitted;DNS.69 = t68.test -permitted;DNS.70 = t69.test -permitted;DNS.71 = t70.test -permitted;DNS.72 = t71.test -permitted;DNS.73 = t72.test -permitted;DNS.74 = t73.test -permitted;DNS.75 = t74.test -permitted;DNS.76 = t75.test -permitted;DNS.77 = t76.test -permitted;DNS.78 = t77.test -permitted;DNS.79 = t78.test -permitted;DNS.80 = t79.test -permitted;DNS.81 = t80.test -permitted;DNS.82 = t81.test -permitted;DNS.83 = t82.test -permitted;DNS.84 = t83.test -permitted;DNS.85 = t84.test -permitted;DNS.86 = t85.test -permitted;DNS.87 = t86.test -permitted;DNS.88 = t87.test -permitted;DNS.89 = t88.test -permitted;DNS.90 = t89.test -permitted;DNS.91 = t90.test -permitted;DNS.92 = t91.test -permitted;DNS.93 = t92.test -permitted;DNS.94 = t93.test -permitted;DNS.95 = t94.test -permitted;DNS.96 = t95.test -permitted;DNS.97 = t96.test -permitted;DNS.98 = t97.test -permitted;DNS.99 = t98.test -permitted;DNS.100 = t99.test -permitted;DNS.101 = t100.test -permitted;DNS.102 = t101.test -permitted;DNS.103 = t102.test -permitted;DNS.104 = t103.test -permitted;DNS.105 = t104.test -permitted;DNS.106 = t105.test -permitted;DNS.107 = t106.test -permitted;DNS.108 = t107.test -permitted;DNS.109 = t108.test -permitted;DNS.110 = t109.test -permitted;DNS.111 = t110.test -permitted;DNS.112 = t111.test -permitted;DNS.113 = t112.test -permitted;DNS.114 = t113.test -permitted;DNS.115 = t114.test -permitted;DNS.116 = t115.test -permitted;DNS.117 = t116.test -permitted;DNS.118 = t117.test -permitted;DNS.119 = t118.test -permitted;DNS.120 = t119.test -permitted;DNS.121 = t120.test -permitted;DNS.122 = t121.test -permitted;DNS.123 = t122.test -permitted;DNS.124 = t123.test -permitted;DNS.125 = t124.test -permitted;DNS.126 = t125.test -permitted;DNS.127 = t126.test -permitted;DNS.128 = t127.test -permitted;DNS.129 = t128.test -permitted;DNS.130 = t129.test -permitted;DNS.131 = t130.test -permitted;DNS.132 = t131.test -permitted;DNS.133 = t132.test -permitted;DNS.134 = t133.test -permitted;DNS.135 = t134.test -permitted;DNS.136 = t135.test -permitted;DNS.137 = t136.test -permitted;DNS.138 = t137.test -permitted;DNS.139 = t138.test -permitted;DNS.140 = t139.test -permitted;DNS.141 = t140.test -permitted;DNS.142 = t141.test -permitted;DNS.143 = t142.test -permitted;DNS.144 = t143.test -permitted;DNS.145 = t144.test -permitted;DNS.146 = t145.test -permitted;DNS.147 = t146.test -permitted;DNS.148 = t147.test -permitted;DNS.149 = t148.test -permitted;DNS.150 = t149.test -permitted;DNS.151 = t150.test -permitted;DNS.152 = t151.test -permitted;DNS.153 = t152.test -permitted;DNS.154 = t153.test -permitted;DNS.155 = t154.test -permitted;DNS.156 = t155.test -permitted;DNS.157 = t156.test -permitted;DNS.158 = t157.test -permitted;DNS.159 = t158.test -permitted;DNS.160 = t159.test -permitted;DNS.161 = t160.test -permitted;DNS.162 = t161.test -permitted;DNS.163 = t162.test -permitted;DNS.164 = t163.test -permitted;DNS.165 = t164.test -permitted;DNS.166 = t165.test -permitted;DNS.167 = t166.test -permitted;DNS.168 = t167.test -permitted;DNS.169 = t168.test -permitted;DNS.170 = t169.test -permitted;DNS.171 = t170.test -permitted;DNS.172 = t171.test -permitted;IP.1 = 10.0.0.0/255.255.255.255 -permitted;IP.2 = 10.0.0.1/255.255.255.255 -permitted;IP.3 = 10.0.0.2/255.255.255.255 -permitted;IP.4 = 10.0.0.3/255.255.255.255 -permitted;IP.5 = 10.0.0.4/255.255.255.255 -permitted;IP.6 = 10.0.0.5/255.255.255.255 -permitted;IP.7 = 10.0.0.6/255.255.255.255 -permitted;IP.8 = 10.0.0.7/255.255.255.255 -permitted;IP.9 = 10.0.0.8/255.255.255.255 -permitted;IP.10 = 10.0.0.9/255.255.255.255 -permitted;IP.11 = 10.0.0.10/255.255.255.255 -permitted;IP.12 = 10.0.0.11/255.255.255.255 -permitted;IP.13 = 10.0.0.12/255.255.255.255 -permitted;IP.14 = 10.0.0.13/255.255.255.255 -permitted;IP.15 = 10.0.0.14/255.255.255.255 -permitted;IP.16 = 10.0.0.15/255.255.255.255 -permitted;IP.17 = 10.0.0.16/255.255.255.255 -permitted;IP.18 = 10.0.0.17/255.255.255.255 -permitted;IP.19 = 10.0.0.18/255.255.255.255 -permitted;IP.20 = 10.0.0.19/255.255.255.255 -permitted;IP.21 = 10.0.0.20/255.255.255.255 -permitted;IP.22 = 10.0.0.21/255.255.255.255 -permitted;IP.23 = 10.0.0.22/255.255.255.255 -permitted;IP.24 = 10.0.0.23/255.255.255.255 -permitted;IP.25 = 10.0.0.24/255.255.255.255 -permitted;IP.26 = 10.0.0.25/255.255.255.255 -permitted;IP.27 = 10.0.0.26/255.255.255.255 -permitted;IP.28 = 10.0.0.27/255.255.255.255 -permitted;IP.29 = 10.0.0.28/255.255.255.255 -permitted;IP.30 = 10.0.0.29/255.255.255.255 -permitted;IP.31 = 10.0.0.30/255.255.255.255 -permitted;IP.32 = 10.0.0.31/255.255.255.255 -permitted;IP.33 = 10.0.0.32/255.255.255.255 -permitted;IP.34 = 10.0.0.33/255.255.255.255 -permitted;IP.35 = 10.0.0.34/255.255.255.255 -permitted;IP.36 = 10.0.0.35/255.255.255.255 -permitted;IP.37 = 10.0.0.36/255.255.255.255 -permitted;IP.38 = 10.0.0.37/255.255.255.255 -permitted;IP.39 = 10.0.0.38/255.255.255.255 -permitted;IP.40 = 10.0.0.39/255.255.255.255 -permitted;IP.41 = 10.0.0.40/255.255.255.255 -permitted;IP.42 = 10.0.0.41/255.255.255.255 -permitted;IP.43 = 10.0.0.42/255.255.255.255 -permitted;IP.44 = 10.0.0.43/255.255.255.255 -permitted;IP.45 = 10.0.0.44/255.255.255.255 -permitted;IP.46 = 10.0.0.45/255.255.255.255 -permitted;IP.47 = 10.0.0.46/255.255.255.255 -permitted;IP.48 = 10.0.0.47/255.255.255.255 -permitted;IP.49 = 10.0.0.48/255.255.255.255 -permitted;IP.50 = 10.0.0.49/255.255.255.255 -permitted;IP.51 = 10.0.0.50/255.255.255.255 -permitted;IP.52 = 10.0.0.51/255.255.255.255 -permitted;IP.53 = 10.0.0.52/255.255.255.255 -permitted;IP.54 = 10.0.0.53/255.255.255.255 -permitted;IP.55 = 10.0.0.54/255.255.255.255 -permitted;IP.56 = 10.0.0.55/255.255.255.255 -permitted;IP.57 = 10.0.0.56/255.255.255.255 -permitted;IP.58 = 10.0.0.57/255.255.255.255 -permitted;IP.59 = 10.0.0.58/255.255.255.255 -permitted;IP.60 = 10.0.0.59/255.255.255.255 -permitted;IP.61 = 10.0.0.60/255.255.255.255 -permitted;IP.62 = 10.0.0.61/255.255.255.255 -permitted;IP.63 = 10.0.0.62/255.255.255.255 -permitted;IP.64 = 10.0.0.63/255.255.255.255 -permitted;IP.65 = 10.0.0.64/255.255.255.255 -permitted;IP.66 = 10.0.0.65/255.255.255.255 -permitted;IP.67 = 10.0.0.66/255.255.255.255 -permitted;IP.68 = 10.0.0.67/255.255.255.255 -permitted;IP.69 = 10.0.0.68/255.255.255.255 -permitted;IP.70 = 10.0.0.69/255.255.255.255 -permitted;IP.71 = 10.0.0.70/255.255.255.255 -permitted;IP.72 = 10.0.0.71/255.255.255.255 -permitted;IP.73 = 10.0.0.72/255.255.255.255 -permitted;IP.74 = 10.0.0.73/255.255.255.255 -permitted;IP.75 = 10.0.0.74/255.255.255.255 -permitted;IP.76 = 10.0.0.75/255.255.255.255 -permitted;IP.77 = 10.0.0.76/255.255.255.255 -permitted;IP.78 = 10.0.0.77/255.255.255.255 -permitted;IP.79 = 10.0.0.78/255.255.255.255 -permitted;IP.80 = 10.0.0.79/255.255.255.255 -permitted;IP.81 = 10.0.0.80/255.255.255.255 -permitted;IP.82 = 10.0.0.81/255.255.255.255 -permitted;IP.83 = 10.0.0.82/255.255.255.255 -permitted;IP.84 = 10.0.0.83/255.255.255.255 -permitted;IP.85 = 10.0.0.84/255.255.255.255 -permitted;IP.86 = 10.0.0.85/255.255.255.255 -permitted;IP.87 = 10.0.0.86/255.255.255.255 -permitted;IP.88 = 10.0.0.87/255.255.255.255 -permitted;IP.89 = 10.0.0.88/255.255.255.255 -permitted;IP.90 = 10.0.0.89/255.255.255.255 -permitted;IP.91 = 10.0.0.90/255.255.255.255 -permitted;IP.92 = 10.0.0.91/255.255.255.255 -permitted;IP.93 = 10.0.0.92/255.255.255.255 -permitted;IP.94 = 10.0.0.93/255.255.255.255 -permitted;IP.95 = 10.0.0.94/255.255.255.255 -permitted;IP.96 = 10.0.0.95/255.255.255.255 -permitted;IP.97 = 10.0.0.96/255.255.255.255 -permitted;IP.98 = 10.0.0.97/255.255.255.255 -permitted;IP.99 = 10.0.0.98/255.255.255.255 -permitted;IP.100 = 10.0.0.99/255.255.255.255 -permitted;IP.101 = 10.0.0.100/255.255.255.255 -permitted;IP.102 = 10.0.0.101/255.255.255.255 -permitted;IP.103 = 10.0.0.102/255.255.255.255 -permitted;IP.104 = 10.0.0.103/255.255.255.255 -permitted;IP.105 = 10.0.0.104/255.255.255.255 -permitted;IP.106 = 10.0.0.105/255.255.255.255 -permitted;IP.107 = 10.0.0.106/255.255.255.255 -permitted;IP.108 = 10.0.0.107/255.255.255.255 -permitted;IP.109 = 10.0.0.108/255.255.255.255 -permitted;IP.110 = 10.0.0.109/255.255.255.255 -permitted;IP.111 = 10.0.0.110/255.255.255.255 -permitted;IP.112 = 10.0.0.111/255.255.255.255 -permitted;IP.113 = 10.0.0.112/255.255.255.255 -permitted;IP.114 = 10.0.0.113/255.255.255.255 -permitted;IP.115 = 10.0.0.114/255.255.255.255 -permitted;IP.116 = 10.0.0.115/255.255.255.255 -permitted;IP.117 = 10.0.0.116/255.255.255.255 -permitted;IP.118 = 10.0.0.117/255.255.255.255 -permitted;IP.119 = 10.0.0.118/255.255.255.255 -permitted;IP.120 = 10.0.0.119/255.255.255.255 -permitted;IP.121 = 10.0.0.120/255.255.255.255 -permitted;IP.122 = 10.0.0.121/255.255.255.255 -permitted;IP.123 = 10.0.0.122/255.255.255.255 -permitted;IP.124 = 10.0.0.123/255.255.255.255 -permitted;IP.125 = 10.0.0.124/255.255.255.255 -permitted;IP.126 = 10.0.0.125/255.255.255.255 -permitted;IP.127 = 10.0.0.126/255.255.255.255 -permitted;IP.128 = 10.0.0.127/255.255.255.255 -permitted;IP.129 = 10.0.0.128/255.255.255.255 -permitted;IP.130 = 10.0.0.129/255.255.255.255 -permitted;IP.131 = 10.0.0.130/255.255.255.255 -permitted;IP.132 = 10.0.0.131/255.255.255.255 -permitted;IP.133 = 10.0.0.132/255.255.255.255 -permitted;IP.134 = 10.0.0.133/255.255.255.255 -permitted;IP.135 = 10.0.0.134/255.255.255.255 -permitted;IP.136 = 10.0.0.135/255.255.255.255 -permitted;IP.137 = 10.0.0.136/255.255.255.255 -permitted;IP.138 = 10.0.0.137/255.255.255.255 -permitted;IP.139 = 10.0.0.138/255.255.255.255 -permitted;IP.140 = 10.0.0.139/255.255.255.255 -permitted;IP.141 = 10.0.0.140/255.255.255.255 -permitted;IP.142 = 10.0.0.141/255.255.255.255 -permitted;IP.143 = 10.0.0.142/255.255.255.255 -permitted;IP.144 = 10.0.0.143/255.255.255.255 -permitted;IP.145 = 10.0.0.144/255.255.255.255 -permitted;IP.146 = 10.0.0.145/255.255.255.255 -permitted;IP.147 = 10.0.0.146/255.255.255.255 -permitted;IP.148 = 10.0.0.147/255.255.255.255 -permitted;IP.149 = 10.0.0.148/255.255.255.255 -permitted;IP.150 = 10.0.0.149/255.255.255.255 -permitted;IP.151 = 10.0.0.150/255.255.255.255 -permitted;IP.152 = 10.0.0.151/255.255.255.255 -permitted;IP.153 = 10.0.0.152/255.255.255.255 -permitted;IP.154 = 10.0.0.153/255.255.255.255 -permitted;IP.155 = 10.0.0.154/255.255.255.255 -permitted;IP.156 = 10.0.0.155/255.255.255.255 -permitted;IP.157 = 10.0.0.156/255.255.255.255 -permitted;IP.158 = 10.0.0.157/255.255.255.255 -permitted;IP.159 = 10.0.0.158/255.255.255.255 -permitted;IP.160 = 10.0.0.159/255.255.255.255 -permitted;IP.161 = 10.0.0.160/255.255.255.255 -permitted;IP.162 = 10.0.0.161/255.255.255.255 -permitted;IP.163 = 10.0.0.162/255.255.255.255 -permitted;IP.164 = 10.0.0.163/255.255.255.255 -permitted;IP.165 = 10.0.0.164/255.255.255.255 -permitted;IP.166 = 10.0.0.165/255.255.255.255 -permitted;IP.167 = 10.0.0.166/255.255.255.255 -permitted;IP.168 = 10.0.0.167/255.255.255.255 -permitted;IP.169 = 10.0.0.168/255.255.255.255 -permitted;IP.170 = 10.0.0.169/255.255.255.255 -permitted;IP.171 = 10.0.0.170/255.255.255.255 -permitted;dirName.1 = nameConstraints_dirname_p1 -permitted;dirName.2 = nameConstraints_dirname_p2 -permitted;dirName.3 = nameConstraints_dirname_p3 -permitted;dirName.4 = nameConstraints_dirname_p4 -permitted;dirName.5 = nameConstraints_dirname_p5 -permitted;dirName.6 = nameConstraints_dirname_p6 -permitted;dirName.7 = nameConstraints_dirname_p7 -permitted;dirName.8 = nameConstraints_dirname_p8 -permitted;dirName.9 = nameConstraints_dirname_p9 -permitted;dirName.10 = nameConstraints_dirname_p10 -permitted;dirName.11 = nameConstraints_dirname_p11 -permitted;dirName.12 = nameConstraints_dirname_p12 -permitted;dirName.13 = nameConstraints_dirname_p13 -permitted;dirName.14 = nameConstraints_dirname_p14 -permitted;dirName.15 = nameConstraints_dirname_p15 -permitted;dirName.16 = nameConstraints_dirname_p16 -permitted;dirName.17 = nameConstraints_dirname_p17 -permitted;dirName.18 = nameConstraints_dirname_p18 -permitted;dirName.19 = nameConstraints_dirname_p19 -permitted;dirName.20 = nameConstraints_dirname_p20 -permitted;dirName.21 = nameConstraints_dirname_p21 -permitted;dirName.22 = nameConstraints_dirname_p22 -permitted;dirName.23 = nameConstraints_dirname_p23 -permitted;dirName.24 = nameConstraints_dirname_p24 -permitted;dirName.25 = nameConstraints_dirname_p25 -permitted;dirName.26 = nameConstraints_dirname_p26 -permitted;dirName.27 = nameConstraints_dirname_p27 -permitted;dirName.28 = nameConstraints_dirname_p28 -permitted;dirName.29 = nameConstraints_dirname_p29 -permitted;dirName.30 = nameConstraints_dirname_p30 -permitted;dirName.31 = nameConstraints_dirname_p31 -permitted;dirName.32 = nameConstraints_dirname_p32 -permitted;dirName.33 = nameConstraints_dirname_p33 -permitted;dirName.34 = nameConstraints_dirname_p34 -permitted;dirName.35 = nameConstraints_dirname_p35 -permitted;dirName.36 = nameConstraints_dirname_p36 -permitted;dirName.37 = nameConstraints_dirname_p37 -permitted;dirName.38 = nameConstraints_dirname_p38 -permitted;dirName.39 = nameConstraints_dirname_p39 -permitted;dirName.40 = nameConstraints_dirname_p40 -permitted;dirName.41 = nameConstraints_dirname_p41 -permitted;dirName.42 = nameConstraints_dirname_p42 -permitted;dirName.43 = nameConstraints_dirname_p43 -permitted;dirName.44 = nameConstraints_dirname_p44 -permitted;dirName.45 = nameConstraints_dirname_p45 -permitted;dirName.46 = nameConstraints_dirname_p46 -permitted;dirName.47 = nameConstraints_dirname_p47 -permitted;dirName.48 = nameConstraints_dirname_p48 -permitted;dirName.49 = nameConstraints_dirname_p49 -permitted;dirName.50 = nameConstraints_dirname_p50 -permitted;dirName.51 = nameConstraints_dirname_p51 -permitted;dirName.52 = nameConstraints_dirname_p52 -permitted;dirName.53 = nameConstraints_dirname_p53 -permitted;dirName.54 = nameConstraints_dirname_p54 -permitted;dirName.55 = nameConstraints_dirname_p55 -permitted;dirName.56 = nameConstraints_dirname_p56 -permitted;dirName.57 = nameConstraints_dirname_p57 -permitted;dirName.58 = nameConstraints_dirname_p58 -permitted;dirName.59 = nameConstraints_dirname_p59 -permitted;dirName.60 = nameConstraints_dirname_p60 -permitted;dirName.61 = nameConstraints_dirname_p61 -permitted;dirName.62 = nameConstraints_dirname_p62 -permitted;dirName.63 = nameConstraints_dirname_p63 -permitted;dirName.64 = nameConstraints_dirname_p64 -permitted;dirName.65 = nameConstraints_dirname_p65 -permitted;dirName.66 = nameConstraints_dirname_p66 -permitted;dirName.67 = nameConstraints_dirname_p67 -permitted;dirName.68 = nameConstraints_dirname_p68 -permitted;dirName.69 = nameConstraints_dirname_p69 -permitted;dirName.70 = nameConstraints_dirname_p70 -permitted;dirName.71 = nameConstraints_dirname_p71 -permitted;dirName.72 = nameConstraints_dirname_p72 -permitted;dirName.73 = nameConstraints_dirname_p73 -permitted;dirName.74 = nameConstraints_dirname_p74 -permitted;dirName.75 = nameConstraints_dirname_p75 -permitted;dirName.76 = nameConstraints_dirname_p76 -permitted;dirName.77 = nameConstraints_dirname_p77 -permitted;dirName.78 = nameConstraints_dirname_p78 -permitted;dirName.79 = nameConstraints_dirname_p79 -permitted;dirName.80 = nameConstraints_dirname_p80 -permitted;dirName.81 = nameConstraints_dirname_p81 -permitted;dirName.82 = nameConstraints_dirname_p82 -permitted;dirName.83 = nameConstraints_dirname_p83 -permitted;dirName.84 = nameConstraints_dirname_p84 -permitted;dirName.85 = nameConstraints_dirname_p85 -permitted;dirName.86 = nameConstraints_dirname_p86 -permitted;dirName.87 = nameConstraints_dirname_p87 -permitted;dirName.88 = nameConstraints_dirname_p88 -permitted;dirName.89 = nameConstraints_dirname_p89 -permitted;dirName.90 = nameConstraints_dirname_p90 -permitted;dirName.91 = nameConstraints_dirname_p91 -permitted;dirName.92 = nameConstraints_dirname_p92 -permitted;dirName.93 = nameConstraints_dirname_p93 -permitted;dirName.94 = nameConstraints_dirname_p94 -permitted;dirName.95 = nameConstraints_dirname_p95 -permitted;dirName.96 = nameConstraints_dirname_p96 -permitted;dirName.97 = nameConstraints_dirname_p97 -permitted;dirName.98 = nameConstraints_dirname_p98 -permitted;dirName.99 = nameConstraints_dirname_p99 -permitted;dirName.100 = nameConstraints_dirname_p100 -permitted;dirName.101 = nameConstraints_dirname_p101 -permitted;dirName.102 = nameConstraints_dirname_p102 -permitted;dirName.103 = nameConstraints_dirname_p103 -permitted;dirName.104 = nameConstraints_dirname_p104 -permitted;dirName.105 = nameConstraints_dirname_p105 -permitted;dirName.106 = nameConstraints_dirname_p106 -permitted;dirName.107 = nameConstraints_dirname_p107 -permitted;dirName.108 = nameConstraints_dirname_p108 -permitted;dirName.109 = nameConstraints_dirname_p109 -permitted;dirName.110 = nameConstraints_dirname_p110 -permitted;dirName.111 = nameConstraints_dirname_p111 -permitted;dirName.112 = nameConstraints_dirname_p112 -permitted;dirName.113 = nameConstraints_dirname_p113 -permitted;dirName.114 = nameConstraints_dirname_p114 -permitted;dirName.115 = nameConstraints_dirname_p115 -permitted;dirName.116 = nameConstraints_dirname_p116 -permitted;dirName.117 = nameConstraints_dirname_p117 -permitted;dirName.118 = nameConstraints_dirname_p118 -permitted;dirName.119 = nameConstraints_dirname_p119 -permitted;dirName.120 = nameConstraints_dirname_p120 -permitted;dirName.121 = nameConstraints_dirname_p121 -permitted;dirName.122 = nameConstraints_dirname_p122 -permitted;dirName.123 = nameConstraints_dirname_p123 -permitted;dirName.124 = nameConstraints_dirname_p124 -permitted;dirName.125 = nameConstraints_dirname_p125 -permitted;dirName.126 = nameConstraints_dirname_p126 -permitted;dirName.127 = nameConstraints_dirname_p127 -permitted;dirName.128 = nameConstraints_dirname_p128 -permitted;dirName.129 = nameConstraints_dirname_p129 -permitted;dirName.130 = nameConstraints_dirname_p130 -permitted;dirName.131 = nameConstraints_dirname_p131 -permitted;dirName.132 = nameConstraints_dirname_p132 -permitted;dirName.133 = nameConstraints_dirname_p133 -permitted;dirName.134 = nameConstraints_dirname_p134 -permitted;dirName.135 = nameConstraints_dirname_p135 -permitted;dirName.136 = nameConstraints_dirname_p136 -permitted;dirName.137 = nameConstraints_dirname_p137 -permitted;dirName.138 = nameConstraints_dirname_p138 -permitted;dirName.139 = nameConstraints_dirname_p139 -permitted;dirName.140 = nameConstraints_dirname_p140 -permitted;dirName.141 = nameConstraints_dirname_p141 -permitted;dirName.142 = nameConstraints_dirname_p142 -permitted;dirName.143 = nameConstraints_dirname_p143 -permitted;dirName.144 = nameConstraints_dirname_p144 -permitted;dirName.145 = nameConstraints_dirname_p145 -permitted;dirName.146 = nameConstraints_dirname_p146 -permitted;dirName.147 = nameConstraints_dirname_p147 -permitted;dirName.148 = nameConstraints_dirname_p148 -permitted;dirName.149 = nameConstraints_dirname_p149 -permitted;dirName.150 = nameConstraints_dirname_p150 -permitted;dirName.151 = nameConstraints_dirname_p151 -permitted;dirName.152 = nameConstraints_dirname_p152 -permitted;dirName.153 = nameConstraints_dirname_p153 -permitted;dirName.154 = nameConstraints_dirname_p154 -permitted;dirName.155 = nameConstraints_dirname_p155 -permitted;dirName.156 = nameConstraints_dirname_p156 -permitted;dirName.157 = nameConstraints_dirname_p157 -permitted;dirName.158 = nameConstraints_dirname_p158 -permitted;dirName.159 = nameConstraints_dirname_p159 -permitted;dirName.160 = nameConstraints_dirname_p160 -permitted;dirName.161 = nameConstraints_dirname_p161 -permitted;dirName.162 = nameConstraints_dirname_p162 -permitted;dirName.163 = nameConstraints_dirname_p163 -permitted;dirName.164 = nameConstraints_dirname_p164 -permitted;dirName.165 = nameConstraints_dirname_p165 -permitted;dirName.166 = nameConstraints_dirname_p166 -permitted;dirName.167 = nameConstraints_dirname_p167 -permitted;dirName.168 = nameConstraints_dirname_p168 -permitted;dirName.169 = nameConstraints_dirname_p169 -permitted;dirName.170 = nameConstraints_dirname_p170 -permitted;dirName.171 = nameConstraints_dirname_p171 -permitted;dirName.172 = nameConstraints_dirname_p172 - -[nameConstraints_dirname_x1] -commonName = "x0 - -[nameConstraints_dirname_x2] -commonName = "x1 - -[nameConstraints_dirname_x3] -commonName = "x2 - -[nameConstraints_dirname_x4] -commonName = "x3 - -[nameConstraints_dirname_x5] -commonName = "x4 - -[nameConstraints_dirname_x6] -commonName = "x5 - -[nameConstraints_dirname_x7] -commonName = "x6 - -[nameConstraints_dirname_x8] -commonName = "x7 - -[nameConstraints_dirname_x9] -commonName = "x8 - -[nameConstraints_dirname_x10] -commonName = "x9 - -[nameConstraints_dirname_x11] -commonName = "x10 - -[nameConstraints_dirname_x12] -commonName = "x11 - -[nameConstraints_dirname_x13] -commonName = "x12 - -[nameConstraints_dirname_x14] -commonName = "x13 - -[nameConstraints_dirname_x15] -commonName = "x14 - -[nameConstraints_dirname_x16] -commonName = "x15 - -[nameConstraints_dirname_x17] -commonName = "x16 - -[nameConstraints_dirname_x18] -commonName = "x17 - -[nameConstraints_dirname_x19] -commonName = "x18 - -[nameConstraints_dirname_x20] -commonName = "x19 - -[nameConstraints_dirname_x21] -commonName = "x20 - -[nameConstraints_dirname_x22] -commonName = "x21 - -[nameConstraints_dirname_x23] -commonName = "x22 - -[nameConstraints_dirname_x24] -commonName = "x23 - -[nameConstraints_dirname_x25] -commonName = "x24 - -[nameConstraints_dirname_x26] -commonName = "x25 - -[nameConstraints_dirname_x27] -commonName = "x26 - -[nameConstraints_dirname_x28] -commonName = "x27 - -[nameConstraints_dirname_x29] -commonName = "x28 - -[nameConstraints_dirname_x30] -commonName = "x29 - -[nameConstraints_dirname_x31] -commonName = "x30 - -[nameConstraints_dirname_x32] -commonName = "x31 - -[nameConstraints_dirname_x33] -commonName = "x32 - -[nameConstraints_dirname_x34] -commonName = "x33 - -[nameConstraints_dirname_x35] -commonName = "x34 - -[nameConstraints_dirname_x36] -commonName = "x35 - -[nameConstraints_dirname_x37] -commonName = "x36 - -[nameConstraints_dirname_x38] -commonName = "x37 - -[nameConstraints_dirname_x39] -commonName = "x38 - -[nameConstraints_dirname_x40] -commonName = "x39 - -[nameConstraints_dirname_x41] -commonName = "x40 - -[nameConstraints_dirname_x42] -commonName = "x41 - -[nameConstraints_dirname_x43] -commonName = "x42 - -[nameConstraints_dirname_x44] -commonName = "x43 - -[nameConstraints_dirname_x45] -commonName = "x44 - -[nameConstraints_dirname_x46] -commonName = "x45 - -[nameConstraints_dirname_x47] -commonName = "x46 - -[nameConstraints_dirname_x48] -commonName = "x47 - -[nameConstraints_dirname_x49] -commonName = "x48 - -[nameConstraints_dirname_x50] -commonName = "x49 - -[nameConstraints_dirname_x51] -commonName = "x50 - -[nameConstraints_dirname_x52] -commonName = "x51 - -[nameConstraints_dirname_x53] -commonName = "x52 - -[nameConstraints_dirname_x54] -commonName = "x53 - -[nameConstraints_dirname_x55] -commonName = "x54 - -[nameConstraints_dirname_x56] -commonName = "x55 - -[nameConstraints_dirname_x57] -commonName = "x56 - -[nameConstraints_dirname_x58] -commonName = "x57 - -[nameConstraints_dirname_x59] -commonName = "x58 - -[nameConstraints_dirname_x60] -commonName = "x59 - -[nameConstraints_dirname_x61] -commonName = "x60 - -[nameConstraints_dirname_x62] -commonName = "x61 - -[nameConstraints_dirname_x63] -commonName = "x62 - -[nameConstraints_dirname_x64] -commonName = "x63 - -[nameConstraints_dirname_x65] -commonName = "x64 - -[nameConstraints_dirname_x66] -commonName = "x65 - -[nameConstraints_dirname_x67] -commonName = "x66 - -[nameConstraints_dirname_x68] -commonName = "x67 - -[nameConstraints_dirname_x69] -commonName = "x68 - -[nameConstraints_dirname_x70] -commonName = "x69 - -[nameConstraints_dirname_x71] -commonName = "x70 - -[nameConstraints_dirname_x72] -commonName = "x71 - -[nameConstraints_dirname_x73] -commonName = "x72 - -[nameConstraints_dirname_x74] -commonName = "x73 - -[nameConstraints_dirname_x75] -commonName = "x74 - -[nameConstraints_dirname_x76] -commonName = "x75 - -[nameConstraints_dirname_x77] -commonName = "x76 - -[nameConstraints_dirname_x78] -commonName = "x77 - -[nameConstraints_dirname_x79] -commonName = "x78 - -[nameConstraints_dirname_x80] -commonName = "x79 - -[nameConstraints_dirname_x81] -commonName = "x80 - -[nameConstraints_dirname_x82] -commonName = "x81 - -[nameConstraints_dirname_x83] -commonName = "x82 - -[nameConstraints_dirname_x84] -commonName = "x83 - -[nameConstraints_dirname_x85] -commonName = "x84 - -[nameConstraints_dirname_x86] -commonName = "x85 - -[nameConstraints_dirname_x87] -commonName = "x86 - -[nameConstraints_dirname_x88] -commonName = "x87 - -[nameConstraints_dirname_x89] -commonName = "x88 - -[nameConstraints_dirname_x90] -commonName = "x89 - -[nameConstraints_dirname_x91] -commonName = "x90 - -[nameConstraints_dirname_x92] -commonName = "x91 - -[nameConstraints_dirname_x93] -commonName = "x92 - -[nameConstraints_dirname_x94] -commonName = "x93 - -[nameConstraints_dirname_x95] -commonName = "x94 - -[nameConstraints_dirname_x96] -commonName = "x95 - -[nameConstraints_dirname_x97] -commonName = "x96 - -[nameConstraints_dirname_x98] -commonName = "x97 - -[nameConstraints_dirname_x99] -commonName = "x98 - -[nameConstraints_dirname_x100] -commonName = "x99 - -[nameConstraints_dirname_x101] -commonName = "x100 - -[nameConstraints_dirname_x102] -commonName = "x101 - -[nameConstraints_dirname_x103] -commonName = "x102 - -[nameConstraints_dirname_x104] -commonName = "x103 - -[nameConstraints_dirname_x105] -commonName = "x104 - -[nameConstraints_dirname_x106] -commonName = "x105 - -[nameConstraints_dirname_x107] -commonName = "x106 - -[nameConstraints_dirname_x108] -commonName = "x107 - -[nameConstraints_dirname_x109] -commonName = "x108 - -[nameConstraints_dirname_x110] -commonName = "x109 - -[nameConstraints_dirname_x111] -commonName = "x110 - -[nameConstraints_dirname_x112] -commonName = "x111 - -[nameConstraints_dirname_x113] -commonName = "x112 - -[nameConstraints_dirname_x114] -commonName = "x113 - -[nameConstraints_dirname_x115] -commonName = "x114 - -[nameConstraints_dirname_x116] -commonName = "x115 - -[nameConstraints_dirname_x117] -commonName = "x116 - -[nameConstraints_dirname_x118] -commonName = "x117 - -[nameConstraints_dirname_x119] -commonName = "x118 - -[nameConstraints_dirname_x120] -commonName = "x119 - -[nameConstraints_dirname_x121] -commonName = "x120 - -[nameConstraints_dirname_x122] -commonName = "x121 - -[nameConstraints_dirname_x123] -commonName = "x122 - -[nameConstraints_dirname_x124] -commonName = "x123 - -[nameConstraints_dirname_x125] -commonName = "x124 - -[nameConstraints_dirname_x126] -commonName = "x125 - -[nameConstraints_dirname_x127] -commonName = "x126 - -[nameConstraints_dirname_x128] -commonName = "x127 - -[nameConstraints_dirname_x129] -commonName = "x128 - -[nameConstraints_dirname_x130] -commonName = "x129 - -[nameConstraints_dirname_x131] -commonName = "x130 - -[nameConstraints_dirname_x132] -commonName = "x131 - -[nameConstraints_dirname_x133] -commonName = "x132 - -[nameConstraints_dirname_x134] -commonName = "x133 - -[nameConstraints_dirname_x135] -commonName = "x134 - -[nameConstraints_dirname_x136] -commonName = "x135 - -[nameConstraints_dirname_x137] -commonName = "x136 - -[nameConstraints_dirname_x138] -commonName = "x137 - -[nameConstraints_dirname_x139] -commonName = "x138 - -[nameConstraints_dirname_x140] -commonName = "x139 - -[nameConstraints_dirname_x141] -commonName = "x140 - -[nameConstraints_dirname_x142] -commonName = "x141 - -[nameConstraints_dirname_x143] -commonName = "x142 - -[nameConstraints_dirname_x144] -commonName = "x143 - -[nameConstraints_dirname_x145] -commonName = "x144 - -[nameConstraints_dirname_x146] -commonName = "x145 - -[nameConstraints_dirname_x147] -commonName = "x146 - -[nameConstraints_dirname_x148] -commonName = "x147 - -[nameConstraints_dirname_x149] -commonName = "x148 - -[nameConstraints_dirname_x150] -commonName = "x149 - -[nameConstraints_dirname_x151] -commonName = "x150 - -[nameConstraints_dirname_x152] -commonName = "x151 - -[nameConstraints_dirname_x153] -commonName = "x152 - -[nameConstraints_dirname_x154] -commonName = "x153 - -[nameConstraints_dirname_x155] -commonName = "x154 - -[nameConstraints_dirname_x156] -commonName = "x155 - -[nameConstraints_dirname_x157] -commonName = "x156 - -[nameConstraints_dirname_x158] -commonName = "x157 - -[nameConstraints_dirname_x159] -commonName = "x158 - -[nameConstraints_dirname_x160] -commonName = "x159 - -[nameConstraints_dirname_x161] -commonName = "x160 - -[nameConstraints_dirname_x162] -commonName = "x161 - -[nameConstraints_dirname_x163] -commonName = "x162 - -[nameConstraints_dirname_x164] -commonName = "x163 - -[nameConstraints_dirname_x165] -commonName = "x164 - -[nameConstraints_dirname_x166] -commonName = "x165 - -[nameConstraints_dirname_x167] -commonName = "x166 - -[nameConstraints_dirname_x168] -commonName = "x167 - -[nameConstraints_dirname_x169] -commonName = "x168 - -[nameConstraints_dirname_x170] -commonName = "x169 - -[nameConstraints_dirname_p1] -commonName = "t0 - -[nameConstraints_dirname_p2] -commonName = "t1 - -[nameConstraints_dirname_p3] -commonName = "t2 - -[nameConstraints_dirname_p4] -commonName = "t3 - -[nameConstraints_dirname_p5] -commonName = "t4 - -[nameConstraints_dirname_p6] -commonName = "t5 - -[nameConstraints_dirname_p7] -commonName = "t6 - -[nameConstraints_dirname_p8] -commonName = "t7 - -[nameConstraints_dirname_p9] -commonName = "t8 - -[nameConstraints_dirname_p10] -commonName = "t9 - -[nameConstraints_dirname_p11] -commonName = "t10 - -[nameConstraints_dirname_p12] -commonName = "t11 - -[nameConstraints_dirname_p13] -commonName = "t12 - -[nameConstraints_dirname_p14] -commonName = "t13 - -[nameConstraints_dirname_p15] -commonName = "t14 - -[nameConstraints_dirname_p16] -commonName = "t15 - -[nameConstraints_dirname_p17] -commonName = "t16 - -[nameConstraints_dirname_p18] -commonName = "t17 - -[nameConstraints_dirname_p19] -commonName = "t18 - -[nameConstraints_dirname_p20] -commonName = "t19 - -[nameConstraints_dirname_p21] -commonName = "t20 - -[nameConstraints_dirname_p22] -commonName = "t21 - -[nameConstraints_dirname_p23] -commonName = "t22 - -[nameConstraints_dirname_p24] -commonName = "t23 - -[nameConstraints_dirname_p25] -commonName = "t24 - -[nameConstraints_dirname_p26] -commonName = "t25 - -[nameConstraints_dirname_p27] -commonName = "t26 - -[nameConstraints_dirname_p28] -commonName = "t27 - -[nameConstraints_dirname_p29] -commonName = "t28 - -[nameConstraints_dirname_p30] -commonName = "t29 - -[nameConstraints_dirname_p31] -commonName = "t30 - -[nameConstraints_dirname_p32] -commonName = "t31 - -[nameConstraints_dirname_p33] -commonName = "t32 - -[nameConstraints_dirname_p34] -commonName = "t33 - -[nameConstraints_dirname_p35] -commonName = "t34 - -[nameConstraints_dirname_p36] -commonName = "t35 - -[nameConstraints_dirname_p37] -commonName = "t36 - -[nameConstraints_dirname_p38] -commonName = "t37 - -[nameConstraints_dirname_p39] -commonName = "t38 - -[nameConstraints_dirname_p40] -commonName = "t39 - -[nameConstraints_dirname_p41] -commonName = "t40 - -[nameConstraints_dirname_p42] -commonName = "t41 - -[nameConstraints_dirname_p43] -commonName = "t42 - -[nameConstraints_dirname_p44] -commonName = "t43 - -[nameConstraints_dirname_p45] -commonName = "t44 - -[nameConstraints_dirname_p46] -commonName = "t45 - -[nameConstraints_dirname_p47] -commonName = "t46 - -[nameConstraints_dirname_p48] -commonName = "t47 - -[nameConstraints_dirname_p49] -commonName = "t48 - -[nameConstraints_dirname_p50] -commonName = "t49 - -[nameConstraints_dirname_p51] -commonName = "t50 - -[nameConstraints_dirname_p52] -commonName = "t51 - -[nameConstraints_dirname_p53] -commonName = "t52 - -[nameConstraints_dirname_p54] -commonName = "t53 - -[nameConstraints_dirname_p55] -commonName = "t54 - -[nameConstraints_dirname_p56] -commonName = "t55 - -[nameConstraints_dirname_p57] -commonName = "t56 - -[nameConstraints_dirname_p58] -commonName = "t57 - -[nameConstraints_dirname_p59] -commonName = "t58 - -[nameConstraints_dirname_p60] -commonName = "t59 - -[nameConstraints_dirname_p61] -commonName = "t60 - -[nameConstraints_dirname_p62] -commonName = "t61 - -[nameConstraints_dirname_p63] -commonName = "t62 - -[nameConstraints_dirname_p64] -commonName = "t63 - -[nameConstraints_dirname_p65] -commonName = "t64 - -[nameConstraints_dirname_p66] -commonName = "t65 - -[nameConstraints_dirname_p67] -commonName = "t66 - -[nameConstraints_dirname_p68] -commonName = "t67 - -[nameConstraints_dirname_p69] -commonName = "t68 - -[nameConstraints_dirname_p70] -commonName = "t69 - -[nameConstraints_dirname_p71] -commonName = "t70 - -[nameConstraints_dirname_p72] -commonName = "t71 - -[nameConstraints_dirname_p73] -commonName = "t72 - -[nameConstraints_dirname_p74] -commonName = "t73 - -[nameConstraints_dirname_p75] -commonName = "t74 - -[nameConstraints_dirname_p76] -commonName = "t75 - -[nameConstraints_dirname_p77] -commonName = "t76 - -[nameConstraints_dirname_p78] -commonName = "t77 - -[nameConstraints_dirname_p79] -commonName = "t78 - -[nameConstraints_dirname_p80] -commonName = "t79 - -[nameConstraints_dirname_p81] -commonName = "t80 - -[nameConstraints_dirname_p82] -commonName = "t81 - -[nameConstraints_dirname_p83] -commonName = "t82 - -[nameConstraints_dirname_p84] -commonName = "t83 - -[nameConstraints_dirname_p85] -commonName = "t84 - -[nameConstraints_dirname_p86] -commonName = "t85 - -[nameConstraints_dirname_p87] -commonName = "t86 - -[nameConstraints_dirname_p88] -commonName = "t87 - -[nameConstraints_dirname_p89] -commonName = "t88 - -[nameConstraints_dirname_p90] -commonName = "t89 - -[nameConstraints_dirname_p91] -commonName = "t90 - -[nameConstraints_dirname_p92] -commonName = "t91 - -[nameConstraints_dirname_p93] -commonName = "t92 - -[nameConstraints_dirname_p94] -commonName = "t93 - -[nameConstraints_dirname_p95] -commonName = "t94 - -[nameConstraints_dirname_p96] -commonName = "t95 - -[nameConstraints_dirname_p97] -commonName = "t96 - -[nameConstraints_dirname_p98] -commonName = "t97 - -[nameConstraints_dirname_p99] -commonName = "t98 - -[nameConstraints_dirname_p100] -commonName = "t99 - -[nameConstraints_dirname_p101] -commonName = "t100 - -[nameConstraints_dirname_p102] -commonName = "t101 - -[nameConstraints_dirname_p103] -commonName = "t102 - -[nameConstraints_dirname_p104] -commonName = "t103 - -[nameConstraints_dirname_p105] -commonName = "t104 - -[nameConstraints_dirname_p106] -commonName = "t105 - -[nameConstraints_dirname_p107] -commonName = "t106 - -[nameConstraints_dirname_p108] -commonName = "t107 - -[nameConstraints_dirname_p109] -commonName = "t108 - -[nameConstraints_dirname_p110] -commonName = "t109 - -[nameConstraints_dirname_p111] -commonName = "t110 - -[nameConstraints_dirname_p112] -commonName = "t111 - -[nameConstraints_dirname_p113] -commonName = "t112 - -[nameConstraints_dirname_p114] -commonName = "t113 - -[nameConstraints_dirname_p115] -commonName = "t114 - -[nameConstraints_dirname_p116] -commonName = "t115 - -[nameConstraints_dirname_p117] -commonName = "t116 - -[nameConstraints_dirname_p118] -commonName = "t117 - -[nameConstraints_dirname_p119] -commonName = "t118 - -[nameConstraints_dirname_p120] -commonName = "t119 - -[nameConstraints_dirname_p121] -commonName = "t120 - -[nameConstraints_dirname_p122] -commonName = "t121 - -[nameConstraints_dirname_p123] -commonName = "t122 - -[nameConstraints_dirname_p124] -commonName = "t123 - -[nameConstraints_dirname_p125] -commonName = "t124 - -[nameConstraints_dirname_p126] -commonName = "t125 - -[nameConstraints_dirname_p127] -commonName = "t126 - -[nameConstraints_dirname_p128] -commonName = "t127 - -[nameConstraints_dirname_p129] -commonName = "t128 - -[nameConstraints_dirname_p130] -commonName = "t129 - -[nameConstraints_dirname_p131] -commonName = "t130 - -[nameConstraints_dirname_p132] -commonName = "t131 - -[nameConstraints_dirname_p133] -commonName = "t132 - -[nameConstraints_dirname_p134] -commonName = "t133 - -[nameConstraints_dirname_p135] -commonName = "t134 - -[nameConstraints_dirname_p136] -commonName = "t135 - -[nameConstraints_dirname_p137] -commonName = "t136 - -[nameConstraints_dirname_p138] -commonName = "t137 - -[nameConstraints_dirname_p139] -commonName = "t138 - -[nameConstraints_dirname_p140] -commonName = "t139 - -[nameConstraints_dirname_p141] -commonName = "t140 - -[nameConstraints_dirname_p142] -commonName = "t141 - -[nameConstraints_dirname_p143] -commonName = "t142 - -[nameConstraints_dirname_p144] -commonName = "t143 - -[nameConstraints_dirname_p145] -commonName = "t144 - -[nameConstraints_dirname_p146] -commonName = "t145 - -[nameConstraints_dirname_p147] -commonName = "t146 - -[nameConstraints_dirname_p148] -commonName = "t147 - -[nameConstraints_dirname_p149] -commonName = "t148 - -[nameConstraints_dirname_p150] -commonName = "t149 - -[nameConstraints_dirname_p151] -commonName = "t150 - -[nameConstraints_dirname_p152] -commonName = "t151 - -[nameConstraints_dirname_p153] -commonName = "t152 - -[nameConstraints_dirname_p154] -commonName = "t153 - -[nameConstraints_dirname_p155] -commonName = "t154 - -[nameConstraints_dirname_p156] -commonName = "t155 - -[nameConstraints_dirname_p157] -commonName = "t156 - -[nameConstraints_dirname_p158] -commonName = "t157 - -[nameConstraints_dirname_p159] -commonName = "t158 - -[nameConstraints_dirname_p160] -commonName = "t159 - -[nameConstraints_dirname_p161] -commonName = "t160 - -[nameConstraints_dirname_p162] -commonName = "t161 - -[nameConstraints_dirname_p163] -commonName = "t162 - -[nameConstraints_dirname_p164] -commonName = "t163 - -[nameConstraints_dirname_p165] -commonName = "t164 - -[nameConstraints_dirname_p166] -commonName = "t165 - -[nameConstraints_dirname_p167] -commonName = "t166 - -[nameConstraints_dirname_p168] -commonName = "t167 - -[nameConstraints_dirname_p169] -commonName = "t168 - -[nameConstraints_dirname_p170] -commonName = "t169 - -[nameConstraints_dirname_p171] -commonName = "t170 - -[nameConstraints_dirname_p172] -commonName = "t171 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.csr deleted file mode 100644 index 1c1920cd59..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.csr +++ /dev/null @@ -1,336 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MII+fjCCPWYCAQAwFzEVMBMGA1UEAwwMSW50ZXJtZWRpYXRlMIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzvbBG4X4FRSuiN3JLw043DZmZ5TXTMLqcxL -Ha4GJxiOVbqtEscdMlltwxYg22Kmd4AS4IdYUVXjZn/R4DoiZeVwJqIEBPBd+V9W -yNroD1cod26aoEpTNBpjN6JDqw5KzQcj3VWDRAAMcEHfNWTQxQ5qh9vK/DXV4luv -C6DmdaXS4XJOImMBQXO4lVAs/e3DYbY21IOVYcPgYf/0noroutzR9ontnTBElSf0 -0YvmLxRmVvHa8cwEG3eSpZ9YQAyfDDLWBcJMwMWf5aQwPUzpnQNsTAa25ZW9Ibjm -K6igvwa7QzMZPXsXWfFkTSRnsVEPNa7wcXV5rlsCNAQx42aGZQIDAQABoII8IDCC -PBwGCSqGSIb3DQEJDjGCPA0wgjwJMB0GA1UdDgQWBBSSET+sEZbHZjfPg1ok8Dp3 -rzONfzAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zCCO8UGA1UdHgSC -O7wwgju4oIIeADAJggd0MC50ZXN0MAmCB3QxLnRlc3QwCYIHdDIudGVzdDAJggd0 -My50ZXN0MAmCB3Q0LnRlc3QwCYIHdDUudGVzdDAJggd0Ni50ZXN0MAmCB3Q3LnRl -c3QwCYIHdDgudGVzdDAJggd0OS50ZXN0MAqCCHQxMC50ZXN0MAqCCHQxMS50ZXN0 -MAqCCHQxMi50ZXN0MAqCCHQxMy50ZXN0MAqCCHQxNC50ZXN0MAqCCHQxNS50ZXN0 -MAqCCHQxNi50ZXN0MAqCCHQxNy50ZXN0MAqCCHQxOC50ZXN0MAqCCHQxOS50ZXN0 -MAqCCHQyMC50ZXN0MAqCCHQyMS50ZXN0MAqCCHQyMi50ZXN0MAqCCHQyMy50ZXN0 -MAqCCHQyNC50ZXN0MAqCCHQyNS50ZXN0MAqCCHQyNi50ZXN0MAqCCHQyNy50ZXN0 -MAqCCHQyOC50ZXN0MAqCCHQyOS50ZXN0MAqCCHQzMC50ZXN0MAqCCHQzMS50ZXN0 -MAqCCHQzMi50ZXN0MAqCCHQzMy50ZXN0MAqCCHQzNC50ZXN0MAqCCHQzNS50ZXN0 -MAqCCHQzNi50ZXN0MAqCCHQzNy50ZXN0MAqCCHQzOC50ZXN0MAqCCHQzOS50ZXN0 -MAqCCHQ0MC50ZXN0MAqCCHQ0MS50ZXN0MAqCCHQ0Mi50ZXN0MAqCCHQ0My50ZXN0 -MAqCCHQ0NC50ZXN0MAqCCHQ0NS50ZXN0MAqCCHQ0Ni50ZXN0MAqCCHQ0Ny50ZXN0 -MAqCCHQ0OC50ZXN0MAqCCHQ0OS50ZXN0MAqCCHQ1MC50ZXN0MAqCCHQ1MS50ZXN0 -MAqCCHQ1Mi50ZXN0MAqCCHQ1My50ZXN0MAqCCHQ1NC50ZXN0MAqCCHQ1NS50ZXN0 -MAqCCHQ1Ni50ZXN0MAqCCHQ1Ny50ZXN0MAqCCHQ1OC50ZXN0MAqCCHQ1OS50ZXN0 -MAqCCHQ2MC50ZXN0MAqCCHQ2MS50ZXN0MAqCCHQ2Mi50ZXN0MAqCCHQ2My50ZXN0 -MAqCCHQ2NC50ZXN0MAqCCHQ2NS50ZXN0MAqCCHQ2Ni50ZXN0MAqCCHQ2Ny50ZXN0 -MAqCCHQ2OC50ZXN0MAqCCHQ2OS50ZXN0MAqCCHQ3MC50ZXN0MAqCCHQ3MS50ZXN0 -MAqCCHQ3Mi50ZXN0MAqCCHQ3My50ZXN0MAqCCHQ3NC50ZXN0MAqCCHQ3NS50ZXN0 -MAqCCHQ3Ni50ZXN0MAqCCHQ3Ny50ZXN0MAqCCHQ3OC50ZXN0MAqCCHQ3OS50ZXN0 -MAqCCHQ4MC50ZXN0MAqCCHQ4MS50ZXN0MAqCCHQ4Mi50ZXN0MAqCCHQ4My50ZXN0 -MAqCCHQ4NC50ZXN0MAqCCHQ4NS50ZXN0MAqCCHQ4Ni50ZXN0MAqCCHQ4Ny50ZXN0 -MAqCCHQ4OC50ZXN0MAqCCHQ4OS50ZXN0MAqCCHQ5MC50ZXN0MAqCCHQ5MS50ZXN0 -MAqCCHQ5Mi50ZXN0MAqCCHQ5My50ZXN0MAqCCHQ5NC50ZXN0MAqCCHQ5NS50ZXN0 -MAqCCHQ5Ni50ZXN0MAqCCHQ5Ny50ZXN0MAqCCHQ5OC50ZXN0MAqCCHQ5OS50ZXN0 -MAuCCXQxMDAudGVzdDALggl0MTAxLnRlc3QwC4IJdDEwMi50ZXN0MAuCCXQxMDMu -dGVzdDALggl0MTA0LnRlc3QwC4IJdDEwNS50ZXN0MAuCCXQxMDYudGVzdDALggl0 -MTA3LnRlc3QwC4IJdDEwOC50ZXN0MAuCCXQxMDkudGVzdDALggl0MTEwLnRlc3Qw -C4IJdDExMS50ZXN0MAuCCXQxMTIudGVzdDALggl0MTEzLnRlc3QwC4IJdDExNC50 -ZXN0MAuCCXQxMTUudGVzdDALggl0MTE2LnRlc3QwC4IJdDExNy50ZXN0MAuCCXQx -MTgudGVzdDALggl0MTE5LnRlc3QwC4IJdDEyMC50ZXN0MAuCCXQxMjEudGVzdDAL -ggl0MTIyLnRlc3QwC4IJdDEyMy50ZXN0MAuCCXQxMjQudGVzdDALggl0MTI1LnRl -c3QwC4IJdDEyNi50ZXN0MAuCCXQxMjcudGVzdDALggl0MTI4LnRlc3QwC4IJdDEy -OS50ZXN0MAuCCXQxMzAudGVzdDALggl0MTMxLnRlc3QwC4IJdDEzMi50ZXN0MAuC -CXQxMzMudGVzdDALggl0MTM0LnRlc3QwC4IJdDEzNS50ZXN0MAuCCXQxMzYudGVz -dDALggl0MTM3LnRlc3QwC4IJdDEzOC50ZXN0MAuCCXQxMzkudGVzdDALggl0MTQw -LnRlc3QwC4IJdDE0MS50ZXN0MAuCCXQxNDIudGVzdDALggl0MTQzLnRlc3QwC4IJ -dDE0NC50ZXN0MAuCCXQxNDUudGVzdDALggl0MTQ2LnRlc3QwC4IJdDE0Ny50ZXN0 -MAuCCXQxNDgudGVzdDALggl0MTQ5LnRlc3QwC4IJdDE1MC50ZXN0MAuCCXQxNTEu -dGVzdDALggl0MTUyLnRlc3QwC4IJdDE1My50ZXN0MAuCCXQxNTQudGVzdDALggl0 -MTU1LnRlc3QwC4IJdDE1Ni50ZXN0MAuCCXQxNTcudGVzdDALggl0MTU4LnRlc3Qw -C4IJdDE1OS50ZXN0MAuCCXQxNjAudGVzdDALggl0MTYxLnRlc3QwC4IJdDE2Mi50 -ZXN0MAuCCXQxNjMudGVzdDALggl0MTY0LnRlc3QwC4IJdDE2NS50ZXN0MAuCCXQx -NjYudGVzdDALggl0MTY3LnRlc3QwC4IJdDE2OC50ZXN0MAuCCXQxNjkudGVzdDAL -ggl0MTcwLnRlc3QwC4IJdDE3MS50ZXN0MAqHCAoAAAD/////MAqHCAoAAAH///// -MAqHCAoAAAL/////MAqHCAoAAAP/////MAqHCAoAAAT/////MAqHCAoAAAX///// -MAqHCAoAAAb/////MAqHCAoAAAf/////MAqHCAoAAAj/////MAqHCAoAAAn///// -MAqHCAoAAAr/////MAqHCAoAAAv/////MAqHCAoAAAz/////MAqHCAoAAA3///// -MAqHCAoAAA7/////MAqHCAoAAA//////MAqHCAoAABD/////MAqHCAoAABH///// -MAqHCAoAABL/////MAqHCAoAABP/////MAqHCAoAABT/////MAqHCAoAABX///// -MAqHCAoAABb/////MAqHCAoAABf/////MAqHCAoAABj/////MAqHCAoAABn///// -MAqHCAoAABr/////MAqHCAoAABv/////MAqHCAoAABz/////MAqHCAoAAB3///// -MAqHCAoAAB7/////MAqHCAoAAB//////MAqHCAoAACD/////MAqHCAoAACH///// -MAqHCAoAACL/////MAqHCAoAACP/////MAqHCAoAACT/////MAqHCAoAACX///// -MAqHCAoAACb/////MAqHCAoAACf/////MAqHCAoAACj/////MAqHCAoAACn///// -MAqHCAoAACr/////MAqHCAoAACv/////MAqHCAoAACz/////MAqHCAoAAC3///// -MAqHCAoAAC7/////MAqHCAoAAC//////MAqHCAoAADD/////MAqHCAoAADH///// -MAqHCAoAADL/////MAqHCAoAADP/////MAqHCAoAADT/////MAqHCAoAADX///// -MAqHCAoAADb/////MAqHCAoAADf/////MAqHCAoAADj/////MAqHCAoAADn///// -MAqHCAoAADr/////MAqHCAoAADv/////MAqHCAoAADz/////MAqHCAoAAD3///// -MAqHCAoAAD7/////MAqHCAoAAD//////MAqHCAoAAED/////MAqHCAoAAEH///// -MAqHCAoAAEL/////MAqHCAoAAEP/////MAqHCAoAAET/////MAqHCAoAAEX///// -MAqHCAoAAEb/////MAqHCAoAAEf/////MAqHCAoAAEj/////MAqHCAoAAEn///// -MAqHCAoAAEr/////MAqHCAoAAEv/////MAqHCAoAAEz/////MAqHCAoAAE3///// -MAqHCAoAAE7/////MAqHCAoAAE//////MAqHCAoAAFD/////MAqHCAoAAFH///// -MAqHCAoAAFL/////MAqHCAoAAFP/////MAqHCAoAAFT/////MAqHCAoAAFX///// -MAqHCAoAAFb/////MAqHCAoAAFf/////MAqHCAoAAFj/////MAqHCAoAAFn///// -MAqHCAoAAFr/////MAqHCAoAAFv/////MAqHCAoAAFz/////MAqHCAoAAF3///// -MAqHCAoAAF7/////MAqHCAoAAF//////MAqHCAoAAGD/////MAqHCAoAAGH///// -MAqHCAoAAGL/////MAqHCAoAAGP/////MAqHCAoAAGT/////MAqHCAoAAGX///// -MAqHCAoAAGb/////MAqHCAoAAGf/////MAqHCAoAAGj/////MAqHCAoAAGn///// -MAqHCAoAAGr/////MAqHCAoAAGv/////MAqHCAoAAGz/////MAqHCAoAAG3///// -MAqHCAoAAG7/////MAqHCAoAAG//////MAqHCAoAAHD/////MAqHCAoAAHH///// -MAqHCAoAAHL/////MAqHCAoAAHP/////MAqHCAoAAHT/////MAqHCAoAAHX///// -MAqHCAoAAHb/////MAqHCAoAAHf/////MAqHCAoAAHj/////MAqHCAoAAHn///// -MAqHCAoAAHr/////MAqHCAoAAHv/////MAqHCAoAAHz/////MAqHCAoAAH3///// -MAqHCAoAAH7/////MAqHCAoAAH//////MAqHCAoAAID/////MAqHCAoAAIH///// -MAqHCAoAAIL/////MAqHCAoAAIP/////MAqHCAoAAIT/////MAqHCAoAAIX///// -MAqHCAoAAIb/////MAqHCAoAAIf/////MAqHCAoAAIj/////MAqHCAoAAIn///// -MAqHCAoAAIr/////MAqHCAoAAIv/////MAqHCAoAAIz/////MAqHCAoAAI3///// -MAqHCAoAAI7/////MAqHCAoAAI//////MAqHCAoAAJD/////MAqHCAoAAJH///// -MAqHCAoAAJL/////MAqHCAoAAJP/////MAqHCAoAAJT/////MAqHCAoAAJX///// -MAqHCAoAAJb/////MAqHCAoAAJf/////MAqHCAoAAJj/////MAqHCAoAAJn///// -MAqHCAoAAJr/////MAqHCAoAAJv/////MAqHCAoAAJz/////MAqHCAoAAJ3///// -MAqHCAoAAJ7/////MAqHCAoAAJ//////MAqHCAoAAKD/////MAqHCAoAAKH///// -MAqHCAoAAKL/////MAqHCAoAAKP/////MAqHCAoAAKT/////MAqHCAoAAKX///// -MAqHCAoAAKb/////MAqHCAoAAKf/////MAqHCAoAAKj/////MAqHCAoAAKn///// -MAqHCAoAAKr/////MBGkDzANMQswCQYDVQQDDAJ0MDARpA8wDTELMAkGA1UEAwwC -dDEwEaQPMA0xCzAJBgNVBAMMAnQyMBGkDzANMQswCQYDVQQDDAJ0MzARpA8wDTEL -MAkGA1UEAwwCdDQwEaQPMA0xCzAJBgNVBAMMAnQ1MBGkDzANMQswCQYDVQQDDAJ0 -NjARpA8wDTELMAkGA1UEAwwCdDcwEaQPMA0xCzAJBgNVBAMMAnQ4MBGkDzANMQsw -CQYDVQQDDAJ0OTASpBAwDjEMMAoGA1UEAwwDdDEwMBKkEDAOMQwwCgYDVQQDDAN0 -MTEwEqQQMA4xDDAKBgNVBAMMA3QxMjASpBAwDjEMMAoGA1UEAwwDdDEzMBKkEDAO -MQwwCgYDVQQDDAN0MTQwEqQQMA4xDDAKBgNVBAMMA3QxNTASpBAwDjEMMAoGA1UE -AwwDdDE2MBKkEDAOMQwwCgYDVQQDDAN0MTcwEqQQMA4xDDAKBgNVBAMMA3QxODAS -pBAwDjEMMAoGA1UEAwwDdDE5MBKkEDAOMQwwCgYDVQQDDAN0MjAwEqQQMA4xDDAK -BgNVBAMMA3QyMTASpBAwDjEMMAoGA1UEAwwDdDIyMBKkEDAOMQwwCgYDVQQDDAN0 -MjMwEqQQMA4xDDAKBgNVBAMMA3QyNDASpBAwDjEMMAoGA1UEAwwDdDI1MBKkEDAO -MQwwCgYDVQQDDAN0MjYwEqQQMA4xDDAKBgNVBAMMA3QyNzASpBAwDjEMMAoGA1UE -AwwDdDI4MBKkEDAOMQwwCgYDVQQDDAN0MjkwEqQQMA4xDDAKBgNVBAMMA3QzMDAS -pBAwDjEMMAoGA1UEAwwDdDMxMBKkEDAOMQwwCgYDVQQDDAN0MzIwEqQQMA4xDDAK -BgNVBAMMA3QzMzASpBAwDjEMMAoGA1UEAwwDdDM0MBKkEDAOMQwwCgYDVQQDDAN0 -MzUwEqQQMA4xDDAKBgNVBAMMA3QzNjASpBAwDjEMMAoGA1UEAwwDdDM3MBKkEDAO -MQwwCgYDVQQDDAN0MzgwEqQQMA4xDDAKBgNVBAMMA3QzOTASpBAwDjEMMAoGA1UE -AwwDdDQwMBKkEDAOMQwwCgYDVQQDDAN0NDEwEqQQMA4xDDAKBgNVBAMMA3Q0MjAS -pBAwDjEMMAoGA1UEAwwDdDQzMBKkEDAOMQwwCgYDVQQDDAN0NDQwEqQQMA4xDDAK -BgNVBAMMA3Q0NTASpBAwDjEMMAoGA1UEAwwDdDQ2MBKkEDAOMQwwCgYDVQQDDAN0 -NDcwEqQQMA4xDDAKBgNVBAMMA3Q0ODASpBAwDjEMMAoGA1UEAwwDdDQ5MBKkEDAO -MQwwCgYDVQQDDAN0NTAwEqQQMA4xDDAKBgNVBAMMA3Q1MTASpBAwDjEMMAoGA1UE -AwwDdDUyMBKkEDAOMQwwCgYDVQQDDAN0NTMwEqQQMA4xDDAKBgNVBAMMA3Q1NDAS -pBAwDjEMMAoGA1UEAwwDdDU1MBKkEDAOMQwwCgYDVQQDDAN0NTYwEqQQMA4xDDAK -BgNVBAMMA3Q1NzASpBAwDjEMMAoGA1UEAwwDdDU4MBKkEDAOMQwwCgYDVQQDDAN0 -NTkwEqQQMA4xDDAKBgNVBAMMA3Q2MDASpBAwDjEMMAoGA1UEAwwDdDYxMBKkEDAO -MQwwCgYDVQQDDAN0NjIwEqQQMA4xDDAKBgNVBAMMA3Q2MzASpBAwDjEMMAoGA1UE -AwwDdDY0MBKkEDAOMQwwCgYDVQQDDAN0NjUwEqQQMA4xDDAKBgNVBAMMA3Q2NjAS -pBAwDjEMMAoGA1UEAwwDdDY3MBKkEDAOMQwwCgYDVQQDDAN0NjgwEqQQMA4xDDAK -BgNVBAMMA3Q2OTASpBAwDjEMMAoGA1UEAwwDdDcwMBKkEDAOMQwwCgYDVQQDDAN0 -NzEwEqQQMA4xDDAKBgNVBAMMA3Q3MjASpBAwDjEMMAoGA1UEAwwDdDczMBKkEDAO -MQwwCgYDVQQDDAN0NzQwEqQQMA4xDDAKBgNVBAMMA3Q3NTASpBAwDjEMMAoGA1UE -AwwDdDc2MBKkEDAOMQwwCgYDVQQDDAN0NzcwEqQQMA4xDDAKBgNVBAMMA3Q3ODAS -pBAwDjEMMAoGA1UEAwwDdDc5MBKkEDAOMQwwCgYDVQQDDAN0ODAwEqQQMA4xDDAK -BgNVBAMMA3Q4MTASpBAwDjEMMAoGA1UEAwwDdDgyMBKkEDAOMQwwCgYDVQQDDAN0 -ODMwEqQQMA4xDDAKBgNVBAMMA3Q4NDASpBAwDjEMMAoGA1UEAwwDdDg1MBKkEDAO -MQwwCgYDVQQDDAN0ODYwEqQQMA4xDDAKBgNVBAMMA3Q4NzASpBAwDjEMMAoGA1UE -AwwDdDg4MBKkEDAOMQwwCgYDVQQDDAN0ODkwEqQQMA4xDDAKBgNVBAMMA3Q5MDAS -pBAwDjEMMAoGA1UEAwwDdDkxMBKkEDAOMQwwCgYDVQQDDAN0OTIwEqQQMA4xDDAK -BgNVBAMMA3Q5MzASpBAwDjEMMAoGA1UEAwwDdDk0MBKkEDAOMQwwCgYDVQQDDAN0 -OTUwEqQQMA4xDDAKBgNVBAMMA3Q5NjASpBAwDjEMMAoGA1UEAwwDdDk3MBKkEDAO -MQwwCgYDVQQDDAN0OTgwEqQQMA4xDDAKBgNVBAMMA3Q5OTATpBEwDzENMAsGA1UE -AwwEdDEwMDATpBEwDzENMAsGA1UEAwwEdDEwMTATpBEwDzENMAsGA1UEAwwEdDEw -MjATpBEwDzENMAsGA1UEAwwEdDEwMzATpBEwDzENMAsGA1UEAwwEdDEwNDATpBEw -DzENMAsGA1UEAwwEdDEwNTATpBEwDzENMAsGA1UEAwwEdDEwNjATpBEwDzENMAsG -A1UEAwwEdDEwNzATpBEwDzENMAsGA1UEAwwEdDEwODATpBEwDzENMAsGA1UEAwwE -dDEwOTATpBEwDzENMAsGA1UEAwwEdDExMDATpBEwDzENMAsGA1UEAwwEdDExMTAT -pBEwDzENMAsGA1UEAwwEdDExMjATpBEwDzENMAsGA1UEAwwEdDExMzATpBEwDzEN -MAsGA1UEAwwEdDExNDATpBEwDzENMAsGA1UEAwwEdDExNTATpBEwDzENMAsGA1UE -AwwEdDExNjATpBEwDzENMAsGA1UEAwwEdDExNzATpBEwDzENMAsGA1UEAwwEdDEx -ODATpBEwDzENMAsGA1UEAwwEdDExOTATpBEwDzENMAsGA1UEAwwEdDEyMDATpBEw -DzENMAsGA1UEAwwEdDEyMTATpBEwDzENMAsGA1UEAwwEdDEyMjATpBEwDzENMAsG -A1UEAwwEdDEyMzATpBEwDzENMAsGA1UEAwwEdDEyNDATpBEwDzENMAsGA1UEAwwE -dDEyNTATpBEwDzENMAsGA1UEAwwEdDEyNjATpBEwDzENMAsGA1UEAwwEdDEyNzAT -pBEwDzENMAsGA1UEAwwEdDEyODATpBEwDzENMAsGA1UEAwwEdDEyOTATpBEwDzEN -MAsGA1UEAwwEdDEzMDATpBEwDzENMAsGA1UEAwwEdDEzMTATpBEwDzENMAsGA1UE -AwwEdDEzMjATpBEwDzENMAsGA1UEAwwEdDEzMzATpBEwDzENMAsGA1UEAwwEdDEz -NDATpBEwDzENMAsGA1UEAwwEdDEzNTATpBEwDzENMAsGA1UEAwwEdDEzNjATpBEw -DzENMAsGA1UEAwwEdDEzNzATpBEwDzENMAsGA1UEAwwEdDEzODATpBEwDzENMAsG -A1UEAwwEdDEzOTATpBEwDzENMAsGA1UEAwwEdDE0MDATpBEwDzENMAsGA1UEAwwE -dDE0MTATpBEwDzENMAsGA1UEAwwEdDE0MjATpBEwDzENMAsGA1UEAwwEdDE0MzAT -pBEwDzENMAsGA1UEAwwEdDE0NDATpBEwDzENMAsGA1UEAwwEdDE0NTATpBEwDzEN -MAsGA1UEAwwEdDE0NjATpBEwDzENMAsGA1UEAwwEdDE0NzATpBEwDzENMAsGA1UE -AwwEdDE0ODATpBEwDzENMAsGA1UEAwwEdDE0OTATpBEwDzENMAsGA1UEAwwEdDE1 -MDATpBEwDzENMAsGA1UEAwwEdDE1MTATpBEwDzENMAsGA1UEAwwEdDE1MjATpBEw -DzENMAsGA1UEAwwEdDE1MzATpBEwDzENMAsGA1UEAwwEdDE1NDATpBEwDzENMAsG -A1UEAwwEdDE1NTATpBEwDzENMAsGA1UEAwwEdDE1NjATpBEwDzENMAsGA1UEAwwE -dDE1NzATpBEwDzENMAsGA1UEAwwEdDE1ODATpBEwDzENMAsGA1UEAwwEdDE1OTAT -pBEwDzENMAsGA1UEAwwEdDE2MDATpBEwDzENMAsGA1UEAwwEdDE2MTATpBEwDzEN -MAsGA1UEAwwEdDE2MjATpBEwDzENMAsGA1UEAwwEdDE2MzATpBEwDzENMAsGA1UE -AwwEdDE2NDATpBEwDzENMAsGA1UEAwwEdDE2NTATpBEwDzENMAsGA1UEAwwEdDE2 -NjATpBEwDzENMAsGA1UEAwwEdDE2NzATpBEwDzENMAsGA1UEAwwEdDE2ODATpBEw -DzENMAsGA1UEAwwEdDE2OTATpBEwDzENMAsGA1UEAwwEdDE3MDATpBEwDzENMAsG -A1UEAwwEdDE3MaGCHbAwCYIHeDAudGVzdDAJggd4MS50ZXN0MAmCB3gyLnRlc3Qw -CYIHeDMudGVzdDAJggd4NC50ZXN0MAmCB3g1LnRlc3QwCYIHeDYudGVzdDAJggd4 -Ny50ZXN0MAmCB3g4LnRlc3QwCYIHeDkudGVzdDAKggh4MTAudGVzdDAKggh4MTEu -dGVzdDAKggh4MTIudGVzdDAKggh4MTMudGVzdDAKggh4MTQudGVzdDAKggh4MTUu -dGVzdDAKggh4MTYudGVzdDAKggh4MTcudGVzdDAKggh4MTgudGVzdDAKggh4MTku -dGVzdDAKggh4MjAudGVzdDAKggh4MjEudGVzdDAKggh4MjIudGVzdDAKggh4MjMu -dGVzdDAKggh4MjQudGVzdDAKggh4MjUudGVzdDAKggh4MjYudGVzdDAKggh4Mjcu -dGVzdDAKggh4MjgudGVzdDAKggh4MjkudGVzdDAKggh4MzAudGVzdDAKggh4MzEu -dGVzdDAKggh4MzIudGVzdDAKggh4MzMudGVzdDAKggh4MzQudGVzdDAKggh4MzUu -dGVzdDAKggh4MzYudGVzdDAKggh4MzcudGVzdDAKggh4MzgudGVzdDAKggh4Mzku -dGVzdDAKggh4NDAudGVzdDAKggh4NDEudGVzdDAKggh4NDIudGVzdDAKggh4NDMu -dGVzdDAKggh4NDQudGVzdDAKggh4NDUudGVzdDAKggh4NDYudGVzdDAKggh4NDcu -dGVzdDAKggh4NDgudGVzdDAKggh4NDkudGVzdDAKggh4NTAudGVzdDAKggh4NTEu -dGVzdDAKggh4NTIudGVzdDAKggh4NTMudGVzdDAKggh4NTQudGVzdDAKggh4NTUu -dGVzdDAKggh4NTYudGVzdDAKggh4NTcudGVzdDAKggh4NTgudGVzdDAKggh4NTku -dGVzdDAKggh4NjAudGVzdDAKggh4NjEudGVzdDAKggh4NjIudGVzdDAKggh4NjMu -dGVzdDAKggh4NjQudGVzdDAKggh4NjUudGVzdDAKggh4NjYudGVzdDAKggh4Njcu -dGVzdDAKggh4NjgudGVzdDAKggh4NjkudGVzdDAKggh4NzAudGVzdDAKggh4NzEu -dGVzdDAKggh4NzIudGVzdDAKggh4NzMudGVzdDAKggh4NzQudGVzdDAKggh4NzUu -dGVzdDAKggh4NzYudGVzdDAKggh4NzcudGVzdDAKggh4NzgudGVzdDAKggh4Nzku -dGVzdDAKggh4ODAudGVzdDAKggh4ODEudGVzdDAKggh4ODIudGVzdDAKggh4ODMu -dGVzdDAKggh4ODQudGVzdDAKggh4ODUudGVzdDAKggh4ODYudGVzdDAKggh4ODcu -dGVzdDAKggh4ODgudGVzdDAKggh4ODkudGVzdDAKggh4OTAudGVzdDAKggh4OTEu -dGVzdDAKggh4OTIudGVzdDAKggh4OTMudGVzdDAKggh4OTQudGVzdDAKggh4OTUu -dGVzdDAKggh4OTYudGVzdDAKggh4OTcudGVzdDAKggh4OTgudGVzdDAKggh4OTku -dGVzdDALggl4MTAwLnRlc3QwC4IJeDEwMS50ZXN0MAuCCXgxMDIudGVzdDALggl4 -MTAzLnRlc3QwC4IJeDEwNC50ZXN0MAuCCXgxMDUudGVzdDALggl4MTA2LnRlc3Qw -C4IJeDEwNy50ZXN0MAuCCXgxMDgudGVzdDALggl4MTA5LnRlc3QwC4IJeDExMC50 -ZXN0MAuCCXgxMTEudGVzdDALggl4MTEyLnRlc3QwC4IJeDExMy50ZXN0MAuCCXgx -MTQudGVzdDALggl4MTE1LnRlc3QwC4IJeDExNi50ZXN0MAuCCXgxMTcudGVzdDAL -ggl4MTE4LnRlc3QwC4IJeDExOS50ZXN0MAuCCXgxMjAudGVzdDALggl4MTIxLnRl -c3QwC4IJeDEyMi50ZXN0MAuCCXgxMjMudGVzdDALggl4MTI0LnRlc3QwC4IJeDEy -NS50ZXN0MAuCCXgxMjYudGVzdDALggl4MTI3LnRlc3QwC4IJeDEyOC50ZXN0MAuC -CXgxMjkudGVzdDALggl4MTMwLnRlc3QwC4IJeDEzMS50ZXN0MAuCCXgxMzIudGVz -dDALggl4MTMzLnRlc3QwC4IJeDEzNC50ZXN0MAuCCXgxMzUudGVzdDALggl4MTM2 -LnRlc3QwC4IJeDEzNy50ZXN0MAuCCXgxMzgudGVzdDALggl4MTM5LnRlc3QwC4IJ -eDE0MC50ZXN0MAuCCXgxNDEudGVzdDALggl4MTQyLnRlc3QwC4IJeDE0My50ZXN0 -MAuCCXgxNDQudGVzdDALggl4MTQ1LnRlc3QwC4IJeDE0Ni50ZXN0MAuCCXgxNDcu -dGVzdDALggl4MTQ4LnRlc3QwC4IJeDE0OS50ZXN0MAuCCXgxNTAudGVzdDALggl4 -MTUxLnRlc3QwC4IJeDE1Mi50ZXN0MAuCCXgxNTMudGVzdDALggl4MTU0LnRlc3Qw -C4IJeDE1NS50ZXN0MAuCCXgxNTYudGVzdDALggl4MTU3LnRlc3QwC4IJeDE1OC50 -ZXN0MAuCCXgxNTkudGVzdDALggl4MTYwLnRlc3QwC4IJeDE2MS50ZXN0MAuCCXgx -NjIudGVzdDALggl4MTYzLnRlc3QwC4IJeDE2NC50ZXN0MAuCCXgxNjUudGVzdDAL -ggl4MTY2LnRlc3QwC4IJeDE2Ny50ZXN0MAuCCXgxNjgudGVzdDALggl4MTY5LnRl -c3QwCocICwAAAP////8wCocICwAAAf////8wCocICwAAAv////8wCocICwAAA/// -//8wCocICwAABP////8wCocICwAABf////8wCocICwAABv////8wCocICwAAB/// -//8wCocICwAACP////8wCocICwAACf////8wCocICwAACv////8wCocICwAAC/// -//8wCocICwAADP////8wCocICwAADf////8wCocICwAADv////8wCocICwAAD/// -//8wCocICwAAEP////8wCocICwAAEf////8wCocICwAAEv////8wCocICwAAE/// -//8wCocICwAAFP////8wCocICwAAFf////8wCocICwAAFv////8wCocICwAAF/// -//8wCocICwAAGP////8wCocICwAAGf////8wCocICwAAGv////8wCocICwAAG/// -//8wCocICwAAHP////8wCocICwAAHf////8wCocICwAAHv////8wCocICwAAH/// -//8wCocICwAAIP////8wCocICwAAIf////8wCocICwAAIv////8wCocICwAAI/// -//8wCocICwAAJP////8wCocICwAAJf////8wCocICwAAJv////8wCocICwAAJ/// -//8wCocICwAAKP////8wCocICwAAKf////8wCocICwAAKv////8wCocICwAAK/// -//8wCocICwAALP////8wCocICwAALf////8wCocICwAALv////8wCocICwAAL/// -//8wCocICwAAMP////8wCocICwAAMf////8wCocICwAAMv////8wCocICwAAM/// -//8wCocICwAANP////8wCocICwAANf////8wCocICwAANv////8wCocICwAAN/// -//8wCocICwAAOP////8wCocICwAAOf////8wCocICwAAOv////8wCocICwAAO/// -//8wCocICwAAPP////8wCocICwAAPf////8wCocICwAAPv////8wCocICwAAP/// -//8wCocICwAAQP////8wCocICwAAQf////8wCocICwAAQv////8wCocICwAAQ/// -//8wCocICwAARP////8wCocICwAARf////8wCocICwAARv////8wCocICwAAR/// -//8wCocICwAASP////8wCocICwAASf////8wCocICwAASv////8wCocICwAAS/// -//8wCocICwAATP////8wCocICwAATf////8wCocICwAATv////8wCocICwAAT/// -//8wCocICwAAUP////8wCocICwAAUf////8wCocICwAAUv////8wCocICwAAU/// -//8wCocICwAAVP////8wCocICwAAVf////8wCocICwAAVv////8wCocICwAAV/// -//8wCocICwAAWP////8wCocICwAAWf////8wCocICwAAWv////8wCocICwAAW/// -//8wCocICwAAXP////8wCocICwAAXf////8wCocICwAAXv////8wCocICwAAX/// -//8wCocICwAAYP////8wCocICwAAYf////8wCocICwAAYv////8wCocICwAAY/// -//8wCocICwAAZP////8wCocICwAAZf////8wCocICwAAZv////8wCocICwAAZ/// -//8wCocICwAAaP////8wCocICwAAaf////8wCocICwAAav////8wCocICwAAa/// -//8wCocICwAAbP////8wCocICwAAbf////8wCocICwAAbv////8wCocICwAAb/// -//8wCocICwAAcP////8wCocICwAAcf////8wCocICwAAcv////8wCocICwAAc/// -//8wCocICwAAdP////8wCocICwAAdf////8wCocICwAAdv////8wCocICwAAd/// -//8wCocICwAAeP////8wCocICwAAef////8wCocICwAAev////8wCocICwAAe/// -//8wCocICwAAfP////8wCocICwAAff////8wCocICwAAfv////8wCocICwAAf/// -//8wCocICwAAgP////8wCocICwAAgf////8wCocICwAAgv////8wCocICwAAg/// -//8wCocICwAAhP////8wCocICwAAhf////8wCocICwAAhv////8wCocICwAAh/// -//8wCocICwAAiP////8wCocICwAAif////8wCocICwAAiv////8wCocICwAAi/// -//8wCocICwAAjP////8wCocICwAAjf////8wCocICwAAjv////8wCocICwAAj/// -//8wCocICwAAkP////8wCocICwAAkf////8wCocICwAAkv////8wCocICwAAk/// -//8wCocICwAAlP////8wCocICwAAlf////8wCocICwAAlv////8wCocICwAAl/// -//8wCocICwAAmP////8wCocICwAAmf////8wCocICwAAmv////8wCocICwAAm/// -//8wCocICwAAnP////8wCocICwAAnf////8wCocICwAAnv////8wCocICwAAn/// -//8wCocICwAAoP////8wCocICwAAof////8wCocICwAAov////8wCocICwAAo/// -//8wCocICwAApP////8wCocICwAApf////8wCocICwAApv////8wCocICwAAp/// -//8wCocICwAAqP////8wCocICwAAqf////8wEaQPMA0xCzAJBgNVBAMMAngwMBGk -DzANMQswCQYDVQQDDAJ4MTARpA8wDTELMAkGA1UEAwwCeDIwEaQPMA0xCzAJBgNV -BAMMAngzMBGkDzANMQswCQYDVQQDDAJ4NDARpA8wDTELMAkGA1UEAwwCeDUwEaQP -MA0xCzAJBgNVBAMMAng2MBGkDzANMQswCQYDVQQDDAJ4NzARpA8wDTELMAkGA1UE -AwwCeDgwEaQPMA0xCzAJBgNVBAMMAng5MBKkEDAOMQwwCgYDVQQDDAN4MTAwEqQQ -MA4xDDAKBgNVBAMMA3gxMTASpBAwDjEMMAoGA1UEAwwDeDEyMBKkEDAOMQwwCgYD -VQQDDAN4MTMwEqQQMA4xDDAKBgNVBAMMA3gxNDASpBAwDjEMMAoGA1UEAwwDeDE1 -MBKkEDAOMQwwCgYDVQQDDAN4MTYwEqQQMA4xDDAKBgNVBAMMA3gxNzASpBAwDjEM -MAoGA1UEAwwDeDE4MBKkEDAOMQwwCgYDVQQDDAN4MTkwEqQQMA4xDDAKBgNVBAMM -A3gyMDASpBAwDjEMMAoGA1UEAwwDeDIxMBKkEDAOMQwwCgYDVQQDDAN4MjIwEqQQ -MA4xDDAKBgNVBAMMA3gyMzASpBAwDjEMMAoGA1UEAwwDeDI0MBKkEDAOMQwwCgYD -VQQDDAN4MjUwEqQQMA4xDDAKBgNVBAMMA3gyNjASpBAwDjEMMAoGA1UEAwwDeDI3 -MBKkEDAOMQwwCgYDVQQDDAN4MjgwEqQQMA4xDDAKBgNVBAMMA3gyOTASpBAwDjEM -MAoGA1UEAwwDeDMwMBKkEDAOMQwwCgYDVQQDDAN4MzEwEqQQMA4xDDAKBgNVBAMM -A3gzMjASpBAwDjEMMAoGA1UEAwwDeDMzMBKkEDAOMQwwCgYDVQQDDAN4MzQwEqQQ -MA4xDDAKBgNVBAMMA3gzNTASpBAwDjEMMAoGA1UEAwwDeDM2MBKkEDAOMQwwCgYD -VQQDDAN4MzcwEqQQMA4xDDAKBgNVBAMMA3gzODASpBAwDjEMMAoGA1UEAwwDeDM5 -MBKkEDAOMQwwCgYDVQQDDAN4NDAwEqQQMA4xDDAKBgNVBAMMA3g0MTASpBAwDjEM -MAoGA1UEAwwDeDQyMBKkEDAOMQwwCgYDVQQDDAN4NDMwEqQQMA4xDDAKBgNVBAMM -A3g0NDASpBAwDjEMMAoGA1UEAwwDeDQ1MBKkEDAOMQwwCgYDVQQDDAN4NDYwEqQQ -MA4xDDAKBgNVBAMMA3g0NzASpBAwDjEMMAoGA1UEAwwDeDQ4MBKkEDAOMQwwCgYD -VQQDDAN4NDkwEqQQMA4xDDAKBgNVBAMMA3g1MDASpBAwDjEMMAoGA1UEAwwDeDUx -MBKkEDAOMQwwCgYDVQQDDAN4NTIwEqQQMA4xDDAKBgNVBAMMA3g1MzASpBAwDjEM -MAoGA1UEAwwDeDU0MBKkEDAOMQwwCgYDVQQDDAN4NTUwEqQQMA4xDDAKBgNVBAMM -A3g1NjASpBAwDjEMMAoGA1UEAwwDeDU3MBKkEDAOMQwwCgYDVQQDDAN4NTgwEqQQ -MA4xDDAKBgNVBAMMA3g1OTASpBAwDjEMMAoGA1UEAwwDeDYwMBKkEDAOMQwwCgYD -VQQDDAN4NjEwEqQQMA4xDDAKBgNVBAMMA3g2MjASpBAwDjEMMAoGA1UEAwwDeDYz -MBKkEDAOMQwwCgYDVQQDDAN4NjQwEqQQMA4xDDAKBgNVBAMMA3g2NTASpBAwDjEM -MAoGA1UEAwwDeDY2MBKkEDAOMQwwCgYDVQQDDAN4NjcwEqQQMA4xDDAKBgNVBAMM -A3g2ODASpBAwDjEMMAoGA1UEAwwDeDY5MBKkEDAOMQwwCgYDVQQDDAN4NzAwEqQQ -MA4xDDAKBgNVBAMMA3g3MTASpBAwDjEMMAoGA1UEAwwDeDcyMBKkEDAOMQwwCgYD -VQQDDAN4NzMwEqQQMA4xDDAKBgNVBAMMA3g3NDASpBAwDjEMMAoGA1UEAwwDeDc1 -MBKkEDAOMQwwCgYDVQQDDAN4NzYwEqQQMA4xDDAKBgNVBAMMA3g3NzASpBAwDjEM -MAoGA1UEAwwDeDc4MBKkEDAOMQwwCgYDVQQDDAN4NzkwEqQQMA4xDDAKBgNVBAMM -A3g4MDASpBAwDjEMMAoGA1UEAwwDeDgxMBKkEDAOMQwwCgYDVQQDDAN4ODIwEqQQ -MA4xDDAKBgNVBAMMA3g4MzASpBAwDjEMMAoGA1UEAwwDeDg0MBKkEDAOMQwwCgYD -VQQDDAN4ODUwEqQQMA4xDDAKBgNVBAMMA3g4NjASpBAwDjEMMAoGA1UEAwwDeDg3 -MBKkEDAOMQwwCgYDVQQDDAN4ODgwEqQQMA4xDDAKBgNVBAMMA3g4OTASpBAwDjEM -MAoGA1UEAwwDeDkwMBKkEDAOMQwwCgYDVQQDDAN4OTEwEqQQMA4xDDAKBgNVBAMM -A3g5MjASpBAwDjEMMAoGA1UEAwwDeDkzMBKkEDAOMQwwCgYDVQQDDAN4OTQwEqQQ -MA4xDDAKBgNVBAMMA3g5NTASpBAwDjEMMAoGA1UEAwwDeDk2MBKkEDAOMQwwCgYD -VQQDDAN4OTcwEqQQMA4xDDAKBgNVBAMMA3g5ODASpBAwDjEMMAoGA1UEAwwDeDk5 -MBOkETAPMQ0wCwYDVQQDDAR4MTAwMBOkETAPMQ0wCwYDVQQDDAR4MTAxMBOkETAP -MQ0wCwYDVQQDDAR4MTAyMBOkETAPMQ0wCwYDVQQDDAR4MTAzMBOkETAPMQ0wCwYD -VQQDDAR4MTA0MBOkETAPMQ0wCwYDVQQDDAR4MTA1MBOkETAPMQ0wCwYDVQQDDAR4 -MTA2MBOkETAPMQ0wCwYDVQQDDAR4MTA3MBOkETAPMQ0wCwYDVQQDDAR4MTA4MBOk -ETAPMQ0wCwYDVQQDDAR4MTA5MBOkETAPMQ0wCwYDVQQDDAR4MTEwMBOkETAPMQ0w -CwYDVQQDDAR4MTExMBOkETAPMQ0wCwYDVQQDDAR4MTEyMBOkETAPMQ0wCwYDVQQD -DAR4MTEzMBOkETAPMQ0wCwYDVQQDDAR4MTE0MBOkETAPMQ0wCwYDVQQDDAR4MTE1 -MBOkETAPMQ0wCwYDVQQDDAR4MTE2MBOkETAPMQ0wCwYDVQQDDAR4MTE3MBOkETAP -MQ0wCwYDVQQDDAR4MTE4MBOkETAPMQ0wCwYDVQQDDAR4MTE5MBOkETAPMQ0wCwYD -VQQDDAR4MTIwMBOkETAPMQ0wCwYDVQQDDAR4MTIxMBOkETAPMQ0wCwYDVQQDDAR4 -MTIyMBOkETAPMQ0wCwYDVQQDDAR4MTIzMBOkETAPMQ0wCwYDVQQDDAR4MTI0MBOk -ETAPMQ0wCwYDVQQDDAR4MTI1MBOkETAPMQ0wCwYDVQQDDAR4MTI2MBOkETAPMQ0w -CwYDVQQDDAR4MTI3MBOkETAPMQ0wCwYDVQQDDAR4MTI4MBOkETAPMQ0wCwYDVQQD -DAR4MTI5MBOkETAPMQ0wCwYDVQQDDAR4MTMwMBOkETAPMQ0wCwYDVQQDDAR4MTMx -MBOkETAPMQ0wCwYDVQQDDAR4MTMyMBOkETAPMQ0wCwYDVQQDDAR4MTMzMBOkETAP -MQ0wCwYDVQQDDAR4MTM0MBOkETAPMQ0wCwYDVQQDDAR4MTM1MBOkETAPMQ0wCwYD -VQQDDAR4MTM2MBOkETAPMQ0wCwYDVQQDDAR4MTM3MBOkETAPMQ0wCwYDVQQDDAR4 -MTM4MBOkETAPMQ0wCwYDVQQDDAR4MTM5MBOkETAPMQ0wCwYDVQQDDAR4MTQwMBOk -ETAPMQ0wCwYDVQQDDAR4MTQxMBOkETAPMQ0wCwYDVQQDDAR4MTQyMBOkETAPMQ0w -CwYDVQQDDAR4MTQzMBOkETAPMQ0wCwYDVQQDDAR4MTQ0MBOkETAPMQ0wCwYDVQQD -DAR4MTQ1MBOkETAPMQ0wCwYDVQQDDAR4MTQ2MBOkETAPMQ0wCwYDVQQDDAR4MTQ3 -MBOkETAPMQ0wCwYDVQQDDAR4MTQ4MBOkETAPMQ0wCwYDVQQDDAR4MTQ5MBOkETAP -MQ0wCwYDVQQDDAR4MTUwMBOkETAPMQ0wCwYDVQQDDAR4MTUxMBOkETAPMQ0wCwYD -VQQDDAR4MTUyMBOkETAPMQ0wCwYDVQQDDAR4MTUzMBOkETAPMQ0wCwYDVQQDDAR4 -MTU0MBOkETAPMQ0wCwYDVQQDDAR4MTU1MBOkETAPMQ0wCwYDVQQDDAR4MTU2MBOk -ETAPMQ0wCwYDVQQDDAR4MTU3MBOkETAPMQ0wCwYDVQQDDAR4MTU4MBOkETAPMQ0w -CwYDVQQDDAR4MTU5MBOkETAPMQ0wCwYDVQQDDAR4MTYwMBOkETAPMQ0wCwYDVQQD -DAR4MTYxMBOkETAPMQ0wCwYDVQQDDAR4MTYyMBOkETAPMQ0wCwYDVQQDDAR4MTYz -MBOkETAPMQ0wCwYDVQQDDAR4MTY0MBOkETAPMQ0wCwYDVQQDDAR4MTY1MBOkETAP -MQ0wCwYDVQQDDAR4MTY2MBOkETAPMQ0wCwYDVQQDDAR4MTY3MBOkETAPMQ0wCwYD -VQQDDAR4MTY4MBOkETAPMQ0wCwYDVQQDDAR4MTY5MA0GCSqGSIb3DQEBCwUAA4IB -AQBQjCMVe8AEhyZfMmjpBZp3FfAxnnrG0igkCP19uZ2ujVZpRl3jh5RW4amag2F/ -sD7LkmotsibvlOoUykRycob0tlOa5rWa4AyhGD2aPByPwUa0X73x4Qk54M5Asbn9 -J+KYu8yB9Y/b++F5gpsu8YSDSOkN5IwnNe5NtqqOBdbY4rF94lgboLWLTQuteirA -YTRif5Fa+bbR+zfkp1m/EQC2Ie+wN3tHdPEQ9958S1eQ9OiVjSlhgsZJQdMemt3n -Otbumi5w2mtHugXKAnFcSZHOvNqqLspLfE3pws8YGbDHmqI7txo4qNyKMUgsneBo -7FiX5kwrhiQgzfLh/7KgwYvg ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.pem deleted file mode 100644 index 5f017298c5..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_1.pem +++ /dev/null @@ -1,1437 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:f7 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Permitted: - DNS:t0.test - DNS:t1.test - DNS:t2.test - DNS:t3.test - DNS:t4.test - DNS:t5.test - DNS:t6.test - DNS:t7.test - DNS:t8.test - DNS:t9.test - DNS:t10.test - DNS:t11.test - DNS:t12.test - DNS:t13.test - DNS:t14.test - DNS:t15.test - DNS:t16.test - DNS:t17.test - DNS:t18.test - DNS:t19.test - DNS:t20.test - DNS:t21.test - DNS:t22.test - DNS:t23.test - DNS:t24.test - DNS:t25.test - DNS:t26.test - DNS:t27.test - DNS:t28.test - DNS:t29.test - DNS:t30.test - DNS:t31.test - DNS:t32.test - DNS:t33.test - DNS:t34.test - DNS:t35.test - DNS:t36.test - DNS:t37.test - DNS:t38.test - DNS:t39.test - DNS:t40.test - DNS:t41.test - DNS:t42.test - DNS:t43.test - DNS:t44.test - DNS:t45.test - DNS:t46.test - DNS:t47.test - DNS:t48.test - DNS:t49.test - DNS:t50.test - DNS:t51.test - DNS:t52.test - DNS:t53.test - DNS:t54.test - DNS:t55.test - DNS:t56.test - DNS:t57.test - DNS:t58.test - DNS:t59.test - DNS:t60.test - DNS:t61.test - DNS:t62.test - DNS:t63.test - DNS:t64.test - DNS:t65.test - DNS:t66.test - DNS:t67.test - DNS:t68.test - DNS:t69.test - DNS:t70.test - DNS:t71.test - DNS:t72.test - DNS:t73.test - DNS:t74.test - DNS:t75.test - DNS:t76.test - DNS:t77.test - DNS:t78.test - DNS:t79.test - DNS:t80.test - DNS:t81.test - DNS:t82.test - DNS:t83.test - DNS:t84.test - DNS:t85.test - DNS:t86.test - DNS:t87.test - DNS:t88.test - DNS:t89.test - DNS:t90.test - DNS:t91.test - DNS:t92.test - DNS:t93.test - DNS:t94.test - DNS:t95.test - DNS:t96.test - DNS:t97.test - DNS:t98.test - DNS:t99.test - DNS:t100.test - DNS:t101.test - DNS:t102.test - DNS:t103.test - DNS:t104.test - DNS:t105.test - DNS:t106.test - DNS:t107.test - DNS:t108.test - DNS:t109.test - DNS:t110.test - DNS:t111.test - DNS:t112.test - DNS:t113.test - DNS:t114.test - DNS:t115.test - DNS:t116.test - DNS:t117.test - DNS:t118.test - DNS:t119.test - DNS:t120.test - DNS:t121.test - DNS:t122.test - DNS:t123.test - DNS:t124.test - DNS:t125.test - DNS:t126.test - DNS:t127.test - DNS:t128.test - DNS:t129.test - DNS:t130.test - DNS:t131.test - DNS:t132.test - DNS:t133.test - DNS:t134.test - DNS:t135.test - DNS:t136.test - DNS:t137.test - DNS:t138.test - DNS:t139.test - DNS:t140.test - DNS:t141.test - DNS:t142.test - DNS:t143.test - DNS:t144.test - DNS:t145.test - DNS:t146.test - DNS:t147.test - DNS:t148.test - DNS:t149.test - DNS:t150.test - DNS:t151.test - DNS:t152.test - DNS:t153.test - DNS:t154.test - DNS:t155.test - DNS:t156.test - DNS:t157.test - DNS:t158.test - DNS:t159.test - DNS:t160.test - DNS:t161.test - DNS:t162.test - DNS:t163.test - DNS:t164.test - DNS:t165.test - DNS:t166.test - DNS:t167.test - DNS:t168.test - DNS:t169.test - DNS:t170.test - DNS:t171.test - IP:10.0.0.0/255.255.255.255 - IP:10.0.0.1/255.255.255.255 - IP:10.0.0.2/255.255.255.255 - IP:10.0.0.3/255.255.255.255 - IP:10.0.0.4/255.255.255.255 - IP:10.0.0.5/255.255.255.255 - IP:10.0.0.6/255.255.255.255 - IP:10.0.0.7/255.255.255.255 - IP:10.0.0.8/255.255.255.255 - IP:10.0.0.9/255.255.255.255 - IP:10.0.0.10/255.255.255.255 - IP:10.0.0.11/255.255.255.255 - IP:10.0.0.12/255.255.255.255 - IP:10.0.0.13/255.255.255.255 - IP:10.0.0.14/255.255.255.255 - IP:10.0.0.15/255.255.255.255 - IP:10.0.0.16/255.255.255.255 - IP:10.0.0.17/255.255.255.255 - IP:10.0.0.18/255.255.255.255 - IP:10.0.0.19/255.255.255.255 - IP:10.0.0.20/255.255.255.255 - IP:10.0.0.21/255.255.255.255 - IP:10.0.0.22/255.255.255.255 - IP:10.0.0.23/255.255.255.255 - IP:10.0.0.24/255.255.255.255 - IP:10.0.0.25/255.255.255.255 - IP:10.0.0.26/255.255.255.255 - IP:10.0.0.27/255.255.255.255 - IP:10.0.0.28/255.255.255.255 - IP:10.0.0.29/255.255.255.255 - IP:10.0.0.30/255.255.255.255 - IP:10.0.0.31/255.255.255.255 - IP:10.0.0.32/255.255.255.255 - IP:10.0.0.33/255.255.255.255 - IP:10.0.0.34/255.255.255.255 - IP:10.0.0.35/255.255.255.255 - IP:10.0.0.36/255.255.255.255 - IP:10.0.0.37/255.255.255.255 - IP:10.0.0.38/255.255.255.255 - IP:10.0.0.39/255.255.255.255 - IP:10.0.0.40/255.255.255.255 - IP:10.0.0.41/255.255.255.255 - IP:10.0.0.42/255.255.255.255 - IP:10.0.0.43/255.255.255.255 - IP:10.0.0.44/255.255.255.255 - IP:10.0.0.45/255.255.255.255 - IP:10.0.0.46/255.255.255.255 - IP:10.0.0.47/255.255.255.255 - IP:10.0.0.48/255.255.255.255 - IP:10.0.0.49/255.255.255.255 - IP:10.0.0.50/255.255.255.255 - IP:10.0.0.51/255.255.255.255 - IP:10.0.0.52/255.255.255.255 - IP:10.0.0.53/255.255.255.255 - IP:10.0.0.54/255.255.255.255 - IP:10.0.0.55/255.255.255.255 - IP:10.0.0.56/255.255.255.255 - IP:10.0.0.57/255.255.255.255 - IP:10.0.0.58/255.255.255.255 - IP:10.0.0.59/255.255.255.255 - IP:10.0.0.60/255.255.255.255 - IP:10.0.0.61/255.255.255.255 - IP:10.0.0.62/255.255.255.255 - IP:10.0.0.63/255.255.255.255 - IP:10.0.0.64/255.255.255.255 - IP:10.0.0.65/255.255.255.255 - IP:10.0.0.66/255.255.255.255 - IP:10.0.0.67/255.255.255.255 - IP:10.0.0.68/255.255.255.255 - IP:10.0.0.69/255.255.255.255 - IP:10.0.0.70/255.255.255.255 - IP:10.0.0.71/255.255.255.255 - IP:10.0.0.72/255.255.255.255 - IP:10.0.0.73/255.255.255.255 - IP:10.0.0.74/255.255.255.255 - IP:10.0.0.75/255.255.255.255 - IP:10.0.0.76/255.255.255.255 - IP:10.0.0.77/255.255.255.255 - IP:10.0.0.78/255.255.255.255 - IP:10.0.0.79/255.255.255.255 - IP:10.0.0.80/255.255.255.255 - IP:10.0.0.81/255.255.255.255 - IP:10.0.0.82/255.255.255.255 - IP:10.0.0.83/255.255.255.255 - IP:10.0.0.84/255.255.255.255 - IP:10.0.0.85/255.255.255.255 - IP:10.0.0.86/255.255.255.255 - IP:10.0.0.87/255.255.255.255 - IP:10.0.0.88/255.255.255.255 - IP:10.0.0.89/255.255.255.255 - IP:10.0.0.90/255.255.255.255 - IP:10.0.0.91/255.255.255.255 - IP:10.0.0.92/255.255.255.255 - IP:10.0.0.93/255.255.255.255 - IP:10.0.0.94/255.255.255.255 - IP:10.0.0.95/255.255.255.255 - IP:10.0.0.96/255.255.255.255 - IP:10.0.0.97/255.255.255.255 - IP:10.0.0.98/255.255.255.255 - IP:10.0.0.99/255.255.255.255 - IP:10.0.0.100/255.255.255.255 - IP:10.0.0.101/255.255.255.255 - IP:10.0.0.102/255.255.255.255 - IP:10.0.0.103/255.255.255.255 - IP:10.0.0.104/255.255.255.255 - IP:10.0.0.105/255.255.255.255 - IP:10.0.0.106/255.255.255.255 - IP:10.0.0.107/255.255.255.255 - IP:10.0.0.108/255.255.255.255 - IP:10.0.0.109/255.255.255.255 - IP:10.0.0.110/255.255.255.255 - IP:10.0.0.111/255.255.255.255 - IP:10.0.0.112/255.255.255.255 - IP:10.0.0.113/255.255.255.255 - IP:10.0.0.114/255.255.255.255 - IP:10.0.0.115/255.255.255.255 - IP:10.0.0.116/255.255.255.255 - IP:10.0.0.117/255.255.255.255 - IP:10.0.0.118/255.255.255.255 - IP:10.0.0.119/255.255.255.255 - IP:10.0.0.120/255.255.255.255 - IP:10.0.0.121/255.255.255.255 - IP:10.0.0.122/255.255.255.255 - IP:10.0.0.123/255.255.255.255 - IP:10.0.0.124/255.255.255.255 - IP:10.0.0.125/255.255.255.255 - IP:10.0.0.126/255.255.255.255 - IP:10.0.0.127/255.255.255.255 - IP:10.0.0.128/255.255.255.255 - IP:10.0.0.129/255.255.255.255 - IP:10.0.0.130/255.255.255.255 - IP:10.0.0.131/255.255.255.255 - IP:10.0.0.132/255.255.255.255 - IP:10.0.0.133/255.255.255.255 - IP:10.0.0.134/255.255.255.255 - IP:10.0.0.135/255.255.255.255 - IP:10.0.0.136/255.255.255.255 - IP:10.0.0.137/255.255.255.255 - IP:10.0.0.138/255.255.255.255 - IP:10.0.0.139/255.255.255.255 - IP:10.0.0.140/255.255.255.255 - IP:10.0.0.141/255.255.255.255 - IP:10.0.0.142/255.255.255.255 - IP:10.0.0.143/255.255.255.255 - IP:10.0.0.144/255.255.255.255 - IP:10.0.0.145/255.255.255.255 - IP:10.0.0.146/255.255.255.255 - IP:10.0.0.147/255.255.255.255 - IP:10.0.0.148/255.255.255.255 - IP:10.0.0.149/255.255.255.255 - IP:10.0.0.150/255.255.255.255 - IP:10.0.0.151/255.255.255.255 - IP:10.0.0.152/255.255.255.255 - IP:10.0.0.153/255.255.255.255 - IP:10.0.0.154/255.255.255.255 - IP:10.0.0.155/255.255.255.255 - IP:10.0.0.156/255.255.255.255 - IP:10.0.0.157/255.255.255.255 - IP:10.0.0.158/255.255.255.255 - IP:10.0.0.159/255.255.255.255 - IP:10.0.0.160/255.255.255.255 - IP:10.0.0.161/255.255.255.255 - IP:10.0.0.162/255.255.255.255 - IP:10.0.0.163/255.255.255.255 - IP:10.0.0.164/255.255.255.255 - IP:10.0.0.165/255.255.255.255 - IP:10.0.0.166/255.255.255.255 - IP:10.0.0.167/255.255.255.255 - IP:10.0.0.168/255.255.255.255 - IP:10.0.0.169/255.255.255.255 - IP:10.0.0.170/255.255.255.255 - DirName: CN = t0 - DirName: CN = t1 - DirName: CN = t2 - DirName: CN = t3 - DirName: CN = t4 - DirName: CN = t5 - DirName: CN = t6 - DirName: CN = t7 - DirName: CN = t8 - DirName: CN = t9 - DirName: CN = t10 - DirName: CN = t11 - DirName: CN = t12 - DirName: CN = t13 - DirName: CN = t14 - DirName: CN = t15 - DirName: CN = t16 - DirName: CN = t17 - DirName: CN = t18 - DirName: CN = t19 - DirName: CN = t20 - DirName: CN = t21 - DirName: CN = t22 - DirName: CN = t23 - DirName: CN = t24 - DirName: CN = t25 - DirName: CN = t26 - DirName: CN = t27 - DirName: CN = t28 - DirName: CN = t29 - DirName: CN = t30 - DirName: CN = t31 - DirName: CN = t32 - DirName: CN = t33 - DirName: CN = t34 - DirName: CN = t35 - DirName: CN = t36 - DirName: CN = t37 - DirName: CN = t38 - DirName: CN = t39 - DirName: CN = t40 - DirName: CN = t41 - DirName: CN = t42 - DirName: CN = t43 - DirName: CN = t44 - DirName: CN = t45 - DirName: CN = t46 - DirName: CN = t47 - DirName: CN = t48 - DirName: CN = t49 - DirName: CN = t50 - DirName: CN = t51 - DirName: CN = t52 - DirName: CN = t53 - DirName: CN = t54 - DirName: CN = t55 - DirName: CN = t56 - DirName: CN = t57 - DirName: CN = t58 - DirName: CN = t59 - DirName: CN = t60 - DirName: CN = t61 - DirName: CN = t62 - DirName: CN = t63 - DirName: CN = t64 - DirName: CN = t65 - DirName: CN = t66 - DirName: CN = t67 - DirName: CN = t68 - DirName: CN = t69 - DirName: CN = t70 - DirName: CN = t71 - DirName: CN = t72 - DirName: CN = t73 - DirName: CN = t74 - DirName: CN = t75 - DirName: CN = t76 - DirName: CN = t77 - DirName: CN = t78 - DirName: CN = t79 - DirName: CN = t80 - DirName: CN = t81 - DirName: CN = t82 - DirName: CN = t83 - DirName: CN = t84 - DirName: CN = t85 - DirName: CN = t86 - DirName: CN = t87 - DirName: CN = t88 - DirName: CN = t89 - DirName: CN = t90 - DirName: CN = t91 - DirName: CN = t92 - DirName: CN = t93 - DirName: CN = t94 - DirName: CN = t95 - DirName: CN = t96 - DirName: CN = t97 - DirName: CN = t98 - DirName: CN = t99 - DirName: CN = t100 - DirName: CN = t101 - DirName: CN = t102 - DirName: CN = t103 - DirName: CN = t104 - DirName: CN = t105 - DirName: CN = t106 - DirName: CN = t107 - DirName: CN = t108 - DirName: CN = t109 - DirName: CN = t110 - DirName: CN = t111 - DirName: CN = t112 - DirName: CN = t113 - DirName: CN = t114 - DirName: CN = t115 - DirName: CN = t116 - DirName: CN = t117 - DirName: CN = t118 - DirName: CN = t119 - DirName: CN = t120 - DirName: CN = t121 - DirName: CN = t122 - DirName: CN = t123 - DirName: CN = t124 - DirName: CN = t125 - DirName: CN = t126 - DirName: CN = t127 - DirName: CN = t128 - DirName: CN = t129 - DirName: CN = t130 - DirName: CN = t131 - DirName: CN = t132 - DirName: CN = t133 - DirName: CN = t134 - DirName: CN = t135 - DirName: CN = t136 - DirName: CN = t137 - DirName: CN = t138 - DirName: CN = t139 - DirName: CN = t140 - DirName: CN = t141 - DirName: CN = t142 - DirName: CN = t143 - DirName: CN = t144 - DirName: CN = t145 - DirName: CN = t146 - DirName: CN = t147 - DirName: CN = t148 - DirName: CN = t149 - DirName: CN = t150 - DirName: CN = t151 - DirName: CN = t152 - DirName: CN = t153 - DirName: CN = t154 - DirName: CN = t155 - DirName: CN = t156 - DirName: CN = t157 - DirName: CN = t158 - DirName: CN = t159 - DirName: CN = t160 - DirName: CN = t161 - DirName: CN = t162 - DirName: CN = t163 - DirName: CN = t164 - DirName: CN = t165 - DirName: CN = t166 - DirName: CN = t167 - DirName: CN = t168 - DirName: CN = t169 - DirName: CN = t170 - DirName: CN = t171 - Excluded: - DNS:x0.test - DNS:x1.test - DNS:x2.test - DNS:x3.test - DNS:x4.test - DNS:x5.test - DNS:x6.test - DNS:x7.test - DNS:x8.test - DNS:x9.test - DNS:x10.test - DNS:x11.test - DNS:x12.test - DNS:x13.test - DNS:x14.test - DNS:x15.test - DNS:x16.test - DNS:x17.test - DNS:x18.test - DNS:x19.test - DNS:x20.test - DNS:x21.test - DNS:x22.test - DNS:x23.test - DNS:x24.test - DNS:x25.test - DNS:x26.test - DNS:x27.test - DNS:x28.test - DNS:x29.test - DNS:x30.test - DNS:x31.test - DNS:x32.test - DNS:x33.test - DNS:x34.test - DNS:x35.test - DNS:x36.test - DNS:x37.test - DNS:x38.test - DNS:x39.test - DNS:x40.test - DNS:x41.test - DNS:x42.test - DNS:x43.test - DNS:x44.test - DNS:x45.test - DNS:x46.test - DNS:x47.test - DNS:x48.test - DNS:x49.test - DNS:x50.test - DNS:x51.test - DNS:x52.test - DNS:x53.test - DNS:x54.test - DNS:x55.test - DNS:x56.test - DNS:x57.test - DNS:x58.test - DNS:x59.test - DNS:x60.test - DNS:x61.test - DNS:x62.test - DNS:x63.test - DNS:x64.test - DNS:x65.test - DNS:x66.test - DNS:x67.test - DNS:x68.test - DNS:x69.test - DNS:x70.test - DNS:x71.test - DNS:x72.test - DNS:x73.test - DNS:x74.test - DNS:x75.test - DNS:x76.test - DNS:x77.test - DNS:x78.test - DNS:x79.test - DNS:x80.test - DNS:x81.test - DNS:x82.test - DNS:x83.test - DNS:x84.test - DNS:x85.test - DNS:x86.test - DNS:x87.test - DNS:x88.test - DNS:x89.test - DNS:x90.test - DNS:x91.test - DNS:x92.test - DNS:x93.test - DNS:x94.test - DNS:x95.test - DNS:x96.test - DNS:x97.test - DNS:x98.test - DNS:x99.test - DNS:x100.test - DNS:x101.test - DNS:x102.test - DNS:x103.test - DNS:x104.test - DNS:x105.test - DNS:x106.test - DNS:x107.test - DNS:x108.test - DNS:x109.test - DNS:x110.test - DNS:x111.test - DNS:x112.test - DNS:x113.test - DNS:x114.test - DNS:x115.test - DNS:x116.test - DNS:x117.test - DNS:x118.test - DNS:x119.test - DNS:x120.test - DNS:x121.test - DNS:x122.test - DNS:x123.test - DNS:x124.test - DNS:x125.test - DNS:x126.test - DNS:x127.test - DNS:x128.test - DNS:x129.test - DNS:x130.test - DNS:x131.test - DNS:x132.test - DNS:x133.test - DNS:x134.test - DNS:x135.test - DNS:x136.test - DNS:x137.test - DNS:x138.test - DNS:x139.test - DNS:x140.test - DNS:x141.test - DNS:x142.test - DNS:x143.test - DNS:x144.test - DNS:x145.test - DNS:x146.test - DNS:x147.test - DNS:x148.test - DNS:x149.test - DNS:x150.test - DNS:x151.test - DNS:x152.test - DNS:x153.test - DNS:x154.test - DNS:x155.test - DNS:x156.test - DNS:x157.test - DNS:x158.test - DNS:x159.test - DNS:x160.test - DNS:x161.test - DNS:x162.test - DNS:x163.test - DNS:x164.test - DNS:x165.test - DNS:x166.test - DNS:x167.test - DNS:x168.test - DNS:x169.test - IP:11.0.0.0/255.255.255.255 - IP:11.0.0.1/255.255.255.255 - IP:11.0.0.2/255.255.255.255 - IP:11.0.0.3/255.255.255.255 - IP:11.0.0.4/255.255.255.255 - IP:11.0.0.5/255.255.255.255 - IP:11.0.0.6/255.255.255.255 - IP:11.0.0.7/255.255.255.255 - IP:11.0.0.8/255.255.255.255 - IP:11.0.0.9/255.255.255.255 - IP:11.0.0.10/255.255.255.255 - IP:11.0.0.11/255.255.255.255 - IP:11.0.0.12/255.255.255.255 - IP:11.0.0.13/255.255.255.255 - IP:11.0.0.14/255.255.255.255 - IP:11.0.0.15/255.255.255.255 - IP:11.0.0.16/255.255.255.255 - IP:11.0.0.17/255.255.255.255 - IP:11.0.0.18/255.255.255.255 - IP:11.0.0.19/255.255.255.255 - IP:11.0.0.20/255.255.255.255 - IP:11.0.0.21/255.255.255.255 - IP:11.0.0.22/255.255.255.255 - IP:11.0.0.23/255.255.255.255 - IP:11.0.0.24/255.255.255.255 - IP:11.0.0.25/255.255.255.255 - IP:11.0.0.26/255.255.255.255 - IP:11.0.0.27/255.255.255.255 - IP:11.0.0.28/255.255.255.255 - IP:11.0.0.29/255.255.255.255 - IP:11.0.0.30/255.255.255.255 - IP:11.0.0.31/255.255.255.255 - IP:11.0.0.32/255.255.255.255 - IP:11.0.0.33/255.255.255.255 - IP:11.0.0.34/255.255.255.255 - IP:11.0.0.35/255.255.255.255 - IP:11.0.0.36/255.255.255.255 - IP:11.0.0.37/255.255.255.255 - IP:11.0.0.38/255.255.255.255 - IP:11.0.0.39/255.255.255.255 - IP:11.0.0.40/255.255.255.255 - IP:11.0.0.41/255.255.255.255 - IP:11.0.0.42/255.255.255.255 - IP:11.0.0.43/255.255.255.255 - IP:11.0.0.44/255.255.255.255 - IP:11.0.0.45/255.255.255.255 - IP:11.0.0.46/255.255.255.255 - IP:11.0.0.47/255.255.255.255 - IP:11.0.0.48/255.255.255.255 - IP:11.0.0.49/255.255.255.255 - IP:11.0.0.50/255.255.255.255 - IP:11.0.0.51/255.255.255.255 - IP:11.0.0.52/255.255.255.255 - IP:11.0.0.53/255.255.255.255 - IP:11.0.0.54/255.255.255.255 - IP:11.0.0.55/255.255.255.255 - IP:11.0.0.56/255.255.255.255 - IP:11.0.0.57/255.255.255.255 - IP:11.0.0.58/255.255.255.255 - IP:11.0.0.59/255.255.255.255 - IP:11.0.0.60/255.255.255.255 - IP:11.0.0.61/255.255.255.255 - IP:11.0.0.62/255.255.255.255 - IP:11.0.0.63/255.255.255.255 - IP:11.0.0.64/255.255.255.255 - IP:11.0.0.65/255.255.255.255 - IP:11.0.0.66/255.255.255.255 - IP:11.0.0.67/255.255.255.255 - IP:11.0.0.68/255.255.255.255 - IP:11.0.0.69/255.255.255.255 - IP:11.0.0.70/255.255.255.255 - IP:11.0.0.71/255.255.255.255 - IP:11.0.0.72/255.255.255.255 - IP:11.0.0.73/255.255.255.255 - IP:11.0.0.74/255.255.255.255 - IP:11.0.0.75/255.255.255.255 - IP:11.0.0.76/255.255.255.255 - IP:11.0.0.77/255.255.255.255 - IP:11.0.0.78/255.255.255.255 - IP:11.0.0.79/255.255.255.255 - IP:11.0.0.80/255.255.255.255 - IP:11.0.0.81/255.255.255.255 - IP:11.0.0.82/255.255.255.255 - IP:11.0.0.83/255.255.255.255 - IP:11.0.0.84/255.255.255.255 - IP:11.0.0.85/255.255.255.255 - IP:11.0.0.86/255.255.255.255 - IP:11.0.0.87/255.255.255.255 - IP:11.0.0.88/255.255.255.255 - IP:11.0.0.89/255.255.255.255 - IP:11.0.0.90/255.255.255.255 - IP:11.0.0.91/255.255.255.255 - IP:11.0.0.92/255.255.255.255 - IP:11.0.0.93/255.255.255.255 - IP:11.0.0.94/255.255.255.255 - IP:11.0.0.95/255.255.255.255 - IP:11.0.0.96/255.255.255.255 - IP:11.0.0.97/255.255.255.255 - IP:11.0.0.98/255.255.255.255 - IP:11.0.0.99/255.255.255.255 - IP:11.0.0.100/255.255.255.255 - IP:11.0.0.101/255.255.255.255 - IP:11.0.0.102/255.255.255.255 - IP:11.0.0.103/255.255.255.255 - IP:11.0.0.104/255.255.255.255 - IP:11.0.0.105/255.255.255.255 - IP:11.0.0.106/255.255.255.255 - IP:11.0.0.107/255.255.255.255 - IP:11.0.0.108/255.255.255.255 - IP:11.0.0.109/255.255.255.255 - IP:11.0.0.110/255.255.255.255 - IP:11.0.0.111/255.255.255.255 - IP:11.0.0.112/255.255.255.255 - IP:11.0.0.113/255.255.255.255 - IP:11.0.0.114/255.255.255.255 - IP:11.0.0.115/255.255.255.255 - IP:11.0.0.116/255.255.255.255 - IP:11.0.0.117/255.255.255.255 - IP:11.0.0.118/255.255.255.255 - IP:11.0.0.119/255.255.255.255 - IP:11.0.0.120/255.255.255.255 - IP:11.0.0.121/255.255.255.255 - IP:11.0.0.122/255.255.255.255 - IP:11.0.0.123/255.255.255.255 - IP:11.0.0.124/255.255.255.255 - IP:11.0.0.125/255.255.255.255 - IP:11.0.0.126/255.255.255.255 - IP:11.0.0.127/255.255.255.255 - IP:11.0.0.128/255.255.255.255 - IP:11.0.0.129/255.255.255.255 - IP:11.0.0.130/255.255.255.255 - IP:11.0.0.131/255.255.255.255 - IP:11.0.0.132/255.255.255.255 - IP:11.0.0.133/255.255.255.255 - IP:11.0.0.134/255.255.255.255 - IP:11.0.0.135/255.255.255.255 - IP:11.0.0.136/255.255.255.255 - IP:11.0.0.137/255.255.255.255 - IP:11.0.0.138/255.255.255.255 - IP:11.0.0.139/255.255.255.255 - IP:11.0.0.140/255.255.255.255 - IP:11.0.0.141/255.255.255.255 - IP:11.0.0.142/255.255.255.255 - IP:11.0.0.143/255.255.255.255 - IP:11.0.0.144/255.255.255.255 - IP:11.0.0.145/255.255.255.255 - IP:11.0.0.146/255.255.255.255 - IP:11.0.0.147/255.255.255.255 - IP:11.0.0.148/255.255.255.255 - IP:11.0.0.149/255.255.255.255 - IP:11.0.0.150/255.255.255.255 - IP:11.0.0.151/255.255.255.255 - IP:11.0.0.152/255.255.255.255 - IP:11.0.0.153/255.255.255.255 - IP:11.0.0.154/255.255.255.255 - IP:11.0.0.155/255.255.255.255 - IP:11.0.0.156/255.255.255.255 - IP:11.0.0.157/255.255.255.255 - IP:11.0.0.158/255.255.255.255 - IP:11.0.0.159/255.255.255.255 - IP:11.0.0.160/255.255.255.255 - IP:11.0.0.161/255.255.255.255 - IP:11.0.0.162/255.255.255.255 - IP:11.0.0.163/255.255.255.255 - IP:11.0.0.164/255.255.255.255 - IP:11.0.0.165/255.255.255.255 - IP:11.0.0.166/255.255.255.255 - IP:11.0.0.167/255.255.255.255 - IP:11.0.0.168/255.255.255.255 - IP:11.0.0.169/255.255.255.255 - DirName: CN = x0 - DirName: CN = x1 - DirName: CN = x2 - DirName: CN = x3 - DirName: CN = x4 - DirName: CN = x5 - DirName: CN = x6 - DirName: CN = x7 - DirName: CN = x8 - DirName: CN = x9 - DirName: CN = x10 - DirName: CN = x11 - DirName: CN = x12 - DirName: CN = x13 - DirName: CN = x14 - DirName: CN = x15 - DirName: CN = x16 - DirName: CN = x17 - DirName: CN = x18 - DirName: CN = x19 - DirName: CN = x20 - DirName: CN = x21 - DirName: CN = x22 - DirName: CN = x23 - DirName: CN = x24 - DirName: CN = x25 - DirName: CN = x26 - DirName: CN = x27 - DirName: CN = x28 - DirName: CN = x29 - DirName: CN = x30 - DirName: CN = x31 - DirName: CN = x32 - DirName: CN = x33 - DirName: CN = x34 - DirName: CN = x35 - DirName: CN = x36 - DirName: CN = x37 - DirName: CN = x38 - DirName: CN = x39 - DirName: CN = x40 - DirName: CN = x41 - DirName: CN = x42 - DirName: CN = x43 - DirName: CN = x44 - DirName: CN = x45 - DirName: CN = x46 - DirName: CN = x47 - DirName: CN = x48 - DirName: CN = x49 - DirName: CN = x50 - DirName: CN = x51 - DirName: CN = x52 - DirName: CN = x53 - DirName: CN = x54 - DirName: CN = x55 - DirName: CN = x56 - DirName: CN = x57 - DirName: CN = x58 - DirName: CN = x59 - DirName: CN = x60 - DirName: CN = x61 - DirName: CN = x62 - DirName: CN = x63 - DirName: CN = x64 - DirName: CN = x65 - DirName: CN = x66 - DirName: CN = x67 - DirName: CN = x68 - DirName: CN = x69 - DirName: CN = x70 - DirName: CN = x71 - DirName: CN = x72 - DirName: CN = x73 - DirName: CN = x74 - DirName: CN = x75 - DirName: CN = x76 - DirName: CN = x77 - DirName: CN = x78 - DirName: CN = x79 - DirName: CN = x80 - DirName: CN = x81 - DirName: CN = x82 - DirName: CN = x83 - DirName: CN = x84 - DirName: CN = x85 - DirName: CN = x86 - DirName: CN = x87 - DirName: CN = x88 - DirName: CN = x89 - DirName: CN = x90 - DirName: CN = x91 - DirName: CN = x92 - DirName: CN = x93 - DirName: CN = x94 - DirName: CN = x95 - DirName: CN = x96 - DirName: CN = x97 - DirName: CN = x98 - DirName: CN = x99 - DirName: CN = x100 - DirName: CN = x101 - DirName: CN = x102 - DirName: CN = x103 - DirName: CN = x104 - DirName: CN = x105 - DirName: CN = x106 - DirName: CN = x107 - DirName: CN = x108 - DirName: CN = x109 - DirName: CN = x110 - DirName: CN = x111 - DirName: CN = x112 - DirName: CN = x113 - DirName: CN = x114 - DirName: CN = x115 - DirName: CN = x116 - DirName: CN = x117 - DirName: CN = x118 - DirName: CN = x119 - DirName: CN = x120 - DirName: CN = x121 - DirName: CN = x122 - DirName: CN = x123 - DirName: CN = x124 - DirName: CN = x125 - DirName: CN = x126 - DirName: CN = x127 - DirName: CN = x128 - DirName: CN = x129 - DirName: CN = x130 - DirName: CN = x131 - DirName: CN = x132 - DirName: CN = x133 - DirName: CN = x134 - DirName: CN = x135 - DirName: CN = x136 - DirName: CN = x137 - DirName: CN = x138 - DirName: CN = x139 - DirName: CN = x140 - DirName: CN = x141 - DirName: CN = x142 - DirName: CN = x143 - DirName: CN = x144 - DirName: CN = x145 - DirName: CN = x146 - DirName: CN = x147 - DirName: CN = x148 - DirName: CN = x149 - DirName: CN = x150 - DirName: CN = x151 - DirName: CN = x152 - DirName: CN = x153 - DirName: CN = x154 - DirName: CN = x155 - DirName: CN = x156 - DirName: CN = x157 - DirName: CN = x158 - DirName: CN = x159 - DirName: CN = x160 - DirName: CN = x161 - DirName: CN = x162 - DirName: CN = x163 - DirName: CN = x164 - DirName: CN = x165 - DirName: CN = x166 - DirName: CN = x167 - DirName: CN = x168 - DirName: CN = x169 - - Signature Algorithm: sha256WithRSAEncryption - 9f:cb:83:7b:e2:3c:57:27:25:ec:82:3f:30:c2:ff:12:51:71: - 3f:d5:94:05:1a:5b:58:44:80:b4:89:1e:e0:89:45:e5:e3:72: - 8b:c4:d8:ca:54:a3:db:f2:a3:fd:16:00:c1:86:21:e2:ed:e3: - 6c:94:7e:09:ae:ed:36:1c:e3:97:6f:3d:0a:b1:39:78:7a:b3: - b9:ce:c3:68:ee:60:27:7c:cb:6b:33:3c:5f:a2:6a:99:d4:08: - 2a:e9:21:04:ea:12:d9:28:53:1f:cc:af:ab:41:a3:6e:34:fa: - 56:56:44:d5:c5:10:bd:f4:37:3b:45:94:74:19:b2:49:cf:0f: - 98:94:75:68:ec:4e:6f:b0:41:ac:f7:38:02:1d:dd:1f:14:f6: - b5:c6:0c:a2:b2:a7:07:75:99:54:4e:fe:68:0c:1d:ae:a0:90: - d7:d5:64:60:15:ff:c7:fd:31:da:ab:50:43:44:b7:cc:3f:d2: - ee:e4:03:3e:a0:9d:8e:81:48:21:86:34:66:27:be:b2:73:01: - 2b:65:ee:51:3b:57:3f:76:51:ad:82:fc:7e:c9:ce:89:38:04: - 5f:c9:f6:41:62:32:60:b2:b9:d1:fe:4e:78:d6:a5:79:56:7b: - 57:e4:1d:42:7a:1f:aa:f7:b0:d0:82:ba:d4:f1:bb:f9:9c:ec: - ca:e7:f7:09 ------BEGIN CERTIFICATE----- -MII/SzCCPjOgAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vcwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCPJUwgjyRMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgjvFBgNVHR4Egju8MII7uKCCHgAwCYIHdDAudGVzdDAJggd0MS50ZXN0MAmC -B3QyLnRlc3QwCYIHdDMudGVzdDAJggd0NC50ZXN0MAmCB3Q1LnRlc3QwCYIHdDYu -dGVzdDAJggd0Ny50ZXN0MAmCB3Q4LnRlc3QwCYIHdDkudGVzdDAKggh0MTAudGVz -dDAKggh0MTEudGVzdDAKggh0MTIudGVzdDAKggh0MTMudGVzdDAKggh0MTQudGVz -dDAKggh0MTUudGVzdDAKggh0MTYudGVzdDAKggh0MTcudGVzdDAKggh0MTgudGVz -dDAKggh0MTkudGVzdDAKggh0MjAudGVzdDAKggh0MjEudGVzdDAKggh0MjIudGVz -dDAKggh0MjMudGVzdDAKggh0MjQudGVzdDAKggh0MjUudGVzdDAKggh0MjYudGVz -dDAKggh0MjcudGVzdDAKggh0MjgudGVzdDAKggh0MjkudGVzdDAKggh0MzAudGVz -dDAKggh0MzEudGVzdDAKggh0MzIudGVzdDAKggh0MzMudGVzdDAKggh0MzQudGVz -dDAKggh0MzUudGVzdDAKggh0MzYudGVzdDAKggh0MzcudGVzdDAKggh0MzgudGVz -dDAKggh0MzkudGVzdDAKggh0NDAudGVzdDAKggh0NDEudGVzdDAKggh0NDIudGVz -dDAKggh0NDMudGVzdDAKggh0NDQudGVzdDAKggh0NDUudGVzdDAKggh0NDYudGVz -dDAKggh0NDcudGVzdDAKggh0NDgudGVzdDAKggh0NDkudGVzdDAKggh0NTAudGVz -dDAKggh0NTEudGVzdDAKggh0NTIudGVzdDAKggh0NTMudGVzdDAKggh0NTQudGVz -dDAKggh0NTUudGVzdDAKggh0NTYudGVzdDAKggh0NTcudGVzdDAKggh0NTgudGVz -dDAKggh0NTkudGVzdDAKggh0NjAudGVzdDAKggh0NjEudGVzdDAKggh0NjIudGVz -dDAKggh0NjMudGVzdDAKggh0NjQudGVzdDAKggh0NjUudGVzdDAKggh0NjYudGVz -dDAKggh0NjcudGVzdDAKggh0NjgudGVzdDAKggh0NjkudGVzdDAKggh0NzAudGVz -dDAKggh0NzEudGVzdDAKggh0NzIudGVzdDAKggh0NzMudGVzdDAKggh0NzQudGVz -dDAKggh0NzUudGVzdDAKggh0NzYudGVzdDAKggh0NzcudGVzdDAKggh0NzgudGVz -dDAKggh0NzkudGVzdDAKggh0ODAudGVzdDAKggh0ODEudGVzdDAKggh0ODIudGVz -dDAKggh0ODMudGVzdDAKggh0ODQudGVzdDAKggh0ODUudGVzdDAKggh0ODYudGVz -dDAKggh0ODcudGVzdDAKggh0ODgudGVzdDAKggh0ODkudGVzdDAKggh0OTAudGVz -dDAKggh0OTEudGVzdDAKggh0OTIudGVzdDAKggh0OTMudGVzdDAKggh0OTQudGVz -dDAKggh0OTUudGVzdDAKggh0OTYudGVzdDAKggh0OTcudGVzdDAKggh0OTgudGVz -dDAKggh0OTkudGVzdDALggl0MTAwLnRlc3QwC4IJdDEwMS50ZXN0MAuCCXQxMDIu -dGVzdDALggl0MTAzLnRlc3QwC4IJdDEwNC50ZXN0MAuCCXQxMDUudGVzdDALggl0 -MTA2LnRlc3QwC4IJdDEwNy50ZXN0MAuCCXQxMDgudGVzdDALggl0MTA5LnRlc3Qw -C4IJdDExMC50ZXN0MAuCCXQxMTEudGVzdDALggl0MTEyLnRlc3QwC4IJdDExMy50 -ZXN0MAuCCXQxMTQudGVzdDALggl0MTE1LnRlc3QwC4IJdDExNi50ZXN0MAuCCXQx -MTcudGVzdDALggl0MTE4LnRlc3QwC4IJdDExOS50ZXN0MAuCCXQxMjAudGVzdDAL -ggl0MTIxLnRlc3QwC4IJdDEyMi50ZXN0MAuCCXQxMjMudGVzdDALggl0MTI0LnRl -c3QwC4IJdDEyNS50ZXN0MAuCCXQxMjYudGVzdDALggl0MTI3LnRlc3QwC4IJdDEy -OC50ZXN0MAuCCXQxMjkudGVzdDALggl0MTMwLnRlc3QwC4IJdDEzMS50ZXN0MAuC -CXQxMzIudGVzdDALggl0MTMzLnRlc3QwC4IJdDEzNC50ZXN0MAuCCXQxMzUudGVz -dDALggl0MTM2LnRlc3QwC4IJdDEzNy50ZXN0MAuCCXQxMzgudGVzdDALggl0MTM5 -LnRlc3QwC4IJdDE0MC50ZXN0MAuCCXQxNDEudGVzdDALggl0MTQyLnRlc3QwC4IJ -dDE0My50ZXN0MAuCCXQxNDQudGVzdDALggl0MTQ1LnRlc3QwC4IJdDE0Ni50ZXN0 -MAuCCXQxNDcudGVzdDALggl0MTQ4LnRlc3QwC4IJdDE0OS50ZXN0MAuCCXQxNTAu -dGVzdDALggl0MTUxLnRlc3QwC4IJdDE1Mi50ZXN0MAuCCXQxNTMudGVzdDALggl0 -MTU0LnRlc3QwC4IJdDE1NS50ZXN0MAuCCXQxNTYudGVzdDALggl0MTU3LnRlc3Qw -C4IJdDE1OC50ZXN0MAuCCXQxNTkudGVzdDALggl0MTYwLnRlc3QwC4IJdDE2MS50 -ZXN0MAuCCXQxNjIudGVzdDALggl0MTYzLnRlc3QwC4IJdDE2NC50ZXN0MAuCCXQx -NjUudGVzdDALggl0MTY2LnRlc3QwC4IJdDE2Ny50ZXN0MAuCCXQxNjgudGVzdDAL -ggl0MTY5LnRlc3QwC4IJdDE3MC50ZXN0MAuCCXQxNzEudGVzdDAKhwgKAAAA//// -/zAKhwgKAAAB/////zAKhwgKAAAC/////zAKhwgKAAAD/////zAKhwgKAAAE//// -/zAKhwgKAAAF/////zAKhwgKAAAG/////zAKhwgKAAAH/////zAKhwgKAAAI//// -/zAKhwgKAAAJ/////zAKhwgKAAAK/////zAKhwgKAAAL/////zAKhwgKAAAM//// -/zAKhwgKAAAN/////zAKhwgKAAAO/////zAKhwgKAAAP/////zAKhwgKAAAQ//// -/zAKhwgKAAAR/////zAKhwgKAAAS/////zAKhwgKAAAT/////zAKhwgKAAAU//// -/zAKhwgKAAAV/////zAKhwgKAAAW/////zAKhwgKAAAX/////zAKhwgKAAAY//// -/zAKhwgKAAAZ/////zAKhwgKAAAa/////zAKhwgKAAAb/////zAKhwgKAAAc//// -/zAKhwgKAAAd/////zAKhwgKAAAe/////zAKhwgKAAAf/////zAKhwgKAAAg//// -/zAKhwgKAAAh/////zAKhwgKAAAi/////zAKhwgKAAAj/////zAKhwgKAAAk//// -/zAKhwgKAAAl/////zAKhwgKAAAm/////zAKhwgKAAAn/////zAKhwgKAAAo//// -/zAKhwgKAAAp/////zAKhwgKAAAq/////zAKhwgKAAAr/////zAKhwgKAAAs//// -/zAKhwgKAAAt/////zAKhwgKAAAu/////zAKhwgKAAAv/////zAKhwgKAAAw//// -/zAKhwgKAAAx/////zAKhwgKAAAy/////zAKhwgKAAAz/////zAKhwgKAAA0//// -/zAKhwgKAAA1/////zAKhwgKAAA2/////zAKhwgKAAA3/////zAKhwgKAAA4//// -/zAKhwgKAAA5/////zAKhwgKAAA6/////zAKhwgKAAA7/////zAKhwgKAAA8//// -/zAKhwgKAAA9/////zAKhwgKAAA+/////zAKhwgKAAA//////zAKhwgKAABA//// -/zAKhwgKAABB/////zAKhwgKAABC/////zAKhwgKAABD/////zAKhwgKAABE//// -/zAKhwgKAABF/////zAKhwgKAABG/////zAKhwgKAABH/////zAKhwgKAABI//// -/zAKhwgKAABJ/////zAKhwgKAABK/////zAKhwgKAABL/////zAKhwgKAABM//// -/zAKhwgKAABN/////zAKhwgKAABO/////zAKhwgKAABP/////zAKhwgKAABQ//// -/zAKhwgKAABR/////zAKhwgKAABS/////zAKhwgKAABT/////zAKhwgKAABU//// -/zAKhwgKAABV/////zAKhwgKAABW/////zAKhwgKAABX/////zAKhwgKAABY//// -/zAKhwgKAABZ/////zAKhwgKAABa/////zAKhwgKAABb/////zAKhwgKAABc//// -/zAKhwgKAABd/////zAKhwgKAABe/////zAKhwgKAABf/////zAKhwgKAABg//// -/zAKhwgKAABh/////zAKhwgKAABi/////zAKhwgKAABj/////zAKhwgKAABk//// -/zAKhwgKAABl/////zAKhwgKAABm/////zAKhwgKAABn/////zAKhwgKAABo//// -/zAKhwgKAABp/////zAKhwgKAABq/////zAKhwgKAABr/////zAKhwgKAABs//// -/zAKhwgKAABt/////zAKhwgKAABu/////zAKhwgKAABv/////zAKhwgKAABw//// -/zAKhwgKAABx/////zAKhwgKAABy/////zAKhwgKAABz/////zAKhwgKAAB0//// -/zAKhwgKAAB1/////zAKhwgKAAB2/////zAKhwgKAAB3/////zAKhwgKAAB4//// -/zAKhwgKAAB5/////zAKhwgKAAB6/////zAKhwgKAAB7/////zAKhwgKAAB8//// -/zAKhwgKAAB9/////zAKhwgKAAB+/////zAKhwgKAAB//////zAKhwgKAACA//// -/zAKhwgKAACB/////zAKhwgKAACC/////zAKhwgKAACD/////zAKhwgKAACE//// -/zAKhwgKAACF/////zAKhwgKAACG/////zAKhwgKAACH/////zAKhwgKAACI//// -/zAKhwgKAACJ/////zAKhwgKAACK/////zAKhwgKAACL/////zAKhwgKAACM//// -/zAKhwgKAACN/////zAKhwgKAACO/////zAKhwgKAACP/////zAKhwgKAACQ//// -/zAKhwgKAACR/////zAKhwgKAACS/////zAKhwgKAACT/////zAKhwgKAACU//// -/zAKhwgKAACV/////zAKhwgKAACW/////zAKhwgKAACX/////zAKhwgKAACY//// -/zAKhwgKAACZ/////zAKhwgKAACa/////zAKhwgKAACb/////zAKhwgKAACc//// -/zAKhwgKAACd/////zAKhwgKAACe/////zAKhwgKAACf/////zAKhwgKAACg//// -/zAKhwgKAACh/////zAKhwgKAACi/////zAKhwgKAACj/////zAKhwgKAACk//// -/zAKhwgKAACl/////zAKhwgKAACm/////zAKhwgKAACn/////zAKhwgKAACo//// -/zAKhwgKAACp/////zAKhwgKAACq/////zARpA8wDTELMAkGA1UEAwwCdDAwEaQP -MA0xCzAJBgNVBAMMAnQxMBGkDzANMQswCQYDVQQDDAJ0MjARpA8wDTELMAkGA1UE -AwwCdDMwEaQPMA0xCzAJBgNVBAMMAnQ0MBGkDzANMQswCQYDVQQDDAJ0NTARpA8w -DTELMAkGA1UEAwwCdDYwEaQPMA0xCzAJBgNVBAMMAnQ3MBGkDzANMQswCQYDVQQD -DAJ0ODARpA8wDTELMAkGA1UEAwwCdDkwEqQQMA4xDDAKBgNVBAMMA3QxMDASpBAw -DjEMMAoGA1UEAwwDdDExMBKkEDAOMQwwCgYDVQQDDAN0MTIwEqQQMA4xDDAKBgNV -BAMMA3QxMzASpBAwDjEMMAoGA1UEAwwDdDE0MBKkEDAOMQwwCgYDVQQDDAN0MTUw -EqQQMA4xDDAKBgNVBAMMA3QxNjASpBAwDjEMMAoGA1UEAwwDdDE3MBKkEDAOMQww -CgYDVQQDDAN0MTgwEqQQMA4xDDAKBgNVBAMMA3QxOTASpBAwDjEMMAoGA1UEAwwD -dDIwMBKkEDAOMQwwCgYDVQQDDAN0MjEwEqQQMA4xDDAKBgNVBAMMA3QyMjASpBAw -DjEMMAoGA1UEAwwDdDIzMBKkEDAOMQwwCgYDVQQDDAN0MjQwEqQQMA4xDDAKBgNV -BAMMA3QyNTASpBAwDjEMMAoGA1UEAwwDdDI2MBKkEDAOMQwwCgYDVQQDDAN0Mjcw -EqQQMA4xDDAKBgNVBAMMA3QyODASpBAwDjEMMAoGA1UEAwwDdDI5MBKkEDAOMQww -CgYDVQQDDAN0MzAwEqQQMA4xDDAKBgNVBAMMA3QzMTASpBAwDjEMMAoGA1UEAwwD -dDMyMBKkEDAOMQwwCgYDVQQDDAN0MzMwEqQQMA4xDDAKBgNVBAMMA3QzNDASpBAw -DjEMMAoGA1UEAwwDdDM1MBKkEDAOMQwwCgYDVQQDDAN0MzYwEqQQMA4xDDAKBgNV -BAMMA3QzNzASpBAwDjEMMAoGA1UEAwwDdDM4MBKkEDAOMQwwCgYDVQQDDAN0Mzkw -EqQQMA4xDDAKBgNVBAMMA3Q0MDASpBAwDjEMMAoGA1UEAwwDdDQxMBKkEDAOMQww -CgYDVQQDDAN0NDIwEqQQMA4xDDAKBgNVBAMMA3Q0MzASpBAwDjEMMAoGA1UEAwwD -dDQ0MBKkEDAOMQwwCgYDVQQDDAN0NDUwEqQQMA4xDDAKBgNVBAMMA3Q0NjASpBAw -DjEMMAoGA1UEAwwDdDQ3MBKkEDAOMQwwCgYDVQQDDAN0NDgwEqQQMA4xDDAKBgNV -BAMMA3Q0OTASpBAwDjEMMAoGA1UEAwwDdDUwMBKkEDAOMQwwCgYDVQQDDAN0NTEw -EqQQMA4xDDAKBgNVBAMMA3Q1MjASpBAwDjEMMAoGA1UEAwwDdDUzMBKkEDAOMQww -CgYDVQQDDAN0NTQwEqQQMA4xDDAKBgNVBAMMA3Q1NTASpBAwDjEMMAoGA1UEAwwD -dDU2MBKkEDAOMQwwCgYDVQQDDAN0NTcwEqQQMA4xDDAKBgNVBAMMA3Q1ODASpBAw -DjEMMAoGA1UEAwwDdDU5MBKkEDAOMQwwCgYDVQQDDAN0NjAwEqQQMA4xDDAKBgNV -BAMMA3Q2MTASpBAwDjEMMAoGA1UEAwwDdDYyMBKkEDAOMQwwCgYDVQQDDAN0NjMw -EqQQMA4xDDAKBgNVBAMMA3Q2NDASpBAwDjEMMAoGA1UEAwwDdDY1MBKkEDAOMQww -CgYDVQQDDAN0NjYwEqQQMA4xDDAKBgNVBAMMA3Q2NzASpBAwDjEMMAoGA1UEAwwD -dDY4MBKkEDAOMQwwCgYDVQQDDAN0NjkwEqQQMA4xDDAKBgNVBAMMA3Q3MDASpBAw -DjEMMAoGA1UEAwwDdDcxMBKkEDAOMQwwCgYDVQQDDAN0NzIwEqQQMA4xDDAKBgNV -BAMMA3Q3MzASpBAwDjEMMAoGA1UEAwwDdDc0MBKkEDAOMQwwCgYDVQQDDAN0NzUw -EqQQMA4xDDAKBgNVBAMMA3Q3NjASpBAwDjEMMAoGA1UEAwwDdDc3MBKkEDAOMQww -CgYDVQQDDAN0NzgwEqQQMA4xDDAKBgNVBAMMA3Q3OTASpBAwDjEMMAoGA1UEAwwD -dDgwMBKkEDAOMQwwCgYDVQQDDAN0ODEwEqQQMA4xDDAKBgNVBAMMA3Q4MjASpBAw -DjEMMAoGA1UEAwwDdDgzMBKkEDAOMQwwCgYDVQQDDAN0ODQwEqQQMA4xDDAKBgNV -BAMMA3Q4NTASpBAwDjEMMAoGA1UEAwwDdDg2MBKkEDAOMQwwCgYDVQQDDAN0ODcw -EqQQMA4xDDAKBgNVBAMMA3Q4ODASpBAwDjEMMAoGA1UEAwwDdDg5MBKkEDAOMQww -CgYDVQQDDAN0OTAwEqQQMA4xDDAKBgNVBAMMA3Q5MTASpBAwDjEMMAoGA1UEAwwD -dDkyMBKkEDAOMQwwCgYDVQQDDAN0OTMwEqQQMA4xDDAKBgNVBAMMA3Q5NDASpBAw -DjEMMAoGA1UEAwwDdDk1MBKkEDAOMQwwCgYDVQQDDAN0OTYwEqQQMA4xDDAKBgNV -BAMMA3Q5NzASpBAwDjEMMAoGA1UEAwwDdDk4MBKkEDAOMQwwCgYDVQQDDAN0OTkw -E6QRMA8xDTALBgNVBAMMBHQxMDAwE6QRMA8xDTALBgNVBAMMBHQxMDEwE6QRMA8x -DTALBgNVBAMMBHQxMDIwE6QRMA8xDTALBgNVBAMMBHQxMDMwE6QRMA8xDTALBgNV -BAMMBHQxMDQwE6QRMA8xDTALBgNVBAMMBHQxMDUwE6QRMA8xDTALBgNVBAMMBHQx -MDYwE6QRMA8xDTALBgNVBAMMBHQxMDcwE6QRMA8xDTALBgNVBAMMBHQxMDgwE6QR -MA8xDTALBgNVBAMMBHQxMDkwE6QRMA8xDTALBgNVBAMMBHQxMTAwE6QRMA8xDTAL -BgNVBAMMBHQxMTEwE6QRMA8xDTALBgNVBAMMBHQxMTIwE6QRMA8xDTALBgNVBAMM -BHQxMTMwE6QRMA8xDTALBgNVBAMMBHQxMTQwE6QRMA8xDTALBgNVBAMMBHQxMTUw -E6QRMA8xDTALBgNVBAMMBHQxMTYwE6QRMA8xDTALBgNVBAMMBHQxMTcwE6QRMA8x -DTALBgNVBAMMBHQxMTgwE6QRMA8xDTALBgNVBAMMBHQxMTkwE6QRMA8xDTALBgNV -BAMMBHQxMjAwE6QRMA8xDTALBgNVBAMMBHQxMjEwE6QRMA8xDTALBgNVBAMMBHQx -MjIwE6QRMA8xDTALBgNVBAMMBHQxMjMwE6QRMA8xDTALBgNVBAMMBHQxMjQwE6QR -MA8xDTALBgNVBAMMBHQxMjUwE6QRMA8xDTALBgNVBAMMBHQxMjYwE6QRMA8xDTAL -BgNVBAMMBHQxMjcwE6QRMA8xDTALBgNVBAMMBHQxMjgwE6QRMA8xDTALBgNVBAMM -BHQxMjkwE6QRMA8xDTALBgNVBAMMBHQxMzAwE6QRMA8xDTALBgNVBAMMBHQxMzEw -E6QRMA8xDTALBgNVBAMMBHQxMzIwE6QRMA8xDTALBgNVBAMMBHQxMzMwE6QRMA8x -DTALBgNVBAMMBHQxMzQwE6QRMA8xDTALBgNVBAMMBHQxMzUwE6QRMA8xDTALBgNV -BAMMBHQxMzYwE6QRMA8xDTALBgNVBAMMBHQxMzcwE6QRMA8xDTALBgNVBAMMBHQx -MzgwE6QRMA8xDTALBgNVBAMMBHQxMzkwE6QRMA8xDTALBgNVBAMMBHQxNDAwE6QR -MA8xDTALBgNVBAMMBHQxNDEwE6QRMA8xDTALBgNVBAMMBHQxNDIwE6QRMA8xDTAL -BgNVBAMMBHQxNDMwE6QRMA8xDTALBgNVBAMMBHQxNDQwE6QRMA8xDTALBgNVBAMM -BHQxNDUwE6QRMA8xDTALBgNVBAMMBHQxNDYwE6QRMA8xDTALBgNVBAMMBHQxNDcw -E6QRMA8xDTALBgNVBAMMBHQxNDgwE6QRMA8xDTALBgNVBAMMBHQxNDkwE6QRMA8x -DTALBgNVBAMMBHQxNTAwE6QRMA8xDTALBgNVBAMMBHQxNTEwE6QRMA8xDTALBgNV -BAMMBHQxNTIwE6QRMA8xDTALBgNVBAMMBHQxNTMwE6QRMA8xDTALBgNVBAMMBHQx -NTQwE6QRMA8xDTALBgNVBAMMBHQxNTUwE6QRMA8xDTALBgNVBAMMBHQxNTYwE6QR -MA8xDTALBgNVBAMMBHQxNTcwE6QRMA8xDTALBgNVBAMMBHQxNTgwE6QRMA8xDTAL -BgNVBAMMBHQxNTkwE6QRMA8xDTALBgNVBAMMBHQxNjAwE6QRMA8xDTALBgNVBAMM -BHQxNjEwE6QRMA8xDTALBgNVBAMMBHQxNjIwE6QRMA8xDTALBgNVBAMMBHQxNjMw -E6QRMA8xDTALBgNVBAMMBHQxNjQwE6QRMA8xDTALBgNVBAMMBHQxNjUwE6QRMA8x -DTALBgNVBAMMBHQxNjYwE6QRMA8xDTALBgNVBAMMBHQxNjcwE6QRMA8xDTALBgNV -BAMMBHQxNjgwE6QRMA8xDTALBgNVBAMMBHQxNjkwE6QRMA8xDTALBgNVBAMMBHQx -NzAwE6QRMA8xDTALBgNVBAMMBHQxNzGhgh2wMAmCB3gwLnRlc3QwCYIHeDEudGVz -dDAJggd4Mi50ZXN0MAmCB3gzLnRlc3QwCYIHeDQudGVzdDAJggd4NS50ZXN0MAmC -B3g2LnRlc3QwCYIHeDcudGVzdDAJggd4OC50ZXN0MAmCB3g5LnRlc3QwCoIIeDEw -LnRlc3QwCoIIeDExLnRlc3QwCoIIeDEyLnRlc3QwCoIIeDEzLnRlc3QwCoIIeDE0 -LnRlc3QwCoIIeDE1LnRlc3QwCoIIeDE2LnRlc3QwCoIIeDE3LnRlc3QwCoIIeDE4 -LnRlc3QwCoIIeDE5LnRlc3QwCoIIeDIwLnRlc3QwCoIIeDIxLnRlc3QwCoIIeDIy -LnRlc3QwCoIIeDIzLnRlc3QwCoIIeDI0LnRlc3QwCoIIeDI1LnRlc3QwCoIIeDI2 -LnRlc3QwCoIIeDI3LnRlc3QwCoIIeDI4LnRlc3QwCoIIeDI5LnRlc3QwCoIIeDMw -LnRlc3QwCoIIeDMxLnRlc3QwCoIIeDMyLnRlc3QwCoIIeDMzLnRlc3QwCoIIeDM0 -LnRlc3QwCoIIeDM1LnRlc3QwCoIIeDM2LnRlc3QwCoIIeDM3LnRlc3QwCoIIeDM4 -LnRlc3QwCoIIeDM5LnRlc3QwCoIIeDQwLnRlc3QwCoIIeDQxLnRlc3QwCoIIeDQy -LnRlc3QwCoIIeDQzLnRlc3QwCoIIeDQ0LnRlc3QwCoIIeDQ1LnRlc3QwCoIIeDQ2 -LnRlc3QwCoIIeDQ3LnRlc3QwCoIIeDQ4LnRlc3QwCoIIeDQ5LnRlc3QwCoIIeDUw -LnRlc3QwCoIIeDUxLnRlc3QwCoIIeDUyLnRlc3QwCoIIeDUzLnRlc3QwCoIIeDU0 -LnRlc3QwCoIIeDU1LnRlc3QwCoIIeDU2LnRlc3QwCoIIeDU3LnRlc3QwCoIIeDU4 -LnRlc3QwCoIIeDU5LnRlc3QwCoIIeDYwLnRlc3QwCoIIeDYxLnRlc3QwCoIIeDYy -LnRlc3QwCoIIeDYzLnRlc3QwCoIIeDY0LnRlc3QwCoIIeDY1LnRlc3QwCoIIeDY2 -LnRlc3QwCoIIeDY3LnRlc3QwCoIIeDY4LnRlc3QwCoIIeDY5LnRlc3QwCoIIeDcw -LnRlc3QwCoIIeDcxLnRlc3QwCoIIeDcyLnRlc3QwCoIIeDczLnRlc3QwCoIIeDc0 -LnRlc3QwCoIIeDc1LnRlc3QwCoIIeDc2LnRlc3QwCoIIeDc3LnRlc3QwCoIIeDc4 -LnRlc3QwCoIIeDc5LnRlc3QwCoIIeDgwLnRlc3QwCoIIeDgxLnRlc3QwCoIIeDgy -LnRlc3QwCoIIeDgzLnRlc3QwCoIIeDg0LnRlc3QwCoIIeDg1LnRlc3QwCoIIeDg2 -LnRlc3QwCoIIeDg3LnRlc3QwCoIIeDg4LnRlc3QwCoIIeDg5LnRlc3QwCoIIeDkw -LnRlc3QwCoIIeDkxLnRlc3QwCoIIeDkyLnRlc3QwCoIIeDkzLnRlc3QwCoIIeDk0 -LnRlc3QwCoIIeDk1LnRlc3QwCoIIeDk2LnRlc3QwCoIIeDk3LnRlc3QwCoIIeDk4 -LnRlc3QwCoIIeDk5LnRlc3QwC4IJeDEwMC50ZXN0MAuCCXgxMDEudGVzdDALggl4 -MTAyLnRlc3QwC4IJeDEwMy50ZXN0MAuCCXgxMDQudGVzdDALggl4MTA1LnRlc3Qw -C4IJeDEwNi50ZXN0MAuCCXgxMDcudGVzdDALggl4MTA4LnRlc3QwC4IJeDEwOS50 -ZXN0MAuCCXgxMTAudGVzdDALggl4MTExLnRlc3QwC4IJeDExMi50ZXN0MAuCCXgx -MTMudGVzdDALggl4MTE0LnRlc3QwC4IJeDExNS50ZXN0MAuCCXgxMTYudGVzdDAL -ggl4MTE3LnRlc3QwC4IJeDExOC50ZXN0MAuCCXgxMTkudGVzdDALggl4MTIwLnRl -c3QwC4IJeDEyMS50ZXN0MAuCCXgxMjIudGVzdDALggl4MTIzLnRlc3QwC4IJeDEy -NC50ZXN0MAuCCXgxMjUudGVzdDALggl4MTI2LnRlc3QwC4IJeDEyNy50ZXN0MAuC -CXgxMjgudGVzdDALggl4MTI5LnRlc3QwC4IJeDEzMC50ZXN0MAuCCXgxMzEudGVz -dDALggl4MTMyLnRlc3QwC4IJeDEzMy50ZXN0MAuCCXgxMzQudGVzdDALggl4MTM1 -LnRlc3QwC4IJeDEzNi50ZXN0MAuCCXgxMzcudGVzdDALggl4MTM4LnRlc3QwC4IJ -eDEzOS50ZXN0MAuCCXgxNDAudGVzdDALggl4MTQxLnRlc3QwC4IJeDE0Mi50ZXN0 -MAuCCXgxNDMudGVzdDALggl4MTQ0LnRlc3QwC4IJeDE0NS50ZXN0MAuCCXgxNDYu -dGVzdDALggl4MTQ3LnRlc3QwC4IJeDE0OC50ZXN0MAuCCXgxNDkudGVzdDALggl4 -MTUwLnRlc3QwC4IJeDE1MS50ZXN0MAuCCXgxNTIudGVzdDALggl4MTUzLnRlc3Qw -C4IJeDE1NC50ZXN0MAuCCXgxNTUudGVzdDALggl4MTU2LnRlc3QwC4IJeDE1Ny50 -ZXN0MAuCCXgxNTgudGVzdDALggl4MTU5LnRlc3QwC4IJeDE2MC50ZXN0MAuCCXgx -NjEudGVzdDALggl4MTYyLnRlc3QwC4IJeDE2My50ZXN0MAuCCXgxNjQudGVzdDAL -ggl4MTY1LnRlc3QwC4IJeDE2Ni50ZXN0MAuCCXgxNjcudGVzdDALggl4MTY4LnRl -c3QwC4IJeDE2OS50ZXN0MAqHCAsAAAD/////MAqHCAsAAAH/////MAqHCAsAAAL/ -////MAqHCAsAAAP/////MAqHCAsAAAT/////MAqHCAsAAAX/////MAqHCAsAAAb/ -////MAqHCAsAAAf/////MAqHCAsAAAj/////MAqHCAsAAAn/////MAqHCAsAAAr/ -////MAqHCAsAAAv/////MAqHCAsAAAz/////MAqHCAsAAA3/////MAqHCAsAAA7/ -////MAqHCAsAAA//////MAqHCAsAABD/////MAqHCAsAABH/////MAqHCAsAABL/ -////MAqHCAsAABP/////MAqHCAsAABT/////MAqHCAsAABX/////MAqHCAsAABb/ -////MAqHCAsAABf/////MAqHCAsAABj/////MAqHCAsAABn/////MAqHCAsAABr/ -////MAqHCAsAABv/////MAqHCAsAABz/////MAqHCAsAAB3/////MAqHCAsAAB7/ -////MAqHCAsAAB//////MAqHCAsAACD/////MAqHCAsAACH/////MAqHCAsAACL/ -////MAqHCAsAACP/////MAqHCAsAACT/////MAqHCAsAACX/////MAqHCAsAACb/ -////MAqHCAsAACf/////MAqHCAsAACj/////MAqHCAsAACn/////MAqHCAsAACr/ -////MAqHCAsAACv/////MAqHCAsAACz/////MAqHCAsAAC3/////MAqHCAsAAC7/ -////MAqHCAsAAC//////MAqHCAsAADD/////MAqHCAsAADH/////MAqHCAsAADL/ -////MAqHCAsAADP/////MAqHCAsAADT/////MAqHCAsAADX/////MAqHCAsAADb/ -////MAqHCAsAADf/////MAqHCAsAADj/////MAqHCAsAADn/////MAqHCAsAADr/ -////MAqHCAsAADv/////MAqHCAsAADz/////MAqHCAsAAD3/////MAqHCAsAAD7/ -////MAqHCAsAAD//////MAqHCAsAAED/////MAqHCAsAAEH/////MAqHCAsAAEL/ -////MAqHCAsAAEP/////MAqHCAsAAET/////MAqHCAsAAEX/////MAqHCAsAAEb/ -////MAqHCAsAAEf/////MAqHCAsAAEj/////MAqHCAsAAEn/////MAqHCAsAAEr/ -////MAqHCAsAAEv/////MAqHCAsAAEz/////MAqHCAsAAE3/////MAqHCAsAAE7/ -////MAqHCAsAAE//////MAqHCAsAAFD/////MAqHCAsAAFH/////MAqHCAsAAFL/ -////MAqHCAsAAFP/////MAqHCAsAAFT/////MAqHCAsAAFX/////MAqHCAsAAFb/ -////MAqHCAsAAFf/////MAqHCAsAAFj/////MAqHCAsAAFn/////MAqHCAsAAFr/ -////MAqHCAsAAFv/////MAqHCAsAAFz/////MAqHCAsAAF3/////MAqHCAsAAF7/ -////MAqHCAsAAF//////MAqHCAsAAGD/////MAqHCAsAAGH/////MAqHCAsAAGL/ -////MAqHCAsAAGP/////MAqHCAsAAGT/////MAqHCAsAAGX/////MAqHCAsAAGb/ -////MAqHCAsAAGf/////MAqHCAsAAGj/////MAqHCAsAAGn/////MAqHCAsAAGr/ -////MAqHCAsAAGv/////MAqHCAsAAGz/////MAqHCAsAAG3/////MAqHCAsAAG7/ -////MAqHCAsAAG//////MAqHCAsAAHD/////MAqHCAsAAHH/////MAqHCAsAAHL/ -////MAqHCAsAAHP/////MAqHCAsAAHT/////MAqHCAsAAHX/////MAqHCAsAAHb/ -////MAqHCAsAAHf/////MAqHCAsAAHj/////MAqHCAsAAHn/////MAqHCAsAAHr/ -////MAqHCAsAAHv/////MAqHCAsAAHz/////MAqHCAsAAH3/////MAqHCAsAAH7/ -////MAqHCAsAAH//////MAqHCAsAAID/////MAqHCAsAAIH/////MAqHCAsAAIL/ -////MAqHCAsAAIP/////MAqHCAsAAIT/////MAqHCAsAAIX/////MAqHCAsAAIb/ -////MAqHCAsAAIf/////MAqHCAsAAIj/////MAqHCAsAAIn/////MAqHCAsAAIr/ -////MAqHCAsAAIv/////MAqHCAsAAIz/////MAqHCAsAAI3/////MAqHCAsAAI7/ -////MAqHCAsAAI//////MAqHCAsAAJD/////MAqHCAsAAJH/////MAqHCAsAAJL/ -////MAqHCAsAAJP/////MAqHCAsAAJT/////MAqHCAsAAJX/////MAqHCAsAAJb/ -////MAqHCAsAAJf/////MAqHCAsAAJj/////MAqHCAsAAJn/////MAqHCAsAAJr/ -////MAqHCAsAAJv/////MAqHCAsAAJz/////MAqHCAsAAJ3/////MAqHCAsAAJ7/ -////MAqHCAsAAJ//////MAqHCAsAAKD/////MAqHCAsAAKH/////MAqHCAsAAKL/ -////MAqHCAsAAKP/////MAqHCAsAAKT/////MAqHCAsAAKX/////MAqHCAsAAKb/ -////MAqHCAsAAKf/////MAqHCAsAAKj/////MAqHCAsAAKn/////MBGkDzANMQsw -CQYDVQQDDAJ4MDARpA8wDTELMAkGA1UEAwwCeDEwEaQPMA0xCzAJBgNVBAMMAngy -MBGkDzANMQswCQYDVQQDDAJ4MzARpA8wDTELMAkGA1UEAwwCeDQwEaQPMA0xCzAJ -BgNVBAMMAng1MBGkDzANMQswCQYDVQQDDAJ4NjARpA8wDTELMAkGA1UEAwwCeDcw -EaQPMA0xCzAJBgNVBAMMAng4MBGkDzANMQswCQYDVQQDDAJ4OTASpBAwDjEMMAoG -A1UEAwwDeDEwMBKkEDAOMQwwCgYDVQQDDAN4MTEwEqQQMA4xDDAKBgNVBAMMA3gx -MjASpBAwDjEMMAoGA1UEAwwDeDEzMBKkEDAOMQwwCgYDVQQDDAN4MTQwEqQQMA4x -DDAKBgNVBAMMA3gxNTASpBAwDjEMMAoGA1UEAwwDeDE2MBKkEDAOMQwwCgYDVQQD -DAN4MTcwEqQQMA4xDDAKBgNVBAMMA3gxODASpBAwDjEMMAoGA1UEAwwDeDE5MBKk -EDAOMQwwCgYDVQQDDAN4MjAwEqQQMA4xDDAKBgNVBAMMA3gyMTASpBAwDjEMMAoG -A1UEAwwDeDIyMBKkEDAOMQwwCgYDVQQDDAN4MjMwEqQQMA4xDDAKBgNVBAMMA3gy -NDASpBAwDjEMMAoGA1UEAwwDeDI1MBKkEDAOMQwwCgYDVQQDDAN4MjYwEqQQMA4x -DDAKBgNVBAMMA3gyNzASpBAwDjEMMAoGA1UEAwwDeDI4MBKkEDAOMQwwCgYDVQQD -DAN4MjkwEqQQMA4xDDAKBgNVBAMMA3gzMDASpBAwDjEMMAoGA1UEAwwDeDMxMBKk -EDAOMQwwCgYDVQQDDAN4MzIwEqQQMA4xDDAKBgNVBAMMA3gzMzASpBAwDjEMMAoG -A1UEAwwDeDM0MBKkEDAOMQwwCgYDVQQDDAN4MzUwEqQQMA4xDDAKBgNVBAMMA3gz -NjASpBAwDjEMMAoGA1UEAwwDeDM3MBKkEDAOMQwwCgYDVQQDDAN4MzgwEqQQMA4x -DDAKBgNVBAMMA3gzOTASpBAwDjEMMAoGA1UEAwwDeDQwMBKkEDAOMQwwCgYDVQQD -DAN4NDEwEqQQMA4xDDAKBgNVBAMMA3g0MjASpBAwDjEMMAoGA1UEAwwDeDQzMBKk -EDAOMQwwCgYDVQQDDAN4NDQwEqQQMA4xDDAKBgNVBAMMA3g0NTASpBAwDjEMMAoG -A1UEAwwDeDQ2MBKkEDAOMQwwCgYDVQQDDAN4NDcwEqQQMA4xDDAKBgNVBAMMA3g0 -ODASpBAwDjEMMAoGA1UEAwwDeDQ5MBKkEDAOMQwwCgYDVQQDDAN4NTAwEqQQMA4x -DDAKBgNVBAMMA3g1MTASpBAwDjEMMAoGA1UEAwwDeDUyMBKkEDAOMQwwCgYDVQQD -DAN4NTMwEqQQMA4xDDAKBgNVBAMMA3g1NDASpBAwDjEMMAoGA1UEAwwDeDU1MBKk -EDAOMQwwCgYDVQQDDAN4NTYwEqQQMA4xDDAKBgNVBAMMA3g1NzASpBAwDjEMMAoG -A1UEAwwDeDU4MBKkEDAOMQwwCgYDVQQDDAN4NTkwEqQQMA4xDDAKBgNVBAMMA3g2 -MDASpBAwDjEMMAoGA1UEAwwDeDYxMBKkEDAOMQwwCgYDVQQDDAN4NjIwEqQQMA4x -DDAKBgNVBAMMA3g2MzASpBAwDjEMMAoGA1UEAwwDeDY0MBKkEDAOMQwwCgYDVQQD -DAN4NjUwEqQQMA4xDDAKBgNVBAMMA3g2NjASpBAwDjEMMAoGA1UEAwwDeDY3MBKk -EDAOMQwwCgYDVQQDDAN4NjgwEqQQMA4xDDAKBgNVBAMMA3g2OTASpBAwDjEMMAoG -A1UEAwwDeDcwMBKkEDAOMQwwCgYDVQQDDAN4NzEwEqQQMA4xDDAKBgNVBAMMA3g3 -MjASpBAwDjEMMAoGA1UEAwwDeDczMBKkEDAOMQwwCgYDVQQDDAN4NzQwEqQQMA4x -DDAKBgNVBAMMA3g3NTASpBAwDjEMMAoGA1UEAwwDeDc2MBKkEDAOMQwwCgYDVQQD -DAN4NzcwEqQQMA4xDDAKBgNVBAMMA3g3ODASpBAwDjEMMAoGA1UEAwwDeDc5MBKk -EDAOMQwwCgYDVQQDDAN4ODAwEqQQMA4xDDAKBgNVBAMMA3g4MTASpBAwDjEMMAoG -A1UEAwwDeDgyMBKkEDAOMQwwCgYDVQQDDAN4ODMwEqQQMA4xDDAKBgNVBAMMA3g4 -NDASpBAwDjEMMAoGA1UEAwwDeDg1MBKkEDAOMQwwCgYDVQQDDAN4ODYwEqQQMA4x -DDAKBgNVBAMMA3g4NzASpBAwDjEMMAoGA1UEAwwDeDg4MBKkEDAOMQwwCgYDVQQD -DAN4ODkwEqQQMA4xDDAKBgNVBAMMA3g5MDASpBAwDjEMMAoGA1UEAwwDeDkxMBKk -EDAOMQwwCgYDVQQDDAN4OTIwEqQQMA4xDDAKBgNVBAMMA3g5MzASpBAwDjEMMAoG -A1UEAwwDeDk0MBKkEDAOMQwwCgYDVQQDDAN4OTUwEqQQMA4xDDAKBgNVBAMMA3g5 -NjASpBAwDjEMMAoGA1UEAwwDeDk3MBKkEDAOMQwwCgYDVQQDDAN4OTgwEqQQMA4x -DDAKBgNVBAMMA3g5OTATpBEwDzENMAsGA1UEAwwEeDEwMDATpBEwDzENMAsGA1UE -AwwEeDEwMTATpBEwDzENMAsGA1UEAwwEeDEwMjATpBEwDzENMAsGA1UEAwwEeDEw -MzATpBEwDzENMAsGA1UEAwwEeDEwNDATpBEwDzENMAsGA1UEAwwEeDEwNTATpBEw -DzENMAsGA1UEAwwEeDEwNjATpBEwDzENMAsGA1UEAwwEeDEwNzATpBEwDzENMAsG -A1UEAwwEeDEwODATpBEwDzENMAsGA1UEAwwEeDEwOTATpBEwDzENMAsGA1UEAwwE -eDExMDATpBEwDzENMAsGA1UEAwwEeDExMTATpBEwDzENMAsGA1UEAwwEeDExMjAT -pBEwDzENMAsGA1UEAwwEeDExMzATpBEwDzENMAsGA1UEAwwEeDExNDATpBEwDzEN -MAsGA1UEAwwEeDExNTATpBEwDzENMAsGA1UEAwwEeDExNjATpBEwDzENMAsGA1UE -AwwEeDExNzATpBEwDzENMAsGA1UEAwwEeDExODATpBEwDzENMAsGA1UEAwwEeDEx -OTATpBEwDzENMAsGA1UEAwwEeDEyMDATpBEwDzENMAsGA1UEAwwEeDEyMTATpBEw -DzENMAsGA1UEAwwEeDEyMjATpBEwDzENMAsGA1UEAwwEeDEyMzATpBEwDzENMAsG -A1UEAwwEeDEyNDATpBEwDzENMAsGA1UEAwwEeDEyNTATpBEwDzENMAsGA1UEAwwE -eDEyNjATpBEwDzENMAsGA1UEAwwEeDEyNzATpBEwDzENMAsGA1UEAwwEeDEyODAT -pBEwDzENMAsGA1UEAwwEeDEyOTATpBEwDzENMAsGA1UEAwwEeDEzMDATpBEwDzEN -MAsGA1UEAwwEeDEzMTATpBEwDzENMAsGA1UEAwwEeDEzMjATpBEwDzENMAsGA1UE -AwwEeDEzMzATpBEwDzENMAsGA1UEAwwEeDEzNDATpBEwDzENMAsGA1UEAwwEeDEz -NTATpBEwDzENMAsGA1UEAwwEeDEzNjATpBEwDzENMAsGA1UEAwwEeDEzNzATpBEw -DzENMAsGA1UEAwwEeDEzODATpBEwDzENMAsGA1UEAwwEeDEzOTATpBEwDzENMAsG -A1UEAwwEeDE0MDATpBEwDzENMAsGA1UEAwwEeDE0MTATpBEwDzENMAsGA1UEAwwE -eDE0MjATpBEwDzENMAsGA1UEAwwEeDE0MzATpBEwDzENMAsGA1UEAwwEeDE0NDAT -pBEwDzENMAsGA1UEAwwEeDE0NTATpBEwDzENMAsGA1UEAwwEeDE0NjATpBEwDzEN -MAsGA1UEAwwEeDE0NzATpBEwDzENMAsGA1UEAwwEeDE0ODATpBEwDzENMAsGA1UE -AwwEeDE0OTATpBEwDzENMAsGA1UEAwwEeDE1MDATpBEwDzENMAsGA1UEAwwEeDE1 -MTATpBEwDzENMAsGA1UEAwwEeDE1MjATpBEwDzENMAsGA1UEAwwEeDE1MzATpBEw -DzENMAsGA1UEAwwEeDE1NDATpBEwDzENMAsGA1UEAwwEeDE1NTATpBEwDzENMAsG -A1UEAwwEeDE1NjATpBEwDzENMAsGA1UEAwwEeDE1NzATpBEwDzENMAsGA1UEAwwE -eDE1ODATpBEwDzENMAsGA1UEAwwEeDE1OTATpBEwDzENMAsGA1UEAwwEeDE2MDAT -pBEwDzENMAsGA1UEAwwEeDE2MTATpBEwDzENMAsGA1UEAwwEeDE2MjATpBEwDzEN -MAsGA1UEAwwEeDE2MzATpBEwDzENMAsGA1UEAwwEeDE2NDATpBEwDzENMAsGA1UE -AwwEeDE2NTATpBEwDzENMAsGA1UEAwwEeDE2NjATpBEwDzENMAsGA1UEAwwEeDE2 -NzATpBEwDzENMAsGA1UEAwwEeDE2ODATpBEwDzENMAsGA1UEAwwEeDE2OTANBgkq -hkiG9w0BAQsFAAOCAQEAn8uDe+I8Vycl7II/MML/ElFxP9WUBRpbWESAtIke4IlF -5eNyi8TYylSj2/Kj/RYAwYYh4u3jbJR+Ca7tNhzjl289CrE5eHqzuc7DaO5gJ3zL -azM8X6JqmdQIKukhBOoS2ShTH8yvq0GjbjT6VlZE1cUQvfQ3O0WUdBmySc8PmJR1 -aOxOb7BBrPc4Ah3dHxT2tcYMorKnB3WZVE7+aAwdrqCQ19VkYBX/x/0x2qtQQ0S3 -zD/S7uQDPqCdjoFIIYY0Zie+snMBK2XuUTtXP3ZRrYL8fsnOiTgEX8n2QWIyYLK5 -0f5OeNaleVZ7V+QdQnofqvew0IK61PG7+Zzsyuf3CQ== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.cnf deleted file mode 100644 index 5a2efa97c4..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.cnf +++ /dev/null @@ -1,1092 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Intermediate" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,keyCertSign,cRLSign -basicConstraints = critical,CA:true -nameConstraints = @nameConstraints_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Intermediate_2.pem -new_certs_dir = out -serial = out/Intermediate.serial -database = out/Intermediate.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Intermediate.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Intermediate.cer - -[crl_info] -URI.0 = http://url-for-crl/Intermediate.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[nameConstraints_info] -excluded;DNS.1 = x0.test -excluded;DNS.2 = x1.test -excluded;DNS.3 = x2.test -excluded;DNS.4 = x3.test -excluded;DNS.5 = x4.test -excluded;DNS.6 = x5.test -excluded;DNS.7 = x6.test -excluded;DNS.8 = x7.test -excluded;DNS.9 = x8.test -excluded;DNS.10 = x9.test -excluded;DNS.11 = x10.test -excluded;DNS.12 = x11.test -excluded;DNS.13 = x12.test -excluded;DNS.14 = x13.test -excluded;DNS.15 = x14.test -excluded;DNS.16 = x15.test -excluded;DNS.17 = x16.test -excluded;DNS.18 = x17.test -excluded;DNS.19 = x18.test -excluded;DNS.20 = x19.test -excluded;DNS.21 = x20.test -excluded;DNS.22 = x21.test -excluded;DNS.23 = x22.test -excluded;DNS.24 = x23.test -excluded;DNS.25 = x24.test -excluded;DNS.26 = x25.test -excluded;DNS.27 = x26.test -excluded;DNS.28 = x27.test -excluded;DNS.29 = x28.test -excluded;DNS.30 = x29.test -excluded;DNS.31 = x30.test -excluded;DNS.32 = x31.test -excluded;DNS.33 = x32.test -excluded;DNS.34 = x33.test -excluded;DNS.35 = x34.test -excluded;DNS.36 = x35.test -excluded;DNS.37 = x36.test -excluded;DNS.38 = x37.test -excluded;DNS.39 = x38.test -excluded;DNS.40 = x39.test -excluded;DNS.41 = x40.test -excluded;DNS.42 = x41.test -excluded;DNS.43 = x42.test -excluded;DNS.44 = x43.test -excluded;DNS.45 = x44.test -excluded;DNS.46 = x45.test -excluded;DNS.47 = x46.test -excluded;DNS.48 = x47.test -excluded;DNS.49 = x48.test -excluded;DNS.50 = x49.test -excluded;DNS.51 = x50.test -excluded;DNS.52 = x51.test -excluded;DNS.53 = x52.test -excluded;DNS.54 = x53.test -excluded;DNS.55 = x54.test -excluded;DNS.56 = x55.test -excluded;DNS.57 = x56.test -excluded;DNS.58 = x57.test -excluded;DNS.59 = x58.test -excluded;DNS.60 = x59.test -excluded;DNS.61 = x60.test -excluded;DNS.62 = x61.test -excluded;DNS.63 = x62.test -excluded;DNS.64 = x63.test -excluded;DNS.65 = x64.test -excluded;DNS.66 = x65.test -excluded;DNS.67 = x66.test -excluded;DNS.68 = x67.test -excluded;DNS.69 = x68.test -excluded;DNS.70 = x69.test -excluded;DNS.71 = x70.test -excluded;DNS.72 = x71.test -excluded;DNS.73 = x72.test -excluded;DNS.74 = x73.test -excluded;DNS.75 = x74.test -excluded;DNS.76 = x75.test -excluded;DNS.77 = x76.test -excluded;DNS.78 = x77.test -excluded;DNS.79 = x78.test -excluded;DNS.80 = x79.test -excluded;DNS.81 = x80.test -excluded;DNS.82 = x81.test -excluded;DNS.83 = x82.test -excluded;DNS.84 = x83.test -excluded;DNS.85 = x84.test -excluded;DNS.86 = x85.test -excluded;DNS.87 = x86.test -excluded;DNS.88 = x87.test -excluded;DNS.89 = x88.test -excluded;DNS.90 = x89.test -excluded;DNS.91 = x90.test -excluded;DNS.92 = x91.test -excluded;DNS.93 = x92.test -excluded;DNS.94 = x93.test -excluded;DNS.95 = x94.test -excluded;DNS.96 = x95.test -excluded;DNS.97 = x96.test -excluded;DNS.98 = x97.test -excluded;DNS.99 = x98.test -excluded;DNS.100 = x99.test -excluded;DNS.101 = x100.test -excluded;DNS.102 = x101.test -excluded;DNS.103 = x102.test -excluded;DNS.104 = x103.test -excluded;DNS.105 = x104.test -excluded;DNS.106 = x105.test -excluded;DNS.107 = x106.test -excluded;DNS.108 = x107.test -excluded;DNS.109 = x108.test -excluded;DNS.110 = x109.test -excluded;DNS.111 = x110.test -excluded;DNS.112 = x111.test -excluded;DNS.113 = x112.test -excluded;DNS.114 = x113.test -excluded;DNS.115 = x114.test -excluded;DNS.116 = x115.test -excluded;DNS.117 = x116.test -excluded;DNS.118 = x117.test -excluded;DNS.119 = x118.test -excluded;DNS.120 = x119.test -excluded;DNS.121 = x120.test -excluded;DNS.122 = x121.test -excluded;DNS.123 = x122.test -excluded;DNS.124 = x123.test -excluded;DNS.125 = x124.test -excluded;DNS.126 = x125.test -excluded;DNS.127 = x126.test -excluded;DNS.128 = x127.test -excluded;DNS.129 = x128.test -excluded;DNS.130 = x129.test -excluded;DNS.131 = x130.test -excluded;DNS.132 = x131.test -excluded;DNS.133 = x132.test -excluded;DNS.134 = x133.test -excluded;DNS.135 = x134.test -excluded;DNS.136 = x135.test -excluded;DNS.137 = x136.test -excluded;DNS.138 = x137.test -excluded;DNS.139 = x138.test -excluded;DNS.140 = x139.test -excluded;DNS.141 = x140.test -excluded;DNS.142 = x141.test -excluded;DNS.143 = x142.test -excluded;DNS.144 = x143.test -excluded;DNS.145 = x144.test -excluded;DNS.146 = x145.test -excluded;DNS.147 = x146.test -excluded;DNS.148 = x147.test -excluded;DNS.149 = x148.test -excluded;DNS.150 = x149.test -excluded;DNS.151 = x150.test -excluded;DNS.152 = x151.test -excluded;DNS.153 = x152.test -excluded;DNS.154 = x153.test -excluded;DNS.155 = x154.test -excluded;DNS.156 = x155.test -excluded;DNS.157 = x156.test -excluded;DNS.158 = x157.test -excluded;DNS.159 = x158.test -excluded;DNS.160 = x159.test -excluded;DNS.161 = x160.test -excluded;DNS.162 = x161.test -excluded;DNS.163 = x162.test -excluded;DNS.164 = x163.test -excluded;DNS.165 = x164.test -excluded;DNS.166 = x165.test -excluded;DNS.167 = x166.test -excluded;DNS.168 = x167.test -excluded;DNS.169 = x168.test -excluded;DNS.170 = x169.test -excluded;DNS.171 = x170.test -excluded;DNS.172 = x171.test -excluded;DNS.173 = x172.test -excluded;DNS.174 = x173.test -excluded;DNS.175 = x174.test -excluded;DNS.176 = x175.test -excluded;DNS.177 = x176.test -excluded;DNS.178 = x177.test -excluded;DNS.179 = x178.test -excluded;DNS.180 = x179.test -excluded;DNS.181 = x180.test -excluded;DNS.182 = x181.test -excluded;DNS.183 = x182.test -excluded;DNS.184 = x183.test -excluded;DNS.185 = x184.test -excluded;DNS.186 = x185.test -excluded;DNS.187 = x186.test -excluded;DNS.188 = x187.test -excluded;DNS.189 = x188.test -excluded;DNS.190 = x189.test -excluded;DNS.191 = x190.test -excluded;DNS.192 = x191.test -excluded;DNS.193 = x192.test -excluded;DNS.194 = x193.test -excluded;DNS.195 = x194.test -excluded;DNS.196 = x195.test -excluded;DNS.197 = x196.test -excluded;DNS.198 = x197.test -excluded;DNS.199 = x198.test -excluded;DNS.200 = x199.test -excluded;DNS.201 = x200.test -excluded;DNS.202 = x201.test -excluded;DNS.203 = x202.test -excluded;DNS.204 = x203.test -excluded;DNS.205 = x204.test -excluded;DNS.206 = x205.test -excluded;DNS.207 = x206.test -excluded;DNS.208 = x207.test -excluded;DNS.209 = x208.test -excluded;DNS.210 = x209.test -excluded;DNS.211 = x210.test -excluded;DNS.212 = x211.test -excluded;DNS.213 = x212.test -excluded;DNS.214 = x213.test -excluded;DNS.215 = x214.test -excluded;DNS.216 = x215.test -excluded;DNS.217 = x216.test -excluded;DNS.218 = x217.test -excluded;DNS.219 = x218.test -excluded;DNS.220 = x219.test -excluded;DNS.221 = x220.test -excluded;DNS.222 = x221.test -excluded;DNS.223 = x222.test -excluded;DNS.224 = x223.test -excluded;DNS.225 = x224.test -excluded;DNS.226 = x225.test -excluded;DNS.227 = x226.test -excluded;DNS.228 = x227.test -excluded;DNS.229 = x228.test -excluded;DNS.230 = x229.test -excluded;DNS.231 = x230.test -excluded;DNS.232 = x231.test -excluded;DNS.233 = x232.test -excluded;DNS.234 = x233.test -excluded;DNS.235 = x234.test -excluded;DNS.236 = x235.test -excluded;DNS.237 = x236.test -excluded;DNS.238 = x237.test -excluded;DNS.239 = x238.test -excluded;DNS.240 = x239.test -excluded;DNS.241 = x240.test -excluded;DNS.242 = x241.test -excluded;DNS.243 = x242.test -excluded;DNS.244 = x243.test -excluded;DNS.245 = x244.test -excluded;DNS.246 = x245.test -excluded;DNS.247 = x246.test -excluded;DNS.248 = x247.test -excluded;DNS.249 = x248.test -excluded;DNS.250 = x249.test -excluded;DNS.251 = x250.test -excluded;DNS.252 = x251.test -excluded;DNS.253 = x252.test -excluded;DNS.254 = x253.test -excluded;DNS.255 = x254.test -excluded;DNS.256 = x255.test -excluded;DNS.257 = x256.test -excluded;DNS.258 = x257.test -excluded;DNS.259 = x258.test -excluded;DNS.260 = x259.test -excluded;DNS.261 = x260.test -excluded;DNS.262 = x261.test -excluded;DNS.263 = x262.test -excluded;DNS.264 = x263.test -excluded;DNS.265 = x264.test -excluded;DNS.266 = x265.test -excluded;DNS.267 = x266.test -excluded;DNS.268 = x267.test -excluded;DNS.269 = x268.test -excluded;DNS.270 = x269.test -excluded;DNS.271 = x270.test -excluded;DNS.272 = x271.test -excluded;DNS.273 = x272.test -excluded;DNS.274 = x273.test -excluded;DNS.275 = x274.test -excluded;DNS.276 = x275.test -excluded;DNS.277 = x276.test -excluded;DNS.278 = x277.test -excluded;DNS.279 = x278.test -excluded;DNS.280 = x279.test -excluded;DNS.281 = x280.test -excluded;DNS.282 = x281.test -excluded;DNS.283 = x282.test -excluded;DNS.284 = x283.test -excluded;DNS.285 = x284.test -excluded;DNS.286 = x285.test -excluded;DNS.287 = x286.test -excluded;DNS.288 = x287.test -excluded;DNS.289 = x288.test -excluded;DNS.290 = x289.test -excluded;DNS.291 = x290.test -excluded;DNS.292 = x291.test -excluded;DNS.293 = x292.test -excluded;DNS.294 = x293.test -excluded;DNS.295 = x294.test -excluded;DNS.296 = x295.test -excluded;DNS.297 = x296.test -excluded;DNS.298 = x297.test -excluded;DNS.299 = x298.test -excluded;DNS.300 = x299.test -excluded;DNS.301 = x300.test -excluded;DNS.302 = x301.test -excluded;DNS.303 = x302.test -excluded;DNS.304 = x303.test -excluded;DNS.305 = x304.test -excluded;DNS.306 = x305.test -excluded;DNS.307 = x306.test -excluded;DNS.308 = x307.test -excluded;DNS.309 = x308.test -excluded;DNS.310 = x309.test -excluded;DNS.311 = x310.test -excluded;DNS.312 = x311.test -excluded;DNS.313 = x312.test -excluded;DNS.314 = x313.test -excluded;DNS.315 = x314.test -excluded;DNS.316 = x315.test -excluded;DNS.317 = x316.test -excluded;DNS.318 = x317.test -excluded;DNS.319 = x318.test -excluded;DNS.320 = x319.test -excluded;DNS.321 = x320.test -excluded;DNS.322 = x321.test -excluded;DNS.323 = x322.test -excluded;DNS.324 = x323.test -excluded;DNS.325 = x324.test -excluded;DNS.326 = x325.test -excluded;DNS.327 = x326.test -excluded;DNS.328 = x327.test -excluded;DNS.329 = x328.test -excluded;DNS.330 = x329.test -excluded;DNS.331 = x330.test -excluded;DNS.332 = x331.test -excluded;DNS.333 = x332.test -excluded;DNS.334 = x333.test -excluded;DNS.335 = x334.test -excluded;DNS.336 = x335.test -excluded;DNS.337 = x336.test -excluded;DNS.338 = x337.test -excluded;DNS.339 = x338.test -excluded;DNS.340 = x339.test -excluded;DNS.341 = x340.test -excluded;DNS.342 = x341.test -excluded;DNS.343 = x342.test -excluded;DNS.344 = x343.test -excluded;DNS.345 = x344.test -excluded;DNS.346 = x345.test -excluded;DNS.347 = x346.test -excluded;DNS.348 = x347.test -excluded;DNS.349 = x348.test -excluded;DNS.350 = x349.test -excluded;DNS.351 = x350.test -excluded;DNS.352 = x351.test -excluded;DNS.353 = x352.test -excluded;DNS.354 = x353.test -excluded;DNS.355 = x354.test -excluded;DNS.356 = x355.test -excluded;DNS.357 = x356.test -excluded;DNS.358 = x357.test -excluded;DNS.359 = x358.test -excluded;DNS.360 = x359.test -excluded;DNS.361 = x360.test -excluded;DNS.362 = x361.test -excluded;DNS.363 = x362.test -excluded;DNS.364 = x363.test -excluded;DNS.365 = x364.test -excluded;DNS.366 = x365.test -excluded;DNS.367 = x366.test -excluded;DNS.368 = x367.test -excluded;DNS.369 = x368.test -excluded;DNS.370 = x369.test -excluded;DNS.371 = x370.test -excluded;DNS.372 = x371.test -excluded;DNS.373 = x372.test -excluded;DNS.374 = x373.test -excluded;DNS.375 = x374.test -excluded;DNS.376 = x375.test -excluded;DNS.377 = x376.test -excluded;DNS.378 = x377.test -excluded;DNS.379 = x378.test -excluded;DNS.380 = x379.test -excluded;DNS.381 = x380.test -excluded;DNS.382 = x381.test -excluded;DNS.383 = x382.test -excluded;DNS.384 = x383.test -excluded;DNS.385 = x384.test -excluded;DNS.386 = x385.test -excluded;DNS.387 = x386.test -excluded;DNS.388 = x387.test -excluded;DNS.389 = x388.test -excluded;DNS.390 = x389.test -excluded;DNS.391 = x390.test -excluded;DNS.392 = x391.test -excluded;DNS.393 = x392.test -excluded;DNS.394 = x393.test -excluded;DNS.395 = x394.test -excluded;DNS.396 = x395.test -excluded;DNS.397 = x396.test -excluded;DNS.398 = x397.test -excluded;DNS.399 = x398.test -excluded;DNS.400 = x399.test -excluded;DNS.401 = x400.test -excluded;DNS.402 = x401.test -excluded;DNS.403 = x402.test -excluded;DNS.404 = x403.test -excluded;DNS.405 = x404.test -excluded;DNS.406 = x405.test -excluded;DNS.407 = x406.test -excluded;DNS.408 = x407.test -excluded;DNS.409 = x408.test -excluded;DNS.410 = x409.test -excluded;DNS.411 = x410.test -excluded;DNS.412 = x411.test -excluded;DNS.413 = x412.test -excluded;DNS.414 = x413.test -excluded;DNS.415 = x414.test -excluded;DNS.416 = x415.test -excluded;DNS.417 = x416.test -excluded;DNS.418 = x417.test -excluded;DNS.419 = x418.test -excluded;DNS.420 = x419.test -excluded;DNS.421 = x420.test -excluded;DNS.422 = x421.test -excluded;DNS.423 = x422.test -excluded;DNS.424 = x423.test -excluded;DNS.425 = x424.test -excluded;DNS.426 = x425.test -excluded;DNS.427 = x426.test -excluded;DNS.428 = x427.test -excluded;DNS.429 = x428.test -excluded;DNS.430 = x429.test -excluded;DNS.431 = x430.test -excluded;DNS.432 = x431.test -excluded;DNS.433 = x432.test -excluded;DNS.434 = x433.test -excluded;DNS.435 = x434.test -excluded;DNS.436 = x435.test -excluded;DNS.437 = x436.test -excluded;DNS.438 = x437.test -excluded;DNS.439 = x438.test -excluded;DNS.440 = x439.test -excluded;DNS.441 = x440.test -excluded;DNS.442 = x441.test -excluded;DNS.443 = x442.test -excluded;DNS.444 = x443.test -excluded;DNS.445 = x444.test -excluded;DNS.446 = x445.test -excluded;DNS.447 = x446.test -excluded;DNS.448 = x447.test -excluded;DNS.449 = x448.test -excluded;DNS.450 = x449.test -excluded;DNS.451 = x450.test -excluded;DNS.452 = x451.test -excluded;DNS.453 = x452.test -excluded;DNS.454 = x453.test -excluded;DNS.455 = x454.test -excluded;DNS.456 = x455.test -excluded;DNS.457 = x456.test -excluded;DNS.458 = x457.test -excluded;DNS.459 = x458.test -excluded;DNS.460 = x459.test -excluded;DNS.461 = x460.test -excluded;DNS.462 = x461.test -excluded;DNS.463 = x462.test -excluded;DNS.464 = x463.test -excluded;DNS.465 = x464.test -excluded;DNS.466 = x465.test -excluded;DNS.467 = x466.test -excluded;DNS.468 = x467.test -excluded;DNS.469 = x468.test -excluded;DNS.470 = x469.test -excluded;DNS.471 = x470.test -excluded;DNS.472 = x471.test -excluded;DNS.473 = x472.test -excluded;DNS.474 = x473.test -excluded;DNS.475 = x474.test -excluded;DNS.476 = x475.test -excluded;DNS.477 = x476.test -excluded;DNS.478 = x477.test -excluded;DNS.479 = x478.test -excluded;DNS.480 = x479.test -excluded;DNS.481 = x480.test -excluded;DNS.482 = x481.test -excluded;DNS.483 = x482.test -excluded;DNS.484 = x483.test -excluded;DNS.485 = x484.test -excluded;DNS.486 = x485.test -excluded;DNS.487 = x486.test -excluded;DNS.488 = x487.test -excluded;DNS.489 = x488.test -excluded;DNS.490 = x489.test -excluded;DNS.491 = x490.test -excluded;DNS.492 = x491.test -excluded;DNS.493 = x492.test -excluded;DNS.494 = x493.test -excluded;DNS.495 = x494.test -excluded;DNS.496 = x495.test -excluded;DNS.497 = x496.test -excluded;DNS.498 = x497.test -excluded;DNS.499 = x498.test -excluded;DNS.500 = x499.test -excluded;DNS.501 = x500.test -excluded;DNS.502 = x501.test -excluded;DNS.503 = x502.test -excluded;DNS.504 = x503.test -excluded;DNS.505 = x504.test -excluded;DNS.506 = x505.test -excluded;DNS.507 = x506.test -excluded;DNS.508 = x507.test -excluded;DNS.509 = x508.test -excluded;DNS.510 = x509.test -excluded;DNS.511 = x510.test -excluded;DNS.512 = x511.test -excluded;DNS.513 = x512.test -excluded;DNS.514 = x513.test -excluded;DNS.515 = x514.test -excluded;DNS.516 = x515.test -excluded;DNS.517 = x516.test -excluded;DNS.518 = x517.test -excluded;DNS.519 = x518.test -excluded;DNS.520 = x519.test -excluded;DNS.521 = x520.test -excluded;DNS.522 = x521.test -excluded;DNS.523 = x522.test -excluded;DNS.524 = x523.test -excluded;DNS.525 = x524.test -excluded;DNS.526 = x525.test -excluded;DNS.527 = x526.test -excluded;DNS.528 = x527.test -excluded;DNS.529 = x528.test -excluded;DNS.530 = x529.test -excluded;DNS.531 = x530.test -excluded;DNS.532 = x531.test -excluded;DNS.533 = x532.test -excluded;DNS.534 = x533.test -excluded;DNS.535 = x534.test -excluded;DNS.536 = x535.test -excluded;DNS.537 = x536.test -excluded;DNS.538 = x537.test -excluded;DNS.539 = x538.test -excluded;DNS.540 = x539.test -excluded;DNS.541 = x540.test -excluded;DNS.542 = x541.test -excluded;DNS.543 = x542.test -excluded;DNS.544 = x543.test -excluded;DNS.545 = x544.test -excluded;DNS.546 = x545.test -excluded;DNS.547 = x546.test -excluded;DNS.548 = x547.test -excluded;DNS.549 = x548.test -excluded;DNS.550 = x549.test -excluded;DNS.551 = x550.test -excluded;DNS.552 = x551.test -excluded;DNS.553 = x552.test -excluded;DNS.554 = x553.test -excluded;DNS.555 = x554.test -excluded;DNS.556 = x555.test -excluded;DNS.557 = x556.test -excluded;DNS.558 = x557.test -excluded;DNS.559 = x558.test -excluded;DNS.560 = x559.test -excluded;DNS.561 = x560.test -excluded;DNS.562 = x561.test -excluded;DNS.563 = x562.test -excluded;DNS.564 = x563.test -excluded;DNS.565 = x564.test -excluded;DNS.566 = x565.test -excluded;DNS.567 = x566.test -excluded;DNS.568 = x567.test -excluded;DNS.569 = x568.test -excluded;DNS.570 = x569.test -excluded;DNS.571 = x570.test -excluded;DNS.572 = x571.test -excluded;DNS.573 = x572.test -excluded;DNS.574 = x573.test -excluded;DNS.575 = x574.test -excluded;DNS.576 = x575.test -excluded;DNS.577 = x576.test -excluded;DNS.578 = x577.test -excluded;DNS.579 = x578.test -excluded;DNS.580 = x579.test -excluded;DNS.581 = x580.test -excluded;DNS.582 = x581.test -excluded;DNS.583 = x582.test -excluded;DNS.584 = x583.test -excluded;DNS.585 = x584.test -excluded;DNS.586 = x585.test -excluded;DNS.587 = x586.test -excluded;DNS.588 = x587.test -excluded;DNS.589 = x588.test -excluded;DNS.590 = x589.test -excluded;DNS.591 = x590.test -excluded;DNS.592 = x591.test -excluded;DNS.593 = x592.test -excluded;DNS.594 = x593.test -excluded;DNS.595 = x594.test -excluded;DNS.596 = x595.test -excluded;DNS.597 = x596.test -excluded;DNS.598 = x597.test -excluded;DNS.599 = x598.test -excluded;DNS.600 = x599.test -excluded;DNS.601 = x600.test -excluded;DNS.602 = x601.test -excluded;DNS.603 = x602.test -excluded;DNS.604 = x603.test -excluded;DNS.605 = x604.test -excluded;DNS.606 = x605.test -excluded;DNS.607 = x606.test -excluded;DNS.608 = x607.test -excluded;DNS.609 = x608.test -excluded;DNS.610 = x609.test -excluded;DNS.611 = x610.test -excluded;DNS.612 = x611.test -excluded;DNS.613 = x612.test -excluded;DNS.614 = x613.test -excluded;DNS.615 = x614.test -excluded;DNS.616 = x615.test -excluded;DNS.617 = x616.test -excluded;DNS.618 = x617.test -excluded;DNS.619 = x618.test -excluded;DNS.620 = x619.test -excluded;DNS.621 = x620.test -excluded;DNS.622 = x621.test -excluded;DNS.623 = x622.test -excluded;DNS.624 = x623.test -excluded;DNS.625 = x624.test -excluded;DNS.626 = x625.test -excluded;DNS.627 = x626.test -excluded;DNS.628 = x627.test -excluded;DNS.629 = x628.test -excluded;DNS.630 = x629.test -excluded;DNS.631 = x630.test -excluded;DNS.632 = x631.test -excluded;DNS.633 = x632.test -excluded;DNS.634 = x633.test -excluded;DNS.635 = x634.test -excluded;DNS.636 = x635.test -excluded;DNS.637 = x636.test -excluded;DNS.638 = x637.test -excluded;DNS.639 = x638.test -excluded;DNS.640 = x639.test -excluded;DNS.641 = x640.test -excluded;DNS.642 = x641.test -excluded;DNS.643 = x642.test -excluded;DNS.644 = x643.test -excluded;DNS.645 = x644.test -excluded;DNS.646 = x645.test -excluded;DNS.647 = x646.test -excluded;DNS.648 = x647.test -excluded;DNS.649 = x648.test -excluded;DNS.650 = x649.test -excluded;DNS.651 = x650.test -excluded;DNS.652 = x651.test -excluded;DNS.653 = x652.test -excluded;DNS.654 = x653.test -excluded;DNS.655 = x654.test -excluded;DNS.656 = x655.test -excluded;DNS.657 = x656.test -excluded;DNS.658 = x657.test -excluded;DNS.659 = x658.test -excluded;DNS.660 = x659.test -excluded;DNS.661 = x660.test -excluded;DNS.662 = x661.test -excluded;DNS.663 = x662.test -excluded;DNS.664 = x663.test -excluded;DNS.665 = x664.test -excluded;DNS.666 = x665.test -excluded;DNS.667 = x666.test -excluded;DNS.668 = x667.test -excluded;DNS.669 = x668.test -excluded;DNS.670 = x669.test -excluded;DNS.671 = x670.test -excluded;DNS.672 = x671.test -excluded;DNS.673 = x672.test -excluded;DNS.674 = x673.test -excluded;DNS.675 = x674.test -excluded;DNS.676 = x675.test -excluded;DNS.677 = x676.test -excluded;DNS.678 = x677.test -excluded;DNS.679 = x678.test -excluded;DNS.680 = x679.test -excluded;DNS.681 = x680.test -excluded;DNS.682 = x681.test -excluded;DNS.683 = x682.test -excluded;DNS.684 = x683.test -excluded;DNS.685 = x684.test -excluded;DNS.686 = x685.test -excluded;DNS.687 = x686.test -excluded;DNS.688 = x687.test -excluded;DNS.689 = x688.test -excluded;DNS.690 = x689.test -excluded;DNS.691 = x690.test -excluded;DNS.692 = x691.test -excluded;DNS.693 = x692.test -excluded;DNS.694 = x693.test -excluded;DNS.695 = x694.test -excluded;DNS.696 = x695.test -excluded;DNS.697 = x696.test -excluded;DNS.698 = x697.test -excluded;DNS.699 = x698.test -excluded;DNS.700 = x699.test -excluded;DNS.701 = x700.test -excluded;DNS.702 = x701.test -excluded;DNS.703 = x702.test -excluded;DNS.704 = x703.test -excluded;DNS.705 = x704.test -excluded;DNS.706 = x705.test -excluded;DNS.707 = x706.test -excluded;DNS.708 = x707.test -excluded;DNS.709 = x708.test -excluded;DNS.710 = x709.test -excluded;DNS.711 = x710.test -excluded;DNS.712 = x711.test -excluded;DNS.713 = x712.test -excluded;DNS.714 = x713.test -excluded;DNS.715 = x714.test -excluded;DNS.716 = x715.test -excluded;DNS.717 = x716.test -excluded;DNS.718 = x717.test -excluded;DNS.719 = x718.test -excluded;DNS.720 = x719.test -excluded;DNS.721 = x720.test -excluded;DNS.722 = x721.test -excluded;DNS.723 = x722.test -excluded;DNS.724 = x723.test -excluded;DNS.725 = x724.test -excluded;DNS.726 = x725.test -excluded;DNS.727 = x726.test -excluded;DNS.728 = x727.test -excluded;DNS.729 = x728.test -excluded;DNS.730 = x729.test -excluded;DNS.731 = x730.test -excluded;DNS.732 = x731.test -excluded;DNS.733 = x732.test -excluded;DNS.734 = x733.test -excluded;DNS.735 = x734.test -excluded;DNS.736 = x735.test -excluded;DNS.737 = x736.test -excluded;DNS.738 = x737.test -excluded;DNS.739 = x738.test -excluded;DNS.740 = x739.test -excluded;DNS.741 = x740.test -excluded;DNS.742 = x741.test -excluded;DNS.743 = x742.test -excluded;DNS.744 = x743.test -excluded;DNS.745 = x744.test -excluded;DNS.746 = x745.test -excluded;DNS.747 = x746.test -excluded;DNS.748 = x747.test -excluded;DNS.749 = x748.test -excluded;DNS.750 = x749.test -excluded;DNS.751 = x750.test -excluded;DNS.752 = x751.test -excluded;DNS.753 = x752.test -excluded;DNS.754 = x753.test -excluded;DNS.755 = x754.test -excluded;DNS.756 = x755.test -excluded;DNS.757 = x756.test -excluded;DNS.758 = x757.test -excluded;DNS.759 = x758.test -excluded;DNS.760 = x759.test -excluded;DNS.761 = x760.test -excluded;DNS.762 = x761.test -excluded;DNS.763 = x762.test -excluded;DNS.764 = x763.test -excluded;DNS.765 = x764.test -excluded;DNS.766 = x765.test -excluded;DNS.767 = x766.test -excluded;DNS.768 = x767.test -excluded;DNS.769 = x768.test -excluded;DNS.770 = x769.test -excluded;DNS.771 = x770.test -excluded;DNS.772 = x771.test -excluded;DNS.773 = x772.test -excluded;DNS.774 = x773.test -excluded;DNS.775 = x774.test -excluded;DNS.776 = x775.test -excluded;DNS.777 = x776.test -excluded;DNS.778 = x777.test -excluded;DNS.779 = x778.test -excluded;DNS.780 = x779.test -excluded;DNS.781 = x780.test -excluded;DNS.782 = x781.test -excluded;DNS.783 = x782.test -excluded;DNS.784 = x783.test -excluded;DNS.785 = x784.test -excluded;DNS.786 = x785.test -excluded;DNS.787 = x786.test -excluded;DNS.788 = x787.test -excluded;DNS.789 = x788.test -excluded;DNS.790 = x789.test -excluded;DNS.791 = x790.test -excluded;DNS.792 = x791.test -excluded;DNS.793 = x792.test -excluded;DNS.794 = x793.test -excluded;DNS.795 = x794.test -excluded;DNS.796 = x795.test -excluded;DNS.797 = x796.test -excluded;DNS.798 = x797.test -excluded;DNS.799 = x798.test -excluded;DNS.800 = x799.test -excluded;DNS.801 = x800.test -excluded;DNS.802 = x801.test -excluded;DNS.803 = x802.test -excluded;DNS.804 = x803.test -excluded;DNS.805 = x804.test -excluded;DNS.806 = x805.test -excluded;DNS.807 = x806.test -excluded;DNS.808 = x807.test -excluded;DNS.809 = x808.test -excluded;DNS.810 = x809.test -excluded;DNS.811 = x810.test -excluded;DNS.812 = x811.test -excluded;DNS.813 = x812.test -excluded;DNS.814 = x813.test -excluded;DNS.815 = x814.test -excluded;DNS.816 = x815.test -excluded;DNS.817 = x816.test -excluded;DNS.818 = x817.test -excluded;DNS.819 = x818.test -excluded;DNS.820 = x819.test -excluded;DNS.821 = x820.test -excluded;DNS.822 = x821.test -excluded;DNS.823 = x822.test -excluded;DNS.824 = x823.test -excluded;DNS.825 = x824.test -excluded;DNS.826 = x825.test -excluded;DNS.827 = x826.test -excluded;DNS.828 = x827.test -excluded;DNS.829 = x828.test -excluded;DNS.830 = x829.test -excluded;DNS.831 = x830.test -excluded;DNS.832 = x831.test -excluded;DNS.833 = x832.test -excluded;DNS.834 = x833.test -excluded;DNS.835 = x834.test -excluded;DNS.836 = x835.test -excluded;DNS.837 = x836.test -excluded;DNS.838 = x837.test -excluded;DNS.839 = x838.test -excluded;DNS.840 = x839.test -excluded;DNS.841 = x840.test -excluded;DNS.842 = x841.test -excluded;DNS.843 = x842.test -excluded;DNS.844 = x843.test -excluded;DNS.845 = x844.test -excluded;DNS.846 = x845.test -excluded;DNS.847 = x846.test -excluded;DNS.848 = x847.test -excluded;DNS.849 = x848.test -excluded;DNS.850 = x849.test -excluded;DNS.851 = x850.test -excluded;DNS.852 = x851.test -excluded;DNS.853 = x852.test -excluded;DNS.854 = x853.test -excluded;DNS.855 = x854.test -excluded;DNS.856 = x855.test -excluded;DNS.857 = x856.test -excluded;DNS.858 = x857.test -excluded;DNS.859 = x858.test -excluded;DNS.860 = x859.test -excluded;DNS.861 = x860.test -excluded;DNS.862 = x861.test -excluded;DNS.863 = x862.test -excluded;DNS.864 = x863.test -excluded;DNS.865 = x864.test -excluded;DNS.866 = x865.test -excluded;DNS.867 = x866.test -excluded;DNS.868 = x867.test -excluded;DNS.869 = x868.test -excluded;DNS.870 = x869.test -excluded;DNS.871 = x870.test -excluded;DNS.872 = x871.test -excluded;DNS.873 = x872.test -excluded;DNS.874 = x873.test -excluded;DNS.875 = x874.test -excluded;DNS.876 = x875.test -excluded;DNS.877 = x876.test -excluded;DNS.878 = x877.test -excluded;DNS.879 = x878.test -excluded;DNS.880 = x879.test -excluded;DNS.881 = x880.test -excluded;DNS.882 = x881.test -excluded;DNS.883 = x882.test -excluded;DNS.884 = x883.test -excluded;DNS.885 = x884.test -excluded;DNS.886 = x885.test -excluded;DNS.887 = x886.test -excluded;DNS.888 = x887.test -excluded;DNS.889 = x888.test -excluded;DNS.890 = x889.test -excluded;DNS.891 = x890.test -excluded;DNS.892 = x891.test -excluded;DNS.893 = x892.test -excluded;DNS.894 = x893.test -excluded;DNS.895 = x894.test -excluded;DNS.896 = x895.test -excluded;DNS.897 = x896.test -excluded;DNS.898 = x897.test -excluded;DNS.899 = x898.test -excluded;DNS.900 = x899.test -excluded;DNS.901 = x900.test -excluded;DNS.902 = x901.test -excluded;DNS.903 = x902.test -excluded;DNS.904 = x903.test -excluded;DNS.905 = x904.test -excluded;DNS.906 = x905.test -excluded;DNS.907 = x906.test -excluded;DNS.908 = x907.test -excluded;DNS.909 = x908.test -excluded;DNS.910 = x909.test -excluded;DNS.911 = x910.test -excluded;DNS.912 = x911.test -excluded;DNS.913 = x912.test -excluded;DNS.914 = x913.test -excluded;DNS.915 = x914.test -excluded;DNS.916 = x915.test -excluded;DNS.917 = x916.test -excluded;DNS.918 = x917.test -excluded;DNS.919 = x918.test -excluded;DNS.920 = x919.test -excluded;DNS.921 = x920.test -excluded;DNS.922 = x921.test -excluded;DNS.923 = x922.test -excluded;DNS.924 = x923.test -excluded;DNS.925 = x924.test -excluded;DNS.926 = x925.test -excluded;DNS.927 = x926.test -excluded;DNS.928 = x927.test -excluded;DNS.929 = x928.test -excluded;DNS.930 = x929.test -excluded;DNS.931 = x930.test -excluded;DNS.932 = x931.test -excluded;DNS.933 = x932.test -excluded;DNS.934 = x933.test -excluded;DNS.935 = x934.test -excluded;DNS.936 = x935.test -excluded;DNS.937 = x936.test -excluded;DNS.938 = x937.test -excluded;DNS.939 = x938.test -excluded;DNS.940 = x939.test -excluded;DNS.941 = x940.test -excluded;DNS.942 = x941.test -excluded;DNS.943 = x942.test -excluded;DNS.944 = x943.test -excluded;DNS.945 = x944.test -excluded;DNS.946 = x945.test -excluded;DNS.947 = x946.test -excluded;DNS.948 = x947.test -excluded;DNS.949 = x948.test -excluded;DNS.950 = x949.test -excluded;DNS.951 = x950.test -excluded;DNS.952 = x951.test -excluded;DNS.953 = x952.test -excluded;DNS.954 = x953.test -excluded;DNS.955 = x954.test -excluded;DNS.956 = x955.test -excluded;DNS.957 = x956.test -excluded;DNS.958 = x957.test -excluded;DNS.959 = x958.test -excluded;DNS.960 = x959.test -excluded;DNS.961 = x960.test -excluded;DNS.962 = x961.test -excluded;DNS.963 = x962.test -excluded;DNS.964 = x963.test -excluded;DNS.965 = x964.test -excluded;DNS.966 = x965.test -excluded;DNS.967 = x966.test -excluded;DNS.968 = x967.test -excluded;DNS.969 = x968.test -excluded;DNS.970 = x969.test -excluded;DNS.971 = x970.test -excluded;DNS.972 = x971.test -excluded;DNS.973 = x972.test -excluded;DNS.974 = x973.test -excluded;DNS.975 = x974.test -excluded;DNS.976 = x975.test -excluded;DNS.977 = x976.test -excluded;DNS.978 = x977.test -excluded;DNS.979 = x978.test -excluded;DNS.980 = x979.test -excluded;DNS.981 = x980.test -excluded;DNS.982 = x981.test -excluded;DNS.983 = x982.test -excluded;DNS.984 = x983.test -excluded;DNS.985 = x984.test -excluded;DNS.986 = x985.test -excluded;DNS.987 = x986.test -excluded;DNS.988 = x987.test -excluded;DNS.989 = x988.test -excluded;DNS.990 = x989.test -excluded;DNS.991 = x990.test -excluded;DNS.992 = x991.test -excluded;DNS.993 = x992.test -excluded;DNS.994 = x993.test -excluded;DNS.995 = x994.test -excluded;DNS.996 = x995.test -excluded;DNS.997 = x996.test -excluded;DNS.998 = x997.test -excluded;DNS.999 = x998.test -excluded;DNS.1000 = x999.test -excluded;DNS.1001 = x1000.test -excluded;DNS.1002 = x1001.test -excluded;DNS.1003 = x1002.test -excluded;DNS.1004 = x1003.test -excluded;DNS.1005 = x1004.test -excluded;DNS.1006 = x1005.test -excluded;DNS.1007 = x1006.test -excluded;DNS.1008 = x1007.test -excluded;DNS.1009 = x1008.test -excluded;DNS.1010 = x1009.test -excluded;DNS.1011 = x1010.test -excluded;DNS.1012 = x1011.test -excluded;DNS.1013 = x1012.test -excluded;DNS.1014 = x1013.test -excluded;DNS.1015 = x1014.test -excluded;DNS.1016 = x1015.test -excluded;DNS.1017 = x1016.test -excluded;DNS.1018 = x1017.test -excluded;DNS.1019 = x1018.test -excluded;DNS.1020 = x1019.test -excluded;DNS.1021 = x1020.test -excluded;DNS.1022 = x1021.test -excluded;DNS.1023 = x1022.test -excluded;DNS.1024 = x1023.test -excluded;DNS.1025 = x1024.test - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.csr deleted file mode 100644 index 8e850353e1..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.csr +++ /dev/null @@ -1,293 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MII2gjCCNWoCAQAwFzEVMBMGA1UEAwwMSW50ZXJtZWRpYXRlMIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzvbBG4X4FRSuiN3JLw043DZmZ5TXTMLqcxL -Ha4GJxiOVbqtEscdMlltwxYg22Kmd4AS4IdYUVXjZn/R4DoiZeVwJqIEBPBd+V9W -yNroD1cod26aoEpTNBpjN6JDqw5KzQcj3VWDRAAMcEHfNWTQxQ5qh9vK/DXV4luv -C6DmdaXS4XJOImMBQXO4lVAs/e3DYbY21IOVYcPgYf/0noroutzR9ontnTBElSf0 -0YvmLxRmVvHa8cwEG3eSpZ9YQAyfDDLWBcJMwMWf5aQwPUzpnQNsTAa25ZW9Ibjm -K6igvwa7QzMZPXsXWfFkTSRnsVEPNa7wcXV5rlsCNAQx42aGZQIDAQABoII0JDCC -NCAGCSqGSIb3DQEJDjGCNBEwgjQNMB0GA1UdDgQWBBSSET+sEZbHZjfPg1ok8Dp3 -rzONfzAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zCCM8kGA1UdHgSC -M8AwgjO8oYIzuDAJggd4MC50ZXN0MAmCB3gxLnRlc3QwCYIHeDIudGVzdDAJggd4 -My50ZXN0MAmCB3g0LnRlc3QwCYIHeDUudGVzdDAJggd4Ni50ZXN0MAmCB3g3LnRl -c3QwCYIHeDgudGVzdDAJggd4OS50ZXN0MAqCCHgxMC50ZXN0MAqCCHgxMS50ZXN0 -MAqCCHgxMi50ZXN0MAqCCHgxMy50ZXN0MAqCCHgxNC50ZXN0MAqCCHgxNS50ZXN0 -MAqCCHgxNi50ZXN0MAqCCHgxNy50ZXN0MAqCCHgxOC50ZXN0MAqCCHgxOS50ZXN0 -MAqCCHgyMC50ZXN0MAqCCHgyMS50ZXN0MAqCCHgyMi50ZXN0MAqCCHgyMy50ZXN0 -MAqCCHgyNC50ZXN0MAqCCHgyNS50ZXN0MAqCCHgyNi50ZXN0MAqCCHgyNy50ZXN0 -MAqCCHgyOC50ZXN0MAqCCHgyOS50ZXN0MAqCCHgzMC50ZXN0MAqCCHgzMS50ZXN0 -MAqCCHgzMi50ZXN0MAqCCHgzMy50ZXN0MAqCCHgzNC50ZXN0MAqCCHgzNS50ZXN0 -MAqCCHgzNi50ZXN0MAqCCHgzNy50ZXN0MAqCCHgzOC50ZXN0MAqCCHgzOS50ZXN0 -MAqCCHg0MC50ZXN0MAqCCHg0MS50ZXN0MAqCCHg0Mi50ZXN0MAqCCHg0My50ZXN0 -MAqCCHg0NC50ZXN0MAqCCHg0NS50ZXN0MAqCCHg0Ni50ZXN0MAqCCHg0Ny50ZXN0 -MAqCCHg0OC50ZXN0MAqCCHg0OS50ZXN0MAqCCHg1MC50ZXN0MAqCCHg1MS50ZXN0 -MAqCCHg1Mi50ZXN0MAqCCHg1My50ZXN0MAqCCHg1NC50ZXN0MAqCCHg1NS50ZXN0 -MAqCCHg1Ni50ZXN0MAqCCHg1Ny50ZXN0MAqCCHg1OC50ZXN0MAqCCHg1OS50ZXN0 -MAqCCHg2MC50ZXN0MAqCCHg2MS50ZXN0MAqCCHg2Mi50ZXN0MAqCCHg2My50ZXN0 -MAqCCHg2NC50ZXN0MAqCCHg2NS50ZXN0MAqCCHg2Ni50ZXN0MAqCCHg2Ny50ZXN0 -MAqCCHg2OC50ZXN0MAqCCHg2OS50ZXN0MAqCCHg3MC50ZXN0MAqCCHg3MS50ZXN0 -MAqCCHg3Mi50ZXN0MAqCCHg3My50ZXN0MAqCCHg3NC50ZXN0MAqCCHg3NS50ZXN0 -MAqCCHg3Ni50ZXN0MAqCCHg3Ny50ZXN0MAqCCHg3OC50ZXN0MAqCCHg3OS50ZXN0 -MAqCCHg4MC50ZXN0MAqCCHg4MS50ZXN0MAqCCHg4Mi50ZXN0MAqCCHg4My50ZXN0 -MAqCCHg4NC50ZXN0MAqCCHg4NS50ZXN0MAqCCHg4Ni50ZXN0MAqCCHg4Ny50ZXN0 -MAqCCHg4OC50ZXN0MAqCCHg4OS50ZXN0MAqCCHg5MC50ZXN0MAqCCHg5MS50ZXN0 -MAqCCHg5Mi50ZXN0MAqCCHg5My50ZXN0MAqCCHg5NC50ZXN0MAqCCHg5NS50ZXN0 -MAqCCHg5Ni50ZXN0MAqCCHg5Ny50ZXN0MAqCCHg5OC50ZXN0MAqCCHg5OS50ZXN0 -MAuCCXgxMDAudGVzdDALggl4MTAxLnRlc3QwC4IJeDEwMi50ZXN0MAuCCXgxMDMu -dGVzdDALggl4MTA0LnRlc3QwC4IJeDEwNS50ZXN0MAuCCXgxMDYudGVzdDALggl4 -MTA3LnRlc3QwC4IJeDEwOC50ZXN0MAuCCXgxMDkudGVzdDALggl4MTEwLnRlc3Qw -C4IJeDExMS50ZXN0MAuCCXgxMTIudGVzdDALggl4MTEzLnRlc3QwC4IJeDExNC50 -ZXN0MAuCCXgxMTUudGVzdDALggl4MTE2LnRlc3QwC4IJeDExNy50ZXN0MAuCCXgx -MTgudGVzdDALggl4MTE5LnRlc3QwC4IJeDEyMC50ZXN0MAuCCXgxMjEudGVzdDAL -ggl4MTIyLnRlc3QwC4IJeDEyMy50ZXN0MAuCCXgxMjQudGVzdDALggl4MTI1LnRl -c3QwC4IJeDEyNi50ZXN0MAuCCXgxMjcudGVzdDALggl4MTI4LnRlc3QwC4IJeDEy -OS50ZXN0MAuCCXgxMzAudGVzdDALggl4MTMxLnRlc3QwC4IJeDEzMi50ZXN0MAuC -CXgxMzMudGVzdDALggl4MTM0LnRlc3QwC4IJeDEzNS50ZXN0MAuCCXgxMzYudGVz -dDALggl4MTM3LnRlc3QwC4IJeDEzOC50ZXN0MAuCCXgxMzkudGVzdDALggl4MTQw -LnRlc3QwC4IJeDE0MS50ZXN0MAuCCXgxNDIudGVzdDALggl4MTQzLnRlc3QwC4IJ -eDE0NC50ZXN0MAuCCXgxNDUudGVzdDALggl4MTQ2LnRlc3QwC4IJeDE0Ny50ZXN0 -MAuCCXgxNDgudGVzdDALggl4MTQ5LnRlc3QwC4IJeDE1MC50ZXN0MAuCCXgxNTEu -dGVzdDALggl4MTUyLnRlc3QwC4IJeDE1My50ZXN0MAuCCXgxNTQudGVzdDALggl4 -MTU1LnRlc3QwC4IJeDE1Ni50ZXN0MAuCCXgxNTcudGVzdDALggl4MTU4LnRlc3Qw -C4IJeDE1OS50ZXN0MAuCCXgxNjAudGVzdDALggl4MTYxLnRlc3QwC4IJeDE2Mi50 -ZXN0MAuCCXgxNjMudGVzdDALggl4MTY0LnRlc3QwC4IJeDE2NS50ZXN0MAuCCXgx -NjYudGVzdDALggl4MTY3LnRlc3QwC4IJeDE2OC50ZXN0MAuCCXgxNjkudGVzdDAL -ggl4MTcwLnRlc3QwC4IJeDE3MS50ZXN0MAuCCXgxNzIudGVzdDALggl4MTczLnRl -c3QwC4IJeDE3NC50ZXN0MAuCCXgxNzUudGVzdDALggl4MTc2LnRlc3QwC4IJeDE3 -Ny50ZXN0MAuCCXgxNzgudGVzdDALggl4MTc5LnRlc3QwC4IJeDE4MC50ZXN0MAuC -CXgxODEudGVzdDALggl4MTgyLnRlc3QwC4IJeDE4My50ZXN0MAuCCXgxODQudGVz -dDALggl4MTg1LnRlc3QwC4IJeDE4Ni50ZXN0MAuCCXgxODcudGVzdDALggl4MTg4 -LnRlc3QwC4IJeDE4OS50ZXN0MAuCCXgxOTAudGVzdDALggl4MTkxLnRlc3QwC4IJ -eDE5Mi50ZXN0MAuCCXgxOTMudGVzdDALggl4MTk0LnRlc3QwC4IJeDE5NS50ZXN0 -MAuCCXgxOTYudGVzdDALggl4MTk3LnRlc3QwC4IJeDE5OC50ZXN0MAuCCXgxOTku -dGVzdDALggl4MjAwLnRlc3QwC4IJeDIwMS50ZXN0MAuCCXgyMDIudGVzdDALggl4 -MjAzLnRlc3QwC4IJeDIwNC50ZXN0MAuCCXgyMDUudGVzdDALggl4MjA2LnRlc3Qw -C4IJeDIwNy50ZXN0MAuCCXgyMDgudGVzdDALggl4MjA5LnRlc3QwC4IJeDIxMC50 -ZXN0MAuCCXgyMTEudGVzdDALggl4MjEyLnRlc3QwC4IJeDIxMy50ZXN0MAuCCXgy -MTQudGVzdDALggl4MjE1LnRlc3QwC4IJeDIxNi50ZXN0MAuCCXgyMTcudGVzdDAL -ggl4MjE4LnRlc3QwC4IJeDIxOS50ZXN0MAuCCXgyMjAudGVzdDALggl4MjIxLnRl -c3QwC4IJeDIyMi50ZXN0MAuCCXgyMjMudGVzdDALggl4MjI0LnRlc3QwC4IJeDIy -NS50ZXN0MAuCCXgyMjYudGVzdDALggl4MjI3LnRlc3QwC4IJeDIyOC50ZXN0MAuC -CXgyMjkudGVzdDALggl4MjMwLnRlc3QwC4IJeDIzMS50ZXN0MAuCCXgyMzIudGVz -dDALggl4MjMzLnRlc3QwC4IJeDIzNC50ZXN0MAuCCXgyMzUudGVzdDALggl4MjM2 -LnRlc3QwC4IJeDIzNy50ZXN0MAuCCXgyMzgudGVzdDALggl4MjM5LnRlc3QwC4IJ -eDI0MC50ZXN0MAuCCXgyNDEudGVzdDALggl4MjQyLnRlc3QwC4IJeDI0My50ZXN0 -MAuCCXgyNDQudGVzdDALggl4MjQ1LnRlc3QwC4IJeDI0Ni50ZXN0MAuCCXgyNDcu -dGVzdDALggl4MjQ4LnRlc3QwC4IJeDI0OS50ZXN0MAuCCXgyNTAudGVzdDALggl4 -MjUxLnRlc3QwC4IJeDI1Mi50ZXN0MAuCCXgyNTMudGVzdDALggl4MjU0LnRlc3Qw -C4IJeDI1NS50ZXN0MAuCCXgyNTYudGVzdDALggl4MjU3LnRlc3QwC4IJeDI1OC50 -ZXN0MAuCCXgyNTkudGVzdDALggl4MjYwLnRlc3QwC4IJeDI2MS50ZXN0MAuCCXgy -NjIudGVzdDALggl4MjYzLnRlc3QwC4IJeDI2NC50ZXN0MAuCCXgyNjUudGVzdDAL -ggl4MjY2LnRlc3QwC4IJeDI2Ny50ZXN0MAuCCXgyNjgudGVzdDALggl4MjY5LnRl -c3QwC4IJeDI3MC50ZXN0MAuCCXgyNzEudGVzdDALggl4MjcyLnRlc3QwC4IJeDI3 -My50ZXN0MAuCCXgyNzQudGVzdDALggl4Mjc1LnRlc3QwC4IJeDI3Ni50ZXN0MAuC -CXgyNzcudGVzdDALggl4Mjc4LnRlc3QwC4IJeDI3OS50ZXN0MAuCCXgyODAudGVz -dDALggl4MjgxLnRlc3QwC4IJeDI4Mi50ZXN0MAuCCXgyODMudGVzdDALggl4Mjg0 -LnRlc3QwC4IJeDI4NS50ZXN0MAuCCXgyODYudGVzdDALggl4Mjg3LnRlc3QwC4IJ -eDI4OC50ZXN0MAuCCXgyODkudGVzdDALggl4MjkwLnRlc3QwC4IJeDI5MS50ZXN0 -MAuCCXgyOTIudGVzdDALggl4MjkzLnRlc3QwC4IJeDI5NC50ZXN0MAuCCXgyOTUu -dGVzdDALggl4Mjk2LnRlc3QwC4IJeDI5Ny50ZXN0MAuCCXgyOTgudGVzdDALggl4 -Mjk5LnRlc3QwC4IJeDMwMC50ZXN0MAuCCXgzMDEudGVzdDALggl4MzAyLnRlc3Qw -C4IJeDMwMy50ZXN0MAuCCXgzMDQudGVzdDALggl4MzA1LnRlc3QwC4IJeDMwNi50 -ZXN0MAuCCXgzMDcudGVzdDALggl4MzA4LnRlc3QwC4IJeDMwOS50ZXN0MAuCCXgz -MTAudGVzdDALggl4MzExLnRlc3QwC4IJeDMxMi50ZXN0MAuCCXgzMTMudGVzdDAL -ggl4MzE0LnRlc3QwC4IJeDMxNS50ZXN0MAuCCXgzMTYudGVzdDALggl4MzE3LnRl -c3QwC4IJeDMxOC50ZXN0MAuCCXgzMTkudGVzdDALggl4MzIwLnRlc3QwC4IJeDMy -MS50ZXN0MAuCCXgzMjIudGVzdDALggl4MzIzLnRlc3QwC4IJeDMyNC50ZXN0MAuC -CXgzMjUudGVzdDALggl4MzI2LnRlc3QwC4IJeDMyNy50ZXN0MAuCCXgzMjgudGVz -dDALggl4MzI5LnRlc3QwC4IJeDMzMC50ZXN0MAuCCXgzMzEudGVzdDALggl4MzMy -LnRlc3QwC4IJeDMzMy50ZXN0MAuCCXgzMzQudGVzdDALggl4MzM1LnRlc3QwC4IJ -eDMzNi50ZXN0MAuCCXgzMzcudGVzdDALggl4MzM4LnRlc3QwC4IJeDMzOS50ZXN0 -MAuCCXgzNDAudGVzdDALggl4MzQxLnRlc3QwC4IJeDM0Mi50ZXN0MAuCCXgzNDMu -dGVzdDALggl4MzQ0LnRlc3QwC4IJeDM0NS50ZXN0MAuCCXgzNDYudGVzdDALggl4 -MzQ3LnRlc3QwC4IJeDM0OC50ZXN0MAuCCXgzNDkudGVzdDALggl4MzUwLnRlc3Qw -C4IJeDM1MS50ZXN0MAuCCXgzNTIudGVzdDALggl4MzUzLnRlc3QwC4IJeDM1NC50 -ZXN0MAuCCXgzNTUudGVzdDALggl4MzU2LnRlc3QwC4IJeDM1Ny50ZXN0MAuCCXgz -NTgudGVzdDALggl4MzU5LnRlc3QwC4IJeDM2MC50ZXN0MAuCCXgzNjEudGVzdDAL -ggl4MzYyLnRlc3QwC4IJeDM2My50ZXN0MAuCCXgzNjQudGVzdDALggl4MzY1LnRl -c3QwC4IJeDM2Ni50ZXN0MAuCCXgzNjcudGVzdDALggl4MzY4LnRlc3QwC4IJeDM2 -OS50ZXN0MAuCCXgzNzAudGVzdDALggl4MzcxLnRlc3QwC4IJeDM3Mi50ZXN0MAuC -CXgzNzMudGVzdDALggl4Mzc0LnRlc3QwC4IJeDM3NS50ZXN0MAuCCXgzNzYudGVz -dDALggl4Mzc3LnRlc3QwC4IJeDM3OC50ZXN0MAuCCXgzNzkudGVzdDALggl4Mzgw -LnRlc3QwC4IJeDM4MS50ZXN0MAuCCXgzODIudGVzdDALggl4MzgzLnRlc3QwC4IJ -eDM4NC50ZXN0MAuCCXgzODUudGVzdDALggl4Mzg2LnRlc3QwC4IJeDM4Ny50ZXN0 -MAuCCXgzODgudGVzdDALggl4Mzg5LnRlc3QwC4IJeDM5MC50ZXN0MAuCCXgzOTEu -dGVzdDALggl4MzkyLnRlc3QwC4IJeDM5My50ZXN0MAuCCXgzOTQudGVzdDALggl4 -Mzk1LnRlc3QwC4IJeDM5Ni50ZXN0MAuCCXgzOTcudGVzdDALggl4Mzk4LnRlc3Qw -C4IJeDM5OS50ZXN0MAuCCXg0MDAudGVzdDALggl4NDAxLnRlc3QwC4IJeDQwMi50 -ZXN0MAuCCXg0MDMudGVzdDALggl4NDA0LnRlc3QwC4IJeDQwNS50ZXN0MAuCCXg0 -MDYudGVzdDALggl4NDA3LnRlc3QwC4IJeDQwOC50ZXN0MAuCCXg0MDkudGVzdDAL -ggl4NDEwLnRlc3QwC4IJeDQxMS50ZXN0MAuCCXg0MTIudGVzdDALggl4NDEzLnRl -c3QwC4IJeDQxNC50ZXN0MAuCCXg0MTUudGVzdDALggl4NDE2LnRlc3QwC4IJeDQx -Ny50ZXN0MAuCCXg0MTgudGVzdDALggl4NDE5LnRlc3QwC4IJeDQyMC50ZXN0MAuC -CXg0MjEudGVzdDALggl4NDIyLnRlc3QwC4IJeDQyMy50ZXN0MAuCCXg0MjQudGVz -dDALggl4NDI1LnRlc3QwC4IJeDQyNi50ZXN0MAuCCXg0MjcudGVzdDALggl4NDI4 -LnRlc3QwC4IJeDQyOS50ZXN0MAuCCXg0MzAudGVzdDALggl4NDMxLnRlc3QwC4IJ -eDQzMi50ZXN0MAuCCXg0MzMudGVzdDALggl4NDM0LnRlc3QwC4IJeDQzNS50ZXN0 -MAuCCXg0MzYudGVzdDALggl4NDM3LnRlc3QwC4IJeDQzOC50ZXN0MAuCCXg0Mzku -dGVzdDALggl4NDQwLnRlc3QwC4IJeDQ0MS50ZXN0MAuCCXg0NDIudGVzdDALggl4 -NDQzLnRlc3QwC4IJeDQ0NC50ZXN0MAuCCXg0NDUudGVzdDALggl4NDQ2LnRlc3Qw -C4IJeDQ0Ny50ZXN0MAuCCXg0NDgudGVzdDALggl4NDQ5LnRlc3QwC4IJeDQ1MC50 -ZXN0MAuCCXg0NTEudGVzdDALggl4NDUyLnRlc3QwC4IJeDQ1My50ZXN0MAuCCXg0 -NTQudGVzdDALggl4NDU1LnRlc3QwC4IJeDQ1Ni50ZXN0MAuCCXg0NTcudGVzdDAL -ggl4NDU4LnRlc3QwC4IJeDQ1OS50ZXN0MAuCCXg0NjAudGVzdDALggl4NDYxLnRl -c3QwC4IJeDQ2Mi50ZXN0MAuCCXg0NjMudGVzdDALggl4NDY0LnRlc3QwC4IJeDQ2 -NS50ZXN0MAuCCXg0NjYudGVzdDALggl4NDY3LnRlc3QwC4IJeDQ2OC50ZXN0MAuC -CXg0NjkudGVzdDALggl4NDcwLnRlc3QwC4IJeDQ3MS50ZXN0MAuCCXg0NzIudGVz -dDALggl4NDczLnRlc3QwC4IJeDQ3NC50ZXN0MAuCCXg0NzUudGVzdDALggl4NDc2 -LnRlc3QwC4IJeDQ3Ny50ZXN0MAuCCXg0NzgudGVzdDALggl4NDc5LnRlc3QwC4IJ -eDQ4MC50ZXN0MAuCCXg0ODEudGVzdDALggl4NDgyLnRlc3QwC4IJeDQ4My50ZXN0 -MAuCCXg0ODQudGVzdDALggl4NDg1LnRlc3QwC4IJeDQ4Ni50ZXN0MAuCCXg0ODcu -dGVzdDALggl4NDg4LnRlc3QwC4IJeDQ4OS50ZXN0MAuCCXg0OTAudGVzdDALggl4 -NDkxLnRlc3QwC4IJeDQ5Mi50ZXN0MAuCCXg0OTMudGVzdDALggl4NDk0LnRlc3Qw -C4IJeDQ5NS50ZXN0MAuCCXg0OTYudGVzdDALggl4NDk3LnRlc3QwC4IJeDQ5OC50 -ZXN0MAuCCXg0OTkudGVzdDALggl4NTAwLnRlc3QwC4IJeDUwMS50ZXN0MAuCCXg1 -MDIudGVzdDALggl4NTAzLnRlc3QwC4IJeDUwNC50ZXN0MAuCCXg1MDUudGVzdDAL -ggl4NTA2LnRlc3QwC4IJeDUwNy50ZXN0MAuCCXg1MDgudGVzdDALggl4NTA5LnRl -c3QwC4IJeDUxMC50ZXN0MAuCCXg1MTEudGVzdDALggl4NTEyLnRlc3QwC4IJeDUx -My50ZXN0MAuCCXg1MTQudGVzdDALggl4NTE1LnRlc3QwC4IJeDUxNi50ZXN0MAuC -CXg1MTcudGVzdDALggl4NTE4LnRlc3QwC4IJeDUxOS50ZXN0MAuCCXg1MjAudGVz -dDALggl4NTIxLnRlc3QwC4IJeDUyMi50ZXN0MAuCCXg1MjMudGVzdDALggl4NTI0 -LnRlc3QwC4IJeDUyNS50ZXN0MAuCCXg1MjYudGVzdDALggl4NTI3LnRlc3QwC4IJ -eDUyOC50ZXN0MAuCCXg1MjkudGVzdDALggl4NTMwLnRlc3QwC4IJeDUzMS50ZXN0 -MAuCCXg1MzIudGVzdDALggl4NTMzLnRlc3QwC4IJeDUzNC50ZXN0MAuCCXg1MzUu -dGVzdDALggl4NTM2LnRlc3QwC4IJeDUzNy50ZXN0MAuCCXg1MzgudGVzdDALggl4 -NTM5LnRlc3QwC4IJeDU0MC50ZXN0MAuCCXg1NDEudGVzdDALggl4NTQyLnRlc3Qw -C4IJeDU0My50ZXN0MAuCCXg1NDQudGVzdDALggl4NTQ1LnRlc3QwC4IJeDU0Ni50 -ZXN0MAuCCXg1NDcudGVzdDALggl4NTQ4LnRlc3QwC4IJeDU0OS50ZXN0MAuCCXg1 -NTAudGVzdDALggl4NTUxLnRlc3QwC4IJeDU1Mi50ZXN0MAuCCXg1NTMudGVzdDAL -ggl4NTU0LnRlc3QwC4IJeDU1NS50ZXN0MAuCCXg1NTYudGVzdDALggl4NTU3LnRl -c3QwC4IJeDU1OC50ZXN0MAuCCXg1NTkudGVzdDALggl4NTYwLnRlc3QwC4IJeDU2 -MS50ZXN0MAuCCXg1NjIudGVzdDALggl4NTYzLnRlc3QwC4IJeDU2NC50ZXN0MAuC -CXg1NjUudGVzdDALggl4NTY2LnRlc3QwC4IJeDU2Ny50ZXN0MAuCCXg1NjgudGVz -dDALggl4NTY5LnRlc3QwC4IJeDU3MC50ZXN0MAuCCXg1NzEudGVzdDALggl4NTcy -LnRlc3QwC4IJeDU3My50ZXN0MAuCCXg1NzQudGVzdDALggl4NTc1LnRlc3QwC4IJ -eDU3Ni50ZXN0MAuCCXg1NzcudGVzdDALggl4NTc4LnRlc3QwC4IJeDU3OS50ZXN0 -MAuCCXg1ODAudGVzdDALggl4NTgxLnRlc3QwC4IJeDU4Mi50ZXN0MAuCCXg1ODMu -dGVzdDALggl4NTg0LnRlc3QwC4IJeDU4NS50ZXN0MAuCCXg1ODYudGVzdDALggl4 -NTg3LnRlc3QwC4IJeDU4OC50ZXN0MAuCCXg1ODkudGVzdDALggl4NTkwLnRlc3Qw -C4IJeDU5MS50ZXN0MAuCCXg1OTIudGVzdDALggl4NTkzLnRlc3QwC4IJeDU5NC50 -ZXN0MAuCCXg1OTUudGVzdDALggl4NTk2LnRlc3QwC4IJeDU5Ny50ZXN0MAuCCXg1 -OTgudGVzdDALggl4NTk5LnRlc3QwC4IJeDYwMC50ZXN0MAuCCXg2MDEudGVzdDAL -ggl4NjAyLnRlc3QwC4IJeDYwMy50ZXN0MAuCCXg2MDQudGVzdDALggl4NjA1LnRl -c3QwC4IJeDYwNi50ZXN0MAuCCXg2MDcudGVzdDALggl4NjA4LnRlc3QwC4IJeDYw -OS50ZXN0MAuCCXg2MTAudGVzdDALggl4NjExLnRlc3QwC4IJeDYxMi50ZXN0MAuC -CXg2MTMudGVzdDALggl4NjE0LnRlc3QwC4IJeDYxNS50ZXN0MAuCCXg2MTYudGVz -dDALggl4NjE3LnRlc3QwC4IJeDYxOC50ZXN0MAuCCXg2MTkudGVzdDALggl4NjIw -LnRlc3QwC4IJeDYyMS50ZXN0MAuCCXg2MjIudGVzdDALggl4NjIzLnRlc3QwC4IJ -eDYyNC50ZXN0MAuCCXg2MjUudGVzdDALggl4NjI2LnRlc3QwC4IJeDYyNy50ZXN0 -MAuCCXg2MjgudGVzdDALggl4NjI5LnRlc3QwC4IJeDYzMC50ZXN0MAuCCXg2MzEu -dGVzdDALggl4NjMyLnRlc3QwC4IJeDYzMy50ZXN0MAuCCXg2MzQudGVzdDALggl4 -NjM1LnRlc3QwC4IJeDYzNi50ZXN0MAuCCXg2MzcudGVzdDALggl4NjM4LnRlc3Qw -C4IJeDYzOS50ZXN0MAuCCXg2NDAudGVzdDALggl4NjQxLnRlc3QwC4IJeDY0Mi50 -ZXN0MAuCCXg2NDMudGVzdDALggl4NjQ0LnRlc3QwC4IJeDY0NS50ZXN0MAuCCXg2 -NDYudGVzdDALggl4NjQ3LnRlc3QwC4IJeDY0OC50ZXN0MAuCCXg2NDkudGVzdDAL -ggl4NjUwLnRlc3QwC4IJeDY1MS50ZXN0MAuCCXg2NTIudGVzdDALggl4NjUzLnRl -c3QwC4IJeDY1NC50ZXN0MAuCCXg2NTUudGVzdDALggl4NjU2LnRlc3QwC4IJeDY1 -Ny50ZXN0MAuCCXg2NTgudGVzdDALggl4NjU5LnRlc3QwC4IJeDY2MC50ZXN0MAuC -CXg2NjEudGVzdDALggl4NjYyLnRlc3QwC4IJeDY2My50ZXN0MAuCCXg2NjQudGVz -dDALggl4NjY1LnRlc3QwC4IJeDY2Ni50ZXN0MAuCCXg2NjcudGVzdDALggl4NjY4 -LnRlc3QwC4IJeDY2OS50ZXN0MAuCCXg2NzAudGVzdDALggl4NjcxLnRlc3QwC4IJ -eDY3Mi50ZXN0MAuCCXg2NzMudGVzdDALggl4Njc0LnRlc3QwC4IJeDY3NS50ZXN0 -MAuCCXg2NzYudGVzdDALggl4Njc3LnRlc3QwC4IJeDY3OC50ZXN0MAuCCXg2Nzku -dGVzdDALggl4NjgwLnRlc3QwC4IJeDY4MS50ZXN0MAuCCXg2ODIudGVzdDALggl4 -NjgzLnRlc3QwC4IJeDY4NC50ZXN0MAuCCXg2ODUudGVzdDALggl4Njg2LnRlc3Qw -C4IJeDY4Ny50ZXN0MAuCCXg2ODgudGVzdDALggl4Njg5LnRlc3QwC4IJeDY5MC50 -ZXN0MAuCCXg2OTEudGVzdDALggl4NjkyLnRlc3QwC4IJeDY5My50ZXN0MAuCCXg2 -OTQudGVzdDALggl4Njk1LnRlc3QwC4IJeDY5Ni50ZXN0MAuCCXg2OTcudGVzdDAL -ggl4Njk4LnRlc3QwC4IJeDY5OS50ZXN0MAuCCXg3MDAudGVzdDALggl4NzAxLnRl -c3QwC4IJeDcwMi50ZXN0MAuCCXg3MDMudGVzdDALggl4NzA0LnRlc3QwC4IJeDcw -NS50ZXN0MAuCCXg3MDYudGVzdDALggl4NzA3LnRlc3QwC4IJeDcwOC50ZXN0MAuC -CXg3MDkudGVzdDALggl4NzEwLnRlc3QwC4IJeDcxMS50ZXN0MAuCCXg3MTIudGVz -dDALggl4NzEzLnRlc3QwC4IJeDcxNC50ZXN0MAuCCXg3MTUudGVzdDALggl4NzE2 -LnRlc3QwC4IJeDcxNy50ZXN0MAuCCXg3MTgudGVzdDALggl4NzE5LnRlc3QwC4IJ -eDcyMC50ZXN0MAuCCXg3MjEudGVzdDALggl4NzIyLnRlc3QwC4IJeDcyMy50ZXN0 -MAuCCXg3MjQudGVzdDALggl4NzI1LnRlc3QwC4IJeDcyNi50ZXN0MAuCCXg3Mjcu -dGVzdDALggl4NzI4LnRlc3QwC4IJeDcyOS50ZXN0MAuCCXg3MzAudGVzdDALggl4 -NzMxLnRlc3QwC4IJeDczMi50ZXN0MAuCCXg3MzMudGVzdDALggl4NzM0LnRlc3Qw -C4IJeDczNS50ZXN0MAuCCXg3MzYudGVzdDALggl4NzM3LnRlc3QwC4IJeDczOC50 -ZXN0MAuCCXg3MzkudGVzdDALggl4NzQwLnRlc3QwC4IJeDc0MS50ZXN0MAuCCXg3 -NDIudGVzdDALggl4NzQzLnRlc3QwC4IJeDc0NC50ZXN0MAuCCXg3NDUudGVzdDAL -ggl4NzQ2LnRlc3QwC4IJeDc0Ny50ZXN0MAuCCXg3NDgudGVzdDALggl4NzQ5LnRl -c3QwC4IJeDc1MC50ZXN0MAuCCXg3NTEudGVzdDALggl4NzUyLnRlc3QwC4IJeDc1 -My50ZXN0MAuCCXg3NTQudGVzdDALggl4NzU1LnRlc3QwC4IJeDc1Ni50ZXN0MAuC -CXg3NTcudGVzdDALggl4NzU4LnRlc3QwC4IJeDc1OS50ZXN0MAuCCXg3NjAudGVz -dDALggl4NzYxLnRlc3QwC4IJeDc2Mi50ZXN0MAuCCXg3NjMudGVzdDALggl4NzY0 -LnRlc3QwC4IJeDc2NS50ZXN0MAuCCXg3NjYudGVzdDALggl4NzY3LnRlc3QwC4IJ -eDc2OC50ZXN0MAuCCXg3NjkudGVzdDALggl4NzcwLnRlc3QwC4IJeDc3MS50ZXN0 -MAuCCXg3NzIudGVzdDALggl4NzczLnRlc3QwC4IJeDc3NC50ZXN0MAuCCXg3NzUu -dGVzdDALggl4Nzc2LnRlc3QwC4IJeDc3Ny50ZXN0MAuCCXg3NzgudGVzdDALggl4 -Nzc5LnRlc3QwC4IJeDc4MC50ZXN0MAuCCXg3ODEudGVzdDALggl4NzgyLnRlc3Qw -C4IJeDc4My50ZXN0MAuCCXg3ODQudGVzdDALggl4Nzg1LnRlc3QwC4IJeDc4Ni50 -ZXN0MAuCCXg3ODcudGVzdDALggl4Nzg4LnRlc3QwC4IJeDc4OS50ZXN0MAuCCXg3 -OTAudGVzdDALggl4NzkxLnRlc3QwC4IJeDc5Mi50ZXN0MAuCCXg3OTMudGVzdDAL -ggl4Nzk0LnRlc3QwC4IJeDc5NS50ZXN0MAuCCXg3OTYudGVzdDALggl4Nzk3LnRl -c3QwC4IJeDc5OC50ZXN0MAuCCXg3OTkudGVzdDALggl4ODAwLnRlc3QwC4IJeDgw -MS50ZXN0MAuCCXg4MDIudGVzdDALggl4ODAzLnRlc3QwC4IJeDgwNC50ZXN0MAuC -CXg4MDUudGVzdDALggl4ODA2LnRlc3QwC4IJeDgwNy50ZXN0MAuCCXg4MDgudGVz -dDALggl4ODA5LnRlc3QwC4IJeDgxMC50ZXN0MAuCCXg4MTEudGVzdDALggl4ODEy -LnRlc3QwC4IJeDgxMy50ZXN0MAuCCXg4MTQudGVzdDALggl4ODE1LnRlc3QwC4IJ -eDgxNi50ZXN0MAuCCXg4MTcudGVzdDALggl4ODE4LnRlc3QwC4IJeDgxOS50ZXN0 -MAuCCXg4MjAudGVzdDALggl4ODIxLnRlc3QwC4IJeDgyMi50ZXN0MAuCCXg4MjMu -dGVzdDALggl4ODI0LnRlc3QwC4IJeDgyNS50ZXN0MAuCCXg4MjYudGVzdDALggl4 -ODI3LnRlc3QwC4IJeDgyOC50ZXN0MAuCCXg4MjkudGVzdDALggl4ODMwLnRlc3Qw -C4IJeDgzMS50ZXN0MAuCCXg4MzIudGVzdDALggl4ODMzLnRlc3QwC4IJeDgzNC50 -ZXN0MAuCCXg4MzUudGVzdDALggl4ODM2LnRlc3QwC4IJeDgzNy50ZXN0MAuCCXg4 -MzgudGVzdDALggl4ODM5LnRlc3QwC4IJeDg0MC50ZXN0MAuCCXg4NDEudGVzdDAL -ggl4ODQyLnRlc3QwC4IJeDg0My50ZXN0MAuCCXg4NDQudGVzdDALggl4ODQ1LnRl -c3QwC4IJeDg0Ni50ZXN0MAuCCXg4NDcudGVzdDALggl4ODQ4LnRlc3QwC4IJeDg0 -OS50ZXN0MAuCCXg4NTAudGVzdDALggl4ODUxLnRlc3QwC4IJeDg1Mi50ZXN0MAuC -CXg4NTMudGVzdDALggl4ODU0LnRlc3QwC4IJeDg1NS50ZXN0MAuCCXg4NTYudGVz -dDALggl4ODU3LnRlc3QwC4IJeDg1OC50ZXN0MAuCCXg4NTkudGVzdDALggl4ODYw -LnRlc3QwC4IJeDg2MS50ZXN0MAuCCXg4NjIudGVzdDALggl4ODYzLnRlc3QwC4IJ -eDg2NC50ZXN0MAuCCXg4NjUudGVzdDALggl4ODY2LnRlc3QwC4IJeDg2Ny50ZXN0 -MAuCCXg4NjgudGVzdDALggl4ODY5LnRlc3QwC4IJeDg3MC50ZXN0MAuCCXg4NzEu -dGVzdDALggl4ODcyLnRlc3QwC4IJeDg3My50ZXN0MAuCCXg4NzQudGVzdDALggl4 -ODc1LnRlc3QwC4IJeDg3Ni50ZXN0MAuCCXg4NzcudGVzdDALggl4ODc4LnRlc3Qw -C4IJeDg3OS50ZXN0MAuCCXg4ODAudGVzdDALggl4ODgxLnRlc3QwC4IJeDg4Mi50 -ZXN0MAuCCXg4ODMudGVzdDALggl4ODg0LnRlc3QwC4IJeDg4NS50ZXN0MAuCCXg4 -ODYudGVzdDALggl4ODg3LnRlc3QwC4IJeDg4OC50ZXN0MAuCCXg4ODkudGVzdDAL -ggl4ODkwLnRlc3QwC4IJeDg5MS50ZXN0MAuCCXg4OTIudGVzdDALggl4ODkzLnRl -c3QwC4IJeDg5NC50ZXN0MAuCCXg4OTUudGVzdDALggl4ODk2LnRlc3QwC4IJeDg5 -Ny50ZXN0MAuCCXg4OTgudGVzdDALggl4ODk5LnRlc3QwC4IJeDkwMC50ZXN0MAuC -CXg5MDEudGVzdDALggl4OTAyLnRlc3QwC4IJeDkwMy50ZXN0MAuCCXg5MDQudGVz -dDALggl4OTA1LnRlc3QwC4IJeDkwNi50ZXN0MAuCCXg5MDcudGVzdDALggl4OTA4 -LnRlc3QwC4IJeDkwOS50ZXN0MAuCCXg5MTAudGVzdDALggl4OTExLnRlc3QwC4IJ -eDkxMi50ZXN0MAuCCXg5MTMudGVzdDALggl4OTE0LnRlc3QwC4IJeDkxNS50ZXN0 -MAuCCXg5MTYudGVzdDALggl4OTE3LnRlc3QwC4IJeDkxOC50ZXN0MAuCCXg5MTku -dGVzdDALggl4OTIwLnRlc3QwC4IJeDkyMS50ZXN0MAuCCXg5MjIudGVzdDALggl4 -OTIzLnRlc3QwC4IJeDkyNC50ZXN0MAuCCXg5MjUudGVzdDALggl4OTI2LnRlc3Qw -C4IJeDkyNy50ZXN0MAuCCXg5MjgudGVzdDALggl4OTI5LnRlc3QwC4IJeDkzMC50 -ZXN0MAuCCXg5MzEudGVzdDALggl4OTMyLnRlc3QwC4IJeDkzMy50ZXN0MAuCCXg5 -MzQudGVzdDALggl4OTM1LnRlc3QwC4IJeDkzNi50ZXN0MAuCCXg5MzcudGVzdDAL -ggl4OTM4LnRlc3QwC4IJeDkzOS50ZXN0MAuCCXg5NDAudGVzdDALggl4OTQxLnRl -c3QwC4IJeDk0Mi50ZXN0MAuCCXg5NDMudGVzdDALggl4OTQ0LnRlc3QwC4IJeDk0 -NS50ZXN0MAuCCXg5NDYudGVzdDALggl4OTQ3LnRlc3QwC4IJeDk0OC50ZXN0MAuC -CXg5NDkudGVzdDALggl4OTUwLnRlc3QwC4IJeDk1MS50ZXN0MAuCCXg5NTIudGVz -dDALggl4OTUzLnRlc3QwC4IJeDk1NC50ZXN0MAuCCXg5NTUudGVzdDALggl4OTU2 -LnRlc3QwC4IJeDk1Ny50ZXN0MAuCCXg5NTgudGVzdDALggl4OTU5LnRlc3QwC4IJ -eDk2MC50ZXN0MAuCCXg5NjEudGVzdDALggl4OTYyLnRlc3QwC4IJeDk2My50ZXN0 -MAuCCXg5NjQudGVzdDALggl4OTY1LnRlc3QwC4IJeDk2Ni50ZXN0MAuCCXg5Njcu -dGVzdDALggl4OTY4LnRlc3QwC4IJeDk2OS50ZXN0MAuCCXg5NzAudGVzdDALggl4 -OTcxLnRlc3QwC4IJeDk3Mi50ZXN0MAuCCXg5NzMudGVzdDALggl4OTc0LnRlc3Qw -C4IJeDk3NS50ZXN0MAuCCXg5NzYudGVzdDALggl4OTc3LnRlc3QwC4IJeDk3OC50 -ZXN0MAuCCXg5NzkudGVzdDALggl4OTgwLnRlc3QwC4IJeDk4MS50ZXN0MAuCCXg5 -ODIudGVzdDALggl4OTgzLnRlc3QwC4IJeDk4NC50ZXN0MAuCCXg5ODUudGVzdDAL -ggl4OTg2LnRlc3QwC4IJeDk4Ny50ZXN0MAuCCXg5ODgudGVzdDALggl4OTg5LnRl -c3QwC4IJeDk5MC50ZXN0MAuCCXg5OTEudGVzdDALggl4OTkyLnRlc3QwC4IJeDk5 -My50ZXN0MAuCCXg5OTQudGVzdDALggl4OTk1LnRlc3QwC4IJeDk5Ni50ZXN0MAuC -CXg5OTcudGVzdDALggl4OTk4LnRlc3QwC4IJeDk5OS50ZXN0MAyCCngxMDAwLnRl -c3QwDIIKeDEwMDEudGVzdDAMggp4MTAwMi50ZXN0MAyCCngxMDAzLnRlc3QwDIIK -eDEwMDQudGVzdDAMggp4MTAwNS50ZXN0MAyCCngxMDA2LnRlc3QwDIIKeDEwMDcu -dGVzdDAMggp4MTAwOC50ZXN0MAyCCngxMDA5LnRlc3QwDIIKeDEwMTAudGVzdDAM -ggp4MTAxMS50ZXN0MAyCCngxMDEyLnRlc3QwDIIKeDEwMTMudGVzdDAMggp4MTAx -NC50ZXN0MAyCCngxMDE1LnRlc3QwDIIKeDEwMTYudGVzdDAMggp4MTAxNy50ZXN0 -MAyCCngxMDE4LnRlc3QwDIIKeDEwMTkudGVzdDAMggp4MTAyMC50ZXN0MAyCCngx -MDIxLnRlc3QwDIIKeDEwMjIudGVzdDAMggp4MTAyMy50ZXN0MAyCCngxMDI0LnRl -c3QwDQYJKoZIhvcNAQELBQADggEBAKzPAsAoWbli0F+2++igOP2Ytfmpa5hB1L6O -xZA/JSsIwxNNO8drnZn31mKh5905Tn30En8d/3RdXDRMUSLA0shp1PrgisZ3U3Ce -nxy+JSZxAKoTTLbL5e3R9nzOMlZ910VERRtV3quruRe/ehFUcDZnluNChSp5PFI2 -gxrUZeWDAAGBtDaF0bzQBTOSV2Ghf4tns6MM8SwALjkh+UaIGLBIJawKLhd4mU3e -7QFJE4dSRWhjBAPSVYEOjvfV7d/K1SALjNDs4N7cQHNYVgPUM1lu8aeJGJeTtp+x -HWWE1vuoYeEjIOpWYBwQROTsvYBFWuIUWJSFCWWSlP9sCBzfxmk= ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.pem deleted file mode 100644 index 186a4023e2..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_2.pem +++ /dev/null @@ -1,1394 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:f8 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Excluded: - DNS:x0.test - DNS:x1.test - DNS:x2.test - DNS:x3.test - DNS:x4.test - DNS:x5.test - DNS:x6.test - DNS:x7.test - DNS:x8.test - DNS:x9.test - DNS:x10.test - DNS:x11.test - DNS:x12.test - DNS:x13.test - DNS:x14.test - DNS:x15.test - DNS:x16.test - DNS:x17.test - DNS:x18.test - DNS:x19.test - DNS:x20.test - DNS:x21.test - DNS:x22.test - DNS:x23.test - DNS:x24.test - DNS:x25.test - DNS:x26.test - DNS:x27.test - DNS:x28.test - DNS:x29.test - DNS:x30.test - DNS:x31.test - DNS:x32.test - DNS:x33.test - DNS:x34.test - DNS:x35.test - DNS:x36.test - DNS:x37.test - DNS:x38.test - DNS:x39.test - DNS:x40.test - DNS:x41.test - DNS:x42.test - DNS:x43.test - DNS:x44.test - DNS:x45.test - DNS:x46.test - DNS:x47.test - DNS:x48.test - DNS:x49.test - DNS:x50.test - DNS:x51.test - DNS:x52.test - DNS:x53.test - DNS:x54.test - DNS:x55.test - DNS:x56.test - DNS:x57.test - DNS:x58.test - DNS:x59.test - DNS:x60.test - DNS:x61.test - DNS:x62.test - DNS:x63.test - DNS:x64.test - DNS:x65.test - DNS:x66.test - DNS:x67.test - DNS:x68.test - DNS:x69.test - DNS:x70.test - DNS:x71.test - DNS:x72.test - DNS:x73.test - DNS:x74.test - DNS:x75.test - DNS:x76.test - DNS:x77.test - DNS:x78.test - DNS:x79.test - DNS:x80.test - DNS:x81.test - DNS:x82.test - DNS:x83.test - DNS:x84.test - DNS:x85.test - DNS:x86.test - DNS:x87.test - DNS:x88.test - DNS:x89.test - DNS:x90.test - DNS:x91.test - DNS:x92.test - DNS:x93.test - DNS:x94.test - DNS:x95.test - DNS:x96.test - DNS:x97.test - DNS:x98.test - DNS:x99.test - DNS:x100.test - DNS:x101.test - DNS:x102.test - DNS:x103.test - DNS:x104.test - DNS:x105.test - DNS:x106.test - DNS:x107.test - DNS:x108.test - DNS:x109.test - DNS:x110.test - DNS:x111.test - DNS:x112.test - DNS:x113.test - DNS:x114.test - DNS:x115.test - DNS:x116.test - DNS:x117.test - DNS:x118.test - DNS:x119.test - DNS:x120.test - DNS:x121.test - DNS:x122.test - DNS:x123.test - DNS:x124.test - DNS:x125.test - DNS:x126.test - DNS:x127.test - DNS:x128.test - DNS:x129.test - DNS:x130.test - DNS:x131.test - DNS:x132.test - DNS:x133.test - DNS:x134.test - DNS:x135.test - DNS:x136.test - DNS:x137.test - DNS:x138.test - DNS:x139.test - DNS:x140.test - DNS:x141.test - DNS:x142.test - DNS:x143.test - DNS:x144.test - DNS:x145.test - DNS:x146.test - DNS:x147.test - DNS:x148.test - DNS:x149.test - DNS:x150.test - DNS:x151.test - DNS:x152.test - DNS:x153.test - DNS:x154.test - DNS:x155.test - DNS:x156.test - DNS:x157.test - DNS:x158.test - DNS:x159.test - DNS:x160.test - DNS:x161.test - DNS:x162.test - DNS:x163.test - DNS:x164.test - DNS:x165.test - DNS:x166.test - DNS:x167.test - DNS:x168.test - DNS:x169.test - DNS:x170.test - DNS:x171.test - DNS:x172.test - DNS:x173.test - DNS:x174.test - DNS:x175.test - DNS:x176.test - DNS:x177.test - DNS:x178.test - DNS:x179.test - DNS:x180.test - DNS:x181.test - DNS:x182.test - DNS:x183.test - DNS:x184.test - DNS:x185.test - DNS:x186.test - DNS:x187.test - DNS:x188.test - DNS:x189.test - DNS:x190.test - DNS:x191.test - DNS:x192.test - DNS:x193.test - DNS:x194.test - DNS:x195.test - DNS:x196.test - DNS:x197.test - DNS:x198.test - DNS:x199.test - DNS:x200.test - DNS:x201.test - DNS:x202.test - DNS:x203.test - DNS:x204.test - DNS:x205.test - DNS:x206.test - DNS:x207.test - DNS:x208.test - DNS:x209.test - DNS:x210.test - DNS:x211.test - DNS:x212.test - DNS:x213.test - DNS:x214.test - DNS:x215.test - DNS:x216.test - DNS:x217.test - DNS:x218.test - DNS:x219.test - DNS:x220.test - DNS:x221.test - DNS:x222.test - DNS:x223.test - DNS:x224.test - DNS:x225.test - DNS:x226.test - DNS:x227.test - DNS:x228.test - DNS:x229.test - DNS:x230.test - DNS:x231.test - DNS:x232.test - DNS:x233.test - DNS:x234.test - DNS:x235.test - DNS:x236.test - DNS:x237.test - DNS:x238.test - DNS:x239.test - DNS:x240.test - DNS:x241.test - DNS:x242.test - DNS:x243.test - DNS:x244.test - DNS:x245.test - DNS:x246.test - DNS:x247.test - DNS:x248.test - DNS:x249.test - DNS:x250.test - DNS:x251.test - DNS:x252.test - DNS:x253.test - DNS:x254.test - DNS:x255.test - DNS:x256.test - DNS:x257.test - DNS:x258.test - DNS:x259.test - DNS:x260.test - DNS:x261.test - DNS:x262.test - DNS:x263.test - DNS:x264.test - DNS:x265.test - DNS:x266.test - DNS:x267.test - DNS:x268.test - DNS:x269.test - DNS:x270.test - DNS:x271.test - DNS:x272.test - DNS:x273.test - DNS:x274.test - DNS:x275.test - DNS:x276.test - DNS:x277.test - DNS:x278.test - DNS:x279.test - DNS:x280.test - DNS:x281.test - DNS:x282.test - DNS:x283.test - DNS:x284.test - DNS:x285.test - DNS:x286.test - DNS:x287.test - DNS:x288.test - DNS:x289.test - DNS:x290.test - DNS:x291.test - DNS:x292.test - DNS:x293.test - DNS:x294.test - DNS:x295.test - DNS:x296.test - DNS:x297.test - DNS:x298.test - DNS:x299.test - DNS:x300.test - DNS:x301.test - DNS:x302.test - DNS:x303.test - DNS:x304.test - DNS:x305.test - DNS:x306.test - DNS:x307.test - DNS:x308.test - DNS:x309.test - DNS:x310.test - DNS:x311.test - DNS:x312.test - DNS:x313.test - DNS:x314.test - DNS:x315.test - DNS:x316.test - DNS:x317.test - DNS:x318.test - DNS:x319.test - DNS:x320.test - DNS:x321.test - DNS:x322.test - DNS:x323.test - DNS:x324.test - DNS:x325.test - DNS:x326.test - DNS:x327.test - DNS:x328.test - DNS:x329.test - DNS:x330.test - DNS:x331.test - DNS:x332.test - DNS:x333.test - DNS:x334.test - DNS:x335.test - DNS:x336.test - DNS:x337.test - DNS:x338.test - DNS:x339.test - DNS:x340.test - DNS:x341.test - DNS:x342.test - DNS:x343.test - DNS:x344.test - DNS:x345.test - DNS:x346.test - DNS:x347.test - DNS:x348.test - DNS:x349.test - DNS:x350.test - DNS:x351.test - DNS:x352.test - DNS:x353.test - DNS:x354.test - DNS:x355.test - DNS:x356.test - DNS:x357.test - DNS:x358.test - DNS:x359.test - DNS:x360.test - DNS:x361.test - DNS:x362.test - DNS:x363.test - DNS:x364.test - DNS:x365.test - DNS:x366.test - DNS:x367.test - DNS:x368.test - DNS:x369.test - DNS:x370.test - DNS:x371.test - DNS:x372.test - DNS:x373.test - DNS:x374.test - DNS:x375.test - DNS:x376.test - DNS:x377.test - DNS:x378.test - DNS:x379.test - DNS:x380.test - DNS:x381.test - DNS:x382.test - DNS:x383.test - DNS:x384.test - DNS:x385.test - DNS:x386.test - DNS:x387.test - DNS:x388.test - DNS:x389.test - DNS:x390.test - DNS:x391.test - DNS:x392.test - DNS:x393.test - DNS:x394.test - DNS:x395.test - DNS:x396.test - DNS:x397.test - DNS:x398.test - DNS:x399.test - DNS:x400.test - DNS:x401.test - DNS:x402.test - DNS:x403.test - DNS:x404.test - DNS:x405.test - DNS:x406.test - DNS:x407.test - DNS:x408.test - DNS:x409.test - DNS:x410.test - DNS:x411.test - DNS:x412.test - DNS:x413.test - DNS:x414.test - DNS:x415.test - DNS:x416.test - DNS:x417.test - DNS:x418.test - DNS:x419.test - DNS:x420.test - DNS:x421.test - DNS:x422.test - DNS:x423.test - DNS:x424.test - DNS:x425.test - DNS:x426.test - DNS:x427.test - DNS:x428.test - DNS:x429.test - DNS:x430.test - DNS:x431.test - DNS:x432.test - DNS:x433.test - DNS:x434.test - DNS:x435.test - DNS:x436.test - DNS:x437.test - DNS:x438.test - DNS:x439.test - DNS:x440.test - DNS:x441.test - DNS:x442.test - DNS:x443.test - DNS:x444.test - DNS:x445.test - DNS:x446.test - DNS:x447.test - DNS:x448.test - DNS:x449.test - DNS:x450.test - DNS:x451.test - DNS:x452.test - DNS:x453.test - DNS:x454.test - DNS:x455.test - DNS:x456.test - DNS:x457.test - DNS:x458.test - DNS:x459.test - DNS:x460.test - DNS:x461.test - DNS:x462.test - DNS:x463.test - DNS:x464.test - DNS:x465.test - DNS:x466.test - DNS:x467.test - DNS:x468.test - DNS:x469.test - DNS:x470.test - DNS:x471.test - DNS:x472.test - DNS:x473.test - DNS:x474.test - DNS:x475.test - DNS:x476.test - DNS:x477.test - DNS:x478.test - DNS:x479.test - DNS:x480.test - DNS:x481.test - DNS:x482.test - DNS:x483.test - DNS:x484.test - DNS:x485.test - DNS:x486.test - DNS:x487.test - DNS:x488.test - DNS:x489.test - DNS:x490.test - DNS:x491.test - DNS:x492.test - DNS:x493.test - DNS:x494.test - DNS:x495.test - DNS:x496.test - DNS:x497.test - DNS:x498.test - DNS:x499.test - DNS:x500.test - DNS:x501.test - DNS:x502.test - DNS:x503.test - DNS:x504.test - DNS:x505.test - DNS:x506.test - DNS:x507.test - DNS:x508.test - DNS:x509.test - DNS:x510.test - DNS:x511.test - DNS:x512.test - DNS:x513.test - DNS:x514.test - DNS:x515.test - DNS:x516.test - DNS:x517.test - DNS:x518.test - DNS:x519.test - DNS:x520.test - DNS:x521.test - DNS:x522.test - DNS:x523.test - DNS:x524.test - DNS:x525.test - DNS:x526.test - DNS:x527.test - DNS:x528.test - DNS:x529.test - DNS:x530.test - DNS:x531.test - DNS:x532.test - DNS:x533.test - DNS:x534.test - DNS:x535.test - DNS:x536.test - DNS:x537.test - DNS:x538.test - DNS:x539.test - DNS:x540.test - DNS:x541.test - DNS:x542.test - DNS:x543.test - DNS:x544.test - DNS:x545.test - DNS:x546.test - DNS:x547.test - DNS:x548.test - DNS:x549.test - DNS:x550.test - DNS:x551.test - DNS:x552.test - DNS:x553.test - DNS:x554.test - DNS:x555.test - DNS:x556.test - DNS:x557.test - DNS:x558.test - DNS:x559.test - DNS:x560.test - DNS:x561.test - DNS:x562.test - DNS:x563.test - DNS:x564.test - DNS:x565.test - DNS:x566.test - DNS:x567.test - DNS:x568.test - DNS:x569.test - DNS:x570.test - DNS:x571.test - DNS:x572.test - DNS:x573.test - DNS:x574.test - DNS:x575.test - DNS:x576.test - DNS:x577.test - DNS:x578.test - DNS:x579.test - DNS:x580.test - DNS:x581.test - DNS:x582.test - DNS:x583.test - DNS:x584.test - DNS:x585.test - DNS:x586.test - DNS:x587.test - DNS:x588.test - DNS:x589.test - DNS:x590.test - DNS:x591.test - DNS:x592.test - DNS:x593.test - DNS:x594.test - DNS:x595.test - DNS:x596.test - DNS:x597.test - DNS:x598.test - DNS:x599.test - DNS:x600.test - DNS:x601.test - DNS:x602.test - DNS:x603.test - DNS:x604.test - DNS:x605.test - DNS:x606.test - DNS:x607.test - DNS:x608.test - DNS:x609.test - DNS:x610.test - DNS:x611.test - DNS:x612.test - DNS:x613.test - DNS:x614.test - DNS:x615.test - DNS:x616.test - DNS:x617.test - DNS:x618.test - DNS:x619.test - DNS:x620.test - DNS:x621.test - DNS:x622.test - DNS:x623.test - DNS:x624.test - DNS:x625.test - DNS:x626.test - DNS:x627.test - DNS:x628.test - DNS:x629.test - DNS:x630.test - DNS:x631.test - DNS:x632.test - DNS:x633.test - DNS:x634.test - DNS:x635.test - DNS:x636.test - DNS:x637.test - DNS:x638.test - DNS:x639.test - DNS:x640.test - DNS:x641.test - DNS:x642.test - DNS:x643.test - DNS:x644.test - DNS:x645.test - DNS:x646.test - DNS:x647.test - DNS:x648.test - DNS:x649.test - DNS:x650.test - DNS:x651.test - DNS:x652.test - DNS:x653.test - DNS:x654.test - DNS:x655.test - DNS:x656.test - DNS:x657.test - DNS:x658.test - DNS:x659.test - DNS:x660.test - DNS:x661.test - DNS:x662.test - DNS:x663.test - DNS:x664.test - DNS:x665.test - DNS:x666.test - DNS:x667.test - DNS:x668.test - DNS:x669.test - DNS:x670.test - DNS:x671.test - DNS:x672.test - DNS:x673.test - DNS:x674.test - DNS:x675.test - DNS:x676.test - DNS:x677.test - DNS:x678.test - DNS:x679.test - DNS:x680.test - DNS:x681.test - DNS:x682.test - DNS:x683.test - DNS:x684.test - DNS:x685.test - DNS:x686.test - DNS:x687.test - DNS:x688.test - DNS:x689.test - DNS:x690.test - DNS:x691.test - DNS:x692.test - DNS:x693.test - DNS:x694.test - DNS:x695.test - DNS:x696.test - DNS:x697.test - DNS:x698.test - DNS:x699.test - DNS:x700.test - DNS:x701.test - DNS:x702.test - DNS:x703.test - DNS:x704.test - DNS:x705.test - DNS:x706.test - DNS:x707.test - DNS:x708.test - DNS:x709.test - DNS:x710.test - DNS:x711.test - DNS:x712.test - DNS:x713.test - DNS:x714.test - DNS:x715.test - DNS:x716.test - DNS:x717.test - DNS:x718.test - DNS:x719.test - DNS:x720.test - DNS:x721.test - DNS:x722.test - DNS:x723.test - DNS:x724.test - DNS:x725.test - DNS:x726.test - DNS:x727.test - DNS:x728.test - DNS:x729.test - DNS:x730.test - DNS:x731.test - DNS:x732.test - DNS:x733.test - DNS:x734.test - DNS:x735.test - DNS:x736.test - DNS:x737.test - DNS:x738.test - DNS:x739.test - DNS:x740.test - DNS:x741.test - DNS:x742.test - DNS:x743.test - DNS:x744.test - DNS:x745.test - DNS:x746.test - DNS:x747.test - DNS:x748.test - DNS:x749.test - DNS:x750.test - DNS:x751.test - DNS:x752.test - DNS:x753.test - DNS:x754.test - DNS:x755.test - DNS:x756.test - DNS:x757.test - DNS:x758.test - DNS:x759.test - DNS:x760.test - DNS:x761.test - DNS:x762.test - DNS:x763.test - DNS:x764.test - DNS:x765.test - DNS:x766.test - DNS:x767.test - DNS:x768.test - DNS:x769.test - DNS:x770.test - DNS:x771.test - DNS:x772.test - DNS:x773.test - DNS:x774.test - DNS:x775.test - DNS:x776.test - DNS:x777.test - DNS:x778.test - DNS:x779.test - DNS:x780.test - DNS:x781.test - DNS:x782.test - DNS:x783.test - DNS:x784.test - DNS:x785.test - DNS:x786.test - DNS:x787.test - DNS:x788.test - DNS:x789.test - DNS:x790.test - DNS:x791.test - DNS:x792.test - DNS:x793.test - DNS:x794.test - DNS:x795.test - DNS:x796.test - DNS:x797.test - DNS:x798.test - DNS:x799.test - DNS:x800.test - DNS:x801.test - DNS:x802.test - DNS:x803.test - DNS:x804.test - DNS:x805.test - DNS:x806.test - DNS:x807.test - DNS:x808.test - DNS:x809.test - DNS:x810.test - DNS:x811.test - DNS:x812.test - DNS:x813.test - DNS:x814.test - DNS:x815.test - DNS:x816.test - DNS:x817.test - DNS:x818.test - DNS:x819.test - DNS:x820.test - DNS:x821.test - DNS:x822.test - DNS:x823.test - DNS:x824.test - DNS:x825.test - DNS:x826.test - DNS:x827.test - DNS:x828.test - DNS:x829.test - DNS:x830.test - DNS:x831.test - DNS:x832.test - DNS:x833.test - DNS:x834.test - DNS:x835.test - DNS:x836.test - DNS:x837.test - DNS:x838.test - DNS:x839.test - DNS:x840.test - DNS:x841.test - DNS:x842.test - DNS:x843.test - DNS:x844.test - DNS:x845.test - DNS:x846.test - DNS:x847.test - DNS:x848.test - DNS:x849.test - DNS:x850.test - DNS:x851.test - DNS:x852.test - DNS:x853.test - DNS:x854.test - DNS:x855.test - DNS:x856.test - DNS:x857.test - DNS:x858.test - DNS:x859.test - DNS:x860.test - DNS:x861.test - DNS:x862.test - DNS:x863.test - DNS:x864.test - DNS:x865.test - DNS:x866.test - DNS:x867.test - DNS:x868.test - DNS:x869.test - DNS:x870.test - DNS:x871.test - DNS:x872.test - DNS:x873.test - DNS:x874.test - DNS:x875.test - DNS:x876.test - DNS:x877.test - DNS:x878.test - DNS:x879.test - DNS:x880.test - DNS:x881.test - DNS:x882.test - DNS:x883.test - DNS:x884.test - DNS:x885.test - DNS:x886.test - DNS:x887.test - DNS:x888.test - DNS:x889.test - DNS:x890.test - DNS:x891.test - DNS:x892.test - DNS:x893.test - DNS:x894.test - DNS:x895.test - DNS:x896.test - DNS:x897.test - DNS:x898.test - DNS:x899.test - DNS:x900.test - DNS:x901.test - DNS:x902.test - DNS:x903.test - DNS:x904.test - DNS:x905.test - DNS:x906.test - DNS:x907.test - DNS:x908.test - DNS:x909.test - DNS:x910.test - DNS:x911.test - DNS:x912.test - DNS:x913.test - DNS:x914.test - DNS:x915.test - DNS:x916.test - DNS:x917.test - DNS:x918.test - DNS:x919.test - DNS:x920.test - DNS:x921.test - DNS:x922.test - DNS:x923.test - DNS:x924.test - DNS:x925.test - DNS:x926.test - DNS:x927.test - DNS:x928.test - DNS:x929.test - DNS:x930.test - DNS:x931.test - DNS:x932.test - DNS:x933.test - DNS:x934.test - DNS:x935.test - DNS:x936.test - DNS:x937.test - DNS:x938.test - DNS:x939.test - DNS:x940.test - DNS:x941.test - DNS:x942.test - DNS:x943.test - DNS:x944.test - DNS:x945.test - DNS:x946.test - DNS:x947.test - DNS:x948.test - DNS:x949.test - DNS:x950.test - DNS:x951.test - DNS:x952.test - DNS:x953.test - DNS:x954.test - DNS:x955.test - DNS:x956.test - DNS:x957.test - DNS:x958.test - DNS:x959.test - DNS:x960.test - DNS:x961.test - DNS:x962.test - DNS:x963.test - DNS:x964.test - DNS:x965.test - DNS:x966.test - DNS:x967.test - DNS:x968.test - DNS:x969.test - DNS:x970.test - DNS:x971.test - DNS:x972.test - DNS:x973.test - DNS:x974.test - DNS:x975.test - DNS:x976.test - DNS:x977.test - DNS:x978.test - DNS:x979.test - DNS:x980.test - DNS:x981.test - DNS:x982.test - DNS:x983.test - DNS:x984.test - DNS:x985.test - DNS:x986.test - DNS:x987.test - DNS:x988.test - DNS:x989.test - DNS:x990.test - DNS:x991.test - DNS:x992.test - DNS:x993.test - DNS:x994.test - DNS:x995.test - DNS:x996.test - DNS:x997.test - DNS:x998.test - DNS:x999.test - DNS:x1000.test - DNS:x1001.test - DNS:x1002.test - DNS:x1003.test - DNS:x1004.test - DNS:x1005.test - DNS:x1006.test - DNS:x1007.test - DNS:x1008.test - DNS:x1009.test - DNS:x1010.test - DNS:x1011.test - DNS:x1012.test - DNS:x1013.test - DNS:x1014.test - DNS:x1015.test - DNS:x1016.test - DNS:x1017.test - DNS:x1018.test - DNS:x1019.test - DNS:x1020.test - DNS:x1021.test - DNS:x1022.test - DNS:x1023.test - DNS:x1024.test - - Signature Algorithm: sha256WithRSAEncryption - a3:61:e0:bd:55:1b:55:36:05:4b:22:0a:7c:93:62:ba:08:ce: - 68:b5:8a:62:f7:57:27:6c:0f:d0:03:f4:57:f1:a0:e5:35:69: - 91:fe:66:af:27:ae:54:92:67:3b:a7:ce:86:7e:dd:66:e9:a4: - dc:69:49:6d:c3:96:da:fd:3d:4a:27:60:f1:24:f8:f1:be:34: - f6:b6:43:53:02:8a:0f:87:42:07:5d:91:d3:9d:96:39:93:9c: - b6:f2:38:fd:37:2f:7d:f4:02:67:3f:73:bb:96:7e:55:1b:38: - f2:6e:c8:35:90:28:1d:d9:c2:45:e7:17:03:33:96:f9:59:eb: - 0f:bc:2c:52:57:6a:fc:2f:3d:f0:f3:5c:1d:d7:1a:8d:e2:02: - a8:96:15:e0:61:95:d6:09:ba:b9:7b:c0:36:cc:ce:96:7b:7f: - ef:35:f7:f3:08:28:b6:ac:2a:41:a6:22:43:6c:76:c5:34:1d: - e8:47:bf:dd:56:7a:0f:7d:bd:2e:a9:6b:ed:92:39:a5:36:35: - 09:52:6b:fa:03:b0:6d:68:e2:83:2e:8f:7e:87:71:fc:42:2d: - f2:07:16:53:8d:1a:02:c0:03:55:d3:bf:1d:c1:07:f5:63:ec: - 3f:6f:26:4c:e7:47:d0:9d:e6:04:00:ad:b6:87:de:03:59:b0: - 80:10:78:3e ------BEGIN CERTIFICATE----- -MII3TzCCNjegAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vgwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCNJkwgjSVMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgjPJBgNVHR4EgjPAMIIzvKGCM7gwCYIHeDAudGVzdDAJggd4MS50ZXN0MAmC -B3gyLnRlc3QwCYIHeDMudGVzdDAJggd4NC50ZXN0MAmCB3g1LnRlc3QwCYIHeDYu -dGVzdDAJggd4Ny50ZXN0MAmCB3g4LnRlc3QwCYIHeDkudGVzdDAKggh4MTAudGVz -dDAKggh4MTEudGVzdDAKggh4MTIudGVzdDAKggh4MTMudGVzdDAKggh4MTQudGVz -dDAKggh4MTUudGVzdDAKggh4MTYudGVzdDAKggh4MTcudGVzdDAKggh4MTgudGVz -dDAKggh4MTkudGVzdDAKggh4MjAudGVzdDAKggh4MjEudGVzdDAKggh4MjIudGVz -dDAKggh4MjMudGVzdDAKggh4MjQudGVzdDAKggh4MjUudGVzdDAKggh4MjYudGVz -dDAKggh4MjcudGVzdDAKggh4MjgudGVzdDAKggh4MjkudGVzdDAKggh4MzAudGVz -dDAKggh4MzEudGVzdDAKggh4MzIudGVzdDAKggh4MzMudGVzdDAKggh4MzQudGVz -dDAKggh4MzUudGVzdDAKggh4MzYudGVzdDAKggh4MzcudGVzdDAKggh4MzgudGVz -dDAKggh4MzkudGVzdDAKggh4NDAudGVzdDAKggh4NDEudGVzdDAKggh4NDIudGVz -dDAKggh4NDMudGVzdDAKggh4NDQudGVzdDAKggh4NDUudGVzdDAKggh4NDYudGVz -dDAKggh4NDcudGVzdDAKggh4NDgudGVzdDAKggh4NDkudGVzdDAKggh4NTAudGVz -dDAKggh4NTEudGVzdDAKggh4NTIudGVzdDAKggh4NTMudGVzdDAKggh4NTQudGVz -dDAKggh4NTUudGVzdDAKggh4NTYudGVzdDAKggh4NTcudGVzdDAKggh4NTgudGVz -dDAKggh4NTkudGVzdDAKggh4NjAudGVzdDAKggh4NjEudGVzdDAKggh4NjIudGVz -dDAKggh4NjMudGVzdDAKggh4NjQudGVzdDAKggh4NjUudGVzdDAKggh4NjYudGVz -dDAKggh4NjcudGVzdDAKggh4NjgudGVzdDAKggh4NjkudGVzdDAKggh4NzAudGVz -dDAKggh4NzEudGVzdDAKggh4NzIudGVzdDAKggh4NzMudGVzdDAKggh4NzQudGVz -dDAKggh4NzUudGVzdDAKggh4NzYudGVzdDAKggh4NzcudGVzdDAKggh4NzgudGVz -dDAKggh4NzkudGVzdDAKggh4ODAudGVzdDAKggh4ODEudGVzdDAKggh4ODIudGVz -dDAKggh4ODMudGVzdDAKggh4ODQudGVzdDAKggh4ODUudGVzdDAKggh4ODYudGVz -dDAKggh4ODcudGVzdDAKggh4ODgudGVzdDAKggh4ODkudGVzdDAKggh4OTAudGVz -dDAKggh4OTEudGVzdDAKggh4OTIudGVzdDAKggh4OTMudGVzdDAKggh4OTQudGVz -dDAKggh4OTUudGVzdDAKggh4OTYudGVzdDAKggh4OTcudGVzdDAKggh4OTgudGVz -dDAKggh4OTkudGVzdDALggl4MTAwLnRlc3QwC4IJeDEwMS50ZXN0MAuCCXgxMDIu -dGVzdDALggl4MTAzLnRlc3QwC4IJeDEwNC50ZXN0MAuCCXgxMDUudGVzdDALggl4 -MTA2LnRlc3QwC4IJeDEwNy50ZXN0MAuCCXgxMDgudGVzdDALggl4MTA5LnRlc3Qw -C4IJeDExMC50ZXN0MAuCCXgxMTEudGVzdDALggl4MTEyLnRlc3QwC4IJeDExMy50 -ZXN0MAuCCXgxMTQudGVzdDALggl4MTE1LnRlc3QwC4IJeDExNi50ZXN0MAuCCXgx -MTcudGVzdDALggl4MTE4LnRlc3QwC4IJeDExOS50ZXN0MAuCCXgxMjAudGVzdDAL -ggl4MTIxLnRlc3QwC4IJeDEyMi50ZXN0MAuCCXgxMjMudGVzdDALggl4MTI0LnRl -c3QwC4IJeDEyNS50ZXN0MAuCCXgxMjYudGVzdDALggl4MTI3LnRlc3QwC4IJeDEy -OC50ZXN0MAuCCXgxMjkudGVzdDALggl4MTMwLnRlc3QwC4IJeDEzMS50ZXN0MAuC -CXgxMzIudGVzdDALggl4MTMzLnRlc3QwC4IJeDEzNC50ZXN0MAuCCXgxMzUudGVz -dDALggl4MTM2LnRlc3QwC4IJeDEzNy50ZXN0MAuCCXgxMzgudGVzdDALggl4MTM5 -LnRlc3QwC4IJeDE0MC50ZXN0MAuCCXgxNDEudGVzdDALggl4MTQyLnRlc3QwC4IJ -eDE0My50ZXN0MAuCCXgxNDQudGVzdDALggl4MTQ1LnRlc3QwC4IJeDE0Ni50ZXN0 -MAuCCXgxNDcudGVzdDALggl4MTQ4LnRlc3QwC4IJeDE0OS50ZXN0MAuCCXgxNTAu -dGVzdDALggl4MTUxLnRlc3QwC4IJeDE1Mi50ZXN0MAuCCXgxNTMudGVzdDALggl4 -MTU0LnRlc3QwC4IJeDE1NS50ZXN0MAuCCXgxNTYudGVzdDALggl4MTU3LnRlc3Qw -C4IJeDE1OC50ZXN0MAuCCXgxNTkudGVzdDALggl4MTYwLnRlc3QwC4IJeDE2MS50 -ZXN0MAuCCXgxNjIudGVzdDALggl4MTYzLnRlc3QwC4IJeDE2NC50ZXN0MAuCCXgx -NjUudGVzdDALggl4MTY2LnRlc3QwC4IJeDE2Ny50ZXN0MAuCCXgxNjgudGVzdDAL -ggl4MTY5LnRlc3QwC4IJeDE3MC50ZXN0MAuCCXgxNzEudGVzdDALggl4MTcyLnRl -c3QwC4IJeDE3My50ZXN0MAuCCXgxNzQudGVzdDALggl4MTc1LnRlc3QwC4IJeDE3 -Ni50ZXN0MAuCCXgxNzcudGVzdDALggl4MTc4LnRlc3QwC4IJeDE3OS50ZXN0MAuC -CXgxODAudGVzdDALggl4MTgxLnRlc3QwC4IJeDE4Mi50ZXN0MAuCCXgxODMudGVz -dDALggl4MTg0LnRlc3QwC4IJeDE4NS50ZXN0MAuCCXgxODYudGVzdDALggl4MTg3 -LnRlc3QwC4IJeDE4OC50ZXN0MAuCCXgxODkudGVzdDALggl4MTkwLnRlc3QwC4IJ -eDE5MS50ZXN0MAuCCXgxOTIudGVzdDALggl4MTkzLnRlc3QwC4IJeDE5NC50ZXN0 -MAuCCXgxOTUudGVzdDALggl4MTk2LnRlc3QwC4IJeDE5Ny50ZXN0MAuCCXgxOTgu -dGVzdDALggl4MTk5LnRlc3QwC4IJeDIwMC50ZXN0MAuCCXgyMDEudGVzdDALggl4 -MjAyLnRlc3QwC4IJeDIwMy50ZXN0MAuCCXgyMDQudGVzdDALggl4MjA1LnRlc3Qw -C4IJeDIwNi50ZXN0MAuCCXgyMDcudGVzdDALggl4MjA4LnRlc3QwC4IJeDIwOS50 -ZXN0MAuCCXgyMTAudGVzdDALggl4MjExLnRlc3QwC4IJeDIxMi50ZXN0MAuCCXgy -MTMudGVzdDALggl4MjE0LnRlc3QwC4IJeDIxNS50ZXN0MAuCCXgyMTYudGVzdDAL -ggl4MjE3LnRlc3QwC4IJeDIxOC50ZXN0MAuCCXgyMTkudGVzdDALggl4MjIwLnRl -c3QwC4IJeDIyMS50ZXN0MAuCCXgyMjIudGVzdDALggl4MjIzLnRlc3QwC4IJeDIy -NC50ZXN0MAuCCXgyMjUudGVzdDALggl4MjI2LnRlc3QwC4IJeDIyNy50ZXN0MAuC -CXgyMjgudGVzdDALggl4MjI5LnRlc3QwC4IJeDIzMC50ZXN0MAuCCXgyMzEudGVz -dDALggl4MjMyLnRlc3QwC4IJeDIzMy50ZXN0MAuCCXgyMzQudGVzdDALggl4MjM1 -LnRlc3QwC4IJeDIzNi50ZXN0MAuCCXgyMzcudGVzdDALggl4MjM4LnRlc3QwC4IJ -eDIzOS50ZXN0MAuCCXgyNDAudGVzdDALggl4MjQxLnRlc3QwC4IJeDI0Mi50ZXN0 -MAuCCXgyNDMudGVzdDALggl4MjQ0LnRlc3QwC4IJeDI0NS50ZXN0MAuCCXgyNDYu -dGVzdDALggl4MjQ3LnRlc3QwC4IJeDI0OC50ZXN0MAuCCXgyNDkudGVzdDALggl4 -MjUwLnRlc3QwC4IJeDI1MS50ZXN0MAuCCXgyNTIudGVzdDALggl4MjUzLnRlc3Qw -C4IJeDI1NC50ZXN0MAuCCXgyNTUudGVzdDALggl4MjU2LnRlc3QwC4IJeDI1Ny50 -ZXN0MAuCCXgyNTgudGVzdDALggl4MjU5LnRlc3QwC4IJeDI2MC50ZXN0MAuCCXgy -NjEudGVzdDALggl4MjYyLnRlc3QwC4IJeDI2My50ZXN0MAuCCXgyNjQudGVzdDAL -ggl4MjY1LnRlc3QwC4IJeDI2Ni50ZXN0MAuCCXgyNjcudGVzdDALggl4MjY4LnRl -c3QwC4IJeDI2OS50ZXN0MAuCCXgyNzAudGVzdDALggl4MjcxLnRlc3QwC4IJeDI3 -Mi50ZXN0MAuCCXgyNzMudGVzdDALggl4Mjc0LnRlc3QwC4IJeDI3NS50ZXN0MAuC -CXgyNzYudGVzdDALggl4Mjc3LnRlc3QwC4IJeDI3OC50ZXN0MAuCCXgyNzkudGVz -dDALggl4MjgwLnRlc3QwC4IJeDI4MS50ZXN0MAuCCXgyODIudGVzdDALggl4Mjgz -LnRlc3QwC4IJeDI4NC50ZXN0MAuCCXgyODUudGVzdDALggl4Mjg2LnRlc3QwC4IJ -eDI4Ny50ZXN0MAuCCXgyODgudGVzdDALggl4Mjg5LnRlc3QwC4IJeDI5MC50ZXN0 -MAuCCXgyOTEudGVzdDALggl4MjkyLnRlc3QwC4IJeDI5My50ZXN0MAuCCXgyOTQu -dGVzdDALggl4Mjk1LnRlc3QwC4IJeDI5Ni50ZXN0MAuCCXgyOTcudGVzdDALggl4 -Mjk4LnRlc3QwC4IJeDI5OS50ZXN0MAuCCXgzMDAudGVzdDALggl4MzAxLnRlc3Qw -C4IJeDMwMi50ZXN0MAuCCXgzMDMudGVzdDALggl4MzA0LnRlc3QwC4IJeDMwNS50 -ZXN0MAuCCXgzMDYudGVzdDALggl4MzA3LnRlc3QwC4IJeDMwOC50ZXN0MAuCCXgz -MDkudGVzdDALggl4MzEwLnRlc3QwC4IJeDMxMS50ZXN0MAuCCXgzMTIudGVzdDAL -ggl4MzEzLnRlc3QwC4IJeDMxNC50ZXN0MAuCCXgzMTUudGVzdDALggl4MzE2LnRl -c3QwC4IJeDMxNy50ZXN0MAuCCXgzMTgudGVzdDALggl4MzE5LnRlc3QwC4IJeDMy -MC50ZXN0MAuCCXgzMjEudGVzdDALggl4MzIyLnRlc3QwC4IJeDMyMy50ZXN0MAuC -CXgzMjQudGVzdDALggl4MzI1LnRlc3QwC4IJeDMyNi50ZXN0MAuCCXgzMjcudGVz -dDALggl4MzI4LnRlc3QwC4IJeDMyOS50ZXN0MAuCCXgzMzAudGVzdDALggl4MzMx -LnRlc3QwC4IJeDMzMi50ZXN0MAuCCXgzMzMudGVzdDALggl4MzM0LnRlc3QwC4IJ -eDMzNS50ZXN0MAuCCXgzMzYudGVzdDALggl4MzM3LnRlc3QwC4IJeDMzOC50ZXN0 -MAuCCXgzMzkudGVzdDALggl4MzQwLnRlc3QwC4IJeDM0MS50ZXN0MAuCCXgzNDIu -dGVzdDALggl4MzQzLnRlc3QwC4IJeDM0NC50ZXN0MAuCCXgzNDUudGVzdDALggl4 -MzQ2LnRlc3QwC4IJeDM0Ny50ZXN0MAuCCXgzNDgudGVzdDALggl4MzQ5LnRlc3Qw -C4IJeDM1MC50ZXN0MAuCCXgzNTEudGVzdDALggl4MzUyLnRlc3QwC4IJeDM1My50 -ZXN0MAuCCXgzNTQudGVzdDALggl4MzU1LnRlc3QwC4IJeDM1Ni50ZXN0MAuCCXgz -NTcudGVzdDALggl4MzU4LnRlc3QwC4IJeDM1OS50ZXN0MAuCCXgzNjAudGVzdDAL -ggl4MzYxLnRlc3QwC4IJeDM2Mi50ZXN0MAuCCXgzNjMudGVzdDALggl4MzY0LnRl -c3QwC4IJeDM2NS50ZXN0MAuCCXgzNjYudGVzdDALggl4MzY3LnRlc3QwC4IJeDM2 -OC50ZXN0MAuCCXgzNjkudGVzdDALggl4MzcwLnRlc3QwC4IJeDM3MS50ZXN0MAuC -CXgzNzIudGVzdDALggl4MzczLnRlc3QwC4IJeDM3NC50ZXN0MAuCCXgzNzUudGVz -dDALggl4Mzc2LnRlc3QwC4IJeDM3Ny50ZXN0MAuCCXgzNzgudGVzdDALggl4Mzc5 -LnRlc3QwC4IJeDM4MC50ZXN0MAuCCXgzODEudGVzdDALggl4MzgyLnRlc3QwC4IJ -eDM4My50ZXN0MAuCCXgzODQudGVzdDALggl4Mzg1LnRlc3QwC4IJeDM4Ni50ZXN0 -MAuCCXgzODcudGVzdDALggl4Mzg4LnRlc3QwC4IJeDM4OS50ZXN0MAuCCXgzOTAu -dGVzdDALggl4MzkxLnRlc3QwC4IJeDM5Mi50ZXN0MAuCCXgzOTMudGVzdDALggl4 -Mzk0LnRlc3QwC4IJeDM5NS50ZXN0MAuCCXgzOTYudGVzdDALggl4Mzk3LnRlc3Qw -C4IJeDM5OC50ZXN0MAuCCXgzOTkudGVzdDALggl4NDAwLnRlc3QwC4IJeDQwMS50 -ZXN0MAuCCXg0MDIudGVzdDALggl4NDAzLnRlc3QwC4IJeDQwNC50ZXN0MAuCCXg0 -MDUudGVzdDALggl4NDA2LnRlc3QwC4IJeDQwNy50ZXN0MAuCCXg0MDgudGVzdDAL -ggl4NDA5LnRlc3QwC4IJeDQxMC50ZXN0MAuCCXg0MTEudGVzdDALggl4NDEyLnRl -c3QwC4IJeDQxMy50ZXN0MAuCCXg0MTQudGVzdDALggl4NDE1LnRlc3QwC4IJeDQx -Ni50ZXN0MAuCCXg0MTcudGVzdDALggl4NDE4LnRlc3QwC4IJeDQxOS50ZXN0MAuC -CXg0MjAudGVzdDALggl4NDIxLnRlc3QwC4IJeDQyMi50ZXN0MAuCCXg0MjMudGVz -dDALggl4NDI0LnRlc3QwC4IJeDQyNS50ZXN0MAuCCXg0MjYudGVzdDALggl4NDI3 -LnRlc3QwC4IJeDQyOC50ZXN0MAuCCXg0MjkudGVzdDALggl4NDMwLnRlc3QwC4IJ -eDQzMS50ZXN0MAuCCXg0MzIudGVzdDALggl4NDMzLnRlc3QwC4IJeDQzNC50ZXN0 -MAuCCXg0MzUudGVzdDALggl4NDM2LnRlc3QwC4IJeDQzNy50ZXN0MAuCCXg0Mzgu -dGVzdDALggl4NDM5LnRlc3QwC4IJeDQ0MC50ZXN0MAuCCXg0NDEudGVzdDALggl4 -NDQyLnRlc3QwC4IJeDQ0My50ZXN0MAuCCXg0NDQudGVzdDALggl4NDQ1LnRlc3Qw -C4IJeDQ0Ni50ZXN0MAuCCXg0NDcudGVzdDALggl4NDQ4LnRlc3QwC4IJeDQ0OS50 -ZXN0MAuCCXg0NTAudGVzdDALggl4NDUxLnRlc3QwC4IJeDQ1Mi50ZXN0MAuCCXg0 -NTMudGVzdDALggl4NDU0LnRlc3QwC4IJeDQ1NS50ZXN0MAuCCXg0NTYudGVzdDAL -ggl4NDU3LnRlc3QwC4IJeDQ1OC50ZXN0MAuCCXg0NTkudGVzdDALggl4NDYwLnRl -c3QwC4IJeDQ2MS50ZXN0MAuCCXg0NjIudGVzdDALggl4NDYzLnRlc3QwC4IJeDQ2 -NC50ZXN0MAuCCXg0NjUudGVzdDALggl4NDY2LnRlc3QwC4IJeDQ2Ny50ZXN0MAuC -CXg0NjgudGVzdDALggl4NDY5LnRlc3QwC4IJeDQ3MC50ZXN0MAuCCXg0NzEudGVz -dDALggl4NDcyLnRlc3QwC4IJeDQ3My50ZXN0MAuCCXg0NzQudGVzdDALggl4NDc1 -LnRlc3QwC4IJeDQ3Ni50ZXN0MAuCCXg0NzcudGVzdDALggl4NDc4LnRlc3QwC4IJ -eDQ3OS50ZXN0MAuCCXg0ODAudGVzdDALggl4NDgxLnRlc3QwC4IJeDQ4Mi50ZXN0 -MAuCCXg0ODMudGVzdDALggl4NDg0LnRlc3QwC4IJeDQ4NS50ZXN0MAuCCXg0ODYu -dGVzdDALggl4NDg3LnRlc3QwC4IJeDQ4OC50ZXN0MAuCCXg0ODkudGVzdDALggl4 -NDkwLnRlc3QwC4IJeDQ5MS50ZXN0MAuCCXg0OTIudGVzdDALggl4NDkzLnRlc3Qw -C4IJeDQ5NC50ZXN0MAuCCXg0OTUudGVzdDALggl4NDk2LnRlc3QwC4IJeDQ5Ny50 -ZXN0MAuCCXg0OTgudGVzdDALggl4NDk5LnRlc3QwC4IJeDUwMC50ZXN0MAuCCXg1 -MDEudGVzdDALggl4NTAyLnRlc3QwC4IJeDUwMy50ZXN0MAuCCXg1MDQudGVzdDAL -ggl4NTA1LnRlc3QwC4IJeDUwNi50ZXN0MAuCCXg1MDcudGVzdDALggl4NTA4LnRl -c3QwC4IJeDUwOS50ZXN0MAuCCXg1MTAudGVzdDALggl4NTExLnRlc3QwC4IJeDUx -Mi50ZXN0MAuCCXg1MTMudGVzdDALggl4NTE0LnRlc3QwC4IJeDUxNS50ZXN0MAuC -CXg1MTYudGVzdDALggl4NTE3LnRlc3QwC4IJeDUxOC50ZXN0MAuCCXg1MTkudGVz -dDALggl4NTIwLnRlc3QwC4IJeDUyMS50ZXN0MAuCCXg1MjIudGVzdDALggl4NTIz -LnRlc3QwC4IJeDUyNC50ZXN0MAuCCXg1MjUudGVzdDALggl4NTI2LnRlc3QwC4IJ -eDUyNy50ZXN0MAuCCXg1MjgudGVzdDALggl4NTI5LnRlc3QwC4IJeDUzMC50ZXN0 -MAuCCXg1MzEudGVzdDALggl4NTMyLnRlc3QwC4IJeDUzMy50ZXN0MAuCCXg1MzQu -dGVzdDALggl4NTM1LnRlc3QwC4IJeDUzNi50ZXN0MAuCCXg1MzcudGVzdDALggl4 -NTM4LnRlc3QwC4IJeDUzOS50ZXN0MAuCCXg1NDAudGVzdDALggl4NTQxLnRlc3Qw -C4IJeDU0Mi50ZXN0MAuCCXg1NDMudGVzdDALggl4NTQ0LnRlc3QwC4IJeDU0NS50 -ZXN0MAuCCXg1NDYudGVzdDALggl4NTQ3LnRlc3QwC4IJeDU0OC50ZXN0MAuCCXg1 -NDkudGVzdDALggl4NTUwLnRlc3QwC4IJeDU1MS50ZXN0MAuCCXg1NTIudGVzdDAL -ggl4NTUzLnRlc3QwC4IJeDU1NC50ZXN0MAuCCXg1NTUudGVzdDALggl4NTU2LnRl -c3QwC4IJeDU1Ny50ZXN0MAuCCXg1NTgudGVzdDALggl4NTU5LnRlc3QwC4IJeDU2 -MC50ZXN0MAuCCXg1NjEudGVzdDALggl4NTYyLnRlc3QwC4IJeDU2My50ZXN0MAuC -CXg1NjQudGVzdDALggl4NTY1LnRlc3QwC4IJeDU2Ni50ZXN0MAuCCXg1NjcudGVz -dDALggl4NTY4LnRlc3QwC4IJeDU2OS50ZXN0MAuCCXg1NzAudGVzdDALggl4NTcx -LnRlc3QwC4IJeDU3Mi50ZXN0MAuCCXg1NzMudGVzdDALggl4NTc0LnRlc3QwC4IJ -eDU3NS50ZXN0MAuCCXg1NzYudGVzdDALggl4NTc3LnRlc3QwC4IJeDU3OC50ZXN0 -MAuCCXg1NzkudGVzdDALggl4NTgwLnRlc3QwC4IJeDU4MS50ZXN0MAuCCXg1ODIu -dGVzdDALggl4NTgzLnRlc3QwC4IJeDU4NC50ZXN0MAuCCXg1ODUudGVzdDALggl4 -NTg2LnRlc3QwC4IJeDU4Ny50ZXN0MAuCCXg1ODgudGVzdDALggl4NTg5LnRlc3Qw -C4IJeDU5MC50ZXN0MAuCCXg1OTEudGVzdDALggl4NTkyLnRlc3QwC4IJeDU5My50 -ZXN0MAuCCXg1OTQudGVzdDALggl4NTk1LnRlc3QwC4IJeDU5Ni50ZXN0MAuCCXg1 -OTcudGVzdDALggl4NTk4LnRlc3QwC4IJeDU5OS50ZXN0MAuCCXg2MDAudGVzdDAL -ggl4NjAxLnRlc3QwC4IJeDYwMi50ZXN0MAuCCXg2MDMudGVzdDALggl4NjA0LnRl -c3QwC4IJeDYwNS50ZXN0MAuCCXg2MDYudGVzdDALggl4NjA3LnRlc3QwC4IJeDYw -OC50ZXN0MAuCCXg2MDkudGVzdDALggl4NjEwLnRlc3QwC4IJeDYxMS50ZXN0MAuC -CXg2MTIudGVzdDALggl4NjEzLnRlc3QwC4IJeDYxNC50ZXN0MAuCCXg2MTUudGVz -dDALggl4NjE2LnRlc3QwC4IJeDYxNy50ZXN0MAuCCXg2MTgudGVzdDALggl4NjE5 -LnRlc3QwC4IJeDYyMC50ZXN0MAuCCXg2MjEudGVzdDALggl4NjIyLnRlc3QwC4IJ -eDYyMy50ZXN0MAuCCXg2MjQudGVzdDALggl4NjI1LnRlc3QwC4IJeDYyNi50ZXN0 -MAuCCXg2MjcudGVzdDALggl4NjI4LnRlc3QwC4IJeDYyOS50ZXN0MAuCCXg2MzAu -dGVzdDALggl4NjMxLnRlc3QwC4IJeDYzMi50ZXN0MAuCCXg2MzMudGVzdDALggl4 -NjM0LnRlc3QwC4IJeDYzNS50ZXN0MAuCCXg2MzYudGVzdDALggl4NjM3LnRlc3Qw -C4IJeDYzOC50ZXN0MAuCCXg2MzkudGVzdDALggl4NjQwLnRlc3QwC4IJeDY0MS50 -ZXN0MAuCCXg2NDIudGVzdDALggl4NjQzLnRlc3QwC4IJeDY0NC50ZXN0MAuCCXg2 -NDUudGVzdDALggl4NjQ2LnRlc3QwC4IJeDY0Ny50ZXN0MAuCCXg2NDgudGVzdDAL -ggl4NjQ5LnRlc3QwC4IJeDY1MC50ZXN0MAuCCXg2NTEudGVzdDALggl4NjUyLnRl -c3QwC4IJeDY1My50ZXN0MAuCCXg2NTQudGVzdDALggl4NjU1LnRlc3QwC4IJeDY1 -Ni50ZXN0MAuCCXg2NTcudGVzdDALggl4NjU4LnRlc3QwC4IJeDY1OS50ZXN0MAuC -CXg2NjAudGVzdDALggl4NjYxLnRlc3QwC4IJeDY2Mi50ZXN0MAuCCXg2NjMudGVz -dDALggl4NjY0LnRlc3QwC4IJeDY2NS50ZXN0MAuCCXg2NjYudGVzdDALggl4NjY3 -LnRlc3QwC4IJeDY2OC50ZXN0MAuCCXg2NjkudGVzdDALggl4NjcwLnRlc3QwC4IJ -eDY3MS50ZXN0MAuCCXg2NzIudGVzdDALggl4NjczLnRlc3QwC4IJeDY3NC50ZXN0 -MAuCCXg2NzUudGVzdDALggl4Njc2LnRlc3QwC4IJeDY3Ny50ZXN0MAuCCXg2Nzgu -dGVzdDALggl4Njc5LnRlc3QwC4IJeDY4MC50ZXN0MAuCCXg2ODEudGVzdDALggl4 -NjgyLnRlc3QwC4IJeDY4My50ZXN0MAuCCXg2ODQudGVzdDALggl4Njg1LnRlc3Qw -C4IJeDY4Ni50ZXN0MAuCCXg2ODcudGVzdDALggl4Njg4LnRlc3QwC4IJeDY4OS50 -ZXN0MAuCCXg2OTAudGVzdDALggl4NjkxLnRlc3QwC4IJeDY5Mi50ZXN0MAuCCXg2 -OTMudGVzdDALggl4Njk0LnRlc3QwC4IJeDY5NS50ZXN0MAuCCXg2OTYudGVzdDAL -ggl4Njk3LnRlc3QwC4IJeDY5OC50ZXN0MAuCCXg2OTkudGVzdDALggl4NzAwLnRl -c3QwC4IJeDcwMS50ZXN0MAuCCXg3MDIudGVzdDALggl4NzAzLnRlc3QwC4IJeDcw -NC50ZXN0MAuCCXg3MDUudGVzdDALggl4NzA2LnRlc3QwC4IJeDcwNy50ZXN0MAuC -CXg3MDgudGVzdDALggl4NzA5LnRlc3QwC4IJeDcxMC50ZXN0MAuCCXg3MTEudGVz -dDALggl4NzEyLnRlc3QwC4IJeDcxMy50ZXN0MAuCCXg3MTQudGVzdDALggl4NzE1 -LnRlc3QwC4IJeDcxNi50ZXN0MAuCCXg3MTcudGVzdDALggl4NzE4LnRlc3QwC4IJ -eDcxOS50ZXN0MAuCCXg3MjAudGVzdDALggl4NzIxLnRlc3QwC4IJeDcyMi50ZXN0 -MAuCCXg3MjMudGVzdDALggl4NzI0LnRlc3QwC4IJeDcyNS50ZXN0MAuCCXg3MjYu -dGVzdDALggl4NzI3LnRlc3QwC4IJeDcyOC50ZXN0MAuCCXg3MjkudGVzdDALggl4 -NzMwLnRlc3QwC4IJeDczMS50ZXN0MAuCCXg3MzIudGVzdDALggl4NzMzLnRlc3Qw -C4IJeDczNC50ZXN0MAuCCXg3MzUudGVzdDALggl4NzM2LnRlc3QwC4IJeDczNy50 -ZXN0MAuCCXg3MzgudGVzdDALggl4NzM5LnRlc3QwC4IJeDc0MC50ZXN0MAuCCXg3 -NDEudGVzdDALggl4NzQyLnRlc3QwC4IJeDc0My50ZXN0MAuCCXg3NDQudGVzdDAL -ggl4NzQ1LnRlc3QwC4IJeDc0Ni50ZXN0MAuCCXg3NDcudGVzdDALggl4NzQ4LnRl -c3QwC4IJeDc0OS50ZXN0MAuCCXg3NTAudGVzdDALggl4NzUxLnRlc3QwC4IJeDc1 -Mi50ZXN0MAuCCXg3NTMudGVzdDALggl4NzU0LnRlc3QwC4IJeDc1NS50ZXN0MAuC -CXg3NTYudGVzdDALggl4NzU3LnRlc3QwC4IJeDc1OC50ZXN0MAuCCXg3NTkudGVz -dDALggl4NzYwLnRlc3QwC4IJeDc2MS50ZXN0MAuCCXg3NjIudGVzdDALggl4NzYz -LnRlc3QwC4IJeDc2NC50ZXN0MAuCCXg3NjUudGVzdDALggl4NzY2LnRlc3QwC4IJ -eDc2Ny50ZXN0MAuCCXg3NjgudGVzdDALggl4NzY5LnRlc3QwC4IJeDc3MC50ZXN0 -MAuCCXg3NzEudGVzdDALggl4NzcyLnRlc3QwC4IJeDc3My50ZXN0MAuCCXg3NzQu -dGVzdDALggl4Nzc1LnRlc3QwC4IJeDc3Ni50ZXN0MAuCCXg3NzcudGVzdDALggl4 -Nzc4LnRlc3QwC4IJeDc3OS50ZXN0MAuCCXg3ODAudGVzdDALggl4NzgxLnRlc3Qw -C4IJeDc4Mi50ZXN0MAuCCXg3ODMudGVzdDALggl4Nzg0LnRlc3QwC4IJeDc4NS50 -ZXN0MAuCCXg3ODYudGVzdDALggl4Nzg3LnRlc3QwC4IJeDc4OC50ZXN0MAuCCXg3 -ODkudGVzdDALggl4NzkwLnRlc3QwC4IJeDc5MS50ZXN0MAuCCXg3OTIudGVzdDAL -ggl4NzkzLnRlc3QwC4IJeDc5NC50ZXN0MAuCCXg3OTUudGVzdDALggl4Nzk2LnRl -c3QwC4IJeDc5Ny50ZXN0MAuCCXg3OTgudGVzdDALggl4Nzk5LnRlc3QwC4IJeDgw -MC50ZXN0MAuCCXg4MDEudGVzdDALggl4ODAyLnRlc3QwC4IJeDgwMy50ZXN0MAuC -CXg4MDQudGVzdDALggl4ODA1LnRlc3QwC4IJeDgwNi50ZXN0MAuCCXg4MDcudGVz -dDALggl4ODA4LnRlc3QwC4IJeDgwOS50ZXN0MAuCCXg4MTAudGVzdDALggl4ODEx -LnRlc3QwC4IJeDgxMi50ZXN0MAuCCXg4MTMudGVzdDALggl4ODE0LnRlc3QwC4IJ -eDgxNS50ZXN0MAuCCXg4MTYudGVzdDALggl4ODE3LnRlc3QwC4IJeDgxOC50ZXN0 -MAuCCXg4MTkudGVzdDALggl4ODIwLnRlc3QwC4IJeDgyMS50ZXN0MAuCCXg4MjIu -dGVzdDALggl4ODIzLnRlc3QwC4IJeDgyNC50ZXN0MAuCCXg4MjUudGVzdDALggl4 -ODI2LnRlc3QwC4IJeDgyNy50ZXN0MAuCCXg4MjgudGVzdDALggl4ODI5LnRlc3Qw -C4IJeDgzMC50ZXN0MAuCCXg4MzEudGVzdDALggl4ODMyLnRlc3QwC4IJeDgzMy50 -ZXN0MAuCCXg4MzQudGVzdDALggl4ODM1LnRlc3QwC4IJeDgzNi50ZXN0MAuCCXg4 -MzcudGVzdDALggl4ODM4LnRlc3QwC4IJeDgzOS50ZXN0MAuCCXg4NDAudGVzdDAL -ggl4ODQxLnRlc3QwC4IJeDg0Mi50ZXN0MAuCCXg4NDMudGVzdDALggl4ODQ0LnRl -c3QwC4IJeDg0NS50ZXN0MAuCCXg4NDYudGVzdDALggl4ODQ3LnRlc3QwC4IJeDg0 -OC50ZXN0MAuCCXg4NDkudGVzdDALggl4ODUwLnRlc3QwC4IJeDg1MS50ZXN0MAuC -CXg4NTIudGVzdDALggl4ODUzLnRlc3QwC4IJeDg1NC50ZXN0MAuCCXg4NTUudGVz -dDALggl4ODU2LnRlc3QwC4IJeDg1Ny50ZXN0MAuCCXg4NTgudGVzdDALggl4ODU5 -LnRlc3QwC4IJeDg2MC50ZXN0MAuCCXg4NjEudGVzdDALggl4ODYyLnRlc3QwC4IJ -eDg2My50ZXN0MAuCCXg4NjQudGVzdDALggl4ODY1LnRlc3QwC4IJeDg2Ni50ZXN0 -MAuCCXg4NjcudGVzdDALggl4ODY4LnRlc3QwC4IJeDg2OS50ZXN0MAuCCXg4NzAu -dGVzdDALggl4ODcxLnRlc3QwC4IJeDg3Mi50ZXN0MAuCCXg4NzMudGVzdDALggl4 -ODc0LnRlc3QwC4IJeDg3NS50ZXN0MAuCCXg4NzYudGVzdDALggl4ODc3LnRlc3Qw -C4IJeDg3OC50ZXN0MAuCCXg4NzkudGVzdDALggl4ODgwLnRlc3QwC4IJeDg4MS50 -ZXN0MAuCCXg4ODIudGVzdDALggl4ODgzLnRlc3QwC4IJeDg4NC50ZXN0MAuCCXg4 -ODUudGVzdDALggl4ODg2LnRlc3QwC4IJeDg4Ny50ZXN0MAuCCXg4ODgudGVzdDAL -ggl4ODg5LnRlc3QwC4IJeDg5MC50ZXN0MAuCCXg4OTEudGVzdDALggl4ODkyLnRl -c3QwC4IJeDg5My50ZXN0MAuCCXg4OTQudGVzdDALggl4ODk1LnRlc3QwC4IJeDg5 -Ni50ZXN0MAuCCXg4OTcudGVzdDALggl4ODk4LnRlc3QwC4IJeDg5OS50ZXN0MAuC -CXg5MDAudGVzdDALggl4OTAxLnRlc3QwC4IJeDkwMi50ZXN0MAuCCXg5MDMudGVz -dDALggl4OTA0LnRlc3QwC4IJeDkwNS50ZXN0MAuCCXg5MDYudGVzdDALggl4OTA3 -LnRlc3QwC4IJeDkwOC50ZXN0MAuCCXg5MDkudGVzdDALggl4OTEwLnRlc3QwC4IJ -eDkxMS50ZXN0MAuCCXg5MTIudGVzdDALggl4OTEzLnRlc3QwC4IJeDkxNC50ZXN0 -MAuCCXg5MTUudGVzdDALggl4OTE2LnRlc3QwC4IJeDkxNy50ZXN0MAuCCXg5MTgu -dGVzdDALggl4OTE5LnRlc3QwC4IJeDkyMC50ZXN0MAuCCXg5MjEudGVzdDALggl4 -OTIyLnRlc3QwC4IJeDkyMy50ZXN0MAuCCXg5MjQudGVzdDALggl4OTI1LnRlc3Qw -C4IJeDkyNi50ZXN0MAuCCXg5MjcudGVzdDALggl4OTI4LnRlc3QwC4IJeDkyOS50 -ZXN0MAuCCXg5MzAudGVzdDALggl4OTMxLnRlc3QwC4IJeDkzMi50ZXN0MAuCCXg5 -MzMudGVzdDALggl4OTM0LnRlc3QwC4IJeDkzNS50ZXN0MAuCCXg5MzYudGVzdDAL -ggl4OTM3LnRlc3QwC4IJeDkzOC50ZXN0MAuCCXg5MzkudGVzdDALggl4OTQwLnRl -c3QwC4IJeDk0MS50ZXN0MAuCCXg5NDIudGVzdDALggl4OTQzLnRlc3QwC4IJeDk0 -NC50ZXN0MAuCCXg5NDUudGVzdDALggl4OTQ2LnRlc3QwC4IJeDk0Ny50ZXN0MAuC -CXg5NDgudGVzdDALggl4OTQ5LnRlc3QwC4IJeDk1MC50ZXN0MAuCCXg5NTEudGVz -dDALggl4OTUyLnRlc3QwC4IJeDk1My50ZXN0MAuCCXg5NTQudGVzdDALggl4OTU1 -LnRlc3QwC4IJeDk1Ni50ZXN0MAuCCXg5NTcudGVzdDALggl4OTU4LnRlc3QwC4IJ -eDk1OS50ZXN0MAuCCXg5NjAudGVzdDALggl4OTYxLnRlc3QwC4IJeDk2Mi50ZXN0 -MAuCCXg5NjMudGVzdDALggl4OTY0LnRlc3QwC4IJeDk2NS50ZXN0MAuCCXg5NjYu -dGVzdDALggl4OTY3LnRlc3QwC4IJeDk2OC50ZXN0MAuCCXg5NjkudGVzdDALggl4 -OTcwLnRlc3QwC4IJeDk3MS50ZXN0MAuCCXg5NzIudGVzdDALggl4OTczLnRlc3Qw -C4IJeDk3NC50ZXN0MAuCCXg5NzUudGVzdDALggl4OTc2LnRlc3QwC4IJeDk3Ny50 -ZXN0MAuCCXg5NzgudGVzdDALggl4OTc5LnRlc3QwC4IJeDk4MC50ZXN0MAuCCXg5 -ODEudGVzdDALggl4OTgyLnRlc3QwC4IJeDk4My50ZXN0MAuCCXg5ODQudGVzdDAL -ggl4OTg1LnRlc3QwC4IJeDk4Ni50ZXN0MAuCCXg5ODcudGVzdDALggl4OTg4LnRl -c3QwC4IJeDk4OS50ZXN0MAuCCXg5OTAudGVzdDALggl4OTkxLnRlc3QwC4IJeDk5 -Mi50ZXN0MAuCCXg5OTMudGVzdDALggl4OTk0LnRlc3QwC4IJeDk5NS50ZXN0MAuC -CXg5OTYudGVzdDALggl4OTk3LnRlc3QwC4IJeDk5OC50ZXN0MAuCCXg5OTkudGVz -dDAMggp4MTAwMC50ZXN0MAyCCngxMDAxLnRlc3QwDIIKeDEwMDIudGVzdDAMggp4 -MTAwMy50ZXN0MAyCCngxMDA0LnRlc3QwDIIKeDEwMDUudGVzdDAMggp4MTAwNi50 -ZXN0MAyCCngxMDA3LnRlc3QwDIIKeDEwMDgudGVzdDAMggp4MTAwOS50ZXN0MAyC -CngxMDEwLnRlc3QwDIIKeDEwMTEudGVzdDAMggp4MTAxMi50ZXN0MAyCCngxMDEz -LnRlc3QwDIIKeDEwMTQudGVzdDAMggp4MTAxNS50ZXN0MAyCCngxMDE2LnRlc3Qw -DIIKeDEwMTcudGVzdDAMggp4MTAxOC50ZXN0MAyCCngxMDE5LnRlc3QwDIIKeDEw -MjAudGVzdDAMggp4MTAyMS50ZXN0MAyCCngxMDIyLnRlc3QwDIIKeDEwMjMudGVz -dDAMggp4MTAyNC50ZXN0MA0GCSqGSIb3DQEBCwUAA4IBAQCjYeC9VRtVNgVLIgp8 -k2K6CM5otYpi91cnbA/QA/RX8aDlNWmR/mavJ65Ukmc7p86Gft1m6aTcaUltw5ba -/T1KJ2DxJPjxvjT2tkNTAooPh0IHXZHTnZY5k5y28jj9Ny999AJnP3O7ln5VGzjy -bsg1kCgd2cJF5xcDM5b5WesPvCxSV2r8Lz3w81wd1xqN4gKolhXgYZXWCbq5e8A2 -zM6We3/vNffzCCi2rCpBpiJDbHbFNB3oR7/dVnoPfb0uqWvtkjmlNjUJUmv6A7Bt -aOKDLo9+h3H8Qi3yBxZTjRoCwANV078dwQf1Y+w/byZM50fQneYEAK22h94DWbCA -EHg+ ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.cnf deleted file mode 100644 index 3b9cb5b810..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.cnf +++ /dev/null @@ -1,1092 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Intermediate" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,keyCertSign,cRLSign -basicConstraints = critical,CA:true -nameConstraints = @nameConstraints_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Intermediate_3.pem -new_certs_dir = out -serial = out/Intermediate.serial -database = out/Intermediate.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Intermediate.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Intermediate.cer - -[crl_info] -URI.0 = http://url-for-crl/Intermediate.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[nameConstraints_info] -excluded;IP.1 = 11.0.0.0/255.255.255.255 -excluded;IP.2 = 11.0.0.1/255.255.255.255 -excluded;IP.3 = 11.0.0.2/255.255.255.255 -excluded;IP.4 = 11.0.0.3/255.255.255.255 -excluded;IP.5 = 11.0.0.4/255.255.255.255 -excluded;IP.6 = 11.0.0.5/255.255.255.255 -excluded;IP.7 = 11.0.0.6/255.255.255.255 -excluded;IP.8 = 11.0.0.7/255.255.255.255 -excluded;IP.9 = 11.0.0.8/255.255.255.255 -excluded;IP.10 = 11.0.0.9/255.255.255.255 -excluded;IP.11 = 11.0.0.10/255.255.255.255 -excluded;IP.12 = 11.0.0.11/255.255.255.255 -excluded;IP.13 = 11.0.0.12/255.255.255.255 -excluded;IP.14 = 11.0.0.13/255.255.255.255 -excluded;IP.15 = 11.0.0.14/255.255.255.255 -excluded;IP.16 = 11.0.0.15/255.255.255.255 -excluded;IP.17 = 11.0.0.16/255.255.255.255 -excluded;IP.18 = 11.0.0.17/255.255.255.255 -excluded;IP.19 = 11.0.0.18/255.255.255.255 -excluded;IP.20 = 11.0.0.19/255.255.255.255 -excluded;IP.21 = 11.0.0.20/255.255.255.255 -excluded;IP.22 = 11.0.0.21/255.255.255.255 -excluded;IP.23 = 11.0.0.22/255.255.255.255 -excluded;IP.24 = 11.0.0.23/255.255.255.255 -excluded;IP.25 = 11.0.0.24/255.255.255.255 -excluded;IP.26 = 11.0.0.25/255.255.255.255 -excluded;IP.27 = 11.0.0.26/255.255.255.255 -excluded;IP.28 = 11.0.0.27/255.255.255.255 -excluded;IP.29 = 11.0.0.28/255.255.255.255 -excluded;IP.30 = 11.0.0.29/255.255.255.255 -excluded;IP.31 = 11.0.0.30/255.255.255.255 -excluded;IP.32 = 11.0.0.31/255.255.255.255 -excluded;IP.33 = 11.0.0.32/255.255.255.255 -excluded;IP.34 = 11.0.0.33/255.255.255.255 -excluded;IP.35 = 11.0.0.34/255.255.255.255 -excluded;IP.36 = 11.0.0.35/255.255.255.255 -excluded;IP.37 = 11.0.0.36/255.255.255.255 -excluded;IP.38 = 11.0.0.37/255.255.255.255 -excluded;IP.39 = 11.0.0.38/255.255.255.255 -excluded;IP.40 = 11.0.0.39/255.255.255.255 -excluded;IP.41 = 11.0.0.40/255.255.255.255 -excluded;IP.42 = 11.0.0.41/255.255.255.255 -excluded;IP.43 = 11.0.0.42/255.255.255.255 -excluded;IP.44 = 11.0.0.43/255.255.255.255 -excluded;IP.45 = 11.0.0.44/255.255.255.255 -excluded;IP.46 = 11.0.0.45/255.255.255.255 -excluded;IP.47 = 11.0.0.46/255.255.255.255 -excluded;IP.48 = 11.0.0.47/255.255.255.255 -excluded;IP.49 = 11.0.0.48/255.255.255.255 -excluded;IP.50 = 11.0.0.49/255.255.255.255 -excluded;IP.51 = 11.0.0.50/255.255.255.255 -excluded;IP.52 = 11.0.0.51/255.255.255.255 -excluded;IP.53 = 11.0.0.52/255.255.255.255 -excluded;IP.54 = 11.0.0.53/255.255.255.255 -excluded;IP.55 = 11.0.0.54/255.255.255.255 -excluded;IP.56 = 11.0.0.55/255.255.255.255 -excluded;IP.57 = 11.0.0.56/255.255.255.255 -excluded;IP.58 = 11.0.0.57/255.255.255.255 -excluded;IP.59 = 11.0.0.58/255.255.255.255 -excluded;IP.60 = 11.0.0.59/255.255.255.255 -excluded;IP.61 = 11.0.0.60/255.255.255.255 -excluded;IP.62 = 11.0.0.61/255.255.255.255 -excluded;IP.63 = 11.0.0.62/255.255.255.255 -excluded;IP.64 = 11.0.0.63/255.255.255.255 -excluded;IP.65 = 11.0.0.64/255.255.255.255 -excluded;IP.66 = 11.0.0.65/255.255.255.255 -excluded;IP.67 = 11.0.0.66/255.255.255.255 -excluded;IP.68 = 11.0.0.67/255.255.255.255 -excluded;IP.69 = 11.0.0.68/255.255.255.255 -excluded;IP.70 = 11.0.0.69/255.255.255.255 -excluded;IP.71 = 11.0.0.70/255.255.255.255 -excluded;IP.72 = 11.0.0.71/255.255.255.255 -excluded;IP.73 = 11.0.0.72/255.255.255.255 -excluded;IP.74 = 11.0.0.73/255.255.255.255 -excluded;IP.75 = 11.0.0.74/255.255.255.255 -excluded;IP.76 = 11.0.0.75/255.255.255.255 -excluded;IP.77 = 11.0.0.76/255.255.255.255 -excluded;IP.78 = 11.0.0.77/255.255.255.255 -excluded;IP.79 = 11.0.0.78/255.255.255.255 -excluded;IP.80 = 11.0.0.79/255.255.255.255 -excluded;IP.81 = 11.0.0.80/255.255.255.255 -excluded;IP.82 = 11.0.0.81/255.255.255.255 -excluded;IP.83 = 11.0.0.82/255.255.255.255 -excluded;IP.84 = 11.0.0.83/255.255.255.255 -excluded;IP.85 = 11.0.0.84/255.255.255.255 -excluded;IP.86 = 11.0.0.85/255.255.255.255 -excluded;IP.87 = 11.0.0.86/255.255.255.255 -excluded;IP.88 = 11.0.0.87/255.255.255.255 -excluded;IP.89 = 11.0.0.88/255.255.255.255 -excluded;IP.90 = 11.0.0.89/255.255.255.255 -excluded;IP.91 = 11.0.0.90/255.255.255.255 -excluded;IP.92 = 11.0.0.91/255.255.255.255 -excluded;IP.93 = 11.0.0.92/255.255.255.255 -excluded;IP.94 = 11.0.0.93/255.255.255.255 -excluded;IP.95 = 11.0.0.94/255.255.255.255 -excluded;IP.96 = 11.0.0.95/255.255.255.255 -excluded;IP.97 = 11.0.0.96/255.255.255.255 -excluded;IP.98 = 11.0.0.97/255.255.255.255 -excluded;IP.99 = 11.0.0.98/255.255.255.255 -excluded;IP.100 = 11.0.0.99/255.255.255.255 -excluded;IP.101 = 11.0.0.100/255.255.255.255 -excluded;IP.102 = 11.0.0.101/255.255.255.255 -excluded;IP.103 = 11.0.0.102/255.255.255.255 -excluded;IP.104 = 11.0.0.103/255.255.255.255 -excluded;IP.105 = 11.0.0.104/255.255.255.255 -excluded;IP.106 = 11.0.0.105/255.255.255.255 -excluded;IP.107 = 11.0.0.106/255.255.255.255 -excluded;IP.108 = 11.0.0.107/255.255.255.255 -excluded;IP.109 = 11.0.0.108/255.255.255.255 -excluded;IP.110 = 11.0.0.109/255.255.255.255 -excluded;IP.111 = 11.0.0.110/255.255.255.255 -excluded;IP.112 = 11.0.0.111/255.255.255.255 -excluded;IP.113 = 11.0.0.112/255.255.255.255 -excluded;IP.114 = 11.0.0.113/255.255.255.255 -excluded;IP.115 = 11.0.0.114/255.255.255.255 -excluded;IP.116 = 11.0.0.115/255.255.255.255 -excluded;IP.117 = 11.0.0.116/255.255.255.255 -excluded;IP.118 = 11.0.0.117/255.255.255.255 -excluded;IP.119 = 11.0.0.118/255.255.255.255 -excluded;IP.120 = 11.0.0.119/255.255.255.255 -excluded;IP.121 = 11.0.0.120/255.255.255.255 -excluded;IP.122 = 11.0.0.121/255.255.255.255 -excluded;IP.123 = 11.0.0.122/255.255.255.255 -excluded;IP.124 = 11.0.0.123/255.255.255.255 -excluded;IP.125 = 11.0.0.124/255.255.255.255 -excluded;IP.126 = 11.0.0.125/255.255.255.255 -excluded;IP.127 = 11.0.0.126/255.255.255.255 -excluded;IP.128 = 11.0.0.127/255.255.255.255 -excluded;IP.129 = 11.0.0.128/255.255.255.255 -excluded;IP.130 = 11.0.0.129/255.255.255.255 -excluded;IP.131 = 11.0.0.130/255.255.255.255 -excluded;IP.132 = 11.0.0.131/255.255.255.255 -excluded;IP.133 = 11.0.0.132/255.255.255.255 -excluded;IP.134 = 11.0.0.133/255.255.255.255 -excluded;IP.135 = 11.0.0.134/255.255.255.255 -excluded;IP.136 = 11.0.0.135/255.255.255.255 -excluded;IP.137 = 11.0.0.136/255.255.255.255 -excluded;IP.138 = 11.0.0.137/255.255.255.255 -excluded;IP.139 = 11.0.0.138/255.255.255.255 -excluded;IP.140 = 11.0.0.139/255.255.255.255 -excluded;IP.141 = 11.0.0.140/255.255.255.255 -excluded;IP.142 = 11.0.0.141/255.255.255.255 -excluded;IP.143 = 11.0.0.142/255.255.255.255 -excluded;IP.144 = 11.0.0.143/255.255.255.255 -excluded;IP.145 = 11.0.0.144/255.255.255.255 -excluded;IP.146 = 11.0.0.145/255.255.255.255 -excluded;IP.147 = 11.0.0.146/255.255.255.255 -excluded;IP.148 = 11.0.0.147/255.255.255.255 -excluded;IP.149 = 11.0.0.148/255.255.255.255 -excluded;IP.150 = 11.0.0.149/255.255.255.255 -excluded;IP.151 = 11.0.0.150/255.255.255.255 -excluded;IP.152 = 11.0.0.151/255.255.255.255 -excluded;IP.153 = 11.0.0.152/255.255.255.255 -excluded;IP.154 = 11.0.0.153/255.255.255.255 -excluded;IP.155 = 11.0.0.154/255.255.255.255 -excluded;IP.156 = 11.0.0.155/255.255.255.255 -excluded;IP.157 = 11.0.0.156/255.255.255.255 -excluded;IP.158 = 11.0.0.157/255.255.255.255 -excluded;IP.159 = 11.0.0.158/255.255.255.255 -excluded;IP.160 = 11.0.0.159/255.255.255.255 -excluded;IP.161 = 11.0.0.160/255.255.255.255 -excluded;IP.162 = 11.0.0.161/255.255.255.255 -excluded;IP.163 = 11.0.0.162/255.255.255.255 -excluded;IP.164 = 11.0.0.163/255.255.255.255 -excluded;IP.165 = 11.0.0.164/255.255.255.255 -excluded;IP.166 = 11.0.0.165/255.255.255.255 -excluded;IP.167 = 11.0.0.166/255.255.255.255 -excluded;IP.168 = 11.0.0.167/255.255.255.255 -excluded;IP.169 = 11.0.0.168/255.255.255.255 -excluded;IP.170 = 11.0.0.169/255.255.255.255 -excluded;IP.171 = 11.0.0.170/255.255.255.255 -excluded;IP.172 = 11.0.0.171/255.255.255.255 -excluded;IP.173 = 11.0.0.172/255.255.255.255 -excluded;IP.174 = 11.0.0.173/255.255.255.255 -excluded;IP.175 = 11.0.0.174/255.255.255.255 -excluded;IP.176 = 11.0.0.175/255.255.255.255 -excluded;IP.177 = 11.0.0.176/255.255.255.255 -excluded;IP.178 = 11.0.0.177/255.255.255.255 -excluded;IP.179 = 11.0.0.178/255.255.255.255 -excluded;IP.180 = 11.0.0.179/255.255.255.255 -excluded;IP.181 = 11.0.0.180/255.255.255.255 -excluded;IP.182 = 11.0.0.181/255.255.255.255 -excluded;IP.183 = 11.0.0.182/255.255.255.255 -excluded;IP.184 = 11.0.0.183/255.255.255.255 -excluded;IP.185 = 11.0.0.184/255.255.255.255 -excluded;IP.186 = 11.0.0.185/255.255.255.255 -excluded;IP.187 = 11.0.0.186/255.255.255.255 -excluded;IP.188 = 11.0.0.187/255.255.255.255 -excluded;IP.189 = 11.0.0.188/255.255.255.255 -excluded;IP.190 = 11.0.0.189/255.255.255.255 -excluded;IP.191 = 11.0.0.190/255.255.255.255 -excluded;IP.192 = 11.0.0.191/255.255.255.255 -excluded;IP.193 = 11.0.0.192/255.255.255.255 -excluded;IP.194 = 11.0.0.193/255.255.255.255 -excluded;IP.195 = 11.0.0.194/255.255.255.255 -excluded;IP.196 = 11.0.0.195/255.255.255.255 -excluded;IP.197 = 11.0.0.196/255.255.255.255 -excluded;IP.198 = 11.0.0.197/255.255.255.255 -excluded;IP.199 = 11.0.0.198/255.255.255.255 -excluded;IP.200 = 11.0.0.199/255.255.255.255 -excluded;IP.201 = 11.0.0.200/255.255.255.255 -excluded;IP.202 = 11.0.0.201/255.255.255.255 -excluded;IP.203 = 11.0.0.202/255.255.255.255 -excluded;IP.204 = 11.0.0.203/255.255.255.255 -excluded;IP.205 = 11.0.0.204/255.255.255.255 -excluded;IP.206 = 11.0.0.205/255.255.255.255 -excluded;IP.207 = 11.0.0.206/255.255.255.255 -excluded;IP.208 = 11.0.0.207/255.255.255.255 -excluded;IP.209 = 11.0.0.208/255.255.255.255 -excluded;IP.210 = 11.0.0.209/255.255.255.255 -excluded;IP.211 = 11.0.0.210/255.255.255.255 -excluded;IP.212 = 11.0.0.211/255.255.255.255 -excluded;IP.213 = 11.0.0.212/255.255.255.255 -excluded;IP.214 = 11.0.0.213/255.255.255.255 -excluded;IP.215 = 11.0.0.214/255.255.255.255 -excluded;IP.216 = 11.0.0.215/255.255.255.255 -excluded;IP.217 = 11.0.0.216/255.255.255.255 -excluded;IP.218 = 11.0.0.217/255.255.255.255 -excluded;IP.219 = 11.0.0.218/255.255.255.255 -excluded;IP.220 = 11.0.0.219/255.255.255.255 -excluded;IP.221 = 11.0.0.220/255.255.255.255 -excluded;IP.222 = 11.0.0.221/255.255.255.255 -excluded;IP.223 = 11.0.0.222/255.255.255.255 -excluded;IP.224 = 11.0.0.223/255.255.255.255 -excluded;IP.225 = 11.0.0.224/255.255.255.255 -excluded;IP.226 = 11.0.0.225/255.255.255.255 -excluded;IP.227 = 11.0.0.226/255.255.255.255 -excluded;IP.228 = 11.0.0.227/255.255.255.255 -excluded;IP.229 = 11.0.0.228/255.255.255.255 -excluded;IP.230 = 11.0.0.229/255.255.255.255 -excluded;IP.231 = 11.0.0.230/255.255.255.255 -excluded;IP.232 = 11.0.0.231/255.255.255.255 -excluded;IP.233 = 11.0.0.232/255.255.255.255 -excluded;IP.234 = 11.0.0.233/255.255.255.255 -excluded;IP.235 = 11.0.0.234/255.255.255.255 -excluded;IP.236 = 11.0.0.235/255.255.255.255 -excluded;IP.237 = 11.0.0.236/255.255.255.255 -excluded;IP.238 = 11.0.0.237/255.255.255.255 -excluded;IP.239 = 11.0.0.238/255.255.255.255 -excluded;IP.240 = 11.0.0.239/255.255.255.255 -excluded;IP.241 = 11.0.0.240/255.255.255.255 -excluded;IP.242 = 11.0.0.241/255.255.255.255 -excluded;IP.243 = 11.0.0.242/255.255.255.255 -excluded;IP.244 = 11.0.0.243/255.255.255.255 -excluded;IP.245 = 11.0.0.244/255.255.255.255 -excluded;IP.246 = 11.0.0.245/255.255.255.255 -excluded;IP.247 = 11.0.0.246/255.255.255.255 -excluded;IP.248 = 11.0.0.247/255.255.255.255 -excluded;IP.249 = 11.0.0.248/255.255.255.255 -excluded;IP.250 = 11.0.0.249/255.255.255.255 -excluded;IP.251 = 11.0.0.250/255.255.255.255 -excluded;IP.252 = 11.0.0.251/255.255.255.255 -excluded;IP.253 = 11.0.0.252/255.255.255.255 -excluded;IP.254 = 11.0.0.253/255.255.255.255 -excluded;IP.255 = 11.0.0.254/255.255.255.255 -excluded;IP.256 = 11.0.0.255/255.255.255.255 -excluded;IP.257 = 11.0.1.0/255.255.255.255 -excluded;IP.258 = 11.0.1.1/255.255.255.255 -excluded;IP.259 = 11.0.1.2/255.255.255.255 -excluded;IP.260 = 11.0.1.3/255.255.255.255 -excluded;IP.261 = 11.0.1.4/255.255.255.255 -excluded;IP.262 = 11.0.1.5/255.255.255.255 -excluded;IP.263 = 11.0.1.6/255.255.255.255 -excluded;IP.264 = 11.0.1.7/255.255.255.255 -excluded;IP.265 = 11.0.1.8/255.255.255.255 -excluded;IP.266 = 11.0.1.9/255.255.255.255 -excluded;IP.267 = 11.0.1.10/255.255.255.255 -excluded;IP.268 = 11.0.1.11/255.255.255.255 -excluded;IP.269 = 11.0.1.12/255.255.255.255 -excluded;IP.270 = 11.0.1.13/255.255.255.255 -excluded;IP.271 = 11.0.1.14/255.255.255.255 -excluded;IP.272 = 11.0.1.15/255.255.255.255 -excluded;IP.273 = 11.0.1.16/255.255.255.255 -excluded;IP.274 = 11.0.1.17/255.255.255.255 -excluded;IP.275 = 11.0.1.18/255.255.255.255 -excluded;IP.276 = 11.0.1.19/255.255.255.255 -excluded;IP.277 = 11.0.1.20/255.255.255.255 -excluded;IP.278 = 11.0.1.21/255.255.255.255 -excluded;IP.279 = 11.0.1.22/255.255.255.255 -excluded;IP.280 = 11.0.1.23/255.255.255.255 -excluded;IP.281 = 11.0.1.24/255.255.255.255 -excluded;IP.282 = 11.0.1.25/255.255.255.255 -excluded;IP.283 = 11.0.1.26/255.255.255.255 -excluded;IP.284 = 11.0.1.27/255.255.255.255 -excluded;IP.285 = 11.0.1.28/255.255.255.255 -excluded;IP.286 = 11.0.1.29/255.255.255.255 -excluded;IP.287 = 11.0.1.30/255.255.255.255 -excluded;IP.288 = 11.0.1.31/255.255.255.255 -excluded;IP.289 = 11.0.1.32/255.255.255.255 -excluded;IP.290 = 11.0.1.33/255.255.255.255 -excluded;IP.291 = 11.0.1.34/255.255.255.255 -excluded;IP.292 = 11.0.1.35/255.255.255.255 -excluded;IP.293 = 11.0.1.36/255.255.255.255 -excluded;IP.294 = 11.0.1.37/255.255.255.255 -excluded;IP.295 = 11.0.1.38/255.255.255.255 -excluded;IP.296 = 11.0.1.39/255.255.255.255 -excluded;IP.297 = 11.0.1.40/255.255.255.255 -excluded;IP.298 = 11.0.1.41/255.255.255.255 -excluded;IP.299 = 11.0.1.42/255.255.255.255 -excluded;IP.300 = 11.0.1.43/255.255.255.255 -excluded;IP.301 = 11.0.1.44/255.255.255.255 -excluded;IP.302 = 11.0.1.45/255.255.255.255 -excluded;IP.303 = 11.0.1.46/255.255.255.255 -excluded;IP.304 = 11.0.1.47/255.255.255.255 -excluded;IP.305 = 11.0.1.48/255.255.255.255 -excluded;IP.306 = 11.0.1.49/255.255.255.255 -excluded;IP.307 = 11.0.1.50/255.255.255.255 -excluded;IP.308 = 11.0.1.51/255.255.255.255 -excluded;IP.309 = 11.0.1.52/255.255.255.255 -excluded;IP.310 = 11.0.1.53/255.255.255.255 -excluded;IP.311 = 11.0.1.54/255.255.255.255 -excluded;IP.312 = 11.0.1.55/255.255.255.255 -excluded;IP.313 = 11.0.1.56/255.255.255.255 -excluded;IP.314 = 11.0.1.57/255.255.255.255 -excluded;IP.315 = 11.0.1.58/255.255.255.255 -excluded;IP.316 = 11.0.1.59/255.255.255.255 -excluded;IP.317 = 11.0.1.60/255.255.255.255 -excluded;IP.318 = 11.0.1.61/255.255.255.255 -excluded;IP.319 = 11.0.1.62/255.255.255.255 -excluded;IP.320 = 11.0.1.63/255.255.255.255 -excluded;IP.321 = 11.0.1.64/255.255.255.255 -excluded;IP.322 = 11.0.1.65/255.255.255.255 -excluded;IP.323 = 11.0.1.66/255.255.255.255 -excluded;IP.324 = 11.0.1.67/255.255.255.255 -excluded;IP.325 = 11.0.1.68/255.255.255.255 -excluded;IP.326 = 11.0.1.69/255.255.255.255 -excluded;IP.327 = 11.0.1.70/255.255.255.255 -excluded;IP.328 = 11.0.1.71/255.255.255.255 -excluded;IP.329 = 11.0.1.72/255.255.255.255 -excluded;IP.330 = 11.0.1.73/255.255.255.255 -excluded;IP.331 = 11.0.1.74/255.255.255.255 -excluded;IP.332 = 11.0.1.75/255.255.255.255 -excluded;IP.333 = 11.0.1.76/255.255.255.255 -excluded;IP.334 = 11.0.1.77/255.255.255.255 -excluded;IP.335 = 11.0.1.78/255.255.255.255 -excluded;IP.336 = 11.0.1.79/255.255.255.255 -excluded;IP.337 = 11.0.1.80/255.255.255.255 -excluded;IP.338 = 11.0.1.81/255.255.255.255 -excluded;IP.339 = 11.0.1.82/255.255.255.255 -excluded;IP.340 = 11.0.1.83/255.255.255.255 -excluded;IP.341 = 11.0.1.84/255.255.255.255 -excluded;IP.342 = 11.0.1.85/255.255.255.255 -excluded;IP.343 = 11.0.1.86/255.255.255.255 -excluded;IP.344 = 11.0.1.87/255.255.255.255 -excluded;IP.345 = 11.0.1.88/255.255.255.255 -excluded;IP.346 = 11.0.1.89/255.255.255.255 -excluded;IP.347 = 11.0.1.90/255.255.255.255 -excluded;IP.348 = 11.0.1.91/255.255.255.255 -excluded;IP.349 = 11.0.1.92/255.255.255.255 -excluded;IP.350 = 11.0.1.93/255.255.255.255 -excluded;IP.351 = 11.0.1.94/255.255.255.255 -excluded;IP.352 = 11.0.1.95/255.255.255.255 -excluded;IP.353 = 11.0.1.96/255.255.255.255 -excluded;IP.354 = 11.0.1.97/255.255.255.255 -excluded;IP.355 = 11.0.1.98/255.255.255.255 -excluded;IP.356 = 11.0.1.99/255.255.255.255 -excluded;IP.357 = 11.0.1.100/255.255.255.255 -excluded;IP.358 = 11.0.1.101/255.255.255.255 -excluded;IP.359 = 11.0.1.102/255.255.255.255 -excluded;IP.360 = 11.0.1.103/255.255.255.255 -excluded;IP.361 = 11.0.1.104/255.255.255.255 -excluded;IP.362 = 11.0.1.105/255.255.255.255 -excluded;IP.363 = 11.0.1.106/255.255.255.255 -excluded;IP.364 = 11.0.1.107/255.255.255.255 -excluded;IP.365 = 11.0.1.108/255.255.255.255 -excluded;IP.366 = 11.0.1.109/255.255.255.255 -excluded;IP.367 = 11.0.1.110/255.255.255.255 -excluded;IP.368 = 11.0.1.111/255.255.255.255 -excluded;IP.369 = 11.0.1.112/255.255.255.255 -excluded;IP.370 = 11.0.1.113/255.255.255.255 -excluded;IP.371 = 11.0.1.114/255.255.255.255 -excluded;IP.372 = 11.0.1.115/255.255.255.255 -excluded;IP.373 = 11.0.1.116/255.255.255.255 -excluded;IP.374 = 11.0.1.117/255.255.255.255 -excluded;IP.375 = 11.0.1.118/255.255.255.255 -excluded;IP.376 = 11.0.1.119/255.255.255.255 -excluded;IP.377 = 11.0.1.120/255.255.255.255 -excluded;IP.378 = 11.0.1.121/255.255.255.255 -excluded;IP.379 = 11.0.1.122/255.255.255.255 -excluded;IP.380 = 11.0.1.123/255.255.255.255 -excluded;IP.381 = 11.0.1.124/255.255.255.255 -excluded;IP.382 = 11.0.1.125/255.255.255.255 -excluded;IP.383 = 11.0.1.126/255.255.255.255 -excluded;IP.384 = 11.0.1.127/255.255.255.255 -excluded;IP.385 = 11.0.1.128/255.255.255.255 -excluded;IP.386 = 11.0.1.129/255.255.255.255 -excluded;IP.387 = 11.0.1.130/255.255.255.255 -excluded;IP.388 = 11.0.1.131/255.255.255.255 -excluded;IP.389 = 11.0.1.132/255.255.255.255 -excluded;IP.390 = 11.0.1.133/255.255.255.255 -excluded;IP.391 = 11.0.1.134/255.255.255.255 -excluded;IP.392 = 11.0.1.135/255.255.255.255 -excluded;IP.393 = 11.0.1.136/255.255.255.255 -excluded;IP.394 = 11.0.1.137/255.255.255.255 -excluded;IP.395 = 11.0.1.138/255.255.255.255 -excluded;IP.396 = 11.0.1.139/255.255.255.255 -excluded;IP.397 = 11.0.1.140/255.255.255.255 -excluded;IP.398 = 11.0.1.141/255.255.255.255 -excluded;IP.399 = 11.0.1.142/255.255.255.255 -excluded;IP.400 = 11.0.1.143/255.255.255.255 -excluded;IP.401 = 11.0.1.144/255.255.255.255 -excluded;IP.402 = 11.0.1.145/255.255.255.255 -excluded;IP.403 = 11.0.1.146/255.255.255.255 -excluded;IP.404 = 11.0.1.147/255.255.255.255 -excluded;IP.405 = 11.0.1.148/255.255.255.255 -excluded;IP.406 = 11.0.1.149/255.255.255.255 -excluded;IP.407 = 11.0.1.150/255.255.255.255 -excluded;IP.408 = 11.0.1.151/255.255.255.255 -excluded;IP.409 = 11.0.1.152/255.255.255.255 -excluded;IP.410 = 11.0.1.153/255.255.255.255 -excluded;IP.411 = 11.0.1.154/255.255.255.255 -excluded;IP.412 = 11.0.1.155/255.255.255.255 -excluded;IP.413 = 11.0.1.156/255.255.255.255 -excluded;IP.414 = 11.0.1.157/255.255.255.255 -excluded;IP.415 = 11.0.1.158/255.255.255.255 -excluded;IP.416 = 11.0.1.159/255.255.255.255 -excluded;IP.417 = 11.0.1.160/255.255.255.255 -excluded;IP.418 = 11.0.1.161/255.255.255.255 -excluded;IP.419 = 11.0.1.162/255.255.255.255 -excluded;IP.420 = 11.0.1.163/255.255.255.255 -excluded;IP.421 = 11.0.1.164/255.255.255.255 -excluded;IP.422 = 11.0.1.165/255.255.255.255 -excluded;IP.423 = 11.0.1.166/255.255.255.255 -excluded;IP.424 = 11.0.1.167/255.255.255.255 -excluded;IP.425 = 11.0.1.168/255.255.255.255 -excluded;IP.426 = 11.0.1.169/255.255.255.255 -excluded;IP.427 = 11.0.1.170/255.255.255.255 -excluded;IP.428 = 11.0.1.171/255.255.255.255 -excluded;IP.429 = 11.0.1.172/255.255.255.255 -excluded;IP.430 = 11.0.1.173/255.255.255.255 -excluded;IP.431 = 11.0.1.174/255.255.255.255 -excluded;IP.432 = 11.0.1.175/255.255.255.255 -excluded;IP.433 = 11.0.1.176/255.255.255.255 -excluded;IP.434 = 11.0.1.177/255.255.255.255 -excluded;IP.435 = 11.0.1.178/255.255.255.255 -excluded;IP.436 = 11.0.1.179/255.255.255.255 -excluded;IP.437 = 11.0.1.180/255.255.255.255 -excluded;IP.438 = 11.0.1.181/255.255.255.255 -excluded;IP.439 = 11.0.1.182/255.255.255.255 -excluded;IP.440 = 11.0.1.183/255.255.255.255 -excluded;IP.441 = 11.0.1.184/255.255.255.255 -excluded;IP.442 = 11.0.1.185/255.255.255.255 -excluded;IP.443 = 11.0.1.186/255.255.255.255 -excluded;IP.444 = 11.0.1.187/255.255.255.255 -excluded;IP.445 = 11.0.1.188/255.255.255.255 -excluded;IP.446 = 11.0.1.189/255.255.255.255 -excluded;IP.447 = 11.0.1.190/255.255.255.255 -excluded;IP.448 = 11.0.1.191/255.255.255.255 -excluded;IP.449 = 11.0.1.192/255.255.255.255 -excluded;IP.450 = 11.0.1.193/255.255.255.255 -excluded;IP.451 = 11.0.1.194/255.255.255.255 -excluded;IP.452 = 11.0.1.195/255.255.255.255 -excluded;IP.453 = 11.0.1.196/255.255.255.255 -excluded;IP.454 = 11.0.1.197/255.255.255.255 -excluded;IP.455 = 11.0.1.198/255.255.255.255 -excluded;IP.456 = 11.0.1.199/255.255.255.255 -excluded;IP.457 = 11.0.1.200/255.255.255.255 -excluded;IP.458 = 11.0.1.201/255.255.255.255 -excluded;IP.459 = 11.0.1.202/255.255.255.255 -excluded;IP.460 = 11.0.1.203/255.255.255.255 -excluded;IP.461 = 11.0.1.204/255.255.255.255 -excluded;IP.462 = 11.0.1.205/255.255.255.255 -excluded;IP.463 = 11.0.1.206/255.255.255.255 -excluded;IP.464 = 11.0.1.207/255.255.255.255 -excluded;IP.465 = 11.0.1.208/255.255.255.255 -excluded;IP.466 = 11.0.1.209/255.255.255.255 -excluded;IP.467 = 11.0.1.210/255.255.255.255 -excluded;IP.468 = 11.0.1.211/255.255.255.255 -excluded;IP.469 = 11.0.1.212/255.255.255.255 -excluded;IP.470 = 11.0.1.213/255.255.255.255 -excluded;IP.471 = 11.0.1.214/255.255.255.255 -excluded;IP.472 = 11.0.1.215/255.255.255.255 -excluded;IP.473 = 11.0.1.216/255.255.255.255 -excluded;IP.474 = 11.0.1.217/255.255.255.255 -excluded;IP.475 = 11.0.1.218/255.255.255.255 -excluded;IP.476 = 11.0.1.219/255.255.255.255 -excluded;IP.477 = 11.0.1.220/255.255.255.255 -excluded;IP.478 = 11.0.1.221/255.255.255.255 -excluded;IP.479 = 11.0.1.222/255.255.255.255 -excluded;IP.480 = 11.0.1.223/255.255.255.255 -excluded;IP.481 = 11.0.1.224/255.255.255.255 -excluded;IP.482 = 11.0.1.225/255.255.255.255 -excluded;IP.483 = 11.0.1.226/255.255.255.255 -excluded;IP.484 = 11.0.1.227/255.255.255.255 -excluded;IP.485 = 11.0.1.228/255.255.255.255 -excluded;IP.486 = 11.0.1.229/255.255.255.255 -excluded;IP.487 = 11.0.1.230/255.255.255.255 -excluded;IP.488 = 11.0.1.231/255.255.255.255 -excluded;IP.489 = 11.0.1.232/255.255.255.255 -excluded;IP.490 = 11.0.1.233/255.255.255.255 -excluded;IP.491 = 11.0.1.234/255.255.255.255 -excluded;IP.492 = 11.0.1.235/255.255.255.255 -excluded;IP.493 = 11.0.1.236/255.255.255.255 -excluded;IP.494 = 11.0.1.237/255.255.255.255 -excluded;IP.495 = 11.0.1.238/255.255.255.255 -excluded;IP.496 = 11.0.1.239/255.255.255.255 -excluded;IP.497 = 11.0.1.240/255.255.255.255 -excluded;IP.498 = 11.0.1.241/255.255.255.255 -excluded;IP.499 = 11.0.1.242/255.255.255.255 -excluded;IP.500 = 11.0.1.243/255.255.255.255 -excluded;IP.501 = 11.0.1.244/255.255.255.255 -excluded;IP.502 = 11.0.1.245/255.255.255.255 -excluded;IP.503 = 11.0.1.246/255.255.255.255 -excluded;IP.504 = 11.0.1.247/255.255.255.255 -excluded;IP.505 = 11.0.1.248/255.255.255.255 -excluded;IP.506 = 11.0.1.249/255.255.255.255 -excluded;IP.507 = 11.0.1.250/255.255.255.255 -excluded;IP.508 = 11.0.1.251/255.255.255.255 -excluded;IP.509 = 11.0.1.252/255.255.255.255 -excluded;IP.510 = 11.0.1.253/255.255.255.255 -excluded;IP.511 = 11.0.1.254/255.255.255.255 -excluded;IP.512 = 11.0.1.255/255.255.255.255 -excluded;IP.513 = 11.0.2.0/255.255.255.255 -excluded;IP.514 = 11.0.2.1/255.255.255.255 -excluded;IP.515 = 11.0.2.2/255.255.255.255 -excluded;IP.516 = 11.0.2.3/255.255.255.255 -excluded;IP.517 = 11.0.2.4/255.255.255.255 -excluded;IP.518 = 11.0.2.5/255.255.255.255 -excluded;IP.519 = 11.0.2.6/255.255.255.255 -excluded;IP.520 = 11.0.2.7/255.255.255.255 -excluded;IP.521 = 11.0.2.8/255.255.255.255 -excluded;IP.522 = 11.0.2.9/255.255.255.255 -excluded;IP.523 = 11.0.2.10/255.255.255.255 -excluded;IP.524 = 11.0.2.11/255.255.255.255 -excluded;IP.525 = 11.0.2.12/255.255.255.255 -excluded;IP.526 = 11.0.2.13/255.255.255.255 -excluded;IP.527 = 11.0.2.14/255.255.255.255 -excluded;IP.528 = 11.0.2.15/255.255.255.255 -excluded;IP.529 = 11.0.2.16/255.255.255.255 -excluded;IP.530 = 11.0.2.17/255.255.255.255 -excluded;IP.531 = 11.0.2.18/255.255.255.255 -excluded;IP.532 = 11.0.2.19/255.255.255.255 -excluded;IP.533 = 11.0.2.20/255.255.255.255 -excluded;IP.534 = 11.0.2.21/255.255.255.255 -excluded;IP.535 = 11.0.2.22/255.255.255.255 -excluded;IP.536 = 11.0.2.23/255.255.255.255 -excluded;IP.537 = 11.0.2.24/255.255.255.255 -excluded;IP.538 = 11.0.2.25/255.255.255.255 -excluded;IP.539 = 11.0.2.26/255.255.255.255 -excluded;IP.540 = 11.0.2.27/255.255.255.255 -excluded;IP.541 = 11.0.2.28/255.255.255.255 -excluded;IP.542 = 11.0.2.29/255.255.255.255 -excluded;IP.543 = 11.0.2.30/255.255.255.255 -excluded;IP.544 = 11.0.2.31/255.255.255.255 -excluded;IP.545 = 11.0.2.32/255.255.255.255 -excluded;IP.546 = 11.0.2.33/255.255.255.255 -excluded;IP.547 = 11.0.2.34/255.255.255.255 -excluded;IP.548 = 11.0.2.35/255.255.255.255 -excluded;IP.549 = 11.0.2.36/255.255.255.255 -excluded;IP.550 = 11.0.2.37/255.255.255.255 -excluded;IP.551 = 11.0.2.38/255.255.255.255 -excluded;IP.552 = 11.0.2.39/255.255.255.255 -excluded;IP.553 = 11.0.2.40/255.255.255.255 -excluded;IP.554 = 11.0.2.41/255.255.255.255 -excluded;IP.555 = 11.0.2.42/255.255.255.255 -excluded;IP.556 = 11.0.2.43/255.255.255.255 -excluded;IP.557 = 11.0.2.44/255.255.255.255 -excluded;IP.558 = 11.0.2.45/255.255.255.255 -excluded;IP.559 = 11.0.2.46/255.255.255.255 -excluded;IP.560 = 11.0.2.47/255.255.255.255 -excluded;IP.561 = 11.0.2.48/255.255.255.255 -excluded;IP.562 = 11.0.2.49/255.255.255.255 -excluded;IP.563 = 11.0.2.50/255.255.255.255 -excluded;IP.564 = 11.0.2.51/255.255.255.255 -excluded;IP.565 = 11.0.2.52/255.255.255.255 -excluded;IP.566 = 11.0.2.53/255.255.255.255 -excluded;IP.567 = 11.0.2.54/255.255.255.255 -excluded;IP.568 = 11.0.2.55/255.255.255.255 -excluded;IP.569 = 11.0.2.56/255.255.255.255 -excluded;IP.570 = 11.0.2.57/255.255.255.255 -excluded;IP.571 = 11.0.2.58/255.255.255.255 -excluded;IP.572 = 11.0.2.59/255.255.255.255 -excluded;IP.573 = 11.0.2.60/255.255.255.255 -excluded;IP.574 = 11.0.2.61/255.255.255.255 -excluded;IP.575 = 11.0.2.62/255.255.255.255 -excluded;IP.576 = 11.0.2.63/255.255.255.255 -excluded;IP.577 = 11.0.2.64/255.255.255.255 -excluded;IP.578 = 11.0.2.65/255.255.255.255 -excluded;IP.579 = 11.0.2.66/255.255.255.255 -excluded;IP.580 = 11.0.2.67/255.255.255.255 -excluded;IP.581 = 11.0.2.68/255.255.255.255 -excluded;IP.582 = 11.0.2.69/255.255.255.255 -excluded;IP.583 = 11.0.2.70/255.255.255.255 -excluded;IP.584 = 11.0.2.71/255.255.255.255 -excluded;IP.585 = 11.0.2.72/255.255.255.255 -excluded;IP.586 = 11.0.2.73/255.255.255.255 -excluded;IP.587 = 11.0.2.74/255.255.255.255 -excluded;IP.588 = 11.0.2.75/255.255.255.255 -excluded;IP.589 = 11.0.2.76/255.255.255.255 -excluded;IP.590 = 11.0.2.77/255.255.255.255 -excluded;IP.591 = 11.0.2.78/255.255.255.255 -excluded;IP.592 = 11.0.2.79/255.255.255.255 -excluded;IP.593 = 11.0.2.80/255.255.255.255 -excluded;IP.594 = 11.0.2.81/255.255.255.255 -excluded;IP.595 = 11.0.2.82/255.255.255.255 -excluded;IP.596 = 11.0.2.83/255.255.255.255 -excluded;IP.597 = 11.0.2.84/255.255.255.255 -excluded;IP.598 = 11.0.2.85/255.255.255.255 -excluded;IP.599 = 11.0.2.86/255.255.255.255 -excluded;IP.600 = 11.0.2.87/255.255.255.255 -excluded;IP.601 = 11.0.2.88/255.255.255.255 -excluded;IP.602 = 11.0.2.89/255.255.255.255 -excluded;IP.603 = 11.0.2.90/255.255.255.255 -excluded;IP.604 = 11.0.2.91/255.255.255.255 -excluded;IP.605 = 11.0.2.92/255.255.255.255 -excluded;IP.606 = 11.0.2.93/255.255.255.255 -excluded;IP.607 = 11.0.2.94/255.255.255.255 -excluded;IP.608 = 11.0.2.95/255.255.255.255 -excluded;IP.609 = 11.0.2.96/255.255.255.255 -excluded;IP.610 = 11.0.2.97/255.255.255.255 -excluded;IP.611 = 11.0.2.98/255.255.255.255 -excluded;IP.612 = 11.0.2.99/255.255.255.255 -excluded;IP.613 = 11.0.2.100/255.255.255.255 -excluded;IP.614 = 11.0.2.101/255.255.255.255 -excluded;IP.615 = 11.0.2.102/255.255.255.255 -excluded;IP.616 = 11.0.2.103/255.255.255.255 -excluded;IP.617 = 11.0.2.104/255.255.255.255 -excluded;IP.618 = 11.0.2.105/255.255.255.255 -excluded;IP.619 = 11.0.2.106/255.255.255.255 -excluded;IP.620 = 11.0.2.107/255.255.255.255 -excluded;IP.621 = 11.0.2.108/255.255.255.255 -excluded;IP.622 = 11.0.2.109/255.255.255.255 -excluded;IP.623 = 11.0.2.110/255.255.255.255 -excluded;IP.624 = 11.0.2.111/255.255.255.255 -excluded;IP.625 = 11.0.2.112/255.255.255.255 -excluded;IP.626 = 11.0.2.113/255.255.255.255 -excluded;IP.627 = 11.0.2.114/255.255.255.255 -excluded;IP.628 = 11.0.2.115/255.255.255.255 -excluded;IP.629 = 11.0.2.116/255.255.255.255 -excluded;IP.630 = 11.0.2.117/255.255.255.255 -excluded;IP.631 = 11.0.2.118/255.255.255.255 -excluded;IP.632 = 11.0.2.119/255.255.255.255 -excluded;IP.633 = 11.0.2.120/255.255.255.255 -excluded;IP.634 = 11.0.2.121/255.255.255.255 -excluded;IP.635 = 11.0.2.122/255.255.255.255 -excluded;IP.636 = 11.0.2.123/255.255.255.255 -excluded;IP.637 = 11.0.2.124/255.255.255.255 -excluded;IP.638 = 11.0.2.125/255.255.255.255 -excluded;IP.639 = 11.0.2.126/255.255.255.255 -excluded;IP.640 = 11.0.2.127/255.255.255.255 -excluded;IP.641 = 11.0.2.128/255.255.255.255 -excluded;IP.642 = 11.0.2.129/255.255.255.255 -excluded;IP.643 = 11.0.2.130/255.255.255.255 -excluded;IP.644 = 11.0.2.131/255.255.255.255 -excluded;IP.645 = 11.0.2.132/255.255.255.255 -excluded;IP.646 = 11.0.2.133/255.255.255.255 -excluded;IP.647 = 11.0.2.134/255.255.255.255 -excluded;IP.648 = 11.0.2.135/255.255.255.255 -excluded;IP.649 = 11.0.2.136/255.255.255.255 -excluded;IP.650 = 11.0.2.137/255.255.255.255 -excluded;IP.651 = 11.0.2.138/255.255.255.255 -excluded;IP.652 = 11.0.2.139/255.255.255.255 -excluded;IP.653 = 11.0.2.140/255.255.255.255 -excluded;IP.654 = 11.0.2.141/255.255.255.255 -excluded;IP.655 = 11.0.2.142/255.255.255.255 -excluded;IP.656 = 11.0.2.143/255.255.255.255 -excluded;IP.657 = 11.0.2.144/255.255.255.255 -excluded;IP.658 = 11.0.2.145/255.255.255.255 -excluded;IP.659 = 11.0.2.146/255.255.255.255 -excluded;IP.660 = 11.0.2.147/255.255.255.255 -excluded;IP.661 = 11.0.2.148/255.255.255.255 -excluded;IP.662 = 11.0.2.149/255.255.255.255 -excluded;IP.663 = 11.0.2.150/255.255.255.255 -excluded;IP.664 = 11.0.2.151/255.255.255.255 -excluded;IP.665 = 11.0.2.152/255.255.255.255 -excluded;IP.666 = 11.0.2.153/255.255.255.255 -excluded;IP.667 = 11.0.2.154/255.255.255.255 -excluded;IP.668 = 11.0.2.155/255.255.255.255 -excluded;IP.669 = 11.0.2.156/255.255.255.255 -excluded;IP.670 = 11.0.2.157/255.255.255.255 -excluded;IP.671 = 11.0.2.158/255.255.255.255 -excluded;IP.672 = 11.0.2.159/255.255.255.255 -excluded;IP.673 = 11.0.2.160/255.255.255.255 -excluded;IP.674 = 11.0.2.161/255.255.255.255 -excluded;IP.675 = 11.0.2.162/255.255.255.255 -excluded;IP.676 = 11.0.2.163/255.255.255.255 -excluded;IP.677 = 11.0.2.164/255.255.255.255 -excluded;IP.678 = 11.0.2.165/255.255.255.255 -excluded;IP.679 = 11.0.2.166/255.255.255.255 -excluded;IP.680 = 11.0.2.167/255.255.255.255 -excluded;IP.681 = 11.0.2.168/255.255.255.255 -excluded;IP.682 = 11.0.2.169/255.255.255.255 -excluded;IP.683 = 11.0.2.170/255.255.255.255 -excluded;IP.684 = 11.0.2.171/255.255.255.255 -excluded;IP.685 = 11.0.2.172/255.255.255.255 -excluded;IP.686 = 11.0.2.173/255.255.255.255 -excluded;IP.687 = 11.0.2.174/255.255.255.255 -excluded;IP.688 = 11.0.2.175/255.255.255.255 -excluded;IP.689 = 11.0.2.176/255.255.255.255 -excluded;IP.690 = 11.0.2.177/255.255.255.255 -excluded;IP.691 = 11.0.2.178/255.255.255.255 -excluded;IP.692 = 11.0.2.179/255.255.255.255 -excluded;IP.693 = 11.0.2.180/255.255.255.255 -excluded;IP.694 = 11.0.2.181/255.255.255.255 -excluded;IP.695 = 11.0.2.182/255.255.255.255 -excluded;IP.696 = 11.0.2.183/255.255.255.255 -excluded;IP.697 = 11.0.2.184/255.255.255.255 -excluded;IP.698 = 11.0.2.185/255.255.255.255 -excluded;IP.699 = 11.0.2.186/255.255.255.255 -excluded;IP.700 = 11.0.2.187/255.255.255.255 -excluded;IP.701 = 11.0.2.188/255.255.255.255 -excluded;IP.702 = 11.0.2.189/255.255.255.255 -excluded;IP.703 = 11.0.2.190/255.255.255.255 -excluded;IP.704 = 11.0.2.191/255.255.255.255 -excluded;IP.705 = 11.0.2.192/255.255.255.255 -excluded;IP.706 = 11.0.2.193/255.255.255.255 -excluded;IP.707 = 11.0.2.194/255.255.255.255 -excluded;IP.708 = 11.0.2.195/255.255.255.255 -excluded;IP.709 = 11.0.2.196/255.255.255.255 -excluded;IP.710 = 11.0.2.197/255.255.255.255 -excluded;IP.711 = 11.0.2.198/255.255.255.255 -excluded;IP.712 = 11.0.2.199/255.255.255.255 -excluded;IP.713 = 11.0.2.200/255.255.255.255 -excluded;IP.714 = 11.0.2.201/255.255.255.255 -excluded;IP.715 = 11.0.2.202/255.255.255.255 -excluded;IP.716 = 11.0.2.203/255.255.255.255 -excluded;IP.717 = 11.0.2.204/255.255.255.255 -excluded;IP.718 = 11.0.2.205/255.255.255.255 -excluded;IP.719 = 11.0.2.206/255.255.255.255 -excluded;IP.720 = 11.0.2.207/255.255.255.255 -excluded;IP.721 = 11.0.2.208/255.255.255.255 -excluded;IP.722 = 11.0.2.209/255.255.255.255 -excluded;IP.723 = 11.0.2.210/255.255.255.255 -excluded;IP.724 = 11.0.2.211/255.255.255.255 -excluded;IP.725 = 11.0.2.212/255.255.255.255 -excluded;IP.726 = 11.0.2.213/255.255.255.255 -excluded;IP.727 = 11.0.2.214/255.255.255.255 -excluded;IP.728 = 11.0.2.215/255.255.255.255 -excluded;IP.729 = 11.0.2.216/255.255.255.255 -excluded;IP.730 = 11.0.2.217/255.255.255.255 -excluded;IP.731 = 11.0.2.218/255.255.255.255 -excluded;IP.732 = 11.0.2.219/255.255.255.255 -excluded;IP.733 = 11.0.2.220/255.255.255.255 -excluded;IP.734 = 11.0.2.221/255.255.255.255 -excluded;IP.735 = 11.0.2.222/255.255.255.255 -excluded;IP.736 = 11.0.2.223/255.255.255.255 -excluded;IP.737 = 11.0.2.224/255.255.255.255 -excluded;IP.738 = 11.0.2.225/255.255.255.255 -excluded;IP.739 = 11.0.2.226/255.255.255.255 -excluded;IP.740 = 11.0.2.227/255.255.255.255 -excluded;IP.741 = 11.0.2.228/255.255.255.255 -excluded;IP.742 = 11.0.2.229/255.255.255.255 -excluded;IP.743 = 11.0.2.230/255.255.255.255 -excluded;IP.744 = 11.0.2.231/255.255.255.255 -excluded;IP.745 = 11.0.2.232/255.255.255.255 -excluded;IP.746 = 11.0.2.233/255.255.255.255 -excluded;IP.747 = 11.0.2.234/255.255.255.255 -excluded;IP.748 = 11.0.2.235/255.255.255.255 -excluded;IP.749 = 11.0.2.236/255.255.255.255 -excluded;IP.750 = 11.0.2.237/255.255.255.255 -excluded;IP.751 = 11.0.2.238/255.255.255.255 -excluded;IP.752 = 11.0.2.239/255.255.255.255 -excluded;IP.753 = 11.0.2.240/255.255.255.255 -excluded;IP.754 = 11.0.2.241/255.255.255.255 -excluded;IP.755 = 11.0.2.242/255.255.255.255 -excluded;IP.756 = 11.0.2.243/255.255.255.255 -excluded;IP.757 = 11.0.2.244/255.255.255.255 -excluded;IP.758 = 11.0.2.245/255.255.255.255 -excluded;IP.759 = 11.0.2.246/255.255.255.255 -excluded;IP.760 = 11.0.2.247/255.255.255.255 -excluded;IP.761 = 11.0.2.248/255.255.255.255 -excluded;IP.762 = 11.0.2.249/255.255.255.255 -excluded;IP.763 = 11.0.2.250/255.255.255.255 -excluded;IP.764 = 11.0.2.251/255.255.255.255 -excluded;IP.765 = 11.0.2.252/255.255.255.255 -excluded;IP.766 = 11.0.2.253/255.255.255.255 -excluded;IP.767 = 11.0.2.254/255.255.255.255 -excluded;IP.768 = 11.0.2.255/255.255.255.255 -excluded;IP.769 = 11.0.3.0/255.255.255.255 -excluded;IP.770 = 11.0.3.1/255.255.255.255 -excluded;IP.771 = 11.0.3.2/255.255.255.255 -excluded;IP.772 = 11.0.3.3/255.255.255.255 -excluded;IP.773 = 11.0.3.4/255.255.255.255 -excluded;IP.774 = 11.0.3.5/255.255.255.255 -excluded;IP.775 = 11.0.3.6/255.255.255.255 -excluded;IP.776 = 11.0.3.7/255.255.255.255 -excluded;IP.777 = 11.0.3.8/255.255.255.255 -excluded;IP.778 = 11.0.3.9/255.255.255.255 -excluded;IP.779 = 11.0.3.10/255.255.255.255 -excluded;IP.780 = 11.0.3.11/255.255.255.255 -excluded;IP.781 = 11.0.3.12/255.255.255.255 -excluded;IP.782 = 11.0.3.13/255.255.255.255 -excluded;IP.783 = 11.0.3.14/255.255.255.255 -excluded;IP.784 = 11.0.3.15/255.255.255.255 -excluded;IP.785 = 11.0.3.16/255.255.255.255 -excluded;IP.786 = 11.0.3.17/255.255.255.255 -excluded;IP.787 = 11.0.3.18/255.255.255.255 -excluded;IP.788 = 11.0.3.19/255.255.255.255 -excluded;IP.789 = 11.0.3.20/255.255.255.255 -excluded;IP.790 = 11.0.3.21/255.255.255.255 -excluded;IP.791 = 11.0.3.22/255.255.255.255 -excluded;IP.792 = 11.0.3.23/255.255.255.255 -excluded;IP.793 = 11.0.3.24/255.255.255.255 -excluded;IP.794 = 11.0.3.25/255.255.255.255 -excluded;IP.795 = 11.0.3.26/255.255.255.255 -excluded;IP.796 = 11.0.3.27/255.255.255.255 -excluded;IP.797 = 11.0.3.28/255.255.255.255 -excluded;IP.798 = 11.0.3.29/255.255.255.255 -excluded;IP.799 = 11.0.3.30/255.255.255.255 -excluded;IP.800 = 11.0.3.31/255.255.255.255 -excluded;IP.801 = 11.0.3.32/255.255.255.255 -excluded;IP.802 = 11.0.3.33/255.255.255.255 -excluded;IP.803 = 11.0.3.34/255.255.255.255 -excluded;IP.804 = 11.0.3.35/255.255.255.255 -excluded;IP.805 = 11.0.3.36/255.255.255.255 -excluded;IP.806 = 11.0.3.37/255.255.255.255 -excluded;IP.807 = 11.0.3.38/255.255.255.255 -excluded;IP.808 = 11.0.3.39/255.255.255.255 -excluded;IP.809 = 11.0.3.40/255.255.255.255 -excluded;IP.810 = 11.0.3.41/255.255.255.255 -excluded;IP.811 = 11.0.3.42/255.255.255.255 -excluded;IP.812 = 11.0.3.43/255.255.255.255 -excluded;IP.813 = 11.0.3.44/255.255.255.255 -excluded;IP.814 = 11.0.3.45/255.255.255.255 -excluded;IP.815 = 11.0.3.46/255.255.255.255 -excluded;IP.816 = 11.0.3.47/255.255.255.255 -excluded;IP.817 = 11.0.3.48/255.255.255.255 -excluded;IP.818 = 11.0.3.49/255.255.255.255 -excluded;IP.819 = 11.0.3.50/255.255.255.255 -excluded;IP.820 = 11.0.3.51/255.255.255.255 -excluded;IP.821 = 11.0.3.52/255.255.255.255 -excluded;IP.822 = 11.0.3.53/255.255.255.255 -excluded;IP.823 = 11.0.3.54/255.255.255.255 -excluded;IP.824 = 11.0.3.55/255.255.255.255 -excluded;IP.825 = 11.0.3.56/255.255.255.255 -excluded;IP.826 = 11.0.3.57/255.255.255.255 -excluded;IP.827 = 11.0.3.58/255.255.255.255 -excluded;IP.828 = 11.0.3.59/255.255.255.255 -excluded;IP.829 = 11.0.3.60/255.255.255.255 -excluded;IP.830 = 11.0.3.61/255.255.255.255 -excluded;IP.831 = 11.0.3.62/255.255.255.255 -excluded;IP.832 = 11.0.3.63/255.255.255.255 -excluded;IP.833 = 11.0.3.64/255.255.255.255 -excluded;IP.834 = 11.0.3.65/255.255.255.255 -excluded;IP.835 = 11.0.3.66/255.255.255.255 -excluded;IP.836 = 11.0.3.67/255.255.255.255 -excluded;IP.837 = 11.0.3.68/255.255.255.255 -excluded;IP.838 = 11.0.3.69/255.255.255.255 -excluded;IP.839 = 11.0.3.70/255.255.255.255 -excluded;IP.840 = 11.0.3.71/255.255.255.255 -excluded;IP.841 = 11.0.3.72/255.255.255.255 -excluded;IP.842 = 11.0.3.73/255.255.255.255 -excluded;IP.843 = 11.0.3.74/255.255.255.255 -excluded;IP.844 = 11.0.3.75/255.255.255.255 -excluded;IP.845 = 11.0.3.76/255.255.255.255 -excluded;IP.846 = 11.0.3.77/255.255.255.255 -excluded;IP.847 = 11.0.3.78/255.255.255.255 -excluded;IP.848 = 11.0.3.79/255.255.255.255 -excluded;IP.849 = 11.0.3.80/255.255.255.255 -excluded;IP.850 = 11.0.3.81/255.255.255.255 -excluded;IP.851 = 11.0.3.82/255.255.255.255 -excluded;IP.852 = 11.0.3.83/255.255.255.255 -excluded;IP.853 = 11.0.3.84/255.255.255.255 -excluded;IP.854 = 11.0.3.85/255.255.255.255 -excluded;IP.855 = 11.0.3.86/255.255.255.255 -excluded;IP.856 = 11.0.3.87/255.255.255.255 -excluded;IP.857 = 11.0.3.88/255.255.255.255 -excluded;IP.858 = 11.0.3.89/255.255.255.255 -excluded;IP.859 = 11.0.3.90/255.255.255.255 -excluded;IP.860 = 11.0.3.91/255.255.255.255 -excluded;IP.861 = 11.0.3.92/255.255.255.255 -excluded;IP.862 = 11.0.3.93/255.255.255.255 -excluded;IP.863 = 11.0.3.94/255.255.255.255 -excluded;IP.864 = 11.0.3.95/255.255.255.255 -excluded;IP.865 = 11.0.3.96/255.255.255.255 -excluded;IP.866 = 11.0.3.97/255.255.255.255 -excluded;IP.867 = 11.0.3.98/255.255.255.255 -excluded;IP.868 = 11.0.3.99/255.255.255.255 -excluded;IP.869 = 11.0.3.100/255.255.255.255 -excluded;IP.870 = 11.0.3.101/255.255.255.255 -excluded;IP.871 = 11.0.3.102/255.255.255.255 -excluded;IP.872 = 11.0.3.103/255.255.255.255 -excluded;IP.873 = 11.0.3.104/255.255.255.255 -excluded;IP.874 = 11.0.3.105/255.255.255.255 -excluded;IP.875 = 11.0.3.106/255.255.255.255 -excluded;IP.876 = 11.0.3.107/255.255.255.255 -excluded;IP.877 = 11.0.3.108/255.255.255.255 -excluded;IP.878 = 11.0.3.109/255.255.255.255 -excluded;IP.879 = 11.0.3.110/255.255.255.255 -excluded;IP.880 = 11.0.3.111/255.255.255.255 -excluded;IP.881 = 11.0.3.112/255.255.255.255 -excluded;IP.882 = 11.0.3.113/255.255.255.255 -excluded;IP.883 = 11.0.3.114/255.255.255.255 -excluded;IP.884 = 11.0.3.115/255.255.255.255 -excluded;IP.885 = 11.0.3.116/255.255.255.255 -excluded;IP.886 = 11.0.3.117/255.255.255.255 -excluded;IP.887 = 11.0.3.118/255.255.255.255 -excluded;IP.888 = 11.0.3.119/255.255.255.255 -excluded;IP.889 = 11.0.3.120/255.255.255.255 -excluded;IP.890 = 11.0.3.121/255.255.255.255 -excluded;IP.891 = 11.0.3.122/255.255.255.255 -excluded;IP.892 = 11.0.3.123/255.255.255.255 -excluded;IP.893 = 11.0.3.124/255.255.255.255 -excluded;IP.894 = 11.0.3.125/255.255.255.255 -excluded;IP.895 = 11.0.3.126/255.255.255.255 -excluded;IP.896 = 11.0.3.127/255.255.255.255 -excluded;IP.897 = 11.0.3.128/255.255.255.255 -excluded;IP.898 = 11.0.3.129/255.255.255.255 -excluded;IP.899 = 11.0.3.130/255.255.255.255 -excluded;IP.900 = 11.0.3.131/255.255.255.255 -excluded;IP.901 = 11.0.3.132/255.255.255.255 -excluded;IP.902 = 11.0.3.133/255.255.255.255 -excluded;IP.903 = 11.0.3.134/255.255.255.255 -excluded;IP.904 = 11.0.3.135/255.255.255.255 -excluded;IP.905 = 11.0.3.136/255.255.255.255 -excluded;IP.906 = 11.0.3.137/255.255.255.255 -excluded;IP.907 = 11.0.3.138/255.255.255.255 -excluded;IP.908 = 11.0.3.139/255.255.255.255 -excluded;IP.909 = 11.0.3.140/255.255.255.255 -excluded;IP.910 = 11.0.3.141/255.255.255.255 -excluded;IP.911 = 11.0.3.142/255.255.255.255 -excluded;IP.912 = 11.0.3.143/255.255.255.255 -excluded;IP.913 = 11.0.3.144/255.255.255.255 -excluded;IP.914 = 11.0.3.145/255.255.255.255 -excluded;IP.915 = 11.0.3.146/255.255.255.255 -excluded;IP.916 = 11.0.3.147/255.255.255.255 -excluded;IP.917 = 11.0.3.148/255.255.255.255 -excluded;IP.918 = 11.0.3.149/255.255.255.255 -excluded;IP.919 = 11.0.3.150/255.255.255.255 -excluded;IP.920 = 11.0.3.151/255.255.255.255 -excluded;IP.921 = 11.0.3.152/255.255.255.255 -excluded;IP.922 = 11.0.3.153/255.255.255.255 -excluded;IP.923 = 11.0.3.154/255.255.255.255 -excluded;IP.924 = 11.0.3.155/255.255.255.255 -excluded;IP.925 = 11.0.3.156/255.255.255.255 -excluded;IP.926 = 11.0.3.157/255.255.255.255 -excluded;IP.927 = 11.0.3.158/255.255.255.255 -excluded;IP.928 = 11.0.3.159/255.255.255.255 -excluded;IP.929 = 11.0.3.160/255.255.255.255 -excluded;IP.930 = 11.0.3.161/255.255.255.255 -excluded;IP.931 = 11.0.3.162/255.255.255.255 -excluded;IP.932 = 11.0.3.163/255.255.255.255 -excluded;IP.933 = 11.0.3.164/255.255.255.255 -excluded;IP.934 = 11.0.3.165/255.255.255.255 -excluded;IP.935 = 11.0.3.166/255.255.255.255 -excluded;IP.936 = 11.0.3.167/255.255.255.255 -excluded;IP.937 = 11.0.3.168/255.255.255.255 -excluded;IP.938 = 11.0.3.169/255.255.255.255 -excluded;IP.939 = 11.0.3.170/255.255.255.255 -excluded;IP.940 = 11.0.3.171/255.255.255.255 -excluded;IP.941 = 11.0.3.172/255.255.255.255 -excluded;IP.942 = 11.0.3.173/255.255.255.255 -excluded;IP.943 = 11.0.3.174/255.255.255.255 -excluded;IP.944 = 11.0.3.175/255.255.255.255 -excluded;IP.945 = 11.0.3.176/255.255.255.255 -excluded;IP.946 = 11.0.3.177/255.255.255.255 -excluded;IP.947 = 11.0.3.178/255.255.255.255 -excluded;IP.948 = 11.0.3.179/255.255.255.255 -excluded;IP.949 = 11.0.3.180/255.255.255.255 -excluded;IP.950 = 11.0.3.181/255.255.255.255 -excluded;IP.951 = 11.0.3.182/255.255.255.255 -excluded;IP.952 = 11.0.3.183/255.255.255.255 -excluded;IP.953 = 11.0.3.184/255.255.255.255 -excluded;IP.954 = 11.0.3.185/255.255.255.255 -excluded;IP.955 = 11.0.3.186/255.255.255.255 -excluded;IP.956 = 11.0.3.187/255.255.255.255 -excluded;IP.957 = 11.0.3.188/255.255.255.255 -excluded;IP.958 = 11.0.3.189/255.255.255.255 -excluded;IP.959 = 11.0.3.190/255.255.255.255 -excluded;IP.960 = 11.0.3.191/255.255.255.255 -excluded;IP.961 = 11.0.3.192/255.255.255.255 -excluded;IP.962 = 11.0.3.193/255.255.255.255 -excluded;IP.963 = 11.0.3.194/255.255.255.255 -excluded;IP.964 = 11.0.3.195/255.255.255.255 -excluded;IP.965 = 11.0.3.196/255.255.255.255 -excluded;IP.966 = 11.0.3.197/255.255.255.255 -excluded;IP.967 = 11.0.3.198/255.255.255.255 -excluded;IP.968 = 11.0.3.199/255.255.255.255 -excluded;IP.969 = 11.0.3.200/255.255.255.255 -excluded;IP.970 = 11.0.3.201/255.255.255.255 -excluded;IP.971 = 11.0.3.202/255.255.255.255 -excluded;IP.972 = 11.0.3.203/255.255.255.255 -excluded;IP.973 = 11.0.3.204/255.255.255.255 -excluded;IP.974 = 11.0.3.205/255.255.255.255 -excluded;IP.975 = 11.0.3.206/255.255.255.255 -excluded;IP.976 = 11.0.3.207/255.255.255.255 -excluded;IP.977 = 11.0.3.208/255.255.255.255 -excluded;IP.978 = 11.0.3.209/255.255.255.255 -excluded;IP.979 = 11.0.3.210/255.255.255.255 -excluded;IP.980 = 11.0.3.211/255.255.255.255 -excluded;IP.981 = 11.0.3.212/255.255.255.255 -excluded;IP.982 = 11.0.3.213/255.255.255.255 -excluded;IP.983 = 11.0.3.214/255.255.255.255 -excluded;IP.984 = 11.0.3.215/255.255.255.255 -excluded;IP.985 = 11.0.3.216/255.255.255.255 -excluded;IP.986 = 11.0.3.217/255.255.255.255 -excluded;IP.987 = 11.0.3.218/255.255.255.255 -excluded;IP.988 = 11.0.3.219/255.255.255.255 -excluded;IP.989 = 11.0.3.220/255.255.255.255 -excluded;IP.990 = 11.0.3.221/255.255.255.255 -excluded;IP.991 = 11.0.3.222/255.255.255.255 -excluded;IP.992 = 11.0.3.223/255.255.255.255 -excluded;IP.993 = 11.0.3.224/255.255.255.255 -excluded;IP.994 = 11.0.3.225/255.255.255.255 -excluded;IP.995 = 11.0.3.226/255.255.255.255 -excluded;IP.996 = 11.0.3.227/255.255.255.255 -excluded;IP.997 = 11.0.3.228/255.255.255.255 -excluded;IP.998 = 11.0.3.229/255.255.255.255 -excluded;IP.999 = 11.0.3.230/255.255.255.255 -excluded;IP.1000 = 11.0.3.231/255.255.255.255 -excluded;IP.1001 = 11.0.3.232/255.255.255.255 -excluded;IP.1002 = 11.0.3.233/255.255.255.255 -excluded;IP.1003 = 11.0.3.234/255.255.255.255 -excluded;IP.1004 = 11.0.3.235/255.255.255.255 -excluded;IP.1005 = 11.0.3.236/255.255.255.255 -excluded;IP.1006 = 11.0.3.237/255.255.255.255 -excluded;IP.1007 = 11.0.3.238/255.255.255.255 -excluded;IP.1008 = 11.0.3.239/255.255.255.255 -excluded;IP.1009 = 11.0.3.240/255.255.255.255 -excluded;IP.1010 = 11.0.3.241/255.255.255.255 -excluded;IP.1011 = 11.0.3.242/255.255.255.255 -excluded;IP.1012 = 11.0.3.243/255.255.255.255 -excluded;IP.1013 = 11.0.3.244/255.255.255.255 -excluded;IP.1014 = 11.0.3.245/255.255.255.255 -excluded;IP.1015 = 11.0.3.246/255.255.255.255 -excluded;IP.1016 = 11.0.3.247/255.255.255.255 -excluded;IP.1017 = 11.0.3.248/255.255.255.255 -excluded;IP.1018 = 11.0.3.249/255.255.255.255 -excluded;IP.1019 = 11.0.3.250/255.255.255.255 -excluded;IP.1020 = 11.0.3.251/255.255.255.255 -excluded;IP.1021 = 11.0.3.252/255.255.255.255 -excluded;IP.1022 = 11.0.3.253/255.255.255.255 -excluded;IP.1023 = 11.0.3.254/255.255.255.255 -excluded;IP.1024 = 11.0.3.255/255.255.255.255 -excluded;IP.1025 = 11.0.4.0/255.255.255.255 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.csr deleted file mode 100644 index d595c49116..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.csr +++ /dev/null @@ -1,274 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIy1jCCMb4CAQAwFzEVMBMGA1UEAwwMSW50ZXJtZWRpYXRlMIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzvbBG4X4FRSuiN3JLw043DZmZ5TXTMLqcxL -Ha4GJxiOVbqtEscdMlltwxYg22Kmd4AS4IdYUVXjZn/R4DoiZeVwJqIEBPBd+V9W -yNroD1cod26aoEpTNBpjN6JDqw5KzQcj3VWDRAAMcEHfNWTQxQ5qh9vK/DXV4luv -C6DmdaXS4XJOImMBQXO4lVAs/e3DYbY21IOVYcPgYf/0noroutzR9ontnTBElSf0 -0YvmLxRmVvHa8cwEG3eSpZ9YQAyfDDLWBcJMwMWf5aQwPUzpnQNsTAa25ZW9Ibjm -K6igvwa7QzMZPXsXWfFkTSRnsVEPNa7wcXV5rlsCNAQx42aGZQIDAQABoIIweDCC -MHQGCSqGSIb3DQEJDjGCMGUwgjBhMB0GA1UdDgQWBBSSET+sEZbHZjfPg1ok8Dp3 -rzONfzAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zCCMB0GA1UdHgSC -MBQwgjAQoYIwDDAKhwgLAAAA/////zAKhwgLAAAB/////zAKhwgLAAAC/////zAK -hwgLAAAD/////zAKhwgLAAAE/////zAKhwgLAAAF/////zAKhwgLAAAG/////zAK -hwgLAAAH/////zAKhwgLAAAI/////zAKhwgLAAAJ/////zAKhwgLAAAK/////zAK -hwgLAAAL/////zAKhwgLAAAM/////zAKhwgLAAAN/////zAKhwgLAAAO/////zAK -hwgLAAAP/////zAKhwgLAAAQ/////zAKhwgLAAAR/////zAKhwgLAAAS/////zAK -hwgLAAAT/////zAKhwgLAAAU/////zAKhwgLAAAV/////zAKhwgLAAAW/////zAK -hwgLAAAX/////zAKhwgLAAAY/////zAKhwgLAAAZ/////zAKhwgLAAAa/////zAK -hwgLAAAb/////zAKhwgLAAAc/////zAKhwgLAAAd/////zAKhwgLAAAe/////zAK -hwgLAAAf/////zAKhwgLAAAg/////zAKhwgLAAAh/////zAKhwgLAAAi/////zAK -hwgLAAAj/////zAKhwgLAAAk/////zAKhwgLAAAl/////zAKhwgLAAAm/////zAK -hwgLAAAn/////zAKhwgLAAAo/////zAKhwgLAAAp/////zAKhwgLAAAq/////zAK -hwgLAAAr/////zAKhwgLAAAs/////zAKhwgLAAAt/////zAKhwgLAAAu/////zAK -hwgLAAAv/////zAKhwgLAAAw/////zAKhwgLAAAx/////zAKhwgLAAAy/////zAK -hwgLAAAz/////zAKhwgLAAA0/////zAKhwgLAAA1/////zAKhwgLAAA2/////zAK -hwgLAAA3/////zAKhwgLAAA4/////zAKhwgLAAA5/////zAKhwgLAAA6/////zAK -hwgLAAA7/////zAKhwgLAAA8/////zAKhwgLAAA9/////zAKhwgLAAA+/////zAK -hwgLAAA//////zAKhwgLAABA/////zAKhwgLAABB/////zAKhwgLAABC/////zAK -hwgLAABD/////zAKhwgLAABE/////zAKhwgLAABF/////zAKhwgLAABG/////zAK -hwgLAABH/////zAKhwgLAABI/////zAKhwgLAABJ/////zAKhwgLAABK/////zAK -hwgLAABL/////zAKhwgLAABM/////zAKhwgLAABN/////zAKhwgLAABO/////zAK -hwgLAABP/////zAKhwgLAABQ/////zAKhwgLAABR/////zAKhwgLAABS/////zAK -hwgLAABT/////zAKhwgLAABU/////zAKhwgLAABV/////zAKhwgLAABW/////zAK -hwgLAABX/////zAKhwgLAABY/////zAKhwgLAABZ/////zAKhwgLAABa/////zAK -hwgLAABb/////zAKhwgLAABc/////zAKhwgLAABd/////zAKhwgLAABe/////zAK -hwgLAABf/////zAKhwgLAABg/////zAKhwgLAABh/////zAKhwgLAABi/////zAK -hwgLAABj/////zAKhwgLAABk/////zAKhwgLAABl/////zAKhwgLAABm/////zAK -hwgLAABn/////zAKhwgLAABo/////zAKhwgLAABp/////zAKhwgLAABq/////zAK -hwgLAABr/////zAKhwgLAABs/////zAKhwgLAABt/////zAKhwgLAABu/////zAK -hwgLAABv/////zAKhwgLAABw/////zAKhwgLAABx/////zAKhwgLAABy/////zAK -hwgLAABz/////zAKhwgLAAB0/////zAKhwgLAAB1/////zAKhwgLAAB2/////zAK -hwgLAAB3/////zAKhwgLAAB4/////zAKhwgLAAB5/////zAKhwgLAAB6/////zAK -hwgLAAB7/////zAKhwgLAAB8/////zAKhwgLAAB9/////zAKhwgLAAB+/////zAK -hwgLAAB//////zAKhwgLAACA/////zAKhwgLAACB/////zAKhwgLAACC/////zAK -hwgLAACD/////zAKhwgLAACE/////zAKhwgLAACF/////zAKhwgLAACG/////zAK -hwgLAACH/////zAKhwgLAACI/////zAKhwgLAACJ/////zAKhwgLAACK/////zAK -hwgLAACL/////zAKhwgLAACM/////zAKhwgLAACN/////zAKhwgLAACO/////zAK -hwgLAACP/////zAKhwgLAACQ/////zAKhwgLAACR/////zAKhwgLAACS/////zAK -hwgLAACT/////zAKhwgLAACU/////zAKhwgLAACV/////zAKhwgLAACW/////zAK -hwgLAACX/////zAKhwgLAACY/////zAKhwgLAACZ/////zAKhwgLAACa/////zAK -hwgLAACb/////zAKhwgLAACc/////zAKhwgLAACd/////zAKhwgLAACe/////zAK -hwgLAACf/////zAKhwgLAACg/////zAKhwgLAACh/////zAKhwgLAACi/////zAK -hwgLAACj/////zAKhwgLAACk/////zAKhwgLAACl/////zAKhwgLAACm/////zAK -hwgLAACn/////zAKhwgLAACo/////zAKhwgLAACp/////zAKhwgLAACq/////zAK -hwgLAACr/////zAKhwgLAACs/////zAKhwgLAACt/////zAKhwgLAACu/////zAK -hwgLAACv/////zAKhwgLAACw/////zAKhwgLAACx/////zAKhwgLAACy/////zAK -hwgLAACz/////zAKhwgLAAC0/////zAKhwgLAAC1/////zAKhwgLAAC2/////zAK -hwgLAAC3/////zAKhwgLAAC4/////zAKhwgLAAC5/////zAKhwgLAAC6/////zAK -hwgLAAC7/////zAKhwgLAAC8/////zAKhwgLAAC9/////zAKhwgLAAC+/////zAK -hwgLAAC//////zAKhwgLAADA/////zAKhwgLAADB/////zAKhwgLAADC/////zAK -hwgLAADD/////zAKhwgLAADE/////zAKhwgLAADF/////zAKhwgLAADG/////zAK -hwgLAADH/////zAKhwgLAADI/////zAKhwgLAADJ/////zAKhwgLAADK/////zAK -hwgLAADL/////zAKhwgLAADM/////zAKhwgLAADN/////zAKhwgLAADO/////zAK -hwgLAADP/////zAKhwgLAADQ/////zAKhwgLAADR/////zAKhwgLAADS/////zAK -hwgLAADT/////zAKhwgLAADU/////zAKhwgLAADV/////zAKhwgLAADW/////zAK -hwgLAADX/////zAKhwgLAADY/////zAKhwgLAADZ/////zAKhwgLAADa/////zAK -hwgLAADb/////zAKhwgLAADc/////zAKhwgLAADd/////zAKhwgLAADe/////zAK -hwgLAADf/////zAKhwgLAADg/////zAKhwgLAADh/////zAKhwgLAADi/////zAK -hwgLAADj/////zAKhwgLAADk/////zAKhwgLAADl/////zAKhwgLAADm/////zAK -hwgLAADn/////zAKhwgLAADo/////zAKhwgLAADp/////zAKhwgLAADq/////zAK -hwgLAADr/////zAKhwgLAADs/////zAKhwgLAADt/////zAKhwgLAADu/////zAK -hwgLAADv/////zAKhwgLAADw/////zAKhwgLAADx/////zAKhwgLAADy/////zAK -hwgLAADz/////zAKhwgLAAD0/////zAKhwgLAAD1/////zAKhwgLAAD2/////zAK -hwgLAAD3/////zAKhwgLAAD4/////zAKhwgLAAD5/////zAKhwgLAAD6/////zAK -hwgLAAD7/////zAKhwgLAAD8/////zAKhwgLAAD9/////zAKhwgLAAD+/////zAK -hwgLAAD//////zAKhwgLAAEA/////zAKhwgLAAEB/////zAKhwgLAAEC/////zAK -hwgLAAED/////zAKhwgLAAEE/////zAKhwgLAAEF/////zAKhwgLAAEG/////zAK -hwgLAAEH/////zAKhwgLAAEI/////zAKhwgLAAEJ/////zAKhwgLAAEK/////zAK -hwgLAAEL/////zAKhwgLAAEM/////zAKhwgLAAEN/////zAKhwgLAAEO/////zAK -hwgLAAEP/////zAKhwgLAAEQ/////zAKhwgLAAER/////zAKhwgLAAES/////zAK -hwgLAAET/////zAKhwgLAAEU/////zAKhwgLAAEV/////zAKhwgLAAEW/////zAK -hwgLAAEX/////zAKhwgLAAEY/////zAKhwgLAAEZ/////zAKhwgLAAEa/////zAK -hwgLAAEb/////zAKhwgLAAEc/////zAKhwgLAAEd/////zAKhwgLAAEe/////zAK -hwgLAAEf/////zAKhwgLAAEg/////zAKhwgLAAEh/////zAKhwgLAAEi/////zAK -hwgLAAEj/////zAKhwgLAAEk/////zAKhwgLAAEl/////zAKhwgLAAEm/////zAK -hwgLAAEn/////zAKhwgLAAEo/////zAKhwgLAAEp/////zAKhwgLAAEq/////zAK -hwgLAAEr/////zAKhwgLAAEs/////zAKhwgLAAEt/////zAKhwgLAAEu/////zAK -hwgLAAEv/////zAKhwgLAAEw/////zAKhwgLAAEx/////zAKhwgLAAEy/////zAK -hwgLAAEz/////zAKhwgLAAE0/////zAKhwgLAAE1/////zAKhwgLAAE2/////zAK -hwgLAAE3/////zAKhwgLAAE4/////zAKhwgLAAE5/////zAKhwgLAAE6/////zAK -hwgLAAE7/////zAKhwgLAAE8/////zAKhwgLAAE9/////zAKhwgLAAE+/////zAK -hwgLAAE//////zAKhwgLAAFA/////zAKhwgLAAFB/////zAKhwgLAAFC/////zAK -hwgLAAFD/////zAKhwgLAAFE/////zAKhwgLAAFF/////zAKhwgLAAFG/////zAK -hwgLAAFH/////zAKhwgLAAFI/////zAKhwgLAAFJ/////zAKhwgLAAFK/////zAK -hwgLAAFL/////zAKhwgLAAFM/////zAKhwgLAAFN/////zAKhwgLAAFO/////zAK -hwgLAAFP/////zAKhwgLAAFQ/////zAKhwgLAAFR/////zAKhwgLAAFS/////zAK -hwgLAAFT/////zAKhwgLAAFU/////zAKhwgLAAFV/////zAKhwgLAAFW/////zAK -hwgLAAFX/////zAKhwgLAAFY/////zAKhwgLAAFZ/////zAKhwgLAAFa/////zAK -hwgLAAFb/////zAKhwgLAAFc/////zAKhwgLAAFd/////zAKhwgLAAFe/////zAK -hwgLAAFf/////zAKhwgLAAFg/////zAKhwgLAAFh/////zAKhwgLAAFi/////zAK -hwgLAAFj/////zAKhwgLAAFk/////zAKhwgLAAFl/////zAKhwgLAAFm/////zAK -hwgLAAFn/////zAKhwgLAAFo/////zAKhwgLAAFp/////zAKhwgLAAFq/////zAK -hwgLAAFr/////zAKhwgLAAFs/////zAKhwgLAAFt/////zAKhwgLAAFu/////zAK -hwgLAAFv/////zAKhwgLAAFw/////zAKhwgLAAFx/////zAKhwgLAAFy/////zAK -hwgLAAFz/////zAKhwgLAAF0/////zAKhwgLAAF1/////zAKhwgLAAF2/////zAK -hwgLAAF3/////zAKhwgLAAF4/////zAKhwgLAAF5/////zAKhwgLAAF6/////zAK -hwgLAAF7/////zAKhwgLAAF8/////zAKhwgLAAF9/////zAKhwgLAAF+/////zAK -hwgLAAF//////zAKhwgLAAGA/////zAKhwgLAAGB/////zAKhwgLAAGC/////zAK -hwgLAAGD/////zAKhwgLAAGE/////zAKhwgLAAGF/////zAKhwgLAAGG/////zAK -hwgLAAGH/////zAKhwgLAAGI/////zAKhwgLAAGJ/////zAKhwgLAAGK/////zAK -hwgLAAGL/////zAKhwgLAAGM/////zAKhwgLAAGN/////zAKhwgLAAGO/////zAK -hwgLAAGP/////zAKhwgLAAGQ/////zAKhwgLAAGR/////zAKhwgLAAGS/////zAK -hwgLAAGT/////zAKhwgLAAGU/////zAKhwgLAAGV/////zAKhwgLAAGW/////zAK -hwgLAAGX/////zAKhwgLAAGY/////zAKhwgLAAGZ/////zAKhwgLAAGa/////zAK -hwgLAAGb/////zAKhwgLAAGc/////zAKhwgLAAGd/////zAKhwgLAAGe/////zAK -hwgLAAGf/////zAKhwgLAAGg/////zAKhwgLAAGh/////zAKhwgLAAGi/////zAK -hwgLAAGj/////zAKhwgLAAGk/////zAKhwgLAAGl/////zAKhwgLAAGm/////zAK -hwgLAAGn/////zAKhwgLAAGo/////zAKhwgLAAGp/////zAKhwgLAAGq/////zAK -hwgLAAGr/////zAKhwgLAAGs/////zAKhwgLAAGt/////zAKhwgLAAGu/////zAK -hwgLAAGv/////zAKhwgLAAGw/////zAKhwgLAAGx/////zAKhwgLAAGy/////zAK -hwgLAAGz/////zAKhwgLAAG0/////zAKhwgLAAG1/////zAKhwgLAAG2/////zAK -hwgLAAG3/////zAKhwgLAAG4/////zAKhwgLAAG5/////zAKhwgLAAG6/////zAK -hwgLAAG7/////zAKhwgLAAG8/////zAKhwgLAAG9/////zAKhwgLAAG+/////zAK -hwgLAAG//////zAKhwgLAAHA/////zAKhwgLAAHB/////zAKhwgLAAHC/////zAK -hwgLAAHD/////zAKhwgLAAHE/////zAKhwgLAAHF/////zAKhwgLAAHG/////zAK -hwgLAAHH/////zAKhwgLAAHI/////zAKhwgLAAHJ/////zAKhwgLAAHK/////zAK -hwgLAAHL/////zAKhwgLAAHM/////zAKhwgLAAHN/////zAKhwgLAAHO/////zAK -hwgLAAHP/////zAKhwgLAAHQ/////zAKhwgLAAHR/////zAKhwgLAAHS/////zAK -hwgLAAHT/////zAKhwgLAAHU/////zAKhwgLAAHV/////zAKhwgLAAHW/////zAK -hwgLAAHX/////zAKhwgLAAHY/////zAKhwgLAAHZ/////zAKhwgLAAHa/////zAK -hwgLAAHb/////zAKhwgLAAHc/////zAKhwgLAAHd/////zAKhwgLAAHe/////zAK -hwgLAAHf/////zAKhwgLAAHg/////zAKhwgLAAHh/////zAKhwgLAAHi/////zAK -hwgLAAHj/////zAKhwgLAAHk/////zAKhwgLAAHl/////zAKhwgLAAHm/////zAK -hwgLAAHn/////zAKhwgLAAHo/////zAKhwgLAAHp/////zAKhwgLAAHq/////zAK -hwgLAAHr/////zAKhwgLAAHs/////zAKhwgLAAHt/////zAKhwgLAAHu/////zAK -hwgLAAHv/////zAKhwgLAAHw/////zAKhwgLAAHx/////zAKhwgLAAHy/////zAK -hwgLAAHz/////zAKhwgLAAH0/////zAKhwgLAAH1/////zAKhwgLAAH2/////zAK -hwgLAAH3/////zAKhwgLAAH4/////zAKhwgLAAH5/////zAKhwgLAAH6/////zAK -hwgLAAH7/////zAKhwgLAAH8/////zAKhwgLAAH9/////zAKhwgLAAH+/////zAK -hwgLAAH//////zAKhwgLAAIA/////zAKhwgLAAIB/////zAKhwgLAAIC/////zAK -hwgLAAID/////zAKhwgLAAIE/////zAKhwgLAAIF/////zAKhwgLAAIG/////zAK -hwgLAAIH/////zAKhwgLAAII/////zAKhwgLAAIJ/////zAKhwgLAAIK/////zAK -hwgLAAIL/////zAKhwgLAAIM/////zAKhwgLAAIN/////zAKhwgLAAIO/////zAK -hwgLAAIP/////zAKhwgLAAIQ/////zAKhwgLAAIR/////zAKhwgLAAIS/////zAK -hwgLAAIT/////zAKhwgLAAIU/////zAKhwgLAAIV/////zAKhwgLAAIW/////zAK -hwgLAAIX/////zAKhwgLAAIY/////zAKhwgLAAIZ/////zAKhwgLAAIa/////zAK -hwgLAAIb/////zAKhwgLAAIc/////zAKhwgLAAId/////zAKhwgLAAIe/////zAK -hwgLAAIf/////zAKhwgLAAIg/////zAKhwgLAAIh/////zAKhwgLAAIi/////zAK -hwgLAAIj/////zAKhwgLAAIk/////zAKhwgLAAIl/////zAKhwgLAAIm/////zAK -hwgLAAIn/////zAKhwgLAAIo/////zAKhwgLAAIp/////zAKhwgLAAIq/////zAK -hwgLAAIr/////zAKhwgLAAIs/////zAKhwgLAAIt/////zAKhwgLAAIu/////zAK -hwgLAAIv/////zAKhwgLAAIw/////zAKhwgLAAIx/////zAKhwgLAAIy/////zAK -hwgLAAIz/////zAKhwgLAAI0/////zAKhwgLAAI1/////zAKhwgLAAI2/////zAK -hwgLAAI3/////zAKhwgLAAI4/////zAKhwgLAAI5/////zAKhwgLAAI6/////zAK -hwgLAAI7/////zAKhwgLAAI8/////zAKhwgLAAI9/////zAKhwgLAAI+/////zAK -hwgLAAI//////zAKhwgLAAJA/////zAKhwgLAAJB/////zAKhwgLAAJC/////zAK -hwgLAAJD/////zAKhwgLAAJE/////zAKhwgLAAJF/////zAKhwgLAAJG/////zAK -hwgLAAJH/////zAKhwgLAAJI/////zAKhwgLAAJJ/////zAKhwgLAAJK/////zAK -hwgLAAJL/////zAKhwgLAAJM/////zAKhwgLAAJN/////zAKhwgLAAJO/////zAK -hwgLAAJP/////zAKhwgLAAJQ/////zAKhwgLAAJR/////zAKhwgLAAJS/////zAK -hwgLAAJT/////zAKhwgLAAJU/////zAKhwgLAAJV/////zAKhwgLAAJW/////zAK -hwgLAAJX/////zAKhwgLAAJY/////zAKhwgLAAJZ/////zAKhwgLAAJa/////zAK -hwgLAAJb/////zAKhwgLAAJc/////zAKhwgLAAJd/////zAKhwgLAAJe/////zAK -hwgLAAJf/////zAKhwgLAAJg/////zAKhwgLAAJh/////zAKhwgLAAJi/////zAK -hwgLAAJj/////zAKhwgLAAJk/////zAKhwgLAAJl/////zAKhwgLAAJm/////zAK -hwgLAAJn/////zAKhwgLAAJo/////zAKhwgLAAJp/////zAKhwgLAAJq/////zAK -hwgLAAJr/////zAKhwgLAAJs/////zAKhwgLAAJt/////zAKhwgLAAJu/////zAK -hwgLAAJv/////zAKhwgLAAJw/////zAKhwgLAAJx/////zAKhwgLAAJy/////zAK -hwgLAAJz/////zAKhwgLAAJ0/////zAKhwgLAAJ1/////zAKhwgLAAJ2/////zAK -hwgLAAJ3/////zAKhwgLAAJ4/////zAKhwgLAAJ5/////zAKhwgLAAJ6/////zAK -hwgLAAJ7/////zAKhwgLAAJ8/////zAKhwgLAAJ9/////zAKhwgLAAJ+/////zAK -hwgLAAJ//////zAKhwgLAAKA/////zAKhwgLAAKB/////zAKhwgLAAKC/////zAK -hwgLAAKD/////zAKhwgLAAKE/////zAKhwgLAAKF/////zAKhwgLAAKG/////zAK -hwgLAAKH/////zAKhwgLAAKI/////zAKhwgLAAKJ/////zAKhwgLAAKK/////zAK -hwgLAAKL/////zAKhwgLAAKM/////zAKhwgLAAKN/////zAKhwgLAAKO/////zAK -hwgLAAKP/////zAKhwgLAAKQ/////zAKhwgLAAKR/////zAKhwgLAAKS/////zAK -hwgLAAKT/////zAKhwgLAAKU/////zAKhwgLAAKV/////zAKhwgLAAKW/////zAK -hwgLAAKX/////zAKhwgLAAKY/////zAKhwgLAAKZ/////zAKhwgLAAKa/////zAK -hwgLAAKb/////zAKhwgLAAKc/////zAKhwgLAAKd/////zAKhwgLAAKe/////zAK -hwgLAAKf/////zAKhwgLAAKg/////zAKhwgLAAKh/////zAKhwgLAAKi/////zAK -hwgLAAKj/////zAKhwgLAAKk/////zAKhwgLAAKl/////zAKhwgLAAKm/////zAK -hwgLAAKn/////zAKhwgLAAKo/////zAKhwgLAAKp/////zAKhwgLAAKq/////zAK -hwgLAAKr/////zAKhwgLAAKs/////zAKhwgLAAKt/////zAKhwgLAAKu/////zAK -hwgLAAKv/////zAKhwgLAAKw/////zAKhwgLAAKx/////zAKhwgLAAKy/////zAK -hwgLAAKz/////zAKhwgLAAK0/////zAKhwgLAAK1/////zAKhwgLAAK2/////zAK -hwgLAAK3/////zAKhwgLAAK4/////zAKhwgLAAK5/////zAKhwgLAAK6/////zAK -hwgLAAK7/////zAKhwgLAAK8/////zAKhwgLAAK9/////zAKhwgLAAK+/////zAK -hwgLAAK//////zAKhwgLAALA/////zAKhwgLAALB/////zAKhwgLAALC/////zAK -hwgLAALD/////zAKhwgLAALE/////zAKhwgLAALF/////zAKhwgLAALG/////zAK -hwgLAALH/////zAKhwgLAALI/////zAKhwgLAALJ/////zAKhwgLAALK/////zAK -hwgLAALL/////zAKhwgLAALM/////zAKhwgLAALN/////zAKhwgLAALO/////zAK -hwgLAALP/////zAKhwgLAALQ/////zAKhwgLAALR/////zAKhwgLAALS/////zAK -hwgLAALT/////zAKhwgLAALU/////zAKhwgLAALV/////zAKhwgLAALW/////zAK -hwgLAALX/////zAKhwgLAALY/////zAKhwgLAALZ/////zAKhwgLAALa/////zAK -hwgLAALb/////zAKhwgLAALc/////zAKhwgLAALd/////zAKhwgLAALe/////zAK -hwgLAALf/////zAKhwgLAALg/////zAKhwgLAALh/////zAKhwgLAALi/////zAK -hwgLAALj/////zAKhwgLAALk/////zAKhwgLAALl/////zAKhwgLAALm/////zAK -hwgLAALn/////zAKhwgLAALo/////zAKhwgLAALp/////zAKhwgLAALq/////zAK -hwgLAALr/////zAKhwgLAALs/////zAKhwgLAALt/////zAKhwgLAALu/////zAK -hwgLAALv/////zAKhwgLAALw/////zAKhwgLAALx/////zAKhwgLAALy/////zAK -hwgLAALz/////zAKhwgLAAL0/////zAKhwgLAAL1/////zAKhwgLAAL2/////zAK -hwgLAAL3/////zAKhwgLAAL4/////zAKhwgLAAL5/////zAKhwgLAAL6/////zAK -hwgLAAL7/////zAKhwgLAAL8/////zAKhwgLAAL9/////zAKhwgLAAL+/////zAK -hwgLAAL//////zAKhwgLAAMA/////zAKhwgLAAMB/////zAKhwgLAAMC/////zAK -hwgLAAMD/////zAKhwgLAAME/////zAKhwgLAAMF/////zAKhwgLAAMG/////zAK -hwgLAAMH/////zAKhwgLAAMI/////zAKhwgLAAMJ/////zAKhwgLAAMK/////zAK -hwgLAAML/////zAKhwgLAAMM/////zAKhwgLAAMN/////zAKhwgLAAMO/////zAK -hwgLAAMP/////zAKhwgLAAMQ/////zAKhwgLAAMR/////zAKhwgLAAMS/////zAK -hwgLAAMT/////zAKhwgLAAMU/////zAKhwgLAAMV/////zAKhwgLAAMW/////zAK -hwgLAAMX/////zAKhwgLAAMY/////zAKhwgLAAMZ/////zAKhwgLAAMa/////zAK -hwgLAAMb/////zAKhwgLAAMc/////zAKhwgLAAMd/////zAKhwgLAAMe/////zAK -hwgLAAMf/////zAKhwgLAAMg/////zAKhwgLAAMh/////zAKhwgLAAMi/////zAK -hwgLAAMj/////zAKhwgLAAMk/////zAKhwgLAAMl/////zAKhwgLAAMm/////zAK -hwgLAAMn/////zAKhwgLAAMo/////zAKhwgLAAMp/////zAKhwgLAAMq/////zAK -hwgLAAMr/////zAKhwgLAAMs/////zAKhwgLAAMt/////zAKhwgLAAMu/////zAK -hwgLAAMv/////zAKhwgLAAMw/////zAKhwgLAAMx/////zAKhwgLAAMy/////zAK -hwgLAAMz/////zAKhwgLAAM0/////zAKhwgLAAM1/////zAKhwgLAAM2/////zAK -hwgLAAM3/////zAKhwgLAAM4/////zAKhwgLAAM5/////zAKhwgLAAM6/////zAK -hwgLAAM7/////zAKhwgLAAM8/////zAKhwgLAAM9/////zAKhwgLAAM+/////zAK -hwgLAAM//////zAKhwgLAANA/////zAKhwgLAANB/////zAKhwgLAANC/////zAK -hwgLAAND/////zAKhwgLAANE/////zAKhwgLAANF/////zAKhwgLAANG/////zAK -hwgLAANH/////zAKhwgLAANI/////zAKhwgLAANJ/////zAKhwgLAANK/////zAK -hwgLAANL/////zAKhwgLAANM/////zAKhwgLAANN/////zAKhwgLAANO/////zAK -hwgLAANP/////zAKhwgLAANQ/////zAKhwgLAANR/////zAKhwgLAANS/////zAK -hwgLAANT/////zAKhwgLAANU/////zAKhwgLAANV/////zAKhwgLAANW/////zAK -hwgLAANX/////zAKhwgLAANY/////zAKhwgLAANZ/////zAKhwgLAANa/////zAK -hwgLAANb/////zAKhwgLAANc/////zAKhwgLAANd/////zAKhwgLAANe/////zAK -hwgLAANf/////zAKhwgLAANg/////zAKhwgLAANh/////zAKhwgLAANi/////zAK -hwgLAANj/////zAKhwgLAANk/////zAKhwgLAANl/////zAKhwgLAANm/////zAK -hwgLAANn/////zAKhwgLAANo/////zAKhwgLAANp/////zAKhwgLAANq/////zAK -hwgLAANr/////zAKhwgLAANs/////zAKhwgLAANt/////zAKhwgLAANu/////zAK -hwgLAANv/////zAKhwgLAANw/////zAKhwgLAANx/////zAKhwgLAANy/////zAK -hwgLAANz/////zAKhwgLAAN0/////zAKhwgLAAN1/////zAKhwgLAAN2/////zAK -hwgLAAN3/////zAKhwgLAAN4/////zAKhwgLAAN5/////zAKhwgLAAN6/////zAK -hwgLAAN7/////zAKhwgLAAN8/////zAKhwgLAAN9/////zAKhwgLAAN+/////zAK -hwgLAAN//////zAKhwgLAAOA/////zAKhwgLAAOB/////zAKhwgLAAOC/////zAK -hwgLAAOD/////zAKhwgLAAOE/////zAKhwgLAAOF/////zAKhwgLAAOG/////zAK -hwgLAAOH/////zAKhwgLAAOI/////zAKhwgLAAOJ/////zAKhwgLAAOK/////zAK -hwgLAAOL/////zAKhwgLAAOM/////zAKhwgLAAON/////zAKhwgLAAOO/////zAK -hwgLAAOP/////zAKhwgLAAOQ/////zAKhwgLAAOR/////zAKhwgLAAOS/////zAK -hwgLAAOT/////zAKhwgLAAOU/////zAKhwgLAAOV/////zAKhwgLAAOW/////zAK -hwgLAAOX/////zAKhwgLAAOY/////zAKhwgLAAOZ/////zAKhwgLAAOa/////zAK -hwgLAAOb/////zAKhwgLAAOc/////zAKhwgLAAOd/////zAKhwgLAAOe/////zAK -hwgLAAOf/////zAKhwgLAAOg/////zAKhwgLAAOh/////zAKhwgLAAOi/////zAK -hwgLAAOj/////zAKhwgLAAOk/////zAKhwgLAAOl/////zAKhwgLAAOm/////zAK -hwgLAAOn/////zAKhwgLAAOo/////zAKhwgLAAOp/////zAKhwgLAAOq/////zAK -hwgLAAOr/////zAKhwgLAAOs/////zAKhwgLAAOt/////zAKhwgLAAOu/////zAK -hwgLAAOv/////zAKhwgLAAOw/////zAKhwgLAAOx/////zAKhwgLAAOy/////zAK -hwgLAAOz/////zAKhwgLAAO0/////zAKhwgLAAO1/////zAKhwgLAAO2/////zAK -hwgLAAO3/////zAKhwgLAAO4/////zAKhwgLAAO5/////zAKhwgLAAO6/////zAK -hwgLAAO7/////zAKhwgLAAO8/////zAKhwgLAAO9/////zAKhwgLAAO+/////zAK -hwgLAAO//////zAKhwgLAAPA/////zAKhwgLAAPB/////zAKhwgLAAPC/////zAK -hwgLAAPD/////zAKhwgLAAPE/////zAKhwgLAAPF/////zAKhwgLAAPG/////zAK -hwgLAAPH/////zAKhwgLAAPI/////zAKhwgLAAPJ/////zAKhwgLAAPK/////zAK -hwgLAAPL/////zAKhwgLAAPM/////zAKhwgLAAPN/////zAKhwgLAAPO/////zAK -hwgLAAPP/////zAKhwgLAAPQ/////zAKhwgLAAPR/////zAKhwgLAAPS/////zAK -hwgLAAPT/////zAKhwgLAAPU/////zAKhwgLAAPV/////zAKhwgLAAPW/////zAK -hwgLAAPX/////zAKhwgLAAPY/////zAKhwgLAAPZ/////zAKhwgLAAPa/////zAK -hwgLAAPb/////zAKhwgLAAPc/////zAKhwgLAAPd/////zAKhwgLAAPe/////zAK -hwgLAAPf/////zAKhwgLAAPg/////zAKhwgLAAPh/////zAKhwgLAAPi/////zAK -hwgLAAPj/////zAKhwgLAAPk/////zAKhwgLAAPl/////zAKhwgLAAPm/////zAK -hwgLAAPn/////zAKhwgLAAPo/////zAKhwgLAAPp/////zAKhwgLAAPq/////zAK -hwgLAAPr/////zAKhwgLAAPs/////zAKhwgLAAPt/////zAKhwgLAAPu/////zAK -hwgLAAPv/////zAKhwgLAAPw/////zAKhwgLAAPx/////zAKhwgLAAPy/////zAK -hwgLAAPz/////zAKhwgLAAP0/////zAKhwgLAAP1/////zAKhwgLAAP2/////zAK -hwgLAAP3/////zAKhwgLAAP4/////zAKhwgLAAP5/////zAKhwgLAAP6/////zAK -hwgLAAP7/////zAKhwgLAAP8/////zAKhwgLAAP9/////zAKhwgLAAP+/////zAK -hwgLAAP//////zAKhwgLAAQA/////zANBgkqhkiG9w0BAQsFAAOCAQEAekt7d20T -amfhYBe6w+YSpCQlobWz5m8saaCAw5lSoCD7rDxc5ZU/sayfFUMoOmJmmk+ii+0B -WeuoHlfe+QBqtHFzJ7r3FckbGcwMsSKZJmjiBlBveYMHm39cRmhEa5hmOkWUKjl0 -7AjXbmkOWzBueruqNsUZcU5mVER5u/OilYdIw3F7y4bW8oim12JgmDj0aCjRz+gA -0FuWzlJVguk8sR+CArcjc0zDZZDzq4yuVe/HFcm5sf+WuHo4UohGd1CY0wNipkwF -1Tgr1O/uvdBDY5PvEeGP8jjTcE+O3qbCAKH1fnxaeRGuETUqdm//b+EhSWkqyHCM -zD4OIa/2mw0OkA== ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.pem deleted file mode 100644 index c4dfd8fbbc..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_3.pem +++ /dev/null @@ -1,1374 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:f9 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Excluded: - IP:11.0.0.0/255.255.255.255 - IP:11.0.0.1/255.255.255.255 - IP:11.0.0.2/255.255.255.255 - IP:11.0.0.3/255.255.255.255 - IP:11.0.0.4/255.255.255.255 - IP:11.0.0.5/255.255.255.255 - IP:11.0.0.6/255.255.255.255 - IP:11.0.0.7/255.255.255.255 - IP:11.0.0.8/255.255.255.255 - IP:11.0.0.9/255.255.255.255 - IP:11.0.0.10/255.255.255.255 - IP:11.0.0.11/255.255.255.255 - IP:11.0.0.12/255.255.255.255 - IP:11.0.0.13/255.255.255.255 - IP:11.0.0.14/255.255.255.255 - IP:11.0.0.15/255.255.255.255 - IP:11.0.0.16/255.255.255.255 - IP:11.0.0.17/255.255.255.255 - IP:11.0.0.18/255.255.255.255 - IP:11.0.0.19/255.255.255.255 - IP:11.0.0.20/255.255.255.255 - IP:11.0.0.21/255.255.255.255 - IP:11.0.0.22/255.255.255.255 - IP:11.0.0.23/255.255.255.255 - IP:11.0.0.24/255.255.255.255 - IP:11.0.0.25/255.255.255.255 - IP:11.0.0.26/255.255.255.255 - IP:11.0.0.27/255.255.255.255 - IP:11.0.0.28/255.255.255.255 - IP:11.0.0.29/255.255.255.255 - IP:11.0.0.30/255.255.255.255 - IP:11.0.0.31/255.255.255.255 - IP:11.0.0.32/255.255.255.255 - IP:11.0.0.33/255.255.255.255 - IP:11.0.0.34/255.255.255.255 - IP:11.0.0.35/255.255.255.255 - IP:11.0.0.36/255.255.255.255 - IP:11.0.0.37/255.255.255.255 - IP:11.0.0.38/255.255.255.255 - IP:11.0.0.39/255.255.255.255 - IP:11.0.0.40/255.255.255.255 - IP:11.0.0.41/255.255.255.255 - IP:11.0.0.42/255.255.255.255 - IP:11.0.0.43/255.255.255.255 - IP:11.0.0.44/255.255.255.255 - IP:11.0.0.45/255.255.255.255 - IP:11.0.0.46/255.255.255.255 - IP:11.0.0.47/255.255.255.255 - IP:11.0.0.48/255.255.255.255 - IP:11.0.0.49/255.255.255.255 - IP:11.0.0.50/255.255.255.255 - IP:11.0.0.51/255.255.255.255 - IP:11.0.0.52/255.255.255.255 - IP:11.0.0.53/255.255.255.255 - IP:11.0.0.54/255.255.255.255 - IP:11.0.0.55/255.255.255.255 - IP:11.0.0.56/255.255.255.255 - IP:11.0.0.57/255.255.255.255 - IP:11.0.0.58/255.255.255.255 - IP:11.0.0.59/255.255.255.255 - IP:11.0.0.60/255.255.255.255 - IP:11.0.0.61/255.255.255.255 - IP:11.0.0.62/255.255.255.255 - IP:11.0.0.63/255.255.255.255 - IP:11.0.0.64/255.255.255.255 - IP:11.0.0.65/255.255.255.255 - IP:11.0.0.66/255.255.255.255 - IP:11.0.0.67/255.255.255.255 - IP:11.0.0.68/255.255.255.255 - IP:11.0.0.69/255.255.255.255 - IP:11.0.0.70/255.255.255.255 - IP:11.0.0.71/255.255.255.255 - IP:11.0.0.72/255.255.255.255 - IP:11.0.0.73/255.255.255.255 - IP:11.0.0.74/255.255.255.255 - IP:11.0.0.75/255.255.255.255 - IP:11.0.0.76/255.255.255.255 - IP:11.0.0.77/255.255.255.255 - IP:11.0.0.78/255.255.255.255 - IP:11.0.0.79/255.255.255.255 - IP:11.0.0.80/255.255.255.255 - IP:11.0.0.81/255.255.255.255 - IP:11.0.0.82/255.255.255.255 - IP:11.0.0.83/255.255.255.255 - IP:11.0.0.84/255.255.255.255 - IP:11.0.0.85/255.255.255.255 - IP:11.0.0.86/255.255.255.255 - IP:11.0.0.87/255.255.255.255 - IP:11.0.0.88/255.255.255.255 - IP:11.0.0.89/255.255.255.255 - IP:11.0.0.90/255.255.255.255 - IP:11.0.0.91/255.255.255.255 - IP:11.0.0.92/255.255.255.255 - IP:11.0.0.93/255.255.255.255 - IP:11.0.0.94/255.255.255.255 - IP:11.0.0.95/255.255.255.255 - IP:11.0.0.96/255.255.255.255 - IP:11.0.0.97/255.255.255.255 - IP:11.0.0.98/255.255.255.255 - IP:11.0.0.99/255.255.255.255 - IP:11.0.0.100/255.255.255.255 - IP:11.0.0.101/255.255.255.255 - IP:11.0.0.102/255.255.255.255 - IP:11.0.0.103/255.255.255.255 - IP:11.0.0.104/255.255.255.255 - IP:11.0.0.105/255.255.255.255 - IP:11.0.0.106/255.255.255.255 - IP:11.0.0.107/255.255.255.255 - IP:11.0.0.108/255.255.255.255 - IP:11.0.0.109/255.255.255.255 - IP:11.0.0.110/255.255.255.255 - IP:11.0.0.111/255.255.255.255 - IP:11.0.0.112/255.255.255.255 - IP:11.0.0.113/255.255.255.255 - IP:11.0.0.114/255.255.255.255 - IP:11.0.0.115/255.255.255.255 - IP:11.0.0.116/255.255.255.255 - IP:11.0.0.117/255.255.255.255 - IP:11.0.0.118/255.255.255.255 - IP:11.0.0.119/255.255.255.255 - IP:11.0.0.120/255.255.255.255 - IP:11.0.0.121/255.255.255.255 - IP:11.0.0.122/255.255.255.255 - IP:11.0.0.123/255.255.255.255 - IP:11.0.0.124/255.255.255.255 - IP:11.0.0.125/255.255.255.255 - IP:11.0.0.126/255.255.255.255 - IP:11.0.0.127/255.255.255.255 - IP:11.0.0.128/255.255.255.255 - IP:11.0.0.129/255.255.255.255 - IP:11.0.0.130/255.255.255.255 - IP:11.0.0.131/255.255.255.255 - IP:11.0.0.132/255.255.255.255 - IP:11.0.0.133/255.255.255.255 - IP:11.0.0.134/255.255.255.255 - IP:11.0.0.135/255.255.255.255 - IP:11.0.0.136/255.255.255.255 - IP:11.0.0.137/255.255.255.255 - IP:11.0.0.138/255.255.255.255 - IP:11.0.0.139/255.255.255.255 - IP:11.0.0.140/255.255.255.255 - IP:11.0.0.141/255.255.255.255 - IP:11.0.0.142/255.255.255.255 - IP:11.0.0.143/255.255.255.255 - IP:11.0.0.144/255.255.255.255 - IP:11.0.0.145/255.255.255.255 - IP:11.0.0.146/255.255.255.255 - IP:11.0.0.147/255.255.255.255 - IP:11.0.0.148/255.255.255.255 - IP:11.0.0.149/255.255.255.255 - IP:11.0.0.150/255.255.255.255 - IP:11.0.0.151/255.255.255.255 - IP:11.0.0.152/255.255.255.255 - IP:11.0.0.153/255.255.255.255 - IP:11.0.0.154/255.255.255.255 - IP:11.0.0.155/255.255.255.255 - IP:11.0.0.156/255.255.255.255 - IP:11.0.0.157/255.255.255.255 - IP:11.0.0.158/255.255.255.255 - IP:11.0.0.159/255.255.255.255 - IP:11.0.0.160/255.255.255.255 - IP:11.0.0.161/255.255.255.255 - IP:11.0.0.162/255.255.255.255 - IP:11.0.0.163/255.255.255.255 - IP:11.0.0.164/255.255.255.255 - IP:11.0.0.165/255.255.255.255 - IP:11.0.0.166/255.255.255.255 - IP:11.0.0.167/255.255.255.255 - IP:11.0.0.168/255.255.255.255 - IP:11.0.0.169/255.255.255.255 - IP:11.0.0.170/255.255.255.255 - IP:11.0.0.171/255.255.255.255 - IP:11.0.0.172/255.255.255.255 - IP:11.0.0.173/255.255.255.255 - IP:11.0.0.174/255.255.255.255 - IP:11.0.0.175/255.255.255.255 - IP:11.0.0.176/255.255.255.255 - IP:11.0.0.177/255.255.255.255 - IP:11.0.0.178/255.255.255.255 - IP:11.0.0.179/255.255.255.255 - IP:11.0.0.180/255.255.255.255 - IP:11.0.0.181/255.255.255.255 - IP:11.0.0.182/255.255.255.255 - IP:11.0.0.183/255.255.255.255 - IP:11.0.0.184/255.255.255.255 - IP:11.0.0.185/255.255.255.255 - IP:11.0.0.186/255.255.255.255 - IP:11.0.0.187/255.255.255.255 - IP:11.0.0.188/255.255.255.255 - IP:11.0.0.189/255.255.255.255 - IP:11.0.0.190/255.255.255.255 - IP:11.0.0.191/255.255.255.255 - IP:11.0.0.192/255.255.255.255 - IP:11.0.0.193/255.255.255.255 - IP:11.0.0.194/255.255.255.255 - IP:11.0.0.195/255.255.255.255 - IP:11.0.0.196/255.255.255.255 - IP:11.0.0.197/255.255.255.255 - IP:11.0.0.198/255.255.255.255 - IP:11.0.0.199/255.255.255.255 - IP:11.0.0.200/255.255.255.255 - IP:11.0.0.201/255.255.255.255 - IP:11.0.0.202/255.255.255.255 - IP:11.0.0.203/255.255.255.255 - IP:11.0.0.204/255.255.255.255 - IP:11.0.0.205/255.255.255.255 - IP:11.0.0.206/255.255.255.255 - IP:11.0.0.207/255.255.255.255 - IP:11.0.0.208/255.255.255.255 - IP:11.0.0.209/255.255.255.255 - IP:11.0.0.210/255.255.255.255 - IP:11.0.0.211/255.255.255.255 - IP:11.0.0.212/255.255.255.255 - IP:11.0.0.213/255.255.255.255 - IP:11.0.0.214/255.255.255.255 - IP:11.0.0.215/255.255.255.255 - IP:11.0.0.216/255.255.255.255 - IP:11.0.0.217/255.255.255.255 - IP:11.0.0.218/255.255.255.255 - IP:11.0.0.219/255.255.255.255 - IP:11.0.0.220/255.255.255.255 - IP:11.0.0.221/255.255.255.255 - IP:11.0.0.222/255.255.255.255 - IP:11.0.0.223/255.255.255.255 - IP:11.0.0.224/255.255.255.255 - IP:11.0.0.225/255.255.255.255 - IP:11.0.0.226/255.255.255.255 - IP:11.0.0.227/255.255.255.255 - IP:11.0.0.228/255.255.255.255 - IP:11.0.0.229/255.255.255.255 - IP:11.0.0.230/255.255.255.255 - IP:11.0.0.231/255.255.255.255 - IP:11.0.0.232/255.255.255.255 - IP:11.0.0.233/255.255.255.255 - IP:11.0.0.234/255.255.255.255 - IP:11.0.0.235/255.255.255.255 - IP:11.0.0.236/255.255.255.255 - IP:11.0.0.237/255.255.255.255 - IP:11.0.0.238/255.255.255.255 - IP:11.0.0.239/255.255.255.255 - IP:11.0.0.240/255.255.255.255 - IP:11.0.0.241/255.255.255.255 - IP:11.0.0.242/255.255.255.255 - IP:11.0.0.243/255.255.255.255 - IP:11.0.0.244/255.255.255.255 - IP:11.0.0.245/255.255.255.255 - IP:11.0.0.246/255.255.255.255 - IP:11.0.0.247/255.255.255.255 - IP:11.0.0.248/255.255.255.255 - IP:11.0.0.249/255.255.255.255 - IP:11.0.0.250/255.255.255.255 - IP:11.0.0.251/255.255.255.255 - IP:11.0.0.252/255.255.255.255 - IP:11.0.0.253/255.255.255.255 - IP:11.0.0.254/255.255.255.255 - IP:11.0.0.255/255.255.255.255 - IP:11.0.1.0/255.255.255.255 - IP:11.0.1.1/255.255.255.255 - IP:11.0.1.2/255.255.255.255 - IP:11.0.1.3/255.255.255.255 - IP:11.0.1.4/255.255.255.255 - IP:11.0.1.5/255.255.255.255 - IP:11.0.1.6/255.255.255.255 - IP:11.0.1.7/255.255.255.255 - IP:11.0.1.8/255.255.255.255 - IP:11.0.1.9/255.255.255.255 - IP:11.0.1.10/255.255.255.255 - IP:11.0.1.11/255.255.255.255 - IP:11.0.1.12/255.255.255.255 - IP:11.0.1.13/255.255.255.255 - IP:11.0.1.14/255.255.255.255 - IP:11.0.1.15/255.255.255.255 - IP:11.0.1.16/255.255.255.255 - IP:11.0.1.17/255.255.255.255 - IP:11.0.1.18/255.255.255.255 - IP:11.0.1.19/255.255.255.255 - IP:11.0.1.20/255.255.255.255 - IP:11.0.1.21/255.255.255.255 - IP:11.0.1.22/255.255.255.255 - IP:11.0.1.23/255.255.255.255 - IP:11.0.1.24/255.255.255.255 - IP:11.0.1.25/255.255.255.255 - IP:11.0.1.26/255.255.255.255 - IP:11.0.1.27/255.255.255.255 - IP:11.0.1.28/255.255.255.255 - IP:11.0.1.29/255.255.255.255 - IP:11.0.1.30/255.255.255.255 - IP:11.0.1.31/255.255.255.255 - IP:11.0.1.32/255.255.255.255 - IP:11.0.1.33/255.255.255.255 - IP:11.0.1.34/255.255.255.255 - IP:11.0.1.35/255.255.255.255 - IP:11.0.1.36/255.255.255.255 - IP:11.0.1.37/255.255.255.255 - IP:11.0.1.38/255.255.255.255 - IP:11.0.1.39/255.255.255.255 - IP:11.0.1.40/255.255.255.255 - IP:11.0.1.41/255.255.255.255 - IP:11.0.1.42/255.255.255.255 - IP:11.0.1.43/255.255.255.255 - IP:11.0.1.44/255.255.255.255 - IP:11.0.1.45/255.255.255.255 - IP:11.0.1.46/255.255.255.255 - IP:11.0.1.47/255.255.255.255 - IP:11.0.1.48/255.255.255.255 - IP:11.0.1.49/255.255.255.255 - IP:11.0.1.50/255.255.255.255 - IP:11.0.1.51/255.255.255.255 - IP:11.0.1.52/255.255.255.255 - IP:11.0.1.53/255.255.255.255 - IP:11.0.1.54/255.255.255.255 - IP:11.0.1.55/255.255.255.255 - IP:11.0.1.56/255.255.255.255 - IP:11.0.1.57/255.255.255.255 - IP:11.0.1.58/255.255.255.255 - IP:11.0.1.59/255.255.255.255 - IP:11.0.1.60/255.255.255.255 - IP:11.0.1.61/255.255.255.255 - IP:11.0.1.62/255.255.255.255 - IP:11.0.1.63/255.255.255.255 - IP:11.0.1.64/255.255.255.255 - IP:11.0.1.65/255.255.255.255 - IP:11.0.1.66/255.255.255.255 - IP:11.0.1.67/255.255.255.255 - IP:11.0.1.68/255.255.255.255 - IP:11.0.1.69/255.255.255.255 - IP:11.0.1.70/255.255.255.255 - IP:11.0.1.71/255.255.255.255 - IP:11.0.1.72/255.255.255.255 - IP:11.0.1.73/255.255.255.255 - IP:11.0.1.74/255.255.255.255 - IP:11.0.1.75/255.255.255.255 - IP:11.0.1.76/255.255.255.255 - IP:11.0.1.77/255.255.255.255 - IP:11.0.1.78/255.255.255.255 - IP:11.0.1.79/255.255.255.255 - IP:11.0.1.80/255.255.255.255 - IP:11.0.1.81/255.255.255.255 - IP:11.0.1.82/255.255.255.255 - IP:11.0.1.83/255.255.255.255 - IP:11.0.1.84/255.255.255.255 - IP:11.0.1.85/255.255.255.255 - IP:11.0.1.86/255.255.255.255 - IP:11.0.1.87/255.255.255.255 - IP:11.0.1.88/255.255.255.255 - IP:11.0.1.89/255.255.255.255 - IP:11.0.1.90/255.255.255.255 - IP:11.0.1.91/255.255.255.255 - IP:11.0.1.92/255.255.255.255 - IP:11.0.1.93/255.255.255.255 - IP:11.0.1.94/255.255.255.255 - IP:11.0.1.95/255.255.255.255 - IP:11.0.1.96/255.255.255.255 - IP:11.0.1.97/255.255.255.255 - IP:11.0.1.98/255.255.255.255 - IP:11.0.1.99/255.255.255.255 - IP:11.0.1.100/255.255.255.255 - IP:11.0.1.101/255.255.255.255 - IP:11.0.1.102/255.255.255.255 - IP:11.0.1.103/255.255.255.255 - IP:11.0.1.104/255.255.255.255 - IP:11.0.1.105/255.255.255.255 - IP:11.0.1.106/255.255.255.255 - IP:11.0.1.107/255.255.255.255 - IP:11.0.1.108/255.255.255.255 - IP:11.0.1.109/255.255.255.255 - IP:11.0.1.110/255.255.255.255 - IP:11.0.1.111/255.255.255.255 - IP:11.0.1.112/255.255.255.255 - IP:11.0.1.113/255.255.255.255 - IP:11.0.1.114/255.255.255.255 - IP:11.0.1.115/255.255.255.255 - IP:11.0.1.116/255.255.255.255 - IP:11.0.1.117/255.255.255.255 - IP:11.0.1.118/255.255.255.255 - IP:11.0.1.119/255.255.255.255 - IP:11.0.1.120/255.255.255.255 - IP:11.0.1.121/255.255.255.255 - IP:11.0.1.122/255.255.255.255 - IP:11.0.1.123/255.255.255.255 - IP:11.0.1.124/255.255.255.255 - IP:11.0.1.125/255.255.255.255 - IP:11.0.1.126/255.255.255.255 - IP:11.0.1.127/255.255.255.255 - IP:11.0.1.128/255.255.255.255 - IP:11.0.1.129/255.255.255.255 - IP:11.0.1.130/255.255.255.255 - IP:11.0.1.131/255.255.255.255 - IP:11.0.1.132/255.255.255.255 - IP:11.0.1.133/255.255.255.255 - IP:11.0.1.134/255.255.255.255 - IP:11.0.1.135/255.255.255.255 - IP:11.0.1.136/255.255.255.255 - IP:11.0.1.137/255.255.255.255 - IP:11.0.1.138/255.255.255.255 - IP:11.0.1.139/255.255.255.255 - IP:11.0.1.140/255.255.255.255 - IP:11.0.1.141/255.255.255.255 - IP:11.0.1.142/255.255.255.255 - IP:11.0.1.143/255.255.255.255 - IP:11.0.1.144/255.255.255.255 - IP:11.0.1.145/255.255.255.255 - IP:11.0.1.146/255.255.255.255 - IP:11.0.1.147/255.255.255.255 - IP:11.0.1.148/255.255.255.255 - IP:11.0.1.149/255.255.255.255 - IP:11.0.1.150/255.255.255.255 - IP:11.0.1.151/255.255.255.255 - IP:11.0.1.152/255.255.255.255 - IP:11.0.1.153/255.255.255.255 - IP:11.0.1.154/255.255.255.255 - IP:11.0.1.155/255.255.255.255 - IP:11.0.1.156/255.255.255.255 - IP:11.0.1.157/255.255.255.255 - IP:11.0.1.158/255.255.255.255 - IP:11.0.1.159/255.255.255.255 - IP:11.0.1.160/255.255.255.255 - IP:11.0.1.161/255.255.255.255 - IP:11.0.1.162/255.255.255.255 - IP:11.0.1.163/255.255.255.255 - IP:11.0.1.164/255.255.255.255 - IP:11.0.1.165/255.255.255.255 - IP:11.0.1.166/255.255.255.255 - IP:11.0.1.167/255.255.255.255 - IP:11.0.1.168/255.255.255.255 - IP:11.0.1.169/255.255.255.255 - IP:11.0.1.170/255.255.255.255 - IP:11.0.1.171/255.255.255.255 - IP:11.0.1.172/255.255.255.255 - IP:11.0.1.173/255.255.255.255 - IP:11.0.1.174/255.255.255.255 - IP:11.0.1.175/255.255.255.255 - IP:11.0.1.176/255.255.255.255 - IP:11.0.1.177/255.255.255.255 - IP:11.0.1.178/255.255.255.255 - IP:11.0.1.179/255.255.255.255 - IP:11.0.1.180/255.255.255.255 - IP:11.0.1.181/255.255.255.255 - IP:11.0.1.182/255.255.255.255 - IP:11.0.1.183/255.255.255.255 - IP:11.0.1.184/255.255.255.255 - IP:11.0.1.185/255.255.255.255 - IP:11.0.1.186/255.255.255.255 - IP:11.0.1.187/255.255.255.255 - IP:11.0.1.188/255.255.255.255 - IP:11.0.1.189/255.255.255.255 - IP:11.0.1.190/255.255.255.255 - IP:11.0.1.191/255.255.255.255 - IP:11.0.1.192/255.255.255.255 - IP:11.0.1.193/255.255.255.255 - IP:11.0.1.194/255.255.255.255 - IP:11.0.1.195/255.255.255.255 - IP:11.0.1.196/255.255.255.255 - IP:11.0.1.197/255.255.255.255 - IP:11.0.1.198/255.255.255.255 - IP:11.0.1.199/255.255.255.255 - IP:11.0.1.200/255.255.255.255 - IP:11.0.1.201/255.255.255.255 - IP:11.0.1.202/255.255.255.255 - IP:11.0.1.203/255.255.255.255 - IP:11.0.1.204/255.255.255.255 - IP:11.0.1.205/255.255.255.255 - IP:11.0.1.206/255.255.255.255 - IP:11.0.1.207/255.255.255.255 - IP:11.0.1.208/255.255.255.255 - IP:11.0.1.209/255.255.255.255 - IP:11.0.1.210/255.255.255.255 - IP:11.0.1.211/255.255.255.255 - IP:11.0.1.212/255.255.255.255 - IP:11.0.1.213/255.255.255.255 - IP:11.0.1.214/255.255.255.255 - IP:11.0.1.215/255.255.255.255 - IP:11.0.1.216/255.255.255.255 - IP:11.0.1.217/255.255.255.255 - IP:11.0.1.218/255.255.255.255 - IP:11.0.1.219/255.255.255.255 - IP:11.0.1.220/255.255.255.255 - IP:11.0.1.221/255.255.255.255 - IP:11.0.1.222/255.255.255.255 - IP:11.0.1.223/255.255.255.255 - IP:11.0.1.224/255.255.255.255 - IP:11.0.1.225/255.255.255.255 - IP:11.0.1.226/255.255.255.255 - IP:11.0.1.227/255.255.255.255 - IP:11.0.1.228/255.255.255.255 - IP:11.0.1.229/255.255.255.255 - IP:11.0.1.230/255.255.255.255 - IP:11.0.1.231/255.255.255.255 - IP:11.0.1.232/255.255.255.255 - IP:11.0.1.233/255.255.255.255 - IP:11.0.1.234/255.255.255.255 - IP:11.0.1.235/255.255.255.255 - IP:11.0.1.236/255.255.255.255 - IP:11.0.1.237/255.255.255.255 - IP:11.0.1.238/255.255.255.255 - IP:11.0.1.239/255.255.255.255 - IP:11.0.1.240/255.255.255.255 - IP:11.0.1.241/255.255.255.255 - IP:11.0.1.242/255.255.255.255 - IP:11.0.1.243/255.255.255.255 - IP:11.0.1.244/255.255.255.255 - IP:11.0.1.245/255.255.255.255 - IP:11.0.1.246/255.255.255.255 - IP:11.0.1.247/255.255.255.255 - IP:11.0.1.248/255.255.255.255 - IP:11.0.1.249/255.255.255.255 - IP:11.0.1.250/255.255.255.255 - IP:11.0.1.251/255.255.255.255 - IP:11.0.1.252/255.255.255.255 - IP:11.0.1.253/255.255.255.255 - IP:11.0.1.254/255.255.255.255 - IP:11.0.1.255/255.255.255.255 - IP:11.0.2.0/255.255.255.255 - IP:11.0.2.1/255.255.255.255 - IP:11.0.2.2/255.255.255.255 - IP:11.0.2.3/255.255.255.255 - IP:11.0.2.4/255.255.255.255 - IP:11.0.2.5/255.255.255.255 - IP:11.0.2.6/255.255.255.255 - IP:11.0.2.7/255.255.255.255 - IP:11.0.2.8/255.255.255.255 - IP:11.0.2.9/255.255.255.255 - IP:11.0.2.10/255.255.255.255 - IP:11.0.2.11/255.255.255.255 - IP:11.0.2.12/255.255.255.255 - IP:11.0.2.13/255.255.255.255 - IP:11.0.2.14/255.255.255.255 - IP:11.0.2.15/255.255.255.255 - IP:11.0.2.16/255.255.255.255 - IP:11.0.2.17/255.255.255.255 - IP:11.0.2.18/255.255.255.255 - IP:11.0.2.19/255.255.255.255 - IP:11.0.2.20/255.255.255.255 - IP:11.0.2.21/255.255.255.255 - IP:11.0.2.22/255.255.255.255 - IP:11.0.2.23/255.255.255.255 - IP:11.0.2.24/255.255.255.255 - IP:11.0.2.25/255.255.255.255 - IP:11.0.2.26/255.255.255.255 - IP:11.0.2.27/255.255.255.255 - IP:11.0.2.28/255.255.255.255 - IP:11.0.2.29/255.255.255.255 - IP:11.0.2.30/255.255.255.255 - IP:11.0.2.31/255.255.255.255 - IP:11.0.2.32/255.255.255.255 - IP:11.0.2.33/255.255.255.255 - IP:11.0.2.34/255.255.255.255 - IP:11.0.2.35/255.255.255.255 - IP:11.0.2.36/255.255.255.255 - IP:11.0.2.37/255.255.255.255 - IP:11.0.2.38/255.255.255.255 - IP:11.0.2.39/255.255.255.255 - IP:11.0.2.40/255.255.255.255 - IP:11.0.2.41/255.255.255.255 - IP:11.0.2.42/255.255.255.255 - IP:11.0.2.43/255.255.255.255 - IP:11.0.2.44/255.255.255.255 - IP:11.0.2.45/255.255.255.255 - IP:11.0.2.46/255.255.255.255 - IP:11.0.2.47/255.255.255.255 - IP:11.0.2.48/255.255.255.255 - IP:11.0.2.49/255.255.255.255 - IP:11.0.2.50/255.255.255.255 - IP:11.0.2.51/255.255.255.255 - IP:11.0.2.52/255.255.255.255 - IP:11.0.2.53/255.255.255.255 - IP:11.0.2.54/255.255.255.255 - IP:11.0.2.55/255.255.255.255 - IP:11.0.2.56/255.255.255.255 - IP:11.0.2.57/255.255.255.255 - IP:11.0.2.58/255.255.255.255 - IP:11.0.2.59/255.255.255.255 - IP:11.0.2.60/255.255.255.255 - IP:11.0.2.61/255.255.255.255 - IP:11.0.2.62/255.255.255.255 - IP:11.0.2.63/255.255.255.255 - IP:11.0.2.64/255.255.255.255 - IP:11.0.2.65/255.255.255.255 - IP:11.0.2.66/255.255.255.255 - IP:11.0.2.67/255.255.255.255 - IP:11.0.2.68/255.255.255.255 - IP:11.0.2.69/255.255.255.255 - IP:11.0.2.70/255.255.255.255 - IP:11.0.2.71/255.255.255.255 - IP:11.0.2.72/255.255.255.255 - IP:11.0.2.73/255.255.255.255 - IP:11.0.2.74/255.255.255.255 - IP:11.0.2.75/255.255.255.255 - IP:11.0.2.76/255.255.255.255 - IP:11.0.2.77/255.255.255.255 - IP:11.0.2.78/255.255.255.255 - IP:11.0.2.79/255.255.255.255 - IP:11.0.2.80/255.255.255.255 - IP:11.0.2.81/255.255.255.255 - IP:11.0.2.82/255.255.255.255 - IP:11.0.2.83/255.255.255.255 - IP:11.0.2.84/255.255.255.255 - IP:11.0.2.85/255.255.255.255 - IP:11.0.2.86/255.255.255.255 - IP:11.0.2.87/255.255.255.255 - IP:11.0.2.88/255.255.255.255 - IP:11.0.2.89/255.255.255.255 - IP:11.0.2.90/255.255.255.255 - IP:11.0.2.91/255.255.255.255 - IP:11.0.2.92/255.255.255.255 - IP:11.0.2.93/255.255.255.255 - IP:11.0.2.94/255.255.255.255 - IP:11.0.2.95/255.255.255.255 - IP:11.0.2.96/255.255.255.255 - IP:11.0.2.97/255.255.255.255 - IP:11.0.2.98/255.255.255.255 - IP:11.0.2.99/255.255.255.255 - IP:11.0.2.100/255.255.255.255 - IP:11.0.2.101/255.255.255.255 - IP:11.0.2.102/255.255.255.255 - IP:11.0.2.103/255.255.255.255 - IP:11.0.2.104/255.255.255.255 - IP:11.0.2.105/255.255.255.255 - IP:11.0.2.106/255.255.255.255 - IP:11.0.2.107/255.255.255.255 - IP:11.0.2.108/255.255.255.255 - IP:11.0.2.109/255.255.255.255 - IP:11.0.2.110/255.255.255.255 - IP:11.0.2.111/255.255.255.255 - IP:11.0.2.112/255.255.255.255 - IP:11.0.2.113/255.255.255.255 - IP:11.0.2.114/255.255.255.255 - IP:11.0.2.115/255.255.255.255 - IP:11.0.2.116/255.255.255.255 - IP:11.0.2.117/255.255.255.255 - IP:11.0.2.118/255.255.255.255 - IP:11.0.2.119/255.255.255.255 - IP:11.0.2.120/255.255.255.255 - IP:11.0.2.121/255.255.255.255 - IP:11.0.2.122/255.255.255.255 - IP:11.0.2.123/255.255.255.255 - IP:11.0.2.124/255.255.255.255 - IP:11.0.2.125/255.255.255.255 - IP:11.0.2.126/255.255.255.255 - IP:11.0.2.127/255.255.255.255 - IP:11.0.2.128/255.255.255.255 - IP:11.0.2.129/255.255.255.255 - IP:11.0.2.130/255.255.255.255 - IP:11.0.2.131/255.255.255.255 - IP:11.0.2.132/255.255.255.255 - IP:11.0.2.133/255.255.255.255 - IP:11.0.2.134/255.255.255.255 - IP:11.0.2.135/255.255.255.255 - IP:11.0.2.136/255.255.255.255 - IP:11.0.2.137/255.255.255.255 - IP:11.0.2.138/255.255.255.255 - IP:11.0.2.139/255.255.255.255 - IP:11.0.2.140/255.255.255.255 - IP:11.0.2.141/255.255.255.255 - IP:11.0.2.142/255.255.255.255 - IP:11.0.2.143/255.255.255.255 - IP:11.0.2.144/255.255.255.255 - IP:11.0.2.145/255.255.255.255 - IP:11.0.2.146/255.255.255.255 - IP:11.0.2.147/255.255.255.255 - IP:11.0.2.148/255.255.255.255 - IP:11.0.2.149/255.255.255.255 - IP:11.0.2.150/255.255.255.255 - IP:11.0.2.151/255.255.255.255 - IP:11.0.2.152/255.255.255.255 - IP:11.0.2.153/255.255.255.255 - IP:11.0.2.154/255.255.255.255 - IP:11.0.2.155/255.255.255.255 - IP:11.0.2.156/255.255.255.255 - IP:11.0.2.157/255.255.255.255 - IP:11.0.2.158/255.255.255.255 - IP:11.0.2.159/255.255.255.255 - IP:11.0.2.160/255.255.255.255 - IP:11.0.2.161/255.255.255.255 - IP:11.0.2.162/255.255.255.255 - IP:11.0.2.163/255.255.255.255 - IP:11.0.2.164/255.255.255.255 - IP:11.0.2.165/255.255.255.255 - IP:11.0.2.166/255.255.255.255 - IP:11.0.2.167/255.255.255.255 - IP:11.0.2.168/255.255.255.255 - IP:11.0.2.169/255.255.255.255 - IP:11.0.2.170/255.255.255.255 - IP:11.0.2.171/255.255.255.255 - IP:11.0.2.172/255.255.255.255 - IP:11.0.2.173/255.255.255.255 - IP:11.0.2.174/255.255.255.255 - IP:11.0.2.175/255.255.255.255 - IP:11.0.2.176/255.255.255.255 - IP:11.0.2.177/255.255.255.255 - IP:11.0.2.178/255.255.255.255 - IP:11.0.2.179/255.255.255.255 - IP:11.0.2.180/255.255.255.255 - IP:11.0.2.181/255.255.255.255 - IP:11.0.2.182/255.255.255.255 - IP:11.0.2.183/255.255.255.255 - IP:11.0.2.184/255.255.255.255 - IP:11.0.2.185/255.255.255.255 - IP:11.0.2.186/255.255.255.255 - IP:11.0.2.187/255.255.255.255 - IP:11.0.2.188/255.255.255.255 - IP:11.0.2.189/255.255.255.255 - IP:11.0.2.190/255.255.255.255 - IP:11.0.2.191/255.255.255.255 - IP:11.0.2.192/255.255.255.255 - IP:11.0.2.193/255.255.255.255 - IP:11.0.2.194/255.255.255.255 - IP:11.0.2.195/255.255.255.255 - IP:11.0.2.196/255.255.255.255 - IP:11.0.2.197/255.255.255.255 - IP:11.0.2.198/255.255.255.255 - IP:11.0.2.199/255.255.255.255 - IP:11.0.2.200/255.255.255.255 - IP:11.0.2.201/255.255.255.255 - IP:11.0.2.202/255.255.255.255 - IP:11.0.2.203/255.255.255.255 - IP:11.0.2.204/255.255.255.255 - IP:11.0.2.205/255.255.255.255 - IP:11.0.2.206/255.255.255.255 - IP:11.0.2.207/255.255.255.255 - IP:11.0.2.208/255.255.255.255 - IP:11.0.2.209/255.255.255.255 - IP:11.0.2.210/255.255.255.255 - IP:11.0.2.211/255.255.255.255 - IP:11.0.2.212/255.255.255.255 - IP:11.0.2.213/255.255.255.255 - IP:11.0.2.214/255.255.255.255 - IP:11.0.2.215/255.255.255.255 - IP:11.0.2.216/255.255.255.255 - IP:11.0.2.217/255.255.255.255 - IP:11.0.2.218/255.255.255.255 - IP:11.0.2.219/255.255.255.255 - IP:11.0.2.220/255.255.255.255 - IP:11.0.2.221/255.255.255.255 - IP:11.0.2.222/255.255.255.255 - IP:11.0.2.223/255.255.255.255 - IP:11.0.2.224/255.255.255.255 - IP:11.0.2.225/255.255.255.255 - IP:11.0.2.226/255.255.255.255 - IP:11.0.2.227/255.255.255.255 - IP:11.0.2.228/255.255.255.255 - IP:11.0.2.229/255.255.255.255 - IP:11.0.2.230/255.255.255.255 - IP:11.0.2.231/255.255.255.255 - IP:11.0.2.232/255.255.255.255 - IP:11.0.2.233/255.255.255.255 - IP:11.0.2.234/255.255.255.255 - IP:11.0.2.235/255.255.255.255 - IP:11.0.2.236/255.255.255.255 - IP:11.0.2.237/255.255.255.255 - IP:11.0.2.238/255.255.255.255 - IP:11.0.2.239/255.255.255.255 - IP:11.0.2.240/255.255.255.255 - IP:11.0.2.241/255.255.255.255 - IP:11.0.2.242/255.255.255.255 - IP:11.0.2.243/255.255.255.255 - IP:11.0.2.244/255.255.255.255 - IP:11.0.2.245/255.255.255.255 - IP:11.0.2.246/255.255.255.255 - IP:11.0.2.247/255.255.255.255 - IP:11.0.2.248/255.255.255.255 - IP:11.0.2.249/255.255.255.255 - IP:11.0.2.250/255.255.255.255 - IP:11.0.2.251/255.255.255.255 - IP:11.0.2.252/255.255.255.255 - IP:11.0.2.253/255.255.255.255 - IP:11.0.2.254/255.255.255.255 - IP:11.0.2.255/255.255.255.255 - IP:11.0.3.0/255.255.255.255 - IP:11.0.3.1/255.255.255.255 - IP:11.0.3.2/255.255.255.255 - IP:11.0.3.3/255.255.255.255 - IP:11.0.3.4/255.255.255.255 - IP:11.0.3.5/255.255.255.255 - IP:11.0.3.6/255.255.255.255 - IP:11.0.3.7/255.255.255.255 - IP:11.0.3.8/255.255.255.255 - IP:11.0.3.9/255.255.255.255 - IP:11.0.3.10/255.255.255.255 - IP:11.0.3.11/255.255.255.255 - IP:11.0.3.12/255.255.255.255 - IP:11.0.3.13/255.255.255.255 - IP:11.0.3.14/255.255.255.255 - IP:11.0.3.15/255.255.255.255 - IP:11.0.3.16/255.255.255.255 - IP:11.0.3.17/255.255.255.255 - IP:11.0.3.18/255.255.255.255 - IP:11.0.3.19/255.255.255.255 - IP:11.0.3.20/255.255.255.255 - IP:11.0.3.21/255.255.255.255 - IP:11.0.3.22/255.255.255.255 - IP:11.0.3.23/255.255.255.255 - IP:11.0.3.24/255.255.255.255 - IP:11.0.3.25/255.255.255.255 - IP:11.0.3.26/255.255.255.255 - IP:11.0.3.27/255.255.255.255 - IP:11.0.3.28/255.255.255.255 - IP:11.0.3.29/255.255.255.255 - IP:11.0.3.30/255.255.255.255 - IP:11.0.3.31/255.255.255.255 - IP:11.0.3.32/255.255.255.255 - IP:11.0.3.33/255.255.255.255 - IP:11.0.3.34/255.255.255.255 - IP:11.0.3.35/255.255.255.255 - IP:11.0.3.36/255.255.255.255 - IP:11.0.3.37/255.255.255.255 - IP:11.0.3.38/255.255.255.255 - IP:11.0.3.39/255.255.255.255 - IP:11.0.3.40/255.255.255.255 - IP:11.0.3.41/255.255.255.255 - IP:11.0.3.42/255.255.255.255 - IP:11.0.3.43/255.255.255.255 - IP:11.0.3.44/255.255.255.255 - IP:11.0.3.45/255.255.255.255 - IP:11.0.3.46/255.255.255.255 - IP:11.0.3.47/255.255.255.255 - IP:11.0.3.48/255.255.255.255 - IP:11.0.3.49/255.255.255.255 - IP:11.0.3.50/255.255.255.255 - IP:11.0.3.51/255.255.255.255 - IP:11.0.3.52/255.255.255.255 - IP:11.0.3.53/255.255.255.255 - IP:11.0.3.54/255.255.255.255 - IP:11.0.3.55/255.255.255.255 - IP:11.0.3.56/255.255.255.255 - IP:11.0.3.57/255.255.255.255 - IP:11.0.3.58/255.255.255.255 - IP:11.0.3.59/255.255.255.255 - IP:11.0.3.60/255.255.255.255 - IP:11.0.3.61/255.255.255.255 - IP:11.0.3.62/255.255.255.255 - IP:11.0.3.63/255.255.255.255 - IP:11.0.3.64/255.255.255.255 - IP:11.0.3.65/255.255.255.255 - IP:11.0.3.66/255.255.255.255 - IP:11.0.3.67/255.255.255.255 - IP:11.0.3.68/255.255.255.255 - IP:11.0.3.69/255.255.255.255 - IP:11.0.3.70/255.255.255.255 - IP:11.0.3.71/255.255.255.255 - IP:11.0.3.72/255.255.255.255 - IP:11.0.3.73/255.255.255.255 - IP:11.0.3.74/255.255.255.255 - IP:11.0.3.75/255.255.255.255 - IP:11.0.3.76/255.255.255.255 - IP:11.0.3.77/255.255.255.255 - IP:11.0.3.78/255.255.255.255 - IP:11.0.3.79/255.255.255.255 - IP:11.0.3.80/255.255.255.255 - IP:11.0.3.81/255.255.255.255 - IP:11.0.3.82/255.255.255.255 - IP:11.0.3.83/255.255.255.255 - IP:11.0.3.84/255.255.255.255 - IP:11.0.3.85/255.255.255.255 - IP:11.0.3.86/255.255.255.255 - IP:11.0.3.87/255.255.255.255 - IP:11.0.3.88/255.255.255.255 - IP:11.0.3.89/255.255.255.255 - IP:11.0.3.90/255.255.255.255 - IP:11.0.3.91/255.255.255.255 - IP:11.0.3.92/255.255.255.255 - IP:11.0.3.93/255.255.255.255 - IP:11.0.3.94/255.255.255.255 - IP:11.0.3.95/255.255.255.255 - IP:11.0.3.96/255.255.255.255 - IP:11.0.3.97/255.255.255.255 - IP:11.0.3.98/255.255.255.255 - IP:11.0.3.99/255.255.255.255 - IP:11.0.3.100/255.255.255.255 - IP:11.0.3.101/255.255.255.255 - IP:11.0.3.102/255.255.255.255 - IP:11.0.3.103/255.255.255.255 - IP:11.0.3.104/255.255.255.255 - IP:11.0.3.105/255.255.255.255 - IP:11.0.3.106/255.255.255.255 - IP:11.0.3.107/255.255.255.255 - IP:11.0.3.108/255.255.255.255 - IP:11.0.3.109/255.255.255.255 - IP:11.0.3.110/255.255.255.255 - IP:11.0.3.111/255.255.255.255 - IP:11.0.3.112/255.255.255.255 - IP:11.0.3.113/255.255.255.255 - IP:11.0.3.114/255.255.255.255 - IP:11.0.3.115/255.255.255.255 - IP:11.0.3.116/255.255.255.255 - IP:11.0.3.117/255.255.255.255 - IP:11.0.3.118/255.255.255.255 - IP:11.0.3.119/255.255.255.255 - IP:11.0.3.120/255.255.255.255 - IP:11.0.3.121/255.255.255.255 - IP:11.0.3.122/255.255.255.255 - IP:11.0.3.123/255.255.255.255 - IP:11.0.3.124/255.255.255.255 - IP:11.0.3.125/255.255.255.255 - IP:11.0.3.126/255.255.255.255 - IP:11.0.3.127/255.255.255.255 - IP:11.0.3.128/255.255.255.255 - IP:11.0.3.129/255.255.255.255 - IP:11.0.3.130/255.255.255.255 - IP:11.0.3.131/255.255.255.255 - IP:11.0.3.132/255.255.255.255 - IP:11.0.3.133/255.255.255.255 - IP:11.0.3.134/255.255.255.255 - IP:11.0.3.135/255.255.255.255 - IP:11.0.3.136/255.255.255.255 - IP:11.0.3.137/255.255.255.255 - IP:11.0.3.138/255.255.255.255 - IP:11.0.3.139/255.255.255.255 - IP:11.0.3.140/255.255.255.255 - IP:11.0.3.141/255.255.255.255 - IP:11.0.3.142/255.255.255.255 - IP:11.0.3.143/255.255.255.255 - IP:11.0.3.144/255.255.255.255 - IP:11.0.3.145/255.255.255.255 - IP:11.0.3.146/255.255.255.255 - IP:11.0.3.147/255.255.255.255 - IP:11.0.3.148/255.255.255.255 - IP:11.0.3.149/255.255.255.255 - IP:11.0.3.150/255.255.255.255 - IP:11.0.3.151/255.255.255.255 - IP:11.0.3.152/255.255.255.255 - IP:11.0.3.153/255.255.255.255 - IP:11.0.3.154/255.255.255.255 - IP:11.0.3.155/255.255.255.255 - IP:11.0.3.156/255.255.255.255 - IP:11.0.3.157/255.255.255.255 - IP:11.0.3.158/255.255.255.255 - IP:11.0.3.159/255.255.255.255 - IP:11.0.3.160/255.255.255.255 - IP:11.0.3.161/255.255.255.255 - IP:11.0.3.162/255.255.255.255 - IP:11.0.3.163/255.255.255.255 - IP:11.0.3.164/255.255.255.255 - IP:11.0.3.165/255.255.255.255 - IP:11.0.3.166/255.255.255.255 - IP:11.0.3.167/255.255.255.255 - IP:11.0.3.168/255.255.255.255 - IP:11.0.3.169/255.255.255.255 - IP:11.0.3.170/255.255.255.255 - IP:11.0.3.171/255.255.255.255 - IP:11.0.3.172/255.255.255.255 - IP:11.0.3.173/255.255.255.255 - IP:11.0.3.174/255.255.255.255 - IP:11.0.3.175/255.255.255.255 - IP:11.0.3.176/255.255.255.255 - IP:11.0.3.177/255.255.255.255 - IP:11.0.3.178/255.255.255.255 - IP:11.0.3.179/255.255.255.255 - IP:11.0.3.180/255.255.255.255 - IP:11.0.3.181/255.255.255.255 - IP:11.0.3.182/255.255.255.255 - IP:11.0.3.183/255.255.255.255 - IP:11.0.3.184/255.255.255.255 - IP:11.0.3.185/255.255.255.255 - IP:11.0.3.186/255.255.255.255 - IP:11.0.3.187/255.255.255.255 - IP:11.0.3.188/255.255.255.255 - IP:11.0.3.189/255.255.255.255 - IP:11.0.3.190/255.255.255.255 - IP:11.0.3.191/255.255.255.255 - IP:11.0.3.192/255.255.255.255 - IP:11.0.3.193/255.255.255.255 - IP:11.0.3.194/255.255.255.255 - IP:11.0.3.195/255.255.255.255 - IP:11.0.3.196/255.255.255.255 - IP:11.0.3.197/255.255.255.255 - IP:11.0.3.198/255.255.255.255 - IP:11.0.3.199/255.255.255.255 - IP:11.0.3.200/255.255.255.255 - IP:11.0.3.201/255.255.255.255 - IP:11.0.3.202/255.255.255.255 - IP:11.0.3.203/255.255.255.255 - IP:11.0.3.204/255.255.255.255 - IP:11.0.3.205/255.255.255.255 - IP:11.0.3.206/255.255.255.255 - IP:11.0.3.207/255.255.255.255 - IP:11.0.3.208/255.255.255.255 - IP:11.0.3.209/255.255.255.255 - IP:11.0.3.210/255.255.255.255 - IP:11.0.3.211/255.255.255.255 - IP:11.0.3.212/255.255.255.255 - IP:11.0.3.213/255.255.255.255 - IP:11.0.3.214/255.255.255.255 - IP:11.0.3.215/255.255.255.255 - IP:11.0.3.216/255.255.255.255 - IP:11.0.3.217/255.255.255.255 - IP:11.0.3.218/255.255.255.255 - IP:11.0.3.219/255.255.255.255 - IP:11.0.3.220/255.255.255.255 - IP:11.0.3.221/255.255.255.255 - IP:11.0.3.222/255.255.255.255 - IP:11.0.3.223/255.255.255.255 - IP:11.0.3.224/255.255.255.255 - IP:11.0.3.225/255.255.255.255 - IP:11.0.3.226/255.255.255.255 - IP:11.0.3.227/255.255.255.255 - IP:11.0.3.228/255.255.255.255 - IP:11.0.3.229/255.255.255.255 - IP:11.0.3.230/255.255.255.255 - IP:11.0.3.231/255.255.255.255 - IP:11.0.3.232/255.255.255.255 - IP:11.0.3.233/255.255.255.255 - IP:11.0.3.234/255.255.255.255 - IP:11.0.3.235/255.255.255.255 - IP:11.0.3.236/255.255.255.255 - IP:11.0.3.237/255.255.255.255 - IP:11.0.3.238/255.255.255.255 - IP:11.0.3.239/255.255.255.255 - IP:11.0.3.240/255.255.255.255 - IP:11.0.3.241/255.255.255.255 - IP:11.0.3.242/255.255.255.255 - IP:11.0.3.243/255.255.255.255 - IP:11.0.3.244/255.255.255.255 - IP:11.0.3.245/255.255.255.255 - IP:11.0.3.246/255.255.255.255 - IP:11.0.3.247/255.255.255.255 - IP:11.0.3.248/255.255.255.255 - IP:11.0.3.249/255.255.255.255 - IP:11.0.3.250/255.255.255.255 - IP:11.0.3.251/255.255.255.255 - IP:11.0.3.252/255.255.255.255 - IP:11.0.3.253/255.255.255.255 - IP:11.0.3.254/255.255.255.255 - IP:11.0.3.255/255.255.255.255 - IP:11.0.4.0/255.255.255.255 - - Signature Algorithm: sha256WithRSAEncryption - 7a:02:f3:cd:04:f5:98:dc:c0:7a:aa:25:b5:a1:72:e5:09:99: - 3f:b8:54:a2:b7:28:72:61:af:46:c0:09:cc:63:fd:d4:1b:a6: - 36:c5:e2:62:bb:aa:71:f7:92:d2:7a:07:1b:35:ec:c7:2f:ad: - 44:86:6b:43:df:7a:49:05:ac:33:80:81:77:15:76:fb:be:03: - df:89:76:72:1e:c6:7a:ee:01:84:35:4f:a9:7f:67:5a:a5:e0: - 01:df:83:ac:02:ff:9f:77:d8:57:fc:07:ce:87:d1:24:e8:c0: - ac:dd:9b:46:3a:70:86:f9:94:02:c5:63:75:f6:70:10:55:99: - 14:11:57:22:65:30:56:54:2b:95:db:36:02:72:b0:95:87:98: - 87:42:40:44:ff:4a:16:9e:f8:14:c4:b4:d5:ea:a8:06:b4:7b: - fb:eb:0d:45:35:db:8b:1a:3d:2c:df:39:d4:cd:9e:54:e8:e8: - 4f:37:1c:42:25:45:52:e6:c4:42:e7:85:f5:c7:3d:25:db:7f: - a0:29:4d:35:26:f4:d9:c1:4b:64:08:a7:66:fa:8f:4c:d3:94: - bf:8e:60:f3:53:bc:e9:83:c4:96:a1:97:66:27:df:55:90:1f: - 01:8e:6f:90:89:57:18:da:81:26:f1:f4:ad:74:1f:3b:2a:63: - 53:bf:2a:3e ------BEGIN CERTIFICATE----- -MIIzozCCMougAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vkwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCMO0wgjDpMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgjAdBgNVHR4EgjAUMIIwEKGCMAwwCocICwAAAP////8wCocICwAAAf////8w -CocICwAAAv////8wCocICwAAA/////8wCocICwAABP////8wCocICwAABf////8w -CocICwAABv////8wCocICwAAB/////8wCocICwAACP////8wCocICwAACf////8w -CocICwAACv////8wCocICwAAC/////8wCocICwAADP////8wCocICwAADf////8w -CocICwAADv////8wCocICwAAD/////8wCocICwAAEP////8wCocICwAAEf////8w -CocICwAAEv////8wCocICwAAE/////8wCocICwAAFP////8wCocICwAAFf////8w -CocICwAAFv////8wCocICwAAF/////8wCocICwAAGP////8wCocICwAAGf////8w -CocICwAAGv////8wCocICwAAG/////8wCocICwAAHP////8wCocICwAAHf////8w -CocICwAAHv////8wCocICwAAH/////8wCocICwAAIP////8wCocICwAAIf////8w -CocICwAAIv////8wCocICwAAI/////8wCocICwAAJP////8wCocICwAAJf////8w -CocICwAAJv////8wCocICwAAJ/////8wCocICwAAKP////8wCocICwAAKf////8w -CocICwAAKv////8wCocICwAAK/////8wCocICwAALP////8wCocICwAALf////8w -CocICwAALv////8wCocICwAAL/////8wCocICwAAMP////8wCocICwAAMf////8w -CocICwAAMv////8wCocICwAAM/////8wCocICwAANP////8wCocICwAANf////8w -CocICwAANv////8wCocICwAAN/////8wCocICwAAOP////8wCocICwAAOf////8w -CocICwAAOv////8wCocICwAAO/////8wCocICwAAPP////8wCocICwAAPf////8w -CocICwAAPv////8wCocICwAAP/////8wCocICwAAQP////8wCocICwAAQf////8w -CocICwAAQv////8wCocICwAAQ/////8wCocICwAARP////8wCocICwAARf////8w -CocICwAARv////8wCocICwAAR/////8wCocICwAASP////8wCocICwAASf////8w -CocICwAASv////8wCocICwAAS/////8wCocICwAATP////8wCocICwAATf////8w -CocICwAATv////8wCocICwAAT/////8wCocICwAAUP////8wCocICwAAUf////8w -CocICwAAUv////8wCocICwAAU/////8wCocICwAAVP////8wCocICwAAVf////8w -CocICwAAVv////8wCocICwAAV/////8wCocICwAAWP////8wCocICwAAWf////8w -CocICwAAWv////8wCocICwAAW/////8wCocICwAAXP////8wCocICwAAXf////8w -CocICwAAXv////8wCocICwAAX/////8wCocICwAAYP////8wCocICwAAYf////8w -CocICwAAYv////8wCocICwAAY/////8wCocICwAAZP////8wCocICwAAZf////8w -CocICwAAZv////8wCocICwAAZ/////8wCocICwAAaP////8wCocICwAAaf////8w -CocICwAAav////8wCocICwAAa/////8wCocICwAAbP////8wCocICwAAbf////8w -CocICwAAbv////8wCocICwAAb/////8wCocICwAAcP////8wCocICwAAcf////8w -CocICwAAcv////8wCocICwAAc/////8wCocICwAAdP////8wCocICwAAdf////8w -CocICwAAdv////8wCocICwAAd/////8wCocICwAAeP////8wCocICwAAef////8w -CocICwAAev////8wCocICwAAe/////8wCocICwAAfP////8wCocICwAAff////8w -CocICwAAfv////8wCocICwAAf/////8wCocICwAAgP////8wCocICwAAgf////8w -CocICwAAgv////8wCocICwAAg/////8wCocICwAAhP////8wCocICwAAhf////8w -CocICwAAhv////8wCocICwAAh/////8wCocICwAAiP////8wCocICwAAif////8w -CocICwAAiv////8wCocICwAAi/////8wCocICwAAjP////8wCocICwAAjf////8w -CocICwAAjv////8wCocICwAAj/////8wCocICwAAkP////8wCocICwAAkf////8w -CocICwAAkv////8wCocICwAAk/////8wCocICwAAlP////8wCocICwAAlf////8w -CocICwAAlv////8wCocICwAAl/////8wCocICwAAmP////8wCocICwAAmf////8w -CocICwAAmv////8wCocICwAAm/////8wCocICwAAnP////8wCocICwAAnf////8w -CocICwAAnv////8wCocICwAAn/////8wCocICwAAoP////8wCocICwAAof////8w -CocICwAAov////8wCocICwAAo/////8wCocICwAApP////8wCocICwAApf////8w -CocICwAApv////8wCocICwAAp/////8wCocICwAAqP////8wCocICwAAqf////8w -CocICwAAqv////8wCocICwAAq/////8wCocICwAArP////8wCocICwAArf////8w -CocICwAArv////8wCocICwAAr/////8wCocICwAAsP////8wCocICwAAsf////8w -CocICwAAsv////8wCocICwAAs/////8wCocICwAAtP////8wCocICwAAtf////8w -CocICwAAtv////8wCocICwAAt/////8wCocICwAAuP////8wCocICwAAuf////8w -CocICwAAuv////8wCocICwAAu/////8wCocICwAAvP////8wCocICwAAvf////8w -CocICwAAvv////8wCocICwAAv/////8wCocICwAAwP////8wCocICwAAwf////8w -CocICwAAwv////8wCocICwAAw/////8wCocICwAAxP////8wCocICwAAxf////8w -CocICwAAxv////8wCocICwAAx/////8wCocICwAAyP////8wCocICwAAyf////8w -CocICwAAyv////8wCocICwAAy/////8wCocICwAAzP////8wCocICwAAzf////8w -CocICwAAzv////8wCocICwAAz/////8wCocICwAA0P////8wCocICwAA0f////8w -CocICwAA0v////8wCocICwAA0/////8wCocICwAA1P////8wCocICwAA1f////8w -CocICwAA1v////8wCocICwAA1/////8wCocICwAA2P////8wCocICwAA2f////8w -CocICwAA2v////8wCocICwAA2/////8wCocICwAA3P////8wCocICwAA3f////8w -CocICwAA3v////8wCocICwAA3/////8wCocICwAA4P////8wCocICwAA4f////8w -CocICwAA4v////8wCocICwAA4/////8wCocICwAA5P////8wCocICwAA5f////8w -CocICwAA5v////8wCocICwAA5/////8wCocICwAA6P////8wCocICwAA6f////8w -CocICwAA6v////8wCocICwAA6/////8wCocICwAA7P////8wCocICwAA7f////8w -CocICwAA7v////8wCocICwAA7/////8wCocICwAA8P////8wCocICwAA8f////8w -CocICwAA8v////8wCocICwAA8/////8wCocICwAA9P////8wCocICwAA9f////8w -CocICwAA9v////8wCocICwAA9/////8wCocICwAA+P////8wCocICwAA+f////8w -CocICwAA+v////8wCocICwAA+/////8wCocICwAA/P////8wCocICwAA/f////8w -CocICwAA/v////8wCocICwAA//////8wCocICwABAP////8wCocICwABAf////8w -CocICwABAv////8wCocICwABA/////8wCocICwABBP////8wCocICwABBf////8w -CocICwABBv////8wCocICwABB/////8wCocICwABCP////8wCocICwABCf////8w -CocICwABCv////8wCocICwABC/////8wCocICwABDP////8wCocICwABDf////8w -CocICwABDv////8wCocICwABD/////8wCocICwABEP////8wCocICwABEf////8w -CocICwABEv////8wCocICwABE/////8wCocICwABFP////8wCocICwABFf////8w -CocICwABFv////8wCocICwABF/////8wCocICwABGP////8wCocICwABGf////8w -CocICwABGv////8wCocICwABG/////8wCocICwABHP////8wCocICwABHf////8w -CocICwABHv////8wCocICwABH/////8wCocICwABIP////8wCocICwABIf////8w -CocICwABIv////8wCocICwABI/////8wCocICwABJP////8wCocICwABJf////8w -CocICwABJv////8wCocICwABJ/////8wCocICwABKP////8wCocICwABKf////8w -CocICwABKv////8wCocICwABK/////8wCocICwABLP////8wCocICwABLf////8w -CocICwABLv////8wCocICwABL/////8wCocICwABMP////8wCocICwABMf////8w -CocICwABMv////8wCocICwABM/////8wCocICwABNP////8wCocICwABNf////8w -CocICwABNv////8wCocICwABN/////8wCocICwABOP////8wCocICwABOf////8w -CocICwABOv////8wCocICwABO/////8wCocICwABPP////8wCocICwABPf////8w -CocICwABPv////8wCocICwABP/////8wCocICwABQP////8wCocICwABQf////8w -CocICwABQv////8wCocICwABQ/////8wCocICwABRP////8wCocICwABRf////8w -CocICwABRv////8wCocICwABR/////8wCocICwABSP////8wCocICwABSf////8w -CocICwABSv////8wCocICwABS/////8wCocICwABTP////8wCocICwABTf////8w -CocICwABTv////8wCocICwABT/////8wCocICwABUP////8wCocICwABUf////8w -CocICwABUv////8wCocICwABU/////8wCocICwABVP////8wCocICwABVf////8w -CocICwABVv////8wCocICwABV/////8wCocICwABWP////8wCocICwABWf////8w -CocICwABWv////8wCocICwABW/////8wCocICwABXP////8wCocICwABXf////8w -CocICwABXv////8wCocICwABX/////8wCocICwABYP////8wCocICwABYf////8w -CocICwABYv////8wCocICwABY/////8wCocICwABZP////8wCocICwABZf////8w -CocICwABZv////8wCocICwABZ/////8wCocICwABaP////8wCocICwABaf////8w -CocICwABav////8wCocICwABa/////8wCocICwABbP////8wCocICwABbf////8w -CocICwABbv////8wCocICwABb/////8wCocICwABcP////8wCocICwABcf////8w -CocICwABcv////8wCocICwABc/////8wCocICwABdP////8wCocICwABdf////8w -CocICwABdv////8wCocICwABd/////8wCocICwABeP////8wCocICwABef////8w -CocICwABev////8wCocICwABe/////8wCocICwABfP////8wCocICwABff////8w -CocICwABfv////8wCocICwABf/////8wCocICwABgP////8wCocICwABgf////8w -CocICwABgv////8wCocICwABg/////8wCocICwABhP////8wCocICwABhf////8w -CocICwABhv////8wCocICwABh/////8wCocICwABiP////8wCocICwABif////8w -CocICwABiv////8wCocICwABi/////8wCocICwABjP////8wCocICwABjf////8w -CocICwABjv////8wCocICwABj/////8wCocICwABkP////8wCocICwABkf////8w -CocICwABkv////8wCocICwABk/////8wCocICwABlP////8wCocICwABlf////8w -CocICwABlv////8wCocICwABl/////8wCocICwABmP////8wCocICwABmf////8w -CocICwABmv////8wCocICwABm/////8wCocICwABnP////8wCocICwABnf////8w -CocICwABnv////8wCocICwABn/////8wCocICwABoP////8wCocICwABof////8w -CocICwABov////8wCocICwABo/////8wCocICwABpP////8wCocICwABpf////8w -CocICwABpv////8wCocICwABp/////8wCocICwABqP////8wCocICwABqf////8w -CocICwABqv////8wCocICwABq/////8wCocICwABrP////8wCocICwABrf////8w -CocICwABrv////8wCocICwABr/////8wCocICwABsP////8wCocICwABsf////8w -CocICwABsv////8wCocICwABs/////8wCocICwABtP////8wCocICwABtf////8w -CocICwABtv////8wCocICwABt/////8wCocICwABuP////8wCocICwABuf////8w -CocICwABuv////8wCocICwABu/////8wCocICwABvP////8wCocICwABvf////8w -CocICwABvv////8wCocICwABv/////8wCocICwABwP////8wCocICwABwf////8w -CocICwABwv////8wCocICwABw/////8wCocICwABxP////8wCocICwABxf////8w -CocICwABxv////8wCocICwABx/////8wCocICwAByP////8wCocICwAByf////8w -CocICwAByv////8wCocICwABy/////8wCocICwABzP////8wCocICwABzf////8w -CocICwABzv////8wCocICwABz/////8wCocICwAB0P////8wCocICwAB0f////8w -CocICwAB0v////8wCocICwAB0/////8wCocICwAB1P////8wCocICwAB1f////8w -CocICwAB1v////8wCocICwAB1/////8wCocICwAB2P////8wCocICwAB2f////8w -CocICwAB2v////8wCocICwAB2/////8wCocICwAB3P////8wCocICwAB3f////8w -CocICwAB3v////8wCocICwAB3/////8wCocICwAB4P////8wCocICwAB4f////8w -CocICwAB4v////8wCocICwAB4/////8wCocICwAB5P////8wCocICwAB5f////8w -CocICwAB5v////8wCocICwAB5/////8wCocICwAB6P////8wCocICwAB6f////8w -CocICwAB6v////8wCocICwAB6/////8wCocICwAB7P////8wCocICwAB7f////8w -CocICwAB7v////8wCocICwAB7/////8wCocICwAB8P////8wCocICwAB8f////8w -CocICwAB8v////8wCocICwAB8/////8wCocICwAB9P////8wCocICwAB9f////8w -CocICwAB9v////8wCocICwAB9/////8wCocICwAB+P////8wCocICwAB+f////8w -CocICwAB+v////8wCocICwAB+/////8wCocICwAB/P////8wCocICwAB/f////8w -CocICwAB/v////8wCocICwAB//////8wCocICwACAP////8wCocICwACAf////8w -CocICwACAv////8wCocICwACA/////8wCocICwACBP////8wCocICwACBf////8w -CocICwACBv////8wCocICwACB/////8wCocICwACCP////8wCocICwACCf////8w -CocICwACCv////8wCocICwACC/////8wCocICwACDP////8wCocICwACDf////8w -CocICwACDv////8wCocICwACD/////8wCocICwACEP////8wCocICwACEf////8w -CocICwACEv////8wCocICwACE/////8wCocICwACFP////8wCocICwACFf////8w -CocICwACFv////8wCocICwACF/////8wCocICwACGP////8wCocICwACGf////8w -CocICwACGv////8wCocICwACG/////8wCocICwACHP////8wCocICwACHf////8w -CocICwACHv////8wCocICwACH/////8wCocICwACIP////8wCocICwACIf////8w -CocICwACIv////8wCocICwACI/////8wCocICwACJP////8wCocICwACJf////8w -CocICwACJv////8wCocICwACJ/////8wCocICwACKP////8wCocICwACKf////8w -CocICwACKv////8wCocICwACK/////8wCocICwACLP////8wCocICwACLf////8w -CocICwACLv////8wCocICwACL/////8wCocICwACMP////8wCocICwACMf////8w -CocICwACMv////8wCocICwACM/////8wCocICwACNP////8wCocICwACNf////8w -CocICwACNv////8wCocICwACN/////8wCocICwACOP////8wCocICwACOf////8w -CocICwACOv////8wCocICwACO/////8wCocICwACPP////8wCocICwACPf////8w -CocICwACPv////8wCocICwACP/////8wCocICwACQP////8wCocICwACQf////8w -CocICwACQv////8wCocICwACQ/////8wCocICwACRP////8wCocICwACRf////8w -CocICwACRv////8wCocICwACR/////8wCocICwACSP////8wCocICwACSf////8w -CocICwACSv////8wCocICwACS/////8wCocICwACTP////8wCocICwACTf////8w -CocICwACTv////8wCocICwACT/////8wCocICwACUP////8wCocICwACUf////8w -CocICwACUv////8wCocICwACU/////8wCocICwACVP////8wCocICwACVf////8w -CocICwACVv////8wCocICwACV/////8wCocICwACWP////8wCocICwACWf////8w -CocICwACWv////8wCocICwACW/////8wCocICwACXP////8wCocICwACXf////8w -CocICwACXv////8wCocICwACX/////8wCocICwACYP////8wCocICwACYf////8w -CocICwACYv////8wCocICwACY/////8wCocICwACZP////8wCocICwACZf////8w -CocICwACZv////8wCocICwACZ/////8wCocICwACaP////8wCocICwACaf////8w -CocICwACav////8wCocICwACa/////8wCocICwACbP////8wCocICwACbf////8w -CocICwACbv////8wCocICwACb/////8wCocICwACcP////8wCocICwACcf////8w -CocICwACcv////8wCocICwACc/////8wCocICwACdP////8wCocICwACdf////8w -CocICwACdv////8wCocICwACd/////8wCocICwACeP////8wCocICwACef////8w -CocICwACev////8wCocICwACe/////8wCocICwACfP////8wCocICwACff////8w -CocICwACfv////8wCocICwACf/////8wCocICwACgP////8wCocICwACgf////8w -CocICwACgv////8wCocICwACg/////8wCocICwAChP////8wCocICwAChf////8w -CocICwAChv////8wCocICwACh/////8wCocICwACiP////8wCocICwACif////8w -CocICwACiv////8wCocICwACi/////8wCocICwACjP////8wCocICwACjf////8w -CocICwACjv////8wCocICwACj/////8wCocICwACkP////8wCocICwACkf////8w -CocICwACkv////8wCocICwACk/////8wCocICwAClP////8wCocICwAClf////8w -CocICwAClv////8wCocICwACl/////8wCocICwACmP////8wCocICwACmf////8w -CocICwACmv////8wCocICwACm/////8wCocICwACnP////8wCocICwACnf////8w -CocICwACnv////8wCocICwACn/////8wCocICwACoP////8wCocICwACof////8w -CocICwACov////8wCocICwACo/////8wCocICwACpP////8wCocICwACpf////8w -CocICwACpv////8wCocICwACp/////8wCocICwACqP////8wCocICwACqf////8w -CocICwACqv////8wCocICwACq/////8wCocICwACrP////8wCocICwACrf////8w -CocICwACrv////8wCocICwACr/////8wCocICwACsP////8wCocICwACsf////8w -CocICwACsv////8wCocICwACs/////8wCocICwACtP////8wCocICwACtf////8w -CocICwACtv////8wCocICwACt/////8wCocICwACuP////8wCocICwACuf////8w -CocICwACuv////8wCocICwACu/////8wCocICwACvP////8wCocICwACvf////8w -CocICwACvv////8wCocICwACv/////8wCocICwACwP////8wCocICwACwf////8w -CocICwACwv////8wCocICwACw/////8wCocICwACxP////8wCocICwACxf////8w -CocICwACxv////8wCocICwACx/////8wCocICwACyP////8wCocICwACyf////8w -CocICwACyv////8wCocICwACy/////8wCocICwACzP////8wCocICwACzf////8w -CocICwACzv////8wCocICwACz/////8wCocICwAC0P////8wCocICwAC0f////8w -CocICwAC0v////8wCocICwAC0/////8wCocICwAC1P////8wCocICwAC1f////8w -CocICwAC1v////8wCocICwAC1/////8wCocICwAC2P////8wCocICwAC2f////8w -CocICwAC2v////8wCocICwAC2/////8wCocICwAC3P////8wCocICwAC3f////8w -CocICwAC3v////8wCocICwAC3/////8wCocICwAC4P////8wCocICwAC4f////8w -CocICwAC4v////8wCocICwAC4/////8wCocICwAC5P////8wCocICwAC5f////8w -CocICwAC5v////8wCocICwAC5/////8wCocICwAC6P////8wCocICwAC6f////8w -CocICwAC6v////8wCocICwAC6/////8wCocICwAC7P////8wCocICwAC7f////8w -CocICwAC7v////8wCocICwAC7/////8wCocICwAC8P////8wCocICwAC8f////8w -CocICwAC8v////8wCocICwAC8/////8wCocICwAC9P////8wCocICwAC9f////8w -CocICwAC9v////8wCocICwAC9/////8wCocICwAC+P////8wCocICwAC+f////8w -CocICwAC+v////8wCocICwAC+/////8wCocICwAC/P////8wCocICwAC/f////8w -CocICwAC/v////8wCocICwAC//////8wCocICwADAP////8wCocICwADAf////8w -CocICwADAv////8wCocICwADA/////8wCocICwADBP////8wCocICwADBf////8w -CocICwADBv////8wCocICwADB/////8wCocICwADCP////8wCocICwADCf////8w -CocICwADCv////8wCocICwADC/////8wCocICwADDP////8wCocICwADDf////8w -CocICwADDv////8wCocICwADD/////8wCocICwADEP////8wCocICwADEf////8w -CocICwADEv////8wCocICwADE/////8wCocICwADFP////8wCocICwADFf////8w -CocICwADFv////8wCocICwADF/////8wCocICwADGP////8wCocICwADGf////8w -CocICwADGv////8wCocICwADG/////8wCocICwADHP////8wCocICwADHf////8w -CocICwADHv////8wCocICwADH/////8wCocICwADIP////8wCocICwADIf////8w -CocICwADIv////8wCocICwADI/////8wCocICwADJP////8wCocICwADJf////8w -CocICwADJv////8wCocICwADJ/////8wCocICwADKP////8wCocICwADKf////8w -CocICwADKv////8wCocICwADK/////8wCocICwADLP////8wCocICwADLf////8w -CocICwADLv////8wCocICwADL/////8wCocICwADMP////8wCocICwADMf////8w -CocICwADMv////8wCocICwADM/////8wCocICwADNP////8wCocICwADNf////8w -CocICwADNv////8wCocICwADN/////8wCocICwADOP////8wCocICwADOf////8w -CocICwADOv////8wCocICwADO/////8wCocICwADPP////8wCocICwADPf////8w -CocICwADPv////8wCocICwADP/////8wCocICwADQP////8wCocICwADQf////8w -CocICwADQv////8wCocICwADQ/////8wCocICwADRP////8wCocICwADRf////8w -CocICwADRv////8wCocICwADR/////8wCocICwADSP////8wCocICwADSf////8w -CocICwADSv////8wCocICwADS/////8wCocICwADTP////8wCocICwADTf////8w -CocICwADTv////8wCocICwADT/////8wCocICwADUP////8wCocICwADUf////8w -CocICwADUv////8wCocICwADU/////8wCocICwADVP////8wCocICwADVf////8w -CocICwADVv////8wCocICwADV/////8wCocICwADWP////8wCocICwADWf////8w -CocICwADWv////8wCocICwADW/////8wCocICwADXP////8wCocICwADXf////8w -CocICwADXv////8wCocICwADX/////8wCocICwADYP////8wCocICwADYf////8w -CocICwADYv////8wCocICwADY/////8wCocICwADZP////8wCocICwADZf////8w -CocICwADZv////8wCocICwADZ/////8wCocICwADaP////8wCocICwADaf////8w -CocICwADav////8wCocICwADa/////8wCocICwADbP////8wCocICwADbf////8w -CocICwADbv////8wCocICwADb/////8wCocICwADcP////8wCocICwADcf////8w -CocICwADcv////8wCocICwADc/////8wCocICwADdP////8wCocICwADdf////8w -CocICwADdv////8wCocICwADd/////8wCocICwADeP////8wCocICwADef////8w -CocICwADev////8wCocICwADe/////8wCocICwADfP////8wCocICwADff////8w -CocICwADfv////8wCocICwADf/////8wCocICwADgP////8wCocICwADgf////8w -CocICwADgv////8wCocICwADg/////8wCocICwADhP////8wCocICwADhf////8w -CocICwADhv////8wCocICwADh/////8wCocICwADiP////8wCocICwADif////8w -CocICwADiv////8wCocICwADi/////8wCocICwADjP////8wCocICwADjf////8w -CocICwADjv////8wCocICwADj/////8wCocICwADkP////8wCocICwADkf////8w -CocICwADkv////8wCocICwADk/////8wCocICwADlP////8wCocICwADlf////8w -CocICwADlv////8wCocICwADl/////8wCocICwADmP////8wCocICwADmf////8w -CocICwADmv////8wCocICwADm/////8wCocICwADnP////8wCocICwADnf////8w -CocICwADnv////8wCocICwADn/////8wCocICwADoP////8wCocICwADof////8w -CocICwADov////8wCocICwADo/////8wCocICwADpP////8wCocICwADpf////8w -CocICwADpv////8wCocICwADp/////8wCocICwADqP////8wCocICwADqf////8w -CocICwADqv////8wCocICwADq/////8wCocICwADrP////8wCocICwADrf////8w -CocICwADrv////8wCocICwADr/////8wCocICwADsP////8wCocICwADsf////8w -CocICwADsv////8wCocICwADs/////8wCocICwADtP////8wCocICwADtf////8w -CocICwADtv////8wCocICwADt/////8wCocICwADuP////8wCocICwADuf////8w -CocICwADuv////8wCocICwADu/////8wCocICwADvP////8wCocICwADvf////8w -CocICwADvv////8wCocICwADv/////8wCocICwADwP////8wCocICwADwf////8w -CocICwADwv////8wCocICwADw/////8wCocICwADxP////8wCocICwADxf////8w -CocICwADxv////8wCocICwADx/////8wCocICwADyP////8wCocICwADyf////8w -CocICwADyv////8wCocICwADy/////8wCocICwADzP////8wCocICwADzf////8w -CocICwADzv////8wCocICwADz/////8wCocICwAD0P////8wCocICwAD0f////8w -CocICwAD0v////8wCocICwAD0/////8wCocICwAD1P////8wCocICwAD1f////8w -CocICwAD1v////8wCocICwAD1/////8wCocICwAD2P////8wCocICwAD2f////8w -CocICwAD2v////8wCocICwAD2/////8wCocICwAD3P////8wCocICwAD3f////8w -CocICwAD3v////8wCocICwAD3/////8wCocICwAD4P////8wCocICwAD4f////8w -CocICwAD4v////8wCocICwAD4/////8wCocICwAD5P////8wCocICwAD5f////8w -CocICwAD5v////8wCocICwAD5/////8wCocICwAD6P////8wCocICwAD6f////8w -CocICwAD6v////8wCocICwAD6/////8wCocICwAD7P////8wCocICwAD7f////8w -CocICwAD7v////8wCocICwAD7/////8wCocICwAD8P////8wCocICwAD8f////8w -CocICwAD8v////8wCocICwAD8/////8wCocICwAD9P////8wCocICwAD9f////8w -CocICwAD9v////8wCocICwAD9/////8wCocICwAD+P////8wCocICwAD+f////8w -CocICwAD+v////8wCocICwAD+/////8wCocICwAD/P////8wCocICwAD/f////8w -CocICwAD/v////8wCocICwAD//////8wCocICwAEAP////8wDQYJKoZIhvcNAQEL -BQADggEBAHoC880E9ZjcwHqqJbWhcuUJmT+4VKK3KHJhr0bACcxj/dQbpjbF4mK7 -qnH3ktJ6Bxs17McvrUSGa0PfekkFrDOAgXcVdvu+A9+JdnIexnruAYQ1T6l/Z1ql -4AHfg6wC/5932Ff8B86H0STowKzdm0Y6cIb5lALFY3X2cBBVmRQRVyJlMFZUK5Xb -NgJysJWHmIdCQET/Shae+BTEtNXqqAa0e/vrDUU124saPSzfOdTNnlTo6E83HEIl -RVLmxELnhfXHPSXbf6ApTTUm9NnBS2QIp2b6j0zTlL+OYPNTvOmDxJahl2Yn31WQ -HwGOb5CJVxjagSbx9K10HzsqY1O/Kj4= ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.cnf deleted file mode 100644 index 0dbd217a95..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.cnf +++ /dev/null @@ -1,4167 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Intermediate" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,keyCertSign,cRLSign -basicConstraints = critical,CA:true -nameConstraints = @nameConstraints_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Intermediate_4.pem -new_certs_dir = out -serial = out/Intermediate.serial -database = out/Intermediate.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Intermediate.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Intermediate.cer - -[crl_info] -URI.0 = http://url-for-crl/Intermediate.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[nameConstraints_info] -excluded;dirName.1 = nameConstraints_dirname_x1 -excluded;dirName.2 = nameConstraints_dirname_x2 -excluded;dirName.3 = nameConstraints_dirname_x3 -excluded;dirName.4 = nameConstraints_dirname_x4 -excluded;dirName.5 = nameConstraints_dirname_x5 -excluded;dirName.6 = nameConstraints_dirname_x6 -excluded;dirName.7 = nameConstraints_dirname_x7 -excluded;dirName.8 = nameConstraints_dirname_x8 -excluded;dirName.9 = nameConstraints_dirname_x9 -excluded;dirName.10 = nameConstraints_dirname_x10 -excluded;dirName.11 = nameConstraints_dirname_x11 -excluded;dirName.12 = nameConstraints_dirname_x12 -excluded;dirName.13 = nameConstraints_dirname_x13 -excluded;dirName.14 = nameConstraints_dirname_x14 -excluded;dirName.15 = nameConstraints_dirname_x15 -excluded;dirName.16 = nameConstraints_dirname_x16 -excluded;dirName.17 = nameConstraints_dirname_x17 -excluded;dirName.18 = nameConstraints_dirname_x18 -excluded;dirName.19 = nameConstraints_dirname_x19 -excluded;dirName.20 = nameConstraints_dirname_x20 -excluded;dirName.21 = nameConstraints_dirname_x21 -excluded;dirName.22 = nameConstraints_dirname_x22 -excluded;dirName.23 = nameConstraints_dirname_x23 -excluded;dirName.24 = nameConstraints_dirname_x24 -excluded;dirName.25 = nameConstraints_dirname_x25 -excluded;dirName.26 = nameConstraints_dirname_x26 -excluded;dirName.27 = nameConstraints_dirname_x27 -excluded;dirName.28 = nameConstraints_dirname_x28 -excluded;dirName.29 = nameConstraints_dirname_x29 -excluded;dirName.30 = nameConstraints_dirname_x30 -excluded;dirName.31 = nameConstraints_dirname_x31 -excluded;dirName.32 = nameConstraints_dirname_x32 -excluded;dirName.33 = nameConstraints_dirname_x33 -excluded;dirName.34 = nameConstraints_dirname_x34 -excluded;dirName.35 = nameConstraints_dirname_x35 -excluded;dirName.36 = nameConstraints_dirname_x36 -excluded;dirName.37 = nameConstraints_dirname_x37 -excluded;dirName.38 = nameConstraints_dirname_x38 -excluded;dirName.39 = nameConstraints_dirname_x39 -excluded;dirName.40 = nameConstraints_dirname_x40 -excluded;dirName.41 = nameConstraints_dirname_x41 -excluded;dirName.42 = nameConstraints_dirname_x42 -excluded;dirName.43 = nameConstraints_dirname_x43 -excluded;dirName.44 = nameConstraints_dirname_x44 -excluded;dirName.45 = nameConstraints_dirname_x45 -excluded;dirName.46 = nameConstraints_dirname_x46 -excluded;dirName.47 = nameConstraints_dirname_x47 -excluded;dirName.48 = nameConstraints_dirname_x48 -excluded;dirName.49 = nameConstraints_dirname_x49 -excluded;dirName.50 = nameConstraints_dirname_x50 -excluded;dirName.51 = nameConstraints_dirname_x51 -excluded;dirName.52 = nameConstraints_dirname_x52 -excluded;dirName.53 = nameConstraints_dirname_x53 -excluded;dirName.54 = nameConstraints_dirname_x54 -excluded;dirName.55 = nameConstraints_dirname_x55 -excluded;dirName.56 = nameConstraints_dirname_x56 -excluded;dirName.57 = nameConstraints_dirname_x57 -excluded;dirName.58 = nameConstraints_dirname_x58 -excluded;dirName.59 = nameConstraints_dirname_x59 -excluded;dirName.60 = nameConstraints_dirname_x60 -excluded;dirName.61 = nameConstraints_dirname_x61 -excluded;dirName.62 = nameConstraints_dirname_x62 -excluded;dirName.63 = nameConstraints_dirname_x63 -excluded;dirName.64 = nameConstraints_dirname_x64 -excluded;dirName.65 = nameConstraints_dirname_x65 -excluded;dirName.66 = nameConstraints_dirname_x66 -excluded;dirName.67 = nameConstraints_dirname_x67 -excluded;dirName.68 = nameConstraints_dirname_x68 -excluded;dirName.69 = nameConstraints_dirname_x69 -excluded;dirName.70 = nameConstraints_dirname_x70 -excluded;dirName.71 = nameConstraints_dirname_x71 -excluded;dirName.72 = nameConstraints_dirname_x72 -excluded;dirName.73 = nameConstraints_dirname_x73 -excluded;dirName.74 = nameConstraints_dirname_x74 -excluded;dirName.75 = nameConstraints_dirname_x75 -excluded;dirName.76 = nameConstraints_dirname_x76 -excluded;dirName.77 = nameConstraints_dirname_x77 -excluded;dirName.78 = nameConstraints_dirname_x78 -excluded;dirName.79 = nameConstraints_dirname_x79 -excluded;dirName.80 = nameConstraints_dirname_x80 -excluded;dirName.81 = nameConstraints_dirname_x81 -excluded;dirName.82 = nameConstraints_dirname_x82 -excluded;dirName.83 = nameConstraints_dirname_x83 -excluded;dirName.84 = nameConstraints_dirname_x84 -excluded;dirName.85 = nameConstraints_dirname_x85 -excluded;dirName.86 = nameConstraints_dirname_x86 -excluded;dirName.87 = nameConstraints_dirname_x87 -excluded;dirName.88 = nameConstraints_dirname_x88 -excluded;dirName.89 = nameConstraints_dirname_x89 -excluded;dirName.90 = nameConstraints_dirname_x90 -excluded;dirName.91 = nameConstraints_dirname_x91 -excluded;dirName.92 = nameConstraints_dirname_x92 -excluded;dirName.93 = nameConstraints_dirname_x93 -excluded;dirName.94 = nameConstraints_dirname_x94 -excluded;dirName.95 = nameConstraints_dirname_x95 -excluded;dirName.96 = nameConstraints_dirname_x96 -excluded;dirName.97 = nameConstraints_dirname_x97 -excluded;dirName.98 = nameConstraints_dirname_x98 -excluded;dirName.99 = nameConstraints_dirname_x99 -excluded;dirName.100 = nameConstraints_dirname_x100 -excluded;dirName.101 = nameConstraints_dirname_x101 -excluded;dirName.102 = nameConstraints_dirname_x102 -excluded;dirName.103 = nameConstraints_dirname_x103 -excluded;dirName.104 = nameConstraints_dirname_x104 -excluded;dirName.105 = nameConstraints_dirname_x105 -excluded;dirName.106 = nameConstraints_dirname_x106 -excluded;dirName.107 = nameConstraints_dirname_x107 -excluded;dirName.108 = nameConstraints_dirname_x108 -excluded;dirName.109 = nameConstraints_dirname_x109 -excluded;dirName.110 = nameConstraints_dirname_x110 -excluded;dirName.111 = nameConstraints_dirname_x111 -excluded;dirName.112 = nameConstraints_dirname_x112 -excluded;dirName.113 = nameConstraints_dirname_x113 -excluded;dirName.114 = nameConstraints_dirname_x114 -excluded;dirName.115 = nameConstraints_dirname_x115 -excluded;dirName.116 = nameConstraints_dirname_x116 -excluded;dirName.117 = nameConstraints_dirname_x117 -excluded;dirName.118 = nameConstraints_dirname_x118 -excluded;dirName.119 = nameConstraints_dirname_x119 -excluded;dirName.120 = nameConstraints_dirname_x120 -excluded;dirName.121 = nameConstraints_dirname_x121 -excluded;dirName.122 = nameConstraints_dirname_x122 -excluded;dirName.123 = nameConstraints_dirname_x123 -excluded;dirName.124 = nameConstraints_dirname_x124 -excluded;dirName.125 = nameConstraints_dirname_x125 -excluded;dirName.126 = nameConstraints_dirname_x126 -excluded;dirName.127 = nameConstraints_dirname_x127 -excluded;dirName.128 = nameConstraints_dirname_x128 -excluded;dirName.129 = nameConstraints_dirname_x129 -excluded;dirName.130 = nameConstraints_dirname_x130 -excluded;dirName.131 = nameConstraints_dirname_x131 -excluded;dirName.132 = nameConstraints_dirname_x132 -excluded;dirName.133 = nameConstraints_dirname_x133 -excluded;dirName.134 = nameConstraints_dirname_x134 -excluded;dirName.135 = nameConstraints_dirname_x135 -excluded;dirName.136 = nameConstraints_dirname_x136 -excluded;dirName.137 = nameConstraints_dirname_x137 -excluded;dirName.138 = nameConstraints_dirname_x138 -excluded;dirName.139 = nameConstraints_dirname_x139 -excluded;dirName.140 = nameConstraints_dirname_x140 -excluded;dirName.141 = nameConstraints_dirname_x141 -excluded;dirName.142 = nameConstraints_dirname_x142 -excluded;dirName.143 = nameConstraints_dirname_x143 -excluded;dirName.144 = nameConstraints_dirname_x144 -excluded;dirName.145 = nameConstraints_dirname_x145 -excluded;dirName.146 = nameConstraints_dirname_x146 -excluded;dirName.147 = nameConstraints_dirname_x147 -excluded;dirName.148 = nameConstraints_dirname_x148 -excluded;dirName.149 = nameConstraints_dirname_x149 -excluded;dirName.150 = nameConstraints_dirname_x150 -excluded;dirName.151 = nameConstraints_dirname_x151 -excluded;dirName.152 = nameConstraints_dirname_x152 -excluded;dirName.153 = nameConstraints_dirname_x153 -excluded;dirName.154 = nameConstraints_dirname_x154 -excluded;dirName.155 = nameConstraints_dirname_x155 -excluded;dirName.156 = nameConstraints_dirname_x156 -excluded;dirName.157 = nameConstraints_dirname_x157 -excluded;dirName.158 = nameConstraints_dirname_x158 -excluded;dirName.159 = nameConstraints_dirname_x159 -excluded;dirName.160 = nameConstraints_dirname_x160 -excluded;dirName.161 = nameConstraints_dirname_x161 -excluded;dirName.162 = nameConstraints_dirname_x162 -excluded;dirName.163 = nameConstraints_dirname_x163 -excluded;dirName.164 = nameConstraints_dirname_x164 -excluded;dirName.165 = nameConstraints_dirname_x165 -excluded;dirName.166 = nameConstraints_dirname_x166 -excluded;dirName.167 = nameConstraints_dirname_x167 -excluded;dirName.168 = nameConstraints_dirname_x168 -excluded;dirName.169 = nameConstraints_dirname_x169 -excluded;dirName.170 = nameConstraints_dirname_x170 -excluded;dirName.171 = nameConstraints_dirname_x171 -excluded;dirName.172 = nameConstraints_dirname_x172 -excluded;dirName.173 = nameConstraints_dirname_x173 -excluded;dirName.174 = nameConstraints_dirname_x174 -excluded;dirName.175 = nameConstraints_dirname_x175 -excluded;dirName.176 = nameConstraints_dirname_x176 -excluded;dirName.177 = nameConstraints_dirname_x177 -excluded;dirName.178 = nameConstraints_dirname_x178 -excluded;dirName.179 = nameConstraints_dirname_x179 -excluded;dirName.180 = nameConstraints_dirname_x180 -excluded;dirName.181 = nameConstraints_dirname_x181 -excluded;dirName.182 = nameConstraints_dirname_x182 -excluded;dirName.183 = nameConstraints_dirname_x183 -excluded;dirName.184 = nameConstraints_dirname_x184 -excluded;dirName.185 = nameConstraints_dirname_x185 -excluded;dirName.186 = nameConstraints_dirname_x186 -excluded;dirName.187 = nameConstraints_dirname_x187 -excluded;dirName.188 = nameConstraints_dirname_x188 -excluded;dirName.189 = nameConstraints_dirname_x189 -excluded;dirName.190 = nameConstraints_dirname_x190 -excluded;dirName.191 = nameConstraints_dirname_x191 -excluded;dirName.192 = nameConstraints_dirname_x192 -excluded;dirName.193 = nameConstraints_dirname_x193 -excluded;dirName.194 = nameConstraints_dirname_x194 -excluded;dirName.195 = nameConstraints_dirname_x195 -excluded;dirName.196 = nameConstraints_dirname_x196 -excluded;dirName.197 = nameConstraints_dirname_x197 -excluded;dirName.198 = nameConstraints_dirname_x198 -excluded;dirName.199 = nameConstraints_dirname_x199 -excluded;dirName.200 = nameConstraints_dirname_x200 -excluded;dirName.201 = nameConstraints_dirname_x201 -excluded;dirName.202 = nameConstraints_dirname_x202 -excluded;dirName.203 = nameConstraints_dirname_x203 -excluded;dirName.204 = nameConstraints_dirname_x204 -excluded;dirName.205 = nameConstraints_dirname_x205 -excluded;dirName.206 = nameConstraints_dirname_x206 -excluded;dirName.207 = nameConstraints_dirname_x207 -excluded;dirName.208 = nameConstraints_dirname_x208 -excluded;dirName.209 = nameConstraints_dirname_x209 -excluded;dirName.210 = nameConstraints_dirname_x210 -excluded;dirName.211 = nameConstraints_dirname_x211 -excluded;dirName.212 = nameConstraints_dirname_x212 -excluded;dirName.213 = nameConstraints_dirname_x213 -excluded;dirName.214 = nameConstraints_dirname_x214 -excluded;dirName.215 = nameConstraints_dirname_x215 -excluded;dirName.216 = nameConstraints_dirname_x216 -excluded;dirName.217 = nameConstraints_dirname_x217 -excluded;dirName.218 = nameConstraints_dirname_x218 -excluded;dirName.219 = nameConstraints_dirname_x219 -excluded;dirName.220 = nameConstraints_dirname_x220 -excluded;dirName.221 = nameConstraints_dirname_x221 -excluded;dirName.222 = nameConstraints_dirname_x222 -excluded;dirName.223 = nameConstraints_dirname_x223 -excluded;dirName.224 = nameConstraints_dirname_x224 -excluded;dirName.225 = nameConstraints_dirname_x225 -excluded;dirName.226 = nameConstraints_dirname_x226 -excluded;dirName.227 = nameConstraints_dirname_x227 -excluded;dirName.228 = nameConstraints_dirname_x228 -excluded;dirName.229 = nameConstraints_dirname_x229 -excluded;dirName.230 = nameConstraints_dirname_x230 -excluded;dirName.231 = nameConstraints_dirname_x231 -excluded;dirName.232 = nameConstraints_dirname_x232 -excluded;dirName.233 = nameConstraints_dirname_x233 -excluded;dirName.234 = nameConstraints_dirname_x234 -excluded;dirName.235 = nameConstraints_dirname_x235 -excluded;dirName.236 = nameConstraints_dirname_x236 -excluded;dirName.237 = nameConstraints_dirname_x237 -excluded;dirName.238 = nameConstraints_dirname_x238 -excluded;dirName.239 = nameConstraints_dirname_x239 -excluded;dirName.240 = nameConstraints_dirname_x240 -excluded;dirName.241 = nameConstraints_dirname_x241 -excluded;dirName.242 = nameConstraints_dirname_x242 -excluded;dirName.243 = nameConstraints_dirname_x243 -excluded;dirName.244 = nameConstraints_dirname_x244 -excluded;dirName.245 = nameConstraints_dirname_x245 -excluded;dirName.246 = nameConstraints_dirname_x246 -excluded;dirName.247 = nameConstraints_dirname_x247 -excluded;dirName.248 = nameConstraints_dirname_x248 -excluded;dirName.249 = nameConstraints_dirname_x249 -excluded;dirName.250 = nameConstraints_dirname_x250 -excluded;dirName.251 = nameConstraints_dirname_x251 -excluded;dirName.252 = nameConstraints_dirname_x252 -excluded;dirName.253 = nameConstraints_dirname_x253 -excluded;dirName.254 = nameConstraints_dirname_x254 -excluded;dirName.255 = nameConstraints_dirname_x255 -excluded;dirName.256 = nameConstraints_dirname_x256 -excluded;dirName.257 = nameConstraints_dirname_x257 -excluded;dirName.258 = nameConstraints_dirname_x258 -excluded;dirName.259 = nameConstraints_dirname_x259 -excluded;dirName.260 = nameConstraints_dirname_x260 -excluded;dirName.261 = nameConstraints_dirname_x261 -excluded;dirName.262 = nameConstraints_dirname_x262 -excluded;dirName.263 = nameConstraints_dirname_x263 -excluded;dirName.264 = nameConstraints_dirname_x264 -excluded;dirName.265 = nameConstraints_dirname_x265 -excluded;dirName.266 = nameConstraints_dirname_x266 -excluded;dirName.267 = nameConstraints_dirname_x267 -excluded;dirName.268 = nameConstraints_dirname_x268 -excluded;dirName.269 = nameConstraints_dirname_x269 -excluded;dirName.270 = nameConstraints_dirname_x270 -excluded;dirName.271 = nameConstraints_dirname_x271 -excluded;dirName.272 = nameConstraints_dirname_x272 -excluded;dirName.273 = nameConstraints_dirname_x273 -excluded;dirName.274 = nameConstraints_dirname_x274 -excluded;dirName.275 = nameConstraints_dirname_x275 -excluded;dirName.276 = nameConstraints_dirname_x276 -excluded;dirName.277 = nameConstraints_dirname_x277 -excluded;dirName.278 = nameConstraints_dirname_x278 -excluded;dirName.279 = nameConstraints_dirname_x279 -excluded;dirName.280 = nameConstraints_dirname_x280 -excluded;dirName.281 = nameConstraints_dirname_x281 -excluded;dirName.282 = nameConstraints_dirname_x282 -excluded;dirName.283 = nameConstraints_dirname_x283 -excluded;dirName.284 = nameConstraints_dirname_x284 -excluded;dirName.285 = nameConstraints_dirname_x285 -excluded;dirName.286 = nameConstraints_dirname_x286 -excluded;dirName.287 = nameConstraints_dirname_x287 -excluded;dirName.288 = nameConstraints_dirname_x288 -excluded;dirName.289 = nameConstraints_dirname_x289 -excluded;dirName.290 = nameConstraints_dirname_x290 -excluded;dirName.291 = nameConstraints_dirname_x291 -excluded;dirName.292 = nameConstraints_dirname_x292 -excluded;dirName.293 = nameConstraints_dirname_x293 -excluded;dirName.294 = nameConstraints_dirname_x294 -excluded;dirName.295 = nameConstraints_dirname_x295 -excluded;dirName.296 = nameConstraints_dirname_x296 -excluded;dirName.297 = nameConstraints_dirname_x297 -excluded;dirName.298 = nameConstraints_dirname_x298 -excluded;dirName.299 = nameConstraints_dirname_x299 -excluded;dirName.300 = nameConstraints_dirname_x300 -excluded;dirName.301 = nameConstraints_dirname_x301 -excluded;dirName.302 = nameConstraints_dirname_x302 -excluded;dirName.303 = nameConstraints_dirname_x303 -excluded;dirName.304 = nameConstraints_dirname_x304 -excluded;dirName.305 = nameConstraints_dirname_x305 -excluded;dirName.306 = nameConstraints_dirname_x306 -excluded;dirName.307 = nameConstraints_dirname_x307 -excluded;dirName.308 = nameConstraints_dirname_x308 -excluded;dirName.309 = nameConstraints_dirname_x309 -excluded;dirName.310 = nameConstraints_dirname_x310 -excluded;dirName.311 = nameConstraints_dirname_x311 -excluded;dirName.312 = nameConstraints_dirname_x312 -excluded;dirName.313 = nameConstraints_dirname_x313 -excluded;dirName.314 = nameConstraints_dirname_x314 -excluded;dirName.315 = nameConstraints_dirname_x315 -excluded;dirName.316 = nameConstraints_dirname_x316 -excluded;dirName.317 = nameConstraints_dirname_x317 -excluded;dirName.318 = nameConstraints_dirname_x318 -excluded;dirName.319 = nameConstraints_dirname_x319 -excluded;dirName.320 = nameConstraints_dirname_x320 -excluded;dirName.321 = nameConstraints_dirname_x321 -excluded;dirName.322 = nameConstraints_dirname_x322 -excluded;dirName.323 = nameConstraints_dirname_x323 -excluded;dirName.324 = nameConstraints_dirname_x324 -excluded;dirName.325 = nameConstraints_dirname_x325 -excluded;dirName.326 = nameConstraints_dirname_x326 -excluded;dirName.327 = nameConstraints_dirname_x327 -excluded;dirName.328 = nameConstraints_dirname_x328 -excluded;dirName.329 = nameConstraints_dirname_x329 -excluded;dirName.330 = nameConstraints_dirname_x330 -excluded;dirName.331 = nameConstraints_dirname_x331 -excluded;dirName.332 = nameConstraints_dirname_x332 -excluded;dirName.333 = nameConstraints_dirname_x333 -excluded;dirName.334 = nameConstraints_dirname_x334 -excluded;dirName.335 = nameConstraints_dirname_x335 -excluded;dirName.336 = nameConstraints_dirname_x336 -excluded;dirName.337 = nameConstraints_dirname_x337 -excluded;dirName.338 = nameConstraints_dirname_x338 -excluded;dirName.339 = nameConstraints_dirname_x339 -excluded;dirName.340 = nameConstraints_dirname_x340 -excluded;dirName.341 = nameConstraints_dirname_x341 -excluded;dirName.342 = nameConstraints_dirname_x342 -excluded;dirName.343 = nameConstraints_dirname_x343 -excluded;dirName.344 = nameConstraints_dirname_x344 -excluded;dirName.345 = nameConstraints_dirname_x345 -excluded;dirName.346 = nameConstraints_dirname_x346 -excluded;dirName.347 = nameConstraints_dirname_x347 -excluded;dirName.348 = nameConstraints_dirname_x348 -excluded;dirName.349 = nameConstraints_dirname_x349 -excluded;dirName.350 = nameConstraints_dirname_x350 -excluded;dirName.351 = nameConstraints_dirname_x351 -excluded;dirName.352 = nameConstraints_dirname_x352 -excluded;dirName.353 = nameConstraints_dirname_x353 -excluded;dirName.354 = nameConstraints_dirname_x354 -excluded;dirName.355 = nameConstraints_dirname_x355 -excluded;dirName.356 = nameConstraints_dirname_x356 -excluded;dirName.357 = nameConstraints_dirname_x357 -excluded;dirName.358 = nameConstraints_dirname_x358 -excluded;dirName.359 = nameConstraints_dirname_x359 -excluded;dirName.360 = nameConstraints_dirname_x360 -excluded;dirName.361 = nameConstraints_dirname_x361 -excluded;dirName.362 = nameConstraints_dirname_x362 -excluded;dirName.363 = nameConstraints_dirname_x363 -excluded;dirName.364 = nameConstraints_dirname_x364 -excluded;dirName.365 = nameConstraints_dirname_x365 -excluded;dirName.366 = nameConstraints_dirname_x366 -excluded;dirName.367 = nameConstraints_dirname_x367 -excluded;dirName.368 = nameConstraints_dirname_x368 -excluded;dirName.369 = nameConstraints_dirname_x369 -excluded;dirName.370 = nameConstraints_dirname_x370 -excluded;dirName.371 = nameConstraints_dirname_x371 -excluded;dirName.372 = nameConstraints_dirname_x372 -excluded;dirName.373 = nameConstraints_dirname_x373 -excluded;dirName.374 = nameConstraints_dirname_x374 -excluded;dirName.375 = nameConstraints_dirname_x375 -excluded;dirName.376 = nameConstraints_dirname_x376 -excluded;dirName.377 = nameConstraints_dirname_x377 -excluded;dirName.378 = nameConstraints_dirname_x378 -excluded;dirName.379 = nameConstraints_dirname_x379 -excluded;dirName.380 = nameConstraints_dirname_x380 -excluded;dirName.381 = nameConstraints_dirname_x381 -excluded;dirName.382 = nameConstraints_dirname_x382 -excluded;dirName.383 = nameConstraints_dirname_x383 -excluded;dirName.384 = nameConstraints_dirname_x384 -excluded;dirName.385 = nameConstraints_dirname_x385 -excluded;dirName.386 = nameConstraints_dirname_x386 -excluded;dirName.387 = nameConstraints_dirname_x387 -excluded;dirName.388 = nameConstraints_dirname_x388 -excluded;dirName.389 = nameConstraints_dirname_x389 -excluded;dirName.390 = nameConstraints_dirname_x390 -excluded;dirName.391 = nameConstraints_dirname_x391 -excluded;dirName.392 = nameConstraints_dirname_x392 -excluded;dirName.393 = nameConstraints_dirname_x393 -excluded;dirName.394 = nameConstraints_dirname_x394 -excluded;dirName.395 = nameConstraints_dirname_x395 -excluded;dirName.396 = nameConstraints_dirname_x396 -excluded;dirName.397 = nameConstraints_dirname_x397 -excluded;dirName.398 = nameConstraints_dirname_x398 -excluded;dirName.399 = nameConstraints_dirname_x399 -excluded;dirName.400 = nameConstraints_dirname_x400 -excluded;dirName.401 = nameConstraints_dirname_x401 -excluded;dirName.402 = nameConstraints_dirname_x402 -excluded;dirName.403 = nameConstraints_dirname_x403 -excluded;dirName.404 = nameConstraints_dirname_x404 -excluded;dirName.405 = nameConstraints_dirname_x405 -excluded;dirName.406 = nameConstraints_dirname_x406 -excluded;dirName.407 = nameConstraints_dirname_x407 -excluded;dirName.408 = nameConstraints_dirname_x408 -excluded;dirName.409 = nameConstraints_dirname_x409 -excluded;dirName.410 = nameConstraints_dirname_x410 -excluded;dirName.411 = nameConstraints_dirname_x411 -excluded;dirName.412 = nameConstraints_dirname_x412 -excluded;dirName.413 = nameConstraints_dirname_x413 -excluded;dirName.414 = nameConstraints_dirname_x414 -excluded;dirName.415 = nameConstraints_dirname_x415 -excluded;dirName.416 = nameConstraints_dirname_x416 -excluded;dirName.417 = nameConstraints_dirname_x417 -excluded;dirName.418 = nameConstraints_dirname_x418 -excluded;dirName.419 = nameConstraints_dirname_x419 -excluded;dirName.420 = nameConstraints_dirname_x420 -excluded;dirName.421 = nameConstraints_dirname_x421 -excluded;dirName.422 = nameConstraints_dirname_x422 -excluded;dirName.423 = nameConstraints_dirname_x423 -excluded;dirName.424 = nameConstraints_dirname_x424 -excluded;dirName.425 = nameConstraints_dirname_x425 -excluded;dirName.426 = nameConstraints_dirname_x426 -excluded;dirName.427 = nameConstraints_dirname_x427 -excluded;dirName.428 = nameConstraints_dirname_x428 -excluded;dirName.429 = nameConstraints_dirname_x429 -excluded;dirName.430 = nameConstraints_dirname_x430 -excluded;dirName.431 = nameConstraints_dirname_x431 -excluded;dirName.432 = nameConstraints_dirname_x432 -excluded;dirName.433 = nameConstraints_dirname_x433 -excluded;dirName.434 = nameConstraints_dirname_x434 -excluded;dirName.435 = nameConstraints_dirname_x435 -excluded;dirName.436 = nameConstraints_dirname_x436 -excluded;dirName.437 = nameConstraints_dirname_x437 -excluded;dirName.438 = nameConstraints_dirname_x438 -excluded;dirName.439 = nameConstraints_dirname_x439 -excluded;dirName.440 = nameConstraints_dirname_x440 -excluded;dirName.441 = nameConstraints_dirname_x441 -excluded;dirName.442 = nameConstraints_dirname_x442 -excluded;dirName.443 = nameConstraints_dirname_x443 -excluded;dirName.444 = nameConstraints_dirname_x444 -excluded;dirName.445 = nameConstraints_dirname_x445 -excluded;dirName.446 = nameConstraints_dirname_x446 -excluded;dirName.447 = nameConstraints_dirname_x447 -excluded;dirName.448 = nameConstraints_dirname_x448 -excluded;dirName.449 = nameConstraints_dirname_x449 -excluded;dirName.450 = nameConstraints_dirname_x450 -excluded;dirName.451 = nameConstraints_dirname_x451 -excluded;dirName.452 = nameConstraints_dirname_x452 -excluded;dirName.453 = nameConstraints_dirname_x453 -excluded;dirName.454 = nameConstraints_dirname_x454 -excluded;dirName.455 = nameConstraints_dirname_x455 -excluded;dirName.456 = nameConstraints_dirname_x456 -excluded;dirName.457 = nameConstraints_dirname_x457 -excluded;dirName.458 = nameConstraints_dirname_x458 -excluded;dirName.459 = nameConstraints_dirname_x459 -excluded;dirName.460 = nameConstraints_dirname_x460 -excluded;dirName.461 = nameConstraints_dirname_x461 -excluded;dirName.462 = nameConstraints_dirname_x462 -excluded;dirName.463 = nameConstraints_dirname_x463 -excluded;dirName.464 = nameConstraints_dirname_x464 -excluded;dirName.465 = nameConstraints_dirname_x465 -excluded;dirName.466 = nameConstraints_dirname_x466 -excluded;dirName.467 = nameConstraints_dirname_x467 -excluded;dirName.468 = nameConstraints_dirname_x468 -excluded;dirName.469 = nameConstraints_dirname_x469 -excluded;dirName.470 = nameConstraints_dirname_x470 -excluded;dirName.471 = nameConstraints_dirname_x471 -excluded;dirName.472 = nameConstraints_dirname_x472 -excluded;dirName.473 = nameConstraints_dirname_x473 -excluded;dirName.474 = nameConstraints_dirname_x474 -excluded;dirName.475 = nameConstraints_dirname_x475 -excluded;dirName.476 = nameConstraints_dirname_x476 -excluded;dirName.477 = nameConstraints_dirname_x477 -excluded;dirName.478 = nameConstraints_dirname_x478 -excluded;dirName.479 = nameConstraints_dirname_x479 -excluded;dirName.480 = nameConstraints_dirname_x480 -excluded;dirName.481 = nameConstraints_dirname_x481 -excluded;dirName.482 = nameConstraints_dirname_x482 -excluded;dirName.483 = nameConstraints_dirname_x483 -excluded;dirName.484 = nameConstraints_dirname_x484 -excluded;dirName.485 = nameConstraints_dirname_x485 -excluded;dirName.486 = nameConstraints_dirname_x486 -excluded;dirName.487 = nameConstraints_dirname_x487 -excluded;dirName.488 = nameConstraints_dirname_x488 -excluded;dirName.489 = nameConstraints_dirname_x489 -excluded;dirName.490 = nameConstraints_dirname_x490 -excluded;dirName.491 = nameConstraints_dirname_x491 -excluded;dirName.492 = nameConstraints_dirname_x492 -excluded;dirName.493 = nameConstraints_dirname_x493 -excluded;dirName.494 = nameConstraints_dirname_x494 -excluded;dirName.495 = nameConstraints_dirname_x495 -excluded;dirName.496 = nameConstraints_dirname_x496 -excluded;dirName.497 = nameConstraints_dirname_x497 -excluded;dirName.498 = nameConstraints_dirname_x498 -excluded;dirName.499 = nameConstraints_dirname_x499 -excluded;dirName.500 = nameConstraints_dirname_x500 -excluded;dirName.501 = nameConstraints_dirname_x501 -excluded;dirName.502 = nameConstraints_dirname_x502 -excluded;dirName.503 = nameConstraints_dirname_x503 -excluded;dirName.504 = nameConstraints_dirname_x504 -excluded;dirName.505 = nameConstraints_dirname_x505 -excluded;dirName.506 = nameConstraints_dirname_x506 -excluded;dirName.507 = nameConstraints_dirname_x507 -excluded;dirName.508 = nameConstraints_dirname_x508 -excluded;dirName.509 = nameConstraints_dirname_x509 -excluded;dirName.510 = nameConstraints_dirname_x510 -excluded;dirName.511 = nameConstraints_dirname_x511 -excluded;dirName.512 = nameConstraints_dirname_x512 -excluded;dirName.513 = nameConstraints_dirname_x513 -excluded;dirName.514 = nameConstraints_dirname_x514 -excluded;dirName.515 = nameConstraints_dirname_x515 -excluded;dirName.516 = nameConstraints_dirname_x516 -excluded;dirName.517 = nameConstraints_dirname_x517 -excluded;dirName.518 = nameConstraints_dirname_x518 -excluded;dirName.519 = nameConstraints_dirname_x519 -excluded;dirName.520 = nameConstraints_dirname_x520 -excluded;dirName.521 = nameConstraints_dirname_x521 -excluded;dirName.522 = nameConstraints_dirname_x522 -excluded;dirName.523 = nameConstraints_dirname_x523 -excluded;dirName.524 = nameConstraints_dirname_x524 -excluded;dirName.525 = nameConstraints_dirname_x525 -excluded;dirName.526 = nameConstraints_dirname_x526 -excluded;dirName.527 = nameConstraints_dirname_x527 -excluded;dirName.528 = nameConstraints_dirname_x528 -excluded;dirName.529 = nameConstraints_dirname_x529 -excluded;dirName.530 = nameConstraints_dirname_x530 -excluded;dirName.531 = nameConstraints_dirname_x531 -excluded;dirName.532 = nameConstraints_dirname_x532 -excluded;dirName.533 = nameConstraints_dirname_x533 -excluded;dirName.534 = nameConstraints_dirname_x534 -excluded;dirName.535 = nameConstraints_dirname_x535 -excluded;dirName.536 = nameConstraints_dirname_x536 -excluded;dirName.537 = nameConstraints_dirname_x537 -excluded;dirName.538 = nameConstraints_dirname_x538 -excluded;dirName.539 = nameConstraints_dirname_x539 -excluded;dirName.540 = nameConstraints_dirname_x540 -excluded;dirName.541 = nameConstraints_dirname_x541 -excluded;dirName.542 = nameConstraints_dirname_x542 -excluded;dirName.543 = nameConstraints_dirname_x543 -excluded;dirName.544 = nameConstraints_dirname_x544 -excluded;dirName.545 = nameConstraints_dirname_x545 -excluded;dirName.546 = nameConstraints_dirname_x546 -excluded;dirName.547 = nameConstraints_dirname_x547 -excluded;dirName.548 = nameConstraints_dirname_x548 -excluded;dirName.549 = nameConstraints_dirname_x549 -excluded;dirName.550 = nameConstraints_dirname_x550 -excluded;dirName.551 = nameConstraints_dirname_x551 -excluded;dirName.552 = nameConstraints_dirname_x552 -excluded;dirName.553 = nameConstraints_dirname_x553 -excluded;dirName.554 = nameConstraints_dirname_x554 -excluded;dirName.555 = nameConstraints_dirname_x555 -excluded;dirName.556 = nameConstraints_dirname_x556 -excluded;dirName.557 = nameConstraints_dirname_x557 -excluded;dirName.558 = nameConstraints_dirname_x558 -excluded;dirName.559 = nameConstraints_dirname_x559 -excluded;dirName.560 = nameConstraints_dirname_x560 -excluded;dirName.561 = nameConstraints_dirname_x561 -excluded;dirName.562 = nameConstraints_dirname_x562 -excluded;dirName.563 = nameConstraints_dirname_x563 -excluded;dirName.564 = nameConstraints_dirname_x564 -excluded;dirName.565 = nameConstraints_dirname_x565 -excluded;dirName.566 = nameConstraints_dirname_x566 -excluded;dirName.567 = nameConstraints_dirname_x567 -excluded;dirName.568 = nameConstraints_dirname_x568 -excluded;dirName.569 = nameConstraints_dirname_x569 -excluded;dirName.570 = nameConstraints_dirname_x570 -excluded;dirName.571 = nameConstraints_dirname_x571 -excluded;dirName.572 = nameConstraints_dirname_x572 -excluded;dirName.573 = nameConstraints_dirname_x573 -excluded;dirName.574 = nameConstraints_dirname_x574 -excluded;dirName.575 = nameConstraints_dirname_x575 -excluded;dirName.576 = nameConstraints_dirname_x576 -excluded;dirName.577 = nameConstraints_dirname_x577 -excluded;dirName.578 = nameConstraints_dirname_x578 -excluded;dirName.579 = nameConstraints_dirname_x579 -excluded;dirName.580 = nameConstraints_dirname_x580 -excluded;dirName.581 = nameConstraints_dirname_x581 -excluded;dirName.582 = nameConstraints_dirname_x582 -excluded;dirName.583 = nameConstraints_dirname_x583 -excluded;dirName.584 = nameConstraints_dirname_x584 -excluded;dirName.585 = nameConstraints_dirname_x585 -excluded;dirName.586 = nameConstraints_dirname_x586 -excluded;dirName.587 = nameConstraints_dirname_x587 -excluded;dirName.588 = nameConstraints_dirname_x588 -excluded;dirName.589 = nameConstraints_dirname_x589 -excluded;dirName.590 = nameConstraints_dirname_x590 -excluded;dirName.591 = nameConstraints_dirname_x591 -excluded;dirName.592 = nameConstraints_dirname_x592 -excluded;dirName.593 = nameConstraints_dirname_x593 -excluded;dirName.594 = nameConstraints_dirname_x594 -excluded;dirName.595 = nameConstraints_dirname_x595 -excluded;dirName.596 = nameConstraints_dirname_x596 -excluded;dirName.597 = nameConstraints_dirname_x597 -excluded;dirName.598 = nameConstraints_dirname_x598 -excluded;dirName.599 = nameConstraints_dirname_x599 -excluded;dirName.600 = nameConstraints_dirname_x600 -excluded;dirName.601 = nameConstraints_dirname_x601 -excluded;dirName.602 = nameConstraints_dirname_x602 -excluded;dirName.603 = nameConstraints_dirname_x603 -excluded;dirName.604 = nameConstraints_dirname_x604 -excluded;dirName.605 = nameConstraints_dirname_x605 -excluded;dirName.606 = nameConstraints_dirname_x606 -excluded;dirName.607 = nameConstraints_dirname_x607 -excluded;dirName.608 = nameConstraints_dirname_x608 -excluded;dirName.609 = nameConstraints_dirname_x609 -excluded;dirName.610 = nameConstraints_dirname_x610 -excluded;dirName.611 = nameConstraints_dirname_x611 -excluded;dirName.612 = nameConstraints_dirname_x612 -excluded;dirName.613 = nameConstraints_dirname_x613 -excluded;dirName.614 = nameConstraints_dirname_x614 -excluded;dirName.615 = nameConstraints_dirname_x615 -excluded;dirName.616 = nameConstraints_dirname_x616 -excluded;dirName.617 = nameConstraints_dirname_x617 -excluded;dirName.618 = nameConstraints_dirname_x618 -excluded;dirName.619 = nameConstraints_dirname_x619 -excluded;dirName.620 = nameConstraints_dirname_x620 -excluded;dirName.621 = nameConstraints_dirname_x621 -excluded;dirName.622 = nameConstraints_dirname_x622 -excluded;dirName.623 = nameConstraints_dirname_x623 -excluded;dirName.624 = nameConstraints_dirname_x624 -excluded;dirName.625 = nameConstraints_dirname_x625 -excluded;dirName.626 = nameConstraints_dirname_x626 -excluded;dirName.627 = nameConstraints_dirname_x627 -excluded;dirName.628 = nameConstraints_dirname_x628 -excluded;dirName.629 = nameConstraints_dirname_x629 -excluded;dirName.630 = nameConstraints_dirname_x630 -excluded;dirName.631 = nameConstraints_dirname_x631 -excluded;dirName.632 = nameConstraints_dirname_x632 -excluded;dirName.633 = nameConstraints_dirname_x633 -excluded;dirName.634 = nameConstraints_dirname_x634 -excluded;dirName.635 = nameConstraints_dirname_x635 -excluded;dirName.636 = nameConstraints_dirname_x636 -excluded;dirName.637 = nameConstraints_dirname_x637 -excluded;dirName.638 = nameConstraints_dirname_x638 -excluded;dirName.639 = nameConstraints_dirname_x639 -excluded;dirName.640 = nameConstraints_dirname_x640 -excluded;dirName.641 = nameConstraints_dirname_x641 -excluded;dirName.642 = nameConstraints_dirname_x642 -excluded;dirName.643 = nameConstraints_dirname_x643 -excluded;dirName.644 = nameConstraints_dirname_x644 -excluded;dirName.645 = nameConstraints_dirname_x645 -excluded;dirName.646 = nameConstraints_dirname_x646 -excluded;dirName.647 = nameConstraints_dirname_x647 -excluded;dirName.648 = nameConstraints_dirname_x648 -excluded;dirName.649 = nameConstraints_dirname_x649 -excluded;dirName.650 = nameConstraints_dirname_x650 -excluded;dirName.651 = nameConstraints_dirname_x651 -excluded;dirName.652 = nameConstraints_dirname_x652 -excluded;dirName.653 = nameConstraints_dirname_x653 -excluded;dirName.654 = nameConstraints_dirname_x654 -excluded;dirName.655 = nameConstraints_dirname_x655 -excluded;dirName.656 = nameConstraints_dirname_x656 -excluded;dirName.657 = nameConstraints_dirname_x657 -excluded;dirName.658 = nameConstraints_dirname_x658 -excluded;dirName.659 = nameConstraints_dirname_x659 -excluded;dirName.660 = nameConstraints_dirname_x660 -excluded;dirName.661 = nameConstraints_dirname_x661 -excluded;dirName.662 = nameConstraints_dirname_x662 -excluded;dirName.663 = nameConstraints_dirname_x663 -excluded;dirName.664 = nameConstraints_dirname_x664 -excluded;dirName.665 = nameConstraints_dirname_x665 -excluded;dirName.666 = nameConstraints_dirname_x666 -excluded;dirName.667 = nameConstraints_dirname_x667 -excluded;dirName.668 = nameConstraints_dirname_x668 -excluded;dirName.669 = nameConstraints_dirname_x669 -excluded;dirName.670 = nameConstraints_dirname_x670 -excluded;dirName.671 = nameConstraints_dirname_x671 -excluded;dirName.672 = nameConstraints_dirname_x672 -excluded;dirName.673 = nameConstraints_dirname_x673 -excluded;dirName.674 = nameConstraints_dirname_x674 -excluded;dirName.675 = nameConstraints_dirname_x675 -excluded;dirName.676 = nameConstraints_dirname_x676 -excluded;dirName.677 = nameConstraints_dirname_x677 -excluded;dirName.678 = nameConstraints_dirname_x678 -excluded;dirName.679 = nameConstraints_dirname_x679 -excluded;dirName.680 = nameConstraints_dirname_x680 -excluded;dirName.681 = nameConstraints_dirname_x681 -excluded;dirName.682 = nameConstraints_dirname_x682 -excluded;dirName.683 = nameConstraints_dirname_x683 -excluded;dirName.684 = nameConstraints_dirname_x684 -excluded;dirName.685 = nameConstraints_dirname_x685 -excluded;dirName.686 = nameConstraints_dirname_x686 -excluded;dirName.687 = nameConstraints_dirname_x687 -excluded;dirName.688 = nameConstraints_dirname_x688 -excluded;dirName.689 = nameConstraints_dirname_x689 -excluded;dirName.690 = nameConstraints_dirname_x690 -excluded;dirName.691 = nameConstraints_dirname_x691 -excluded;dirName.692 = nameConstraints_dirname_x692 -excluded;dirName.693 = nameConstraints_dirname_x693 -excluded;dirName.694 = nameConstraints_dirname_x694 -excluded;dirName.695 = nameConstraints_dirname_x695 -excluded;dirName.696 = nameConstraints_dirname_x696 -excluded;dirName.697 = nameConstraints_dirname_x697 -excluded;dirName.698 = nameConstraints_dirname_x698 -excluded;dirName.699 = nameConstraints_dirname_x699 -excluded;dirName.700 = nameConstraints_dirname_x700 -excluded;dirName.701 = nameConstraints_dirname_x701 -excluded;dirName.702 = nameConstraints_dirname_x702 -excluded;dirName.703 = nameConstraints_dirname_x703 -excluded;dirName.704 = nameConstraints_dirname_x704 -excluded;dirName.705 = nameConstraints_dirname_x705 -excluded;dirName.706 = nameConstraints_dirname_x706 -excluded;dirName.707 = nameConstraints_dirname_x707 -excluded;dirName.708 = nameConstraints_dirname_x708 -excluded;dirName.709 = nameConstraints_dirname_x709 -excluded;dirName.710 = nameConstraints_dirname_x710 -excluded;dirName.711 = nameConstraints_dirname_x711 -excluded;dirName.712 = nameConstraints_dirname_x712 -excluded;dirName.713 = nameConstraints_dirname_x713 -excluded;dirName.714 = nameConstraints_dirname_x714 -excluded;dirName.715 = nameConstraints_dirname_x715 -excluded;dirName.716 = nameConstraints_dirname_x716 -excluded;dirName.717 = nameConstraints_dirname_x717 -excluded;dirName.718 = nameConstraints_dirname_x718 -excluded;dirName.719 = nameConstraints_dirname_x719 -excluded;dirName.720 = nameConstraints_dirname_x720 -excluded;dirName.721 = nameConstraints_dirname_x721 -excluded;dirName.722 = nameConstraints_dirname_x722 -excluded;dirName.723 = nameConstraints_dirname_x723 -excluded;dirName.724 = nameConstraints_dirname_x724 -excluded;dirName.725 = nameConstraints_dirname_x725 -excluded;dirName.726 = nameConstraints_dirname_x726 -excluded;dirName.727 = nameConstraints_dirname_x727 -excluded;dirName.728 = nameConstraints_dirname_x728 -excluded;dirName.729 = nameConstraints_dirname_x729 -excluded;dirName.730 = nameConstraints_dirname_x730 -excluded;dirName.731 = nameConstraints_dirname_x731 -excluded;dirName.732 = nameConstraints_dirname_x732 -excluded;dirName.733 = nameConstraints_dirname_x733 -excluded;dirName.734 = nameConstraints_dirname_x734 -excluded;dirName.735 = nameConstraints_dirname_x735 -excluded;dirName.736 = nameConstraints_dirname_x736 -excluded;dirName.737 = nameConstraints_dirname_x737 -excluded;dirName.738 = nameConstraints_dirname_x738 -excluded;dirName.739 = nameConstraints_dirname_x739 -excluded;dirName.740 = nameConstraints_dirname_x740 -excluded;dirName.741 = nameConstraints_dirname_x741 -excluded;dirName.742 = nameConstraints_dirname_x742 -excluded;dirName.743 = nameConstraints_dirname_x743 -excluded;dirName.744 = nameConstraints_dirname_x744 -excluded;dirName.745 = nameConstraints_dirname_x745 -excluded;dirName.746 = nameConstraints_dirname_x746 -excluded;dirName.747 = nameConstraints_dirname_x747 -excluded;dirName.748 = nameConstraints_dirname_x748 -excluded;dirName.749 = nameConstraints_dirname_x749 -excluded;dirName.750 = nameConstraints_dirname_x750 -excluded;dirName.751 = nameConstraints_dirname_x751 -excluded;dirName.752 = nameConstraints_dirname_x752 -excluded;dirName.753 = nameConstraints_dirname_x753 -excluded;dirName.754 = nameConstraints_dirname_x754 -excluded;dirName.755 = nameConstraints_dirname_x755 -excluded;dirName.756 = nameConstraints_dirname_x756 -excluded;dirName.757 = nameConstraints_dirname_x757 -excluded;dirName.758 = nameConstraints_dirname_x758 -excluded;dirName.759 = nameConstraints_dirname_x759 -excluded;dirName.760 = nameConstraints_dirname_x760 -excluded;dirName.761 = nameConstraints_dirname_x761 -excluded;dirName.762 = nameConstraints_dirname_x762 -excluded;dirName.763 = nameConstraints_dirname_x763 -excluded;dirName.764 = nameConstraints_dirname_x764 -excluded;dirName.765 = nameConstraints_dirname_x765 -excluded;dirName.766 = nameConstraints_dirname_x766 -excluded;dirName.767 = nameConstraints_dirname_x767 -excluded;dirName.768 = nameConstraints_dirname_x768 -excluded;dirName.769 = nameConstraints_dirname_x769 -excluded;dirName.770 = nameConstraints_dirname_x770 -excluded;dirName.771 = nameConstraints_dirname_x771 -excluded;dirName.772 = nameConstraints_dirname_x772 -excluded;dirName.773 = nameConstraints_dirname_x773 -excluded;dirName.774 = nameConstraints_dirname_x774 -excluded;dirName.775 = nameConstraints_dirname_x775 -excluded;dirName.776 = nameConstraints_dirname_x776 -excluded;dirName.777 = nameConstraints_dirname_x777 -excluded;dirName.778 = nameConstraints_dirname_x778 -excluded;dirName.779 = nameConstraints_dirname_x779 -excluded;dirName.780 = nameConstraints_dirname_x780 -excluded;dirName.781 = nameConstraints_dirname_x781 -excluded;dirName.782 = nameConstraints_dirname_x782 -excluded;dirName.783 = nameConstraints_dirname_x783 -excluded;dirName.784 = nameConstraints_dirname_x784 -excluded;dirName.785 = nameConstraints_dirname_x785 -excluded;dirName.786 = nameConstraints_dirname_x786 -excluded;dirName.787 = nameConstraints_dirname_x787 -excluded;dirName.788 = nameConstraints_dirname_x788 -excluded;dirName.789 = nameConstraints_dirname_x789 -excluded;dirName.790 = nameConstraints_dirname_x790 -excluded;dirName.791 = nameConstraints_dirname_x791 -excluded;dirName.792 = nameConstraints_dirname_x792 -excluded;dirName.793 = nameConstraints_dirname_x793 -excluded;dirName.794 = nameConstraints_dirname_x794 -excluded;dirName.795 = nameConstraints_dirname_x795 -excluded;dirName.796 = nameConstraints_dirname_x796 -excluded;dirName.797 = nameConstraints_dirname_x797 -excluded;dirName.798 = nameConstraints_dirname_x798 -excluded;dirName.799 = nameConstraints_dirname_x799 -excluded;dirName.800 = nameConstraints_dirname_x800 -excluded;dirName.801 = nameConstraints_dirname_x801 -excluded;dirName.802 = nameConstraints_dirname_x802 -excluded;dirName.803 = nameConstraints_dirname_x803 -excluded;dirName.804 = nameConstraints_dirname_x804 -excluded;dirName.805 = nameConstraints_dirname_x805 -excluded;dirName.806 = nameConstraints_dirname_x806 -excluded;dirName.807 = nameConstraints_dirname_x807 -excluded;dirName.808 = nameConstraints_dirname_x808 -excluded;dirName.809 = nameConstraints_dirname_x809 -excluded;dirName.810 = nameConstraints_dirname_x810 -excluded;dirName.811 = nameConstraints_dirname_x811 -excluded;dirName.812 = nameConstraints_dirname_x812 -excluded;dirName.813 = nameConstraints_dirname_x813 -excluded;dirName.814 = nameConstraints_dirname_x814 -excluded;dirName.815 = nameConstraints_dirname_x815 -excluded;dirName.816 = nameConstraints_dirname_x816 -excluded;dirName.817 = nameConstraints_dirname_x817 -excluded;dirName.818 = nameConstraints_dirname_x818 -excluded;dirName.819 = nameConstraints_dirname_x819 -excluded;dirName.820 = nameConstraints_dirname_x820 -excluded;dirName.821 = nameConstraints_dirname_x821 -excluded;dirName.822 = nameConstraints_dirname_x822 -excluded;dirName.823 = nameConstraints_dirname_x823 -excluded;dirName.824 = nameConstraints_dirname_x824 -excluded;dirName.825 = nameConstraints_dirname_x825 -excluded;dirName.826 = nameConstraints_dirname_x826 -excluded;dirName.827 = nameConstraints_dirname_x827 -excluded;dirName.828 = nameConstraints_dirname_x828 -excluded;dirName.829 = nameConstraints_dirname_x829 -excluded;dirName.830 = nameConstraints_dirname_x830 -excluded;dirName.831 = nameConstraints_dirname_x831 -excluded;dirName.832 = nameConstraints_dirname_x832 -excluded;dirName.833 = nameConstraints_dirname_x833 -excluded;dirName.834 = nameConstraints_dirname_x834 -excluded;dirName.835 = nameConstraints_dirname_x835 -excluded;dirName.836 = nameConstraints_dirname_x836 -excluded;dirName.837 = nameConstraints_dirname_x837 -excluded;dirName.838 = nameConstraints_dirname_x838 -excluded;dirName.839 = nameConstraints_dirname_x839 -excluded;dirName.840 = nameConstraints_dirname_x840 -excluded;dirName.841 = nameConstraints_dirname_x841 -excluded;dirName.842 = nameConstraints_dirname_x842 -excluded;dirName.843 = nameConstraints_dirname_x843 -excluded;dirName.844 = nameConstraints_dirname_x844 -excluded;dirName.845 = nameConstraints_dirname_x845 -excluded;dirName.846 = nameConstraints_dirname_x846 -excluded;dirName.847 = nameConstraints_dirname_x847 -excluded;dirName.848 = nameConstraints_dirname_x848 -excluded;dirName.849 = nameConstraints_dirname_x849 -excluded;dirName.850 = nameConstraints_dirname_x850 -excluded;dirName.851 = nameConstraints_dirname_x851 -excluded;dirName.852 = nameConstraints_dirname_x852 -excluded;dirName.853 = nameConstraints_dirname_x853 -excluded;dirName.854 = nameConstraints_dirname_x854 -excluded;dirName.855 = nameConstraints_dirname_x855 -excluded;dirName.856 = nameConstraints_dirname_x856 -excluded;dirName.857 = nameConstraints_dirname_x857 -excluded;dirName.858 = nameConstraints_dirname_x858 -excluded;dirName.859 = nameConstraints_dirname_x859 -excluded;dirName.860 = nameConstraints_dirname_x860 -excluded;dirName.861 = nameConstraints_dirname_x861 -excluded;dirName.862 = nameConstraints_dirname_x862 -excluded;dirName.863 = nameConstraints_dirname_x863 -excluded;dirName.864 = nameConstraints_dirname_x864 -excluded;dirName.865 = nameConstraints_dirname_x865 -excluded;dirName.866 = nameConstraints_dirname_x866 -excluded;dirName.867 = nameConstraints_dirname_x867 -excluded;dirName.868 = nameConstraints_dirname_x868 -excluded;dirName.869 = nameConstraints_dirname_x869 -excluded;dirName.870 = nameConstraints_dirname_x870 -excluded;dirName.871 = nameConstraints_dirname_x871 -excluded;dirName.872 = nameConstraints_dirname_x872 -excluded;dirName.873 = nameConstraints_dirname_x873 -excluded;dirName.874 = nameConstraints_dirname_x874 -excluded;dirName.875 = nameConstraints_dirname_x875 -excluded;dirName.876 = nameConstraints_dirname_x876 -excluded;dirName.877 = nameConstraints_dirname_x877 -excluded;dirName.878 = nameConstraints_dirname_x878 -excluded;dirName.879 = nameConstraints_dirname_x879 -excluded;dirName.880 = nameConstraints_dirname_x880 -excluded;dirName.881 = nameConstraints_dirname_x881 -excluded;dirName.882 = nameConstraints_dirname_x882 -excluded;dirName.883 = nameConstraints_dirname_x883 -excluded;dirName.884 = nameConstraints_dirname_x884 -excluded;dirName.885 = nameConstraints_dirname_x885 -excluded;dirName.886 = nameConstraints_dirname_x886 -excluded;dirName.887 = nameConstraints_dirname_x887 -excluded;dirName.888 = nameConstraints_dirname_x888 -excluded;dirName.889 = nameConstraints_dirname_x889 -excluded;dirName.890 = nameConstraints_dirname_x890 -excluded;dirName.891 = nameConstraints_dirname_x891 -excluded;dirName.892 = nameConstraints_dirname_x892 -excluded;dirName.893 = nameConstraints_dirname_x893 -excluded;dirName.894 = nameConstraints_dirname_x894 -excluded;dirName.895 = nameConstraints_dirname_x895 -excluded;dirName.896 = nameConstraints_dirname_x896 -excluded;dirName.897 = nameConstraints_dirname_x897 -excluded;dirName.898 = nameConstraints_dirname_x898 -excluded;dirName.899 = nameConstraints_dirname_x899 -excluded;dirName.900 = nameConstraints_dirname_x900 -excluded;dirName.901 = nameConstraints_dirname_x901 -excluded;dirName.902 = nameConstraints_dirname_x902 -excluded;dirName.903 = nameConstraints_dirname_x903 -excluded;dirName.904 = nameConstraints_dirname_x904 -excluded;dirName.905 = nameConstraints_dirname_x905 -excluded;dirName.906 = nameConstraints_dirname_x906 -excluded;dirName.907 = nameConstraints_dirname_x907 -excluded;dirName.908 = nameConstraints_dirname_x908 -excluded;dirName.909 = nameConstraints_dirname_x909 -excluded;dirName.910 = nameConstraints_dirname_x910 -excluded;dirName.911 = nameConstraints_dirname_x911 -excluded;dirName.912 = nameConstraints_dirname_x912 -excluded;dirName.913 = nameConstraints_dirname_x913 -excluded;dirName.914 = nameConstraints_dirname_x914 -excluded;dirName.915 = nameConstraints_dirname_x915 -excluded;dirName.916 = nameConstraints_dirname_x916 -excluded;dirName.917 = nameConstraints_dirname_x917 -excluded;dirName.918 = nameConstraints_dirname_x918 -excluded;dirName.919 = nameConstraints_dirname_x919 -excluded;dirName.920 = nameConstraints_dirname_x920 -excluded;dirName.921 = nameConstraints_dirname_x921 -excluded;dirName.922 = nameConstraints_dirname_x922 -excluded;dirName.923 = nameConstraints_dirname_x923 -excluded;dirName.924 = nameConstraints_dirname_x924 -excluded;dirName.925 = nameConstraints_dirname_x925 -excluded;dirName.926 = nameConstraints_dirname_x926 -excluded;dirName.927 = nameConstraints_dirname_x927 -excluded;dirName.928 = nameConstraints_dirname_x928 -excluded;dirName.929 = nameConstraints_dirname_x929 -excluded;dirName.930 = nameConstraints_dirname_x930 -excluded;dirName.931 = nameConstraints_dirname_x931 -excluded;dirName.932 = nameConstraints_dirname_x932 -excluded;dirName.933 = nameConstraints_dirname_x933 -excluded;dirName.934 = nameConstraints_dirname_x934 -excluded;dirName.935 = nameConstraints_dirname_x935 -excluded;dirName.936 = nameConstraints_dirname_x936 -excluded;dirName.937 = nameConstraints_dirname_x937 -excluded;dirName.938 = nameConstraints_dirname_x938 -excluded;dirName.939 = nameConstraints_dirname_x939 -excluded;dirName.940 = nameConstraints_dirname_x940 -excluded;dirName.941 = nameConstraints_dirname_x941 -excluded;dirName.942 = nameConstraints_dirname_x942 -excluded;dirName.943 = nameConstraints_dirname_x943 -excluded;dirName.944 = nameConstraints_dirname_x944 -excluded;dirName.945 = nameConstraints_dirname_x945 -excluded;dirName.946 = nameConstraints_dirname_x946 -excluded;dirName.947 = nameConstraints_dirname_x947 -excluded;dirName.948 = nameConstraints_dirname_x948 -excluded;dirName.949 = nameConstraints_dirname_x949 -excluded;dirName.950 = nameConstraints_dirname_x950 -excluded;dirName.951 = nameConstraints_dirname_x951 -excluded;dirName.952 = nameConstraints_dirname_x952 -excluded;dirName.953 = nameConstraints_dirname_x953 -excluded;dirName.954 = nameConstraints_dirname_x954 -excluded;dirName.955 = nameConstraints_dirname_x955 -excluded;dirName.956 = nameConstraints_dirname_x956 -excluded;dirName.957 = nameConstraints_dirname_x957 -excluded;dirName.958 = nameConstraints_dirname_x958 -excluded;dirName.959 = nameConstraints_dirname_x959 -excluded;dirName.960 = nameConstraints_dirname_x960 -excluded;dirName.961 = nameConstraints_dirname_x961 -excluded;dirName.962 = nameConstraints_dirname_x962 -excluded;dirName.963 = nameConstraints_dirname_x963 -excluded;dirName.964 = nameConstraints_dirname_x964 -excluded;dirName.965 = nameConstraints_dirname_x965 -excluded;dirName.966 = nameConstraints_dirname_x966 -excluded;dirName.967 = nameConstraints_dirname_x967 -excluded;dirName.968 = nameConstraints_dirname_x968 -excluded;dirName.969 = nameConstraints_dirname_x969 -excluded;dirName.970 = nameConstraints_dirname_x970 -excluded;dirName.971 = nameConstraints_dirname_x971 -excluded;dirName.972 = nameConstraints_dirname_x972 -excluded;dirName.973 = nameConstraints_dirname_x973 -excluded;dirName.974 = nameConstraints_dirname_x974 -excluded;dirName.975 = nameConstraints_dirname_x975 -excluded;dirName.976 = nameConstraints_dirname_x976 -excluded;dirName.977 = nameConstraints_dirname_x977 -excluded;dirName.978 = nameConstraints_dirname_x978 -excluded;dirName.979 = nameConstraints_dirname_x979 -excluded;dirName.980 = nameConstraints_dirname_x980 -excluded;dirName.981 = nameConstraints_dirname_x981 -excluded;dirName.982 = nameConstraints_dirname_x982 -excluded;dirName.983 = nameConstraints_dirname_x983 -excluded;dirName.984 = nameConstraints_dirname_x984 -excluded;dirName.985 = nameConstraints_dirname_x985 -excluded;dirName.986 = nameConstraints_dirname_x986 -excluded;dirName.987 = nameConstraints_dirname_x987 -excluded;dirName.988 = nameConstraints_dirname_x988 -excluded;dirName.989 = nameConstraints_dirname_x989 -excluded;dirName.990 = nameConstraints_dirname_x990 -excluded;dirName.991 = nameConstraints_dirname_x991 -excluded;dirName.992 = nameConstraints_dirname_x992 -excluded;dirName.993 = nameConstraints_dirname_x993 -excluded;dirName.994 = nameConstraints_dirname_x994 -excluded;dirName.995 = nameConstraints_dirname_x995 -excluded;dirName.996 = nameConstraints_dirname_x996 -excluded;dirName.997 = nameConstraints_dirname_x997 -excluded;dirName.998 = nameConstraints_dirname_x998 -excluded;dirName.999 = nameConstraints_dirname_x999 -excluded;dirName.1000 = nameConstraints_dirname_x1000 -excluded;dirName.1001 = nameConstraints_dirname_x1001 -excluded;dirName.1002 = nameConstraints_dirname_x1002 -excluded;dirName.1003 = nameConstraints_dirname_x1003 -excluded;dirName.1004 = nameConstraints_dirname_x1004 -excluded;dirName.1005 = nameConstraints_dirname_x1005 -excluded;dirName.1006 = nameConstraints_dirname_x1006 -excluded;dirName.1007 = nameConstraints_dirname_x1007 -excluded;dirName.1008 = nameConstraints_dirname_x1008 -excluded;dirName.1009 = nameConstraints_dirname_x1009 -excluded;dirName.1010 = nameConstraints_dirname_x1010 -excluded;dirName.1011 = nameConstraints_dirname_x1011 -excluded;dirName.1012 = nameConstraints_dirname_x1012 -excluded;dirName.1013 = nameConstraints_dirname_x1013 -excluded;dirName.1014 = nameConstraints_dirname_x1014 -excluded;dirName.1015 = nameConstraints_dirname_x1015 -excluded;dirName.1016 = nameConstraints_dirname_x1016 -excluded;dirName.1017 = nameConstraints_dirname_x1017 -excluded;dirName.1018 = nameConstraints_dirname_x1018 -excluded;dirName.1019 = nameConstraints_dirname_x1019 -excluded;dirName.1020 = nameConstraints_dirname_x1020 -excluded;dirName.1021 = nameConstraints_dirname_x1021 -excluded;dirName.1022 = nameConstraints_dirname_x1022 -excluded;dirName.1023 = nameConstraints_dirname_x1023 -excluded;dirName.1024 = nameConstraints_dirname_x1024 -excluded;dirName.1025 = nameConstraints_dirname_x1025 - -[nameConstraints_dirname_x1] -commonName = "x0 - -[nameConstraints_dirname_x2] -commonName = "x1 - -[nameConstraints_dirname_x3] -commonName = "x2 - -[nameConstraints_dirname_x4] -commonName = "x3 - -[nameConstraints_dirname_x5] -commonName = "x4 - -[nameConstraints_dirname_x6] -commonName = "x5 - -[nameConstraints_dirname_x7] -commonName = "x6 - -[nameConstraints_dirname_x8] -commonName = "x7 - -[nameConstraints_dirname_x9] -commonName = "x8 - -[nameConstraints_dirname_x10] -commonName = "x9 - -[nameConstraints_dirname_x11] -commonName = "x10 - -[nameConstraints_dirname_x12] -commonName = "x11 - -[nameConstraints_dirname_x13] -commonName = "x12 - -[nameConstraints_dirname_x14] -commonName = "x13 - -[nameConstraints_dirname_x15] -commonName = "x14 - -[nameConstraints_dirname_x16] -commonName = "x15 - -[nameConstraints_dirname_x17] -commonName = "x16 - -[nameConstraints_dirname_x18] -commonName = "x17 - -[nameConstraints_dirname_x19] -commonName = "x18 - -[nameConstraints_dirname_x20] -commonName = "x19 - -[nameConstraints_dirname_x21] -commonName = "x20 - -[nameConstraints_dirname_x22] -commonName = "x21 - -[nameConstraints_dirname_x23] -commonName = "x22 - -[nameConstraints_dirname_x24] -commonName = "x23 - -[nameConstraints_dirname_x25] -commonName = "x24 - -[nameConstraints_dirname_x26] -commonName = "x25 - -[nameConstraints_dirname_x27] -commonName = "x26 - -[nameConstraints_dirname_x28] -commonName = "x27 - -[nameConstraints_dirname_x29] -commonName = "x28 - -[nameConstraints_dirname_x30] -commonName = "x29 - -[nameConstraints_dirname_x31] -commonName = "x30 - -[nameConstraints_dirname_x32] -commonName = "x31 - -[nameConstraints_dirname_x33] -commonName = "x32 - -[nameConstraints_dirname_x34] -commonName = "x33 - -[nameConstraints_dirname_x35] -commonName = "x34 - -[nameConstraints_dirname_x36] -commonName = "x35 - -[nameConstraints_dirname_x37] -commonName = "x36 - -[nameConstraints_dirname_x38] -commonName = "x37 - -[nameConstraints_dirname_x39] -commonName = "x38 - -[nameConstraints_dirname_x40] -commonName = "x39 - -[nameConstraints_dirname_x41] -commonName = "x40 - -[nameConstraints_dirname_x42] -commonName = "x41 - -[nameConstraints_dirname_x43] -commonName = "x42 - -[nameConstraints_dirname_x44] -commonName = "x43 - -[nameConstraints_dirname_x45] -commonName = "x44 - -[nameConstraints_dirname_x46] -commonName = "x45 - -[nameConstraints_dirname_x47] -commonName = "x46 - -[nameConstraints_dirname_x48] -commonName = "x47 - -[nameConstraints_dirname_x49] -commonName = "x48 - -[nameConstraints_dirname_x50] -commonName = "x49 - -[nameConstraints_dirname_x51] -commonName = "x50 - -[nameConstraints_dirname_x52] -commonName = "x51 - -[nameConstraints_dirname_x53] -commonName = "x52 - -[nameConstraints_dirname_x54] -commonName = "x53 - -[nameConstraints_dirname_x55] -commonName = "x54 - -[nameConstraints_dirname_x56] -commonName = "x55 - -[nameConstraints_dirname_x57] -commonName = "x56 - -[nameConstraints_dirname_x58] -commonName = "x57 - -[nameConstraints_dirname_x59] -commonName = "x58 - -[nameConstraints_dirname_x60] -commonName = "x59 - -[nameConstraints_dirname_x61] -commonName = "x60 - -[nameConstraints_dirname_x62] -commonName = "x61 - -[nameConstraints_dirname_x63] -commonName = "x62 - -[nameConstraints_dirname_x64] -commonName = "x63 - -[nameConstraints_dirname_x65] -commonName = "x64 - -[nameConstraints_dirname_x66] -commonName = "x65 - -[nameConstraints_dirname_x67] -commonName = "x66 - -[nameConstraints_dirname_x68] -commonName = "x67 - -[nameConstraints_dirname_x69] -commonName = "x68 - -[nameConstraints_dirname_x70] -commonName = "x69 - -[nameConstraints_dirname_x71] -commonName = "x70 - -[nameConstraints_dirname_x72] -commonName = "x71 - -[nameConstraints_dirname_x73] -commonName = "x72 - -[nameConstraints_dirname_x74] -commonName = "x73 - -[nameConstraints_dirname_x75] -commonName = "x74 - -[nameConstraints_dirname_x76] -commonName = "x75 - -[nameConstraints_dirname_x77] -commonName = "x76 - -[nameConstraints_dirname_x78] -commonName = "x77 - -[nameConstraints_dirname_x79] -commonName = "x78 - -[nameConstraints_dirname_x80] -commonName = "x79 - -[nameConstraints_dirname_x81] -commonName = "x80 - -[nameConstraints_dirname_x82] -commonName = "x81 - -[nameConstraints_dirname_x83] -commonName = "x82 - -[nameConstraints_dirname_x84] -commonName = "x83 - -[nameConstraints_dirname_x85] -commonName = "x84 - -[nameConstraints_dirname_x86] -commonName = "x85 - -[nameConstraints_dirname_x87] -commonName = "x86 - -[nameConstraints_dirname_x88] -commonName = "x87 - -[nameConstraints_dirname_x89] -commonName = "x88 - -[nameConstraints_dirname_x90] -commonName = "x89 - -[nameConstraints_dirname_x91] -commonName = "x90 - -[nameConstraints_dirname_x92] -commonName = "x91 - -[nameConstraints_dirname_x93] -commonName = "x92 - -[nameConstraints_dirname_x94] -commonName = "x93 - -[nameConstraints_dirname_x95] -commonName = "x94 - -[nameConstraints_dirname_x96] -commonName = "x95 - -[nameConstraints_dirname_x97] -commonName = "x96 - -[nameConstraints_dirname_x98] -commonName = "x97 - -[nameConstraints_dirname_x99] -commonName = "x98 - -[nameConstraints_dirname_x100] -commonName = "x99 - -[nameConstraints_dirname_x101] -commonName = "x100 - -[nameConstraints_dirname_x102] -commonName = "x101 - -[nameConstraints_dirname_x103] -commonName = "x102 - -[nameConstraints_dirname_x104] -commonName = "x103 - -[nameConstraints_dirname_x105] -commonName = "x104 - -[nameConstraints_dirname_x106] -commonName = "x105 - -[nameConstraints_dirname_x107] -commonName = "x106 - -[nameConstraints_dirname_x108] -commonName = "x107 - -[nameConstraints_dirname_x109] -commonName = "x108 - -[nameConstraints_dirname_x110] -commonName = "x109 - -[nameConstraints_dirname_x111] -commonName = "x110 - -[nameConstraints_dirname_x112] -commonName = "x111 - -[nameConstraints_dirname_x113] -commonName = "x112 - -[nameConstraints_dirname_x114] -commonName = "x113 - -[nameConstraints_dirname_x115] -commonName = "x114 - -[nameConstraints_dirname_x116] -commonName = "x115 - -[nameConstraints_dirname_x117] -commonName = "x116 - -[nameConstraints_dirname_x118] -commonName = "x117 - -[nameConstraints_dirname_x119] -commonName = "x118 - -[nameConstraints_dirname_x120] -commonName = "x119 - -[nameConstraints_dirname_x121] -commonName = "x120 - -[nameConstraints_dirname_x122] -commonName = "x121 - -[nameConstraints_dirname_x123] -commonName = "x122 - -[nameConstraints_dirname_x124] -commonName = "x123 - -[nameConstraints_dirname_x125] -commonName = "x124 - -[nameConstraints_dirname_x126] -commonName = "x125 - -[nameConstraints_dirname_x127] -commonName = "x126 - -[nameConstraints_dirname_x128] -commonName = "x127 - -[nameConstraints_dirname_x129] -commonName = "x128 - -[nameConstraints_dirname_x130] -commonName = "x129 - -[nameConstraints_dirname_x131] -commonName = "x130 - -[nameConstraints_dirname_x132] -commonName = "x131 - -[nameConstraints_dirname_x133] -commonName = "x132 - -[nameConstraints_dirname_x134] -commonName = "x133 - -[nameConstraints_dirname_x135] -commonName = "x134 - -[nameConstraints_dirname_x136] -commonName = "x135 - -[nameConstraints_dirname_x137] -commonName = "x136 - -[nameConstraints_dirname_x138] -commonName = "x137 - -[nameConstraints_dirname_x139] -commonName = "x138 - -[nameConstraints_dirname_x140] -commonName = "x139 - -[nameConstraints_dirname_x141] -commonName = "x140 - -[nameConstraints_dirname_x142] -commonName = "x141 - -[nameConstraints_dirname_x143] -commonName = "x142 - -[nameConstraints_dirname_x144] -commonName = "x143 - -[nameConstraints_dirname_x145] -commonName = "x144 - -[nameConstraints_dirname_x146] -commonName = "x145 - -[nameConstraints_dirname_x147] -commonName = "x146 - -[nameConstraints_dirname_x148] -commonName = "x147 - -[nameConstraints_dirname_x149] -commonName = "x148 - -[nameConstraints_dirname_x150] -commonName = "x149 - -[nameConstraints_dirname_x151] -commonName = "x150 - -[nameConstraints_dirname_x152] -commonName = "x151 - -[nameConstraints_dirname_x153] -commonName = "x152 - -[nameConstraints_dirname_x154] -commonName = "x153 - -[nameConstraints_dirname_x155] -commonName = "x154 - -[nameConstraints_dirname_x156] -commonName = "x155 - -[nameConstraints_dirname_x157] -commonName = "x156 - -[nameConstraints_dirname_x158] -commonName = "x157 - -[nameConstraints_dirname_x159] -commonName = "x158 - -[nameConstraints_dirname_x160] -commonName = "x159 - -[nameConstraints_dirname_x161] -commonName = "x160 - -[nameConstraints_dirname_x162] -commonName = "x161 - -[nameConstraints_dirname_x163] -commonName = "x162 - -[nameConstraints_dirname_x164] -commonName = "x163 - -[nameConstraints_dirname_x165] -commonName = "x164 - -[nameConstraints_dirname_x166] -commonName = "x165 - -[nameConstraints_dirname_x167] -commonName = "x166 - -[nameConstraints_dirname_x168] -commonName = "x167 - -[nameConstraints_dirname_x169] -commonName = "x168 - -[nameConstraints_dirname_x170] -commonName = "x169 - -[nameConstraints_dirname_x171] -commonName = "x170 - -[nameConstraints_dirname_x172] -commonName = "x171 - -[nameConstraints_dirname_x173] -commonName = "x172 - -[nameConstraints_dirname_x174] -commonName = "x173 - -[nameConstraints_dirname_x175] -commonName = "x174 - -[nameConstraints_dirname_x176] -commonName = "x175 - -[nameConstraints_dirname_x177] -commonName = "x176 - -[nameConstraints_dirname_x178] -commonName = "x177 - -[nameConstraints_dirname_x179] -commonName = "x178 - -[nameConstraints_dirname_x180] -commonName = "x179 - -[nameConstraints_dirname_x181] -commonName = "x180 - -[nameConstraints_dirname_x182] -commonName = "x181 - -[nameConstraints_dirname_x183] -commonName = "x182 - -[nameConstraints_dirname_x184] -commonName = "x183 - -[nameConstraints_dirname_x185] -commonName = "x184 - -[nameConstraints_dirname_x186] -commonName = "x185 - -[nameConstraints_dirname_x187] -commonName = "x186 - -[nameConstraints_dirname_x188] -commonName = "x187 - -[nameConstraints_dirname_x189] -commonName = "x188 - -[nameConstraints_dirname_x190] -commonName = "x189 - -[nameConstraints_dirname_x191] -commonName = "x190 - -[nameConstraints_dirname_x192] -commonName = "x191 - -[nameConstraints_dirname_x193] -commonName = "x192 - -[nameConstraints_dirname_x194] -commonName = "x193 - -[nameConstraints_dirname_x195] -commonName = "x194 - -[nameConstraints_dirname_x196] -commonName = "x195 - -[nameConstraints_dirname_x197] -commonName = "x196 - -[nameConstraints_dirname_x198] -commonName = "x197 - -[nameConstraints_dirname_x199] -commonName = "x198 - -[nameConstraints_dirname_x200] -commonName = "x199 - -[nameConstraints_dirname_x201] -commonName = "x200 - -[nameConstraints_dirname_x202] -commonName = "x201 - -[nameConstraints_dirname_x203] -commonName = "x202 - -[nameConstraints_dirname_x204] -commonName = "x203 - -[nameConstraints_dirname_x205] -commonName = "x204 - -[nameConstraints_dirname_x206] -commonName = "x205 - -[nameConstraints_dirname_x207] -commonName = "x206 - -[nameConstraints_dirname_x208] -commonName = "x207 - -[nameConstraints_dirname_x209] -commonName = "x208 - -[nameConstraints_dirname_x210] -commonName = "x209 - -[nameConstraints_dirname_x211] -commonName = "x210 - -[nameConstraints_dirname_x212] -commonName = "x211 - -[nameConstraints_dirname_x213] -commonName = "x212 - -[nameConstraints_dirname_x214] -commonName = "x213 - -[nameConstraints_dirname_x215] -commonName = "x214 - -[nameConstraints_dirname_x216] -commonName = "x215 - -[nameConstraints_dirname_x217] -commonName = "x216 - -[nameConstraints_dirname_x218] -commonName = "x217 - -[nameConstraints_dirname_x219] -commonName = "x218 - -[nameConstraints_dirname_x220] -commonName = "x219 - -[nameConstraints_dirname_x221] -commonName = "x220 - -[nameConstraints_dirname_x222] -commonName = "x221 - -[nameConstraints_dirname_x223] -commonName = "x222 - -[nameConstraints_dirname_x224] -commonName = "x223 - -[nameConstraints_dirname_x225] -commonName = "x224 - -[nameConstraints_dirname_x226] -commonName = "x225 - -[nameConstraints_dirname_x227] -commonName = "x226 - -[nameConstraints_dirname_x228] -commonName = "x227 - -[nameConstraints_dirname_x229] -commonName = "x228 - -[nameConstraints_dirname_x230] -commonName = "x229 - -[nameConstraints_dirname_x231] -commonName = "x230 - -[nameConstraints_dirname_x232] -commonName = "x231 - -[nameConstraints_dirname_x233] -commonName = "x232 - -[nameConstraints_dirname_x234] -commonName = "x233 - -[nameConstraints_dirname_x235] -commonName = "x234 - -[nameConstraints_dirname_x236] -commonName = "x235 - -[nameConstraints_dirname_x237] -commonName = "x236 - -[nameConstraints_dirname_x238] -commonName = "x237 - -[nameConstraints_dirname_x239] -commonName = "x238 - -[nameConstraints_dirname_x240] -commonName = "x239 - -[nameConstraints_dirname_x241] -commonName = "x240 - -[nameConstraints_dirname_x242] -commonName = "x241 - -[nameConstraints_dirname_x243] -commonName = "x242 - -[nameConstraints_dirname_x244] -commonName = "x243 - -[nameConstraints_dirname_x245] -commonName = "x244 - -[nameConstraints_dirname_x246] -commonName = "x245 - -[nameConstraints_dirname_x247] -commonName = "x246 - -[nameConstraints_dirname_x248] -commonName = "x247 - -[nameConstraints_dirname_x249] -commonName = "x248 - -[nameConstraints_dirname_x250] -commonName = "x249 - -[nameConstraints_dirname_x251] -commonName = "x250 - -[nameConstraints_dirname_x252] -commonName = "x251 - -[nameConstraints_dirname_x253] -commonName = "x252 - -[nameConstraints_dirname_x254] -commonName = "x253 - -[nameConstraints_dirname_x255] -commonName = "x254 - -[nameConstraints_dirname_x256] -commonName = "x255 - -[nameConstraints_dirname_x257] -commonName = "x256 - -[nameConstraints_dirname_x258] -commonName = "x257 - -[nameConstraints_dirname_x259] -commonName = "x258 - -[nameConstraints_dirname_x260] -commonName = "x259 - -[nameConstraints_dirname_x261] -commonName = "x260 - -[nameConstraints_dirname_x262] -commonName = "x261 - -[nameConstraints_dirname_x263] -commonName = "x262 - -[nameConstraints_dirname_x264] -commonName = "x263 - -[nameConstraints_dirname_x265] -commonName = "x264 - -[nameConstraints_dirname_x266] -commonName = "x265 - -[nameConstraints_dirname_x267] -commonName = "x266 - -[nameConstraints_dirname_x268] -commonName = "x267 - -[nameConstraints_dirname_x269] -commonName = "x268 - -[nameConstraints_dirname_x270] -commonName = "x269 - -[nameConstraints_dirname_x271] -commonName = "x270 - -[nameConstraints_dirname_x272] -commonName = "x271 - -[nameConstraints_dirname_x273] -commonName = "x272 - -[nameConstraints_dirname_x274] -commonName = "x273 - -[nameConstraints_dirname_x275] -commonName = "x274 - -[nameConstraints_dirname_x276] -commonName = "x275 - -[nameConstraints_dirname_x277] -commonName = "x276 - -[nameConstraints_dirname_x278] -commonName = "x277 - -[nameConstraints_dirname_x279] -commonName = "x278 - -[nameConstraints_dirname_x280] -commonName = "x279 - -[nameConstraints_dirname_x281] -commonName = "x280 - -[nameConstraints_dirname_x282] -commonName = "x281 - -[nameConstraints_dirname_x283] -commonName = "x282 - -[nameConstraints_dirname_x284] -commonName = "x283 - -[nameConstraints_dirname_x285] -commonName = "x284 - -[nameConstraints_dirname_x286] -commonName = "x285 - -[nameConstraints_dirname_x287] -commonName = "x286 - -[nameConstraints_dirname_x288] -commonName = "x287 - -[nameConstraints_dirname_x289] -commonName = "x288 - -[nameConstraints_dirname_x290] -commonName = "x289 - -[nameConstraints_dirname_x291] -commonName = "x290 - -[nameConstraints_dirname_x292] -commonName = "x291 - -[nameConstraints_dirname_x293] -commonName = "x292 - -[nameConstraints_dirname_x294] -commonName = "x293 - -[nameConstraints_dirname_x295] -commonName = "x294 - -[nameConstraints_dirname_x296] -commonName = "x295 - -[nameConstraints_dirname_x297] -commonName = "x296 - -[nameConstraints_dirname_x298] -commonName = "x297 - -[nameConstraints_dirname_x299] -commonName = "x298 - -[nameConstraints_dirname_x300] -commonName = "x299 - -[nameConstraints_dirname_x301] -commonName = "x300 - -[nameConstraints_dirname_x302] -commonName = "x301 - -[nameConstraints_dirname_x303] -commonName = "x302 - -[nameConstraints_dirname_x304] -commonName = "x303 - -[nameConstraints_dirname_x305] -commonName = "x304 - -[nameConstraints_dirname_x306] -commonName = "x305 - -[nameConstraints_dirname_x307] -commonName = "x306 - -[nameConstraints_dirname_x308] -commonName = "x307 - -[nameConstraints_dirname_x309] -commonName = "x308 - -[nameConstraints_dirname_x310] -commonName = "x309 - -[nameConstraints_dirname_x311] -commonName = "x310 - -[nameConstraints_dirname_x312] -commonName = "x311 - -[nameConstraints_dirname_x313] -commonName = "x312 - -[nameConstraints_dirname_x314] -commonName = "x313 - -[nameConstraints_dirname_x315] -commonName = "x314 - -[nameConstraints_dirname_x316] -commonName = "x315 - -[nameConstraints_dirname_x317] -commonName = "x316 - -[nameConstraints_dirname_x318] -commonName = "x317 - -[nameConstraints_dirname_x319] -commonName = "x318 - -[nameConstraints_dirname_x320] -commonName = "x319 - -[nameConstraints_dirname_x321] -commonName = "x320 - -[nameConstraints_dirname_x322] -commonName = "x321 - -[nameConstraints_dirname_x323] -commonName = "x322 - -[nameConstraints_dirname_x324] -commonName = "x323 - -[nameConstraints_dirname_x325] -commonName = "x324 - -[nameConstraints_dirname_x326] -commonName = "x325 - -[nameConstraints_dirname_x327] -commonName = "x326 - -[nameConstraints_dirname_x328] -commonName = "x327 - -[nameConstraints_dirname_x329] -commonName = "x328 - -[nameConstraints_dirname_x330] -commonName = "x329 - -[nameConstraints_dirname_x331] -commonName = "x330 - -[nameConstraints_dirname_x332] -commonName = "x331 - -[nameConstraints_dirname_x333] -commonName = "x332 - -[nameConstraints_dirname_x334] -commonName = "x333 - -[nameConstraints_dirname_x335] -commonName = "x334 - -[nameConstraints_dirname_x336] -commonName = "x335 - -[nameConstraints_dirname_x337] -commonName = "x336 - -[nameConstraints_dirname_x338] -commonName = "x337 - -[nameConstraints_dirname_x339] -commonName = "x338 - -[nameConstraints_dirname_x340] -commonName = "x339 - -[nameConstraints_dirname_x341] -commonName = "x340 - -[nameConstraints_dirname_x342] -commonName = "x341 - -[nameConstraints_dirname_x343] -commonName = "x342 - -[nameConstraints_dirname_x344] -commonName = "x343 - -[nameConstraints_dirname_x345] -commonName = "x344 - -[nameConstraints_dirname_x346] -commonName = "x345 - -[nameConstraints_dirname_x347] -commonName = "x346 - -[nameConstraints_dirname_x348] -commonName = "x347 - -[nameConstraints_dirname_x349] -commonName = "x348 - -[nameConstraints_dirname_x350] -commonName = "x349 - -[nameConstraints_dirname_x351] -commonName = "x350 - -[nameConstraints_dirname_x352] -commonName = "x351 - -[nameConstraints_dirname_x353] -commonName = "x352 - -[nameConstraints_dirname_x354] -commonName = "x353 - -[nameConstraints_dirname_x355] -commonName = "x354 - -[nameConstraints_dirname_x356] -commonName = "x355 - -[nameConstraints_dirname_x357] -commonName = "x356 - -[nameConstraints_dirname_x358] -commonName = "x357 - -[nameConstraints_dirname_x359] -commonName = "x358 - -[nameConstraints_dirname_x360] -commonName = "x359 - -[nameConstraints_dirname_x361] -commonName = "x360 - -[nameConstraints_dirname_x362] -commonName = "x361 - -[nameConstraints_dirname_x363] -commonName = "x362 - -[nameConstraints_dirname_x364] -commonName = "x363 - -[nameConstraints_dirname_x365] -commonName = "x364 - -[nameConstraints_dirname_x366] -commonName = "x365 - -[nameConstraints_dirname_x367] -commonName = "x366 - -[nameConstraints_dirname_x368] -commonName = "x367 - -[nameConstraints_dirname_x369] -commonName = "x368 - -[nameConstraints_dirname_x370] -commonName = "x369 - -[nameConstraints_dirname_x371] -commonName = "x370 - -[nameConstraints_dirname_x372] -commonName = "x371 - -[nameConstraints_dirname_x373] -commonName = "x372 - -[nameConstraints_dirname_x374] -commonName = "x373 - -[nameConstraints_dirname_x375] -commonName = "x374 - -[nameConstraints_dirname_x376] -commonName = "x375 - -[nameConstraints_dirname_x377] -commonName = "x376 - -[nameConstraints_dirname_x378] -commonName = "x377 - -[nameConstraints_dirname_x379] -commonName = "x378 - -[nameConstraints_dirname_x380] -commonName = "x379 - -[nameConstraints_dirname_x381] -commonName = "x380 - -[nameConstraints_dirname_x382] -commonName = "x381 - -[nameConstraints_dirname_x383] -commonName = "x382 - -[nameConstraints_dirname_x384] -commonName = "x383 - -[nameConstraints_dirname_x385] -commonName = "x384 - -[nameConstraints_dirname_x386] -commonName = "x385 - -[nameConstraints_dirname_x387] -commonName = "x386 - -[nameConstraints_dirname_x388] -commonName = "x387 - -[nameConstraints_dirname_x389] -commonName = "x388 - -[nameConstraints_dirname_x390] -commonName = "x389 - -[nameConstraints_dirname_x391] -commonName = "x390 - -[nameConstraints_dirname_x392] -commonName = "x391 - -[nameConstraints_dirname_x393] -commonName = "x392 - -[nameConstraints_dirname_x394] -commonName = "x393 - -[nameConstraints_dirname_x395] -commonName = "x394 - -[nameConstraints_dirname_x396] -commonName = "x395 - -[nameConstraints_dirname_x397] -commonName = "x396 - -[nameConstraints_dirname_x398] -commonName = "x397 - -[nameConstraints_dirname_x399] -commonName = "x398 - -[nameConstraints_dirname_x400] -commonName = "x399 - -[nameConstraints_dirname_x401] -commonName = "x400 - -[nameConstraints_dirname_x402] -commonName = "x401 - -[nameConstraints_dirname_x403] -commonName = "x402 - -[nameConstraints_dirname_x404] -commonName = "x403 - -[nameConstraints_dirname_x405] -commonName = "x404 - -[nameConstraints_dirname_x406] -commonName = "x405 - -[nameConstraints_dirname_x407] -commonName = "x406 - -[nameConstraints_dirname_x408] -commonName = "x407 - -[nameConstraints_dirname_x409] -commonName = "x408 - -[nameConstraints_dirname_x410] -commonName = "x409 - -[nameConstraints_dirname_x411] -commonName = "x410 - -[nameConstraints_dirname_x412] -commonName = "x411 - -[nameConstraints_dirname_x413] -commonName = "x412 - -[nameConstraints_dirname_x414] -commonName = "x413 - -[nameConstraints_dirname_x415] -commonName = "x414 - -[nameConstraints_dirname_x416] -commonName = "x415 - -[nameConstraints_dirname_x417] -commonName = "x416 - -[nameConstraints_dirname_x418] -commonName = "x417 - -[nameConstraints_dirname_x419] -commonName = "x418 - -[nameConstraints_dirname_x420] -commonName = "x419 - -[nameConstraints_dirname_x421] -commonName = "x420 - -[nameConstraints_dirname_x422] -commonName = "x421 - -[nameConstraints_dirname_x423] -commonName = "x422 - -[nameConstraints_dirname_x424] -commonName = "x423 - -[nameConstraints_dirname_x425] -commonName = "x424 - -[nameConstraints_dirname_x426] -commonName = "x425 - -[nameConstraints_dirname_x427] -commonName = "x426 - -[nameConstraints_dirname_x428] -commonName = "x427 - -[nameConstraints_dirname_x429] -commonName = "x428 - -[nameConstraints_dirname_x430] -commonName = "x429 - -[nameConstraints_dirname_x431] -commonName = "x430 - -[nameConstraints_dirname_x432] -commonName = "x431 - -[nameConstraints_dirname_x433] -commonName = "x432 - -[nameConstraints_dirname_x434] -commonName = "x433 - -[nameConstraints_dirname_x435] -commonName = "x434 - -[nameConstraints_dirname_x436] -commonName = "x435 - -[nameConstraints_dirname_x437] -commonName = "x436 - -[nameConstraints_dirname_x438] -commonName = "x437 - -[nameConstraints_dirname_x439] -commonName = "x438 - -[nameConstraints_dirname_x440] -commonName = "x439 - -[nameConstraints_dirname_x441] -commonName = "x440 - -[nameConstraints_dirname_x442] -commonName = "x441 - -[nameConstraints_dirname_x443] -commonName = "x442 - -[nameConstraints_dirname_x444] -commonName = "x443 - -[nameConstraints_dirname_x445] -commonName = "x444 - -[nameConstraints_dirname_x446] -commonName = "x445 - -[nameConstraints_dirname_x447] -commonName = "x446 - -[nameConstraints_dirname_x448] -commonName = "x447 - -[nameConstraints_dirname_x449] -commonName = "x448 - -[nameConstraints_dirname_x450] -commonName = "x449 - -[nameConstraints_dirname_x451] -commonName = "x450 - -[nameConstraints_dirname_x452] -commonName = "x451 - -[nameConstraints_dirname_x453] -commonName = "x452 - -[nameConstraints_dirname_x454] -commonName = "x453 - -[nameConstraints_dirname_x455] -commonName = "x454 - -[nameConstraints_dirname_x456] -commonName = "x455 - -[nameConstraints_dirname_x457] -commonName = "x456 - -[nameConstraints_dirname_x458] -commonName = "x457 - -[nameConstraints_dirname_x459] -commonName = "x458 - -[nameConstraints_dirname_x460] -commonName = "x459 - -[nameConstraints_dirname_x461] -commonName = "x460 - -[nameConstraints_dirname_x462] -commonName = "x461 - -[nameConstraints_dirname_x463] -commonName = "x462 - -[nameConstraints_dirname_x464] -commonName = "x463 - -[nameConstraints_dirname_x465] -commonName = "x464 - -[nameConstraints_dirname_x466] -commonName = "x465 - -[nameConstraints_dirname_x467] -commonName = "x466 - -[nameConstraints_dirname_x468] -commonName = "x467 - -[nameConstraints_dirname_x469] -commonName = "x468 - -[nameConstraints_dirname_x470] -commonName = "x469 - -[nameConstraints_dirname_x471] -commonName = "x470 - -[nameConstraints_dirname_x472] -commonName = "x471 - -[nameConstraints_dirname_x473] -commonName = "x472 - -[nameConstraints_dirname_x474] -commonName = "x473 - -[nameConstraints_dirname_x475] -commonName = "x474 - -[nameConstraints_dirname_x476] -commonName = "x475 - -[nameConstraints_dirname_x477] -commonName = "x476 - -[nameConstraints_dirname_x478] -commonName = "x477 - -[nameConstraints_dirname_x479] -commonName = "x478 - -[nameConstraints_dirname_x480] -commonName = "x479 - -[nameConstraints_dirname_x481] -commonName = "x480 - -[nameConstraints_dirname_x482] -commonName = "x481 - -[nameConstraints_dirname_x483] -commonName = "x482 - -[nameConstraints_dirname_x484] -commonName = "x483 - -[nameConstraints_dirname_x485] -commonName = "x484 - -[nameConstraints_dirname_x486] -commonName = "x485 - -[nameConstraints_dirname_x487] -commonName = "x486 - -[nameConstraints_dirname_x488] -commonName = "x487 - -[nameConstraints_dirname_x489] -commonName = "x488 - -[nameConstraints_dirname_x490] -commonName = "x489 - -[nameConstraints_dirname_x491] -commonName = "x490 - -[nameConstraints_dirname_x492] -commonName = "x491 - -[nameConstraints_dirname_x493] -commonName = "x492 - -[nameConstraints_dirname_x494] -commonName = "x493 - -[nameConstraints_dirname_x495] -commonName = "x494 - -[nameConstraints_dirname_x496] -commonName = "x495 - -[nameConstraints_dirname_x497] -commonName = "x496 - -[nameConstraints_dirname_x498] -commonName = "x497 - -[nameConstraints_dirname_x499] -commonName = "x498 - -[nameConstraints_dirname_x500] -commonName = "x499 - -[nameConstraints_dirname_x501] -commonName = "x500 - -[nameConstraints_dirname_x502] -commonName = "x501 - -[nameConstraints_dirname_x503] -commonName = "x502 - -[nameConstraints_dirname_x504] -commonName = "x503 - -[nameConstraints_dirname_x505] -commonName = "x504 - -[nameConstraints_dirname_x506] -commonName = "x505 - -[nameConstraints_dirname_x507] -commonName = "x506 - -[nameConstraints_dirname_x508] -commonName = "x507 - -[nameConstraints_dirname_x509] -commonName = "x508 - -[nameConstraints_dirname_x510] -commonName = "x509 - -[nameConstraints_dirname_x511] -commonName = "x510 - -[nameConstraints_dirname_x512] -commonName = "x511 - -[nameConstraints_dirname_x513] -commonName = "x512 - -[nameConstraints_dirname_x514] -commonName = "x513 - -[nameConstraints_dirname_x515] -commonName = "x514 - -[nameConstraints_dirname_x516] -commonName = "x515 - -[nameConstraints_dirname_x517] -commonName = "x516 - -[nameConstraints_dirname_x518] -commonName = "x517 - -[nameConstraints_dirname_x519] -commonName = "x518 - -[nameConstraints_dirname_x520] -commonName = "x519 - -[nameConstraints_dirname_x521] -commonName = "x520 - -[nameConstraints_dirname_x522] -commonName = "x521 - -[nameConstraints_dirname_x523] -commonName = "x522 - -[nameConstraints_dirname_x524] -commonName = "x523 - -[nameConstraints_dirname_x525] -commonName = "x524 - -[nameConstraints_dirname_x526] -commonName = "x525 - -[nameConstraints_dirname_x527] -commonName = "x526 - -[nameConstraints_dirname_x528] -commonName = "x527 - -[nameConstraints_dirname_x529] -commonName = "x528 - -[nameConstraints_dirname_x530] -commonName = "x529 - -[nameConstraints_dirname_x531] -commonName = "x530 - -[nameConstraints_dirname_x532] -commonName = "x531 - -[nameConstraints_dirname_x533] -commonName = "x532 - -[nameConstraints_dirname_x534] -commonName = "x533 - -[nameConstraints_dirname_x535] -commonName = "x534 - -[nameConstraints_dirname_x536] -commonName = "x535 - -[nameConstraints_dirname_x537] -commonName = "x536 - -[nameConstraints_dirname_x538] -commonName = "x537 - -[nameConstraints_dirname_x539] -commonName = "x538 - -[nameConstraints_dirname_x540] -commonName = "x539 - -[nameConstraints_dirname_x541] -commonName = "x540 - -[nameConstraints_dirname_x542] -commonName = "x541 - -[nameConstraints_dirname_x543] -commonName = "x542 - -[nameConstraints_dirname_x544] -commonName = "x543 - -[nameConstraints_dirname_x545] -commonName = "x544 - -[nameConstraints_dirname_x546] -commonName = "x545 - -[nameConstraints_dirname_x547] -commonName = "x546 - -[nameConstraints_dirname_x548] -commonName = "x547 - -[nameConstraints_dirname_x549] -commonName = "x548 - -[nameConstraints_dirname_x550] -commonName = "x549 - -[nameConstraints_dirname_x551] -commonName = "x550 - -[nameConstraints_dirname_x552] -commonName = "x551 - -[nameConstraints_dirname_x553] -commonName = "x552 - -[nameConstraints_dirname_x554] -commonName = "x553 - -[nameConstraints_dirname_x555] -commonName = "x554 - -[nameConstraints_dirname_x556] -commonName = "x555 - -[nameConstraints_dirname_x557] -commonName = "x556 - -[nameConstraints_dirname_x558] -commonName = "x557 - -[nameConstraints_dirname_x559] -commonName = "x558 - -[nameConstraints_dirname_x560] -commonName = "x559 - -[nameConstraints_dirname_x561] -commonName = "x560 - -[nameConstraints_dirname_x562] -commonName = "x561 - -[nameConstraints_dirname_x563] -commonName = "x562 - -[nameConstraints_dirname_x564] -commonName = "x563 - -[nameConstraints_dirname_x565] -commonName = "x564 - -[nameConstraints_dirname_x566] -commonName = "x565 - -[nameConstraints_dirname_x567] -commonName = "x566 - -[nameConstraints_dirname_x568] -commonName = "x567 - -[nameConstraints_dirname_x569] -commonName = "x568 - -[nameConstraints_dirname_x570] -commonName = "x569 - -[nameConstraints_dirname_x571] -commonName = "x570 - -[nameConstraints_dirname_x572] -commonName = "x571 - -[nameConstraints_dirname_x573] -commonName = "x572 - -[nameConstraints_dirname_x574] -commonName = "x573 - -[nameConstraints_dirname_x575] -commonName = "x574 - -[nameConstraints_dirname_x576] -commonName = "x575 - -[nameConstraints_dirname_x577] -commonName = "x576 - -[nameConstraints_dirname_x578] -commonName = "x577 - -[nameConstraints_dirname_x579] -commonName = "x578 - -[nameConstraints_dirname_x580] -commonName = "x579 - -[nameConstraints_dirname_x581] -commonName = "x580 - -[nameConstraints_dirname_x582] -commonName = "x581 - -[nameConstraints_dirname_x583] -commonName = "x582 - -[nameConstraints_dirname_x584] -commonName = "x583 - -[nameConstraints_dirname_x585] -commonName = "x584 - -[nameConstraints_dirname_x586] -commonName = "x585 - -[nameConstraints_dirname_x587] -commonName = "x586 - -[nameConstraints_dirname_x588] -commonName = "x587 - -[nameConstraints_dirname_x589] -commonName = "x588 - -[nameConstraints_dirname_x590] -commonName = "x589 - -[nameConstraints_dirname_x591] -commonName = "x590 - -[nameConstraints_dirname_x592] -commonName = "x591 - -[nameConstraints_dirname_x593] -commonName = "x592 - -[nameConstraints_dirname_x594] -commonName = "x593 - -[nameConstraints_dirname_x595] -commonName = "x594 - -[nameConstraints_dirname_x596] -commonName = "x595 - -[nameConstraints_dirname_x597] -commonName = "x596 - -[nameConstraints_dirname_x598] -commonName = "x597 - -[nameConstraints_dirname_x599] -commonName = "x598 - -[nameConstraints_dirname_x600] -commonName = "x599 - -[nameConstraints_dirname_x601] -commonName = "x600 - -[nameConstraints_dirname_x602] -commonName = "x601 - -[nameConstraints_dirname_x603] -commonName = "x602 - -[nameConstraints_dirname_x604] -commonName = "x603 - -[nameConstraints_dirname_x605] -commonName = "x604 - -[nameConstraints_dirname_x606] -commonName = "x605 - -[nameConstraints_dirname_x607] -commonName = "x606 - -[nameConstraints_dirname_x608] -commonName = "x607 - -[nameConstraints_dirname_x609] -commonName = "x608 - -[nameConstraints_dirname_x610] -commonName = "x609 - -[nameConstraints_dirname_x611] -commonName = "x610 - -[nameConstraints_dirname_x612] -commonName = "x611 - -[nameConstraints_dirname_x613] -commonName = "x612 - -[nameConstraints_dirname_x614] -commonName = "x613 - -[nameConstraints_dirname_x615] -commonName = "x614 - -[nameConstraints_dirname_x616] -commonName = "x615 - -[nameConstraints_dirname_x617] -commonName = "x616 - -[nameConstraints_dirname_x618] -commonName = "x617 - -[nameConstraints_dirname_x619] -commonName = "x618 - -[nameConstraints_dirname_x620] -commonName = "x619 - -[nameConstraints_dirname_x621] -commonName = "x620 - -[nameConstraints_dirname_x622] -commonName = "x621 - -[nameConstraints_dirname_x623] -commonName = "x622 - -[nameConstraints_dirname_x624] -commonName = "x623 - -[nameConstraints_dirname_x625] -commonName = "x624 - -[nameConstraints_dirname_x626] -commonName = "x625 - -[nameConstraints_dirname_x627] -commonName = "x626 - -[nameConstraints_dirname_x628] -commonName = "x627 - -[nameConstraints_dirname_x629] -commonName = "x628 - -[nameConstraints_dirname_x630] -commonName = "x629 - -[nameConstraints_dirname_x631] -commonName = "x630 - -[nameConstraints_dirname_x632] -commonName = "x631 - -[nameConstraints_dirname_x633] -commonName = "x632 - -[nameConstraints_dirname_x634] -commonName = "x633 - -[nameConstraints_dirname_x635] -commonName = "x634 - -[nameConstraints_dirname_x636] -commonName = "x635 - -[nameConstraints_dirname_x637] -commonName = "x636 - -[nameConstraints_dirname_x638] -commonName = "x637 - -[nameConstraints_dirname_x639] -commonName = "x638 - -[nameConstraints_dirname_x640] -commonName = "x639 - -[nameConstraints_dirname_x641] -commonName = "x640 - -[nameConstraints_dirname_x642] -commonName = "x641 - -[nameConstraints_dirname_x643] -commonName = "x642 - -[nameConstraints_dirname_x644] -commonName = "x643 - -[nameConstraints_dirname_x645] -commonName = "x644 - -[nameConstraints_dirname_x646] -commonName = "x645 - -[nameConstraints_dirname_x647] -commonName = "x646 - -[nameConstraints_dirname_x648] -commonName = "x647 - -[nameConstraints_dirname_x649] -commonName = "x648 - -[nameConstraints_dirname_x650] -commonName = "x649 - -[nameConstraints_dirname_x651] -commonName = "x650 - -[nameConstraints_dirname_x652] -commonName = "x651 - -[nameConstraints_dirname_x653] -commonName = "x652 - -[nameConstraints_dirname_x654] -commonName = "x653 - -[nameConstraints_dirname_x655] -commonName = "x654 - -[nameConstraints_dirname_x656] -commonName = "x655 - -[nameConstraints_dirname_x657] -commonName = "x656 - -[nameConstraints_dirname_x658] -commonName = "x657 - -[nameConstraints_dirname_x659] -commonName = "x658 - -[nameConstraints_dirname_x660] -commonName = "x659 - -[nameConstraints_dirname_x661] -commonName = "x660 - -[nameConstraints_dirname_x662] -commonName = "x661 - -[nameConstraints_dirname_x663] -commonName = "x662 - -[nameConstraints_dirname_x664] -commonName = "x663 - -[nameConstraints_dirname_x665] -commonName = "x664 - -[nameConstraints_dirname_x666] -commonName = "x665 - -[nameConstraints_dirname_x667] -commonName = "x666 - -[nameConstraints_dirname_x668] -commonName = "x667 - -[nameConstraints_dirname_x669] -commonName = "x668 - -[nameConstraints_dirname_x670] -commonName = "x669 - -[nameConstraints_dirname_x671] -commonName = "x670 - -[nameConstraints_dirname_x672] -commonName = "x671 - -[nameConstraints_dirname_x673] -commonName = "x672 - -[nameConstraints_dirname_x674] -commonName = "x673 - -[nameConstraints_dirname_x675] -commonName = "x674 - -[nameConstraints_dirname_x676] -commonName = "x675 - -[nameConstraints_dirname_x677] -commonName = "x676 - -[nameConstraints_dirname_x678] -commonName = "x677 - -[nameConstraints_dirname_x679] -commonName = "x678 - -[nameConstraints_dirname_x680] -commonName = "x679 - -[nameConstraints_dirname_x681] -commonName = "x680 - -[nameConstraints_dirname_x682] -commonName = "x681 - -[nameConstraints_dirname_x683] -commonName = "x682 - -[nameConstraints_dirname_x684] -commonName = "x683 - -[nameConstraints_dirname_x685] -commonName = "x684 - -[nameConstraints_dirname_x686] -commonName = "x685 - -[nameConstraints_dirname_x687] -commonName = "x686 - -[nameConstraints_dirname_x688] -commonName = "x687 - -[nameConstraints_dirname_x689] -commonName = "x688 - -[nameConstraints_dirname_x690] -commonName = "x689 - -[nameConstraints_dirname_x691] -commonName = "x690 - -[nameConstraints_dirname_x692] -commonName = "x691 - -[nameConstraints_dirname_x693] -commonName = "x692 - -[nameConstraints_dirname_x694] -commonName = "x693 - -[nameConstraints_dirname_x695] -commonName = "x694 - -[nameConstraints_dirname_x696] -commonName = "x695 - -[nameConstraints_dirname_x697] -commonName = "x696 - -[nameConstraints_dirname_x698] -commonName = "x697 - -[nameConstraints_dirname_x699] -commonName = "x698 - -[nameConstraints_dirname_x700] -commonName = "x699 - -[nameConstraints_dirname_x701] -commonName = "x700 - -[nameConstraints_dirname_x702] -commonName = "x701 - -[nameConstraints_dirname_x703] -commonName = "x702 - -[nameConstraints_dirname_x704] -commonName = "x703 - -[nameConstraints_dirname_x705] -commonName = "x704 - -[nameConstraints_dirname_x706] -commonName = "x705 - -[nameConstraints_dirname_x707] -commonName = "x706 - -[nameConstraints_dirname_x708] -commonName = "x707 - -[nameConstraints_dirname_x709] -commonName = "x708 - -[nameConstraints_dirname_x710] -commonName = "x709 - -[nameConstraints_dirname_x711] -commonName = "x710 - -[nameConstraints_dirname_x712] -commonName = "x711 - -[nameConstraints_dirname_x713] -commonName = "x712 - -[nameConstraints_dirname_x714] -commonName = "x713 - -[nameConstraints_dirname_x715] -commonName = "x714 - -[nameConstraints_dirname_x716] -commonName = "x715 - -[nameConstraints_dirname_x717] -commonName = "x716 - -[nameConstraints_dirname_x718] -commonName = "x717 - -[nameConstraints_dirname_x719] -commonName = "x718 - -[nameConstraints_dirname_x720] -commonName = "x719 - -[nameConstraints_dirname_x721] -commonName = "x720 - -[nameConstraints_dirname_x722] -commonName = "x721 - -[nameConstraints_dirname_x723] -commonName = "x722 - -[nameConstraints_dirname_x724] -commonName = "x723 - -[nameConstraints_dirname_x725] -commonName = "x724 - -[nameConstraints_dirname_x726] -commonName = "x725 - -[nameConstraints_dirname_x727] -commonName = "x726 - -[nameConstraints_dirname_x728] -commonName = "x727 - -[nameConstraints_dirname_x729] -commonName = "x728 - -[nameConstraints_dirname_x730] -commonName = "x729 - -[nameConstraints_dirname_x731] -commonName = "x730 - -[nameConstraints_dirname_x732] -commonName = "x731 - -[nameConstraints_dirname_x733] -commonName = "x732 - -[nameConstraints_dirname_x734] -commonName = "x733 - -[nameConstraints_dirname_x735] -commonName = "x734 - -[nameConstraints_dirname_x736] -commonName = "x735 - -[nameConstraints_dirname_x737] -commonName = "x736 - -[nameConstraints_dirname_x738] -commonName = "x737 - -[nameConstraints_dirname_x739] -commonName = "x738 - -[nameConstraints_dirname_x740] -commonName = "x739 - -[nameConstraints_dirname_x741] -commonName = "x740 - -[nameConstraints_dirname_x742] -commonName = "x741 - -[nameConstraints_dirname_x743] -commonName = "x742 - -[nameConstraints_dirname_x744] -commonName = "x743 - -[nameConstraints_dirname_x745] -commonName = "x744 - -[nameConstraints_dirname_x746] -commonName = "x745 - -[nameConstraints_dirname_x747] -commonName = "x746 - -[nameConstraints_dirname_x748] -commonName = "x747 - -[nameConstraints_dirname_x749] -commonName = "x748 - -[nameConstraints_dirname_x750] -commonName = "x749 - -[nameConstraints_dirname_x751] -commonName = "x750 - -[nameConstraints_dirname_x752] -commonName = "x751 - -[nameConstraints_dirname_x753] -commonName = "x752 - -[nameConstraints_dirname_x754] -commonName = "x753 - -[nameConstraints_dirname_x755] -commonName = "x754 - -[nameConstraints_dirname_x756] -commonName = "x755 - -[nameConstraints_dirname_x757] -commonName = "x756 - -[nameConstraints_dirname_x758] -commonName = "x757 - -[nameConstraints_dirname_x759] -commonName = "x758 - -[nameConstraints_dirname_x760] -commonName = "x759 - -[nameConstraints_dirname_x761] -commonName = "x760 - -[nameConstraints_dirname_x762] -commonName = "x761 - -[nameConstraints_dirname_x763] -commonName = "x762 - -[nameConstraints_dirname_x764] -commonName = "x763 - -[nameConstraints_dirname_x765] -commonName = "x764 - -[nameConstraints_dirname_x766] -commonName = "x765 - -[nameConstraints_dirname_x767] -commonName = "x766 - -[nameConstraints_dirname_x768] -commonName = "x767 - -[nameConstraints_dirname_x769] -commonName = "x768 - -[nameConstraints_dirname_x770] -commonName = "x769 - -[nameConstraints_dirname_x771] -commonName = "x770 - -[nameConstraints_dirname_x772] -commonName = "x771 - -[nameConstraints_dirname_x773] -commonName = "x772 - -[nameConstraints_dirname_x774] -commonName = "x773 - -[nameConstraints_dirname_x775] -commonName = "x774 - -[nameConstraints_dirname_x776] -commonName = "x775 - -[nameConstraints_dirname_x777] -commonName = "x776 - -[nameConstraints_dirname_x778] -commonName = "x777 - -[nameConstraints_dirname_x779] -commonName = "x778 - -[nameConstraints_dirname_x780] -commonName = "x779 - -[nameConstraints_dirname_x781] -commonName = "x780 - -[nameConstraints_dirname_x782] -commonName = "x781 - -[nameConstraints_dirname_x783] -commonName = "x782 - -[nameConstraints_dirname_x784] -commonName = "x783 - -[nameConstraints_dirname_x785] -commonName = "x784 - -[nameConstraints_dirname_x786] -commonName = "x785 - -[nameConstraints_dirname_x787] -commonName = "x786 - -[nameConstraints_dirname_x788] -commonName = "x787 - -[nameConstraints_dirname_x789] -commonName = "x788 - -[nameConstraints_dirname_x790] -commonName = "x789 - -[nameConstraints_dirname_x791] -commonName = "x790 - -[nameConstraints_dirname_x792] -commonName = "x791 - -[nameConstraints_dirname_x793] -commonName = "x792 - -[nameConstraints_dirname_x794] -commonName = "x793 - -[nameConstraints_dirname_x795] -commonName = "x794 - -[nameConstraints_dirname_x796] -commonName = "x795 - -[nameConstraints_dirname_x797] -commonName = "x796 - -[nameConstraints_dirname_x798] -commonName = "x797 - -[nameConstraints_dirname_x799] -commonName = "x798 - -[nameConstraints_dirname_x800] -commonName = "x799 - -[nameConstraints_dirname_x801] -commonName = "x800 - -[nameConstraints_dirname_x802] -commonName = "x801 - -[nameConstraints_dirname_x803] -commonName = "x802 - -[nameConstraints_dirname_x804] -commonName = "x803 - -[nameConstraints_dirname_x805] -commonName = "x804 - -[nameConstraints_dirname_x806] -commonName = "x805 - -[nameConstraints_dirname_x807] -commonName = "x806 - -[nameConstraints_dirname_x808] -commonName = "x807 - -[nameConstraints_dirname_x809] -commonName = "x808 - -[nameConstraints_dirname_x810] -commonName = "x809 - -[nameConstraints_dirname_x811] -commonName = "x810 - -[nameConstraints_dirname_x812] -commonName = "x811 - -[nameConstraints_dirname_x813] -commonName = "x812 - -[nameConstraints_dirname_x814] -commonName = "x813 - -[nameConstraints_dirname_x815] -commonName = "x814 - -[nameConstraints_dirname_x816] -commonName = "x815 - -[nameConstraints_dirname_x817] -commonName = "x816 - -[nameConstraints_dirname_x818] -commonName = "x817 - -[nameConstraints_dirname_x819] -commonName = "x818 - -[nameConstraints_dirname_x820] -commonName = "x819 - -[nameConstraints_dirname_x821] -commonName = "x820 - -[nameConstraints_dirname_x822] -commonName = "x821 - -[nameConstraints_dirname_x823] -commonName = "x822 - -[nameConstraints_dirname_x824] -commonName = "x823 - -[nameConstraints_dirname_x825] -commonName = "x824 - -[nameConstraints_dirname_x826] -commonName = "x825 - -[nameConstraints_dirname_x827] -commonName = "x826 - -[nameConstraints_dirname_x828] -commonName = "x827 - -[nameConstraints_dirname_x829] -commonName = "x828 - -[nameConstraints_dirname_x830] -commonName = "x829 - -[nameConstraints_dirname_x831] -commonName = "x830 - -[nameConstraints_dirname_x832] -commonName = "x831 - -[nameConstraints_dirname_x833] -commonName = "x832 - -[nameConstraints_dirname_x834] -commonName = "x833 - -[nameConstraints_dirname_x835] -commonName = "x834 - -[nameConstraints_dirname_x836] -commonName = "x835 - -[nameConstraints_dirname_x837] -commonName = "x836 - -[nameConstraints_dirname_x838] -commonName = "x837 - -[nameConstraints_dirname_x839] -commonName = "x838 - -[nameConstraints_dirname_x840] -commonName = "x839 - -[nameConstraints_dirname_x841] -commonName = "x840 - -[nameConstraints_dirname_x842] -commonName = "x841 - -[nameConstraints_dirname_x843] -commonName = "x842 - -[nameConstraints_dirname_x844] -commonName = "x843 - -[nameConstraints_dirname_x845] -commonName = "x844 - -[nameConstraints_dirname_x846] -commonName = "x845 - -[nameConstraints_dirname_x847] -commonName = "x846 - -[nameConstraints_dirname_x848] -commonName = "x847 - -[nameConstraints_dirname_x849] -commonName = "x848 - -[nameConstraints_dirname_x850] -commonName = "x849 - -[nameConstraints_dirname_x851] -commonName = "x850 - -[nameConstraints_dirname_x852] -commonName = "x851 - -[nameConstraints_dirname_x853] -commonName = "x852 - -[nameConstraints_dirname_x854] -commonName = "x853 - -[nameConstraints_dirname_x855] -commonName = "x854 - -[nameConstraints_dirname_x856] -commonName = "x855 - -[nameConstraints_dirname_x857] -commonName = "x856 - -[nameConstraints_dirname_x858] -commonName = "x857 - -[nameConstraints_dirname_x859] -commonName = "x858 - -[nameConstraints_dirname_x860] -commonName = "x859 - -[nameConstraints_dirname_x861] -commonName = "x860 - -[nameConstraints_dirname_x862] -commonName = "x861 - -[nameConstraints_dirname_x863] -commonName = "x862 - -[nameConstraints_dirname_x864] -commonName = "x863 - -[nameConstraints_dirname_x865] -commonName = "x864 - -[nameConstraints_dirname_x866] -commonName = "x865 - -[nameConstraints_dirname_x867] -commonName = "x866 - -[nameConstraints_dirname_x868] -commonName = "x867 - -[nameConstraints_dirname_x869] -commonName = "x868 - -[nameConstraints_dirname_x870] -commonName = "x869 - -[nameConstraints_dirname_x871] -commonName = "x870 - -[nameConstraints_dirname_x872] -commonName = "x871 - -[nameConstraints_dirname_x873] -commonName = "x872 - -[nameConstraints_dirname_x874] -commonName = "x873 - -[nameConstraints_dirname_x875] -commonName = "x874 - -[nameConstraints_dirname_x876] -commonName = "x875 - -[nameConstraints_dirname_x877] -commonName = "x876 - -[nameConstraints_dirname_x878] -commonName = "x877 - -[nameConstraints_dirname_x879] -commonName = "x878 - -[nameConstraints_dirname_x880] -commonName = "x879 - -[nameConstraints_dirname_x881] -commonName = "x880 - -[nameConstraints_dirname_x882] -commonName = "x881 - -[nameConstraints_dirname_x883] -commonName = "x882 - -[nameConstraints_dirname_x884] -commonName = "x883 - -[nameConstraints_dirname_x885] -commonName = "x884 - -[nameConstraints_dirname_x886] -commonName = "x885 - -[nameConstraints_dirname_x887] -commonName = "x886 - -[nameConstraints_dirname_x888] -commonName = "x887 - -[nameConstraints_dirname_x889] -commonName = "x888 - -[nameConstraints_dirname_x890] -commonName = "x889 - -[nameConstraints_dirname_x891] -commonName = "x890 - -[nameConstraints_dirname_x892] -commonName = "x891 - -[nameConstraints_dirname_x893] -commonName = "x892 - -[nameConstraints_dirname_x894] -commonName = "x893 - -[nameConstraints_dirname_x895] -commonName = "x894 - -[nameConstraints_dirname_x896] -commonName = "x895 - -[nameConstraints_dirname_x897] -commonName = "x896 - -[nameConstraints_dirname_x898] -commonName = "x897 - -[nameConstraints_dirname_x899] -commonName = "x898 - -[nameConstraints_dirname_x900] -commonName = "x899 - -[nameConstraints_dirname_x901] -commonName = "x900 - -[nameConstraints_dirname_x902] -commonName = "x901 - -[nameConstraints_dirname_x903] -commonName = "x902 - -[nameConstraints_dirname_x904] -commonName = "x903 - -[nameConstraints_dirname_x905] -commonName = "x904 - -[nameConstraints_dirname_x906] -commonName = "x905 - -[nameConstraints_dirname_x907] -commonName = "x906 - -[nameConstraints_dirname_x908] -commonName = "x907 - -[nameConstraints_dirname_x909] -commonName = "x908 - -[nameConstraints_dirname_x910] -commonName = "x909 - -[nameConstraints_dirname_x911] -commonName = "x910 - -[nameConstraints_dirname_x912] -commonName = "x911 - -[nameConstraints_dirname_x913] -commonName = "x912 - -[nameConstraints_dirname_x914] -commonName = "x913 - -[nameConstraints_dirname_x915] -commonName = "x914 - -[nameConstraints_dirname_x916] -commonName = "x915 - -[nameConstraints_dirname_x917] -commonName = "x916 - -[nameConstraints_dirname_x918] -commonName = "x917 - -[nameConstraints_dirname_x919] -commonName = "x918 - -[nameConstraints_dirname_x920] -commonName = "x919 - -[nameConstraints_dirname_x921] -commonName = "x920 - -[nameConstraints_dirname_x922] -commonName = "x921 - -[nameConstraints_dirname_x923] -commonName = "x922 - -[nameConstraints_dirname_x924] -commonName = "x923 - -[nameConstraints_dirname_x925] -commonName = "x924 - -[nameConstraints_dirname_x926] -commonName = "x925 - -[nameConstraints_dirname_x927] -commonName = "x926 - -[nameConstraints_dirname_x928] -commonName = "x927 - -[nameConstraints_dirname_x929] -commonName = "x928 - -[nameConstraints_dirname_x930] -commonName = "x929 - -[nameConstraints_dirname_x931] -commonName = "x930 - -[nameConstraints_dirname_x932] -commonName = "x931 - -[nameConstraints_dirname_x933] -commonName = "x932 - -[nameConstraints_dirname_x934] -commonName = "x933 - -[nameConstraints_dirname_x935] -commonName = "x934 - -[nameConstraints_dirname_x936] -commonName = "x935 - -[nameConstraints_dirname_x937] -commonName = "x936 - -[nameConstraints_dirname_x938] -commonName = "x937 - -[nameConstraints_dirname_x939] -commonName = "x938 - -[nameConstraints_dirname_x940] -commonName = "x939 - -[nameConstraints_dirname_x941] -commonName = "x940 - -[nameConstraints_dirname_x942] -commonName = "x941 - -[nameConstraints_dirname_x943] -commonName = "x942 - -[nameConstraints_dirname_x944] -commonName = "x943 - -[nameConstraints_dirname_x945] -commonName = "x944 - -[nameConstraints_dirname_x946] -commonName = "x945 - -[nameConstraints_dirname_x947] -commonName = "x946 - -[nameConstraints_dirname_x948] -commonName = "x947 - -[nameConstraints_dirname_x949] -commonName = "x948 - -[nameConstraints_dirname_x950] -commonName = "x949 - -[nameConstraints_dirname_x951] -commonName = "x950 - -[nameConstraints_dirname_x952] -commonName = "x951 - -[nameConstraints_dirname_x953] -commonName = "x952 - -[nameConstraints_dirname_x954] -commonName = "x953 - -[nameConstraints_dirname_x955] -commonName = "x954 - -[nameConstraints_dirname_x956] -commonName = "x955 - -[nameConstraints_dirname_x957] -commonName = "x956 - -[nameConstraints_dirname_x958] -commonName = "x957 - -[nameConstraints_dirname_x959] -commonName = "x958 - -[nameConstraints_dirname_x960] -commonName = "x959 - -[nameConstraints_dirname_x961] -commonName = "x960 - -[nameConstraints_dirname_x962] -commonName = "x961 - -[nameConstraints_dirname_x963] -commonName = "x962 - -[nameConstraints_dirname_x964] -commonName = "x963 - -[nameConstraints_dirname_x965] -commonName = "x964 - -[nameConstraints_dirname_x966] -commonName = "x965 - -[nameConstraints_dirname_x967] -commonName = "x966 - -[nameConstraints_dirname_x968] -commonName = "x967 - -[nameConstraints_dirname_x969] -commonName = "x968 - -[nameConstraints_dirname_x970] -commonName = "x969 - -[nameConstraints_dirname_x971] -commonName = "x970 - -[nameConstraints_dirname_x972] -commonName = "x971 - -[nameConstraints_dirname_x973] -commonName = "x972 - -[nameConstraints_dirname_x974] -commonName = "x973 - -[nameConstraints_dirname_x975] -commonName = "x974 - -[nameConstraints_dirname_x976] -commonName = "x975 - -[nameConstraints_dirname_x977] -commonName = "x976 - -[nameConstraints_dirname_x978] -commonName = "x977 - -[nameConstraints_dirname_x979] -commonName = "x978 - -[nameConstraints_dirname_x980] -commonName = "x979 - -[nameConstraints_dirname_x981] -commonName = "x980 - -[nameConstraints_dirname_x982] -commonName = "x981 - -[nameConstraints_dirname_x983] -commonName = "x982 - -[nameConstraints_dirname_x984] -commonName = "x983 - -[nameConstraints_dirname_x985] -commonName = "x984 - -[nameConstraints_dirname_x986] -commonName = "x985 - -[nameConstraints_dirname_x987] -commonName = "x986 - -[nameConstraints_dirname_x988] -commonName = "x987 - -[nameConstraints_dirname_x989] -commonName = "x988 - -[nameConstraints_dirname_x990] -commonName = "x989 - -[nameConstraints_dirname_x991] -commonName = "x990 - -[nameConstraints_dirname_x992] -commonName = "x991 - -[nameConstraints_dirname_x993] -commonName = "x992 - -[nameConstraints_dirname_x994] -commonName = "x993 - -[nameConstraints_dirname_x995] -commonName = "x994 - -[nameConstraints_dirname_x996] -commonName = "x995 - -[nameConstraints_dirname_x997] -commonName = "x996 - -[nameConstraints_dirname_x998] -commonName = "x997 - -[nameConstraints_dirname_x999] -commonName = "x998 - -[nameConstraints_dirname_x1000] -commonName = "x999 - -[nameConstraints_dirname_x1001] -commonName = "x1000 - -[nameConstraints_dirname_x1002] -commonName = "x1001 - -[nameConstraints_dirname_x1003] -commonName = "x1002 - -[nameConstraints_dirname_x1004] -commonName = "x1003 - -[nameConstraints_dirname_x1005] -commonName = "x1004 - -[nameConstraints_dirname_x1006] -commonName = "x1005 - -[nameConstraints_dirname_x1007] -commonName = "x1006 - -[nameConstraints_dirname_x1008] -commonName = "x1007 - -[nameConstraints_dirname_x1009] -commonName = "x1008 - -[nameConstraints_dirname_x1010] -commonName = "x1009 - -[nameConstraints_dirname_x1011] -commonName = "x1010 - -[nameConstraints_dirname_x1012] -commonName = "x1011 - -[nameConstraints_dirname_x1013] -commonName = "x1012 - -[nameConstraints_dirname_x1014] -commonName = "x1013 - -[nameConstraints_dirname_x1015] -commonName = "x1014 - -[nameConstraints_dirname_x1016] -commonName = "x1015 - -[nameConstraints_dirname_x1017] -commonName = "x1016 - -[nameConstraints_dirname_x1018] -commonName = "x1017 - -[nameConstraints_dirname_x1019] -commonName = "x1018 - -[nameConstraints_dirname_x1020] -commonName = "x1019 - -[nameConstraints_dirname_x1021] -commonName = "x1020 - -[nameConstraints_dirname_x1022] -commonName = "x1021 - -[nameConstraints_dirname_x1023] -commonName = "x1022 - -[nameConstraints_dirname_x1024] -commonName = "x1023 - -[nameConstraints_dirname_x1025] -commonName = "x1024 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.csr deleted file mode 100644 index 53639207f1..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.csr +++ /dev/null @@ -1,464 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIJWijCCVXICAQAwFzEVMBMGA1UEAwwMSW50ZXJtZWRpYXRlMIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzvbBG4X4FRSuiN3JLw043DZmZ5TXTMLqcxL -Ha4GJxiOVbqtEscdMlltwxYg22Kmd4AS4IdYUVXjZn/R4DoiZeVwJqIEBPBd+V9W -yNroD1cod26aoEpTNBpjN6JDqw5KzQcj3VWDRAAMcEHfNWTQxQ5qh9vK/DXV4luv -C6DmdaXS4XJOImMBQXO4lVAs/e3DYbY21IOVYcPgYf/0noroutzR9ontnTBElSf0 -0YvmLxRmVvHa8cwEG3eSpZ9YQAyfDDLWBcJMwMWf5aQwPUzpnQNsTAa25ZW9Ibjm -K6igvwa7QzMZPXsXWfFkTSRnsVEPNa7wcXV5rlsCNAQx42aGZQIDAQABoIJULDCC -VCgGCSqGSIb3DQEJDjGCVBkwglQVMB0GA1UdDgQWBBSSET+sEZbHZjfPg1ok8Dp3 -rzONfzAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zCCU9EGA1UdHgSC -U8gwglPEoYJTwDARpA8wDTELMAkGA1UEAwwCeDAwEaQPMA0xCzAJBgNVBAMMAngx -MBGkDzANMQswCQYDVQQDDAJ4MjARpA8wDTELMAkGA1UEAwwCeDMwEaQPMA0xCzAJ -BgNVBAMMAng0MBGkDzANMQswCQYDVQQDDAJ4NTARpA8wDTELMAkGA1UEAwwCeDYw -EaQPMA0xCzAJBgNVBAMMAng3MBGkDzANMQswCQYDVQQDDAJ4ODARpA8wDTELMAkG -A1UEAwwCeDkwEqQQMA4xDDAKBgNVBAMMA3gxMDASpBAwDjEMMAoGA1UEAwwDeDEx -MBKkEDAOMQwwCgYDVQQDDAN4MTIwEqQQMA4xDDAKBgNVBAMMA3gxMzASpBAwDjEM -MAoGA1UEAwwDeDE0MBKkEDAOMQwwCgYDVQQDDAN4MTUwEqQQMA4xDDAKBgNVBAMM -A3gxNjASpBAwDjEMMAoGA1UEAwwDeDE3MBKkEDAOMQwwCgYDVQQDDAN4MTgwEqQQ -MA4xDDAKBgNVBAMMA3gxOTASpBAwDjEMMAoGA1UEAwwDeDIwMBKkEDAOMQwwCgYD -VQQDDAN4MjEwEqQQMA4xDDAKBgNVBAMMA3gyMjASpBAwDjEMMAoGA1UEAwwDeDIz -MBKkEDAOMQwwCgYDVQQDDAN4MjQwEqQQMA4xDDAKBgNVBAMMA3gyNTASpBAwDjEM -MAoGA1UEAwwDeDI2MBKkEDAOMQwwCgYDVQQDDAN4MjcwEqQQMA4xDDAKBgNVBAMM -A3gyODASpBAwDjEMMAoGA1UEAwwDeDI5MBKkEDAOMQwwCgYDVQQDDAN4MzAwEqQQ -MA4xDDAKBgNVBAMMA3gzMTASpBAwDjEMMAoGA1UEAwwDeDMyMBKkEDAOMQwwCgYD -VQQDDAN4MzMwEqQQMA4xDDAKBgNVBAMMA3gzNDASpBAwDjEMMAoGA1UEAwwDeDM1 -MBKkEDAOMQwwCgYDVQQDDAN4MzYwEqQQMA4xDDAKBgNVBAMMA3gzNzASpBAwDjEM -MAoGA1UEAwwDeDM4MBKkEDAOMQwwCgYDVQQDDAN4MzkwEqQQMA4xDDAKBgNVBAMM -A3g0MDASpBAwDjEMMAoGA1UEAwwDeDQxMBKkEDAOMQwwCgYDVQQDDAN4NDIwEqQQ -MA4xDDAKBgNVBAMMA3g0MzASpBAwDjEMMAoGA1UEAwwDeDQ0MBKkEDAOMQwwCgYD -VQQDDAN4NDUwEqQQMA4xDDAKBgNVBAMMA3g0NjASpBAwDjEMMAoGA1UEAwwDeDQ3 -MBKkEDAOMQwwCgYDVQQDDAN4NDgwEqQQMA4xDDAKBgNVBAMMA3g0OTASpBAwDjEM -MAoGA1UEAwwDeDUwMBKkEDAOMQwwCgYDVQQDDAN4NTEwEqQQMA4xDDAKBgNVBAMM -A3g1MjASpBAwDjEMMAoGA1UEAwwDeDUzMBKkEDAOMQwwCgYDVQQDDAN4NTQwEqQQ -MA4xDDAKBgNVBAMMA3g1NTASpBAwDjEMMAoGA1UEAwwDeDU2MBKkEDAOMQwwCgYD -VQQDDAN4NTcwEqQQMA4xDDAKBgNVBAMMA3g1ODASpBAwDjEMMAoGA1UEAwwDeDU5 -MBKkEDAOMQwwCgYDVQQDDAN4NjAwEqQQMA4xDDAKBgNVBAMMA3g2MTASpBAwDjEM -MAoGA1UEAwwDeDYyMBKkEDAOMQwwCgYDVQQDDAN4NjMwEqQQMA4xDDAKBgNVBAMM -A3g2NDASpBAwDjEMMAoGA1UEAwwDeDY1MBKkEDAOMQwwCgYDVQQDDAN4NjYwEqQQ -MA4xDDAKBgNVBAMMA3g2NzASpBAwDjEMMAoGA1UEAwwDeDY4MBKkEDAOMQwwCgYD -VQQDDAN4NjkwEqQQMA4xDDAKBgNVBAMMA3g3MDASpBAwDjEMMAoGA1UEAwwDeDcx -MBKkEDAOMQwwCgYDVQQDDAN4NzIwEqQQMA4xDDAKBgNVBAMMA3g3MzASpBAwDjEM -MAoGA1UEAwwDeDc0MBKkEDAOMQwwCgYDVQQDDAN4NzUwEqQQMA4xDDAKBgNVBAMM -A3g3NjASpBAwDjEMMAoGA1UEAwwDeDc3MBKkEDAOMQwwCgYDVQQDDAN4NzgwEqQQ -MA4xDDAKBgNVBAMMA3g3OTASpBAwDjEMMAoGA1UEAwwDeDgwMBKkEDAOMQwwCgYD -VQQDDAN4ODEwEqQQMA4xDDAKBgNVBAMMA3g4MjASpBAwDjEMMAoGA1UEAwwDeDgz -MBKkEDAOMQwwCgYDVQQDDAN4ODQwEqQQMA4xDDAKBgNVBAMMA3g4NTASpBAwDjEM -MAoGA1UEAwwDeDg2MBKkEDAOMQwwCgYDVQQDDAN4ODcwEqQQMA4xDDAKBgNVBAMM -A3g4ODASpBAwDjEMMAoGA1UEAwwDeDg5MBKkEDAOMQwwCgYDVQQDDAN4OTAwEqQQ -MA4xDDAKBgNVBAMMA3g5MTASpBAwDjEMMAoGA1UEAwwDeDkyMBKkEDAOMQwwCgYD -VQQDDAN4OTMwEqQQMA4xDDAKBgNVBAMMA3g5NDASpBAwDjEMMAoGA1UEAwwDeDk1 -MBKkEDAOMQwwCgYDVQQDDAN4OTYwEqQQMA4xDDAKBgNVBAMMA3g5NzASpBAwDjEM -MAoGA1UEAwwDeDk4MBKkEDAOMQwwCgYDVQQDDAN4OTkwE6QRMA8xDTALBgNVBAMM -BHgxMDAwE6QRMA8xDTALBgNVBAMMBHgxMDEwE6QRMA8xDTALBgNVBAMMBHgxMDIw -E6QRMA8xDTALBgNVBAMMBHgxMDMwE6QRMA8xDTALBgNVBAMMBHgxMDQwE6QRMA8x -DTALBgNVBAMMBHgxMDUwE6QRMA8xDTALBgNVBAMMBHgxMDYwE6QRMA8xDTALBgNV -BAMMBHgxMDcwE6QRMA8xDTALBgNVBAMMBHgxMDgwE6QRMA8xDTALBgNVBAMMBHgx -MDkwE6QRMA8xDTALBgNVBAMMBHgxMTAwE6QRMA8xDTALBgNVBAMMBHgxMTEwE6QR -MA8xDTALBgNVBAMMBHgxMTIwE6QRMA8xDTALBgNVBAMMBHgxMTMwE6QRMA8xDTAL -BgNVBAMMBHgxMTQwE6QRMA8xDTALBgNVBAMMBHgxMTUwE6QRMA8xDTALBgNVBAMM -BHgxMTYwE6QRMA8xDTALBgNVBAMMBHgxMTcwE6QRMA8xDTALBgNVBAMMBHgxMTgw -E6QRMA8xDTALBgNVBAMMBHgxMTkwE6QRMA8xDTALBgNVBAMMBHgxMjAwE6QRMA8x -DTALBgNVBAMMBHgxMjEwE6QRMA8xDTALBgNVBAMMBHgxMjIwE6QRMA8xDTALBgNV -BAMMBHgxMjMwE6QRMA8xDTALBgNVBAMMBHgxMjQwE6QRMA8xDTALBgNVBAMMBHgx -MjUwE6QRMA8xDTALBgNVBAMMBHgxMjYwE6QRMA8xDTALBgNVBAMMBHgxMjcwE6QR -MA8xDTALBgNVBAMMBHgxMjgwE6QRMA8xDTALBgNVBAMMBHgxMjkwE6QRMA8xDTAL -BgNVBAMMBHgxMzAwE6QRMA8xDTALBgNVBAMMBHgxMzEwE6QRMA8xDTALBgNVBAMM -BHgxMzIwE6QRMA8xDTALBgNVBAMMBHgxMzMwE6QRMA8xDTALBgNVBAMMBHgxMzQw -E6QRMA8xDTALBgNVBAMMBHgxMzUwE6QRMA8xDTALBgNVBAMMBHgxMzYwE6QRMA8x -DTALBgNVBAMMBHgxMzcwE6QRMA8xDTALBgNVBAMMBHgxMzgwE6QRMA8xDTALBgNV -BAMMBHgxMzkwE6QRMA8xDTALBgNVBAMMBHgxNDAwE6QRMA8xDTALBgNVBAMMBHgx -NDEwE6QRMA8xDTALBgNVBAMMBHgxNDIwE6QRMA8xDTALBgNVBAMMBHgxNDMwE6QR -MA8xDTALBgNVBAMMBHgxNDQwE6QRMA8xDTALBgNVBAMMBHgxNDUwE6QRMA8xDTAL -BgNVBAMMBHgxNDYwE6QRMA8xDTALBgNVBAMMBHgxNDcwE6QRMA8xDTALBgNVBAMM -BHgxNDgwE6QRMA8xDTALBgNVBAMMBHgxNDkwE6QRMA8xDTALBgNVBAMMBHgxNTAw -E6QRMA8xDTALBgNVBAMMBHgxNTEwE6QRMA8xDTALBgNVBAMMBHgxNTIwE6QRMA8x -DTALBgNVBAMMBHgxNTMwE6QRMA8xDTALBgNVBAMMBHgxNTQwE6QRMA8xDTALBgNV -BAMMBHgxNTUwE6QRMA8xDTALBgNVBAMMBHgxNTYwE6QRMA8xDTALBgNVBAMMBHgx -NTcwE6QRMA8xDTALBgNVBAMMBHgxNTgwE6QRMA8xDTALBgNVBAMMBHgxNTkwE6QR -MA8xDTALBgNVBAMMBHgxNjAwE6QRMA8xDTALBgNVBAMMBHgxNjEwE6QRMA8xDTAL -BgNVBAMMBHgxNjIwE6QRMA8xDTALBgNVBAMMBHgxNjMwE6QRMA8xDTALBgNVBAMM -BHgxNjQwE6QRMA8xDTALBgNVBAMMBHgxNjUwE6QRMA8xDTALBgNVBAMMBHgxNjYw -E6QRMA8xDTALBgNVBAMMBHgxNjcwE6QRMA8xDTALBgNVBAMMBHgxNjgwE6QRMA8x -DTALBgNVBAMMBHgxNjkwE6QRMA8xDTALBgNVBAMMBHgxNzAwE6QRMA8xDTALBgNV -BAMMBHgxNzEwE6QRMA8xDTALBgNVBAMMBHgxNzIwE6QRMA8xDTALBgNVBAMMBHgx -NzMwE6QRMA8xDTALBgNVBAMMBHgxNzQwE6QRMA8xDTALBgNVBAMMBHgxNzUwE6QR -MA8xDTALBgNVBAMMBHgxNzYwE6QRMA8xDTALBgNVBAMMBHgxNzcwE6QRMA8xDTAL -BgNVBAMMBHgxNzgwE6QRMA8xDTALBgNVBAMMBHgxNzkwE6QRMA8xDTALBgNVBAMM -BHgxODAwE6QRMA8xDTALBgNVBAMMBHgxODEwE6QRMA8xDTALBgNVBAMMBHgxODIw -E6QRMA8xDTALBgNVBAMMBHgxODMwE6QRMA8xDTALBgNVBAMMBHgxODQwE6QRMA8x -DTALBgNVBAMMBHgxODUwE6QRMA8xDTALBgNVBAMMBHgxODYwE6QRMA8xDTALBgNV -BAMMBHgxODcwE6QRMA8xDTALBgNVBAMMBHgxODgwE6QRMA8xDTALBgNVBAMMBHgx -ODkwE6QRMA8xDTALBgNVBAMMBHgxOTAwE6QRMA8xDTALBgNVBAMMBHgxOTEwE6QR -MA8xDTALBgNVBAMMBHgxOTIwE6QRMA8xDTALBgNVBAMMBHgxOTMwE6QRMA8xDTAL -BgNVBAMMBHgxOTQwE6QRMA8xDTALBgNVBAMMBHgxOTUwE6QRMA8xDTALBgNVBAMM -BHgxOTYwE6QRMA8xDTALBgNVBAMMBHgxOTcwE6QRMA8xDTALBgNVBAMMBHgxOTgw -E6QRMA8xDTALBgNVBAMMBHgxOTkwE6QRMA8xDTALBgNVBAMMBHgyMDAwE6QRMA8x -DTALBgNVBAMMBHgyMDEwE6QRMA8xDTALBgNVBAMMBHgyMDIwE6QRMA8xDTALBgNV -BAMMBHgyMDMwE6QRMA8xDTALBgNVBAMMBHgyMDQwE6QRMA8xDTALBgNVBAMMBHgy -MDUwE6QRMA8xDTALBgNVBAMMBHgyMDYwE6QRMA8xDTALBgNVBAMMBHgyMDcwE6QR -MA8xDTALBgNVBAMMBHgyMDgwE6QRMA8xDTALBgNVBAMMBHgyMDkwE6QRMA8xDTAL -BgNVBAMMBHgyMTAwE6QRMA8xDTALBgNVBAMMBHgyMTEwE6QRMA8xDTALBgNVBAMM -BHgyMTIwE6QRMA8xDTALBgNVBAMMBHgyMTMwE6QRMA8xDTALBgNVBAMMBHgyMTQw -E6QRMA8xDTALBgNVBAMMBHgyMTUwE6QRMA8xDTALBgNVBAMMBHgyMTYwE6QRMA8x -DTALBgNVBAMMBHgyMTcwE6QRMA8xDTALBgNVBAMMBHgyMTgwE6QRMA8xDTALBgNV -BAMMBHgyMTkwE6QRMA8xDTALBgNVBAMMBHgyMjAwE6QRMA8xDTALBgNVBAMMBHgy -MjEwE6QRMA8xDTALBgNVBAMMBHgyMjIwE6QRMA8xDTALBgNVBAMMBHgyMjMwE6QR -MA8xDTALBgNVBAMMBHgyMjQwE6QRMA8xDTALBgNVBAMMBHgyMjUwE6QRMA8xDTAL -BgNVBAMMBHgyMjYwE6QRMA8xDTALBgNVBAMMBHgyMjcwE6QRMA8xDTALBgNVBAMM -BHgyMjgwE6QRMA8xDTALBgNVBAMMBHgyMjkwE6QRMA8xDTALBgNVBAMMBHgyMzAw -E6QRMA8xDTALBgNVBAMMBHgyMzEwE6QRMA8xDTALBgNVBAMMBHgyMzIwE6QRMA8x -DTALBgNVBAMMBHgyMzMwE6QRMA8xDTALBgNVBAMMBHgyMzQwE6QRMA8xDTALBgNV -BAMMBHgyMzUwE6QRMA8xDTALBgNVBAMMBHgyMzYwE6QRMA8xDTALBgNVBAMMBHgy -MzcwE6QRMA8xDTALBgNVBAMMBHgyMzgwE6QRMA8xDTALBgNVBAMMBHgyMzkwE6QR -MA8xDTALBgNVBAMMBHgyNDAwE6QRMA8xDTALBgNVBAMMBHgyNDEwE6QRMA8xDTAL -BgNVBAMMBHgyNDIwE6QRMA8xDTALBgNVBAMMBHgyNDMwE6QRMA8xDTALBgNVBAMM -BHgyNDQwE6QRMA8xDTALBgNVBAMMBHgyNDUwE6QRMA8xDTALBgNVBAMMBHgyNDYw -E6QRMA8xDTALBgNVBAMMBHgyNDcwE6QRMA8xDTALBgNVBAMMBHgyNDgwE6QRMA8x -DTALBgNVBAMMBHgyNDkwE6QRMA8xDTALBgNVBAMMBHgyNTAwE6QRMA8xDTALBgNV -BAMMBHgyNTEwE6QRMA8xDTALBgNVBAMMBHgyNTIwE6QRMA8xDTALBgNVBAMMBHgy -NTMwE6QRMA8xDTALBgNVBAMMBHgyNTQwE6QRMA8xDTALBgNVBAMMBHgyNTUwE6QR -MA8xDTALBgNVBAMMBHgyNTYwE6QRMA8xDTALBgNVBAMMBHgyNTcwE6QRMA8xDTAL -BgNVBAMMBHgyNTgwE6QRMA8xDTALBgNVBAMMBHgyNTkwE6QRMA8xDTALBgNVBAMM -BHgyNjAwE6QRMA8xDTALBgNVBAMMBHgyNjEwE6QRMA8xDTALBgNVBAMMBHgyNjIw -E6QRMA8xDTALBgNVBAMMBHgyNjMwE6QRMA8xDTALBgNVBAMMBHgyNjQwE6QRMA8x -DTALBgNVBAMMBHgyNjUwE6QRMA8xDTALBgNVBAMMBHgyNjYwE6QRMA8xDTALBgNV -BAMMBHgyNjcwE6QRMA8xDTALBgNVBAMMBHgyNjgwE6QRMA8xDTALBgNVBAMMBHgy -NjkwE6QRMA8xDTALBgNVBAMMBHgyNzAwE6QRMA8xDTALBgNVBAMMBHgyNzEwE6QR -MA8xDTALBgNVBAMMBHgyNzIwE6QRMA8xDTALBgNVBAMMBHgyNzMwE6QRMA8xDTAL -BgNVBAMMBHgyNzQwE6QRMA8xDTALBgNVBAMMBHgyNzUwE6QRMA8xDTALBgNVBAMM -BHgyNzYwE6QRMA8xDTALBgNVBAMMBHgyNzcwE6QRMA8xDTALBgNVBAMMBHgyNzgw -E6QRMA8xDTALBgNVBAMMBHgyNzkwE6QRMA8xDTALBgNVBAMMBHgyODAwE6QRMA8x -DTALBgNVBAMMBHgyODEwE6QRMA8xDTALBgNVBAMMBHgyODIwE6QRMA8xDTALBgNV -BAMMBHgyODMwE6QRMA8xDTALBgNVBAMMBHgyODQwE6QRMA8xDTALBgNVBAMMBHgy -ODUwE6QRMA8xDTALBgNVBAMMBHgyODYwE6QRMA8xDTALBgNVBAMMBHgyODcwE6QR -MA8xDTALBgNVBAMMBHgyODgwE6QRMA8xDTALBgNVBAMMBHgyODkwE6QRMA8xDTAL -BgNVBAMMBHgyOTAwE6QRMA8xDTALBgNVBAMMBHgyOTEwE6QRMA8xDTALBgNVBAMM -BHgyOTIwE6QRMA8xDTALBgNVBAMMBHgyOTMwE6QRMA8xDTALBgNVBAMMBHgyOTQw -E6QRMA8xDTALBgNVBAMMBHgyOTUwE6QRMA8xDTALBgNVBAMMBHgyOTYwE6QRMA8x -DTALBgNVBAMMBHgyOTcwE6QRMA8xDTALBgNVBAMMBHgyOTgwE6QRMA8xDTALBgNV -BAMMBHgyOTkwE6QRMA8xDTALBgNVBAMMBHgzMDAwE6QRMA8xDTALBgNVBAMMBHgz -MDEwE6QRMA8xDTALBgNVBAMMBHgzMDIwE6QRMA8xDTALBgNVBAMMBHgzMDMwE6QR -MA8xDTALBgNVBAMMBHgzMDQwE6QRMA8xDTALBgNVBAMMBHgzMDUwE6QRMA8xDTAL -BgNVBAMMBHgzMDYwE6QRMA8xDTALBgNVBAMMBHgzMDcwE6QRMA8xDTALBgNVBAMM -BHgzMDgwE6QRMA8xDTALBgNVBAMMBHgzMDkwE6QRMA8xDTALBgNVBAMMBHgzMTAw -E6QRMA8xDTALBgNVBAMMBHgzMTEwE6QRMA8xDTALBgNVBAMMBHgzMTIwE6QRMA8x -DTALBgNVBAMMBHgzMTMwE6QRMA8xDTALBgNVBAMMBHgzMTQwE6QRMA8xDTALBgNV -BAMMBHgzMTUwE6QRMA8xDTALBgNVBAMMBHgzMTYwE6QRMA8xDTALBgNVBAMMBHgz -MTcwE6QRMA8xDTALBgNVBAMMBHgzMTgwE6QRMA8xDTALBgNVBAMMBHgzMTkwE6QR -MA8xDTALBgNVBAMMBHgzMjAwE6QRMA8xDTALBgNVBAMMBHgzMjEwE6QRMA8xDTAL -BgNVBAMMBHgzMjIwE6QRMA8xDTALBgNVBAMMBHgzMjMwE6QRMA8xDTALBgNVBAMM -BHgzMjQwE6QRMA8xDTALBgNVBAMMBHgzMjUwE6QRMA8xDTALBgNVBAMMBHgzMjYw -E6QRMA8xDTALBgNVBAMMBHgzMjcwE6QRMA8xDTALBgNVBAMMBHgzMjgwE6QRMA8x -DTALBgNVBAMMBHgzMjkwE6QRMA8xDTALBgNVBAMMBHgzMzAwE6QRMA8xDTALBgNV -BAMMBHgzMzEwE6QRMA8xDTALBgNVBAMMBHgzMzIwE6QRMA8xDTALBgNVBAMMBHgz -MzMwE6QRMA8xDTALBgNVBAMMBHgzMzQwE6QRMA8xDTALBgNVBAMMBHgzMzUwE6QR -MA8xDTALBgNVBAMMBHgzMzYwE6QRMA8xDTALBgNVBAMMBHgzMzcwE6QRMA8xDTAL -BgNVBAMMBHgzMzgwE6QRMA8xDTALBgNVBAMMBHgzMzkwE6QRMA8xDTALBgNVBAMM -BHgzNDAwE6QRMA8xDTALBgNVBAMMBHgzNDEwE6QRMA8xDTALBgNVBAMMBHgzNDIw -E6QRMA8xDTALBgNVBAMMBHgzNDMwE6QRMA8xDTALBgNVBAMMBHgzNDQwE6QRMA8x -DTALBgNVBAMMBHgzNDUwE6QRMA8xDTALBgNVBAMMBHgzNDYwE6QRMA8xDTALBgNV -BAMMBHgzNDcwE6QRMA8xDTALBgNVBAMMBHgzNDgwE6QRMA8xDTALBgNVBAMMBHgz -NDkwE6QRMA8xDTALBgNVBAMMBHgzNTAwE6QRMA8xDTALBgNVBAMMBHgzNTEwE6QR -MA8xDTALBgNVBAMMBHgzNTIwE6QRMA8xDTALBgNVBAMMBHgzNTMwE6QRMA8xDTAL -BgNVBAMMBHgzNTQwE6QRMA8xDTALBgNVBAMMBHgzNTUwE6QRMA8xDTALBgNVBAMM -BHgzNTYwE6QRMA8xDTALBgNVBAMMBHgzNTcwE6QRMA8xDTALBgNVBAMMBHgzNTgw -E6QRMA8xDTALBgNVBAMMBHgzNTkwE6QRMA8xDTALBgNVBAMMBHgzNjAwE6QRMA8x -DTALBgNVBAMMBHgzNjEwE6QRMA8xDTALBgNVBAMMBHgzNjIwE6QRMA8xDTALBgNV -BAMMBHgzNjMwE6QRMA8xDTALBgNVBAMMBHgzNjQwE6QRMA8xDTALBgNVBAMMBHgz -NjUwE6QRMA8xDTALBgNVBAMMBHgzNjYwE6QRMA8xDTALBgNVBAMMBHgzNjcwE6QR -MA8xDTALBgNVBAMMBHgzNjgwE6QRMA8xDTALBgNVBAMMBHgzNjkwE6QRMA8xDTAL -BgNVBAMMBHgzNzAwE6QRMA8xDTALBgNVBAMMBHgzNzEwE6QRMA8xDTALBgNVBAMM -BHgzNzIwE6QRMA8xDTALBgNVBAMMBHgzNzMwE6QRMA8xDTALBgNVBAMMBHgzNzQw -E6QRMA8xDTALBgNVBAMMBHgzNzUwE6QRMA8xDTALBgNVBAMMBHgzNzYwE6QRMA8x -DTALBgNVBAMMBHgzNzcwE6QRMA8xDTALBgNVBAMMBHgzNzgwE6QRMA8xDTALBgNV -BAMMBHgzNzkwE6QRMA8xDTALBgNVBAMMBHgzODAwE6QRMA8xDTALBgNVBAMMBHgz -ODEwE6QRMA8xDTALBgNVBAMMBHgzODIwE6QRMA8xDTALBgNVBAMMBHgzODMwE6QR -MA8xDTALBgNVBAMMBHgzODQwE6QRMA8xDTALBgNVBAMMBHgzODUwE6QRMA8xDTAL -BgNVBAMMBHgzODYwE6QRMA8xDTALBgNVBAMMBHgzODcwE6QRMA8xDTALBgNVBAMM -BHgzODgwE6QRMA8xDTALBgNVBAMMBHgzODkwE6QRMA8xDTALBgNVBAMMBHgzOTAw -E6QRMA8xDTALBgNVBAMMBHgzOTEwE6QRMA8xDTALBgNVBAMMBHgzOTIwE6QRMA8x -DTALBgNVBAMMBHgzOTMwE6QRMA8xDTALBgNVBAMMBHgzOTQwE6QRMA8xDTALBgNV -BAMMBHgzOTUwE6QRMA8xDTALBgNVBAMMBHgzOTYwE6QRMA8xDTALBgNVBAMMBHgz -OTcwE6QRMA8xDTALBgNVBAMMBHgzOTgwE6QRMA8xDTALBgNVBAMMBHgzOTkwE6QR -MA8xDTALBgNVBAMMBHg0MDAwE6QRMA8xDTALBgNVBAMMBHg0MDEwE6QRMA8xDTAL -BgNVBAMMBHg0MDIwE6QRMA8xDTALBgNVBAMMBHg0MDMwE6QRMA8xDTALBgNVBAMM -BHg0MDQwE6QRMA8xDTALBgNVBAMMBHg0MDUwE6QRMA8xDTALBgNVBAMMBHg0MDYw -E6QRMA8xDTALBgNVBAMMBHg0MDcwE6QRMA8xDTALBgNVBAMMBHg0MDgwE6QRMA8x -DTALBgNVBAMMBHg0MDkwE6QRMA8xDTALBgNVBAMMBHg0MTAwE6QRMA8xDTALBgNV -BAMMBHg0MTEwE6QRMA8xDTALBgNVBAMMBHg0MTIwE6QRMA8xDTALBgNVBAMMBHg0 -MTMwE6QRMA8xDTALBgNVBAMMBHg0MTQwE6QRMA8xDTALBgNVBAMMBHg0MTUwE6QR -MA8xDTALBgNVBAMMBHg0MTYwE6QRMA8xDTALBgNVBAMMBHg0MTcwE6QRMA8xDTAL -BgNVBAMMBHg0MTgwE6QRMA8xDTALBgNVBAMMBHg0MTkwE6QRMA8xDTALBgNVBAMM -BHg0MjAwE6QRMA8xDTALBgNVBAMMBHg0MjEwE6QRMA8xDTALBgNVBAMMBHg0MjIw -E6QRMA8xDTALBgNVBAMMBHg0MjMwE6QRMA8xDTALBgNVBAMMBHg0MjQwE6QRMA8x -DTALBgNVBAMMBHg0MjUwE6QRMA8xDTALBgNVBAMMBHg0MjYwE6QRMA8xDTALBgNV -BAMMBHg0MjcwE6QRMA8xDTALBgNVBAMMBHg0MjgwE6QRMA8xDTALBgNVBAMMBHg0 -MjkwE6QRMA8xDTALBgNVBAMMBHg0MzAwE6QRMA8xDTALBgNVBAMMBHg0MzEwE6QR -MA8xDTALBgNVBAMMBHg0MzIwE6QRMA8xDTALBgNVBAMMBHg0MzMwE6QRMA8xDTAL -BgNVBAMMBHg0MzQwE6QRMA8xDTALBgNVBAMMBHg0MzUwE6QRMA8xDTALBgNVBAMM -BHg0MzYwE6QRMA8xDTALBgNVBAMMBHg0MzcwE6QRMA8xDTALBgNVBAMMBHg0Mzgw -E6QRMA8xDTALBgNVBAMMBHg0MzkwE6QRMA8xDTALBgNVBAMMBHg0NDAwE6QRMA8x -DTALBgNVBAMMBHg0NDEwE6QRMA8xDTALBgNVBAMMBHg0NDIwE6QRMA8xDTALBgNV -BAMMBHg0NDMwE6QRMA8xDTALBgNVBAMMBHg0NDQwE6QRMA8xDTALBgNVBAMMBHg0 -NDUwE6QRMA8xDTALBgNVBAMMBHg0NDYwE6QRMA8xDTALBgNVBAMMBHg0NDcwE6QR -MA8xDTALBgNVBAMMBHg0NDgwE6QRMA8xDTALBgNVBAMMBHg0NDkwE6QRMA8xDTAL -BgNVBAMMBHg0NTAwE6QRMA8xDTALBgNVBAMMBHg0NTEwE6QRMA8xDTALBgNVBAMM -BHg0NTIwE6QRMA8xDTALBgNVBAMMBHg0NTMwE6QRMA8xDTALBgNVBAMMBHg0NTQw -E6QRMA8xDTALBgNVBAMMBHg0NTUwE6QRMA8xDTALBgNVBAMMBHg0NTYwE6QRMA8x -DTALBgNVBAMMBHg0NTcwE6QRMA8xDTALBgNVBAMMBHg0NTgwE6QRMA8xDTALBgNV -BAMMBHg0NTkwE6QRMA8xDTALBgNVBAMMBHg0NjAwE6QRMA8xDTALBgNVBAMMBHg0 -NjEwE6QRMA8xDTALBgNVBAMMBHg0NjIwE6QRMA8xDTALBgNVBAMMBHg0NjMwE6QR -MA8xDTALBgNVBAMMBHg0NjQwE6QRMA8xDTALBgNVBAMMBHg0NjUwE6QRMA8xDTAL -BgNVBAMMBHg0NjYwE6QRMA8xDTALBgNVBAMMBHg0NjcwE6QRMA8xDTALBgNVBAMM -BHg0NjgwE6QRMA8xDTALBgNVBAMMBHg0NjkwE6QRMA8xDTALBgNVBAMMBHg0NzAw -E6QRMA8xDTALBgNVBAMMBHg0NzEwE6QRMA8xDTALBgNVBAMMBHg0NzIwE6QRMA8x -DTALBgNVBAMMBHg0NzMwE6QRMA8xDTALBgNVBAMMBHg0NzQwE6QRMA8xDTALBgNV -BAMMBHg0NzUwE6QRMA8xDTALBgNVBAMMBHg0NzYwE6QRMA8xDTALBgNVBAMMBHg0 -NzcwE6QRMA8xDTALBgNVBAMMBHg0NzgwE6QRMA8xDTALBgNVBAMMBHg0NzkwE6QR -MA8xDTALBgNVBAMMBHg0ODAwE6QRMA8xDTALBgNVBAMMBHg0ODEwE6QRMA8xDTAL -BgNVBAMMBHg0ODIwE6QRMA8xDTALBgNVBAMMBHg0ODMwE6QRMA8xDTALBgNVBAMM -BHg0ODQwE6QRMA8xDTALBgNVBAMMBHg0ODUwE6QRMA8xDTALBgNVBAMMBHg0ODYw -E6QRMA8xDTALBgNVBAMMBHg0ODcwE6QRMA8xDTALBgNVBAMMBHg0ODgwE6QRMA8x -DTALBgNVBAMMBHg0ODkwE6QRMA8xDTALBgNVBAMMBHg0OTAwE6QRMA8xDTALBgNV -BAMMBHg0OTEwE6QRMA8xDTALBgNVBAMMBHg0OTIwE6QRMA8xDTALBgNVBAMMBHg0 -OTMwE6QRMA8xDTALBgNVBAMMBHg0OTQwE6QRMA8xDTALBgNVBAMMBHg0OTUwE6QR -MA8xDTALBgNVBAMMBHg0OTYwE6QRMA8xDTALBgNVBAMMBHg0OTcwE6QRMA8xDTAL -BgNVBAMMBHg0OTgwE6QRMA8xDTALBgNVBAMMBHg0OTkwE6QRMA8xDTALBgNVBAMM -BHg1MDAwE6QRMA8xDTALBgNVBAMMBHg1MDEwE6QRMA8xDTALBgNVBAMMBHg1MDIw -E6QRMA8xDTALBgNVBAMMBHg1MDMwE6QRMA8xDTALBgNVBAMMBHg1MDQwE6QRMA8x -DTALBgNVBAMMBHg1MDUwE6QRMA8xDTALBgNVBAMMBHg1MDYwE6QRMA8xDTALBgNV -BAMMBHg1MDcwE6QRMA8xDTALBgNVBAMMBHg1MDgwE6QRMA8xDTALBgNVBAMMBHg1 -MDkwE6QRMA8xDTALBgNVBAMMBHg1MTAwE6QRMA8xDTALBgNVBAMMBHg1MTEwE6QR -MA8xDTALBgNVBAMMBHg1MTIwE6QRMA8xDTALBgNVBAMMBHg1MTMwE6QRMA8xDTAL -BgNVBAMMBHg1MTQwE6QRMA8xDTALBgNVBAMMBHg1MTUwE6QRMA8xDTALBgNVBAMM -BHg1MTYwE6QRMA8xDTALBgNVBAMMBHg1MTcwE6QRMA8xDTALBgNVBAMMBHg1MTgw -E6QRMA8xDTALBgNVBAMMBHg1MTkwE6QRMA8xDTALBgNVBAMMBHg1MjAwE6QRMA8x -DTALBgNVBAMMBHg1MjEwE6QRMA8xDTALBgNVBAMMBHg1MjIwE6QRMA8xDTALBgNV -BAMMBHg1MjMwE6QRMA8xDTALBgNVBAMMBHg1MjQwE6QRMA8xDTALBgNVBAMMBHg1 -MjUwE6QRMA8xDTALBgNVBAMMBHg1MjYwE6QRMA8xDTALBgNVBAMMBHg1MjcwE6QR -MA8xDTALBgNVBAMMBHg1MjgwE6QRMA8xDTALBgNVBAMMBHg1MjkwE6QRMA8xDTAL -BgNVBAMMBHg1MzAwE6QRMA8xDTALBgNVBAMMBHg1MzEwE6QRMA8xDTALBgNVBAMM -BHg1MzIwE6QRMA8xDTALBgNVBAMMBHg1MzMwE6QRMA8xDTALBgNVBAMMBHg1MzQw -E6QRMA8xDTALBgNVBAMMBHg1MzUwE6QRMA8xDTALBgNVBAMMBHg1MzYwE6QRMA8x -DTALBgNVBAMMBHg1MzcwE6QRMA8xDTALBgNVBAMMBHg1MzgwE6QRMA8xDTALBgNV -BAMMBHg1MzkwE6QRMA8xDTALBgNVBAMMBHg1NDAwE6QRMA8xDTALBgNVBAMMBHg1 -NDEwE6QRMA8xDTALBgNVBAMMBHg1NDIwE6QRMA8xDTALBgNVBAMMBHg1NDMwE6QR -MA8xDTALBgNVBAMMBHg1NDQwE6QRMA8xDTALBgNVBAMMBHg1NDUwE6QRMA8xDTAL -BgNVBAMMBHg1NDYwE6QRMA8xDTALBgNVBAMMBHg1NDcwE6QRMA8xDTALBgNVBAMM -BHg1NDgwE6QRMA8xDTALBgNVBAMMBHg1NDkwE6QRMA8xDTALBgNVBAMMBHg1NTAw -E6QRMA8xDTALBgNVBAMMBHg1NTEwE6QRMA8xDTALBgNVBAMMBHg1NTIwE6QRMA8x -DTALBgNVBAMMBHg1NTMwE6QRMA8xDTALBgNVBAMMBHg1NTQwE6QRMA8xDTALBgNV -BAMMBHg1NTUwE6QRMA8xDTALBgNVBAMMBHg1NTYwE6QRMA8xDTALBgNVBAMMBHg1 -NTcwE6QRMA8xDTALBgNVBAMMBHg1NTgwE6QRMA8xDTALBgNVBAMMBHg1NTkwE6QR -MA8xDTALBgNVBAMMBHg1NjAwE6QRMA8xDTALBgNVBAMMBHg1NjEwE6QRMA8xDTAL -BgNVBAMMBHg1NjIwE6QRMA8xDTALBgNVBAMMBHg1NjMwE6QRMA8xDTALBgNVBAMM -BHg1NjQwE6QRMA8xDTALBgNVBAMMBHg1NjUwE6QRMA8xDTALBgNVBAMMBHg1NjYw -E6QRMA8xDTALBgNVBAMMBHg1NjcwE6QRMA8xDTALBgNVBAMMBHg1NjgwE6QRMA8x -DTALBgNVBAMMBHg1NjkwE6QRMA8xDTALBgNVBAMMBHg1NzAwE6QRMA8xDTALBgNV -BAMMBHg1NzEwE6QRMA8xDTALBgNVBAMMBHg1NzIwE6QRMA8xDTALBgNVBAMMBHg1 -NzMwE6QRMA8xDTALBgNVBAMMBHg1NzQwE6QRMA8xDTALBgNVBAMMBHg1NzUwE6QR -MA8xDTALBgNVBAMMBHg1NzYwE6QRMA8xDTALBgNVBAMMBHg1NzcwE6QRMA8xDTAL -BgNVBAMMBHg1NzgwE6QRMA8xDTALBgNVBAMMBHg1NzkwE6QRMA8xDTALBgNVBAMM -BHg1ODAwE6QRMA8xDTALBgNVBAMMBHg1ODEwE6QRMA8xDTALBgNVBAMMBHg1ODIw -E6QRMA8xDTALBgNVBAMMBHg1ODMwE6QRMA8xDTALBgNVBAMMBHg1ODQwE6QRMA8x -DTALBgNVBAMMBHg1ODUwE6QRMA8xDTALBgNVBAMMBHg1ODYwE6QRMA8xDTALBgNV -BAMMBHg1ODcwE6QRMA8xDTALBgNVBAMMBHg1ODgwE6QRMA8xDTALBgNVBAMMBHg1 -ODkwE6QRMA8xDTALBgNVBAMMBHg1OTAwE6QRMA8xDTALBgNVBAMMBHg1OTEwE6QR -MA8xDTALBgNVBAMMBHg1OTIwE6QRMA8xDTALBgNVBAMMBHg1OTMwE6QRMA8xDTAL -BgNVBAMMBHg1OTQwE6QRMA8xDTALBgNVBAMMBHg1OTUwE6QRMA8xDTALBgNVBAMM -BHg1OTYwE6QRMA8xDTALBgNVBAMMBHg1OTcwE6QRMA8xDTALBgNVBAMMBHg1OTgw -E6QRMA8xDTALBgNVBAMMBHg1OTkwE6QRMA8xDTALBgNVBAMMBHg2MDAwE6QRMA8x -DTALBgNVBAMMBHg2MDEwE6QRMA8xDTALBgNVBAMMBHg2MDIwE6QRMA8xDTALBgNV -BAMMBHg2MDMwE6QRMA8xDTALBgNVBAMMBHg2MDQwE6QRMA8xDTALBgNVBAMMBHg2 -MDUwE6QRMA8xDTALBgNVBAMMBHg2MDYwE6QRMA8xDTALBgNVBAMMBHg2MDcwE6QR -MA8xDTALBgNVBAMMBHg2MDgwE6QRMA8xDTALBgNVBAMMBHg2MDkwE6QRMA8xDTAL -BgNVBAMMBHg2MTAwE6QRMA8xDTALBgNVBAMMBHg2MTEwE6QRMA8xDTALBgNVBAMM -BHg2MTIwE6QRMA8xDTALBgNVBAMMBHg2MTMwE6QRMA8xDTALBgNVBAMMBHg2MTQw -E6QRMA8xDTALBgNVBAMMBHg2MTUwE6QRMA8xDTALBgNVBAMMBHg2MTYwE6QRMA8x -DTALBgNVBAMMBHg2MTcwE6QRMA8xDTALBgNVBAMMBHg2MTgwE6QRMA8xDTALBgNV -BAMMBHg2MTkwE6QRMA8xDTALBgNVBAMMBHg2MjAwE6QRMA8xDTALBgNVBAMMBHg2 -MjEwE6QRMA8xDTALBgNVBAMMBHg2MjIwE6QRMA8xDTALBgNVBAMMBHg2MjMwE6QR -MA8xDTALBgNVBAMMBHg2MjQwE6QRMA8xDTALBgNVBAMMBHg2MjUwE6QRMA8xDTAL -BgNVBAMMBHg2MjYwE6QRMA8xDTALBgNVBAMMBHg2MjcwE6QRMA8xDTALBgNVBAMM -BHg2MjgwE6QRMA8xDTALBgNVBAMMBHg2MjkwE6QRMA8xDTALBgNVBAMMBHg2MzAw -E6QRMA8xDTALBgNVBAMMBHg2MzEwE6QRMA8xDTALBgNVBAMMBHg2MzIwE6QRMA8x -DTALBgNVBAMMBHg2MzMwE6QRMA8xDTALBgNVBAMMBHg2MzQwE6QRMA8xDTALBgNV -BAMMBHg2MzUwE6QRMA8xDTALBgNVBAMMBHg2MzYwE6QRMA8xDTALBgNVBAMMBHg2 -MzcwE6QRMA8xDTALBgNVBAMMBHg2MzgwE6QRMA8xDTALBgNVBAMMBHg2MzkwE6QR -MA8xDTALBgNVBAMMBHg2NDAwE6QRMA8xDTALBgNVBAMMBHg2NDEwE6QRMA8xDTAL -BgNVBAMMBHg2NDIwE6QRMA8xDTALBgNVBAMMBHg2NDMwE6QRMA8xDTALBgNVBAMM -BHg2NDQwE6QRMA8xDTALBgNVBAMMBHg2NDUwE6QRMA8xDTALBgNVBAMMBHg2NDYw -E6QRMA8xDTALBgNVBAMMBHg2NDcwE6QRMA8xDTALBgNVBAMMBHg2NDgwE6QRMA8x -DTALBgNVBAMMBHg2NDkwE6QRMA8xDTALBgNVBAMMBHg2NTAwE6QRMA8xDTALBgNV -BAMMBHg2NTEwE6QRMA8xDTALBgNVBAMMBHg2NTIwE6QRMA8xDTALBgNVBAMMBHg2 -NTMwE6QRMA8xDTALBgNVBAMMBHg2NTQwE6QRMA8xDTALBgNVBAMMBHg2NTUwE6QR -MA8xDTALBgNVBAMMBHg2NTYwE6QRMA8xDTALBgNVBAMMBHg2NTcwE6QRMA8xDTAL -BgNVBAMMBHg2NTgwE6QRMA8xDTALBgNVBAMMBHg2NTkwE6QRMA8xDTALBgNVBAMM -BHg2NjAwE6QRMA8xDTALBgNVBAMMBHg2NjEwE6QRMA8xDTALBgNVBAMMBHg2NjIw -E6QRMA8xDTALBgNVBAMMBHg2NjMwE6QRMA8xDTALBgNVBAMMBHg2NjQwE6QRMA8x -DTALBgNVBAMMBHg2NjUwE6QRMA8xDTALBgNVBAMMBHg2NjYwE6QRMA8xDTALBgNV -BAMMBHg2NjcwE6QRMA8xDTALBgNVBAMMBHg2NjgwE6QRMA8xDTALBgNVBAMMBHg2 -NjkwE6QRMA8xDTALBgNVBAMMBHg2NzAwE6QRMA8xDTALBgNVBAMMBHg2NzEwE6QR -MA8xDTALBgNVBAMMBHg2NzIwE6QRMA8xDTALBgNVBAMMBHg2NzMwE6QRMA8xDTAL -BgNVBAMMBHg2NzQwE6QRMA8xDTALBgNVBAMMBHg2NzUwE6QRMA8xDTALBgNVBAMM -BHg2NzYwE6QRMA8xDTALBgNVBAMMBHg2NzcwE6QRMA8xDTALBgNVBAMMBHg2Nzgw -E6QRMA8xDTALBgNVBAMMBHg2NzkwE6QRMA8xDTALBgNVBAMMBHg2ODAwE6QRMA8x -DTALBgNVBAMMBHg2ODEwE6QRMA8xDTALBgNVBAMMBHg2ODIwE6QRMA8xDTALBgNV -BAMMBHg2ODMwE6QRMA8xDTALBgNVBAMMBHg2ODQwE6QRMA8xDTALBgNVBAMMBHg2 -ODUwE6QRMA8xDTALBgNVBAMMBHg2ODYwE6QRMA8xDTALBgNVBAMMBHg2ODcwE6QR -MA8xDTALBgNVBAMMBHg2ODgwE6QRMA8xDTALBgNVBAMMBHg2ODkwE6QRMA8xDTAL -BgNVBAMMBHg2OTAwE6QRMA8xDTALBgNVBAMMBHg2OTEwE6QRMA8xDTALBgNVBAMM -BHg2OTIwE6QRMA8xDTALBgNVBAMMBHg2OTMwE6QRMA8xDTALBgNVBAMMBHg2OTQw -E6QRMA8xDTALBgNVBAMMBHg2OTUwE6QRMA8xDTALBgNVBAMMBHg2OTYwE6QRMA8x -DTALBgNVBAMMBHg2OTcwE6QRMA8xDTALBgNVBAMMBHg2OTgwE6QRMA8xDTALBgNV -BAMMBHg2OTkwE6QRMA8xDTALBgNVBAMMBHg3MDAwE6QRMA8xDTALBgNVBAMMBHg3 -MDEwE6QRMA8xDTALBgNVBAMMBHg3MDIwE6QRMA8xDTALBgNVBAMMBHg3MDMwE6QR -MA8xDTALBgNVBAMMBHg3MDQwE6QRMA8xDTALBgNVBAMMBHg3MDUwE6QRMA8xDTAL -BgNVBAMMBHg3MDYwE6QRMA8xDTALBgNVBAMMBHg3MDcwE6QRMA8xDTALBgNVBAMM -BHg3MDgwE6QRMA8xDTALBgNVBAMMBHg3MDkwE6QRMA8xDTALBgNVBAMMBHg3MTAw -E6QRMA8xDTALBgNVBAMMBHg3MTEwE6QRMA8xDTALBgNVBAMMBHg3MTIwE6QRMA8x -DTALBgNVBAMMBHg3MTMwE6QRMA8xDTALBgNVBAMMBHg3MTQwE6QRMA8xDTALBgNV -BAMMBHg3MTUwE6QRMA8xDTALBgNVBAMMBHg3MTYwE6QRMA8xDTALBgNVBAMMBHg3 -MTcwE6QRMA8xDTALBgNVBAMMBHg3MTgwE6QRMA8xDTALBgNVBAMMBHg3MTkwE6QR -MA8xDTALBgNVBAMMBHg3MjAwE6QRMA8xDTALBgNVBAMMBHg3MjEwE6QRMA8xDTAL -BgNVBAMMBHg3MjIwE6QRMA8xDTALBgNVBAMMBHg3MjMwE6QRMA8xDTALBgNVBAMM -BHg3MjQwE6QRMA8xDTALBgNVBAMMBHg3MjUwE6QRMA8xDTALBgNVBAMMBHg3MjYw -E6QRMA8xDTALBgNVBAMMBHg3MjcwE6QRMA8xDTALBgNVBAMMBHg3MjgwE6QRMA8x -DTALBgNVBAMMBHg3MjkwE6QRMA8xDTALBgNVBAMMBHg3MzAwE6QRMA8xDTALBgNV -BAMMBHg3MzEwE6QRMA8xDTALBgNVBAMMBHg3MzIwE6QRMA8xDTALBgNVBAMMBHg3 -MzMwE6QRMA8xDTALBgNVBAMMBHg3MzQwE6QRMA8xDTALBgNVBAMMBHg3MzUwE6QR -MA8xDTALBgNVBAMMBHg3MzYwE6QRMA8xDTALBgNVBAMMBHg3MzcwE6QRMA8xDTAL -BgNVBAMMBHg3MzgwE6QRMA8xDTALBgNVBAMMBHg3MzkwE6QRMA8xDTALBgNVBAMM -BHg3NDAwE6QRMA8xDTALBgNVBAMMBHg3NDEwE6QRMA8xDTALBgNVBAMMBHg3NDIw -E6QRMA8xDTALBgNVBAMMBHg3NDMwE6QRMA8xDTALBgNVBAMMBHg3NDQwE6QRMA8x -DTALBgNVBAMMBHg3NDUwE6QRMA8xDTALBgNVBAMMBHg3NDYwE6QRMA8xDTALBgNV -BAMMBHg3NDcwE6QRMA8xDTALBgNVBAMMBHg3NDgwE6QRMA8xDTALBgNVBAMMBHg3 -NDkwE6QRMA8xDTALBgNVBAMMBHg3NTAwE6QRMA8xDTALBgNVBAMMBHg3NTEwE6QR -MA8xDTALBgNVBAMMBHg3NTIwE6QRMA8xDTALBgNVBAMMBHg3NTMwE6QRMA8xDTAL -BgNVBAMMBHg3NTQwE6QRMA8xDTALBgNVBAMMBHg3NTUwE6QRMA8xDTALBgNVBAMM -BHg3NTYwE6QRMA8xDTALBgNVBAMMBHg3NTcwE6QRMA8xDTALBgNVBAMMBHg3NTgw -E6QRMA8xDTALBgNVBAMMBHg3NTkwE6QRMA8xDTALBgNVBAMMBHg3NjAwE6QRMA8x -DTALBgNVBAMMBHg3NjEwE6QRMA8xDTALBgNVBAMMBHg3NjIwE6QRMA8xDTALBgNV -BAMMBHg3NjMwE6QRMA8xDTALBgNVBAMMBHg3NjQwE6QRMA8xDTALBgNVBAMMBHg3 -NjUwE6QRMA8xDTALBgNVBAMMBHg3NjYwE6QRMA8xDTALBgNVBAMMBHg3NjcwE6QR -MA8xDTALBgNVBAMMBHg3NjgwE6QRMA8xDTALBgNVBAMMBHg3NjkwE6QRMA8xDTAL -BgNVBAMMBHg3NzAwE6QRMA8xDTALBgNVBAMMBHg3NzEwE6QRMA8xDTALBgNVBAMM -BHg3NzIwE6QRMA8xDTALBgNVBAMMBHg3NzMwE6QRMA8xDTALBgNVBAMMBHg3NzQw -E6QRMA8xDTALBgNVBAMMBHg3NzUwE6QRMA8xDTALBgNVBAMMBHg3NzYwE6QRMA8x -DTALBgNVBAMMBHg3NzcwE6QRMA8xDTALBgNVBAMMBHg3NzgwE6QRMA8xDTALBgNV -BAMMBHg3NzkwE6QRMA8xDTALBgNVBAMMBHg3ODAwE6QRMA8xDTALBgNVBAMMBHg3 -ODEwE6QRMA8xDTALBgNVBAMMBHg3ODIwE6QRMA8xDTALBgNVBAMMBHg3ODMwE6QR -MA8xDTALBgNVBAMMBHg3ODQwE6QRMA8xDTALBgNVBAMMBHg3ODUwE6QRMA8xDTAL -BgNVBAMMBHg3ODYwE6QRMA8xDTALBgNVBAMMBHg3ODcwE6QRMA8xDTALBgNVBAMM -BHg3ODgwE6QRMA8xDTALBgNVBAMMBHg3ODkwE6QRMA8xDTALBgNVBAMMBHg3OTAw -E6QRMA8xDTALBgNVBAMMBHg3OTEwE6QRMA8xDTALBgNVBAMMBHg3OTIwE6QRMA8x -DTALBgNVBAMMBHg3OTMwE6QRMA8xDTALBgNVBAMMBHg3OTQwE6QRMA8xDTALBgNV -BAMMBHg3OTUwE6QRMA8xDTALBgNVBAMMBHg3OTYwE6QRMA8xDTALBgNVBAMMBHg3 -OTcwE6QRMA8xDTALBgNVBAMMBHg3OTgwE6QRMA8xDTALBgNVBAMMBHg3OTkwE6QR -MA8xDTALBgNVBAMMBHg4MDAwE6QRMA8xDTALBgNVBAMMBHg4MDEwE6QRMA8xDTAL -BgNVBAMMBHg4MDIwE6QRMA8xDTALBgNVBAMMBHg4MDMwE6QRMA8xDTALBgNVBAMM -BHg4MDQwE6QRMA8xDTALBgNVBAMMBHg4MDUwE6QRMA8xDTALBgNVBAMMBHg4MDYw -E6QRMA8xDTALBgNVBAMMBHg4MDcwE6QRMA8xDTALBgNVBAMMBHg4MDgwE6QRMA8x -DTALBgNVBAMMBHg4MDkwE6QRMA8xDTALBgNVBAMMBHg4MTAwE6QRMA8xDTALBgNV -BAMMBHg4MTEwE6QRMA8xDTALBgNVBAMMBHg4MTIwE6QRMA8xDTALBgNVBAMMBHg4 -MTMwE6QRMA8xDTALBgNVBAMMBHg4MTQwE6QRMA8xDTALBgNVBAMMBHg4MTUwE6QR -MA8xDTALBgNVBAMMBHg4MTYwE6QRMA8xDTALBgNVBAMMBHg4MTcwE6QRMA8xDTAL -BgNVBAMMBHg4MTgwE6QRMA8xDTALBgNVBAMMBHg4MTkwE6QRMA8xDTALBgNVBAMM -BHg4MjAwE6QRMA8xDTALBgNVBAMMBHg4MjEwE6QRMA8xDTALBgNVBAMMBHg4MjIw -E6QRMA8xDTALBgNVBAMMBHg4MjMwE6QRMA8xDTALBgNVBAMMBHg4MjQwE6QRMA8x -DTALBgNVBAMMBHg4MjUwE6QRMA8xDTALBgNVBAMMBHg4MjYwE6QRMA8xDTALBgNV -BAMMBHg4MjcwE6QRMA8xDTALBgNVBAMMBHg4MjgwE6QRMA8xDTALBgNVBAMMBHg4 -MjkwE6QRMA8xDTALBgNVBAMMBHg4MzAwE6QRMA8xDTALBgNVBAMMBHg4MzEwE6QR -MA8xDTALBgNVBAMMBHg4MzIwE6QRMA8xDTALBgNVBAMMBHg4MzMwE6QRMA8xDTAL -BgNVBAMMBHg4MzQwE6QRMA8xDTALBgNVBAMMBHg4MzUwE6QRMA8xDTALBgNVBAMM -BHg4MzYwE6QRMA8xDTALBgNVBAMMBHg4MzcwE6QRMA8xDTALBgNVBAMMBHg4Mzgw -E6QRMA8xDTALBgNVBAMMBHg4MzkwE6QRMA8xDTALBgNVBAMMBHg4NDAwE6QRMA8x -DTALBgNVBAMMBHg4NDEwE6QRMA8xDTALBgNVBAMMBHg4NDIwE6QRMA8xDTALBgNV -BAMMBHg4NDMwE6QRMA8xDTALBgNVBAMMBHg4NDQwE6QRMA8xDTALBgNVBAMMBHg4 -NDUwE6QRMA8xDTALBgNVBAMMBHg4NDYwE6QRMA8xDTALBgNVBAMMBHg4NDcwE6QR -MA8xDTALBgNVBAMMBHg4NDgwE6QRMA8xDTALBgNVBAMMBHg4NDkwE6QRMA8xDTAL -BgNVBAMMBHg4NTAwE6QRMA8xDTALBgNVBAMMBHg4NTEwE6QRMA8xDTALBgNVBAMM -BHg4NTIwE6QRMA8xDTALBgNVBAMMBHg4NTMwE6QRMA8xDTALBgNVBAMMBHg4NTQw -E6QRMA8xDTALBgNVBAMMBHg4NTUwE6QRMA8xDTALBgNVBAMMBHg4NTYwE6QRMA8x -DTALBgNVBAMMBHg4NTcwE6QRMA8xDTALBgNVBAMMBHg4NTgwE6QRMA8xDTALBgNV -BAMMBHg4NTkwE6QRMA8xDTALBgNVBAMMBHg4NjAwE6QRMA8xDTALBgNVBAMMBHg4 -NjEwE6QRMA8xDTALBgNVBAMMBHg4NjIwE6QRMA8xDTALBgNVBAMMBHg4NjMwE6QR -MA8xDTALBgNVBAMMBHg4NjQwE6QRMA8xDTALBgNVBAMMBHg4NjUwE6QRMA8xDTAL -BgNVBAMMBHg4NjYwE6QRMA8xDTALBgNVBAMMBHg4NjcwE6QRMA8xDTALBgNVBAMM -BHg4NjgwE6QRMA8xDTALBgNVBAMMBHg4NjkwE6QRMA8xDTALBgNVBAMMBHg4NzAw -E6QRMA8xDTALBgNVBAMMBHg4NzEwE6QRMA8xDTALBgNVBAMMBHg4NzIwE6QRMA8x -DTALBgNVBAMMBHg4NzMwE6QRMA8xDTALBgNVBAMMBHg4NzQwE6QRMA8xDTALBgNV -BAMMBHg4NzUwE6QRMA8xDTALBgNVBAMMBHg4NzYwE6QRMA8xDTALBgNVBAMMBHg4 -NzcwE6QRMA8xDTALBgNVBAMMBHg4NzgwE6QRMA8xDTALBgNVBAMMBHg4NzkwE6QR -MA8xDTALBgNVBAMMBHg4ODAwE6QRMA8xDTALBgNVBAMMBHg4ODEwE6QRMA8xDTAL -BgNVBAMMBHg4ODIwE6QRMA8xDTALBgNVBAMMBHg4ODMwE6QRMA8xDTALBgNVBAMM -BHg4ODQwE6QRMA8xDTALBgNVBAMMBHg4ODUwE6QRMA8xDTALBgNVBAMMBHg4ODYw -E6QRMA8xDTALBgNVBAMMBHg4ODcwE6QRMA8xDTALBgNVBAMMBHg4ODgwE6QRMA8x -DTALBgNVBAMMBHg4ODkwE6QRMA8xDTALBgNVBAMMBHg4OTAwE6QRMA8xDTALBgNV -BAMMBHg4OTEwE6QRMA8xDTALBgNVBAMMBHg4OTIwE6QRMA8xDTALBgNVBAMMBHg4 -OTMwE6QRMA8xDTALBgNVBAMMBHg4OTQwE6QRMA8xDTALBgNVBAMMBHg4OTUwE6QR -MA8xDTALBgNVBAMMBHg4OTYwE6QRMA8xDTALBgNVBAMMBHg4OTcwE6QRMA8xDTAL -BgNVBAMMBHg4OTgwE6QRMA8xDTALBgNVBAMMBHg4OTkwE6QRMA8xDTALBgNVBAMM -BHg5MDAwE6QRMA8xDTALBgNVBAMMBHg5MDEwE6QRMA8xDTALBgNVBAMMBHg5MDIw -E6QRMA8xDTALBgNVBAMMBHg5MDMwE6QRMA8xDTALBgNVBAMMBHg5MDQwE6QRMA8x -DTALBgNVBAMMBHg5MDUwE6QRMA8xDTALBgNVBAMMBHg5MDYwE6QRMA8xDTALBgNV -BAMMBHg5MDcwE6QRMA8xDTALBgNVBAMMBHg5MDgwE6QRMA8xDTALBgNVBAMMBHg5 -MDkwE6QRMA8xDTALBgNVBAMMBHg5MTAwE6QRMA8xDTALBgNVBAMMBHg5MTEwE6QR -MA8xDTALBgNVBAMMBHg5MTIwE6QRMA8xDTALBgNVBAMMBHg5MTMwE6QRMA8xDTAL -BgNVBAMMBHg5MTQwE6QRMA8xDTALBgNVBAMMBHg5MTUwE6QRMA8xDTALBgNVBAMM -BHg5MTYwE6QRMA8xDTALBgNVBAMMBHg5MTcwE6QRMA8xDTALBgNVBAMMBHg5MTgw -E6QRMA8xDTALBgNVBAMMBHg5MTkwE6QRMA8xDTALBgNVBAMMBHg5MjAwE6QRMA8x -DTALBgNVBAMMBHg5MjEwE6QRMA8xDTALBgNVBAMMBHg5MjIwE6QRMA8xDTALBgNV -BAMMBHg5MjMwE6QRMA8xDTALBgNVBAMMBHg5MjQwE6QRMA8xDTALBgNVBAMMBHg5 -MjUwE6QRMA8xDTALBgNVBAMMBHg5MjYwE6QRMA8xDTALBgNVBAMMBHg5MjcwE6QR -MA8xDTALBgNVBAMMBHg5MjgwE6QRMA8xDTALBgNVBAMMBHg5MjkwE6QRMA8xDTAL -BgNVBAMMBHg5MzAwE6QRMA8xDTALBgNVBAMMBHg5MzEwE6QRMA8xDTALBgNVBAMM -BHg5MzIwE6QRMA8xDTALBgNVBAMMBHg5MzMwE6QRMA8xDTALBgNVBAMMBHg5MzQw -E6QRMA8xDTALBgNVBAMMBHg5MzUwE6QRMA8xDTALBgNVBAMMBHg5MzYwE6QRMA8x -DTALBgNVBAMMBHg5MzcwE6QRMA8xDTALBgNVBAMMBHg5MzgwE6QRMA8xDTALBgNV -BAMMBHg5MzkwE6QRMA8xDTALBgNVBAMMBHg5NDAwE6QRMA8xDTALBgNVBAMMBHg5 -NDEwE6QRMA8xDTALBgNVBAMMBHg5NDIwE6QRMA8xDTALBgNVBAMMBHg5NDMwE6QR -MA8xDTALBgNVBAMMBHg5NDQwE6QRMA8xDTALBgNVBAMMBHg5NDUwE6QRMA8xDTAL -BgNVBAMMBHg5NDYwE6QRMA8xDTALBgNVBAMMBHg5NDcwE6QRMA8xDTALBgNVBAMM -BHg5NDgwE6QRMA8xDTALBgNVBAMMBHg5NDkwE6QRMA8xDTALBgNVBAMMBHg5NTAw -E6QRMA8xDTALBgNVBAMMBHg5NTEwE6QRMA8xDTALBgNVBAMMBHg5NTIwE6QRMA8x -DTALBgNVBAMMBHg5NTMwE6QRMA8xDTALBgNVBAMMBHg5NTQwE6QRMA8xDTALBgNV -BAMMBHg5NTUwE6QRMA8xDTALBgNVBAMMBHg5NTYwE6QRMA8xDTALBgNVBAMMBHg5 -NTcwE6QRMA8xDTALBgNVBAMMBHg5NTgwE6QRMA8xDTALBgNVBAMMBHg5NTkwE6QR -MA8xDTALBgNVBAMMBHg5NjAwE6QRMA8xDTALBgNVBAMMBHg5NjEwE6QRMA8xDTAL -BgNVBAMMBHg5NjIwE6QRMA8xDTALBgNVBAMMBHg5NjMwE6QRMA8xDTALBgNVBAMM -BHg5NjQwE6QRMA8xDTALBgNVBAMMBHg5NjUwE6QRMA8xDTALBgNVBAMMBHg5NjYw -E6QRMA8xDTALBgNVBAMMBHg5NjcwE6QRMA8xDTALBgNVBAMMBHg5NjgwE6QRMA8x -DTALBgNVBAMMBHg5NjkwE6QRMA8xDTALBgNVBAMMBHg5NzAwE6QRMA8xDTALBgNV -BAMMBHg5NzEwE6QRMA8xDTALBgNVBAMMBHg5NzIwE6QRMA8xDTALBgNVBAMMBHg5 -NzMwE6QRMA8xDTALBgNVBAMMBHg5NzQwE6QRMA8xDTALBgNVBAMMBHg5NzUwE6QR -MA8xDTALBgNVBAMMBHg5NzYwE6QRMA8xDTALBgNVBAMMBHg5NzcwE6QRMA8xDTAL -BgNVBAMMBHg5NzgwE6QRMA8xDTALBgNVBAMMBHg5NzkwE6QRMA8xDTALBgNVBAMM -BHg5ODAwE6QRMA8xDTALBgNVBAMMBHg5ODEwE6QRMA8xDTALBgNVBAMMBHg5ODIw -E6QRMA8xDTALBgNVBAMMBHg5ODMwE6QRMA8xDTALBgNVBAMMBHg5ODQwE6QRMA8x -DTALBgNVBAMMBHg5ODUwE6QRMA8xDTALBgNVBAMMBHg5ODYwE6QRMA8xDTALBgNV -BAMMBHg5ODcwE6QRMA8xDTALBgNVBAMMBHg5ODgwE6QRMA8xDTALBgNVBAMMBHg5 -ODkwE6QRMA8xDTALBgNVBAMMBHg5OTAwE6QRMA8xDTALBgNVBAMMBHg5OTEwE6QR -MA8xDTALBgNVBAMMBHg5OTIwE6QRMA8xDTALBgNVBAMMBHg5OTMwE6QRMA8xDTAL -BgNVBAMMBHg5OTQwE6QRMA8xDTALBgNVBAMMBHg5OTUwE6QRMA8xDTALBgNVBAMM -BHg5OTYwE6QRMA8xDTALBgNVBAMMBHg5OTcwE6QRMA8xDTALBgNVBAMMBHg5OTgw -E6QRMA8xDTALBgNVBAMMBHg5OTkwFKQSMBAxDjAMBgNVBAMMBXgxMDAwMBSkEjAQ -MQ4wDAYDVQQDDAV4MTAwMTAUpBIwEDEOMAwGA1UEAwwFeDEwMDIwFKQSMBAxDjAM -BgNVBAMMBXgxMDAzMBSkEjAQMQ4wDAYDVQQDDAV4MTAwNDAUpBIwEDEOMAwGA1UE -AwwFeDEwMDUwFKQSMBAxDjAMBgNVBAMMBXgxMDA2MBSkEjAQMQ4wDAYDVQQDDAV4 -MTAwNzAUpBIwEDEOMAwGA1UEAwwFeDEwMDgwFKQSMBAxDjAMBgNVBAMMBXgxMDA5 -MBSkEjAQMQ4wDAYDVQQDDAV4MTAxMDAUpBIwEDEOMAwGA1UEAwwFeDEwMTEwFKQS -MBAxDjAMBgNVBAMMBXgxMDEyMBSkEjAQMQ4wDAYDVQQDDAV4MTAxMzAUpBIwEDEO -MAwGA1UEAwwFeDEwMTQwFKQSMBAxDjAMBgNVBAMMBXgxMDE1MBSkEjAQMQ4wDAYD -VQQDDAV4MTAxNjAUpBIwEDEOMAwGA1UEAwwFeDEwMTcwFKQSMBAxDjAMBgNVBAMM -BXgxMDE4MBSkEjAQMQ4wDAYDVQQDDAV4MTAxOTAUpBIwEDEOMAwGA1UEAwwFeDEw -MjAwFKQSMBAxDjAMBgNVBAMMBXgxMDIxMBSkEjAQMQ4wDAYDVQQDDAV4MTAyMjAU -pBIwEDEOMAwGA1UEAwwFeDEwMjMwFKQSMBAxDjAMBgNVBAMMBXgxMDI0MA0GCSqG -SIb3DQEBCwUAA4IBAQBoJGSEQnLMMRBQqBZbt0mGMWg/kQ+gIMMrmDXlGZQOEqOS -dqVGnvNsatk/SuN23rCyK5q7Lk0zEzphAycTqBDOfbki6jeHBXGG0SNFnU2P6G6D -CUsHJpiNQhJvgmyZjvAAclFxw6E15lOnZ0JhoFadtORJfMU5m4TRmXXzgMcf06hp -42R/YH56YSqmgmTyKk6vr2feu70f2DMgyrnMWED+UB4EfzaVpqYVREKFO7z9DNPW -B20TDJ2Awiy18UlnAIDmmroBJiyxQQkeQInbmXPw3jOH+Bgv/NXoNcJOSclUmJlb -rlMfJ47MOUPqO0IaqSp3AZ3SHxTw9BXZF7cthZ00 ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.pem deleted file mode 100644 index 5c9553ca67..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_4.pem +++ /dev/null @@ -1,1564 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:fa - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Excluded: - DirName: CN = x0 - DirName: CN = x1 - DirName: CN = x2 - DirName: CN = x3 - DirName: CN = x4 - DirName: CN = x5 - DirName: CN = x6 - DirName: CN = x7 - DirName: CN = x8 - DirName: CN = x9 - DirName: CN = x10 - DirName: CN = x11 - DirName: CN = x12 - DirName: CN = x13 - DirName: CN = x14 - DirName: CN = x15 - DirName: CN = x16 - DirName: CN = x17 - DirName: CN = x18 - DirName: CN = x19 - DirName: CN = x20 - DirName: CN = x21 - DirName: CN = x22 - DirName: CN = x23 - DirName: CN = x24 - DirName: CN = x25 - DirName: CN = x26 - DirName: CN = x27 - DirName: CN = x28 - DirName: CN = x29 - DirName: CN = x30 - DirName: CN = x31 - DirName: CN = x32 - DirName: CN = x33 - DirName: CN = x34 - DirName: CN = x35 - DirName: CN = x36 - DirName: CN = x37 - DirName: CN = x38 - DirName: CN = x39 - DirName: CN = x40 - DirName: CN = x41 - DirName: CN = x42 - DirName: CN = x43 - DirName: CN = x44 - DirName: CN = x45 - DirName: CN = x46 - DirName: CN = x47 - DirName: CN = x48 - DirName: CN = x49 - DirName: CN = x50 - DirName: CN = x51 - DirName: CN = x52 - DirName: CN = x53 - DirName: CN = x54 - DirName: CN = x55 - DirName: CN = x56 - DirName: CN = x57 - DirName: CN = x58 - DirName: CN = x59 - DirName: CN = x60 - DirName: CN = x61 - DirName: CN = x62 - DirName: CN = x63 - DirName: CN = x64 - DirName: CN = x65 - DirName: CN = x66 - DirName: CN = x67 - DirName: CN = x68 - DirName: CN = x69 - DirName: CN = x70 - DirName: CN = x71 - DirName: CN = x72 - DirName: CN = x73 - DirName: CN = x74 - DirName: CN = x75 - DirName: CN = x76 - DirName: CN = x77 - DirName: CN = x78 - DirName: CN = x79 - DirName: CN = x80 - DirName: CN = x81 - DirName: CN = x82 - DirName: CN = x83 - DirName: CN = x84 - DirName: CN = x85 - DirName: CN = x86 - DirName: CN = x87 - DirName: CN = x88 - DirName: CN = x89 - DirName: CN = x90 - DirName: CN = x91 - DirName: CN = x92 - DirName: CN = x93 - DirName: CN = x94 - DirName: CN = x95 - DirName: CN = x96 - DirName: CN = x97 - DirName: CN = x98 - DirName: CN = x99 - DirName: CN = x100 - DirName: CN = x101 - DirName: CN = x102 - DirName: CN = x103 - DirName: CN = x104 - DirName: CN = x105 - DirName: CN = x106 - DirName: CN = x107 - DirName: CN = x108 - DirName: CN = x109 - DirName: CN = x110 - DirName: CN = x111 - DirName: CN = x112 - DirName: CN = x113 - DirName: CN = x114 - DirName: CN = x115 - DirName: CN = x116 - DirName: CN = x117 - DirName: CN = x118 - DirName: CN = x119 - DirName: CN = x120 - DirName: CN = x121 - DirName: CN = x122 - DirName: CN = x123 - DirName: CN = x124 - DirName: CN = x125 - DirName: CN = x126 - DirName: CN = x127 - DirName: CN = x128 - DirName: CN = x129 - DirName: CN = x130 - DirName: CN = x131 - DirName: CN = x132 - DirName: CN = x133 - DirName: CN = x134 - DirName: CN = x135 - DirName: CN = x136 - DirName: CN = x137 - DirName: CN = x138 - DirName: CN = x139 - DirName: CN = x140 - DirName: CN = x141 - DirName: CN = x142 - DirName: CN = x143 - DirName: CN = x144 - DirName: CN = x145 - DirName: CN = x146 - DirName: CN = x147 - DirName: CN = x148 - DirName: CN = x149 - DirName: CN = x150 - DirName: CN = x151 - DirName: CN = x152 - DirName: CN = x153 - DirName: CN = x154 - DirName: CN = x155 - DirName: CN = x156 - DirName: CN = x157 - DirName: CN = x158 - DirName: CN = x159 - DirName: CN = x160 - DirName: CN = x161 - DirName: CN = x162 - DirName: CN = x163 - DirName: CN = x164 - DirName: CN = x165 - DirName: CN = x166 - DirName: CN = x167 - DirName: CN = x168 - DirName: CN = x169 - DirName: CN = x170 - DirName: CN = x171 - DirName: CN = x172 - DirName: CN = x173 - DirName: CN = x174 - DirName: CN = x175 - DirName: CN = x176 - DirName: CN = x177 - DirName: CN = x178 - DirName: CN = x179 - DirName: CN = x180 - DirName: CN = x181 - DirName: CN = x182 - DirName: CN = x183 - DirName: CN = x184 - DirName: CN = x185 - DirName: CN = x186 - DirName: CN = x187 - DirName: CN = x188 - DirName: CN = x189 - DirName: CN = x190 - DirName: CN = x191 - DirName: CN = x192 - DirName: CN = x193 - DirName: CN = x194 - DirName: CN = x195 - DirName: CN = x196 - DirName: CN = x197 - DirName: CN = x198 - DirName: CN = x199 - DirName: CN = x200 - DirName: CN = x201 - DirName: CN = x202 - DirName: CN = x203 - DirName: CN = x204 - DirName: CN = x205 - DirName: CN = x206 - DirName: CN = x207 - DirName: CN = x208 - DirName: CN = x209 - DirName: CN = x210 - DirName: CN = x211 - DirName: CN = x212 - DirName: CN = x213 - DirName: CN = x214 - DirName: CN = x215 - DirName: CN = x216 - DirName: CN = x217 - DirName: CN = x218 - DirName: CN = x219 - DirName: CN = x220 - DirName: CN = x221 - DirName: CN = x222 - DirName: CN = x223 - DirName: CN = x224 - DirName: CN = x225 - DirName: CN = x226 - DirName: CN = x227 - DirName: CN = x228 - DirName: CN = x229 - DirName: CN = x230 - DirName: CN = x231 - DirName: CN = x232 - DirName: CN = x233 - DirName: CN = x234 - DirName: CN = x235 - DirName: CN = x236 - DirName: CN = x237 - DirName: CN = x238 - DirName: CN = x239 - DirName: CN = x240 - DirName: CN = x241 - DirName: CN = x242 - DirName: CN = x243 - DirName: CN = x244 - DirName: CN = x245 - DirName: CN = x246 - DirName: CN = x247 - DirName: CN = x248 - DirName: CN = x249 - DirName: CN = x250 - DirName: CN = x251 - DirName: CN = x252 - DirName: CN = x253 - DirName: CN = x254 - DirName: CN = x255 - DirName: CN = x256 - DirName: CN = x257 - DirName: CN = x258 - DirName: CN = x259 - DirName: CN = x260 - DirName: CN = x261 - DirName: CN = x262 - DirName: CN = x263 - DirName: CN = x264 - DirName: CN = x265 - DirName: CN = x266 - DirName: CN = x267 - DirName: CN = x268 - DirName: CN = x269 - DirName: CN = x270 - DirName: CN = x271 - DirName: CN = x272 - DirName: CN = x273 - DirName: CN = x274 - DirName: CN = x275 - DirName: CN = x276 - DirName: CN = x277 - DirName: CN = x278 - DirName: CN = x279 - DirName: CN = x280 - DirName: CN = x281 - DirName: CN = x282 - DirName: CN = x283 - DirName: CN = x284 - DirName: CN = x285 - DirName: CN = x286 - DirName: CN = x287 - DirName: CN = x288 - DirName: CN = x289 - DirName: CN = x290 - DirName: CN = x291 - DirName: CN = x292 - DirName: CN = x293 - DirName: CN = x294 - DirName: CN = x295 - DirName: CN = x296 - DirName: CN = x297 - DirName: CN = x298 - DirName: CN = x299 - DirName: CN = x300 - DirName: CN = x301 - DirName: CN = x302 - DirName: CN = x303 - DirName: CN = x304 - DirName: CN = x305 - DirName: CN = x306 - DirName: CN = x307 - DirName: CN = x308 - DirName: CN = x309 - DirName: CN = x310 - DirName: CN = x311 - DirName: CN = x312 - DirName: CN = x313 - DirName: CN = x314 - DirName: CN = x315 - DirName: CN = x316 - DirName: CN = x317 - DirName: CN = x318 - DirName: CN = x319 - DirName: CN = x320 - DirName: CN = x321 - DirName: CN = x322 - DirName: CN = x323 - DirName: CN = x324 - DirName: CN = x325 - DirName: CN = x326 - DirName: CN = x327 - DirName: CN = x328 - DirName: CN = x329 - DirName: CN = x330 - DirName: CN = x331 - DirName: CN = x332 - DirName: CN = x333 - DirName: CN = x334 - DirName: CN = x335 - DirName: CN = x336 - DirName: CN = x337 - DirName: CN = x338 - DirName: CN = x339 - DirName: CN = x340 - DirName: CN = x341 - DirName: CN = x342 - DirName: CN = x343 - DirName: CN = x344 - DirName: CN = x345 - DirName: CN = x346 - DirName: CN = x347 - DirName: CN = x348 - DirName: CN = x349 - DirName: CN = x350 - DirName: CN = x351 - DirName: CN = x352 - DirName: CN = x353 - DirName: CN = x354 - DirName: CN = x355 - DirName: CN = x356 - DirName: CN = x357 - DirName: CN = x358 - DirName: CN = x359 - DirName: CN = x360 - DirName: CN = x361 - DirName: CN = x362 - DirName: CN = x363 - DirName: CN = x364 - DirName: CN = x365 - DirName: CN = x366 - DirName: CN = x367 - DirName: CN = x368 - DirName: CN = x369 - DirName: CN = x370 - DirName: CN = x371 - DirName: CN = x372 - DirName: CN = x373 - DirName: CN = x374 - DirName: CN = x375 - DirName: CN = x376 - DirName: CN = x377 - DirName: CN = x378 - DirName: CN = x379 - DirName: CN = x380 - DirName: CN = x381 - DirName: CN = x382 - DirName: CN = x383 - DirName: CN = x384 - DirName: CN = x385 - DirName: CN = x386 - DirName: CN = x387 - DirName: CN = x388 - DirName: CN = x389 - DirName: CN = x390 - DirName: CN = x391 - DirName: CN = x392 - DirName: CN = x393 - DirName: CN = x394 - DirName: CN = x395 - DirName: CN = x396 - DirName: CN = x397 - DirName: CN = x398 - DirName: CN = x399 - DirName: CN = x400 - DirName: CN = x401 - DirName: CN = x402 - DirName: CN = x403 - DirName: CN = x404 - DirName: CN = x405 - DirName: CN = x406 - DirName: CN = x407 - DirName: CN = x408 - DirName: CN = x409 - DirName: CN = x410 - DirName: CN = x411 - DirName: CN = x412 - DirName: CN = x413 - DirName: CN = x414 - DirName: CN = x415 - DirName: CN = x416 - DirName: CN = x417 - DirName: CN = x418 - DirName: CN = x419 - DirName: CN = x420 - DirName: CN = x421 - DirName: CN = x422 - DirName: CN = x423 - DirName: CN = x424 - DirName: CN = x425 - DirName: CN = x426 - DirName: CN = x427 - DirName: CN = x428 - DirName: CN = x429 - DirName: CN = x430 - DirName: CN = x431 - DirName: CN = x432 - DirName: CN = x433 - DirName: CN = x434 - DirName: CN = x435 - DirName: CN = x436 - DirName: CN = x437 - DirName: CN = x438 - DirName: CN = x439 - DirName: CN = x440 - DirName: CN = x441 - DirName: CN = x442 - DirName: CN = x443 - DirName: CN = x444 - DirName: CN = x445 - DirName: CN = x446 - DirName: CN = x447 - DirName: CN = x448 - DirName: CN = x449 - DirName: CN = x450 - DirName: CN = x451 - DirName: CN = x452 - DirName: CN = x453 - DirName: CN = x454 - DirName: CN = x455 - DirName: CN = x456 - DirName: CN = x457 - DirName: CN = x458 - DirName: CN = x459 - DirName: CN = x460 - DirName: CN = x461 - DirName: CN = x462 - DirName: CN = x463 - DirName: CN = x464 - DirName: CN = x465 - DirName: CN = x466 - DirName: CN = x467 - DirName: CN = x468 - DirName: CN = x469 - DirName: CN = x470 - DirName: CN = x471 - DirName: CN = x472 - DirName: CN = x473 - DirName: CN = x474 - DirName: CN = x475 - DirName: CN = x476 - DirName: CN = x477 - DirName: CN = x478 - DirName: CN = x479 - DirName: CN = x480 - DirName: CN = x481 - DirName: CN = x482 - DirName: CN = x483 - DirName: CN = x484 - DirName: CN = x485 - DirName: CN = x486 - DirName: CN = x487 - DirName: CN = x488 - DirName: CN = x489 - DirName: CN = x490 - DirName: CN = x491 - DirName: CN = x492 - DirName: CN = x493 - DirName: CN = x494 - DirName: CN = x495 - DirName: CN = x496 - DirName: CN = x497 - DirName: CN = x498 - DirName: CN = x499 - DirName: CN = x500 - DirName: CN = x501 - DirName: CN = x502 - DirName: CN = x503 - DirName: CN = x504 - DirName: CN = x505 - DirName: CN = x506 - DirName: CN = x507 - DirName: CN = x508 - DirName: CN = x509 - DirName: CN = x510 - DirName: CN = x511 - DirName: CN = x512 - DirName: CN = x513 - DirName: CN = x514 - DirName: CN = x515 - DirName: CN = x516 - DirName: CN = x517 - DirName: CN = x518 - DirName: CN = x519 - DirName: CN = x520 - DirName: CN = x521 - DirName: CN = x522 - DirName: CN = x523 - DirName: CN = x524 - DirName: CN = x525 - DirName: CN = x526 - DirName: CN = x527 - DirName: CN = x528 - DirName: CN = x529 - DirName: CN = x530 - DirName: CN = x531 - DirName: CN = x532 - DirName: CN = x533 - DirName: CN = x534 - DirName: CN = x535 - DirName: CN = x536 - DirName: CN = x537 - DirName: CN = x538 - DirName: CN = x539 - DirName: CN = x540 - DirName: CN = x541 - DirName: CN = x542 - DirName: CN = x543 - DirName: CN = x544 - DirName: CN = x545 - DirName: CN = x546 - DirName: CN = x547 - DirName: CN = x548 - DirName: CN = x549 - DirName: CN = x550 - DirName: CN = x551 - DirName: CN = x552 - DirName: CN = x553 - DirName: CN = x554 - DirName: CN = x555 - DirName: CN = x556 - DirName: CN = x557 - DirName: CN = x558 - DirName: CN = x559 - DirName: CN = x560 - DirName: CN = x561 - DirName: CN = x562 - DirName: CN = x563 - DirName: CN = x564 - DirName: CN = x565 - DirName: CN = x566 - DirName: CN = x567 - DirName: CN = x568 - DirName: CN = x569 - DirName: CN = x570 - DirName: CN = x571 - DirName: CN = x572 - DirName: CN = x573 - DirName: CN = x574 - DirName: CN = x575 - DirName: CN = x576 - DirName: CN = x577 - DirName: CN = x578 - DirName: CN = x579 - DirName: CN = x580 - DirName: CN = x581 - DirName: CN = x582 - DirName: CN = x583 - DirName: CN = x584 - DirName: CN = x585 - DirName: CN = x586 - DirName: CN = x587 - DirName: CN = x588 - DirName: CN = x589 - DirName: CN = x590 - DirName: CN = x591 - DirName: CN = x592 - DirName: CN = x593 - DirName: CN = x594 - DirName: CN = x595 - DirName: CN = x596 - DirName: CN = x597 - DirName: CN = x598 - DirName: CN = x599 - DirName: CN = x600 - DirName: CN = x601 - DirName: CN = x602 - DirName: CN = x603 - DirName: CN = x604 - DirName: CN = x605 - DirName: CN = x606 - DirName: CN = x607 - DirName: CN = x608 - DirName: CN = x609 - DirName: CN = x610 - DirName: CN = x611 - DirName: CN = x612 - DirName: CN = x613 - DirName: CN = x614 - DirName: CN = x615 - DirName: CN = x616 - DirName: CN = x617 - DirName: CN = x618 - DirName: CN = x619 - DirName: CN = x620 - DirName: CN = x621 - DirName: CN = x622 - DirName: CN = x623 - DirName: CN = x624 - DirName: CN = x625 - DirName: CN = x626 - DirName: CN = x627 - DirName: CN = x628 - DirName: CN = x629 - DirName: CN = x630 - DirName: CN = x631 - DirName: CN = x632 - DirName: CN = x633 - DirName: CN = x634 - DirName: CN = x635 - DirName: CN = x636 - DirName: CN = x637 - DirName: CN = x638 - DirName: CN = x639 - DirName: CN = x640 - DirName: CN = x641 - DirName: CN = x642 - DirName: CN = x643 - DirName: CN = x644 - DirName: CN = x645 - DirName: CN = x646 - DirName: CN = x647 - DirName: CN = x648 - DirName: CN = x649 - DirName: CN = x650 - DirName: CN = x651 - DirName: CN = x652 - DirName: CN = x653 - DirName: CN = x654 - DirName: CN = x655 - DirName: CN = x656 - DirName: CN = x657 - DirName: CN = x658 - DirName: CN = x659 - DirName: CN = x660 - DirName: CN = x661 - DirName: CN = x662 - DirName: CN = x663 - DirName: CN = x664 - DirName: CN = x665 - DirName: CN = x666 - DirName: CN = x667 - DirName: CN = x668 - DirName: CN = x669 - DirName: CN = x670 - DirName: CN = x671 - DirName: CN = x672 - DirName: CN = x673 - DirName: CN = x674 - DirName: CN = x675 - DirName: CN = x676 - DirName: CN = x677 - DirName: CN = x678 - DirName: CN = x679 - DirName: CN = x680 - DirName: CN = x681 - DirName: CN = x682 - DirName: CN = x683 - DirName: CN = x684 - DirName: CN = x685 - DirName: CN = x686 - DirName: CN = x687 - DirName: CN = x688 - DirName: CN = x689 - DirName: CN = x690 - DirName: CN = x691 - DirName: CN = x692 - DirName: CN = x693 - DirName: CN = x694 - DirName: CN = x695 - DirName: CN = x696 - DirName: CN = x697 - DirName: CN = x698 - DirName: CN = x699 - DirName: CN = x700 - DirName: CN = x701 - DirName: CN = x702 - DirName: CN = x703 - DirName: CN = x704 - DirName: CN = x705 - DirName: CN = x706 - DirName: CN = x707 - DirName: CN = x708 - DirName: CN = x709 - DirName: CN = x710 - DirName: CN = x711 - DirName: CN = x712 - DirName: CN = x713 - DirName: CN = x714 - DirName: CN = x715 - DirName: CN = x716 - DirName: CN = x717 - DirName: CN = x718 - DirName: CN = x719 - DirName: CN = x720 - DirName: CN = x721 - DirName: CN = x722 - DirName: CN = x723 - DirName: CN = x724 - DirName: CN = x725 - DirName: CN = x726 - DirName: CN = x727 - DirName: CN = x728 - DirName: CN = x729 - DirName: CN = x730 - DirName: CN = x731 - DirName: CN = x732 - DirName: CN = x733 - DirName: CN = x734 - DirName: CN = x735 - DirName: CN = x736 - DirName: CN = x737 - DirName: CN = x738 - DirName: CN = x739 - DirName: CN = x740 - DirName: CN = x741 - DirName: CN = x742 - DirName: CN = x743 - DirName: CN = x744 - DirName: CN = x745 - DirName: CN = x746 - DirName: CN = x747 - DirName: CN = x748 - DirName: CN = x749 - DirName: CN = x750 - DirName: CN = x751 - DirName: CN = x752 - DirName: CN = x753 - DirName: CN = x754 - DirName: CN = x755 - DirName: CN = x756 - DirName: CN = x757 - DirName: CN = x758 - DirName: CN = x759 - DirName: CN = x760 - DirName: CN = x761 - DirName: CN = x762 - DirName: CN = x763 - DirName: CN = x764 - DirName: CN = x765 - DirName: CN = x766 - DirName: CN = x767 - DirName: CN = x768 - DirName: CN = x769 - DirName: CN = x770 - DirName: CN = x771 - DirName: CN = x772 - DirName: CN = x773 - DirName: CN = x774 - DirName: CN = x775 - DirName: CN = x776 - DirName: CN = x777 - DirName: CN = x778 - DirName: CN = x779 - DirName: CN = x780 - DirName: CN = x781 - DirName: CN = x782 - DirName: CN = x783 - DirName: CN = x784 - DirName: CN = x785 - DirName: CN = x786 - DirName: CN = x787 - DirName: CN = x788 - DirName: CN = x789 - DirName: CN = x790 - DirName: CN = x791 - DirName: CN = x792 - DirName: CN = x793 - DirName: CN = x794 - DirName: CN = x795 - DirName: CN = x796 - DirName: CN = x797 - DirName: CN = x798 - DirName: CN = x799 - DirName: CN = x800 - DirName: CN = x801 - DirName: CN = x802 - DirName: CN = x803 - DirName: CN = x804 - DirName: CN = x805 - DirName: CN = x806 - DirName: CN = x807 - DirName: CN = x808 - DirName: CN = x809 - DirName: CN = x810 - DirName: CN = x811 - DirName: CN = x812 - DirName: CN = x813 - DirName: CN = x814 - DirName: CN = x815 - DirName: CN = x816 - DirName: CN = x817 - DirName: CN = x818 - DirName: CN = x819 - DirName: CN = x820 - DirName: CN = x821 - DirName: CN = x822 - DirName: CN = x823 - DirName: CN = x824 - DirName: CN = x825 - DirName: CN = x826 - DirName: CN = x827 - DirName: CN = x828 - DirName: CN = x829 - DirName: CN = x830 - DirName: CN = x831 - DirName: CN = x832 - DirName: CN = x833 - DirName: CN = x834 - DirName: CN = x835 - DirName: CN = x836 - DirName: CN = x837 - DirName: CN = x838 - DirName: CN = x839 - DirName: CN = x840 - DirName: CN = x841 - DirName: CN = x842 - DirName: CN = x843 - DirName: CN = x844 - DirName: CN = x845 - DirName: CN = x846 - DirName: CN = x847 - DirName: CN = x848 - DirName: CN = x849 - DirName: CN = x850 - DirName: CN = x851 - DirName: CN = x852 - DirName: CN = x853 - DirName: CN = x854 - DirName: CN = x855 - DirName: CN = x856 - DirName: CN = x857 - DirName: CN = x858 - DirName: CN = x859 - DirName: CN = x860 - DirName: CN = x861 - DirName: CN = x862 - DirName: CN = x863 - DirName: CN = x864 - DirName: CN = x865 - DirName: CN = x866 - DirName: CN = x867 - DirName: CN = x868 - DirName: CN = x869 - DirName: CN = x870 - DirName: CN = x871 - DirName: CN = x872 - DirName: CN = x873 - DirName: CN = x874 - DirName: CN = x875 - DirName: CN = x876 - DirName: CN = x877 - DirName: CN = x878 - DirName: CN = x879 - DirName: CN = x880 - DirName: CN = x881 - DirName: CN = x882 - DirName: CN = x883 - DirName: CN = x884 - DirName: CN = x885 - DirName: CN = x886 - DirName: CN = x887 - DirName: CN = x888 - DirName: CN = x889 - DirName: CN = x890 - DirName: CN = x891 - DirName: CN = x892 - DirName: CN = x893 - DirName: CN = x894 - DirName: CN = x895 - DirName: CN = x896 - DirName: CN = x897 - DirName: CN = x898 - DirName: CN = x899 - DirName: CN = x900 - DirName: CN = x901 - DirName: CN = x902 - DirName: CN = x903 - DirName: CN = x904 - DirName: CN = x905 - DirName: CN = x906 - DirName: CN = x907 - DirName: CN = x908 - DirName: CN = x909 - DirName: CN = x910 - DirName: CN = x911 - DirName: CN = x912 - DirName: CN = x913 - DirName: CN = x914 - DirName: CN = x915 - DirName: CN = x916 - DirName: CN = x917 - DirName: CN = x918 - DirName: CN = x919 - DirName: CN = x920 - DirName: CN = x921 - DirName: CN = x922 - DirName: CN = x923 - DirName: CN = x924 - DirName: CN = x925 - DirName: CN = x926 - DirName: CN = x927 - DirName: CN = x928 - DirName: CN = x929 - DirName: CN = x930 - DirName: CN = x931 - DirName: CN = x932 - DirName: CN = x933 - DirName: CN = x934 - DirName: CN = x935 - DirName: CN = x936 - DirName: CN = x937 - DirName: CN = x938 - DirName: CN = x939 - DirName: CN = x940 - DirName: CN = x941 - DirName: CN = x942 - DirName: CN = x943 - DirName: CN = x944 - DirName: CN = x945 - DirName: CN = x946 - DirName: CN = x947 - DirName: CN = x948 - DirName: CN = x949 - DirName: CN = x950 - DirName: CN = x951 - DirName: CN = x952 - DirName: CN = x953 - DirName: CN = x954 - DirName: CN = x955 - DirName: CN = x956 - DirName: CN = x957 - DirName: CN = x958 - DirName: CN = x959 - DirName: CN = x960 - DirName: CN = x961 - DirName: CN = x962 - DirName: CN = x963 - DirName: CN = x964 - DirName: CN = x965 - DirName: CN = x966 - DirName: CN = x967 - DirName: CN = x968 - DirName: CN = x969 - DirName: CN = x970 - DirName: CN = x971 - DirName: CN = x972 - DirName: CN = x973 - DirName: CN = x974 - DirName: CN = x975 - DirName: CN = x976 - DirName: CN = x977 - DirName: CN = x978 - DirName: CN = x979 - DirName: CN = x980 - DirName: CN = x981 - DirName: CN = x982 - DirName: CN = x983 - DirName: CN = x984 - DirName: CN = x985 - DirName: CN = x986 - DirName: CN = x987 - DirName: CN = x988 - DirName: CN = x989 - DirName: CN = x990 - DirName: CN = x991 - DirName: CN = x992 - DirName: CN = x993 - DirName: CN = x994 - DirName: CN = x995 - DirName: CN = x996 - DirName: CN = x997 - DirName: CN = x998 - DirName: CN = x999 - DirName: CN = x1000 - DirName: CN = x1001 - DirName: CN = x1002 - DirName: CN = x1003 - DirName: CN = x1004 - DirName: CN = x1005 - DirName: CN = x1006 - DirName: CN = x1007 - DirName: CN = x1008 - DirName: CN = x1009 - DirName: CN = x1010 - DirName: CN = x1011 - DirName: CN = x1012 - DirName: CN = x1013 - DirName: CN = x1014 - DirName: CN = x1015 - DirName: CN = x1016 - DirName: CN = x1017 - DirName: CN = x1018 - DirName: CN = x1019 - DirName: CN = x1020 - DirName: CN = x1021 - DirName: CN = x1022 - DirName: CN = x1023 - DirName: CN = x1024 - - Signature Algorithm: sha256WithRSAEncryption - 75:8f:ad:5f:a0:8c:a2:05:18:d8:98:a6:c5:1d:7c:b9:11:f4: - 14:6a:24:56:21:11:98:c7:df:0c:12:6c:43:3d:45:54:de:10: - 14:e5:7b:c0:d8:77:64:c2:01:8b:f3:d0:10:d8:03:43:fe:f9: - 50:79:c6:91:34:38:77:bf:0e:09:7f:1f:7f:8f:50:9f:2a:f2: - 31:5b:37:0e:04:55:13:2b:1b:34:32:0e:8d:db:a8:ed:34:d0: - 6a:83:a0:f9:31:d1:5f:2d:58:07:29:25:d3:1c:de:f8:7a:ac: - 3d:a7:67:4a:4c:ea:e0:f9:0f:91:ff:d8:48:dc:11:ec:a8:23: - a1:e4:62:51:b0:93:f8:6d:63:0f:26:c4:aa:09:e7:30:85:94: - cc:22:2d:a6:c1:e1:5a:77:70:e2:be:50:67:2b:7a:85:8e:56: - 35:f7:59:89:70:6f:8a:fe:1c:bd:16:b5:85:22:0e:f2:1e:d0: - 00:5b:63:7f:5b:eb:1e:23:c0:d5:c6:c9:97:9d:9a:a7:f6:2b: - 8d:54:64:0b:f7:db:26:5e:08:b2:0c:8e:dc:df:1f:e9:92:3a: - f1:cb:89:d4:1f:46:45:9c:e8:0c:b2:6c:aa:9f:55:fc:cd:02: - fc:3c:82:9c:a5:79:f2:27:a6:a5:83:83:64:7f:02:d0:8c:f3: - 8f:32:a7:e1 ------BEGIN CERTIFICATE----- -MIJXVzCCVj+gAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vowDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCVKEwglSdMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wglPRBgNVHR4EglPIMIJTxKGCU8AwEaQPMA0xCzAJBgNVBAMMAngwMBGkDzAN -MQswCQYDVQQDDAJ4MTARpA8wDTELMAkGA1UEAwwCeDIwEaQPMA0xCzAJBgNVBAMM -AngzMBGkDzANMQswCQYDVQQDDAJ4NDARpA8wDTELMAkGA1UEAwwCeDUwEaQPMA0x -CzAJBgNVBAMMAng2MBGkDzANMQswCQYDVQQDDAJ4NzARpA8wDTELMAkGA1UEAwwC -eDgwEaQPMA0xCzAJBgNVBAMMAng5MBKkEDAOMQwwCgYDVQQDDAN4MTAwEqQQMA4x -DDAKBgNVBAMMA3gxMTASpBAwDjEMMAoGA1UEAwwDeDEyMBKkEDAOMQwwCgYDVQQD -DAN4MTMwEqQQMA4xDDAKBgNVBAMMA3gxNDASpBAwDjEMMAoGA1UEAwwDeDE1MBKk -EDAOMQwwCgYDVQQDDAN4MTYwEqQQMA4xDDAKBgNVBAMMA3gxNzASpBAwDjEMMAoG -A1UEAwwDeDE4MBKkEDAOMQwwCgYDVQQDDAN4MTkwEqQQMA4xDDAKBgNVBAMMA3gy -MDASpBAwDjEMMAoGA1UEAwwDeDIxMBKkEDAOMQwwCgYDVQQDDAN4MjIwEqQQMA4x -DDAKBgNVBAMMA3gyMzASpBAwDjEMMAoGA1UEAwwDeDI0MBKkEDAOMQwwCgYDVQQD -DAN4MjUwEqQQMA4xDDAKBgNVBAMMA3gyNjASpBAwDjEMMAoGA1UEAwwDeDI3MBKk -EDAOMQwwCgYDVQQDDAN4MjgwEqQQMA4xDDAKBgNVBAMMA3gyOTASpBAwDjEMMAoG -A1UEAwwDeDMwMBKkEDAOMQwwCgYDVQQDDAN4MzEwEqQQMA4xDDAKBgNVBAMMA3gz -MjASpBAwDjEMMAoGA1UEAwwDeDMzMBKkEDAOMQwwCgYDVQQDDAN4MzQwEqQQMA4x -DDAKBgNVBAMMA3gzNTASpBAwDjEMMAoGA1UEAwwDeDM2MBKkEDAOMQwwCgYDVQQD -DAN4MzcwEqQQMA4xDDAKBgNVBAMMA3gzODASpBAwDjEMMAoGA1UEAwwDeDM5MBKk -EDAOMQwwCgYDVQQDDAN4NDAwEqQQMA4xDDAKBgNVBAMMA3g0MTASpBAwDjEMMAoG -A1UEAwwDeDQyMBKkEDAOMQwwCgYDVQQDDAN4NDMwEqQQMA4xDDAKBgNVBAMMA3g0 -NDASpBAwDjEMMAoGA1UEAwwDeDQ1MBKkEDAOMQwwCgYDVQQDDAN4NDYwEqQQMA4x -DDAKBgNVBAMMA3g0NzASpBAwDjEMMAoGA1UEAwwDeDQ4MBKkEDAOMQwwCgYDVQQD -DAN4NDkwEqQQMA4xDDAKBgNVBAMMA3g1MDASpBAwDjEMMAoGA1UEAwwDeDUxMBKk -EDAOMQwwCgYDVQQDDAN4NTIwEqQQMA4xDDAKBgNVBAMMA3g1MzASpBAwDjEMMAoG -A1UEAwwDeDU0MBKkEDAOMQwwCgYDVQQDDAN4NTUwEqQQMA4xDDAKBgNVBAMMA3g1 -NjASpBAwDjEMMAoGA1UEAwwDeDU3MBKkEDAOMQwwCgYDVQQDDAN4NTgwEqQQMA4x -DDAKBgNVBAMMA3g1OTASpBAwDjEMMAoGA1UEAwwDeDYwMBKkEDAOMQwwCgYDVQQD -DAN4NjEwEqQQMA4xDDAKBgNVBAMMA3g2MjASpBAwDjEMMAoGA1UEAwwDeDYzMBKk -EDAOMQwwCgYDVQQDDAN4NjQwEqQQMA4xDDAKBgNVBAMMA3g2NTASpBAwDjEMMAoG -A1UEAwwDeDY2MBKkEDAOMQwwCgYDVQQDDAN4NjcwEqQQMA4xDDAKBgNVBAMMA3g2 -ODASpBAwDjEMMAoGA1UEAwwDeDY5MBKkEDAOMQwwCgYDVQQDDAN4NzAwEqQQMA4x -DDAKBgNVBAMMA3g3MTASpBAwDjEMMAoGA1UEAwwDeDcyMBKkEDAOMQwwCgYDVQQD -DAN4NzMwEqQQMA4xDDAKBgNVBAMMA3g3NDASpBAwDjEMMAoGA1UEAwwDeDc1MBKk -EDAOMQwwCgYDVQQDDAN4NzYwEqQQMA4xDDAKBgNVBAMMA3g3NzASpBAwDjEMMAoG -A1UEAwwDeDc4MBKkEDAOMQwwCgYDVQQDDAN4NzkwEqQQMA4xDDAKBgNVBAMMA3g4 -MDASpBAwDjEMMAoGA1UEAwwDeDgxMBKkEDAOMQwwCgYDVQQDDAN4ODIwEqQQMA4x -DDAKBgNVBAMMA3g4MzASpBAwDjEMMAoGA1UEAwwDeDg0MBKkEDAOMQwwCgYDVQQD -DAN4ODUwEqQQMA4xDDAKBgNVBAMMA3g4NjASpBAwDjEMMAoGA1UEAwwDeDg3MBKk -EDAOMQwwCgYDVQQDDAN4ODgwEqQQMA4xDDAKBgNVBAMMA3g4OTASpBAwDjEMMAoG -A1UEAwwDeDkwMBKkEDAOMQwwCgYDVQQDDAN4OTEwEqQQMA4xDDAKBgNVBAMMA3g5 -MjASpBAwDjEMMAoGA1UEAwwDeDkzMBKkEDAOMQwwCgYDVQQDDAN4OTQwEqQQMA4x -DDAKBgNVBAMMA3g5NTASpBAwDjEMMAoGA1UEAwwDeDk2MBKkEDAOMQwwCgYDVQQD -DAN4OTcwEqQQMA4xDDAKBgNVBAMMA3g5ODASpBAwDjEMMAoGA1UEAwwDeDk5MBOk -ETAPMQ0wCwYDVQQDDAR4MTAwMBOkETAPMQ0wCwYDVQQDDAR4MTAxMBOkETAPMQ0w -CwYDVQQDDAR4MTAyMBOkETAPMQ0wCwYDVQQDDAR4MTAzMBOkETAPMQ0wCwYDVQQD -DAR4MTA0MBOkETAPMQ0wCwYDVQQDDAR4MTA1MBOkETAPMQ0wCwYDVQQDDAR4MTA2 -MBOkETAPMQ0wCwYDVQQDDAR4MTA3MBOkETAPMQ0wCwYDVQQDDAR4MTA4MBOkETAP -MQ0wCwYDVQQDDAR4MTA5MBOkETAPMQ0wCwYDVQQDDAR4MTEwMBOkETAPMQ0wCwYD -VQQDDAR4MTExMBOkETAPMQ0wCwYDVQQDDAR4MTEyMBOkETAPMQ0wCwYDVQQDDAR4 -MTEzMBOkETAPMQ0wCwYDVQQDDAR4MTE0MBOkETAPMQ0wCwYDVQQDDAR4MTE1MBOk -ETAPMQ0wCwYDVQQDDAR4MTE2MBOkETAPMQ0wCwYDVQQDDAR4MTE3MBOkETAPMQ0w -CwYDVQQDDAR4MTE4MBOkETAPMQ0wCwYDVQQDDAR4MTE5MBOkETAPMQ0wCwYDVQQD -DAR4MTIwMBOkETAPMQ0wCwYDVQQDDAR4MTIxMBOkETAPMQ0wCwYDVQQDDAR4MTIy -MBOkETAPMQ0wCwYDVQQDDAR4MTIzMBOkETAPMQ0wCwYDVQQDDAR4MTI0MBOkETAP -MQ0wCwYDVQQDDAR4MTI1MBOkETAPMQ0wCwYDVQQDDAR4MTI2MBOkETAPMQ0wCwYD -VQQDDAR4MTI3MBOkETAPMQ0wCwYDVQQDDAR4MTI4MBOkETAPMQ0wCwYDVQQDDAR4 -MTI5MBOkETAPMQ0wCwYDVQQDDAR4MTMwMBOkETAPMQ0wCwYDVQQDDAR4MTMxMBOk -ETAPMQ0wCwYDVQQDDAR4MTMyMBOkETAPMQ0wCwYDVQQDDAR4MTMzMBOkETAPMQ0w -CwYDVQQDDAR4MTM0MBOkETAPMQ0wCwYDVQQDDAR4MTM1MBOkETAPMQ0wCwYDVQQD -DAR4MTM2MBOkETAPMQ0wCwYDVQQDDAR4MTM3MBOkETAPMQ0wCwYDVQQDDAR4MTM4 -MBOkETAPMQ0wCwYDVQQDDAR4MTM5MBOkETAPMQ0wCwYDVQQDDAR4MTQwMBOkETAP -MQ0wCwYDVQQDDAR4MTQxMBOkETAPMQ0wCwYDVQQDDAR4MTQyMBOkETAPMQ0wCwYD -VQQDDAR4MTQzMBOkETAPMQ0wCwYDVQQDDAR4MTQ0MBOkETAPMQ0wCwYDVQQDDAR4 -MTQ1MBOkETAPMQ0wCwYDVQQDDAR4MTQ2MBOkETAPMQ0wCwYDVQQDDAR4MTQ3MBOk -ETAPMQ0wCwYDVQQDDAR4MTQ4MBOkETAPMQ0wCwYDVQQDDAR4MTQ5MBOkETAPMQ0w -CwYDVQQDDAR4MTUwMBOkETAPMQ0wCwYDVQQDDAR4MTUxMBOkETAPMQ0wCwYDVQQD -DAR4MTUyMBOkETAPMQ0wCwYDVQQDDAR4MTUzMBOkETAPMQ0wCwYDVQQDDAR4MTU0 -MBOkETAPMQ0wCwYDVQQDDAR4MTU1MBOkETAPMQ0wCwYDVQQDDAR4MTU2MBOkETAP -MQ0wCwYDVQQDDAR4MTU3MBOkETAPMQ0wCwYDVQQDDAR4MTU4MBOkETAPMQ0wCwYD -VQQDDAR4MTU5MBOkETAPMQ0wCwYDVQQDDAR4MTYwMBOkETAPMQ0wCwYDVQQDDAR4 -MTYxMBOkETAPMQ0wCwYDVQQDDAR4MTYyMBOkETAPMQ0wCwYDVQQDDAR4MTYzMBOk -ETAPMQ0wCwYDVQQDDAR4MTY0MBOkETAPMQ0wCwYDVQQDDAR4MTY1MBOkETAPMQ0w -CwYDVQQDDAR4MTY2MBOkETAPMQ0wCwYDVQQDDAR4MTY3MBOkETAPMQ0wCwYDVQQD -DAR4MTY4MBOkETAPMQ0wCwYDVQQDDAR4MTY5MBOkETAPMQ0wCwYDVQQDDAR4MTcw -MBOkETAPMQ0wCwYDVQQDDAR4MTcxMBOkETAPMQ0wCwYDVQQDDAR4MTcyMBOkETAP -MQ0wCwYDVQQDDAR4MTczMBOkETAPMQ0wCwYDVQQDDAR4MTc0MBOkETAPMQ0wCwYD -VQQDDAR4MTc1MBOkETAPMQ0wCwYDVQQDDAR4MTc2MBOkETAPMQ0wCwYDVQQDDAR4 -MTc3MBOkETAPMQ0wCwYDVQQDDAR4MTc4MBOkETAPMQ0wCwYDVQQDDAR4MTc5MBOk -ETAPMQ0wCwYDVQQDDAR4MTgwMBOkETAPMQ0wCwYDVQQDDAR4MTgxMBOkETAPMQ0w -CwYDVQQDDAR4MTgyMBOkETAPMQ0wCwYDVQQDDAR4MTgzMBOkETAPMQ0wCwYDVQQD -DAR4MTg0MBOkETAPMQ0wCwYDVQQDDAR4MTg1MBOkETAPMQ0wCwYDVQQDDAR4MTg2 -MBOkETAPMQ0wCwYDVQQDDAR4MTg3MBOkETAPMQ0wCwYDVQQDDAR4MTg4MBOkETAP -MQ0wCwYDVQQDDAR4MTg5MBOkETAPMQ0wCwYDVQQDDAR4MTkwMBOkETAPMQ0wCwYD -VQQDDAR4MTkxMBOkETAPMQ0wCwYDVQQDDAR4MTkyMBOkETAPMQ0wCwYDVQQDDAR4 -MTkzMBOkETAPMQ0wCwYDVQQDDAR4MTk0MBOkETAPMQ0wCwYDVQQDDAR4MTk1MBOk -ETAPMQ0wCwYDVQQDDAR4MTk2MBOkETAPMQ0wCwYDVQQDDAR4MTk3MBOkETAPMQ0w -CwYDVQQDDAR4MTk4MBOkETAPMQ0wCwYDVQQDDAR4MTk5MBOkETAPMQ0wCwYDVQQD -DAR4MjAwMBOkETAPMQ0wCwYDVQQDDAR4MjAxMBOkETAPMQ0wCwYDVQQDDAR4MjAy -MBOkETAPMQ0wCwYDVQQDDAR4MjAzMBOkETAPMQ0wCwYDVQQDDAR4MjA0MBOkETAP -MQ0wCwYDVQQDDAR4MjA1MBOkETAPMQ0wCwYDVQQDDAR4MjA2MBOkETAPMQ0wCwYD -VQQDDAR4MjA3MBOkETAPMQ0wCwYDVQQDDAR4MjA4MBOkETAPMQ0wCwYDVQQDDAR4 -MjA5MBOkETAPMQ0wCwYDVQQDDAR4MjEwMBOkETAPMQ0wCwYDVQQDDAR4MjExMBOk -ETAPMQ0wCwYDVQQDDAR4MjEyMBOkETAPMQ0wCwYDVQQDDAR4MjEzMBOkETAPMQ0w -CwYDVQQDDAR4MjE0MBOkETAPMQ0wCwYDVQQDDAR4MjE1MBOkETAPMQ0wCwYDVQQD -DAR4MjE2MBOkETAPMQ0wCwYDVQQDDAR4MjE3MBOkETAPMQ0wCwYDVQQDDAR4MjE4 -MBOkETAPMQ0wCwYDVQQDDAR4MjE5MBOkETAPMQ0wCwYDVQQDDAR4MjIwMBOkETAP -MQ0wCwYDVQQDDAR4MjIxMBOkETAPMQ0wCwYDVQQDDAR4MjIyMBOkETAPMQ0wCwYD -VQQDDAR4MjIzMBOkETAPMQ0wCwYDVQQDDAR4MjI0MBOkETAPMQ0wCwYDVQQDDAR4 -MjI1MBOkETAPMQ0wCwYDVQQDDAR4MjI2MBOkETAPMQ0wCwYDVQQDDAR4MjI3MBOk -ETAPMQ0wCwYDVQQDDAR4MjI4MBOkETAPMQ0wCwYDVQQDDAR4MjI5MBOkETAPMQ0w -CwYDVQQDDAR4MjMwMBOkETAPMQ0wCwYDVQQDDAR4MjMxMBOkETAPMQ0wCwYDVQQD -DAR4MjMyMBOkETAPMQ0wCwYDVQQDDAR4MjMzMBOkETAPMQ0wCwYDVQQDDAR4MjM0 -MBOkETAPMQ0wCwYDVQQDDAR4MjM1MBOkETAPMQ0wCwYDVQQDDAR4MjM2MBOkETAP -MQ0wCwYDVQQDDAR4MjM3MBOkETAPMQ0wCwYDVQQDDAR4MjM4MBOkETAPMQ0wCwYD -VQQDDAR4MjM5MBOkETAPMQ0wCwYDVQQDDAR4MjQwMBOkETAPMQ0wCwYDVQQDDAR4 -MjQxMBOkETAPMQ0wCwYDVQQDDAR4MjQyMBOkETAPMQ0wCwYDVQQDDAR4MjQzMBOk -ETAPMQ0wCwYDVQQDDAR4MjQ0MBOkETAPMQ0wCwYDVQQDDAR4MjQ1MBOkETAPMQ0w -CwYDVQQDDAR4MjQ2MBOkETAPMQ0wCwYDVQQDDAR4MjQ3MBOkETAPMQ0wCwYDVQQD -DAR4MjQ4MBOkETAPMQ0wCwYDVQQDDAR4MjQ5MBOkETAPMQ0wCwYDVQQDDAR4MjUw -MBOkETAPMQ0wCwYDVQQDDAR4MjUxMBOkETAPMQ0wCwYDVQQDDAR4MjUyMBOkETAP -MQ0wCwYDVQQDDAR4MjUzMBOkETAPMQ0wCwYDVQQDDAR4MjU0MBOkETAPMQ0wCwYD -VQQDDAR4MjU1MBOkETAPMQ0wCwYDVQQDDAR4MjU2MBOkETAPMQ0wCwYDVQQDDAR4 -MjU3MBOkETAPMQ0wCwYDVQQDDAR4MjU4MBOkETAPMQ0wCwYDVQQDDAR4MjU5MBOk -ETAPMQ0wCwYDVQQDDAR4MjYwMBOkETAPMQ0wCwYDVQQDDAR4MjYxMBOkETAPMQ0w -CwYDVQQDDAR4MjYyMBOkETAPMQ0wCwYDVQQDDAR4MjYzMBOkETAPMQ0wCwYDVQQD -DAR4MjY0MBOkETAPMQ0wCwYDVQQDDAR4MjY1MBOkETAPMQ0wCwYDVQQDDAR4MjY2 -MBOkETAPMQ0wCwYDVQQDDAR4MjY3MBOkETAPMQ0wCwYDVQQDDAR4MjY4MBOkETAP -MQ0wCwYDVQQDDAR4MjY5MBOkETAPMQ0wCwYDVQQDDAR4MjcwMBOkETAPMQ0wCwYD -VQQDDAR4MjcxMBOkETAPMQ0wCwYDVQQDDAR4MjcyMBOkETAPMQ0wCwYDVQQDDAR4 -MjczMBOkETAPMQ0wCwYDVQQDDAR4Mjc0MBOkETAPMQ0wCwYDVQQDDAR4Mjc1MBOk -ETAPMQ0wCwYDVQQDDAR4Mjc2MBOkETAPMQ0wCwYDVQQDDAR4Mjc3MBOkETAPMQ0w -CwYDVQQDDAR4Mjc4MBOkETAPMQ0wCwYDVQQDDAR4Mjc5MBOkETAPMQ0wCwYDVQQD -DAR4MjgwMBOkETAPMQ0wCwYDVQQDDAR4MjgxMBOkETAPMQ0wCwYDVQQDDAR4Mjgy -MBOkETAPMQ0wCwYDVQQDDAR4MjgzMBOkETAPMQ0wCwYDVQQDDAR4Mjg0MBOkETAP -MQ0wCwYDVQQDDAR4Mjg1MBOkETAPMQ0wCwYDVQQDDAR4Mjg2MBOkETAPMQ0wCwYD -VQQDDAR4Mjg3MBOkETAPMQ0wCwYDVQQDDAR4Mjg4MBOkETAPMQ0wCwYDVQQDDAR4 -Mjg5MBOkETAPMQ0wCwYDVQQDDAR4MjkwMBOkETAPMQ0wCwYDVQQDDAR4MjkxMBOk -ETAPMQ0wCwYDVQQDDAR4MjkyMBOkETAPMQ0wCwYDVQQDDAR4MjkzMBOkETAPMQ0w -CwYDVQQDDAR4Mjk0MBOkETAPMQ0wCwYDVQQDDAR4Mjk1MBOkETAPMQ0wCwYDVQQD -DAR4Mjk2MBOkETAPMQ0wCwYDVQQDDAR4Mjk3MBOkETAPMQ0wCwYDVQQDDAR4Mjk4 -MBOkETAPMQ0wCwYDVQQDDAR4Mjk5MBOkETAPMQ0wCwYDVQQDDAR4MzAwMBOkETAP -MQ0wCwYDVQQDDAR4MzAxMBOkETAPMQ0wCwYDVQQDDAR4MzAyMBOkETAPMQ0wCwYD -VQQDDAR4MzAzMBOkETAPMQ0wCwYDVQQDDAR4MzA0MBOkETAPMQ0wCwYDVQQDDAR4 -MzA1MBOkETAPMQ0wCwYDVQQDDAR4MzA2MBOkETAPMQ0wCwYDVQQDDAR4MzA3MBOk -ETAPMQ0wCwYDVQQDDAR4MzA4MBOkETAPMQ0wCwYDVQQDDAR4MzA5MBOkETAPMQ0w -CwYDVQQDDAR4MzEwMBOkETAPMQ0wCwYDVQQDDAR4MzExMBOkETAPMQ0wCwYDVQQD -DAR4MzEyMBOkETAPMQ0wCwYDVQQDDAR4MzEzMBOkETAPMQ0wCwYDVQQDDAR4MzE0 -MBOkETAPMQ0wCwYDVQQDDAR4MzE1MBOkETAPMQ0wCwYDVQQDDAR4MzE2MBOkETAP -MQ0wCwYDVQQDDAR4MzE3MBOkETAPMQ0wCwYDVQQDDAR4MzE4MBOkETAPMQ0wCwYD -VQQDDAR4MzE5MBOkETAPMQ0wCwYDVQQDDAR4MzIwMBOkETAPMQ0wCwYDVQQDDAR4 -MzIxMBOkETAPMQ0wCwYDVQQDDAR4MzIyMBOkETAPMQ0wCwYDVQQDDAR4MzIzMBOk -ETAPMQ0wCwYDVQQDDAR4MzI0MBOkETAPMQ0wCwYDVQQDDAR4MzI1MBOkETAPMQ0w -CwYDVQQDDAR4MzI2MBOkETAPMQ0wCwYDVQQDDAR4MzI3MBOkETAPMQ0wCwYDVQQD -DAR4MzI4MBOkETAPMQ0wCwYDVQQDDAR4MzI5MBOkETAPMQ0wCwYDVQQDDAR4MzMw -MBOkETAPMQ0wCwYDVQQDDAR4MzMxMBOkETAPMQ0wCwYDVQQDDAR4MzMyMBOkETAP -MQ0wCwYDVQQDDAR4MzMzMBOkETAPMQ0wCwYDVQQDDAR4MzM0MBOkETAPMQ0wCwYD -VQQDDAR4MzM1MBOkETAPMQ0wCwYDVQQDDAR4MzM2MBOkETAPMQ0wCwYDVQQDDAR4 -MzM3MBOkETAPMQ0wCwYDVQQDDAR4MzM4MBOkETAPMQ0wCwYDVQQDDAR4MzM5MBOk -ETAPMQ0wCwYDVQQDDAR4MzQwMBOkETAPMQ0wCwYDVQQDDAR4MzQxMBOkETAPMQ0w -CwYDVQQDDAR4MzQyMBOkETAPMQ0wCwYDVQQDDAR4MzQzMBOkETAPMQ0wCwYDVQQD -DAR4MzQ0MBOkETAPMQ0wCwYDVQQDDAR4MzQ1MBOkETAPMQ0wCwYDVQQDDAR4MzQ2 -MBOkETAPMQ0wCwYDVQQDDAR4MzQ3MBOkETAPMQ0wCwYDVQQDDAR4MzQ4MBOkETAP -MQ0wCwYDVQQDDAR4MzQ5MBOkETAPMQ0wCwYDVQQDDAR4MzUwMBOkETAPMQ0wCwYD -VQQDDAR4MzUxMBOkETAPMQ0wCwYDVQQDDAR4MzUyMBOkETAPMQ0wCwYDVQQDDAR4 -MzUzMBOkETAPMQ0wCwYDVQQDDAR4MzU0MBOkETAPMQ0wCwYDVQQDDAR4MzU1MBOk -ETAPMQ0wCwYDVQQDDAR4MzU2MBOkETAPMQ0wCwYDVQQDDAR4MzU3MBOkETAPMQ0w -CwYDVQQDDAR4MzU4MBOkETAPMQ0wCwYDVQQDDAR4MzU5MBOkETAPMQ0wCwYDVQQD -DAR4MzYwMBOkETAPMQ0wCwYDVQQDDAR4MzYxMBOkETAPMQ0wCwYDVQQDDAR4MzYy -MBOkETAPMQ0wCwYDVQQDDAR4MzYzMBOkETAPMQ0wCwYDVQQDDAR4MzY0MBOkETAP -MQ0wCwYDVQQDDAR4MzY1MBOkETAPMQ0wCwYDVQQDDAR4MzY2MBOkETAPMQ0wCwYD -VQQDDAR4MzY3MBOkETAPMQ0wCwYDVQQDDAR4MzY4MBOkETAPMQ0wCwYDVQQDDAR4 -MzY5MBOkETAPMQ0wCwYDVQQDDAR4MzcwMBOkETAPMQ0wCwYDVQQDDAR4MzcxMBOk -ETAPMQ0wCwYDVQQDDAR4MzcyMBOkETAPMQ0wCwYDVQQDDAR4MzczMBOkETAPMQ0w -CwYDVQQDDAR4Mzc0MBOkETAPMQ0wCwYDVQQDDAR4Mzc1MBOkETAPMQ0wCwYDVQQD -DAR4Mzc2MBOkETAPMQ0wCwYDVQQDDAR4Mzc3MBOkETAPMQ0wCwYDVQQDDAR4Mzc4 -MBOkETAPMQ0wCwYDVQQDDAR4Mzc5MBOkETAPMQ0wCwYDVQQDDAR4MzgwMBOkETAP -MQ0wCwYDVQQDDAR4MzgxMBOkETAPMQ0wCwYDVQQDDAR4MzgyMBOkETAPMQ0wCwYD -VQQDDAR4MzgzMBOkETAPMQ0wCwYDVQQDDAR4Mzg0MBOkETAPMQ0wCwYDVQQDDAR4 -Mzg1MBOkETAPMQ0wCwYDVQQDDAR4Mzg2MBOkETAPMQ0wCwYDVQQDDAR4Mzg3MBOk -ETAPMQ0wCwYDVQQDDAR4Mzg4MBOkETAPMQ0wCwYDVQQDDAR4Mzg5MBOkETAPMQ0w -CwYDVQQDDAR4MzkwMBOkETAPMQ0wCwYDVQQDDAR4MzkxMBOkETAPMQ0wCwYDVQQD -DAR4MzkyMBOkETAPMQ0wCwYDVQQDDAR4MzkzMBOkETAPMQ0wCwYDVQQDDAR4Mzk0 -MBOkETAPMQ0wCwYDVQQDDAR4Mzk1MBOkETAPMQ0wCwYDVQQDDAR4Mzk2MBOkETAP -MQ0wCwYDVQQDDAR4Mzk3MBOkETAPMQ0wCwYDVQQDDAR4Mzk4MBOkETAPMQ0wCwYD -VQQDDAR4Mzk5MBOkETAPMQ0wCwYDVQQDDAR4NDAwMBOkETAPMQ0wCwYDVQQDDAR4 -NDAxMBOkETAPMQ0wCwYDVQQDDAR4NDAyMBOkETAPMQ0wCwYDVQQDDAR4NDAzMBOk -ETAPMQ0wCwYDVQQDDAR4NDA0MBOkETAPMQ0wCwYDVQQDDAR4NDA1MBOkETAPMQ0w -CwYDVQQDDAR4NDA2MBOkETAPMQ0wCwYDVQQDDAR4NDA3MBOkETAPMQ0wCwYDVQQD -DAR4NDA4MBOkETAPMQ0wCwYDVQQDDAR4NDA5MBOkETAPMQ0wCwYDVQQDDAR4NDEw -MBOkETAPMQ0wCwYDVQQDDAR4NDExMBOkETAPMQ0wCwYDVQQDDAR4NDEyMBOkETAP -MQ0wCwYDVQQDDAR4NDEzMBOkETAPMQ0wCwYDVQQDDAR4NDE0MBOkETAPMQ0wCwYD -VQQDDAR4NDE1MBOkETAPMQ0wCwYDVQQDDAR4NDE2MBOkETAPMQ0wCwYDVQQDDAR4 -NDE3MBOkETAPMQ0wCwYDVQQDDAR4NDE4MBOkETAPMQ0wCwYDVQQDDAR4NDE5MBOk -ETAPMQ0wCwYDVQQDDAR4NDIwMBOkETAPMQ0wCwYDVQQDDAR4NDIxMBOkETAPMQ0w -CwYDVQQDDAR4NDIyMBOkETAPMQ0wCwYDVQQDDAR4NDIzMBOkETAPMQ0wCwYDVQQD -DAR4NDI0MBOkETAPMQ0wCwYDVQQDDAR4NDI1MBOkETAPMQ0wCwYDVQQDDAR4NDI2 -MBOkETAPMQ0wCwYDVQQDDAR4NDI3MBOkETAPMQ0wCwYDVQQDDAR4NDI4MBOkETAP -MQ0wCwYDVQQDDAR4NDI5MBOkETAPMQ0wCwYDVQQDDAR4NDMwMBOkETAPMQ0wCwYD -VQQDDAR4NDMxMBOkETAPMQ0wCwYDVQQDDAR4NDMyMBOkETAPMQ0wCwYDVQQDDAR4 -NDMzMBOkETAPMQ0wCwYDVQQDDAR4NDM0MBOkETAPMQ0wCwYDVQQDDAR4NDM1MBOk -ETAPMQ0wCwYDVQQDDAR4NDM2MBOkETAPMQ0wCwYDVQQDDAR4NDM3MBOkETAPMQ0w -CwYDVQQDDAR4NDM4MBOkETAPMQ0wCwYDVQQDDAR4NDM5MBOkETAPMQ0wCwYDVQQD -DAR4NDQwMBOkETAPMQ0wCwYDVQQDDAR4NDQxMBOkETAPMQ0wCwYDVQQDDAR4NDQy -MBOkETAPMQ0wCwYDVQQDDAR4NDQzMBOkETAPMQ0wCwYDVQQDDAR4NDQ0MBOkETAP -MQ0wCwYDVQQDDAR4NDQ1MBOkETAPMQ0wCwYDVQQDDAR4NDQ2MBOkETAPMQ0wCwYD -VQQDDAR4NDQ3MBOkETAPMQ0wCwYDVQQDDAR4NDQ4MBOkETAPMQ0wCwYDVQQDDAR4 -NDQ5MBOkETAPMQ0wCwYDVQQDDAR4NDUwMBOkETAPMQ0wCwYDVQQDDAR4NDUxMBOk -ETAPMQ0wCwYDVQQDDAR4NDUyMBOkETAPMQ0wCwYDVQQDDAR4NDUzMBOkETAPMQ0w -CwYDVQQDDAR4NDU0MBOkETAPMQ0wCwYDVQQDDAR4NDU1MBOkETAPMQ0wCwYDVQQD -DAR4NDU2MBOkETAPMQ0wCwYDVQQDDAR4NDU3MBOkETAPMQ0wCwYDVQQDDAR4NDU4 -MBOkETAPMQ0wCwYDVQQDDAR4NDU5MBOkETAPMQ0wCwYDVQQDDAR4NDYwMBOkETAP -MQ0wCwYDVQQDDAR4NDYxMBOkETAPMQ0wCwYDVQQDDAR4NDYyMBOkETAPMQ0wCwYD -VQQDDAR4NDYzMBOkETAPMQ0wCwYDVQQDDAR4NDY0MBOkETAPMQ0wCwYDVQQDDAR4 -NDY1MBOkETAPMQ0wCwYDVQQDDAR4NDY2MBOkETAPMQ0wCwYDVQQDDAR4NDY3MBOk -ETAPMQ0wCwYDVQQDDAR4NDY4MBOkETAPMQ0wCwYDVQQDDAR4NDY5MBOkETAPMQ0w -CwYDVQQDDAR4NDcwMBOkETAPMQ0wCwYDVQQDDAR4NDcxMBOkETAPMQ0wCwYDVQQD -DAR4NDcyMBOkETAPMQ0wCwYDVQQDDAR4NDczMBOkETAPMQ0wCwYDVQQDDAR4NDc0 -MBOkETAPMQ0wCwYDVQQDDAR4NDc1MBOkETAPMQ0wCwYDVQQDDAR4NDc2MBOkETAP -MQ0wCwYDVQQDDAR4NDc3MBOkETAPMQ0wCwYDVQQDDAR4NDc4MBOkETAPMQ0wCwYD -VQQDDAR4NDc5MBOkETAPMQ0wCwYDVQQDDAR4NDgwMBOkETAPMQ0wCwYDVQQDDAR4 -NDgxMBOkETAPMQ0wCwYDVQQDDAR4NDgyMBOkETAPMQ0wCwYDVQQDDAR4NDgzMBOk -ETAPMQ0wCwYDVQQDDAR4NDg0MBOkETAPMQ0wCwYDVQQDDAR4NDg1MBOkETAPMQ0w -CwYDVQQDDAR4NDg2MBOkETAPMQ0wCwYDVQQDDAR4NDg3MBOkETAPMQ0wCwYDVQQD -DAR4NDg4MBOkETAPMQ0wCwYDVQQDDAR4NDg5MBOkETAPMQ0wCwYDVQQDDAR4NDkw -MBOkETAPMQ0wCwYDVQQDDAR4NDkxMBOkETAPMQ0wCwYDVQQDDAR4NDkyMBOkETAP -MQ0wCwYDVQQDDAR4NDkzMBOkETAPMQ0wCwYDVQQDDAR4NDk0MBOkETAPMQ0wCwYD -VQQDDAR4NDk1MBOkETAPMQ0wCwYDVQQDDAR4NDk2MBOkETAPMQ0wCwYDVQQDDAR4 -NDk3MBOkETAPMQ0wCwYDVQQDDAR4NDk4MBOkETAPMQ0wCwYDVQQDDAR4NDk5MBOk -ETAPMQ0wCwYDVQQDDAR4NTAwMBOkETAPMQ0wCwYDVQQDDAR4NTAxMBOkETAPMQ0w -CwYDVQQDDAR4NTAyMBOkETAPMQ0wCwYDVQQDDAR4NTAzMBOkETAPMQ0wCwYDVQQD -DAR4NTA0MBOkETAPMQ0wCwYDVQQDDAR4NTA1MBOkETAPMQ0wCwYDVQQDDAR4NTA2 -MBOkETAPMQ0wCwYDVQQDDAR4NTA3MBOkETAPMQ0wCwYDVQQDDAR4NTA4MBOkETAP -MQ0wCwYDVQQDDAR4NTA5MBOkETAPMQ0wCwYDVQQDDAR4NTEwMBOkETAPMQ0wCwYD -VQQDDAR4NTExMBOkETAPMQ0wCwYDVQQDDAR4NTEyMBOkETAPMQ0wCwYDVQQDDAR4 -NTEzMBOkETAPMQ0wCwYDVQQDDAR4NTE0MBOkETAPMQ0wCwYDVQQDDAR4NTE1MBOk -ETAPMQ0wCwYDVQQDDAR4NTE2MBOkETAPMQ0wCwYDVQQDDAR4NTE3MBOkETAPMQ0w -CwYDVQQDDAR4NTE4MBOkETAPMQ0wCwYDVQQDDAR4NTE5MBOkETAPMQ0wCwYDVQQD -DAR4NTIwMBOkETAPMQ0wCwYDVQQDDAR4NTIxMBOkETAPMQ0wCwYDVQQDDAR4NTIy -MBOkETAPMQ0wCwYDVQQDDAR4NTIzMBOkETAPMQ0wCwYDVQQDDAR4NTI0MBOkETAP -MQ0wCwYDVQQDDAR4NTI1MBOkETAPMQ0wCwYDVQQDDAR4NTI2MBOkETAPMQ0wCwYD -VQQDDAR4NTI3MBOkETAPMQ0wCwYDVQQDDAR4NTI4MBOkETAPMQ0wCwYDVQQDDAR4 -NTI5MBOkETAPMQ0wCwYDVQQDDAR4NTMwMBOkETAPMQ0wCwYDVQQDDAR4NTMxMBOk -ETAPMQ0wCwYDVQQDDAR4NTMyMBOkETAPMQ0wCwYDVQQDDAR4NTMzMBOkETAPMQ0w -CwYDVQQDDAR4NTM0MBOkETAPMQ0wCwYDVQQDDAR4NTM1MBOkETAPMQ0wCwYDVQQD -DAR4NTM2MBOkETAPMQ0wCwYDVQQDDAR4NTM3MBOkETAPMQ0wCwYDVQQDDAR4NTM4 -MBOkETAPMQ0wCwYDVQQDDAR4NTM5MBOkETAPMQ0wCwYDVQQDDAR4NTQwMBOkETAP -MQ0wCwYDVQQDDAR4NTQxMBOkETAPMQ0wCwYDVQQDDAR4NTQyMBOkETAPMQ0wCwYD -VQQDDAR4NTQzMBOkETAPMQ0wCwYDVQQDDAR4NTQ0MBOkETAPMQ0wCwYDVQQDDAR4 -NTQ1MBOkETAPMQ0wCwYDVQQDDAR4NTQ2MBOkETAPMQ0wCwYDVQQDDAR4NTQ3MBOk -ETAPMQ0wCwYDVQQDDAR4NTQ4MBOkETAPMQ0wCwYDVQQDDAR4NTQ5MBOkETAPMQ0w -CwYDVQQDDAR4NTUwMBOkETAPMQ0wCwYDVQQDDAR4NTUxMBOkETAPMQ0wCwYDVQQD -DAR4NTUyMBOkETAPMQ0wCwYDVQQDDAR4NTUzMBOkETAPMQ0wCwYDVQQDDAR4NTU0 -MBOkETAPMQ0wCwYDVQQDDAR4NTU1MBOkETAPMQ0wCwYDVQQDDAR4NTU2MBOkETAP -MQ0wCwYDVQQDDAR4NTU3MBOkETAPMQ0wCwYDVQQDDAR4NTU4MBOkETAPMQ0wCwYD -VQQDDAR4NTU5MBOkETAPMQ0wCwYDVQQDDAR4NTYwMBOkETAPMQ0wCwYDVQQDDAR4 -NTYxMBOkETAPMQ0wCwYDVQQDDAR4NTYyMBOkETAPMQ0wCwYDVQQDDAR4NTYzMBOk -ETAPMQ0wCwYDVQQDDAR4NTY0MBOkETAPMQ0wCwYDVQQDDAR4NTY1MBOkETAPMQ0w -CwYDVQQDDAR4NTY2MBOkETAPMQ0wCwYDVQQDDAR4NTY3MBOkETAPMQ0wCwYDVQQD -DAR4NTY4MBOkETAPMQ0wCwYDVQQDDAR4NTY5MBOkETAPMQ0wCwYDVQQDDAR4NTcw -MBOkETAPMQ0wCwYDVQQDDAR4NTcxMBOkETAPMQ0wCwYDVQQDDAR4NTcyMBOkETAP -MQ0wCwYDVQQDDAR4NTczMBOkETAPMQ0wCwYDVQQDDAR4NTc0MBOkETAPMQ0wCwYD -VQQDDAR4NTc1MBOkETAPMQ0wCwYDVQQDDAR4NTc2MBOkETAPMQ0wCwYDVQQDDAR4 -NTc3MBOkETAPMQ0wCwYDVQQDDAR4NTc4MBOkETAPMQ0wCwYDVQQDDAR4NTc5MBOk -ETAPMQ0wCwYDVQQDDAR4NTgwMBOkETAPMQ0wCwYDVQQDDAR4NTgxMBOkETAPMQ0w -CwYDVQQDDAR4NTgyMBOkETAPMQ0wCwYDVQQDDAR4NTgzMBOkETAPMQ0wCwYDVQQD -DAR4NTg0MBOkETAPMQ0wCwYDVQQDDAR4NTg1MBOkETAPMQ0wCwYDVQQDDAR4NTg2 -MBOkETAPMQ0wCwYDVQQDDAR4NTg3MBOkETAPMQ0wCwYDVQQDDAR4NTg4MBOkETAP -MQ0wCwYDVQQDDAR4NTg5MBOkETAPMQ0wCwYDVQQDDAR4NTkwMBOkETAPMQ0wCwYD -VQQDDAR4NTkxMBOkETAPMQ0wCwYDVQQDDAR4NTkyMBOkETAPMQ0wCwYDVQQDDAR4 -NTkzMBOkETAPMQ0wCwYDVQQDDAR4NTk0MBOkETAPMQ0wCwYDVQQDDAR4NTk1MBOk -ETAPMQ0wCwYDVQQDDAR4NTk2MBOkETAPMQ0wCwYDVQQDDAR4NTk3MBOkETAPMQ0w -CwYDVQQDDAR4NTk4MBOkETAPMQ0wCwYDVQQDDAR4NTk5MBOkETAPMQ0wCwYDVQQD -DAR4NjAwMBOkETAPMQ0wCwYDVQQDDAR4NjAxMBOkETAPMQ0wCwYDVQQDDAR4NjAy -MBOkETAPMQ0wCwYDVQQDDAR4NjAzMBOkETAPMQ0wCwYDVQQDDAR4NjA0MBOkETAP -MQ0wCwYDVQQDDAR4NjA1MBOkETAPMQ0wCwYDVQQDDAR4NjA2MBOkETAPMQ0wCwYD -VQQDDAR4NjA3MBOkETAPMQ0wCwYDVQQDDAR4NjA4MBOkETAPMQ0wCwYDVQQDDAR4 -NjA5MBOkETAPMQ0wCwYDVQQDDAR4NjEwMBOkETAPMQ0wCwYDVQQDDAR4NjExMBOk -ETAPMQ0wCwYDVQQDDAR4NjEyMBOkETAPMQ0wCwYDVQQDDAR4NjEzMBOkETAPMQ0w -CwYDVQQDDAR4NjE0MBOkETAPMQ0wCwYDVQQDDAR4NjE1MBOkETAPMQ0wCwYDVQQD -DAR4NjE2MBOkETAPMQ0wCwYDVQQDDAR4NjE3MBOkETAPMQ0wCwYDVQQDDAR4NjE4 -MBOkETAPMQ0wCwYDVQQDDAR4NjE5MBOkETAPMQ0wCwYDVQQDDAR4NjIwMBOkETAP -MQ0wCwYDVQQDDAR4NjIxMBOkETAPMQ0wCwYDVQQDDAR4NjIyMBOkETAPMQ0wCwYD -VQQDDAR4NjIzMBOkETAPMQ0wCwYDVQQDDAR4NjI0MBOkETAPMQ0wCwYDVQQDDAR4 -NjI1MBOkETAPMQ0wCwYDVQQDDAR4NjI2MBOkETAPMQ0wCwYDVQQDDAR4NjI3MBOk -ETAPMQ0wCwYDVQQDDAR4NjI4MBOkETAPMQ0wCwYDVQQDDAR4NjI5MBOkETAPMQ0w -CwYDVQQDDAR4NjMwMBOkETAPMQ0wCwYDVQQDDAR4NjMxMBOkETAPMQ0wCwYDVQQD -DAR4NjMyMBOkETAPMQ0wCwYDVQQDDAR4NjMzMBOkETAPMQ0wCwYDVQQDDAR4NjM0 -MBOkETAPMQ0wCwYDVQQDDAR4NjM1MBOkETAPMQ0wCwYDVQQDDAR4NjM2MBOkETAP -MQ0wCwYDVQQDDAR4NjM3MBOkETAPMQ0wCwYDVQQDDAR4NjM4MBOkETAPMQ0wCwYD -VQQDDAR4NjM5MBOkETAPMQ0wCwYDVQQDDAR4NjQwMBOkETAPMQ0wCwYDVQQDDAR4 -NjQxMBOkETAPMQ0wCwYDVQQDDAR4NjQyMBOkETAPMQ0wCwYDVQQDDAR4NjQzMBOk -ETAPMQ0wCwYDVQQDDAR4NjQ0MBOkETAPMQ0wCwYDVQQDDAR4NjQ1MBOkETAPMQ0w -CwYDVQQDDAR4NjQ2MBOkETAPMQ0wCwYDVQQDDAR4NjQ3MBOkETAPMQ0wCwYDVQQD -DAR4NjQ4MBOkETAPMQ0wCwYDVQQDDAR4NjQ5MBOkETAPMQ0wCwYDVQQDDAR4NjUw -MBOkETAPMQ0wCwYDVQQDDAR4NjUxMBOkETAPMQ0wCwYDVQQDDAR4NjUyMBOkETAP -MQ0wCwYDVQQDDAR4NjUzMBOkETAPMQ0wCwYDVQQDDAR4NjU0MBOkETAPMQ0wCwYD -VQQDDAR4NjU1MBOkETAPMQ0wCwYDVQQDDAR4NjU2MBOkETAPMQ0wCwYDVQQDDAR4 -NjU3MBOkETAPMQ0wCwYDVQQDDAR4NjU4MBOkETAPMQ0wCwYDVQQDDAR4NjU5MBOk -ETAPMQ0wCwYDVQQDDAR4NjYwMBOkETAPMQ0wCwYDVQQDDAR4NjYxMBOkETAPMQ0w -CwYDVQQDDAR4NjYyMBOkETAPMQ0wCwYDVQQDDAR4NjYzMBOkETAPMQ0wCwYDVQQD -DAR4NjY0MBOkETAPMQ0wCwYDVQQDDAR4NjY1MBOkETAPMQ0wCwYDVQQDDAR4NjY2 -MBOkETAPMQ0wCwYDVQQDDAR4NjY3MBOkETAPMQ0wCwYDVQQDDAR4NjY4MBOkETAP -MQ0wCwYDVQQDDAR4NjY5MBOkETAPMQ0wCwYDVQQDDAR4NjcwMBOkETAPMQ0wCwYD -VQQDDAR4NjcxMBOkETAPMQ0wCwYDVQQDDAR4NjcyMBOkETAPMQ0wCwYDVQQDDAR4 -NjczMBOkETAPMQ0wCwYDVQQDDAR4Njc0MBOkETAPMQ0wCwYDVQQDDAR4Njc1MBOk -ETAPMQ0wCwYDVQQDDAR4Njc2MBOkETAPMQ0wCwYDVQQDDAR4Njc3MBOkETAPMQ0w -CwYDVQQDDAR4Njc4MBOkETAPMQ0wCwYDVQQDDAR4Njc5MBOkETAPMQ0wCwYDVQQD -DAR4NjgwMBOkETAPMQ0wCwYDVQQDDAR4NjgxMBOkETAPMQ0wCwYDVQQDDAR4Njgy -MBOkETAPMQ0wCwYDVQQDDAR4NjgzMBOkETAPMQ0wCwYDVQQDDAR4Njg0MBOkETAP -MQ0wCwYDVQQDDAR4Njg1MBOkETAPMQ0wCwYDVQQDDAR4Njg2MBOkETAPMQ0wCwYD -VQQDDAR4Njg3MBOkETAPMQ0wCwYDVQQDDAR4Njg4MBOkETAPMQ0wCwYDVQQDDAR4 -Njg5MBOkETAPMQ0wCwYDVQQDDAR4NjkwMBOkETAPMQ0wCwYDVQQDDAR4NjkxMBOk -ETAPMQ0wCwYDVQQDDAR4NjkyMBOkETAPMQ0wCwYDVQQDDAR4NjkzMBOkETAPMQ0w -CwYDVQQDDAR4Njk0MBOkETAPMQ0wCwYDVQQDDAR4Njk1MBOkETAPMQ0wCwYDVQQD -DAR4Njk2MBOkETAPMQ0wCwYDVQQDDAR4Njk3MBOkETAPMQ0wCwYDVQQDDAR4Njk4 -MBOkETAPMQ0wCwYDVQQDDAR4Njk5MBOkETAPMQ0wCwYDVQQDDAR4NzAwMBOkETAP -MQ0wCwYDVQQDDAR4NzAxMBOkETAPMQ0wCwYDVQQDDAR4NzAyMBOkETAPMQ0wCwYD -VQQDDAR4NzAzMBOkETAPMQ0wCwYDVQQDDAR4NzA0MBOkETAPMQ0wCwYDVQQDDAR4 -NzA1MBOkETAPMQ0wCwYDVQQDDAR4NzA2MBOkETAPMQ0wCwYDVQQDDAR4NzA3MBOk -ETAPMQ0wCwYDVQQDDAR4NzA4MBOkETAPMQ0wCwYDVQQDDAR4NzA5MBOkETAPMQ0w -CwYDVQQDDAR4NzEwMBOkETAPMQ0wCwYDVQQDDAR4NzExMBOkETAPMQ0wCwYDVQQD -DAR4NzEyMBOkETAPMQ0wCwYDVQQDDAR4NzEzMBOkETAPMQ0wCwYDVQQDDAR4NzE0 -MBOkETAPMQ0wCwYDVQQDDAR4NzE1MBOkETAPMQ0wCwYDVQQDDAR4NzE2MBOkETAP -MQ0wCwYDVQQDDAR4NzE3MBOkETAPMQ0wCwYDVQQDDAR4NzE4MBOkETAPMQ0wCwYD -VQQDDAR4NzE5MBOkETAPMQ0wCwYDVQQDDAR4NzIwMBOkETAPMQ0wCwYDVQQDDAR4 -NzIxMBOkETAPMQ0wCwYDVQQDDAR4NzIyMBOkETAPMQ0wCwYDVQQDDAR4NzIzMBOk -ETAPMQ0wCwYDVQQDDAR4NzI0MBOkETAPMQ0wCwYDVQQDDAR4NzI1MBOkETAPMQ0w -CwYDVQQDDAR4NzI2MBOkETAPMQ0wCwYDVQQDDAR4NzI3MBOkETAPMQ0wCwYDVQQD -DAR4NzI4MBOkETAPMQ0wCwYDVQQDDAR4NzI5MBOkETAPMQ0wCwYDVQQDDAR4NzMw -MBOkETAPMQ0wCwYDVQQDDAR4NzMxMBOkETAPMQ0wCwYDVQQDDAR4NzMyMBOkETAP -MQ0wCwYDVQQDDAR4NzMzMBOkETAPMQ0wCwYDVQQDDAR4NzM0MBOkETAPMQ0wCwYD -VQQDDAR4NzM1MBOkETAPMQ0wCwYDVQQDDAR4NzM2MBOkETAPMQ0wCwYDVQQDDAR4 -NzM3MBOkETAPMQ0wCwYDVQQDDAR4NzM4MBOkETAPMQ0wCwYDVQQDDAR4NzM5MBOk -ETAPMQ0wCwYDVQQDDAR4NzQwMBOkETAPMQ0wCwYDVQQDDAR4NzQxMBOkETAPMQ0w -CwYDVQQDDAR4NzQyMBOkETAPMQ0wCwYDVQQDDAR4NzQzMBOkETAPMQ0wCwYDVQQD -DAR4NzQ0MBOkETAPMQ0wCwYDVQQDDAR4NzQ1MBOkETAPMQ0wCwYDVQQDDAR4NzQ2 -MBOkETAPMQ0wCwYDVQQDDAR4NzQ3MBOkETAPMQ0wCwYDVQQDDAR4NzQ4MBOkETAP -MQ0wCwYDVQQDDAR4NzQ5MBOkETAPMQ0wCwYDVQQDDAR4NzUwMBOkETAPMQ0wCwYD -VQQDDAR4NzUxMBOkETAPMQ0wCwYDVQQDDAR4NzUyMBOkETAPMQ0wCwYDVQQDDAR4 -NzUzMBOkETAPMQ0wCwYDVQQDDAR4NzU0MBOkETAPMQ0wCwYDVQQDDAR4NzU1MBOk -ETAPMQ0wCwYDVQQDDAR4NzU2MBOkETAPMQ0wCwYDVQQDDAR4NzU3MBOkETAPMQ0w -CwYDVQQDDAR4NzU4MBOkETAPMQ0wCwYDVQQDDAR4NzU5MBOkETAPMQ0wCwYDVQQD -DAR4NzYwMBOkETAPMQ0wCwYDVQQDDAR4NzYxMBOkETAPMQ0wCwYDVQQDDAR4NzYy -MBOkETAPMQ0wCwYDVQQDDAR4NzYzMBOkETAPMQ0wCwYDVQQDDAR4NzY0MBOkETAP -MQ0wCwYDVQQDDAR4NzY1MBOkETAPMQ0wCwYDVQQDDAR4NzY2MBOkETAPMQ0wCwYD -VQQDDAR4NzY3MBOkETAPMQ0wCwYDVQQDDAR4NzY4MBOkETAPMQ0wCwYDVQQDDAR4 -NzY5MBOkETAPMQ0wCwYDVQQDDAR4NzcwMBOkETAPMQ0wCwYDVQQDDAR4NzcxMBOk -ETAPMQ0wCwYDVQQDDAR4NzcyMBOkETAPMQ0wCwYDVQQDDAR4NzczMBOkETAPMQ0w -CwYDVQQDDAR4Nzc0MBOkETAPMQ0wCwYDVQQDDAR4Nzc1MBOkETAPMQ0wCwYDVQQD -DAR4Nzc2MBOkETAPMQ0wCwYDVQQDDAR4Nzc3MBOkETAPMQ0wCwYDVQQDDAR4Nzc4 -MBOkETAPMQ0wCwYDVQQDDAR4Nzc5MBOkETAPMQ0wCwYDVQQDDAR4NzgwMBOkETAP -MQ0wCwYDVQQDDAR4NzgxMBOkETAPMQ0wCwYDVQQDDAR4NzgyMBOkETAPMQ0wCwYD -VQQDDAR4NzgzMBOkETAPMQ0wCwYDVQQDDAR4Nzg0MBOkETAPMQ0wCwYDVQQDDAR4 -Nzg1MBOkETAPMQ0wCwYDVQQDDAR4Nzg2MBOkETAPMQ0wCwYDVQQDDAR4Nzg3MBOk -ETAPMQ0wCwYDVQQDDAR4Nzg4MBOkETAPMQ0wCwYDVQQDDAR4Nzg5MBOkETAPMQ0w -CwYDVQQDDAR4NzkwMBOkETAPMQ0wCwYDVQQDDAR4NzkxMBOkETAPMQ0wCwYDVQQD -DAR4NzkyMBOkETAPMQ0wCwYDVQQDDAR4NzkzMBOkETAPMQ0wCwYDVQQDDAR4Nzk0 -MBOkETAPMQ0wCwYDVQQDDAR4Nzk1MBOkETAPMQ0wCwYDVQQDDAR4Nzk2MBOkETAP -MQ0wCwYDVQQDDAR4Nzk3MBOkETAPMQ0wCwYDVQQDDAR4Nzk4MBOkETAPMQ0wCwYD -VQQDDAR4Nzk5MBOkETAPMQ0wCwYDVQQDDAR4ODAwMBOkETAPMQ0wCwYDVQQDDAR4 -ODAxMBOkETAPMQ0wCwYDVQQDDAR4ODAyMBOkETAPMQ0wCwYDVQQDDAR4ODAzMBOk -ETAPMQ0wCwYDVQQDDAR4ODA0MBOkETAPMQ0wCwYDVQQDDAR4ODA1MBOkETAPMQ0w -CwYDVQQDDAR4ODA2MBOkETAPMQ0wCwYDVQQDDAR4ODA3MBOkETAPMQ0wCwYDVQQD -DAR4ODA4MBOkETAPMQ0wCwYDVQQDDAR4ODA5MBOkETAPMQ0wCwYDVQQDDAR4ODEw -MBOkETAPMQ0wCwYDVQQDDAR4ODExMBOkETAPMQ0wCwYDVQQDDAR4ODEyMBOkETAP -MQ0wCwYDVQQDDAR4ODEzMBOkETAPMQ0wCwYDVQQDDAR4ODE0MBOkETAPMQ0wCwYD -VQQDDAR4ODE1MBOkETAPMQ0wCwYDVQQDDAR4ODE2MBOkETAPMQ0wCwYDVQQDDAR4 -ODE3MBOkETAPMQ0wCwYDVQQDDAR4ODE4MBOkETAPMQ0wCwYDVQQDDAR4ODE5MBOk -ETAPMQ0wCwYDVQQDDAR4ODIwMBOkETAPMQ0wCwYDVQQDDAR4ODIxMBOkETAPMQ0w -CwYDVQQDDAR4ODIyMBOkETAPMQ0wCwYDVQQDDAR4ODIzMBOkETAPMQ0wCwYDVQQD -DAR4ODI0MBOkETAPMQ0wCwYDVQQDDAR4ODI1MBOkETAPMQ0wCwYDVQQDDAR4ODI2 -MBOkETAPMQ0wCwYDVQQDDAR4ODI3MBOkETAPMQ0wCwYDVQQDDAR4ODI4MBOkETAP -MQ0wCwYDVQQDDAR4ODI5MBOkETAPMQ0wCwYDVQQDDAR4ODMwMBOkETAPMQ0wCwYD -VQQDDAR4ODMxMBOkETAPMQ0wCwYDVQQDDAR4ODMyMBOkETAPMQ0wCwYDVQQDDAR4 -ODMzMBOkETAPMQ0wCwYDVQQDDAR4ODM0MBOkETAPMQ0wCwYDVQQDDAR4ODM1MBOk -ETAPMQ0wCwYDVQQDDAR4ODM2MBOkETAPMQ0wCwYDVQQDDAR4ODM3MBOkETAPMQ0w -CwYDVQQDDAR4ODM4MBOkETAPMQ0wCwYDVQQDDAR4ODM5MBOkETAPMQ0wCwYDVQQD -DAR4ODQwMBOkETAPMQ0wCwYDVQQDDAR4ODQxMBOkETAPMQ0wCwYDVQQDDAR4ODQy -MBOkETAPMQ0wCwYDVQQDDAR4ODQzMBOkETAPMQ0wCwYDVQQDDAR4ODQ0MBOkETAP -MQ0wCwYDVQQDDAR4ODQ1MBOkETAPMQ0wCwYDVQQDDAR4ODQ2MBOkETAPMQ0wCwYD -VQQDDAR4ODQ3MBOkETAPMQ0wCwYDVQQDDAR4ODQ4MBOkETAPMQ0wCwYDVQQDDAR4 -ODQ5MBOkETAPMQ0wCwYDVQQDDAR4ODUwMBOkETAPMQ0wCwYDVQQDDAR4ODUxMBOk -ETAPMQ0wCwYDVQQDDAR4ODUyMBOkETAPMQ0wCwYDVQQDDAR4ODUzMBOkETAPMQ0w -CwYDVQQDDAR4ODU0MBOkETAPMQ0wCwYDVQQDDAR4ODU1MBOkETAPMQ0wCwYDVQQD -DAR4ODU2MBOkETAPMQ0wCwYDVQQDDAR4ODU3MBOkETAPMQ0wCwYDVQQDDAR4ODU4 -MBOkETAPMQ0wCwYDVQQDDAR4ODU5MBOkETAPMQ0wCwYDVQQDDAR4ODYwMBOkETAP -MQ0wCwYDVQQDDAR4ODYxMBOkETAPMQ0wCwYDVQQDDAR4ODYyMBOkETAPMQ0wCwYD -VQQDDAR4ODYzMBOkETAPMQ0wCwYDVQQDDAR4ODY0MBOkETAPMQ0wCwYDVQQDDAR4 -ODY1MBOkETAPMQ0wCwYDVQQDDAR4ODY2MBOkETAPMQ0wCwYDVQQDDAR4ODY3MBOk -ETAPMQ0wCwYDVQQDDAR4ODY4MBOkETAPMQ0wCwYDVQQDDAR4ODY5MBOkETAPMQ0w -CwYDVQQDDAR4ODcwMBOkETAPMQ0wCwYDVQQDDAR4ODcxMBOkETAPMQ0wCwYDVQQD -DAR4ODcyMBOkETAPMQ0wCwYDVQQDDAR4ODczMBOkETAPMQ0wCwYDVQQDDAR4ODc0 -MBOkETAPMQ0wCwYDVQQDDAR4ODc1MBOkETAPMQ0wCwYDVQQDDAR4ODc2MBOkETAP -MQ0wCwYDVQQDDAR4ODc3MBOkETAPMQ0wCwYDVQQDDAR4ODc4MBOkETAPMQ0wCwYD -VQQDDAR4ODc5MBOkETAPMQ0wCwYDVQQDDAR4ODgwMBOkETAPMQ0wCwYDVQQDDAR4 -ODgxMBOkETAPMQ0wCwYDVQQDDAR4ODgyMBOkETAPMQ0wCwYDVQQDDAR4ODgzMBOk -ETAPMQ0wCwYDVQQDDAR4ODg0MBOkETAPMQ0wCwYDVQQDDAR4ODg1MBOkETAPMQ0w -CwYDVQQDDAR4ODg2MBOkETAPMQ0wCwYDVQQDDAR4ODg3MBOkETAPMQ0wCwYDVQQD -DAR4ODg4MBOkETAPMQ0wCwYDVQQDDAR4ODg5MBOkETAPMQ0wCwYDVQQDDAR4ODkw -MBOkETAPMQ0wCwYDVQQDDAR4ODkxMBOkETAPMQ0wCwYDVQQDDAR4ODkyMBOkETAP -MQ0wCwYDVQQDDAR4ODkzMBOkETAPMQ0wCwYDVQQDDAR4ODk0MBOkETAPMQ0wCwYD -VQQDDAR4ODk1MBOkETAPMQ0wCwYDVQQDDAR4ODk2MBOkETAPMQ0wCwYDVQQDDAR4 -ODk3MBOkETAPMQ0wCwYDVQQDDAR4ODk4MBOkETAPMQ0wCwYDVQQDDAR4ODk5MBOk -ETAPMQ0wCwYDVQQDDAR4OTAwMBOkETAPMQ0wCwYDVQQDDAR4OTAxMBOkETAPMQ0w -CwYDVQQDDAR4OTAyMBOkETAPMQ0wCwYDVQQDDAR4OTAzMBOkETAPMQ0wCwYDVQQD -DAR4OTA0MBOkETAPMQ0wCwYDVQQDDAR4OTA1MBOkETAPMQ0wCwYDVQQDDAR4OTA2 -MBOkETAPMQ0wCwYDVQQDDAR4OTA3MBOkETAPMQ0wCwYDVQQDDAR4OTA4MBOkETAP -MQ0wCwYDVQQDDAR4OTA5MBOkETAPMQ0wCwYDVQQDDAR4OTEwMBOkETAPMQ0wCwYD -VQQDDAR4OTExMBOkETAPMQ0wCwYDVQQDDAR4OTEyMBOkETAPMQ0wCwYDVQQDDAR4 -OTEzMBOkETAPMQ0wCwYDVQQDDAR4OTE0MBOkETAPMQ0wCwYDVQQDDAR4OTE1MBOk -ETAPMQ0wCwYDVQQDDAR4OTE2MBOkETAPMQ0wCwYDVQQDDAR4OTE3MBOkETAPMQ0w -CwYDVQQDDAR4OTE4MBOkETAPMQ0wCwYDVQQDDAR4OTE5MBOkETAPMQ0wCwYDVQQD -DAR4OTIwMBOkETAPMQ0wCwYDVQQDDAR4OTIxMBOkETAPMQ0wCwYDVQQDDAR4OTIy -MBOkETAPMQ0wCwYDVQQDDAR4OTIzMBOkETAPMQ0wCwYDVQQDDAR4OTI0MBOkETAP -MQ0wCwYDVQQDDAR4OTI1MBOkETAPMQ0wCwYDVQQDDAR4OTI2MBOkETAPMQ0wCwYD -VQQDDAR4OTI3MBOkETAPMQ0wCwYDVQQDDAR4OTI4MBOkETAPMQ0wCwYDVQQDDAR4 -OTI5MBOkETAPMQ0wCwYDVQQDDAR4OTMwMBOkETAPMQ0wCwYDVQQDDAR4OTMxMBOk -ETAPMQ0wCwYDVQQDDAR4OTMyMBOkETAPMQ0wCwYDVQQDDAR4OTMzMBOkETAPMQ0w -CwYDVQQDDAR4OTM0MBOkETAPMQ0wCwYDVQQDDAR4OTM1MBOkETAPMQ0wCwYDVQQD -DAR4OTM2MBOkETAPMQ0wCwYDVQQDDAR4OTM3MBOkETAPMQ0wCwYDVQQDDAR4OTM4 -MBOkETAPMQ0wCwYDVQQDDAR4OTM5MBOkETAPMQ0wCwYDVQQDDAR4OTQwMBOkETAP -MQ0wCwYDVQQDDAR4OTQxMBOkETAPMQ0wCwYDVQQDDAR4OTQyMBOkETAPMQ0wCwYD -VQQDDAR4OTQzMBOkETAPMQ0wCwYDVQQDDAR4OTQ0MBOkETAPMQ0wCwYDVQQDDAR4 -OTQ1MBOkETAPMQ0wCwYDVQQDDAR4OTQ2MBOkETAPMQ0wCwYDVQQDDAR4OTQ3MBOk -ETAPMQ0wCwYDVQQDDAR4OTQ4MBOkETAPMQ0wCwYDVQQDDAR4OTQ5MBOkETAPMQ0w -CwYDVQQDDAR4OTUwMBOkETAPMQ0wCwYDVQQDDAR4OTUxMBOkETAPMQ0wCwYDVQQD -DAR4OTUyMBOkETAPMQ0wCwYDVQQDDAR4OTUzMBOkETAPMQ0wCwYDVQQDDAR4OTU0 -MBOkETAPMQ0wCwYDVQQDDAR4OTU1MBOkETAPMQ0wCwYDVQQDDAR4OTU2MBOkETAP -MQ0wCwYDVQQDDAR4OTU3MBOkETAPMQ0wCwYDVQQDDAR4OTU4MBOkETAPMQ0wCwYD -VQQDDAR4OTU5MBOkETAPMQ0wCwYDVQQDDAR4OTYwMBOkETAPMQ0wCwYDVQQDDAR4 -OTYxMBOkETAPMQ0wCwYDVQQDDAR4OTYyMBOkETAPMQ0wCwYDVQQDDAR4OTYzMBOk -ETAPMQ0wCwYDVQQDDAR4OTY0MBOkETAPMQ0wCwYDVQQDDAR4OTY1MBOkETAPMQ0w -CwYDVQQDDAR4OTY2MBOkETAPMQ0wCwYDVQQDDAR4OTY3MBOkETAPMQ0wCwYDVQQD -DAR4OTY4MBOkETAPMQ0wCwYDVQQDDAR4OTY5MBOkETAPMQ0wCwYDVQQDDAR4OTcw -MBOkETAPMQ0wCwYDVQQDDAR4OTcxMBOkETAPMQ0wCwYDVQQDDAR4OTcyMBOkETAP -MQ0wCwYDVQQDDAR4OTczMBOkETAPMQ0wCwYDVQQDDAR4OTc0MBOkETAPMQ0wCwYD -VQQDDAR4OTc1MBOkETAPMQ0wCwYDVQQDDAR4OTc2MBOkETAPMQ0wCwYDVQQDDAR4 -OTc3MBOkETAPMQ0wCwYDVQQDDAR4OTc4MBOkETAPMQ0wCwYDVQQDDAR4OTc5MBOk -ETAPMQ0wCwYDVQQDDAR4OTgwMBOkETAPMQ0wCwYDVQQDDAR4OTgxMBOkETAPMQ0w -CwYDVQQDDAR4OTgyMBOkETAPMQ0wCwYDVQQDDAR4OTgzMBOkETAPMQ0wCwYDVQQD -DAR4OTg0MBOkETAPMQ0wCwYDVQQDDAR4OTg1MBOkETAPMQ0wCwYDVQQDDAR4OTg2 -MBOkETAPMQ0wCwYDVQQDDAR4OTg3MBOkETAPMQ0wCwYDVQQDDAR4OTg4MBOkETAP -MQ0wCwYDVQQDDAR4OTg5MBOkETAPMQ0wCwYDVQQDDAR4OTkwMBOkETAPMQ0wCwYD -VQQDDAR4OTkxMBOkETAPMQ0wCwYDVQQDDAR4OTkyMBOkETAPMQ0wCwYDVQQDDAR4 -OTkzMBOkETAPMQ0wCwYDVQQDDAR4OTk0MBOkETAPMQ0wCwYDVQQDDAR4OTk1MBOk -ETAPMQ0wCwYDVQQDDAR4OTk2MBOkETAPMQ0wCwYDVQQDDAR4OTk3MBOkETAPMQ0w -CwYDVQQDDAR4OTk4MBOkETAPMQ0wCwYDVQQDDAR4OTk5MBSkEjAQMQ4wDAYDVQQD -DAV4MTAwMDAUpBIwEDEOMAwGA1UEAwwFeDEwMDEwFKQSMBAxDjAMBgNVBAMMBXgx -MDAyMBSkEjAQMQ4wDAYDVQQDDAV4MTAwMzAUpBIwEDEOMAwGA1UEAwwFeDEwMDQw -FKQSMBAxDjAMBgNVBAMMBXgxMDA1MBSkEjAQMQ4wDAYDVQQDDAV4MTAwNjAUpBIw -EDEOMAwGA1UEAwwFeDEwMDcwFKQSMBAxDjAMBgNVBAMMBXgxMDA4MBSkEjAQMQ4w -DAYDVQQDDAV4MTAwOTAUpBIwEDEOMAwGA1UEAwwFeDEwMTAwFKQSMBAxDjAMBgNV -BAMMBXgxMDExMBSkEjAQMQ4wDAYDVQQDDAV4MTAxMjAUpBIwEDEOMAwGA1UEAwwF -eDEwMTMwFKQSMBAxDjAMBgNVBAMMBXgxMDE0MBSkEjAQMQ4wDAYDVQQDDAV4MTAx -NTAUpBIwEDEOMAwGA1UEAwwFeDEwMTYwFKQSMBAxDjAMBgNVBAMMBXgxMDE3MBSk -EjAQMQ4wDAYDVQQDDAV4MTAxODAUpBIwEDEOMAwGA1UEAwwFeDEwMTkwFKQSMBAx -DjAMBgNVBAMMBXgxMDIwMBSkEjAQMQ4wDAYDVQQDDAV4MTAyMTAUpBIwEDEOMAwG -A1UEAwwFeDEwMjIwFKQSMBAxDjAMBgNVBAMMBXgxMDIzMBSkEjAQMQ4wDAYDVQQD -DAV4MTAyNDANBgkqhkiG9w0BAQsFAAOCAQEAdY+tX6CMogUY2JimxR18uRH0FGok -ViERmMffDBJsQz1FVN4QFOV7wNh3ZMIBi/PQENgDQ/75UHnGkTQ4d78OCX8ff49Q -nyryMVs3DgRVEysbNDIOjduo7TTQaoOg+THRXy1YBykl0xze+HqsPadnSkzq4PkP -kf/YSNwR7KgjoeRiUbCT+G1jDybEqgnnMIWUzCItpsHhWndw4r5QZyt6hY5WNfdZ -iXBviv4cvRa1hSIO8h7QAFtjf1vrHiPA1cbJl52ap/YrjVRkC/fbJl4IsgyO3N8f -6ZI68cuJ1B9GRZzoDLJsqp9V/M0C/DyCnKV58iempYODZH8C0IzzjzKn4Q== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.cnf deleted file mode 100644 index e87c161023..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.cnf +++ /dev/null @@ -1,1092 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Intermediate" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,keyCertSign,cRLSign -basicConstraints = critical,CA:true -nameConstraints = @nameConstraints_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Intermediate_5.pem -new_certs_dir = out -serial = out/Intermediate.serial -database = out/Intermediate.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Intermediate.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Intermediate.cer - -[crl_info] -URI.0 = http://url-for-crl/Intermediate.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[nameConstraints_info] -permitted;DNS.1 = t0.test -permitted;DNS.2 = t1.test -permitted;DNS.3 = t2.test -permitted;DNS.4 = t3.test -permitted;DNS.5 = t4.test -permitted;DNS.6 = t5.test -permitted;DNS.7 = t6.test -permitted;DNS.8 = t7.test -permitted;DNS.9 = t8.test -permitted;DNS.10 = t9.test -permitted;DNS.11 = t10.test -permitted;DNS.12 = t11.test -permitted;DNS.13 = t12.test -permitted;DNS.14 = t13.test -permitted;DNS.15 = t14.test -permitted;DNS.16 = t15.test -permitted;DNS.17 = t16.test -permitted;DNS.18 = t17.test -permitted;DNS.19 = t18.test -permitted;DNS.20 = t19.test -permitted;DNS.21 = t20.test -permitted;DNS.22 = t21.test -permitted;DNS.23 = t22.test -permitted;DNS.24 = t23.test -permitted;DNS.25 = t24.test -permitted;DNS.26 = t25.test -permitted;DNS.27 = t26.test -permitted;DNS.28 = t27.test -permitted;DNS.29 = t28.test -permitted;DNS.30 = t29.test -permitted;DNS.31 = t30.test -permitted;DNS.32 = t31.test -permitted;DNS.33 = t32.test -permitted;DNS.34 = t33.test -permitted;DNS.35 = t34.test -permitted;DNS.36 = t35.test -permitted;DNS.37 = t36.test -permitted;DNS.38 = t37.test -permitted;DNS.39 = t38.test -permitted;DNS.40 = t39.test -permitted;DNS.41 = t40.test -permitted;DNS.42 = t41.test -permitted;DNS.43 = t42.test -permitted;DNS.44 = t43.test -permitted;DNS.45 = t44.test -permitted;DNS.46 = t45.test -permitted;DNS.47 = t46.test -permitted;DNS.48 = t47.test -permitted;DNS.49 = t48.test -permitted;DNS.50 = t49.test -permitted;DNS.51 = t50.test -permitted;DNS.52 = t51.test -permitted;DNS.53 = t52.test -permitted;DNS.54 = t53.test -permitted;DNS.55 = t54.test -permitted;DNS.56 = t55.test -permitted;DNS.57 = t56.test -permitted;DNS.58 = t57.test -permitted;DNS.59 = t58.test -permitted;DNS.60 = t59.test -permitted;DNS.61 = t60.test -permitted;DNS.62 = t61.test -permitted;DNS.63 = t62.test -permitted;DNS.64 = t63.test -permitted;DNS.65 = t64.test -permitted;DNS.66 = t65.test -permitted;DNS.67 = t66.test -permitted;DNS.68 = t67.test -permitted;DNS.69 = t68.test -permitted;DNS.70 = t69.test -permitted;DNS.71 = t70.test -permitted;DNS.72 = t71.test -permitted;DNS.73 = t72.test -permitted;DNS.74 = t73.test -permitted;DNS.75 = t74.test -permitted;DNS.76 = t75.test -permitted;DNS.77 = t76.test -permitted;DNS.78 = t77.test -permitted;DNS.79 = t78.test -permitted;DNS.80 = t79.test -permitted;DNS.81 = t80.test -permitted;DNS.82 = t81.test -permitted;DNS.83 = t82.test -permitted;DNS.84 = t83.test -permitted;DNS.85 = t84.test -permitted;DNS.86 = t85.test -permitted;DNS.87 = t86.test -permitted;DNS.88 = t87.test -permitted;DNS.89 = t88.test -permitted;DNS.90 = t89.test -permitted;DNS.91 = t90.test -permitted;DNS.92 = t91.test -permitted;DNS.93 = t92.test -permitted;DNS.94 = t93.test -permitted;DNS.95 = t94.test -permitted;DNS.96 = t95.test -permitted;DNS.97 = t96.test -permitted;DNS.98 = t97.test -permitted;DNS.99 = t98.test -permitted;DNS.100 = t99.test -permitted;DNS.101 = t100.test -permitted;DNS.102 = t101.test -permitted;DNS.103 = t102.test -permitted;DNS.104 = t103.test -permitted;DNS.105 = t104.test -permitted;DNS.106 = t105.test -permitted;DNS.107 = t106.test -permitted;DNS.108 = t107.test -permitted;DNS.109 = t108.test -permitted;DNS.110 = t109.test -permitted;DNS.111 = t110.test -permitted;DNS.112 = t111.test -permitted;DNS.113 = t112.test -permitted;DNS.114 = t113.test -permitted;DNS.115 = t114.test -permitted;DNS.116 = t115.test -permitted;DNS.117 = t116.test -permitted;DNS.118 = t117.test -permitted;DNS.119 = t118.test -permitted;DNS.120 = t119.test -permitted;DNS.121 = t120.test -permitted;DNS.122 = t121.test -permitted;DNS.123 = t122.test -permitted;DNS.124 = t123.test -permitted;DNS.125 = t124.test -permitted;DNS.126 = t125.test -permitted;DNS.127 = t126.test -permitted;DNS.128 = t127.test -permitted;DNS.129 = t128.test -permitted;DNS.130 = t129.test -permitted;DNS.131 = t130.test -permitted;DNS.132 = t131.test -permitted;DNS.133 = t132.test -permitted;DNS.134 = t133.test -permitted;DNS.135 = t134.test -permitted;DNS.136 = t135.test -permitted;DNS.137 = t136.test -permitted;DNS.138 = t137.test -permitted;DNS.139 = t138.test -permitted;DNS.140 = t139.test -permitted;DNS.141 = t140.test -permitted;DNS.142 = t141.test -permitted;DNS.143 = t142.test -permitted;DNS.144 = t143.test -permitted;DNS.145 = t144.test -permitted;DNS.146 = t145.test -permitted;DNS.147 = t146.test -permitted;DNS.148 = t147.test -permitted;DNS.149 = t148.test -permitted;DNS.150 = t149.test -permitted;DNS.151 = t150.test -permitted;DNS.152 = t151.test -permitted;DNS.153 = t152.test -permitted;DNS.154 = t153.test -permitted;DNS.155 = t154.test -permitted;DNS.156 = t155.test -permitted;DNS.157 = t156.test -permitted;DNS.158 = t157.test -permitted;DNS.159 = t158.test -permitted;DNS.160 = t159.test -permitted;DNS.161 = t160.test -permitted;DNS.162 = t161.test -permitted;DNS.163 = t162.test -permitted;DNS.164 = t163.test -permitted;DNS.165 = t164.test -permitted;DNS.166 = t165.test -permitted;DNS.167 = t166.test -permitted;DNS.168 = t167.test -permitted;DNS.169 = t168.test -permitted;DNS.170 = t169.test -permitted;DNS.171 = t170.test -permitted;DNS.172 = t171.test -permitted;DNS.173 = t172.test -permitted;DNS.174 = t173.test -permitted;DNS.175 = t174.test -permitted;DNS.176 = t175.test -permitted;DNS.177 = t176.test -permitted;DNS.178 = t177.test -permitted;DNS.179 = t178.test -permitted;DNS.180 = t179.test -permitted;DNS.181 = t180.test -permitted;DNS.182 = t181.test -permitted;DNS.183 = t182.test -permitted;DNS.184 = t183.test -permitted;DNS.185 = t184.test -permitted;DNS.186 = t185.test -permitted;DNS.187 = t186.test -permitted;DNS.188 = t187.test -permitted;DNS.189 = t188.test -permitted;DNS.190 = t189.test -permitted;DNS.191 = t190.test -permitted;DNS.192 = t191.test -permitted;DNS.193 = t192.test -permitted;DNS.194 = t193.test -permitted;DNS.195 = t194.test -permitted;DNS.196 = t195.test -permitted;DNS.197 = t196.test -permitted;DNS.198 = t197.test -permitted;DNS.199 = t198.test -permitted;DNS.200 = t199.test -permitted;DNS.201 = t200.test -permitted;DNS.202 = t201.test -permitted;DNS.203 = t202.test -permitted;DNS.204 = t203.test -permitted;DNS.205 = t204.test -permitted;DNS.206 = t205.test -permitted;DNS.207 = t206.test -permitted;DNS.208 = t207.test -permitted;DNS.209 = t208.test -permitted;DNS.210 = t209.test -permitted;DNS.211 = t210.test -permitted;DNS.212 = t211.test -permitted;DNS.213 = t212.test -permitted;DNS.214 = t213.test -permitted;DNS.215 = t214.test -permitted;DNS.216 = t215.test -permitted;DNS.217 = t216.test -permitted;DNS.218 = t217.test -permitted;DNS.219 = t218.test -permitted;DNS.220 = t219.test -permitted;DNS.221 = t220.test -permitted;DNS.222 = t221.test -permitted;DNS.223 = t222.test -permitted;DNS.224 = t223.test -permitted;DNS.225 = t224.test -permitted;DNS.226 = t225.test -permitted;DNS.227 = t226.test -permitted;DNS.228 = t227.test -permitted;DNS.229 = t228.test -permitted;DNS.230 = t229.test -permitted;DNS.231 = t230.test -permitted;DNS.232 = t231.test -permitted;DNS.233 = t232.test -permitted;DNS.234 = t233.test -permitted;DNS.235 = t234.test -permitted;DNS.236 = t235.test -permitted;DNS.237 = t236.test -permitted;DNS.238 = t237.test -permitted;DNS.239 = t238.test -permitted;DNS.240 = t239.test -permitted;DNS.241 = t240.test -permitted;DNS.242 = t241.test -permitted;DNS.243 = t242.test -permitted;DNS.244 = t243.test -permitted;DNS.245 = t244.test -permitted;DNS.246 = t245.test -permitted;DNS.247 = t246.test -permitted;DNS.248 = t247.test -permitted;DNS.249 = t248.test -permitted;DNS.250 = t249.test -permitted;DNS.251 = t250.test -permitted;DNS.252 = t251.test -permitted;DNS.253 = t252.test -permitted;DNS.254 = t253.test -permitted;DNS.255 = t254.test -permitted;DNS.256 = t255.test -permitted;DNS.257 = t256.test -permitted;DNS.258 = t257.test -permitted;DNS.259 = t258.test -permitted;DNS.260 = t259.test -permitted;DNS.261 = t260.test -permitted;DNS.262 = t261.test -permitted;DNS.263 = t262.test -permitted;DNS.264 = t263.test -permitted;DNS.265 = t264.test -permitted;DNS.266 = t265.test -permitted;DNS.267 = t266.test -permitted;DNS.268 = t267.test -permitted;DNS.269 = t268.test -permitted;DNS.270 = t269.test -permitted;DNS.271 = t270.test -permitted;DNS.272 = t271.test -permitted;DNS.273 = t272.test -permitted;DNS.274 = t273.test -permitted;DNS.275 = t274.test -permitted;DNS.276 = t275.test -permitted;DNS.277 = t276.test -permitted;DNS.278 = t277.test -permitted;DNS.279 = t278.test -permitted;DNS.280 = t279.test -permitted;DNS.281 = t280.test -permitted;DNS.282 = t281.test -permitted;DNS.283 = t282.test -permitted;DNS.284 = t283.test -permitted;DNS.285 = t284.test -permitted;DNS.286 = t285.test -permitted;DNS.287 = t286.test -permitted;DNS.288 = t287.test -permitted;DNS.289 = t288.test -permitted;DNS.290 = t289.test -permitted;DNS.291 = t290.test -permitted;DNS.292 = t291.test -permitted;DNS.293 = t292.test -permitted;DNS.294 = t293.test -permitted;DNS.295 = t294.test -permitted;DNS.296 = t295.test -permitted;DNS.297 = t296.test -permitted;DNS.298 = t297.test -permitted;DNS.299 = t298.test -permitted;DNS.300 = t299.test -permitted;DNS.301 = t300.test -permitted;DNS.302 = t301.test -permitted;DNS.303 = t302.test -permitted;DNS.304 = t303.test -permitted;DNS.305 = t304.test -permitted;DNS.306 = t305.test -permitted;DNS.307 = t306.test -permitted;DNS.308 = t307.test -permitted;DNS.309 = t308.test -permitted;DNS.310 = t309.test -permitted;DNS.311 = t310.test -permitted;DNS.312 = t311.test -permitted;DNS.313 = t312.test -permitted;DNS.314 = t313.test -permitted;DNS.315 = t314.test -permitted;DNS.316 = t315.test -permitted;DNS.317 = t316.test -permitted;DNS.318 = t317.test -permitted;DNS.319 = t318.test -permitted;DNS.320 = t319.test -permitted;DNS.321 = t320.test -permitted;DNS.322 = t321.test -permitted;DNS.323 = t322.test -permitted;DNS.324 = t323.test -permitted;DNS.325 = t324.test -permitted;DNS.326 = t325.test -permitted;DNS.327 = t326.test -permitted;DNS.328 = t327.test -permitted;DNS.329 = t328.test -permitted;DNS.330 = t329.test -permitted;DNS.331 = t330.test -permitted;DNS.332 = t331.test -permitted;DNS.333 = t332.test -permitted;DNS.334 = t333.test -permitted;DNS.335 = t334.test -permitted;DNS.336 = t335.test -permitted;DNS.337 = t336.test -permitted;DNS.338 = t337.test -permitted;DNS.339 = t338.test -permitted;DNS.340 = t339.test -permitted;DNS.341 = t340.test -permitted;DNS.342 = t341.test -permitted;DNS.343 = t342.test -permitted;DNS.344 = t343.test -permitted;DNS.345 = t344.test -permitted;DNS.346 = t345.test -permitted;DNS.347 = t346.test -permitted;DNS.348 = t347.test -permitted;DNS.349 = t348.test -permitted;DNS.350 = t349.test -permitted;DNS.351 = t350.test -permitted;DNS.352 = t351.test -permitted;DNS.353 = t352.test -permitted;DNS.354 = t353.test -permitted;DNS.355 = t354.test -permitted;DNS.356 = t355.test -permitted;DNS.357 = t356.test -permitted;DNS.358 = t357.test -permitted;DNS.359 = t358.test -permitted;DNS.360 = t359.test -permitted;DNS.361 = t360.test -permitted;DNS.362 = t361.test -permitted;DNS.363 = t362.test -permitted;DNS.364 = t363.test -permitted;DNS.365 = t364.test -permitted;DNS.366 = t365.test -permitted;DNS.367 = t366.test -permitted;DNS.368 = t367.test -permitted;DNS.369 = t368.test -permitted;DNS.370 = t369.test -permitted;DNS.371 = t370.test -permitted;DNS.372 = t371.test -permitted;DNS.373 = t372.test -permitted;DNS.374 = t373.test -permitted;DNS.375 = t374.test -permitted;DNS.376 = t375.test -permitted;DNS.377 = t376.test -permitted;DNS.378 = t377.test -permitted;DNS.379 = t378.test -permitted;DNS.380 = t379.test -permitted;DNS.381 = t380.test -permitted;DNS.382 = t381.test -permitted;DNS.383 = t382.test -permitted;DNS.384 = t383.test -permitted;DNS.385 = t384.test -permitted;DNS.386 = t385.test -permitted;DNS.387 = t386.test -permitted;DNS.388 = t387.test -permitted;DNS.389 = t388.test -permitted;DNS.390 = t389.test -permitted;DNS.391 = t390.test -permitted;DNS.392 = t391.test -permitted;DNS.393 = t392.test -permitted;DNS.394 = t393.test -permitted;DNS.395 = t394.test -permitted;DNS.396 = t395.test -permitted;DNS.397 = t396.test -permitted;DNS.398 = t397.test -permitted;DNS.399 = t398.test -permitted;DNS.400 = t399.test -permitted;DNS.401 = t400.test -permitted;DNS.402 = t401.test -permitted;DNS.403 = t402.test -permitted;DNS.404 = t403.test -permitted;DNS.405 = t404.test -permitted;DNS.406 = t405.test -permitted;DNS.407 = t406.test -permitted;DNS.408 = t407.test -permitted;DNS.409 = t408.test -permitted;DNS.410 = t409.test -permitted;DNS.411 = t410.test -permitted;DNS.412 = t411.test -permitted;DNS.413 = t412.test -permitted;DNS.414 = t413.test -permitted;DNS.415 = t414.test -permitted;DNS.416 = t415.test -permitted;DNS.417 = t416.test -permitted;DNS.418 = t417.test -permitted;DNS.419 = t418.test -permitted;DNS.420 = t419.test -permitted;DNS.421 = t420.test -permitted;DNS.422 = t421.test -permitted;DNS.423 = t422.test -permitted;DNS.424 = t423.test -permitted;DNS.425 = t424.test -permitted;DNS.426 = t425.test -permitted;DNS.427 = t426.test -permitted;DNS.428 = t427.test -permitted;DNS.429 = t428.test -permitted;DNS.430 = t429.test -permitted;DNS.431 = t430.test -permitted;DNS.432 = t431.test -permitted;DNS.433 = t432.test -permitted;DNS.434 = t433.test -permitted;DNS.435 = t434.test -permitted;DNS.436 = t435.test -permitted;DNS.437 = t436.test -permitted;DNS.438 = t437.test -permitted;DNS.439 = t438.test -permitted;DNS.440 = t439.test -permitted;DNS.441 = t440.test -permitted;DNS.442 = t441.test -permitted;DNS.443 = t442.test -permitted;DNS.444 = t443.test -permitted;DNS.445 = t444.test -permitted;DNS.446 = t445.test -permitted;DNS.447 = t446.test -permitted;DNS.448 = t447.test -permitted;DNS.449 = t448.test -permitted;DNS.450 = t449.test -permitted;DNS.451 = t450.test -permitted;DNS.452 = t451.test -permitted;DNS.453 = t452.test -permitted;DNS.454 = t453.test -permitted;DNS.455 = t454.test -permitted;DNS.456 = t455.test -permitted;DNS.457 = t456.test -permitted;DNS.458 = t457.test -permitted;DNS.459 = t458.test -permitted;DNS.460 = t459.test -permitted;DNS.461 = t460.test -permitted;DNS.462 = t461.test -permitted;DNS.463 = t462.test -permitted;DNS.464 = t463.test -permitted;DNS.465 = t464.test -permitted;DNS.466 = t465.test -permitted;DNS.467 = t466.test -permitted;DNS.468 = t467.test -permitted;DNS.469 = t468.test -permitted;DNS.470 = t469.test -permitted;DNS.471 = t470.test -permitted;DNS.472 = t471.test -permitted;DNS.473 = t472.test -permitted;DNS.474 = t473.test -permitted;DNS.475 = t474.test -permitted;DNS.476 = t475.test -permitted;DNS.477 = t476.test -permitted;DNS.478 = t477.test -permitted;DNS.479 = t478.test -permitted;DNS.480 = t479.test -permitted;DNS.481 = t480.test -permitted;DNS.482 = t481.test -permitted;DNS.483 = t482.test -permitted;DNS.484 = t483.test -permitted;DNS.485 = t484.test -permitted;DNS.486 = t485.test -permitted;DNS.487 = t486.test -permitted;DNS.488 = t487.test -permitted;DNS.489 = t488.test -permitted;DNS.490 = t489.test -permitted;DNS.491 = t490.test -permitted;DNS.492 = t491.test -permitted;DNS.493 = t492.test -permitted;DNS.494 = t493.test -permitted;DNS.495 = t494.test -permitted;DNS.496 = t495.test -permitted;DNS.497 = t496.test -permitted;DNS.498 = t497.test -permitted;DNS.499 = t498.test -permitted;DNS.500 = t499.test -permitted;DNS.501 = t500.test -permitted;DNS.502 = t501.test -permitted;DNS.503 = t502.test -permitted;DNS.504 = t503.test -permitted;DNS.505 = t504.test -permitted;DNS.506 = t505.test -permitted;DNS.507 = t506.test -permitted;DNS.508 = t507.test -permitted;DNS.509 = t508.test -permitted;DNS.510 = t509.test -permitted;DNS.511 = t510.test -permitted;DNS.512 = t511.test -permitted;DNS.513 = t512.test -permitted;DNS.514 = t513.test -permitted;DNS.515 = t514.test -permitted;DNS.516 = t515.test -permitted;DNS.517 = t516.test -permitted;DNS.518 = t517.test -permitted;DNS.519 = t518.test -permitted;DNS.520 = t519.test -permitted;DNS.521 = t520.test -permitted;DNS.522 = t521.test -permitted;DNS.523 = t522.test -permitted;DNS.524 = t523.test -permitted;DNS.525 = t524.test -permitted;DNS.526 = t525.test -permitted;DNS.527 = t526.test -permitted;DNS.528 = t527.test -permitted;DNS.529 = t528.test -permitted;DNS.530 = t529.test -permitted;DNS.531 = t530.test -permitted;DNS.532 = t531.test -permitted;DNS.533 = t532.test -permitted;DNS.534 = t533.test -permitted;DNS.535 = t534.test -permitted;DNS.536 = t535.test -permitted;DNS.537 = t536.test -permitted;DNS.538 = t537.test -permitted;DNS.539 = t538.test -permitted;DNS.540 = t539.test -permitted;DNS.541 = t540.test -permitted;DNS.542 = t541.test -permitted;DNS.543 = t542.test -permitted;DNS.544 = t543.test -permitted;DNS.545 = t544.test -permitted;DNS.546 = t545.test -permitted;DNS.547 = t546.test -permitted;DNS.548 = t547.test -permitted;DNS.549 = t548.test -permitted;DNS.550 = t549.test -permitted;DNS.551 = t550.test -permitted;DNS.552 = t551.test -permitted;DNS.553 = t552.test -permitted;DNS.554 = t553.test -permitted;DNS.555 = t554.test -permitted;DNS.556 = t555.test -permitted;DNS.557 = t556.test -permitted;DNS.558 = t557.test -permitted;DNS.559 = t558.test -permitted;DNS.560 = t559.test -permitted;DNS.561 = t560.test -permitted;DNS.562 = t561.test -permitted;DNS.563 = t562.test -permitted;DNS.564 = t563.test -permitted;DNS.565 = t564.test -permitted;DNS.566 = t565.test -permitted;DNS.567 = t566.test -permitted;DNS.568 = t567.test -permitted;DNS.569 = t568.test -permitted;DNS.570 = t569.test -permitted;DNS.571 = t570.test -permitted;DNS.572 = t571.test -permitted;DNS.573 = t572.test -permitted;DNS.574 = t573.test -permitted;DNS.575 = t574.test -permitted;DNS.576 = t575.test -permitted;DNS.577 = t576.test -permitted;DNS.578 = t577.test -permitted;DNS.579 = t578.test -permitted;DNS.580 = t579.test -permitted;DNS.581 = t580.test -permitted;DNS.582 = t581.test -permitted;DNS.583 = t582.test -permitted;DNS.584 = t583.test -permitted;DNS.585 = t584.test -permitted;DNS.586 = t585.test -permitted;DNS.587 = t586.test -permitted;DNS.588 = t587.test -permitted;DNS.589 = t588.test -permitted;DNS.590 = t589.test -permitted;DNS.591 = t590.test -permitted;DNS.592 = t591.test -permitted;DNS.593 = t592.test -permitted;DNS.594 = t593.test -permitted;DNS.595 = t594.test -permitted;DNS.596 = t595.test -permitted;DNS.597 = t596.test -permitted;DNS.598 = t597.test -permitted;DNS.599 = t598.test -permitted;DNS.600 = t599.test -permitted;DNS.601 = t600.test -permitted;DNS.602 = t601.test -permitted;DNS.603 = t602.test -permitted;DNS.604 = t603.test -permitted;DNS.605 = t604.test -permitted;DNS.606 = t605.test -permitted;DNS.607 = t606.test -permitted;DNS.608 = t607.test -permitted;DNS.609 = t608.test -permitted;DNS.610 = t609.test -permitted;DNS.611 = t610.test -permitted;DNS.612 = t611.test -permitted;DNS.613 = t612.test -permitted;DNS.614 = t613.test -permitted;DNS.615 = t614.test -permitted;DNS.616 = t615.test -permitted;DNS.617 = t616.test -permitted;DNS.618 = t617.test -permitted;DNS.619 = t618.test -permitted;DNS.620 = t619.test -permitted;DNS.621 = t620.test -permitted;DNS.622 = t621.test -permitted;DNS.623 = t622.test -permitted;DNS.624 = t623.test -permitted;DNS.625 = t624.test -permitted;DNS.626 = t625.test -permitted;DNS.627 = t626.test -permitted;DNS.628 = t627.test -permitted;DNS.629 = t628.test -permitted;DNS.630 = t629.test -permitted;DNS.631 = t630.test -permitted;DNS.632 = t631.test -permitted;DNS.633 = t632.test -permitted;DNS.634 = t633.test -permitted;DNS.635 = t634.test -permitted;DNS.636 = t635.test -permitted;DNS.637 = t636.test -permitted;DNS.638 = t637.test -permitted;DNS.639 = t638.test -permitted;DNS.640 = t639.test -permitted;DNS.641 = t640.test -permitted;DNS.642 = t641.test -permitted;DNS.643 = t642.test -permitted;DNS.644 = t643.test -permitted;DNS.645 = t644.test -permitted;DNS.646 = t645.test -permitted;DNS.647 = t646.test -permitted;DNS.648 = t647.test -permitted;DNS.649 = t648.test -permitted;DNS.650 = t649.test -permitted;DNS.651 = t650.test -permitted;DNS.652 = t651.test -permitted;DNS.653 = t652.test -permitted;DNS.654 = t653.test -permitted;DNS.655 = t654.test -permitted;DNS.656 = t655.test -permitted;DNS.657 = t656.test -permitted;DNS.658 = t657.test -permitted;DNS.659 = t658.test -permitted;DNS.660 = t659.test -permitted;DNS.661 = t660.test -permitted;DNS.662 = t661.test -permitted;DNS.663 = t662.test -permitted;DNS.664 = t663.test -permitted;DNS.665 = t664.test -permitted;DNS.666 = t665.test -permitted;DNS.667 = t666.test -permitted;DNS.668 = t667.test -permitted;DNS.669 = t668.test -permitted;DNS.670 = t669.test -permitted;DNS.671 = t670.test -permitted;DNS.672 = t671.test -permitted;DNS.673 = t672.test -permitted;DNS.674 = t673.test -permitted;DNS.675 = t674.test -permitted;DNS.676 = t675.test -permitted;DNS.677 = t676.test -permitted;DNS.678 = t677.test -permitted;DNS.679 = t678.test -permitted;DNS.680 = t679.test -permitted;DNS.681 = t680.test -permitted;DNS.682 = t681.test -permitted;DNS.683 = t682.test -permitted;DNS.684 = t683.test -permitted;DNS.685 = t684.test -permitted;DNS.686 = t685.test -permitted;DNS.687 = t686.test -permitted;DNS.688 = t687.test -permitted;DNS.689 = t688.test -permitted;DNS.690 = t689.test -permitted;DNS.691 = t690.test -permitted;DNS.692 = t691.test -permitted;DNS.693 = t692.test -permitted;DNS.694 = t693.test -permitted;DNS.695 = t694.test -permitted;DNS.696 = t695.test -permitted;DNS.697 = t696.test -permitted;DNS.698 = t697.test -permitted;DNS.699 = t698.test -permitted;DNS.700 = t699.test -permitted;DNS.701 = t700.test -permitted;DNS.702 = t701.test -permitted;DNS.703 = t702.test -permitted;DNS.704 = t703.test -permitted;DNS.705 = t704.test -permitted;DNS.706 = t705.test -permitted;DNS.707 = t706.test -permitted;DNS.708 = t707.test -permitted;DNS.709 = t708.test -permitted;DNS.710 = t709.test -permitted;DNS.711 = t710.test -permitted;DNS.712 = t711.test -permitted;DNS.713 = t712.test -permitted;DNS.714 = t713.test -permitted;DNS.715 = t714.test -permitted;DNS.716 = t715.test -permitted;DNS.717 = t716.test -permitted;DNS.718 = t717.test -permitted;DNS.719 = t718.test -permitted;DNS.720 = t719.test -permitted;DNS.721 = t720.test -permitted;DNS.722 = t721.test -permitted;DNS.723 = t722.test -permitted;DNS.724 = t723.test -permitted;DNS.725 = t724.test -permitted;DNS.726 = t725.test -permitted;DNS.727 = t726.test -permitted;DNS.728 = t727.test -permitted;DNS.729 = t728.test -permitted;DNS.730 = t729.test -permitted;DNS.731 = t730.test -permitted;DNS.732 = t731.test -permitted;DNS.733 = t732.test -permitted;DNS.734 = t733.test -permitted;DNS.735 = t734.test -permitted;DNS.736 = t735.test -permitted;DNS.737 = t736.test -permitted;DNS.738 = t737.test -permitted;DNS.739 = t738.test -permitted;DNS.740 = t739.test -permitted;DNS.741 = t740.test -permitted;DNS.742 = t741.test -permitted;DNS.743 = t742.test -permitted;DNS.744 = t743.test -permitted;DNS.745 = t744.test -permitted;DNS.746 = t745.test -permitted;DNS.747 = t746.test -permitted;DNS.748 = t747.test -permitted;DNS.749 = t748.test -permitted;DNS.750 = t749.test -permitted;DNS.751 = t750.test -permitted;DNS.752 = t751.test -permitted;DNS.753 = t752.test -permitted;DNS.754 = t753.test -permitted;DNS.755 = t754.test -permitted;DNS.756 = t755.test -permitted;DNS.757 = t756.test -permitted;DNS.758 = t757.test -permitted;DNS.759 = t758.test -permitted;DNS.760 = t759.test -permitted;DNS.761 = t760.test -permitted;DNS.762 = t761.test -permitted;DNS.763 = t762.test -permitted;DNS.764 = t763.test -permitted;DNS.765 = t764.test -permitted;DNS.766 = t765.test -permitted;DNS.767 = t766.test -permitted;DNS.768 = t767.test -permitted;DNS.769 = t768.test -permitted;DNS.770 = t769.test -permitted;DNS.771 = t770.test -permitted;DNS.772 = t771.test -permitted;DNS.773 = t772.test -permitted;DNS.774 = t773.test -permitted;DNS.775 = t774.test -permitted;DNS.776 = t775.test -permitted;DNS.777 = t776.test -permitted;DNS.778 = t777.test -permitted;DNS.779 = t778.test -permitted;DNS.780 = t779.test -permitted;DNS.781 = t780.test -permitted;DNS.782 = t781.test -permitted;DNS.783 = t782.test -permitted;DNS.784 = t783.test -permitted;DNS.785 = t784.test -permitted;DNS.786 = t785.test -permitted;DNS.787 = t786.test -permitted;DNS.788 = t787.test -permitted;DNS.789 = t788.test -permitted;DNS.790 = t789.test -permitted;DNS.791 = t790.test -permitted;DNS.792 = t791.test -permitted;DNS.793 = t792.test -permitted;DNS.794 = t793.test -permitted;DNS.795 = t794.test -permitted;DNS.796 = t795.test -permitted;DNS.797 = t796.test -permitted;DNS.798 = t797.test -permitted;DNS.799 = t798.test -permitted;DNS.800 = t799.test -permitted;DNS.801 = t800.test -permitted;DNS.802 = t801.test -permitted;DNS.803 = t802.test -permitted;DNS.804 = t803.test -permitted;DNS.805 = t804.test -permitted;DNS.806 = t805.test -permitted;DNS.807 = t806.test -permitted;DNS.808 = t807.test -permitted;DNS.809 = t808.test -permitted;DNS.810 = t809.test -permitted;DNS.811 = t810.test -permitted;DNS.812 = t811.test -permitted;DNS.813 = t812.test -permitted;DNS.814 = t813.test -permitted;DNS.815 = t814.test -permitted;DNS.816 = t815.test -permitted;DNS.817 = t816.test -permitted;DNS.818 = t817.test -permitted;DNS.819 = t818.test -permitted;DNS.820 = t819.test -permitted;DNS.821 = t820.test -permitted;DNS.822 = t821.test -permitted;DNS.823 = t822.test -permitted;DNS.824 = t823.test -permitted;DNS.825 = t824.test -permitted;DNS.826 = t825.test -permitted;DNS.827 = t826.test -permitted;DNS.828 = t827.test -permitted;DNS.829 = t828.test -permitted;DNS.830 = t829.test -permitted;DNS.831 = t830.test -permitted;DNS.832 = t831.test -permitted;DNS.833 = t832.test -permitted;DNS.834 = t833.test -permitted;DNS.835 = t834.test -permitted;DNS.836 = t835.test -permitted;DNS.837 = t836.test -permitted;DNS.838 = t837.test -permitted;DNS.839 = t838.test -permitted;DNS.840 = t839.test -permitted;DNS.841 = t840.test -permitted;DNS.842 = t841.test -permitted;DNS.843 = t842.test -permitted;DNS.844 = t843.test -permitted;DNS.845 = t844.test -permitted;DNS.846 = t845.test -permitted;DNS.847 = t846.test -permitted;DNS.848 = t847.test -permitted;DNS.849 = t848.test -permitted;DNS.850 = t849.test -permitted;DNS.851 = t850.test -permitted;DNS.852 = t851.test -permitted;DNS.853 = t852.test -permitted;DNS.854 = t853.test -permitted;DNS.855 = t854.test -permitted;DNS.856 = t855.test -permitted;DNS.857 = t856.test -permitted;DNS.858 = t857.test -permitted;DNS.859 = t858.test -permitted;DNS.860 = t859.test -permitted;DNS.861 = t860.test -permitted;DNS.862 = t861.test -permitted;DNS.863 = t862.test -permitted;DNS.864 = t863.test -permitted;DNS.865 = t864.test -permitted;DNS.866 = t865.test -permitted;DNS.867 = t866.test -permitted;DNS.868 = t867.test -permitted;DNS.869 = t868.test -permitted;DNS.870 = t869.test -permitted;DNS.871 = t870.test -permitted;DNS.872 = t871.test -permitted;DNS.873 = t872.test -permitted;DNS.874 = t873.test -permitted;DNS.875 = t874.test -permitted;DNS.876 = t875.test -permitted;DNS.877 = t876.test -permitted;DNS.878 = t877.test -permitted;DNS.879 = t878.test -permitted;DNS.880 = t879.test -permitted;DNS.881 = t880.test -permitted;DNS.882 = t881.test -permitted;DNS.883 = t882.test -permitted;DNS.884 = t883.test -permitted;DNS.885 = t884.test -permitted;DNS.886 = t885.test -permitted;DNS.887 = t886.test -permitted;DNS.888 = t887.test -permitted;DNS.889 = t888.test -permitted;DNS.890 = t889.test -permitted;DNS.891 = t890.test -permitted;DNS.892 = t891.test -permitted;DNS.893 = t892.test -permitted;DNS.894 = t893.test -permitted;DNS.895 = t894.test -permitted;DNS.896 = t895.test -permitted;DNS.897 = t896.test -permitted;DNS.898 = t897.test -permitted;DNS.899 = t898.test -permitted;DNS.900 = t899.test -permitted;DNS.901 = t900.test -permitted;DNS.902 = t901.test -permitted;DNS.903 = t902.test -permitted;DNS.904 = t903.test -permitted;DNS.905 = t904.test -permitted;DNS.906 = t905.test -permitted;DNS.907 = t906.test -permitted;DNS.908 = t907.test -permitted;DNS.909 = t908.test -permitted;DNS.910 = t909.test -permitted;DNS.911 = t910.test -permitted;DNS.912 = t911.test -permitted;DNS.913 = t912.test -permitted;DNS.914 = t913.test -permitted;DNS.915 = t914.test -permitted;DNS.916 = t915.test -permitted;DNS.917 = t916.test -permitted;DNS.918 = t917.test -permitted;DNS.919 = t918.test -permitted;DNS.920 = t919.test -permitted;DNS.921 = t920.test -permitted;DNS.922 = t921.test -permitted;DNS.923 = t922.test -permitted;DNS.924 = t923.test -permitted;DNS.925 = t924.test -permitted;DNS.926 = t925.test -permitted;DNS.927 = t926.test -permitted;DNS.928 = t927.test -permitted;DNS.929 = t928.test -permitted;DNS.930 = t929.test -permitted;DNS.931 = t930.test -permitted;DNS.932 = t931.test -permitted;DNS.933 = t932.test -permitted;DNS.934 = t933.test -permitted;DNS.935 = t934.test -permitted;DNS.936 = t935.test -permitted;DNS.937 = t936.test -permitted;DNS.938 = t937.test -permitted;DNS.939 = t938.test -permitted;DNS.940 = t939.test -permitted;DNS.941 = t940.test -permitted;DNS.942 = t941.test -permitted;DNS.943 = t942.test -permitted;DNS.944 = t943.test -permitted;DNS.945 = t944.test -permitted;DNS.946 = t945.test -permitted;DNS.947 = t946.test -permitted;DNS.948 = t947.test -permitted;DNS.949 = t948.test -permitted;DNS.950 = t949.test -permitted;DNS.951 = t950.test -permitted;DNS.952 = t951.test -permitted;DNS.953 = t952.test -permitted;DNS.954 = t953.test -permitted;DNS.955 = t954.test -permitted;DNS.956 = t955.test -permitted;DNS.957 = t956.test -permitted;DNS.958 = t957.test -permitted;DNS.959 = t958.test -permitted;DNS.960 = t959.test -permitted;DNS.961 = t960.test -permitted;DNS.962 = t961.test -permitted;DNS.963 = t962.test -permitted;DNS.964 = t963.test -permitted;DNS.965 = t964.test -permitted;DNS.966 = t965.test -permitted;DNS.967 = t966.test -permitted;DNS.968 = t967.test -permitted;DNS.969 = t968.test -permitted;DNS.970 = t969.test -permitted;DNS.971 = t970.test -permitted;DNS.972 = t971.test -permitted;DNS.973 = t972.test -permitted;DNS.974 = t973.test -permitted;DNS.975 = t974.test -permitted;DNS.976 = t975.test -permitted;DNS.977 = t976.test -permitted;DNS.978 = t977.test -permitted;DNS.979 = t978.test -permitted;DNS.980 = t979.test -permitted;DNS.981 = t980.test -permitted;DNS.982 = t981.test -permitted;DNS.983 = t982.test -permitted;DNS.984 = t983.test -permitted;DNS.985 = t984.test -permitted;DNS.986 = t985.test -permitted;DNS.987 = t986.test -permitted;DNS.988 = t987.test -permitted;DNS.989 = t988.test -permitted;DNS.990 = t989.test -permitted;DNS.991 = t990.test -permitted;DNS.992 = t991.test -permitted;DNS.993 = t992.test -permitted;DNS.994 = t993.test -permitted;DNS.995 = t994.test -permitted;DNS.996 = t995.test -permitted;DNS.997 = t996.test -permitted;DNS.998 = t997.test -permitted;DNS.999 = t998.test -permitted;DNS.1000 = t999.test -permitted;DNS.1001 = t1000.test -permitted;DNS.1002 = t1001.test -permitted;DNS.1003 = t1002.test -permitted;DNS.1004 = t1003.test -permitted;DNS.1005 = t1004.test -permitted;DNS.1006 = t1005.test -permitted;DNS.1007 = t1006.test -permitted;DNS.1008 = t1007.test -permitted;DNS.1009 = t1008.test -permitted;DNS.1010 = t1009.test -permitted;DNS.1011 = t1010.test -permitted;DNS.1012 = t1011.test -permitted;DNS.1013 = t1012.test -permitted;DNS.1014 = t1013.test -permitted;DNS.1015 = t1014.test -permitted;DNS.1016 = t1015.test -permitted;DNS.1017 = t1016.test -permitted;DNS.1018 = t1017.test -permitted;DNS.1019 = t1018.test -permitted;DNS.1020 = t1019.test -permitted;DNS.1021 = t1020.test -permitted;DNS.1022 = t1021.test -permitted;DNS.1023 = t1022.test -permitted;DNS.1024 = t1023.test -permitted;DNS.1025 = t1024.test - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.csr deleted file mode 100644 index 37d7374954..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.csr +++ /dev/null @@ -1,293 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MII2gjCCNWoCAQAwFzEVMBMGA1UEAwwMSW50ZXJtZWRpYXRlMIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzvbBG4X4FRSuiN3JLw043DZmZ5TXTMLqcxL -Ha4GJxiOVbqtEscdMlltwxYg22Kmd4AS4IdYUVXjZn/R4DoiZeVwJqIEBPBd+V9W -yNroD1cod26aoEpTNBpjN6JDqw5KzQcj3VWDRAAMcEHfNWTQxQ5qh9vK/DXV4luv -C6DmdaXS4XJOImMBQXO4lVAs/e3DYbY21IOVYcPgYf/0noroutzR9ontnTBElSf0 -0YvmLxRmVvHa8cwEG3eSpZ9YQAyfDDLWBcJMwMWf5aQwPUzpnQNsTAa25ZW9Ibjm -K6igvwa7QzMZPXsXWfFkTSRnsVEPNa7wcXV5rlsCNAQx42aGZQIDAQABoII0JDCC -NCAGCSqGSIb3DQEJDjGCNBEwgjQNMB0GA1UdDgQWBBSSET+sEZbHZjfPg1ok8Dp3 -rzONfzAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zCCM8kGA1UdHgSC -M8AwgjO8oIIzuDAJggd0MC50ZXN0MAmCB3QxLnRlc3QwCYIHdDIudGVzdDAJggd0 -My50ZXN0MAmCB3Q0LnRlc3QwCYIHdDUudGVzdDAJggd0Ni50ZXN0MAmCB3Q3LnRl -c3QwCYIHdDgudGVzdDAJggd0OS50ZXN0MAqCCHQxMC50ZXN0MAqCCHQxMS50ZXN0 -MAqCCHQxMi50ZXN0MAqCCHQxMy50ZXN0MAqCCHQxNC50ZXN0MAqCCHQxNS50ZXN0 -MAqCCHQxNi50ZXN0MAqCCHQxNy50ZXN0MAqCCHQxOC50ZXN0MAqCCHQxOS50ZXN0 -MAqCCHQyMC50ZXN0MAqCCHQyMS50ZXN0MAqCCHQyMi50ZXN0MAqCCHQyMy50ZXN0 -MAqCCHQyNC50ZXN0MAqCCHQyNS50ZXN0MAqCCHQyNi50ZXN0MAqCCHQyNy50ZXN0 -MAqCCHQyOC50ZXN0MAqCCHQyOS50ZXN0MAqCCHQzMC50ZXN0MAqCCHQzMS50ZXN0 -MAqCCHQzMi50ZXN0MAqCCHQzMy50ZXN0MAqCCHQzNC50ZXN0MAqCCHQzNS50ZXN0 -MAqCCHQzNi50ZXN0MAqCCHQzNy50ZXN0MAqCCHQzOC50ZXN0MAqCCHQzOS50ZXN0 -MAqCCHQ0MC50ZXN0MAqCCHQ0MS50ZXN0MAqCCHQ0Mi50ZXN0MAqCCHQ0My50ZXN0 -MAqCCHQ0NC50ZXN0MAqCCHQ0NS50ZXN0MAqCCHQ0Ni50ZXN0MAqCCHQ0Ny50ZXN0 -MAqCCHQ0OC50ZXN0MAqCCHQ0OS50ZXN0MAqCCHQ1MC50ZXN0MAqCCHQ1MS50ZXN0 -MAqCCHQ1Mi50ZXN0MAqCCHQ1My50ZXN0MAqCCHQ1NC50ZXN0MAqCCHQ1NS50ZXN0 -MAqCCHQ1Ni50ZXN0MAqCCHQ1Ny50ZXN0MAqCCHQ1OC50ZXN0MAqCCHQ1OS50ZXN0 -MAqCCHQ2MC50ZXN0MAqCCHQ2MS50ZXN0MAqCCHQ2Mi50ZXN0MAqCCHQ2My50ZXN0 -MAqCCHQ2NC50ZXN0MAqCCHQ2NS50ZXN0MAqCCHQ2Ni50ZXN0MAqCCHQ2Ny50ZXN0 -MAqCCHQ2OC50ZXN0MAqCCHQ2OS50ZXN0MAqCCHQ3MC50ZXN0MAqCCHQ3MS50ZXN0 -MAqCCHQ3Mi50ZXN0MAqCCHQ3My50ZXN0MAqCCHQ3NC50ZXN0MAqCCHQ3NS50ZXN0 -MAqCCHQ3Ni50ZXN0MAqCCHQ3Ny50ZXN0MAqCCHQ3OC50ZXN0MAqCCHQ3OS50ZXN0 -MAqCCHQ4MC50ZXN0MAqCCHQ4MS50ZXN0MAqCCHQ4Mi50ZXN0MAqCCHQ4My50ZXN0 -MAqCCHQ4NC50ZXN0MAqCCHQ4NS50ZXN0MAqCCHQ4Ni50ZXN0MAqCCHQ4Ny50ZXN0 -MAqCCHQ4OC50ZXN0MAqCCHQ4OS50ZXN0MAqCCHQ5MC50ZXN0MAqCCHQ5MS50ZXN0 -MAqCCHQ5Mi50ZXN0MAqCCHQ5My50ZXN0MAqCCHQ5NC50ZXN0MAqCCHQ5NS50ZXN0 -MAqCCHQ5Ni50ZXN0MAqCCHQ5Ny50ZXN0MAqCCHQ5OC50ZXN0MAqCCHQ5OS50ZXN0 -MAuCCXQxMDAudGVzdDALggl0MTAxLnRlc3QwC4IJdDEwMi50ZXN0MAuCCXQxMDMu -dGVzdDALggl0MTA0LnRlc3QwC4IJdDEwNS50ZXN0MAuCCXQxMDYudGVzdDALggl0 -MTA3LnRlc3QwC4IJdDEwOC50ZXN0MAuCCXQxMDkudGVzdDALggl0MTEwLnRlc3Qw -C4IJdDExMS50ZXN0MAuCCXQxMTIudGVzdDALggl0MTEzLnRlc3QwC4IJdDExNC50 -ZXN0MAuCCXQxMTUudGVzdDALggl0MTE2LnRlc3QwC4IJdDExNy50ZXN0MAuCCXQx -MTgudGVzdDALggl0MTE5LnRlc3QwC4IJdDEyMC50ZXN0MAuCCXQxMjEudGVzdDAL -ggl0MTIyLnRlc3QwC4IJdDEyMy50ZXN0MAuCCXQxMjQudGVzdDALggl0MTI1LnRl -c3QwC4IJdDEyNi50ZXN0MAuCCXQxMjcudGVzdDALggl0MTI4LnRlc3QwC4IJdDEy -OS50ZXN0MAuCCXQxMzAudGVzdDALggl0MTMxLnRlc3QwC4IJdDEzMi50ZXN0MAuC -CXQxMzMudGVzdDALggl0MTM0LnRlc3QwC4IJdDEzNS50ZXN0MAuCCXQxMzYudGVz -dDALggl0MTM3LnRlc3QwC4IJdDEzOC50ZXN0MAuCCXQxMzkudGVzdDALggl0MTQw -LnRlc3QwC4IJdDE0MS50ZXN0MAuCCXQxNDIudGVzdDALggl0MTQzLnRlc3QwC4IJ -dDE0NC50ZXN0MAuCCXQxNDUudGVzdDALggl0MTQ2LnRlc3QwC4IJdDE0Ny50ZXN0 -MAuCCXQxNDgudGVzdDALggl0MTQ5LnRlc3QwC4IJdDE1MC50ZXN0MAuCCXQxNTEu -dGVzdDALggl0MTUyLnRlc3QwC4IJdDE1My50ZXN0MAuCCXQxNTQudGVzdDALggl0 -MTU1LnRlc3QwC4IJdDE1Ni50ZXN0MAuCCXQxNTcudGVzdDALggl0MTU4LnRlc3Qw -C4IJdDE1OS50ZXN0MAuCCXQxNjAudGVzdDALggl0MTYxLnRlc3QwC4IJdDE2Mi50 -ZXN0MAuCCXQxNjMudGVzdDALggl0MTY0LnRlc3QwC4IJdDE2NS50ZXN0MAuCCXQx -NjYudGVzdDALggl0MTY3LnRlc3QwC4IJdDE2OC50ZXN0MAuCCXQxNjkudGVzdDAL -ggl0MTcwLnRlc3QwC4IJdDE3MS50ZXN0MAuCCXQxNzIudGVzdDALggl0MTczLnRl -c3QwC4IJdDE3NC50ZXN0MAuCCXQxNzUudGVzdDALggl0MTc2LnRlc3QwC4IJdDE3 -Ny50ZXN0MAuCCXQxNzgudGVzdDALggl0MTc5LnRlc3QwC4IJdDE4MC50ZXN0MAuC -CXQxODEudGVzdDALggl0MTgyLnRlc3QwC4IJdDE4My50ZXN0MAuCCXQxODQudGVz -dDALggl0MTg1LnRlc3QwC4IJdDE4Ni50ZXN0MAuCCXQxODcudGVzdDALggl0MTg4 -LnRlc3QwC4IJdDE4OS50ZXN0MAuCCXQxOTAudGVzdDALggl0MTkxLnRlc3QwC4IJ -dDE5Mi50ZXN0MAuCCXQxOTMudGVzdDALggl0MTk0LnRlc3QwC4IJdDE5NS50ZXN0 -MAuCCXQxOTYudGVzdDALggl0MTk3LnRlc3QwC4IJdDE5OC50ZXN0MAuCCXQxOTku -dGVzdDALggl0MjAwLnRlc3QwC4IJdDIwMS50ZXN0MAuCCXQyMDIudGVzdDALggl0 -MjAzLnRlc3QwC4IJdDIwNC50ZXN0MAuCCXQyMDUudGVzdDALggl0MjA2LnRlc3Qw -C4IJdDIwNy50ZXN0MAuCCXQyMDgudGVzdDALggl0MjA5LnRlc3QwC4IJdDIxMC50 -ZXN0MAuCCXQyMTEudGVzdDALggl0MjEyLnRlc3QwC4IJdDIxMy50ZXN0MAuCCXQy -MTQudGVzdDALggl0MjE1LnRlc3QwC4IJdDIxNi50ZXN0MAuCCXQyMTcudGVzdDAL -ggl0MjE4LnRlc3QwC4IJdDIxOS50ZXN0MAuCCXQyMjAudGVzdDALggl0MjIxLnRl -c3QwC4IJdDIyMi50ZXN0MAuCCXQyMjMudGVzdDALggl0MjI0LnRlc3QwC4IJdDIy -NS50ZXN0MAuCCXQyMjYudGVzdDALggl0MjI3LnRlc3QwC4IJdDIyOC50ZXN0MAuC -CXQyMjkudGVzdDALggl0MjMwLnRlc3QwC4IJdDIzMS50ZXN0MAuCCXQyMzIudGVz -dDALggl0MjMzLnRlc3QwC4IJdDIzNC50ZXN0MAuCCXQyMzUudGVzdDALggl0MjM2 -LnRlc3QwC4IJdDIzNy50ZXN0MAuCCXQyMzgudGVzdDALggl0MjM5LnRlc3QwC4IJ -dDI0MC50ZXN0MAuCCXQyNDEudGVzdDALggl0MjQyLnRlc3QwC4IJdDI0My50ZXN0 -MAuCCXQyNDQudGVzdDALggl0MjQ1LnRlc3QwC4IJdDI0Ni50ZXN0MAuCCXQyNDcu -dGVzdDALggl0MjQ4LnRlc3QwC4IJdDI0OS50ZXN0MAuCCXQyNTAudGVzdDALggl0 -MjUxLnRlc3QwC4IJdDI1Mi50ZXN0MAuCCXQyNTMudGVzdDALggl0MjU0LnRlc3Qw -C4IJdDI1NS50ZXN0MAuCCXQyNTYudGVzdDALggl0MjU3LnRlc3QwC4IJdDI1OC50 -ZXN0MAuCCXQyNTkudGVzdDALggl0MjYwLnRlc3QwC4IJdDI2MS50ZXN0MAuCCXQy -NjIudGVzdDALggl0MjYzLnRlc3QwC4IJdDI2NC50ZXN0MAuCCXQyNjUudGVzdDAL -ggl0MjY2LnRlc3QwC4IJdDI2Ny50ZXN0MAuCCXQyNjgudGVzdDALggl0MjY5LnRl -c3QwC4IJdDI3MC50ZXN0MAuCCXQyNzEudGVzdDALggl0MjcyLnRlc3QwC4IJdDI3 -My50ZXN0MAuCCXQyNzQudGVzdDALggl0Mjc1LnRlc3QwC4IJdDI3Ni50ZXN0MAuC -CXQyNzcudGVzdDALggl0Mjc4LnRlc3QwC4IJdDI3OS50ZXN0MAuCCXQyODAudGVz -dDALggl0MjgxLnRlc3QwC4IJdDI4Mi50ZXN0MAuCCXQyODMudGVzdDALggl0Mjg0 -LnRlc3QwC4IJdDI4NS50ZXN0MAuCCXQyODYudGVzdDALggl0Mjg3LnRlc3QwC4IJ -dDI4OC50ZXN0MAuCCXQyODkudGVzdDALggl0MjkwLnRlc3QwC4IJdDI5MS50ZXN0 -MAuCCXQyOTIudGVzdDALggl0MjkzLnRlc3QwC4IJdDI5NC50ZXN0MAuCCXQyOTUu -dGVzdDALggl0Mjk2LnRlc3QwC4IJdDI5Ny50ZXN0MAuCCXQyOTgudGVzdDALggl0 -Mjk5LnRlc3QwC4IJdDMwMC50ZXN0MAuCCXQzMDEudGVzdDALggl0MzAyLnRlc3Qw -C4IJdDMwMy50ZXN0MAuCCXQzMDQudGVzdDALggl0MzA1LnRlc3QwC4IJdDMwNi50 -ZXN0MAuCCXQzMDcudGVzdDALggl0MzA4LnRlc3QwC4IJdDMwOS50ZXN0MAuCCXQz -MTAudGVzdDALggl0MzExLnRlc3QwC4IJdDMxMi50ZXN0MAuCCXQzMTMudGVzdDAL -ggl0MzE0LnRlc3QwC4IJdDMxNS50ZXN0MAuCCXQzMTYudGVzdDALggl0MzE3LnRl -c3QwC4IJdDMxOC50ZXN0MAuCCXQzMTkudGVzdDALggl0MzIwLnRlc3QwC4IJdDMy -MS50ZXN0MAuCCXQzMjIudGVzdDALggl0MzIzLnRlc3QwC4IJdDMyNC50ZXN0MAuC -CXQzMjUudGVzdDALggl0MzI2LnRlc3QwC4IJdDMyNy50ZXN0MAuCCXQzMjgudGVz -dDALggl0MzI5LnRlc3QwC4IJdDMzMC50ZXN0MAuCCXQzMzEudGVzdDALggl0MzMy -LnRlc3QwC4IJdDMzMy50ZXN0MAuCCXQzMzQudGVzdDALggl0MzM1LnRlc3QwC4IJ -dDMzNi50ZXN0MAuCCXQzMzcudGVzdDALggl0MzM4LnRlc3QwC4IJdDMzOS50ZXN0 -MAuCCXQzNDAudGVzdDALggl0MzQxLnRlc3QwC4IJdDM0Mi50ZXN0MAuCCXQzNDMu -dGVzdDALggl0MzQ0LnRlc3QwC4IJdDM0NS50ZXN0MAuCCXQzNDYudGVzdDALggl0 -MzQ3LnRlc3QwC4IJdDM0OC50ZXN0MAuCCXQzNDkudGVzdDALggl0MzUwLnRlc3Qw -C4IJdDM1MS50ZXN0MAuCCXQzNTIudGVzdDALggl0MzUzLnRlc3QwC4IJdDM1NC50 -ZXN0MAuCCXQzNTUudGVzdDALggl0MzU2LnRlc3QwC4IJdDM1Ny50ZXN0MAuCCXQz -NTgudGVzdDALggl0MzU5LnRlc3QwC4IJdDM2MC50ZXN0MAuCCXQzNjEudGVzdDAL -ggl0MzYyLnRlc3QwC4IJdDM2My50ZXN0MAuCCXQzNjQudGVzdDALggl0MzY1LnRl -c3QwC4IJdDM2Ni50ZXN0MAuCCXQzNjcudGVzdDALggl0MzY4LnRlc3QwC4IJdDM2 -OS50ZXN0MAuCCXQzNzAudGVzdDALggl0MzcxLnRlc3QwC4IJdDM3Mi50ZXN0MAuC -CXQzNzMudGVzdDALggl0Mzc0LnRlc3QwC4IJdDM3NS50ZXN0MAuCCXQzNzYudGVz -dDALggl0Mzc3LnRlc3QwC4IJdDM3OC50ZXN0MAuCCXQzNzkudGVzdDALggl0Mzgw -LnRlc3QwC4IJdDM4MS50ZXN0MAuCCXQzODIudGVzdDALggl0MzgzLnRlc3QwC4IJ -dDM4NC50ZXN0MAuCCXQzODUudGVzdDALggl0Mzg2LnRlc3QwC4IJdDM4Ny50ZXN0 -MAuCCXQzODgudGVzdDALggl0Mzg5LnRlc3QwC4IJdDM5MC50ZXN0MAuCCXQzOTEu -dGVzdDALggl0MzkyLnRlc3QwC4IJdDM5My50ZXN0MAuCCXQzOTQudGVzdDALggl0 -Mzk1LnRlc3QwC4IJdDM5Ni50ZXN0MAuCCXQzOTcudGVzdDALggl0Mzk4LnRlc3Qw -C4IJdDM5OS50ZXN0MAuCCXQ0MDAudGVzdDALggl0NDAxLnRlc3QwC4IJdDQwMi50 -ZXN0MAuCCXQ0MDMudGVzdDALggl0NDA0LnRlc3QwC4IJdDQwNS50ZXN0MAuCCXQ0 -MDYudGVzdDALggl0NDA3LnRlc3QwC4IJdDQwOC50ZXN0MAuCCXQ0MDkudGVzdDAL -ggl0NDEwLnRlc3QwC4IJdDQxMS50ZXN0MAuCCXQ0MTIudGVzdDALggl0NDEzLnRl -c3QwC4IJdDQxNC50ZXN0MAuCCXQ0MTUudGVzdDALggl0NDE2LnRlc3QwC4IJdDQx -Ny50ZXN0MAuCCXQ0MTgudGVzdDALggl0NDE5LnRlc3QwC4IJdDQyMC50ZXN0MAuC -CXQ0MjEudGVzdDALggl0NDIyLnRlc3QwC4IJdDQyMy50ZXN0MAuCCXQ0MjQudGVz -dDALggl0NDI1LnRlc3QwC4IJdDQyNi50ZXN0MAuCCXQ0MjcudGVzdDALggl0NDI4 -LnRlc3QwC4IJdDQyOS50ZXN0MAuCCXQ0MzAudGVzdDALggl0NDMxLnRlc3QwC4IJ -dDQzMi50ZXN0MAuCCXQ0MzMudGVzdDALggl0NDM0LnRlc3QwC4IJdDQzNS50ZXN0 -MAuCCXQ0MzYudGVzdDALggl0NDM3LnRlc3QwC4IJdDQzOC50ZXN0MAuCCXQ0Mzku -dGVzdDALggl0NDQwLnRlc3QwC4IJdDQ0MS50ZXN0MAuCCXQ0NDIudGVzdDALggl0 -NDQzLnRlc3QwC4IJdDQ0NC50ZXN0MAuCCXQ0NDUudGVzdDALggl0NDQ2LnRlc3Qw -C4IJdDQ0Ny50ZXN0MAuCCXQ0NDgudGVzdDALggl0NDQ5LnRlc3QwC4IJdDQ1MC50 -ZXN0MAuCCXQ0NTEudGVzdDALggl0NDUyLnRlc3QwC4IJdDQ1My50ZXN0MAuCCXQ0 -NTQudGVzdDALggl0NDU1LnRlc3QwC4IJdDQ1Ni50ZXN0MAuCCXQ0NTcudGVzdDAL -ggl0NDU4LnRlc3QwC4IJdDQ1OS50ZXN0MAuCCXQ0NjAudGVzdDALggl0NDYxLnRl -c3QwC4IJdDQ2Mi50ZXN0MAuCCXQ0NjMudGVzdDALggl0NDY0LnRlc3QwC4IJdDQ2 -NS50ZXN0MAuCCXQ0NjYudGVzdDALggl0NDY3LnRlc3QwC4IJdDQ2OC50ZXN0MAuC -CXQ0NjkudGVzdDALggl0NDcwLnRlc3QwC4IJdDQ3MS50ZXN0MAuCCXQ0NzIudGVz -dDALggl0NDczLnRlc3QwC4IJdDQ3NC50ZXN0MAuCCXQ0NzUudGVzdDALggl0NDc2 -LnRlc3QwC4IJdDQ3Ny50ZXN0MAuCCXQ0NzgudGVzdDALggl0NDc5LnRlc3QwC4IJ -dDQ4MC50ZXN0MAuCCXQ0ODEudGVzdDALggl0NDgyLnRlc3QwC4IJdDQ4My50ZXN0 -MAuCCXQ0ODQudGVzdDALggl0NDg1LnRlc3QwC4IJdDQ4Ni50ZXN0MAuCCXQ0ODcu -dGVzdDALggl0NDg4LnRlc3QwC4IJdDQ4OS50ZXN0MAuCCXQ0OTAudGVzdDALggl0 -NDkxLnRlc3QwC4IJdDQ5Mi50ZXN0MAuCCXQ0OTMudGVzdDALggl0NDk0LnRlc3Qw -C4IJdDQ5NS50ZXN0MAuCCXQ0OTYudGVzdDALggl0NDk3LnRlc3QwC4IJdDQ5OC50 -ZXN0MAuCCXQ0OTkudGVzdDALggl0NTAwLnRlc3QwC4IJdDUwMS50ZXN0MAuCCXQ1 -MDIudGVzdDALggl0NTAzLnRlc3QwC4IJdDUwNC50ZXN0MAuCCXQ1MDUudGVzdDAL -ggl0NTA2LnRlc3QwC4IJdDUwNy50ZXN0MAuCCXQ1MDgudGVzdDALggl0NTA5LnRl -c3QwC4IJdDUxMC50ZXN0MAuCCXQ1MTEudGVzdDALggl0NTEyLnRlc3QwC4IJdDUx -My50ZXN0MAuCCXQ1MTQudGVzdDALggl0NTE1LnRlc3QwC4IJdDUxNi50ZXN0MAuC -CXQ1MTcudGVzdDALggl0NTE4LnRlc3QwC4IJdDUxOS50ZXN0MAuCCXQ1MjAudGVz -dDALggl0NTIxLnRlc3QwC4IJdDUyMi50ZXN0MAuCCXQ1MjMudGVzdDALggl0NTI0 -LnRlc3QwC4IJdDUyNS50ZXN0MAuCCXQ1MjYudGVzdDALggl0NTI3LnRlc3QwC4IJ -dDUyOC50ZXN0MAuCCXQ1MjkudGVzdDALggl0NTMwLnRlc3QwC4IJdDUzMS50ZXN0 -MAuCCXQ1MzIudGVzdDALggl0NTMzLnRlc3QwC4IJdDUzNC50ZXN0MAuCCXQ1MzUu -dGVzdDALggl0NTM2LnRlc3QwC4IJdDUzNy50ZXN0MAuCCXQ1MzgudGVzdDALggl0 -NTM5LnRlc3QwC4IJdDU0MC50ZXN0MAuCCXQ1NDEudGVzdDALggl0NTQyLnRlc3Qw -C4IJdDU0My50ZXN0MAuCCXQ1NDQudGVzdDALggl0NTQ1LnRlc3QwC4IJdDU0Ni50 -ZXN0MAuCCXQ1NDcudGVzdDALggl0NTQ4LnRlc3QwC4IJdDU0OS50ZXN0MAuCCXQ1 -NTAudGVzdDALggl0NTUxLnRlc3QwC4IJdDU1Mi50ZXN0MAuCCXQ1NTMudGVzdDAL -ggl0NTU0LnRlc3QwC4IJdDU1NS50ZXN0MAuCCXQ1NTYudGVzdDALggl0NTU3LnRl -c3QwC4IJdDU1OC50ZXN0MAuCCXQ1NTkudGVzdDALggl0NTYwLnRlc3QwC4IJdDU2 -MS50ZXN0MAuCCXQ1NjIudGVzdDALggl0NTYzLnRlc3QwC4IJdDU2NC50ZXN0MAuC -CXQ1NjUudGVzdDALggl0NTY2LnRlc3QwC4IJdDU2Ny50ZXN0MAuCCXQ1NjgudGVz -dDALggl0NTY5LnRlc3QwC4IJdDU3MC50ZXN0MAuCCXQ1NzEudGVzdDALggl0NTcy -LnRlc3QwC4IJdDU3My50ZXN0MAuCCXQ1NzQudGVzdDALggl0NTc1LnRlc3QwC4IJ -dDU3Ni50ZXN0MAuCCXQ1NzcudGVzdDALggl0NTc4LnRlc3QwC4IJdDU3OS50ZXN0 -MAuCCXQ1ODAudGVzdDALggl0NTgxLnRlc3QwC4IJdDU4Mi50ZXN0MAuCCXQ1ODMu -dGVzdDALggl0NTg0LnRlc3QwC4IJdDU4NS50ZXN0MAuCCXQ1ODYudGVzdDALggl0 -NTg3LnRlc3QwC4IJdDU4OC50ZXN0MAuCCXQ1ODkudGVzdDALggl0NTkwLnRlc3Qw -C4IJdDU5MS50ZXN0MAuCCXQ1OTIudGVzdDALggl0NTkzLnRlc3QwC4IJdDU5NC50 -ZXN0MAuCCXQ1OTUudGVzdDALggl0NTk2LnRlc3QwC4IJdDU5Ny50ZXN0MAuCCXQ1 -OTgudGVzdDALggl0NTk5LnRlc3QwC4IJdDYwMC50ZXN0MAuCCXQ2MDEudGVzdDAL -ggl0NjAyLnRlc3QwC4IJdDYwMy50ZXN0MAuCCXQ2MDQudGVzdDALggl0NjA1LnRl -c3QwC4IJdDYwNi50ZXN0MAuCCXQ2MDcudGVzdDALggl0NjA4LnRlc3QwC4IJdDYw -OS50ZXN0MAuCCXQ2MTAudGVzdDALggl0NjExLnRlc3QwC4IJdDYxMi50ZXN0MAuC -CXQ2MTMudGVzdDALggl0NjE0LnRlc3QwC4IJdDYxNS50ZXN0MAuCCXQ2MTYudGVz -dDALggl0NjE3LnRlc3QwC4IJdDYxOC50ZXN0MAuCCXQ2MTkudGVzdDALggl0NjIw -LnRlc3QwC4IJdDYyMS50ZXN0MAuCCXQ2MjIudGVzdDALggl0NjIzLnRlc3QwC4IJ -dDYyNC50ZXN0MAuCCXQ2MjUudGVzdDALggl0NjI2LnRlc3QwC4IJdDYyNy50ZXN0 -MAuCCXQ2MjgudGVzdDALggl0NjI5LnRlc3QwC4IJdDYzMC50ZXN0MAuCCXQ2MzEu -dGVzdDALggl0NjMyLnRlc3QwC4IJdDYzMy50ZXN0MAuCCXQ2MzQudGVzdDALggl0 -NjM1LnRlc3QwC4IJdDYzNi50ZXN0MAuCCXQ2MzcudGVzdDALggl0NjM4LnRlc3Qw -C4IJdDYzOS50ZXN0MAuCCXQ2NDAudGVzdDALggl0NjQxLnRlc3QwC4IJdDY0Mi50 -ZXN0MAuCCXQ2NDMudGVzdDALggl0NjQ0LnRlc3QwC4IJdDY0NS50ZXN0MAuCCXQ2 -NDYudGVzdDALggl0NjQ3LnRlc3QwC4IJdDY0OC50ZXN0MAuCCXQ2NDkudGVzdDAL -ggl0NjUwLnRlc3QwC4IJdDY1MS50ZXN0MAuCCXQ2NTIudGVzdDALggl0NjUzLnRl -c3QwC4IJdDY1NC50ZXN0MAuCCXQ2NTUudGVzdDALggl0NjU2LnRlc3QwC4IJdDY1 -Ny50ZXN0MAuCCXQ2NTgudGVzdDALggl0NjU5LnRlc3QwC4IJdDY2MC50ZXN0MAuC -CXQ2NjEudGVzdDALggl0NjYyLnRlc3QwC4IJdDY2My50ZXN0MAuCCXQ2NjQudGVz -dDALggl0NjY1LnRlc3QwC4IJdDY2Ni50ZXN0MAuCCXQ2NjcudGVzdDALggl0NjY4 -LnRlc3QwC4IJdDY2OS50ZXN0MAuCCXQ2NzAudGVzdDALggl0NjcxLnRlc3QwC4IJ -dDY3Mi50ZXN0MAuCCXQ2NzMudGVzdDALggl0Njc0LnRlc3QwC4IJdDY3NS50ZXN0 -MAuCCXQ2NzYudGVzdDALggl0Njc3LnRlc3QwC4IJdDY3OC50ZXN0MAuCCXQ2Nzku -dGVzdDALggl0NjgwLnRlc3QwC4IJdDY4MS50ZXN0MAuCCXQ2ODIudGVzdDALggl0 -NjgzLnRlc3QwC4IJdDY4NC50ZXN0MAuCCXQ2ODUudGVzdDALggl0Njg2LnRlc3Qw -C4IJdDY4Ny50ZXN0MAuCCXQ2ODgudGVzdDALggl0Njg5LnRlc3QwC4IJdDY5MC50 -ZXN0MAuCCXQ2OTEudGVzdDALggl0NjkyLnRlc3QwC4IJdDY5My50ZXN0MAuCCXQ2 -OTQudGVzdDALggl0Njk1LnRlc3QwC4IJdDY5Ni50ZXN0MAuCCXQ2OTcudGVzdDAL -ggl0Njk4LnRlc3QwC4IJdDY5OS50ZXN0MAuCCXQ3MDAudGVzdDALggl0NzAxLnRl -c3QwC4IJdDcwMi50ZXN0MAuCCXQ3MDMudGVzdDALggl0NzA0LnRlc3QwC4IJdDcw -NS50ZXN0MAuCCXQ3MDYudGVzdDALggl0NzA3LnRlc3QwC4IJdDcwOC50ZXN0MAuC -CXQ3MDkudGVzdDALggl0NzEwLnRlc3QwC4IJdDcxMS50ZXN0MAuCCXQ3MTIudGVz -dDALggl0NzEzLnRlc3QwC4IJdDcxNC50ZXN0MAuCCXQ3MTUudGVzdDALggl0NzE2 -LnRlc3QwC4IJdDcxNy50ZXN0MAuCCXQ3MTgudGVzdDALggl0NzE5LnRlc3QwC4IJ -dDcyMC50ZXN0MAuCCXQ3MjEudGVzdDALggl0NzIyLnRlc3QwC4IJdDcyMy50ZXN0 -MAuCCXQ3MjQudGVzdDALggl0NzI1LnRlc3QwC4IJdDcyNi50ZXN0MAuCCXQ3Mjcu -dGVzdDALggl0NzI4LnRlc3QwC4IJdDcyOS50ZXN0MAuCCXQ3MzAudGVzdDALggl0 -NzMxLnRlc3QwC4IJdDczMi50ZXN0MAuCCXQ3MzMudGVzdDALggl0NzM0LnRlc3Qw -C4IJdDczNS50ZXN0MAuCCXQ3MzYudGVzdDALggl0NzM3LnRlc3QwC4IJdDczOC50 -ZXN0MAuCCXQ3MzkudGVzdDALggl0NzQwLnRlc3QwC4IJdDc0MS50ZXN0MAuCCXQ3 -NDIudGVzdDALggl0NzQzLnRlc3QwC4IJdDc0NC50ZXN0MAuCCXQ3NDUudGVzdDAL -ggl0NzQ2LnRlc3QwC4IJdDc0Ny50ZXN0MAuCCXQ3NDgudGVzdDALggl0NzQ5LnRl -c3QwC4IJdDc1MC50ZXN0MAuCCXQ3NTEudGVzdDALggl0NzUyLnRlc3QwC4IJdDc1 -My50ZXN0MAuCCXQ3NTQudGVzdDALggl0NzU1LnRlc3QwC4IJdDc1Ni50ZXN0MAuC -CXQ3NTcudGVzdDALggl0NzU4LnRlc3QwC4IJdDc1OS50ZXN0MAuCCXQ3NjAudGVz -dDALggl0NzYxLnRlc3QwC4IJdDc2Mi50ZXN0MAuCCXQ3NjMudGVzdDALggl0NzY0 -LnRlc3QwC4IJdDc2NS50ZXN0MAuCCXQ3NjYudGVzdDALggl0NzY3LnRlc3QwC4IJ -dDc2OC50ZXN0MAuCCXQ3NjkudGVzdDALggl0NzcwLnRlc3QwC4IJdDc3MS50ZXN0 -MAuCCXQ3NzIudGVzdDALggl0NzczLnRlc3QwC4IJdDc3NC50ZXN0MAuCCXQ3NzUu -dGVzdDALggl0Nzc2LnRlc3QwC4IJdDc3Ny50ZXN0MAuCCXQ3NzgudGVzdDALggl0 -Nzc5LnRlc3QwC4IJdDc4MC50ZXN0MAuCCXQ3ODEudGVzdDALggl0NzgyLnRlc3Qw -C4IJdDc4My50ZXN0MAuCCXQ3ODQudGVzdDALggl0Nzg1LnRlc3QwC4IJdDc4Ni50 -ZXN0MAuCCXQ3ODcudGVzdDALggl0Nzg4LnRlc3QwC4IJdDc4OS50ZXN0MAuCCXQ3 -OTAudGVzdDALggl0NzkxLnRlc3QwC4IJdDc5Mi50ZXN0MAuCCXQ3OTMudGVzdDAL -ggl0Nzk0LnRlc3QwC4IJdDc5NS50ZXN0MAuCCXQ3OTYudGVzdDALggl0Nzk3LnRl -c3QwC4IJdDc5OC50ZXN0MAuCCXQ3OTkudGVzdDALggl0ODAwLnRlc3QwC4IJdDgw -MS50ZXN0MAuCCXQ4MDIudGVzdDALggl0ODAzLnRlc3QwC4IJdDgwNC50ZXN0MAuC -CXQ4MDUudGVzdDALggl0ODA2LnRlc3QwC4IJdDgwNy50ZXN0MAuCCXQ4MDgudGVz -dDALggl0ODA5LnRlc3QwC4IJdDgxMC50ZXN0MAuCCXQ4MTEudGVzdDALggl0ODEy -LnRlc3QwC4IJdDgxMy50ZXN0MAuCCXQ4MTQudGVzdDALggl0ODE1LnRlc3QwC4IJ -dDgxNi50ZXN0MAuCCXQ4MTcudGVzdDALggl0ODE4LnRlc3QwC4IJdDgxOS50ZXN0 -MAuCCXQ4MjAudGVzdDALggl0ODIxLnRlc3QwC4IJdDgyMi50ZXN0MAuCCXQ4MjMu -dGVzdDALggl0ODI0LnRlc3QwC4IJdDgyNS50ZXN0MAuCCXQ4MjYudGVzdDALggl0 -ODI3LnRlc3QwC4IJdDgyOC50ZXN0MAuCCXQ4MjkudGVzdDALggl0ODMwLnRlc3Qw -C4IJdDgzMS50ZXN0MAuCCXQ4MzIudGVzdDALggl0ODMzLnRlc3QwC4IJdDgzNC50 -ZXN0MAuCCXQ4MzUudGVzdDALggl0ODM2LnRlc3QwC4IJdDgzNy50ZXN0MAuCCXQ4 -MzgudGVzdDALggl0ODM5LnRlc3QwC4IJdDg0MC50ZXN0MAuCCXQ4NDEudGVzdDAL -ggl0ODQyLnRlc3QwC4IJdDg0My50ZXN0MAuCCXQ4NDQudGVzdDALggl0ODQ1LnRl -c3QwC4IJdDg0Ni50ZXN0MAuCCXQ4NDcudGVzdDALggl0ODQ4LnRlc3QwC4IJdDg0 -OS50ZXN0MAuCCXQ4NTAudGVzdDALggl0ODUxLnRlc3QwC4IJdDg1Mi50ZXN0MAuC -CXQ4NTMudGVzdDALggl0ODU0LnRlc3QwC4IJdDg1NS50ZXN0MAuCCXQ4NTYudGVz -dDALggl0ODU3LnRlc3QwC4IJdDg1OC50ZXN0MAuCCXQ4NTkudGVzdDALggl0ODYw -LnRlc3QwC4IJdDg2MS50ZXN0MAuCCXQ4NjIudGVzdDALggl0ODYzLnRlc3QwC4IJ -dDg2NC50ZXN0MAuCCXQ4NjUudGVzdDALggl0ODY2LnRlc3QwC4IJdDg2Ny50ZXN0 -MAuCCXQ4NjgudGVzdDALggl0ODY5LnRlc3QwC4IJdDg3MC50ZXN0MAuCCXQ4NzEu -dGVzdDALggl0ODcyLnRlc3QwC4IJdDg3My50ZXN0MAuCCXQ4NzQudGVzdDALggl0 -ODc1LnRlc3QwC4IJdDg3Ni50ZXN0MAuCCXQ4NzcudGVzdDALggl0ODc4LnRlc3Qw -C4IJdDg3OS50ZXN0MAuCCXQ4ODAudGVzdDALggl0ODgxLnRlc3QwC4IJdDg4Mi50 -ZXN0MAuCCXQ4ODMudGVzdDALggl0ODg0LnRlc3QwC4IJdDg4NS50ZXN0MAuCCXQ4 -ODYudGVzdDALggl0ODg3LnRlc3QwC4IJdDg4OC50ZXN0MAuCCXQ4ODkudGVzdDAL -ggl0ODkwLnRlc3QwC4IJdDg5MS50ZXN0MAuCCXQ4OTIudGVzdDALggl0ODkzLnRl -c3QwC4IJdDg5NC50ZXN0MAuCCXQ4OTUudGVzdDALggl0ODk2LnRlc3QwC4IJdDg5 -Ny50ZXN0MAuCCXQ4OTgudGVzdDALggl0ODk5LnRlc3QwC4IJdDkwMC50ZXN0MAuC -CXQ5MDEudGVzdDALggl0OTAyLnRlc3QwC4IJdDkwMy50ZXN0MAuCCXQ5MDQudGVz -dDALggl0OTA1LnRlc3QwC4IJdDkwNi50ZXN0MAuCCXQ5MDcudGVzdDALggl0OTA4 -LnRlc3QwC4IJdDkwOS50ZXN0MAuCCXQ5MTAudGVzdDALggl0OTExLnRlc3QwC4IJ -dDkxMi50ZXN0MAuCCXQ5MTMudGVzdDALggl0OTE0LnRlc3QwC4IJdDkxNS50ZXN0 -MAuCCXQ5MTYudGVzdDALggl0OTE3LnRlc3QwC4IJdDkxOC50ZXN0MAuCCXQ5MTku -dGVzdDALggl0OTIwLnRlc3QwC4IJdDkyMS50ZXN0MAuCCXQ5MjIudGVzdDALggl0 -OTIzLnRlc3QwC4IJdDkyNC50ZXN0MAuCCXQ5MjUudGVzdDALggl0OTI2LnRlc3Qw -C4IJdDkyNy50ZXN0MAuCCXQ5MjgudGVzdDALggl0OTI5LnRlc3QwC4IJdDkzMC50 -ZXN0MAuCCXQ5MzEudGVzdDALggl0OTMyLnRlc3QwC4IJdDkzMy50ZXN0MAuCCXQ5 -MzQudGVzdDALggl0OTM1LnRlc3QwC4IJdDkzNi50ZXN0MAuCCXQ5MzcudGVzdDAL -ggl0OTM4LnRlc3QwC4IJdDkzOS50ZXN0MAuCCXQ5NDAudGVzdDALggl0OTQxLnRl -c3QwC4IJdDk0Mi50ZXN0MAuCCXQ5NDMudGVzdDALggl0OTQ0LnRlc3QwC4IJdDk0 -NS50ZXN0MAuCCXQ5NDYudGVzdDALggl0OTQ3LnRlc3QwC4IJdDk0OC50ZXN0MAuC -CXQ5NDkudGVzdDALggl0OTUwLnRlc3QwC4IJdDk1MS50ZXN0MAuCCXQ5NTIudGVz -dDALggl0OTUzLnRlc3QwC4IJdDk1NC50ZXN0MAuCCXQ5NTUudGVzdDALggl0OTU2 -LnRlc3QwC4IJdDk1Ny50ZXN0MAuCCXQ5NTgudGVzdDALggl0OTU5LnRlc3QwC4IJ -dDk2MC50ZXN0MAuCCXQ5NjEudGVzdDALggl0OTYyLnRlc3QwC4IJdDk2My50ZXN0 -MAuCCXQ5NjQudGVzdDALggl0OTY1LnRlc3QwC4IJdDk2Ni50ZXN0MAuCCXQ5Njcu -dGVzdDALggl0OTY4LnRlc3QwC4IJdDk2OS50ZXN0MAuCCXQ5NzAudGVzdDALggl0 -OTcxLnRlc3QwC4IJdDk3Mi50ZXN0MAuCCXQ5NzMudGVzdDALggl0OTc0LnRlc3Qw -C4IJdDk3NS50ZXN0MAuCCXQ5NzYudGVzdDALggl0OTc3LnRlc3QwC4IJdDk3OC50 -ZXN0MAuCCXQ5NzkudGVzdDALggl0OTgwLnRlc3QwC4IJdDk4MS50ZXN0MAuCCXQ5 -ODIudGVzdDALggl0OTgzLnRlc3QwC4IJdDk4NC50ZXN0MAuCCXQ5ODUudGVzdDAL -ggl0OTg2LnRlc3QwC4IJdDk4Ny50ZXN0MAuCCXQ5ODgudGVzdDALggl0OTg5LnRl -c3QwC4IJdDk5MC50ZXN0MAuCCXQ5OTEudGVzdDALggl0OTkyLnRlc3QwC4IJdDk5 -My50ZXN0MAuCCXQ5OTQudGVzdDALggl0OTk1LnRlc3QwC4IJdDk5Ni50ZXN0MAuC -CXQ5OTcudGVzdDALggl0OTk4LnRlc3QwC4IJdDk5OS50ZXN0MAyCCnQxMDAwLnRl -c3QwDIIKdDEwMDEudGVzdDAMggp0MTAwMi50ZXN0MAyCCnQxMDAzLnRlc3QwDIIK -dDEwMDQudGVzdDAMggp0MTAwNS50ZXN0MAyCCnQxMDA2LnRlc3QwDIIKdDEwMDcu -dGVzdDAMggp0MTAwOC50ZXN0MAyCCnQxMDA5LnRlc3QwDIIKdDEwMTAudGVzdDAM -ggp0MTAxMS50ZXN0MAyCCnQxMDEyLnRlc3QwDIIKdDEwMTMudGVzdDAMggp0MTAx -NC50ZXN0MAyCCnQxMDE1LnRlc3QwDIIKdDEwMTYudGVzdDAMggp0MTAxNy50ZXN0 -MAyCCnQxMDE4LnRlc3QwDIIKdDEwMTkudGVzdDAMggp0MTAyMC50ZXN0MAyCCnQx -MDIxLnRlc3QwDIIKdDEwMjIudGVzdDAMggp0MTAyMy50ZXN0MAyCCnQxMDI0LnRl -c3QwDQYJKoZIhvcNAQELBQADggEBAKcMzH+dRmVIdcN2MKFq0gS/RVdJTrKJDtO2 -nUBVUxW//RJl8NhP8GdsTHwWIqRWJsMJnbcJxySgsgPSH7hrO4FXdY68wrkBvTbE -iOk5KTQhB76ETY/YVfFcZOs914dP247PVddmmME9el6VMBY/mF4OkmNkC8bDXarO -2x1netqw5Xl/qbKZpbWwJv5kHed1Q8VNG4Yh+Y53K/pLAIdVZt+K0sRwtQoD3/b0 -3Gtspe+aZ0hICrG2v0K3/B9z7kxiIFGB7Hqt/+krckAhuDw8s/IDdRFn7TXqbVKU -F6LbR+nvkdELUihwrdWPYfmbW0mafxgZNGIX3QtBTm7caIaHrDQ= ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.pem deleted file mode 100644 index df5c47cf7e..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_5.pem +++ /dev/null @@ -1,1394 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:fb - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Permitted: - DNS:t0.test - DNS:t1.test - DNS:t2.test - DNS:t3.test - DNS:t4.test - DNS:t5.test - DNS:t6.test - DNS:t7.test - DNS:t8.test - DNS:t9.test - DNS:t10.test - DNS:t11.test - DNS:t12.test - DNS:t13.test - DNS:t14.test - DNS:t15.test - DNS:t16.test - DNS:t17.test - DNS:t18.test - DNS:t19.test - DNS:t20.test - DNS:t21.test - DNS:t22.test - DNS:t23.test - DNS:t24.test - DNS:t25.test - DNS:t26.test - DNS:t27.test - DNS:t28.test - DNS:t29.test - DNS:t30.test - DNS:t31.test - DNS:t32.test - DNS:t33.test - DNS:t34.test - DNS:t35.test - DNS:t36.test - DNS:t37.test - DNS:t38.test - DNS:t39.test - DNS:t40.test - DNS:t41.test - DNS:t42.test - DNS:t43.test - DNS:t44.test - DNS:t45.test - DNS:t46.test - DNS:t47.test - DNS:t48.test - DNS:t49.test - DNS:t50.test - DNS:t51.test - DNS:t52.test - DNS:t53.test - DNS:t54.test - DNS:t55.test - DNS:t56.test - DNS:t57.test - DNS:t58.test - DNS:t59.test - DNS:t60.test - DNS:t61.test - DNS:t62.test - DNS:t63.test - DNS:t64.test - DNS:t65.test - DNS:t66.test - DNS:t67.test - DNS:t68.test - DNS:t69.test - DNS:t70.test - DNS:t71.test - DNS:t72.test - DNS:t73.test - DNS:t74.test - DNS:t75.test - DNS:t76.test - DNS:t77.test - DNS:t78.test - DNS:t79.test - DNS:t80.test - DNS:t81.test - DNS:t82.test - DNS:t83.test - DNS:t84.test - DNS:t85.test - DNS:t86.test - DNS:t87.test - DNS:t88.test - DNS:t89.test - DNS:t90.test - DNS:t91.test - DNS:t92.test - DNS:t93.test - DNS:t94.test - DNS:t95.test - DNS:t96.test - DNS:t97.test - DNS:t98.test - DNS:t99.test - DNS:t100.test - DNS:t101.test - DNS:t102.test - DNS:t103.test - DNS:t104.test - DNS:t105.test - DNS:t106.test - DNS:t107.test - DNS:t108.test - DNS:t109.test - DNS:t110.test - DNS:t111.test - DNS:t112.test - DNS:t113.test - DNS:t114.test - DNS:t115.test - DNS:t116.test - DNS:t117.test - DNS:t118.test - DNS:t119.test - DNS:t120.test - DNS:t121.test - DNS:t122.test - DNS:t123.test - DNS:t124.test - DNS:t125.test - DNS:t126.test - DNS:t127.test - DNS:t128.test - DNS:t129.test - DNS:t130.test - DNS:t131.test - DNS:t132.test - DNS:t133.test - DNS:t134.test - DNS:t135.test - DNS:t136.test - DNS:t137.test - DNS:t138.test - DNS:t139.test - DNS:t140.test - DNS:t141.test - DNS:t142.test - DNS:t143.test - DNS:t144.test - DNS:t145.test - DNS:t146.test - DNS:t147.test - DNS:t148.test - DNS:t149.test - DNS:t150.test - DNS:t151.test - DNS:t152.test - DNS:t153.test - DNS:t154.test - DNS:t155.test - DNS:t156.test - DNS:t157.test - DNS:t158.test - DNS:t159.test - DNS:t160.test - DNS:t161.test - DNS:t162.test - DNS:t163.test - DNS:t164.test - DNS:t165.test - DNS:t166.test - DNS:t167.test - DNS:t168.test - DNS:t169.test - DNS:t170.test - DNS:t171.test - DNS:t172.test - DNS:t173.test - DNS:t174.test - DNS:t175.test - DNS:t176.test - DNS:t177.test - DNS:t178.test - DNS:t179.test - DNS:t180.test - DNS:t181.test - DNS:t182.test - DNS:t183.test - DNS:t184.test - DNS:t185.test - DNS:t186.test - DNS:t187.test - DNS:t188.test - DNS:t189.test - DNS:t190.test - DNS:t191.test - DNS:t192.test - DNS:t193.test - DNS:t194.test - DNS:t195.test - DNS:t196.test - DNS:t197.test - DNS:t198.test - DNS:t199.test - DNS:t200.test - DNS:t201.test - DNS:t202.test - DNS:t203.test - DNS:t204.test - DNS:t205.test - DNS:t206.test - DNS:t207.test - DNS:t208.test - DNS:t209.test - DNS:t210.test - DNS:t211.test - DNS:t212.test - DNS:t213.test - DNS:t214.test - DNS:t215.test - DNS:t216.test - DNS:t217.test - DNS:t218.test - DNS:t219.test - DNS:t220.test - DNS:t221.test - DNS:t222.test - DNS:t223.test - DNS:t224.test - DNS:t225.test - DNS:t226.test - DNS:t227.test - DNS:t228.test - DNS:t229.test - DNS:t230.test - DNS:t231.test - DNS:t232.test - DNS:t233.test - DNS:t234.test - DNS:t235.test - DNS:t236.test - DNS:t237.test - DNS:t238.test - DNS:t239.test - DNS:t240.test - DNS:t241.test - DNS:t242.test - DNS:t243.test - DNS:t244.test - DNS:t245.test - DNS:t246.test - DNS:t247.test - DNS:t248.test - DNS:t249.test - DNS:t250.test - DNS:t251.test - DNS:t252.test - DNS:t253.test - DNS:t254.test - DNS:t255.test - DNS:t256.test - DNS:t257.test - DNS:t258.test - DNS:t259.test - DNS:t260.test - DNS:t261.test - DNS:t262.test - DNS:t263.test - DNS:t264.test - DNS:t265.test - DNS:t266.test - DNS:t267.test - DNS:t268.test - DNS:t269.test - DNS:t270.test - DNS:t271.test - DNS:t272.test - DNS:t273.test - DNS:t274.test - DNS:t275.test - DNS:t276.test - DNS:t277.test - DNS:t278.test - DNS:t279.test - DNS:t280.test - DNS:t281.test - DNS:t282.test - DNS:t283.test - DNS:t284.test - DNS:t285.test - DNS:t286.test - DNS:t287.test - DNS:t288.test - DNS:t289.test - DNS:t290.test - DNS:t291.test - DNS:t292.test - DNS:t293.test - DNS:t294.test - DNS:t295.test - DNS:t296.test - DNS:t297.test - DNS:t298.test - DNS:t299.test - DNS:t300.test - DNS:t301.test - DNS:t302.test - DNS:t303.test - DNS:t304.test - DNS:t305.test - DNS:t306.test - DNS:t307.test - DNS:t308.test - DNS:t309.test - DNS:t310.test - DNS:t311.test - DNS:t312.test - DNS:t313.test - DNS:t314.test - DNS:t315.test - DNS:t316.test - DNS:t317.test - DNS:t318.test - DNS:t319.test - DNS:t320.test - DNS:t321.test - DNS:t322.test - DNS:t323.test - DNS:t324.test - DNS:t325.test - DNS:t326.test - DNS:t327.test - DNS:t328.test - DNS:t329.test - DNS:t330.test - DNS:t331.test - DNS:t332.test - DNS:t333.test - DNS:t334.test - DNS:t335.test - DNS:t336.test - DNS:t337.test - DNS:t338.test - DNS:t339.test - DNS:t340.test - DNS:t341.test - DNS:t342.test - DNS:t343.test - DNS:t344.test - DNS:t345.test - DNS:t346.test - DNS:t347.test - DNS:t348.test - DNS:t349.test - DNS:t350.test - DNS:t351.test - DNS:t352.test - DNS:t353.test - DNS:t354.test - DNS:t355.test - DNS:t356.test - DNS:t357.test - DNS:t358.test - DNS:t359.test - DNS:t360.test - DNS:t361.test - DNS:t362.test - DNS:t363.test - DNS:t364.test - DNS:t365.test - DNS:t366.test - DNS:t367.test - DNS:t368.test - DNS:t369.test - DNS:t370.test - DNS:t371.test - DNS:t372.test - DNS:t373.test - DNS:t374.test - DNS:t375.test - DNS:t376.test - DNS:t377.test - DNS:t378.test - DNS:t379.test - DNS:t380.test - DNS:t381.test - DNS:t382.test - DNS:t383.test - DNS:t384.test - DNS:t385.test - DNS:t386.test - DNS:t387.test - DNS:t388.test - DNS:t389.test - DNS:t390.test - DNS:t391.test - DNS:t392.test - DNS:t393.test - DNS:t394.test - DNS:t395.test - DNS:t396.test - DNS:t397.test - DNS:t398.test - DNS:t399.test - DNS:t400.test - DNS:t401.test - DNS:t402.test - DNS:t403.test - DNS:t404.test - DNS:t405.test - DNS:t406.test - DNS:t407.test - DNS:t408.test - DNS:t409.test - DNS:t410.test - DNS:t411.test - DNS:t412.test - DNS:t413.test - DNS:t414.test - DNS:t415.test - DNS:t416.test - DNS:t417.test - DNS:t418.test - DNS:t419.test - DNS:t420.test - DNS:t421.test - DNS:t422.test - DNS:t423.test - DNS:t424.test - DNS:t425.test - DNS:t426.test - DNS:t427.test - DNS:t428.test - DNS:t429.test - DNS:t430.test - DNS:t431.test - DNS:t432.test - DNS:t433.test - DNS:t434.test - DNS:t435.test - DNS:t436.test - DNS:t437.test - DNS:t438.test - DNS:t439.test - DNS:t440.test - DNS:t441.test - DNS:t442.test - DNS:t443.test - DNS:t444.test - DNS:t445.test - DNS:t446.test - DNS:t447.test - DNS:t448.test - DNS:t449.test - DNS:t450.test - DNS:t451.test - DNS:t452.test - DNS:t453.test - DNS:t454.test - DNS:t455.test - DNS:t456.test - DNS:t457.test - DNS:t458.test - DNS:t459.test - DNS:t460.test - DNS:t461.test - DNS:t462.test - DNS:t463.test - DNS:t464.test - DNS:t465.test - DNS:t466.test - DNS:t467.test - DNS:t468.test - DNS:t469.test - DNS:t470.test - DNS:t471.test - DNS:t472.test - DNS:t473.test - DNS:t474.test - DNS:t475.test - DNS:t476.test - DNS:t477.test - DNS:t478.test - DNS:t479.test - DNS:t480.test - DNS:t481.test - DNS:t482.test - DNS:t483.test - DNS:t484.test - DNS:t485.test - DNS:t486.test - DNS:t487.test - DNS:t488.test - DNS:t489.test - DNS:t490.test - DNS:t491.test - DNS:t492.test - DNS:t493.test - DNS:t494.test - DNS:t495.test - DNS:t496.test - DNS:t497.test - DNS:t498.test - DNS:t499.test - DNS:t500.test - DNS:t501.test - DNS:t502.test - DNS:t503.test - DNS:t504.test - DNS:t505.test - DNS:t506.test - DNS:t507.test - DNS:t508.test - DNS:t509.test - DNS:t510.test - DNS:t511.test - DNS:t512.test - DNS:t513.test - DNS:t514.test - DNS:t515.test - DNS:t516.test - DNS:t517.test - DNS:t518.test - DNS:t519.test - DNS:t520.test - DNS:t521.test - DNS:t522.test - DNS:t523.test - DNS:t524.test - DNS:t525.test - DNS:t526.test - DNS:t527.test - DNS:t528.test - DNS:t529.test - DNS:t530.test - DNS:t531.test - DNS:t532.test - DNS:t533.test - DNS:t534.test - DNS:t535.test - DNS:t536.test - DNS:t537.test - DNS:t538.test - DNS:t539.test - DNS:t540.test - DNS:t541.test - DNS:t542.test - DNS:t543.test - DNS:t544.test - DNS:t545.test - DNS:t546.test - DNS:t547.test - DNS:t548.test - DNS:t549.test - DNS:t550.test - DNS:t551.test - DNS:t552.test - DNS:t553.test - DNS:t554.test - DNS:t555.test - DNS:t556.test - DNS:t557.test - DNS:t558.test - DNS:t559.test - DNS:t560.test - DNS:t561.test - DNS:t562.test - DNS:t563.test - DNS:t564.test - DNS:t565.test - DNS:t566.test - DNS:t567.test - DNS:t568.test - DNS:t569.test - DNS:t570.test - DNS:t571.test - DNS:t572.test - DNS:t573.test - DNS:t574.test - DNS:t575.test - DNS:t576.test - DNS:t577.test - DNS:t578.test - DNS:t579.test - DNS:t580.test - DNS:t581.test - DNS:t582.test - DNS:t583.test - DNS:t584.test - DNS:t585.test - DNS:t586.test - DNS:t587.test - DNS:t588.test - DNS:t589.test - DNS:t590.test - DNS:t591.test - DNS:t592.test - DNS:t593.test - DNS:t594.test - DNS:t595.test - DNS:t596.test - DNS:t597.test - DNS:t598.test - DNS:t599.test - DNS:t600.test - DNS:t601.test - DNS:t602.test - DNS:t603.test - DNS:t604.test - DNS:t605.test - DNS:t606.test - DNS:t607.test - DNS:t608.test - DNS:t609.test - DNS:t610.test - DNS:t611.test - DNS:t612.test - DNS:t613.test - DNS:t614.test - DNS:t615.test - DNS:t616.test - DNS:t617.test - DNS:t618.test - DNS:t619.test - DNS:t620.test - DNS:t621.test - DNS:t622.test - DNS:t623.test - DNS:t624.test - DNS:t625.test - DNS:t626.test - DNS:t627.test - DNS:t628.test - DNS:t629.test - DNS:t630.test - DNS:t631.test - DNS:t632.test - DNS:t633.test - DNS:t634.test - DNS:t635.test - DNS:t636.test - DNS:t637.test - DNS:t638.test - DNS:t639.test - DNS:t640.test - DNS:t641.test - DNS:t642.test - DNS:t643.test - DNS:t644.test - DNS:t645.test - DNS:t646.test - DNS:t647.test - DNS:t648.test - DNS:t649.test - DNS:t650.test - DNS:t651.test - DNS:t652.test - DNS:t653.test - DNS:t654.test - DNS:t655.test - DNS:t656.test - DNS:t657.test - DNS:t658.test - DNS:t659.test - DNS:t660.test - DNS:t661.test - DNS:t662.test - DNS:t663.test - DNS:t664.test - DNS:t665.test - DNS:t666.test - DNS:t667.test - DNS:t668.test - DNS:t669.test - DNS:t670.test - DNS:t671.test - DNS:t672.test - DNS:t673.test - DNS:t674.test - DNS:t675.test - DNS:t676.test - DNS:t677.test - DNS:t678.test - DNS:t679.test - DNS:t680.test - DNS:t681.test - DNS:t682.test - DNS:t683.test - DNS:t684.test - DNS:t685.test - DNS:t686.test - DNS:t687.test - DNS:t688.test - DNS:t689.test - DNS:t690.test - DNS:t691.test - DNS:t692.test - DNS:t693.test - DNS:t694.test - DNS:t695.test - DNS:t696.test - DNS:t697.test - DNS:t698.test - DNS:t699.test - DNS:t700.test - DNS:t701.test - DNS:t702.test - DNS:t703.test - DNS:t704.test - DNS:t705.test - DNS:t706.test - DNS:t707.test - DNS:t708.test - DNS:t709.test - DNS:t710.test - DNS:t711.test - DNS:t712.test - DNS:t713.test - DNS:t714.test - DNS:t715.test - DNS:t716.test - DNS:t717.test - DNS:t718.test - DNS:t719.test - DNS:t720.test - DNS:t721.test - DNS:t722.test - DNS:t723.test - DNS:t724.test - DNS:t725.test - DNS:t726.test - DNS:t727.test - DNS:t728.test - DNS:t729.test - DNS:t730.test - DNS:t731.test - DNS:t732.test - DNS:t733.test - DNS:t734.test - DNS:t735.test - DNS:t736.test - DNS:t737.test - DNS:t738.test - DNS:t739.test - DNS:t740.test - DNS:t741.test - DNS:t742.test - DNS:t743.test - DNS:t744.test - DNS:t745.test - DNS:t746.test - DNS:t747.test - DNS:t748.test - DNS:t749.test - DNS:t750.test - DNS:t751.test - DNS:t752.test - DNS:t753.test - DNS:t754.test - DNS:t755.test - DNS:t756.test - DNS:t757.test - DNS:t758.test - DNS:t759.test - DNS:t760.test - DNS:t761.test - DNS:t762.test - DNS:t763.test - DNS:t764.test - DNS:t765.test - DNS:t766.test - DNS:t767.test - DNS:t768.test - DNS:t769.test - DNS:t770.test - DNS:t771.test - DNS:t772.test - DNS:t773.test - DNS:t774.test - DNS:t775.test - DNS:t776.test - DNS:t777.test - DNS:t778.test - DNS:t779.test - DNS:t780.test - DNS:t781.test - DNS:t782.test - DNS:t783.test - DNS:t784.test - DNS:t785.test - DNS:t786.test - DNS:t787.test - DNS:t788.test - DNS:t789.test - DNS:t790.test - DNS:t791.test - DNS:t792.test - DNS:t793.test - DNS:t794.test - DNS:t795.test - DNS:t796.test - DNS:t797.test - DNS:t798.test - DNS:t799.test - DNS:t800.test - DNS:t801.test - DNS:t802.test - DNS:t803.test - DNS:t804.test - DNS:t805.test - DNS:t806.test - DNS:t807.test - DNS:t808.test - DNS:t809.test - DNS:t810.test - DNS:t811.test - DNS:t812.test - DNS:t813.test - DNS:t814.test - DNS:t815.test - DNS:t816.test - DNS:t817.test - DNS:t818.test - DNS:t819.test - DNS:t820.test - DNS:t821.test - DNS:t822.test - DNS:t823.test - DNS:t824.test - DNS:t825.test - DNS:t826.test - DNS:t827.test - DNS:t828.test - DNS:t829.test - DNS:t830.test - DNS:t831.test - DNS:t832.test - DNS:t833.test - DNS:t834.test - DNS:t835.test - DNS:t836.test - DNS:t837.test - DNS:t838.test - DNS:t839.test - DNS:t840.test - DNS:t841.test - DNS:t842.test - DNS:t843.test - DNS:t844.test - DNS:t845.test - DNS:t846.test - DNS:t847.test - DNS:t848.test - DNS:t849.test - DNS:t850.test - DNS:t851.test - DNS:t852.test - DNS:t853.test - DNS:t854.test - DNS:t855.test - DNS:t856.test - DNS:t857.test - DNS:t858.test - DNS:t859.test - DNS:t860.test - DNS:t861.test - DNS:t862.test - DNS:t863.test - DNS:t864.test - DNS:t865.test - DNS:t866.test - DNS:t867.test - DNS:t868.test - DNS:t869.test - DNS:t870.test - DNS:t871.test - DNS:t872.test - DNS:t873.test - DNS:t874.test - DNS:t875.test - DNS:t876.test - DNS:t877.test - DNS:t878.test - DNS:t879.test - DNS:t880.test - DNS:t881.test - DNS:t882.test - DNS:t883.test - DNS:t884.test - DNS:t885.test - DNS:t886.test - DNS:t887.test - DNS:t888.test - DNS:t889.test - DNS:t890.test - DNS:t891.test - DNS:t892.test - DNS:t893.test - DNS:t894.test - DNS:t895.test - DNS:t896.test - DNS:t897.test - DNS:t898.test - DNS:t899.test - DNS:t900.test - DNS:t901.test - DNS:t902.test - DNS:t903.test - DNS:t904.test - DNS:t905.test - DNS:t906.test - DNS:t907.test - DNS:t908.test - DNS:t909.test - DNS:t910.test - DNS:t911.test - DNS:t912.test - DNS:t913.test - DNS:t914.test - DNS:t915.test - DNS:t916.test - DNS:t917.test - DNS:t918.test - DNS:t919.test - DNS:t920.test - DNS:t921.test - DNS:t922.test - DNS:t923.test - DNS:t924.test - DNS:t925.test - DNS:t926.test - DNS:t927.test - DNS:t928.test - DNS:t929.test - DNS:t930.test - DNS:t931.test - DNS:t932.test - DNS:t933.test - DNS:t934.test - DNS:t935.test - DNS:t936.test - DNS:t937.test - DNS:t938.test - DNS:t939.test - DNS:t940.test - DNS:t941.test - DNS:t942.test - DNS:t943.test - DNS:t944.test - DNS:t945.test - DNS:t946.test - DNS:t947.test - DNS:t948.test - DNS:t949.test - DNS:t950.test - DNS:t951.test - DNS:t952.test - DNS:t953.test - DNS:t954.test - DNS:t955.test - DNS:t956.test - DNS:t957.test - DNS:t958.test - DNS:t959.test - DNS:t960.test - DNS:t961.test - DNS:t962.test - DNS:t963.test - DNS:t964.test - DNS:t965.test - DNS:t966.test - DNS:t967.test - DNS:t968.test - DNS:t969.test - DNS:t970.test - DNS:t971.test - DNS:t972.test - DNS:t973.test - DNS:t974.test - DNS:t975.test - DNS:t976.test - DNS:t977.test - DNS:t978.test - DNS:t979.test - DNS:t980.test - DNS:t981.test - DNS:t982.test - DNS:t983.test - DNS:t984.test - DNS:t985.test - DNS:t986.test - DNS:t987.test - DNS:t988.test - DNS:t989.test - DNS:t990.test - DNS:t991.test - DNS:t992.test - DNS:t993.test - DNS:t994.test - DNS:t995.test - DNS:t996.test - DNS:t997.test - DNS:t998.test - DNS:t999.test - DNS:t1000.test - DNS:t1001.test - DNS:t1002.test - DNS:t1003.test - DNS:t1004.test - DNS:t1005.test - DNS:t1006.test - DNS:t1007.test - DNS:t1008.test - DNS:t1009.test - DNS:t1010.test - DNS:t1011.test - DNS:t1012.test - DNS:t1013.test - DNS:t1014.test - DNS:t1015.test - DNS:t1016.test - DNS:t1017.test - DNS:t1018.test - DNS:t1019.test - DNS:t1020.test - DNS:t1021.test - DNS:t1022.test - DNS:t1023.test - DNS:t1024.test - - Signature Algorithm: sha256WithRSAEncryption - 2f:8c:9f:08:43:fa:e1:c2:16:9b:e6:5a:b9:8e:7b:d5:49:ef: - d6:de:02:25:9b:46:eb:a3:df:a8:8d:07:10:40:e7:de:fe:23: - 6a:5e:9d:eb:63:7f:a1:a9:8d:34:b9:c8:bd:5f:dc:4c:eb:b3: - 89:73:23:fa:90:a3:a2:cb:f0:1f:67:f2:e8:e1:e0:74:e2:86: - 03:96:28:20:4b:b9:fc:ba:4f:80:24:de:2b:c1:27:9b:21:e5: - d9:3e:2b:66:76:50:6c:90:a3:5a:89:3e:51:34:09:1c:37:ce: - 60:79:6a:89:9b:6b:18:f5:89:31:01:96:92:b9:a0:71:b4:50: - 3a:8c:f4:46:3a:58:54:ff:a2:34:dc:ee:86:4e:5f:ac:f8:1a: - f9:c0:22:40:82:be:5f:98:d8:3d:52:3a:18:a2:4f:e2:30:76: - ba:fa:ee:5e:1f:26:80:72:b0:06:f0:21:b7:84:2a:5d:ea:21: - 9d:e0:0f:35:80:93:d8:9d:1f:9b:a7:3d:6f:e2:1c:29:38:12: - 9d:3c:cd:4b:4c:9f:fa:d5:62:2b:56:ac:2a:3a:f8:5f:cc:32: - 0f:02:7c:a8:df:c0:c9:d1:1e:4d:a7:dc:9f:cb:4e:93:34:f6: - 6e:50:3a:1d:b3:49:e9:50:a3:19:78:a0:8d:c3:2b:5a:78:1d: - 53:55:35:47 ------BEGIN CERTIFICATE----- -MII3TzCCNjegAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vswDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCNJkwgjSVMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgjPJBgNVHR4EgjPAMIIzvKCCM7gwCYIHdDAudGVzdDAJggd0MS50ZXN0MAmC -B3QyLnRlc3QwCYIHdDMudGVzdDAJggd0NC50ZXN0MAmCB3Q1LnRlc3QwCYIHdDYu -dGVzdDAJggd0Ny50ZXN0MAmCB3Q4LnRlc3QwCYIHdDkudGVzdDAKggh0MTAudGVz -dDAKggh0MTEudGVzdDAKggh0MTIudGVzdDAKggh0MTMudGVzdDAKggh0MTQudGVz -dDAKggh0MTUudGVzdDAKggh0MTYudGVzdDAKggh0MTcudGVzdDAKggh0MTgudGVz -dDAKggh0MTkudGVzdDAKggh0MjAudGVzdDAKggh0MjEudGVzdDAKggh0MjIudGVz -dDAKggh0MjMudGVzdDAKggh0MjQudGVzdDAKggh0MjUudGVzdDAKggh0MjYudGVz -dDAKggh0MjcudGVzdDAKggh0MjgudGVzdDAKggh0MjkudGVzdDAKggh0MzAudGVz -dDAKggh0MzEudGVzdDAKggh0MzIudGVzdDAKggh0MzMudGVzdDAKggh0MzQudGVz -dDAKggh0MzUudGVzdDAKggh0MzYudGVzdDAKggh0MzcudGVzdDAKggh0MzgudGVz -dDAKggh0MzkudGVzdDAKggh0NDAudGVzdDAKggh0NDEudGVzdDAKggh0NDIudGVz -dDAKggh0NDMudGVzdDAKggh0NDQudGVzdDAKggh0NDUudGVzdDAKggh0NDYudGVz -dDAKggh0NDcudGVzdDAKggh0NDgudGVzdDAKggh0NDkudGVzdDAKggh0NTAudGVz -dDAKggh0NTEudGVzdDAKggh0NTIudGVzdDAKggh0NTMudGVzdDAKggh0NTQudGVz -dDAKggh0NTUudGVzdDAKggh0NTYudGVzdDAKggh0NTcudGVzdDAKggh0NTgudGVz -dDAKggh0NTkudGVzdDAKggh0NjAudGVzdDAKggh0NjEudGVzdDAKggh0NjIudGVz -dDAKggh0NjMudGVzdDAKggh0NjQudGVzdDAKggh0NjUudGVzdDAKggh0NjYudGVz -dDAKggh0NjcudGVzdDAKggh0NjgudGVzdDAKggh0NjkudGVzdDAKggh0NzAudGVz -dDAKggh0NzEudGVzdDAKggh0NzIudGVzdDAKggh0NzMudGVzdDAKggh0NzQudGVz -dDAKggh0NzUudGVzdDAKggh0NzYudGVzdDAKggh0NzcudGVzdDAKggh0NzgudGVz -dDAKggh0NzkudGVzdDAKggh0ODAudGVzdDAKggh0ODEudGVzdDAKggh0ODIudGVz -dDAKggh0ODMudGVzdDAKggh0ODQudGVzdDAKggh0ODUudGVzdDAKggh0ODYudGVz -dDAKggh0ODcudGVzdDAKggh0ODgudGVzdDAKggh0ODkudGVzdDAKggh0OTAudGVz -dDAKggh0OTEudGVzdDAKggh0OTIudGVzdDAKggh0OTMudGVzdDAKggh0OTQudGVz -dDAKggh0OTUudGVzdDAKggh0OTYudGVzdDAKggh0OTcudGVzdDAKggh0OTgudGVz -dDAKggh0OTkudGVzdDALggl0MTAwLnRlc3QwC4IJdDEwMS50ZXN0MAuCCXQxMDIu -dGVzdDALggl0MTAzLnRlc3QwC4IJdDEwNC50ZXN0MAuCCXQxMDUudGVzdDALggl0 -MTA2LnRlc3QwC4IJdDEwNy50ZXN0MAuCCXQxMDgudGVzdDALggl0MTA5LnRlc3Qw -C4IJdDExMC50ZXN0MAuCCXQxMTEudGVzdDALggl0MTEyLnRlc3QwC4IJdDExMy50 -ZXN0MAuCCXQxMTQudGVzdDALggl0MTE1LnRlc3QwC4IJdDExNi50ZXN0MAuCCXQx -MTcudGVzdDALggl0MTE4LnRlc3QwC4IJdDExOS50ZXN0MAuCCXQxMjAudGVzdDAL -ggl0MTIxLnRlc3QwC4IJdDEyMi50ZXN0MAuCCXQxMjMudGVzdDALggl0MTI0LnRl -c3QwC4IJdDEyNS50ZXN0MAuCCXQxMjYudGVzdDALggl0MTI3LnRlc3QwC4IJdDEy -OC50ZXN0MAuCCXQxMjkudGVzdDALggl0MTMwLnRlc3QwC4IJdDEzMS50ZXN0MAuC -CXQxMzIudGVzdDALggl0MTMzLnRlc3QwC4IJdDEzNC50ZXN0MAuCCXQxMzUudGVz -dDALggl0MTM2LnRlc3QwC4IJdDEzNy50ZXN0MAuCCXQxMzgudGVzdDALggl0MTM5 -LnRlc3QwC4IJdDE0MC50ZXN0MAuCCXQxNDEudGVzdDALggl0MTQyLnRlc3QwC4IJ -dDE0My50ZXN0MAuCCXQxNDQudGVzdDALggl0MTQ1LnRlc3QwC4IJdDE0Ni50ZXN0 -MAuCCXQxNDcudGVzdDALggl0MTQ4LnRlc3QwC4IJdDE0OS50ZXN0MAuCCXQxNTAu -dGVzdDALggl0MTUxLnRlc3QwC4IJdDE1Mi50ZXN0MAuCCXQxNTMudGVzdDALggl0 -MTU0LnRlc3QwC4IJdDE1NS50ZXN0MAuCCXQxNTYudGVzdDALggl0MTU3LnRlc3Qw -C4IJdDE1OC50ZXN0MAuCCXQxNTkudGVzdDALggl0MTYwLnRlc3QwC4IJdDE2MS50 -ZXN0MAuCCXQxNjIudGVzdDALggl0MTYzLnRlc3QwC4IJdDE2NC50ZXN0MAuCCXQx -NjUudGVzdDALggl0MTY2LnRlc3QwC4IJdDE2Ny50ZXN0MAuCCXQxNjgudGVzdDAL -ggl0MTY5LnRlc3QwC4IJdDE3MC50ZXN0MAuCCXQxNzEudGVzdDALggl0MTcyLnRl -c3QwC4IJdDE3My50ZXN0MAuCCXQxNzQudGVzdDALggl0MTc1LnRlc3QwC4IJdDE3 -Ni50ZXN0MAuCCXQxNzcudGVzdDALggl0MTc4LnRlc3QwC4IJdDE3OS50ZXN0MAuC -CXQxODAudGVzdDALggl0MTgxLnRlc3QwC4IJdDE4Mi50ZXN0MAuCCXQxODMudGVz -dDALggl0MTg0LnRlc3QwC4IJdDE4NS50ZXN0MAuCCXQxODYudGVzdDALggl0MTg3 -LnRlc3QwC4IJdDE4OC50ZXN0MAuCCXQxODkudGVzdDALggl0MTkwLnRlc3QwC4IJ -dDE5MS50ZXN0MAuCCXQxOTIudGVzdDALggl0MTkzLnRlc3QwC4IJdDE5NC50ZXN0 -MAuCCXQxOTUudGVzdDALggl0MTk2LnRlc3QwC4IJdDE5Ny50ZXN0MAuCCXQxOTgu -dGVzdDALggl0MTk5LnRlc3QwC4IJdDIwMC50ZXN0MAuCCXQyMDEudGVzdDALggl0 -MjAyLnRlc3QwC4IJdDIwMy50ZXN0MAuCCXQyMDQudGVzdDALggl0MjA1LnRlc3Qw -C4IJdDIwNi50ZXN0MAuCCXQyMDcudGVzdDALggl0MjA4LnRlc3QwC4IJdDIwOS50 -ZXN0MAuCCXQyMTAudGVzdDALggl0MjExLnRlc3QwC4IJdDIxMi50ZXN0MAuCCXQy -MTMudGVzdDALggl0MjE0LnRlc3QwC4IJdDIxNS50ZXN0MAuCCXQyMTYudGVzdDAL -ggl0MjE3LnRlc3QwC4IJdDIxOC50ZXN0MAuCCXQyMTkudGVzdDALggl0MjIwLnRl -c3QwC4IJdDIyMS50ZXN0MAuCCXQyMjIudGVzdDALggl0MjIzLnRlc3QwC4IJdDIy -NC50ZXN0MAuCCXQyMjUudGVzdDALggl0MjI2LnRlc3QwC4IJdDIyNy50ZXN0MAuC -CXQyMjgudGVzdDALggl0MjI5LnRlc3QwC4IJdDIzMC50ZXN0MAuCCXQyMzEudGVz -dDALggl0MjMyLnRlc3QwC4IJdDIzMy50ZXN0MAuCCXQyMzQudGVzdDALggl0MjM1 -LnRlc3QwC4IJdDIzNi50ZXN0MAuCCXQyMzcudGVzdDALggl0MjM4LnRlc3QwC4IJ -dDIzOS50ZXN0MAuCCXQyNDAudGVzdDALggl0MjQxLnRlc3QwC4IJdDI0Mi50ZXN0 -MAuCCXQyNDMudGVzdDALggl0MjQ0LnRlc3QwC4IJdDI0NS50ZXN0MAuCCXQyNDYu -dGVzdDALggl0MjQ3LnRlc3QwC4IJdDI0OC50ZXN0MAuCCXQyNDkudGVzdDALggl0 -MjUwLnRlc3QwC4IJdDI1MS50ZXN0MAuCCXQyNTIudGVzdDALggl0MjUzLnRlc3Qw -C4IJdDI1NC50ZXN0MAuCCXQyNTUudGVzdDALggl0MjU2LnRlc3QwC4IJdDI1Ny50 -ZXN0MAuCCXQyNTgudGVzdDALggl0MjU5LnRlc3QwC4IJdDI2MC50ZXN0MAuCCXQy -NjEudGVzdDALggl0MjYyLnRlc3QwC4IJdDI2My50ZXN0MAuCCXQyNjQudGVzdDAL -ggl0MjY1LnRlc3QwC4IJdDI2Ni50ZXN0MAuCCXQyNjcudGVzdDALggl0MjY4LnRl -c3QwC4IJdDI2OS50ZXN0MAuCCXQyNzAudGVzdDALggl0MjcxLnRlc3QwC4IJdDI3 -Mi50ZXN0MAuCCXQyNzMudGVzdDALggl0Mjc0LnRlc3QwC4IJdDI3NS50ZXN0MAuC -CXQyNzYudGVzdDALggl0Mjc3LnRlc3QwC4IJdDI3OC50ZXN0MAuCCXQyNzkudGVz -dDALggl0MjgwLnRlc3QwC4IJdDI4MS50ZXN0MAuCCXQyODIudGVzdDALggl0Mjgz -LnRlc3QwC4IJdDI4NC50ZXN0MAuCCXQyODUudGVzdDALggl0Mjg2LnRlc3QwC4IJ -dDI4Ny50ZXN0MAuCCXQyODgudGVzdDALggl0Mjg5LnRlc3QwC4IJdDI5MC50ZXN0 -MAuCCXQyOTEudGVzdDALggl0MjkyLnRlc3QwC4IJdDI5My50ZXN0MAuCCXQyOTQu -dGVzdDALggl0Mjk1LnRlc3QwC4IJdDI5Ni50ZXN0MAuCCXQyOTcudGVzdDALggl0 -Mjk4LnRlc3QwC4IJdDI5OS50ZXN0MAuCCXQzMDAudGVzdDALggl0MzAxLnRlc3Qw -C4IJdDMwMi50ZXN0MAuCCXQzMDMudGVzdDALggl0MzA0LnRlc3QwC4IJdDMwNS50 -ZXN0MAuCCXQzMDYudGVzdDALggl0MzA3LnRlc3QwC4IJdDMwOC50ZXN0MAuCCXQz -MDkudGVzdDALggl0MzEwLnRlc3QwC4IJdDMxMS50ZXN0MAuCCXQzMTIudGVzdDAL -ggl0MzEzLnRlc3QwC4IJdDMxNC50ZXN0MAuCCXQzMTUudGVzdDALggl0MzE2LnRl -c3QwC4IJdDMxNy50ZXN0MAuCCXQzMTgudGVzdDALggl0MzE5LnRlc3QwC4IJdDMy -MC50ZXN0MAuCCXQzMjEudGVzdDALggl0MzIyLnRlc3QwC4IJdDMyMy50ZXN0MAuC -CXQzMjQudGVzdDALggl0MzI1LnRlc3QwC4IJdDMyNi50ZXN0MAuCCXQzMjcudGVz -dDALggl0MzI4LnRlc3QwC4IJdDMyOS50ZXN0MAuCCXQzMzAudGVzdDALggl0MzMx -LnRlc3QwC4IJdDMzMi50ZXN0MAuCCXQzMzMudGVzdDALggl0MzM0LnRlc3QwC4IJ -dDMzNS50ZXN0MAuCCXQzMzYudGVzdDALggl0MzM3LnRlc3QwC4IJdDMzOC50ZXN0 -MAuCCXQzMzkudGVzdDALggl0MzQwLnRlc3QwC4IJdDM0MS50ZXN0MAuCCXQzNDIu -dGVzdDALggl0MzQzLnRlc3QwC4IJdDM0NC50ZXN0MAuCCXQzNDUudGVzdDALggl0 -MzQ2LnRlc3QwC4IJdDM0Ny50ZXN0MAuCCXQzNDgudGVzdDALggl0MzQ5LnRlc3Qw -C4IJdDM1MC50ZXN0MAuCCXQzNTEudGVzdDALggl0MzUyLnRlc3QwC4IJdDM1My50 -ZXN0MAuCCXQzNTQudGVzdDALggl0MzU1LnRlc3QwC4IJdDM1Ni50ZXN0MAuCCXQz -NTcudGVzdDALggl0MzU4LnRlc3QwC4IJdDM1OS50ZXN0MAuCCXQzNjAudGVzdDAL -ggl0MzYxLnRlc3QwC4IJdDM2Mi50ZXN0MAuCCXQzNjMudGVzdDALggl0MzY0LnRl -c3QwC4IJdDM2NS50ZXN0MAuCCXQzNjYudGVzdDALggl0MzY3LnRlc3QwC4IJdDM2 -OC50ZXN0MAuCCXQzNjkudGVzdDALggl0MzcwLnRlc3QwC4IJdDM3MS50ZXN0MAuC -CXQzNzIudGVzdDALggl0MzczLnRlc3QwC4IJdDM3NC50ZXN0MAuCCXQzNzUudGVz -dDALggl0Mzc2LnRlc3QwC4IJdDM3Ny50ZXN0MAuCCXQzNzgudGVzdDALggl0Mzc5 -LnRlc3QwC4IJdDM4MC50ZXN0MAuCCXQzODEudGVzdDALggl0MzgyLnRlc3QwC4IJ -dDM4My50ZXN0MAuCCXQzODQudGVzdDALggl0Mzg1LnRlc3QwC4IJdDM4Ni50ZXN0 -MAuCCXQzODcudGVzdDALggl0Mzg4LnRlc3QwC4IJdDM4OS50ZXN0MAuCCXQzOTAu -dGVzdDALggl0MzkxLnRlc3QwC4IJdDM5Mi50ZXN0MAuCCXQzOTMudGVzdDALggl0 -Mzk0LnRlc3QwC4IJdDM5NS50ZXN0MAuCCXQzOTYudGVzdDALggl0Mzk3LnRlc3Qw -C4IJdDM5OC50ZXN0MAuCCXQzOTkudGVzdDALggl0NDAwLnRlc3QwC4IJdDQwMS50 -ZXN0MAuCCXQ0MDIudGVzdDALggl0NDAzLnRlc3QwC4IJdDQwNC50ZXN0MAuCCXQ0 -MDUudGVzdDALggl0NDA2LnRlc3QwC4IJdDQwNy50ZXN0MAuCCXQ0MDgudGVzdDAL -ggl0NDA5LnRlc3QwC4IJdDQxMC50ZXN0MAuCCXQ0MTEudGVzdDALggl0NDEyLnRl -c3QwC4IJdDQxMy50ZXN0MAuCCXQ0MTQudGVzdDALggl0NDE1LnRlc3QwC4IJdDQx -Ni50ZXN0MAuCCXQ0MTcudGVzdDALggl0NDE4LnRlc3QwC4IJdDQxOS50ZXN0MAuC -CXQ0MjAudGVzdDALggl0NDIxLnRlc3QwC4IJdDQyMi50ZXN0MAuCCXQ0MjMudGVz -dDALggl0NDI0LnRlc3QwC4IJdDQyNS50ZXN0MAuCCXQ0MjYudGVzdDALggl0NDI3 -LnRlc3QwC4IJdDQyOC50ZXN0MAuCCXQ0MjkudGVzdDALggl0NDMwLnRlc3QwC4IJ -dDQzMS50ZXN0MAuCCXQ0MzIudGVzdDALggl0NDMzLnRlc3QwC4IJdDQzNC50ZXN0 -MAuCCXQ0MzUudGVzdDALggl0NDM2LnRlc3QwC4IJdDQzNy50ZXN0MAuCCXQ0Mzgu -dGVzdDALggl0NDM5LnRlc3QwC4IJdDQ0MC50ZXN0MAuCCXQ0NDEudGVzdDALggl0 -NDQyLnRlc3QwC4IJdDQ0My50ZXN0MAuCCXQ0NDQudGVzdDALggl0NDQ1LnRlc3Qw -C4IJdDQ0Ni50ZXN0MAuCCXQ0NDcudGVzdDALggl0NDQ4LnRlc3QwC4IJdDQ0OS50 -ZXN0MAuCCXQ0NTAudGVzdDALggl0NDUxLnRlc3QwC4IJdDQ1Mi50ZXN0MAuCCXQ0 -NTMudGVzdDALggl0NDU0LnRlc3QwC4IJdDQ1NS50ZXN0MAuCCXQ0NTYudGVzdDAL -ggl0NDU3LnRlc3QwC4IJdDQ1OC50ZXN0MAuCCXQ0NTkudGVzdDALggl0NDYwLnRl -c3QwC4IJdDQ2MS50ZXN0MAuCCXQ0NjIudGVzdDALggl0NDYzLnRlc3QwC4IJdDQ2 -NC50ZXN0MAuCCXQ0NjUudGVzdDALggl0NDY2LnRlc3QwC4IJdDQ2Ny50ZXN0MAuC -CXQ0NjgudGVzdDALggl0NDY5LnRlc3QwC4IJdDQ3MC50ZXN0MAuCCXQ0NzEudGVz -dDALggl0NDcyLnRlc3QwC4IJdDQ3My50ZXN0MAuCCXQ0NzQudGVzdDALggl0NDc1 -LnRlc3QwC4IJdDQ3Ni50ZXN0MAuCCXQ0NzcudGVzdDALggl0NDc4LnRlc3QwC4IJ -dDQ3OS50ZXN0MAuCCXQ0ODAudGVzdDALggl0NDgxLnRlc3QwC4IJdDQ4Mi50ZXN0 -MAuCCXQ0ODMudGVzdDALggl0NDg0LnRlc3QwC4IJdDQ4NS50ZXN0MAuCCXQ0ODYu -dGVzdDALggl0NDg3LnRlc3QwC4IJdDQ4OC50ZXN0MAuCCXQ0ODkudGVzdDALggl0 -NDkwLnRlc3QwC4IJdDQ5MS50ZXN0MAuCCXQ0OTIudGVzdDALggl0NDkzLnRlc3Qw -C4IJdDQ5NC50ZXN0MAuCCXQ0OTUudGVzdDALggl0NDk2LnRlc3QwC4IJdDQ5Ny50 -ZXN0MAuCCXQ0OTgudGVzdDALggl0NDk5LnRlc3QwC4IJdDUwMC50ZXN0MAuCCXQ1 -MDEudGVzdDALggl0NTAyLnRlc3QwC4IJdDUwMy50ZXN0MAuCCXQ1MDQudGVzdDAL -ggl0NTA1LnRlc3QwC4IJdDUwNi50ZXN0MAuCCXQ1MDcudGVzdDALggl0NTA4LnRl -c3QwC4IJdDUwOS50ZXN0MAuCCXQ1MTAudGVzdDALggl0NTExLnRlc3QwC4IJdDUx -Mi50ZXN0MAuCCXQ1MTMudGVzdDALggl0NTE0LnRlc3QwC4IJdDUxNS50ZXN0MAuC -CXQ1MTYudGVzdDALggl0NTE3LnRlc3QwC4IJdDUxOC50ZXN0MAuCCXQ1MTkudGVz -dDALggl0NTIwLnRlc3QwC4IJdDUyMS50ZXN0MAuCCXQ1MjIudGVzdDALggl0NTIz -LnRlc3QwC4IJdDUyNC50ZXN0MAuCCXQ1MjUudGVzdDALggl0NTI2LnRlc3QwC4IJ -dDUyNy50ZXN0MAuCCXQ1MjgudGVzdDALggl0NTI5LnRlc3QwC4IJdDUzMC50ZXN0 -MAuCCXQ1MzEudGVzdDALggl0NTMyLnRlc3QwC4IJdDUzMy50ZXN0MAuCCXQ1MzQu -dGVzdDALggl0NTM1LnRlc3QwC4IJdDUzNi50ZXN0MAuCCXQ1MzcudGVzdDALggl0 -NTM4LnRlc3QwC4IJdDUzOS50ZXN0MAuCCXQ1NDAudGVzdDALggl0NTQxLnRlc3Qw -C4IJdDU0Mi50ZXN0MAuCCXQ1NDMudGVzdDALggl0NTQ0LnRlc3QwC4IJdDU0NS50 -ZXN0MAuCCXQ1NDYudGVzdDALggl0NTQ3LnRlc3QwC4IJdDU0OC50ZXN0MAuCCXQ1 -NDkudGVzdDALggl0NTUwLnRlc3QwC4IJdDU1MS50ZXN0MAuCCXQ1NTIudGVzdDAL -ggl0NTUzLnRlc3QwC4IJdDU1NC50ZXN0MAuCCXQ1NTUudGVzdDALggl0NTU2LnRl -c3QwC4IJdDU1Ny50ZXN0MAuCCXQ1NTgudGVzdDALggl0NTU5LnRlc3QwC4IJdDU2 -MC50ZXN0MAuCCXQ1NjEudGVzdDALggl0NTYyLnRlc3QwC4IJdDU2My50ZXN0MAuC -CXQ1NjQudGVzdDALggl0NTY1LnRlc3QwC4IJdDU2Ni50ZXN0MAuCCXQ1NjcudGVz -dDALggl0NTY4LnRlc3QwC4IJdDU2OS50ZXN0MAuCCXQ1NzAudGVzdDALggl0NTcx -LnRlc3QwC4IJdDU3Mi50ZXN0MAuCCXQ1NzMudGVzdDALggl0NTc0LnRlc3QwC4IJ -dDU3NS50ZXN0MAuCCXQ1NzYudGVzdDALggl0NTc3LnRlc3QwC4IJdDU3OC50ZXN0 -MAuCCXQ1NzkudGVzdDALggl0NTgwLnRlc3QwC4IJdDU4MS50ZXN0MAuCCXQ1ODIu -dGVzdDALggl0NTgzLnRlc3QwC4IJdDU4NC50ZXN0MAuCCXQ1ODUudGVzdDALggl0 -NTg2LnRlc3QwC4IJdDU4Ny50ZXN0MAuCCXQ1ODgudGVzdDALggl0NTg5LnRlc3Qw -C4IJdDU5MC50ZXN0MAuCCXQ1OTEudGVzdDALggl0NTkyLnRlc3QwC4IJdDU5My50 -ZXN0MAuCCXQ1OTQudGVzdDALggl0NTk1LnRlc3QwC4IJdDU5Ni50ZXN0MAuCCXQ1 -OTcudGVzdDALggl0NTk4LnRlc3QwC4IJdDU5OS50ZXN0MAuCCXQ2MDAudGVzdDAL -ggl0NjAxLnRlc3QwC4IJdDYwMi50ZXN0MAuCCXQ2MDMudGVzdDALggl0NjA0LnRl -c3QwC4IJdDYwNS50ZXN0MAuCCXQ2MDYudGVzdDALggl0NjA3LnRlc3QwC4IJdDYw -OC50ZXN0MAuCCXQ2MDkudGVzdDALggl0NjEwLnRlc3QwC4IJdDYxMS50ZXN0MAuC -CXQ2MTIudGVzdDALggl0NjEzLnRlc3QwC4IJdDYxNC50ZXN0MAuCCXQ2MTUudGVz -dDALggl0NjE2LnRlc3QwC4IJdDYxNy50ZXN0MAuCCXQ2MTgudGVzdDALggl0NjE5 -LnRlc3QwC4IJdDYyMC50ZXN0MAuCCXQ2MjEudGVzdDALggl0NjIyLnRlc3QwC4IJ -dDYyMy50ZXN0MAuCCXQ2MjQudGVzdDALggl0NjI1LnRlc3QwC4IJdDYyNi50ZXN0 -MAuCCXQ2MjcudGVzdDALggl0NjI4LnRlc3QwC4IJdDYyOS50ZXN0MAuCCXQ2MzAu -dGVzdDALggl0NjMxLnRlc3QwC4IJdDYzMi50ZXN0MAuCCXQ2MzMudGVzdDALggl0 -NjM0LnRlc3QwC4IJdDYzNS50ZXN0MAuCCXQ2MzYudGVzdDALggl0NjM3LnRlc3Qw -C4IJdDYzOC50ZXN0MAuCCXQ2MzkudGVzdDALggl0NjQwLnRlc3QwC4IJdDY0MS50 -ZXN0MAuCCXQ2NDIudGVzdDALggl0NjQzLnRlc3QwC4IJdDY0NC50ZXN0MAuCCXQ2 -NDUudGVzdDALggl0NjQ2LnRlc3QwC4IJdDY0Ny50ZXN0MAuCCXQ2NDgudGVzdDAL -ggl0NjQ5LnRlc3QwC4IJdDY1MC50ZXN0MAuCCXQ2NTEudGVzdDALggl0NjUyLnRl -c3QwC4IJdDY1My50ZXN0MAuCCXQ2NTQudGVzdDALggl0NjU1LnRlc3QwC4IJdDY1 -Ni50ZXN0MAuCCXQ2NTcudGVzdDALggl0NjU4LnRlc3QwC4IJdDY1OS50ZXN0MAuC -CXQ2NjAudGVzdDALggl0NjYxLnRlc3QwC4IJdDY2Mi50ZXN0MAuCCXQ2NjMudGVz -dDALggl0NjY0LnRlc3QwC4IJdDY2NS50ZXN0MAuCCXQ2NjYudGVzdDALggl0NjY3 -LnRlc3QwC4IJdDY2OC50ZXN0MAuCCXQ2NjkudGVzdDALggl0NjcwLnRlc3QwC4IJ -dDY3MS50ZXN0MAuCCXQ2NzIudGVzdDALggl0NjczLnRlc3QwC4IJdDY3NC50ZXN0 -MAuCCXQ2NzUudGVzdDALggl0Njc2LnRlc3QwC4IJdDY3Ny50ZXN0MAuCCXQ2Nzgu -dGVzdDALggl0Njc5LnRlc3QwC4IJdDY4MC50ZXN0MAuCCXQ2ODEudGVzdDALggl0 -NjgyLnRlc3QwC4IJdDY4My50ZXN0MAuCCXQ2ODQudGVzdDALggl0Njg1LnRlc3Qw -C4IJdDY4Ni50ZXN0MAuCCXQ2ODcudGVzdDALggl0Njg4LnRlc3QwC4IJdDY4OS50 -ZXN0MAuCCXQ2OTAudGVzdDALggl0NjkxLnRlc3QwC4IJdDY5Mi50ZXN0MAuCCXQ2 -OTMudGVzdDALggl0Njk0LnRlc3QwC4IJdDY5NS50ZXN0MAuCCXQ2OTYudGVzdDAL -ggl0Njk3LnRlc3QwC4IJdDY5OC50ZXN0MAuCCXQ2OTkudGVzdDALggl0NzAwLnRl -c3QwC4IJdDcwMS50ZXN0MAuCCXQ3MDIudGVzdDALggl0NzAzLnRlc3QwC4IJdDcw -NC50ZXN0MAuCCXQ3MDUudGVzdDALggl0NzA2LnRlc3QwC4IJdDcwNy50ZXN0MAuC -CXQ3MDgudGVzdDALggl0NzA5LnRlc3QwC4IJdDcxMC50ZXN0MAuCCXQ3MTEudGVz -dDALggl0NzEyLnRlc3QwC4IJdDcxMy50ZXN0MAuCCXQ3MTQudGVzdDALggl0NzE1 -LnRlc3QwC4IJdDcxNi50ZXN0MAuCCXQ3MTcudGVzdDALggl0NzE4LnRlc3QwC4IJ -dDcxOS50ZXN0MAuCCXQ3MjAudGVzdDALggl0NzIxLnRlc3QwC4IJdDcyMi50ZXN0 -MAuCCXQ3MjMudGVzdDALggl0NzI0LnRlc3QwC4IJdDcyNS50ZXN0MAuCCXQ3MjYu -dGVzdDALggl0NzI3LnRlc3QwC4IJdDcyOC50ZXN0MAuCCXQ3MjkudGVzdDALggl0 -NzMwLnRlc3QwC4IJdDczMS50ZXN0MAuCCXQ3MzIudGVzdDALggl0NzMzLnRlc3Qw -C4IJdDczNC50ZXN0MAuCCXQ3MzUudGVzdDALggl0NzM2LnRlc3QwC4IJdDczNy50 -ZXN0MAuCCXQ3MzgudGVzdDALggl0NzM5LnRlc3QwC4IJdDc0MC50ZXN0MAuCCXQ3 -NDEudGVzdDALggl0NzQyLnRlc3QwC4IJdDc0My50ZXN0MAuCCXQ3NDQudGVzdDAL -ggl0NzQ1LnRlc3QwC4IJdDc0Ni50ZXN0MAuCCXQ3NDcudGVzdDALggl0NzQ4LnRl -c3QwC4IJdDc0OS50ZXN0MAuCCXQ3NTAudGVzdDALggl0NzUxLnRlc3QwC4IJdDc1 -Mi50ZXN0MAuCCXQ3NTMudGVzdDALggl0NzU0LnRlc3QwC4IJdDc1NS50ZXN0MAuC -CXQ3NTYudGVzdDALggl0NzU3LnRlc3QwC4IJdDc1OC50ZXN0MAuCCXQ3NTkudGVz -dDALggl0NzYwLnRlc3QwC4IJdDc2MS50ZXN0MAuCCXQ3NjIudGVzdDALggl0NzYz -LnRlc3QwC4IJdDc2NC50ZXN0MAuCCXQ3NjUudGVzdDALggl0NzY2LnRlc3QwC4IJ -dDc2Ny50ZXN0MAuCCXQ3NjgudGVzdDALggl0NzY5LnRlc3QwC4IJdDc3MC50ZXN0 -MAuCCXQ3NzEudGVzdDALggl0NzcyLnRlc3QwC4IJdDc3My50ZXN0MAuCCXQ3NzQu -dGVzdDALggl0Nzc1LnRlc3QwC4IJdDc3Ni50ZXN0MAuCCXQ3NzcudGVzdDALggl0 -Nzc4LnRlc3QwC4IJdDc3OS50ZXN0MAuCCXQ3ODAudGVzdDALggl0NzgxLnRlc3Qw -C4IJdDc4Mi50ZXN0MAuCCXQ3ODMudGVzdDALggl0Nzg0LnRlc3QwC4IJdDc4NS50 -ZXN0MAuCCXQ3ODYudGVzdDALggl0Nzg3LnRlc3QwC4IJdDc4OC50ZXN0MAuCCXQ3 -ODkudGVzdDALggl0NzkwLnRlc3QwC4IJdDc5MS50ZXN0MAuCCXQ3OTIudGVzdDAL -ggl0NzkzLnRlc3QwC4IJdDc5NC50ZXN0MAuCCXQ3OTUudGVzdDALggl0Nzk2LnRl -c3QwC4IJdDc5Ny50ZXN0MAuCCXQ3OTgudGVzdDALggl0Nzk5LnRlc3QwC4IJdDgw -MC50ZXN0MAuCCXQ4MDEudGVzdDALggl0ODAyLnRlc3QwC4IJdDgwMy50ZXN0MAuC -CXQ4MDQudGVzdDALggl0ODA1LnRlc3QwC4IJdDgwNi50ZXN0MAuCCXQ4MDcudGVz -dDALggl0ODA4LnRlc3QwC4IJdDgwOS50ZXN0MAuCCXQ4MTAudGVzdDALggl0ODEx -LnRlc3QwC4IJdDgxMi50ZXN0MAuCCXQ4MTMudGVzdDALggl0ODE0LnRlc3QwC4IJ -dDgxNS50ZXN0MAuCCXQ4MTYudGVzdDALggl0ODE3LnRlc3QwC4IJdDgxOC50ZXN0 -MAuCCXQ4MTkudGVzdDALggl0ODIwLnRlc3QwC4IJdDgyMS50ZXN0MAuCCXQ4MjIu -dGVzdDALggl0ODIzLnRlc3QwC4IJdDgyNC50ZXN0MAuCCXQ4MjUudGVzdDALggl0 -ODI2LnRlc3QwC4IJdDgyNy50ZXN0MAuCCXQ4MjgudGVzdDALggl0ODI5LnRlc3Qw -C4IJdDgzMC50ZXN0MAuCCXQ4MzEudGVzdDALggl0ODMyLnRlc3QwC4IJdDgzMy50 -ZXN0MAuCCXQ4MzQudGVzdDALggl0ODM1LnRlc3QwC4IJdDgzNi50ZXN0MAuCCXQ4 -MzcudGVzdDALggl0ODM4LnRlc3QwC4IJdDgzOS50ZXN0MAuCCXQ4NDAudGVzdDAL -ggl0ODQxLnRlc3QwC4IJdDg0Mi50ZXN0MAuCCXQ4NDMudGVzdDALggl0ODQ0LnRl -c3QwC4IJdDg0NS50ZXN0MAuCCXQ4NDYudGVzdDALggl0ODQ3LnRlc3QwC4IJdDg0 -OC50ZXN0MAuCCXQ4NDkudGVzdDALggl0ODUwLnRlc3QwC4IJdDg1MS50ZXN0MAuC -CXQ4NTIudGVzdDALggl0ODUzLnRlc3QwC4IJdDg1NC50ZXN0MAuCCXQ4NTUudGVz -dDALggl0ODU2LnRlc3QwC4IJdDg1Ny50ZXN0MAuCCXQ4NTgudGVzdDALggl0ODU5 -LnRlc3QwC4IJdDg2MC50ZXN0MAuCCXQ4NjEudGVzdDALggl0ODYyLnRlc3QwC4IJ -dDg2My50ZXN0MAuCCXQ4NjQudGVzdDALggl0ODY1LnRlc3QwC4IJdDg2Ni50ZXN0 -MAuCCXQ4NjcudGVzdDALggl0ODY4LnRlc3QwC4IJdDg2OS50ZXN0MAuCCXQ4NzAu -dGVzdDALggl0ODcxLnRlc3QwC4IJdDg3Mi50ZXN0MAuCCXQ4NzMudGVzdDALggl0 -ODc0LnRlc3QwC4IJdDg3NS50ZXN0MAuCCXQ4NzYudGVzdDALggl0ODc3LnRlc3Qw -C4IJdDg3OC50ZXN0MAuCCXQ4NzkudGVzdDALggl0ODgwLnRlc3QwC4IJdDg4MS50 -ZXN0MAuCCXQ4ODIudGVzdDALggl0ODgzLnRlc3QwC4IJdDg4NC50ZXN0MAuCCXQ4 -ODUudGVzdDALggl0ODg2LnRlc3QwC4IJdDg4Ny50ZXN0MAuCCXQ4ODgudGVzdDAL -ggl0ODg5LnRlc3QwC4IJdDg5MC50ZXN0MAuCCXQ4OTEudGVzdDALggl0ODkyLnRl -c3QwC4IJdDg5My50ZXN0MAuCCXQ4OTQudGVzdDALggl0ODk1LnRlc3QwC4IJdDg5 -Ni50ZXN0MAuCCXQ4OTcudGVzdDALggl0ODk4LnRlc3QwC4IJdDg5OS50ZXN0MAuC -CXQ5MDAudGVzdDALggl0OTAxLnRlc3QwC4IJdDkwMi50ZXN0MAuCCXQ5MDMudGVz -dDALggl0OTA0LnRlc3QwC4IJdDkwNS50ZXN0MAuCCXQ5MDYudGVzdDALggl0OTA3 -LnRlc3QwC4IJdDkwOC50ZXN0MAuCCXQ5MDkudGVzdDALggl0OTEwLnRlc3QwC4IJ -dDkxMS50ZXN0MAuCCXQ5MTIudGVzdDALggl0OTEzLnRlc3QwC4IJdDkxNC50ZXN0 -MAuCCXQ5MTUudGVzdDALggl0OTE2LnRlc3QwC4IJdDkxNy50ZXN0MAuCCXQ5MTgu -dGVzdDALggl0OTE5LnRlc3QwC4IJdDkyMC50ZXN0MAuCCXQ5MjEudGVzdDALggl0 -OTIyLnRlc3QwC4IJdDkyMy50ZXN0MAuCCXQ5MjQudGVzdDALggl0OTI1LnRlc3Qw -C4IJdDkyNi50ZXN0MAuCCXQ5MjcudGVzdDALggl0OTI4LnRlc3QwC4IJdDkyOS50 -ZXN0MAuCCXQ5MzAudGVzdDALggl0OTMxLnRlc3QwC4IJdDkzMi50ZXN0MAuCCXQ5 -MzMudGVzdDALggl0OTM0LnRlc3QwC4IJdDkzNS50ZXN0MAuCCXQ5MzYudGVzdDAL -ggl0OTM3LnRlc3QwC4IJdDkzOC50ZXN0MAuCCXQ5MzkudGVzdDALggl0OTQwLnRl -c3QwC4IJdDk0MS50ZXN0MAuCCXQ5NDIudGVzdDALggl0OTQzLnRlc3QwC4IJdDk0 -NC50ZXN0MAuCCXQ5NDUudGVzdDALggl0OTQ2LnRlc3QwC4IJdDk0Ny50ZXN0MAuC -CXQ5NDgudGVzdDALggl0OTQ5LnRlc3QwC4IJdDk1MC50ZXN0MAuCCXQ5NTEudGVz -dDALggl0OTUyLnRlc3QwC4IJdDk1My50ZXN0MAuCCXQ5NTQudGVzdDALggl0OTU1 -LnRlc3QwC4IJdDk1Ni50ZXN0MAuCCXQ5NTcudGVzdDALggl0OTU4LnRlc3QwC4IJ -dDk1OS50ZXN0MAuCCXQ5NjAudGVzdDALggl0OTYxLnRlc3QwC4IJdDk2Mi50ZXN0 -MAuCCXQ5NjMudGVzdDALggl0OTY0LnRlc3QwC4IJdDk2NS50ZXN0MAuCCXQ5NjYu -dGVzdDALggl0OTY3LnRlc3QwC4IJdDk2OC50ZXN0MAuCCXQ5NjkudGVzdDALggl0 -OTcwLnRlc3QwC4IJdDk3MS50ZXN0MAuCCXQ5NzIudGVzdDALggl0OTczLnRlc3Qw -C4IJdDk3NC50ZXN0MAuCCXQ5NzUudGVzdDALggl0OTc2LnRlc3QwC4IJdDk3Ny50 -ZXN0MAuCCXQ5NzgudGVzdDALggl0OTc5LnRlc3QwC4IJdDk4MC50ZXN0MAuCCXQ5 -ODEudGVzdDALggl0OTgyLnRlc3QwC4IJdDk4My50ZXN0MAuCCXQ5ODQudGVzdDAL -ggl0OTg1LnRlc3QwC4IJdDk4Ni50ZXN0MAuCCXQ5ODcudGVzdDALggl0OTg4LnRl -c3QwC4IJdDk4OS50ZXN0MAuCCXQ5OTAudGVzdDALggl0OTkxLnRlc3QwC4IJdDk5 -Mi50ZXN0MAuCCXQ5OTMudGVzdDALggl0OTk0LnRlc3QwC4IJdDk5NS50ZXN0MAuC -CXQ5OTYudGVzdDALggl0OTk3LnRlc3QwC4IJdDk5OC50ZXN0MAuCCXQ5OTkudGVz -dDAMggp0MTAwMC50ZXN0MAyCCnQxMDAxLnRlc3QwDIIKdDEwMDIudGVzdDAMggp0 -MTAwMy50ZXN0MAyCCnQxMDA0LnRlc3QwDIIKdDEwMDUudGVzdDAMggp0MTAwNi50 -ZXN0MAyCCnQxMDA3LnRlc3QwDIIKdDEwMDgudGVzdDAMggp0MTAwOS50ZXN0MAyC -CnQxMDEwLnRlc3QwDIIKdDEwMTEudGVzdDAMggp0MTAxMi50ZXN0MAyCCnQxMDEz -LnRlc3QwDIIKdDEwMTQudGVzdDAMggp0MTAxNS50ZXN0MAyCCnQxMDE2LnRlc3Qw -DIIKdDEwMTcudGVzdDAMggp0MTAxOC50ZXN0MAyCCnQxMDE5LnRlc3QwDIIKdDEw -MjAudGVzdDAMggp0MTAyMS50ZXN0MAyCCnQxMDIyLnRlc3QwDIIKdDEwMjMudGVz -dDAMggp0MTAyNC50ZXN0MA0GCSqGSIb3DQEBCwUAA4IBAQAvjJ8IQ/rhwhab5lq5 -jnvVSe/W3gIlm0bro9+ojQcQQOfe/iNqXp3rY3+hqY00uci9X9xM67OJcyP6kKOi -y/AfZ/Lo4eB04oYDliggS7n8uk+AJN4rwSebIeXZPitmdlBskKNaiT5RNAkcN85g -eWqJm2sY9YkxAZaSuaBxtFA6jPRGOlhU/6I03O6GTl+s+Br5wCJAgr5fmNg9UjoY -ok/iMHa6+u5eHyaAcrAG8CG3hCpd6iGd4A81gJPYnR+bpz1v4hwpOBKdPM1LTJ/6 -1WIrVqwqOvhfzDIPAnyo38DJ0R5Np9yfy06TNPZuUDods0npUKMZeKCNwytaeB1T -VTVH ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.cnf deleted file mode 100644 index 005bf366d2..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.cnf +++ /dev/null @@ -1,1092 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Intermediate" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,keyCertSign,cRLSign -basicConstraints = critical,CA:true -nameConstraints = @nameConstraints_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Intermediate_6.pem -new_certs_dir = out -serial = out/Intermediate.serial -database = out/Intermediate.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Intermediate.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Intermediate.cer - -[crl_info] -URI.0 = http://url-for-crl/Intermediate.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[nameConstraints_info] -permitted;IP.1 = 10.0.0.0/255.255.255.255 -permitted;IP.2 = 10.0.0.1/255.255.255.255 -permitted;IP.3 = 10.0.0.2/255.255.255.255 -permitted;IP.4 = 10.0.0.3/255.255.255.255 -permitted;IP.5 = 10.0.0.4/255.255.255.255 -permitted;IP.6 = 10.0.0.5/255.255.255.255 -permitted;IP.7 = 10.0.0.6/255.255.255.255 -permitted;IP.8 = 10.0.0.7/255.255.255.255 -permitted;IP.9 = 10.0.0.8/255.255.255.255 -permitted;IP.10 = 10.0.0.9/255.255.255.255 -permitted;IP.11 = 10.0.0.10/255.255.255.255 -permitted;IP.12 = 10.0.0.11/255.255.255.255 -permitted;IP.13 = 10.0.0.12/255.255.255.255 -permitted;IP.14 = 10.0.0.13/255.255.255.255 -permitted;IP.15 = 10.0.0.14/255.255.255.255 -permitted;IP.16 = 10.0.0.15/255.255.255.255 -permitted;IP.17 = 10.0.0.16/255.255.255.255 -permitted;IP.18 = 10.0.0.17/255.255.255.255 -permitted;IP.19 = 10.0.0.18/255.255.255.255 -permitted;IP.20 = 10.0.0.19/255.255.255.255 -permitted;IP.21 = 10.0.0.20/255.255.255.255 -permitted;IP.22 = 10.0.0.21/255.255.255.255 -permitted;IP.23 = 10.0.0.22/255.255.255.255 -permitted;IP.24 = 10.0.0.23/255.255.255.255 -permitted;IP.25 = 10.0.0.24/255.255.255.255 -permitted;IP.26 = 10.0.0.25/255.255.255.255 -permitted;IP.27 = 10.0.0.26/255.255.255.255 -permitted;IP.28 = 10.0.0.27/255.255.255.255 -permitted;IP.29 = 10.0.0.28/255.255.255.255 -permitted;IP.30 = 10.0.0.29/255.255.255.255 -permitted;IP.31 = 10.0.0.30/255.255.255.255 -permitted;IP.32 = 10.0.0.31/255.255.255.255 -permitted;IP.33 = 10.0.0.32/255.255.255.255 -permitted;IP.34 = 10.0.0.33/255.255.255.255 -permitted;IP.35 = 10.0.0.34/255.255.255.255 -permitted;IP.36 = 10.0.0.35/255.255.255.255 -permitted;IP.37 = 10.0.0.36/255.255.255.255 -permitted;IP.38 = 10.0.0.37/255.255.255.255 -permitted;IP.39 = 10.0.0.38/255.255.255.255 -permitted;IP.40 = 10.0.0.39/255.255.255.255 -permitted;IP.41 = 10.0.0.40/255.255.255.255 -permitted;IP.42 = 10.0.0.41/255.255.255.255 -permitted;IP.43 = 10.0.0.42/255.255.255.255 -permitted;IP.44 = 10.0.0.43/255.255.255.255 -permitted;IP.45 = 10.0.0.44/255.255.255.255 -permitted;IP.46 = 10.0.0.45/255.255.255.255 -permitted;IP.47 = 10.0.0.46/255.255.255.255 -permitted;IP.48 = 10.0.0.47/255.255.255.255 -permitted;IP.49 = 10.0.0.48/255.255.255.255 -permitted;IP.50 = 10.0.0.49/255.255.255.255 -permitted;IP.51 = 10.0.0.50/255.255.255.255 -permitted;IP.52 = 10.0.0.51/255.255.255.255 -permitted;IP.53 = 10.0.0.52/255.255.255.255 -permitted;IP.54 = 10.0.0.53/255.255.255.255 -permitted;IP.55 = 10.0.0.54/255.255.255.255 -permitted;IP.56 = 10.0.0.55/255.255.255.255 -permitted;IP.57 = 10.0.0.56/255.255.255.255 -permitted;IP.58 = 10.0.0.57/255.255.255.255 -permitted;IP.59 = 10.0.0.58/255.255.255.255 -permitted;IP.60 = 10.0.0.59/255.255.255.255 -permitted;IP.61 = 10.0.0.60/255.255.255.255 -permitted;IP.62 = 10.0.0.61/255.255.255.255 -permitted;IP.63 = 10.0.0.62/255.255.255.255 -permitted;IP.64 = 10.0.0.63/255.255.255.255 -permitted;IP.65 = 10.0.0.64/255.255.255.255 -permitted;IP.66 = 10.0.0.65/255.255.255.255 -permitted;IP.67 = 10.0.0.66/255.255.255.255 -permitted;IP.68 = 10.0.0.67/255.255.255.255 -permitted;IP.69 = 10.0.0.68/255.255.255.255 -permitted;IP.70 = 10.0.0.69/255.255.255.255 -permitted;IP.71 = 10.0.0.70/255.255.255.255 -permitted;IP.72 = 10.0.0.71/255.255.255.255 -permitted;IP.73 = 10.0.0.72/255.255.255.255 -permitted;IP.74 = 10.0.0.73/255.255.255.255 -permitted;IP.75 = 10.0.0.74/255.255.255.255 -permitted;IP.76 = 10.0.0.75/255.255.255.255 -permitted;IP.77 = 10.0.0.76/255.255.255.255 -permitted;IP.78 = 10.0.0.77/255.255.255.255 -permitted;IP.79 = 10.0.0.78/255.255.255.255 -permitted;IP.80 = 10.0.0.79/255.255.255.255 -permitted;IP.81 = 10.0.0.80/255.255.255.255 -permitted;IP.82 = 10.0.0.81/255.255.255.255 -permitted;IP.83 = 10.0.0.82/255.255.255.255 -permitted;IP.84 = 10.0.0.83/255.255.255.255 -permitted;IP.85 = 10.0.0.84/255.255.255.255 -permitted;IP.86 = 10.0.0.85/255.255.255.255 -permitted;IP.87 = 10.0.0.86/255.255.255.255 -permitted;IP.88 = 10.0.0.87/255.255.255.255 -permitted;IP.89 = 10.0.0.88/255.255.255.255 -permitted;IP.90 = 10.0.0.89/255.255.255.255 -permitted;IP.91 = 10.0.0.90/255.255.255.255 -permitted;IP.92 = 10.0.0.91/255.255.255.255 -permitted;IP.93 = 10.0.0.92/255.255.255.255 -permitted;IP.94 = 10.0.0.93/255.255.255.255 -permitted;IP.95 = 10.0.0.94/255.255.255.255 -permitted;IP.96 = 10.0.0.95/255.255.255.255 -permitted;IP.97 = 10.0.0.96/255.255.255.255 -permitted;IP.98 = 10.0.0.97/255.255.255.255 -permitted;IP.99 = 10.0.0.98/255.255.255.255 -permitted;IP.100 = 10.0.0.99/255.255.255.255 -permitted;IP.101 = 10.0.0.100/255.255.255.255 -permitted;IP.102 = 10.0.0.101/255.255.255.255 -permitted;IP.103 = 10.0.0.102/255.255.255.255 -permitted;IP.104 = 10.0.0.103/255.255.255.255 -permitted;IP.105 = 10.0.0.104/255.255.255.255 -permitted;IP.106 = 10.0.0.105/255.255.255.255 -permitted;IP.107 = 10.0.0.106/255.255.255.255 -permitted;IP.108 = 10.0.0.107/255.255.255.255 -permitted;IP.109 = 10.0.0.108/255.255.255.255 -permitted;IP.110 = 10.0.0.109/255.255.255.255 -permitted;IP.111 = 10.0.0.110/255.255.255.255 -permitted;IP.112 = 10.0.0.111/255.255.255.255 -permitted;IP.113 = 10.0.0.112/255.255.255.255 -permitted;IP.114 = 10.0.0.113/255.255.255.255 -permitted;IP.115 = 10.0.0.114/255.255.255.255 -permitted;IP.116 = 10.0.0.115/255.255.255.255 -permitted;IP.117 = 10.0.0.116/255.255.255.255 -permitted;IP.118 = 10.0.0.117/255.255.255.255 -permitted;IP.119 = 10.0.0.118/255.255.255.255 -permitted;IP.120 = 10.0.0.119/255.255.255.255 -permitted;IP.121 = 10.0.0.120/255.255.255.255 -permitted;IP.122 = 10.0.0.121/255.255.255.255 -permitted;IP.123 = 10.0.0.122/255.255.255.255 -permitted;IP.124 = 10.0.0.123/255.255.255.255 -permitted;IP.125 = 10.0.0.124/255.255.255.255 -permitted;IP.126 = 10.0.0.125/255.255.255.255 -permitted;IP.127 = 10.0.0.126/255.255.255.255 -permitted;IP.128 = 10.0.0.127/255.255.255.255 -permitted;IP.129 = 10.0.0.128/255.255.255.255 -permitted;IP.130 = 10.0.0.129/255.255.255.255 -permitted;IP.131 = 10.0.0.130/255.255.255.255 -permitted;IP.132 = 10.0.0.131/255.255.255.255 -permitted;IP.133 = 10.0.0.132/255.255.255.255 -permitted;IP.134 = 10.0.0.133/255.255.255.255 -permitted;IP.135 = 10.0.0.134/255.255.255.255 -permitted;IP.136 = 10.0.0.135/255.255.255.255 -permitted;IP.137 = 10.0.0.136/255.255.255.255 -permitted;IP.138 = 10.0.0.137/255.255.255.255 -permitted;IP.139 = 10.0.0.138/255.255.255.255 -permitted;IP.140 = 10.0.0.139/255.255.255.255 -permitted;IP.141 = 10.0.0.140/255.255.255.255 -permitted;IP.142 = 10.0.0.141/255.255.255.255 -permitted;IP.143 = 10.0.0.142/255.255.255.255 -permitted;IP.144 = 10.0.0.143/255.255.255.255 -permitted;IP.145 = 10.0.0.144/255.255.255.255 -permitted;IP.146 = 10.0.0.145/255.255.255.255 -permitted;IP.147 = 10.0.0.146/255.255.255.255 -permitted;IP.148 = 10.0.0.147/255.255.255.255 -permitted;IP.149 = 10.0.0.148/255.255.255.255 -permitted;IP.150 = 10.0.0.149/255.255.255.255 -permitted;IP.151 = 10.0.0.150/255.255.255.255 -permitted;IP.152 = 10.0.0.151/255.255.255.255 -permitted;IP.153 = 10.0.0.152/255.255.255.255 -permitted;IP.154 = 10.0.0.153/255.255.255.255 -permitted;IP.155 = 10.0.0.154/255.255.255.255 -permitted;IP.156 = 10.0.0.155/255.255.255.255 -permitted;IP.157 = 10.0.0.156/255.255.255.255 -permitted;IP.158 = 10.0.0.157/255.255.255.255 -permitted;IP.159 = 10.0.0.158/255.255.255.255 -permitted;IP.160 = 10.0.0.159/255.255.255.255 -permitted;IP.161 = 10.0.0.160/255.255.255.255 -permitted;IP.162 = 10.0.0.161/255.255.255.255 -permitted;IP.163 = 10.0.0.162/255.255.255.255 -permitted;IP.164 = 10.0.0.163/255.255.255.255 -permitted;IP.165 = 10.0.0.164/255.255.255.255 -permitted;IP.166 = 10.0.0.165/255.255.255.255 -permitted;IP.167 = 10.0.0.166/255.255.255.255 -permitted;IP.168 = 10.0.0.167/255.255.255.255 -permitted;IP.169 = 10.0.0.168/255.255.255.255 -permitted;IP.170 = 10.0.0.169/255.255.255.255 -permitted;IP.171 = 10.0.0.170/255.255.255.255 -permitted;IP.172 = 10.0.0.171/255.255.255.255 -permitted;IP.173 = 10.0.0.172/255.255.255.255 -permitted;IP.174 = 10.0.0.173/255.255.255.255 -permitted;IP.175 = 10.0.0.174/255.255.255.255 -permitted;IP.176 = 10.0.0.175/255.255.255.255 -permitted;IP.177 = 10.0.0.176/255.255.255.255 -permitted;IP.178 = 10.0.0.177/255.255.255.255 -permitted;IP.179 = 10.0.0.178/255.255.255.255 -permitted;IP.180 = 10.0.0.179/255.255.255.255 -permitted;IP.181 = 10.0.0.180/255.255.255.255 -permitted;IP.182 = 10.0.0.181/255.255.255.255 -permitted;IP.183 = 10.0.0.182/255.255.255.255 -permitted;IP.184 = 10.0.0.183/255.255.255.255 -permitted;IP.185 = 10.0.0.184/255.255.255.255 -permitted;IP.186 = 10.0.0.185/255.255.255.255 -permitted;IP.187 = 10.0.0.186/255.255.255.255 -permitted;IP.188 = 10.0.0.187/255.255.255.255 -permitted;IP.189 = 10.0.0.188/255.255.255.255 -permitted;IP.190 = 10.0.0.189/255.255.255.255 -permitted;IP.191 = 10.0.0.190/255.255.255.255 -permitted;IP.192 = 10.0.0.191/255.255.255.255 -permitted;IP.193 = 10.0.0.192/255.255.255.255 -permitted;IP.194 = 10.0.0.193/255.255.255.255 -permitted;IP.195 = 10.0.0.194/255.255.255.255 -permitted;IP.196 = 10.0.0.195/255.255.255.255 -permitted;IP.197 = 10.0.0.196/255.255.255.255 -permitted;IP.198 = 10.0.0.197/255.255.255.255 -permitted;IP.199 = 10.0.0.198/255.255.255.255 -permitted;IP.200 = 10.0.0.199/255.255.255.255 -permitted;IP.201 = 10.0.0.200/255.255.255.255 -permitted;IP.202 = 10.0.0.201/255.255.255.255 -permitted;IP.203 = 10.0.0.202/255.255.255.255 -permitted;IP.204 = 10.0.0.203/255.255.255.255 -permitted;IP.205 = 10.0.0.204/255.255.255.255 -permitted;IP.206 = 10.0.0.205/255.255.255.255 -permitted;IP.207 = 10.0.0.206/255.255.255.255 -permitted;IP.208 = 10.0.0.207/255.255.255.255 -permitted;IP.209 = 10.0.0.208/255.255.255.255 -permitted;IP.210 = 10.0.0.209/255.255.255.255 -permitted;IP.211 = 10.0.0.210/255.255.255.255 -permitted;IP.212 = 10.0.0.211/255.255.255.255 -permitted;IP.213 = 10.0.0.212/255.255.255.255 -permitted;IP.214 = 10.0.0.213/255.255.255.255 -permitted;IP.215 = 10.0.0.214/255.255.255.255 -permitted;IP.216 = 10.0.0.215/255.255.255.255 -permitted;IP.217 = 10.0.0.216/255.255.255.255 -permitted;IP.218 = 10.0.0.217/255.255.255.255 -permitted;IP.219 = 10.0.0.218/255.255.255.255 -permitted;IP.220 = 10.0.0.219/255.255.255.255 -permitted;IP.221 = 10.0.0.220/255.255.255.255 -permitted;IP.222 = 10.0.0.221/255.255.255.255 -permitted;IP.223 = 10.0.0.222/255.255.255.255 -permitted;IP.224 = 10.0.0.223/255.255.255.255 -permitted;IP.225 = 10.0.0.224/255.255.255.255 -permitted;IP.226 = 10.0.0.225/255.255.255.255 -permitted;IP.227 = 10.0.0.226/255.255.255.255 -permitted;IP.228 = 10.0.0.227/255.255.255.255 -permitted;IP.229 = 10.0.0.228/255.255.255.255 -permitted;IP.230 = 10.0.0.229/255.255.255.255 -permitted;IP.231 = 10.0.0.230/255.255.255.255 -permitted;IP.232 = 10.0.0.231/255.255.255.255 -permitted;IP.233 = 10.0.0.232/255.255.255.255 -permitted;IP.234 = 10.0.0.233/255.255.255.255 -permitted;IP.235 = 10.0.0.234/255.255.255.255 -permitted;IP.236 = 10.0.0.235/255.255.255.255 -permitted;IP.237 = 10.0.0.236/255.255.255.255 -permitted;IP.238 = 10.0.0.237/255.255.255.255 -permitted;IP.239 = 10.0.0.238/255.255.255.255 -permitted;IP.240 = 10.0.0.239/255.255.255.255 -permitted;IP.241 = 10.0.0.240/255.255.255.255 -permitted;IP.242 = 10.0.0.241/255.255.255.255 -permitted;IP.243 = 10.0.0.242/255.255.255.255 -permitted;IP.244 = 10.0.0.243/255.255.255.255 -permitted;IP.245 = 10.0.0.244/255.255.255.255 -permitted;IP.246 = 10.0.0.245/255.255.255.255 -permitted;IP.247 = 10.0.0.246/255.255.255.255 -permitted;IP.248 = 10.0.0.247/255.255.255.255 -permitted;IP.249 = 10.0.0.248/255.255.255.255 -permitted;IP.250 = 10.0.0.249/255.255.255.255 -permitted;IP.251 = 10.0.0.250/255.255.255.255 -permitted;IP.252 = 10.0.0.251/255.255.255.255 -permitted;IP.253 = 10.0.0.252/255.255.255.255 -permitted;IP.254 = 10.0.0.253/255.255.255.255 -permitted;IP.255 = 10.0.0.254/255.255.255.255 -permitted;IP.256 = 10.0.0.255/255.255.255.255 -permitted;IP.257 = 10.0.1.0/255.255.255.255 -permitted;IP.258 = 10.0.1.1/255.255.255.255 -permitted;IP.259 = 10.0.1.2/255.255.255.255 -permitted;IP.260 = 10.0.1.3/255.255.255.255 -permitted;IP.261 = 10.0.1.4/255.255.255.255 -permitted;IP.262 = 10.0.1.5/255.255.255.255 -permitted;IP.263 = 10.0.1.6/255.255.255.255 -permitted;IP.264 = 10.0.1.7/255.255.255.255 -permitted;IP.265 = 10.0.1.8/255.255.255.255 -permitted;IP.266 = 10.0.1.9/255.255.255.255 -permitted;IP.267 = 10.0.1.10/255.255.255.255 -permitted;IP.268 = 10.0.1.11/255.255.255.255 -permitted;IP.269 = 10.0.1.12/255.255.255.255 -permitted;IP.270 = 10.0.1.13/255.255.255.255 -permitted;IP.271 = 10.0.1.14/255.255.255.255 -permitted;IP.272 = 10.0.1.15/255.255.255.255 -permitted;IP.273 = 10.0.1.16/255.255.255.255 -permitted;IP.274 = 10.0.1.17/255.255.255.255 -permitted;IP.275 = 10.0.1.18/255.255.255.255 -permitted;IP.276 = 10.0.1.19/255.255.255.255 -permitted;IP.277 = 10.0.1.20/255.255.255.255 -permitted;IP.278 = 10.0.1.21/255.255.255.255 -permitted;IP.279 = 10.0.1.22/255.255.255.255 -permitted;IP.280 = 10.0.1.23/255.255.255.255 -permitted;IP.281 = 10.0.1.24/255.255.255.255 -permitted;IP.282 = 10.0.1.25/255.255.255.255 -permitted;IP.283 = 10.0.1.26/255.255.255.255 -permitted;IP.284 = 10.0.1.27/255.255.255.255 -permitted;IP.285 = 10.0.1.28/255.255.255.255 -permitted;IP.286 = 10.0.1.29/255.255.255.255 -permitted;IP.287 = 10.0.1.30/255.255.255.255 -permitted;IP.288 = 10.0.1.31/255.255.255.255 -permitted;IP.289 = 10.0.1.32/255.255.255.255 -permitted;IP.290 = 10.0.1.33/255.255.255.255 -permitted;IP.291 = 10.0.1.34/255.255.255.255 -permitted;IP.292 = 10.0.1.35/255.255.255.255 -permitted;IP.293 = 10.0.1.36/255.255.255.255 -permitted;IP.294 = 10.0.1.37/255.255.255.255 -permitted;IP.295 = 10.0.1.38/255.255.255.255 -permitted;IP.296 = 10.0.1.39/255.255.255.255 -permitted;IP.297 = 10.0.1.40/255.255.255.255 -permitted;IP.298 = 10.0.1.41/255.255.255.255 -permitted;IP.299 = 10.0.1.42/255.255.255.255 -permitted;IP.300 = 10.0.1.43/255.255.255.255 -permitted;IP.301 = 10.0.1.44/255.255.255.255 -permitted;IP.302 = 10.0.1.45/255.255.255.255 -permitted;IP.303 = 10.0.1.46/255.255.255.255 -permitted;IP.304 = 10.0.1.47/255.255.255.255 -permitted;IP.305 = 10.0.1.48/255.255.255.255 -permitted;IP.306 = 10.0.1.49/255.255.255.255 -permitted;IP.307 = 10.0.1.50/255.255.255.255 -permitted;IP.308 = 10.0.1.51/255.255.255.255 -permitted;IP.309 = 10.0.1.52/255.255.255.255 -permitted;IP.310 = 10.0.1.53/255.255.255.255 -permitted;IP.311 = 10.0.1.54/255.255.255.255 -permitted;IP.312 = 10.0.1.55/255.255.255.255 -permitted;IP.313 = 10.0.1.56/255.255.255.255 -permitted;IP.314 = 10.0.1.57/255.255.255.255 -permitted;IP.315 = 10.0.1.58/255.255.255.255 -permitted;IP.316 = 10.0.1.59/255.255.255.255 -permitted;IP.317 = 10.0.1.60/255.255.255.255 -permitted;IP.318 = 10.0.1.61/255.255.255.255 -permitted;IP.319 = 10.0.1.62/255.255.255.255 -permitted;IP.320 = 10.0.1.63/255.255.255.255 -permitted;IP.321 = 10.0.1.64/255.255.255.255 -permitted;IP.322 = 10.0.1.65/255.255.255.255 -permitted;IP.323 = 10.0.1.66/255.255.255.255 -permitted;IP.324 = 10.0.1.67/255.255.255.255 -permitted;IP.325 = 10.0.1.68/255.255.255.255 -permitted;IP.326 = 10.0.1.69/255.255.255.255 -permitted;IP.327 = 10.0.1.70/255.255.255.255 -permitted;IP.328 = 10.0.1.71/255.255.255.255 -permitted;IP.329 = 10.0.1.72/255.255.255.255 -permitted;IP.330 = 10.0.1.73/255.255.255.255 -permitted;IP.331 = 10.0.1.74/255.255.255.255 -permitted;IP.332 = 10.0.1.75/255.255.255.255 -permitted;IP.333 = 10.0.1.76/255.255.255.255 -permitted;IP.334 = 10.0.1.77/255.255.255.255 -permitted;IP.335 = 10.0.1.78/255.255.255.255 -permitted;IP.336 = 10.0.1.79/255.255.255.255 -permitted;IP.337 = 10.0.1.80/255.255.255.255 -permitted;IP.338 = 10.0.1.81/255.255.255.255 -permitted;IP.339 = 10.0.1.82/255.255.255.255 -permitted;IP.340 = 10.0.1.83/255.255.255.255 -permitted;IP.341 = 10.0.1.84/255.255.255.255 -permitted;IP.342 = 10.0.1.85/255.255.255.255 -permitted;IP.343 = 10.0.1.86/255.255.255.255 -permitted;IP.344 = 10.0.1.87/255.255.255.255 -permitted;IP.345 = 10.0.1.88/255.255.255.255 -permitted;IP.346 = 10.0.1.89/255.255.255.255 -permitted;IP.347 = 10.0.1.90/255.255.255.255 -permitted;IP.348 = 10.0.1.91/255.255.255.255 -permitted;IP.349 = 10.0.1.92/255.255.255.255 -permitted;IP.350 = 10.0.1.93/255.255.255.255 -permitted;IP.351 = 10.0.1.94/255.255.255.255 -permitted;IP.352 = 10.0.1.95/255.255.255.255 -permitted;IP.353 = 10.0.1.96/255.255.255.255 -permitted;IP.354 = 10.0.1.97/255.255.255.255 -permitted;IP.355 = 10.0.1.98/255.255.255.255 -permitted;IP.356 = 10.0.1.99/255.255.255.255 -permitted;IP.357 = 10.0.1.100/255.255.255.255 -permitted;IP.358 = 10.0.1.101/255.255.255.255 -permitted;IP.359 = 10.0.1.102/255.255.255.255 -permitted;IP.360 = 10.0.1.103/255.255.255.255 -permitted;IP.361 = 10.0.1.104/255.255.255.255 -permitted;IP.362 = 10.0.1.105/255.255.255.255 -permitted;IP.363 = 10.0.1.106/255.255.255.255 -permitted;IP.364 = 10.0.1.107/255.255.255.255 -permitted;IP.365 = 10.0.1.108/255.255.255.255 -permitted;IP.366 = 10.0.1.109/255.255.255.255 -permitted;IP.367 = 10.0.1.110/255.255.255.255 -permitted;IP.368 = 10.0.1.111/255.255.255.255 -permitted;IP.369 = 10.0.1.112/255.255.255.255 -permitted;IP.370 = 10.0.1.113/255.255.255.255 -permitted;IP.371 = 10.0.1.114/255.255.255.255 -permitted;IP.372 = 10.0.1.115/255.255.255.255 -permitted;IP.373 = 10.0.1.116/255.255.255.255 -permitted;IP.374 = 10.0.1.117/255.255.255.255 -permitted;IP.375 = 10.0.1.118/255.255.255.255 -permitted;IP.376 = 10.0.1.119/255.255.255.255 -permitted;IP.377 = 10.0.1.120/255.255.255.255 -permitted;IP.378 = 10.0.1.121/255.255.255.255 -permitted;IP.379 = 10.0.1.122/255.255.255.255 -permitted;IP.380 = 10.0.1.123/255.255.255.255 -permitted;IP.381 = 10.0.1.124/255.255.255.255 -permitted;IP.382 = 10.0.1.125/255.255.255.255 -permitted;IP.383 = 10.0.1.126/255.255.255.255 -permitted;IP.384 = 10.0.1.127/255.255.255.255 -permitted;IP.385 = 10.0.1.128/255.255.255.255 -permitted;IP.386 = 10.0.1.129/255.255.255.255 -permitted;IP.387 = 10.0.1.130/255.255.255.255 -permitted;IP.388 = 10.0.1.131/255.255.255.255 -permitted;IP.389 = 10.0.1.132/255.255.255.255 -permitted;IP.390 = 10.0.1.133/255.255.255.255 -permitted;IP.391 = 10.0.1.134/255.255.255.255 -permitted;IP.392 = 10.0.1.135/255.255.255.255 -permitted;IP.393 = 10.0.1.136/255.255.255.255 -permitted;IP.394 = 10.0.1.137/255.255.255.255 -permitted;IP.395 = 10.0.1.138/255.255.255.255 -permitted;IP.396 = 10.0.1.139/255.255.255.255 -permitted;IP.397 = 10.0.1.140/255.255.255.255 -permitted;IP.398 = 10.0.1.141/255.255.255.255 -permitted;IP.399 = 10.0.1.142/255.255.255.255 -permitted;IP.400 = 10.0.1.143/255.255.255.255 -permitted;IP.401 = 10.0.1.144/255.255.255.255 -permitted;IP.402 = 10.0.1.145/255.255.255.255 -permitted;IP.403 = 10.0.1.146/255.255.255.255 -permitted;IP.404 = 10.0.1.147/255.255.255.255 -permitted;IP.405 = 10.0.1.148/255.255.255.255 -permitted;IP.406 = 10.0.1.149/255.255.255.255 -permitted;IP.407 = 10.0.1.150/255.255.255.255 -permitted;IP.408 = 10.0.1.151/255.255.255.255 -permitted;IP.409 = 10.0.1.152/255.255.255.255 -permitted;IP.410 = 10.0.1.153/255.255.255.255 -permitted;IP.411 = 10.0.1.154/255.255.255.255 -permitted;IP.412 = 10.0.1.155/255.255.255.255 -permitted;IP.413 = 10.0.1.156/255.255.255.255 -permitted;IP.414 = 10.0.1.157/255.255.255.255 -permitted;IP.415 = 10.0.1.158/255.255.255.255 -permitted;IP.416 = 10.0.1.159/255.255.255.255 -permitted;IP.417 = 10.0.1.160/255.255.255.255 -permitted;IP.418 = 10.0.1.161/255.255.255.255 -permitted;IP.419 = 10.0.1.162/255.255.255.255 -permitted;IP.420 = 10.0.1.163/255.255.255.255 -permitted;IP.421 = 10.0.1.164/255.255.255.255 -permitted;IP.422 = 10.0.1.165/255.255.255.255 -permitted;IP.423 = 10.0.1.166/255.255.255.255 -permitted;IP.424 = 10.0.1.167/255.255.255.255 -permitted;IP.425 = 10.0.1.168/255.255.255.255 -permitted;IP.426 = 10.0.1.169/255.255.255.255 -permitted;IP.427 = 10.0.1.170/255.255.255.255 -permitted;IP.428 = 10.0.1.171/255.255.255.255 -permitted;IP.429 = 10.0.1.172/255.255.255.255 -permitted;IP.430 = 10.0.1.173/255.255.255.255 -permitted;IP.431 = 10.0.1.174/255.255.255.255 -permitted;IP.432 = 10.0.1.175/255.255.255.255 -permitted;IP.433 = 10.0.1.176/255.255.255.255 -permitted;IP.434 = 10.0.1.177/255.255.255.255 -permitted;IP.435 = 10.0.1.178/255.255.255.255 -permitted;IP.436 = 10.0.1.179/255.255.255.255 -permitted;IP.437 = 10.0.1.180/255.255.255.255 -permitted;IP.438 = 10.0.1.181/255.255.255.255 -permitted;IP.439 = 10.0.1.182/255.255.255.255 -permitted;IP.440 = 10.0.1.183/255.255.255.255 -permitted;IP.441 = 10.0.1.184/255.255.255.255 -permitted;IP.442 = 10.0.1.185/255.255.255.255 -permitted;IP.443 = 10.0.1.186/255.255.255.255 -permitted;IP.444 = 10.0.1.187/255.255.255.255 -permitted;IP.445 = 10.0.1.188/255.255.255.255 -permitted;IP.446 = 10.0.1.189/255.255.255.255 -permitted;IP.447 = 10.0.1.190/255.255.255.255 -permitted;IP.448 = 10.0.1.191/255.255.255.255 -permitted;IP.449 = 10.0.1.192/255.255.255.255 -permitted;IP.450 = 10.0.1.193/255.255.255.255 -permitted;IP.451 = 10.0.1.194/255.255.255.255 -permitted;IP.452 = 10.0.1.195/255.255.255.255 -permitted;IP.453 = 10.0.1.196/255.255.255.255 -permitted;IP.454 = 10.0.1.197/255.255.255.255 -permitted;IP.455 = 10.0.1.198/255.255.255.255 -permitted;IP.456 = 10.0.1.199/255.255.255.255 -permitted;IP.457 = 10.0.1.200/255.255.255.255 -permitted;IP.458 = 10.0.1.201/255.255.255.255 -permitted;IP.459 = 10.0.1.202/255.255.255.255 -permitted;IP.460 = 10.0.1.203/255.255.255.255 -permitted;IP.461 = 10.0.1.204/255.255.255.255 -permitted;IP.462 = 10.0.1.205/255.255.255.255 -permitted;IP.463 = 10.0.1.206/255.255.255.255 -permitted;IP.464 = 10.0.1.207/255.255.255.255 -permitted;IP.465 = 10.0.1.208/255.255.255.255 -permitted;IP.466 = 10.0.1.209/255.255.255.255 -permitted;IP.467 = 10.0.1.210/255.255.255.255 -permitted;IP.468 = 10.0.1.211/255.255.255.255 -permitted;IP.469 = 10.0.1.212/255.255.255.255 -permitted;IP.470 = 10.0.1.213/255.255.255.255 -permitted;IP.471 = 10.0.1.214/255.255.255.255 -permitted;IP.472 = 10.0.1.215/255.255.255.255 -permitted;IP.473 = 10.0.1.216/255.255.255.255 -permitted;IP.474 = 10.0.1.217/255.255.255.255 -permitted;IP.475 = 10.0.1.218/255.255.255.255 -permitted;IP.476 = 10.0.1.219/255.255.255.255 -permitted;IP.477 = 10.0.1.220/255.255.255.255 -permitted;IP.478 = 10.0.1.221/255.255.255.255 -permitted;IP.479 = 10.0.1.222/255.255.255.255 -permitted;IP.480 = 10.0.1.223/255.255.255.255 -permitted;IP.481 = 10.0.1.224/255.255.255.255 -permitted;IP.482 = 10.0.1.225/255.255.255.255 -permitted;IP.483 = 10.0.1.226/255.255.255.255 -permitted;IP.484 = 10.0.1.227/255.255.255.255 -permitted;IP.485 = 10.0.1.228/255.255.255.255 -permitted;IP.486 = 10.0.1.229/255.255.255.255 -permitted;IP.487 = 10.0.1.230/255.255.255.255 -permitted;IP.488 = 10.0.1.231/255.255.255.255 -permitted;IP.489 = 10.0.1.232/255.255.255.255 -permitted;IP.490 = 10.0.1.233/255.255.255.255 -permitted;IP.491 = 10.0.1.234/255.255.255.255 -permitted;IP.492 = 10.0.1.235/255.255.255.255 -permitted;IP.493 = 10.0.1.236/255.255.255.255 -permitted;IP.494 = 10.0.1.237/255.255.255.255 -permitted;IP.495 = 10.0.1.238/255.255.255.255 -permitted;IP.496 = 10.0.1.239/255.255.255.255 -permitted;IP.497 = 10.0.1.240/255.255.255.255 -permitted;IP.498 = 10.0.1.241/255.255.255.255 -permitted;IP.499 = 10.0.1.242/255.255.255.255 -permitted;IP.500 = 10.0.1.243/255.255.255.255 -permitted;IP.501 = 10.0.1.244/255.255.255.255 -permitted;IP.502 = 10.0.1.245/255.255.255.255 -permitted;IP.503 = 10.0.1.246/255.255.255.255 -permitted;IP.504 = 10.0.1.247/255.255.255.255 -permitted;IP.505 = 10.0.1.248/255.255.255.255 -permitted;IP.506 = 10.0.1.249/255.255.255.255 -permitted;IP.507 = 10.0.1.250/255.255.255.255 -permitted;IP.508 = 10.0.1.251/255.255.255.255 -permitted;IP.509 = 10.0.1.252/255.255.255.255 -permitted;IP.510 = 10.0.1.253/255.255.255.255 -permitted;IP.511 = 10.0.1.254/255.255.255.255 -permitted;IP.512 = 10.0.1.255/255.255.255.255 -permitted;IP.513 = 10.0.2.0/255.255.255.255 -permitted;IP.514 = 10.0.2.1/255.255.255.255 -permitted;IP.515 = 10.0.2.2/255.255.255.255 -permitted;IP.516 = 10.0.2.3/255.255.255.255 -permitted;IP.517 = 10.0.2.4/255.255.255.255 -permitted;IP.518 = 10.0.2.5/255.255.255.255 -permitted;IP.519 = 10.0.2.6/255.255.255.255 -permitted;IP.520 = 10.0.2.7/255.255.255.255 -permitted;IP.521 = 10.0.2.8/255.255.255.255 -permitted;IP.522 = 10.0.2.9/255.255.255.255 -permitted;IP.523 = 10.0.2.10/255.255.255.255 -permitted;IP.524 = 10.0.2.11/255.255.255.255 -permitted;IP.525 = 10.0.2.12/255.255.255.255 -permitted;IP.526 = 10.0.2.13/255.255.255.255 -permitted;IP.527 = 10.0.2.14/255.255.255.255 -permitted;IP.528 = 10.0.2.15/255.255.255.255 -permitted;IP.529 = 10.0.2.16/255.255.255.255 -permitted;IP.530 = 10.0.2.17/255.255.255.255 -permitted;IP.531 = 10.0.2.18/255.255.255.255 -permitted;IP.532 = 10.0.2.19/255.255.255.255 -permitted;IP.533 = 10.0.2.20/255.255.255.255 -permitted;IP.534 = 10.0.2.21/255.255.255.255 -permitted;IP.535 = 10.0.2.22/255.255.255.255 -permitted;IP.536 = 10.0.2.23/255.255.255.255 -permitted;IP.537 = 10.0.2.24/255.255.255.255 -permitted;IP.538 = 10.0.2.25/255.255.255.255 -permitted;IP.539 = 10.0.2.26/255.255.255.255 -permitted;IP.540 = 10.0.2.27/255.255.255.255 -permitted;IP.541 = 10.0.2.28/255.255.255.255 -permitted;IP.542 = 10.0.2.29/255.255.255.255 -permitted;IP.543 = 10.0.2.30/255.255.255.255 -permitted;IP.544 = 10.0.2.31/255.255.255.255 -permitted;IP.545 = 10.0.2.32/255.255.255.255 -permitted;IP.546 = 10.0.2.33/255.255.255.255 -permitted;IP.547 = 10.0.2.34/255.255.255.255 -permitted;IP.548 = 10.0.2.35/255.255.255.255 -permitted;IP.549 = 10.0.2.36/255.255.255.255 -permitted;IP.550 = 10.0.2.37/255.255.255.255 -permitted;IP.551 = 10.0.2.38/255.255.255.255 -permitted;IP.552 = 10.0.2.39/255.255.255.255 -permitted;IP.553 = 10.0.2.40/255.255.255.255 -permitted;IP.554 = 10.0.2.41/255.255.255.255 -permitted;IP.555 = 10.0.2.42/255.255.255.255 -permitted;IP.556 = 10.0.2.43/255.255.255.255 -permitted;IP.557 = 10.0.2.44/255.255.255.255 -permitted;IP.558 = 10.0.2.45/255.255.255.255 -permitted;IP.559 = 10.0.2.46/255.255.255.255 -permitted;IP.560 = 10.0.2.47/255.255.255.255 -permitted;IP.561 = 10.0.2.48/255.255.255.255 -permitted;IP.562 = 10.0.2.49/255.255.255.255 -permitted;IP.563 = 10.0.2.50/255.255.255.255 -permitted;IP.564 = 10.0.2.51/255.255.255.255 -permitted;IP.565 = 10.0.2.52/255.255.255.255 -permitted;IP.566 = 10.0.2.53/255.255.255.255 -permitted;IP.567 = 10.0.2.54/255.255.255.255 -permitted;IP.568 = 10.0.2.55/255.255.255.255 -permitted;IP.569 = 10.0.2.56/255.255.255.255 -permitted;IP.570 = 10.0.2.57/255.255.255.255 -permitted;IP.571 = 10.0.2.58/255.255.255.255 -permitted;IP.572 = 10.0.2.59/255.255.255.255 -permitted;IP.573 = 10.0.2.60/255.255.255.255 -permitted;IP.574 = 10.0.2.61/255.255.255.255 -permitted;IP.575 = 10.0.2.62/255.255.255.255 -permitted;IP.576 = 10.0.2.63/255.255.255.255 -permitted;IP.577 = 10.0.2.64/255.255.255.255 -permitted;IP.578 = 10.0.2.65/255.255.255.255 -permitted;IP.579 = 10.0.2.66/255.255.255.255 -permitted;IP.580 = 10.0.2.67/255.255.255.255 -permitted;IP.581 = 10.0.2.68/255.255.255.255 -permitted;IP.582 = 10.0.2.69/255.255.255.255 -permitted;IP.583 = 10.0.2.70/255.255.255.255 -permitted;IP.584 = 10.0.2.71/255.255.255.255 -permitted;IP.585 = 10.0.2.72/255.255.255.255 -permitted;IP.586 = 10.0.2.73/255.255.255.255 -permitted;IP.587 = 10.0.2.74/255.255.255.255 -permitted;IP.588 = 10.0.2.75/255.255.255.255 -permitted;IP.589 = 10.0.2.76/255.255.255.255 -permitted;IP.590 = 10.0.2.77/255.255.255.255 -permitted;IP.591 = 10.0.2.78/255.255.255.255 -permitted;IP.592 = 10.0.2.79/255.255.255.255 -permitted;IP.593 = 10.0.2.80/255.255.255.255 -permitted;IP.594 = 10.0.2.81/255.255.255.255 -permitted;IP.595 = 10.0.2.82/255.255.255.255 -permitted;IP.596 = 10.0.2.83/255.255.255.255 -permitted;IP.597 = 10.0.2.84/255.255.255.255 -permitted;IP.598 = 10.0.2.85/255.255.255.255 -permitted;IP.599 = 10.0.2.86/255.255.255.255 -permitted;IP.600 = 10.0.2.87/255.255.255.255 -permitted;IP.601 = 10.0.2.88/255.255.255.255 -permitted;IP.602 = 10.0.2.89/255.255.255.255 -permitted;IP.603 = 10.0.2.90/255.255.255.255 -permitted;IP.604 = 10.0.2.91/255.255.255.255 -permitted;IP.605 = 10.0.2.92/255.255.255.255 -permitted;IP.606 = 10.0.2.93/255.255.255.255 -permitted;IP.607 = 10.0.2.94/255.255.255.255 -permitted;IP.608 = 10.0.2.95/255.255.255.255 -permitted;IP.609 = 10.0.2.96/255.255.255.255 -permitted;IP.610 = 10.0.2.97/255.255.255.255 -permitted;IP.611 = 10.0.2.98/255.255.255.255 -permitted;IP.612 = 10.0.2.99/255.255.255.255 -permitted;IP.613 = 10.0.2.100/255.255.255.255 -permitted;IP.614 = 10.0.2.101/255.255.255.255 -permitted;IP.615 = 10.0.2.102/255.255.255.255 -permitted;IP.616 = 10.0.2.103/255.255.255.255 -permitted;IP.617 = 10.0.2.104/255.255.255.255 -permitted;IP.618 = 10.0.2.105/255.255.255.255 -permitted;IP.619 = 10.0.2.106/255.255.255.255 -permitted;IP.620 = 10.0.2.107/255.255.255.255 -permitted;IP.621 = 10.0.2.108/255.255.255.255 -permitted;IP.622 = 10.0.2.109/255.255.255.255 -permitted;IP.623 = 10.0.2.110/255.255.255.255 -permitted;IP.624 = 10.0.2.111/255.255.255.255 -permitted;IP.625 = 10.0.2.112/255.255.255.255 -permitted;IP.626 = 10.0.2.113/255.255.255.255 -permitted;IP.627 = 10.0.2.114/255.255.255.255 -permitted;IP.628 = 10.0.2.115/255.255.255.255 -permitted;IP.629 = 10.0.2.116/255.255.255.255 -permitted;IP.630 = 10.0.2.117/255.255.255.255 -permitted;IP.631 = 10.0.2.118/255.255.255.255 -permitted;IP.632 = 10.0.2.119/255.255.255.255 -permitted;IP.633 = 10.0.2.120/255.255.255.255 -permitted;IP.634 = 10.0.2.121/255.255.255.255 -permitted;IP.635 = 10.0.2.122/255.255.255.255 -permitted;IP.636 = 10.0.2.123/255.255.255.255 -permitted;IP.637 = 10.0.2.124/255.255.255.255 -permitted;IP.638 = 10.0.2.125/255.255.255.255 -permitted;IP.639 = 10.0.2.126/255.255.255.255 -permitted;IP.640 = 10.0.2.127/255.255.255.255 -permitted;IP.641 = 10.0.2.128/255.255.255.255 -permitted;IP.642 = 10.0.2.129/255.255.255.255 -permitted;IP.643 = 10.0.2.130/255.255.255.255 -permitted;IP.644 = 10.0.2.131/255.255.255.255 -permitted;IP.645 = 10.0.2.132/255.255.255.255 -permitted;IP.646 = 10.0.2.133/255.255.255.255 -permitted;IP.647 = 10.0.2.134/255.255.255.255 -permitted;IP.648 = 10.0.2.135/255.255.255.255 -permitted;IP.649 = 10.0.2.136/255.255.255.255 -permitted;IP.650 = 10.0.2.137/255.255.255.255 -permitted;IP.651 = 10.0.2.138/255.255.255.255 -permitted;IP.652 = 10.0.2.139/255.255.255.255 -permitted;IP.653 = 10.0.2.140/255.255.255.255 -permitted;IP.654 = 10.0.2.141/255.255.255.255 -permitted;IP.655 = 10.0.2.142/255.255.255.255 -permitted;IP.656 = 10.0.2.143/255.255.255.255 -permitted;IP.657 = 10.0.2.144/255.255.255.255 -permitted;IP.658 = 10.0.2.145/255.255.255.255 -permitted;IP.659 = 10.0.2.146/255.255.255.255 -permitted;IP.660 = 10.0.2.147/255.255.255.255 -permitted;IP.661 = 10.0.2.148/255.255.255.255 -permitted;IP.662 = 10.0.2.149/255.255.255.255 -permitted;IP.663 = 10.0.2.150/255.255.255.255 -permitted;IP.664 = 10.0.2.151/255.255.255.255 -permitted;IP.665 = 10.0.2.152/255.255.255.255 -permitted;IP.666 = 10.0.2.153/255.255.255.255 -permitted;IP.667 = 10.0.2.154/255.255.255.255 -permitted;IP.668 = 10.0.2.155/255.255.255.255 -permitted;IP.669 = 10.0.2.156/255.255.255.255 -permitted;IP.670 = 10.0.2.157/255.255.255.255 -permitted;IP.671 = 10.0.2.158/255.255.255.255 -permitted;IP.672 = 10.0.2.159/255.255.255.255 -permitted;IP.673 = 10.0.2.160/255.255.255.255 -permitted;IP.674 = 10.0.2.161/255.255.255.255 -permitted;IP.675 = 10.0.2.162/255.255.255.255 -permitted;IP.676 = 10.0.2.163/255.255.255.255 -permitted;IP.677 = 10.0.2.164/255.255.255.255 -permitted;IP.678 = 10.0.2.165/255.255.255.255 -permitted;IP.679 = 10.0.2.166/255.255.255.255 -permitted;IP.680 = 10.0.2.167/255.255.255.255 -permitted;IP.681 = 10.0.2.168/255.255.255.255 -permitted;IP.682 = 10.0.2.169/255.255.255.255 -permitted;IP.683 = 10.0.2.170/255.255.255.255 -permitted;IP.684 = 10.0.2.171/255.255.255.255 -permitted;IP.685 = 10.0.2.172/255.255.255.255 -permitted;IP.686 = 10.0.2.173/255.255.255.255 -permitted;IP.687 = 10.0.2.174/255.255.255.255 -permitted;IP.688 = 10.0.2.175/255.255.255.255 -permitted;IP.689 = 10.0.2.176/255.255.255.255 -permitted;IP.690 = 10.0.2.177/255.255.255.255 -permitted;IP.691 = 10.0.2.178/255.255.255.255 -permitted;IP.692 = 10.0.2.179/255.255.255.255 -permitted;IP.693 = 10.0.2.180/255.255.255.255 -permitted;IP.694 = 10.0.2.181/255.255.255.255 -permitted;IP.695 = 10.0.2.182/255.255.255.255 -permitted;IP.696 = 10.0.2.183/255.255.255.255 -permitted;IP.697 = 10.0.2.184/255.255.255.255 -permitted;IP.698 = 10.0.2.185/255.255.255.255 -permitted;IP.699 = 10.0.2.186/255.255.255.255 -permitted;IP.700 = 10.0.2.187/255.255.255.255 -permitted;IP.701 = 10.0.2.188/255.255.255.255 -permitted;IP.702 = 10.0.2.189/255.255.255.255 -permitted;IP.703 = 10.0.2.190/255.255.255.255 -permitted;IP.704 = 10.0.2.191/255.255.255.255 -permitted;IP.705 = 10.0.2.192/255.255.255.255 -permitted;IP.706 = 10.0.2.193/255.255.255.255 -permitted;IP.707 = 10.0.2.194/255.255.255.255 -permitted;IP.708 = 10.0.2.195/255.255.255.255 -permitted;IP.709 = 10.0.2.196/255.255.255.255 -permitted;IP.710 = 10.0.2.197/255.255.255.255 -permitted;IP.711 = 10.0.2.198/255.255.255.255 -permitted;IP.712 = 10.0.2.199/255.255.255.255 -permitted;IP.713 = 10.0.2.200/255.255.255.255 -permitted;IP.714 = 10.0.2.201/255.255.255.255 -permitted;IP.715 = 10.0.2.202/255.255.255.255 -permitted;IP.716 = 10.0.2.203/255.255.255.255 -permitted;IP.717 = 10.0.2.204/255.255.255.255 -permitted;IP.718 = 10.0.2.205/255.255.255.255 -permitted;IP.719 = 10.0.2.206/255.255.255.255 -permitted;IP.720 = 10.0.2.207/255.255.255.255 -permitted;IP.721 = 10.0.2.208/255.255.255.255 -permitted;IP.722 = 10.0.2.209/255.255.255.255 -permitted;IP.723 = 10.0.2.210/255.255.255.255 -permitted;IP.724 = 10.0.2.211/255.255.255.255 -permitted;IP.725 = 10.0.2.212/255.255.255.255 -permitted;IP.726 = 10.0.2.213/255.255.255.255 -permitted;IP.727 = 10.0.2.214/255.255.255.255 -permitted;IP.728 = 10.0.2.215/255.255.255.255 -permitted;IP.729 = 10.0.2.216/255.255.255.255 -permitted;IP.730 = 10.0.2.217/255.255.255.255 -permitted;IP.731 = 10.0.2.218/255.255.255.255 -permitted;IP.732 = 10.0.2.219/255.255.255.255 -permitted;IP.733 = 10.0.2.220/255.255.255.255 -permitted;IP.734 = 10.0.2.221/255.255.255.255 -permitted;IP.735 = 10.0.2.222/255.255.255.255 -permitted;IP.736 = 10.0.2.223/255.255.255.255 -permitted;IP.737 = 10.0.2.224/255.255.255.255 -permitted;IP.738 = 10.0.2.225/255.255.255.255 -permitted;IP.739 = 10.0.2.226/255.255.255.255 -permitted;IP.740 = 10.0.2.227/255.255.255.255 -permitted;IP.741 = 10.0.2.228/255.255.255.255 -permitted;IP.742 = 10.0.2.229/255.255.255.255 -permitted;IP.743 = 10.0.2.230/255.255.255.255 -permitted;IP.744 = 10.0.2.231/255.255.255.255 -permitted;IP.745 = 10.0.2.232/255.255.255.255 -permitted;IP.746 = 10.0.2.233/255.255.255.255 -permitted;IP.747 = 10.0.2.234/255.255.255.255 -permitted;IP.748 = 10.0.2.235/255.255.255.255 -permitted;IP.749 = 10.0.2.236/255.255.255.255 -permitted;IP.750 = 10.0.2.237/255.255.255.255 -permitted;IP.751 = 10.0.2.238/255.255.255.255 -permitted;IP.752 = 10.0.2.239/255.255.255.255 -permitted;IP.753 = 10.0.2.240/255.255.255.255 -permitted;IP.754 = 10.0.2.241/255.255.255.255 -permitted;IP.755 = 10.0.2.242/255.255.255.255 -permitted;IP.756 = 10.0.2.243/255.255.255.255 -permitted;IP.757 = 10.0.2.244/255.255.255.255 -permitted;IP.758 = 10.0.2.245/255.255.255.255 -permitted;IP.759 = 10.0.2.246/255.255.255.255 -permitted;IP.760 = 10.0.2.247/255.255.255.255 -permitted;IP.761 = 10.0.2.248/255.255.255.255 -permitted;IP.762 = 10.0.2.249/255.255.255.255 -permitted;IP.763 = 10.0.2.250/255.255.255.255 -permitted;IP.764 = 10.0.2.251/255.255.255.255 -permitted;IP.765 = 10.0.2.252/255.255.255.255 -permitted;IP.766 = 10.0.2.253/255.255.255.255 -permitted;IP.767 = 10.0.2.254/255.255.255.255 -permitted;IP.768 = 10.0.2.255/255.255.255.255 -permitted;IP.769 = 10.0.3.0/255.255.255.255 -permitted;IP.770 = 10.0.3.1/255.255.255.255 -permitted;IP.771 = 10.0.3.2/255.255.255.255 -permitted;IP.772 = 10.0.3.3/255.255.255.255 -permitted;IP.773 = 10.0.3.4/255.255.255.255 -permitted;IP.774 = 10.0.3.5/255.255.255.255 -permitted;IP.775 = 10.0.3.6/255.255.255.255 -permitted;IP.776 = 10.0.3.7/255.255.255.255 -permitted;IP.777 = 10.0.3.8/255.255.255.255 -permitted;IP.778 = 10.0.3.9/255.255.255.255 -permitted;IP.779 = 10.0.3.10/255.255.255.255 -permitted;IP.780 = 10.0.3.11/255.255.255.255 -permitted;IP.781 = 10.0.3.12/255.255.255.255 -permitted;IP.782 = 10.0.3.13/255.255.255.255 -permitted;IP.783 = 10.0.3.14/255.255.255.255 -permitted;IP.784 = 10.0.3.15/255.255.255.255 -permitted;IP.785 = 10.0.3.16/255.255.255.255 -permitted;IP.786 = 10.0.3.17/255.255.255.255 -permitted;IP.787 = 10.0.3.18/255.255.255.255 -permitted;IP.788 = 10.0.3.19/255.255.255.255 -permitted;IP.789 = 10.0.3.20/255.255.255.255 -permitted;IP.790 = 10.0.3.21/255.255.255.255 -permitted;IP.791 = 10.0.3.22/255.255.255.255 -permitted;IP.792 = 10.0.3.23/255.255.255.255 -permitted;IP.793 = 10.0.3.24/255.255.255.255 -permitted;IP.794 = 10.0.3.25/255.255.255.255 -permitted;IP.795 = 10.0.3.26/255.255.255.255 -permitted;IP.796 = 10.0.3.27/255.255.255.255 -permitted;IP.797 = 10.0.3.28/255.255.255.255 -permitted;IP.798 = 10.0.3.29/255.255.255.255 -permitted;IP.799 = 10.0.3.30/255.255.255.255 -permitted;IP.800 = 10.0.3.31/255.255.255.255 -permitted;IP.801 = 10.0.3.32/255.255.255.255 -permitted;IP.802 = 10.0.3.33/255.255.255.255 -permitted;IP.803 = 10.0.3.34/255.255.255.255 -permitted;IP.804 = 10.0.3.35/255.255.255.255 -permitted;IP.805 = 10.0.3.36/255.255.255.255 -permitted;IP.806 = 10.0.3.37/255.255.255.255 -permitted;IP.807 = 10.0.3.38/255.255.255.255 -permitted;IP.808 = 10.0.3.39/255.255.255.255 -permitted;IP.809 = 10.0.3.40/255.255.255.255 -permitted;IP.810 = 10.0.3.41/255.255.255.255 -permitted;IP.811 = 10.0.3.42/255.255.255.255 -permitted;IP.812 = 10.0.3.43/255.255.255.255 -permitted;IP.813 = 10.0.3.44/255.255.255.255 -permitted;IP.814 = 10.0.3.45/255.255.255.255 -permitted;IP.815 = 10.0.3.46/255.255.255.255 -permitted;IP.816 = 10.0.3.47/255.255.255.255 -permitted;IP.817 = 10.0.3.48/255.255.255.255 -permitted;IP.818 = 10.0.3.49/255.255.255.255 -permitted;IP.819 = 10.0.3.50/255.255.255.255 -permitted;IP.820 = 10.0.3.51/255.255.255.255 -permitted;IP.821 = 10.0.3.52/255.255.255.255 -permitted;IP.822 = 10.0.3.53/255.255.255.255 -permitted;IP.823 = 10.0.3.54/255.255.255.255 -permitted;IP.824 = 10.0.3.55/255.255.255.255 -permitted;IP.825 = 10.0.3.56/255.255.255.255 -permitted;IP.826 = 10.0.3.57/255.255.255.255 -permitted;IP.827 = 10.0.3.58/255.255.255.255 -permitted;IP.828 = 10.0.3.59/255.255.255.255 -permitted;IP.829 = 10.0.3.60/255.255.255.255 -permitted;IP.830 = 10.0.3.61/255.255.255.255 -permitted;IP.831 = 10.0.3.62/255.255.255.255 -permitted;IP.832 = 10.0.3.63/255.255.255.255 -permitted;IP.833 = 10.0.3.64/255.255.255.255 -permitted;IP.834 = 10.0.3.65/255.255.255.255 -permitted;IP.835 = 10.0.3.66/255.255.255.255 -permitted;IP.836 = 10.0.3.67/255.255.255.255 -permitted;IP.837 = 10.0.3.68/255.255.255.255 -permitted;IP.838 = 10.0.3.69/255.255.255.255 -permitted;IP.839 = 10.0.3.70/255.255.255.255 -permitted;IP.840 = 10.0.3.71/255.255.255.255 -permitted;IP.841 = 10.0.3.72/255.255.255.255 -permitted;IP.842 = 10.0.3.73/255.255.255.255 -permitted;IP.843 = 10.0.3.74/255.255.255.255 -permitted;IP.844 = 10.0.3.75/255.255.255.255 -permitted;IP.845 = 10.0.3.76/255.255.255.255 -permitted;IP.846 = 10.0.3.77/255.255.255.255 -permitted;IP.847 = 10.0.3.78/255.255.255.255 -permitted;IP.848 = 10.0.3.79/255.255.255.255 -permitted;IP.849 = 10.0.3.80/255.255.255.255 -permitted;IP.850 = 10.0.3.81/255.255.255.255 -permitted;IP.851 = 10.0.3.82/255.255.255.255 -permitted;IP.852 = 10.0.3.83/255.255.255.255 -permitted;IP.853 = 10.0.3.84/255.255.255.255 -permitted;IP.854 = 10.0.3.85/255.255.255.255 -permitted;IP.855 = 10.0.3.86/255.255.255.255 -permitted;IP.856 = 10.0.3.87/255.255.255.255 -permitted;IP.857 = 10.0.3.88/255.255.255.255 -permitted;IP.858 = 10.0.3.89/255.255.255.255 -permitted;IP.859 = 10.0.3.90/255.255.255.255 -permitted;IP.860 = 10.0.3.91/255.255.255.255 -permitted;IP.861 = 10.0.3.92/255.255.255.255 -permitted;IP.862 = 10.0.3.93/255.255.255.255 -permitted;IP.863 = 10.0.3.94/255.255.255.255 -permitted;IP.864 = 10.0.3.95/255.255.255.255 -permitted;IP.865 = 10.0.3.96/255.255.255.255 -permitted;IP.866 = 10.0.3.97/255.255.255.255 -permitted;IP.867 = 10.0.3.98/255.255.255.255 -permitted;IP.868 = 10.0.3.99/255.255.255.255 -permitted;IP.869 = 10.0.3.100/255.255.255.255 -permitted;IP.870 = 10.0.3.101/255.255.255.255 -permitted;IP.871 = 10.0.3.102/255.255.255.255 -permitted;IP.872 = 10.0.3.103/255.255.255.255 -permitted;IP.873 = 10.0.3.104/255.255.255.255 -permitted;IP.874 = 10.0.3.105/255.255.255.255 -permitted;IP.875 = 10.0.3.106/255.255.255.255 -permitted;IP.876 = 10.0.3.107/255.255.255.255 -permitted;IP.877 = 10.0.3.108/255.255.255.255 -permitted;IP.878 = 10.0.3.109/255.255.255.255 -permitted;IP.879 = 10.0.3.110/255.255.255.255 -permitted;IP.880 = 10.0.3.111/255.255.255.255 -permitted;IP.881 = 10.0.3.112/255.255.255.255 -permitted;IP.882 = 10.0.3.113/255.255.255.255 -permitted;IP.883 = 10.0.3.114/255.255.255.255 -permitted;IP.884 = 10.0.3.115/255.255.255.255 -permitted;IP.885 = 10.0.3.116/255.255.255.255 -permitted;IP.886 = 10.0.3.117/255.255.255.255 -permitted;IP.887 = 10.0.3.118/255.255.255.255 -permitted;IP.888 = 10.0.3.119/255.255.255.255 -permitted;IP.889 = 10.0.3.120/255.255.255.255 -permitted;IP.890 = 10.0.3.121/255.255.255.255 -permitted;IP.891 = 10.0.3.122/255.255.255.255 -permitted;IP.892 = 10.0.3.123/255.255.255.255 -permitted;IP.893 = 10.0.3.124/255.255.255.255 -permitted;IP.894 = 10.0.3.125/255.255.255.255 -permitted;IP.895 = 10.0.3.126/255.255.255.255 -permitted;IP.896 = 10.0.3.127/255.255.255.255 -permitted;IP.897 = 10.0.3.128/255.255.255.255 -permitted;IP.898 = 10.0.3.129/255.255.255.255 -permitted;IP.899 = 10.0.3.130/255.255.255.255 -permitted;IP.900 = 10.0.3.131/255.255.255.255 -permitted;IP.901 = 10.0.3.132/255.255.255.255 -permitted;IP.902 = 10.0.3.133/255.255.255.255 -permitted;IP.903 = 10.0.3.134/255.255.255.255 -permitted;IP.904 = 10.0.3.135/255.255.255.255 -permitted;IP.905 = 10.0.3.136/255.255.255.255 -permitted;IP.906 = 10.0.3.137/255.255.255.255 -permitted;IP.907 = 10.0.3.138/255.255.255.255 -permitted;IP.908 = 10.0.3.139/255.255.255.255 -permitted;IP.909 = 10.0.3.140/255.255.255.255 -permitted;IP.910 = 10.0.3.141/255.255.255.255 -permitted;IP.911 = 10.0.3.142/255.255.255.255 -permitted;IP.912 = 10.0.3.143/255.255.255.255 -permitted;IP.913 = 10.0.3.144/255.255.255.255 -permitted;IP.914 = 10.0.3.145/255.255.255.255 -permitted;IP.915 = 10.0.3.146/255.255.255.255 -permitted;IP.916 = 10.0.3.147/255.255.255.255 -permitted;IP.917 = 10.0.3.148/255.255.255.255 -permitted;IP.918 = 10.0.3.149/255.255.255.255 -permitted;IP.919 = 10.0.3.150/255.255.255.255 -permitted;IP.920 = 10.0.3.151/255.255.255.255 -permitted;IP.921 = 10.0.3.152/255.255.255.255 -permitted;IP.922 = 10.0.3.153/255.255.255.255 -permitted;IP.923 = 10.0.3.154/255.255.255.255 -permitted;IP.924 = 10.0.3.155/255.255.255.255 -permitted;IP.925 = 10.0.3.156/255.255.255.255 -permitted;IP.926 = 10.0.3.157/255.255.255.255 -permitted;IP.927 = 10.0.3.158/255.255.255.255 -permitted;IP.928 = 10.0.3.159/255.255.255.255 -permitted;IP.929 = 10.0.3.160/255.255.255.255 -permitted;IP.930 = 10.0.3.161/255.255.255.255 -permitted;IP.931 = 10.0.3.162/255.255.255.255 -permitted;IP.932 = 10.0.3.163/255.255.255.255 -permitted;IP.933 = 10.0.3.164/255.255.255.255 -permitted;IP.934 = 10.0.3.165/255.255.255.255 -permitted;IP.935 = 10.0.3.166/255.255.255.255 -permitted;IP.936 = 10.0.3.167/255.255.255.255 -permitted;IP.937 = 10.0.3.168/255.255.255.255 -permitted;IP.938 = 10.0.3.169/255.255.255.255 -permitted;IP.939 = 10.0.3.170/255.255.255.255 -permitted;IP.940 = 10.0.3.171/255.255.255.255 -permitted;IP.941 = 10.0.3.172/255.255.255.255 -permitted;IP.942 = 10.0.3.173/255.255.255.255 -permitted;IP.943 = 10.0.3.174/255.255.255.255 -permitted;IP.944 = 10.0.3.175/255.255.255.255 -permitted;IP.945 = 10.0.3.176/255.255.255.255 -permitted;IP.946 = 10.0.3.177/255.255.255.255 -permitted;IP.947 = 10.0.3.178/255.255.255.255 -permitted;IP.948 = 10.0.3.179/255.255.255.255 -permitted;IP.949 = 10.0.3.180/255.255.255.255 -permitted;IP.950 = 10.0.3.181/255.255.255.255 -permitted;IP.951 = 10.0.3.182/255.255.255.255 -permitted;IP.952 = 10.0.3.183/255.255.255.255 -permitted;IP.953 = 10.0.3.184/255.255.255.255 -permitted;IP.954 = 10.0.3.185/255.255.255.255 -permitted;IP.955 = 10.0.3.186/255.255.255.255 -permitted;IP.956 = 10.0.3.187/255.255.255.255 -permitted;IP.957 = 10.0.3.188/255.255.255.255 -permitted;IP.958 = 10.0.3.189/255.255.255.255 -permitted;IP.959 = 10.0.3.190/255.255.255.255 -permitted;IP.960 = 10.0.3.191/255.255.255.255 -permitted;IP.961 = 10.0.3.192/255.255.255.255 -permitted;IP.962 = 10.0.3.193/255.255.255.255 -permitted;IP.963 = 10.0.3.194/255.255.255.255 -permitted;IP.964 = 10.0.3.195/255.255.255.255 -permitted;IP.965 = 10.0.3.196/255.255.255.255 -permitted;IP.966 = 10.0.3.197/255.255.255.255 -permitted;IP.967 = 10.0.3.198/255.255.255.255 -permitted;IP.968 = 10.0.3.199/255.255.255.255 -permitted;IP.969 = 10.0.3.200/255.255.255.255 -permitted;IP.970 = 10.0.3.201/255.255.255.255 -permitted;IP.971 = 10.0.3.202/255.255.255.255 -permitted;IP.972 = 10.0.3.203/255.255.255.255 -permitted;IP.973 = 10.0.3.204/255.255.255.255 -permitted;IP.974 = 10.0.3.205/255.255.255.255 -permitted;IP.975 = 10.0.3.206/255.255.255.255 -permitted;IP.976 = 10.0.3.207/255.255.255.255 -permitted;IP.977 = 10.0.3.208/255.255.255.255 -permitted;IP.978 = 10.0.3.209/255.255.255.255 -permitted;IP.979 = 10.0.3.210/255.255.255.255 -permitted;IP.980 = 10.0.3.211/255.255.255.255 -permitted;IP.981 = 10.0.3.212/255.255.255.255 -permitted;IP.982 = 10.0.3.213/255.255.255.255 -permitted;IP.983 = 10.0.3.214/255.255.255.255 -permitted;IP.984 = 10.0.3.215/255.255.255.255 -permitted;IP.985 = 10.0.3.216/255.255.255.255 -permitted;IP.986 = 10.0.3.217/255.255.255.255 -permitted;IP.987 = 10.0.3.218/255.255.255.255 -permitted;IP.988 = 10.0.3.219/255.255.255.255 -permitted;IP.989 = 10.0.3.220/255.255.255.255 -permitted;IP.990 = 10.0.3.221/255.255.255.255 -permitted;IP.991 = 10.0.3.222/255.255.255.255 -permitted;IP.992 = 10.0.3.223/255.255.255.255 -permitted;IP.993 = 10.0.3.224/255.255.255.255 -permitted;IP.994 = 10.0.3.225/255.255.255.255 -permitted;IP.995 = 10.0.3.226/255.255.255.255 -permitted;IP.996 = 10.0.3.227/255.255.255.255 -permitted;IP.997 = 10.0.3.228/255.255.255.255 -permitted;IP.998 = 10.0.3.229/255.255.255.255 -permitted;IP.999 = 10.0.3.230/255.255.255.255 -permitted;IP.1000 = 10.0.3.231/255.255.255.255 -permitted;IP.1001 = 10.0.3.232/255.255.255.255 -permitted;IP.1002 = 10.0.3.233/255.255.255.255 -permitted;IP.1003 = 10.0.3.234/255.255.255.255 -permitted;IP.1004 = 10.0.3.235/255.255.255.255 -permitted;IP.1005 = 10.0.3.236/255.255.255.255 -permitted;IP.1006 = 10.0.3.237/255.255.255.255 -permitted;IP.1007 = 10.0.3.238/255.255.255.255 -permitted;IP.1008 = 10.0.3.239/255.255.255.255 -permitted;IP.1009 = 10.0.3.240/255.255.255.255 -permitted;IP.1010 = 10.0.3.241/255.255.255.255 -permitted;IP.1011 = 10.0.3.242/255.255.255.255 -permitted;IP.1012 = 10.0.3.243/255.255.255.255 -permitted;IP.1013 = 10.0.3.244/255.255.255.255 -permitted;IP.1014 = 10.0.3.245/255.255.255.255 -permitted;IP.1015 = 10.0.3.246/255.255.255.255 -permitted;IP.1016 = 10.0.3.247/255.255.255.255 -permitted;IP.1017 = 10.0.3.248/255.255.255.255 -permitted;IP.1018 = 10.0.3.249/255.255.255.255 -permitted;IP.1019 = 10.0.3.250/255.255.255.255 -permitted;IP.1020 = 10.0.3.251/255.255.255.255 -permitted;IP.1021 = 10.0.3.252/255.255.255.255 -permitted;IP.1022 = 10.0.3.253/255.255.255.255 -permitted;IP.1023 = 10.0.3.254/255.255.255.255 -permitted;IP.1024 = 10.0.3.255/255.255.255.255 -permitted;IP.1025 = 10.0.4.0/255.255.255.255 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.csr deleted file mode 100644 index 26f50df068..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.csr +++ /dev/null @@ -1,274 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIy1jCCMb4CAQAwFzEVMBMGA1UEAwwMSW50ZXJtZWRpYXRlMIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzvbBG4X4FRSuiN3JLw043DZmZ5TXTMLqcxL -Ha4GJxiOVbqtEscdMlltwxYg22Kmd4AS4IdYUVXjZn/R4DoiZeVwJqIEBPBd+V9W -yNroD1cod26aoEpTNBpjN6JDqw5KzQcj3VWDRAAMcEHfNWTQxQ5qh9vK/DXV4luv -C6DmdaXS4XJOImMBQXO4lVAs/e3DYbY21IOVYcPgYf/0noroutzR9ontnTBElSf0 -0YvmLxRmVvHa8cwEG3eSpZ9YQAyfDDLWBcJMwMWf5aQwPUzpnQNsTAa25ZW9Ibjm -K6igvwa7QzMZPXsXWfFkTSRnsVEPNa7wcXV5rlsCNAQx42aGZQIDAQABoIIweDCC -MHQGCSqGSIb3DQEJDjGCMGUwgjBhMB0GA1UdDgQWBBSSET+sEZbHZjfPg1ok8Dp3 -rzONfzAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zCCMB0GA1UdHgSC -MBQwgjAQoIIwDDAKhwgKAAAA/////zAKhwgKAAAB/////zAKhwgKAAAC/////zAK -hwgKAAAD/////zAKhwgKAAAE/////zAKhwgKAAAF/////zAKhwgKAAAG/////zAK -hwgKAAAH/////zAKhwgKAAAI/////zAKhwgKAAAJ/////zAKhwgKAAAK/////zAK -hwgKAAAL/////zAKhwgKAAAM/////zAKhwgKAAAN/////zAKhwgKAAAO/////zAK -hwgKAAAP/////zAKhwgKAAAQ/////zAKhwgKAAAR/////zAKhwgKAAAS/////zAK -hwgKAAAT/////zAKhwgKAAAU/////zAKhwgKAAAV/////zAKhwgKAAAW/////zAK -hwgKAAAX/////zAKhwgKAAAY/////zAKhwgKAAAZ/////zAKhwgKAAAa/////zAK -hwgKAAAb/////zAKhwgKAAAc/////zAKhwgKAAAd/////zAKhwgKAAAe/////zAK -hwgKAAAf/////zAKhwgKAAAg/////zAKhwgKAAAh/////zAKhwgKAAAi/////zAK -hwgKAAAj/////zAKhwgKAAAk/////zAKhwgKAAAl/////zAKhwgKAAAm/////zAK -hwgKAAAn/////zAKhwgKAAAo/////zAKhwgKAAAp/////zAKhwgKAAAq/////zAK -hwgKAAAr/////zAKhwgKAAAs/////zAKhwgKAAAt/////zAKhwgKAAAu/////zAK -hwgKAAAv/////zAKhwgKAAAw/////zAKhwgKAAAx/////zAKhwgKAAAy/////zAK -hwgKAAAz/////zAKhwgKAAA0/////zAKhwgKAAA1/////zAKhwgKAAA2/////zAK -hwgKAAA3/////zAKhwgKAAA4/////zAKhwgKAAA5/////zAKhwgKAAA6/////zAK -hwgKAAA7/////zAKhwgKAAA8/////zAKhwgKAAA9/////zAKhwgKAAA+/////zAK -hwgKAAA//////zAKhwgKAABA/////zAKhwgKAABB/////zAKhwgKAABC/////zAK -hwgKAABD/////zAKhwgKAABE/////zAKhwgKAABF/////zAKhwgKAABG/////zAK -hwgKAABH/////zAKhwgKAABI/////zAKhwgKAABJ/////zAKhwgKAABK/////zAK -hwgKAABL/////zAKhwgKAABM/////zAKhwgKAABN/////zAKhwgKAABO/////zAK -hwgKAABP/////zAKhwgKAABQ/////zAKhwgKAABR/////zAKhwgKAABS/////zAK -hwgKAABT/////zAKhwgKAABU/////zAKhwgKAABV/////zAKhwgKAABW/////zAK -hwgKAABX/////zAKhwgKAABY/////zAKhwgKAABZ/////zAKhwgKAABa/////zAK -hwgKAABb/////zAKhwgKAABc/////zAKhwgKAABd/////zAKhwgKAABe/////zAK -hwgKAABf/////zAKhwgKAABg/////zAKhwgKAABh/////zAKhwgKAABi/////zAK -hwgKAABj/////zAKhwgKAABk/////zAKhwgKAABl/////zAKhwgKAABm/////zAK -hwgKAABn/////zAKhwgKAABo/////zAKhwgKAABp/////zAKhwgKAABq/////zAK -hwgKAABr/////zAKhwgKAABs/////zAKhwgKAABt/////zAKhwgKAABu/////zAK -hwgKAABv/////zAKhwgKAABw/////zAKhwgKAABx/////zAKhwgKAABy/////zAK -hwgKAABz/////zAKhwgKAAB0/////zAKhwgKAAB1/////zAKhwgKAAB2/////zAK -hwgKAAB3/////zAKhwgKAAB4/////zAKhwgKAAB5/////zAKhwgKAAB6/////zAK -hwgKAAB7/////zAKhwgKAAB8/////zAKhwgKAAB9/////zAKhwgKAAB+/////zAK -hwgKAAB//////zAKhwgKAACA/////zAKhwgKAACB/////zAKhwgKAACC/////zAK -hwgKAACD/////zAKhwgKAACE/////zAKhwgKAACF/////zAKhwgKAACG/////zAK -hwgKAACH/////zAKhwgKAACI/////zAKhwgKAACJ/////zAKhwgKAACK/////zAK -hwgKAACL/////zAKhwgKAACM/////zAKhwgKAACN/////zAKhwgKAACO/////zAK -hwgKAACP/////zAKhwgKAACQ/////zAKhwgKAACR/////zAKhwgKAACS/////zAK -hwgKAACT/////zAKhwgKAACU/////zAKhwgKAACV/////zAKhwgKAACW/////zAK -hwgKAACX/////zAKhwgKAACY/////zAKhwgKAACZ/////zAKhwgKAACa/////zAK -hwgKAACb/////zAKhwgKAACc/////zAKhwgKAACd/////zAKhwgKAACe/////zAK -hwgKAACf/////zAKhwgKAACg/////zAKhwgKAACh/////zAKhwgKAACi/////zAK -hwgKAACj/////zAKhwgKAACk/////zAKhwgKAACl/////zAKhwgKAACm/////zAK -hwgKAACn/////zAKhwgKAACo/////zAKhwgKAACp/////zAKhwgKAACq/////zAK -hwgKAACr/////zAKhwgKAACs/////zAKhwgKAACt/////zAKhwgKAACu/////zAK -hwgKAACv/////zAKhwgKAACw/////zAKhwgKAACx/////zAKhwgKAACy/////zAK -hwgKAACz/////zAKhwgKAAC0/////zAKhwgKAAC1/////zAKhwgKAAC2/////zAK -hwgKAAC3/////zAKhwgKAAC4/////zAKhwgKAAC5/////zAKhwgKAAC6/////zAK -hwgKAAC7/////zAKhwgKAAC8/////zAKhwgKAAC9/////zAKhwgKAAC+/////zAK -hwgKAAC//////zAKhwgKAADA/////zAKhwgKAADB/////zAKhwgKAADC/////zAK -hwgKAADD/////zAKhwgKAADE/////zAKhwgKAADF/////zAKhwgKAADG/////zAK -hwgKAADH/////zAKhwgKAADI/////zAKhwgKAADJ/////zAKhwgKAADK/////zAK -hwgKAADL/////zAKhwgKAADM/////zAKhwgKAADN/////zAKhwgKAADO/////zAK -hwgKAADP/////zAKhwgKAADQ/////zAKhwgKAADR/////zAKhwgKAADS/////zAK -hwgKAADT/////zAKhwgKAADU/////zAKhwgKAADV/////zAKhwgKAADW/////zAK -hwgKAADX/////zAKhwgKAADY/////zAKhwgKAADZ/////zAKhwgKAADa/////zAK -hwgKAADb/////zAKhwgKAADc/////zAKhwgKAADd/////zAKhwgKAADe/////zAK -hwgKAADf/////zAKhwgKAADg/////zAKhwgKAADh/////zAKhwgKAADi/////zAK -hwgKAADj/////zAKhwgKAADk/////zAKhwgKAADl/////zAKhwgKAADm/////zAK -hwgKAADn/////zAKhwgKAADo/////zAKhwgKAADp/////zAKhwgKAADq/////zAK -hwgKAADr/////zAKhwgKAADs/////zAKhwgKAADt/////zAKhwgKAADu/////zAK -hwgKAADv/////zAKhwgKAADw/////zAKhwgKAADx/////zAKhwgKAADy/////zAK -hwgKAADz/////zAKhwgKAAD0/////zAKhwgKAAD1/////zAKhwgKAAD2/////zAK -hwgKAAD3/////zAKhwgKAAD4/////zAKhwgKAAD5/////zAKhwgKAAD6/////zAK -hwgKAAD7/////zAKhwgKAAD8/////zAKhwgKAAD9/////zAKhwgKAAD+/////zAK -hwgKAAD//////zAKhwgKAAEA/////zAKhwgKAAEB/////zAKhwgKAAEC/////zAK -hwgKAAED/////zAKhwgKAAEE/////zAKhwgKAAEF/////zAKhwgKAAEG/////zAK -hwgKAAEH/////zAKhwgKAAEI/////zAKhwgKAAEJ/////zAKhwgKAAEK/////zAK -hwgKAAEL/////zAKhwgKAAEM/////zAKhwgKAAEN/////zAKhwgKAAEO/////zAK -hwgKAAEP/////zAKhwgKAAEQ/////zAKhwgKAAER/////zAKhwgKAAES/////zAK -hwgKAAET/////zAKhwgKAAEU/////zAKhwgKAAEV/////zAKhwgKAAEW/////zAK -hwgKAAEX/////zAKhwgKAAEY/////zAKhwgKAAEZ/////zAKhwgKAAEa/////zAK -hwgKAAEb/////zAKhwgKAAEc/////zAKhwgKAAEd/////zAKhwgKAAEe/////zAK -hwgKAAEf/////zAKhwgKAAEg/////zAKhwgKAAEh/////zAKhwgKAAEi/////zAK -hwgKAAEj/////zAKhwgKAAEk/////zAKhwgKAAEl/////zAKhwgKAAEm/////zAK -hwgKAAEn/////zAKhwgKAAEo/////zAKhwgKAAEp/////zAKhwgKAAEq/////zAK -hwgKAAEr/////zAKhwgKAAEs/////zAKhwgKAAEt/////zAKhwgKAAEu/////zAK -hwgKAAEv/////zAKhwgKAAEw/////zAKhwgKAAEx/////zAKhwgKAAEy/////zAK -hwgKAAEz/////zAKhwgKAAE0/////zAKhwgKAAE1/////zAKhwgKAAE2/////zAK -hwgKAAE3/////zAKhwgKAAE4/////zAKhwgKAAE5/////zAKhwgKAAE6/////zAK -hwgKAAE7/////zAKhwgKAAE8/////zAKhwgKAAE9/////zAKhwgKAAE+/////zAK -hwgKAAE//////zAKhwgKAAFA/////zAKhwgKAAFB/////zAKhwgKAAFC/////zAK -hwgKAAFD/////zAKhwgKAAFE/////zAKhwgKAAFF/////zAKhwgKAAFG/////zAK -hwgKAAFH/////zAKhwgKAAFI/////zAKhwgKAAFJ/////zAKhwgKAAFK/////zAK -hwgKAAFL/////zAKhwgKAAFM/////zAKhwgKAAFN/////zAKhwgKAAFO/////zAK -hwgKAAFP/////zAKhwgKAAFQ/////zAKhwgKAAFR/////zAKhwgKAAFS/////zAK -hwgKAAFT/////zAKhwgKAAFU/////zAKhwgKAAFV/////zAKhwgKAAFW/////zAK -hwgKAAFX/////zAKhwgKAAFY/////zAKhwgKAAFZ/////zAKhwgKAAFa/////zAK -hwgKAAFb/////zAKhwgKAAFc/////zAKhwgKAAFd/////zAKhwgKAAFe/////zAK -hwgKAAFf/////zAKhwgKAAFg/////zAKhwgKAAFh/////zAKhwgKAAFi/////zAK -hwgKAAFj/////zAKhwgKAAFk/////zAKhwgKAAFl/////zAKhwgKAAFm/////zAK -hwgKAAFn/////zAKhwgKAAFo/////zAKhwgKAAFp/////zAKhwgKAAFq/////zAK -hwgKAAFr/////zAKhwgKAAFs/////zAKhwgKAAFt/////zAKhwgKAAFu/////zAK -hwgKAAFv/////zAKhwgKAAFw/////zAKhwgKAAFx/////zAKhwgKAAFy/////zAK -hwgKAAFz/////zAKhwgKAAF0/////zAKhwgKAAF1/////zAKhwgKAAF2/////zAK -hwgKAAF3/////zAKhwgKAAF4/////zAKhwgKAAF5/////zAKhwgKAAF6/////zAK -hwgKAAF7/////zAKhwgKAAF8/////zAKhwgKAAF9/////zAKhwgKAAF+/////zAK -hwgKAAF//////zAKhwgKAAGA/////zAKhwgKAAGB/////zAKhwgKAAGC/////zAK -hwgKAAGD/////zAKhwgKAAGE/////zAKhwgKAAGF/////zAKhwgKAAGG/////zAK -hwgKAAGH/////zAKhwgKAAGI/////zAKhwgKAAGJ/////zAKhwgKAAGK/////zAK -hwgKAAGL/////zAKhwgKAAGM/////zAKhwgKAAGN/////zAKhwgKAAGO/////zAK -hwgKAAGP/////zAKhwgKAAGQ/////zAKhwgKAAGR/////zAKhwgKAAGS/////zAK -hwgKAAGT/////zAKhwgKAAGU/////zAKhwgKAAGV/////zAKhwgKAAGW/////zAK -hwgKAAGX/////zAKhwgKAAGY/////zAKhwgKAAGZ/////zAKhwgKAAGa/////zAK -hwgKAAGb/////zAKhwgKAAGc/////zAKhwgKAAGd/////zAKhwgKAAGe/////zAK -hwgKAAGf/////zAKhwgKAAGg/////zAKhwgKAAGh/////zAKhwgKAAGi/////zAK -hwgKAAGj/////zAKhwgKAAGk/////zAKhwgKAAGl/////zAKhwgKAAGm/////zAK -hwgKAAGn/////zAKhwgKAAGo/////zAKhwgKAAGp/////zAKhwgKAAGq/////zAK -hwgKAAGr/////zAKhwgKAAGs/////zAKhwgKAAGt/////zAKhwgKAAGu/////zAK -hwgKAAGv/////zAKhwgKAAGw/////zAKhwgKAAGx/////zAKhwgKAAGy/////zAK -hwgKAAGz/////zAKhwgKAAG0/////zAKhwgKAAG1/////zAKhwgKAAG2/////zAK -hwgKAAG3/////zAKhwgKAAG4/////zAKhwgKAAG5/////zAKhwgKAAG6/////zAK -hwgKAAG7/////zAKhwgKAAG8/////zAKhwgKAAG9/////zAKhwgKAAG+/////zAK -hwgKAAG//////zAKhwgKAAHA/////zAKhwgKAAHB/////zAKhwgKAAHC/////zAK -hwgKAAHD/////zAKhwgKAAHE/////zAKhwgKAAHF/////zAKhwgKAAHG/////zAK -hwgKAAHH/////zAKhwgKAAHI/////zAKhwgKAAHJ/////zAKhwgKAAHK/////zAK -hwgKAAHL/////zAKhwgKAAHM/////zAKhwgKAAHN/////zAKhwgKAAHO/////zAK -hwgKAAHP/////zAKhwgKAAHQ/////zAKhwgKAAHR/////zAKhwgKAAHS/////zAK -hwgKAAHT/////zAKhwgKAAHU/////zAKhwgKAAHV/////zAKhwgKAAHW/////zAK -hwgKAAHX/////zAKhwgKAAHY/////zAKhwgKAAHZ/////zAKhwgKAAHa/////zAK -hwgKAAHb/////zAKhwgKAAHc/////zAKhwgKAAHd/////zAKhwgKAAHe/////zAK -hwgKAAHf/////zAKhwgKAAHg/////zAKhwgKAAHh/////zAKhwgKAAHi/////zAK -hwgKAAHj/////zAKhwgKAAHk/////zAKhwgKAAHl/////zAKhwgKAAHm/////zAK -hwgKAAHn/////zAKhwgKAAHo/////zAKhwgKAAHp/////zAKhwgKAAHq/////zAK -hwgKAAHr/////zAKhwgKAAHs/////zAKhwgKAAHt/////zAKhwgKAAHu/////zAK -hwgKAAHv/////zAKhwgKAAHw/////zAKhwgKAAHx/////zAKhwgKAAHy/////zAK -hwgKAAHz/////zAKhwgKAAH0/////zAKhwgKAAH1/////zAKhwgKAAH2/////zAK -hwgKAAH3/////zAKhwgKAAH4/////zAKhwgKAAH5/////zAKhwgKAAH6/////zAK -hwgKAAH7/////zAKhwgKAAH8/////zAKhwgKAAH9/////zAKhwgKAAH+/////zAK -hwgKAAH//////zAKhwgKAAIA/////zAKhwgKAAIB/////zAKhwgKAAIC/////zAK -hwgKAAID/////zAKhwgKAAIE/////zAKhwgKAAIF/////zAKhwgKAAIG/////zAK -hwgKAAIH/////zAKhwgKAAII/////zAKhwgKAAIJ/////zAKhwgKAAIK/////zAK -hwgKAAIL/////zAKhwgKAAIM/////zAKhwgKAAIN/////zAKhwgKAAIO/////zAK -hwgKAAIP/////zAKhwgKAAIQ/////zAKhwgKAAIR/////zAKhwgKAAIS/////zAK -hwgKAAIT/////zAKhwgKAAIU/////zAKhwgKAAIV/////zAKhwgKAAIW/////zAK -hwgKAAIX/////zAKhwgKAAIY/////zAKhwgKAAIZ/////zAKhwgKAAIa/////zAK -hwgKAAIb/////zAKhwgKAAIc/////zAKhwgKAAId/////zAKhwgKAAIe/////zAK -hwgKAAIf/////zAKhwgKAAIg/////zAKhwgKAAIh/////zAKhwgKAAIi/////zAK -hwgKAAIj/////zAKhwgKAAIk/////zAKhwgKAAIl/////zAKhwgKAAIm/////zAK -hwgKAAIn/////zAKhwgKAAIo/////zAKhwgKAAIp/////zAKhwgKAAIq/////zAK -hwgKAAIr/////zAKhwgKAAIs/////zAKhwgKAAIt/////zAKhwgKAAIu/////zAK -hwgKAAIv/////zAKhwgKAAIw/////zAKhwgKAAIx/////zAKhwgKAAIy/////zAK -hwgKAAIz/////zAKhwgKAAI0/////zAKhwgKAAI1/////zAKhwgKAAI2/////zAK -hwgKAAI3/////zAKhwgKAAI4/////zAKhwgKAAI5/////zAKhwgKAAI6/////zAK -hwgKAAI7/////zAKhwgKAAI8/////zAKhwgKAAI9/////zAKhwgKAAI+/////zAK -hwgKAAI//////zAKhwgKAAJA/////zAKhwgKAAJB/////zAKhwgKAAJC/////zAK -hwgKAAJD/////zAKhwgKAAJE/////zAKhwgKAAJF/////zAKhwgKAAJG/////zAK -hwgKAAJH/////zAKhwgKAAJI/////zAKhwgKAAJJ/////zAKhwgKAAJK/////zAK -hwgKAAJL/////zAKhwgKAAJM/////zAKhwgKAAJN/////zAKhwgKAAJO/////zAK -hwgKAAJP/////zAKhwgKAAJQ/////zAKhwgKAAJR/////zAKhwgKAAJS/////zAK -hwgKAAJT/////zAKhwgKAAJU/////zAKhwgKAAJV/////zAKhwgKAAJW/////zAK -hwgKAAJX/////zAKhwgKAAJY/////zAKhwgKAAJZ/////zAKhwgKAAJa/////zAK -hwgKAAJb/////zAKhwgKAAJc/////zAKhwgKAAJd/////zAKhwgKAAJe/////zAK -hwgKAAJf/////zAKhwgKAAJg/////zAKhwgKAAJh/////zAKhwgKAAJi/////zAK -hwgKAAJj/////zAKhwgKAAJk/////zAKhwgKAAJl/////zAKhwgKAAJm/////zAK -hwgKAAJn/////zAKhwgKAAJo/////zAKhwgKAAJp/////zAKhwgKAAJq/////zAK -hwgKAAJr/////zAKhwgKAAJs/////zAKhwgKAAJt/////zAKhwgKAAJu/////zAK -hwgKAAJv/////zAKhwgKAAJw/////zAKhwgKAAJx/////zAKhwgKAAJy/////zAK -hwgKAAJz/////zAKhwgKAAJ0/////zAKhwgKAAJ1/////zAKhwgKAAJ2/////zAK -hwgKAAJ3/////zAKhwgKAAJ4/////zAKhwgKAAJ5/////zAKhwgKAAJ6/////zAK -hwgKAAJ7/////zAKhwgKAAJ8/////zAKhwgKAAJ9/////zAKhwgKAAJ+/////zAK -hwgKAAJ//////zAKhwgKAAKA/////zAKhwgKAAKB/////zAKhwgKAAKC/////zAK -hwgKAAKD/////zAKhwgKAAKE/////zAKhwgKAAKF/////zAKhwgKAAKG/////zAK -hwgKAAKH/////zAKhwgKAAKI/////zAKhwgKAAKJ/////zAKhwgKAAKK/////zAK -hwgKAAKL/////zAKhwgKAAKM/////zAKhwgKAAKN/////zAKhwgKAAKO/////zAK -hwgKAAKP/////zAKhwgKAAKQ/////zAKhwgKAAKR/////zAKhwgKAAKS/////zAK -hwgKAAKT/////zAKhwgKAAKU/////zAKhwgKAAKV/////zAKhwgKAAKW/////zAK -hwgKAAKX/////zAKhwgKAAKY/////zAKhwgKAAKZ/////zAKhwgKAAKa/////zAK -hwgKAAKb/////zAKhwgKAAKc/////zAKhwgKAAKd/////zAKhwgKAAKe/////zAK -hwgKAAKf/////zAKhwgKAAKg/////zAKhwgKAAKh/////zAKhwgKAAKi/////zAK -hwgKAAKj/////zAKhwgKAAKk/////zAKhwgKAAKl/////zAKhwgKAAKm/////zAK -hwgKAAKn/////zAKhwgKAAKo/////zAKhwgKAAKp/////zAKhwgKAAKq/////zAK -hwgKAAKr/////zAKhwgKAAKs/////zAKhwgKAAKt/////zAKhwgKAAKu/////zAK -hwgKAAKv/////zAKhwgKAAKw/////zAKhwgKAAKx/////zAKhwgKAAKy/////zAK -hwgKAAKz/////zAKhwgKAAK0/////zAKhwgKAAK1/////zAKhwgKAAK2/////zAK -hwgKAAK3/////zAKhwgKAAK4/////zAKhwgKAAK5/////zAKhwgKAAK6/////zAK -hwgKAAK7/////zAKhwgKAAK8/////zAKhwgKAAK9/////zAKhwgKAAK+/////zAK -hwgKAAK//////zAKhwgKAALA/////zAKhwgKAALB/////zAKhwgKAALC/////zAK -hwgKAALD/////zAKhwgKAALE/////zAKhwgKAALF/////zAKhwgKAALG/////zAK -hwgKAALH/////zAKhwgKAALI/////zAKhwgKAALJ/////zAKhwgKAALK/////zAK -hwgKAALL/////zAKhwgKAALM/////zAKhwgKAALN/////zAKhwgKAALO/////zAK -hwgKAALP/////zAKhwgKAALQ/////zAKhwgKAALR/////zAKhwgKAALS/////zAK -hwgKAALT/////zAKhwgKAALU/////zAKhwgKAALV/////zAKhwgKAALW/////zAK -hwgKAALX/////zAKhwgKAALY/////zAKhwgKAALZ/////zAKhwgKAALa/////zAK -hwgKAALb/////zAKhwgKAALc/////zAKhwgKAALd/////zAKhwgKAALe/////zAK -hwgKAALf/////zAKhwgKAALg/////zAKhwgKAALh/////zAKhwgKAALi/////zAK -hwgKAALj/////zAKhwgKAALk/////zAKhwgKAALl/////zAKhwgKAALm/////zAK -hwgKAALn/////zAKhwgKAALo/////zAKhwgKAALp/////zAKhwgKAALq/////zAK -hwgKAALr/////zAKhwgKAALs/////zAKhwgKAALt/////zAKhwgKAALu/////zAK -hwgKAALv/////zAKhwgKAALw/////zAKhwgKAALx/////zAKhwgKAALy/////zAK -hwgKAALz/////zAKhwgKAAL0/////zAKhwgKAAL1/////zAKhwgKAAL2/////zAK -hwgKAAL3/////zAKhwgKAAL4/////zAKhwgKAAL5/////zAKhwgKAAL6/////zAK -hwgKAAL7/////zAKhwgKAAL8/////zAKhwgKAAL9/////zAKhwgKAAL+/////zAK -hwgKAAL//////zAKhwgKAAMA/////zAKhwgKAAMB/////zAKhwgKAAMC/////zAK -hwgKAAMD/////zAKhwgKAAME/////zAKhwgKAAMF/////zAKhwgKAAMG/////zAK -hwgKAAMH/////zAKhwgKAAMI/////zAKhwgKAAMJ/////zAKhwgKAAMK/////zAK -hwgKAAML/////zAKhwgKAAMM/////zAKhwgKAAMN/////zAKhwgKAAMO/////zAK -hwgKAAMP/////zAKhwgKAAMQ/////zAKhwgKAAMR/////zAKhwgKAAMS/////zAK -hwgKAAMT/////zAKhwgKAAMU/////zAKhwgKAAMV/////zAKhwgKAAMW/////zAK -hwgKAAMX/////zAKhwgKAAMY/////zAKhwgKAAMZ/////zAKhwgKAAMa/////zAK -hwgKAAMb/////zAKhwgKAAMc/////zAKhwgKAAMd/////zAKhwgKAAMe/////zAK -hwgKAAMf/////zAKhwgKAAMg/////zAKhwgKAAMh/////zAKhwgKAAMi/////zAK -hwgKAAMj/////zAKhwgKAAMk/////zAKhwgKAAMl/////zAKhwgKAAMm/////zAK -hwgKAAMn/////zAKhwgKAAMo/////zAKhwgKAAMp/////zAKhwgKAAMq/////zAK -hwgKAAMr/////zAKhwgKAAMs/////zAKhwgKAAMt/////zAKhwgKAAMu/////zAK -hwgKAAMv/////zAKhwgKAAMw/////zAKhwgKAAMx/////zAKhwgKAAMy/////zAK -hwgKAAMz/////zAKhwgKAAM0/////zAKhwgKAAM1/////zAKhwgKAAM2/////zAK -hwgKAAM3/////zAKhwgKAAM4/////zAKhwgKAAM5/////zAKhwgKAAM6/////zAK -hwgKAAM7/////zAKhwgKAAM8/////zAKhwgKAAM9/////zAKhwgKAAM+/////zAK -hwgKAAM//////zAKhwgKAANA/////zAKhwgKAANB/////zAKhwgKAANC/////zAK -hwgKAAND/////zAKhwgKAANE/////zAKhwgKAANF/////zAKhwgKAANG/////zAK -hwgKAANH/////zAKhwgKAANI/////zAKhwgKAANJ/////zAKhwgKAANK/////zAK -hwgKAANL/////zAKhwgKAANM/////zAKhwgKAANN/////zAKhwgKAANO/////zAK -hwgKAANP/////zAKhwgKAANQ/////zAKhwgKAANR/////zAKhwgKAANS/////zAK -hwgKAANT/////zAKhwgKAANU/////zAKhwgKAANV/////zAKhwgKAANW/////zAK -hwgKAANX/////zAKhwgKAANY/////zAKhwgKAANZ/////zAKhwgKAANa/////zAK -hwgKAANb/////zAKhwgKAANc/////zAKhwgKAANd/////zAKhwgKAANe/////zAK -hwgKAANf/////zAKhwgKAANg/////zAKhwgKAANh/////zAKhwgKAANi/////zAK -hwgKAANj/////zAKhwgKAANk/////zAKhwgKAANl/////zAKhwgKAANm/////zAK -hwgKAANn/////zAKhwgKAANo/////zAKhwgKAANp/////zAKhwgKAANq/////zAK -hwgKAANr/////zAKhwgKAANs/////zAKhwgKAANt/////zAKhwgKAANu/////zAK -hwgKAANv/////zAKhwgKAANw/////zAKhwgKAANx/////zAKhwgKAANy/////zAK -hwgKAANz/////zAKhwgKAAN0/////zAKhwgKAAN1/////zAKhwgKAAN2/////zAK -hwgKAAN3/////zAKhwgKAAN4/////zAKhwgKAAN5/////zAKhwgKAAN6/////zAK -hwgKAAN7/////zAKhwgKAAN8/////zAKhwgKAAN9/////zAKhwgKAAN+/////zAK -hwgKAAN//////zAKhwgKAAOA/////zAKhwgKAAOB/////zAKhwgKAAOC/////zAK -hwgKAAOD/////zAKhwgKAAOE/////zAKhwgKAAOF/////zAKhwgKAAOG/////zAK -hwgKAAOH/////zAKhwgKAAOI/////zAKhwgKAAOJ/////zAKhwgKAAOK/////zAK -hwgKAAOL/////zAKhwgKAAOM/////zAKhwgKAAON/////zAKhwgKAAOO/////zAK -hwgKAAOP/////zAKhwgKAAOQ/////zAKhwgKAAOR/////zAKhwgKAAOS/////zAK -hwgKAAOT/////zAKhwgKAAOU/////zAKhwgKAAOV/////zAKhwgKAAOW/////zAK -hwgKAAOX/////zAKhwgKAAOY/////zAKhwgKAAOZ/////zAKhwgKAAOa/////zAK -hwgKAAOb/////zAKhwgKAAOc/////zAKhwgKAAOd/////zAKhwgKAAOe/////zAK -hwgKAAOf/////zAKhwgKAAOg/////zAKhwgKAAOh/////zAKhwgKAAOi/////zAK -hwgKAAOj/////zAKhwgKAAOk/////zAKhwgKAAOl/////zAKhwgKAAOm/////zAK -hwgKAAOn/////zAKhwgKAAOo/////zAKhwgKAAOp/////zAKhwgKAAOq/////zAK -hwgKAAOr/////zAKhwgKAAOs/////zAKhwgKAAOt/////zAKhwgKAAOu/////zAK -hwgKAAOv/////zAKhwgKAAOw/////zAKhwgKAAOx/////zAKhwgKAAOy/////zAK -hwgKAAOz/////zAKhwgKAAO0/////zAKhwgKAAO1/////zAKhwgKAAO2/////zAK -hwgKAAO3/////zAKhwgKAAO4/////zAKhwgKAAO5/////zAKhwgKAAO6/////zAK -hwgKAAO7/////zAKhwgKAAO8/////zAKhwgKAAO9/////zAKhwgKAAO+/////zAK -hwgKAAO//////zAKhwgKAAPA/////zAKhwgKAAPB/////zAKhwgKAAPC/////zAK -hwgKAAPD/////zAKhwgKAAPE/////zAKhwgKAAPF/////zAKhwgKAAPG/////zAK -hwgKAAPH/////zAKhwgKAAPI/////zAKhwgKAAPJ/////zAKhwgKAAPK/////zAK -hwgKAAPL/////zAKhwgKAAPM/////zAKhwgKAAPN/////zAKhwgKAAPO/////zAK -hwgKAAPP/////zAKhwgKAAPQ/////zAKhwgKAAPR/////zAKhwgKAAPS/////zAK -hwgKAAPT/////zAKhwgKAAPU/////zAKhwgKAAPV/////zAKhwgKAAPW/////zAK -hwgKAAPX/////zAKhwgKAAPY/////zAKhwgKAAPZ/////zAKhwgKAAPa/////zAK -hwgKAAPb/////zAKhwgKAAPc/////zAKhwgKAAPd/////zAKhwgKAAPe/////zAK -hwgKAAPf/////zAKhwgKAAPg/////zAKhwgKAAPh/////zAKhwgKAAPi/////zAK -hwgKAAPj/////zAKhwgKAAPk/////zAKhwgKAAPl/////zAKhwgKAAPm/////zAK -hwgKAAPn/////zAKhwgKAAPo/////zAKhwgKAAPp/////zAKhwgKAAPq/////zAK -hwgKAAPr/////zAKhwgKAAPs/////zAKhwgKAAPt/////zAKhwgKAAPu/////zAK -hwgKAAPv/////zAKhwgKAAPw/////zAKhwgKAAPx/////zAKhwgKAAPy/////zAK -hwgKAAPz/////zAKhwgKAAP0/////zAKhwgKAAP1/////zAKhwgKAAP2/////zAK -hwgKAAP3/////zAKhwgKAAP4/////zAKhwgKAAP5/////zAKhwgKAAP6/////zAK -hwgKAAP7/////zAKhwgKAAP8/////zAKhwgKAAP9/////zAKhwgKAAP+/////zAK -hwgKAAP//////zAKhwgKAAQA/////zANBgkqhkiG9w0BAQsFAAOCAQEAaH39T2Dt -F1ADYlIKyjl79MiAdWg1kxAAd2a4y8QjtO9z/c5ygxphIadhfEBcNn3bV76eQjov -TgpAMoA5BbgjT4qUW7rgslmxpobNJwcI6HdGMhg+NHv2ndOCbN5pPMhXqH2e89bb -e3HssgsvTy/ReAsJnm0ps4sYDhFTpBAOhttO/Hryv0sQa7aS2bT/5DZwgzfOofFJ -fNo7ot1TjUXybB5oBa1DjEgyksB69KlJN7Q0sK9o4AdFItKzjdVcy5IN8DRnbzKw -9HJcQuYeq1LoNHVuZ4DouYpKgN25CremPkJvNUzjVTCkgtRIdAqPDE+pESn2oUDr -9Suo1r/I0VXDIA== ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.pem deleted file mode 100644 index 30ee03a71f..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_6.pem +++ /dev/null @@ -1,1374 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:fc - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Permitted: - IP:10.0.0.0/255.255.255.255 - IP:10.0.0.1/255.255.255.255 - IP:10.0.0.2/255.255.255.255 - IP:10.0.0.3/255.255.255.255 - IP:10.0.0.4/255.255.255.255 - IP:10.0.0.5/255.255.255.255 - IP:10.0.0.6/255.255.255.255 - IP:10.0.0.7/255.255.255.255 - IP:10.0.0.8/255.255.255.255 - IP:10.0.0.9/255.255.255.255 - IP:10.0.0.10/255.255.255.255 - IP:10.0.0.11/255.255.255.255 - IP:10.0.0.12/255.255.255.255 - IP:10.0.0.13/255.255.255.255 - IP:10.0.0.14/255.255.255.255 - IP:10.0.0.15/255.255.255.255 - IP:10.0.0.16/255.255.255.255 - IP:10.0.0.17/255.255.255.255 - IP:10.0.0.18/255.255.255.255 - IP:10.0.0.19/255.255.255.255 - IP:10.0.0.20/255.255.255.255 - IP:10.0.0.21/255.255.255.255 - IP:10.0.0.22/255.255.255.255 - IP:10.0.0.23/255.255.255.255 - IP:10.0.0.24/255.255.255.255 - IP:10.0.0.25/255.255.255.255 - IP:10.0.0.26/255.255.255.255 - IP:10.0.0.27/255.255.255.255 - IP:10.0.0.28/255.255.255.255 - IP:10.0.0.29/255.255.255.255 - IP:10.0.0.30/255.255.255.255 - IP:10.0.0.31/255.255.255.255 - IP:10.0.0.32/255.255.255.255 - IP:10.0.0.33/255.255.255.255 - IP:10.0.0.34/255.255.255.255 - IP:10.0.0.35/255.255.255.255 - IP:10.0.0.36/255.255.255.255 - IP:10.0.0.37/255.255.255.255 - IP:10.0.0.38/255.255.255.255 - IP:10.0.0.39/255.255.255.255 - IP:10.0.0.40/255.255.255.255 - IP:10.0.0.41/255.255.255.255 - IP:10.0.0.42/255.255.255.255 - IP:10.0.0.43/255.255.255.255 - IP:10.0.0.44/255.255.255.255 - IP:10.0.0.45/255.255.255.255 - IP:10.0.0.46/255.255.255.255 - IP:10.0.0.47/255.255.255.255 - IP:10.0.0.48/255.255.255.255 - IP:10.0.0.49/255.255.255.255 - IP:10.0.0.50/255.255.255.255 - IP:10.0.0.51/255.255.255.255 - IP:10.0.0.52/255.255.255.255 - IP:10.0.0.53/255.255.255.255 - IP:10.0.0.54/255.255.255.255 - IP:10.0.0.55/255.255.255.255 - IP:10.0.0.56/255.255.255.255 - IP:10.0.0.57/255.255.255.255 - IP:10.0.0.58/255.255.255.255 - IP:10.0.0.59/255.255.255.255 - IP:10.0.0.60/255.255.255.255 - IP:10.0.0.61/255.255.255.255 - IP:10.0.0.62/255.255.255.255 - IP:10.0.0.63/255.255.255.255 - IP:10.0.0.64/255.255.255.255 - IP:10.0.0.65/255.255.255.255 - IP:10.0.0.66/255.255.255.255 - IP:10.0.0.67/255.255.255.255 - IP:10.0.0.68/255.255.255.255 - IP:10.0.0.69/255.255.255.255 - IP:10.0.0.70/255.255.255.255 - IP:10.0.0.71/255.255.255.255 - IP:10.0.0.72/255.255.255.255 - IP:10.0.0.73/255.255.255.255 - IP:10.0.0.74/255.255.255.255 - IP:10.0.0.75/255.255.255.255 - IP:10.0.0.76/255.255.255.255 - IP:10.0.0.77/255.255.255.255 - IP:10.0.0.78/255.255.255.255 - IP:10.0.0.79/255.255.255.255 - IP:10.0.0.80/255.255.255.255 - IP:10.0.0.81/255.255.255.255 - IP:10.0.0.82/255.255.255.255 - IP:10.0.0.83/255.255.255.255 - IP:10.0.0.84/255.255.255.255 - IP:10.0.0.85/255.255.255.255 - IP:10.0.0.86/255.255.255.255 - IP:10.0.0.87/255.255.255.255 - IP:10.0.0.88/255.255.255.255 - IP:10.0.0.89/255.255.255.255 - IP:10.0.0.90/255.255.255.255 - IP:10.0.0.91/255.255.255.255 - IP:10.0.0.92/255.255.255.255 - IP:10.0.0.93/255.255.255.255 - IP:10.0.0.94/255.255.255.255 - IP:10.0.0.95/255.255.255.255 - IP:10.0.0.96/255.255.255.255 - IP:10.0.0.97/255.255.255.255 - IP:10.0.0.98/255.255.255.255 - IP:10.0.0.99/255.255.255.255 - IP:10.0.0.100/255.255.255.255 - IP:10.0.0.101/255.255.255.255 - IP:10.0.0.102/255.255.255.255 - IP:10.0.0.103/255.255.255.255 - IP:10.0.0.104/255.255.255.255 - IP:10.0.0.105/255.255.255.255 - IP:10.0.0.106/255.255.255.255 - IP:10.0.0.107/255.255.255.255 - IP:10.0.0.108/255.255.255.255 - IP:10.0.0.109/255.255.255.255 - IP:10.0.0.110/255.255.255.255 - IP:10.0.0.111/255.255.255.255 - IP:10.0.0.112/255.255.255.255 - IP:10.0.0.113/255.255.255.255 - IP:10.0.0.114/255.255.255.255 - IP:10.0.0.115/255.255.255.255 - IP:10.0.0.116/255.255.255.255 - IP:10.0.0.117/255.255.255.255 - IP:10.0.0.118/255.255.255.255 - IP:10.0.0.119/255.255.255.255 - IP:10.0.0.120/255.255.255.255 - IP:10.0.0.121/255.255.255.255 - IP:10.0.0.122/255.255.255.255 - IP:10.0.0.123/255.255.255.255 - IP:10.0.0.124/255.255.255.255 - IP:10.0.0.125/255.255.255.255 - IP:10.0.0.126/255.255.255.255 - IP:10.0.0.127/255.255.255.255 - IP:10.0.0.128/255.255.255.255 - IP:10.0.0.129/255.255.255.255 - IP:10.0.0.130/255.255.255.255 - IP:10.0.0.131/255.255.255.255 - IP:10.0.0.132/255.255.255.255 - IP:10.0.0.133/255.255.255.255 - IP:10.0.0.134/255.255.255.255 - IP:10.0.0.135/255.255.255.255 - IP:10.0.0.136/255.255.255.255 - IP:10.0.0.137/255.255.255.255 - IP:10.0.0.138/255.255.255.255 - IP:10.0.0.139/255.255.255.255 - IP:10.0.0.140/255.255.255.255 - IP:10.0.0.141/255.255.255.255 - IP:10.0.0.142/255.255.255.255 - IP:10.0.0.143/255.255.255.255 - IP:10.0.0.144/255.255.255.255 - IP:10.0.0.145/255.255.255.255 - IP:10.0.0.146/255.255.255.255 - IP:10.0.0.147/255.255.255.255 - IP:10.0.0.148/255.255.255.255 - IP:10.0.0.149/255.255.255.255 - IP:10.0.0.150/255.255.255.255 - IP:10.0.0.151/255.255.255.255 - IP:10.0.0.152/255.255.255.255 - IP:10.0.0.153/255.255.255.255 - IP:10.0.0.154/255.255.255.255 - IP:10.0.0.155/255.255.255.255 - IP:10.0.0.156/255.255.255.255 - IP:10.0.0.157/255.255.255.255 - IP:10.0.0.158/255.255.255.255 - IP:10.0.0.159/255.255.255.255 - IP:10.0.0.160/255.255.255.255 - IP:10.0.0.161/255.255.255.255 - IP:10.0.0.162/255.255.255.255 - IP:10.0.0.163/255.255.255.255 - IP:10.0.0.164/255.255.255.255 - IP:10.0.0.165/255.255.255.255 - IP:10.0.0.166/255.255.255.255 - IP:10.0.0.167/255.255.255.255 - IP:10.0.0.168/255.255.255.255 - IP:10.0.0.169/255.255.255.255 - IP:10.0.0.170/255.255.255.255 - IP:10.0.0.171/255.255.255.255 - IP:10.0.0.172/255.255.255.255 - IP:10.0.0.173/255.255.255.255 - IP:10.0.0.174/255.255.255.255 - IP:10.0.0.175/255.255.255.255 - IP:10.0.0.176/255.255.255.255 - IP:10.0.0.177/255.255.255.255 - IP:10.0.0.178/255.255.255.255 - IP:10.0.0.179/255.255.255.255 - IP:10.0.0.180/255.255.255.255 - IP:10.0.0.181/255.255.255.255 - IP:10.0.0.182/255.255.255.255 - IP:10.0.0.183/255.255.255.255 - IP:10.0.0.184/255.255.255.255 - IP:10.0.0.185/255.255.255.255 - IP:10.0.0.186/255.255.255.255 - IP:10.0.0.187/255.255.255.255 - IP:10.0.0.188/255.255.255.255 - IP:10.0.0.189/255.255.255.255 - IP:10.0.0.190/255.255.255.255 - IP:10.0.0.191/255.255.255.255 - IP:10.0.0.192/255.255.255.255 - IP:10.0.0.193/255.255.255.255 - IP:10.0.0.194/255.255.255.255 - IP:10.0.0.195/255.255.255.255 - IP:10.0.0.196/255.255.255.255 - IP:10.0.0.197/255.255.255.255 - IP:10.0.0.198/255.255.255.255 - IP:10.0.0.199/255.255.255.255 - IP:10.0.0.200/255.255.255.255 - IP:10.0.0.201/255.255.255.255 - IP:10.0.0.202/255.255.255.255 - IP:10.0.0.203/255.255.255.255 - IP:10.0.0.204/255.255.255.255 - IP:10.0.0.205/255.255.255.255 - IP:10.0.0.206/255.255.255.255 - IP:10.0.0.207/255.255.255.255 - IP:10.0.0.208/255.255.255.255 - IP:10.0.0.209/255.255.255.255 - IP:10.0.0.210/255.255.255.255 - IP:10.0.0.211/255.255.255.255 - IP:10.0.0.212/255.255.255.255 - IP:10.0.0.213/255.255.255.255 - IP:10.0.0.214/255.255.255.255 - IP:10.0.0.215/255.255.255.255 - IP:10.0.0.216/255.255.255.255 - IP:10.0.0.217/255.255.255.255 - IP:10.0.0.218/255.255.255.255 - IP:10.0.0.219/255.255.255.255 - IP:10.0.0.220/255.255.255.255 - IP:10.0.0.221/255.255.255.255 - IP:10.0.0.222/255.255.255.255 - IP:10.0.0.223/255.255.255.255 - IP:10.0.0.224/255.255.255.255 - IP:10.0.0.225/255.255.255.255 - IP:10.0.0.226/255.255.255.255 - IP:10.0.0.227/255.255.255.255 - IP:10.0.0.228/255.255.255.255 - IP:10.0.0.229/255.255.255.255 - IP:10.0.0.230/255.255.255.255 - IP:10.0.0.231/255.255.255.255 - IP:10.0.0.232/255.255.255.255 - IP:10.0.0.233/255.255.255.255 - IP:10.0.0.234/255.255.255.255 - IP:10.0.0.235/255.255.255.255 - IP:10.0.0.236/255.255.255.255 - IP:10.0.0.237/255.255.255.255 - IP:10.0.0.238/255.255.255.255 - IP:10.0.0.239/255.255.255.255 - IP:10.0.0.240/255.255.255.255 - IP:10.0.0.241/255.255.255.255 - IP:10.0.0.242/255.255.255.255 - IP:10.0.0.243/255.255.255.255 - IP:10.0.0.244/255.255.255.255 - IP:10.0.0.245/255.255.255.255 - IP:10.0.0.246/255.255.255.255 - IP:10.0.0.247/255.255.255.255 - IP:10.0.0.248/255.255.255.255 - IP:10.0.0.249/255.255.255.255 - IP:10.0.0.250/255.255.255.255 - IP:10.0.0.251/255.255.255.255 - IP:10.0.0.252/255.255.255.255 - IP:10.0.0.253/255.255.255.255 - IP:10.0.0.254/255.255.255.255 - IP:10.0.0.255/255.255.255.255 - IP:10.0.1.0/255.255.255.255 - IP:10.0.1.1/255.255.255.255 - IP:10.0.1.2/255.255.255.255 - IP:10.0.1.3/255.255.255.255 - IP:10.0.1.4/255.255.255.255 - IP:10.0.1.5/255.255.255.255 - IP:10.0.1.6/255.255.255.255 - IP:10.0.1.7/255.255.255.255 - IP:10.0.1.8/255.255.255.255 - IP:10.0.1.9/255.255.255.255 - IP:10.0.1.10/255.255.255.255 - IP:10.0.1.11/255.255.255.255 - IP:10.0.1.12/255.255.255.255 - IP:10.0.1.13/255.255.255.255 - IP:10.0.1.14/255.255.255.255 - IP:10.0.1.15/255.255.255.255 - IP:10.0.1.16/255.255.255.255 - IP:10.0.1.17/255.255.255.255 - IP:10.0.1.18/255.255.255.255 - IP:10.0.1.19/255.255.255.255 - IP:10.0.1.20/255.255.255.255 - IP:10.0.1.21/255.255.255.255 - IP:10.0.1.22/255.255.255.255 - IP:10.0.1.23/255.255.255.255 - IP:10.0.1.24/255.255.255.255 - IP:10.0.1.25/255.255.255.255 - IP:10.0.1.26/255.255.255.255 - IP:10.0.1.27/255.255.255.255 - IP:10.0.1.28/255.255.255.255 - IP:10.0.1.29/255.255.255.255 - IP:10.0.1.30/255.255.255.255 - IP:10.0.1.31/255.255.255.255 - IP:10.0.1.32/255.255.255.255 - IP:10.0.1.33/255.255.255.255 - IP:10.0.1.34/255.255.255.255 - IP:10.0.1.35/255.255.255.255 - IP:10.0.1.36/255.255.255.255 - IP:10.0.1.37/255.255.255.255 - IP:10.0.1.38/255.255.255.255 - IP:10.0.1.39/255.255.255.255 - IP:10.0.1.40/255.255.255.255 - IP:10.0.1.41/255.255.255.255 - IP:10.0.1.42/255.255.255.255 - IP:10.0.1.43/255.255.255.255 - IP:10.0.1.44/255.255.255.255 - IP:10.0.1.45/255.255.255.255 - IP:10.0.1.46/255.255.255.255 - IP:10.0.1.47/255.255.255.255 - IP:10.0.1.48/255.255.255.255 - IP:10.0.1.49/255.255.255.255 - IP:10.0.1.50/255.255.255.255 - IP:10.0.1.51/255.255.255.255 - IP:10.0.1.52/255.255.255.255 - IP:10.0.1.53/255.255.255.255 - IP:10.0.1.54/255.255.255.255 - IP:10.0.1.55/255.255.255.255 - IP:10.0.1.56/255.255.255.255 - IP:10.0.1.57/255.255.255.255 - IP:10.0.1.58/255.255.255.255 - IP:10.0.1.59/255.255.255.255 - IP:10.0.1.60/255.255.255.255 - IP:10.0.1.61/255.255.255.255 - IP:10.0.1.62/255.255.255.255 - IP:10.0.1.63/255.255.255.255 - IP:10.0.1.64/255.255.255.255 - IP:10.0.1.65/255.255.255.255 - IP:10.0.1.66/255.255.255.255 - IP:10.0.1.67/255.255.255.255 - IP:10.0.1.68/255.255.255.255 - IP:10.0.1.69/255.255.255.255 - IP:10.0.1.70/255.255.255.255 - IP:10.0.1.71/255.255.255.255 - IP:10.0.1.72/255.255.255.255 - IP:10.0.1.73/255.255.255.255 - IP:10.0.1.74/255.255.255.255 - IP:10.0.1.75/255.255.255.255 - IP:10.0.1.76/255.255.255.255 - IP:10.0.1.77/255.255.255.255 - IP:10.0.1.78/255.255.255.255 - IP:10.0.1.79/255.255.255.255 - IP:10.0.1.80/255.255.255.255 - IP:10.0.1.81/255.255.255.255 - IP:10.0.1.82/255.255.255.255 - IP:10.0.1.83/255.255.255.255 - IP:10.0.1.84/255.255.255.255 - IP:10.0.1.85/255.255.255.255 - IP:10.0.1.86/255.255.255.255 - IP:10.0.1.87/255.255.255.255 - IP:10.0.1.88/255.255.255.255 - IP:10.0.1.89/255.255.255.255 - IP:10.0.1.90/255.255.255.255 - IP:10.0.1.91/255.255.255.255 - IP:10.0.1.92/255.255.255.255 - IP:10.0.1.93/255.255.255.255 - IP:10.0.1.94/255.255.255.255 - IP:10.0.1.95/255.255.255.255 - IP:10.0.1.96/255.255.255.255 - IP:10.0.1.97/255.255.255.255 - IP:10.0.1.98/255.255.255.255 - IP:10.0.1.99/255.255.255.255 - IP:10.0.1.100/255.255.255.255 - IP:10.0.1.101/255.255.255.255 - IP:10.0.1.102/255.255.255.255 - IP:10.0.1.103/255.255.255.255 - IP:10.0.1.104/255.255.255.255 - IP:10.0.1.105/255.255.255.255 - IP:10.0.1.106/255.255.255.255 - IP:10.0.1.107/255.255.255.255 - IP:10.0.1.108/255.255.255.255 - IP:10.0.1.109/255.255.255.255 - IP:10.0.1.110/255.255.255.255 - IP:10.0.1.111/255.255.255.255 - IP:10.0.1.112/255.255.255.255 - IP:10.0.1.113/255.255.255.255 - IP:10.0.1.114/255.255.255.255 - IP:10.0.1.115/255.255.255.255 - IP:10.0.1.116/255.255.255.255 - IP:10.0.1.117/255.255.255.255 - IP:10.0.1.118/255.255.255.255 - IP:10.0.1.119/255.255.255.255 - IP:10.0.1.120/255.255.255.255 - IP:10.0.1.121/255.255.255.255 - IP:10.0.1.122/255.255.255.255 - IP:10.0.1.123/255.255.255.255 - IP:10.0.1.124/255.255.255.255 - IP:10.0.1.125/255.255.255.255 - IP:10.0.1.126/255.255.255.255 - IP:10.0.1.127/255.255.255.255 - IP:10.0.1.128/255.255.255.255 - IP:10.0.1.129/255.255.255.255 - IP:10.0.1.130/255.255.255.255 - IP:10.0.1.131/255.255.255.255 - IP:10.0.1.132/255.255.255.255 - IP:10.0.1.133/255.255.255.255 - IP:10.0.1.134/255.255.255.255 - IP:10.0.1.135/255.255.255.255 - IP:10.0.1.136/255.255.255.255 - IP:10.0.1.137/255.255.255.255 - IP:10.0.1.138/255.255.255.255 - IP:10.0.1.139/255.255.255.255 - IP:10.0.1.140/255.255.255.255 - IP:10.0.1.141/255.255.255.255 - IP:10.0.1.142/255.255.255.255 - IP:10.0.1.143/255.255.255.255 - IP:10.0.1.144/255.255.255.255 - IP:10.0.1.145/255.255.255.255 - IP:10.0.1.146/255.255.255.255 - IP:10.0.1.147/255.255.255.255 - IP:10.0.1.148/255.255.255.255 - IP:10.0.1.149/255.255.255.255 - IP:10.0.1.150/255.255.255.255 - IP:10.0.1.151/255.255.255.255 - IP:10.0.1.152/255.255.255.255 - IP:10.0.1.153/255.255.255.255 - IP:10.0.1.154/255.255.255.255 - IP:10.0.1.155/255.255.255.255 - IP:10.0.1.156/255.255.255.255 - IP:10.0.1.157/255.255.255.255 - IP:10.0.1.158/255.255.255.255 - IP:10.0.1.159/255.255.255.255 - IP:10.0.1.160/255.255.255.255 - IP:10.0.1.161/255.255.255.255 - IP:10.0.1.162/255.255.255.255 - IP:10.0.1.163/255.255.255.255 - IP:10.0.1.164/255.255.255.255 - IP:10.0.1.165/255.255.255.255 - IP:10.0.1.166/255.255.255.255 - IP:10.0.1.167/255.255.255.255 - IP:10.0.1.168/255.255.255.255 - IP:10.0.1.169/255.255.255.255 - IP:10.0.1.170/255.255.255.255 - IP:10.0.1.171/255.255.255.255 - IP:10.0.1.172/255.255.255.255 - IP:10.0.1.173/255.255.255.255 - IP:10.0.1.174/255.255.255.255 - IP:10.0.1.175/255.255.255.255 - IP:10.0.1.176/255.255.255.255 - IP:10.0.1.177/255.255.255.255 - IP:10.0.1.178/255.255.255.255 - IP:10.0.1.179/255.255.255.255 - IP:10.0.1.180/255.255.255.255 - IP:10.0.1.181/255.255.255.255 - IP:10.0.1.182/255.255.255.255 - IP:10.0.1.183/255.255.255.255 - IP:10.0.1.184/255.255.255.255 - IP:10.0.1.185/255.255.255.255 - IP:10.0.1.186/255.255.255.255 - IP:10.0.1.187/255.255.255.255 - IP:10.0.1.188/255.255.255.255 - IP:10.0.1.189/255.255.255.255 - IP:10.0.1.190/255.255.255.255 - IP:10.0.1.191/255.255.255.255 - IP:10.0.1.192/255.255.255.255 - IP:10.0.1.193/255.255.255.255 - IP:10.0.1.194/255.255.255.255 - IP:10.0.1.195/255.255.255.255 - IP:10.0.1.196/255.255.255.255 - IP:10.0.1.197/255.255.255.255 - IP:10.0.1.198/255.255.255.255 - IP:10.0.1.199/255.255.255.255 - IP:10.0.1.200/255.255.255.255 - IP:10.0.1.201/255.255.255.255 - IP:10.0.1.202/255.255.255.255 - IP:10.0.1.203/255.255.255.255 - IP:10.0.1.204/255.255.255.255 - IP:10.0.1.205/255.255.255.255 - IP:10.0.1.206/255.255.255.255 - IP:10.0.1.207/255.255.255.255 - IP:10.0.1.208/255.255.255.255 - IP:10.0.1.209/255.255.255.255 - IP:10.0.1.210/255.255.255.255 - IP:10.0.1.211/255.255.255.255 - IP:10.0.1.212/255.255.255.255 - IP:10.0.1.213/255.255.255.255 - IP:10.0.1.214/255.255.255.255 - IP:10.0.1.215/255.255.255.255 - IP:10.0.1.216/255.255.255.255 - IP:10.0.1.217/255.255.255.255 - IP:10.0.1.218/255.255.255.255 - IP:10.0.1.219/255.255.255.255 - IP:10.0.1.220/255.255.255.255 - IP:10.0.1.221/255.255.255.255 - IP:10.0.1.222/255.255.255.255 - IP:10.0.1.223/255.255.255.255 - IP:10.0.1.224/255.255.255.255 - IP:10.0.1.225/255.255.255.255 - IP:10.0.1.226/255.255.255.255 - IP:10.0.1.227/255.255.255.255 - IP:10.0.1.228/255.255.255.255 - IP:10.0.1.229/255.255.255.255 - IP:10.0.1.230/255.255.255.255 - IP:10.0.1.231/255.255.255.255 - IP:10.0.1.232/255.255.255.255 - IP:10.0.1.233/255.255.255.255 - IP:10.0.1.234/255.255.255.255 - IP:10.0.1.235/255.255.255.255 - IP:10.0.1.236/255.255.255.255 - IP:10.0.1.237/255.255.255.255 - IP:10.0.1.238/255.255.255.255 - IP:10.0.1.239/255.255.255.255 - IP:10.0.1.240/255.255.255.255 - IP:10.0.1.241/255.255.255.255 - IP:10.0.1.242/255.255.255.255 - IP:10.0.1.243/255.255.255.255 - IP:10.0.1.244/255.255.255.255 - IP:10.0.1.245/255.255.255.255 - IP:10.0.1.246/255.255.255.255 - IP:10.0.1.247/255.255.255.255 - IP:10.0.1.248/255.255.255.255 - IP:10.0.1.249/255.255.255.255 - IP:10.0.1.250/255.255.255.255 - IP:10.0.1.251/255.255.255.255 - IP:10.0.1.252/255.255.255.255 - IP:10.0.1.253/255.255.255.255 - IP:10.0.1.254/255.255.255.255 - IP:10.0.1.255/255.255.255.255 - IP:10.0.2.0/255.255.255.255 - IP:10.0.2.1/255.255.255.255 - IP:10.0.2.2/255.255.255.255 - IP:10.0.2.3/255.255.255.255 - IP:10.0.2.4/255.255.255.255 - IP:10.0.2.5/255.255.255.255 - IP:10.0.2.6/255.255.255.255 - IP:10.0.2.7/255.255.255.255 - IP:10.0.2.8/255.255.255.255 - IP:10.0.2.9/255.255.255.255 - IP:10.0.2.10/255.255.255.255 - IP:10.0.2.11/255.255.255.255 - IP:10.0.2.12/255.255.255.255 - IP:10.0.2.13/255.255.255.255 - IP:10.0.2.14/255.255.255.255 - IP:10.0.2.15/255.255.255.255 - IP:10.0.2.16/255.255.255.255 - IP:10.0.2.17/255.255.255.255 - IP:10.0.2.18/255.255.255.255 - IP:10.0.2.19/255.255.255.255 - IP:10.0.2.20/255.255.255.255 - IP:10.0.2.21/255.255.255.255 - IP:10.0.2.22/255.255.255.255 - IP:10.0.2.23/255.255.255.255 - IP:10.0.2.24/255.255.255.255 - IP:10.0.2.25/255.255.255.255 - IP:10.0.2.26/255.255.255.255 - IP:10.0.2.27/255.255.255.255 - IP:10.0.2.28/255.255.255.255 - IP:10.0.2.29/255.255.255.255 - IP:10.0.2.30/255.255.255.255 - IP:10.0.2.31/255.255.255.255 - IP:10.0.2.32/255.255.255.255 - IP:10.0.2.33/255.255.255.255 - IP:10.0.2.34/255.255.255.255 - IP:10.0.2.35/255.255.255.255 - IP:10.0.2.36/255.255.255.255 - IP:10.0.2.37/255.255.255.255 - IP:10.0.2.38/255.255.255.255 - IP:10.0.2.39/255.255.255.255 - IP:10.0.2.40/255.255.255.255 - IP:10.0.2.41/255.255.255.255 - IP:10.0.2.42/255.255.255.255 - IP:10.0.2.43/255.255.255.255 - IP:10.0.2.44/255.255.255.255 - IP:10.0.2.45/255.255.255.255 - IP:10.0.2.46/255.255.255.255 - IP:10.0.2.47/255.255.255.255 - IP:10.0.2.48/255.255.255.255 - IP:10.0.2.49/255.255.255.255 - IP:10.0.2.50/255.255.255.255 - IP:10.0.2.51/255.255.255.255 - IP:10.0.2.52/255.255.255.255 - IP:10.0.2.53/255.255.255.255 - IP:10.0.2.54/255.255.255.255 - IP:10.0.2.55/255.255.255.255 - IP:10.0.2.56/255.255.255.255 - IP:10.0.2.57/255.255.255.255 - IP:10.0.2.58/255.255.255.255 - IP:10.0.2.59/255.255.255.255 - IP:10.0.2.60/255.255.255.255 - IP:10.0.2.61/255.255.255.255 - IP:10.0.2.62/255.255.255.255 - IP:10.0.2.63/255.255.255.255 - IP:10.0.2.64/255.255.255.255 - IP:10.0.2.65/255.255.255.255 - IP:10.0.2.66/255.255.255.255 - IP:10.0.2.67/255.255.255.255 - IP:10.0.2.68/255.255.255.255 - IP:10.0.2.69/255.255.255.255 - IP:10.0.2.70/255.255.255.255 - IP:10.0.2.71/255.255.255.255 - IP:10.0.2.72/255.255.255.255 - IP:10.0.2.73/255.255.255.255 - IP:10.0.2.74/255.255.255.255 - IP:10.0.2.75/255.255.255.255 - IP:10.0.2.76/255.255.255.255 - IP:10.0.2.77/255.255.255.255 - IP:10.0.2.78/255.255.255.255 - IP:10.0.2.79/255.255.255.255 - IP:10.0.2.80/255.255.255.255 - IP:10.0.2.81/255.255.255.255 - IP:10.0.2.82/255.255.255.255 - IP:10.0.2.83/255.255.255.255 - IP:10.0.2.84/255.255.255.255 - IP:10.0.2.85/255.255.255.255 - IP:10.0.2.86/255.255.255.255 - IP:10.0.2.87/255.255.255.255 - IP:10.0.2.88/255.255.255.255 - IP:10.0.2.89/255.255.255.255 - IP:10.0.2.90/255.255.255.255 - IP:10.0.2.91/255.255.255.255 - IP:10.0.2.92/255.255.255.255 - IP:10.0.2.93/255.255.255.255 - IP:10.0.2.94/255.255.255.255 - IP:10.0.2.95/255.255.255.255 - IP:10.0.2.96/255.255.255.255 - IP:10.0.2.97/255.255.255.255 - IP:10.0.2.98/255.255.255.255 - IP:10.0.2.99/255.255.255.255 - IP:10.0.2.100/255.255.255.255 - IP:10.0.2.101/255.255.255.255 - IP:10.0.2.102/255.255.255.255 - IP:10.0.2.103/255.255.255.255 - IP:10.0.2.104/255.255.255.255 - IP:10.0.2.105/255.255.255.255 - IP:10.0.2.106/255.255.255.255 - IP:10.0.2.107/255.255.255.255 - IP:10.0.2.108/255.255.255.255 - IP:10.0.2.109/255.255.255.255 - IP:10.0.2.110/255.255.255.255 - IP:10.0.2.111/255.255.255.255 - IP:10.0.2.112/255.255.255.255 - IP:10.0.2.113/255.255.255.255 - IP:10.0.2.114/255.255.255.255 - IP:10.0.2.115/255.255.255.255 - IP:10.0.2.116/255.255.255.255 - IP:10.0.2.117/255.255.255.255 - IP:10.0.2.118/255.255.255.255 - IP:10.0.2.119/255.255.255.255 - IP:10.0.2.120/255.255.255.255 - IP:10.0.2.121/255.255.255.255 - IP:10.0.2.122/255.255.255.255 - IP:10.0.2.123/255.255.255.255 - IP:10.0.2.124/255.255.255.255 - IP:10.0.2.125/255.255.255.255 - IP:10.0.2.126/255.255.255.255 - IP:10.0.2.127/255.255.255.255 - IP:10.0.2.128/255.255.255.255 - IP:10.0.2.129/255.255.255.255 - IP:10.0.2.130/255.255.255.255 - IP:10.0.2.131/255.255.255.255 - IP:10.0.2.132/255.255.255.255 - IP:10.0.2.133/255.255.255.255 - IP:10.0.2.134/255.255.255.255 - IP:10.0.2.135/255.255.255.255 - IP:10.0.2.136/255.255.255.255 - IP:10.0.2.137/255.255.255.255 - IP:10.0.2.138/255.255.255.255 - IP:10.0.2.139/255.255.255.255 - IP:10.0.2.140/255.255.255.255 - IP:10.0.2.141/255.255.255.255 - IP:10.0.2.142/255.255.255.255 - IP:10.0.2.143/255.255.255.255 - IP:10.0.2.144/255.255.255.255 - IP:10.0.2.145/255.255.255.255 - IP:10.0.2.146/255.255.255.255 - IP:10.0.2.147/255.255.255.255 - IP:10.0.2.148/255.255.255.255 - IP:10.0.2.149/255.255.255.255 - IP:10.0.2.150/255.255.255.255 - IP:10.0.2.151/255.255.255.255 - IP:10.0.2.152/255.255.255.255 - IP:10.0.2.153/255.255.255.255 - IP:10.0.2.154/255.255.255.255 - IP:10.0.2.155/255.255.255.255 - IP:10.0.2.156/255.255.255.255 - IP:10.0.2.157/255.255.255.255 - IP:10.0.2.158/255.255.255.255 - IP:10.0.2.159/255.255.255.255 - IP:10.0.2.160/255.255.255.255 - IP:10.0.2.161/255.255.255.255 - IP:10.0.2.162/255.255.255.255 - IP:10.0.2.163/255.255.255.255 - IP:10.0.2.164/255.255.255.255 - IP:10.0.2.165/255.255.255.255 - IP:10.0.2.166/255.255.255.255 - IP:10.0.2.167/255.255.255.255 - IP:10.0.2.168/255.255.255.255 - IP:10.0.2.169/255.255.255.255 - IP:10.0.2.170/255.255.255.255 - IP:10.0.2.171/255.255.255.255 - IP:10.0.2.172/255.255.255.255 - IP:10.0.2.173/255.255.255.255 - IP:10.0.2.174/255.255.255.255 - IP:10.0.2.175/255.255.255.255 - IP:10.0.2.176/255.255.255.255 - IP:10.0.2.177/255.255.255.255 - IP:10.0.2.178/255.255.255.255 - IP:10.0.2.179/255.255.255.255 - IP:10.0.2.180/255.255.255.255 - IP:10.0.2.181/255.255.255.255 - IP:10.0.2.182/255.255.255.255 - IP:10.0.2.183/255.255.255.255 - IP:10.0.2.184/255.255.255.255 - IP:10.0.2.185/255.255.255.255 - IP:10.0.2.186/255.255.255.255 - IP:10.0.2.187/255.255.255.255 - IP:10.0.2.188/255.255.255.255 - IP:10.0.2.189/255.255.255.255 - IP:10.0.2.190/255.255.255.255 - IP:10.0.2.191/255.255.255.255 - IP:10.0.2.192/255.255.255.255 - IP:10.0.2.193/255.255.255.255 - IP:10.0.2.194/255.255.255.255 - IP:10.0.2.195/255.255.255.255 - IP:10.0.2.196/255.255.255.255 - IP:10.0.2.197/255.255.255.255 - IP:10.0.2.198/255.255.255.255 - IP:10.0.2.199/255.255.255.255 - IP:10.0.2.200/255.255.255.255 - IP:10.0.2.201/255.255.255.255 - IP:10.0.2.202/255.255.255.255 - IP:10.0.2.203/255.255.255.255 - IP:10.0.2.204/255.255.255.255 - IP:10.0.2.205/255.255.255.255 - IP:10.0.2.206/255.255.255.255 - IP:10.0.2.207/255.255.255.255 - IP:10.0.2.208/255.255.255.255 - IP:10.0.2.209/255.255.255.255 - IP:10.0.2.210/255.255.255.255 - IP:10.0.2.211/255.255.255.255 - IP:10.0.2.212/255.255.255.255 - IP:10.0.2.213/255.255.255.255 - IP:10.0.2.214/255.255.255.255 - IP:10.0.2.215/255.255.255.255 - IP:10.0.2.216/255.255.255.255 - IP:10.0.2.217/255.255.255.255 - IP:10.0.2.218/255.255.255.255 - IP:10.0.2.219/255.255.255.255 - IP:10.0.2.220/255.255.255.255 - IP:10.0.2.221/255.255.255.255 - IP:10.0.2.222/255.255.255.255 - IP:10.0.2.223/255.255.255.255 - IP:10.0.2.224/255.255.255.255 - IP:10.0.2.225/255.255.255.255 - IP:10.0.2.226/255.255.255.255 - IP:10.0.2.227/255.255.255.255 - IP:10.0.2.228/255.255.255.255 - IP:10.0.2.229/255.255.255.255 - IP:10.0.2.230/255.255.255.255 - IP:10.0.2.231/255.255.255.255 - IP:10.0.2.232/255.255.255.255 - IP:10.0.2.233/255.255.255.255 - IP:10.0.2.234/255.255.255.255 - IP:10.0.2.235/255.255.255.255 - IP:10.0.2.236/255.255.255.255 - IP:10.0.2.237/255.255.255.255 - IP:10.0.2.238/255.255.255.255 - IP:10.0.2.239/255.255.255.255 - IP:10.0.2.240/255.255.255.255 - IP:10.0.2.241/255.255.255.255 - IP:10.0.2.242/255.255.255.255 - IP:10.0.2.243/255.255.255.255 - IP:10.0.2.244/255.255.255.255 - IP:10.0.2.245/255.255.255.255 - IP:10.0.2.246/255.255.255.255 - IP:10.0.2.247/255.255.255.255 - IP:10.0.2.248/255.255.255.255 - IP:10.0.2.249/255.255.255.255 - IP:10.0.2.250/255.255.255.255 - IP:10.0.2.251/255.255.255.255 - IP:10.0.2.252/255.255.255.255 - IP:10.0.2.253/255.255.255.255 - IP:10.0.2.254/255.255.255.255 - IP:10.0.2.255/255.255.255.255 - IP:10.0.3.0/255.255.255.255 - IP:10.0.3.1/255.255.255.255 - IP:10.0.3.2/255.255.255.255 - IP:10.0.3.3/255.255.255.255 - IP:10.0.3.4/255.255.255.255 - IP:10.0.3.5/255.255.255.255 - IP:10.0.3.6/255.255.255.255 - IP:10.0.3.7/255.255.255.255 - IP:10.0.3.8/255.255.255.255 - IP:10.0.3.9/255.255.255.255 - IP:10.0.3.10/255.255.255.255 - IP:10.0.3.11/255.255.255.255 - IP:10.0.3.12/255.255.255.255 - IP:10.0.3.13/255.255.255.255 - IP:10.0.3.14/255.255.255.255 - IP:10.0.3.15/255.255.255.255 - IP:10.0.3.16/255.255.255.255 - IP:10.0.3.17/255.255.255.255 - IP:10.0.3.18/255.255.255.255 - IP:10.0.3.19/255.255.255.255 - IP:10.0.3.20/255.255.255.255 - IP:10.0.3.21/255.255.255.255 - IP:10.0.3.22/255.255.255.255 - IP:10.0.3.23/255.255.255.255 - IP:10.0.3.24/255.255.255.255 - IP:10.0.3.25/255.255.255.255 - IP:10.0.3.26/255.255.255.255 - IP:10.0.3.27/255.255.255.255 - IP:10.0.3.28/255.255.255.255 - IP:10.0.3.29/255.255.255.255 - IP:10.0.3.30/255.255.255.255 - IP:10.0.3.31/255.255.255.255 - IP:10.0.3.32/255.255.255.255 - IP:10.0.3.33/255.255.255.255 - IP:10.0.3.34/255.255.255.255 - IP:10.0.3.35/255.255.255.255 - IP:10.0.3.36/255.255.255.255 - IP:10.0.3.37/255.255.255.255 - IP:10.0.3.38/255.255.255.255 - IP:10.0.3.39/255.255.255.255 - IP:10.0.3.40/255.255.255.255 - IP:10.0.3.41/255.255.255.255 - IP:10.0.3.42/255.255.255.255 - IP:10.0.3.43/255.255.255.255 - IP:10.0.3.44/255.255.255.255 - IP:10.0.3.45/255.255.255.255 - IP:10.0.3.46/255.255.255.255 - IP:10.0.3.47/255.255.255.255 - IP:10.0.3.48/255.255.255.255 - IP:10.0.3.49/255.255.255.255 - IP:10.0.3.50/255.255.255.255 - IP:10.0.3.51/255.255.255.255 - IP:10.0.3.52/255.255.255.255 - IP:10.0.3.53/255.255.255.255 - IP:10.0.3.54/255.255.255.255 - IP:10.0.3.55/255.255.255.255 - IP:10.0.3.56/255.255.255.255 - IP:10.0.3.57/255.255.255.255 - IP:10.0.3.58/255.255.255.255 - IP:10.0.3.59/255.255.255.255 - IP:10.0.3.60/255.255.255.255 - IP:10.0.3.61/255.255.255.255 - IP:10.0.3.62/255.255.255.255 - IP:10.0.3.63/255.255.255.255 - IP:10.0.3.64/255.255.255.255 - IP:10.0.3.65/255.255.255.255 - IP:10.0.3.66/255.255.255.255 - IP:10.0.3.67/255.255.255.255 - IP:10.0.3.68/255.255.255.255 - IP:10.0.3.69/255.255.255.255 - IP:10.0.3.70/255.255.255.255 - IP:10.0.3.71/255.255.255.255 - IP:10.0.3.72/255.255.255.255 - IP:10.0.3.73/255.255.255.255 - IP:10.0.3.74/255.255.255.255 - IP:10.0.3.75/255.255.255.255 - IP:10.0.3.76/255.255.255.255 - IP:10.0.3.77/255.255.255.255 - IP:10.0.3.78/255.255.255.255 - IP:10.0.3.79/255.255.255.255 - IP:10.0.3.80/255.255.255.255 - IP:10.0.3.81/255.255.255.255 - IP:10.0.3.82/255.255.255.255 - IP:10.0.3.83/255.255.255.255 - IP:10.0.3.84/255.255.255.255 - IP:10.0.3.85/255.255.255.255 - IP:10.0.3.86/255.255.255.255 - IP:10.0.3.87/255.255.255.255 - IP:10.0.3.88/255.255.255.255 - IP:10.0.3.89/255.255.255.255 - IP:10.0.3.90/255.255.255.255 - IP:10.0.3.91/255.255.255.255 - IP:10.0.3.92/255.255.255.255 - IP:10.0.3.93/255.255.255.255 - IP:10.0.3.94/255.255.255.255 - IP:10.0.3.95/255.255.255.255 - IP:10.0.3.96/255.255.255.255 - IP:10.0.3.97/255.255.255.255 - IP:10.0.3.98/255.255.255.255 - IP:10.0.3.99/255.255.255.255 - IP:10.0.3.100/255.255.255.255 - IP:10.0.3.101/255.255.255.255 - IP:10.0.3.102/255.255.255.255 - IP:10.0.3.103/255.255.255.255 - IP:10.0.3.104/255.255.255.255 - IP:10.0.3.105/255.255.255.255 - IP:10.0.3.106/255.255.255.255 - IP:10.0.3.107/255.255.255.255 - IP:10.0.3.108/255.255.255.255 - IP:10.0.3.109/255.255.255.255 - IP:10.0.3.110/255.255.255.255 - IP:10.0.3.111/255.255.255.255 - IP:10.0.3.112/255.255.255.255 - IP:10.0.3.113/255.255.255.255 - IP:10.0.3.114/255.255.255.255 - IP:10.0.3.115/255.255.255.255 - IP:10.0.3.116/255.255.255.255 - IP:10.0.3.117/255.255.255.255 - IP:10.0.3.118/255.255.255.255 - IP:10.0.3.119/255.255.255.255 - IP:10.0.3.120/255.255.255.255 - IP:10.0.3.121/255.255.255.255 - IP:10.0.3.122/255.255.255.255 - IP:10.0.3.123/255.255.255.255 - IP:10.0.3.124/255.255.255.255 - IP:10.0.3.125/255.255.255.255 - IP:10.0.3.126/255.255.255.255 - IP:10.0.3.127/255.255.255.255 - IP:10.0.3.128/255.255.255.255 - IP:10.0.3.129/255.255.255.255 - IP:10.0.3.130/255.255.255.255 - IP:10.0.3.131/255.255.255.255 - IP:10.0.3.132/255.255.255.255 - IP:10.0.3.133/255.255.255.255 - IP:10.0.3.134/255.255.255.255 - IP:10.0.3.135/255.255.255.255 - IP:10.0.3.136/255.255.255.255 - IP:10.0.3.137/255.255.255.255 - IP:10.0.3.138/255.255.255.255 - IP:10.0.3.139/255.255.255.255 - IP:10.0.3.140/255.255.255.255 - IP:10.0.3.141/255.255.255.255 - IP:10.0.3.142/255.255.255.255 - IP:10.0.3.143/255.255.255.255 - IP:10.0.3.144/255.255.255.255 - IP:10.0.3.145/255.255.255.255 - IP:10.0.3.146/255.255.255.255 - IP:10.0.3.147/255.255.255.255 - IP:10.0.3.148/255.255.255.255 - IP:10.0.3.149/255.255.255.255 - IP:10.0.3.150/255.255.255.255 - IP:10.0.3.151/255.255.255.255 - IP:10.0.3.152/255.255.255.255 - IP:10.0.3.153/255.255.255.255 - IP:10.0.3.154/255.255.255.255 - IP:10.0.3.155/255.255.255.255 - IP:10.0.3.156/255.255.255.255 - IP:10.0.3.157/255.255.255.255 - IP:10.0.3.158/255.255.255.255 - IP:10.0.3.159/255.255.255.255 - IP:10.0.3.160/255.255.255.255 - IP:10.0.3.161/255.255.255.255 - IP:10.0.3.162/255.255.255.255 - IP:10.0.3.163/255.255.255.255 - IP:10.0.3.164/255.255.255.255 - IP:10.0.3.165/255.255.255.255 - IP:10.0.3.166/255.255.255.255 - IP:10.0.3.167/255.255.255.255 - IP:10.0.3.168/255.255.255.255 - IP:10.0.3.169/255.255.255.255 - IP:10.0.3.170/255.255.255.255 - IP:10.0.3.171/255.255.255.255 - IP:10.0.3.172/255.255.255.255 - IP:10.0.3.173/255.255.255.255 - IP:10.0.3.174/255.255.255.255 - IP:10.0.3.175/255.255.255.255 - IP:10.0.3.176/255.255.255.255 - IP:10.0.3.177/255.255.255.255 - IP:10.0.3.178/255.255.255.255 - IP:10.0.3.179/255.255.255.255 - IP:10.0.3.180/255.255.255.255 - IP:10.0.3.181/255.255.255.255 - IP:10.0.3.182/255.255.255.255 - IP:10.0.3.183/255.255.255.255 - IP:10.0.3.184/255.255.255.255 - IP:10.0.3.185/255.255.255.255 - IP:10.0.3.186/255.255.255.255 - IP:10.0.3.187/255.255.255.255 - IP:10.0.3.188/255.255.255.255 - IP:10.0.3.189/255.255.255.255 - IP:10.0.3.190/255.255.255.255 - IP:10.0.3.191/255.255.255.255 - IP:10.0.3.192/255.255.255.255 - IP:10.0.3.193/255.255.255.255 - IP:10.0.3.194/255.255.255.255 - IP:10.0.3.195/255.255.255.255 - IP:10.0.3.196/255.255.255.255 - IP:10.0.3.197/255.255.255.255 - IP:10.0.3.198/255.255.255.255 - IP:10.0.3.199/255.255.255.255 - IP:10.0.3.200/255.255.255.255 - IP:10.0.3.201/255.255.255.255 - IP:10.0.3.202/255.255.255.255 - IP:10.0.3.203/255.255.255.255 - IP:10.0.3.204/255.255.255.255 - IP:10.0.3.205/255.255.255.255 - IP:10.0.3.206/255.255.255.255 - IP:10.0.3.207/255.255.255.255 - IP:10.0.3.208/255.255.255.255 - IP:10.0.3.209/255.255.255.255 - IP:10.0.3.210/255.255.255.255 - IP:10.0.3.211/255.255.255.255 - IP:10.0.3.212/255.255.255.255 - IP:10.0.3.213/255.255.255.255 - IP:10.0.3.214/255.255.255.255 - IP:10.0.3.215/255.255.255.255 - IP:10.0.3.216/255.255.255.255 - IP:10.0.3.217/255.255.255.255 - IP:10.0.3.218/255.255.255.255 - IP:10.0.3.219/255.255.255.255 - IP:10.0.3.220/255.255.255.255 - IP:10.0.3.221/255.255.255.255 - IP:10.0.3.222/255.255.255.255 - IP:10.0.3.223/255.255.255.255 - IP:10.0.3.224/255.255.255.255 - IP:10.0.3.225/255.255.255.255 - IP:10.0.3.226/255.255.255.255 - IP:10.0.3.227/255.255.255.255 - IP:10.0.3.228/255.255.255.255 - IP:10.0.3.229/255.255.255.255 - IP:10.0.3.230/255.255.255.255 - IP:10.0.3.231/255.255.255.255 - IP:10.0.3.232/255.255.255.255 - IP:10.0.3.233/255.255.255.255 - IP:10.0.3.234/255.255.255.255 - IP:10.0.3.235/255.255.255.255 - IP:10.0.3.236/255.255.255.255 - IP:10.0.3.237/255.255.255.255 - IP:10.0.3.238/255.255.255.255 - IP:10.0.3.239/255.255.255.255 - IP:10.0.3.240/255.255.255.255 - IP:10.0.3.241/255.255.255.255 - IP:10.0.3.242/255.255.255.255 - IP:10.0.3.243/255.255.255.255 - IP:10.0.3.244/255.255.255.255 - IP:10.0.3.245/255.255.255.255 - IP:10.0.3.246/255.255.255.255 - IP:10.0.3.247/255.255.255.255 - IP:10.0.3.248/255.255.255.255 - IP:10.0.3.249/255.255.255.255 - IP:10.0.3.250/255.255.255.255 - IP:10.0.3.251/255.255.255.255 - IP:10.0.3.252/255.255.255.255 - IP:10.0.3.253/255.255.255.255 - IP:10.0.3.254/255.255.255.255 - IP:10.0.3.255/255.255.255.255 - IP:10.0.4.0/255.255.255.255 - - Signature Algorithm: sha256WithRSAEncryption - 58:a8:fb:63:46:45:e4:1c:02:f9:5f:1a:8f:a3:1d:d4:d0:41: - 9a:13:72:6d:3a:7b:6a:24:dc:70:47:29:f6:c9:73:80:1a:5f: - ee:92:a6:ce:26:94:d0:7b:29:18:07:c8:69:a6:dd:d8:cf:65: - fa:9b:e1:00:a0:7e:ea:a3:a5:92:09:01:95:6d:52:66:12:5f: - c0:49:6b:38:aa:ba:bc:58:ac:c2:03:ee:6f:2d:5f:8e:73:71: - 19:8a:d8:04:4b:00:fd:94:d3:7f:fa:38:6d:21:15:ba:e5:8e: - 7c:5f:2c:5d:58:67:71:f6:37:14:a5:ac:d5:ff:44:ca:b0:2b: - 41:b3:2c:d4:93:25:0a:d2:ff:1d:bb:de:d4:43:fd:05:b7:5f: - 07:3f:b3:04:52:54:83:5d:1f:05:b3:ff:50:47:83:ec:6f:8a: - 92:9a:3b:27:82:05:ea:e2:6f:a2:4a:43:8b:7a:39:a9:6b:da: - 9c:63:39:5d:57:a8:b8:86:84:c9:fe:5b:2a:1e:07:6c:05:18: - d5:40:e7:6d:75:e3:31:1c:d2:1c:e6:3e:46:63:b4:7e:30:d3: - a1:14:77:40:28:6e:d3:3a:fc:e1:80:45:37:7e:5f:ec:5c:66: - bb:6f:4f:82:30:24:53:6c:8f:4a:db:6d:5a:8f:71:63:20:fa: - f9:b6:54:fc ------BEGIN CERTIFICATE----- -MIIzozCCMougAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vwwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCMO0wgjDpMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wgjAdBgNVHR4EgjAUMIIwEKCCMAwwCocICgAAAP////8wCocICgAAAf////8w -CocICgAAAv////8wCocICgAAA/////8wCocICgAABP////8wCocICgAABf////8w -CocICgAABv////8wCocICgAAB/////8wCocICgAACP////8wCocICgAACf////8w -CocICgAACv////8wCocICgAAC/////8wCocICgAADP////8wCocICgAADf////8w -CocICgAADv////8wCocICgAAD/////8wCocICgAAEP////8wCocICgAAEf////8w -CocICgAAEv////8wCocICgAAE/////8wCocICgAAFP////8wCocICgAAFf////8w -CocICgAAFv////8wCocICgAAF/////8wCocICgAAGP////8wCocICgAAGf////8w -CocICgAAGv////8wCocICgAAG/////8wCocICgAAHP////8wCocICgAAHf////8w -CocICgAAHv////8wCocICgAAH/////8wCocICgAAIP////8wCocICgAAIf////8w -CocICgAAIv////8wCocICgAAI/////8wCocICgAAJP////8wCocICgAAJf////8w -CocICgAAJv////8wCocICgAAJ/////8wCocICgAAKP////8wCocICgAAKf////8w -CocICgAAKv////8wCocICgAAK/////8wCocICgAALP////8wCocICgAALf////8w -CocICgAALv////8wCocICgAAL/////8wCocICgAAMP////8wCocICgAAMf////8w -CocICgAAMv////8wCocICgAAM/////8wCocICgAANP////8wCocICgAANf////8w -CocICgAANv////8wCocICgAAN/////8wCocICgAAOP////8wCocICgAAOf////8w -CocICgAAOv////8wCocICgAAO/////8wCocICgAAPP////8wCocICgAAPf////8w -CocICgAAPv////8wCocICgAAP/////8wCocICgAAQP////8wCocICgAAQf////8w -CocICgAAQv////8wCocICgAAQ/////8wCocICgAARP////8wCocICgAARf////8w -CocICgAARv////8wCocICgAAR/////8wCocICgAASP////8wCocICgAASf////8w -CocICgAASv////8wCocICgAAS/////8wCocICgAATP////8wCocICgAATf////8w -CocICgAATv////8wCocICgAAT/////8wCocICgAAUP////8wCocICgAAUf////8w -CocICgAAUv////8wCocICgAAU/////8wCocICgAAVP////8wCocICgAAVf////8w -CocICgAAVv////8wCocICgAAV/////8wCocICgAAWP////8wCocICgAAWf////8w -CocICgAAWv////8wCocICgAAW/////8wCocICgAAXP////8wCocICgAAXf////8w -CocICgAAXv////8wCocICgAAX/////8wCocICgAAYP////8wCocICgAAYf////8w -CocICgAAYv////8wCocICgAAY/////8wCocICgAAZP////8wCocICgAAZf////8w -CocICgAAZv////8wCocICgAAZ/////8wCocICgAAaP////8wCocICgAAaf////8w -CocICgAAav////8wCocICgAAa/////8wCocICgAAbP////8wCocICgAAbf////8w -CocICgAAbv////8wCocICgAAb/////8wCocICgAAcP////8wCocICgAAcf////8w -CocICgAAcv////8wCocICgAAc/////8wCocICgAAdP////8wCocICgAAdf////8w -CocICgAAdv////8wCocICgAAd/////8wCocICgAAeP////8wCocICgAAef////8w -CocICgAAev////8wCocICgAAe/////8wCocICgAAfP////8wCocICgAAff////8w -CocICgAAfv////8wCocICgAAf/////8wCocICgAAgP////8wCocICgAAgf////8w -CocICgAAgv////8wCocICgAAg/////8wCocICgAAhP////8wCocICgAAhf////8w -CocICgAAhv////8wCocICgAAh/////8wCocICgAAiP////8wCocICgAAif////8w -CocICgAAiv////8wCocICgAAi/////8wCocICgAAjP////8wCocICgAAjf////8w -CocICgAAjv////8wCocICgAAj/////8wCocICgAAkP////8wCocICgAAkf////8w -CocICgAAkv////8wCocICgAAk/////8wCocICgAAlP////8wCocICgAAlf////8w -CocICgAAlv////8wCocICgAAl/////8wCocICgAAmP////8wCocICgAAmf////8w -CocICgAAmv////8wCocICgAAm/////8wCocICgAAnP////8wCocICgAAnf////8w -CocICgAAnv////8wCocICgAAn/////8wCocICgAAoP////8wCocICgAAof////8w -CocICgAAov////8wCocICgAAo/////8wCocICgAApP////8wCocICgAApf////8w -CocICgAApv////8wCocICgAAp/////8wCocICgAAqP////8wCocICgAAqf////8w -CocICgAAqv////8wCocICgAAq/////8wCocICgAArP////8wCocICgAArf////8w -CocICgAArv////8wCocICgAAr/////8wCocICgAAsP////8wCocICgAAsf////8w -CocICgAAsv////8wCocICgAAs/////8wCocICgAAtP////8wCocICgAAtf////8w -CocICgAAtv////8wCocICgAAt/////8wCocICgAAuP////8wCocICgAAuf////8w -CocICgAAuv////8wCocICgAAu/////8wCocICgAAvP////8wCocICgAAvf////8w -CocICgAAvv////8wCocICgAAv/////8wCocICgAAwP////8wCocICgAAwf////8w -CocICgAAwv////8wCocICgAAw/////8wCocICgAAxP////8wCocICgAAxf////8w -CocICgAAxv////8wCocICgAAx/////8wCocICgAAyP////8wCocICgAAyf////8w -CocICgAAyv////8wCocICgAAy/////8wCocICgAAzP////8wCocICgAAzf////8w -CocICgAAzv////8wCocICgAAz/////8wCocICgAA0P////8wCocICgAA0f////8w -CocICgAA0v////8wCocICgAA0/////8wCocICgAA1P////8wCocICgAA1f////8w -CocICgAA1v////8wCocICgAA1/////8wCocICgAA2P////8wCocICgAA2f////8w -CocICgAA2v////8wCocICgAA2/////8wCocICgAA3P////8wCocICgAA3f////8w -CocICgAA3v////8wCocICgAA3/////8wCocICgAA4P////8wCocICgAA4f////8w -CocICgAA4v////8wCocICgAA4/////8wCocICgAA5P////8wCocICgAA5f////8w -CocICgAA5v////8wCocICgAA5/////8wCocICgAA6P////8wCocICgAA6f////8w -CocICgAA6v////8wCocICgAA6/////8wCocICgAA7P////8wCocICgAA7f////8w -CocICgAA7v////8wCocICgAA7/////8wCocICgAA8P////8wCocICgAA8f////8w -CocICgAA8v////8wCocICgAA8/////8wCocICgAA9P////8wCocICgAA9f////8w -CocICgAA9v////8wCocICgAA9/////8wCocICgAA+P////8wCocICgAA+f////8w -CocICgAA+v////8wCocICgAA+/////8wCocICgAA/P////8wCocICgAA/f////8w -CocICgAA/v////8wCocICgAA//////8wCocICgABAP////8wCocICgABAf////8w -CocICgABAv////8wCocICgABA/////8wCocICgABBP////8wCocICgABBf////8w -CocICgABBv////8wCocICgABB/////8wCocICgABCP////8wCocICgABCf////8w -CocICgABCv////8wCocICgABC/////8wCocICgABDP////8wCocICgABDf////8w -CocICgABDv////8wCocICgABD/////8wCocICgABEP////8wCocICgABEf////8w -CocICgABEv////8wCocICgABE/////8wCocICgABFP////8wCocICgABFf////8w -CocICgABFv////8wCocICgABF/////8wCocICgABGP////8wCocICgABGf////8w -CocICgABGv////8wCocICgABG/////8wCocICgABHP////8wCocICgABHf////8w -CocICgABHv////8wCocICgABH/////8wCocICgABIP////8wCocICgABIf////8w -CocICgABIv////8wCocICgABI/////8wCocICgABJP////8wCocICgABJf////8w -CocICgABJv////8wCocICgABJ/////8wCocICgABKP////8wCocICgABKf////8w -CocICgABKv////8wCocICgABK/////8wCocICgABLP////8wCocICgABLf////8w -CocICgABLv////8wCocICgABL/////8wCocICgABMP////8wCocICgABMf////8w -CocICgABMv////8wCocICgABM/////8wCocICgABNP////8wCocICgABNf////8w -CocICgABNv////8wCocICgABN/////8wCocICgABOP////8wCocICgABOf////8w -CocICgABOv////8wCocICgABO/////8wCocICgABPP////8wCocICgABPf////8w -CocICgABPv////8wCocICgABP/////8wCocICgABQP////8wCocICgABQf////8w -CocICgABQv////8wCocICgABQ/////8wCocICgABRP////8wCocICgABRf////8w -CocICgABRv////8wCocICgABR/////8wCocICgABSP////8wCocICgABSf////8w -CocICgABSv////8wCocICgABS/////8wCocICgABTP////8wCocICgABTf////8w -CocICgABTv////8wCocICgABT/////8wCocICgABUP////8wCocICgABUf////8w -CocICgABUv////8wCocICgABU/////8wCocICgABVP////8wCocICgABVf////8w -CocICgABVv////8wCocICgABV/////8wCocICgABWP////8wCocICgABWf////8w -CocICgABWv////8wCocICgABW/////8wCocICgABXP////8wCocICgABXf////8w -CocICgABXv////8wCocICgABX/////8wCocICgABYP////8wCocICgABYf////8w -CocICgABYv////8wCocICgABY/////8wCocICgABZP////8wCocICgABZf////8w -CocICgABZv////8wCocICgABZ/////8wCocICgABaP////8wCocICgABaf////8w -CocICgABav////8wCocICgABa/////8wCocICgABbP////8wCocICgABbf////8w -CocICgABbv////8wCocICgABb/////8wCocICgABcP////8wCocICgABcf////8w -CocICgABcv////8wCocICgABc/////8wCocICgABdP////8wCocICgABdf////8w -CocICgABdv////8wCocICgABd/////8wCocICgABeP////8wCocICgABef////8w -CocICgABev////8wCocICgABe/////8wCocICgABfP////8wCocICgABff////8w -CocICgABfv////8wCocICgABf/////8wCocICgABgP////8wCocICgABgf////8w -CocICgABgv////8wCocICgABg/////8wCocICgABhP////8wCocICgABhf////8w -CocICgABhv////8wCocICgABh/////8wCocICgABiP////8wCocICgABif////8w -CocICgABiv////8wCocICgABi/////8wCocICgABjP////8wCocICgABjf////8w -CocICgABjv////8wCocICgABj/////8wCocICgABkP////8wCocICgABkf////8w -CocICgABkv////8wCocICgABk/////8wCocICgABlP////8wCocICgABlf////8w -CocICgABlv////8wCocICgABl/////8wCocICgABmP////8wCocICgABmf////8w -CocICgABmv////8wCocICgABm/////8wCocICgABnP////8wCocICgABnf////8w -CocICgABnv////8wCocICgABn/////8wCocICgABoP////8wCocICgABof////8w -CocICgABov////8wCocICgABo/////8wCocICgABpP////8wCocICgABpf////8w -CocICgABpv////8wCocICgABp/////8wCocICgABqP////8wCocICgABqf////8w -CocICgABqv////8wCocICgABq/////8wCocICgABrP////8wCocICgABrf////8w -CocICgABrv////8wCocICgABr/////8wCocICgABsP////8wCocICgABsf////8w -CocICgABsv////8wCocICgABs/////8wCocICgABtP////8wCocICgABtf////8w -CocICgABtv////8wCocICgABt/////8wCocICgABuP////8wCocICgABuf////8w -CocICgABuv////8wCocICgABu/////8wCocICgABvP////8wCocICgABvf////8w -CocICgABvv////8wCocICgABv/////8wCocICgABwP////8wCocICgABwf////8w -CocICgABwv////8wCocICgABw/////8wCocICgABxP////8wCocICgABxf////8w -CocICgABxv////8wCocICgABx/////8wCocICgAByP////8wCocICgAByf////8w -CocICgAByv////8wCocICgABy/////8wCocICgABzP////8wCocICgABzf////8w -CocICgABzv////8wCocICgABz/////8wCocICgAB0P////8wCocICgAB0f////8w -CocICgAB0v////8wCocICgAB0/////8wCocICgAB1P////8wCocICgAB1f////8w -CocICgAB1v////8wCocICgAB1/////8wCocICgAB2P////8wCocICgAB2f////8w -CocICgAB2v////8wCocICgAB2/////8wCocICgAB3P////8wCocICgAB3f////8w -CocICgAB3v////8wCocICgAB3/////8wCocICgAB4P////8wCocICgAB4f////8w -CocICgAB4v////8wCocICgAB4/////8wCocICgAB5P////8wCocICgAB5f////8w -CocICgAB5v////8wCocICgAB5/////8wCocICgAB6P////8wCocICgAB6f////8w -CocICgAB6v////8wCocICgAB6/////8wCocICgAB7P////8wCocICgAB7f////8w -CocICgAB7v////8wCocICgAB7/////8wCocICgAB8P////8wCocICgAB8f////8w -CocICgAB8v////8wCocICgAB8/////8wCocICgAB9P////8wCocICgAB9f////8w -CocICgAB9v////8wCocICgAB9/////8wCocICgAB+P////8wCocICgAB+f////8w -CocICgAB+v////8wCocICgAB+/////8wCocICgAB/P////8wCocICgAB/f////8w -CocICgAB/v////8wCocICgAB//////8wCocICgACAP////8wCocICgACAf////8w -CocICgACAv////8wCocICgACA/////8wCocICgACBP////8wCocICgACBf////8w -CocICgACBv////8wCocICgACB/////8wCocICgACCP////8wCocICgACCf////8w -CocICgACCv////8wCocICgACC/////8wCocICgACDP////8wCocICgACDf////8w -CocICgACDv////8wCocICgACD/////8wCocICgACEP////8wCocICgACEf////8w -CocICgACEv////8wCocICgACE/////8wCocICgACFP////8wCocICgACFf////8w -CocICgACFv////8wCocICgACF/////8wCocICgACGP////8wCocICgACGf////8w -CocICgACGv////8wCocICgACG/////8wCocICgACHP////8wCocICgACHf////8w -CocICgACHv////8wCocICgACH/////8wCocICgACIP////8wCocICgACIf////8w -CocICgACIv////8wCocICgACI/////8wCocICgACJP////8wCocICgACJf////8w -CocICgACJv////8wCocICgACJ/////8wCocICgACKP////8wCocICgACKf////8w -CocICgACKv////8wCocICgACK/////8wCocICgACLP////8wCocICgACLf////8w -CocICgACLv////8wCocICgACL/////8wCocICgACMP////8wCocICgACMf////8w -CocICgACMv////8wCocICgACM/////8wCocICgACNP////8wCocICgACNf////8w -CocICgACNv////8wCocICgACN/////8wCocICgACOP////8wCocICgACOf////8w -CocICgACOv////8wCocICgACO/////8wCocICgACPP////8wCocICgACPf////8w -CocICgACPv////8wCocICgACP/////8wCocICgACQP////8wCocICgACQf////8w -CocICgACQv////8wCocICgACQ/////8wCocICgACRP////8wCocICgACRf////8w -CocICgACRv////8wCocICgACR/////8wCocICgACSP////8wCocICgACSf////8w -CocICgACSv////8wCocICgACS/////8wCocICgACTP////8wCocICgACTf////8w -CocICgACTv////8wCocICgACT/////8wCocICgACUP////8wCocICgACUf////8w -CocICgACUv////8wCocICgACU/////8wCocICgACVP////8wCocICgACVf////8w -CocICgACVv////8wCocICgACV/////8wCocICgACWP////8wCocICgACWf////8w -CocICgACWv////8wCocICgACW/////8wCocICgACXP////8wCocICgACXf////8w -CocICgACXv////8wCocICgACX/////8wCocICgACYP////8wCocICgACYf////8w -CocICgACYv////8wCocICgACY/////8wCocICgACZP////8wCocICgACZf////8w -CocICgACZv////8wCocICgACZ/////8wCocICgACaP////8wCocICgACaf////8w -CocICgACav////8wCocICgACa/////8wCocICgACbP////8wCocICgACbf////8w -CocICgACbv////8wCocICgACb/////8wCocICgACcP////8wCocICgACcf////8w -CocICgACcv////8wCocICgACc/////8wCocICgACdP////8wCocICgACdf////8w -CocICgACdv////8wCocICgACd/////8wCocICgACeP////8wCocICgACef////8w -CocICgACev////8wCocICgACe/////8wCocICgACfP////8wCocICgACff////8w -CocICgACfv////8wCocICgACf/////8wCocICgACgP////8wCocICgACgf////8w -CocICgACgv////8wCocICgACg/////8wCocICgAChP////8wCocICgAChf////8w -CocICgAChv////8wCocICgACh/////8wCocICgACiP////8wCocICgACif////8w -CocICgACiv////8wCocICgACi/////8wCocICgACjP////8wCocICgACjf////8w -CocICgACjv////8wCocICgACj/////8wCocICgACkP////8wCocICgACkf////8w -CocICgACkv////8wCocICgACk/////8wCocICgAClP////8wCocICgAClf////8w -CocICgAClv////8wCocICgACl/////8wCocICgACmP////8wCocICgACmf////8w -CocICgACmv////8wCocICgACm/////8wCocICgACnP////8wCocICgACnf////8w -CocICgACnv////8wCocICgACn/////8wCocICgACoP////8wCocICgACof////8w -CocICgACov////8wCocICgACo/////8wCocICgACpP////8wCocICgACpf////8w -CocICgACpv////8wCocICgACp/////8wCocICgACqP////8wCocICgACqf////8w -CocICgACqv////8wCocICgACq/////8wCocICgACrP////8wCocICgACrf////8w -CocICgACrv////8wCocICgACr/////8wCocICgACsP////8wCocICgACsf////8w -CocICgACsv////8wCocICgACs/////8wCocICgACtP////8wCocICgACtf////8w -CocICgACtv////8wCocICgACt/////8wCocICgACuP////8wCocICgACuf////8w -CocICgACuv////8wCocICgACu/////8wCocICgACvP////8wCocICgACvf////8w -CocICgACvv////8wCocICgACv/////8wCocICgACwP////8wCocICgACwf////8w -CocICgACwv////8wCocICgACw/////8wCocICgACxP////8wCocICgACxf////8w -CocICgACxv////8wCocICgACx/////8wCocICgACyP////8wCocICgACyf////8w -CocICgACyv////8wCocICgACy/////8wCocICgACzP////8wCocICgACzf////8w -CocICgACzv////8wCocICgACz/////8wCocICgAC0P////8wCocICgAC0f////8w -CocICgAC0v////8wCocICgAC0/////8wCocICgAC1P////8wCocICgAC1f////8w -CocICgAC1v////8wCocICgAC1/////8wCocICgAC2P////8wCocICgAC2f////8w -CocICgAC2v////8wCocICgAC2/////8wCocICgAC3P////8wCocICgAC3f////8w -CocICgAC3v////8wCocICgAC3/////8wCocICgAC4P////8wCocICgAC4f////8w -CocICgAC4v////8wCocICgAC4/////8wCocICgAC5P////8wCocICgAC5f////8w -CocICgAC5v////8wCocICgAC5/////8wCocICgAC6P////8wCocICgAC6f////8w -CocICgAC6v////8wCocICgAC6/////8wCocICgAC7P////8wCocICgAC7f////8w -CocICgAC7v////8wCocICgAC7/////8wCocICgAC8P////8wCocICgAC8f////8w -CocICgAC8v////8wCocICgAC8/////8wCocICgAC9P////8wCocICgAC9f////8w -CocICgAC9v////8wCocICgAC9/////8wCocICgAC+P////8wCocICgAC+f////8w -CocICgAC+v////8wCocICgAC+/////8wCocICgAC/P////8wCocICgAC/f////8w -CocICgAC/v////8wCocICgAC//////8wCocICgADAP////8wCocICgADAf////8w -CocICgADAv////8wCocICgADA/////8wCocICgADBP////8wCocICgADBf////8w -CocICgADBv////8wCocICgADB/////8wCocICgADCP////8wCocICgADCf////8w -CocICgADCv////8wCocICgADC/////8wCocICgADDP////8wCocICgADDf////8w -CocICgADDv////8wCocICgADD/////8wCocICgADEP////8wCocICgADEf////8w -CocICgADEv////8wCocICgADE/////8wCocICgADFP////8wCocICgADFf////8w -CocICgADFv////8wCocICgADF/////8wCocICgADGP////8wCocICgADGf////8w -CocICgADGv////8wCocICgADG/////8wCocICgADHP////8wCocICgADHf////8w -CocICgADHv////8wCocICgADH/////8wCocICgADIP////8wCocICgADIf////8w -CocICgADIv////8wCocICgADI/////8wCocICgADJP////8wCocICgADJf////8w -CocICgADJv////8wCocICgADJ/////8wCocICgADKP////8wCocICgADKf////8w -CocICgADKv////8wCocICgADK/////8wCocICgADLP////8wCocICgADLf////8w -CocICgADLv////8wCocICgADL/////8wCocICgADMP////8wCocICgADMf////8w -CocICgADMv////8wCocICgADM/////8wCocICgADNP////8wCocICgADNf////8w -CocICgADNv////8wCocICgADN/////8wCocICgADOP////8wCocICgADOf////8w -CocICgADOv////8wCocICgADO/////8wCocICgADPP////8wCocICgADPf////8w -CocICgADPv////8wCocICgADP/////8wCocICgADQP////8wCocICgADQf////8w -CocICgADQv////8wCocICgADQ/////8wCocICgADRP////8wCocICgADRf////8w -CocICgADRv////8wCocICgADR/////8wCocICgADSP////8wCocICgADSf////8w -CocICgADSv////8wCocICgADS/////8wCocICgADTP////8wCocICgADTf////8w -CocICgADTv////8wCocICgADT/////8wCocICgADUP////8wCocICgADUf////8w -CocICgADUv////8wCocICgADU/////8wCocICgADVP////8wCocICgADVf////8w -CocICgADVv////8wCocICgADV/////8wCocICgADWP////8wCocICgADWf////8w -CocICgADWv////8wCocICgADW/////8wCocICgADXP////8wCocICgADXf////8w -CocICgADXv////8wCocICgADX/////8wCocICgADYP////8wCocICgADYf////8w -CocICgADYv////8wCocICgADY/////8wCocICgADZP////8wCocICgADZf////8w -CocICgADZv////8wCocICgADZ/////8wCocICgADaP////8wCocICgADaf////8w -CocICgADav////8wCocICgADa/////8wCocICgADbP////8wCocICgADbf////8w -CocICgADbv////8wCocICgADb/////8wCocICgADcP////8wCocICgADcf////8w -CocICgADcv////8wCocICgADc/////8wCocICgADdP////8wCocICgADdf////8w -CocICgADdv////8wCocICgADd/////8wCocICgADeP////8wCocICgADef////8w -CocICgADev////8wCocICgADe/////8wCocICgADfP////8wCocICgADff////8w -CocICgADfv////8wCocICgADf/////8wCocICgADgP////8wCocICgADgf////8w -CocICgADgv////8wCocICgADg/////8wCocICgADhP////8wCocICgADhf////8w -CocICgADhv////8wCocICgADh/////8wCocICgADiP////8wCocICgADif////8w -CocICgADiv////8wCocICgADi/////8wCocICgADjP////8wCocICgADjf////8w -CocICgADjv////8wCocICgADj/////8wCocICgADkP////8wCocICgADkf////8w -CocICgADkv////8wCocICgADk/////8wCocICgADlP////8wCocICgADlf////8w -CocICgADlv////8wCocICgADl/////8wCocICgADmP////8wCocICgADmf////8w -CocICgADmv////8wCocICgADm/////8wCocICgADnP////8wCocICgADnf////8w -CocICgADnv////8wCocICgADn/////8wCocICgADoP////8wCocICgADof////8w -CocICgADov////8wCocICgADo/////8wCocICgADpP////8wCocICgADpf////8w -CocICgADpv////8wCocICgADp/////8wCocICgADqP////8wCocICgADqf////8w -CocICgADqv////8wCocICgADq/////8wCocICgADrP////8wCocICgADrf////8w -CocICgADrv////8wCocICgADr/////8wCocICgADsP////8wCocICgADsf////8w -CocICgADsv////8wCocICgADs/////8wCocICgADtP////8wCocICgADtf////8w -CocICgADtv////8wCocICgADt/////8wCocICgADuP////8wCocICgADuf////8w -CocICgADuv////8wCocICgADu/////8wCocICgADvP////8wCocICgADvf////8w -CocICgADvv////8wCocICgADv/////8wCocICgADwP////8wCocICgADwf////8w -CocICgADwv////8wCocICgADw/////8wCocICgADxP////8wCocICgADxf////8w -CocICgADxv////8wCocICgADx/////8wCocICgADyP////8wCocICgADyf////8w -CocICgADyv////8wCocICgADy/////8wCocICgADzP////8wCocICgADzf////8w -CocICgADzv////8wCocICgADz/////8wCocICgAD0P////8wCocICgAD0f////8w -CocICgAD0v////8wCocICgAD0/////8wCocICgAD1P////8wCocICgAD1f////8w -CocICgAD1v////8wCocICgAD1/////8wCocICgAD2P////8wCocICgAD2f////8w -CocICgAD2v////8wCocICgAD2/////8wCocICgAD3P////8wCocICgAD3f////8w -CocICgAD3v////8wCocICgAD3/////8wCocICgAD4P////8wCocICgAD4f////8w -CocICgAD4v////8wCocICgAD4/////8wCocICgAD5P////8wCocICgAD5f////8w -CocICgAD5v////8wCocICgAD5/////8wCocICgAD6P////8wCocICgAD6f////8w -CocICgAD6v////8wCocICgAD6/////8wCocICgAD7P////8wCocICgAD7f////8w -CocICgAD7v////8wCocICgAD7/////8wCocICgAD8P////8wCocICgAD8f////8w -CocICgAD8v////8wCocICgAD8/////8wCocICgAD9P////8wCocICgAD9f////8w -CocICgAD9v////8wCocICgAD9/////8wCocICgAD+P////8wCocICgAD+f////8w -CocICgAD+v////8wCocICgAD+/////8wCocICgAD/P////8wCocICgAD/f////8w -CocICgAD/v////8wCocICgAD//////8wCocICgAEAP////8wDQYJKoZIhvcNAQEL -BQADggEBAFio+2NGReQcAvlfGo+jHdTQQZoTcm06e2ok3HBHKfbJc4AaX+6Sps4m -lNB7KRgHyGmm3djPZfqb4QCgfuqjpZIJAZVtUmYSX8BJaziqurxYrMID7m8tX45z -cRmK2ARLAP2U03/6OG0hFbrljnxfLF1YZ3H2NxSlrNX/RMqwK0GzLNSTJQrS/x27 -3tRD/QW3Xwc/swRSVINdHwWz/1BHg+xvipKaOyeCBerib6JKQ4t6Oalr2pxjOV1X -qLiGhMn+WyoeB2wFGNVA52114zEc0hzmPkZjtH4w06EUd0AobtM6/OGARTd+X+xc -ZrtvT4IwJFNsj0rbbVqPcWMg+vm2VPw= ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.cnf deleted file mode 100644 index dd306c0e05..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.cnf +++ /dev/null @@ -1,4167 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Intermediate" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,keyCertSign,cRLSign -basicConstraints = critical,CA:true -nameConstraints = @nameConstraints_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Intermediate_7.pem -new_certs_dir = out -serial = out/Intermediate.serial -database = out/Intermediate.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Intermediate.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Intermediate.cer - -[crl_info] -URI.0 = http://url-for-crl/Intermediate.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[nameConstraints_info] -permitted;dirName.1 = nameConstraints_dirname_p1 -permitted;dirName.2 = nameConstraints_dirname_p2 -permitted;dirName.3 = nameConstraints_dirname_p3 -permitted;dirName.4 = nameConstraints_dirname_p4 -permitted;dirName.5 = nameConstraints_dirname_p5 -permitted;dirName.6 = nameConstraints_dirname_p6 -permitted;dirName.7 = nameConstraints_dirname_p7 -permitted;dirName.8 = nameConstraints_dirname_p8 -permitted;dirName.9 = nameConstraints_dirname_p9 -permitted;dirName.10 = nameConstraints_dirname_p10 -permitted;dirName.11 = nameConstraints_dirname_p11 -permitted;dirName.12 = nameConstraints_dirname_p12 -permitted;dirName.13 = nameConstraints_dirname_p13 -permitted;dirName.14 = nameConstraints_dirname_p14 -permitted;dirName.15 = nameConstraints_dirname_p15 -permitted;dirName.16 = nameConstraints_dirname_p16 -permitted;dirName.17 = nameConstraints_dirname_p17 -permitted;dirName.18 = nameConstraints_dirname_p18 -permitted;dirName.19 = nameConstraints_dirname_p19 -permitted;dirName.20 = nameConstraints_dirname_p20 -permitted;dirName.21 = nameConstraints_dirname_p21 -permitted;dirName.22 = nameConstraints_dirname_p22 -permitted;dirName.23 = nameConstraints_dirname_p23 -permitted;dirName.24 = nameConstraints_dirname_p24 -permitted;dirName.25 = nameConstraints_dirname_p25 -permitted;dirName.26 = nameConstraints_dirname_p26 -permitted;dirName.27 = nameConstraints_dirname_p27 -permitted;dirName.28 = nameConstraints_dirname_p28 -permitted;dirName.29 = nameConstraints_dirname_p29 -permitted;dirName.30 = nameConstraints_dirname_p30 -permitted;dirName.31 = nameConstraints_dirname_p31 -permitted;dirName.32 = nameConstraints_dirname_p32 -permitted;dirName.33 = nameConstraints_dirname_p33 -permitted;dirName.34 = nameConstraints_dirname_p34 -permitted;dirName.35 = nameConstraints_dirname_p35 -permitted;dirName.36 = nameConstraints_dirname_p36 -permitted;dirName.37 = nameConstraints_dirname_p37 -permitted;dirName.38 = nameConstraints_dirname_p38 -permitted;dirName.39 = nameConstraints_dirname_p39 -permitted;dirName.40 = nameConstraints_dirname_p40 -permitted;dirName.41 = nameConstraints_dirname_p41 -permitted;dirName.42 = nameConstraints_dirname_p42 -permitted;dirName.43 = nameConstraints_dirname_p43 -permitted;dirName.44 = nameConstraints_dirname_p44 -permitted;dirName.45 = nameConstraints_dirname_p45 -permitted;dirName.46 = nameConstraints_dirname_p46 -permitted;dirName.47 = nameConstraints_dirname_p47 -permitted;dirName.48 = nameConstraints_dirname_p48 -permitted;dirName.49 = nameConstraints_dirname_p49 -permitted;dirName.50 = nameConstraints_dirname_p50 -permitted;dirName.51 = nameConstraints_dirname_p51 -permitted;dirName.52 = nameConstraints_dirname_p52 -permitted;dirName.53 = nameConstraints_dirname_p53 -permitted;dirName.54 = nameConstraints_dirname_p54 -permitted;dirName.55 = nameConstraints_dirname_p55 -permitted;dirName.56 = nameConstraints_dirname_p56 -permitted;dirName.57 = nameConstraints_dirname_p57 -permitted;dirName.58 = nameConstraints_dirname_p58 -permitted;dirName.59 = nameConstraints_dirname_p59 -permitted;dirName.60 = nameConstraints_dirname_p60 -permitted;dirName.61 = nameConstraints_dirname_p61 -permitted;dirName.62 = nameConstraints_dirname_p62 -permitted;dirName.63 = nameConstraints_dirname_p63 -permitted;dirName.64 = nameConstraints_dirname_p64 -permitted;dirName.65 = nameConstraints_dirname_p65 -permitted;dirName.66 = nameConstraints_dirname_p66 -permitted;dirName.67 = nameConstraints_dirname_p67 -permitted;dirName.68 = nameConstraints_dirname_p68 -permitted;dirName.69 = nameConstraints_dirname_p69 -permitted;dirName.70 = nameConstraints_dirname_p70 -permitted;dirName.71 = nameConstraints_dirname_p71 -permitted;dirName.72 = nameConstraints_dirname_p72 -permitted;dirName.73 = nameConstraints_dirname_p73 -permitted;dirName.74 = nameConstraints_dirname_p74 -permitted;dirName.75 = nameConstraints_dirname_p75 -permitted;dirName.76 = nameConstraints_dirname_p76 -permitted;dirName.77 = nameConstraints_dirname_p77 -permitted;dirName.78 = nameConstraints_dirname_p78 -permitted;dirName.79 = nameConstraints_dirname_p79 -permitted;dirName.80 = nameConstraints_dirname_p80 -permitted;dirName.81 = nameConstraints_dirname_p81 -permitted;dirName.82 = nameConstraints_dirname_p82 -permitted;dirName.83 = nameConstraints_dirname_p83 -permitted;dirName.84 = nameConstraints_dirname_p84 -permitted;dirName.85 = nameConstraints_dirname_p85 -permitted;dirName.86 = nameConstraints_dirname_p86 -permitted;dirName.87 = nameConstraints_dirname_p87 -permitted;dirName.88 = nameConstraints_dirname_p88 -permitted;dirName.89 = nameConstraints_dirname_p89 -permitted;dirName.90 = nameConstraints_dirname_p90 -permitted;dirName.91 = nameConstraints_dirname_p91 -permitted;dirName.92 = nameConstraints_dirname_p92 -permitted;dirName.93 = nameConstraints_dirname_p93 -permitted;dirName.94 = nameConstraints_dirname_p94 -permitted;dirName.95 = nameConstraints_dirname_p95 -permitted;dirName.96 = nameConstraints_dirname_p96 -permitted;dirName.97 = nameConstraints_dirname_p97 -permitted;dirName.98 = nameConstraints_dirname_p98 -permitted;dirName.99 = nameConstraints_dirname_p99 -permitted;dirName.100 = nameConstraints_dirname_p100 -permitted;dirName.101 = nameConstraints_dirname_p101 -permitted;dirName.102 = nameConstraints_dirname_p102 -permitted;dirName.103 = nameConstraints_dirname_p103 -permitted;dirName.104 = nameConstraints_dirname_p104 -permitted;dirName.105 = nameConstraints_dirname_p105 -permitted;dirName.106 = nameConstraints_dirname_p106 -permitted;dirName.107 = nameConstraints_dirname_p107 -permitted;dirName.108 = nameConstraints_dirname_p108 -permitted;dirName.109 = nameConstraints_dirname_p109 -permitted;dirName.110 = nameConstraints_dirname_p110 -permitted;dirName.111 = nameConstraints_dirname_p111 -permitted;dirName.112 = nameConstraints_dirname_p112 -permitted;dirName.113 = nameConstraints_dirname_p113 -permitted;dirName.114 = nameConstraints_dirname_p114 -permitted;dirName.115 = nameConstraints_dirname_p115 -permitted;dirName.116 = nameConstraints_dirname_p116 -permitted;dirName.117 = nameConstraints_dirname_p117 -permitted;dirName.118 = nameConstraints_dirname_p118 -permitted;dirName.119 = nameConstraints_dirname_p119 -permitted;dirName.120 = nameConstraints_dirname_p120 -permitted;dirName.121 = nameConstraints_dirname_p121 -permitted;dirName.122 = nameConstraints_dirname_p122 -permitted;dirName.123 = nameConstraints_dirname_p123 -permitted;dirName.124 = nameConstraints_dirname_p124 -permitted;dirName.125 = nameConstraints_dirname_p125 -permitted;dirName.126 = nameConstraints_dirname_p126 -permitted;dirName.127 = nameConstraints_dirname_p127 -permitted;dirName.128 = nameConstraints_dirname_p128 -permitted;dirName.129 = nameConstraints_dirname_p129 -permitted;dirName.130 = nameConstraints_dirname_p130 -permitted;dirName.131 = nameConstraints_dirname_p131 -permitted;dirName.132 = nameConstraints_dirname_p132 -permitted;dirName.133 = nameConstraints_dirname_p133 -permitted;dirName.134 = nameConstraints_dirname_p134 -permitted;dirName.135 = nameConstraints_dirname_p135 -permitted;dirName.136 = nameConstraints_dirname_p136 -permitted;dirName.137 = nameConstraints_dirname_p137 -permitted;dirName.138 = nameConstraints_dirname_p138 -permitted;dirName.139 = nameConstraints_dirname_p139 -permitted;dirName.140 = nameConstraints_dirname_p140 -permitted;dirName.141 = nameConstraints_dirname_p141 -permitted;dirName.142 = nameConstraints_dirname_p142 -permitted;dirName.143 = nameConstraints_dirname_p143 -permitted;dirName.144 = nameConstraints_dirname_p144 -permitted;dirName.145 = nameConstraints_dirname_p145 -permitted;dirName.146 = nameConstraints_dirname_p146 -permitted;dirName.147 = nameConstraints_dirname_p147 -permitted;dirName.148 = nameConstraints_dirname_p148 -permitted;dirName.149 = nameConstraints_dirname_p149 -permitted;dirName.150 = nameConstraints_dirname_p150 -permitted;dirName.151 = nameConstraints_dirname_p151 -permitted;dirName.152 = nameConstraints_dirname_p152 -permitted;dirName.153 = nameConstraints_dirname_p153 -permitted;dirName.154 = nameConstraints_dirname_p154 -permitted;dirName.155 = nameConstraints_dirname_p155 -permitted;dirName.156 = nameConstraints_dirname_p156 -permitted;dirName.157 = nameConstraints_dirname_p157 -permitted;dirName.158 = nameConstraints_dirname_p158 -permitted;dirName.159 = nameConstraints_dirname_p159 -permitted;dirName.160 = nameConstraints_dirname_p160 -permitted;dirName.161 = nameConstraints_dirname_p161 -permitted;dirName.162 = nameConstraints_dirname_p162 -permitted;dirName.163 = nameConstraints_dirname_p163 -permitted;dirName.164 = nameConstraints_dirname_p164 -permitted;dirName.165 = nameConstraints_dirname_p165 -permitted;dirName.166 = nameConstraints_dirname_p166 -permitted;dirName.167 = nameConstraints_dirname_p167 -permitted;dirName.168 = nameConstraints_dirname_p168 -permitted;dirName.169 = nameConstraints_dirname_p169 -permitted;dirName.170 = nameConstraints_dirname_p170 -permitted;dirName.171 = nameConstraints_dirname_p171 -permitted;dirName.172 = nameConstraints_dirname_p172 -permitted;dirName.173 = nameConstraints_dirname_p173 -permitted;dirName.174 = nameConstraints_dirname_p174 -permitted;dirName.175 = nameConstraints_dirname_p175 -permitted;dirName.176 = nameConstraints_dirname_p176 -permitted;dirName.177 = nameConstraints_dirname_p177 -permitted;dirName.178 = nameConstraints_dirname_p178 -permitted;dirName.179 = nameConstraints_dirname_p179 -permitted;dirName.180 = nameConstraints_dirname_p180 -permitted;dirName.181 = nameConstraints_dirname_p181 -permitted;dirName.182 = nameConstraints_dirname_p182 -permitted;dirName.183 = nameConstraints_dirname_p183 -permitted;dirName.184 = nameConstraints_dirname_p184 -permitted;dirName.185 = nameConstraints_dirname_p185 -permitted;dirName.186 = nameConstraints_dirname_p186 -permitted;dirName.187 = nameConstraints_dirname_p187 -permitted;dirName.188 = nameConstraints_dirname_p188 -permitted;dirName.189 = nameConstraints_dirname_p189 -permitted;dirName.190 = nameConstraints_dirname_p190 -permitted;dirName.191 = nameConstraints_dirname_p191 -permitted;dirName.192 = nameConstraints_dirname_p192 -permitted;dirName.193 = nameConstraints_dirname_p193 -permitted;dirName.194 = nameConstraints_dirname_p194 -permitted;dirName.195 = nameConstraints_dirname_p195 -permitted;dirName.196 = nameConstraints_dirname_p196 -permitted;dirName.197 = nameConstraints_dirname_p197 -permitted;dirName.198 = nameConstraints_dirname_p198 -permitted;dirName.199 = nameConstraints_dirname_p199 -permitted;dirName.200 = nameConstraints_dirname_p200 -permitted;dirName.201 = nameConstraints_dirname_p201 -permitted;dirName.202 = nameConstraints_dirname_p202 -permitted;dirName.203 = nameConstraints_dirname_p203 -permitted;dirName.204 = nameConstraints_dirname_p204 -permitted;dirName.205 = nameConstraints_dirname_p205 -permitted;dirName.206 = nameConstraints_dirname_p206 -permitted;dirName.207 = nameConstraints_dirname_p207 -permitted;dirName.208 = nameConstraints_dirname_p208 -permitted;dirName.209 = nameConstraints_dirname_p209 -permitted;dirName.210 = nameConstraints_dirname_p210 -permitted;dirName.211 = nameConstraints_dirname_p211 -permitted;dirName.212 = nameConstraints_dirname_p212 -permitted;dirName.213 = nameConstraints_dirname_p213 -permitted;dirName.214 = nameConstraints_dirname_p214 -permitted;dirName.215 = nameConstraints_dirname_p215 -permitted;dirName.216 = nameConstraints_dirname_p216 -permitted;dirName.217 = nameConstraints_dirname_p217 -permitted;dirName.218 = nameConstraints_dirname_p218 -permitted;dirName.219 = nameConstraints_dirname_p219 -permitted;dirName.220 = nameConstraints_dirname_p220 -permitted;dirName.221 = nameConstraints_dirname_p221 -permitted;dirName.222 = nameConstraints_dirname_p222 -permitted;dirName.223 = nameConstraints_dirname_p223 -permitted;dirName.224 = nameConstraints_dirname_p224 -permitted;dirName.225 = nameConstraints_dirname_p225 -permitted;dirName.226 = nameConstraints_dirname_p226 -permitted;dirName.227 = nameConstraints_dirname_p227 -permitted;dirName.228 = nameConstraints_dirname_p228 -permitted;dirName.229 = nameConstraints_dirname_p229 -permitted;dirName.230 = nameConstraints_dirname_p230 -permitted;dirName.231 = nameConstraints_dirname_p231 -permitted;dirName.232 = nameConstraints_dirname_p232 -permitted;dirName.233 = nameConstraints_dirname_p233 -permitted;dirName.234 = nameConstraints_dirname_p234 -permitted;dirName.235 = nameConstraints_dirname_p235 -permitted;dirName.236 = nameConstraints_dirname_p236 -permitted;dirName.237 = nameConstraints_dirname_p237 -permitted;dirName.238 = nameConstraints_dirname_p238 -permitted;dirName.239 = nameConstraints_dirname_p239 -permitted;dirName.240 = nameConstraints_dirname_p240 -permitted;dirName.241 = nameConstraints_dirname_p241 -permitted;dirName.242 = nameConstraints_dirname_p242 -permitted;dirName.243 = nameConstraints_dirname_p243 -permitted;dirName.244 = nameConstraints_dirname_p244 -permitted;dirName.245 = nameConstraints_dirname_p245 -permitted;dirName.246 = nameConstraints_dirname_p246 -permitted;dirName.247 = nameConstraints_dirname_p247 -permitted;dirName.248 = nameConstraints_dirname_p248 -permitted;dirName.249 = nameConstraints_dirname_p249 -permitted;dirName.250 = nameConstraints_dirname_p250 -permitted;dirName.251 = nameConstraints_dirname_p251 -permitted;dirName.252 = nameConstraints_dirname_p252 -permitted;dirName.253 = nameConstraints_dirname_p253 -permitted;dirName.254 = nameConstraints_dirname_p254 -permitted;dirName.255 = nameConstraints_dirname_p255 -permitted;dirName.256 = nameConstraints_dirname_p256 -permitted;dirName.257 = nameConstraints_dirname_p257 -permitted;dirName.258 = nameConstraints_dirname_p258 -permitted;dirName.259 = nameConstraints_dirname_p259 -permitted;dirName.260 = nameConstraints_dirname_p260 -permitted;dirName.261 = nameConstraints_dirname_p261 -permitted;dirName.262 = nameConstraints_dirname_p262 -permitted;dirName.263 = nameConstraints_dirname_p263 -permitted;dirName.264 = nameConstraints_dirname_p264 -permitted;dirName.265 = nameConstraints_dirname_p265 -permitted;dirName.266 = nameConstraints_dirname_p266 -permitted;dirName.267 = nameConstraints_dirname_p267 -permitted;dirName.268 = nameConstraints_dirname_p268 -permitted;dirName.269 = nameConstraints_dirname_p269 -permitted;dirName.270 = nameConstraints_dirname_p270 -permitted;dirName.271 = nameConstraints_dirname_p271 -permitted;dirName.272 = nameConstraints_dirname_p272 -permitted;dirName.273 = nameConstraints_dirname_p273 -permitted;dirName.274 = nameConstraints_dirname_p274 -permitted;dirName.275 = nameConstraints_dirname_p275 -permitted;dirName.276 = nameConstraints_dirname_p276 -permitted;dirName.277 = nameConstraints_dirname_p277 -permitted;dirName.278 = nameConstraints_dirname_p278 -permitted;dirName.279 = nameConstraints_dirname_p279 -permitted;dirName.280 = nameConstraints_dirname_p280 -permitted;dirName.281 = nameConstraints_dirname_p281 -permitted;dirName.282 = nameConstraints_dirname_p282 -permitted;dirName.283 = nameConstraints_dirname_p283 -permitted;dirName.284 = nameConstraints_dirname_p284 -permitted;dirName.285 = nameConstraints_dirname_p285 -permitted;dirName.286 = nameConstraints_dirname_p286 -permitted;dirName.287 = nameConstraints_dirname_p287 -permitted;dirName.288 = nameConstraints_dirname_p288 -permitted;dirName.289 = nameConstraints_dirname_p289 -permitted;dirName.290 = nameConstraints_dirname_p290 -permitted;dirName.291 = nameConstraints_dirname_p291 -permitted;dirName.292 = nameConstraints_dirname_p292 -permitted;dirName.293 = nameConstraints_dirname_p293 -permitted;dirName.294 = nameConstraints_dirname_p294 -permitted;dirName.295 = nameConstraints_dirname_p295 -permitted;dirName.296 = nameConstraints_dirname_p296 -permitted;dirName.297 = nameConstraints_dirname_p297 -permitted;dirName.298 = nameConstraints_dirname_p298 -permitted;dirName.299 = nameConstraints_dirname_p299 -permitted;dirName.300 = nameConstraints_dirname_p300 -permitted;dirName.301 = nameConstraints_dirname_p301 -permitted;dirName.302 = nameConstraints_dirname_p302 -permitted;dirName.303 = nameConstraints_dirname_p303 -permitted;dirName.304 = nameConstraints_dirname_p304 -permitted;dirName.305 = nameConstraints_dirname_p305 -permitted;dirName.306 = nameConstraints_dirname_p306 -permitted;dirName.307 = nameConstraints_dirname_p307 -permitted;dirName.308 = nameConstraints_dirname_p308 -permitted;dirName.309 = nameConstraints_dirname_p309 -permitted;dirName.310 = nameConstraints_dirname_p310 -permitted;dirName.311 = nameConstraints_dirname_p311 -permitted;dirName.312 = nameConstraints_dirname_p312 -permitted;dirName.313 = nameConstraints_dirname_p313 -permitted;dirName.314 = nameConstraints_dirname_p314 -permitted;dirName.315 = nameConstraints_dirname_p315 -permitted;dirName.316 = nameConstraints_dirname_p316 -permitted;dirName.317 = nameConstraints_dirname_p317 -permitted;dirName.318 = nameConstraints_dirname_p318 -permitted;dirName.319 = nameConstraints_dirname_p319 -permitted;dirName.320 = nameConstraints_dirname_p320 -permitted;dirName.321 = nameConstraints_dirname_p321 -permitted;dirName.322 = nameConstraints_dirname_p322 -permitted;dirName.323 = nameConstraints_dirname_p323 -permitted;dirName.324 = nameConstraints_dirname_p324 -permitted;dirName.325 = nameConstraints_dirname_p325 -permitted;dirName.326 = nameConstraints_dirname_p326 -permitted;dirName.327 = nameConstraints_dirname_p327 -permitted;dirName.328 = nameConstraints_dirname_p328 -permitted;dirName.329 = nameConstraints_dirname_p329 -permitted;dirName.330 = nameConstraints_dirname_p330 -permitted;dirName.331 = nameConstraints_dirname_p331 -permitted;dirName.332 = nameConstraints_dirname_p332 -permitted;dirName.333 = nameConstraints_dirname_p333 -permitted;dirName.334 = nameConstraints_dirname_p334 -permitted;dirName.335 = nameConstraints_dirname_p335 -permitted;dirName.336 = nameConstraints_dirname_p336 -permitted;dirName.337 = nameConstraints_dirname_p337 -permitted;dirName.338 = nameConstraints_dirname_p338 -permitted;dirName.339 = nameConstraints_dirname_p339 -permitted;dirName.340 = nameConstraints_dirname_p340 -permitted;dirName.341 = nameConstraints_dirname_p341 -permitted;dirName.342 = nameConstraints_dirname_p342 -permitted;dirName.343 = nameConstraints_dirname_p343 -permitted;dirName.344 = nameConstraints_dirname_p344 -permitted;dirName.345 = nameConstraints_dirname_p345 -permitted;dirName.346 = nameConstraints_dirname_p346 -permitted;dirName.347 = nameConstraints_dirname_p347 -permitted;dirName.348 = nameConstraints_dirname_p348 -permitted;dirName.349 = nameConstraints_dirname_p349 -permitted;dirName.350 = nameConstraints_dirname_p350 -permitted;dirName.351 = nameConstraints_dirname_p351 -permitted;dirName.352 = nameConstraints_dirname_p352 -permitted;dirName.353 = nameConstraints_dirname_p353 -permitted;dirName.354 = nameConstraints_dirname_p354 -permitted;dirName.355 = nameConstraints_dirname_p355 -permitted;dirName.356 = nameConstraints_dirname_p356 -permitted;dirName.357 = nameConstraints_dirname_p357 -permitted;dirName.358 = nameConstraints_dirname_p358 -permitted;dirName.359 = nameConstraints_dirname_p359 -permitted;dirName.360 = nameConstraints_dirname_p360 -permitted;dirName.361 = nameConstraints_dirname_p361 -permitted;dirName.362 = nameConstraints_dirname_p362 -permitted;dirName.363 = nameConstraints_dirname_p363 -permitted;dirName.364 = nameConstraints_dirname_p364 -permitted;dirName.365 = nameConstraints_dirname_p365 -permitted;dirName.366 = nameConstraints_dirname_p366 -permitted;dirName.367 = nameConstraints_dirname_p367 -permitted;dirName.368 = nameConstraints_dirname_p368 -permitted;dirName.369 = nameConstraints_dirname_p369 -permitted;dirName.370 = nameConstraints_dirname_p370 -permitted;dirName.371 = nameConstraints_dirname_p371 -permitted;dirName.372 = nameConstraints_dirname_p372 -permitted;dirName.373 = nameConstraints_dirname_p373 -permitted;dirName.374 = nameConstraints_dirname_p374 -permitted;dirName.375 = nameConstraints_dirname_p375 -permitted;dirName.376 = nameConstraints_dirname_p376 -permitted;dirName.377 = nameConstraints_dirname_p377 -permitted;dirName.378 = nameConstraints_dirname_p378 -permitted;dirName.379 = nameConstraints_dirname_p379 -permitted;dirName.380 = nameConstraints_dirname_p380 -permitted;dirName.381 = nameConstraints_dirname_p381 -permitted;dirName.382 = nameConstraints_dirname_p382 -permitted;dirName.383 = nameConstraints_dirname_p383 -permitted;dirName.384 = nameConstraints_dirname_p384 -permitted;dirName.385 = nameConstraints_dirname_p385 -permitted;dirName.386 = nameConstraints_dirname_p386 -permitted;dirName.387 = nameConstraints_dirname_p387 -permitted;dirName.388 = nameConstraints_dirname_p388 -permitted;dirName.389 = nameConstraints_dirname_p389 -permitted;dirName.390 = nameConstraints_dirname_p390 -permitted;dirName.391 = nameConstraints_dirname_p391 -permitted;dirName.392 = nameConstraints_dirname_p392 -permitted;dirName.393 = nameConstraints_dirname_p393 -permitted;dirName.394 = nameConstraints_dirname_p394 -permitted;dirName.395 = nameConstraints_dirname_p395 -permitted;dirName.396 = nameConstraints_dirname_p396 -permitted;dirName.397 = nameConstraints_dirname_p397 -permitted;dirName.398 = nameConstraints_dirname_p398 -permitted;dirName.399 = nameConstraints_dirname_p399 -permitted;dirName.400 = nameConstraints_dirname_p400 -permitted;dirName.401 = nameConstraints_dirname_p401 -permitted;dirName.402 = nameConstraints_dirname_p402 -permitted;dirName.403 = nameConstraints_dirname_p403 -permitted;dirName.404 = nameConstraints_dirname_p404 -permitted;dirName.405 = nameConstraints_dirname_p405 -permitted;dirName.406 = nameConstraints_dirname_p406 -permitted;dirName.407 = nameConstraints_dirname_p407 -permitted;dirName.408 = nameConstraints_dirname_p408 -permitted;dirName.409 = nameConstraints_dirname_p409 -permitted;dirName.410 = nameConstraints_dirname_p410 -permitted;dirName.411 = nameConstraints_dirname_p411 -permitted;dirName.412 = nameConstraints_dirname_p412 -permitted;dirName.413 = nameConstraints_dirname_p413 -permitted;dirName.414 = nameConstraints_dirname_p414 -permitted;dirName.415 = nameConstraints_dirname_p415 -permitted;dirName.416 = nameConstraints_dirname_p416 -permitted;dirName.417 = nameConstraints_dirname_p417 -permitted;dirName.418 = nameConstraints_dirname_p418 -permitted;dirName.419 = nameConstraints_dirname_p419 -permitted;dirName.420 = nameConstraints_dirname_p420 -permitted;dirName.421 = nameConstraints_dirname_p421 -permitted;dirName.422 = nameConstraints_dirname_p422 -permitted;dirName.423 = nameConstraints_dirname_p423 -permitted;dirName.424 = nameConstraints_dirname_p424 -permitted;dirName.425 = nameConstraints_dirname_p425 -permitted;dirName.426 = nameConstraints_dirname_p426 -permitted;dirName.427 = nameConstraints_dirname_p427 -permitted;dirName.428 = nameConstraints_dirname_p428 -permitted;dirName.429 = nameConstraints_dirname_p429 -permitted;dirName.430 = nameConstraints_dirname_p430 -permitted;dirName.431 = nameConstraints_dirname_p431 -permitted;dirName.432 = nameConstraints_dirname_p432 -permitted;dirName.433 = nameConstraints_dirname_p433 -permitted;dirName.434 = nameConstraints_dirname_p434 -permitted;dirName.435 = nameConstraints_dirname_p435 -permitted;dirName.436 = nameConstraints_dirname_p436 -permitted;dirName.437 = nameConstraints_dirname_p437 -permitted;dirName.438 = nameConstraints_dirname_p438 -permitted;dirName.439 = nameConstraints_dirname_p439 -permitted;dirName.440 = nameConstraints_dirname_p440 -permitted;dirName.441 = nameConstraints_dirname_p441 -permitted;dirName.442 = nameConstraints_dirname_p442 -permitted;dirName.443 = nameConstraints_dirname_p443 -permitted;dirName.444 = nameConstraints_dirname_p444 -permitted;dirName.445 = nameConstraints_dirname_p445 -permitted;dirName.446 = nameConstraints_dirname_p446 -permitted;dirName.447 = nameConstraints_dirname_p447 -permitted;dirName.448 = nameConstraints_dirname_p448 -permitted;dirName.449 = nameConstraints_dirname_p449 -permitted;dirName.450 = nameConstraints_dirname_p450 -permitted;dirName.451 = nameConstraints_dirname_p451 -permitted;dirName.452 = nameConstraints_dirname_p452 -permitted;dirName.453 = nameConstraints_dirname_p453 -permitted;dirName.454 = nameConstraints_dirname_p454 -permitted;dirName.455 = nameConstraints_dirname_p455 -permitted;dirName.456 = nameConstraints_dirname_p456 -permitted;dirName.457 = nameConstraints_dirname_p457 -permitted;dirName.458 = nameConstraints_dirname_p458 -permitted;dirName.459 = nameConstraints_dirname_p459 -permitted;dirName.460 = nameConstraints_dirname_p460 -permitted;dirName.461 = nameConstraints_dirname_p461 -permitted;dirName.462 = nameConstraints_dirname_p462 -permitted;dirName.463 = nameConstraints_dirname_p463 -permitted;dirName.464 = nameConstraints_dirname_p464 -permitted;dirName.465 = nameConstraints_dirname_p465 -permitted;dirName.466 = nameConstraints_dirname_p466 -permitted;dirName.467 = nameConstraints_dirname_p467 -permitted;dirName.468 = nameConstraints_dirname_p468 -permitted;dirName.469 = nameConstraints_dirname_p469 -permitted;dirName.470 = nameConstraints_dirname_p470 -permitted;dirName.471 = nameConstraints_dirname_p471 -permitted;dirName.472 = nameConstraints_dirname_p472 -permitted;dirName.473 = nameConstraints_dirname_p473 -permitted;dirName.474 = nameConstraints_dirname_p474 -permitted;dirName.475 = nameConstraints_dirname_p475 -permitted;dirName.476 = nameConstraints_dirname_p476 -permitted;dirName.477 = nameConstraints_dirname_p477 -permitted;dirName.478 = nameConstraints_dirname_p478 -permitted;dirName.479 = nameConstraints_dirname_p479 -permitted;dirName.480 = nameConstraints_dirname_p480 -permitted;dirName.481 = nameConstraints_dirname_p481 -permitted;dirName.482 = nameConstraints_dirname_p482 -permitted;dirName.483 = nameConstraints_dirname_p483 -permitted;dirName.484 = nameConstraints_dirname_p484 -permitted;dirName.485 = nameConstraints_dirname_p485 -permitted;dirName.486 = nameConstraints_dirname_p486 -permitted;dirName.487 = nameConstraints_dirname_p487 -permitted;dirName.488 = nameConstraints_dirname_p488 -permitted;dirName.489 = nameConstraints_dirname_p489 -permitted;dirName.490 = nameConstraints_dirname_p490 -permitted;dirName.491 = nameConstraints_dirname_p491 -permitted;dirName.492 = nameConstraints_dirname_p492 -permitted;dirName.493 = nameConstraints_dirname_p493 -permitted;dirName.494 = nameConstraints_dirname_p494 -permitted;dirName.495 = nameConstraints_dirname_p495 -permitted;dirName.496 = nameConstraints_dirname_p496 -permitted;dirName.497 = nameConstraints_dirname_p497 -permitted;dirName.498 = nameConstraints_dirname_p498 -permitted;dirName.499 = nameConstraints_dirname_p499 -permitted;dirName.500 = nameConstraints_dirname_p500 -permitted;dirName.501 = nameConstraints_dirname_p501 -permitted;dirName.502 = nameConstraints_dirname_p502 -permitted;dirName.503 = nameConstraints_dirname_p503 -permitted;dirName.504 = nameConstraints_dirname_p504 -permitted;dirName.505 = nameConstraints_dirname_p505 -permitted;dirName.506 = nameConstraints_dirname_p506 -permitted;dirName.507 = nameConstraints_dirname_p507 -permitted;dirName.508 = nameConstraints_dirname_p508 -permitted;dirName.509 = nameConstraints_dirname_p509 -permitted;dirName.510 = nameConstraints_dirname_p510 -permitted;dirName.511 = nameConstraints_dirname_p511 -permitted;dirName.512 = nameConstraints_dirname_p512 -permitted;dirName.513 = nameConstraints_dirname_p513 -permitted;dirName.514 = nameConstraints_dirname_p514 -permitted;dirName.515 = nameConstraints_dirname_p515 -permitted;dirName.516 = nameConstraints_dirname_p516 -permitted;dirName.517 = nameConstraints_dirname_p517 -permitted;dirName.518 = nameConstraints_dirname_p518 -permitted;dirName.519 = nameConstraints_dirname_p519 -permitted;dirName.520 = nameConstraints_dirname_p520 -permitted;dirName.521 = nameConstraints_dirname_p521 -permitted;dirName.522 = nameConstraints_dirname_p522 -permitted;dirName.523 = nameConstraints_dirname_p523 -permitted;dirName.524 = nameConstraints_dirname_p524 -permitted;dirName.525 = nameConstraints_dirname_p525 -permitted;dirName.526 = nameConstraints_dirname_p526 -permitted;dirName.527 = nameConstraints_dirname_p527 -permitted;dirName.528 = nameConstraints_dirname_p528 -permitted;dirName.529 = nameConstraints_dirname_p529 -permitted;dirName.530 = nameConstraints_dirname_p530 -permitted;dirName.531 = nameConstraints_dirname_p531 -permitted;dirName.532 = nameConstraints_dirname_p532 -permitted;dirName.533 = nameConstraints_dirname_p533 -permitted;dirName.534 = nameConstraints_dirname_p534 -permitted;dirName.535 = nameConstraints_dirname_p535 -permitted;dirName.536 = nameConstraints_dirname_p536 -permitted;dirName.537 = nameConstraints_dirname_p537 -permitted;dirName.538 = nameConstraints_dirname_p538 -permitted;dirName.539 = nameConstraints_dirname_p539 -permitted;dirName.540 = nameConstraints_dirname_p540 -permitted;dirName.541 = nameConstraints_dirname_p541 -permitted;dirName.542 = nameConstraints_dirname_p542 -permitted;dirName.543 = nameConstraints_dirname_p543 -permitted;dirName.544 = nameConstraints_dirname_p544 -permitted;dirName.545 = nameConstraints_dirname_p545 -permitted;dirName.546 = nameConstraints_dirname_p546 -permitted;dirName.547 = nameConstraints_dirname_p547 -permitted;dirName.548 = nameConstraints_dirname_p548 -permitted;dirName.549 = nameConstraints_dirname_p549 -permitted;dirName.550 = nameConstraints_dirname_p550 -permitted;dirName.551 = nameConstraints_dirname_p551 -permitted;dirName.552 = nameConstraints_dirname_p552 -permitted;dirName.553 = nameConstraints_dirname_p553 -permitted;dirName.554 = nameConstraints_dirname_p554 -permitted;dirName.555 = nameConstraints_dirname_p555 -permitted;dirName.556 = nameConstraints_dirname_p556 -permitted;dirName.557 = nameConstraints_dirname_p557 -permitted;dirName.558 = nameConstraints_dirname_p558 -permitted;dirName.559 = nameConstraints_dirname_p559 -permitted;dirName.560 = nameConstraints_dirname_p560 -permitted;dirName.561 = nameConstraints_dirname_p561 -permitted;dirName.562 = nameConstraints_dirname_p562 -permitted;dirName.563 = nameConstraints_dirname_p563 -permitted;dirName.564 = nameConstraints_dirname_p564 -permitted;dirName.565 = nameConstraints_dirname_p565 -permitted;dirName.566 = nameConstraints_dirname_p566 -permitted;dirName.567 = nameConstraints_dirname_p567 -permitted;dirName.568 = nameConstraints_dirname_p568 -permitted;dirName.569 = nameConstraints_dirname_p569 -permitted;dirName.570 = nameConstraints_dirname_p570 -permitted;dirName.571 = nameConstraints_dirname_p571 -permitted;dirName.572 = nameConstraints_dirname_p572 -permitted;dirName.573 = nameConstraints_dirname_p573 -permitted;dirName.574 = nameConstraints_dirname_p574 -permitted;dirName.575 = nameConstraints_dirname_p575 -permitted;dirName.576 = nameConstraints_dirname_p576 -permitted;dirName.577 = nameConstraints_dirname_p577 -permitted;dirName.578 = nameConstraints_dirname_p578 -permitted;dirName.579 = nameConstraints_dirname_p579 -permitted;dirName.580 = nameConstraints_dirname_p580 -permitted;dirName.581 = nameConstraints_dirname_p581 -permitted;dirName.582 = nameConstraints_dirname_p582 -permitted;dirName.583 = nameConstraints_dirname_p583 -permitted;dirName.584 = nameConstraints_dirname_p584 -permitted;dirName.585 = nameConstraints_dirname_p585 -permitted;dirName.586 = nameConstraints_dirname_p586 -permitted;dirName.587 = nameConstraints_dirname_p587 -permitted;dirName.588 = nameConstraints_dirname_p588 -permitted;dirName.589 = nameConstraints_dirname_p589 -permitted;dirName.590 = nameConstraints_dirname_p590 -permitted;dirName.591 = nameConstraints_dirname_p591 -permitted;dirName.592 = nameConstraints_dirname_p592 -permitted;dirName.593 = nameConstraints_dirname_p593 -permitted;dirName.594 = nameConstraints_dirname_p594 -permitted;dirName.595 = nameConstraints_dirname_p595 -permitted;dirName.596 = nameConstraints_dirname_p596 -permitted;dirName.597 = nameConstraints_dirname_p597 -permitted;dirName.598 = nameConstraints_dirname_p598 -permitted;dirName.599 = nameConstraints_dirname_p599 -permitted;dirName.600 = nameConstraints_dirname_p600 -permitted;dirName.601 = nameConstraints_dirname_p601 -permitted;dirName.602 = nameConstraints_dirname_p602 -permitted;dirName.603 = nameConstraints_dirname_p603 -permitted;dirName.604 = nameConstraints_dirname_p604 -permitted;dirName.605 = nameConstraints_dirname_p605 -permitted;dirName.606 = nameConstraints_dirname_p606 -permitted;dirName.607 = nameConstraints_dirname_p607 -permitted;dirName.608 = nameConstraints_dirname_p608 -permitted;dirName.609 = nameConstraints_dirname_p609 -permitted;dirName.610 = nameConstraints_dirname_p610 -permitted;dirName.611 = nameConstraints_dirname_p611 -permitted;dirName.612 = nameConstraints_dirname_p612 -permitted;dirName.613 = nameConstraints_dirname_p613 -permitted;dirName.614 = nameConstraints_dirname_p614 -permitted;dirName.615 = nameConstraints_dirname_p615 -permitted;dirName.616 = nameConstraints_dirname_p616 -permitted;dirName.617 = nameConstraints_dirname_p617 -permitted;dirName.618 = nameConstraints_dirname_p618 -permitted;dirName.619 = nameConstraints_dirname_p619 -permitted;dirName.620 = nameConstraints_dirname_p620 -permitted;dirName.621 = nameConstraints_dirname_p621 -permitted;dirName.622 = nameConstraints_dirname_p622 -permitted;dirName.623 = nameConstraints_dirname_p623 -permitted;dirName.624 = nameConstraints_dirname_p624 -permitted;dirName.625 = nameConstraints_dirname_p625 -permitted;dirName.626 = nameConstraints_dirname_p626 -permitted;dirName.627 = nameConstraints_dirname_p627 -permitted;dirName.628 = nameConstraints_dirname_p628 -permitted;dirName.629 = nameConstraints_dirname_p629 -permitted;dirName.630 = nameConstraints_dirname_p630 -permitted;dirName.631 = nameConstraints_dirname_p631 -permitted;dirName.632 = nameConstraints_dirname_p632 -permitted;dirName.633 = nameConstraints_dirname_p633 -permitted;dirName.634 = nameConstraints_dirname_p634 -permitted;dirName.635 = nameConstraints_dirname_p635 -permitted;dirName.636 = nameConstraints_dirname_p636 -permitted;dirName.637 = nameConstraints_dirname_p637 -permitted;dirName.638 = nameConstraints_dirname_p638 -permitted;dirName.639 = nameConstraints_dirname_p639 -permitted;dirName.640 = nameConstraints_dirname_p640 -permitted;dirName.641 = nameConstraints_dirname_p641 -permitted;dirName.642 = nameConstraints_dirname_p642 -permitted;dirName.643 = nameConstraints_dirname_p643 -permitted;dirName.644 = nameConstraints_dirname_p644 -permitted;dirName.645 = nameConstraints_dirname_p645 -permitted;dirName.646 = nameConstraints_dirname_p646 -permitted;dirName.647 = nameConstraints_dirname_p647 -permitted;dirName.648 = nameConstraints_dirname_p648 -permitted;dirName.649 = nameConstraints_dirname_p649 -permitted;dirName.650 = nameConstraints_dirname_p650 -permitted;dirName.651 = nameConstraints_dirname_p651 -permitted;dirName.652 = nameConstraints_dirname_p652 -permitted;dirName.653 = nameConstraints_dirname_p653 -permitted;dirName.654 = nameConstraints_dirname_p654 -permitted;dirName.655 = nameConstraints_dirname_p655 -permitted;dirName.656 = nameConstraints_dirname_p656 -permitted;dirName.657 = nameConstraints_dirname_p657 -permitted;dirName.658 = nameConstraints_dirname_p658 -permitted;dirName.659 = nameConstraints_dirname_p659 -permitted;dirName.660 = nameConstraints_dirname_p660 -permitted;dirName.661 = nameConstraints_dirname_p661 -permitted;dirName.662 = nameConstraints_dirname_p662 -permitted;dirName.663 = nameConstraints_dirname_p663 -permitted;dirName.664 = nameConstraints_dirname_p664 -permitted;dirName.665 = nameConstraints_dirname_p665 -permitted;dirName.666 = nameConstraints_dirname_p666 -permitted;dirName.667 = nameConstraints_dirname_p667 -permitted;dirName.668 = nameConstraints_dirname_p668 -permitted;dirName.669 = nameConstraints_dirname_p669 -permitted;dirName.670 = nameConstraints_dirname_p670 -permitted;dirName.671 = nameConstraints_dirname_p671 -permitted;dirName.672 = nameConstraints_dirname_p672 -permitted;dirName.673 = nameConstraints_dirname_p673 -permitted;dirName.674 = nameConstraints_dirname_p674 -permitted;dirName.675 = nameConstraints_dirname_p675 -permitted;dirName.676 = nameConstraints_dirname_p676 -permitted;dirName.677 = nameConstraints_dirname_p677 -permitted;dirName.678 = nameConstraints_dirname_p678 -permitted;dirName.679 = nameConstraints_dirname_p679 -permitted;dirName.680 = nameConstraints_dirname_p680 -permitted;dirName.681 = nameConstraints_dirname_p681 -permitted;dirName.682 = nameConstraints_dirname_p682 -permitted;dirName.683 = nameConstraints_dirname_p683 -permitted;dirName.684 = nameConstraints_dirname_p684 -permitted;dirName.685 = nameConstraints_dirname_p685 -permitted;dirName.686 = nameConstraints_dirname_p686 -permitted;dirName.687 = nameConstraints_dirname_p687 -permitted;dirName.688 = nameConstraints_dirname_p688 -permitted;dirName.689 = nameConstraints_dirname_p689 -permitted;dirName.690 = nameConstraints_dirname_p690 -permitted;dirName.691 = nameConstraints_dirname_p691 -permitted;dirName.692 = nameConstraints_dirname_p692 -permitted;dirName.693 = nameConstraints_dirname_p693 -permitted;dirName.694 = nameConstraints_dirname_p694 -permitted;dirName.695 = nameConstraints_dirname_p695 -permitted;dirName.696 = nameConstraints_dirname_p696 -permitted;dirName.697 = nameConstraints_dirname_p697 -permitted;dirName.698 = nameConstraints_dirname_p698 -permitted;dirName.699 = nameConstraints_dirname_p699 -permitted;dirName.700 = nameConstraints_dirname_p700 -permitted;dirName.701 = nameConstraints_dirname_p701 -permitted;dirName.702 = nameConstraints_dirname_p702 -permitted;dirName.703 = nameConstraints_dirname_p703 -permitted;dirName.704 = nameConstraints_dirname_p704 -permitted;dirName.705 = nameConstraints_dirname_p705 -permitted;dirName.706 = nameConstraints_dirname_p706 -permitted;dirName.707 = nameConstraints_dirname_p707 -permitted;dirName.708 = nameConstraints_dirname_p708 -permitted;dirName.709 = nameConstraints_dirname_p709 -permitted;dirName.710 = nameConstraints_dirname_p710 -permitted;dirName.711 = nameConstraints_dirname_p711 -permitted;dirName.712 = nameConstraints_dirname_p712 -permitted;dirName.713 = nameConstraints_dirname_p713 -permitted;dirName.714 = nameConstraints_dirname_p714 -permitted;dirName.715 = nameConstraints_dirname_p715 -permitted;dirName.716 = nameConstraints_dirname_p716 -permitted;dirName.717 = nameConstraints_dirname_p717 -permitted;dirName.718 = nameConstraints_dirname_p718 -permitted;dirName.719 = nameConstraints_dirname_p719 -permitted;dirName.720 = nameConstraints_dirname_p720 -permitted;dirName.721 = nameConstraints_dirname_p721 -permitted;dirName.722 = nameConstraints_dirname_p722 -permitted;dirName.723 = nameConstraints_dirname_p723 -permitted;dirName.724 = nameConstraints_dirname_p724 -permitted;dirName.725 = nameConstraints_dirname_p725 -permitted;dirName.726 = nameConstraints_dirname_p726 -permitted;dirName.727 = nameConstraints_dirname_p727 -permitted;dirName.728 = nameConstraints_dirname_p728 -permitted;dirName.729 = nameConstraints_dirname_p729 -permitted;dirName.730 = nameConstraints_dirname_p730 -permitted;dirName.731 = nameConstraints_dirname_p731 -permitted;dirName.732 = nameConstraints_dirname_p732 -permitted;dirName.733 = nameConstraints_dirname_p733 -permitted;dirName.734 = nameConstraints_dirname_p734 -permitted;dirName.735 = nameConstraints_dirname_p735 -permitted;dirName.736 = nameConstraints_dirname_p736 -permitted;dirName.737 = nameConstraints_dirname_p737 -permitted;dirName.738 = nameConstraints_dirname_p738 -permitted;dirName.739 = nameConstraints_dirname_p739 -permitted;dirName.740 = nameConstraints_dirname_p740 -permitted;dirName.741 = nameConstraints_dirname_p741 -permitted;dirName.742 = nameConstraints_dirname_p742 -permitted;dirName.743 = nameConstraints_dirname_p743 -permitted;dirName.744 = nameConstraints_dirname_p744 -permitted;dirName.745 = nameConstraints_dirname_p745 -permitted;dirName.746 = nameConstraints_dirname_p746 -permitted;dirName.747 = nameConstraints_dirname_p747 -permitted;dirName.748 = nameConstraints_dirname_p748 -permitted;dirName.749 = nameConstraints_dirname_p749 -permitted;dirName.750 = nameConstraints_dirname_p750 -permitted;dirName.751 = nameConstraints_dirname_p751 -permitted;dirName.752 = nameConstraints_dirname_p752 -permitted;dirName.753 = nameConstraints_dirname_p753 -permitted;dirName.754 = nameConstraints_dirname_p754 -permitted;dirName.755 = nameConstraints_dirname_p755 -permitted;dirName.756 = nameConstraints_dirname_p756 -permitted;dirName.757 = nameConstraints_dirname_p757 -permitted;dirName.758 = nameConstraints_dirname_p758 -permitted;dirName.759 = nameConstraints_dirname_p759 -permitted;dirName.760 = nameConstraints_dirname_p760 -permitted;dirName.761 = nameConstraints_dirname_p761 -permitted;dirName.762 = nameConstraints_dirname_p762 -permitted;dirName.763 = nameConstraints_dirname_p763 -permitted;dirName.764 = nameConstraints_dirname_p764 -permitted;dirName.765 = nameConstraints_dirname_p765 -permitted;dirName.766 = nameConstraints_dirname_p766 -permitted;dirName.767 = nameConstraints_dirname_p767 -permitted;dirName.768 = nameConstraints_dirname_p768 -permitted;dirName.769 = nameConstraints_dirname_p769 -permitted;dirName.770 = nameConstraints_dirname_p770 -permitted;dirName.771 = nameConstraints_dirname_p771 -permitted;dirName.772 = nameConstraints_dirname_p772 -permitted;dirName.773 = nameConstraints_dirname_p773 -permitted;dirName.774 = nameConstraints_dirname_p774 -permitted;dirName.775 = nameConstraints_dirname_p775 -permitted;dirName.776 = nameConstraints_dirname_p776 -permitted;dirName.777 = nameConstraints_dirname_p777 -permitted;dirName.778 = nameConstraints_dirname_p778 -permitted;dirName.779 = nameConstraints_dirname_p779 -permitted;dirName.780 = nameConstraints_dirname_p780 -permitted;dirName.781 = nameConstraints_dirname_p781 -permitted;dirName.782 = nameConstraints_dirname_p782 -permitted;dirName.783 = nameConstraints_dirname_p783 -permitted;dirName.784 = nameConstraints_dirname_p784 -permitted;dirName.785 = nameConstraints_dirname_p785 -permitted;dirName.786 = nameConstraints_dirname_p786 -permitted;dirName.787 = nameConstraints_dirname_p787 -permitted;dirName.788 = nameConstraints_dirname_p788 -permitted;dirName.789 = nameConstraints_dirname_p789 -permitted;dirName.790 = nameConstraints_dirname_p790 -permitted;dirName.791 = nameConstraints_dirname_p791 -permitted;dirName.792 = nameConstraints_dirname_p792 -permitted;dirName.793 = nameConstraints_dirname_p793 -permitted;dirName.794 = nameConstraints_dirname_p794 -permitted;dirName.795 = nameConstraints_dirname_p795 -permitted;dirName.796 = nameConstraints_dirname_p796 -permitted;dirName.797 = nameConstraints_dirname_p797 -permitted;dirName.798 = nameConstraints_dirname_p798 -permitted;dirName.799 = nameConstraints_dirname_p799 -permitted;dirName.800 = nameConstraints_dirname_p800 -permitted;dirName.801 = nameConstraints_dirname_p801 -permitted;dirName.802 = nameConstraints_dirname_p802 -permitted;dirName.803 = nameConstraints_dirname_p803 -permitted;dirName.804 = nameConstraints_dirname_p804 -permitted;dirName.805 = nameConstraints_dirname_p805 -permitted;dirName.806 = nameConstraints_dirname_p806 -permitted;dirName.807 = nameConstraints_dirname_p807 -permitted;dirName.808 = nameConstraints_dirname_p808 -permitted;dirName.809 = nameConstraints_dirname_p809 -permitted;dirName.810 = nameConstraints_dirname_p810 -permitted;dirName.811 = nameConstraints_dirname_p811 -permitted;dirName.812 = nameConstraints_dirname_p812 -permitted;dirName.813 = nameConstraints_dirname_p813 -permitted;dirName.814 = nameConstraints_dirname_p814 -permitted;dirName.815 = nameConstraints_dirname_p815 -permitted;dirName.816 = nameConstraints_dirname_p816 -permitted;dirName.817 = nameConstraints_dirname_p817 -permitted;dirName.818 = nameConstraints_dirname_p818 -permitted;dirName.819 = nameConstraints_dirname_p819 -permitted;dirName.820 = nameConstraints_dirname_p820 -permitted;dirName.821 = nameConstraints_dirname_p821 -permitted;dirName.822 = nameConstraints_dirname_p822 -permitted;dirName.823 = nameConstraints_dirname_p823 -permitted;dirName.824 = nameConstraints_dirname_p824 -permitted;dirName.825 = nameConstraints_dirname_p825 -permitted;dirName.826 = nameConstraints_dirname_p826 -permitted;dirName.827 = nameConstraints_dirname_p827 -permitted;dirName.828 = nameConstraints_dirname_p828 -permitted;dirName.829 = nameConstraints_dirname_p829 -permitted;dirName.830 = nameConstraints_dirname_p830 -permitted;dirName.831 = nameConstraints_dirname_p831 -permitted;dirName.832 = nameConstraints_dirname_p832 -permitted;dirName.833 = nameConstraints_dirname_p833 -permitted;dirName.834 = nameConstraints_dirname_p834 -permitted;dirName.835 = nameConstraints_dirname_p835 -permitted;dirName.836 = nameConstraints_dirname_p836 -permitted;dirName.837 = nameConstraints_dirname_p837 -permitted;dirName.838 = nameConstraints_dirname_p838 -permitted;dirName.839 = nameConstraints_dirname_p839 -permitted;dirName.840 = nameConstraints_dirname_p840 -permitted;dirName.841 = nameConstraints_dirname_p841 -permitted;dirName.842 = nameConstraints_dirname_p842 -permitted;dirName.843 = nameConstraints_dirname_p843 -permitted;dirName.844 = nameConstraints_dirname_p844 -permitted;dirName.845 = nameConstraints_dirname_p845 -permitted;dirName.846 = nameConstraints_dirname_p846 -permitted;dirName.847 = nameConstraints_dirname_p847 -permitted;dirName.848 = nameConstraints_dirname_p848 -permitted;dirName.849 = nameConstraints_dirname_p849 -permitted;dirName.850 = nameConstraints_dirname_p850 -permitted;dirName.851 = nameConstraints_dirname_p851 -permitted;dirName.852 = nameConstraints_dirname_p852 -permitted;dirName.853 = nameConstraints_dirname_p853 -permitted;dirName.854 = nameConstraints_dirname_p854 -permitted;dirName.855 = nameConstraints_dirname_p855 -permitted;dirName.856 = nameConstraints_dirname_p856 -permitted;dirName.857 = nameConstraints_dirname_p857 -permitted;dirName.858 = nameConstraints_dirname_p858 -permitted;dirName.859 = nameConstraints_dirname_p859 -permitted;dirName.860 = nameConstraints_dirname_p860 -permitted;dirName.861 = nameConstraints_dirname_p861 -permitted;dirName.862 = nameConstraints_dirname_p862 -permitted;dirName.863 = nameConstraints_dirname_p863 -permitted;dirName.864 = nameConstraints_dirname_p864 -permitted;dirName.865 = nameConstraints_dirname_p865 -permitted;dirName.866 = nameConstraints_dirname_p866 -permitted;dirName.867 = nameConstraints_dirname_p867 -permitted;dirName.868 = nameConstraints_dirname_p868 -permitted;dirName.869 = nameConstraints_dirname_p869 -permitted;dirName.870 = nameConstraints_dirname_p870 -permitted;dirName.871 = nameConstraints_dirname_p871 -permitted;dirName.872 = nameConstraints_dirname_p872 -permitted;dirName.873 = nameConstraints_dirname_p873 -permitted;dirName.874 = nameConstraints_dirname_p874 -permitted;dirName.875 = nameConstraints_dirname_p875 -permitted;dirName.876 = nameConstraints_dirname_p876 -permitted;dirName.877 = nameConstraints_dirname_p877 -permitted;dirName.878 = nameConstraints_dirname_p878 -permitted;dirName.879 = nameConstraints_dirname_p879 -permitted;dirName.880 = nameConstraints_dirname_p880 -permitted;dirName.881 = nameConstraints_dirname_p881 -permitted;dirName.882 = nameConstraints_dirname_p882 -permitted;dirName.883 = nameConstraints_dirname_p883 -permitted;dirName.884 = nameConstraints_dirname_p884 -permitted;dirName.885 = nameConstraints_dirname_p885 -permitted;dirName.886 = nameConstraints_dirname_p886 -permitted;dirName.887 = nameConstraints_dirname_p887 -permitted;dirName.888 = nameConstraints_dirname_p888 -permitted;dirName.889 = nameConstraints_dirname_p889 -permitted;dirName.890 = nameConstraints_dirname_p890 -permitted;dirName.891 = nameConstraints_dirname_p891 -permitted;dirName.892 = nameConstraints_dirname_p892 -permitted;dirName.893 = nameConstraints_dirname_p893 -permitted;dirName.894 = nameConstraints_dirname_p894 -permitted;dirName.895 = nameConstraints_dirname_p895 -permitted;dirName.896 = nameConstraints_dirname_p896 -permitted;dirName.897 = nameConstraints_dirname_p897 -permitted;dirName.898 = nameConstraints_dirname_p898 -permitted;dirName.899 = nameConstraints_dirname_p899 -permitted;dirName.900 = nameConstraints_dirname_p900 -permitted;dirName.901 = nameConstraints_dirname_p901 -permitted;dirName.902 = nameConstraints_dirname_p902 -permitted;dirName.903 = nameConstraints_dirname_p903 -permitted;dirName.904 = nameConstraints_dirname_p904 -permitted;dirName.905 = nameConstraints_dirname_p905 -permitted;dirName.906 = nameConstraints_dirname_p906 -permitted;dirName.907 = nameConstraints_dirname_p907 -permitted;dirName.908 = nameConstraints_dirname_p908 -permitted;dirName.909 = nameConstraints_dirname_p909 -permitted;dirName.910 = nameConstraints_dirname_p910 -permitted;dirName.911 = nameConstraints_dirname_p911 -permitted;dirName.912 = nameConstraints_dirname_p912 -permitted;dirName.913 = nameConstraints_dirname_p913 -permitted;dirName.914 = nameConstraints_dirname_p914 -permitted;dirName.915 = nameConstraints_dirname_p915 -permitted;dirName.916 = nameConstraints_dirname_p916 -permitted;dirName.917 = nameConstraints_dirname_p917 -permitted;dirName.918 = nameConstraints_dirname_p918 -permitted;dirName.919 = nameConstraints_dirname_p919 -permitted;dirName.920 = nameConstraints_dirname_p920 -permitted;dirName.921 = nameConstraints_dirname_p921 -permitted;dirName.922 = nameConstraints_dirname_p922 -permitted;dirName.923 = nameConstraints_dirname_p923 -permitted;dirName.924 = nameConstraints_dirname_p924 -permitted;dirName.925 = nameConstraints_dirname_p925 -permitted;dirName.926 = nameConstraints_dirname_p926 -permitted;dirName.927 = nameConstraints_dirname_p927 -permitted;dirName.928 = nameConstraints_dirname_p928 -permitted;dirName.929 = nameConstraints_dirname_p929 -permitted;dirName.930 = nameConstraints_dirname_p930 -permitted;dirName.931 = nameConstraints_dirname_p931 -permitted;dirName.932 = nameConstraints_dirname_p932 -permitted;dirName.933 = nameConstraints_dirname_p933 -permitted;dirName.934 = nameConstraints_dirname_p934 -permitted;dirName.935 = nameConstraints_dirname_p935 -permitted;dirName.936 = nameConstraints_dirname_p936 -permitted;dirName.937 = nameConstraints_dirname_p937 -permitted;dirName.938 = nameConstraints_dirname_p938 -permitted;dirName.939 = nameConstraints_dirname_p939 -permitted;dirName.940 = nameConstraints_dirname_p940 -permitted;dirName.941 = nameConstraints_dirname_p941 -permitted;dirName.942 = nameConstraints_dirname_p942 -permitted;dirName.943 = nameConstraints_dirname_p943 -permitted;dirName.944 = nameConstraints_dirname_p944 -permitted;dirName.945 = nameConstraints_dirname_p945 -permitted;dirName.946 = nameConstraints_dirname_p946 -permitted;dirName.947 = nameConstraints_dirname_p947 -permitted;dirName.948 = nameConstraints_dirname_p948 -permitted;dirName.949 = nameConstraints_dirname_p949 -permitted;dirName.950 = nameConstraints_dirname_p950 -permitted;dirName.951 = nameConstraints_dirname_p951 -permitted;dirName.952 = nameConstraints_dirname_p952 -permitted;dirName.953 = nameConstraints_dirname_p953 -permitted;dirName.954 = nameConstraints_dirname_p954 -permitted;dirName.955 = nameConstraints_dirname_p955 -permitted;dirName.956 = nameConstraints_dirname_p956 -permitted;dirName.957 = nameConstraints_dirname_p957 -permitted;dirName.958 = nameConstraints_dirname_p958 -permitted;dirName.959 = nameConstraints_dirname_p959 -permitted;dirName.960 = nameConstraints_dirname_p960 -permitted;dirName.961 = nameConstraints_dirname_p961 -permitted;dirName.962 = nameConstraints_dirname_p962 -permitted;dirName.963 = nameConstraints_dirname_p963 -permitted;dirName.964 = nameConstraints_dirname_p964 -permitted;dirName.965 = nameConstraints_dirname_p965 -permitted;dirName.966 = nameConstraints_dirname_p966 -permitted;dirName.967 = nameConstraints_dirname_p967 -permitted;dirName.968 = nameConstraints_dirname_p968 -permitted;dirName.969 = nameConstraints_dirname_p969 -permitted;dirName.970 = nameConstraints_dirname_p970 -permitted;dirName.971 = nameConstraints_dirname_p971 -permitted;dirName.972 = nameConstraints_dirname_p972 -permitted;dirName.973 = nameConstraints_dirname_p973 -permitted;dirName.974 = nameConstraints_dirname_p974 -permitted;dirName.975 = nameConstraints_dirname_p975 -permitted;dirName.976 = nameConstraints_dirname_p976 -permitted;dirName.977 = nameConstraints_dirname_p977 -permitted;dirName.978 = nameConstraints_dirname_p978 -permitted;dirName.979 = nameConstraints_dirname_p979 -permitted;dirName.980 = nameConstraints_dirname_p980 -permitted;dirName.981 = nameConstraints_dirname_p981 -permitted;dirName.982 = nameConstraints_dirname_p982 -permitted;dirName.983 = nameConstraints_dirname_p983 -permitted;dirName.984 = nameConstraints_dirname_p984 -permitted;dirName.985 = nameConstraints_dirname_p985 -permitted;dirName.986 = nameConstraints_dirname_p986 -permitted;dirName.987 = nameConstraints_dirname_p987 -permitted;dirName.988 = nameConstraints_dirname_p988 -permitted;dirName.989 = nameConstraints_dirname_p989 -permitted;dirName.990 = nameConstraints_dirname_p990 -permitted;dirName.991 = nameConstraints_dirname_p991 -permitted;dirName.992 = nameConstraints_dirname_p992 -permitted;dirName.993 = nameConstraints_dirname_p993 -permitted;dirName.994 = nameConstraints_dirname_p994 -permitted;dirName.995 = nameConstraints_dirname_p995 -permitted;dirName.996 = nameConstraints_dirname_p996 -permitted;dirName.997 = nameConstraints_dirname_p997 -permitted;dirName.998 = nameConstraints_dirname_p998 -permitted;dirName.999 = nameConstraints_dirname_p999 -permitted;dirName.1000 = nameConstraints_dirname_p1000 -permitted;dirName.1001 = nameConstraints_dirname_p1001 -permitted;dirName.1002 = nameConstraints_dirname_p1002 -permitted;dirName.1003 = nameConstraints_dirname_p1003 -permitted;dirName.1004 = nameConstraints_dirname_p1004 -permitted;dirName.1005 = nameConstraints_dirname_p1005 -permitted;dirName.1006 = nameConstraints_dirname_p1006 -permitted;dirName.1007 = nameConstraints_dirname_p1007 -permitted;dirName.1008 = nameConstraints_dirname_p1008 -permitted;dirName.1009 = nameConstraints_dirname_p1009 -permitted;dirName.1010 = nameConstraints_dirname_p1010 -permitted;dirName.1011 = nameConstraints_dirname_p1011 -permitted;dirName.1012 = nameConstraints_dirname_p1012 -permitted;dirName.1013 = nameConstraints_dirname_p1013 -permitted;dirName.1014 = nameConstraints_dirname_p1014 -permitted;dirName.1015 = nameConstraints_dirname_p1015 -permitted;dirName.1016 = nameConstraints_dirname_p1016 -permitted;dirName.1017 = nameConstraints_dirname_p1017 -permitted;dirName.1018 = nameConstraints_dirname_p1018 -permitted;dirName.1019 = nameConstraints_dirname_p1019 -permitted;dirName.1020 = nameConstraints_dirname_p1020 -permitted;dirName.1021 = nameConstraints_dirname_p1021 -permitted;dirName.1022 = nameConstraints_dirname_p1022 -permitted;dirName.1023 = nameConstraints_dirname_p1023 -permitted;dirName.1024 = nameConstraints_dirname_p1024 -permitted;dirName.1025 = nameConstraints_dirname_p1025 - -[nameConstraints_dirname_p1] -commonName = "t0 - -[nameConstraints_dirname_p2] -commonName = "t1 - -[nameConstraints_dirname_p3] -commonName = "t2 - -[nameConstraints_dirname_p4] -commonName = "t3 - -[nameConstraints_dirname_p5] -commonName = "t4 - -[nameConstraints_dirname_p6] -commonName = "t5 - -[nameConstraints_dirname_p7] -commonName = "t6 - -[nameConstraints_dirname_p8] -commonName = "t7 - -[nameConstraints_dirname_p9] -commonName = "t8 - -[nameConstraints_dirname_p10] -commonName = "t9 - -[nameConstraints_dirname_p11] -commonName = "t10 - -[nameConstraints_dirname_p12] -commonName = "t11 - -[nameConstraints_dirname_p13] -commonName = "t12 - -[nameConstraints_dirname_p14] -commonName = "t13 - -[nameConstraints_dirname_p15] -commonName = "t14 - -[nameConstraints_dirname_p16] -commonName = "t15 - -[nameConstraints_dirname_p17] -commonName = "t16 - -[nameConstraints_dirname_p18] -commonName = "t17 - -[nameConstraints_dirname_p19] -commonName = "t18 - -[nameConstraints_dirname_p20] -commonName = "t19 - -[nameConstraints_dirname_p21] -commonName = "t20 - -[nameConstraints_dirname_p22] -commonName = "t21 - -[nameConstraints_dirname_p23] -commonName = "t22 - -[nameConstraints_dirname_p24] -commonName = "t23 - -[nameConstraints_dirname_p25] -commonName = "t24 - -[nameConstraints_dirname_p26] -commonName = "t25 - -[nameConstraints_dirname_p27] -commonName = "t26 - -[nameConstraints_dirname_p28] -commonName = "t27 - -[nameConstraints_dirname_p29] -commonName = "t28 - -[nameConstraints_dirname_p30] -commonName = "t29 - -[nameConstraints_dirname_p31] -commonName = "t30 - -[nameConstraints_dirname_p32] -commonName = "t31 - -[nameConstraints_dirname_p33] -commonName = "t32 - -[nameConstraints_dirname_p34] -commonName = "t33 - -[nameConstraints_dirname_p35] -commonName = "t34 - -[nameConstraints_dirname_p36] -commonName = "t35 - -[nameConstraints_dirname_p37] -commonName = "t36 - -[nameConstraints_dirname_p38] -commonName = "t37 - -[nameConstraints_dirname_p39] -commonName = "t38 - -[nameConstraints_dirname_p40] -commonName = "t39 - -[nameConstraints_dirname_p41] -commonName = "t40 - -[nameConstraints_dirname_p42] -commonName = "t41 - -[nameConstraints_dirname_p43] -commonName = "t42 - -[nameConstraints_dirname_p44] -commonName = "t43 - -[nameConstraints_dirname_p45] -commonName = "t44 - -[nameConstraints_dirname_p46] -commonName = "t45 - -[nameConstraints_dirname_p47] -commonName = "t46 - -[nameConstraints_dirname_p48] -commonName = "t47 - -[nameConstraints_dirname_p49] -commonName = "t48 - -[nameConstraints_dirname_p50] -commonName = "t49 - -[nameConstraints_dirname_p51] -commonName = "t50 - -[nameConstraints_dirname_p52] -commonName = "t51 - -[nameConstraints_dirname_p53] -commonName = "t52 - -[nameConstraints_dirname_p54] -commonName = "t53 - -[nameConstraints_dirname_p55] -commonName = "t54 - -[nameConstraints_dirname_p56] -commonName = "t55 - -[nameConstraints_dirname_p57] -commonName = "t56 - -[nameConstraints_dirname_p58] -commonName = "t57 - -[nameConstraints_dirname_p59] -commonName = "t58 - -[nameConstraints_dirname_p60] -commonName = "t59 - -[nameConstraints_dirname_p61] -commonName = "t60 - -[nameConstraints_dirname_p62] -commonName = "t61 - -[nameConstraints_dirname_p63] -commonName = "t62 - -[nameConstraints_dirname_p64] -commonName = "t63 - -[nameConstraints_dirname_p65] -commonName = "t64 - -[nameConstraints_dirname_p66] -commonName = "t65 - -[nameConstraints_dirname_p67] -commonName = "t66 - -[nameConstraints_dirname_p68] -commonName = "t67 - -[nameConstraints_dirname_p69] -commonName = "t68 - -[nameConstraints_dirname_p70] -commonName = "t69 - -[nameConstraints_dirname_p71] -commonName = "t70 - -[nameConstraints_dirname_p72] -commonName = "t71 - -[nameConstraints_dirname_p73] -commonName = "t72 - -[nameConstraints_dirname_p74] -commonName = "t73 - -[nameConstraints_dirname_p75] -commonName = "t74 - -[nameConstraints_dirname_p76] -commonName = "t75 - -[nameConstraints_dirname_p77] -commonName = "t76 - -[nameConstraints_dirname_p78] -commonName = "t77 - -[nameConstraints_dirname_p79] -commonName = "t78 - -[nameConstraints_dirname_p80] -commonName = "t79 - -[nameConstraints_dirname_p81] -commonName = "t80 - -[nameConstraints_dirname_p82] -commonName = "t81 - -[nameConstraints_dirname_p83] -commonName = "t82 - -[nameConstraints_dirname_p84] -commonName = "t83 - -[nameConstraints_dirname_p85] -commonName = "t84 - -[nameConstraints_dirname_p86] -commonName = "t85 - -[nameConstraints_dirname_p87] -commonName = "t86 - -[nameConstraints_dirname_p88] -commonName = "t87 - -[nameConstraints_dirname_p89] -commonName = "t88 - -[nameConstraints_dirname_p90] -commonName = "t89 - -[nameConstraints_dirname_p91] -commonName = "t90 - -[nameConstraints_dirname_p92] -commonName = "t91 - -[nameConstraints_dirname_p93] -commonName = "t92 - -[nameConstraints_dirname_p94] -commonName = "t93 - -[nameConstraints_dirname_p95] -commonName = "t94 - -[nameConstraints_dirname_p96] -commonName = "t95 - -[nameConstraints_dirname_p97] -commonName = "t96 - -[nameConstraints_dirname_p98] -commonName = "t97 - -[nameConstraints_dirname_p99] -commonName = "t98 - -[nameConstraints_dirname_p100] -commonName = "t99 - -[nameConstraints_dirname_p101] -commonName = "t100 - -[nameConstraints_dirname_p102] -commonName = "t101 - -[nameConstraints_dirname_p103] -commonName = "t102 - -[nameConstraints_dirname_p104] -commonName = "t103 - -[nameConstraints_dirname_p105] -commonName = "t104 - -[nameConstraints_dirname_p106] -commonName = "t105 - -[nameConstraints_dirname_p107] -commonName = "t106 - -[nameConstraints_dirname_p108] -commonName = "t107 - -[nameConstraints_dirname_p109] -commonName = "t108 - -[nameConstraints_dirname_p110] -commonName = "t109 - -[nameConstraints_dirname_p111] -commonName = "t110 - -[nameConstraints_dirname_p112] -commonName = "t111 - -[nameConstraints_dirname_p113] -commonName = "t112 - -[nameConstraints_dirname_p114] -commonName = "t113 - -[nameConstraints_dirname_p115] -commonName = "t114 - -[nameConstraints_dirname_p116] -commonName = "t115 - -[nameConstraints_dirname_p117] -commonName = "t116 - -[nameConstraints_dirname_p118] -commonName = "t117 - -[nameConstraints_dirname_p119] -commonName = "t118 - -[nameConstraints_dirname_p120] -commonName = "t119 - -[nameConstraints_dirname_p121] -commonName = "t120 - -[nameConstraints_dirname_p122] -commonName = "t121 - -[nameConstraints_dirname_p123] -commonName = "t122 - -[nameConstraints_dirname_p124] -commonName = "t123 - -[nameConstraints_dirname_p125] -commonName = "t124 - -[nameConstraints_dirname_p126] -commonName = "t125 - -[nameConstraints_dirname_p127] -commonName = "t126 - -[nameConstraints_dirname_p128] -commonName = "t127 - -[nameConstraints_dirname_p129] -commonName = "t128 - -[nameConstraints_dirname_p130] -commonName = "t129 - -[nameConstraints_dirname_p131] -commonName = "t130 - -[nameConstraints_dirname_p132] -commonName = "t131 - -[nameConstraints_dirname_p133] -commonName = "t132 - -[nameConstraints_dirname_p134] -commonName = "t133 - -[nameConstraints_dirname_p135] -commonName = "t134 - -[nameConstraints_dirname_p136] -commonName = "t135 - -[nameConstraints_dirname_p137] -commonName = "t136 - -[nameConstraints_dirname_p138] -commonName = "t137 - -[nameConstraints_dirname_p139] -commonName = "t138 - -[nameConstraints_dirname_p140] -commonName = "t139 - -[nameConstraints_dirname_p141] -commonName = "t140 - -[nameConstraints_dirname_p142] -commonName = "t141 - -[nameConstraints_dirname_p143] -commonName = "t142 - -[nameConstraints_dirname_p144] -commonName = "t143 - -[nameConstraints_dirname_p145] -commonName = "t144 - -[nameConstraints_dirname_p146] -commonName = "t145 - -[nameConstraints_dirname_p147] -commonName = "t146 - -[nameConstraints_dirname_p148] -commonName = "t147 - -[nameConstraints_dirname_p149] -commonName = "t148 - -[nameConstraints_dirname_p150] -commonName = "t149 - -[nameConstraints_dirname_p151] -commonName = "t150 - -[nameConstraints_dirname_p152] -commonName = "t151 - -[nameConstraints_dirname_p153] -commonName = "t152 - -[nameConstraints_dirname_p154] -commonName = "t153 - -[nameConstraints_dirname_p155] -commonName = "t154 - -[nameConstraints_dirname_p156] -commonName = "t155 - -[nameConstraints_dirname_p157] -commonName = "t156 - -[nameConstraints_dirname_p158] -commonName = "t157 - -[nameConstraints_dirname_p159] -commonName = "t158 - -[nameConstraints_dirname_p160] -commonName = "t159 - -[nameConstraints_dirname_p161] -commonName = "t160 - -[nameConstraints_dirname_p162] -commonName = "t161 - -[nameConstraints_dirname_p163] -commonName = "t162 - -[nameConstraints_dirname_p164] -commonName = "t163 - -[nameConstraints_dirname_p165] -commonName = "t164 - -[nameConstraints_dirname_p166] -commonName = "t165 - -[nameConstraints_dirname_p167] -commonName = "t166 - -[nameConstraints_dirname_p168] -commonName = "t167 - -[nameConstraints_dirname_p169] -commonName = "t168 - -[nameConstraints_dirname_p170] -commonName = "t169 - -[nameConstraints_dirname_p171] -commonName = "t170 - -[nameConstraints_dirname_p172] -commonName = "t171 - -[nameConstraints_dirname_p173] -commonName = "t172 - -[nameConstraints_dirname_p174] -commonName = "t173 - -[nameConstraints_dirname_p175] -commonName = "t174 - -[nameConstraints_dirname_p176] -commonName = "t175 - -[nameConstraints_dirname_p177] -commonName = "t176 - -[nameConstraints_dirname_p178] -commonName = "t177 - -[nameConstraints_dirname_p179] -commonName = "t178 - -[nameConstraints_dirname_p180] -commonName = "t179 - -[nameConstraints_dirname_p181] -commonName = "t180 - -[nameConstraints_dirname_p182] -commonName = "t181 - -[nameConstraints_dirname_p183] -commonName = "t182 - -[nameConstraints_dirname_p184] -commonName = "t183 - -[nameConstraints_dirname_p185] -commonName = "t184 - -[nameConstraints_dirname_p186] -commonName = "t185 - -[nameConstraints_dirname_p187] -commonName = "t186 - -[nameConstraints_dirname_p188] -commonName = "t187 - -[nameConstraints_dirname_p189] -commonName = "t188 - -[nameConstraints_dirname_p190] -commonName = "t189 - -[nameConstraints_dirname_p191] -commonName = "t190 - -[nameConstraints_dirname_p192] -commonName = "t191 - -[nameConstraints_dirname_p193] -commonName = "t192 - -[nameConstraints_dirname_p194] -commonName = "t193 - -[nameConstraints_dirname_p195] -commonName = "t194 - -[nameConstraints_dirname_p196] -commonName = "t195 - -[nameConstraints_dirname_p197] -commonName = "t196 - -[nameConstraints_dirname_p198] -commonName = "t197 - -[nameConstraints_dirname_p199] -commonName = "t198 - -[nameConstraints_dirname_p200] -commonName = "t199 - -[nameConstraints_dirname_p201] -commonName = "t200 - -[nameConstraints_dirname_p202] -commonName = "t201 - -[nameConstraints_dirname_p203] -commonName = "t202 - -[nameConstraints_dirname_p204] -commonName = "t203 - -[nameConstraints_dirname_p205] -commonName = "t204 - -[nameConstraints_dirname_p206] -commonName = "t205 - -[nameConstraints_dirname_p207] -commonName = "t206 - -[nameConstraints_dirname_p208] -commonName = "t207 - -[nameConstraints_dirname_p209] -commonName = "t208 - -[nameConstraints_dirname_p210] -commonName = "t209 - -[nameConstraints_dirname_p211] -commonName = "t210 - -[nameConstraints_dirname_p212] -commonName = "t211 - -[nameConstraints_dirname_p213] -commonName = "t212 - -[nameConstraints_dirname_p214] -commonName = "t213 - -[nameConstraints_dirname_p215] -commonName = "t214 - -[nameConstraints_dirname_p216] -commonName = "t215 - -[nameConstraints_dirname_p217] -commonName = "t216 - -[nameConstraints_dirname_p218] -commonName = "t217 - -[nameConstraints_dirname_p219] -commonName = "t218 - -[nameConstraints_dirname_p220] -commonName = "t219 - -[nameConstraints_dirname_p221] -commonName = "t220 - -[nameConstraints_dirname_p222] -commonName = "t221 - -[nameConstraints_dirname_p223] -commonName = "t222 - -[nameConstraints_dirname_p224] -commonName = "t223 - -[nameConstraints_dirname_p225] -commonName = "t224 - -[nameConstraints_dirname_p226] -commonName = "t225 - -[nameConstraints_dirname_p227] -commonName = "t226 - -[nameConstraints_dirname_p228] -commonName = "t227 - -[nameConstraints_dirname_p229] -commonName = "t228 - -[nameConstraints_dirname_p230] -commonName = "t229 - -[nameConstraints_dirname_p231] -commonName = "t230 - -[nameConstraints_dirname_p232] -commonName = "t231 - -[nameConstraints_dirname_p233] -commonName = "t232 - -[nameConstraints_dirname_p234] -commonName = "t233 - -[nameConstraints_dirname_p235] -commonName = "t234 - -[nameConstraints_dirname_p236] -commonName = "t235 - -[nameConstraints_dirname_p237] -commonName = "t236 - -[nameConstraints_dirname_p238] -commonName = "t237 - -[nameConstraints_dirname_p239] -commonName = "t238 - -[nameConstraints_dirname_p240] -commonName = "t239 - -[nameConstraints_dirname_p241] -commonName = "t240 - -[nameConstraints_dirname_p242] -commonName = "t241 - -[nameConstraints_dirname_p243] -commonName = "t242 - -[nameConstraints_dirname_p244] -commonName = "t243 - -[nameConstraints_dirname_p245] -commonName = "t244 - -[nameConstraints_dirname_p246] -commonName = "t245 - -[nameConstraints_dirname_p247] -commonName = "t246 - -[nameConstraints_dirname_p248] -commonName = "t247 - -[nameConstraints_dirname_p249] -commonName = "t248 - -[nameConstraints_dirname_p250] -commonName = "t249 - -[nameConstraints_dirname_p251] -commonName = "t250 - -[nameConstraints_dirname_p252] -commonName = "t251 - -[nameConstraints_dirname_p253] -commonName = "t252 - -[nameConstraints_dirname_p254] -commonName = "t253 - -[nameConstraints_dirname_p255] -commonName = "t254 - -[nameConstraints_dirname_p256] -commonName = "t255 - -[nameConstraints_dirname_p257] -commonName = "t256 - -[nameConstraints_dirname_p258] -commonName = "t257 - -[nameConstraints_dirname_p259] -commonName = "t258 - -[nameConstraints_dirname_p260] -commonName = "t259 - -[nameConstraints_dirname_p261] -commonName = "t260 - -[nameConstraints_dirname_p262] -commonName = "t261 - -[nameConstraints_dirname_p263] -commonName = "t262 - -[nameConstraints_dirname_p264] -commonName = "t263 - -[nameConstraints_dirname_p265] -commonName = "t264 - -[nameConstraints_dirname_p266] -commonName = "t265 - -[nameConstraints_dirname_p267] -commonName = "t266 - -[nameConstraints_dirname_p268] -commonName = "t267 - -[nameConstraints_dirname_p269] -commonName = "t268 - -[nameConstraints_dirname_p270] -commonName = "t269 - -[nameConstraints_dirname_p271] -commonName = "t270 - -[nameConstraints_dirname_p272] -commonName = "t271 - -[nameConstraints_dirname_p273] -commonName = "t272 - -[nameConstraints_dirname_p274] -commonName = "t273 - -[nameConstraints_dirname_p275] -commonName = "t274 - -[nameConstraints_dirname_p276] -commonName = "t275 - -[nameConstraints_dirname_p277] -commonName = "t276 - -[nameConstraints_dirname_p278] -commonName = "t277 - -[nameConstraints_dirname_p279] -commonName = "t278 - -[nameConstraints_dirname_p280] -commonName = "t279 - -[nameConstraints_dirname_p281] -commonName = "t280 - -[nameConstraints_dirname_p282] -commonName = "t281 - -[nameConstraints_dirname_p283] -commonName = "t282 - -[nameConstraints_dirname_p284] -commonName = "t283 - -[nameConstraints_dirname_p285] -commonName = "t284 - -[nameConstraints_dirname_p286] -commonName = "t285 - -[nameConstraints_dirname_p287] -commonName = "t286 - -[nameConstraints_dirname_p288] -commonName = "t287 - -[nameConstraints_dirname_p289] -commonName = "t288 - -[nameConstraints_dirname_p290] -commonName = "t289 - -[nameConstraints_dirname_p291] -commonName = "t290 - -[nameConstraints_dirname_p292] -commonName = "t291 - -[nameConstraints_dirname_p293] -commonName = "t292 - -[nameConstraints_dirname_p294] -commonName = "t293 - -[nameConstraints_dirname_p295] -commonName = "t294 - -[nameConstraints_dirname_p296] -commonName = "t295 - -[nameConstraints_dirname_p297] -commonName = "t296 - -[nameConstraints_dirname_p298] -commonName = "t297 - -[nameConstraints_dirname_p299] -commonName = "t298 - -[nameConstraints_dirname_p300] -commonName = "t299 - -[nameConstraints_dirname_p301] -commonName = "t300 - -[nameConstraints_dirname_p302] -commonName = "t301 - -[nameConstraints_dirname_p303] -commonName = "t302 - -[nameConstraints_dirname_p304] -commonName = "t303 - -[nameConstraints_dirname_p305] -commonName = "t304 - -[nameConstraints_dirname_p306] -commonName = "t305 - -[nameConstraints_dirname_p307] -commonName = "t306 - -[nameConstraints_dirname_p308] -commonName = "t307 - -[nameConstraints_dirname_p309] -commonName = "t308 - -[nameConstraints_dirname_p310] -commonName = "t309 - -[nameConstraints_dirname_p311] -commonName = "t310 - -[nameConstraints_dirname_p312] -commonName = "t311 - -[nameConstraints_dirname_p313] -commonName = "t312 - -[nameConstraints_dirname_p314] -commonName = "t313 - -[nameConstraints_dirname_p315] -commonName = "t314 - -[nameConstraints_dirname_p316] -commonName = "t315 - -[nameConstraints_dirname_p317] -commonName = "t316 - -[nameConstraints_dirname_p318] -commonName = "t317 - -[nameConstraints_dirname_p319] -commonName = "t318 - -[nameConstraints_dirname_p320] -commonName = "t319 - -[nameConstraints_dirname_p321] -commonName = "t320 - -[nameConstraints_dirname_p322] -commonName = "t321 - -[nameConstraints_dirname_p323] -commonName = "t322 - -[nameConstraints_dirname_p324] -commonName = "t323 - -[nameConstraints_dirname_p325] -commonName = "t324 - -[nameConstraints_dirname_p326] -commonName = "t325 - -[nameConstraints_dirname_p327] -commonName = "t326 - -[nameConstraints_dirname_p328] -commonName = "t327 - -[nameConstraints_dirname_p329] -commonName = "t328 - -[nameConstraints_dirname_p330] -commonName = "t329 - -[nameConstraints_dirname_p331] -commonName = "t330 - -[nameConstraints_dirname_p332] -commonName = "t331 - -[nameConstraints_dirname_p333] -commonName = "t332 - -[nameConstraints_dirname_p334] -commonName = "t333 - -[nameConstraints_dirname_p335] -commonName = "t334 - -[nameConstraints_dirname_p336] -commonName = "t335 - -[nameConstraints_dirname_p337] -commonName = "t336 - -[nameConstraints_dirname_p338] -commonName = "t337 - -[nameConstraints_dirname_p339] -commonName = "t338 - -[nameConstraints_dirname_p340] -commonName = "t339 - -[nameConstraints_dirname_p341] -commonName = "t340 - -[nameConstraints_dirname_p342] -commonName = "t341 - -[nameConstraints_dirname_p343] -commonName = "t342 - -[nameConstraints_dirname_p344] -commonName = "t343 - -[nameConstraints_dirname_p345] -commonName = "t344 - -[nameConstraints_dirname_p346] -commonName = "t345 - -[nameConstraints_dirname_p347] -commonName = "t346 - -[nameConstraints_dirname_p348] -commonName = "t347 - -[nameConstraints_dirname_p349] -commonName = "t348 - -[nameConstraints_dirname_p350] -commonName = "t349 - -[nameConstraints_dirname_p351] -commonName = "t350 - -[nameConstraints_dirname_p352] -commonName = "t351 - -[nameConstraints_dirname_p353] -commonName = "t352 - -[nameConstraints_dirname_p354] -commonName = "t353 - -[nameConstraints_dirname_p355] -commonName = "t354 - -[nameConstraints_dirname_p356] -commonName = "t355 - -[nameConstraints_dirname_p357] -commonName = "t356 - -[nameConstraints_dirname_p358] -commonName = "t357 - -[nameConstraints_dirname_p359] -commonName = "t358 - -[nameConstraints_dirname_p360] -commonName = "t359 - -[nameConstraints_dirname_p361] -commonName = "t360 - -[nameConstraints_dirname_p362] -commonName = "t361 - -[nameConstraints_dirname_p363] -commonName = "t362 - -[nameConstraints_dirname_p364] -commonName = "t363 - -[nameConstraints_dirname_p365] -commonName = "t364 - -[nameConstraints_dirname_p366] -commonName = "t365 - -[nameConstraints_dirname_p367] -commonName = "t366 - -[nameConstraints_dirname_p368] -commonName = "t367 - -[nameConstraints_dirname_p369] -commonName = "t368 - -[nameConstraints_dirname_p370] -commonName = "t369 - -[nameConstraints_dirname_p371] -commonName = "t370 - -[nameConstraints_dirname_p372] -commonName = "t371 - -[nameConstraints_dirname_p373] -commonName = "t372 - -[nameConstraints_dirname_p374] -commonName = "t373 - -[nameConstraints_dirname_p375] -commonName = "t374 - -[nameConstraints_dirname_p376] -commonName = "t375 - -[nameConstraints_dirname_p377] -commonName = "t376 - -[nameConstraints_dirname_p378] -commonName = "t377 - -[nameConstraints_dirname_p379] -commonName = "t378 - -[nameConstraints_dirname_p380] -commonName = "t379 - -[nameConstraints_dirname_p381] -commonName = "t380 - -[nameConstraints_dirname_p382] -commonName = "t381 - -[nameConstraints_dirname_p383] -commonName = "t382 - -[nameConstraints_dirname_p384] -commonName = "t383 - -[nameConstraints_dirname_p385] -commonName = "t384 - -[nameConstraints_dirname_p386] -commonName = "t385 - -[nameConstraints_dirname_p387] -commonName = "t386 - -[nameConstraints_dirname_p388] -commonName = "t387 - -[nameConstraints_dirname_p389] -commonName = "t388 - -[nameConstraints_dirname_p390] -commonName = "t389 - -[nameConstraints_dirname_p391] -commonName = "t390 - -[nameConstraints_dirname_p392] -commonName = "t391 - -[nameConstraints_dirname_p393] -commonName = "t392 - -[nameConstraints_dirname_p394] -commonName = "t393 - -[nameConstraints_dirname_p395] -commonName = "t394 - -[nameConstraints_dirname_p396] -commonName = "t395 - -[nameConstraints_dirname_p397] -commonName = "t396 - -[nameConstraints_dirname_p398] -commonName = "t397 - -[nameConstraints_dirname_p399] -commonName = "t398 - -[nameConstraints_dirname_p400] -commonName = "t399 - -[nameConstraints_dirname_p401] -commonName = "t400 - -[nameConstraints_dirname_p402] -commonName = "t401 - -[nameConstraints_dirname_p403] -commonName = "t402 - -[nameConstraints_dirname_p404] -commonName = "t403 - -[nameConstraints_dirname_p405] -commonName = "t404 - -[nameConstraints_dirname_p406] -commonName = "t405 - -[nameConstraints_dirname_p407] -commonName = "t406 - -[nameConstraints_dirname_p408] -commonName = "t407 - -[nameConstraints_dirname_p409] -commonName = "t408 - -[nameConstraints_dirname_p410] -commonName = "t409 - -[nameConstraints_dirname_p411] -commonName = "t410 - -[nameConstraints_dirname_p412] -commonName = "t411 - -[nameConstraints_dirname_p413] -commonName = "t412 - -[nameConstraints_dirname_p414] -commonName = "t413 - -[nameConstraints_dirname_p415] -commonName = "t414 - -[nameConstraints_dirname_p416] -commonName = "t415 - -[nameConstraints_dirname_p417] -commonName = "t416 - -[nameConstraints_dirname_p418] -commonName = "t417 - -[nameConstraints_dirname_p419] -commonName = "t418 - -[nameConstraints_dirname_p420] -commonName = "t419 - -[nameConstraints_dirname_p421] -commonName = "t420 - -[nameConstraints_dirname_p422] -commonName = "t421 - -[nameConstraints_dirname_p423] -commonName = "t422 - -[nameConstraints_dirname_p424] -commonName = "t423 - -[nameConstraints_dirname_p425] -commonName = "t424 - -[nameConstraints_dirname_p426] -commonName = "t425 - -[nameConstraints_dirname_p427] -commonName = "t426 - -[nameConstraints_dirname_p428] -commonName = "t427 - -[nameConstraints_dirname_p429] -commonName = "t428 - -[nameConstraints_dirname_p430] -commonName = "t429 - -[nameConstraints_dirname_p431] -commonName = "t430 - -[nameConstraints_dirname_p432] -commonName = "t431 - -[nameConstraints_dirname_p433] -commonName = "t432 - -[nameConstraints_dirname_p434] -commonName = "t433 - -[nameConstraints_dirname_p435] -commonName = "t434 - -[nameConstraints_dirname_p436] -commonName = "t435 - -[nameConstraints_dirname_p437] -commonName = "t436 - -[nameConstraints_dirname_p438] -commonName = "t437 - -[nameConstraints_dirname_p439] -commonName = "t438 - -[nameConstraints_dirname_p440] -commonName = "t439 - -[nameConstraints_dirname_p441] -commonName = "t440 - -[nameConstraints_dirname_p442] -commonName = "t441 - -[nameConstraints_dirname_p443] -commonName = "t442 - -[nameConstraints_dirname_p444] -commonName = "t443 - -[nameConstraints_dirname_p445] -commonName = "t444 - -[nameConstraints_dirname_p446] -commonName = "t445 - -[nameConstraints_dirname_p447] -commonName = "t446 - -[nameConstraints_dirname_p448] -commonName = "t447 - -[nameConstraints_dirname_p449] -commonName = "t448 - -[nameConstraints_dirname_p450] -commonName = "t449 - -[nameConstraints_dirname_p451] -commonName = "t450 - -[nameConstraints_dirname_p452] -commonName = "t451 - -[nameConstraints_dirname_p453] -commonName = "t452 - -[nameConstraints_dirname_p454] -commonName = "t453 - -[nameConstraints_dirname_p455] -commonName = "t454 - -[nameConstraints_dirname_p456] -commonName = "t455 - -[nameConstraints_dirname_p457] -commonName = "t456 - -[nameConstraints_dirname_p458] -commonName = "t457 - -[nameConstraints_dirname_p459] -commonName = "t458 - -[nameConstraints_dirname_p460] -commonName = "t459 - -[nameConstraints_dirname_p461] -commonName = "t460 - -[nameConstraints_dirname_p462] -commonName = "t461 - -[nameConstraints_dirname_p463] -commonName = "t462 - -[nameConstraints_dirname_p464] -commonName = "t463 - -[nameConstraints_dirname_p465] -commonName = "t464 - -[nameConstraints_dirname_p466] -commonName = "t465 - -[nameConstraints_dirname_p467] -commonName = "t466 - -[nameConstraints_dirname_p468] -commonName = "t467 - -[nameConstraints_dirname_p469] -commonName = "t468 - -[nameConstraints_dirname_p470] -commonName = "t469 - -[nameConstraints_dirname_p471] -commonName = "t470 - -[nameConstraints_dirname_p472] -commonName = "t471 - -[nameConstraints_dirname_p473] -commonName = "t472 - -[nameConstraints_dirname_p474] -commonName = "t473 - -[nameConstraints_dirname_p475] -commonName = "t474 - -[nameConstraints_dirname_p476] -commonName = "t475 - -[nameConstraints_dirname_p477] -commonName = "t476 - -[nameConstraints_dirname_p478] -commonName = "t477 - -[nameConstraints_dirname_p479] -commonName = "t478 - -[nameConstraints_dirname_p480] -commonName = "t479 - -[nameConstraints_dirname_p481] -commonName = "t480 - -[nameConstraints_dirname_p482] -commonName = "t481 - -[nameConstraints_dirname_p483] -commonName = "t482 - -[nameConstraints_dirname_p484] -commonName = "t483 - -[nameConstraints_dirname_p485] -commonName = "t484 - -[nameConstraints_dirname_p486] -commonName = "t485 - -[nameConstraints_dirname_p487] -commonName = "t486 - -[nameConstraints_dirname_p488] -commonName = "t487 - -[nameConstraints_dirname_p489] -commonName = "t488 - -[nameConstraints_dirname_p490] -commonName = "t489 - -[nameConstraints_dirname_p491] -commonName = "t490 - -[nameConstraints_dirname_p492] -commonName = "t491 - -[nameConstraints_dirname_p493] -commonName = "t492 - -[nameConstraints_dirname_p494] -commonName = "t493 - -[nameConstraints_dirname_p495] -commonName = "t494 - -[nameConstraints_dirname_p496] -commonName = "t495 - -[nameConstraints_dirname_p497] -commonName = "t496 - -[nameConstraints_dirname_p498] -commonName = "t497 - -[nameConstraints_dirname_p499] -commonName = "t498 - -[nameConstraints_dirname_p500] -commonName = "t499 - -[nameConstraints_dirname_p501] -commonName = "t500 - -[nameConstraints_dirname_p502] -commonName = "t501 - -[nameConstraints_dirname_p503] -commonName = "t502 - -[nameConstraints_dirname_p504] -commonName = "t503 - -[nameConstraints_dirname_p505] -commonName = "t504 - -[nameConstraints_dirname_p506] -commonName = "t505 - -[nameConstraints_dirname_p507] -commonName = "t506 - -[nameConstraints_dirname_p508] -commonName = "t507 - -[nameConstraints_dirname_p509] -commonName = "t508 - -[nameConstraints_dirname_p510] -commonName = "t509 - -[nameConstraints_dirname_p511] -commonName = "t510 - -[nameConstraints_dirname_p512] -commonName = "t511 - -[nameConstraints_dirname_p513] -commonName = "t512 - -[nameConstraints_dirname_p514] -commonName = "t513 - -[nameConstraints_dirname_p515] -commonName = "t514 - -[nameConstraints_dirname_p516] -commonName = "t515 - -[nameConstraints_dirname_p517] -commonName = "t516 - -[nameConstraints_dirname_p518] -commonName = "t517 - -[nameConstraints_dirname_p519] -commonName = "t518 - -[nameConstraints_dirname_p520] -commonName = "t519 - -[nameConstraints_dirname_p521] -commonName = "t520 - -[nameConstraints_dirname_p522] -commonName = "t521 - -[nameConstraints_dirname_p523] -commonName = "t522 - -[nameConstraints_dirname_p524] -commonName = "t523 - -[nameConstraints_dirname_p525] -commonName = "t524 - -[nameConstraints_dirname_p526] -commonName = "t525 - -[nameConstraints_dirname_p527] -commonName = "t526 - -[nameConstraints_dirname_p528] -commonName = "t527 - -[nameConstraints_dirname_p529] -commonName = "t528 - -[nameConstraints_dirname_p530] -commonName = "t529 - -[nameConstraints_dirname_p531] -commonName = "t530 - -[nameConstraints_dirname_p532] -commonName = "t531 - -[nameConstraints_dirname_p533] -commonName = "t532 - -[nameConstraints_dirname_p534] -commonName = "t533 - -[nameConstraints_dirname_p535] -commonName = "t534 - -[nameConstraints_dirname_p536] -commonName = "t535 - -[nameConstraints_dirname_p537] -commonName = "t536 - -[nameConstraints_dirname_p538] -commonName = "t537 - -[nameConstraints_dirname_p539] -commonName = "t538 - -[nameConstraints_dirname_p540] -commonName = "t539 - -[nameConstraints_dirname_p541] -commonName = "t540 - -[nameConstraints_dirname_p542] -commonName = "t541 - -[nameConstraints_dirname_p543] -commonName = "t542 - -[nameConstraints_dirname_p544] -commonName = "t543 - -[nameConstraints_dirname_p545] -commonName = "t544 - -[nameConstraints_dirname_p546] -commonName = "t545 - -[nameConstraints_dirname_p547] -commonName = "t546 - -[nameConstraints_dirname_p548] -commonName = "t547 - -[nameConstraints_dirname_p549] -commonName = "t548 - -[nameConstraints_dirname_p550] -commonName = "t549 - -[nameConstraints_dirname_p551] -commonName = "t550 - -[nameConstraints_dirname_p552] -commonName = "t551 - -[nameConstraints_dirname_p553] -commonName = "t552 - -[nameConstraints_dirname_p554] -commonName = "t553 - -[nameConstraints_dirname_p555] -commonName = "t554 - -[nameConstraints_dirname_p556] -commonName = "t555 - -[nameConstraints_dirname_p557] -commonName = "t556 - -[nameConstraints_dirname_p558] -commonName = "t557 - -[nameConstraints_dirname_p559] -commonName = "t558 - -[nameConstraints_dirname_p560] -commonName = "t559 - -[nameConstraints_dirname_p561] -commonName = "t560 - -[nameConstraints_dirname_p562] -commonName = "t561 - -[nameConstraints_dirname_p563] -commonName = "t562 - -[nameConstraints_dirname_p564] -commonName = "t563 - -[nameConstraints_dirname_p565] -commonName = "t564 - -[nameConstraints_dirname_p566] -commonName = "t565 - -[nameConstraints_dirname_p567] -commonName = "t566 - -[nameConstraints_dirname_p568] -commonName = "t567 - -[nameConstraints_dirname_p569] -commonName = "t568 - -[nameConstraints_dirname_p570] -commonName = "t569 - -[nameConstraints_dirname_p571] -commonName = "t570 - -[nameConstraints_dirname_p572] -commonName = "t571 - -[nameConstraints_dirname_p573] -commonName = "t572 - -[nameConstraints_dirname_p574] -commonName = "t573 - -[nameConstraints_dirname_p575] -commonName = "t574 - -[nameConstraints_dirname_p576] -commonName = "t575 - -[nameConstraints_dirname_p577] -commonName = "t576 - -[nameConstraints_dirname_p578] -commonName = "t577 - -[nameConstraints_dirname_p579] -commonName = "t578 - -[nameConstraints_dirname_p580] -commonName = "t579 - -[nameConstraints_dirname_p581] -commonName = "t580 - -[nameConstraints_dirname_p582] -commonName = "t581 - -[nameConstraints_dirname_p583] -commonName = "t582 - -[nameConstraints_dirname_p584] -commonName = "t583 - -[nameConstraints_dirname_p585] -commonName = "t584 - -[nameConstraints_dirname_p586] -commonName = "t585 - -[nameConstraints_dirname_p587] -commonName = "t586 - -[nameConstraints_dirname_p588] -commonName = "t587 - -[nameConstraints_dirname_p589] -commonName = "t588 - -[nameConstraints_dirname_p590] -commonName = "t589 - -[nameConstraints_dirname_p591] -commonName = "t590 - -[nameConstraints_dirname_p592] -commonName = "t591 - -[nameConstraints_dirname_p593] -commonName = "t592 - -[nameConstraints_dirname_p594] -commonName = "t593 - -[nameConstraints_dirname_p595] -commonName = "t594 - -[nameConstraints_dirname_p596] -commonName = "t595 - -[nameConstraints_dirname_p597] -commonName = "t596 - -[nameConstraints_dirname_p598] -commonName = "t597 - -[nameConstraints_dirname_p599] -commonName = "t598 - -[nameConstraints_dirname_p600] -commonName = "t599 - -[nameConstraints_dirname_p601] -commonName = "t600 - -[nameConstraints_dirname_p602] -commonName = "t601 - -[nameConstraints_dirname_p603] -commonName = "t602 - -[nameConstraints_dirname_p604] -commonName = "t603 - -[nameConstraints_dirname_p605] -commonName = "t604 - -[nameConstraints_dirname_p606] -commonName = "t605 - -[nameConstraints_dirname_p607] -commonName = "t606 - -[nameConstraints_dirname_p608] -commonName = "t607 - -[nameConstraints_dirname_p609] -commonName = "t608 - -[nameConstraints_dirname_p610] -commonName = "t609 - -[nameConstraints_dirname_p611] -commonName = "t610 - -[nameConstraints_dirname_p612] -commonName = "t611 - -[nameConstraints_dirname_p613] -commonName = "t612 - -[nameConstraints_dirname_p614] -commonName = "t613 - -[nameConstraints_dirname_p615] -commonName = "t614 - -[nameConstraints_dirname_p616] -commonName = "t615 - -[nameConstraints_dirname_p617] -commonName = "t616 - -[nameConstraints_dirname_p618] -commonName = "t617 - -[nameConstraints_dirname_p619] -commonName = "t618 - -[nameConstraints_dirname_p620] -commonName = "t619 - -[nameConstraints_dirname_p621] -commonName = "t620 - -[nameConstraints_dirname_p622] -commonName = "t621 - -[nameConstraints_dirname_p623] -commonName = "t622 - -[nameConstraints_dirname_p624] -commonName = "t623 - -[nameConstraints_dirname_p625] -commonName = "t624 - -[nameConstraints_dirname_p626] -commonName = "t625 - -[nameConstraints_dirname_p627] -commonName = "t626 - -[nameConstraints_dirname_p628] -commonName = "t627 - -[nameConstraints_dirname_p629] -commonName = "t628 - -[nameConstraints_dirname_p630] -commonName = "t629 - -[nameConstraints_dirname_p631] -commonName = "t630 - -[nameConstraints_dirname_p632] -commonName = "t631 - -[nameConstraints_dirname_p633] -commonName = "t632 - -[nameConstraints_dirname_p634] -commonName = "t633 - -[nameConstraints_dirname_p635] -commonName = "t634 - -[nameConstraints_dirname_p636] -commonName = "t635 - -[nameConstraints_dirname_p637] -commonName = "t636 - -[nameConstraints_dirname_p638] -commonName = "t637 - -[nameConstraints_dirname_p639] -commonName = "t638 - -[nameConstraints_dirname_p640] -commonName = "t639 - -[nameConstraints_dirname_p641] -commonName = "t640 - -[nameConstraints_dirname_p642] -commonName = "t641 - -[nameConstraints_dirname_p643] -commonName = "t642 - -[nameConstraints_dirname_p644] -commonName = "t643 - -[nameConstraints_dirname_p645] -commonName = "t644 - -[nameConstraints_dirname_p646] -commonName = "t645 - -[nameConstraints_dirname_p647] -commonName = "t646 - -[nameConstraints_dirname_p648] -commonName = "t647 - -[nameConstraints_dirname_p649] -commonName = "t648 - -[nameConstraints_dirname_p650] -commonName = "t649 - -[nameConstraints_dirname_p651] -commonName = "t650 - -[nameConstraints_dirname_p652] -commonName = "t651 - -[nameConstraints_dirname_p653] -commonName = "t652 - -[nameConstraints_dirname_p654] -commonName = "t653 - -[nameConstraints_dirname_p655] -commonName = "t654 - -[nameConstraints_dirname_p656] -commonName = "t655 - -[nameConstraints_dirname_p657] -commonName = "t656 - -[nameConstraints_dirname_p658] -commonName = "t657 - -[nameConstraints_dirname_p659] -commonName = "t658 - -[nameConstraints_dirname_p660] -commonName = "t659 - -[nameConstraints_dirname_p661] -commonName = "t660 - -[nameConstraints_dirname_p662] -commonName = "t661 - -[nameConstraints_dirname_p663] -commonName = "t662 - -[nameConstraints_dirname_p664] -commonName = "t663 - -[nameConstraints_dirname_p665] -commonName = "t664 - -[nameConstraints_dirname_p666] -commonName = "t665 - -[nameConstraints_dirname_p667] -commonName = "t666 - -[nameConstraints_dirname_p668] -commonName = "t667 - -[nameConstraints_dirname_p669] -commonName = "t668 - -[nameConstraints_dirname_p670] -commonName = "t669 - -[nameConstraints_dirname_p671] -commonName = "t670 - -[nameConstraints_dirname_p672] -commonName = "t671 - -[nameConstraints_dirname_p673] -commonName = "t672 - -[nameConstraints_dirname_p674] -commonName = "t673 - -[nameConstraints_dirname_p675] -commonName = "t674 - -[nameConstraints_dirname_p676] -commonName = "t675 - -[nameConstraints_dirname_p677] -commonName = "t676 - -[nameConstraints_dirname_p678] -commonName = "t677 - -[nameConstraints_dirname_p679] -commonName = "t678 - -[nameConstraints_dirname_p680] -commonName = "t679 - -[nameConstraints_dirname_p681] -commonName = "t680 - -[nameConstraints_dirname_p682] -commonName = "t681 - -[nameConstraints_dirname_p683] -commonName = "t682 - -[nameConstraints_dirname_p684] -commonName = "t683 - -[nameConstraints_dirname_p685] -commonName = "t684 - -[nameConstraints_dirname_p686] -commonName = "t685 - -[nameConstraints_dirname_p687] -commonName = "t686 - -[nameConstraints_dirname_p688] -commonName = "t687 - -[nameConstraints_dirname_p689] -commonName = "t688 - -[nameConstraints_dirname_p690] -commonName = "t689 - -[nameConstraints_dirname_p691] -commonName = "t690 - -[nameConstraints_dirname_p692] -commonName = "t691 - -[nameConstraints_dirname_p693] -commonName = "t692 - -[nameConstraints_dirname_p694] -commonName = "t693 - -[nameConstraints_dirname_p695] -commonName = "t694 - -[nameConstraints_dirname_p696] -commonName = "t695 - -[nameConstraints_dirname_p697] -commonName = "t696 - -[nameConstraints_dirname_p698] -commonName = "t697 - -[nameConstraints_dirname_p699] -commonName = "t698 - -[nameConstraints_dirname_p700] -commonName = "t699 - -[nameConstraints_dirname_p701] -commonName = "t700 - -[nameConstraints_dirname_p702] -commonName = "t701 - -[nameConstraints_dirname_p703] -commonName = "t702 - -[nameConstraints_dirname_p704] -commonName = "t703 - -[nameConstraints_dirname_p705] -commonName = "t704 - -[nameConstraints_dirname_p706] -commonName = "t705 - -[nameConstraints_dirname_p707] -commonName = "t706 - -[nameConstraints_dirname_p708] -commonName = "t707 - -[nameConstraints_dirname_p709] -commonName = "t708 - -[nameConstraints_dirname_p710] -commonName = "t709 - -[nameConstraints_dirname_p711] -commonName = "t710 - -[nameConstraints_dirname_p712] -commonName = "t711 - -[nameConstraints_dirname_p713] -commonName = "t712 - -[nameConstraints_dirname_p714] -commonName = "t713 - -[nameConstraints_dirname_p715] -commonName = "t714 - -[nameConstraints_dirname_p716] -commonName = "t715 - -[nameConstraints_dirname_p717] -commonName = "t716 - -[nameConstraints_dirname_p718] -commonName = "t717 - -[nameConstraints_dirname_p719] -commonName = "t718 - -[nameConstraints_dirname_p720] -commonName = "t719 - -[nameConstraints_dirname_p721] -commonName = "t720 - -[nameConstraints_dirname_p722] -commonName = "t721 - -[nameConstraints_dirname_p723] -commonName = "t722 - -[nameConstraints_dirname_p724] -commonName = "t723 - -[nameConstraints_dirname_p725] -commonName = "t724 - -[nameConstraints_dirname_p726] -commonName = "t725 - -[nameConstraints_dirname_p727] -commonName = "t726 - -[nameConstraints_dirname_p728] -commonName = "t727 - -[nameConstraints_dirname_p729] -commonName = "t728 - -[nameConstraints_dirname_p730] -commonName = "t729 - -[nameConstraints_dirname_p731] -commonName = "t730 - -[nameConstraints_dirname_p732] -commonName = "t731 - -[nameConstraints_dirname_p733] -commonName = "t732 - -[nameConstraints_dirname_p734] -commonName = "t733 - -[nameConstraints_dirname_p735] -commonName = "t734 - -[nameConstraints_dirname_p736] -commonName = "t735 - -[nameConstraints_dirname_p737] -commonName = "t736 - -[nameConstraints_dirname_p738] -commonName = "t737 - -[nameConstraints_dirname_p739] -commonName = "t738 - -[nameConstraints_dirname_p740] -commonName = "t739 - -[nameConstraints_dirname_p741] -commonName = "t740 - -[nameConstraints_dirname_p742] -commonName = "t741 - -[nameConstraints_dirname_p743] -commonName = "t742 - -[nameConstraints_dirname_p744] -commonName = "t743 - -[nameConstraints_dirname_p745] -commonName = "t744 - -[nameConstraints_dirname_p746] -commonName = "t745 - -[nameConstraints_dirname_p747] -commonName = "t746 - -[nameConstraints_dirname_p748] -commonName = "t747 - -[nameConstraints_dirname_p749] -commonName = "t748 - -[nameConstraints_dirname_p750] -commonName = "t749 - -[nameConstraints_dirname_p751] -commonName = "t750 - -[nameConstraints_dirname_p752] -commonName = "t751 - -[nameConstraints_dirname_p753] -commonName = "t752 - -[nameConstraints_dirname_p754] -commonName = "t753 - -[nameConstraints_dirname_p755] -commonName = "t754 - -[nameConstraints_dirname_p756] -commonName = "t755 - -[nameConstraints_dirname_p757] -commonName = "t756 - -[nameConstraints_dirname_p758] -commonName = "t757 - -[nameConstraints_dirname_p759] -commonName = "t758 - -[nameConstraints_dirname_p760] -commonName = "t759 - -[nameConstraints_dirname_p761] -commonName = "t760 - -[nameConstraints_dirname_p762] -commonName = "t761 - -[nameConstraints_dirname_p763] -commonName = "t762 - -[nameConstraints_dirname_p764] -commonName = "t763 - -[nameConstraints_dirname_p765] -commonName = "t764 - -[nameConstraints_dirname_p766] -commonName = "t765 - -[nameConstraints_dirname_p767] -commonName = "t766 - -[nameConstraints_dirname_p768] -commonName = "t767 - -[nameConstraints_dirname_p769] -commonName = "t768 - -[nameConstraints_dirname_p770] -commonName = "t769 - -[nameConstraints_dirname_p771] -commonName = "t770 - -[nameConstraints_dirname_p772] -commonName = "t771 - -[nameConstraints_dirname_p773] -commonName = "t772 - -[nameConstraints_dirname_p774] -commonName = "t773 - -[nameConstraints_dirname_p775] -commonName = "t774 - -[nameConstraints_dirname_p776] -commonName = "t775 - -[nameConstraints_dirname_p777] -commonName = "t776 - -[nameConstraints_dirname_p778] -commonName = "t777 - -[nameConstraints_dirname_p779] -commonName = "t778 - -[nameConstraints_dirname_p780] -commonName = "t779 - -[nameConstraints_dirname_p781] -commonName = "t780 - -[nameConstraints_dirname_p782] -commonName = "t781 - -[nameConstraints_dirname_p783] -commonName = "t782 - -[nameConstraints_dirname_p784] -commonName = "t783 - -[nameConstraints_dirname_p785] -commonName = "t784 - -[nameConstraints_dirname_p786] -commonName = "t785 - -[nameConstraints_dirname_p787] -commonName = "t786 - -[nameConstraints_dirname_p788] -commonName = "t787 - -[nameConstraints_dirname_p789] -commonName = "t788 - -[nameConstraints_dirname_p790] -commonName = "t789 - -[nameConstraints_dirname_p791] -commonName = "t790 - -[nameConstraints_dirname_p792] -commonName = "t791 - -[nameConstraints_dirname_p793] -commonName = "t792 - -[nameConstraints_dirname_p794] -commonName = "t793 - -[nameConstraints_dirname_p795] -commonName = "t794 - -[nameConstraints_dirname_p796] -commonName = "t795 - -[nameConstraints_dirname_p797] -commonName = "t796 - -[nameConstraints_dirname_p798] -commonName = "t797 - -[nameConstraints_dirname_p799] -commonName = "t798 - -[nameConstraints_dirname_p800] -commonName = "t799 - -[nameConstraints_dirname_p801] -commonName = "t800 - -[nameConstraints_dirname_p802] -commonName = "t801 - -[nameConstraints_dirname_p803] -commonName = "t802 - -[nameConstraints_dirname_p804] -commonName = "t803 - -[nameConstraints_dirname_p805] -commonName = "t804 - -[nameConstraints_dirname_p806] -commonName = "t805 - -[nameConstraints_dirname_p807] -commonName = "t806 - -[nameConstraints_dirname_p808] -commonName = "t807 - -[nameConstraints_dirname_p809] -commonName = "t808 - -[nameConstraints_dirname_p810] -commonName = "t809 - -[nameConstraints_dirname_p811] -commonName = "t810 - -[nameConstraints_dirname_p812] -commonName = "t811 - -[nameConstraints_dirname_p813] -commonName = "t812 - -[nameConstraints_dirname_p814] -commonName = "t813 - -[nameConstraints_dirname_p815] -commonName = "t814 - -[nameConstraints_dirname_p816] -commonName = "t815 - -[nameConstraints_dirname_p817] -commonName = "t816 - -[nameConstraints_dirname_p818] -commonName = "t817 - -[nameConstraints_dirname_p819] -commonName = "t818 - -[nameConstraints_dirname_p820] -commonName = "t819 - -[nameConstraints_dirname_p821] -commonName = "t820 - -[nameConstraints_dirname_p822] -commonName = "t821 - -[nameConstraints_dirname_p823] -commonName = "t822 - -[nameConstraints_dirname_p824] -commonName = "t823 - -[nameConstraints_dirname_p825] -commonName = "t824 - -[nameConstraints_dirname_p826] -commonName = "t825 - -[nameConstraints_dirname_p827] -commonName = "t826 - -[nameConstraints_dirname_p828] -commonName = "t827 - -[nameConstraints_dirname_p829] -commonName = "t828 - -[nameConstraints_dirname_p830] -commonName = "t829 - -[nameConstraints_dirname_p831] -commonName = "t830 - -[nameConstraints_dirname_p832] -commonName = "t831 - -[nameConstraints_dirname_p833] -commonName = "t832 - -[nameConstraints_dirname_p834] -commonName = "t833 - -[nameConstraints_dirname_p835] -commonName = "t834 - -[nameConstraints_dirname_p836] -commonName = "t835 - -[nameConstraints_dirname_p837] -commonName = "t836 - -[nameConstraints_dirname_p838] -commonName = "t837 - -[nameConstraints_dirname_p839] -commonName = "t838 - -[nameConstraints_dirname_p840] -commonName = "t839 - -[nameConstraints_dirname_p841] -commonName = "t840 - -[nameConstraints_dirname_p842] -commonName = "t841 - -[nameConstraints_dirname_p843] -commonName = "t842 - -[nameConstraints_dirname_p844] -commonName = "t843 - -[nameConstraints_dirname_p845] -commonName = "t844 - -[nameConstraints_dirname_p846] -commonName = "t845 - -[nameConstraints_dirname_p847] -commonName = "t846 - -[nameConstraints_dirname_p848] -commonName = "t847 - -[nameConstraints_dirname_p849] -commonName = "t848 - -[nameConstraints_dirname_p850] -commonName = "t849 - -[nameConstraints_dirname_p851] -commonName = "t850 - -[nameConstraints_dirname_p852] -commonName = "t851 - -[nameConstraints_dirname_p853] -commonName = "t852 - -[nameConstraints_dirname_p854] -commonName = "t853 - -[nameConstraints_dirname_p855] -commonName = "t854 - -[nameConstraints_dirname_p856] -commonName = "t855 - -[nameConstraints_dirname_p857] -commonName = "t856 - -[nameConstraints_dirname_p858] -commonName = "t857 - -[nameConstraints_dirname_p859] -commonName = "t858 - -[nameConstraints_dirname_p860] -commonName = "t859 - -[nameConstraints_dirname_p861] -commonName = "t860 - -[nameConstraints_dirname_p862] -commonName = "t861 - -[nameConstraints_dirname_p863] -commonName = "t862 - -[nameConstraints_dirname_p864] -commonName = "t863 - -[nameConstraints_dirname_p865] -commonName = "t864 - -[nameConstraints_dirname_p866] -commonName = "t865 - -[nameConstraints_dirname_p867] -commonName = "t866 - -[nameConstraints_dirname_p868] -commonName = "t867 - -[nameConstraints_dirname_p869] -commonName = "t868 - -[nameConstraints_dirname_p870] -commonName = "t869 - -[nameConstraints_dirname_p871] -commonName = "t870 - -[nameConstraints_dirname_p872] -commonName = "t871 - -[nameConstraints_dirname_p873] -commonName = "t872 - -[nameConstraints_dirname_p874] -commonName = "t873 - -[nameConstraints_dirname_p875] -commonName = "t874 - -[nameConstraints_dirname_p876] -commonName = "t875 - -[nameConstraints_dirname_p877] -commonName = "t876 - -[nameConstraints_dirname_p878] -commonName = "t877 - -[nameConstraints_dirname_p879] -commonName = "t878 - -[nameConstraints_dirname_p880] -commonName = "t879 - -[nameConstraints_dirname_p881] -commonName = "t880 - -[nameConstraints_dirname_p882] -commonName = "t881 - -[nameConstraints_dirname_p883] -commonName = "t882 - -[nameConstraints_dirname_p884] -commonName = "t883 - -[nameConstraints_dirname_p885] -commonName = "t884 - -[nameConstraints_dirname_p886] -commonName = "t885 - -[nameConstraints_dirname_p887] -commonName = "t886 - -[nameConstraints_dirname_p888] -commonName = "t887 - -[nameConstraints_dirname_p889] -commonName = "t888 - -[nameConstraints_dirname_p890] -commonName = "t889 - -[nameConstraints_dirname_p891] -commonName = "t890 - -[nameConstraints_dirname_p892] -commonName = "t891 - -[nameConstraints_dirname_p893] -commonName = "t892 - -[nameConstraints_dirname_p894] -commonName = "t893 - -[nameConstraints_dirname_p895] -commonName = "t894 - -[nameConstraints_dirname_p896] -commonName = "t895 - -[nameConstraints_dirname_p897] -commonName = "t896 - -[nameConstraints_dirname_p898] -commonName = "t897 - -[nameConstraints_dirname_p899] -commonName = "t898 - -[nameConstraints_dirname_p900] -commonName = "t899 - -[nameConstraints_dirname_p901] -commonName = "t900 - -[nameConstraints_dirname_p902] -commonName = "t901 - -[nameConstraints_dirname_p903] -commonName = "t902 - -[nameConstraints_dirname_p904] -commonName = "t903 - -[nameConstraints_dirname_p905] -commonName = "t904 - -[nameConstraints_dirname_p906] -commonName = "t905 - -[nameConstraints_dirname_p907] -commonName = "t906 - -[nameConstraints_dirname_p908] -commonName = "t907 - -[nameConstraints_dirname_p909] -commonName = "t908 - -[nameConstraints_dirname_p910] -commonName = "t909 - -[nameConstraints_dirname_p911] -commonName = "t910 - -[nameConstraints_dirname_p912] -commonName = "t911 - -[nameConstraints_dirname_p913] -commonName = "t912 - -[nameConstraints_dirname_p914] -commonName = "t913 - -[nameConstraints_dirname_p915] -commonName = "t914 - -[nameConstraints_dirname_p916] -commonName = "t915 - -[nameConstraints_dirname_p917] -commonName = "t916 - -[nameConstraints_dirname_p918] -commonName = "t917 - -[nameConstraints_dirname_p919] -commonName = "t918 - -[nameConstraints_dirname_p920] -commonName = "t919 - -[nameConstraints_dirname_p921] -commonName = "t920 - -[nameConstraints_dirname_p922] -commonName = "t921 - -[nameConstraints_dirname_p923] -commonName = "t922 - -[nameConstraints_dirname_p924] -commonName = "t923 - -[nameConstraints_dirname_p925] -commonName = "t924 - -[nameConstraints_dirname_p926] -commonName = "t925 - -[nameConstraints_dirname_p927] -commonName = "t926 - -[nameConstraints_dirname_p928] -commonName = "t927 - -[nameConstraints_dirname_p929] -commonName = "t928 - -[nameConstraints_dirname_p930] -commonName = "t929 - -[nameConstraints_dirname_p931] -commonName = "t930 - -[nameConstraints_dirname_p932] -commonName = "t931 - -[nameConstraints_dirname_p933] -commonName = "t932 - -[nameConstraints_dirname_p934] -commonName = "t933 - -[nameConstraints_dirname_p935] -commonName = "t934 - -[nameConstraints_dirname_p936] -commonName = "t935 - -[nameConstraints_dirname_p937] -commonName = "t936 - -[nameConstraints_dirname_p938] -commonName = "t937 - -[nameConstraints_dirname_p939] -commonName = "t938 - -[nameConstraints_dirname_p940] -commonName = "t939 - -[nameConstraints_dirname_p941] -commonName = "t940 - -[nameConstraints_dirname_p942] -commonName = "t941 - -[nameConstraints_dirname_p943] -commonName = "t942 - -[nameConstraints_dirname_p944] -commonName = "t943 - -[nameConstraints_dirname_p945] -commonName = "t944 - -[nameConstraints_dirname_p946] -commonName = "t945 - -[nameConstraints_dirname_p947] -commonName = "t946 - -[nameConstraints_dirname_p948] -commonName = "t947 - -[nameConstraints_dirname_p949] -commonName = "t948 - -[nameConstraints_dirname_p950] -commonName = "t949 - -[nameConstraints_dirname_p951] -commonName = "t950 - -[nameConstraints_dirname_p952] -commonName = "t951 - -[nameConstraints_dirname_p953] -commonName = "t952 - -[nameConstraints_dirname_p954] -commonName = "t953 - -[nameConstraints_dirname_p955] -commonName = "t954 - -[nameConstraints_dirname_p956] -commonName = "t955 - -[nameConstraints_dirname_p957] -commonName = "t956 - -[nameConstraints_dirname_p958] -commonName = "t957 - -[nameConstraints_dirname_p959] -commonName = "t958 - -[nameConstraints_dirname_p960] -commonName = "t959 - -[nameConstraints_dirname_p961] -commonName = "t960 - -[nameConstraints_dirname_p962] -commonName = "t961 - -[nameConstraints_dirname_p963] -commonName = "t962 - -[nameConstraints_dirname_p964] -commonName = "t963 - -[nameConstraints_dirname_p965] -commonName = "t964 - -[nameConstraints_dirname_p966] -commonName = "t965 - -[nameConstraints_dirname_p967] -commonName = "t966 - -[nameConstraints_dirname_p968] -commonName = "t967 - -[nameConstraints_dirname_p969] -commonName = "t968 - -[nameConstraints_dirname_p970] -commonName = "t969 - -[nameConstraints_dirname_p971] -commonName = "t970 - -[nameConstraints_dirname_p972] -commonName = "t971 - -[nameConstraints_dirname_p973] -commonName = "t972 - -[nameConstraints_dirname_p974] -commonName = "t973 - -[nameConstraints_dirname_p975] -commonName = "t974 - -[nameConstraints_dirname_p976] -commonName = "t975 - -[nameConstraints_dirname_p977] -commonName = "t976 - -[nameConstraints_dirname_p978] -commonName = "t977 - -[nameConstraints_dirname_p979] -commonName = "t978 - -[nameConstraints_dirname_p980] -commonName = "t979 - -[nameConstraints_dirname_p981] -commonName = "t980 - -[nameConstraints_dirname_p982] -commonName = "t981 - -[nameConstraints_dirname_p983] -commonName = "t982 - -[nameConstraints_dirname_p984] -commonName = "t983 - -[nameConstraints_dirname_p985] -commonName = "t984 - -[nameConstraints_dirname_p986] -commonName = "t985 - -[nameConstraints_dirname_p987] -commonName = "t986 - -[nameConstraints_dirname_p988] -commonName = "t987 - -[nameConstraints_dirname_p989] -commonName = "t988 - -[nameConstraints_dirname_p990] -commonName = "t989 - -[nameConstraints_dirname_p991] -commonName = "t990 - -[nameConstraints_dirname_p992] -commonName = "t991 - -[nameConstraints_dirname_p993] -commonName = "t992 - -[nameConstraints_dirname_p994] -commonName = "t993 - -[nameConstraints_dirname_p995] -commonName = "t994 - -[nameConstraints_dirname_p996] -commonName = "t995 - -[nameConstraints_dirname_p997] -commonName = "t996 - -[nameConstraints_dirname_p998] -commonName = "t997 - -[nameConstraints_dirname_p999] -commonName = "t998 - -[nameConstraints_dirname_p1000] -commonName = "t999 - -[nameConstraints_dirname_p1001] -commonName = "t1000 - -[nameConstraints_dirname_p1002] -commonName = "t1001 - -[nameConstraints_dirname_p1003] -commonName = "t1002 - -[nameConstraints_dirname_p1004] -commonName = "t1003 - -[nameConstraints_dirname_p1005] -commonName = "t1004 - -[nameConstraints_dirname_p1006] -commonName = "t1005 - -[nameConstraints_dirname_p1007] -commonName = "t1006 - -[nameConstraints_dirname_p1008] -commonName = "t1007 - -[nameConstraints_dirname_p1009] -commonName = "t1008 - -[nameConstraints_dirname_p1010] -commonName = "t1009 - -[nameConstraints_dirname_p1011] -commonName = "t1010 - -[nameConstraints_dirname_p1012] -commonName = "t1011 - -[nameConstraints_dirname_p1013] -commonName = "t1012 - -[nameConstraints_dirname_p1014] -commonName = "t1013 - -[nameConstraints_dirname_p1015] -commonName = "t1014 - -[nameConstraints_dirname_p1016] -commonName = "t1015 - -[nameConstraints_dirname_p1017] -commonName = "t1016 - -[nameConstraints_dirname_p1018] -commonName = "t1017 - -[nameConstraints_dirname_p1019] -commonName = "t1018 - -[nameConstraints_dirname_p1020] -commonName = "t1019 - -[nameConstraints_dirname_p1021] -commonName = "t1020 - -[nameConstraints_dirname_p1022] -commonName = "t1021 - -[nameConstraints_dirname_p1023] -commonName = "t1022 - -[nameConstraints_dirname_p1024] -commonName = "t1023 - -[nameConstraints_dirname_p1025] -commonName = "t1024 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.csr deleted file mode 100644 index 0e6c732c53..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.csr +++ /dev/null @@ -1,464 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIJWijCCVXICAQAwFzEVMBMGA1UEAwwMSW50ZXJtZWRpYXRlMIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzvbBG4X4FRSuiN3JLw043DZmZ5TXTMLqcxL -Ha4GJxiOVbqtEscdMlltwxYg22Kmd4AS4IdYUVXjZn/R4DoiZeVwJqIEBPBd+V9W -yNroD1cod26aoEpTNBpjN6JDqw5KzQcj3VWDRAAMcEHfNWTQxQ5qh9vK/DXV4luv -C6DmdaXS4XJOImMBQXO4lVAs/e3DYbY21IOVYcPgYf/0noroutzR9ontnTBElSf0 -0YvmLxRmVvHa8cwEG3eSpZ9YQAyfDDLWBcJMwMWf5aQwPUzpnQNsTAa25ZW9Ibjm -K6igvwa7QzMZPXsXWfFkTSRnsVEPNa7wcXV5rlsCNAQx42aGZQIDAQABoIJULDCC -VCgGCSqGSIb3DQEJDjGCVBkwglQVMB0GA1UdDgQWBBSSET+sEZbHZjfPg1ok8Dp3 -rzONfzAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zCCU9EGA1UdHgSC -U8gwglPEoIJTwDARpA8wDTELMAkGA1UEAwwCdDAwEaQPMA0xCzAJBgNVBAMMAnQx -MBGkDzANMQswCQYDVQQDDAJ0MjARpA8wDTELMAkGA1UEAwwCdDMwEaQPMA0xCzAJ -BgNVBAMMAnQ0MBGkDzANMQswCQYDVQQDDAJ0NTARpA8wDTELMAkGA1UEAwwCdDYw -EaQPMA0xCzAJBgNVBAMMAnQ3MBGkDzANMQswCQYDVQQDDAJ0ODARpA8wDTELMAkG -A1UEAwwCdDkwEqQQMA4xDDAKBgNVBAMMA3QxMDASpBAwDjEMMAoGA1UEAwwDdDEx -MBKkEDAOMQwwCgYDVQQDDAN0MTIwEqQQMA4xDDAKBgNVBAMMA3QxMzASpBAwDjEM -MAoGA1UEAwwDdDE0MBKkEDAOMQwwCgYDVQQDDAN0MTUwEqQQMA4xDDAKBgNVBAMM -A3QxNjASpBAwDjEMMAoGA1UEAwwDdDE3MBKkEDAOMQwwCgYDVQQDDAN0MTgwEqQQ -MA4xDDAKBgNVBAMMA3QxOTASpBAwDjEMMAoGA1UEAwwDdDIwMBKkEDAOMQwwCgYD -VQQDDAN0MjEwEqQQMA4xDDAKBgNVBAMMA3QyMjASpBAwDjEMMAoGA1UEAwwDdDIz -MBKkEDAOMQwwCgYDVQQDDAN0MjQwEqQQMA4xDDAKBgNVBAMMA3QyNTASpBAwDjEM -MAoGA1UEAwwDdDI2MBKkEDAOMQwwCgYDVQQDDAN0MjcwEqQQMA4xDDAKBgNVBAMM -A3QyODASpBAwDjEMMAoGA1UEAwwDdDI5MBKkEDAOMQwwCgYDVQQDDAN0MzAwEqQQ -MA4xDDAKBgNVBAMMA3QzMTASpBAwDjEMMAoGA1UEAwwDdDMyMBKkEDAOMQwwCgYD -VQQDDAN0MzMwEqQQMA4xDDAKBgNVBAMMA3QzNDASpBAwDjEMMAoGA1UEAwwDdDM1 -MBKkEDAOMQwwCgYDVQQDDAN0MzYwEqQQMA4xDDAKBgNVBAMMA3QzNzASpBAwDjEM -MAoGA1UEAwwDdDM4MBKkEDAOMQwwCgYDVQQDDAN0MzkwEqQQMA4xDDAKBgNVBAMM -A3Q0MDASpBAwDjEMMAoGA1UEAwwDdDQxMBKkEDAOMQwwCgYDVQQDDAN0NDIwEqQQ -MA4xDDAKBgNVBAMMA3Q0MzASpBAwDjEMMAoGA1UEAwwDdDQ0MBKkEDAOMQwwCgYD -VQQDDAN0NDUwEqQQMA4xDDAKBgNVBAMMA3Q0NjASpBAwDjEMMAoGA1UEAwwDdDQ3 -MBKkEDAOMQwwCgYDVQQDDAN0NDgwEqQQMA4xDDAKBgNVBAMMA3Q0OTASpBAwDjEM -MAoGA1UEAwwDdDUwMBKkEDAOMQwwCgYDVQQDDAN0NTEwEqQQMA4xDDAKBgNVBAMM -A3Q1MjASpBAwDjEMMAoGA1UEAwwDdDUzMBKkEDAOMQwwCgYDVQQDDAN0NTQwEqQQ -MA4xDDAKBgNVBAMMA3Q1NTASpBAwDjEMMAoGA1UEAwwDdDU2MBKkEDAOMQwwCgYD -VQQDDAN0NTcwEqQQMA4xDDAKBgNVBAMMA3Q1ODASpBAwDjEMMAoGA1UEAwwDdDU5 -MBKkEDAOMQwwCgYDVQQDDAN0NjAwEqQQMA4xDDAKBgNVBAMMA3Q2MTASpBAwDjEM -MAoGA1UEAwwDdDYyMBKkEDAOMQwwCgYDVQQDDAN0NjMwEqQQMA4xDDAKBgNVBAMM -A3Q2NDASpBAwDjEMMAoGA1UEAwwDdDY1MBKkEDAOMQwwCgYDVQQDDAN0NjYwEqQQ -MA4xDDAKBgNVBAMMA3Q2NzASpBAwDjEMMAoGA1UEAwwDdDY4MBKkEDAOMQwwCgYD -VQQDDAN0NjkwEqQQMA4xDDAKBgNVBAMMA3Q3MDASpBAwDjEMMAoGA1UEAwwDdDcx -MBKkEDAOMQwwCgYDVQQDDAN0NzIwEqQQMA4xDDAKBgNVBAMMA3Q3MzASpBAwDjEM -MAoGA1UEAwwDdDc0MBKkEDAOMQwwCgYDVQQDDAN0NzUwEqQQMA4xDDAKBgNVBAMM -A3Q3NjASpBAwDjEMMAoGA1UEAwwDdDc3MBKkEDAOMQwwCgYDVQQDDAN0NzgwEqQQ -MA4xDDAKBgNVBAMMA3Q3OTASpBAwDjEMMAoGA1UEAwwDdDgwMBKkEDAOMQwwCgYD -VQQDDAN0ODEwEqQQMA4xDDAKBgNVBAMMA3Q4MjASpBAwDjEMMAoGA1UEAwwDdDgz -MBKkEDAOMQwwCgYDVQQDDAN0ODQwEqQQMA4xDDAKBgNVBAMMA3Q4NTASpBAwDjEM -MAoGA1UEAwwDdDg2MBKkEDAOMQwwCgYDVQQDDAN0ODcwEqQQMA4xDDAKBgNVBAMM -A3Q4ODASpBAwDjEMMAoGA1UEAwwDdDg5MBKkEDAOMQwwCgYDVQQDDAN0OTAwEqQQ -MA4xDDAKBgNVBAMMA3Q5MTASpBAwDjEMMAoGA1UEAwwDdDkyMBKkEDAOMQwwCgYD -VQQDDAN0OTMwEqQQMA4xDDAKBgNVBAMMA3Q5NDASpBAwDjEMMAoGA1UEAwwDdDk1 -MBKkEDAOMQwwCgYDVQQDDAN0OTYwEqQQMA4xDDAKBgNVBAMMA3Q5NzASpBAwDjEM -MAoGA1UEAwwDdDk4MBKkEDAOMQwwCgYDVQQDDAN0OTkwE6QRMA8xDTALBgNVBAMM -BHQxMDAwE6QRMA8xDTALBgNVBAMMBHQxMDEwE6QRMA8xDTALBgNVBAMMBHQxMDIw -E6QRMA8xDTALBgNVBAMMBHQxMDMwE6QRMA8xDTALBgNVBAMMBHQxMDQwE6QRMA8x -DTALBgNVBAMMBHQxMDUwE6QRMA8xDTALBgNVBAMMBHQxMDYwE6QRMA8xDTALBgNV -BAMMBHQxMDcwE6QRMA8xDTALBgNVBAMMBHQxMDgwE6QRMA8xDTALBgNVBAMMBHQx -MDkwE6QRMA8xDTALBgNVBAMMBHQxMTAwE6QRMA8xDTALBgNVBAMMBHQxMTEwE6QR -MA8xDTALBgNVBAMMBHQxMTIwE6QRMA8xDTALBgNVBAMMBHQxMTMwE6QRMA8xDTAL -BgNVBAMMBHQxMTQwE6QRMA8xDTALBgNVBAMMBHQxMTUwE6QRMA8xDTALBgNVBAMM -BHQxMTYwE6QRMA8xDTALBgNVBAMMBHQxMTcwE6QRMA8xDTALBgNVBAMMBHQxMTgw -E6QRMA8xDTALBgNVBAMMBHQxMTkwE6QRMA8xDTALBgNVBAMMBHQxMjAwE6QRMA8x -DTALBgNVBAMMBHQxMjEwE6QRMA8xDTALBgNVBAMMBHQxMjIwE6QRMA8xDTALBgNV -BAMMBHQxMjMwE6QRMA8xDTALBgNVBAMMBHQxMjQwE6QRMA8xDTALBgNVBAMMBHQx -MjUwE6QRMA8xDTALBgNVBAMMBHQxMjYwE6QRMA8xDTALBgNVBAMMBHQxMjcwE6QR -MA8xDTALBgNVBAMMBHQxMjgwE6QRMA8xDTALBgNVBAMMBHQxMjkwE6QRMA8xDTAL -BgNVBAMMBHQxMzAwE6QRMA8xDTALBgNVBAMMBHQxMzEwE6QRMA8xDTALBgNVBAMM -BHQxMzIwE6QRMA8xDTALBgNVBAMMBHQxMzMwE6QRMA8xDTALBgNVBAMMBHQxMzQw -E6QRMA8xDTALBgNVBAMMBHQxMzUwE6QRMA8xDTALBgNVBAMMBHQxMzYwE6QRMA8x -DTALBgNVBAMMBHQxMzcwE6QRMA8xDTALBgNVBAMMBHQxMzgwE6QRMA8xDTALBgNV -BAMMBHQxMzkwE6QRMA8xDTALBgNVBAMMBHQxNDAwE6QRMA8xDTALBgNVBAMMBHQx -NDEwE6QRMA8xDTALBgNVBAMMBHQxNDIwE6QRMA8xDTALBgNVBAMMBHQxNDMwE6QR -MA8xDTALBgNVBAMMBHQxNDQwE6QRMA8xDTALBgNVBAMMBHQxNDUwE6QRMA8xDTAL -BgNVBAMMBHQxNDYwE6QRMA8xDTALBgNVBAMMBHQxNDcwE6QRMA8xDTALBgNVBAMM -BHQxNDgwE6QRMA8xDTALBgNVBAMMBHQxNDkwE6QRMA8xDTALBgNVBAMMBHQxNTAw -E6QRMA8xDTALBgNVBAMMBHQxNTEwE6QRMA8xDTALBgNVBAMMBHQxNTIwE6QRMA8x -DTALBgNVBAMMBHQxNTMwE6QRMA8xDTALBgNVBAMMBHQxNTQwE6QRMA8xDTALBgNV -BAMMBHQxNTUwE6QRMA8xDTALBgNVBAMMBHQxNTYwE6QRMA8xDTALBgNVBAMMBHQx -NTcwE6QRMA8xDTALBgNVBAMMBHQxNTgwE6QRMA8xDTALBgNVBAMMBHQxNTkwE6QR -MA8xDTALBgNVBAMMBHQxNjAwE6QRMA8xDTALBgNVBAMMBHQxNjEwE6QRMA8xDTAL -BgNVBAMMBHQxNjIwE6QRMA8xDTALBgNVBAMMBHQxNjMwE6QRMA8xDTALBgNVBAMM -BHQxNjQwE6QRMA8xDTALBgNVBAMMBHQxNjUwE6QRMA8xDTALBgNVBAMMBHQxNjYw -E6QRMA8xDTALBgNVBAMMBHQxNjcwE6QRMA8xDTALBgNVBAMMBHQxNjgwE6QRMA8x -DTALBgNVBAMMBHQxNjkwE6QRMA8xDTALBgNVBAMMBHQxNzAwE6QRMA8xDTALBgNV -BAMMBHQxNzEwE6QRMA8xDTALBgNVBAMMBHQxNzIwE6QRMA8xDTALBgNVBAMMBHQx -NzMwE6QRMA8xDTALBgNVBAMMBHQxNzQwE6QRMA8xDTALBgNVBAMMBHQxNzUwE6QR -MA8xDTALBgNVBAMMBHQxNzYwE6QRMA8xDTALBgNVBAMMBHQxNzcwE6QRMA8xDTAL -BgNVBAMMBHQxNzgwE6QRMA8xDTALBgNVBAMMBHQxNzkwE6QRMA8xDTALBgNVBAMM -BHQxODAwE6QRMA8xDTALBgNVBAMMBHQxODEwE6QRMA8xDTALBgNVBAMMBHQxODIw -E6QRMA8xDTALBgNVBAMMBHQxODMwE6QRMA8xDTALBgNVBAMMBHQxODQwE6QRMA8x -DTALBgNVBAMMBHQxODUwE6QRMA8xDTALBgNVBAMMBHQxODYwE6QRMA8xDTALBgNV -BAMMBHQxODcwE6QRMA8xDTALBgNVBAMMBHQxODgwE6QRMA8xDTALBgNVBAMMBHQx -ODkwE6QRMA8xDTALBgNVBAMMBHQxOTAwE6QRMA8xDTALBgNVBAMMBHQxOTEwE6QR -MA8xDTALBgNVBAMMBHQxOTIwE6QRMA8xDTALBgNVBAMMBHQxOTMwE6QRMA8xDTAL -BgNVBAMMBHQxOTQwE6QRMA8xDTALBgNVBAMMBHQxOTUwE6QRMA8xDTALBgNVBAMM -BHQxOTYwE6QRMA8xDTALBgNVBAMMBHQxOTcwE6QRMA8xDTALBgNVBAMMBHQxOTgw -E6QRMA8xDTALBgNVBAMMBHQxOTkwE6QRMA8xDTALBgNVBAMMBHQyMDAwE6QRMA8x -DTALBgNVBAMMBHQyMDEwE6QRMA8xDTALBgNVBAMMBHQyMDIwE6QRMA8xDTALBgNV -BAMMBHQyMDMwE6QRMA8xDTALBgNVBAMMBHQyMDQwE6QRMA8xDTALBgNVBAMMBHQy -MDUwE6QRMA8xDTALBgNVBAMMBHQyMDYwE6QRMA8xDTALBgNVBAMMBHQyMDcwE6QR -MA8xDTALBgNVBAMMBHQyMDgwE6QRMA8xDTALBgNVBAMMBHQyMDkwE6QRMA8xDTAL -BgNVBAMMBHQyMTAwE6QRMA8xDTALBgNVBAMMBHQyMTEwE6QRMA8xDTALBgNVBAMM -BHQyMTIwE6QRMA8xDTALBgNVBAMMBHQyMTMwE6QRMA8xDTALBgNVBAMMBHQyMTQw -E6QRMA8xDTALBgNVBAMMBHQyMTUwE6QRMA8xDTALBgNVBAMMBHQyMTYwE6QRMA8x -DTALBgNVBAMMBHQyMTcwE6QRMA8xDTALBgNVBAMMBHQyMTgwE6QRMA8xDTALBgNV -BAMMBHQyMTkwE6QRMA8xDTALBgNVBAMMBHQyMjAwE6QRMA8xDTALBgNVBAMMBHQy -MjEwE6QRMA8xDTALBgNVBAMMBHQyMjIwE6QRMA8xDTALBgNVBAMMBHQyMjMwE6QR -MA8xDTALBgNVBAMMBHQyMjQwE6QRMA8xDTALBgNVBAMMBHQyMjUwE6QRMA8xDTAL -BgNVBAMMBHQyMjYwE6QRMA8xDTALBgNVBAMMBHQyMjcwE6QRMA8xDTALBgNVBAMM -BHQyMjgwE6QRMA8xDTALBgNVBAMMBHQyMjkwE6QRMA8xDTALBgNVBAMMBHQyMzAw -E6QRMA8xDTALBgNVBAMMBHQyMzEwE6QRMA8xDTALBgNVBAMMBHQyMzIwE6QRMA8x -DTALBgNVBAMMBHQyMzMwE6QRMA8xDTALBgNVBAMMBHQyMzQwE6QRMA8xDTALBgNV -BAMMBHQyMzUwE6QRMA8xDTALBgNVBAMMBHQyMzYwE6QRMA8xDTALBgNVBAMMBHQy -MzcwE6QRMA8xDTALBgNVBAMMBHQyMzgwE6QRMA8xDTALBgNVBAMMBHQyMzkwE6QR -MA8xDTALBgNVBAMMBHQyNDAwE6QRMA8xDTALBgNVBAMMBHQyNDEwE6QRMA8xDTAL -BgNVBAMMBHQyNDIwE6QRMA8xDTALBgNVBAMMBHQyNDMwE6QRMA8xDTALBgNVBAMM -BHQyNDQwE6QRMA8xDTALBgNVBAMMBHQyNDUwE6QRMA8xDTALBgNVBAMMBHQyNDYw -E6QRMA8xDTALBgNVBAMMBHQyNDcwE6QRMA8xDTALBgNVBAMMBHQyNDgwE6QRMA8x -DTALBgNVBAMMBHQyNDkwE6QRMA8xDTALBgNVBAMMBHQyNTAwE6QRMA8xDTALBgNV -BAMMBHQyNTEwE6QRMA8xDTALBgNVBAMMBHQyNTIwE6QRMA8xDTALBgNVBAMMBHQy -NTMwE6QRMA8xDTALBgNVBAMMBHQyNTQwE6QRMA8xDTALBgNVBAMMBHQyNTUwE6QR -MA8xDTALBgNVBAMMBHQyNTYwE6QRMA8xDTALBgNVBAMMBHQyNTcwE6QRMA8xDTAL -BgNVBAMMBHQyNTgwE6QRMA8xDTALBgNVBAMMBHQyNTkwE6QRMA8xDTALBgNVBAMM -BHQyNjAwE6QRMA8xDTALBgNVBAMMBHQyNjEwE6QRMA8xDTALBgNVBAMMBHQyNjIw -E6QRMA8xDTALBgNVBAMMBHQyNjMwE6QRMA8xDTALBgNVBAMMBHQyNjQwE6QRMA8x -DTALBgNVBAMMBHQyNjUwE6QRMA8xDTALBgNVBAMMBHQyNjYwE6QRMA8xDTALBgNV -BAMMBHQyNjcwE6QRMA8xDTALBgNVBAMMBHQyNjgwE6QRMA8xDTALBgNVBAMMBHQy -NjkwE6QRMA8xDTALBgNVBAMMBHQyNzAwE6QRMA8xDTALBgNVBAMMBHQyNzEwE6QR -MA8xDTALBgNVBAMMBHQyNzIwE6QRMA8xDTALBgNVBAMMBHQyNzMwE6QRMA8xDTAL -BgNVBAMMBHQyNzQwE6QRMA8xDTALBgNVBAMMBHQyNzUwE6QRMA8xDTALBgNVBAMM -BHQyNzYwE6QRMA8xDTALBgNVBAMMBHQyNzcwE6QRMA8xDTALBgNVBAMMBHQyNzgw -E6QRMA8xDTALBgNVBAMMBHQyNzkwE6QRMA8xDTALBgNVBAMMBHQyODAwE6QRMA8x -DTALBgNVBAMMBHQyODEwE6QRMA8xDTALBgNVBAMMBHQyODIwE6QRMA8xDTALBgNV -BAMMBHQyODMwE6QRMA8xDTALBgNVBAMMBHQyODQwE6QRMA8xDTALBgNVBAMMBHQy -ODUwE6QRMA8xDTALBgNVBAMMBHQyODYwE6QRMA8xDTALBgNVBAMMBHQyODcwE6QR -MA8xDTALBgNVBAMMBHQyODgwE6QRMA8xDTALBgNVBAMMBHQyODkwE6QRMA8xDTAL -BgNVBAMMBHQyOTAwE6QRMA8xDTALBgNVBAMMBHQyOTEwE6QRMA8xDTALBgNVBAMM -BHQyOTIwE6QRMA8xDTALBgNVBAMMBHQyOTMwE6QRMA8xDTALBgNVBAMMBHQyOTQw -E6QRMA8xDTALBgNVBAMMBHQyOTUwE6QRMA8xDTALBgNVBAMMBHQyOTYwE6QRMA8x -DTALBgNVBAMMBHQyOTcwE6QRMA8xDTALBgNVBAMMBHQyOTgwE6QRMA8xDTALBgNV -BAMMBHQyOTkwE6QRMA8xDTALBgNVBAMMBHQzMDAwE6QRMA8xDTALBgNVBAMMBHQz -MDEwE6QRMA8xDTALBgNVBAMMBHQzMDIwE6QRMA8xDTALBgNVBAMMBHQzMDMwE6QR -MA8xDTALBgNVBAMMBHQzMDQwE6QRMA8xDTALBgNVBAMMBHQzMDUwE6QRMA8xDTAL -BgNVBAMMBHQzMDYwE6QRMA8xDTALBgNVBAMMBHQzMDcwE6QRMA8xDTALBgNVBAMM -BHQzMDgwE6QRMA8xDTALBgNVBAMMBHQzMDkwE6QRMA8xDTALBgNVBAMMBHQzMTAw -E6QRMA8xDTALBgNVBAMMBHQzMTEwE6QRMA8xDTALBgNVBAMMBHQzMTIwE6QRMA8x -DTALBgNVBAMMBHQzMTMwE6QRMA8xDTALBgNVBAMMBHQzMTQwE6QRMA8xDTALBgNV -BAMMBHQzMTUwE6QRMA8xDTALBgNVBAMMBHQzMTYwE6QRMA8xDTALBgNVBAMMBHQz -MTcwE6QRMA8xDTALBgNVBAMMBHQzMTgwE6QRMA8xDTALBgNVBAMMBHQzMTkwE6QR -MA8xDTALBgNVBAMMBHQzMjAwE6QRMA8xDTALBgNVBAMMBHQzMjEwE6QRMA8xDTAL -BgNVBAMMBHQzMjIwE6QRMA8xDTALBgNVBAMMBHQzMjMwE6QRMA8xDTALBgNVBAMM -BHQzMjQwE6QRMA8xDTALBgNVBAMMBHQzMjUwE6QRMA8xDTALBgNVBAMMBHQzMjYw -E6QRMA8xDTALBgNVBAMMBHQzMjcwE6QRMA8xDTALBgNVBAMMBHQzMjgwE6QRMA8x -DTALBgNVBAMMBHQzMjkwE6QRMA8xDTALBgNVBAMMBHQzMzAwE6QRMA8xDTALBgNV -BAMMBHQzMzEwE6QRMA8xDTALBgNVBAMMBHQzMzIwE6QRMA8xDTALBgNVBAMMBHQz -MzMwE6QRMA8xDTALBgNVBAMMBHQzMzQwE6QRMA8xDTALBgNVBAMMBHQzMzUwE6QR -MA8xDTALBgNVBAMMBHQzMzYwE6QRMA8xDTALBgNVBAMMBHQzMzcwE6QRMA8xDTAL -BgNVBAMMBHQzMzgwE6QRMA8xDTALBgNVBAMMBHQzMzkwE6QRMA8xDTALBgNVBAMM -BHQzNDAwE6QRMA8xDTALBgNVBAMMBHQzNDEwE6QRMA8xDTALBgNVBAMMBHQzNDIw -E6QRMA8xDTALBgNVBAMMBHQzNDMwE6QRMA8xDTALBgNVBAMMBHQzNDQwE6QRMA8x -DTALBgNVBAMMBHQzNDUwE6QRMA8xDTALBgNVBAMMBHQzNDYwE6QRMA8xDTALBgNV -BAMMBHQzNDcwE6QRMA8xDTALBgNVBAMMBHQzNDgwE6QRMA8xDTALBgNVBAMMBHQz -NDkwE6QRMA8xDTALBgNVBAMMBHQzNTAwE6QRMA8xDTALBgNVBAMMBHQzNTEwE6QR -MA8xDTALBgNVBAMMBHQzNTIwE6QRMA8xDTALBgNVBAMMBHQzNTMwE6QRMA8xDTAL -BgNVBAMMBHQzNTQwE6QRMA8xDTALBgNVBAMMBHQzNTUwE6QRMA8xDTALBgNVBAMM -BHQzNTYwE6QRMA8xDTALBgNVBAMMBHQzNTcwE6QRMA8xDTALBgNVBAMMBHQzNTgw -E6QRMA8xDTALBgNVBAMMBHQzNTkwE6QRMA8xDTALBgNVBAMMBHQzNjAwE6QRMA8x -DTALBgNVBAMMBHQzNjEwE6QRMA8xDTALBgNVBAMMBHQzNjIwE6QRMA8xDTALBgNV -BAMMBHQzNjMwE6QRMA8xDTALBgNVBAMMBHQzNjQwE6QRMA8xDTALBgNVBAMMBHQz -NjUwE6QRMA8xDTALBgNVBAMMBHQzNjYwE6QRMA8xDTALBgNVBAMMBHQzNjcwE6QR -MA8xDTALBgNVBAMMBHQzNjgwE6QRMA8xDTALBgNVBAMMBHQzNjkwE6QRMA8xDTAL -BgNVBAMMBHQzNzAwE6QRMA8xDTALBgNVBAMMBHQzNzEwE6QRMA8xDTALBgNVBAMM -BHQzNzIwE6QRMA8xDTALBgNVBAMMBHQzNzMwE6QRMA8xDTALBgNVBAMMBHQzNzQw -E6QRMA8xDTALBgNVBAMMBHQzNzUwE6QRMA8xDTALBgNVBAMMBHQzNzYwE6QRMA8x -DTALBgNVBAMMBHQzNzcwE6QRMA8xDTALBgNVBAMMBHQzNzgwE6QRMA8xDTALBgNV -BAMMBHQzNzkwE6QRMA8xDTALBgNVBAMMBHQzODAwE6QRMA8xDTALBgNVBAMMBHQz -ODEwE6QRMA8xDTALBgNVBAMMBHQzODIwE6QRMA8xDTALBgNVBAMMBHQzODMwE6QR -MA8xDTALBgNVBAMMBHQzODQwE6QRMA8xDTALBgNVBAMMBHQzODUwE6QRMA8xDTAL -BgNVBAMMBHQzODYwE6QRMA8xDTALBgNVBAMMBHQzODcwE6QRMA8xDTALBgNVBAMM -BHQzODgwE6QRMA8xDTALBgNVBAMMBHQzODkwE6QRMA8xDTALBgNVBAMMBHQzOTAw -E6QRMA8xDTALBgNVBAMMBHQzOTEwE6QRMA8xDTALBgNVBAMMBHQzOTIwE6QRMA8x -DTALBgNVBAMMBHQzOTMwE6QRMA8xDTALBgNVBAMMBHQzOTQwE6QRMA8xDTALBgNV -BAMMBHQzOTUwE6QRMA8xDTALBgNVBAMMBHQzOTYwE6QRMA8xDTALBgNVBAMMBHQz -OTcwE6QRMA8xDTALBgNVBAMMBHQzOTgwE6QRMA8xDTALBgNVBAMMBHQzOTkwE6QR -MA8xDTALBgNVBAMMBHQ0MDAwE6QRMA8xDTALBgNVBAMMBHQ0MDEwE6QRMA8xDTAL -BgNVBAMMBHQ0MDIwE6QRMA8xDTALBgNVBAMMBHQ0MDMwE6QRMA8xDTALBgNVBAMM -BHQ0MDQwE6QRMA8xDTALBgNVBAMMBHQ0MDUwE6QRMA8xDTALBgNVBAMMBHQ0MDYw -E6QRMA8xDTALBgNVBAMMBHQ0MDcwE6QRMA8xDTALBgNVBAMMBHQ0MDgwE6QRMA8x -DTALBgNVBAMMBHQ0MDkwE6QRMA8xDTALBgNVBAMMBHQ0MTAwE6QRMA8xDTALBgNV -BAMMBHQ0MTEwE6QRMA8xDTALBgNVBAMMBHQ0MTIwE6QRMA8xDTALBgNVBAMMBHQ0 -MTMwE6QRMA8xDTALBgNVBAMMBHQ0MTQwE6QRMA8xDTALBgNVBAMMBHQ0MTUwE6QR -MA8xDTALBgNVBAMMBHQ0MTYwE6QRMA8xDTALBgNVBAMMBHQ0MTcwE6QRMA8xDTAL -BgNVBAMMBHQ0MTgwE6QRMA8xDTALBgNVBAMMBHQ0MTkwE6QRMA8xDTALBgNVBAMM -BHQ0MjAwE6QRMA8xDTALBgNVBAMMBHQ0MjEwE6QRMA8xDTALBgNVBAMMBHQ0MjIw -E6QRMA8xDTALBgNVBAMMBHQ0MjMwE6QRMA8xDTALBgNVBAMMBHQ0MjQwE6QRMA8x -DTALBgNVBAMMBHQ0MjUwE6QRMA8xDTALBgNVBAMMBHQ0MjYwE6QRMA8xDTALBgNV -BAMMBHQ0MjcwE6QRMA8xDTALBgNVBAMMBHQ0MjgwE6QRMA8xDTALBgNVBAMMBHQ0 -MjkwE6QRMA8xDTALBgNVBAMMBHQ0MzAwE6QRMA8xDTALBgNVBAMMBHQ0MzEwE6QR -MA8xDTALBgNVBAMMBHQ0MzIwE6QRMA8xDTALBgNVBAMMBHQ0MzMwE6QRMA8xDTAL -BgNVBAMMBHQ0MzQwE6QRMA8xDTALBgNVBAMMBHQ0MzUwE6QRMA8xDTALBgNVBAMM -BHQ0MzYwE6QRMA8xDTALBgNVBAMMBHQ0MzcwE6QRMA8xDTALBgNVBAMMBHQ0Mzgw -E6QRMA8xDTALBgNVBAMMBHQ0MzkwE6QRMA8xDTALBgNVBAMMBHQ0NDAwE6QRMA8x -DTALBgNVBAMMBHQ0NDEwE6QRMA8xDTALBgNVBAMMBHQ0NDIwE6QRMA8xDTALBgNV -BAMMBHQ0NDMwE6QRMA8xDTALBgNVBAMMBHQ0NDQwE6QRMA8xDTALBgNVBAMMBHQ0 -NDUwE6QRMA8xDTALBgNVBAMMBHQ0NDYwE6QRMA8xDTALBgNVBAMMBHQ0NDcwE6QR -MA8xDTALBgNVBAMMBHQ0NDgwE6QRMA8xDTALBgNVBAMMBHQ0NDkwE6QRMA8xDTAL -BgNVBAMMBHQ0NTAwE6QRMA8xDTALBgNVBAMMBHQ0NTEwE6QRMA8xDTALBgNVBAMM -BHQ0NTIwE6QRMA8xDTALBgNVBAMMBHQ0NTMwE6QRMA8xDTALBgNVBAMMBHQ0NTQw -E6QRMA8xDTALBgNVBAMMBHQ0NTUwE6QRMA8xDTALBgNVBAMMBHQ0NTYwE6QRMA8x -DTALBgNVBAMMBHQ0NTcwE6QRMA8xDTALBgNVBAMMBHQ0NTgwE6QRMA8xDTALBgNV -BAMMBHQ0NTkwE6QRMA8xDTALBgNVBAMMBHQ0NjAwE6QRMA8xDTALBgNVBAMMBHQ0 -NjEwE6QRMA8xDTALBgNVBAMMBHQ0NjIwE6QRMA8xDTALBgNVBAMMBHQ0NjMwE6QR -MA8xDTALBgNVBAMMBHQ0NjQwE6QRMA8xDTALBgNVBAMMBHQ0NjUwE6QRMA8xDTAL -BgNVBAMMBHQ0NjYwE6QRMA8xDTALBgNVBAMMBHQ0NjcwE6QRMA8xDTALBgNVBAMM -BHQ0NjgwE6QRMA8xDTALBgNVBAMMBHQ0NjkwE6QRMA8xDTALBgNVBAMMBHQ0NzAw -E6QRMA8xDTALBgNVBAMMBHQ0NzEwE6QRMA8xDTALBgNVBAMMBHQ0NzIwE6QRMA8x -DTALBgNVBAMMBHQ0NzMwE6QRMA8xDTALBgNVBAMMBHQ0NzQwE6QRMA8xDTALBgNV -BAMMBHQ0NzUwE6QRMA8xDTALBgNVBAMMBHQ0NzYwE6QRMA8xDTALBgNVBAMMBHQ0 -NzcwE6QRMA8xDTALBgNVBAMMBHQ0NzgwE6QRMA8xDTALBgNVBAMMBHQ0NzkwE6QR -MA8xDTALBgNVBAMMBHQ0ODAwE6QRMA8xDTALBgNVBAMMBHQ0ODEwE6QRMA8xDTAL -BgNVBAMMBHQ0ODIwE6QRMA8xDTALBgNVBAMMBHQ0ODMwE6QRMA8xDTALBgNVBAMM -BHQ0ODQwE6QRMA8xDTALBgNVBAMMBHQ0ODUwE6QRMA8xDTALBgNVBAMMBHQ0ODYw -E6QRMA8xDTALBgNVBAMMBHQ0ODcwE6QRMA8xDTALBgNVBAMMBHQ0ODgwE6QRMA8x -DTALBgNVBAMMBHQ0ODkwE6QRMA8xDTALBgNVBAMMBHQ0OTAwE6QRMA8xDTALBgNV -BAMMBHQ0OTEwE6QRMA8xDTALBgNVBAMMBHQ0OTIwE6QRMA8xDTALBgNVBAMMBHQ0 -OTMwE6QRMA8xDTALBgNVBAMMBHQ0OTQwE6QRMA8xDTALBgNVBAMMBHQ0OTUwE6QR -MA8xDTALBgNVBAMMBHQ0OTYwE6QRMA8xDTALBgNVBAMMBHQ0OTcwE6QRMA8xDTAL -BgNVBAMMBHQ0OTgwE6QRMA8xDTALBgNVBAMMBHQ0OTkwE6QRMA8xDTALBgNVBAMM -BHQ1MDAwE6QRMA8xDTALBgNVBAMMBHQ1MDEwE6QRMA8xDTALBgNVBAMMBHQ1MDIw -E6QRMA8xDTALBgNVBAMMBHQ1MDMwE6QRMA8xDTALBgNVBAMMBHQ1MDQwE6QRMA8x -DTALBgNVBAMMBHQ1MDUwE6QRMA8xDTALBgNVBAMMBHQ1MDYwE6QRMA8xDTALBgNV -BAMMBHQ1MDcwE6QRMA8xDTALBgNVBAMMBHQ1MDgwE6QRMA8xDTALBgNVBAMMBHQ1 -MDkwE6QRMA8xDTALBgNVBAMMBHQ1MTAwE6QRMA8xDTALBgNVBAMMBHQ1MTEwE6QR -MA8xDTALBgNVBAMMBHQ1MTIwE6QRMA8xDTALBgNVBAMMBHQ1MTMwE6QRMA8xDTAL -BgNVBAMMBHQ1MTQwE6QRMA8xDTALBgNVBAMMBHQ1MTUwE6QRMA8xDTALBgNVBAMM -BHQ1MTYwE6QRMA8xDTALBgNVBAMMBHQ1MTcwE6QRMA8xDTALBgNVBAMMBHQ1MTgw -E6QRMA8xDTALBgNVBAMMBHQ1MTkwE6QRMA8xDTALBgNVBAMMBHQ1MjAwE6QRMA8x -DTALBgNVBAMMBHQ1MjEwE6QRMA8xDTALBgNVBAMMBHQ1MjIwE6QRMA8xDTALBgNV -BAMMBHQ1MjMwE6QRMA8xDTALBgNVBAMMBHQ1MjQwE6QRMA8xDTALBgNVBAMMBHQ1 -MjUwE6QRMA8xDTALBgNVBAMMBHQ1MjYwE6QRMA8xDTALBgNVBAMMBHQ1MjcwE6QR -MA8xDTALBgNVBAMMBHQ1MjgwE6QRMA8xDTALBgNVBAMMBHQ1MjkwE6QRMA8xDTAL -BgNVBAMMBHQ1MzAwE6QRMA8xDTALBgNVBAMMBHQ1MzEwE6QRMA8xDTALBgNVBAMM -BHQ1MzIwE6QRMA8xDTALBgNVBAMMBHQ1MzMwE6QRMA8xDTALBgNVBAMMBHQ1MzQw -E6QRMA8xDTALBgNVBAMMBHQ1MzUwE6QRMA8xDTALBgNVBAMMBHQ1MzYwE6QRMA8x -DTALBgNVBAMMBHQ1MzcwE6QRMA8xDTALBgNVBAMMBHQ1MzgwE6QRMA8xDTALBgNV -BAMMBHQ1MzkwE6QRMA8xDTALBgNVBAMMBHQ1NDAwE6QRMA8xDTALBgNVBAMMBHQ1 -NDEwE6QRMA8xDTALBgNVBAMMBHQ1NDIwE6QRMA8xDTALBgNVBAMMBHQ1NDMwE6QR -MA8xDTALBgNVBAMMBHQ1NDQwE6QRMA8xDTALBgNVBAMMBHQ1NDUwE6QRMA8xDTAL -BgNVBAMMBHQ1NDYwE6QRMA8xDTALBgNVBAMMBHQ1NDcwE6QRMA8xDTALBgNVBAMM -BHQ1NDgwE6QRMA8xDTALBgNVBAMMBHQ1NDkwE6QRMA8xDTALBgNVBAMMBHQ1NTAw -E6QRMA8xDTALBgNVBAMMBHQ1NTEwE6QRMA8xDTALBgNVBAMMBHQ1NTIwE6QRMA8x -DTALBgNVBAMMBHQ1NTMwE6QRMA8xDTALBgNVBAMMBHQ1NTQwE6QRMA8xDTALBgNV -BAMMBHQ1NTUwE6QRMA8xDTALBgNVBAMMBHQ1NTYwE6QRMA8xDTALBgNVBAMMBHQ1 -NTcwE6QRMA8xDTALBgNVBAMMBHQ1NTgwE6QRMA8xDTALBgNVBAMMBHQ1NTkwE6QR -MA8xDTALBgNVBAMMBHQ1NjAwE6QRMA8xDTALBgNVBAMMBHQ1NjEwE6QRMA8xDTAL -BgNVBAMMBHQ1NjIwE6QRMA8xDTALBgNVBAMMBHQ1NjMwE6QRMA8xDTALBgNVBAMM -BHQ1NjQwE6QRMA8xDTALBgNVBAMMBHQ1NjUwE6QRMA8xDTALBgNVBAMMBHQ1NjYw -E6QRMA8xDTALBgNVBAMMBHQ1NjcwE6QRMA8xDTALBgNVBAMMBHQ1NjgwE6QRMA8x -DTALBgNVBAMMBHQ1NjkwE6QRMA8xDTALBgNVBAMMBHQ1NzAwE6QRMA8xDTALBgNV -BAMMBHQ1NzEwE6QRMA8xDTALBgNVBAMMBHQ1NzIwE6QRMA8xDTALBgNVBAMMBHQ1 -NzMwE6QRMA8xDTALBgNVBAMMBHQ1NzQwE6QRMA8xDTALBgNVBAMMBHQ1NzUwE6QR -MA8xDTALBgNVBAMMBHQ1NzYwE6QRMA8xDTALBgNVBAMMBHQ1NzcwE6QRMA8xDTAL -BgNVBAMMBHQ1NzgwE6QRMA8xDTALBgNVBAMMBHQ1NzkwE6QRMA8xDTALBgNVBAMM -BHQ1ODAwE6QRMA8xDTALBgNVBAMMBHQ1ODEwE6QRMA8xDTALBgNVBAMMBHQ1ODIw -E6QRMA8xDTALBgNVBAMMBHQ1ODMwE6QRMA8xDTALBgNVBAMMBHQ1ODQwE6QRMA8x -DTALBgNVBAMMBHQ1ODUwE6QRMA8xDTALBgNVBAMMBHQ1ODYwE6QRMA8xDTALBgNV -BAMMBHQ1ODcwE6QRMA8xDTALBgNVBAMMBHQ1ODgwE6QRMA8xDTALBgNVBAMMBHQ1 -ODkwE6QRMA8xDTALBgNVBAMMBHQ1OTAwE6QRMA8xDTALBgNVBAMMBHQ1OTEwE6QR -MA8xDTALBgNVBAMMBHQ1OTIwE6QRMA8xDTALBgNVBAMMBHQ1OTMwE6QRMA8xDTAL -BgNVBAMMBHQ1OTQwE6QRMA8xDTALBgNVBAMMBHQ1OTUwE6QRMA8xDTALBgNVBAMM -BHQ1OTYwE6QRMA8xDTALBgNVBAMMBHQ1OTcwE6QRMA8xDTALBgNVBAMMBHQ1OTgw -E6QRMA8xDTALBgNVBAMMBHQ1OTkwE6QRMA8xDTALBgNVBAMMBHQ2MDAwE6QRMA8x -DTALBgNVBAMMBHQ2MDEwE6QRMA8xDTALBgNVBAMMBHQ2MDIwE6QRMA8xDTALBgNV -BAMMBHQ2MDMwE6QRMA8xDTALBgNVBAMMBHQ2MDQwE6QRMA8xDTALBgNVBAMMBHQ2 -MDUwE6QRMA8xDTALBgNVBAMMBHQ2MDYwE6QRMA8xDTALBgNVBAMMBHQ2MDcwE6QR -MA8xDTALBgNVBAMMBHQ2MDgwE6QRMA8xDTALBgNVBAMMBHQ2MDkwE6QRMA8xDTAL -BgNVBAMMBHQ2MTAwE6QRMA8xDTALBgNVBAMMBHQ2MTEwE6QRMA8xDTALBgNVBAMM -BHQ2MTIwE6QRMA8xDTALBgNVBAMMBHQ2MTMwE6QRMA8xDTALBgNVBAMMBHQ2MTQw -E6QRMA8xDTALBgNVBAMMBHQ2MTUwE6QRMA8xDTALBgNVBAMMBHQ2MTYwE6QRMA8x -DTALBgNVBAMMBHQ2MTcwE6QRMA8xDTALBgNVBAMMBHQ2MTgwE6QRMA8xDTALBgNV -BAMMBHQ2MTkwE6QRMA8xDTALBgNVBAMMBHQ2MjAwE6QRMA8xDTALBgNVBAMMBHQ2 -MjEwE6QRMA8xDTALBgNVBAMMBHQ2MjIwE6QRMA8xDTALBgNVBAMMBHQ2MjMwE6QR -MA8xDTALBgNVBAMMBHQ2MjQwE6QRMA8xDTALBgNVBAMMBHQ2MjUwE6QRMA8xDTAL -BgNVBAMMBHQ2MjYwE6QRMA8xDTALBgNVBAMMBHQ2MjcwE6QRMA8xDTALBgNVBAMM -BHQ2MjgwE6QRMA8xDTALBgNVBAMMBHQ2MjkwE6QRMA8xDTALBgNVBAMMBHQ2MzAw -E6QRMA8xDTALBgNVBAMMBHQ2MzEwE6QRMA8xDTALBgNVBAMMBHQ2MzIwE6QRMA8x -DTALBgNVBAMMBHQ2MzMwE6QRMA8xDTALBgNVBAMMBHQ2MzQwE6QRMA8xDTALBgNV -BAMMBHQ2MzUwE6QRMA8xDTALBgNVBAMMBHQ2MzYwE6QRMA8xDTALBgNVBAMMBHQ2 -MzcwE6QRMA8xDTALBgNVBAMMBHQ2MzgwE6QRMA8xDTALBgNVBAMMBHQ2MzkwE6QR -MA8xDTALBgNVBAMMBHQ2NDAwE6QRMA8xDTALBgNVBAMMBHQ2NDEwE6QRMA8xDTAL -BgNVBAMMBHQ2NDIwE6QRMA8xDTALBgNVBAMMBHQ2NDMwE6QRMA8xDTALBgNVBAMM -BHQ2NDQwE6QRMA8xDTALBgNVBAMMBHQ2NDUwE6QRMA8xDTALBgNVBAMMBHQ2NDYw -E6QRMA8xDTALBgNVBAMMBHQ2NDcwE6QRMA8xDTALBgNVBAMMBHQ2NDgwE6QRMA8x -DTALBgNVBAMMBHQ2NDkwE6QRMA8xDTALBgNVBAMMBHQ2NTAwE6QRMA8xDTALBgNV -BAMMBHQ2NTEwE6QRMA8xDTALBgNVBAMMBHQ2NTIwE6QRMA8xDTALBgNVBAMMBHQ2 -NTMwE6QRMA8xDTALBgNVBAMMBHQ2NTQwE6QRMA8xDTALBgNVBAMMBHQ2NTUwE6QR -MA8xDTALBgNVBAMMBHQ2NTYwE6QRMA8xDTALBgNVBAMMBHQ2NTcwE6QRMA8xDTAL -BgNVBAMMBHQ2NTgwE6QRMA8xDTALBgNVBAMMBHQ2NTkwE6QRMA8xDTALBgNVBAMM -BHQ2NjAwE6QRMA8xDTALBgNVBAMMBHQ2NjEwE6QRMA8xDTALBgNVBAMMBHQ2NjIw -E6QRMA8xDTALBgNVBAMMBHQ2NjMwE6QRMA8xDTALBgNVBAMMBHQ2NjQwE6QRMA8x -DTALBgNVBAMMBHQ2NjUwE6QRMA8xDTALBgNVBAMMBHQ2NjYwE6QRMA8xDTALBgNV -BAMMBHQ2NjcwE6QRMA8xDTALBgNVBAMMBHQ2NjgwE6QRMA8xDTALBgNVBAMMBHQ2 -NjkwE6QRMA8xDTALBgNVBAMMBHQ2NzAwE6QRMA8xDTALBgNVBAMMBHQ2NzEwE6QR -MA8xDTALBgNVBAMMBHQ2NzIwE6QRMA8xDTALBgNVBAMMBHQ2NzMwE6QRMA8xDTAL -BgNVBAMMBHQ2NzQwE6QRMA8xDTALBgNVBAMMBHQ2NzUwE6QRMA8xDTALBgNVBAMM -BHQ2NzYwE6QRMA8xDTALBgNVBAMMBHQ2NzcwE6QRMA8xDTALBgNVBAMMBHQ2Nzgw -E6QRMA8xDTALBgNVBAMMBHQ2NzkwE6QRMA8xDTALBgNVBAMMBHQ2ODAwE6QRMA8x -DTALBgNVBAMMBHQ2ODEwE6QRMA8xDTALBgNVBAMMBHQ2ODIwE6QRMA8xDTALBgNV -BAMMBHQ2ODMwE6QRMA8xDTALBgNVBAMMBHQ2ODQwE6QRMA8xDTALBgNVBAMMBHQ2 -ODUwE6QRMA8xDTALBgNVBAMMBHQ2ODYwE6QRMA8xDTALBgNVBAMMBHQ2ODcwE6QR -MA8xDTALBgNVBAMMBHQ2ODgwE6QRMA8xDTALBgNVBAMMBHQ2ODkwE6QRMA8xDTAL -BgNVBAMMBHQ2OTAwE6QRMA8xDTALBgNVBAMMBHQ2OTEwE6QRMA8xDTALBgNVBAMM -BHQ2OTIwE6QRMA8xDTALBgNVBAMMBHQ2OTMwE6QRMA8xDTALBgNVBAMMBHQ2OTQw -E6QRMA8xDTALBgNVBAMMBHQ2OTUwE6QRMA8xDTALBgNVBAMMBHQ2OTYwE6QRMA8x -DTALBgNVBAMMBHQ2OTcwE6QRMA8xDTALBgNVBAMMBHQ2OTgwE6QRMA8xDTALBgNV -BAMMBHQ2OTkwE6QRMA8xDTALBgNVBAMMBHQ3MDAwE6QRMA8xDTALBgNVBAMMBHQ3 -MDEwE6QRMA8xDTALBgNVBAMMBHQ3MDIwE6QRMA8xDTALBgNVBAMMBHQ3MDMwE6QR -MA8xDTALBgNVBAMMBHQ3MDQwE6QRMA8xDTALBgNVBAMMBHQ3MDUwE6QRMA8xDTAL -BgNVBAMMBHQ3MDYwE6QRMA8xDTALBgNVBAMMBHQ3MDcwE6QRMA8xDTALBgNVBAMM -BHQ3MDgwE6QRMA8xDTALBgNVBAMMBHQ3MDkwE6QRMA8xDTALBgNVBAMMBHQ3MTAw -E6QRMA8xDTALBgNVBAMMBHQ3MTEwE6QRMA8xDTALBgNVBAMMBHQ3MTIwE6QRMA8x -DTALBgNVBAMMBHQ3MTMwE6QRMA8xDTALBgNVBAMMBHQ3MTQwE6QRMA8xDTALBgNV -BAMMBHQ3MTUwE6QRMA8xDTALBgNVBAMMBHQ3MTYwE6QRMA8xDTALBgNVBAMMBHQ3 -MTcwE6QRMA8xDTALBgNVBAMMBHQ3MTgwE6QRMA8xDTALBgNVBAMMBHQ3MTkwE6QR -MA8xDTALBgNVBAMMBHQ3MjAwE6QRMA8xDTALBgNVBAMMBHQ3MjEwE6QRMA8xDTAL -BgNVBAMMBHQ3MjIwE6QRMA8xDTALBgNVBAMMBHQ3MjMwE6QRMA8xDTALBgNVBAMM -BHQ3MjQwE6QRMA8xDTALBgNVBAMMBHQ3MjUwE6QRMA8xDTALBgNVBAMMBHQ3MjYw -E6QRMA8xDTALBgNVBAMMBHQ3MjcwE6QRMA8xDTALBgNVBAMMBHQ3MjgwE6QRMA8x -DTALBgNVBAMMBHQ3MjkwE6QRMA8xDTALBgNVBAMMBHQ3MzAwE6QRMA8xDTALBgNV -BAMMBHQ3MzEwE6QRMA8xDTALBgNVBAMMBHQ3MzIwE6QRMA8xDTALBgNVBAMMBHQ3 -MzMwE6QRMA8xDTALBgNVBAMMBHQ3MzQwE6QRMA8xDTALBgNVBAMMBHQ3MzUwE6QR -MA8xDTALBgNVBAMMBHQ3MzYwE6QRMA8xDTALBgNVBAMMBHQ3MzcwE6QRMA8xDTAL -BgNVBAMMBHQ3MzgwE6QRMA8xDTALBgNVBAMMBHQ3MzkwE6QRMA8xDTALBgNVBAMM -BHQ3NDAwE6QRMA8xDTALBgNVBAMMBHQ3NDEwE6QRMA8xDTALBgNVBAMMBHQ3NDIw -E6QRMA8xDTALBgNVBAMMBHQ3NDMwE6QRMA8xDTALBgNVBAMMBHQ3NDQwE6QRMA8x -DTALBgNVBAMMBHQ3NDUwE6QRMA8xDTALBgNVBAMMBHQ3NDYwE6QRMA8xDTALBgNV -BAMMBHQ3NDcwE6QRMA8xDTALBgNVBAMMBHQ3NDgwE6QRMA8xDTALBgNVBAMMBHQ3 -NDkwE6QRMA8xDTALBgNVBAMMBHQ3NTAwE6QRMA8xDTALBgNVBAMMBHQ3NTEwE6QR -MA8xDTALBgNVBAMMBHQ3NTIwE6QRMA8xDTALBgNVBAMMBHQ3NTMwE6QRMA8xDTAL -BgNVBAMMBHQ3NTQwE6QRMA8xDTALBgNVBAMMBHQ3NTUwE6QRMA8xDTALBgNVBAMM -BHQ3NTYwE6QRMA8xDTALBgNVBAMMBHQ3NTcwE6QRMA8xDTALBgNVBAMMBHQ3NTgw -E6QRMA8xDTALBgNVBAMMBHQ3NTkwE6QRMA8xDTALBgNVBAMMBHQ3NjAwE6QRMA8x -DTALBgNVBAMMBHQ3NjEwE6QRMA8xDTALBgNVBAMMBHQ3NjIwE6QRMA8xDTALBgNV -BAMMBHQ3NjMwE6QRMA8xDTALBgNVBAMMBHQ3NjQwE6QRMA8xDTALBgNVBAMMBHQ3 -NjUwE6QRMA8xDTALBgNVBAMMBHQ3NjYwE6QRMA8xDTALBgNVBAMMBHQ3NjcwE6QR -MA8xDTALBgNVBAMMBHQ3NjgwE6QRMA8xDTALBgNVBAMMBHQ3NjkwE6QRMA8xDTAL -BgNVBAMMBHQ3NzAwE6QRMA8xDTALBgNVBAMMBHQ3NzEwE6QRMA8xDTALBgNVBAMM -BHQ3NzIwE6QRMA8xDTALBgNVBAMMBHQ3NzMwE6QRMA8xDTALBgNVBAMMBHQ3NzQw -E6QRMA8xDTALBgNVBAMMBHQ3NzUwE6QRMA8xDTALBgNVBAMMBHQ3NzYwE6QRMA8x -DTALBgNVBAMMBHQ3NzcwE6QRMA8xDTALBgNVBAMMBHQ3NzgwE6QRMA8xDTALBgNV -BAMMBHQ3NzkwE6QRMA8xDTALBgNVBAMMBHQ3ODAwE6QRMA8xDTALBgNVBAMMBHQ3 -ODEwE6QRMA8xDTALBgNVBAMMBHQ3ODIwE6QRMA8xDTALBgNVBAMMBHQ3ODMwE6QR -MA8xDTALBgNVBAMMBHQ3ODQwE6QRMA8xDTALBgNVBAMMBHQ3ODUwE6QRMA8xDTAL -BgNVBAMMBHQ3ODYwE6QRMA8xDTALBgNVBAMMBHQ3ODcwE6QRMA8xDTALBgNVBAMM -BHQ3ODgwE6QRMA8xDTALBgNVBAMMBHQ3ODkwE6QRMA8xDTALBgNVBAMMBHQ3OTAw -E6QRMA8xDTALBgNVBAMMBHQ3OTEwE6QRMA8xDTALBgNVBAMMBHQ3OTIwE6QRMA8x -DTALBgNVBAMMBHQ3OTMwE6QRMA8xDTALBgNVBAMMBHQ3OTQwE6QRMA8xDTALBgNV -BAMMBHQ3OTUwE6QRMA8xDTALBgNVBAMMBHQ3OTYwE6QRMA8xDTALBgNVBAMMBHQ3 -OTcwE6QRMA8xDTALBgNVBAMMBHQ3OTgwE6QRMA8xDTALBgNVBAMMBHQ3OTkwE6QR -MA8xDTALBgNVBAMMBHQ4MDAwE6QRMA8xDTALBgNVBAMMBHQ4MDEwE6QRMA8xDTAL -BgNVBAMMBHQ4MDIwE6QRMA8xDTALBgNVBAMMBHQ4MDMwE6QRMA8xDTALBgNVBAMM -BHQ4MDQwE6QRMA8xDTALBgNVBAMMBHQ4MDUwE6QRMA8xDTALBgNVBAMMBHQ4MDYw -E6QRMA8xDTALBgNVBAMMBHQ4MDcwE6QRMA8xDTALBgNVBAMMBHQ4MDgwE6QRMA8x -DTALBgNVBAMMBHQ4MDkwE6QRMA8xDTALBgNVBAMMBHQ4MTAwE6QRMA8xDTALBgNV -BAMMBHQ4MTEwE6QRMA8xDTALBgNVBAMMBHQ4MTIwE6QRMA8xDTALBgNVBAMMBHQ4 -MTMwE6QRMA8xDTALBgNVBAMMBHQ4MTQwE6QRMA8xDTALBgNVBAMMBHQ4MTUwE6QR -MA8xDTALBgNVBAMMBHQ4MTYwE6QRMA8xDTALBgNVBAMMBHQ4MTcwE6QRMA8xDTAL -BgNVBAMMBHQ4MTgwE6QRMA8xDTALBgNVBAMMBHQ4MTkwE6QRMA8xDTALBgNVBAMM -BHQ4MjAwE6QRMA8xDTALBgNVBAMMBHQ4MjEwE6QRMA8xDTALBgNVBAMMBHQ4MjIw -E6QRMA8xDTALBgNVBAMMBHQ4MjMwE6QRMA8xDTALBgNVBAMMBHQ4MjQwE6QRMA8x -DTALBgNVBAMMBHQ4MjUwE6QRMA8xDTALBgNVBAMMBHQ4MjYwE6QRMA8xDTALBgNV -BAMMBHQ4MjcwE6QRMA8xDTALBgNVBAMMBHQ4MjgwE6QRMA8xDTALBgNVBAMMBHQ4 -MjkwE6QRMA8xDTALBgNVBAMMBHQ4MzAwE6QRMA8xDTALBgNVBAMMBHQ4MzEwE6QR -MA8xDTALBgNVBAMMBHQ4MzIwE6QRMA8xDTALBgNVBAMMBHQ4MzMwE6QRMA8xDTAL -BgNVBAMMBHQ4MzQwE6QRMA8xDTALBgNVBAMMBHQ4MzUwE6QRMA8xDTALBgNVBAMM -BHQ4MzYwE6QRMA8xDTALBgNVBAMMBHQ4MzcwE6QRMA8xDTALBgNVBAMMBHQ4Mzgw -E6QRMA8xDTALBgNVBAMMBHQ4MzkwE6QRMA8xDTALBgNVBAMMBHQ4NDAwE6QRMA8x -DTALBgNVBAMMBHQ4NDEwE6QRMA8xDTALBgNVBAMMBHQ4NDIwE6QRMA8xDTALBgNV -BAMMBHQ4NDMwE6QRMA8xDTALBgNVBAMMBHQ4NDQwE6QRMA8xDTALBgNVBAMMBHQ4 -NDUwE6QRMA8xDTALBgNVBAMMBHQ4NDYwE6QRMA8xDTALBgNVBAMMBHQ4NDcwE6QR -MA8xDTALBgNVBAMMBHQ4NDgwE6QRMA8xDTALBgNVBAMMBHQ4NDkwE6QRMA8xDTAL -BgNVBAMMBHQ4NTAwE6QRMA8xDTALBgNVBAMMBHQ4NTEwE6QRMA8xDTALBgNVBAMM -BHQ4NTIwE6QRMA8xDTALBgNVBAMMBHQ4NTMwE6QRMA8xDTALBgNVBAMMBHQ4NTQw -E6QRMA8xDTALBgNVBAMMBHQ4NTUwE6QRMA8xDTALBgNVBAMMBHQ4NTYwE6QRMA8x -DTALBgNVBAMMBHQ4NTcwE6QRMA8xDTALBgNVBAMMBHQ4NTgwE6QRMA8xDTALBgNV -BAMMBHQ4NTkwE6QRMA8xDTALBgNVBAMMBHQ4NjAwE6QRMA8xDTALBgNVBAMMBHQ4 -NjEwE6QRMA8xDTALBgNVBAMMBHQ4NjIwE6QRMA8xDTALBgNVBAMMBHQ4NjMwE6QR -MA8xDTALBgNVBAMMBHQ4NjQwE6QRMA8xDTALBgNVBAMMBHQ4NjUwE6QRMA8xDTAL -BgNVBAMMBHQ4NjYwE6QRMA8xDTALBgNVBAMMBHQ4NjcwE6QRMA8xDTALBgNVBAMM -BHQ4NjgwE6QRMA8xDTALBgNVBAMMBHQ4NjkwE6QRMA8xDTALBgNVBAMMBHQ4NzAw -E6QRMA8xDTALBgNVBAMMBHQ4NzEwE6QRMA8xDTALBgNVBAMMBHQ4NzIwE6QRMA8x -DTALBgNVBAMMBHQ4NzMwE6QRMA8xDTALBgNVBAMMBHQ4NzQwE6QRMA8xDTALBgNV -BAMMBHQ4NzUwE6QRMA8xDTALBgNVBAMMBHQ4NzYwE6QRMA8xDTALBgNVBAMMBHQ4 -NzcwE6QRMA8xDTALBgNVBAMMBHQ4NzgwE6QRMA8xDTALBgNVBAMMBHQ4NzkwE6QR -MA8xDTALBgNVBAMMBHQ4ODAwE6QRMA8xDTALBgNVBAMMBHQ4ODEwE6QRMA8xDTAL -BgNVBAMMBHQ4ODIwE6QRMA8xDTALBgNVBAMMBHQ4ODMwE6QRMA8xDTALBgNVBAMM -BHQ4ODQwE6QRMA8xDTALBgNVBAMMBHQ4ODUwE6QRMA8xDTALBgNVBAMMBHQ4ODYw -E6QRMA8xDTALBgNVBAMMBHQ4ODcwE6QRMA8xDTALBgNVBAMMBHQ4ODgwE6QRMA8x -DTALBgNVBAMMBHQ4ODkwE6QRMA8xDTALBgNVBAMMBHQ4OTAwE6QRMA8xDTALBgNV -BAMMBHQ4OTEwE6QRMA8xDTALBgNVBAMMBHQ4OTIwE6QRMA8xDTALBgNVBAMMBHQ4 -OTMwE6QRMA8xDTALBgNVBAMMBHQ4OTQwE6QRMA8xDTALBgNVBAMMBHQ4OTUwE6QR -MA8xDTALBgNVBAMMBHQ4OTYwE6QRMA8xDTALBgNVBAMMBHQ4OTcwE6QRMA8xDTAL -BgNVBAMMBHQ4OTgwE6QRMA8xDTALBgNVBAMMBHQ4OTkwE6QRMA8xDTALBgNVBAMM -BHQ5MDAwE6QRMA8xDTALBgNVBAMMBHQ5MDEwE6QRMA8xDTALBgNVBAMMBHQ5MDIw -E6QRMA8xDTALBgNVBAMMBHQ5MDMwE6QRMA8xDTALBgNVBAMMBHQ5MDQwE6QRMA8x -DTALBgNVBAMMBHQ5MDUwE6QRMA8xDTALBgNVBAMMBHQ5MDYwE6QRMA8xDTALBgNV -BAMMBHQ5MDcwE6QRMA8xDTALBgNVBAMMBHQ5MDgwE6QRMA8xDTALBgNVBAMMBHQ5 -MDkwE6QRMA8xDTALBgNVBAMMBHQ5MTAwE6QRMA8xDTALBgNVBAMMBHQ5MTEwE6QR -MA8xDTALBgNVBAMMBHQ5MTIwE6QRMA8xDTALBgNVBAMMBHQ5MTMwE6QRMA8xDTAL -BgNVBAMMBHQ5MTQwE6QRMA8xDTALBgNVBAMMBHQ5MTUwE6QRMA8xDTALBgNVBAMM -BHQ5MTYwE6QRMA8xDTALBgNVBAMMBHQ5MTcwE6QRMA8xDTALBgNVBAMMBHQ5MTgw -E6QRMA8xDTALBgNVBAMMBHQ5MTkwE6QRMA8xDTALBgNVBAMMBHQ5MjAwE6QRMA8x -DTALBgNVBAMMBHQ5MjEwE6QRMA8xDTALBgNVBAMMBHQ5MjIwE6QRMA8xDTALBgNV -BAMMBHQ5MjMwE6QRMA8xDTALBgNVBAMMBHQ5MjQwE6QRMA8xDTALBgNVBAMMBHQ5 -MjUwE6QRMA8xDTALBgNVBAMMBHQ5MjYwE6QRMA8xDTALBgNVBAMMBHQ5MjcwE6QR -MA8xDTALBgNVBAMMBHQ5MjgwE6QRMA8xDTALBgNVBAMMBHQ5MjkwE6QRMA8xDTAL -BgNVBAMMBHQ5MzAwE6QRMA8xDTALBgNVBAMMBHQ5MzEwE6QRMA8xDTALBgNVBAMM -BHQ5MzIwE6QRMA8xDTALBgNVBAMMBHQ5MzMwE6QRMA8xDTALBgNVBAMMBHQ5MzQw -E6QRMA8xDTALBgNVBAMMBHQ5MzUwE6QRMA8xDTALBgNVBAMMBHQ5MzYwE6QRMA8x -DTALBgNVBAMMBHQ5MzcwE6QRMA8xDTALBgNVBAMMBHQ5MzgwE6QRMA8xDTALBgNV -BAMMBHQ5MzkwE6QRMA8xDTALBgNVBAMMBHQ5NDAwE6QRMA8xDTALBgNVBAMMBHQ5 -NDEwE6QRMA8xDTALBgNVBAMMBHQ5NDIwE6QRMA8xDTALBgNVBAMMBHQ5NDMwE6QR -MA8xDTALBgNVBAMMBHQ5NDQwE6QRMA8xDTALBgNVBAMMBHQ5NDUwE6QRMA8xDTAL -BgNVBAMMBHQ5NDYwE6QRMA8xDTALBgNVBAMMBHQ5NDcwE6QRMA8xDTALBgNVBAMM -BHQ5NDgwE6QRMA8xDTALBgNVBAMMBHQ5NDkwE6QRMA8xDTALBgNVBAMMBHQ5NTAw -E6QRMA8xDTALBgNVBAMMBHQ5NTEwE6QRMA8xDTALBgNVBAMMBHQ5NTIwE6QRMA8x -DTALBgNVBAMMBHQ5NTMwE6QRMA8xDTALBgNVBAMMBHQ5NTQwE6QRMA8xDTALBgNV -BAMMBHQ5NTUwE6QRMA8xDTALBgNVBAMMBHQ5NTYwE6QRMA8xDTALBgNVBAMMBHQ5 -NTcwE6QRMA8xDTALBgNVBAMMBHQ5NTgwE6QRMA8xDTALBgNVBAMMBHQ5NTkwE6QR -MA8xDTALBgNVBAMMBHQ5NjAwE6QRMA8xDTALBgNVBAMMBHQ5NjEwE6QRMA8xDTAL -BgNVBAMMBHQ5NjIwE6QRMA8xDTALBgNVBAMMBHQ5NjMwE6QRMA8xDTALBgNVBAMM -BHQ5NjQwE6QRMA8xDTALBgNVBAMMBHQ5NjUwE6QRMA8xDTALBgNVBAMMBHQ5NjYw -E6QRMA8xDTALBgNVBAMMBHQ5NjcwE6QRMA8xDTALBgNVBAMMBHQ5NjgwE6QRMA8x -DTALBgNVBAMMBHQ5NjkwE6QRMA8xDTALBgNVBAMMBHQ5NzAwE6QRMA8xDTALBgNV -BAMMBHQ5NzEwE6QRMA8xDTALBgNVBAMMBHQ5NzIwE6QRMA8xDTALBgNVBAMMBHQ5 -NzMwE6QRMA8xDTALBgNVBAMMBHQ5NzQwE6QRMA8xDTALBgNVBAMMBHQ5NzUwE6QR -MA8xDTALBgNVBAMMBHQ5NzYwE6QRMA8xDTALBgNVBAMMBHQ5NzcwE6QRMA8xDTAL -BgNVBAMMBHQ5NzgwE6QRMA8xDTALBgNVBAMMBHQ5NzkwE6QRMA8xDTALBgNVBAMM -BHQ5ODAwE6QRMA8xDTALBgNVBAMMBHQ5ODEwE6QRMA8xDTALBgNVBAMMBHQ5ODIw -E6QRMA8xDTALBgNVBAMMBHQ5ODMwE6QRMA8xDTALBgNVBAMMBHQ5ODQwE6QRMA8x -DTALBgNVBAMMBHQ5ODUwE6QRMA8xDTALBgNVBAMMBHQ5ODYwE6QRMA8xDTALBgNV -BAMMBHQ5ODcwE6QRMA8xDTALBgNVBAMMBHQ5ODgwE6QRMA8xDTALBgNVBAMMBHQ5 -ODkwE6QRMA8xDTALBgNVBAMMBHQ5OTAwE6QRMA8xDTALBgNVBAMMBHQ5OTEwE6QR -MA8xDTALBgNVBAMMBHQ5OTIwE6QRMA8xDTALBgNVBAMMBHQ5OTMwE6QRMA8xDTAL -BgNVBAMMBHQ5OTQwE6QRMA8xDTALBgNVBAMMBHQ5OTUwE6QRMA8xDTALBgNVBAMM -BHQ5OTYwE6QRMA8xDTALBgNVBAMMBHQ5OTcwE6QRMA8xDTALBgNVBAMMBHQ5OTgw -E6QRMA8xDTALBgNVBAMMBHQ5OTkwFKQSMBAxDjAMBgNVBAMMBXQxMDAwMBSkEjAQ -MQ4wDAYDVQQDDAV0MTAwMTAUpBIwEDEOMAwGA1UEAwwFdDEwMDIwFKQSMBAxDjAM -BgNVBAMMBXQxMDAzMBSkEjAQMQ4wDAYDVQQDDAV0MTAwNDAUpBIwEDEOMAwGA1UE -AwwFdDEwMDUwFKQSMBAxDjAMBgNVBAMMBXQxMDA2MBSkEjAQMQ4wDAYDVQQDDAV0 -MTAwNzAUpBIwEDEOMAwGA1UEAwwFdDEwMDgwFKQSMBAxDjAMBgNVBAMMBXQxMDA5 -MBSkEjAQMQ4wDAYDVQQDDAV0MTAxMDAUpBIwEDEOMAwGA1UEAwwFdDEwMTEwFKQS -MBAxDjAMBgNVBAMMBXQxMDEyMBSkEjAQMQ4wDAYDVQQDDAV0MTAxMzAUpBIwEDEO -MAwGA1UEAwwFdDEwMTQwFKQSMBAxDjAMBgNVBAMMBXQxMDE1MBSkEjAQMQ4wDAYD -VQQDDAV0MTAxNjAUpBIwEDEOMAwGA1UEAwwFdDEwMTcwFKQSMBAxDjAMBgNVBAMM -BXQxMDE4MBSkEjAQMQ4wDAYDVQQDDAV0MTAxOTAUpBIwEDEOMAwGA1UEAwwFdDEw -MjAwFKQSMBAxDjAMBgNVBAMMBXQxMDIxMBSkEjAQMQ4wDAYDVQQDDAV0MTAyMjAU -pBIwEDEOMAwGA1UEAwwFdDEwMjMwFKQSMBAxDjAMBgNVBAMMBXQxMDI0MA0GCSqG -SIb3DQEBCwUAA4IBAQBNowuporu2SMjnxgEEnpU4xKJUfhh5LyPtRRk+RPOetaAn -AXaG/FlSCdIW2TXUvILCEuR8ro+IkJ5L7+ELV7Tzn90IFXN5WSiRv+2niWPmf/08 -IZa6fYK6HN8fkyNR1g/dTVTkesny+ph2e5WtK3p8SpCVpdnYT89Lp55RDxgDqVh0 -YSatC0+eIYXHCoFBMoq3l5Zs7y+e1wZ5N+XhNvZ3fQY5K/rOg4SbsJJjf1cDlFRj -ex5WoFcx0uEMc6lS01rr1+Zcyo0rX8cJu6QMwUy710HkDeAUItC05xBCiiF9X3hM -TRxhm6nbvynCECJdWMXUytOxvH3lCWmRneGVLfR/ ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.pem deleted file mode 100644 index 6447d3c6a3..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Intermediate_7.pem +++ /dev/null @@ -1,1564 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:fd - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:bb:3b:db:04:6e:17:e0:54:52:ba:23:77:24:bc: - 34:e3:70:d9:99:9e:53:5d:33:0b:a9:cc:4b:1d:ae: - 06:27:18:8e:55:ba:ad:12:c7:1d:32:59:6d:c3:16: - 20:db:62:a6:77:80:12:e0:87:58:51:55:e3:66:7f: - d1:e0:3a:22:65:e5:70:26:a2:04:04:f0:5d:f9:5f: - 56:c8:da:e8:0f:57:28:77:6e:9a:a0:4a:53:34:1a: - 63:37:a2:43:ab:0e:4a:cd:07:23:dd:55:83:44:00: - 0c:70:41:df:35:64:d0:c5:0e:6a:87:db:ca:fc:35: - d5:e2:5b:af:0b:a0:e6:75:a5:d2:e1:72:4e:22:63: - 01:41:73:b8:95:50:2c:fd:ed:c3:61:b6:36:d4:83: - 95:61:c3:e0:61:ff:f4:9e:8a:e8:ba:dc:d1:f6:89: - ed:9d:30:44:95:27:f4:d1:8b:e6:2f:14:66:56:f1: - da:f1:cc:04:1b:77:92:a5:9f:58:40:0c:9f:0c:32: - d6:05:c2:4c:c0:c5:9f:e5:a4:30:3d:4c:e9:9d:03: - 6c:4c:06:b6:e5:95:bd:21:b8:e6:2b:a8:a0:bf:06: - bb:43:33:19:3d:7b:17:59:f1:64:4d:24:67:b1:51: - 0f:35:ae:f0:71:75:79:ae:5b:02:34:04:31:e3:66: - 86:65 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - X509v3 Name Constraints: - Permitted: - DirName: CN = t0 - DirName: CN = t1 - DirName: CN = t2 - DirName: CN = t3 - DirName: CN = t4 - DirName: CN = t5 - DirName: CN = t6 - DirName: CN = t7 - DirName: CN = t8 - DirName: CN = t9 - DirName: CN = t10 - DirName: CN = t11 - DirName: CN = t12 - DirName: CN = t13 - DirName: CN = t14 - DirName: CN = t15 - DirName: CN = t16 - DirName: CN = t17 - DirName: CN = t18 - DirName: CN = t19 - DirName: CN = t20 - DirName: CN = t21 - DirName: CN = t22 - DirName: CN = t23 - DirName: CN = t24 - DirName: CN = t25 - DirName: CN = t26 - DirName: CN = t27 - DirName: CN = t28 - DirName: CN = t29 - DirName: CN = t30 - DirName: CN = t31 - DirName: CN = t32 - DirName: CN = t33 - DirName: CN = t34 - DirName: CN = t35 - DirName: CN = t36 - DirName: CN = t37 - DirName: CN = t38 - DirName: CN = t39 - DirName: CN = t40 - DirName: CN = t41 - DirName: CN = t42 - DirName: CN = t43 - DirName: CN = t44 - DirName: CN = t45 - DirName: CN = t46 - DirName: CN = t47 - DirName: CN = t48 - DirName: CN = t49 - DirName: CN = t50 - DirName: CN = t51 - DirName: CN = t52 - DirName: CN = t53 - DirName: CN = t54 - DirName: CN = t55 - DirName: CN = t56 - DirName: CN = t57 - DirName: CN = t58 - DirName: CN = t59 - DirName: CN = t60 - DirName: CN = t61 - DirName: CN = t62 - DirName: CN = t63 - DirName: CN = t64 - DirName: CN = t65 - DirName: CN = t66 - DirName: CN = t67 - DirName: CN = t68 - DirName: CN = t69 - DirName: CN = t70 - DirName: CN = t71 - DirName: CN = t72 - DirName: CN = t73 - DirName: CN = t74 - DirName: CN = t75 - DirName: CN = t76 - DirName: CN = t77 - DirName: CN = t78 - DirName: CN = t79 - DirName: CN = t80 - DirName: CN = t81 - DirName: CN = t82 - DirName: CN = t83 - DirName: CN = t84 - DirName: CN = t85 - DirName: CN = t86 - DirName: CN = t87 - DirName: CN = t88 - DirName: CN = t89 - DirName: CN = t90 - DirName: CN = t91 - DirName: CN = t92 - DirName: CN = t93 - DirName: CN = t94 - DirName: CN = t95 - DirName: CN = t96 - DirName: CN = t97 - DirName: CN = t98 - DirName: CN = t99 - DirName: CN = t100 - DirName: CN = t101 - DirName: CN = t102 - DirName: CN = t103 - DirName: CN = t104 - DirName: CN = t105 - DirName: CN = t106 - DirName: CN = t107 - DirName: CN = t108 - DirName: CN = t109 - DirName: CN = t110 - DirName: CN = t111 - DirName: CN = t112 - DirName: CN = t113 - DirName: CN = t114 - DirName: CN = t115 - DirName: CN = t116 - DirName: CN = t117 - DirName: CN = t118 - DirName: CN = t119 - DirName: CN = t120 - DirName: CN = t121 - DirName: CN = t122 - DirName: CN = t123 - DirName: CN = t124 - DirName: CN = t125 - DirName: CN = t126 - DirName: CN = t127 - DirName: CN = t128 - DirName: CN = t129 - DirName: CN = t130 - DirName: CN = t131 - DirName: CN = t132 - DirName: CN = t133 - DirName: CN = t134 - DirName: CN = t135 - DirName: CN = t136 - DirName: CN = t137 - DirName: CN = t138 - DirName: CN = t139 - DirName: CN = t140 - DirName: CN = t141 - DirName: CN = t142 - DirName: CN = t143 - DirName: CN = t144 - DirName: CN = t145 - DirName: CN = t146 - DirName: CN = t147 - DirName: CN = t148 - DirName: CN = t149 - DirName: CN = t150 - DirName: CN = t151 - DirName: CN = t152 - DirName: CN = t153 - DirName: CN = t154 - DirName: CN = t155 - DirName: CN = t156 - DirName: CN = t157 - DirName: CN = t158 - DirName: CN = t159 - DirName: CN = t160 - DirName: CN = t161 - DirName: CN = t162 - DirName: CN = t163 - DirName: CN = t164 - DirName: CN = t165 - DirName: CN = t166 - DirName: CN = t167 - DirName: CN = t168 - DirName: CN = t169 - DirName: CN = t170 - DirName: CN = t171 - DirName: CN = t172 - DirName: CN = t173 - DirName: CN = t174 - DirName: CN = t175 - DirName: CN = t176 - DirName: CN = t177 - DirName: CN = t178 - DirName: CN = t179 - DirName: CN = t180 - DirName: CN = t181 - DirName: CN = t182 - DirName: CN = t183 - DirName: CN = t184 - DirName: CN = t185 - DirName: CN = t186 - DirName: CN = t187 - DirName: CN = t188 - DirName: CN = t189 - DirName: CN = t190 - DirName: CN = t191 - DirName: CN = t192 - DirName: CN = t193 - DirName: CN = t194 - DirName: CN = t195 - DirName: CN = t196 - DirName: CN = t197 - DirName: CN = t198 - DirName: CN = t199 - DirName: CN = t200 - DirName: CN = t201 - DirName: CN = t202 - DirName: CN = t203 - DirName: CN = t204 - DirName: CN = t205 - DirName: CN = t206 - DirName: CN = t207 - DirName: CN = t208 - DirName: CN = t209 - DirName: CN = t210 - DirName: CN = t211 - DirName: CN = t212 - DirName: CN = t213 - DirName: CN = t214 - DirName: CN = t215 - DirName: CN = t216 - DirName: CN = t217 - DirName: CN = t218 - DirName: CN = t219 - DirName: CN = t220 - DirName: CN = t221 - DirName: CN = t222 - DirName: CN = t223 - DirName: CN = t224 - DirName: CN = t225 - DirName: CN = t226 - DirName: CN = t227 - DirName: CN = t228 - DirName: CN = t229 - DirName: CN = t230 - DirName: CN = t231 - DirName: CN = t232 - DirName: CN = t233 - DirName: CN = t234 - DirName: CN = t235 - DirName: CN = t236 - DirName: CN = t237 - DirName: CN = t238 - DirName: CN = t239 - DirName: CN = t240 - DirName: CN = t241 - DirName: CN = t242 - DirName: CN = t243 - DirName: CN = t244 - DirName: CN = t245 - DirName: CN = t246 - DirName: CN = t247 - DirName: CN = t248 - DirName: CN = t249 - DirName: CN = t250 - DirName: CN = t251 - DirName: CN = t252 - DirName: CN = t253 - DirName: CN = t254 - DirName: CN = t255 - DirName: CN = t256 - DirName: CN = t257 - DirName: CN = t258 - DirName: CN = t259 - DirName: CN = t260 - DirName: CN = t261 - DirName: CN = t262 - DirName: CN = t263 - DirName: CN = t264 - DirName: CN = t265 - DirName: CN = t266 - DirName: CN = t267 - DirName: CN = t268 - DirName: CN = t269 - DirName: CN = t270 - DirName: CN = t271 - DirName: CN = t272 - DirName: CN = t273 - DirName: CN = t274 - DirName: CN = t275 - DirName: CN = t276 - DirName: CN = t277 - DirName: CN = t278 - DirName: CN = t279 - DirName: CN = t280 - DirName: CN = t281 - DirName: CN = t282 - DirName: CN = t283 - DirName: CN = t284 - DirName: CN = t285 - DirName: CN = t286 - DirName: CN = t287 - DirName: CN = t288 - DirName: CN = t289 - DirName: CN = t290 - DirName: CN = t291 - DirName: CN = t292 - DirName: CN = t293 - DirName: CN = t294 - DirName: CN = t295 - DirName: CN = t296 - DirName: CN = t297 - DirName: CN = t298 - DirName: CN = t299 - DirName: CN = t300 - DirName: CN = t301 - DirName: CN = t302 - DirName: CN = t303 - DirName: CN = t304 - DirName: CN = t305 - DirName: CN = t306 - DirName: CN = t307 - DirName: CN = t308 - DirName: CN = t309 - DirName: CN = t310 - DirName: CN = t311 - DirName: CN = t312 - DirName: CN = t313 - DirName: CN = t314 - DirName: CN = t315 - DirName: CN = t316 - DirName: CN = t317 - DirName: CN = t318 - DirName: CN = t319 - DirName: CN = t320 - DirName: CN = t321 - DirName: CN = t322 - DirName: CN = t323 - DirName: CN = t324 - DirName: CN = t325 - DirName: CN = t326 - DirName: CN = t327 - DirName: CN = t328 - DirName: CN = t329 - DirName: CN = t330 - DirName: CN = t331 - DirName: CN = t332 - DirName: CN = t333 - DirName: CN = t334 - DirName: CN = t335 - DirName: CN = t336 - DirName: CN = t337 - DirName: CN = t338 - DirName: CN = t339 - DirName: CN = t340 - DirName: CN = t341 - DirName: CN = t342 - DirName: CN = t343 - DirName: CN = t344 - DirName: CN = t345 - DirName: CN = t346 - DirName: CN = t347 - DirName: CN = t348 - DirName: CN = t349 - DirName: CN = t350 - DirName: CN = t351 - DirName: CN = t352 - DirName: CN = t353 - DirName: CN = t354 - DirName: CN = t355 - DirName: CN = t356 - DirName: CN = t357 - DirName: CN = t358 - DirName: CN = t359 - DirName: CN = t360 - DirName: CN = t361 - DirName: CN = t362 - DirName: CN = t363 - DirName: CN = t364 - DirName: CN = t365 - DirName: CN = t366 - DirName: CN = t367 - DirName: CN = t368 - DirName: CN = t369 - DirName: CN = t370 - DirName: CN = t371 - DirName: CN = t372 - DirName: CN = t373 - DirName: CN = t374 - DirName: CN = t375 - DirName: CN = t376 - DirName: CN = t377 - DirName: CN = t378 - DirName: CN = t379 - DirName: CN = t380 - DirName: CN = t381 - DirName: CN = t382 - DirName: CN = t383 - DirName: CN = t384 - DirName: CN = t385 - DirName: CN = t386 - DirName: CN = t387 - DirName: CN = t388 - DirName: CN = t389 - DirName: CN = t390 - DirName: CN = t391 - DirName: CN = t392 - DirName: CN = t393 - DirName: CN = t394 - DirName: CN = t395 - DirName: CN = t396 - DirName: CN = t397 - DirName: CN = t398 - DirName: CN = t399 - DirName: CN = t400 - DirName: CN = t401 - DirName: CN = t402 - DirName: CN = t403 - DirName: CN = t404 - DirName: CN = t405 - DirName: CN = t406 - DirName: CN = t407 - DirName: CN = t408 - DirName: CN = t409 - DirName: CN = t410 - DirName: CN = t411 - DirName: CN = t412 - DirName: CN = t413 - DirName: CN = t414 - DirName: CN = t415 - DirName: CN = t416 - DirName: CN = t417 - DirName: CN = t418 - DirName: CN = t419 - DirName: CN = t420 - DirName: CN = t421 - DirName: CN = t422 - DirName: CN = t423 - DirName: CN = t424 - DirName: CN = t425 - DirName: CN = t426 - DirName: CN = t427 - DirName: CN = t428 - DirName: CN = t429 - DirName: CN = t430 - DirName: CN = t431 - DirName: CN = t432 - DirName: CN = t433 - DirName: CN = t434 - DirName: CN = t435 - DirName: CN = t436 - DirName: CN = t437 - DirName: CN = t438 - DirName: CN = t439 - DirName: CN = t440 - DirName: CN = t441 - DirName: CN = t442 - DirName: CN = t443 - DirName: CN = t444 - DirName: CN = t445 - DirName: CN = t446 - DirName: CN = t447 - DirName: CN = t448 - DirName: CN = t449 - DirName: CN = t450 - DirName: CN = t451 - DirName: CN = t452 - DirName: CN = t453 - DirName: CN = t454 - DirName: CN = t455 - DirName: CN = t456 - DirName: CN = t457 - DirName: CN = t458 - DirName: CN = t459 - DirName: CN = t460 - DirName: CN = t461 - DirName: CN = t462 - DirName: CN = t463 - DirName: CN = t464 - DirName: CN = t465 - DirName: CN = t466 - DirName: CN = t467 - DirName: CN = t468 - DirName: CN = t469 - DirName: CN = t470 - DirName: CN = t471 - DirName: CN = t472 - DirName: CN = t473 - DirName: CN = t474 - DirName: CN = t475 - DirName: CN = t476 - DirName: CN = t477 - DirName: CN = t478 - DirName: CN = t479 - DirName: CN = t480 - DirName: CN = t481 - DirName: CN = t482 - DirName: CN = t483 - DirName: CN = t484 - DirName: CN = t485 - DirName: CN = t486 - DirName: CN = t487 - DirName: CN = t488 - DirName: CN = t489 - DirName: CN = t490 - DirName: CN = t491 - DirName: CN = t492 - DirName: CN = t493 - DirName: CN = t494 - DirName: CN = t495 - DirName: CN = t496 - DirName: CN = t497 - DirName: CN = t498 - DirName: CN = t499 - DirName: CN = t500 - DirName: CN = t501 - DirName: CN = t502 - DirName: CN = t503 - DirName: CN = t504 - DirName: CN = t505 - DirName: CN = t506 - DirName: CN = t507 - DirName: CN = t508 - DirName: CN = t509 - DirName: CN = t510 - DirName: CN = t511 - DirName: CN = t512 - DirName: CN = t513 - DirName: CN = t514 - DirName: CN = t515 - DirName: CN = t516 - DirName: CN = t517 - DirName: CN = t518 - DirName: CN = t519 - DirName: CN = t520 - DirName: CN = t521 - DirName: CN = t522 - DirName: CN = t523 - DirName: CN = t524 - DirName: CN = t525 - DirName: CN = t526 - DirName: CN = t527 - DirName: CN = t528 - DirName: CN = t529 - DirName: CN = t530 - DirName: CN = t531 - DirName: CN = t532 - DirName: CN = t533 - DirName: CN = t534 - DirName: CN = t535 - DirName: CN = t536 - DirName: CN = t537 - DirName: CN = t538 - DirName: CN = t539 - DirName: CN = t540 - DirName: CN = t541 - DirName: CN = t542 - DirName: CN = t543 - DirName: CN = t544 - DirName: CN = t545 - DirName: CN = t546 - DirName: CN = t547 - DirName: CN = t548 - DirName: CN = t549 - DirName: CN = t550 - DirName: CN = t551 - DirName: CN = t552 - DirName: CN = t553 - DirName: CN = t554 - DirName: CN = t555 - DirName: CN = t556 - DirName: CN = t557 - DirName: CN = t558 - DirName: CN = t559 - DirName: CN = t560 - DirName: CN = t561 - DirName: CN = t562 - DirName: CN = t563 - DirName: CN = t564 - DirName: CN = t565 - DirName: CN = t566 - DirName: CN = t567 - DirName: CN = t568 - DirName: CN = t569 - DirName: CN = t570 - DirName: CN = t571 - DirName: CN = t572 - DirName: CN = t573 - DirName: CN = t574 - DirName: CN = t575 - DirName: CN = t576 - DirName: CN = t577 - DirName: CN = t578 - DirName: CN = t579 - DirName: CN = t580 - DirName: CN = t581 - DirName: CN = t582 - DirName: CN = t583 - DirName: CN = t584 - DirName: CN = t585 - DirName: CN = t586 - DirName: CN = t587 - DirName: CN = t588 - DirName: CN = t589 - DirName: CN = t590 - DirName: CN = t591 - DirName: CN = t592 - DirName: CN = t593 - DirName: CN = t594 - DirName: CN = t595 - DirName: CN = t596 - DirName: CN = t597 - DirName: CN = t598 - DirName: CN = t599 - DirName: CN = t600 - DirName: CN = t601 - DirName: CN = t602 - DirName: CN = t603 - DirName: CN = t604 - DirName: CN = t605 - DirName: CN = t606 - DirName: CN = t607 - DirName: CN = t608 - DirName: CN = t609 - DirName: CN = t610 - DirName: CN = t611 - DirName: CN = t612 - DirName: CN = t613 - DirName: CN = t614 - DirName: CN = t615 - DirName: CN = t616 - DirName: CN = t617 - DirName: CN = t618 - DirName: CN = t619 - DirName: CN = t620 - DirName: CN = t621 - DirName: CN = t622 - DirName: CN = t623 - DirName: CN = t624 - DirName: CN = t625 - DirName: CN = t626 - DirName: CN = t627 - DirName: CN = t628 - DirName: CN = t629 - DirName: CN = t630 - DirName: CN = t631 - DirName: CN = t632 - DirName: CN = t633 - DirName: CN = t634 - DirName: CN = t635 - DirName: CN = t636 - DirName: CN = t637 - DirName: CN = t638 - DirName: CN = t639 - DirName: CN = t640 - DirName: CN = t641 - DirName: CN = t642 - DirName: CN = t643 - DirName: CN = t644 - DirName: CN = t645 - DirName: CN = t646 - DirName: CN = t647 - DirName: CN = t648 - DirName: CN = t649 - DirName: CN = t650 - DirName: CN = t651 - DirName: CN = t652 - DirName: CN = t653 - DirName: CN = t654 - DirName: CN = t655 - DirName: CN = t656 - DirName: CN = t657 - DirName: CN = t658 - DirName: CN = t659 - DirName: CN = t660 - DirName: CN = t661 - DirName: CN = t662 - DirName: CN = t663 - DirName: CN = t664 - DirName: CN = t665 - DirName: CN = t666 - DirName: CN = t667 - DirName: CN = t668 - DirName: CN = t669 - DirName: CN = t670 - DirName: CN = t671 - DirName: CN = t672 - DirName: CN = t673 - DirName: CN = t674 - DirName: CN = t675 - DirName: CN = t676 - DirName: CN = t677 - DirName: CN = t678 - DirName: CN = t679 - DirName: CN = t680 - DirName: CN = t681 - DirName: CN = t682 - DirName: CN = t683 - DirName: CN = t684 - DirName: CN = t685 - DirName: CN = t686 - DirName: CN = t687 - DirName: CN = t688 - DirName: CN = t689 - DirName: CN = t690 - DirName: CN = t691 - DirName: CN = t692 - DirName: CN = t693 - DirName: CN = t694 - DirName: CN = t695 - DirName: CN = t696 - DirName: CN = t697 - DirName: CN = t698 - DirName: CN = t699 - DirName: CN = t700 - DirName: CN = t701 - DirName: CN = t702 - DirName: CN = t703 - DirName: CN = t704 - DirName: CN = t705 - DirName: CN = t706 - DirName: CN = t707 - DirName: CN = t708 - DirName: CN = t709 - DirName: CN = t710 - DirName: CN = t711 - DirName: CN = t712 - DirName: CN = t713 - DirName: CN = t714 - DirName: CN = t715 - DirName: CN = t716 - DirName: CN = t717 - DirName: CN = t718 - DirName: CN = t719 - DirName: CN = t720 - DirName: CN = t721 - DirName: CN = t722 - DirName: CN = t723 - DirName: CN = t724 - DirName: CN = t725 - DirName: CN = t726 - DirName: CN = t727 - DirName: CN = t728 - DirName: CN = t729 - DirName: CN = t730 - DirName: CN = t731 - DirName: CN = t732 - DirName: CN = t733 - DirName: CN = t734 - DirName: CN = t735 - DirName: CN = t736 - DirName: CN = t737 - DirName: CN = t738 - DirName: CN = t739 - DirName: CN = t740 - DirName: CN = t741 - DirName: CN = t742 - DirName: CN = t743 - DirName: CN = t744 - DirName: CN = t745 - DirName: CN = t746 - DirName: CN = t747 - DirName: CN = t748 - DirName: CN = t749 - DirName: CN = t750 - DirName: CN = t751 - DirName: CN = t752 - DirName: CN = t753 - DirName: CN = t754 - DirName: CN = t755 - DirName: CN = t756 - DirName: CN = t757 - DirName: CN = t758 - DirName: CN = t759 - DirName: CN = t760 - DirName: CN = t761 - DirName: CN = t762 - DirName: CN = t763 - DirName: CN = t764 - DirName: CN = t765 - DirName: CN = t766 - DirName: CN = t767 - DirName: CN = t768 - DirName: CN = t769 - DirName: CN = t770 - DirName: CN = t771 - DirName: CN = t772 - DirName: CN = t773 - DirName: CN = t774 - DirName: CN = t775 - DirName: CN = t776 - DirName: CN = t777 - DirName: CN = t778 - DirName: CN = t779 - DirName: CN = t780 - DirName: CN = t781 - DirName: CN = t782 - DirName: CN = t783 - DirName: CN = t784 - DirName: CN = t785 - DirName: CN = t786 - DirName: CN = t787 - DirName: CN = t788 - DirName: CN = t789 - DirName: CN = t790 - DirName: CN = t791 - DirName: CN = t792 - DirName: CN = t793 - DirName: CN = t794 - DirName: CN = t795 - DirName: CN = t796 - DirName: CN = t797 - DirName: CN = t798 - DirName: CN = t799 - DirName: CN = t800 - DirName: CN = t801 - DirName: CN = t802 - DirName: CN = t803 - DirName: CN = t804 - DirName: CN = t805 - DirName: CN = t806 - DirName: CN = t807 - DirName: CN = t808 - DirName: CN = t809 - DirName: CN = t810 - DirName: CN = t811 - DirName: CN = t812 - DirName: CN = t813 - DirName: CN = t814 - DirName: CN = t815 - DirName: CN = t816 - DirName: CN = t817 - DirName: CN = t818 - DirName: CN = t819 - DirName: CN = t820 - DirName: CN = t821 - DirName: CN = t822 - DirName: CN = t823 - DirName: CN = t824 - DirName: CN = t825 - DirName: CN = t826 - DirName: CN = t827 - DirName: CN = t828 - DirName: CN = t829 - DirName: CN = t830 - DirName: CN = t831 - DirName: CN = t832 - DirName: CN = t833 - DirName: CN = t834 - DirName: CN = t835 - DirName: CN = t836 - DirName: CN = t837 - DirName: CN = t838 - DirName: CN = t839 - DirName: CN = t840 - DirName: CN = t841 - DirName: CN = t842 - DirName: CN = t843 - DirName: CN = t844 - DirName: CN = t845 - DirName: CN = t846 - DirName: CN = t847 - DirName: CN = t848 - DirName: CN = t849 - DirName: CN = t850 - DirName: CN = t851 - DirName: CN = t852 - DirName: CN = t853 - DirName: CN = t854 - DirName: CN = t855 - DirName: CN = t856 - DirName: CN = t857 - DirName: CN = t858 - DirName: CN = t859 - DirName: CN = t860 - DirName: CN = t861 - DirName: CN = t862 - DirName: CN = t863 - DirName: CN = t864 - DirName: CN = t865 - DirName: CN = t866 - DirName: CN = t867 - DirName: CN = t868 - DirName: CN = t869 - DirName: CN = t870 - DirName: CN = t871 - DirName: CN = t872 - DirName: CN = t873 - DirName: CN = t874 - DirName: CN = t875 - DirName: CN = t876 - DirName: CN = t877 - DirName: CN = t878 - DirName: CN = t879 - DirName: CN = t880 - DirName: CN = t881 - DirName: CN = t882 - DirName: CN = t883 - DirName: CN = t884 - DirName: CN = t885 - DirName: CN = t886 - DirName: CN = t887 - DirName: CN = t888 - DirName: CN = t889 - DirName: CN = t890 - DirName: CN = t891 - DirName: CN = t892 - DirName: CN = t893 - DirName: CN = t894 - DirName: CN = t895 - DirName: CN = t896 - DirName: CN = t897 - DirName: CN = t898 - DirName: CN = t899 - DirName: CN = t900 - DirName: CN = t901 - DirName: CN = t902 - DirName: CN = t903 - DirName: CN = t904 - DirName: CN = t905 - DirName: CN = t906 - DirName: CN = t907 - DirName: CN = t908 - DirName: CN = t909 - DirName: CN = t910 - DirName: CN = t911 - DirName: CN = t912 - DirName: CN = t913 - DirName: CN = t914 - DirName: CN = t915 - DirName: CN = t916 - DirName: CN = t917 - DirName: CN = t918 - DirName: CN = t919 - DirName: CN = t920 - DirName: CN = t921 - DirName: CN = t922 - DirName: CN = t923 - DirName: CN = t924 - DirName: CN = t925 - DirName: CN = t926 - DirName: CN = t927 - DirName: CN = t928 - DirName: CN = t929 - DirName: CN = t930 - DirName: CN = t931 - DirName: CN = t932 - DirName: CN = t933 - DirName: CN = t934 - DirName: CN = t935 - DirName: CN = t936 - DirName: CN = t937 - DirName: CN = t938 - DirName: CN = t939 - DirName: CN = t940 - DirName: CN = t941 - DirName: CN = t942 - DirName: CN = t943 - DirName: CN = t944 - DirName: CN = t945 - DirName: CN = t946 - DirName: CN = t947 - DirName: CN = t948 - DirName: CN = t949 - DirName: CN = t950 - DirName: CN = t951 - DirName: CN = t952 - DirName: CN = t953 - DirName: CN = t954 - DirName: CN = t955 - DirName: CN = t956 - DirName: CN = t957 - DirName: CN = t958 - DirName: CN = t959 - DirName: CN = t960 - DirName: CN = t961 - DirName: CN = t962 - DirName: CN = t963 - DirName: CN = t964 - DirName: CN = t965 - DirName: CN = t966 - DirName: CN = t967 - DirName: CN = t968 - DirName: CN = t969 - DirName: CN = t970 - DirName: CN = t971 - DirName: CN = t972 - DirName: CN = t973 - DirName: CN = t974 - DirName: CN = t975 - DirName: CN = t976 - DirName: CN = t977 - DirName: CN = t978 - DirName: CN = t979 - DirName: CN = t980 - DirName: CN = t981 - DirName: CN = t982 - DirName: CN = t983 - DirName: CN = t984 - DirName: CN = t985 - DirName: CN = t986 - DirName: CN = t987 - DirName: CN = t988 - DirName: CN = t989 - DirName: CN = t990 - DirName: CN = t991 - DirName: CN = t992 - DirName: CN = t993 - DirName: CN = t994 - DirName: CN = t995 - DirName: CN = t996 - DirName: CN = t997 - DirName: CN = t998 - DirName: CN = t999 - DirName: CN = t1000 - DirName: CN = t1001 - DirName: CN = t1002 - DirName: CN = t1003 - DirName: CN = t1004 - DirName: CN = t1005 - DirName: CN = t1006 - DirName: CN = t1007 - DirName: CN = t1008 - DirName: CN = t1009 - DirName: CN = t1010 - DirName: CN = t1011 - DirName: CN = t1012 - DirName: CN = t1013 - DirName: CN = t1014 - DirName: CN = t1015 - DirName: CN = t1016 - DirName: CN = t1017 - DirName: CN = t1018 - DirName: CN = t1019 - DirName: CN = t1020 - DirName: CN = t1021 - DirName: CN = t1022 - DirName: CN = t1023 - DirName: CN = t1024 - - Signature Algorithm: sha256WithRSAEncryption - 12:ce:60:d6:3b:b5:7e:7a:8e:9e:d0:f5:fd:a8:8a:33:24:95: - 6d:79:56:24:23:12:10:8f:12:7c:e0:13:99:ba:6d:b9:b2:51: - b4:cc:50:2c:06:28:b8:d1:18:1a:16:e6:03:b4:7f:cd:b7:f6: - 06:7b:c2:77:97:52:76:8f:81:d1:f6:2c:08:e2:70:27:76:3f: - 90:a7:52:f3:15:f0:1f:40:97:99:fb:fa:9a:c1:eb:10:fa:a0: - 74:df:f1:df:8a:d2:4b:67:11:2f:5c:a9:52:78:69:e8:4b:21: - be:f2:a9:65:62:cc:0e:d9:59:8e:7a:ca:5f:01:41:d9:d2:e9: - 89:5f:bc:3c:8c:bb:4f:90:80:06:05:37:be:0c:1f:a8:56:82: - e7:92:2d:c5:89:56:d8:d4:86:9d:8a:bc:5e:43:d3:07:65:da: - d4:08:75:27:e5:49:0e:e9:f8:54:2b:7a:53:99:37:29:9b:ea: - 14:de:80:68:a9:79:26:5e:64:ff:21:6c:da:83:ef:8f:a4:df: - 3a:20:6e:5c:d3:68:48:82:ab:b9:ac:4a:28:b6:2f:35:14:98: - 54:16:a8:fa:ee:30:c3:ba:c5:2d:33:bc:32:ae:96:c6:8a:17: - 49:32:78:d4:61:29:66:7f:75:ae:16:2e:81:b2:b9:fa:56:b1: - d5:c6:9e:77 ------BEGIN CERTIFICATE----- -MIJXVzCCVj+gAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9v0wDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALs72wRuF+BUUrojdyS8NONw2ZmeU10zC6nMSx2uBicYjlW6 -rRLHHTJZbcMWINtipneAEuCHWFFV42Z/0eA6ImXlcCaiBATwXflfVsja6A9XKHdu -mqBKUzQaYzeiQ6sOSs0HI91Vg0QADHBB3zVk0MUOaofbyvw11eJbrwug5nWl0uFy -TiJjAUFzuJVQLP3tw2G2NtSDlWHD4GH/9J6K6Lrc0faJ7Z0wRJUn9NGL5i8UZlbx -2vHMBBt3kqWfWEAMnwwy1gXCTMDFn+WkMD1M6Z0DbEwGtuWVvSG45iuooL8Gu0Mz -GT17F1nxZE0kZ7FRDzWu8HF1ea5bAjQEMeNmhmUCAwEAAaOCVKEwglSdMB0GA1Ud -DgQWBBSSET+sEZbHZjfPg1ok8Dp3rzONfzAfBgNVHSMEGDAWgBS2wu+f0SnLD4mM -TFLUvUC3Ebdx3TA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAKGG2h0dHA6Ly91 -cmwtZm9yLWFpYS9Sb290LmNlcjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vdXJs -LWZvci1jcmwvUm9vdC5jcmwwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB -Af8wglPRBgNVHR4EglPIMIJTxKCCU8AwEaQPMA0xCzAJBgNVBAMMAnQwMBGkDzAN -MQswCQYDVQQDDAJ0MTARpA8wDTELMAkGA1UEAwwCdDIwEaQPMA0xCzAJBgNVBAMM -AnQzMBGkDzANMQswCQYDVQQDDAJ0NDARpA8wDTELMAkGA1UEAwwCdDUwEaQPMA0x -CzAJBgNVBAMMAnQ2MBGkDzANMQswCQYDVQQDDAJ0NzARpA8wDTELMAkGA1UEAwwC -dDgwEaQPMA0xCzAJBgNVBAMMAnQ5MBKkEDAOMQwwCgYDVQQDDAN0MTAwEqQQMA4x -DDAKBgNVBAMMA3QxMTASpBAwDjEMMAoGA1UEAwwDdDEyMBKkEDAOMQwwCgYDVQQD -DAN0MTMwEqQQMA4xDDAKBgNVBAMMA3QxNDASpBAwDjEMMAoGA1UEAwwDdDE1MBKk -EDAOMQwwCgYDVQQDDAN0MTYwEqQQMA4xDDAKBgNVBAMMA3QxNzASpBAwDjEMMAoG -A1UEAwwDdDE4MBKkEDAOMQwwCgYDVQQDDAN0MTkwEqQQMA4xDDAKBgNVBAMMA3Qy -MDASpBAwDjEMMAoGA1UEAwwDdDIxMBKkEDAOMQwwCgYDVQQDDAN0MjIwEqQQMA4x -DDAKBgNVBAMMA3QyMzASpBAwDjEMMAoGA1UEAwwDdDI0MBKkEDAOMQwwCgYDVQQD -DAN0MjUwEqQQMA4xDDAKBgNVBAMMA3QyNjASpBAwDjEMMAoGA1UEAwwDdDI3MBKk -EDAOMQwwCgYDVQQDDAN0MjgwEqQQMA4xDDAKBgNVBAMMA3QyOTASpBAwDjEMMAoG -A1UEAwwDdDMwMBKkEDAOMQwwCgYDVQQDDAN0MzEwEqQQMA4xDDAKBgNVBAMMA3Qz -MjASpBAwDjEMMAoGA1UEAwwDdDMzMBKkEDAOMQwwCgYDVQQDDAN0MzQwEqQQMA4x -DDAKBgNVBAMMA3QzNTASpBAwDjEMMAoGA1UEAwwDdDM2MBKkEDAOMQwwCgYDVQQD -DAN0MzcwEqQQMA4xDDAKBgNVBAMMA3QzODASpBAwDjEMMAoGA1UEAwwDdDM5MBKk -EDAOMQwwCgYDVQQDDAN0NDAwEqQQMA4xDDAKBgNVBAMMA3Q0MTASpBAwDjEMMAoG -A1UEAwwDdDQyMBKkEDAOMQwwCgYDVQQDDAN0NDMwEqQQMA4xDDAKBgNVBAMMA3Q0 -NDASpBAwDjEMMAoGA1UEAwwDdDQ1MBKkEDAOMQwwCgYDVQQDDAN0NDYwEqQQMA4x -DDAKBgNVBAMMA3Q0NzASpBAwDjEMMAoGA1UEAwwDdDQ4MBKkEDAOMQwwCgYDVQQD -DAN0NDkwEqQQMA4xDDAKBgNVBAMMA3Q1MDASpBAwDjEMMAoGA1UEAwwDdDUxMBKk -EDAOMQwwCgYDVQQDDAN0NTIwEqQQMA4xDDAKBgNVBAMMA3Q1MzASpBAwDjEMMAoG -A1UEAwwDdDU0MBKkEDAOMQwwCgYDVQQDDAN0NTUwEqQQMA4xDDAKBgNVBAMMA3Q1 -NjASpBAwDjEMMAoGA1UEAwwDdDU3MBKkEDAOMQwwCgYDVQQDDAN0NTgwEqQQMA4x -DDAKBgNVBAMMA3Q1OTASpBAwDjEMMAoGA1UEAwwDdDYwMBKkEDAOMQwwCgYDVQQD -DAN0NjEwEqQQMA4xDDAKBgNVBAMMA3Q2MjASpBAwDjEMMAoGA1UEAwwDdDYzMBKk -EDAOMQwwCgYDVQQDDAN0NjQwEqQQMA4xDDAKBgNVBAMMA3Q2NTASpBAwDjEMMAoG -A1UEAwwDdDY2MBKkEDAOMQwwCgYDVQQDDAN0NjcwEqQQMA4xDDAKBgNVBAMMA3Q2 -ODASpBAwDjEMMAoGA1UEAwwDdDY5MBKkEDAOMQwwCgYDVQQDDAN0NzAwEqQQMA4x -DDAKBgNVBAMMA3Q3MTASpBAwDjEMMAoGA1UEAwwDdDcyMBKkEDAOMQwwCgYDVQQD -DAN0NzMwEqQQMA4xDDAKBgNVBAMMA3Q3NDASpBAwDjEMMAoGA1UEAwwDdDc1MBKk -EDAOMQwwCgYDVQQDDAN0NzYwEqQQMA4xDDAKBgNVBAMMA3Q3NzASpBAwDjEMMAoG -A1UEAwwDdDc4MBKkEDAOMQwwCgYDVQQDDAN0NzkwEqQQMA4xDDAKBgNVBAMMA3Q4 -MDASpBAwDjEMMAoGA1UEAwwDdDgxMBKkEDAOMQwwCgYDVQQDDAN0ODIwEqQQMA4x -DDAKBgNVBAMMA3Q4MzASpBAwDjEMMAoGA1UEAwwDdDg0MBKkEDAOMQwwCgYDVQQD -DAN0ODUwEqQQMA4xDDAKBgNVBAMMA3Q4NjASpBAwDjEMMAoGA1UEAwwDdDg3MBKk -EDAOMQwwCgYDVQQDDAN0ODgwEqQQMA4xDDAKBgNVBAMMA3Q4OTASpBAwDjEMMAoG -A1UEAwwDdDkwMBKkEDAOMQwwCgYDVQQDDAN0OTEwEqQQMA4xDDAKBgNVBAMMA3Q5 -MjASpBAwDjEMMAoGA1UEAwwDdDkzMBKkEDAOMQwwCgYDVQQDDAN0OTQwEqQQMA4x -DDAKBgNVBAMMA3Q5NTASpBAwDjEMMAoGA1UEAwwDdDk2MBKkEDAOMQwwCgYDVQQD -DAN0OTcwEqQQMA4xDDAKBgNVBAMMA3Q5ODASpBAwDjEMMAoGA1UEAwwDdDk5MBOk -ETAPMQ0wCwYDVQQDDAR0MTAwMBOkETAPMQ0wCwYDVQQDDAR0MTAxMBOkETAPMQ0w -CwYDVQQDDAR0MTAyMBOkETAPMQ0wCwYDVQQDDAR0MTAzMBOkETAPMQ0wCwYDVQQD -DAR0MTA0MBOkETAPMQ0wCwYDVQQDDAR0MTA1MBOkETAPMQ0wCwYDVQQDDAR0MTA2 -MBOkETAPMQ0wCwYDVQQDDAR0MTA3MBOkETAPMQ0wCwYDVQQDDAR0MTA4MBOkETAP -MQ0wCwYDVQQDDAR0MTA5MBOkETAPMQ0wCwYDVQQDDAR0MTEwMBOkETAPMQ0wCwYD -VQQDDAR0MTExMBOkETAPMQ0wCwYDVQQDDAR0MTEyMBOkETAPMQ0wCwYDVQQDDAR0 -MTEzMBOkETAPMQ0wCwYDVQQDDAR0MTE0MBOkETAPMQ0wCwYDVQQDDAR0MTE1MBOk -ETAPMQ0wCwYDVQQDDAR0MTE2MBOkETAPMQ0wCwYDVQQDDAR0MTE3MBOkETAPMQ0w -CwYDVQQDDAR0MTE4MBOkETAPMQ0wCwYDVQQDDAR0MTE5MBOkETAPMQ0wCwYDVQQD -DAR0MTIwMBOkETAPMQ0wCwYDVQQDDAR0MTIxMBOkETAPMQ0wCwYDVQQDDAR0MTIy -MBOkETAPMQ0wCwYDVQQDDAR0MTIzMBOkETAPMQ0wCwYDVQQDDAR0MTI0MBOkETAP -MQ0wCwYDVQQDDAR0MTI1MBOkETAPMQ0wCwYDVQQDDAR0MTI2MBOkETAPMQ0wCwYD -VQQDDAR0MTI3MBOkETAPMQ0wCwYDVQQDDAR0MTI4MBOkETAPMQ0wCwYDVQQDDAR0 -MTI5MBOkETAPMQ0wCwYDVQQDDAR0MTMwMBOkETAPMQ0wCwYDVQQDDAR0MTMxMBOk -ETAPMQ0wCwYDVQQDDAR0MTMyMBOkETAPMQ0wCwYDVQQDDAR0MTMzMBOkETAPMQ0w -CwYDVQQDDAR0MTM0MBOkETAPMQ0wCwYDVQQDDAR0MTM1MBOkETAPMQ0wCwYDVQQD -DAR0MTM2MBOkETAPMQ0wCwYDVQQDDAR0MTM3MBOkETAPMQ0wCwYDVQQDDAR0MTM4 -MBOkETAPMQ0wCwYDVQQDDAR0MTM5MBOkETAPMQ0wCwYDVQQDDAR0MTQwMBOkETAP -MQ0wCwYDVQQDDAR0MTQxMBOkETAPMQ0wCwYDVQQDDAR0MTQyMBOkETAPMQ0wCwYD -VQQDDAR0MTQzMBOkETAPMQ0wCwYDVQQDDAR0MTQ0MBOkETAPMQ0wCwYDVQQDDAR0 -MTQ1MBOkETAPMQ0wCwYDVQQDDAR0MTQ2MBOkETAPMQ0wCwYDVQQDDAR0MTQ3MBOk -ETAPMQ0wCwYDVQQDDAR0MTQ4MBOkETAPMQ0wCwYDVQQDDAR0MTQ5MBOkETAPMQ0w -CwYDVQQDDAR0MTUwMBOkETAPMQ0wCwYDVQQDDAR0MTUxMBOkETAPMQ0wCwYDVQQD -DAR0MTUyMBOkETAPMQ0wCwYDVQQDDAR0MTUzMBOkETAPMQ0wCwYDVQQDDAR0MTU0 -MBOkETAPMQ0wCwYDVQQDDAR0MTU1MBOkETAPMQ0wCwYDVQQDDAR0MTU2MBOkETAP -MQ0wCwYDVQQDDAR0MTU3MBOkETAPMQ0wCwYDVQQDDAR0MTU4MBOkETAPMQ0wCwYD -VQQDDAR0MTU5MBOkETAPMQ0wCwYDVQQDDAR0MTYwMBOkETAPMQ0wCwYDVQQDDAR0 -MTYxMBOkETAPMQ0wCwYDVQQDDAR0MTYyMBOkETAPMQ0wCwYDVQQDDAR0MTYzMBOk -ETAPMQ0wCwYDVQQDDAR0MTY0MBOkETAPMQ0wCwYDVQQDDAR0MTY1MBOkETAPMQ0w -CwYDVQQDDAR0MTY2MBOkETAPMQ0wCwYDVQQDDAR0MTY3MBOkETAPMQ0wCwYDVQQD -DAR0MTY4MBOkETAPMQ0wCwYDVQQDDAR0MTY5MBOkETAPMQ0wCwYDVQQDDAR0MTcw -MBOkETAPMQ0wCwYDVQQDDAR0MTcxMBOkETAPMQ0wCwYDVQQDDAR0MTcyMBOkETAP -MQ0wCwYDVQQDDAR0MTczMBOkETAPMQ0wCwYDVQQDDAR0MTc0MBOkETAPMQ0wCwYD -VQQDDAR0MTc1MBOkETAPMQ0wCwYDVQQDDAR0MTc2MBOkETAPMQ0wCwYDVQQDDAR0 -MTc3MBOkETAPMQ0wCwYDVQQDDAR0MTc4MBOkETAPMQ0wCwYDVQQDDAR0MTc5MBOk -ETAPMQ0wCwYDVQQDDAR0MTgwMBOkETAPMQ0wCwYDVQQDDAR0MTgxMBOkETAPMQ0w -CwYDVQQDDAR0MTgyMBOkETAPMQ0wCwYDVQQDDAR0MTgzMBOkETAPMQ0wCwYDVQQD -DAR0MTg0MBOkETAPMQ0wCwYDVQQDDAR0MTg1MBOkETAPMQ0wCwYDVQQDDAR0MTg2 -MBOkETAPMQ0wCwYDVQQDDAR0MTg3MBOkETAPMQ0wCwYDVQQDDAR0MTg4MBOkETAP -MQ0wCwYDVQQDDAR0MTg5MBOkETAPMQ0wCwYDVQQDDAR0MTkwMBOkETAPMQ0wCwYD -VQQDDAR0MTkxMBOkETAPMQ0wCwYDVQQDDAR0MTkyMBOkETAPMQ0wCwYDVQQDDAR0 -MTkzMBOkETAPMQ0wCwYDVQQDDAR0MTk0MBOkETAPMQ0wCwYDVQQDDAR0MTk1MBOk -ETAPMQ0wCwYDVQQDDAR0MTk2MBOkETAPMQ0wCwYDVQQDDAR0MTk3MBOkETAPMQ0w -CwYDVQQDDAR0MTk4MBOkETAPMQ0wCwYDVQQDDAR0MTk5MBOkETAPMQ0wCwYDVQQD -DAR0MjAwMBOkETAPMQ0wCwYDVQQDDAR0MjAxMBOkETAPMQ0wCwYDVQQDDAR0MjAy -MBOkETAPMQ0wCwYDVQQDDAR0MjAzMBOkETAPMQ0wCwYDVQQDDAR0MjA0MBOkETAP -MQ0wCwYDVQQDDAR0MjA1MBOkETAPMQ0wCwYDVQQDDAR0MjA2MBOkETAPMQ0wCwYD -VQQDDAR0MjA3MBOkETAPMQ0wCwYDVQQDDAR0MjA4MBOkETAPMQ0wCwYDVQQDDAR0 -MjA5MBOkETAPMQ0wCwYDVQQDDAR0MjEwMBOkETAPMQ0wCwYDVQQDDAR0MjExMBOk -ETAPMQ0wCwYDVQQDDAR0MjEyMBOkETAPMQ0wCwYDVQQDDAR0MjEzMBOkETAPMQ0w -CwYDVQQDDAR0MjE0MBOkETAPMQ0wCwYDVQQDDAR0MjE1MBOkETAPMQ0wCwYDVQQD -DAR0MjE2MBOkETAPMQ0wCwYDVQQDDAR0MjE3MBOkETAPMQ0wCwYDVQQDDAR0MjE4 -MBOkETAPMQ0wCwYDVQQDDAR0MjE5MBOkETAPMQ0wCwYDVQQDDAR0MjIwMBOkETAP -MQ0wCwYDVQQDDAR0MjIxMBOkETAPMQ0wCwYDVQQDDAR0MjIyMBOkETAPMQ0wCwYD -VQQDDAR0MjIzMBOkETAPMQ0wCwYDVQQDDAR0MjI0MBOkETAPMQ0wCwYDVQQDDAR0 -MjI1MBOkETAPMQ0wCwYDVQQDDAR0MjI2MBOkETAPMQ0wCwYDVQQDDAR0MjI3MBOk -ETAPMQ0wCwYDVQQDDAR0MjI4MBOkETAPMQ0wCwYDVQQDDAR0MjI5MBOkETAPMQ0w -CwYDVQQDDAR0MjMwMBOkETAPMQ0wCwYDVQQDDAR0MjMxMBOkETAPMQ0wCwYDVQQD -DAR0MjMyMBOkETAPMQ0wCwYDVQQDDAR0MjMzMBOkETAPMQ0wCwYDVQQDDAR0MjM0 -MBOkETAPMQ0wCwYDVQQDDAR0MjM1MBOkETAPMQ0wCwYDVQQDDAR0MjM2MBOkETAP -MQ0wCwYDVQQDDAR0MjM3MBOkETAPMQ0wCwYDVQQDDAR0MjM4MBOkETAPMQ0wCwYD -VQQDDAR0MjM5MBOkETAPMQ0wCwYDVQQDDAR0MjQwMBOkETAPMQ0wCwYDVQQDDAR0 -MjQxMBOkETAPMQ0wCwYDVQQDDAR0MjQyMBOkETAPMQ0wCwYDVQQDDAR0MjQzMBOk -ETAPMQ0wCwYDVQQDDAR0MjQ0MBOkETAPMQ0wCwYDVQQDDAR0MjQ1MBOkETAPMQ0w -CwYDVQQDDAR0MjQ2MBOkETAPMQ0wCwYDVQQDDAR0MjQ3MBOkETAPMQ0wCwYDVQQD -DAR0MjQ4MBOkETAPMQ0wCwYDVQQDDAR0MjQ5MBOkETAPMQ0wCwYDVQQDDAR0MjUw -MBOkETAPMQ0wCwYDVQQDDAR0MjUxMBOkETAPMQ0wCwYDVQQDDAR0MjUyMBOkETAP -MQ0wCwYDVQQDDAR0MjUzMBOkETAPMQ0wCwYDVQQDDAR0MjU0MBOkETAPMQ0wCwYD -VQQDDAR0MjU1MBOkETAPMQ0wCwYDVQQDDAR0MjU2MBOkETAPMQ0wCwYDVQQDDAR0 -MjU3MBOkETAPMQ0wCwYDVQQDDAR0MjU4MBOkETAPMQ0wCwYDVQQDDAR0MjU5MBOk -ETAPMQ0wCwYDVQQDDAR0MjYwMBOkETAPMQ0wCwYDVQQDDAR0MjYxMBOkETAPMQ0w -CwYDVQQDDAR0MjYyMBOkETAPMQ0wCwYDVQQDDAR0MjYzMBOkETAPMQ0wCwYDVQQD -DAR0MjY0MBOkETAPMQ0wCwYDVQQDDAR0MjY1MBOkETAPMQ0wCwYDVQQDDAR0MjY2 -MBOkETAPMQ0wCwYDVQQDDAR0MjY3MBOkETAPMQ0wCwYDVQQDDAR0MjY4MBOkETAP -MQ0wCwYDVQQDDAR0MjY5MBOkETAPMQ0wCwYDVQQDDAR0MjcwMBOkETAPMQ0wCwYD -VQQDDAR0MjcxMBOkETAPMQ0wCwYDVQQDDAR0MjcyMBOkETAPMQ0wCwYDVQQDDAR0 -MjczMBOkETAPMQ0wCwYDVQQDDAR0Mjc0MBOkETAPMQ0wCwYDVQQDDAR0Mjc1MBOk -ETAPMQ0wCwYDVQQDDAR0Mjc2MBOkETAPMQ0wCwYDVQQDDAR0Mjc3MBOkETAPMQ0w -CwYDVQQDDAR0Mjc4MBOkETAPMQ0wCwYDVQQDDAR0Mjc5MBOkETAPMQ0wCwYDVQQD -DAR0MjgwMBOkETAPMQ0wCwYDVQQDDAR0MjgxMBOkETAPMQ0wCwYDVQQDDAR0Mjgy -MBOkETAPMQ0wCwYDVQQDDAR0MjgzMBOkETAPMQ0wCwYDVQQDDAR0Mjg0MBOkETAP -MQ0wCwYDVQQDDAR0Mjg1MBOkETAPMQ0wCwYDVQQDDAR0Mjg2MBOkETAPMQ0wCwYD -VQQDDAR0Mjg3MBOkETAPMQ0wCwYDVQQDDAR0Mjg4MBOkETAPMQ0wCwYDVQQDDAR0 -Mjg5MBOkETAPMQ0wCwYDVQQDDAR0MjkwMBOkETAPMQ0wCwYDVQQDDAR0MjkxMBOk -ETAPMQ0wCwYDVQQDDAR0MjkyMBOkETAPMQ0wCwYDVQQDDAR0MjkzMBOkETAPMQ0w -CwYDVQQDDAR0Mjk0MBOkETAPMQ0wCwYDVQQDDAR0Mjk1MBOkETAPMQ0wCwYDVQQD -DAR0Mjk2MBOkETAPMQ0wCwYDVQQDDAR0Mjk3MBOkETAPMQ0wCwYDVQQDDAR0Mjk4 -MBOkETAPMQ0wCwYDVQQDDAR0Mjk5MBOkETAPMQ0wCwYDVQQDDAR0MzAwMBOkETAP -MQ0wCwYDVQQDDAR0MzAxMBOkETAPMQ0wCwYDVQQDDAR0MzAyMBOkETAPMQ0wCwYD -VQQDDAR0MzAzMBOkETAPMQ0wCwYDVQQDDAR0MzA0MBOkETAPMQ0wCwYDVQQDDAR0 -MzA1MBOkETAPMQ0wCwYDVQQDDAR0MzA2MBOkETAPMQ0wCwYDVQQDDAR0MzA3MBOk -ETAPMQ0wCwYDVQQDDAR0MzA4MBOkETAPMQ0wCwYDVQQDDAR0MzA5MBOkETAPMQ0w -CwYDVQQDDAR0MzEwMBOkETAPMQ0wCwYDVQQDDAR0MzExMBOkETAPMQ0wCwYDVQQD -DAR0MzEyMBOkETAPMQ0wCwYDVQQDDAR0MzEzMBOkETAPMQ0wCwYDVQQDDAR0MzE0 -MBOkETAPMQ0wCwYDVQQDDAR0MzE1MBOkETAPMQ0wCwYDVQQDDAR0MzE2MBOkETAP -MQ0wCwYDVQQDDAR0MzE3MBOkETAPMQ0wCwYDVQQDDAR0MzE4MBOkETAPMQ0wCwYD -VQQDDAR0MzE5MBOkETAPMQ0wCwYDVQQDDAR0MzIwMBOkETAPMQ0wCwYDVQQDDAR0 -MzIxMBOkETAPMQ0wCwYDVQQDDAR0MzIyMBOkETAPMQ0wCwYDVQQDDAR0MzIzMBOk -ETAPMQ0wCwYDVQQDDAR0MzI0MBOkETAPMQ0wCwYDVQQDDAR0MzI1MBOkETAPMQ0w -CwYDVQQDDAR0MzI2MBOkETAPMQ0wCwYDVQQDDAR0MzI3MBOkETAPMQ0wCwYDVQQD -DAR0MzI4MBOkETAPMQ0wCwYDVQQDDAR0MzI5MBOkETAPMQ0wCwYDVQQDDAR0MzMw -MBOkETAPMQ0wCwYDVQQDDAR0MzMxMBOkETAPMQ0wCwYDVQQDDAR0MzMyMBOkETAP -MQ0wCwYDVQQDDAR0MzMzMBOkETAPMQ0wCwYDVQQDDAR0MzM0MBOkETAPMQ0wCwYD -VQQDDAR0MzM1MBOkETAPMQ0wCwYDVQQDDAR0MzM2MBOkETAPMQ0wCwYDVQQDDAR0 -MzM3MBOkETAPMQ0wCwYDVQQDDAR0MzM4MBOkETAPMQ0wCwYDVQQDDAR0MzM5MBOk -ETAPMQ0wCwYDVQQDDAR0MzQwMBOkETAPMQ0wCwYDVQQDDAR0MzQxMBOkETAPMQ0w -CwYDVQQDDAR0MzQyMBOkETAPMQ0wCwYDVQQDDAR0MzQzMBOkETAPMQ0wCwYDVQQD -DAR0MzQ0MBOkETAPMQ0wCwYDVQQDDAR0MzQ1MBOkETAPMQ0wCwYDVQQDDAR0MzQ2 -MBOkETAPMQ0wCwYDVQQDDAR0MzQ3MBOkETAPMQ0wCwYDVQQDDAR0MzQ4MBOkETAP -MQ0wCwYDVQQDDAR0MzQ5MBOkETAPMQ0wCwYDVQQDDAR0MzUwMBOkETAPMQ0wCwYD -VQQDDAR0MzUxMBOkETAPMQ0wCwYDVQQDDAR0MzUyMBOkETAPMQ0wCwYDVQQDDAR0 -MzUzMBOkETAPMQ0wCwYDVQQDDAR0MzU0MBOkETAPMQ0wCwYDVQQDDAR0MzU1MBOk -ETAPMQ0wCwYDVQQDDAR0MzU2MBOkETAPMQ0wCwYDVQQDDAR0MzU3MBOkETAPMQ0w -CwYDVQQDDAR0MzU4MBOkETAPMQ0wCwYDVQQDDAR0MzU5MBOkETAPMQ0wCwYDVQQD -DAR0MzYwMBOkETAPMQ0wCwYDVQQDDAR0MzYxMBOkETAPMQ0wCwYDVQQDDAR0MzYy -MBOkETAPMQ0wCwYDVQQDDAR0MzYzMBOkETAPMQ0wCwYDVQQDDAR0MzY0MBOkETAP -MQ0wCwYDVQQDDAR0MzY1MBOkETAPMQ0wCwYDVQQDDAR0MzY2MBOkETAPMQ0wCwYD -VQQDDAR0MzY3MBOkETAPMQ0wCwYDVQQDDAR0MzY4MBOkETAPMQ0wCwYDVQQDDAR0 -MzY5MBOkETAPMQ0wCwYDVQQDDAR0MzcwMBOkETAPMQ0wCwYDVQQDDAR0MzcxMBOk -ETAPMQ0wCwYDVQQDDAR0MzcyMBOkETAPMQ0wCwYDVQQDDAR0MzczMBOkETAPMQ0w -CwYDVQQDDAR0Mzc0MBOkETAPMQ0wCwYDVQQDDAR0Mzc1MBOkETAPMQ0wCwYDVQQD -DAR0Mzc2MBOkETAPMQ0wCwYDVQQDDAR0Mzc3MBOkETAPMQ0wCwYDVQQDDAR0Mzc4 -MBOkETAPMQ0wCwYDVQQDDAR0Mzc5MBOkETAPMQ0wCwYDVQQDDAR0MzgwMBOkETAP -MQ0wCwYDVQQDDAR0MzgxMBOkETAPMQ0wCwYDVQQDDAR0MzgyMBOkETAPMQ0wCwYD -VQQDDAR0MzgzMBOkETAPMQ0wCwYDVQQDDAR0Mzg0MBOkETAPMQ0wCwYDVQQDDAR0 -Mzg1MBOkETAPMQ0wCwYDVQQDDAR0Mzg2MBOkETAPMQ0wCwYDVQQDDAR0Mzg3MBOk -ETAPMQ0wCwYDVQQDDAR0Mzg4MBOkETAPMQ0wCwYDVQQDDAR0Mzg5MBOkETAPMQ0w -CwYDVQQDDAR0MzkwMBOkETAPMQ0wCwYDVQQDDAR0MzkxMBOkETAPMQ0wCwYDVQQD -DAR0MzkyMBOkETAPMQ0wCwYDVQQDDAR0MzkzMBOkETAPMQ0wCwYDVQQDDAR0Mzk0 -MBOkETAPMQ0wCwYDVQQDDAR0Mzk1MBOkETAPMQ0wCwYDVQQDDAR0Mzk2MBOkETAP -MQ0wCwYDVQQDDAR0Mzk3MBOkETAPMQ0wCwYDVQQDDAR0Mzk4MBOkETAPMQ0wCwYD -VQQDDAR0Mzk5MBOkETAPMQ0wCwYDVQQDDAR0NDAwMBOkETAPMQ0wCwYDVQQDDAR0 -NDAxMBOkETAPMQ0wCwYDVQQDDAR0NDAyMBOkETAPMQ0wCwYDVQQDDAR0NDAzMBOk -ETAPMQ0wCwYDVQQDDAR0NDA0MBOkETAPMQ0wCwYDVQQDDAR0NDA1MBOkETAPMQ0w -CwYDVQQDDAR0NDA2MBOkETAPMQ0wCwYDVQQDDAR0NDA3MBOkETAPMQ0wCwYDVQQD -DAR0NDA4MBOkETAPMQ0wCwYDVQQDDAR0NDA5MBOkETAPMQ0wCwYDVQQDDAR0NDEw -MBOkETAPMQ0wCwYDVQQDDAR0NDExMBOkETAPMQ0wCwYDVQQDDAR0NDEyMBOkETAP -MQ0wCwYDVQQDDAR0NDEzMBOkETAPMQ0wCwYDVQQDDAR0NDE0MBOkETAPMQ0wCwYD -VQQDDAR0NDE1MBOkETAPMQ0wCwYDVQQDDAR0NDE2MBOkETAPMQ0wCwYDVQQDDAR0 -NDE3MBOkETAPMQ0wCwYDVQQDDAR0NDE4MBOkETAPMQ0wCwYDVQQDDAR0NDE5MBOk -ETAPMQ0wCwYDVQQDDAR0NDIwMBOkETAPMQ0wCwYDVQQDDAR0NDIxMBOkETAPMQ0w -CwYDVQQDDAR0NDIyMBOkETAPMQ0wCwYDVQQDDAR0NDIzMBOkETAPMQ0wCwYDVQQD -DAR0NDI0MBOkETAPMQ0wCwYDVQQDDAR0NDI1MBOkETAPMQ0wCwYDVQQDDAR0NDI2 -MBOkETAPMQ0wCwYDVQQDDAR0NDI3MBOkETAPMQ0wCwYDVQQDDAR0NDI4MBOkETAP -MQ0wCwYDVQQDDAR0NDI5MBOkETAPMQ0wCwYDVQQDDAR0NDMwMBOkETAPMQ0wCwYD -VQQDDAR0NDMxMBOkETAPMQ0wCwYDVQQDDAR0NDMyMBOkETAPMQ0wCwYDVQQDDAR0 -NDMzMBOkETAPMQ0wCwYDVQQDDAR0NDM0MBOkETAPMQ0wCwYDVQQDDAR0NDM1MBOk -ETAPMQ0wCwYDVQQDDAR0NDM2MBOkETAPMQ0wCwYDVQQDDAR0NDM3MBOkETAPMQ0w -CwYDVQQDDAR0NDM4MBOkETAPMQ0wCwYDVQQDDAR0NDM5MBOkETAPMQ0wCwYDVQQD -DAR0NDQwMBOkETAPMQ0wCwYDVQQDDAR0NDQxMBOkETAPMQ0wCwYDVQQDDAR0NDQy -MBOkETAPMQ0wCwYDVQQDDAR0NDQzMBOkETAPMQ0wCwYDVQQDDAR0NDQ0MBOkETAP -MQ0wCwYDVQQDDAR0NDQ1MBOkETAPMQ0wCwYDVQQDDAR0NDQ2MBOkETAPMQ0wCwYD -VQQDDAR0NDQ3MBOkETAPMQ0wCwYDVQQDDAR0NDQ4MBOkETAPMQ0wCwYDVQQDDAR0 -NDQ5MBOkETAPMQ0wCwYDVQQDDAR0NDUwMBOkETAPMQ0wCwYDVQQDDAR0NDUxMBOk -ETAPMQ0wCwYDVQQDDAR0NDUyMBOkETAPMQ0wCwYDVQQDDAR0NDUzMBOkETAPMQ0w -CwYDVQQDDAR0NDU0MBOkETAPMQ0wCwYDVQQDDAR0NDU1MBOkETAPMQ0wCwYDVQQD -DAR0NDU2MBOkETAPMQ0wCwYDVQQDDAR0NDU3MBOkETAPMQ0wCwYDVQQDDAR0NDU4 -MBOkETAPMQ0wCwYDVQQDDAR0NDU5MBOkETAPMQ0wCwYDVQQDDAR0NDYwMBOkETAP -MQ0wCwYDVQQDDAR0NDYxMBOkETAPMQ0wCwYDVQQDDAR0NDYyMBOkETAPMQ0wCwYD -VQQDDAR0NDYzMBOkETAPMQ0wCwYDVQQDDAR0NDY0MBOkETAPMQ0wCwYDVQQDDAR0 -NDY1MBOkETAPMQ0wCwYDVQQDDAR0NDY2MBOkETAPMQ0wCwYDVQQDDAR0NDY3MBOk -ETAPMQ0wCwYDVQQDDAR0NDY4MBOkETAPMQ0wCwYDVQQDDAR0NDY5MBOkETAPMQ0w -CwYDVQQDDAR0NDcwMBOkETAPMQ0wCwYDVQQDDAR0NDcxMBOkETAPMQ0wCwYDVQQD -DAR0NDcyMBOkETAPMQ0wCwYDVQQDDAR0NDczMBOkETAPMQ0wCwYDVQQDDAR0NDc0 -MBOkETAPMQ0wCwYDVQQDDAR0NDc1MBOkETAPMQ0wCwYDVQQDDAR0NDc2MBOkETAP -MQ0wCwYDVQQDDAR0NDc3MBOkETAPMQ0wCwYDVQQDDAR0NDc4MBOkETAPMQ0wCwYD -VQQDDAR0NDc5MBOkETAPMQ0wCwYDVQQDDAR0NDgwMBOkETAPMQ0wCwYDVQQDDAR0 -NDgxMBOkETAPMQ0wCwYDVQQDDAR0NDgyMBOkETAPMQ0wCwYDVQQDDAR0NDgzMBOk -ETAPMQ0wCwYDVQQDDAR0NDg0MBOkETAPMQ0wCwYDVQQDDAR0NDg1MBOkETAPMQ0w -CwYDVQQDDAR0NDg2MBOkETAPMQ0wCwYDVQQDDAR0NDg3MBOkETAPMQ0wCwYDVQQD -DAR0NDg4MBOkETAPMQ0wCwYDVQQDDAR0NDg5MBOkETAPMQ0wCwYDVQQDDAR0NDkw -MBOkETAPMQ0wCwYDVQQDDAR0NDkxMBOkETAPMQ0wCwYDVQQDDAR0NDkyMBOkETAP -MQ0wCwYDVQQDDAR0NDkzMBOkETAPMQ0wCwYDVQQDDAR0NDk0MBOkETAPMQ0wCwYD -VQQDDAR0NDk1MBOkETAPMQ0wCwYDVQQDDAR0NDk2MBOkETAPMQ0wCwYDVQQDDAR0 -NDk3MBOkETAPMQ0wCwYDVQQDDAR0NDk4MBOkETAPMQ0wCwYDVQQDDAR0NDk5MBOk -ETAPMQ0wCwYDVQQDDAR0NTAwMBOkETAPMQ0wCwYDVQQDDAR0NTAxMBOkETAPMQ0w -CwYDVQQDDAR0NTAyMBOkETAPMQ0wCwYDVQQDDAR0NTAzMBOkETAPMQ0wCwYDVQQD -DAR0NTA0MBOkETAPMQ0wCwYDVQQDDAR0NTA1MBOkETAPMQ0wCwYDVQQDDAR0NTA2 -MBOkETAPMQ0wCwYDVQQDDAR0NTA3MBOkETAPMQ0wCwYDVQQDDAR0NTA4MBOkETAP -MQ0wCwYDVQQDDAR0NTA5MBOkETAPMQ0wCwYDVQQDDAR0NTEwMBOkETAPMQ0wCwYD -VQQDDAR0NTExMBOkETAPMQ0wCwYDVQQDDAR0NTEyMBOkETAPMQ0wCwYDVQQDDAR0 -NTEzMBOkETAPMQ0wCwYDVQQDDAR0NTE0MBOkETAPMQ0wCwYDVQQDDAR0NTE1MBOk -ETAPMQ0wCwYDVQQDDAR0NTE2MBOkETAPMQ0wCwYDVQQDDAR0NTE3MBOkETAPMQ0w -CwYDVQQDDAR0NTE4MBOkETAPMQ0wCwYDVQQDDAR0NTE5MBOkETAPMQ0wCwYDVQQD -DAR0NTIwMBOkETAPMQ0wCwYDVQQDDAR0NTIxMBOkETAPMQ0wCwYDVQQDDAR0NTIy -MBOkETAPMQ0wCwYDVQQDDAR0NTIzMBOkETAPMQ0wCwYDVQQDDAR0NTI0MBOkETAP -MQ0wCwYDVQQDDAR0NTI1MBOkETAPMQ0wCwYDVQQDDAR0NTI2MBOkETAPMQ0wCwYD -VQQDDAR0NTI3MBOkETAPMQ0wCwYDVQQDDAR0NTI4MBOkETAPMQ0wCwYDVQQDDAR0 -NTI5MBOkETAPMQ0wCwYDVQQDDAR0NTMwMBOkETAPMQ0wCwYDVQQDDAR0NTMxMBOk -ETAPMQ0wCwYDVQQDDAR0NTMyMBOkETAPMQ0wCwYDVQQDDAR0NTMzMBOkETAPMQ0w -CwYDVQQDDAR0NTM0MBOkETAPMQ0wCwYDVQQDDAR0NTM1MBOkETAPMQ0wCwYDVQQD -DAR0NTM2MBOkETAPMQ0wCwYDVQQDDAR0NTM3MBOkETAPMQ0wCwYDVQQDDAR0NTM4 -MBOkETAPMQ0wCwYDVQQDDAR0NTM5MBOkETAPMQ0wCwYDVQQDDAR0NTQwMBOkETAP -MQ0wCwYDVQQDDAR0NTQxMBOkETAPMQ0wCwYDVQQDDAR0NTQyMBOkETAPMQ0wCwYD -VQQDDAR0NTQzMBOkETAPMQ0wCwYDVQQDDAR0NTQ0MBOkETAPMQ0wCwYDVQQDDAR0 -NTQ1MBOkETAPMQ0wCwYDVQQDDAR0NTQ2MBOkETAPMQ0wCwYDVQQDDAR0NTQ3MBOk -ETAPMQ0wCwYDVQQDDAR0NTQ4MBOkETAPMQ0wCwYDVQQDDAR0NTQ5MBOkETAPMQ0w -CwYDVQQDDAR0NTUwMBOkETAPMQ0wCwYDVQQDDAR0NTUxMBOkETAPMQ0wCwYDVQQD -DAR0NTUyMBOkETAPMQ0wCwYDVQQDDAR0NTUzMBOkETAPMQ0wCwYDVQQDDAR0NTU0 -MBOkETAPMQ0wCwYDVQQDDAR0NTU1MBOkETAPMQ0wCwYDVQQDDAR0NTU2MBOkETAP -MQ0wCwYDVQQDDAR0NTU3MBOkETAPMQ0wCwYDVQQDDAR0NTU4MBOkETAPMQ0wCwYD -VQQDDAR0NTU5MBOkETAPMQ0wCwYDVQQDDAR0NTYwMBOkETAPMQ0wCwYDVQQDDAR0 -NTYxMBOkETAPMQ0wCwYDVQQDDAR0NTYyMBOkETAPMQ0wCwYDVQQDDAR0NTYzMBOk -ETAPMQ0wCwYDVQQDDAR0NTY0MBOkETAPMQ0wCwYDVQQDDAR0NTY1MBOkETAPMQ0w -CwYDVQQDDAR0NTY2MBOkETAPMQ0wCwYDVQQDDAR0NTY3MBOkETAPMQ0wCwYDVQQD -DAR0NTY4MBOkETAPMQ0wCwYDVQQDDAR0NTY5MBOkETAPMQ0wCwYDVQQDDAR0NTcw -MBOkETAPMQ0wCwYDVQQDDAR0NTcxMBOkETAPMQ0wCwYDVQQDDAR0NTcyMBOkETAP -MQ0wCwYDVQQDDAR0NTczMBOkETAPMQ0wCwYDVQQDDAR0NTc0MBOkETAPMQ0wCwYD -VQQDDAR0NTc1MBOkETAPMQ0wCwYDVQQDDAR0NTc2MBOkETAPMQ0wCwYDVQQDDAR0 -NTc3MBOkETAPMQ0wCwYDVQQDDAR0NTc4MBOkETAPMQ0wCwYDVQQDDAR0NTc5MBOk -ETAPMQ0wCwYDVQQDDAR0NTgwMBOkETAPMQ0wCwYDVQQDDAR0NTgxMBOkETAPMQ0w -CwYDVQQDDAR0NTgyMBOkETAPMQ0wCwYDVQQDDAR0NTgzMBOkETAPMQ0wCwYDVQQD -DAR0NTg0MBOkETAPMQ0wCwYDVQQDDAR0NTg1MBOkETAPMQ0wCwYDVQQDDAR0NTg2 -MBOkETAPMQ0wCwYDVQQDDAR0NTg3MBOkETAPMQ0wCwYDVQQDDAR0NTg4MBOkETAP -MQ0wCwYDVQQDDAR0NTg5MBOkETAPMQ0wCwYDVQQDDAR0NTkwMBOkETAPMQ0wCwYD -VQQDDAR0NTkxMBOkETAPMQ0wCwYDVQQDDAR0NTkyMBOkETAPMQ0wCwYDVQQDDAR0 -NTkzMBOkETAPMQ0wCwYDVQQDDAR0NTk0MBOkETAPMQ0wCwYDVQQDDAR0NTk1MBOk -ETAPMQ0wCwYDVQQDDAR0NTk2MBOkETAPMQ0wCwYDVQQDDAR0NTk3MBOkETAPMQ0w -CwYDVQQDDAR0NTk4MBOkETAPMQ0wCwYDVQQDDAR0NTk5MBOkETAPMQ0wCwYDVQQD -DAR0NjAwMBOkETAPMQ0wCwYDVQQDDAR0NjAxMBOkETAPMQ0wCwYDVQQDDAR0NjAy -MBOkETAPMQ0wCwYDVQQDDAR0NjAzMBOkETAPMQ0wCwYDVQQDDAR0NjA0MBOkETAP -MQ0wCwYDVQQDDAR0NjA1MBOkETAPMQ0wCwYDVQQDDAR0NjA2MBOkETAPMQ0wCwYD -VQQDDAR0NjA3MBOkETAPMQ0wCwYDVQQDDAR0NjA4MBOkETAPMQ0wCwYDVQQDDAR0 -NjA5MBOkETAPMQ0wCwYDVQQDDAR0NjEwMBOkETAPMQ0wCwYDVQQDDAR0NjExMBOk -ETAPMQ0wCwYDVQQDDAR0NjEyMBOkETAPMQ0wCwYDVQQDDAR0NjEzMBOkETAPMQ0w -CwYDVQQDDAR0NjE0MBOkETAPMQ0wCwYDVQQDDAR0NjE1MBOkETAPMQ0wCwYDVQQD -DAR0NjE2MBOkETAPMQ0wCwYDVQQDDAR0NjE3MBOkETAPMQ0wCwYDVQQDDAR0NjE4 -MBOkETAPMQ0wCwYDVQQDDAR0NjE5MBOkETAPMQ0wCwYDVQQDDAR0NjIwMBOkETAP -MQ0wCwYDVQQDDAR0NjIxMBOkETAPMQ0wCwYDVQQDDAR0NjIyMBOkETAPMQ0wCwYD -VQQDDAR0NjIzMBOkETAPMQ0wCwYDVQQDDAR0NjI0MBOkETAPMQ0wCwYDVQQDDAR0 -NjI1MBOkETAPMQ0wCwYDVQQDDAR0NjI2MBOkETAPMQ0wCwYDVQQDDAR0NjI3MBOk -ETAPMQ0wCwYDVQQDDAR0NjI4MBOkETAPMQ0wCwYDVQQDDAR0NjI5MBOkETAPMQ0w -CwYDVQQDDAR0NjMwMBOkETAPMQ0wCwYDVQQDDAR0NjMxMBOkETAPMQ0wCwYDVQQD -DAR0NjMyMBOkETAPMQ0wCwYDVQQDDAR0NjMzMBOkETAPMQ0wCwYDVQQDDAR0NjM0 -MBOkETAPMQ0wCwYDVQQDDAR0NjM1MBOkETAPMQ0wCwYDVQQDDAR0NjM2MBOkETAP -MQ0wCwYDVQQDDAR0NjM3MBOkETAPMQ0wCwYDVQQDDAR0NjM4MBOkETAPMQ0wCwYD -VQQDDAR0NjM5MBOkETAPMQ0wCwYDVQQDDAR0NjQwMBOkETAPMQ0wCwYDVQQDDAR0 -NjQxMBOkETAPMQ0wCwYDVQQDDAR0NjQyMBOkETAPMQ0wCwYDVQQDDAR0NjQzMBOk -ETAPMQ0wCwYDVQQDDAR0NjQ0MBOkETAPMQ0wCwYDVQQDDAR0NjQ1MBOkETAPMQ0w -CwYDVQQDDAR0NjQ2MBOkETAPMQ0wCwYDVQQDDAR0NjQ3MBOkETAPMQ0wCwYDVQQD -DAR0NjQ4MBOkETAPMQ0wCwYDVQQDDAR0NjQ5MBOkETAPMQ0wCwYDVQQDDAR0NjUw -MBOkETAPMQ0wCwYDVQQDDAR0NjUxMBOkETAPMQ0wCwYDVQQDDAR0NjUyMBOkETAP -MQ0wCwYDVQQDDAR0NjUzMBOkETAPMQ0wCwYDVQQDDAR0NjU0MBOkETAPMQ0wCwYD -VQQDDAR0NjU1MBOkETAPMQ0wCwYDVQQDDAR0NjU2MBOkETAPMQ0wCwYDVQQDDAR0 -NjU3MBOkETAPMQ0wCwYDVQQDDAR0NjU4MBOkETAPMQ0wCwYDVQQDDAR0NjU5MBOk -ETAPMQ0wCwYDVQQDDAR0NjYwMBOkETAPMQ0wCwYDVQQDDAR0NjYxMBOkETAPMQ0w -CwYDVQQDDAR0NjYyMBOkETAPMQ0wCwYDVQQDDAR0NjYzMBOkETAPMQ0wCwYDVQQD -DAR0NjY0MBOkETAPMQ0wCwYDVQQDDAR0NjY1MBOkETAPMQ0wCwYDVQQDDAR0NjY2 -MBOkETAPMQ0wCwYDVQQDDAR0NjY3MBOkETAPMQ0wCwYDVQQDDAR0NjY4MBOkETAP -MQ0wCwYDVQQDDAR0NjY5MBOkETAPMQ0wCwYDVQQDDAR0NjcwMBOkETAPMQ0wCwYD -VQQDDAR0NjcxMBOkETAPMQ0wCwYDVQQDDAR0NjcyMBOkETAPMQ0wCwYDVQQDDAR0 -NjczMBOkETAPMQ0wCwYDVQQDDAR0Njc0MBOkETAPMQ0wCwYDVQQDDAR0Njc1MBOk -ETAPMQ0wCwYDVQQDDAR0Njc2MBOkETAPMQ0wCwYDVQQDDAR0Njc3MBOkETAPMQ0w -CwYDVQQDDAR0Njc4MBOkETAPMQ0wCwYDVQQDDAR0Njc5MBOkETAPMQ0wCwYDVQQD -DAR0NjgwMBOkETAPMQ0wCwYDVQQDDAR0NjgxMBOkETAPMQ0wCwYDVQQDDAR0Njgy -MBOkETAPMQ0wCwYDVQQDDAR0NjgzMBOkETAPMQ0wCwYDVQQDDAR0Njg0MBOkETAP -MQ0wCwYDVQQDDAR0Njg1MBOkETAPMQ0wCwYDVQQDDAR0Njg2MBOkETAPMQ0wCwYD -VQQDDAR0Njg3MBOkETAPMQ0wCwYDVQQDDAR0Njg4MBOkETAPMQ0wCwYDVQQDDAR0 -Njg5MBOkETAPMQ0wCwYDVQQDDAR0NjkwMBOkETAPMQ0wCwYDVQQDDAR0NjkxMBOk -ETAPMQ0wCwYDVQQDDAR0NjkyMBOkETAPMQ0wCwYDVQQDDAR0NjkzMBOkETAPMQ0w -CwYDVQQDDAR0Njk0MBOkETAPMQ0wCwYDVQQDDAR0Njk1MBOkETAPMQ0wCwYDVQQD -DAR0Njk2MBOkETAPMQ0wCwYDVQQDDAR0Njk3MBOkETAPMQ0wCwYDVQQDDAR0Njk4 -MBOkETAPMQ0wCwYDVQQDDAR0Njk5MBOkETAPMQ0wCwYDVQQDDAR0NzAwMBOkETAP -MQ0wCwYDVQQDDAR0NzAxMBOkETAPMQ0wCwYDVQQDDAR0NzAyMBOkETAPMQ0wCwYD -VQQDDAR0NzAzMBOkETAPMQ0wCwYDVQQDDAR0NzA0MBOkETAPMQ0wCwYDVQQDDAR0 -NzA1MBOkETAPMQ0wCwYDVQQDDAR0NzA2MBOkETAPMQ0wCwYDVQQDDAR0NzA3MBOk -ETAPMQ0wCwYDVQQDDAR0NzA4MBOkETAPMQ0wCwYDVQQDDAR0NzA5MBOkETAPMQ0w -CwYDVQQDDAR0NzEwMBOkETAPMQ0wCwYDVQQDDAR0NzExMBOkETAPMQ0wCwYDVQQD -DAR0NzEyMBOkETAPMQ0wCwYDVQQDDAR0NzEzMBOkETAPMQ0wCwYDVQQDDAR0NzE0 -MBOkETAPMQ0wCwYDVQQDDAR0NzE1MBOkETAPMQ0wCwYDVQQDDAR0NzE2MBOkETAP -MQ0wCwYDVQQDDAR0NzE3MBOkETAPMQ0wCwYDVQQDDAR0NzE4MBOkETAPMQ0wCwYD -VQQDDAR0NzE5MBOkETAPMQ0wCwYDVQQDDAR0NzIwMBOkETAPMQ0wCwYDVQQDDAR0 -NzIxMBOkETAPMQ0wCwYDVQQDDAR0NzIyMBOkETAPMQ0wCwYDVQQDDAR0NzIzMBOk -ETAPMQ0wCwYDVQQDDAR0NzI0MBOkETAPMQ0wCwYDVQQDDAR0NzI1MBOkETAPMQ0w -CwYDVQQDDAR0NzI2MBOkETAPMQ0wCwYDVQQDDAR0NzI3MBOkETAPMQ0wCwYDVQQD -DAR0NzI4MBOkETAPMQ0wCwYDVQQDDAR0NzI5MBOkETAPMQ0wCwYDVQQDDAR0NzMw -MBOkETAPMQ0wCwYDVQQDDAR0NzMxMBOkETAPMQ0wCwYDVQQDDAR0NzMyMBOkETAP -MQ0wCwYDVQQDDAR0NzMzMBOkETAPMQ0wCwYDVQQDDAR0NzM0MBOkETAPMQ0wCwYD -VQQDDAR0NzM1MBOkETAPMQ0wCwYDVQQDDAR0NzM2MBOkETAPMQ0wCwYDVQQDDAR0 -NzM3MBOkETAPMQ0wCwYDVQQDDAR0NzM4MBOkETAPMQ0wCwYDVQQDDAR0NzM5MBOk -ETAPMQ0wCwYDVQQDDAR0NzQwMBOkETAPMQ0wCwYDVQQDDAR0NzQxMBOkETAPMQ0w -CwYDVQQDDAR0NzQyMBOkETAPMQ0wCwYDVQQDDAR0NzQzMBOkETAPMQ0wCwYDVQQD -DAR0NzQ0MBOkETAPMQ0wCwYDVQQDDAR0NzQ1MBOkETAPMQ0wCwYDVQQDDAR0NzQ2 -MBOkETAPMQ0wCwYDVQQDDAR0NzQ3MBOkETAPMQ0wCwYDVQQDDAR0NzQ4MBOkETAP -MQ0wCwYDVQQDDAR0NzQ5MBOkETAPMQ0wCwYDVQQDDAR0NzUwMBOkETAPMQ0wCwYD -VQQDDAR0NzUxMBOkETAPMQ0wCwYDVQQDDAR0NzUyMBOkETAPMQ0wCwYDVQQDDAR0 -NzUzMBOkETAPMQ0wCwYDVQQDDAR0NzU0MBOkETAPMQ0wCwYDVQQDDAR0NzU1MBOk -ETAPMQ0wCwYDVQQDDAR0NzU2MBOkETAPMQ0wCwYDVQQDDAR0NzU3MBOkETAPMQ0w -CwYDVQQDDAR0NzU4MBOkETAPMQ0wCwYDVQQDDAR0NzU5MBOkETAPMQ0wCwYDVQQD -DAR0NzYwMBOkETAPMQ0wCwYDVQQDDAR0NzYxMBOkETAPMQ0wCwYDVQQDDAR0NzYy -MBOkETAPMQ0wCwYDVQQDDAR0NzYzMBOkETAPMQ0wCwYDVQQDDAR0NzY0MBOkETAP -MQ0wCwYDVQQDDAR0NzY1MBOkETAPMQ0wCwYDVQQDDAR0NzY2MBOkETAPMQ0wCwYD -VQQDDAR0NzY3MBOkETAPMQ0wCwYDVQQDDAR0NzY4MBOkETAPMQ0wCwYDVQQDDAR0 -NzY5MBOkETAPMQ0wCwYDVQQDDAR0NzcwMBOkETAPMQ0wCwYDVQQDDAR0NzcxMBOk -ETAPMQ0wCwYDVQQDDAR0NzcyMBOkETAPMQ0wCwYDVQQDDAR0NzczMBOkETAPMQ0w -CwYDVQQDDAR0Nzc0MBOkETAPMQ0wCwYDVQQDDAR0Nzc1MBOkETAPMQ0wCwYDVQQD -DAR0Nzc2MBOkETAPMQ0wCwYDVQQDDAR0Nzc3MBOkETAPMQ0wCwYDVQQDDAR0Nzc4 -MBOkETAPMQ0wCwYDVQQDDAR0Nzc5MBOkETAPMQ0wCwYDVQQDDAR0NzgwMBOkETAP -MQ0wCwYDVQQDDAR0NzgxMBOkETAPMQ0wCwYDVQQDDAR0NzgyMBOkETAPMQ0wCwYD -VQQDDAR0NzgzMBOkETAPMQ0wCwYDVQQDDAR0Nzg0MBOkETAPMQ0wCwYDVQQDDAR0 -Nzg1MBOkETAPMQ0wCwYDVQQDDAR0Nzg2MBOkETAPMQ0wCwYDVQQDDAR0Nzg3MBOk -ETAPMQ0wCwYDVQQDDAR0Nzg4MBOkETAPMQ0wCwYDVQQDDAR0Nzg5MBOkETAPMQ0w -CwYDVQQDDAR0NzkwMBOkETAPMQ0wCwYDVQQDDAR0NzkxMBOkETAPMQ0wCwYDVQQD -DAR0NzkyMBOkETAPMQ0wCwYDVQQDDAR0NzkzMBOkETAPMQ0wCwYDVQQDDAR0Nzk0 -MBOkETAPMQ0wCwYDVQQDDAR0Nzk1MBOkETAPMQ0wCwYDVQQDDAR0Nzk2MBOkETAP -MQ0wCwYDVQQDDAR0Nzk3MBOkETAPMQ0wCwYDVQQDDAR0Nzk4MBOkETAPMQ0wCwYD -VQQDDAR0Nzk5MBOkETAPMQ0wCwYDVQQDDAR0ODAwMBOkETAPMQ0wCwYDVQQDDAR0 -ODAxMBOkETAPMQ0wCwYDVQQDDAR0ODAyMBOkETAPMQ0wCwYDVQQDDAR0ODAzMBOk -ETAPMQ0wCwYDVQQDDAR0ODA0MBOkETAPMQ0wCwYDVQQDDAR0ODA1MBOkETAPMQ0w -CwYDVQQDDAR0ODA2MBOkETAPMQ0wCwYDVQQDDAR0ODA3MBOkETAPMQ0wCwYDVQQD -DAR0ODA4MBOkETAPMQ0wCwYDVQQDDAR0ODA5MBOkETAPMQ0wCwYDVQQDDAR0ODEw -MBOkETAPMQ0wCwYDVQQDDAR0ODExMBOkETAPMQ0wCwYDVQQDDAR0ODEyMBOkETAP -MQ0wCwYDVQQDDAR0ODEzMBOkETAPMQ0wCwYDVQQDDAR0ODE0MBOkETAPMQ0wCwYD -VQQDDAR0ODE1MBOkETAPMQ0wCwYDVQQDDAR0ODE2MBOkETAPMQ0wCwYDVQQDDAR0 -ODE3MBOkETAPMQ0wCwYDVQQDDAR0ODE4MBOkETAPMQ0wCwYDVQQDDAR0ODE5MBOk -ETAPMQ0wCwYDVQQDDAR0ODIwMBOkETAPMQ0wCwYDVQQDDAR0ODIxMBOkETAPMQ0w -CwYDVQQDDAR0ODIyMBOkETAPMQ0wCwYDVQQDDAR0ODIzMBOkETAPMQ0wCwYDVQQD -DAR0ODI0MBOkETAPMQ0wCwYDVQQDDAR0ODI1MBOkETAPMQ0wCwYDVQQDDAR0ODI2 -MBOkETAPMQ0wCwYDVQQDDAR0ODI3MBOkETAPMQ0wCwYDVQQDDAR0ODI4MBOkETAP -MQ0wCwYDVQQDDAR0ODI5MBOkETAPMQ0wCwYDVQQDDAR0ODMwMBOkETAPMQ0wCwYD -VQQDDAR0ODMxMBOkETAPMQ0wCwYDVQQDDAR0ODMyMBOkETAPMQ0wCwYDVQQDDAR0 -ODMzMBOkETAPMQ0wCwYDVQQDDAR0ODM0MBOkETAPMQ0wCwYDVQQDDAR0ODM1MBOk -ETAPMQ0wCwYDVQQDDAR0ODM2MBOkETAPMQ0wCwYDVQQDDAR0ODM3MBOkETAPMQ0w -CwYDVQQDDAR0ODM4MBOkETAPMQ0wCwYDVQQDDAR0ODM5MBOkETAPMQ0wCwYDVQQD -DAR0ODQwMBOkETAPMQ0wCwYDVQQDDAR0ODQxMBOkETAPMQ0wCwYDVQQDDAR0ODQy -MBOkETAPMQ0wCwYDVQQDDAR0ODQzMBOkETAPMQ0wCwYDVQQDDAR0ODQ0MBOkETAP -MQ0wCwYDVQQDDAR0ODQ1MBOkETAPMQ0wCwYDVQQDDAR0ODQ2MBOkETAPMQ0wCwYD -VQQDDAR0ODQ3MBOkETAPMQ0wCwYDVQQDDAR0ODQ4MBOkETAPMQ0wCwYDVQQDDAR0 -ODQ5MBOkETAPMQ0wCwYDVQQDDAR0ODUwMBOkETAPMQ0wCwYDVQQDDAR0ODUxMBOk -ETAPMQ0wCwYDVQQDDAR0ODUyMBOkETAPMQ0wCwYDVQQDDAR0ODUzMBOkETAPMQ0w -CwYDVQQDDAR0ODU0MBOkETAPMQ0wCwYDVQQDDAR0ODU1MBOkETAPMQ0wCwYDVQQD -DAR0ODU2MBOkETAPMQ0wCwYDVQQDDAR0ODU3MBOkETAPMQ0wCwYDVQQDDAR0ODU4 -MBOkETAPMQ0wCwYDVQQDDAR0ODU5MBOkETAPMQ0wCwYDVQQDDAR0ODYwMBOkETAP -MQ0wCwYDVQQDDAR0ODYxMBOkETAPMQ0wCwYDVQQDDAR0ODYyMBOkETAPMQ0wCwYD -VQQDDAR0ODYzMBOkETAPMQ0wCwYDVQQDDAR0ODY0MBOkETAPMQ0wCwYDVQQDDAR0 -ODY1MBOkETAPMQ0wCwYDVQQDDAR0ODY2MBOkETAPMQ0wCwYDVQQDDAR0ODY3MBOk -ETAPMQ0wCwYDVQQDDAR0ODY4MBOkETAPMQ0wCwYDVQQDDAR0ODY5MBOkETAPMQ0w -CwYDVQQDDAR0ODcwMBOkETAPMQ0wCwYDVQQDDAR0ODcxMBOkETAPMQ0wCwYDVQQD -DAR0ODcyMBOkETAPMQ0wCwYDVQQDDAR0ODczMBOkETAPMQ0wCwYDVQQDDAR0ODc0 -MBOkETAPMQ0wCwYDVQQDDAR0ODc1MBOkETAPMQ0wCwYDVQQDDAR0ODc2MBOkETAP -MQ0wCwYDVQQDDAR0ODc3MBOkETAPMQ0wCwYDVQQDDAR0ODc4MBOkETAPMQ0wCwYD -VQQDDAR0ODc5MBOkETAPMQ0wCwYDVQQDDAR0ODgwMBOkETAPMQ0wCwYDVQQDDAR0 -ODgxMBOkETAPMQ0wCwYDVQQDDAR0ODgyMBOkETAPMQ0wCwYDVQQDDAR0ODgzMBOk -ETAPMQ0wCwYDVQQDDAR0ODg0MBOkETAPMQ0wCwYDVQQDDAR0ODg1MBOkETAPMQ0w -CwYDVQQDDAR0ODg2MBOkETAPMQ0wCwYDVQQDDAR0ODg3MBOkETAPMQ0wCwYDVQQD -DAR0ODg4MBOkETAPMQ0wCwYDVQQDDAR0ODg5MBOkETAPMQ0wCwYDVQQDDAR0ODkw -MBOkETAPMQ0wCwYDVQQDDAR0ODkxMBOkETAPMQ0wCwYDVQQDDAR0ODkyMBOkETAP -MQ0wCwYDVQQDDAR0ODkzMBOkETAPMQ0wCwYDVQQDDAR0ODk0MBOkETAPMQ0wCwYD -VQQDDAR0ODk1MBOkETAPMQ0wCwYDVQQDDAR0ODk2MBOkETAPMQ0wCwYDVQQDDAR0 -ODk3MBOkETAPMQ0wCwYDVQQDDAR0ODk4MBOkETAPMQ0wCwYDVQQDDAR0ODk5MBOk -ETAPMQ0wCwYDVQQDDAR0OTAwMBOkETAPMQ0wCwYDVQQDDAR0OTAxMBOkETAPMQ0w -CwYDVQQDDAR0OTAyMBOkETAPMQ0wCwYDVQQDDAR0OTAzMBOkETAPMQ0wCwYDVQQD -DAR0OTA0MBOkETAPMQ0wCwYDVQQDDAR0OTA1MBOkETAPMQ0wCwYDVQQDDAR0OTA2 -MBOkETAPMQ0wCwYDVQQDDAR0OTA3MBOkETAPMQ0wCwYDVQQDDAR0OTA4MBOkETAP -MQ0wCwYDVQQDDAR0OTA5MBOkETAPMQ0wCwYDVQQDDAR0OTEwMBOkETAPMQ0wCwYD -VQQDDAR0OTExMBOkETAPMQ0wCwYDVQQDDAR0OTEyMBOkETAPMQ0wCwYDVQQDDAR0 -OTEzMBOkETAPMQ0wCwYDVQQDDAR0OTE0MBOkETAPMQ0wCwYDVQQDDAR0OTE1MBOk -ETAPMQ0wCwYDVQQDDAR0OTE2MBOkETAPMQ0wCwYDVQQDDAR0OTE3MBOkETAPMQ0w -CwYDVQQDDAR0OTE4MBOkETAPMQ0wCwYDVQQDDAR0OTE5MBOkETAPMQ0wCwYDVQQD -DAR0OTIwMBOkETAPMQ0wCwYDVQQDDAR0OTIxMBOkETAPMQ0wCwYDVQQDDAR0OTIy -MBOkETAPMQ0wCwYDVQQDDAR0OTIzMBOkETAPMQ0wCwYDVQQDDAR0OTI0MBOkETAP -MQ0wCwYDVQQDDAR0OTI1MBOkETAPMQ0wCwYDVQQDDAR0OTI2MBOkETAPMQ0wCwYD -VQQDDAR0OTI3MBOkETAPMQ0wCwYDVQQDDAR0OTI4MBOkETAPMQ0wCwYDVQQDDAR0 -OTI5MBOkETAPMQ0wCwYDVQQDDAR0OTMwMBOkETAPMQ0wCwYDVQQDDAR0OTMxMBOk -ETAPMQ0wCwYDVQQDDAR0OTMyMBOkETAPMQ0wCwYDVQQDDAR0OTMzMBOkETAPMQ0w -CwYDVQQDDAR0OTM0MBOkETAPMQ0wCwYDVQQDDAR0OTM1MBOkETAPMQ0wCwYDVQQD -DAR0OTM2MBOkETAPMQ0wCwYDVQQDDAR0OTM3MBOkETAPMQ0wCwYDVQQDDAR0OTM4 -MBOkETAPMQ0wCwYDVQQDDAR0OTM5MBOkETAPMQ0wCwYDVQQDDAR0OTQwMBOkETAP -MQ0wCwYDVQQDDAR0OTQxMBOkETAPMQ0wCwYDVQQDDAR0OTQyMBOkETAPMQ0wCwYD -VQQDDAR0OTQzMBOkETAPMQ0wCwYDVQQDDAR0OTQ0MBOkETAPMQ0wCwYDVQQDDAR0 -OTQ1MBOkETAPMQ0wCwYDVQQDDAR0OTQ2MBOkETAPMQ0wCwYDVQQDDAR0OTQ3MBOk -ETAPMQ0wCwYDVQQDDAR0OTQ4MBOkETAPMQ0wCwYDVQQDDAR0OTQ5MBOkETAPMQ0w -CwYDVQQDDAR0OTUwMBOkETAPMQ0wCwYDVQQDDAR0OTUxMBOkETAPMQ0wCwYDVQQD -DAR0OTUyMBOkETAPMQ0wCwYDVQQDDAR0OTUzMBOkETAPMQ0wCwYDVQQDDAR0OTU0 -MBOkETAPMQ0wCwYDVQQDDAR0OTU1MBOkETAPMQ0wCwYDVQQDDAR0OTU2MBOkETAP -MQ0wCwYDVQQDDAR0OTU3MBOkETAPMQ0wCwYDVQQDDAR0OTU4MBOkETAPMQ0wCwYD -VQQDDAR0OTU5MBOkETAPMQ0wCwYDVQQDDAR0OTYwMBOkETAPMQ0wCwYDVQQDDAR0 -OTYxMBOkETAPMQ0wCwYDVQQDDAR0OTYyMBOkETAPMQ0wCwYDVQQDDAR0OTYzMBOk -ETAPMQ0wCwYDVQQDDAR0OTY0MBOkETAPMQ0wCwYDVQQDDAR0OTY1MBOkETAPMQ0w -CwYDVQQDDAR0OTY2MBOkETAPMQ0wCwYDVQQDDAR0OTY3MBOkETAPMQ0wCwYDVQQD -DAR0OTY4MBOkETAPMQ0wCwYDVQQDDAR0OTY5MBOkETAPMQ0wCwYDVQQDDAR0OTcw -MBOkETAPMQ0wCwYDVQQDDAR0OTcxMBOkETAPMQ0wCwYDVQQDDAR0OTcyMBOkETAP -MQ0wCwYDVQQDDAR0OTczMBOkETAPMQ0wCwYDVQQDDAR0OTc0MBOkETAPMQ0wCwYD -VQQDDAR0OTc1MBOkETAPMQ0wCwYDVQQDDAR0OTc2MBOkETAPMQ0wCwYDVQQDDAR0 -OTc3MBOkETAPMQ0wCwYDVQQDDAR0OTc4MBOkETAPMQ0wCwYDVQQDDAR0OTc5MBOk -ETAPMQ0wCwYDVQQDDAR0OTgwMBOkETAPMQ0wCwYDVQQDDAR0OTgxMBOkETAPMQ0w -CwYDVQQDDAR0OTgyMBOkETAPMQ0wCwYDVQQDDAR0OTgzMBOkETAPMQ0wCwYDVQQD -DAR0OTg0MBOkETAPMQ0wCwYDVQQDDAR0OTg1MBOkETAPMQ0wCwYDVQQDDAR0OTg2 -MBOkETAPMQ0wCwYDVQQDDAR0OTg3MBOkETAPMQ0wCwYDVQQDDAR0OTg4MBOkETAP -MQ0wCwYDVQQDDAR0OTg5MBOkETAPMQ0wCwYDVQQDDAR0OTkwMBOkETAPMQ0wCwYD -VQQDDAR0OTkxMBOkETAPMQ0wCwYDVQQDDAR0OTkyMBOkETAPMQ0wCwYDVQQDDAR0 -OTkzMBOkETAPMQ0wCwYDVQQDDAR0OTk0MBOkETAPMQ0wCwYDVQQDDAR0OTk1MBOk -ETAPMQ0wCwYDVQQDDAR0OTk2MBOkETAPMQ0wCwYDVQQDDAR0OTk3MBOkETAPMQ0w -CwYDVQQDDAR0OTk4MBOkETAPMQ0wCwYDVQQDDAR0OTk5MBSkEjAQMQ4wDAYDVQQD -DAV0MTAwMDAUpBIwEDEOMAwGA1UEAwwFdDEwMDEwFKQSMBAxDjAMBgNVBAMMBXQx -MDAyMBSkEjAQMQ4wDAYDVQQDDAV0MTAwMzAUpBIwEDEOMAwGA1UEAwwFdDEwMDQw -FKQSMBAxDjAMBgNVBAMMBXQxMDA1MBSkEjAQMQ4wDAYDVQQDDAV0MTAwNjAUpBIw -EDEOMAwGA1UEAwwFdDEwMDcwFKQSMBAxDjAMBgNVBAMMBXQxMDA4MBSkEjAQMQ4w -DAYDVQQDDAV0MTAwOTAUpBIwEDEOMAwGA1UEAwwFdDEwMTAwFKQSMBAxDjAMBgNV -BAMMBXQxMDExMBSkEjAQMQ4wDAYDVQQDDAV0MTAxMjAUpBIwEDEOMAwGA1UEAwwF -dDEwMTMwFKQSMBAxDjAMBgNVBAMMBXQxMDE0MBSkEjAQMQ4wDAYDVQQDDAV0MTAx -NTAUpBIwEDEOMAwGA1UEAwwFdDEwMTYwFKQSMBAxDjAMBgNVBAMMBXQxMDE3MBSk -EjAQMQ4wDAYDVQQDDAV0MTAxODAUpBIwEDEOMAwGA1UEAwwFdDEwMTkwFKQSMBAx -DjAMBgNVBAMMBXQxMDIwMBSkEjAQMQ4wDAYDVQQDDAV0MTAyMTAUpBIwEDEOMAwG -A1UEAwwFdDEwMjIwFKQSMBAxDjAMBgNVBAMMBXQxMDIzMBSkEjAQMQ4wDAYDVQQD -DAV0MTAyNDANBgkqhkiG9w0BAQsFAAOCAQEAEs5g1ju1fnqOntD1/aiKMySVbXlW -JCMSEI8SfOATmbptubJRtMxQLAYouNEYGhbmA7R/zbf2BnvCd5dSdo+B0fYsCOJw -J3Y/kKdS8xXwH0CXmfv6msHrEPqgdN/x34rSS2cRL1ypUnhp6EshvvKpZWLMDtlZ -jnrKXwFB2dLpiV+8PIy7T5CABgU3vgwfqFaC55ItxYlW2NSGnYq8XkPTB2Xa1Ah1 -J+VJDun4VCt6U5k3KZvqFN6AaKl5Jl5k/yFs2oPvj6TfOiBuXNNoSIKruaxKKLYv -NRSYVBao+u4ww7rFLTO8Mq6WxooXSTJ41GEpZn91rhYugbK5+lax1caedw== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.cnf deleted file mode 100644 index 5525d6b9df..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.cnf +++ /dev/null @@ -1,64 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Root" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,keyCertSign,cRLSign -basicConstraints = critical,CA:true - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Root.pem -new_certs_dir = out -serial = out/Root.serial -database = out/Root.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Root.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Root.cer - -[crl_info] -URI.0 = http://url-for-crl/Root.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.csr deleted file mode 100644 index 35b655d54f..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.csr +++ /dev/null @@ -1,17 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIICpTCCAY0CAQAwDzENMAsGA1UEAwwEUm9vdDCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBAMx6z+y9oAHDJlHYKK6AtgvSdtcEhhis/fKPZOeS1tBCMk/N -0E3QrHGac4AKBHAgoy+gm/Q+Gc9pVLW+hd1usgsU3ye/LKG7sqcjDPuueGlrGm58 -OH8VXeXPJzJWKvGH/joWc+bdg/LyrjHIk9JJt7Fx9VXeu4XNyxl0HWFJ2oNE7Exe -qtWLMhrbd9Wxg4wAuVW3ZHhch8loWL3er1Diu70yzfo93zs9kxAWtm2QHdd96ep+ -Hi7IEKQUrWJyr2WVH6dugYSf34VOwD5/jAIK8GVYhHxq4VOvPPF6uTPI5/ntkkYA -UGLwiUFXHoHRBBKz/CVgF1wL66lGSgM5FhFN4XsCAwEAAaBRME8GCSqGSIb3DQEJ -DjFCMEAwHQYDVR0OBBYEFLbC75/RKcsPiYxMUtS9QLcRt3HdMA4GA1UdDwEB/wQE -AwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAeAAMmusgo -gWsmXpYh6t/w2qK9lucLwcQqZz/punJH5w0Muz4pzjARppljidGfWdM0scyqAbS0 -WKyUkw1mmi2DPYC6VV2wjSjwnHYqMr5zwMzwdY/hBxhPqYeGfLYxq93GhsOO+NFf -Fbj/2B6nTQbYVDJxotVXDm6mlJ39qNNKHisQf3cnqD0Jdj/1IAm9pdUoVEI04re/ -2o8jeXu/xmlulDkJjlbrUwBwKDq1053OhcFCoU8uQB/GWEFieD3dG5Jzr9gkEMX/ -DodDQrixdtqZVmVcstukqQHdGTN+dRMgkCepvAxhPr2J3WmkyR6q8Jy3iHRvFwb4 -ozuHquUL2zo8 ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db deleted file mode 100644 index 4e6380ddf4..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db +++ /dev/null @@ -1,9 +0,0 @@ -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6F5 unknown /CN=Root -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6F6 unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6F7 unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6F8 unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6F9 unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6FA unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6FB unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6FC unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6FD unknown /CN=Intermediate diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.attr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.attr deleted file mode 100644 index 3a7e39e6ee..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.attr +++ /dev/null @@ -1 +0,0 @@ -unique_subject = no diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.attr.old b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.attr.old deleted file mode 100644 index 3a7e39e6ee..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.attr.old +++ /dev/null @@ -1 +0,0 @@ -unique_subject = no diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.old b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.old deleted file mode 100644 index d5e4256207..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.db.old +++ /dev/null @@ -1,8 +0,0 @@ -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6F5 unknown /CN=Root -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6F6 unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6F7 unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6F8 unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6F9 unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6FA unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6FB unknown /CN=Intermediate -V 221005120000Z 3CE5FC818859A85016C17FD7E52AE5967FC2F6FC unknown /CN=Intermediate diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.pem deleted file mode 100644 index 95b3ef60a0..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.pem +++ /dev/null @@ -1,89 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3c:e5:fc:81:88:59:a8:50:16:c1:7f:d7:e5:2a:e5:96:7f:c2:f6:f5 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Root - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:cc:7a:cf:ec:bd:a0:01:c3:26:51:d8:28:ae:80: - b6:0b:d2:76:d7:04:86:18:ac:fd:f2:8f:64:e7:92: - d6:d0:42:32:4f:cd:d0:4d:d0:ac:71:9a:73:80:0a: - 04:70:20:a3:2f:a0:9b:f4:3e:19:cf:69:54:b5:be: - 85:dd:6e:b2:0b:14:df:27:bf:2c:a1:bb:b2:a7:23: - 0c:fb:ae:78:69:6b:1a:6e:7c:38:7f:15:5d:e5:cf: - 27:32:56:2a:f1:87:fe:3a:16:73:e6:dd:83:f2:f2: - ae:31:c8:93:d2:49:b7:b1:71:f5:55:de:bb:85:cd: - cb:19:74:1d:61:49:da:83:44:ec:4c:5e:aa:d5:8b: - 32:1a:db:77:d5:b1:83:8c:00:b9:55:b7:64:78:5c: - 87:c9:68:58:bd:de:af:50:e2:bb:bd:32:cd:fa:3d: - df:3b:3d:93:10:16:b6:6d:90:1d:d7:7d:e9:ea:7e: - 1e:2e:c8:10:a4:14:ad:62:72:af:65:95:1f:a7:6e: - 81:84:9f:df:85:4e:c0:3e:7f:8c:02:0a:f0:65:58: - 84:7c:6a:e1:53:af:3c:f1:7a:b9:33:c8:e7:f9:ed: - 92:46:00:50:62:f0:89:41:57:1e:81:d1:04:12:b3: - fc:25:60:17:5c:0b:eb:a9:46:4a:03:39:16:11:4d: - e1:7b - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - X509v3 Authority Key Identifier: - keyid:B6:C2:EF:9F:D1:29:CB:0F:89:8C:4C:52:D4:BD:40:B7:11:B7:71:DD - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - Signature Algorithm: sha256WithRSAEncryption - 3a:c4:f6:50:32:77:14:e2:a8:69:9b:ad:85:a0:fa:95:08:d2: - 22:cb:d3:aa:53:94:e5:1f:92:fa:d5:7b:c8:a5:b6:13:15:42: - 42:2c:ce:48:e9:f1:55:c7:cd:f4:29:b6:46:e9:08:81:8c:83: - 82:c5:d4:f7:1e:90:3c:2d:78:39:7f:be:e8:30:5e:f7:d4:72: - e4:db:0a:09:49:c0:ce:83:66:c0:16:73:f4:cf:67:ad:74:e3: - 10:60:72:16:77:4a:c8:08:88:93:62:c0:4a:23:0b:74:3e:63: - 98:9c:54:1d:34:d5:b6:da:bc:7c:5a:f2:68:22:e2:d9:15:12: - 84:04:f6:3e:b3:ac:97:bc:b4:54:93:3c:d4:0b:25:e4:c1:34: - 5a:98:bc:aa:de:78:bb:12:3f:33:82:a2:bf:5f:82:e6:9e:ad: - 85:21:21:d9:9d:41:5e:4f:72:a3:16:8d:7d:b4:1d:26:d8:77: - d8:29:22:13:a2:f6:d7:9f:1c:60:2f:17:9e:fd:f4:63:a3:c6: - ed:e3:47:43:b7:73:39:82:97:18:fa:4b:db:2e:ac:d3:7b:54: - cd:f8:d0:eb:70:13:03:8a:4b:9b:90:62:4e:b0:34:22:49:ec: - 78:2a:47:97:60:13:03:23:ed:09:ff:a8:00:59:6a:2c:d1:2e: - d0:93:0b:59 ------BEGIN CERTIFICATE----- -MIIDeDCCAmCgAwIBAgIUPOX8gYhZqFAWwX/X5Srlln/C9vUwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMA8xDTALBgNVBAMMBFJvb3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK -AoIBAQDMes/svaABwyZR2CiugLYL0nbXBIYYrP3yj2TnktbQQjJPzdBN0KxxmnOA -CgRwIKMvoJv0PhnPaVS1voXdbrILFN8nvyyhu7KnIwz7rnhpaxpufDh/FV3lzycy -Virxh/46FnPm3YPy8q4xyJPSSbexcfVV3ruFzcsZdB1hSdqDROxMXqrVizIa23fV -sYOMALlVt2R4XIfJaFi93q9Q4ru9Ms36Pd87PZMQFrZtkB3Xfenqfh4uyBCkFK1i -cq9llR+nboGEn9+FTsA+f4wCCvBlWIR8auFTrzzxerkzyOf57ZJGAFBi8IlBVx6B -0QQSs/wlYBdcC+upRkoDORYRTeF7AgMBAAGjgcswgcgwHQYDVR0OBBYEFLbC75/R -KcsPiYxMUtS9QLcRt3HdMB8GA1UdIwQYMBaAFLbC75/RKcsPiYxMUtS9QLcRt3Hd -MDcGCCsGAQUFBwEBBCswKTAnBggrBgEFBQcwAoYbaHR0cDovL3VybC1mb3ItYWlh -L1Jvb3QuY2VyMCwGA1UdHwQlMCMwIaAfoB2GG2h0dHA6Ly91cmwtZm9yLWNybC9S -b290LmNybDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG -9w0BAQsFAAOCAQEAOsT2UDJ3FOKoaZuthaD6lQjSIsvTqlOU5R+S+tV7yKW2ExVC -QizOSOnxVcfN9Cm2RukIgYyDgsXU9x6QPC14OX++6DBe99Ry5NsKCUnAzoNmwBZz -9M9nrXTjEGByFndKyAiIk2LASiMLdD5jmJxUHTTVttq8fFryaCLi2RUShAT2PrOs -l7y0VJM81Asl5ME0Wpi8qt54uxI/M4Kiv1+C5p6thSEh2Z1BXk9yoxaNfbQdJth3 -2CkiE6L2158cYC8Xnv30Y6PG7eNHQ7dzOYKXGPpL2y6s03tUzfjQ63ATA4pLm5Bi -TrA0IknseCpHl2ATAyPtCf+oAFlqLNEu0JMLWQ== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.serial b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.serial deleted file mode 100644 index d19eb29058..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.serial +++ /dev/null @@ -1 +0,0 @@ -3CE5FC818859A85016C17FD7E52AE5967FC2F6FE diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.serial.old b/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.serial.old deleted file mode 100644 index 30219eff8c..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/Root.serial.old +++ /dev/null @@ -1 +0,0 @@ -3CE5FC818859A85016C17FD7E52AE5967FC2F6FD diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.cnf deleted file mode 100644 index c20d823d84..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.cnf +++ /dev/null @@ -1,3142 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "t0" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,digitalSignature,keyEncipherment -extendedKeyUsage = serverAuth,clientAuth -subjectAltName = @san_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/t0.pem -new_certs_dir = out -serial = out/t0.serial -database = out/t0.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/t0.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/t0.cer - -[crl_info] -URI.0 = http://url-for-crl/t0.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[san_info] -DNS.1 = t0.test -DNS.2 = t1.test -DNS.3 = t2.test -DNS.4 = t3.test -DNS.5 = t4.test -DNS.6 = t5.test -DNS.7 = t6.test -DNS.8 = t7.test -DNS.9 = t8.test -DNS.10 = t9.test -DNS.11 = t10.test -DNS.12 = t11.test -DNS.13 = t12.test -DNS.14 = t13.test -DNS.15 = t14.test -DNS.16 = t15.test -DNS.17 = t16.test -DNS.18 = t17.test -DNS.19 = t18.test -DNS.20 = t19.test -DNS.21 = t20.test -DNS.22 = t21.test -DNS.23 = t22.test -DNS.24 = t23.test -DNS.25 = t24.test -DNS.26 = t25.test -DNS.27 = t26.test -DNS.28 = t27.test -DNS.29 = t28.test -DNS.30 = t29.test -DNS.31 = t30.test -DNS.32 = t31.test -DNS.33 = t32.test -DNS.34 = t33.test -DNS.35 = t34.test -DNS.36 = t35.test -DNS.37 = t36.test -DNS.38 = t37.test -DNS.39 = t38.test -DNS.40 = t39.test -DNS.41 = t40.test -DNS.42 = t41.test -DNS.43 = t42.test -DNS.44 = t43.test -DNS.45 = t44.test -DNS.46 = t45.test -DNS.47 = t46.test -DNS.48 = t47.test -DNS.49 = t48.test -DNS.50 = t49.test -DNS.51 = t50.test -DNS.52 = t51.test -DNS.53 = t52.test -DNS.54 = t53.test -DNS.55 = t54.test -DNS.56 = t55.test -DNS.57 = t56.test -DNS.58 = t57.test -DNS.59 = t58.test -DNS.60 = t59.test -DNS.61 = t60.test -DNS.62 = t61.test -DNS.63 = t62.test -DNS.64 = t63.test -DNS.65 = t64.test -DNS.66 = t65.test -DNS.67 = t66.test -DNS.68 = t67.test -DNS.69 = t68.test -DNS.70 = t69.test -DNS.71 = t70.test -DNS.72 = t71.test -DNS.73 = t72.test -DNS.74 = t73.test -DNS.75 = t74.test -DNS.76 = t75.test -DNS.77 = t76.test -DNS.78 = t77.test -DNS.79 = t78.test -DNS.80 = t79.test -DNS.81 = t80.test -DNS.82 = t81.test -DNS.83 = t82.test -DNS.84 = t83.test -DNS.85 = t84.test -DNS.86 = t85.test -DNS.87 = t86.test -DNS.88 = t87.test -DNS.89 = t88.test -DNS.90 = t89.test -DNS.91 = t90.test -DNS.92 = t91.test -DNS.93 = t92.test -DNS.94 = t93.test -DNS.95 = t94.test -DNS.96 = t95.test -DNS.97 = t96.test -DNS.98 = t97.test -DNS.99 = t98.test -DNS.100 = t99.test -DNS.101 = t100.test -DNS.102 = t101.test -DNS.103 = t102.test -DNS.104 = t103.test -DNS.105 = t104.test -DNS.106 = t105.test -DNS.107 = t106.test -DNS.108 = t107.test -DNS.109 = t108.test -DNS.110 = t109.test -DNS.111 = t110.test -DNS.112 = t111.test -DNS.113 = t112.test -DNS.114 = t113.test -DNS.115 = t114.test -DNS.116 = t115.test -DNS.117 = t116.test -DNS.118 = t117.test -DNS.119 = t118.test -DNS.120 = t119.test -DNS.121 = t120.test -DNS.122 = t121.test -DNS.123 = t122.test -DNS.124 = t123.test -DNS.125 = t124.test -DNS.126 = t125.test -DNS.127 = t126.test -DNS.128 = t127.test -DNS.129 = t128.test -DNS.130 = t129.test -DNS.131 = t130.test -DNS.132 = t131.test -DNS.133 = t132.test -DNS.134 = t133.test -DNS.135 = t134.test -DNS.136 = t135.test -DNS.137 = t136.test -DNS.138 = t137.test -DNS.139 = t138.test -DNS.140 = t139.test -DNS.141 = t140.test -DNS.142 = t141.test -DNS.143 = t142.test -DNS.144 = t143.test -DNS.145 = t144.test -DNS.146 = t145.test -DNS.147 = t146.test -DNS.148 = t147.test -DNS.149 = t148.test -DNS.150 = t149.test -DNS.151 = t150.test -DNS.152 = t151.test -DNS.153 = t152.test -DNS.154 = t153.test -DNS.155 = t154.test -DNS.156 = t155.test -DNS.157 = t156.test -DNS.158 = t157.test -DNS.159 = t158.test -DNS.160 = t159.test -DNS.161 = t160.test -DNS.162 = t161.test -DNS.163 = t162.test -DNS.164 = t163.test -DNS.165 = t164.test -DNS.166 = t165.test -DNS.167 = t166.test -DNS.168 = t167.test -DNS.169 = t168.test -DNS.170 = t169.test -DNS.171 = t170.test -DNS.172 = t171.test -DNS.173 = t172.test -DNS.174 = t173.test -DNS.175 = t174.test -DNS.176 = t175.test -DNS.177 = t176.test -DNS.178 = t177.test -DNS.179 = t178.test -DNS.180 = t179.test -DNS.181 = t180.test -DNS.182 = t181.test -DNS.183 = t182.test -DNS.184 = t183.test -DNS.185 = t184.test -DNS.186 = t185.test -DNS.187 = t186.test -DNS.188 = t187.test -DNS.189 = t188.test -DNS.190 = t189.test -DNS.191 = t190.test -DNS.192 = t191.test -DNS.193 = t192.test -DNS.194 = t193.test -DNS.195 = t194.test -DNS.196 = t195.test -DNS.197 = t196.test -DNS.198 = t197.test -DNS.199 = t198.test -DNS.200 = t199.test -DNS.201 = t200.test -DNS.202 = t201.test -DNS.203 = t202.test -DNS.204 = t203.test -DNS.205 = t204.test -DNS.206 = t205.test -DNS.207 = t206.test -DNS.208 = t207.test -DNS.209 = t208.test -DNS.210 = t209.test -DNS.211 = t210.test -DNS.212 = t211.test -DNS.213 = t212.test -DNS.214 = t213.test -DNS.215 = t214.test -DNS.216 = t215.test -DNS.217 = t216.test -DNS.218 = t217.test -DNS.219 = t218.test -DNS.220 = t219.test -DNS.221 = t220.test -DNS.222 = t221.test -DNS.223 = t222.test -DNS.224 = t223.test -DNS.225 = t224.test -DNS.226 = t225.test -DNS.227 = t226.test -DNS.228 = t227.test -DNS.229 = t228.test -DNS.230 = t229.test -DNS.231 = t230.test -DNS.232 = t231.test -DNS.233 = t232.test -DNS.234 = t233.test -DNS.235 = t234.test -DNS.236 = t235.test -DNS.237 = t236.test -DNS.238 = t237.test -DNS.239 = t238.test -DNS.240 = t239.test -DNS.241 = t240.test -DNS.242 = t241.test -DNS.243 = t242.test -DNS.244 = t243.test -DNS.245 = t244.test -DNS.246 = t245.test -DNS.247 = t246.test -DNS.248 = t247.test -DNS.249 = t248.test -DNS.250 = t249.test -DNS.251 = t250.test -DNS.252 = t251.test -DNS.253 = t252.test -DNS.254 = t253.test -DNS.255 = t254.test -DNS.256 = t255.test -DNS.257 = t256.test -DNS.258 = t257.test -DNS.259 = t258.test -DNS.260 = t259.test -DNS.261 = t260.test -DNS.262 = t261.test -DNS.263 = t262.test -DNS.264 = t263.test -DNS.265 = t264.test -DNS.266 = t265.test -DNS.267 = t266.test -DNS.268 = t267.test -DNS.269 = t268.test -DNS.270 = t269.test -DNS.271 = t270.test -DNS.272 = t271.test -DNS.273 = t272.test -DNS.274 = t273.test -DNS.275 = t274.test -DNS.276 = t275.test -DNS.277 = t276.test -DNS.278 = t277.test -DNS.279 = t278.test -DNS.280 = t279.test -DNS.281 = t280.test -DNS.282 = t281.test -DNS.283 = t282.test -DNS.284 = t283.test -DNS.285 = t284.test -DNS.286 = t285.test -DNS.287 = t286.test -DNS.288 = t287.test -DNS.289 = t288.test -DNS.290 = t289.test -DNS.291 = t290.test -DNS.292 = t291.test -DNS.293 = t292.test -DNS.294 = t293.test -DNS.295 = t294.test -DNS.296 = t295.test -DNS.297 = t296.test -DNS.298 = t297.test -DNS.299 = t298.test -DNS.300 = t299.test -DNS.301 = t300.test -DNS.302 = t301.test -DNS.303 = t302.test -DNS.304 = t303.test -DNS.305 = t304.test -DNS.306 = t305.test -DNS.307 = t306.test -DNS.308 = t307.test -DNS.309 = t308.test -DNS.310 = t309.test -DNS.311 = t310.test -DNS.312 = t311.test -DNS.313 = t312.test -DNS.314 = t313.test -DNS.315 = t314.test -DNS.316 = t315.test -DNS.317 = t316.test -DNS.318 = t317.test -DNS.319 = t318.test -DNS.320 = t319.test -DNS.321 = t320.test -DNS.322 = t321.test -DNS.323 = t322.test -DNS.324 = t323.test -DNS.325 = t324.test -DNS.326 = t325.test -DNS.327 = t326.test -DNS.328 = t327.test -DNS.329 = t328.test -DNS.330 = t329.test -DNS.331 = t330.test -DNS.332 = t331.test -DNS.333 = t332.test -DNS.334 = t333.test -DNS.335 = t334.test -DNS.336 = t335.test -DNS.337 = t336.test -DNS.338 = t337.test -DNS.339 = t338.test -DNS.340 = t339.test -DNS.341 = t340.test -IP.1 = 10.0.0.0 -IP.2 = 10.0.0.1 -IP.3 = 10.0.0.2 -IP.4 = 10.0.0.3 -IP.5 = 10.0.0.4 -IP.6 = 10.0.0.5 -IP.7 = 10.0.0.6 -IP.8 = 10.0.0.7 -IP.9 = 10.0.0.8 -IP.10 = 10.0.0.9 -IP.11 = 10.0.0.10 -IP.12 = 10.0.0.11 -IP.13 = 10.0.0.12 -IP.14 = 10.0.0.13 -IP.15 = 10.0.0.14 -IP.16 = 10.0.0.15 -IP.17 = 10.0.0.16 -IP.18 = 10.0.0.17 -IP.19 = 10.0.0.18 -IP.20 = 10.0.0.19 -IP.21 = 10.0.0.20 -IP.22 = 10.0.0.21 -IP.23 = 10.0.0.22 -IP.24 = 10.0.0.23 -IP.25 = 10.0.0.24 -IP.26 = 10.0.0.25 -IP.27 = 10.0.0.26 -IP.28 = 10.0.0.27 -IP.29 = 10.0.0.28 -IP.30 = 10.0.0.29 -IP.31 = 10.0.0.30 -IP.32 = 10.0.0.31 -IP.33 = 10.0.0.32 -IP.34 = 10.0.0.33 -IP.35 = 10.0.0.34 -IP.36 = 10.0.0.35 -IP.37 = 10.0.0.36 -IP.38 = 10.0.0.37 -IP.39 = 10.0.0.38 -IP.40 = 10.0.0.39 -IP.41 = 10.0.0.40 -IP.42 = 10.0.0.41 -IP.43 = 10.0.0.42 -IP.44 = 10.0.0.43 -IP.45 = 10.0.0.44 -IP.46 = 10.0.0.45 -IP.47 = 10.0.0.46 -IP.48 = 10.0.0.47 -IP.49 = 10.0.0.48 -IP.50 = 10.0.0.49 -IP.51 = 10.0.0.50 -IP.52 = 10.0.0.51 -IP.53 = 10.0.0.52 -IP.54 = 10.0.0.53 -IP.55 = 10.0.0.54 -IP.56 = 10.0.0.55 -IP.57 = 10.0.0.56 -IP.58 = 10.0.0.57 -IP.59 = 10.0.0.58 -IP.60 = 10.0.0.59 -IP.61 = 10.0.0.60 -IP.62 = 10.0.0.61 -IP.63 = 10.0.0.62 -IP.64 = 10.0.0.63 -IP.65 = 10.0.0.64 -IP.66 = 10.0.0.65 -IP.67 = 10.0.0.66 -IP.68 = 10.0.0.67 -IP.69 = 10.0.0.68 -IP.70 = 10.0.0.69 -IP.71 = 10.0.0.70 -IP.72 = 10.0.0.71 -IP.73 = 10.0.0.72 -IP.74 = 10.0.0.73 -IP.75 = 10.0.0.74 -IP.76 = 10.0.0.75 -IP.77 = 10.0.0.76 -IP.78 = 10.0.0.77 -IP.79 = 10.0.0.78 -IP.80 = 10.0.0.79 -IP.81 = 10.0.0.80 -IP.82 = 10.0.0.81 -IP.83 = 10.0.0.82 -IP.84 = 10.0.0.83 -IP.85 = 10.0.0.84 -IP.86 = 10.0.0.85 -IP.87 = 10.0.0.86 -IP.88 = 10.0.0.87 -IP.89 = 10.0.0.88 -IP.90 = 10.0.0.89 -IP.91 = 10.0.0.90 -IP.92 = 10.0.0.91 -IP.93 = 10.0.0.92 -IP.94 = 10.0.0.93 -IP.95 = 10.0.0.94 -IP.96 = 10.0.0.95 -IP.97 = 10.0.0.96 -IP.98 = 10.0.0.97 -IP.99 = 10.0.0.98 -IP.100 = 10.0.0.99 -IP.101 = 10.0.0.100 -IP.102 = 10.0.0.101 -IP.103 = 10.0.0.102 -IP.104 = 10.0.0.103 -IP.105 = 10.0.0.104 -IP.106 = 10.0.0.105 -IP.107 = 10.0.0.106 -IP.108 = 10.0.0.107 -IP.109 = 10.0.0.108 -IP.110 = 10.0.0.109 -IP.111 = 10.0.0.110 -IP.112 = 10.0.0.111 -IP.113 = 10.0.0.112 -IP.114 = 10.0.0.113 -IP.115 = 10.0.0.114 -IP.116 = 10.0.0.115 -IP.117 = 10.0.0.116 -IP.118 = 10.0.0.117 -IP.119 = 10.0.0.118 -IP.120 = 10.0.0.119 -IP.121 = 10.0.0.120 -IP.122 = 10.0.0.121 -IP.123 = 10.0.0.122 -IP.124 = 10.0.0.123 -IP.125 = 10.0.0.124 -IP.126 = 10.0.0.125 -IP.127 = 10.0.0.126 -IP.128 = 10.0.0.127 -IP.129 = 10.0.0.128 -IP.130 = 10.0.0.129 -IP.131 = 10.0.0.130 -IP.132 = 10.0.0.131 -IP.133 = 10.0.0.132 -IP.134 = 10.0.0.133 -IP.135 = 10.0.0.134 -IP.136 = 10.0.0.135 -IP.137 = 10.0.0.136 -IP.138 = 10.0.0.137 -IP.139 = 10.0.0.138 -IP.140 = 10.0.0.139 -IP.141 = 10.0.0.140 -IP.142 = 10.0.0.141 -IP.143 = 10.0.0.142 -IP.144 = 10.0.0.143 -IP.145 = 10.0.0.144 -IP.146 = 10.0.0.145 -IP.147 = 10.0.0.146 -IP.148 = 10.0.0.147 -IP.149 = 10.0.0.148 -IP.150 = 10.0.0.149 -IP.151 = 10.0.0.150 -IP.152 = 10.0.0.151 -IP.153 = 10.0.0.152 -IP.154 = 10.0.0.153 -IP.155 = 10.0.0.154 -IP.156 = 10.0.0.155 -IP.157 = 10.0.0.156 -IP.158 = 10.0.0.157 -IP.159 = 10.0.0.158 -IP.160 = 10.0.0.159 -IP.161 = 10.0.0.160 -IP.162 = 10.0.0.161 -IP.163 = 10.0.0.162 -IP.164 = 10.0.0.163 -IP.165 = 10.0.0.164 -IP.166 = 10.0.0.165 -IP.167 = 10.0.0.166 -IP.168 = 10.0.0.167 -IP.169 = 10.0.0.168 -IP.170 = 10.0.0.169 -IP.171 = 10.0.0.170 -IP.172 = 10.0.0.171 -IP.173 = 10.0.0.172 -IP.174 = 10.0.0.173 -IP.175 = 10.0.0.174 -IP.176 = 10.0.0.175 -IP.177 = 10.0.0.176 -IP.178 = 10.0.0.177 -IP.179 = 10.0.0.178 -IP.180 = 10.0.0.179 -IP.181 = 10.0.0.180 -IP.182 = 10.0.0.181 -IP.183 = 10.0.0.182 -IP.184 = 10.0.0.183 -IP.185 = 10.0.0.184 -IP.186 = 10.0.0.185 -IP.187 = 10.0.0.186 -IP.188 = 10.0.0.187 -IP.189 = 10.0.0.188 -IP.190 = 10.0.0.189 -IP.191 = 10.0.0.190 -IP.192 = 10.0.0.191 -IP.193 = 10.0.0.192 -IP.194 = 10.0.0.193 -IP.195 = 10.0.0.194 -IP.196 = 10.0.0.195 -IP.197 = 10.0.0.196 -IP.198 = 10.0.0.197 -IP.199 = 10.0.0.198 -IP.200 = 10.0.0.199 -IP.201 = 10.0.0.200 -IP.202 = 10.0.0.201 -IP.203 = 10.0.0.202 -IP.204 = 10.0.0.203 -IP.205 = 10.0.0.204 -IP.206 = 10.0.0.205 -IP.207 = 10.0.0.206 -IP.208 = 10.0.0.207 -IP.209 = 10.0.0.208 -IP.210 = 10.0.0.209 -IP.211 = 10.0.0.210 -IP.212 = 10.0.0.211 -IP.213 = 10.0.0.212 -IP.214 = 10.0.0.213 -IP.215 = 10.0.0.214 -IP.216 = 10.0.0.215 -IP.217 = 10.0.0.216 -IP.218 = 10.0.0.217 -IP.219 = 10.0.0.218 -IP.220 = 10.0.0.219 -IP.221 = 10.0.0.220 -IP.222 = 10.0.0.221 -IP.223 = 10.0.0.222 -IP.224 = 10.0.0.223 -IP.225 = 10.0.0.224 -IP.226 = 10.0.0.225 -IP.227 = 10.0.0.226 -IP.228 = 10.0.0.227 -IP.229 = 10.0.0.228 -IP.230 = 10.0.0.229 -IP.231 = 10.0.0.230 -IP.232 = 10.0.0.231 -IP.233 = 10.0.0.232 -IP.234 = 10.0.0.233 -IP.235 = 10.0.0.234 -IP.236 = 10.0.0.235 -IP.237 = 10.0.0.236 -IP.238 = 10.0.0.237 -IP.239 = 10.0.0.238 -IP.240 = 10.0.0.239 -IP.241 = 10.0.0.240 -IP.242 = 10.0.0.241 -IP.243 = 10.0.0.242 -IP.244 = 10.0.0.243 -IP.245 = 10.0.0.244 -IP.246 = 10.0.0.245 -IP.247 = 10.0.0.246 -IP.248 = 10.0.0.247 -IP.249 = 10.0.0.248 -IP.250 = 10.0.0.249 -IP.251 = 10.0.0.250 -IP.252 = 10.0.0.251 -IP.253 = 10.0.0.252 -IP.254 = 10.0.0.253 -IP.255 = 10.0.0.254 -IP.256 = 10.0.0.255 -IP.257 = 10.0.1.0 -IP.258 = 10.0.1.1 -IP.259 = 10.0.1.2 -IP.260 = 10.0.1.3 -IP.261 = 10.0.1.4 -IP.262 = 10.0.1.5 -IP.263 = 10.0.1.6 -IP.264 = 10.0.1.7 -IP.265 = 10.0.1.8 -IP.266 = 10.0.1.9 -IP.267 = 10.0.1.10 -IP.268 = 10.0.1.11 -IP.269 = 10.0.1.12 -IP.270 = 10.0.1.13 -IP.271 = 10.0.1.14 -IP.272 = 10.0.1.15 -IP.273 = 10.0.1.16 -IP.274 = 10.0.1.17 -IP.275 = 10.0.1.18 -IP.276 = 10.0.1.19 -IP.277 = 10.0.1.20 -IP.278 = 10.0.1.21 -IP.279 = 10.0.1.22 -IP.280 = 10.0.1.23 -IP.281 = 10.0.1.24 -IP.282 = 10.0.1.25 -IP.283 = 10.0.1.26 -IP.284 = 10.0.1.27 -IP.285 = 10.0.1.28 -IP.286 = 10.0.1.29 -IP.287 = 10.0.1.30 -IP.288 = 10.0.1.31 -IP.289 = 10.0.1.32 -IP.290 = 10.0.1.33 -IP.291 = 10.0.1.34 -IP.292 = 10.0.1.35 -IP.293 = 10.0.1.36 -IP.294 = 10.0.1.37 -IP.295 = 10.0.1.38 -IP.296 = 10.0.1.39 -IP.297 = 10.0.1.40 -IP.298 = 10.0.1.41 -IP.299 = 10.0.1.42 -IP.300 = 10.0.1.43 -IP.301 = 10.0.1.44 -IP.302 = 10.0.1.45 -IP.303 = 10.0.1.46 -IP.304 = 10.0.1.47 -IP.305 = 10.0.1.48 -IP.306 = 10.0.1.49 -IP.307 = 10.0.1.50 -IP.308 = 10.0.1.51 -IP.309 = 10.0.1.52 -IP.310 = 10.0.1.53 -IP.311 = 10.0.1.54 -IP.312 = 10.0.1.55 -IP.313 = 10.0.1.56 -IP.314 = 10.0.1.57 -IP.315 = 10.0.1.58 -IP.316 = 10.0.1.59 -IP.317 = 10.0.1.60 -IP.318 = 10.0.1.61 -IP.319 = 10.0.1.62 -IP.320 = 10.0.1.63 -IP.321 = 10.0.1.64 -IP.322 = 10.0.1.65 -IP.323 = 10.0.1.66 -IP.324 = 10.0.1.67 -IP.325 = 10.0.1.68 -IP.326 = 10.0.1.69 -IP.327 = 10.0.1.70 -IP.328 = 10.0.1.71 -IP.329 = 10.0.1.72 -IP.330 = 10.0.1.73 -IP.331 = 10.0.1.74 -IP.332 = 10.0.1.75 -IP.333 = 10.0.1.76 -IP.334 = 10.0.1.77 -IP.335 = 10.0.1.78 -IP.336 = 10.0.1.79 -IP.337 = 10.0.1.80 -IP.338 = 10.0.1.81 -IP.339 = 10.0.1.82 -IP.340 = 10.0.1.83 -IP.341 = 10.0.1.84 -dirName.1 = san_dirname1 -dirName.2 = san_dirname2 -dirName.3 = san_dirname3 -dirName.4 = san_dirname4 -dirName.5 = san_dirname5 -dirName.6 = san_dirname6 -dirName.7 = san_dirname7 -dirName.8 = san_dirname8 -dirName.9 = san_dirname9 -dirName.10 = san_dirname10 -dirName.11 = san_dirname11 -dirName.12 = san_dirname12 -dirName.13 = san_dirname13 -dirName.14 = san_dirname14 -dirName.15 = san_dirname15 -dirName.16 = san_dirname16 -dirName.17 = san_dirname17 -dirName.18 = san_dirname18 -dirName.19 = san_dirname19 -dirName.20 = san_dirname20 -dirName.21 = san_dirname21 -dirName.22 = san_dirname22 -dirName.23 = san_dirname23 -dirName.24 = san_dirname24 -dirName.25 = san_dirname25 -dirName.26 = san_dirname26 -dirName.27 = san_dirname27 -dirName.28 = san_dirname28 -dirName.29 = san_dirname29 -dirName.30 = san_dirname30 -dirName.31 = san_dirname31 -dirName.32 = san_dirname32 -dirName.33 = san_dirname33 -dirName.34 = san_dirname34 -dirName.35 = san_dirname35 -dirName.36 = san_dirname36 -dirName.37 = san_dirname37 -dirName.38 = san_dirname38 -dirName.39 = san_dirname39 -dirName.40 = san_dirname40 -dirName.41 = san_dirname41 -dirName.42 = san_dirname42 -dirName.43 = san_dirname43 -dirName.44 = san_dirname44 -dirName.45 = san_dirname45 -dirName.46 = san_dirname46 -dirName.47 = san_dirname47 -dirName.48 = san_dirname48 -dirName.49 = san_dirname49 -dirName.50 = san_dirname50 -dirName.51 = san_dirname51 -dirName.52 = san_dirname52 -dirName.53 = san_dirname53 -dirName.54 = san_dirname54 -dirName.55 = san_dirname55 -dirName.56 = san_dirname56 -dirName.57 = san_dirname57 -dirName.58 = san_dirname58 -dirName.59 = san_dirname59 -dirName.60 = san_dirname60 -dirName.61 = san_dirname61 -dirName.62 = san_dirname62 -dirName.63 = san_dirname63 -dirName.64 = san_dirname64 -dirName.65 = san_dirname65 -dirName.66 = san_dirname66 -dirName.67 = san_dirname67 -dirName.68 = san_dirname68 -dirName.69 = san_dirname69 -dirName.70 = san_dirname70 -dirName.71 = san_dirname71 -dirName.72 = san_dirname72 -dirName.73 = san_dirname73 -dirName.74 = san_dirname74 -dirName.75 = san_dirname75 -dirName.76 = san_dirname76 -dirName.77 = san_dirname77 -dirName.78 = san_dirname78 -dirName.79 = san_dirname79 -dirName.80 = san_dirname80 -dirName.81 = san_dirname81 -dirName.82 = san_dirname82 -dirName.83 = san_dirname83 -dirName.84 = san_dirname84 -dirName.85 = san_dirname85 -dirName.86 = san_dirname86 -dirName.87 = san_dirname87 -dirName.88 = san_dirname88 -dirName.89 = san_dirname89 -dirName.90 = san_dirname90 -dirName.91 = san_dirname91 -dirName.92 = san_dirname92 -dirName.93 = san_dirname93 -dirName.94 = san_dirname94 -dirName.95 = san_dirname95 -dirName.96 = san_dirname96 -dirName.97 = san_dirname97 -dirName.98 = san_dirname98 -dirName.99 = san_dirname99 -dirName.100 = san_dirname100 -dirName.101 = san_dirname101 -dirName.102 = san_dirname102 -dirName.103 = san_dirname103 -dirName.104 = san_dirname104 -dirName.105 = san_dirname105 -dirName.106 = san_dirname106 -dirName.107 = san_dirname107 -dirName.108 = san_dirname108 -dirName.109 = san_dirname109 -dirName.110 = san_dirname110 -dirName.111 = san_dirname111 -dirName.112 = san_dirname112 -dirName.113 = san_dirname113 -dirName.114 = san_dirname114 -dirName.115 = san_dirname115 -dirName.116 = san_dirname116 -dirName.117 = san_dirname117 -dirName.118 = san_dirname118 -dirName.119 = san_dirname119 -dirName.120 = san_dirname120 -dirName.121 = san_dirname121 -dirName.122 = san_dirname122 -dirName.123 = san_dirname123 -dirName.124 = san_dirname124 -dirName.125 = san_dirname125 -dirName.126 = san_dirname126 -dirName.127 = san_dirname127 -dirName.128 = san_dirname128 -dirName.129 = san_dirname129 -dirName.130 = san_dirname130 -dirName.131 = san_dirname131 -dirName.132 = san_dirname132 -dirName.133 = san_dirname133 -dirName.134 = san_dirname134 -dirName.135 = san_dirname135 -dirName.136 = san_dirname136 -dirName.137 = san_dirname137 -dirName.138 = san_dirname138 -dirName.139 = san_dirname139 -dirName.140 = san_dirname140 -dirName.141 = san_dirname141 -dirName.142 = san_dirname142 -dirName.143 = san_dirname143 -dirName.144 = san_dirname144 -dirName.145 = san_dirname145 -dirName.146 = san_dirname146 -dirName.147 = san_dirname147 -dirName.148 = san_dirname148 -dirName.149 = san_dirname149 -dirName.150 = san_dirname150 -dirName.151 = san_dirname151 -dirName.152 = san_dirname152 -dirName.153 = san_dirname153 -dirName.154 = san_dirname154 -dirName.155 = san_dirname155 -dirName.156 = san_dirname156 -dirName.157 = san_dirname157 -dirName.158 = san_dirname158 -dirName.159 = san_dirname159 -dirName.160 = san_dirname160 -dirName.161 = san_dirname161 -dirName.162 = san_dirname162 -dirName.163 = san_dirname163 -dirName.164 = san_dirname164 -dirName.165 = san_dirname165 -dirName.166 = san_dirname166 -dirName.167 = san_dirname167 -dirName.168 = san_dirname168 -dirName.169 = san_dirname169 -dirName.170 = san_dirname170 -dirName.171 = san_dirname171 -dirName.172 = san_dirname172 -dirName.173 = san_dirname173 -dirName.174 = san_dirname174 -dirName.175 = san_dirname175 -dirName.176 = san_dirname176 -dirName.177 = san_dirname177 -dirName.178 = san_dirname178 -dirName.179 = san_dirname179 -dirName.180 = san_dirname180 -dirName.181 = san_dirname181 -dirName.182 = san_dirname182 -dirName.183 = san_dirname183 -dirName.184 = san_dirname184 -dirName.185 = san_dirname185 -dirName.186 = san_dirname186 -dirName.187 = san_dirname187 -dirName.188 = san_dirname188 -dirName.189 = san_dirname189 -dirName.190 = san_dirname190 -dirName.191 = san_dirname191 -dirName.192 = san_dirname192 -dirName.193 = san_dirname193 -dirName.194 = san_dirname194 -dirName.195 = san_dirname195 -dirName.196 = san_dirname196 -dirName.197 = san_dirname197 -dirName.198 = san_dirname198 -dirName.199 = san_dirname199 -dirName.200 = san_dirname200 -dirName.201 = san_dirname201 -dirName.202 = san_dirname202 -dirName.203 = san_dirname203 -dirName.204 = san_dirname204 -dirName.205 = san_dirname205 -dirName.206 = san_dirname206 -dirName.207 = san_dirname207 -dirName.208 = san_dirname208 -dirName.209 = san_dirname209 -dirName.210 = san_dirname210 -dirName.211 = san_dirname211 -dirName.212 = san_dirname212 -dirName.213 = san_dirname213 -dirName.214 = san_dirname214 -dirName.215 = san_dirname215 -dirName.216 = san_dirname216 -dirName.217 = san_dirname217 -dirName.218 = san_dirname218 -dirName.219 = san_dirname219 -dirName.220 = san_dirname220 -dirName.221 = san_dirname221 -dirName.222 = san_dirname222 -dirName.223 = san_dirname223 -dirName.224 = san_dirname224 -dirName.225 = san_dirname225 -dirName.226 = san_dirname226 -dirName.227 = san_dirname227 -dirName.228 = san_dirname228 -dirName.229 = san_dirname229 -dirName.230 = san_dirname230 -dirName.231 = san_dirname231 -dirName.232 = san_dirname232 -dirName.233 = san_dirname233 -dirName.234 = san_dirname234 -dirName.235 = san_dirname235 -dirName.236 = san_dirname236 -dirName.237 = san_dirname237 -dirName.238 = san_dirname238 -dirName.239 = san_dirname239 -dirName.240 = san_dirname240 -dirName.241 = san_dirname241 -dirName.242 = san_dirname242 -dirName.243 = san_dirname243 -dirName.244 = san_dirname244 -dirName.245 = san_dirname245 -dirName.246 = san_dirname246 -dirName.247 = san_dirname247 -dirName.248 = san_dirname248 -dirName.249 = san_dirname249 -dirName.250 = san_dirname250 -dirName.251 = san_dirname251 -dirName.252 = san_dirname252 -dirName.253 = san_dirname253 -dirName.254 = san_dirname254 -dirName.255 = san_dirname255 -dirName.256 = san_dirname256 -dirName.257 = san_dirname257 -dirName.258 = san_dirname258 -dirName.259 = san_dirname259 -dirName.260 = san_dirname260 -dirName.261 = san_dirname261 -dirName.262 = san_dirname262 -dirName.263 = san_dirname263 -dirName.264 = san_dirname264 -dirName.265 = san_dirname265 -dirName.266 = san_dirname266 -dirName.267 = san_dirname267 -dirName.268 = san_dirname268 -dirName.269 = san_dirname269 -dirName.270 = san_dirname270 -dirName.271 = san_dirname271 -dirName.272 = san_dirname272 -dirName.273 = san_dirname273 -dirName.274 = san_dirname274 -dirName.275 = san_dirname275 -dirName.276 = san_dirname276 -dirName.277 = san_dirname277 -dirName.278 = san_dirname278 -dirName.279 = san_dirname279 -dirName.280 = san_dirname280 -dirName.281 = san_dirname281 -dirName.282 = san_dirname282 -dirName.283 = san_dirname283 -dirName.284 = san_dirname284 -dirName.285 = san_dirname285 -dirName.286 = san_dirname286 -dirName.287 = san_dirname287 -dirName.288 = san_dirname288 -dirName.289 = san_dirname289 -dirName.290 = san_dirname290 -dirName.291 = san_dirname291 -dirName.292 = san_dirname292 -dirName.293 = san_dirname293 -dirName.294 = san_dirname294 -dirName.295 = san_dirname295 -dirName.296 = san_dirname296 -dirName.297 = san_dirname297 -dirName.298 = san_dirname298 -dirName.299 = san_dirname299 -dirName.300 = san_dirname300 -dirName.301 = san_dirname301 -dirName.302 = san_dirname302 -dirName.303 = san_dirname303 -dirName.304 = san_dirname304 -dirName.305 = san_dirname305 -dirName.306 = san_dirname306 -dirName.307 = san_dirname307 -dirName.308 = san_dirname308 -dirName.309 = san_dirname309 -dirName.310 = san_dirname310 -dirName.311 = san_dirname311 -dirName.312 = san_dirname312 -dirName.313 = san_dirname313 -dirName.314 = san_dirname314 -dirName.315 = san_dirname315 -dirName.316 = san_dirname316 -dirName.317 = san_dirname317 -dirName.318 = san_dirname318 -dirName.319 = san_dirname319 -dirName.320 = san_dirname320 -dirName.321 = san_dirname321 -dirName.322 = san_dirname322 -dirName.323 = san_dirname323 -dirName.324 = san_dirname324 -dirName.325 = san_dirname325 -dirName.326 = san_dirname326 -dirName.327 = san_dirname327 -dirName.328 = san_dirname328 -dirName.329 = san_dirname329 -dirName.330 = san_dirname330 -dirName.331 = san_dirname331 -dirName.332 = san_dirname332 -dirName.333 = san_dirname333 -dirName.334 = san_dirname334 -dirName.335 = san_dirname335 -dirName.336 = san_dirname336 -dirName.337 = san_dirname337 -dirName.338 = san_dirname338 -dirName.339 = san_dirname339 -dirName.340 = san_dirname340 -dirName.341 = san_dirname341 -dirName.342 = san_dirname342 -URI.1 = http://test/0 -URI.2 = http://test/1 -URI.3 = http://test/2 -URI.4 = http://test/3 -URI.5 = http://test/4 -URI.6 = http://test/5 -URI.7 = http://test/6 -URI.8 = http://test/7 -URI.9 = http://test/8 -URI.10 = http://test/9 -URI.11 = http://test/10 -URI.12 = http://test/11 -URI.13 = http://test/12 -URI.14 = http://test/13 -URI.15 = http://test/14 -URI.16 = http://test/15 -URI.17 = http://test/16 -URI.18 = http://test/17 -URI.19 = http://test/18 -URI.20 = http://test/19 -URI.21 = http://test/20 -URI.22 = http://test/21 -URI.23 = http://test/22 -URI.24 = http://test/23 -URI.25 = http://test/24 -URI.26 = http://test/25 -URI.27 = http://test/26 -URI.28 = http://test/27 -URI.29 = http://test/28 -URI.30 = http://test/29 -URI.31 = http://test/30 -URI.32 = http://test/31 -URI.33 = http://test/32 -URI.34 = http://test/33 -URI.35 = http://test/34 -URI.36 = http://test/35 -URI.37 = http://test/36 -URI.38 = http://test/37 -URI.39 = http://test/38 -URI.40 = http://test/39 -URI.41 = http://test/40 -URI.42 = http://test/41 -URI.43 = http://test/42 -URI.44 = http://test/43 -URI.45 = http://test/44 -URI.46 = http://test/45 -URI.47 = http://test/46 -URI.48 = http://test/47 -URI.49 = http://test/48 -URI.50 = http://test/49 -URI.51 = http://test/50 -URI.52 = http://test/51 -URI.53 = http://test/52 -URI.54 = http://test/53 -URI.55 = http://test/54 -URI.56 = http://test/55 -URI.57 = http://test/56 -URI.58 = http://test/57 -URI.59 = http://test/58 -URI.60 = http://test/59 -URI.61 = http://test/60 -URI.62 = http://test/61 -URI.63 = http://test/62 -URI.64 = http://test/63 -URI.65 = http://test/64 -URI.66 = http://test/65 -URI.67 = http://test/66 -URI.68 = http://test/67 -URI.69 = http://test/68 -URI.70 = http://test/69 -URI.71 = http://test/70 -URI.72 = http://test/71 -URI.73 = http://test/72 -URI.74 = http://test/73 -URI.75 = http://test/74 -URI.76 = http://test/75 -URI.77 = http://test/76 -URI.78 = http://test/77 -URI.79 = http://test/78 -URI.80 = http://test/79 -URI.81 = http://test/80 -URI.82 = http://test/81 -URI.83 = http://test/82 -URI.84 = http://test/83 -URI.85 = http://test/84 -URI.86 = http://test/85 -URI.87 = http://test/86 -URI.88 = http://test/87 -URI.89 = http://test/88 -URI.90 = http://test/89 -URI.91 = http://test/90 -URI.92 = http://test/91 -URI.93 = http://test/92 -URI.94 = http://test/93 -URI.95 = http://test/94 -URI.96 = http://test/95 -URI.97 = http://test/96 -URI.98 = http://test/97 -URI.99 = http://test/98 -URI.100 = http://test/99 -URI.101 = http://test/100 -URI.102 = http://test/101 -URI.103 = http://test/102 -URI.104 = http://test/103 -URI.105 = http://test/104 -URI.106 = http://test/105 -URI.107 = http://test/106 -URI.108 = http://test/107 -URI.109 = http://test/108 -URI.110 = http://test/109 -URI.111 = http://test/110 -URI.112 = http://test/111 -URI.113 = http://test/112 -URI.114 = http://test/113 -URI.115 = http://test/114 -URI.116 = http://test/115 -URI.117 = http://test/116 -URI.118 = http://test/117 -URI.119 = http://test/118 -URI.120 = http://test/119 -URI.121 = http://test/120 -URI.122 = http://test/121 -URI.123 = http://test/122 -URI.124 = http://test/123 -URI.125 = http://test/124 -URI.126 = http://test/125 -URI.127 = http://test/126 -URI.128 = http://test/127 -URI.129 = http://test/128 -URI.130 = http://test/129 -URI.131 = http://test/130 -URI.132 = http://test/131 -URI.133 = http://test/132 -URI.134 = http://test/133 -URI.135 = http://test/134 -URI.136 = http://test/135 -URI.137 = http://test/136 -URI.138 = http://test/137 -URI.139 = http://test/138 -URI.140 = http://test/139 -URI.141 = http://test/140 -URI.142 = http://test/141 -URI.143 = http://test/142 -URI.144 = http://test/143 -URI.145 = http://test/144 -URI.146 = http://test/145 -URI.147 = http://test/146 -URI.148 = http://test/147 -URI.149 = http://test/148 -URI.150 = http://test/149 -URI.151 = http://test/150 -URI.152 = http://test/151 -URI.153 = http://test/152 -URI.154 = http://test/153 -URI.155 = http://test/154 -URI.156 = http://test/155 -URI.157 = http://test/156 -URI.158 = http://test/157 -URI.159 = http://test/158 -URI.160 = http://test/159 -URI.161 = http://test/160 -URI.162 = http://test/161 -URI.163 = http://test/162 -URI.164 = http://test/163 -URI.165 = http://test/164 -URI.166 = http://test/165 -URI.167 = http://test/166 -URI.168 = http://test/167 -URI.169 = http://test/168 -URI.170 = http://test/169 -URI.171 = http://test/170 -URI.172 = http://test/171 -URI.173 = http://test/172 -URI.174 = http://test/173 -URI.175 = http://test/174 -URI.176 = http://test/175 -URI.177 = http://test/176 -URI.178 = http://test/177 -URI.179 = http://test/178 -URI.180 = http://test/179 -URI.181 = http://test/180 -URI.182 = http://test/181 -URI.183 = http://test/182 -URI.184 = http://test/183 -URI.185 = http://test/184 -URI.186 = http://test/185 -URI.187 = http://test/186 -URI.188 = http://test/187 -URI.189 = http://test/188 -URI.190 = http://test/189 -URI.191 = http://test/190 -URI.192 = http://test/191 -URI.193 = http://test/192 -URI.194 = http://test/193 -URI.195 = http://test/194 -URI.196 = http://test/195 -URI.197 = http://test/196 -URI.198 = http://test/197 -URI.199 = http://test/198 -URI.200 = http://test/199 -URI.201 = http://test/200 -URI.202 = http://test/201 -URI.203 = http://test/202 -URI.204 = http://test/203 -URI.205 = http://test/204 -URI.206 = http://test/205 -URI.207 = http://test/206 -URI.208 = http://test/207 -URI.209 = http://test/208 -URI.210 = http://test/209 -URI.211 = http://test/210 -URI.212 = http://test/211 -URI.213 = http://test/212 -URI.214 = http://test/213 -URI.215 = http://test/214 -URI.216 = http://test/215 -URI.217 = http://test/216 -URI.218 = http://test/217 -URI.219 = http://test/218 -URI.220 = http://test/219 -URI.221 = http://test/220 -URI.222 = http://test/221 -URI.223 = http://test/222 -URI.224 = http://test/223 -URI.225 = http://test/224 -URI.226 = http://test/225 -URI.227 = http://test/226 -URI.228 = http://test/227 -URI.229 = http://test/228 -URI.230 = http://test/229 -URI.231 = http://test/230 -URI.232 = http://test/231 -URI.233 = http://test/232 -URI.234 = http://test/233 -URI.235 = http://test/234 -URI.236 = http://test/235 -URI.237 = http://test/236 -URI.238 = http://test/237 -URI.239 = http://test/238 -URI.240 = http://test/239 -URI.241 = http://test/240 -URI.242 = http://test/241 -URI.243 = http://test/242 -URI.244 = http://test/243 -URI.245 = http://test/244 -URI.246 = http://test/245 -URI.247 = http://test/246 -URI.248 = http://test/247 -URI.249 = http://test/248 -URI.250 = http://test/249 -URI.251 = http://test/250 -URI.252 = http://test/251 -URI.253 = http://test/252 -URI.254 = http://test/253 -URI.255 = http://test/254 -URI.256 = http://test/255 -URI.257 = http://test/256 -URI.258 = http://test/257 -URI.259 = http://test/258 -URI.260 = http://test/259 -URI.261 = http://test/260 -URI.262 = http://test/261 -URI.263 = http://test/262 -URI.264 = http://test/263 -URI.265 = http://test/264 -URI.266 = http://test/265 -URI.267 = http://test/266 -URI.268 = http://test/267 -URI.269 = http://test/268 -URI.270 = http://test/269 -URI.271 = http://test/270 -URI.272 = http://test/271 -URI.273 = http://test/272 -URI.274 = http://test/273 -URI.275 = http://test/274 -URI.276 = http://test/275 -URI.277 = http://test/276 -URI.278 = http://test/277 -URI.279 = http://test/278 -URI.280 = http://test/279 -URI.281 = http://test/280 -URI.282 = http://test/281 -URI.283 = http://test/282 -URI.284 = http://test/283 -URI.285 = http://test/284 -URI.286 = http://test/285 -URI.287 = http://test/286 -URI.288 = http://test/287 -URI.289 = http://test/288 -URI.290 = http://test/289 -URI.291 = http://test/290 -URI.292 = http://test/291 -URI.293 = http://test/292 -URI.294 = http://test/293 -URI.295 = http://test/294 -URI.296 = http://test/295 -URI.297 = http://test/296 -URI.298 = http://test/297 -URI.299 = http://test/298 -URI.300 = http://test/299 -URI.301 = http://test/300 -URI.302 = http://test/301 -URI.303 = http://test/302 -URI.304 = http://test/303 -URI.305 = http://test/304 -URI.306 = http://test/305 -URI.307 = http://test/306 -URI.308 = http://test/307 -URI.309 = http://test/308 -URI.310 = http://test/309 -URI.311 = http://test/310 -URI.312 = http://test/311 -URI.313 = http://test/312 -URI.314 = http://test/313 -URI.315 = http://test/314 -URI.316 = http://test/315 -URI.317 = http://test/316 -URI.318 = http://test/317 -URI.319 = http://test/318 -URI.320 = http://test/319 -URI.321 = http://test/320 -URI.322 = http://test/321 -URI.323 = http://test/322 -URI.324 = http://test/323 -URI.325 = http://test/324 -URI.326 = http://test/325 -URI.327 = http://test/326 -URI.328 = http://test/327 -URI.329 = http://test/328 -URI.330 = http://test/329 -URI.331 = http://test/330 -URI.332 = http://test/331 -URI.333 = http://test/332 -URI.334 = http://test/333 -URI.335 = http://test/334 -URI.336 = http://test/335 -URI.337 = http://test/336 -URI.338 = http://test/337 -URI.339 = http://test/338 -URI.340 = http://test/339 -URI.341 = http://test/340 -URI.342 = http://test/341 -URI.343 = http://test/342 -URI.344 = http://test/343 -URI.345 = http://test/344 -URI.346 = http://test/345 -URI.347 = http://test/346 -URI.348 = http://test/347 -URI.349 = http://test/348 -URI.350 = http://test/349 -URI.351 = http://test/350 -URI.352 = http://test/351 -URI.353 = http://test/352 -URI.354 = http://test/353 -URI.355 = http://test/354 -URI.356 = http://test/355 -URI.357 = http://test/356 -URI.358 = http://test/357 -URI.359 = http://test/358 -URI.360 = http://test/359 -URI.361 = http://test/360 -URI.362 = http://test/361 -URI.363 = http://test/362 -URI.364 = http://test/363 -URI.365 = http://test/364 -URI.366 = http://test/365 -URI.367 = http://test/366 -URI.368 = http://test/367 -URI.369 = http://test/368 -URI.370 = http://test/369 -URI.371 = http://test/370 -URI.372 = http://test/371 -URI.373 = http://test/372 -URI.374 = http://test/373 -URI.375 = http://test/374 -URI.376 = http://test/375 -URI.377 = http://test/376 -URI.378 = http://test/377 -URI.379 = http://test/378 -URI.380 = http://test/379 -URI.381 = http://test/380 -URI.382 = http://test/381 -URI.383 = http://test/382 -URI.384 = http://test/383 -URI.385 = http://test/384 -URI.386 = http://test/385 -URI.387 = http://test/386 -URI.388 = http://test/387 -URI.389 = http://test/388 -URI.390 = http://test/389 -URI.391 = http://test/390 -URI.392 = http://test/391 -URI.393 = http://test/392 -URI.394 = http://test/393 -URI.395 = http://test/394 -URI.396 = http://test/395 -URI.397 = http://test/396 -URI.398 = http://test/397 -URI.399 = http://test/398 -URI.400 = http://test/399 -URI.401 = http://test/400 -URI.402 = http://test/401 -URI.403 = http://test/402 -URI.404 = http://test/403 -URI.405 = http://test/404 -URI.406 = http://test/405 -URI.407 = http://test/406 -URI.408 = http://test/407 -URI.409 = http://test/408 -URI.410 = http://test/409 -URI.411 = http://test/410 -URI.412 = http://test/411 -URI.413 = http://test/412 -URI.414 = http://test/413 -URI.415 = http://test/414 -URI.416 = http://test/415 -URI.417 = http://test/416 -URI.418 = http://test/417 -URI.419 = http://test/418 -URI.420 = http://test/419 -URI.421 = http://test/420 -URI.422 = http://test/421 -URI.423 = http://test/422 -URI.424 = http://test/423 -URI.425 = http://test/424 -URI.426 = http://test/425 -URI.427 = http://test/426 -URI.428 = http://test/427 -URI.429 = http://test/428 -URI.430 = http://test/429 -URI.431 = http://test/430 -URI.432 = http://test/431 -URI.433 = http://test/432 -URI.434 = http://test/433 -URI.435 = http://test/434 -URI.436 = http://test/435 -URI.437 = http://test/436 -URI.438 = http://test/437 -URI.439 = http://test/438 -URI.440 = http://test/439 -URI.441 = http://test/440 -URI.442 = http://test/441 -URI.443 = http://test/442 -URI.444 = http://test/443 -URI.445 = http://test/444 -URI.446 = http://test/445 -URI.447 = http://test/446 -URI.448 = http://test/447 -URI.449 = http://test/448 -URI.450 = http://test/449 -URI.451 = http://test/450 -URI.452 = http://test/451 -URI.453 = http://test/452 -URI.454 = http://test/453 -URI.455 = http://test/454 -URI.456 = http://test/455 -URI.457 = http://test/456 -URI.458 = http://test/457 -URI.459 = http://test/458 -URI.460 = http://test/459 -URI.461 = http://test/460 -URI.462 = http://test/461 -URI.463 = http://test/462 -URI.464 = http://test/463 -URI.465 = http://test/464 -URI.466 = http://test/465 -URI.467 = http://test/466 -URI.468 = http://test/467 -URI.469 = http://test/468 -URI.470 = http://test/469 -URI.471 = http://test/470 -URI.472 = http://test/471 -URI.473 = http://test/472 -URI.474 = http://test/473 -URI.475 = http://test/474 -URI.476 = http://test/475 -URI.477 = http://test/476 -URI.478 = http://test/477 -URI.479 = http://test/478 -URI.480 = http://test/479 -URI.481 = http://test/480 -URI.482 = http://test/481 -URI.483 = http://test/482 -URI.484 = http://test/483 -URI.485 = http://test/484 -URI.486 = http://test/485 -URI.487 = http://test/486 -URI.488 = http://test/487 -URI.489 = http://test/488 -URI.490 = http://test/489 -URI.491 = http://test/490 -URI.492 = http://test/491 -URI.493 = http://test/492 -URI.494 = http://test/493 -URI.495 = http://test/494 -URI.496 = http://test/495 -URI.497 = http://test/496 -URI.498 = http://test/497 -URI.499 = http://test/498 -URI.500 = http://test/499 -URI.501 = http://test/500 -URI.502 = http://test/501 -URI.503 = http://test/502 -URI.504 = http://test/503 -URI.505 = http://test/504 -URI.506 = http://test/505 -URI.507 = http://test/506 -URI.508 = http://test/507 -URI.509 = http://test/508 -URI.510 = http://test/509 -URI.511 = http://test/510 -URI.512 = http://test/511 -URI.513 = http://test/512 -URI.514 = http://test/513 -URI.515 = http://test/514 -URI.516 = http://test/515 -URI.517 = http://test/516 -URI.518 = http://test/517 -URI.519 = http://test/518 -URI.520 = http://test/519 -URI.521 = http://test/520 -URI.522 = http://test/521 -URI.523 = http://test/522 -URI.524 = http://test/523 -URI.525 = http://test/524 -URI.526 = http://test/525 -URI.527 = http://test/526 -URI.528 = http://test/527 -URI.529 = http://test/528 -URI.530 = http://test/529 -URI.531 = http://test/530 -URI.532 = http://test/531 -URI.533 = http://test/532 -URI.534 = http://test/533 -URI.535 = http://test/534 -URI.536 = http://test/535 -URI.537 = http://test/536 -URI.538 = http://test/537 -URI.539 = http://test/538 -URI.540 = http://test/539 -URI.541 = http://test/540 -URI.542 = http://test/541 -URI.543 = http://test/542 -URI.544 = http://test/543 -URI.545 = http://test/544 -URI.546 = http://test/545 -URI.547 = http://test/546 -URI.548 = http://test/547 -URI.549 = http://test/548 -URI.550 = http://test/549 -URI.551 = http://test/550 -URI.552 = http://test/551 -URI.553 = http://test/552 -URI.554 = http://test/553 -URI.555 = http://test/554 -URI.556 = http://test/555 -URI.557 = http://test/556 -URI.558 = http://test/557 -URI.559 = http://test/558 -URI.560 = http://test/559 -URI.561 = http://test/560 -URI.562 = http://test/561 -URI.563 = http://test/562 -URI.564 = http://test/563 -URI.565 = http://test/564 -URI.566 = http://test/565 -URI.567 = http://test/566 -URI.568 = http://test/567 -URI.569 = http://test/568 -URI.570 = http://test/569 -URI.571 = http://test/570 -URI.572 = http://test/571 -URI.573 = http://test/572 -URI.574 = http://test/573 -URI.575 = http://test/574 -URI.576 = http://test/575 -URI.577 = http://test/576 -URI.578 = http://test/577 -URI.579 = http://test/578 -URI.580 = http://test/579 -URI.581 = http://test/580 -URI.582 = http://test/581 -URI.583 = http://test/582 -URI.584 = http://test/583 -URI.585 = http://test/584 -URI.586 = http://test/585 -URI.587 = http://test/586 -URI.588 = http://test/587 -URI.589 = http://test/588 -URI.590 = http://test/589 -URI.591 = http://test/590 -URI.592 = http://test/591 -URI.593 = http://test/592 -URI.594 = http://test/593 -URI.595 = http://test/594 -URI.596 = http://test/595 -URI.597 = http://test/596 -URI.598 = http://test/597 -URI.599 = http://test/598 -URI.600 = http://test/599 -URI.601 = http://test/600 -URI.602 = http://test/601 -URI.603 = http://test/602 -URI.604 = http://test/603 -URI.605 = http://test/604 -URI.606 = http://test/605 -URI.607 = http://test/606 -URI.608 = http://test/607 -URI.609 = http://test/608 -URI.610 = http://test/609 -URI.611 = http://test/610 -URI.612 = http://test/611 -URI.613 = http://test/612 -URI.614 = http://test/613 -URI.615 = http://test/614 -URI.616 = http://test/615 -URI.617 = http://test/616 -URI.618 = http://test/617 -URI.619 = http://test/618 -URI.620 = http://test/619 -URI.621 = http://test/620 -URI.622 = http://test/621 -URI.623 = http://test/622 -URI.624 = http://test/623 -URI.625 = http://test/624 -URI.626 = http://test/625 -URI.627 = http://test/626 -URI.628 = http://test/627 -URI.629 = http://test/628 -URI.630 = http://test/629 -URI.631 = http://test/630 -URI.632 = http://test/631 -URI.633 = http://test/632 -URI.634 = http://test/633 -URI.635 = http://test/634 -URI.636 = http://test/635 -URI.637 = http://test/636 -URI.638 = http://test/637 -URI.639 = http://test/638 -URI.640 = http://test/639 -URI.641 = http://test/640 -URI.642 = http://test/641 -URI.643 = http://test/642 -URI.644 = http://test/643 -URI.645 = http://test/644 -URI.646 = http://test/645 -URI.647 = http://test/646 -URI.648 = http://test/647 -URI.649 = http://test/648 -URI.650 = http://test/649 -URI.651 = http://test/650 -URI.652 = http://test/651 -URI.653 = http://test/652 -URI.654 = http://test/653 -URI.655 = http://test/654 -URI.656 = http://test/655 -URI.657 = http://test/656 -URI.658 = http://test/657 -URI.659 = http://test/658 -URI.660 = http://test/659 -URI.661 = http://test/660 -URI.662 = http://test/661 -URI.663 = http://test/662 -URI.664 = http://test/663 -URI.665 = http://test/664 -URI.666 = http://test/665 -URI.667 = http://test/666 -URI.668 = http://test/667 -URI.669 = http://test/668 -URI.670 = http://test/669 -URI.671 = http://test/670 -URI.672 = http://test/671 -URI.673 = http://test/672 -URI.674 = http://test/673 -URI.675 = http://test/674 -URI.676 = http://test/675 -URI.677 = http://test/676 -URI.678 = http://test/677 -URI.679 = http://test/678 -URI.680 = http://test/679 -URI.681 = http://test/680 -URI.682 = http://test/681 -URI.683 = http://test/682 -URI.684 = http://test/683 -URI.685 = http://test/684 -URI.686 = http://test/685 -URI.687 = http://test/686 -URI.688 = http://test/687 -URI.689 = http://test/688 -URI.690 = http://test/689 -URI.691 = http://test/690 -URI.692 = http://test/691 -URI.693 = http://test/692 -URI.694 = http://test/693 -URI.695 = http://test/694 -URI.696 = http://test/695 -URI.697 = http://test/696 -URI.698 = http://test/697 -URI.699 = http://test/698 -URI.700 = http://test/699 -URI.701 = http://test/700 -URI.702 = http://test/701 -URI.703 = http://test/702 -URI.704 = http://test/703 -URI.705 = http://test/704 -URI.706 = http://test/705 -URI.707 = http://test/706 -URI.708 = http://test/707 -URI.709 = http://test/708 -URI.710 = http://test/709 -URI.711 = http://test/710 -URI.712 = http://test/711 -URI.713 = http://test/712 -URI.714 = http://test/713 -URI.715 = http://test/714 -URI.716 = http://test/715 -URI.717 = http://test/716 -URI.718 = http://test/717 -URI.719 = http://test/718 -URI.720 = http://test/719 -URI.721 = http://test/720 -URI.722 = http://test/721 -URI.723 = http://test/722 -URI.724 = http://test/723 -URI.725 = http://test/724 -URI.726 = http://test/725 -URI.727 = http://test/726 -URI.728 = http://test/727 -URI.729 = http://test/728 -URI.730 = http://test/729 -URI.731 = http://test/730 -URI.732 = http://test/731 -URI.733 = http://test/732 -URI.734 = http://test/733 -URI.735 = http://test/734 -URI.736 = http://test/735 -URI.737 = http://test/736 -URI.738 = http://test/737 -URI.739 = http://test/738 -URI.740 = http://test/739 -URI.741 = http://test/740 -URI.742 = http://test/741 -URI.743 = http://test/742 -URI.744 = http://test/743 -URI.745 = http://test/744 -URI.746 = http://test/745 -URI.747 = http://test/746 -URI.748 = http://test/747 -URI.749 = http://test/748 -URI.750 = http://test/749 -URI.751 = http://test/750 -URI.752 = http://test/751 -URI.753 = http://test/752 -URI.754 = http://test/753 -URI.755 = http://test/754 -URI.756 = http://test/755 -URI.757 = http://test/756 -URI.758 = http://test/757 -URI.759 = http://test/758 -URI.760 = http://test/759 -URI.761 = http://test/760 -URI.762 = http://test/761 -URI.763 = http://test/762 -URI.764 = http://test/763 -URI.765 = http://test/764 -URI.766 = http://test/765 -URI.767 = http://test/766 -URI.768 = http://test/767 -URI.769 = http://test/768 -URI.770 = http://test/769 -URI.771 = http://test/770 -URI.772 = http://test/771 -URI.773 = http://test/772 -URI.774 = http://test/773 -URI.775 = http://test/774 -URI.776 = http://test/775 -URI.777 = http://test/776 -URI.778 = http://test/777 -URI.779 = http://test/778 -URI.780 = http://test/779 -URI.781 = http://test/780 -URI.782 = http://test/781 -URI.783 = http://test/782 -URI.784 = http://test/783 -URI.785 = http://test/784 -URI.786 = http://test/785 -URI.787 = http://test/786 -URI.788 = http://test/787 -URI.789 = http://test/788 -URI.790 = http://test/789 -URI.791 = http://test/790 -URI.792 = http://test/791 -URI.793 = http://test/792 -URI.794 = http://test/793 -URI.795 = http://test/794 -URI.796 = http://test/795 -URI.797 = http://test/796 -URI.798 = http://test/797 -URI.799 = http://test/798 -URI.800 = http://test/799 -URI.801 = http://test/800 -URI.802 = http://test/801 -URI.803 = http://test/802 -URI.804 = http://test/803 -URI.805 = http://test/804 -URI.806 = http://test/805 -URI.807 = http://test/806 -URI.808 = http://test/807 -URI.809 = http://test/808 -URI.810 = http://test/809 -URI.811 = http://test/810 -URI.812 = http://test/811 -URI.813 = http://test/812 -URI.814 = http://test/813 -URI.815 = http://test/814 -URI.816 = http://test/815 -URI.817 = http://test/816 -URI.818 = http://test/817 -URI.819 = http://test/818 -URI.820 = http://test/819 -URI.821 = http://test/820 -URI.822 = http://test/821 -URI.823 = http://test/822 -URI.824 = http://test/823 -URI.825 = http://test/824 -URI.826 = http://test/825 -URI.827 = http://test/826 -URI.828 = http://test/827 -URI.829 = http://test/828 -URI.830 = http://test/829 -URI.831 = http://test/830 -URI.832 = http://test/831 -URI.833 = http://test/832 -URI.834 = http://test/833 -URI.835 = http://test/834 -URI.836 = http://test/835 -URI.837 = http://test/836 -URI.838 = http://test/837 -URI.839 = http://test/838 -URI.840 = http://test/839 -URI.841 = http://test/840 -URI.842 = http://test/841 -URI.843 = http://test/842 -URI.844 = http://test/843 -URI.845 = http://test/844 -URI.846 = http://test/845 -URI.847 = http://test/846 -URI.848 = http://test/847 -URI.849 = http://test/848 -URI.850 = http://test/849 -URI.851 = http://test/850 -URI.852 = http://test/851 -URI.853 = http://test/852 -URI.854 = http://test/853 -URI.855 = http://test/854 -URI.856 = http://test/855 -URI.857 = http://test/856 -URI.858 = http://test/857 -URI.859 = http://test/858 -URI.860 = http://test/859 -URI.861 = http://test/860 -URI.862 = http://test/861 -URI.863 = http://test/862 -URI.864 = http://test/863 -URI.865 = http://test/864 -URI.866 = http://test/865 -URI.867 = http://test/866 -URI.868 = http://test/867 -URI.869 = http://test/868 -URI.870 = http://test/869 -URI.871 = http://test/870 -URI.872 = http://test/871 -URI.873 = http://test/872 -URI.874 = http://test/873 -URI.875 = http://test/874 -URI.876 = http://test/875 -URI.877 = http://test/876 -URI.878 = http://test/877 -URI.879 = http://test/878 -URI.880 = http://test/879 -URI.881 = http://test/880 -URI.882 = http://test/881 -URI.883 = http://test/882 -URI.884 = http://test/883 -URI.885 = http://test/884 -URI.886 = http://test/885 -URI.887 = http://test/886 -URI.888 = http://test/887 -URI.889 = http://test/888 -URI.890 = http://test/889 -URI.891 = http://test/890 -URI.892 = http://test/891 -URI.893 = http://test/892 -URI.894 = http://test/893 -URI.895 = http://test/894 -URI.896 = http://test/895 -URI.897 = http://test/896 -URI.898 = http://test/897 -URI.899 = http://test/898 -URI.900 = http://test/899 -URI.901 = http://test/900 -URI.902 = http://test/901 -URI.903 = http://test/902 -URI.904 = http://test/903 -URI.905 = http://test/904 -URI.906 = http://test/905 -URI.907 = http://test/906 -URI.908 = http://test/907 -URI.909 = http://test/908 -URI.910 = http://test/909 -URI.911 = http://test/910 -URI.912 = http://test/911 -URI.913 = http://test/912 -URI.914 = http://test/913 -URI.915 = http://test/914 -URI.916 = http://test/915 -URI.917 = http://test/916 -URI.918 = http://test/917 -URI.919 = http://test/918 -URI.920 = http://test/919 -URI.921 = http://test/920 -URI.922 = http://test/921 -URI.923 = http://test/922 -URI.924 = http://test/923 -URI.925 = http://test/924 -URI.926 = http://test/925 -URI.927 = http://test/926 -URI.928 = http://test/927 -URI.929 = http://test/928 -URI.930 = http://test/929 -URI.931 = http://test/930 -URI.932 = http://test/931 -URI.933 = http://test/932 -URI.934 = http://test/933 -URI.935 = http://test/934 -URI.936 = http://test/935 -URI.937 = http://test/936 -URI.938 = http://test/937 -URI.939 = http://test/938 -URI.940 = http://test/939 -URI.941 = http://test/940 -URI.942 = http://test/941 -URI.943 = http://test/942 -URI.944 = http://test/943 -URI.945 = http://test/944 -URI.946 = http://test/945 -URI.947 = http://test/946 -URI.948 = http://test/947 -URI.949 = http://test/948 -URI.950 = http://test/949 -URI.951 = http://test/950 -URI.952 = http://test/951 -URI.953 = http://test/952 -URI.954 = http://test/953 -URI.955 = http://test/954 -URI.956 = http://test/955 -URI.957 = http://test/956 -URI.958 = http://test/957 -URI.959 = http://test/958 -URI.960 = http://test/959 -URI.961 = http://test/960 -URI.962 = http://test/961 -URI.963 = http://test/962 -URI.964 = http://test/963 -URI.965 = http://test/964 -URI.966 = http://test/965 -URI.967 = http://test/966 -URI.968 = http://test/967 -URI.969 = http://test/968 -URI.970 = http://test/969 -URI.971 = http://test/970 -URI.972 = http://test/971 -URI.973 = http://test/972 -URI.974 = http://test/973 -URI.975 = http://test/974 -URI.976 = http://test/975 -URI.977 = http://test/976 -URI.978 = http://test/977 -URI.979 = http://test/978 -URI.980 = http://test/979 -URI.981 = http://test/980 -URI.982 = http://test/981 -URI.983 = http://test/982 -URI.984 = http://test/983 -URI.985 = http://test/984 -URI.986 = http://test/985 -URI.987 = http://test/986 -URI.988 = http://test/987 -URI.989 = http://test/988 -URI.990 = http://test/989 -URI.991 = http://test/990 -URI.992 = http://test/991 -URI.993 = http://test/992 -URI.994 = http://test/993 -URI.995 = http://test/994 -URI.996 = http://test/995 -URI.997 = http://test/996 -URI.998 = http://test/997 -URI.999 = http://test/998 -URI.1000 = http://test/999 -URI.1001 = http://test/1000 -URI.1002 = http://test/1001 -URI.1003 = http://test/1002 -URI.1004 = http://test/1003 -URI.1005 = http://test/1004 -URI.1006 = http://test/1005 -URI.1007 = http://test/1006 -URI.1008 = http://test/1007 -URI.1009 = http://test/1008 -URI.1010 = http://test/1009 -URI.1011 = http://test/1010 -URI.1012 = http://test/1011 -URI.1013 = http://test/1012 -URI.1014 = http://test/1013 -URI.1015 = http://test/1014 -URI.1016 = http://test/1015 -URI.1017 = http://test/1016 -URI.1018 = http://test/1017 -URI.1019 = http://test/1018 -URI.1020 = http://test/1019 -URI.1021 = http://test/1020 -URI.1022 = http://test/1021 -URI.1023 = http://test/1022 -URI.1024 = http://test/1023 -URI.1025 = http://test/1024 - -[san_dirname1] -commonName = "t0 - -[san_dirname2] -commonName = "t1 - -[san_dirname3] -commonName = "t2 - -[san_dirname4] -commonName = "t3 - -[san_dirname5] -commonName = "t4 - -[san_dirname6] -commonName = "t5 - -[san_dirname7] -commonName = "t6 - -[san_dirname8] -commonName = "t7 - -[san_dirname9] -commonName = "t8 - -[san_dirname10] -commonName = "t9 - -[san_dirname11] -commonName = "t10 - -[san_dirname12] -commonName = "t11 - -[san_dirname13] -commonName = "t12 - -[san_dirname14] -commonName = "t13 - -[san_dirname15] -commonName = "t14 - -[san_dirname16] -commonName = "t15 - -[san_dirname17] -commonName = "t16 - -[san_dirname18] -commonName = "t17 - -[san_dirname19] -commonName = "t18 - -[san_dirname20] -commonName = "t19 - -[san_dirname21] -commonName = "t20 - -[san_dirname22] -commonName = "t21 - -[san_dirname23] -commonName = "t22 - -[san_dirname24] -commonName = "t23 - -[san_dirname25] -commonName = "t24 - -[san_dirname26] -commonName = "t25 - -[san_dirname27] -commonName = "t26 - -[san_dirname28] -commonName = "t27 - -[san_dirname29] -commonName = "t28 - -[san_dirname30] -commonName = "t29 - -[san_dirname31] -commonName = "t30 - -[san_dirname32] -commonName = "t31 - -[san_dirname33] -commonName = "t32 - -[san_dirname34] -commonName = "t33 - -[san_dirname35] -commonName = "t34 - -[san_dirname36] -commonName = "t35 - -[san_dirname37] -commonName = "t36 - -[san_dirname38] -commonName = "t37 - -[san_dirname39] -commonName = "t38 - -[san_dirname40] -commonName = "t39 - -[san_dirname41] -commonName = "t40 - -[san_dirname42] -commonName = "t41 - -[san_dirname43] -commonName = "t42 - -[san_dirname44] -commonName = "t43 - -[san_dirname45] -commonName = "t44 - -[san_dirname46] -commonName = "t45 - -[san_dirname47] -commonName = "t46 - -[san_dirname48] -commonName = "t47 - -[san_dirname49] -commonName = "t48 - -[san_dirname50] -commonName = "t49 - -[san_dirname51] -commonName = "t50 - -[san_dirname52] -commonName = "t51 - -[san_dirname53] -commonName = "t52 - -[san_dirname54] -commonName = "t53 - -[san_dirname55] -commonName = "t54 - -[san_dirname56] -commonName = "t55 - -[san_dirname57] -commonName = "t56 - -[san_dirname58] -commonName = "t57 - -[san_dirname59] -commonName = "t58 - -[san_dirname60] -commonName = "t59 - -[san_dirname61] -commonName = "t60 - -[san_dirname62] -commonName = "t61 - -[san_dirname63] -commonName = "t62 - -[san_dirname64] -commonName = "t63 - -[san_dirname65] -commonName = "t64 - -[san_dirname66] -commonName = "t65 - -[san_dirname67] -commonName = "t66 - -[san_dirname68] -commonName = "t67 - -[san_dirname69] -commonName = "t68 - -[san_dirname70] -commonName = "t69 - -[san_dirname71] -commonName = "t70 - -[san_dirname72] -commonName = "t71 - -[san_dirname73] -commonName = "t72 - -[san_dirname74] -commonName = "t73 - -[san_dirname75] -commonName = "t74 - -[san_dirname76] -commonName = "t75 - -[san_dirname77] -commonName = "t76 - -[san_dirname78] -commonName = "t77 - -[san_dirname79] -commonName = "t78 - -[san_dirname80] -commonName = "t79 - -[san_dirname81] -commonName = "t80 - -[san_dirname82] -commonName = "t81 - -[san_dirname83] -commonName = "t82 - -[san_dirname84] -commonName = "t83 - -[san_dirname85] -commonName = "t84 - -[san_dirname86] -commonName = "t85 - -[san_dirname87] -commonName = "t86 - -[san_dirname88] -commonName = "t87 - -[san_dirname89] -commonName = "t88 - -[san_dirname90] -commonName = "t89 - -[san_dirname91] -commonName = "t90 - -[san_dirname92] -commonName = "t91 - -[san_dirname93] -commonName = "t92 - -[san_dirname94] -commonName = "t93 - -[san_dirname95] -commonName = "t94 - -[san_dirname96] -commonName = "t95 - -[san_dirname97] -commonName = "t96 - -[san_dirname98] -commonName = "t97 - -[san_dirname99] -commonName = "t98 - -[san_dirname100] -commonName = "t99 - -[san_dirname101] -commonName = "t100 - -[san_dirname102] -commonName = "t101 - -[san_dirname103] -commonName = "t102 - -[san_dirname104] -commonName = "t103 - -[san_dirname105] -commonName = "t104 - -[san_dirname106] -commonName = "t105 - -[san_dirname107] -commonName = "t106 - -[san_dirname108] -commonName = "t107 - -[san_dirname109] -commonName = "t108 - -[san_dirname110] -commonName = "t109 - -[san_dirname111] -commonName = "t110 - -[san_dirname112] -commonName = "t111 - -[san_dirname113] -commonName = "t112 - -[san_dirname114] -commonName = "t113 - -[san_dirname115] -commonName = "t114 - -[san_dirname116] -commonName = "t115 - -[san_dirname117] -commonName = "t116 - -[san_dirname118] -commonName = "t117 - -[san_dirname119] -commonName = "t118 - -[san_dirname120] -commonName = "t119 - -[san_dirname121] -commonName = "t120 - -[san_dirname122] -commonName = "t121 - -[san_dirname123] -commonName = "t122 - -[san_dirname124] -commonName = "t123 - -[san_dirname125] -commonName = "t124 - -[san_dirname126] -commonName = "t125 - -[san_dirname127] -commonName = "t126 - -[san_dirname128] -commonName = "t127 - -[san_dirname129] -commonName = "t128 - -[san_dirname130] -commonName = "t129 - -[san_dirname131] -commonName = "t130 - -[san_dirname132] -commonName = "t131 - -[san_dirname133] -commonName = "t132 - -[san_dirname134] -commonName = "t133 - -[san_dirname135] -commonName = "t134 - -[san_dirname136] -commonName = "t135 - -[san_dirname137] -commonName = "t136 - -[san_dirname138] -commonName = "t137 - -[san_dirname139] -commonName = "t138 - -[san_dirname140] -commonName = "t139 - -[san_dirname141] -commonName = "t140 - -[san_dirname142] -commonName = "t141 - -[san_dirname143] -commonName = "t142 - -[san_dirname144] -commonName = "t143 - -[san_dirname145] -commonName = "t144 - -[san_dirname146] -commonName = "t145 - -[san_dirname147] -commonName = "t146 - -[san_dirname148] -commonName = "t147 - -[san_dirname149] -commonName = "t148 - -[san_dirname150] -commonName = "t149 - -[san_dirname151] -commonName = "t150 - -[san_dirname152] -commonName = "t151 - -[san_dirname153] -commonName = "t152 - -[san_dirname154] -commonName = "t153 - -[san_dirname155] -commonName = "t154 - -[san_dirname156] -commonName = "t155 - -[san_dirname157] -commonName = "t156 - -[san_dirname158] -commonName = "t157 - -[san_dirname159] -commonName = "t158 - -[san_dirname160] -commonName = "t159 - -[san_dirname161] -commonName = "t160 - -[san_dirname162] -commonName = "t161 - -[san_dirname163] -commonName = "t162 - -[san_dirname164] -commonName = "t163 - -[san_dirname165] -commonName = "t164 - -[san_dirname166] -commonName = "t165 - -[san_dirname167] -commonName = "t166 - -[san_dirname168] -commonName = "t167 - -[san_dirname169] -commonName = "t168 - -[san_dirname170] -commonName = "t169 - -[san_dirname171] -commonName = "t170 - -[san_dirname172] -commonName = "t171 - -[san_dirname173] -commonName = "t172 - -[san_dirname174] -commonName = "t173 - -[san_dirname175] -commonName = "t174 - -[san_dirname176] -commonName = "t175 - -[san_dirname177] -commonName = "t176 - -[san_dirname178] -commonName = "t177 - -[san_dirname179] -commonName = "t178 - -[san_dirname180] -commonName = "t179 - -[san_dirname181] -commonName = "t180 - -[san_dirname182] -commonName = "t181 - -[san_dirname183] -commonName = "t182 - -[san_dirname184] -commonName = "t183 - -[san_dirname185] -commonName = "t184 - -[san_dirname186] -commonName = "t185 - -[san_dirname187] -commonName = "t186 - -[san_dirname188] -commonName = "t187 - -[san_dirname189] -commonName = "t188 - -[san_dirname190] -commonName = "t189 - -[san_dirname191] -commonName = "t190 - -[san_dirname192] -commonName = "t191 - -[san_dirname193] -commonName = "t192 - -[san_dirname194] -commonName = "t193 - -[san_dirname195] -commonName = "t194 - -[san_dirname196] -commonName = "t195 - -[san_dirname197] -commonName = "t196 - -[san_dirname198] -commonName = "t197 - -[san_dirname199] -commonName = "t198 - -[san_dirname200] -commonName = "t199 - -[san_dirname201] -commonName = "t200 - -[san_dirname202] -commonName = "t201 - -[san_dirname203] -commonName = "t202 - -[san_dirname204] -commonName = "t203 - -[san_dirname205] -commonName = "t204 - -[san_dirname206] -commonName = "t205 - -[san_dirname207] -commonName = "t206 - -[san_dirname208] -commonName = "t207 - -[san_dirname209] -commonName = "t208 - -[san_dirname210] -commonName = "t209 - -[san_dirname211] -commonName = "t210 - -[san_dirname212] -commonName = "t211 - -[san_dirname213] -commonName = "t212 - -[san_dirname214] -commonName = "t213 - -[san_dirname215] -commonName = "t214 - -[san_dirname216] -commonName = "t215 - -[san_dirname217] -commonName = "t216 - -[san_dirname218] -commonName = "t217 - -[san_dirname219] -commonName = "t218 - -[san_dirname220] -commonName = "t219 - -[san_dirname221] -commonName = "t220 - -[san_dirname222] -commonName = "t221 - -[san_dirname223] -commonName = "t222 - -[san_dirname224] -commonName = "t223 - -[san_dirname225] -commonName = "t224 - -[san_dirname226] -commonName = "t225 - -[san_dirname227] -commonName = "t226 - -[san_dirname228] -commonName = "t227 - -[san_dirname229] -commonName = "t228 - -[san_dirname230] -commonName = "t229 - -[san_dirname231] -commonName = "t230 - -[san_dirname232] -commonName = "t231 - -[san_dirname233] -commonName = "t232 - -[san_dirname234] -commonName = "t233 - -[san_dirname235] -commonName = "t234 - -[san_dirname236] -commonName = "t235 - -[san_dirname237] -commonName = "t236 - -[san_dirname238] -commonName = "t237 - -[san_dirname239] -commonName = "t238 - -[san_dirname240] -commonName = "t239 - -[san_dirname241] -commonName = "t240 - -[san_dirname242] -commonName = "t241 - -[san_dirname243] -commonName = "t242 - -[san_dirname244] -commonName = "t243 - -[san_dirname245] -commonName = "t244 - -[san_dirname246] -commonName = "t245 - -[san_dirname247] -commonName = "t246 - -[san_dirname248] -commonName = "t247 - -[san_dirname249] -commonName = "t248 - -[san_dirname250] -commonName = "t249 - -[san_dirname251] -commonName = "t250 - -[san_dirname252] -commonName = "t251 - -[san_dirname253] -commonName = "t252 - -[san_dirname254] -commonName = "t253 - -[san_dirname255] -commonName = "t254 - -[san_dirname256] -commonName = "t255 - -[san_dirname257] -commonName = "t256 - -[san_dirname258] -commonName = "t257 - -[san_dirname259] -commonName = "t258 - -[san_dirname260] -commonName = "t259 - -[san_dirname261] -commonName = "t260 - -[san_dirname262] -commonName = "t261 - -[san_dirname263] -commonName = "t262 - -[san_dirname264] -commonName = "t263 - -[san_dirname265] -commonName = "t264 - -[san_dirname266] -commonName = "t265 - -[san_dirname267] -commonName = "t266 - -[san_dirname268] -commonName = "t267 - -[san_dirname269] -commonName = "t268 - -[san_dirname270] -commonName = "t269 - -[san_dirname271] -commonName = "t270 - -[san_dirname272] -commonName = "t271 - -[san_dirname273] -commonName = "t272 - -[san_dirname274] -commonName = "t273 - -[san_dirname275] -commonName = "t274 - -[san_dirname276] -commonName = "t275 - -[san_dirname277] -commonName = "t276 - -[san_dirname278] -commonName = "t277 - -[san_dirname279] -commonName = "t278 - -[san_dirname280] -commonName = "t279 - -[san_dirname281] -commonName = "t280 - -[san_dirname282] -commonName = "t281 - -[san_dirname283] -commonName = "t282 - -[san_dirname284] -commonName = "t283 - -[san_dirname285] -commonName = "t284 - -[san_dirname286] -commonName = "t285 - -[san_dirname287] -commonName = "t286 - -[san_dirname288] -commonName = "t287 - -[san_dirname289] -commonName = "t288 - -[san_dirname290] -commonName = "t289 - -[san_dirname291] -commonName = "t290 - -[san_dirname292] -commonName = "t291 - -[san_dirname293] -commonName = "t292 - -[san_dirname294] -commonName = "t293 - -[san_dirname295] -commonName = "t294 - -[san_dirname296] -commonName = "t295 - -[san_dirname297] -commonName = "t296 - -[san_dirname298] -commonName = "t297 - -[san_dirname299] -commonName = "t298 - -[san_dirname300] -commonName = "t299 - -[san_dirname301] -commonName = "t300 - -[san_dirname302] -commonName = "t301 - -[san_dirname303] -commonName = "t302 - -[san_dirname304] -commonName = "t303 - -[san_dirname305] -commonName = "t304 - -[san_dirname306] -commonName = "t305 - -[san_dirname307] -commonName = "t306 - -[san_dirname308] -commonName = "t307 - -[san_dirname309] -commonName = "t308 - -[san_dirname310] -commonName = "t309 - -[san_dirname311] -commonName = "t310 - -[san_dirname312] -commonName = "t311 - -[san_dirname313] -commonName = "t312 - -[san_dirname314] -commonName = "t313 - -[san_dirname315] -commonName = "t314 - -[san_dirname316] -commonName = "t315 - -[san_dirname317] -commonName = "t316 - -[san_dirname318] -commonName = "t317 - -[san_dirname319] -commonName = "t318 - -[san_dirname320] -commonName = "t319 - -[san_dirname321] -commonName = "t320 - -[san_dirname322] -commonName = "t321 - -[san_dirname323] -commonName = "t322 - -[san_dirname324] -commonName = "t323 - -[san_dirname325] -commonName = "t324 - -[san_dirname326] -commonName = "t325 - -[san_dirname327] -commonName = "t326 - -[san_dirname328] -commonName = "t327 - -[san_dirname329] -commonName = "t328 - -[san_dirname330] -commonName = "t329 - -[san_dirname331] -commonName = "t330 - -[san_dirname332] -commonName = "t331 - -[san_dirname333] -commonName = "t332 - -[san_dirname334] -commonName = "t333 - -[san_dirname335] -commonName = "t334 - -[san_dirname336] -commonName = "t335 - -[san_dirname337] -commonName = "t336 - -[san_dirname338] -commonName = "t337 - -[san_dirname339] -commonName = "t338 - -[san_dirname340] -commonName = "t339 - -[san_dirname341] -commonName = "t340 - -[san_dirname342] -commonName = "t341 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.csr deleted file mode 100644 index 731c0e5fce..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.csr +++ /dev/null @@ -1,630 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIJ1sTCCdJkCAQAwDTELMAkGA1UEAwwCdDAwggEiMA0GCSqGSIb3DQEBAQUAA4IB -DwAwggEKAoIBAQDbLFMBzvkagzZSUSpbQmPeMnURan2woeR3R5tx5aYtZNeuWwTt -ej/H9sorK63NbIiljjb756IitX1UeenVelvKKylsDYQKEMQhtliYuw22DI1WWyyF -WQfKBkY2JRopjsQ5t8Mxzm5JwgHPsDsnQ4rj1QYfLZOd3XpFZW39tLHAEFlC8h6P -zkOslyXBfOJR4UQ1W5SqA27acS8lf1gwAeESFx7yqmwigLHJZep3lbMHxPdyODT+ -oEMzTGZtoeihBLxvFDk5RC44N3TJCiGFkSG3TrqwmUp2mHtYyhzTsEDD2Sp1++sZ -6uMamDFSl+l/pHshfy/cYoaP/f2oiOhLRFK9AgMBAAGggnNdMIJzWQYJKoZIhvcN -AQkOMYJzSjCCc0YwHQYDVR0OBBYEFDu0BcyqulE9/PL5HiVTcuE68prfMA4GA1Ud -DwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgnL0BgNV -HREEgnLrMIJy54IHdDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIH -dDQudGVzdIIHdDUudGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDku -dGVzdIIIdDEwLnRlc3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQx -NC50ZXN0ggh0MTUudGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIII -dDE5LnRlc3SCCHQyMC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0 -ggh0MjQudGVzdIIIdDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRl -c3SCCHQyOS50ZXN0ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMu -dGVzdIIIdDM0LnRlc3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQz -OC50ZXN0ggh0MzkudGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIII -dDQzLnRlc3SCCHQ0NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0 -ggh0NDgudGVzdIIIdDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRl -c3SCCHQ1My50ZXN0ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcu -dGVzdIIIdDU4LnRlc3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2 -Mi50ZXN0ggh0NjMudGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIII -dDY3LnRlc3SCCHQ2OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0 -ggh0NzIudGVzdIIIdDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRl -c3SCCHQ3Ny50ZXN0ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEu -dGVzdIIIdDgyLnRlc3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4 -Ni50ZXN0ggh0ODcudGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIII -dDkxLnRlc3SCCHQ5Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0 -ggh0OTYudGVzdIIIdDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50 -ZXN0ggl0MTAxLnRlc3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SC -CXQxMDUudGVzdIIJdDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEw -OS50ZXN0ggl0MTEwLnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRl -c3SCCXQxMTQudGVzdIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJ -dDExOC50ZXN0ggl0MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIy -LnRlc3SCCXQxMjMudGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVz -dIIJdDEyNy50ZXN0ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0 -MTMxLnRlc3SCCXQxMzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUu -dGVzdIIJdDEzNi50ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0 -ggl0MTQwLnRlc3SCCXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQx -NDQudGVzdIIJdDE0NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50 -ZXN0ggl0MTQ5LnRlc3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SC -CXQxNTMudGVzdIIJdDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1 -Ny50ZXN0ggl0MTU4LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRl -c3SCCXQxNjIudGVzdIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJ -dDE2Ni50ZXN0ggl0MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcw -LnRlc3SCCXQxNzEudGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVz -dIIJdDE3NS50ZXN0ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0 -MTc5LnRlc3SCCXQxODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMu -dGVzdIIJdDE4NC50ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0 -ggl0MTg4LnRlc3SCCXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQx -OTIudGVzdIIJdDE5My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50 -ZXN0ggl0MTk3LnRlc3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SC -CXQyMDEudGVzdIIJdDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIw -NS50ZXN0ggl0MjA2LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRl -c3SCCXQyMTAudGVzdIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJ -dDIxNC50ZXN0ggl0MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4 -LnRlc3SCCXQyMTkudGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVz -dIIJdDIyMy50ZXN0ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0 -MjI3LnRlc3SCCXQyMjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEu -dGVzdIIJdDIzMi50ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0 -ggl0MjM2LnRlc3SCCXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQy -NDAudGVzdIIJdDI0MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50 -ZXN0ggl0MjQ1LnRlc3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SC -CXQyNDkudGVzdIIJdDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1 -My50ZXN0ggl0MjU0LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRl -c3SCCXQyNTgudGVzdIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJ -dDI2Mi50ZXN0ggl0MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2 -LnRlc3SCCXQyNjcudGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVz -dIIJdDI3MS50ZXN0ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0 -Mjc1LnRlc3SCCXQyNzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzku -dGVzdIIJdDI4MC50ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0 -ggl0Mjg0LnRlc3SCCXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQy -ODgudGVzdIIJdDI4OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50 -ZXN0ggl0MjkzLnRlc3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SC -CXQyOTcudGVzdIIJdDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMw -MS50ZXN0ggl0MzAyLnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRl -c3SCCXQzMDYudGVzdIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJ -dDMxMC50ZXN0ggl0MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0 -LnRlc3SCCXQzMTUudGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVz -dIIJdDMxOS50ZXN0ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0 -MzIzLnRlc3SCCXQzMjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcu -dGVzdIIJdDMyOC50ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0 -ggl0MzMyLnRlc3SCCXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQz -MzYudGVzdIIJdDMzNy50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50 -ZXN0hwQKAAAAhwQKAAABhwQKAAAChwQKAAADhwQKAAAEhwQKAAAFhwQKAAAGhwQK -AAAHhwQKAAAIhwQKAAAJhwQKAAAKhwQKAAALhwQKAAAMhwQKAAANhwQKAAAOhwQK -AAAPhwQKAAAQhwQKAAARhwQKAAAShwQKAAAThwQKAAAUhwQKAAAVhwQKAAAWhwQK -AAAXhwQKAAAYhwQKAAAZhwQKAAAahwQKAAAbhwQKAAAchwQKAAAdhwQKAAAehwQK -AAAfhwQKAAAghwQKAAAhhwQKAAAihwQKAAAjhwQKAAAkhwQKAAAlhwQKAAAmhwQK -AAAnhwQKAAAohwQKAAAphwQKAAAqhwQKAAArhwQKAAAshwQKAAAthwQKAAAuhwQK -AAAvhwQKAAAwhwQKAAAxhwQKAAAyhwQKAAAzhwQKAAA0hwQKAAA1hwQKAAA2hwQK -AAA3hwQKAAA4hwQKAAA5hwQKAAA6hwQKAAA7hwQKAAA8hwQKAAA9hwQKAAA+hwQK -AAA/hwQKAABAhwQKAABBhwQKAABChwQKAABDhwQKAABEhwQKAABFhwQKAABGhwQK -AABHhwQKAABIhwQKAABJhwQKAABKhwQKAABLhwQKAABMhwQKAABNhwQKAABOhwQK -AABPhwQKAABQhwQKAABRhwQKAABShwQKAABThwQKAABUhwQKAABVhwQKAABWhwQK -AABXhwQKAABYhwQKAABZhwQKAABahwQKAABbhwQKAABchwQKAABdhwQKAABehwQK -AABfhwQKAABghwQKAABhhwQKAABihwQKAABjhwQKAABkhwQKAABlhwQKAABmhwQK -AABnhwQKAABohwQKAABphwQKAABqhwQKAABrhwQKAABshwQKAABthwQKAABuhwQK -AABvhwQKAABwhwQKAABxhwQKAAByhwQKAABzhwQKAAB0hwQKAAB1hwQKAAB2hwQK -AAB3hwQKAAB4hwQKAAB5hwQKAAB6hwQKAAB7hwQKAAB8hwQKAAB9hwQKAAB+hwQK -AAB/hwQKAACAhwQKAACBhwQKAACChwQKAACDhwQKAACEhwQKAACFhwQKAACGhwQK -AACHhwQKAACIhwQKAACJhwQKAACKhwQKAACLhwQKAACMhwQKAACNhwQKAACOhwQK -AACPhwQKAACQhwQKAACRhwQKAACShwQKAACThwQKAACUhwQKAACVhwQKAACWhwQK -AACXhwQKAACYhwQKAACZhwQKAACahwQKAACbhwQKAACchwQKAACdhwQKAACehwQK -AACfhwQKAACghwQKAAChhwQKAACihwQKAACjhwQKAACkhwQKAAClhwQKAACmhwQK -AACnhwQKAACohwQKAACphwQKAACqhwQKAACrhwQKAACshwQKAACthwQKAACuhwQK -AACvhwQKAACwhwQKAACxhwQKAACyhwQKAACzhwQKAAC0hwQKAAC1hwQKAAC2hwQK -AAC3hwQKAAC4hwQKAAC5hwQKAAC6hwQKAAC7hwQKAAC8hwQKAAC9hwQKAAC+hwQK -AAC/hwQKAADAhwQKAADBhwQKAADChwQKAADDhwQKAADEhwQKAADFhwQKAADGhwQK -AADHhwQKAADIhwQKAADJhwQKAADKhwQKAADLhwQKAADMhwQKAADNhwQKAADOhwQK -AADPhwQKAADQhwQKAADRhwQKAADShwQKAADThwQKAADUhwQKAADVhwQKAADWhwQK -AADXhwQKAADYhwQKAADZhwQKAADahwQKAADbhwQKAADchwQKAADdhwQKAADehwQK -AADfhwQKAADghwQKAADhhwQKAADihwQKAADjhwQKAADkhwQKAADlhwQKAADmhwQK -AADnhwQKAADohwQKAADphwQKAADqhwQKAADrhwQKAADshwQKAADthwQKAADuhwQK -AADvhwQKAADwhwQKAADxhwQKAADyhwQKAADzhwQKAAD0hwQKAAD1hwQKAAD2hwQK -AAD3hwQKAAD4hwQKAAD5hwQKAAD6hwQKAAD7hwQKAAD8hwQKAAD9hwQKAAD+hwQK -AAD/hwQKAAEAhwQKAAEBhwQKAAEChwQKAAEDhwQKAAEEhwQKAAEFhwQKAAEGhwQK -AAEHhwQKAAEIhwQKAAEJhwQKAAEKhwQKAAELhwQKAAEMhwQKAAENhwQKAAEOhwQK -AAEPhwQKAAEQhwQKAAERhwQKAAEShwQKAAEThwQKAAEUhwQKAAEVhwQKAAEWhwQK -AAEXhwQKAAEYhwQKAAEZhwQKAAEahwQKAAEbhwQKAAEchwQKAAEdhwQKAAEehwQK -AAEfhwQKAAEghwQKAAEhhwQKAAEihwQKAAEjhwQKAAEkhwQKAAElhwQKAAEmhwQK -AAEnhwQKAAEohwQKAAEphwQKAAEqhwQKAAErhwQKAAEshwQKAAEthwQKAAEuhwQK -AAEvhwQKAAEwhwQKAAExhwQKAAEyhwQKAAEzhwQKAAE0hwQKAAE1hwQKAAE2hwQK -AAE3hwQKAAE4hwQKAAE5hwQKAAE6hwQKAAE7hwQKAAE8hwQKAAE9hwQKAAE+hwQK -AAE/hwQKAAFAhwQKAAFBhwQKAAFChwQKAAFDhwQKAAFEhwQKAAFFhwQKAAFGhwQK -AAFHhwQKAAFIhwQKAAFJhwQKAAFKhwQKAAFLhwQKAAFMhwQKAAFNhwQKAAFOhwQK -AAFPhwQKAAFQhwQKAAFRhwQKAAFShwQKAAFThwQKAAFUpA8wDTELMAkGA1UEAwwC -dDCkDzANMQswCQYDVQQDDAJ0MaQPMA0xCzAJBgNVBAMMAnQypA8wDTELMAkGA1UE -AwwCdDOkDzANMQswCQYDVQQDDAJ0NKQPMA0xCzAJBgNVBAMMAnQ1pA8wDTELMAkG -A1UEAwwCdDakDzANMQswCQYDVQQDDAJ0N6QPMA0xCzAJBgNVBAMMAnQ4pA8wDTEL -MAkGA1UEAwwCdDmkEDAOMQwwCgYDVQQDDAN0MTCkEDAOMQwwCgYDVQQDDAN0MTGk -EDAOMQwwCgYDVQQDDAN0MTKkEDAOMQwwCgYDVQQDDAN0MTOkEDAOMQwwCgYDVQQD -DAN0MTSkEDAOMQwwCgYDVQQDDAN0MTWkEDAOMQwwCgYDVQQDDAN0MTakEDAOMQww -CgYDVQQDDAN0MTekEDAOMQwwCgYDVQQDDAN0MTikEDAOMQwwCgYDVQQDDAN0MTmk -EDAOMQwwCgYDVQQDDAN0MjCkEDAOMQwwCgYDVQQDDAN0MjGkEDAOMQwwCgYDVQQD -DAN0MjKkEDAOMQwwCgYDVQQDDAN0MjOkEDAOMQwwCgYDVQQDDAN0MjSkEDAOMQww -CgYDVQQDDAN0MjWkEDAOMQwwCgYDVQQDDAN0MjakEDAOMQwwCgYDVQQDDAN0Mjek -EDAOMQwwCgYDVQQDDAN0MjikEDAOMQwwCgYDVQQDDAN0MjmkEDAOMQwwCgYDVQQD -DAN0MzCkEDAOMQwwCgYDVQQDDAN0MzGkEDAOMQwwCgYDVQQDDAN0MzKkEDAOMQww -CgYDVQQDDAN0MzOkEDAOMQwwCgYDVQQDDAN0MzSkEDAOMQwwCgYDVQQDDAN0MzWk -EDAOMQwwCgYDVQQDDAN0MzakEDAOMQwwCgYDVQQDDAN0MzekEDAOMQwwCgYDVQQD -DAN0MzikEDAOMQwwCgYDVQQDDAN0MzmkEDAOMQwwCgYDVQQDDAN0NDCkEDAOMQww -CgYDVQQDDAN0NDGkEDAOMQwwCgYDVQQDDAN0NDKkEDAOMQwwCgYDVQQDDAN0NDOk -EDAOMQwwCgYDVQQDDAN0NDSkEDAOMQwwCgYDVQQDDAN0NDWkEDAOMQwwCgYDVQQD -DAN0NDakEDAOMQwwCgYDVQQDDAN0NDekEDAOMQwwCgYDVQQDDAN0NDikEDAOMQww -CgYDVQQDDAN0NDmkEDAOMQwwCgYDVQQDDAN0NTCkEDAOMQwwCgYDVQQDDAN0NTGk -EDAOMQwwCgYDVQQDDAN0NTKkEDAOMQwwCgYDVQQDDAN0NTOkEDAOMQwwCgYDVQQD -DAN0NTSkEDAOMQwwCgYDVQQDDAN0NTWkEDAOMQwwCgYDVQQDDAN0NTakEDAOMQww -CgYDVQQDDAN0NTekEDAOMQwwCgYDVQQDDAN0NTikEDAOMQwwCgYDVQQDDAN0NTmk -EDAOMQwwCgYDVQQDDAN0NjCkEDAOMQwwCgYDVQQDDAN0NjGkEDAOMQwwCgYDVQQD -DAN0NjKkEDAOMQwwCgYDVQQDDAN0NjOkEDAOMQwwCgYDVQQDDAN0NjSkEDAOMQww -CgYDVQQDDAN0NjWkEDAOMQwwCgYDVQQDDAN0NjakEDAOMQwwCgYDVQQDDAN0Njek -EDAOMQwwCgYDVQQDDAN0NjikEDAOMQwwCgYDVQQDDAN0NjmkEDAOMQwwCgYDVQQD -DAN0NzCkEDAOMQwwCgYDVQQDDAN0NzGkEDAOMQwwCgYDVQQDDAN0NzKkEDAOMQww -CgYDVQQDDAN0NzOkEDAOMQwwCgYDVQQDDAN0NzSkEDAOMQwwCgYDVQQDDAN0NzWk -EDAOMQwwCgYDVQQDDAN0NzakEDAOMQwwCgYDVQQDDAN0NzekEDAOMQwwCgYDVQQD -DAN0NzikEDAOMQwwCgYDVQQDDAN0NzmkEDAOMQwwCgYDVQQDDAN0ODCkEDAOMQww -CgYDVQQDDAN0ODGkEDAOMQwwCgYDVQQDDAN0ODKkEDAOMQwwCgYDVQQDDAN0ODOk -EDAOMQwwCgYDVQQDDAN0ODSkEDAOMQwwCgYDVQQDDAN0ODWkEDAOMQwwCgYDVQQD -DAN0ODakEDAOMQwwCgYDVQQDDAN0ODekEDAOMQwwCgYDVQQDDAN0ODikEDAOMQww -CgYDVQQDDAN0ODmkEDAOMQwwCgYDVQQDDAN0OTCkEDAOMQwwCgYDVQQDDAN0OTGk -EDAOMQwwCgYDVQQDDAN0OTKkEDAOMQwwCgYDVQQDDAN0OTOkEDAOMQwwCgYDVQQD -DAN0OTSkEDAOMQwwCgYDVQQDDAN0OTWkEDAOMQwwCgYDVQQDDAN0OTakEDAOMQww -CgYDVQQDDAN0OTekEDAOMQwwCgYDVQQDDAN0OTikEDAOMQwwCgYDVQQDDAN0OTmk -ETAPMQ0wCwYDVQQDDAR0MTAwpBEwDzENMAsGA1UEAwwEdDEwMaQRMA8xDTALBgNV -BAMMBHQxMDKkETAPMQ0wCwYDVQQDDAR0MTAzpBEwDzENMAsGA1UEAwwEdDEwNKQR -MA8xDTALBgNVBAMMBHQxMDWkETAPMQ0wCwYDVQQDDAR0MTA2pBEwDzENMAsGA1UE -AwwEdDEwN6QRMA8xDTALBgNVBAMMBHQxMDikETAPMQ0wCwYDVQQDDAR0MTA5pBEw -DzENMAsGA1UEAwwEdDExMKQRMA8xDTALBgNVBAMMBHQxMTGkETAPMQ0wCwYDVQQD -DAR0MTEypBEwDzENMAsGA1UEAwwEdDExM6QRMA8xDTALBgNVBAMMBHQxMTSkETAP -MQ0wCwYDVQQDDAR0MTE1pBEwDzENMAsGA1UEAwwEdDExNqQRMA8xDTALBgNVBAMM -BHQxMTekETAPMQ0wCwYDVQQDDAR0MTE4pBEwDzENMAsGA1UEAwwEdDExOaQRMA8x -DTALBgNVBAMMBHQxMjCkETAPMQ0wCwYDVQQDDAR0MTIxpBEwDzENMAsGA1UEAwwE -dDEyMqQRMA8xDTALBgNVBAMMBHQxMjOkETAPMQ0wCwYDVQQDDAR0MTI0pBEwDzEN -MAsGA1UEAwwEdDEyNaQRMA8xDTALBgNVBAMMBHQxMjakETAPMQ0wCwYDVQQDDAR0 -MTI3pBEwDzENMAsGA1UEAwwEdDEyOKQRMA8xDTALBgNVBAMMBHQxMjmkETAPMQ0w -CwYDVQQDDAR0MTMwpBEwDzENMAsGA1UEAwwEdDEzMaQRMA8xDTALBgNVBAMMBHQx -MzKkETAPMQ0wCwYDVQQDDAR0MTMzpBEwDzENMAsGA1UEAwwEdDEzNKQRMA8xDTAL -BgNVBAMMBHQxMzWkETAPMQ0wCwYDVQQDDAR0MTM2pBEwDzENMAsGA1UEAwwEdDEz -N6QRMA8xDTALBgNVBAMMBHQxMzikETAPMQ0wCwYDVQQDDAR0MTM5pBEwDzENMAsG -A1UEAwwEdDE0MKQRMA8xDTALBgNVBAMMBHQxNDGkETAPMQ0wCwYDVQQDDAR0MTQy -pBEwDzENMAsGA1UEAwwEdDE0M6QRMA8xDTALBgNVBAMMBHQxNDSkETAPMQ0wCwYD -VQQDDAR0MTQ1pBEwDzENMAsGA1UEAwwEdDE0NqQRMA8xDTALBgNVBAMMBHQxNDek -ETAPMQ0wCwYDVQQDDAR0MTQ4pBEwDzENMAsGA1UEAwwEdDE0OaQRMA8xDTALBgNV -BAMMBHQxNTCkETAPMQ0wCwYDVQQDDAR0MTUxpBEwDzENMAsGA1UEAwwEdDE1MqQR -MA8xDTALBgNVBAMMBHQxNTOkETAPMQ0wCwYDVQQDDAR0MTU0pBEwDzENMAsGA1UE -AwwEdDE1NaQRMA8xDTALBgNVBAMMBHQxNTakETAPMQ0wCwYDVQQDDAR0MTU3pBEw -DzENMAsGA1UEAwwEdDE1OKQRMA8xDTALBgNVBAMMBHQxNTmkETAPMQ0wCwYDVQQD -DAR0MTYwpBEwDzENMAsGA1UEAwwEdDE2MaQRMA8xDTALBgNVBAMMBHQxNjKkETAP -MQ0wCwYDVQQDDAR0MTYzpBEwDzENMAsGA1UEAwwEdDE2NKQRMA8xDTALBgNVBAMM -BHQxNjWkETAPMQ0wCwYDVQQDDAR0MTY2pBEwDzENMAsGA1UEAwwEdDE2N6QRMA8x -DTALBgNVBAMMBHQxNjikETAPMQ0wCwYDVQQDDAR0MTY5pBEwDzENMAsGA1UEAwwE -dDE3MKQRMA8xDTALBgNVBAMMBHQxNzGkETAPMQ0wCwYDVQQDDAR0MTcypBEwDzEN -MAsGA1UEAwwEdDE3M6QRMA8xDTALBgNVBAMMBHQxNzSkETAPMQ0wCwYDVQQDDAR0 -MTc1pBEwDzENMAsGA1UEAwwEdDE3NqQRMA8xDTALBgNVBAMMBHQxNzekETAPMQ0w -CwYDVQQDDAR0MTc4pBEwDzENMAsGA1UEAwwEdDE3OaQRMA8xDTALBgNVBAMMBHQx -ODCkETAPMQ0wCwYDVQQDDAR0MTgxpBEwDzENMAsGA1UEAwwEdDE4MqQRMA8xDTAL -BgNVBAMMBHQxODOkETAPMQ0wCwYDVQQDDAR0MTg0pBEwDzENMAsGA1UEAwwEdDE4 -NaQRMA8xDTALBgNVBAMMBHQxODakETAPMQ0wCwYDVQQDDAR0MTg3pBEwDzENMAsG -A1UEAwwEdDE4OKQRMA8xDTALBgNVBAMMBHQxODmkETAPMQ0wCwYDVQQDDAR0MTkw -pBEwDzENMAsGA1UEAwwEdDE5MaQRMA8xDTALBgNVBAMMBHQxOTKkETAPMQ0wCwYD -VQQDDAR0MTkzpBEwDzENMAsGA1UEAwwEdDE5NKQRMA8xDTALBgNVBAMMBHQxOTWk -ETAPMQ0wCwYDVQQDDAR0MTk2pBEwDzENMAsGA1UEAwwEdDE5N6QRMA8xDTALBgNV -BAMMBHQxOTikETAPMQ0wCwYDVQQDDAR0MTk5pBEwDzENMAsGA1UEAwwEdDIwMKQR -MA8xDTALBgNVBAMMBHQyMDGkETAPMQ0wCwYDVQQDDAR0MjAypBEwDzENMAsGA1UE -AwwEdDIwM6QRMA8xDTALBgNVBAMMBHQyMDSkETAPMQ0wCwYDVQQDDAR0MjA1pBEw -DzENMAsGA1UEAwwEdDIwNqQRMA8xDTALBgNVBAMMBHQyMDekETAPMQ0wCwYDVQQD -DAR0MjA4pBEwDzENMAsGA1UEAwwEdDIwOaQRMA8xDTALBgNVBAMMBHQyMTCkETAP -MQ0wCwYDVQQDDAR0MjExpBEwDzENMAsGA1UEAwwEdDIxMqQRMA8xDTALBgNVBAMM -BHQyMTOkETAPMQ0wCwYDVQQDDAR0MjE0pBEwDzENMAsGA1UEAwwEdDIxNaQRMA8x -DTALBgNVBAMMBHQyMTakETAPMQ0wCwYDVQQDDAR0MjE3pBEwDzENMAsGA1UEAwwE -dDIxOKQRMA8xDTALBgNVBAMMBHQyMTmkETAPMQ0wCwYDVQQDDAR0MjIwpBEwDzEN -MAsGA1UEAwwEdDIyMaQRMA8xDTALBgNVBAMMBHQyMjKkETAPMQ0wCwYDVQQDDAR0 -MjIzpBEwDzENMAsGA1UEAwwEdDIyNKQRMA8xDTALBgNVBAMMBHQyMjWkETAPMQ0w -CwYDVQQDDAR0MjI2pBEwDzENMAsGA1UEAwwEdDIyN6QRMA8xDTALBgNVBAMMBHQy -MjikETAPMQ0wCwYDVQQDDAR0MjI5pBEwDzENMAsGA1UEAwwEdDIzMKQRMA8xDTAL -BgNVBAMMBHQyMzGkETAPMQ0wCwYDVQQDDAR0MjMypBEwDzENMAsGA1UEAwwEdDIz -M6QRMA8xDTALBgNVBAMMBHQyMzSkETAPMQ0wCwYDVQQDDAR0MjM1pBEwDzENMAsG -A1UEAwwEdDIzNqQRMA8xDTALBgNVBAMMBHQyMzekETAPMQ0wCwYDVQQDDAR0MjM4 -pBEwDzENMAsGA1UEAwwEdDIzOaQRMA8xDTALBgNVBAMMBHQyNDCkETAPMQ0wCwYD -VQQDDAR0MjQxpBEwDzENMAsGA1UEAwwEdDI0MqQRMA8xDTALBgNVBAMMBHQyNDOk -ETAPMQ0wCwYDVQQDDAR0MjQ0pBEwDzENMAsGA1UEAwwEdDI0NaQRMA8xDTALBgNV -BAMMBHQyNDakETAPMQ0wCwYDVQQDDAR0MjQ3pBEwDzENMAsGA1UEAwwEdDI0OKQR -MA8xDTALBgNVBAMMBHQyNDmkETAPMQ0wCwYDVQQDDAR0MjUwpBEwDzENMAsGA1UE -AwwEdDI1MaQRMA8xDTALBgNVBAMMBHQyNTKkETAPMQ0wCwYDVQQDDAR0MjUzpBEw -DzENMAsGA1UEAwwEdDI1NKQRMA8xDTALBgNVBAMMBHQyNTWkETAPMQ0wCwYDVQQD -DAR0MjU2pBEwDzENMAsGA1UEAwwEdDI1N6QRMA8xDTALBgNVBAMMBHQyNTikETAP -MQ0wCwYDVQQDDAR0MjU5pBEwDzENMAsGA1UEAwwEdDI2MKQRMA8xDTALBgNVBAMM -BHQyNjGkETAPMQ0wCwYDVQQDDAR0MjYypBEwDzENMAsGA1UEAwwEdDI2M6QRMA8x -DTALBgNVBAMMBHQyNjSkETAPMQ0wCwYDVQQDDAR0MjY1pBEwDzENMAsGA1UEAwwE -dDI2NqQRMA8xDTALBgNVBAMMBHQyNjekETAPMQ0wCwYDVQQDDAR0MjY4pBEwDzEN -MAsGA1UEAwwEdDI2OaQRMA8xDTALBgNVBAMMBHQyNzCkETAPMQ0wCwYDVQQDDAR0 -MjcxpBEwDzENMAsGA1UEAwwEdDI3MqQRMA8xDTALBgNVBAMMBHQyNzOkETAPMQ0w -CwYDVQQDDAR0Mjc0pBEwDzENMAsGA1UEAwwEdDI3NaQRMA8xDTALBgNVBAMMBHQy -NzakETAPMQ0wCwYDVQQDDAR0Mjc3pBEwDzENMAsGA1UEAwwEdDI3OKQRMA8xDTAL -BgNVBAMMBHQyNzmkETAPMQ0wCwYDVQQDDAR0MjgwpBEwDzENMAsGA1UEAwwEdDI4 -MaQRMA8xDTALBgNVBAMMBHQyODKkETAPMQ0wCwYDVQQDDAR0MjgzpBEwDzENMAsG -A1UEAwwEdDI4NKQRMA8xDTALBgNVBAMMBHQyODWkETAPMQ0wCwYDVQQDDAR0Mjg2 -pBEwDzENMAsGA1UEAwwEdDI4N6QRMA8xDTALBgNVBAMMBHQyODikETAPMQ0wCwYD -VQQDDAR0Mjg5pBEwDzENMAsGA1UEAwwEdDI5MKQRMA8xDTALBgNVBAMMBHQyOTGk -ETAPMQ0wCwYDVQQDDAR0MjkypBEwDzENMAsGA1UEAwwEdDI5M6QRMA8xDTALBgNV -BAMMBHQyOTSkETAPMQ0wCwYDVQQDDAR0Mjk1pBEwDzENMAsGA1UEAwwEdDI5NqQR -MA8xDTALBgNVBAMMBHQyOTekETAPMQ0wCwYDVQQDDAR0Mjk4pBEwDzENMAsGA1UE -AwwEdDI5OaQRMA8xDTALBgNVBAMMBHQzMDCkETAPMQ0wCwYDVQQDDAR0MzAxpBEw -DzENMAsGA1UEAwwEdDMwMqQRMA8xDTALBgNVBAMMBHQzMDOkETAPMQ0wCwYDVQQD -DAR0MzA0pBEwDzENMAsGA1UEAwwEdDMwNaQRMA8xDTALBgNVBAMMBHQzMDakETAP -MQ0wCwYDVQQDDAR0MzA3pBEwDzENMAsGA1UEAwwEdDMwOKQRMA8xDTALBgNVBAMM -BHQzMDmkETAPMQ0wCwYDVQQDDAR0MzEwpBEwDzENMAsGA1UEAwwEdDMxMaQRMA8x -DTALBgNVBAMMBHQzMTKkETAPMQ0wCwYDVQQDDAR0MzEzpBEwDzENMAsGA1UEAwwE -dDMxNKQRMA8xDTALBgNVBAMMBHQzMTWkETAPMQ0wCwYDVQQDDAR0MzE2pBEwDzEN -MAsGA1UEAwwEdDMxN6QRMA8xDTALBgNVBAMMBHQzMTikETAPMQ0wCwYDVQQDDAR0 -MzE5pBEwDzENMAsGA1UEAwwEdDMyMKQRMA8xDTALBgNVBAMMBHQzMjGkETAPMQ0w -CwYDVQQDDAR0MzIypBEwDzENMAsGA1UEAwwEdDMyM6QRMA8xDTALBgNVBAMMBHQz -MjSkETAPMQ0wCwYDVQQDDAR0MzI1pBEwDzENMAsGA1UEAwwEdDMyNqQRMA8xDTAL -BgNVBAMMBHQzMjekETAPMQ0wCwYDVQQDDAR0MzI4pBEwDzENMAsGA1UEAwwEdDMy -OaQRMA8xDTALBgNVBAMMBHQzMzCkETAPMQ0wCwYDVQQDDAR0MzMxpBEwDzENMAsG -A1UEAwwEdDMzMqQRMA8xDTALBgNVBAMMBHQzMzOkETAPMQ0wCwYDVQQDDAR0MzM0 -pBEwDzENMAsGA1UEAwwEdDMzNaQRMA8xDTALBgNVBAMMBHQzMzakETAPMQ0wCwYD -VQQDDAR0MzM3pBEwDzENMAsGA1UEAwwEdDMzOKQRMA8xDTALBgNVBAMMBHQzMzmk -ETAPMQ0wCwYDVQQDDAR0MzQwpBEwDzENMAsGA1UEAwwEdDM0MYYNaHR0cDovL3Rl -c3QvMIYNaHR0cDovL3Rlc3QvMYYNaHR0cDovL3Rlc3QvMoYNaHR0cDovL3Rlc3Qv -M4YNaHR0cDovL3Rlc3QvNIYNaHR0cDovL3Rlc3QvNYYNaHR0cDovL3Rlc3QvNoYN -aHR0cDovL3Rlc3QvN4YNaHR0cDovL3Rlc3QvOIYNaHR0cDovL3Rlc3QvOYYOaHR0 -cDovL3Rlc3QvMTCGDmh0dHA6Ly90ZXN0LzExhg5odHRwOi8vdGVzdC8xMoYOaHR0 -cDovL3Rlc3QvMTOGDmh0dHA6Ly90ZXN0LzE0hg5odHRwOi8vdGVzdC8xNYYOaHR0 -cDovL3Rlc3QvMTaGDmh0dHA6Ly90ZXN0LzE3hg5odHRwOi8vdGVzdC8xOIYOaHR0 -cDovL3Rlc3QvMTmGDmh0dHA6Ly90ZXN0LzIwhg5odHRwOi8vdGVzdC8yMYYOaHR0 -cDovL3Rlc3QvMjKGDmh0dHA6Ly90ZXN0LzIzhg5odHRwOi8vdGVzdC8yNIYOaHR0 -cDovL3Rlc3QvMjWGDmh0dHA6Ly90ZXN0LzI2hg5odHRwOi8vdGVzdC8yN4YOaHR0 -cDovL3Rlc3QvMjiGDmh0dHA6Ly90ZXN0LzI5hg5odHRwOi8vdGVzdC8zMIYOaHR0 -cDovL3Rlc3QvMzGGDmh0dHA6Ly90ZXN0LzMyhg5odHRwOi8vdGVzdC8zM4YOaHR0 -cDovL3Rlc3QvMzSGDmh0dHA6Ly90ZXN0LzM1hg5odHRwOi8vdGVzdC8zNoYOaHR0 -cDovL3Rlc3QvMzeGDmh0dHA6Ly90ZXN0LzM4hg5odHRwOi8vdGVzdC8zOYYOaHR0 -cDovL3Rlc3QvNDCGDmh0dHA6Ly90ZXN0LzQxhg5odHRwOi8vdGVzdC80MoYOaHR0 -cDovL3Rlc3QvNDOGDmh0dHA6Ly90ZXN0LzQ0hg5odHRwOi8vdGVzdC80NYYOaHR0 -cDovL3Rlc3QvNDaGDmh0dHA6Ly90ZXN0LzQ3hg5odHRwOi8vdGVzdC80OIYOaHR0 -cDovL3Rlc3QvNDmGDmh0dHA6Ly90ZXN0LzUwhg5odHRwOi8vdGVzdC81MYYOaHR0 -cDovL3Rlc3QvNTKGDmh0dHA6Ly90ZXN0LzUzhg5odHRwOi8vdGVzdC81NIYOaHR0 -cDovL3Rlc3QvNTWGDmh0dHA6Ly90ZXN0LzU2hg5odHRwOi8vdGVzdC81N4YOaHR0 -cDovL3Rlc3QvNTiGDmh0dHA6Ly90ZXN0LzU5hg5odHRwOi8vdGVzdC82MIYOaHR0 -cDovL3Rlc3QvNjGGDmh0dHA6Ly90ZXN0LzYyhg5odHRwOi8vdGVzdC82M4YOaHR0 -cDovL3Rlc3QvNjSGDmh0dHA6Ly90ZXN0LzY1hg5odHRwOi8vdGVzdC82NoYOaHR0 -cDovL3Rlc3QvNjeGDmh0dHA6Ly90ZXN0LzY4hg5odHRwOi8vdGVzdC82OYYOaHR0 -cDovL3Rlc3QvNzCGDmh0dHA6Ly90ZXN0Lzcxhg5odHRwOi8vdGVzdC83MoYOaHR0 -cDovL3Rlc3QvNzOGDmh0dHA6Ly90ZXN0Lzc0hg5odHRwOi8vdGVzdC83NYYOaHR0 -cDovL3Rlc3QvNzaGDmh0dHA6Ly90ZXN0Lzc3hg5odHRwOi8vdGVzdC83OIYOaHR0 -cDovL3Rlc3QvNzmGDmh0dHA6Ly90ZXN0Lzgwhg5odHRwOi8vdGVzdC84MYYOaHR0 -cDovL3Rlc3QvODKGDmh0dHA6Ly90ZXN0Lzgzhg5odHRwOi8vdGVzdC84NIYOaHR0 -cDovL3Rlc3QvODWGDmh0dHA6Ly90ZXN0Lzg2hg5odHRwOi8vdGVzdC84N4YOaHR0 -cDovL3Rlc3QvODiGDmh0dHA6Ly90ZXN0Lzg5hg5odHRwOi8vdGVzdC85MIYOaHR0 -cDovL3Rlc3QvOTGGDmh0dHA6Ly90ZXN0Lzkyhg5odHRwOi8vdGVzdC85M4YOaHR0 -cDovL3Rlc3QvOTSGDmh0dHA6Ly90ZXN0Lzk1hg5odHRwOi8vdGVzdC85NoYOaHR0 -cDovL3Rlc3QvOTeGDmh0dHA6Ly90ZXN0Lzk4hg5odHRwOi8vdGVzdC85OYYPaHR0 -cDovL3Rlc3QvMTAwhg9odHRwOi8vdGVzdC8xMDGGD2h0dHA6Ly90ZXN0LzEwMoYP -aHR0cDovL3Rlc3QvMTAzhg9odHRwOi8vdGVzdC8xMDSGD2h0dHA6Ly90ZXN0LzEw -NYYPaHR0cDovL3Rlc3QvMTA2hg9odHRwOi8vdGVzdC8xMDeGD2h0dHA6Ly90ZXN0 -LzEwOIYPaHR0cDovL3Rlc3QvMTA5hg9odHRwOi8vdGVzdC8xMTCGD2h0dHA6Ly90 -ZXN0LzExMYYPaHR0cDovL3Rlc3QvMTEyhg9odHRwOi8vdGVzdC8xMTOGD2h0dHA6 -Ly90ZXN0LzExNIYPaHR0cDovL3Rlc3QvMTE1hg9odHRwOi8vdGVzdC8xMTaGD2h0 -dHA6Ly90ZXN0LzExN4YPaHR0cDovL3Rlc3QvMTE4hg9odHRwOi8vdGVzdC8xMTmG -D2h0dHA6Ly90ZXN0LzEyMIYPaHR0cDovL3Rlc3QvMTIxhg9odHRwOi8vdGVzdC8x -MjKGD2h0dHA6Ly90ZXN0LzEyM4YPaHR0cDovL3Rlc3QvMTI0hg9odHRwOi8vdGVz -dC8xMjWGD2h0dHA6Ly90ZXN0LzEyNoYPaHR0cDovL3Rlc3QvMTI3hg9odHRwOi8v -dGVzdC8xMjiGD2h0dHA6Ly90ZXN0LzEyOYYPaHR0cDovL3Rlc3QvMTMwhg9odHRw -Oi8vdGVzdC8xMzGGD2h0dHA6Ly90ZXN0LzEzMoYPaHR0cDovL3Rlc3QvMTMzhg9o -dHRwOi8vdGVzdC8xMzSGD2h0dHA6Ly90ZXN0LzEzNYYPaHR0cDovL3Rlc3QvMTM2 -hg9odHRwOi8vdGVzdC8xMzeGD2h0dHA6Ly90ZXN0LzEzOIYPaHR0cDovL3Rlc3Qv -MTM5hg9odHRwOi8vdGVzdC8xNDCGD2h0dHA6Ly90ZXN0LzE0MYYPaHR0cDovL3Rl -c3QvMTQyhg9odHRwOi8vdGVzdC8xNDOGD2h0dHA6Ly90ZXN0LzE0NIYPaHR0cDov -L3Rlc3QvMTQ1hg9odHRwOi8vdGVzdC8xNDaGD2h0dHA6Ly90ZXN0LzE0N4YPaHR0 -cDovL3Rlc3QvMTQ4hg9odHRwOi8vdGVzdC8xNDmGD2h0dHA6Ly90ZXN0LzE1MIYP -aHR0cDovL3Rlc3QvMTUxhg9odHRwOi8vdGVzdC8xNTKGD2h0dHA6Ly90ZXN0LzE1 -M4YPaHR0cDovL3Rlc3QvMTU0hg9odHRwOi8vdGVzdC8xNTWGD2h0dHA6Ly90ZXN0 -LzE1NoYPaHR0cDovL3Rlc3QvMTU3hg9odHRwOi8vdGVzdC8xNTiGD2h0dHA6Ly90 -ZXN0LzE1OYYPaHR0cDovL3Rlc3QvMTYwhg9odHRwOi8vdGVzdC8xNjGGD2h0dHA6 -Ly90ZXN0LzE2MoYPaHR0cDovL3Rlc3QvMTYzhg9odHRwOi8vdGVzdC8xNjSGD2h0 -dHA6Ly90ZXN0LzE2NYYPaHR0cDovL3Rlc3QvMTY2hg9odHRwOi8vdGVzdC8xNjeG -D2h0dHA6Ly90ZXN0LzE2OIYPaHR0cDovL3Rlc3QvMTY5hg9odHRwOi8vdGVzdC8x -NzCGD2h0dHA6Ly90ZXN0LzE3MYYPaHR0cDovL3Rlc3QvMTcyhg9odHRwOi8vdGVz -dC8xNzOGD2h0dHA6Ly90ZXN0LzE3NIYPaHR0cDovL3Rlc3QvMTc1hg9odHRwOi8v -dGVzdC8xNzaGD2h0dHA6Ly90ZXN0LzE3N4YPaHR0cDovL3Rlc3QvMTc4hg9odHRw -Oi8vdGVzdC8xNzmGD2h0dHA6Ly90ZXN0LzE4MIYPaHR0cDovL3Rlc3QvMTgxhg9o -dHRwOi8vdGVzdC8xODKGD2h0dHA6Ly90ZXN0LzE4M4YPaHR0cDovL3Rlc3QvMTg0 -hg9odHRwOi8vdGVzdC8xODWGD2h0dHA6Ly90ZXN0LzE4NoYPaHR0cDovL3Rlc3Qv -MTg3hg9odHRwOi8vdGVzdC8xODiGD2h0dHA6Ly90ZXN0LzE4OYYPaHR0cDovL3Rl -c3QvMTkwhg9odHRwOi8vdGVzdC8xOTGGD2h0dHA6Ly90ZXN0LzE5MoYPaHR0cDov -L3Rlc3QvMTkzhg9odHRwOi8vdGVzdC8xOTSGD2h0dHA6Ly90ZXN0LzE5NYYPaHR0 -cDovL3Rlc3QvMTk2hg9odHRwOi8vdGVzdC8xOTeGD2h0dHA6Ly90ZXN0LzE5OIYP -aHR0cDovL3Rlc3QvMTk5hg9odHRwOi8vdGVzdC8yMDCGD2h0dHA6Ly90ZXN0LzIw -MYYPaHR0cDovL3Rlc3QvMjAyhg9odHRwOi8vdGVzdC8yMDOGD2h0dHA6Ly90ZXN0 -LzIwNIYPaHR0cDovL3Rlc3QvMjA1hg9odHRwOi8vdGVzdC8yMDaGD2h0dHA6Ly90 -ZXN0LzIwN4YPaHR0cDovL3Rlc3QvMjA4hg9odHRwOi8vdGVzdC8yMDmGD2h0dHA6 -Ly90ZXN0LzIxMIYPaHR0cDovL3Rlc3QvMjExhg9odHRwOi8vdGVzdC8yMTKGD2h0 -dHA6Ly90ZXN0LzIxM4YPaHR0cDovL3Rlc3QvMjE0hg9odHRwOi8vdGVzdC8yMTWG -D2h0dHA6Ly90ZXN0LzIxNoYPaHR0cDovL3Rlc3QvMjE3hg9odHRwOi8vdGVzdC8y -MTiGD2h0dHA6Ly90ZXN0LzIxOYYPaHR0cDovL3Rlc3QvMjIwhg9odHRwOi8vdGVz -dC8yMjGGD2h0dHA6Ly90ZXN0LzIyMoYPaHR0cDovL3Rlc3QvMjIzhg9odHRwOi8v -dGVzdC8yMjSGD2h0dHA6Ly90ZXN0LzIyNYYPaHR0cDovL3Rlc3QvMjI2hg9odHRw -Oi8vdGVzdC8yMjeGD2h0dHA6Ly90ZXN0LzIyOIYPaHR0cDovL3Rlc3QvMjI5hg9o -dHRwOi8vdGVzdC8yMzCGD2h0dHA6Ly90ZXN0LzIzMYYPaHR0cDovL3Rlc3QvMjMy -hg9odHRwOi8vdGVzdC8yMzOGD2h0dHA6Ly90ZXN0LzIzNIYPaHR0cDovL3Rlc3Qv -MjM1hg9odHRwOi8vdGVzdC8yMzaGD2h0dHA6Ly90ZXN0LzIzN4YPaHR0cDovL3Rl -c3QvMjM4hg9odHRwOi8vdGVzdC8yMzmGD2h0dHA6Ly90ZXN0LzI0MIYPaHR0cDov -L3Rlc3QvMjQxhg9odHRwOi8vdGVzdC8yNDKGD2h0dHA6Ly90ZXN0LzI0M4YPaHR0 -cDovL3Rlc3QvMjQ0hg9odHRwOi8vdGVzdC8yNDWGD2h0dHA6Ly90ZXN0LzI0NoYP -aHR0cDovL3Rlc3QvMjQ3hg9odHRwOi8vdGVzdC8yNDiGD2h0dHA6Ly90ZXN0LzI0 -OYYPaHR0cDovL3Rlc3QvMjUwhg9odHRwOi8vdGVzdC8yNTGGD2h0dHA6Ly90ZXN0 -LzI1MoYPaHR0cDovL3Rlc3QvMjUzhg9odHRwOi8vdGVzdC8yNTSGD2h0dHA6Ly90 -ZXN0LzI1NYYPaHR0cDovL3Rlc3QvMjU2hg9odHRwOi8vdGVzdC8yNTeGD2h0dHA6 -Ly90ZXN0LzI1OIYPaHR0cDovL3Rlc3QvMjU5hg9odHRwOi8vdGVzdC8yNjCGD2h0 -dHA6Ly90ZXN0LzI2MYYPaHR0cDovL3Rlc3QvMjYyhg9odHRwOi8vdGVzdC8yNjOG -D2h0dHA6Ly90ZXN0LzI2NIYPaHR0cDovL3Rlc3QvMjY1hg9odHRwOi8vdGVzdC8y -NjaGD2h0dHA6Ly90ZXN0LzI2N4YPaHR0cDovL3Rlc3QvMjY4hg9odHRwOi8vdGVz -dC8yNjmGD2h0dHA6Ly90ZXN0LzI3MIYPaHR0cDovL3Rlc3QvMjcxhg9odHRwOi8v -dGVzdC8yNzKGD2h0dHA6Ly90ZXN0LzI3M4YPaHR0cDovL3Rlc3QvMjc0hg9odHRw -Oi8vdGVzdC8yNzWGD2h0dHA6Ly90ZXN0LzI3NoYPaHR0cDovL3Rlc3QvMjc3hg9o -dHRwOi8vdGVzdC8yNziGD2h0dHA6Ly90ZXN0LzI3OYYPaHR0cDovL3Rlc3QvMjgw -hg9odHRwOi8vdGVzdC8yODGGD2h0dHA6Ly90ZXN0LzI4MoYPaHR0cDovL3Rlc3Qv -Mjgzhg9odHRwOi8vdGVzdC8yODSGD2h0dHA6Ly90ZXN0LzI4NYYPaHR0cDovL3Rl -c3QvMjg2hg9odHRwOi8vdGVzdC8yODeGD2h0dHA6Ly90ZXN0LzI4OIYPaHR0cDov -L3Rlc3QvMjg5hg9odHRwOi8vdGVzdC8yOTCGD2h0dHA6Ly90ZXN0LzI5MYYPaHR0 -cDovL3Rlc3QvMjkyhg9odHRwOi8vdGVzdC8yOTOGD2h0dHA6Ly90ZXN0LzI5NIYP -aHR0cDovL3Rlc3QvMjk1hg9odHRwOi8vdGVzdC8yOTaGD2h0dHA6Ly90ZXN0LzI5 -N4YPaHR0cDovL3Rlc3QvMjk4hg9odHRwOi8vdGVzdC8yOTmGD2h0dHA6Ly90ZXN0 -LzMwMIYPaHR0cDovL3Rlc3QvMzAxhg9odHRwOi8vdGVzdC8zMDKGD2h0dHA6Ly90 -ZXN0LzMwM4YPaHR0cDovL3Rlc3QvMzA0hg9odHRwOi8vdGVzdC8zMDWGD2h0dHA6 -Ly90ZXN0LzMwNoYPaHR0cDovL3Rlc3QvMzA3hg9odHRwOi8vdGVzdC8zMDiGD2h0 -dHA6Ly90ZXN0LzMwOYYPaHR0cDovL3Rlc3QvMzEwhg9odHRwOi8vdGVzdC8zMTGG -D2h0dHA6Ly90ZXN0LzMxMoYPaHR0cDovL3Rlc3QvMzEzhg9odHRwOi8vdGVzdC8z -MTSGD2h0dHA6Ly90ZXN0LzMxNYYPaHR0cDovL3Rlc3QvMzE2hg9odHRwOi8vdGVz -dC8zMTeGD2h0dHA6Ly90ZXN0LzMxOIYPaHR0cDovL3Rlc3QvMzE5hg9odHRwOi8v -dGVzdC8zMjCGD2h0dHA6Ly90ZXN0LzMyMYYPaHR0cDovL3Rlc3QvMzIyhg9odHRw -Oi8vdGVzdC8zMjOGD2h0dHA6Ly90ZXN0LzMyNIYPaHR0cDovL3Rlc3QvMzI1hg9o -dHRwOi8vdGVzdC8zMjaGD2h0dHA6Ly90ZXN0LzMyN4YPaHR0cDovL3Rlc3QvMzI4 -hg9odHRwOi8vdGVzdC8zMjmGD2h0dHA6Ly90ZXN0LzMzMIYPaHR0cDovL3Rlc3Qv -MzMxhg9odHRwOi8vdGVzdC8zMzKGD2h0dHA6Ly90ZXN0LzMzM4YPaHR0cDovL3Rl -c3QvMzM0hg9odHRwOi8vdGVzdC8zMzWGD2h0dHA6Ly90ZXN0LzMzNoYPaHR0cDov -L3Rlc3QvMzM3hg9odHRwOi8vdGVzdC8zMziGD2h0dHA6Ly90ZXN0LzMzOYYPaHR0 -cDovL3Rlc3QvMzQwhg9odHRwOi8vdGVzdC8zNDGGD2h0dHA6Ly90ZXN0LzM0MoYP -aHR0cDovL3Rlc3QvMzQzhg9odHRwOi8vdGVzdC8zNDSGD2h0dHA6Ly90ZXN0LzM0 -NYYPaHR0cDovL3Rlc3QvMzQ2hg9odHRwOi8vdGVzdC8zNDeGD2h0dHA6Ly90ZXN0 -LzM0OIYPaHR0cDovL3Rlc3QvMzQ5hg9odHRwOi8vdGVzdC8zNTCGD2h0dHA6Ly90 -ZXN0LzM1MYYPaHR0cDovL3Rlc3QvMzUyhg9odHRwOi8vdGVzdC8zNTOGD2h0dHA6 -Ly90ZXN0LzM1NIYPaHR0cDovL3Rlc3QvMzU1hg9odHRwOi8vdGVzdC8zNTaGD2h0 -dHA6Ly90ZXN0LzM1N4YPaHR0cDovL3Rlc3QvMzU4hg9odHRwOi8vdGVzdC8zNTmG -D2h0dHA6Ly90ZXN0LzM2MIYPaHR0cDovL3Rlc3QvMzYxhg9odHRwOi8vdGVzdC8z -NjKGD2h0dHA6Ly90ZXN0LzM2M4YPaHR0cDovL3Rlc3QvMzY0hg9odHRwOi8vdGVz -dC8zNjWGD2h0dHA6Ly90ZXN0LzM2NoYPaHR0cDovL3Rlc3QvMzY3hg9odHRwOi8v -dGVzdC8zNjiGD2h0dHA6Ly90ZXN0LzM2OYYPaHR0cDovL3Rlc3QvMzcwhg9odHRw -Oi8vdGVzdC8zNzGGD2h0dHA6Ly90ZXN0LzM3MoYPaHR0cDovL3Rlc3QvMzczhg9o -dHRwOi8vdGVzdC8zNzSGD2h0dHA6Ly90ZXN0LzM3NYYPaHR0cDovL3Rlc3QvMzc2 -hg9odHRwOi8vdGVzdC8zNzeGD2h0dHA6Ly90ZXN0LzM3OIYPaHR0cDovL3Rlc3Qv -Mzc5hg9odHRwOi8vdGVzdC8zODCGD2h0dHA6Ly90ZXN0LzM4MYYPaHR0cDovL3Rl -c3QvMzgyhg9odHRwOi8vdGVzdC8zODOGD2h0dHA6Ly90ZXN0LzM4NIYPaHR0cDov -L3Rlc3QvMzg1hg9odHRwOi8vdGVzdC8zODaGD2h0dHA6Ly90ZXN0LzM4N4YPaHR0 -cDovL3Rlc3QvMzg4hg9odHRwOi8vdGVzdC8zODmGD2h0dHA6Ly90ZXN0LzM5MIYP -aHR0cDovL3Rlc3QvMzkxhg9odHRwOi8vdGVzdC8zOTKGD2h0dHA6Ly90ZXN0LzM5 -M4YPaHR0cDovL3Rlc3QvMzk0hg9odHRwOi8vdGVzdC8zOTWGD2h0dHA6Ly90ZXN0 -LzM5NoYPaHR0cDovL3Rlc3QvMzk3hg9odHRwOi8vdGVzdC8zOTiGD2h0dHA6Ly90 -ZXN0LzM5OYYPaHR0cDovL3Rlc3QvNDAwhg9odHRwOi8vdGVzdC80MDGGD2h0dHA6 -Ly90ZXN0LzQwMoYPaHR0cDovL3Rlc3QvNDAzhg9odHRwOi8vdGVzdC80MDSGD2h0 -dHA6Ly90ZXN0LzQwNYYPaHR0cDovL3Rlc3QvNDA2hg9odHRwOi8vdGVzdC80MDeG -D2h0dHA6Ly90ZXN0LzQwOIYPaHR0cDovL3Rlc3QvNDA5hg9odHRwOi8vdGVzdC80 -MTCGD2h0dHA6Ly90ZXN0LzQxMYYPaHR0cDovL3Rlc3QvNDEyhg9odHRwOi8vdGVz -dC80MTOGD2h0dHA6Ly90ZXN0LzQxNIYPaHR0cDovL3Rlc3QvNDE1hg9odHRwOi8v -dGVzdC80MTaGD2h0dHA6Ly90ZXN0LzQxN4YPaHR0cDovL3Rlc3QvNDE4hg9odHRw -Oi8vdGVzdC80MTmGD2h0dHA6Ly90ZXN0LzQyMIYPaHR0cDovL3Rlc3QvNDIxhg9o -dHRwOi8vdGVzdC80MjKGD2h0dHA6Ly90ZXN0LzQyM4YPaHR0cDovL3Rlc3QvNDI0 -hg9odHRwOi8vdGVzdC80MjWGD2h0dHA6Ly90ZXN0LzQyNoYPaHR0cDovL3Rlc3Qv -NDI3hg9odHRwOi8vdGVzdC80MjiGD2h0dHA6Ly90ZXN0LzQyOYYPaHR0cDovL3Rl -c3QvNDMwhg9odHRwOi8vdGVzdC80MzGGD2h0dHA6Ly90ZXN0LzQzMoYPaHR0cDov -L3Rlc3QvNDMzhg9odHRwOi8vdGVzdC80MzSGD2h0dHA6Ly90ZXN0LzQzNYYPaHR0 -cDovL3Rlc3QvNDM2hg9odHRwOi8vdGVzdC80MzeGD2h0dHA6Ly90ZXN0LzQzOIYP -aHR0cDovL3Rlc3QvNDM5hg9odHRwOi8vdGVzdC80NDCGD2h0dHA6Ly90ZXN0LzQ0 -MYYPaHR0cDovL3Rlc3QvNDQyhg9odHRwOi8vdGVzdC80NDOGD2h0dHA6Ly90ZXN0 -LzQ0NIYPaHR0cDovL3Rlc3QvNDQ1hg9odHRwOi8vdGVzdC80NDaGD2h0dHA6Ly90 -ZXN0LzQ0N4YPaHR0cDovL3Rlc3QvNDQ4hg9odHRwOi8vdGVzdC80NDmGD2h0dHA6 -Ly90ZXN0LzQ1MIYPaHR0cDovL3Rlc3QvNDUxhg9odHRwOi8vdGVzdC80NTKGD2h0 -dHA6Ly90ZXN0LzQ1M4YPaHR0cDovL3Rlc3QvNDU0hg9odHRwOi8vdGVzdC80NTWG -D2h0dHA6Ly90ZXN0LzQ1NoYPaHR0cDovL3Rlc3QvNDU3hg9odHRwOi8vdGVzdC80 -NTiGD2h0dHA6Ly90ZXN0LzQ1OYYPaHR0cDovL3Rlc3QvNDYwhg9odHRwOi8vdGVz -dC80NjGGD2h0dHA6Ly90ZXN0LzQ2MoYPaHR0cDovL3Rlc3QvNDYzhg9odHRwOi8v -dGVzdC80NjSGD2h0dHA6Ly90ZXN0LzQ2NYYPaHR0cDovL3Rlc3QvNDY2hg9odHRw -Oi8vdGVzdC80NjeGD2h0dHA6Ly90ZXN0LzQ2OIYPaHR0cDovL3Rlc3QvNDY5hg9o -dHRwOi8vdGVzdC80NzCGD2h0dHA6Ly90ZXN0LzQ3MYYPaHR0cDovL3Rlc3QvNDcy -hg9odHRwOi8vdGVzdC80NzOGD2h0dHA6Ly90ZXN0LzQ3NIYPaHR0cDovL3Rlc3Qv -NDc1hg9odHRwOi8vdGVzdC80NzaGD2h0dHA6Ly90ZXN0LzQ3N4YPaHR0cDovL3Rl -c3QvNDc4hg9odHRwOi8vdGVzdC80NzmGD2h0dHA6Ly90ZXN0LzQ4MIYPaHR0cDov -L3Rlc3QvNDgxhg9odHRwOi8vdGVzdC80ODKGD2h0dHA6Ly90ZXN0LzQ4M4YPaHR0 -cDovL3Rlc3QvNDg0hg9odHRwOi8vdGVzdC80ODWGD2h0dHA6Ly90ZXN0LzQ4NoYP -aHR0cDovL3Rlc3QvNDg3hg9odHRwOi8vdGVzdC80ODiGD2h0dHA6Ly90ZXN0LzQ4 -OYYPaHR0cDovL3Rlc3QvNDkwhg9odHRwOi8vdGVzdC80OTGGD2h0dHA6Ly90ZXN0 -LzQ5MoYPaHR0cDovL3Rlc3QvNDkzhg9odHRwOi8vdGVzdC80OTSGD2h0dHA6Ly90 -ZXN0LzQ5NYYPaHR0cDovL3Rlc3QvNDk2hg9odHRwOi8vdGVzdC80OTeGD2h0dHA6 -Ly90ZXN0LzQ5OIYPaHR0cDovL3Rlc3QvNDk5hg9odHRwOi8vdGVzdC81MDCGD2h0 -dHA6Ly90ZXN0LzUwMYYPaHR0cDovL3Rlc3QvNTAyhg9odHRwOi8vdGVzdC81MDOG -D2h0dHA6Ly90ZXN0LzUwNIYPaHR0cDovL3Rlc3QvNTA1hg9odHRwOi8vdGVzdC81 -MDaGD2h0dHA6Ly90ZXN0LzUwN4YPaHR0cDovL3Rlc3QvNTA4hg9odHRwOi8vdGVz -dC81MDmGD2h0dHA6Ly90ZXN0LzUxMIYPaHR0cDovL3Rlc3QvNTExhg9odHRwOi8v -dGVzdC81MTKGD2h0dHA6Ly90ZXN0LzUxM4YPaHR0cDovL3Rlc3QvNTE0hg9odHRw -Oi8vdGVzdC81MTWGD2h0dHA6Ly90ZXN0LzUxNoYPaHR0cDovL3Rlc3QvNTE3hg9o -dHRwOi8vdGVzdC81MTiGD2h0dHA6Ly90ZXN0LzUxOYYPaHR0cDovL3Rlc3QvNTIw -hg9odHRwOi8vdGVzdC81MjGGD2h0dHA6Ly90ZXN0LzUyMoYPaHR0cDovL3Rlc3Qv -NTIzhg9odHRwOi8vdGVzdC81MjSGD2h0dHA6Ly90ZXN0LzUyNYYPaHR0cDovL3Rl -c3QvNTI2hg9odHRwOi8vdGVzdC81MjeGD2h0dHA6Ly90ZXN0LzUyOIYPaHR0cDov -L3Rlc3QvNTI5hg9odHRwOi8vdGVzdC81MzCGD2h0dHA6Ly90ZXN0LzUzMYYPaHR0 -cDovL3Rlc3QvNTMyhg9odHRwOi8vdGVzdC81MzOGD2h0dHA6Ly90ZXN0LzUzNIYP -aHR0cDovL3Rlc3QvNTM1hg9odHRwOi8vdGVzdC81MzaGD2h0dHA6Ly90ZXN0LzUz -N4YPaHR0cDovL3Rlc3QvNTM4hg9odHRwOi8vdGVzdC81MzmGD2h0dHA6Ly90ZXN0 -LzU0MIYPaHR0cDovL3Rlc3QvNTQxhg9odHRwOi8vdGVzdC81NDKGD2h0dHA6Ly90 -ZXN0LzU0M4YPaHR0cDovL3Rlc3QvNTQ0hg9odHRwOi8vdGVzdC81NDWGD2h0dHA6 -Ly90ZXN0LzU0NoYPaHR0cDovL3Rlc3QvNTQ3hg9odHRwOi8vdGVzdC81NDiGD2h0 -dHA6Ly90ZXN0LzU0OYYPaHR0cDovL3Rlc3QvNTUwhg9odHRwOi8vdGVzdC81NTGG -D2h0dHA6Ly90ZXN0LzU1MoYPaHR0cDovL3Rlc3QvNTUzhg9odHRwOi8vdGVzdC81 -NTSGD2h0dHA6Ly90ZXN0LzU1NYYPaHR0cDovL3Rlc3QvNTU2hg9odHRwOi8vdGVz -dC81NTeGD2h0dHA6Ly90ZXN0LzU1OIYPaHR0cDovL3Rlc3QvNTU5hg9odHRwOi8v -dGVzdC81NjCGD2h0dHA6Ly90ZXN0LzU2MYYPaHR0cDovL3Rlc3QvNTYyhg9odHRw -Oi8vdGVzdC81NjOGD2h0dHA6Ly90ZXN0LzU2NIYPaHR0cDovL3Rlc3QvNTY1hg9o -dHRwOi8vdGVzdC81NjaGD2h0dHA6Ly90ZXN0LzU2N4YPaHR0cDovL3Rlc3QvNTY4 -hg9odHRwOi8vdGVzdC81NjmGD2h0dHA6Ly90ZXN0LzU3MIYPaHR0cDovL3Rlc3Qv -NTcxhg9odHRwOi8vdGVzdC81NzKGD2h0dHA6Ly90ZXN0LzU3M4YPaHR0cDovL3Rl -c3QvNTc0hg9odHRwOi8vdGVzdC81NzWGD2h0dHA6Ly90ZXN0LzU3NoYPaHR0cDov -L3Rlc3QvNTc3hg9odHRwOi8vdGVzdC81NziGD2h0dHA6Ly90ZXN0LzU3OYYPaHR0 -cDovL3Rlc3QvNTgwhg9odHRwOi8vdGVzdC81ODGGD2h0dHA6Ly90ZXN0LzU4MoYP -aHR0cDovL3Rlc3QvNTgzhg9odHRwOi8vdGVzdC81ODSGD2h0dHA6Ly90ZXN0LzU4 -NYYPaHR0cDovL3Rlc3QvNTg2hg9odHRwOi8vdGVzdC81ODeGD2h0dHA6Ly90ZXN0 -LzU4OIYPaHR0cDovL3Rlc3QvNTg5hg9odHRwOi8vdGVzdC81OTCGD2h0dHA6Ly90 -ZXN0LzU5MYYPaHR0cDovL3Rlc3QvNTkyhg9odHRwOi8vdGVzdC81OTOGD2h0dHA6 -Ly90ZXN0LzU5NIYPaHR0cDovL3Rlc3QvNTk1hg9odHRwOi8vdGVzdC81OTaGD2h0 -dHA6Ly90ZXN0LzU5N4YPaHR0cDovL3Rlc3QvNTk4hg9odHRwOi8vdGVzdC81OTmG -D2h0dHA6Ly90ZXN0LzYwMIYPaHR0cDovL3Rlc3QvNjAxhg9odHRwOi8vdGVzdC82 -MDKGD2h0dHA6Ly90ZXN0LzYwM4YPaHR0cDovL3Rlc3QvNjA0hg9odHRwOi8vdGVz -dC82MDWGD2h0dHA6Ly90ZXN0LzYwNoYPaHR0cDovL3Rlc3QvNjA3hg9odHRwOi8v -dGVzdC82MDiGD2h0dHA6Ly90ZXN0LzYwOYYPaHR0cDovL3Rlc3QvNjEwhg9odHRw -Oi8vdGVzdC82MTGGD2h0dHA6Ly90ZXN0LzYxMoYPaHR0cDovL3Rlc3QvNjEzhg9o -dHRwOi8vdGVzdC82MTSGD2h0dHA6Ly90ZXN0LzYxNYYPaHR0cDovL3Rlc3QvNjE2 -hg9odHRwOi8vdGVzdC82MTeGD2h0dHA6Ly90ZXN0LzYxOIYPaHR0cDovL3Rlc3Qv -NjE5hg9odHRwOi8vdGVzdC82MjCGD2h0dHA6Ly90ZXN0LzYyMYYPaHR0cDovL3Rl -c3QvNjIyhg9odHRwOi8vdGVzdC82MjOGD2h0dHA6Ly90ZXN0LzYyNIYPaHR0cDov -L3Rlc3QvNjI1hg9odHRwOi8vdGVzdC82MjaGD2h0dHA6Ly90ZXN0LzYyN4YPaHR0 -cDovL3Rlc3QvNjI4hg9odHRwOi8vdGVzdC82MjmGD2h0dHA6Ly90ZXN0LzYzMIYP -aHR0cDovL3Rlc3QvNjMxhg9odHRwOi8vdGVzdC82MzKGD2h0dHA6Ly90ZXN0LzYz -M4YPaHR0cDovL3Rlc3QvNjM0hg9odHRwOi8vdGVzdC82MzWGD2h0dHA6Ly90ZXN0 -LzYzNoYPaHR0cDovL3Rlc3QvNjM3hg9odHRwOi8vdGVzdC82MziGD2h0dHA6Ly90 -ZXN0LzYzOYYPaHR0cDovL3Rlc3QvNjQwhg9odHRwOi8vdGVzdC82NDGGD2h0dHA6 -Ly90ZXN0LzY0MoYPaHR0cDovL3Rlc3QvNjQzhg9odHRwOi8vdGVzdC82NDSGD2h0 -dHA6Ly90ZXN0LzY0NYYPaHR0cDovL3Rlc3QvNjQ2hg9odHRwOi8vdGVzdC82NDeG -D2h0dHA6Ly90ZXN0LzY0OIYPaHR0cDovL3Rlc3QvNjQ5hg9odHRwOi8vdGVzdC82 -NTCGD2h0dHA6Ly90ZXN0LzY1MYYPaHR0cDovL3Rlc3QvNjUyhg9odHRwOi8vdGVz -dC82NTOGD2h0dHA6Ly90ZXN0LzY1NIYPaHR0cDovL3Rlc3QvNjU1hg9odHRwOi8v -dGVzdC82NTaGD2h0dHA6Ly90ZXN0LzY1N4YPaHR0cDovL3Rlc3QvNjU4hg9odHRw -Oi8vdGVzdC82NTmGD2h0dHA6Ly90ZXN0LzY2MIYPaHR0cDovL3Rlc3QvNjYxhg9o -dHRwOi8vdGVzdC82NjKGD2h0dHA6Ly90ZXN0LzY2M4YPaHR0cDovL3Rlc3QvNjY0 -hg9odHRwOi8vdGVzdC82NjWGD2h0dHA6Ly90ZXN0LzY2NoYPaHR0cDovL3Rlc3Qv -NjY3hg9odHRwOi8vdGVzdC82NjiGD2h0dHA6Ly90ZXN0LzY2OYYPaHR0cDovL3Rl -c3QvNjcwhg9odHRwOi8vdGVzdC82NzGGD2h0dHA6Ly90ZXN0LzY3MoYPaHR0cDov -L3Rlc3QvNjczhg9odHRwOi8vdGVzdC82NzSGD2h0dHA6Ly90ZXN0LzY3NYYPaHR0 -cDovL3Rlc3QvNjc2hg9odHRwOi8vdGVzdC82NzeGD2h0dHA6Ly90ZXN0LzY3OIYP -aHR0cDovL3Rlc3QvNjc5hg9odHRwOi8vdGVzdC82ODCGD2h0dHA6Ly90ZXN0LzY4 -MYYPaHR0cDovL3Rlc3QvNjgyhg9odHRwOi8vdGVzdC82ODOGD2h0dHA6Ly90ZXN0 -LzY4NIYPaHR0cDovL3Rlc3QvNjg1hg9odHRwOi8vdGVzdC82ODaGD2h0dHA6Ly90 -ZXN0LzY4N4YPaHR0cDovL3Rlc3QvNjg4hg9odHRwOi8vdGVzdC82ODmGD2h0dHA6 -Ly90ZXN0LzY5MIYPaHR0cDovL3Rlc3QvNjkxhg9odHRwOi8vdGVzdC82OTKGD2h0 -dHA6Ly90ZXN0LzY5M4YPaHR0cDovL3Rlc3QvNjk0hg9odHRwOi8vdGVzdC82OTWG -D2h0dHA6Ly90ZXN0LzY5NoYPaHR0cDovL3Rlc3QvNjk3hg9odHRwOi8vdGVzdC82 -OTiGD2h0dHA6Ly90ZXN0LzY5OYYPaHR0cDovL3Rlc3QvNzAwhg9odHRwOi8vdGVz -dC83MDGGD2h0dHA6Ly90ZXN0LzcwMoYPaHR0cDovL3Rlc3QvNzAzhg9odHRwOi8v -dGVzdC83MDSGD2h0dHA6Ly90ZXN0LzcwNYYPaHR0cDovL3Rlc3QvNzA2hg9odHRw -Oi8vdGVzdC83MDeGD2h0dHA6Ly90ZXN0LzcwOIYPaHR0cDovL3Rlc3QvNzA5hg9o -dHRwOi8vdGVzdC83MTCGD2h0dHA6Ly90ZXN0LzcxMYYPaHR0cDovL3Rlc3QvNzEy -hg9odHRwOi8vdGVzdC83MTOGD2h0dHA6Ly90ZXN0LzcxNIYPaHR0cDovL3Rlc3Qv -NzE1hg9odHRwOi8vdGVzdC83MTaGD2h0dHA6Ly90ZXN0LzcxN4YPaHR0cDovL3Rl -c3QvNzE4hg9odHRwOi8vdGVzdC83MTmGD2h0dHA6Ly90ZXN0LzcyMIYPaHR0cDov -L3Rlc3QvNzIxhg9odHRwOi8vdGVzdC83MjKGD2h0dHA6Ly90ZXN0LzcyM4YPaHR0 -cDovL3Rlc3QvNzI0hg9odHRwOi8vdGVzdC83MjWGD2h0dHA6Ly90ZXN0LzcyNoYP -aHR0cDovL3Rlc3QvNzI3hg9odHRwOi8vdGVzdC83MjiGD2h0dHA6Ly90ZXN0Lzcy -OYYPaHR0cDovL3Rlc3QvNzMwhg9odHRwOi8vdGVzdC83MzGGD2h0dHA6Ly90ZXN0 -LzczMoYPaHR0cDovL3Rlc3QvNzMzhg9odHRwOi8vdGVzdC83MzSGD2h0dHA6Ly90 -ZXN0LzczNYYPaHR0cDovL3Rlc3QvNzM2hg9odHRwOi8vdGVzdC83MzeGD2h0dHA6 -Ly90ZXN0LzczOIYPaHR0cDovL3Rlc3QvNzM5hg9odHRwOi8vdGVzdC83NDCGD2h0 -dHA6Ly90ZXN0Lzc0MYYPaHR0cDovL3Rlc3QvNzQyhg9odHRwOi8vdGVzdC83NDOG -D2h0dHA6Ly90ZXN0Lzc0NIYPaHR0cDovL3Rlc3QvNzQ1hg9odHRwOi8vdGVzdC83 -NDaGD2h0dHA6Ly90ZXN0Lzc0N4YPaHR0cDovL3Rlc3QvNzQ4hg9odHRwOi8vdGVz -dC83NDmGD2h0dHA6Ly90ZXN0Lzc1MIYPaHR0cDovL3Rlc3QvNzUxhg9odHRwOi8v -dGVzdC83NTKGD2h0dHA6Ly90ZXN0Lzc1M4YPaHR0cDovL3Rlc3QvNzU0hg9odHRw -Oi8vdGVzdC83NTWGD2h0dHA6Ly90ZXN0Lzc1NoYPaHR0cDovL3Rlc3QvNzU3hg9o -dHRwOi8vdGVzdC83NTiGD2h0dHA6Ly90ZXN0Lzc1OYYPaHR0cDovL3Rlc3QvNzYw -hg9odHRwOi8vdGVzdC83NjGGD2h0dHA6Ly90ZXN0Lzc2MoYPaHR0cDovL3Rlc3Qv -NzYzhg9odHRwOi8vdGVzdC83NjSGD2h0dHA6Ly90ZXN0Lzc2NYYPaHR0cDovL3Rl -c3QvNzY2hg9odHRwOi8vdGVzdC83NjeGD2h0dHA6Ly90ZXN0Lzc2OIYPaHR0cDov -L3Rlc3QvNzY5hg9odHRwOi8vdGVzdC83NzCGD2h0dHA6Ly90ZXN0Lzc3MYYPaHR0 -cDovL3Rlc3QvNzcyhg9odHRwOi8vdGVzdC83NzOGD2h0dHA6Ly90ZXN0Lzc3NIYP -aHR0cDovL3Rlc3QvNzc1hg9odHRwOi8vdGVzdC83NzaGD2h0dHA6Ly90ZXN0Lzc3 -N4YPaHR0cDovL3Rlc3QvNzc4hg9odHRwOi8vdGVzdC83NzmGD2h0dHA6Ly90ZXN0 -Lzc4MIYPaHR0cDovL3Rlc3QvNzgxhg9odHRwOi8vdGVzdC83ODKGD2h0dHA6Ly90 -ZXN0Lzc4M4YPaHR0cDovL3Rlc3QvNzg0hg9odHRwOi8vdGVzdC83ODWGD2h0dHA6 -Ly90ZXN0Lzc4NoYPaHR0cDovL3Rlc3QvNzg3hg9odHRwOi8vdGVzdC83ODiGD2h0 -dHA6Ly90ZXN0Lzc4OYYPaHR0cDovL3Rlc3QvNzkwhg9odHRwOi8vdGVzdC83OTGG -D2h0dHA6Ly90ZXN0Lzc5MoYPaHR0cDovL3Rlc3QvNzkzhg9odHRwOi8vdGVzdC83 -OTSGD2h0dHA6Ly90ZXN0Lzc5NYYPaHR0cDovL3Rlc3QvNzk2hg9odHRwOi8vdGVz -dC83OTeGD2h0dHA6Ly90ZXN0Lzc5OIYPaHR0cDovL3Rlc3QvNzk5hg9odHRwOi8v -dGVzdC84MDCGD2h0dHA6Ly90ZXN0LzgwMYYPaHR0cDovL3Rlc3QvODAyhg9odHRw -Oi8vdGVzdC84MDOGD2h0dHA6Ly90ZXN0LzgwNIYPaHR0cDovL3Rlc3QvODA1hg9o -dHRwOi8vdGVzdC84MDaGD2h0dHA6Ly90ZXN0LzgwN4YPaHR0cDovL3Rlc3QvODA4 -hg9odHRwOi8vdGVzdC84MDmGD2h0dHA6Ly90ZXN0LzgxMIYPaHR0cDovL3Rlc3Qv -ODExhg9odHRwOi8vdGVzdC84MTKGD2h0dHA6Ly90ZXN0LzgxM4YPaHR0cDovL3Rl -c3QvODE0hg9odHRwOi8vdGVzdC84MTWGD2h0dHA6Ly90ZXN0LzgxNoYPaHR0cDov -L3Rlc3QvODE3hg9odHRwOi8vdGVzdC84MTiGD2h0dHA6Ly90ZXN0LzgxOYYPaHR0 -cDovL3Rlc3QvODIwhg9odHRwOi8vdGVzdC84MjGGD2h0dHA6Ly90ZXN0LzgyMoYP -aHR0cDovL3Rlc3QvODIzhg9odHRwOi8vdGVzdC84MjSGD2h0dHA6Ly90ZXN0Lzgy -NYYPaHR0cDovL3Rlc3QvODI2hg9odHRwOi8vdGVzdC84MjeGD2h0dHA6Ly90ZXN0 -LzgyOIYPaHR0cDovL3Rlc3QvODI5hg9odHRwOi8vdGVzdC84MzCGD2h0dHA6Ly90 -ZXN0LzgzMYYPaHR0cDovL3Rlc3QvODMyhg9odHRwOi8vdGVzdC84MzOGD2h0dHA6 -Ly90ZXN0LzgzNIYPaHR0cDovL3Rlc3QvODM1hg9odHRwOi8vdGVzdC84MzaGD2h0 -dHA6Ly90ZXN0LzgzN4YPaHR0cDovL3Rlc3QvODM4hg9odHRwOi8vdGVzdC84MzmG -D2h0dHA6Ly90ZXN0Lzg0MIYPaHR0cDovL3Rlc3QvODQxhg9odHRwOi8vdGVzdC84 -NDKGD2h0dHA6Ly90ZXN0Lzg0M4YPaHR0cDovL3Rlc3QvODQ0hg9odHRwOi8vdGVz -dC84NDWGD2h0dHA6Ly90ZXN0Lzg0NoYPaHR0cDovL3Rlc3QvODQ3hg9odHRwOi8v -dGVzdC84NDiGD2h0dHA6Ly90ZXN0Lzg0OYYPaHR0cDovL3Rlc3QvODUwhg9odHRw -Oi8vdGVzdC84NTGGD2h0dHA6Ly90ZXN0Lzg1MoYPaHR0cDovL3Rlc3QvODUzhg9o -dHRwOi8vdGVzdC84NTSGD2h0dHA6Ly90ZXN0Lzg1NYYPaHR0cDovL3Rlc3QvODU2 -hg9odHRwOi8vdGVzdC84NTeGD2h0dHA6Ly90ZXN0Lzg1OIYPaHR0cDovL3Rlc3Qv -ODU5hg9odHRwOi8vdGVzdC84NjCGD2h0dHA6Ly90ZXN0Lzg2MYYPaHR0cDovL3Rl -c3QvODYyhg9odHRwOi8vdGVzdC84NjOGD2h0dHA6Ly90ZXN0Lzg2NIYPaHR0cDov -L3Rlc3QvODY1hg9odHRwOi8vdGVzdC84NjaGD2h0dHA6Ly90ZXN0Lzg2N4YPaHR0 -cDovL3Rlc3QvODY4hg9odHRwOi8vdGVzdC84NjmGD2h0dHA6Ly90ZXN0Lzg3MIYP -aHR0cDovL3Rlc3QvODcxhg9odHRwOi8vdGVzdC84NzKGD2h0dHA6Ly90ZXN0Lzg3 -M4YPaHR0cDovL3Rlc3QvODc0hg9odHRwOi8vdGVzdC84NzWGD2h0dHA6Ly90ZXN0 -Lzg3NoYPaHR0cDovL3Rlc3QvODc3hg9odHRwOi8vdGVzdC84NziGD2h0dHA6Ly90 -ZXN0Lzg3OYYPaHR0cDovL3Rlc3QvODgwhg9odHRwOi8vdGVzdC84ODGGD2h0dHA6 -Ly90ZXN0Lzg4MoYPaHR0cDovL3Rlc3QvODgzhg9odHRwOi8vdGVzdC84ODSGD2h0 -dHA6Ly90ZXN0Lzg4NYYPaHR0cDovL3Rlc3QvODg2hg9odHRwOi8vdGVzdC84ODeG -D2h0dHA6Ly90ZXN0Lzg4OIYPaHR0cDovL3Rlc3QvODg5hg9odHRwOi8vdGVzdC84 -OTCGD2h0dHA6Ly90ZXN0Lzg5MYYPaHR0cDovL3Rlc3QvODkyhg9odHRwOi8vdGVz -dC84OTOGD2h0dHA6Ly90ZXN0Lzg5NIYPaHR0cDovL3Rlc3QvODk1hg9odHRwOi8v -dGVzdC84OTaGD2h0dHA6Ly90ZXN0Lzg5N4YPaHR0cDovL3Rlc3QvODk4hg9odHRw -Oi8vdGVzdC84OTmGD2h0dHA6Ly90ZXN0LzkwMIYPaHR0cDovL3Rlc3QvOTAxhg9o -dHRwOi8vdGVzdC85MDKGD2h0dHA6Ly90ZXN0LzkwM4YPaHR0cDovL3Rlc3QvOTA0 -hg9odHRwOi8vdGVzdC85MDWGD2h0dHA6Ly90ZXN0LzkwNoYPaHR0cDovL3Rlc3Qv -OTA3hg9odHRwOi8vdGVzdC85MDiGD2h0dHA6Ly90ZXN0LzkwOYYPaHR0cDovL3Rl -c3QvOTEwhg9odHRwOi8vdGVzdC85MTGGD2h0dHA6Ly90ZXN0LzkxMoYPaHR0cDov -L3Rlc3QvOTEzhg9odHRwOi8vdGVzdC85MTSGD2h0dHA6Ly90ZXN0LzkxNYYPaHR0 -cDovL3Rlc3QvOTE2hg9odHRwOi8vdGVzdC85MTeGD2h0dHA6Ly90ZXN0LzkxOIYP -aHR0cDovL3Rlc3QvOTE5hg9odHRwOi8vdGVzdC85MjCGD2h0dHA6Ly90ZXN0Lzky -MYYPaHR0cDovL3Rlc3QvOTIyhg9odHRwOi8vdGVzdC85MjOGD2h0dHA6Ly90ZXN0 -LzkyNIYPaHR0cDovL3Rlc3QvOTI1hg9odHRwOi8vdGVzdC85MjaGD2h0dHA6Ly90 -ZXN0LzkyN4YPaHR0cDovL3Rlc3QvOTI4hg9odHRwOi8vdGVzdC85MjmGD2h0dHA6 -Ly90ZXN0LzkzMIYPaHR0cDovL3Rlc3QvOTMxhg9odHRwOi8vdGVzdC85MzKGD2h0 -dHA6Ly90ZXN0LzkzM4YPaHR0cDovL3Rlc3QvOTM0hg9odHRwOi8vdGVzdC85MzWG -D2h0dHA6Ly90ZXN0LzkzNoYPaHR0cDovL3Rlc3QvOTM3hg9odHRwOi8vdGVzdC85 -MziGD2h0dHA6Ly90ZXN0LzkzOYYPaHR0cDovL3Rlc3QvOTQwhg9odHRwOi8vdGVz -dC85NDGGD2h0dHA6Ly90ZXN0Lzk0MoYPaHR0cDovL3Rlc3QvOTQzhg9odHRwOi8v -dGVzdC85NDSGD2h0dHA6Ly90ZXN0Lzk0NYYPaHR0cDovL3Rlc3QvOTQ2hg9odHRw -Oi8vdGVzdC85NDeGD2h0dHA6Ly90ZXN0Lzk0OIYPaHR0cDovL3Rlc3QvOTQ5hg9o -dHRwOi8vdGVzdC85NTCGD2h0dHA6Ly90ZXN0Lzk1MYYPaHR0cDovL3Rlc3QvOTUy -hg9odHRwOi8vdGVzdC85NTOGD2h0dHA6Ly90ZXN0Lzk1NIYPaHR0cDovL3Rlc3Qv -OTU1hg9odHRwOi8vdGVzdC85NTaGD2h0dHA6Ly90ZXN0Lzk1N4YPaHR0cDovL3Rl -c3QvOTU4hg9odHRwOi8vdGVzdC85NTmGD2h0dHA6Ly90ZXN0Lzk2MIYPaHR0cDov -L3Rlc3QvOTYxhg9odHRwOi8vdGVzdC85NjKGD2h0dHA6Ly90ZXN0Lzk2M4YPaHR0 -cDovL3Rlc3QvOTY0hg9odHRwOi8vdGVzdC85NjWGD2h0dHA6Ly90ZXN0Lzk2NoYP -aHR0cDovL3Rlc3QvOTY3hg9odHRwOi8vdGVzdC85NjiGD2h0dHA6Ly90ZXN0Lzk2 -OYYPaHR0cDovL3Rlc3QvOTcwhg9odHRwOi8vdGVzdC85NzGGD2h0dHA6Ly90ZXN0 -Lzk3MoYPaHR0cDovL3Rlc3QvOTczhg9odHRwOi8vdGVzdC85NzSGD2h0dHA6Ly90 -ZXN0Lzk3NYYPaHR0cDovL3Rlc3QvOTc2hg9odHRwOi8vdGVzdC85NzeGD2h0dHA6 -Ly90ZXN0Lzk3OIYPaHR0cDovL3Rlc3QvOTc5hg9odHRwOi8vdGVzdC85ODCGD2h0 -dHA6Ly90ZXN0Lzk4MYYPaHR0cDovL3Rlc3QvOTgyhg9odHRwOi8vdGVzdC85ODOG -D2h0dHA6Ly90ZXN0Lzk4NIYPaHR0cDovL3Rlc3QvOTg1hg9odHRwOi8vdGVzdC85 -ODaGD2h0dHA6Ly90ZXN0Lzk4N4YPaHR0cDovL3Rlc3QvOTg4hg9odHRwOi8vdGVz -dC85ODmGD2h0dHA6Ly90ZXN0Lzk5MIYPaHR0cDovL3Rlc3QvOTkxhg9odHRwOi8v -dGVzdC85OTKGD2h0dHA6Ly90ZXN0Lzk5M4YPaHR0cDovL3Rlc3QvOTk0hg9odHRw -Oi8vdGVzdC85OTWGD2h0dHA6Ly90ZXN0Lzk5NoYPaHR0cDovL3Rlc3QvOTk3hg9o -dHRwOi8vdGVzdC85OTiGD2h0dHA6Ly90ZXN0Lzk5OYYQaHR0cDovL3Rlc3QvMTAw -MIYQaHR0cDovL3Rlc3QvMTAwMYYQaHR0cDovL3Rlc3QvMTAwMoYQaHR0cDovL3Rl -c3QvMTAwM4YQaHR0cDovL3Rlc3QvMTAwNIYQaHR0cDovL3Rlc3QvMTAwNYYQaHR0 -cDovL3Rlc3QvMTAwNoYQaHR0cDovL3Rlc3QvMTAwN4YQaHR0cDovL3Rlc3QvMTAw -OIYQaHR0cDovL3Rlc3QvMTAwOYYQaHR0cDovL3Rlc3QvMTAxMIYQaHR0cDovL3Rl -c3QvMTAxMYYQaHR0cDovL3Rlc3QvMTAxMoYQaHR0cDovL3Rlc3QvMTAxM4YQaHR0 -cDovL3Rlc3QvMTAxNIYQaHR0cDovL3Rlc3QvMTAxNYYQaHR0cDovL3Rlc3QvMTAx -NoYQaHR0cDovL3Rlc3QvMTAxN4YQaHR0cDovL3Rlc3QvMTAxOIYQaHR0cDovL3Rl -c3QvMTAxOYYQaHR0cDovL3Rlc3QvMTAyMIYQaHR0cDovL3Rlc3QvMTAyMYYQaHR0 -cDovL3Rlc3QvMTAyMoYQaHR0cDovL3Rlc3QvMTAyM4YQaHR0cDovL3Rlc3QvMTAy -NDANBgkqhkiG9w0BAQsFAAOCAQEALVYcHsqOG3YUW1iZMC7ZmkTpgewab1xJGRDl -VY1qilCY73l/xdKD/2KHZeW1u3gWB3yv/asRDJNfU05uFEAzdbCrp7dmgh0o+jmE -PlgnEcxJ9mR7/mPY80ouACvqiq2q4T5OzuhEUf8nxxL0w/m/6wdyy+zSvuynXkWC -1Ym9bGlf+Bm/UivPWLttj7lVmATwd8Lf6stndJheAMBMTOFtBkJSd/uifuUKiuuM -7xkS9HSkqmZhImOwRISOFGuJVERrWdNVacTTz+TGRPZV544M/v5PygW6mLgb5/mJ -yeLOdsfh4GcAa1SdhMhG5/ALUnVMwnRU23LfD52DGG9U6uTTvQ== ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.db b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.db deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.pem deleted file mode 100644 index c59ddf7a5e..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.pem +++ /dev/null @@ -1,705 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d4 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DNS:t0.test, DNS:t1.test, DNS:t2.test, DNS:t3.test, DNS:t4.test, DNS:t5.test, DNS:t6.test, DNS:t7.test, DNS:t8.test, DNS:t9.test, DNS:t10.test, DNS:t11.test, DNS:t12.test, DNS:t13.test, DNS:t14.test, DNS:t15.test, DNS:t16.test, DNS:t17.test, DNS:t18.test, DNS:t19.test, DNS:t20.test, DNS:t21.test, DNS:t22.test, DNS:t23.test, DNS:t24.test, DNS:t25.test, DNS:t26.test, DNS:t27.test, DNS:t28.test, DNS:t29.test, DNS:t30.test, DNS:t31.test, DNS:t32.test, DNS:t33.test, DNS:t34.test, DNS:t35.test, DNS:t36.test, DNS:t37.test, DNS:t38.test, DNS:t39.test, DNS:t40.test, DNS:t41.test, DNS:t42.test, DNS:t43.test, DNS:t44.test, DNS:t45.test, DNS:t46.test, DNS:t47.test, DNS:t48.test, DNS:t49.test, DNS:t50.test, DNS:t51.test, DNS:t52.test, DNS:t53.test, DNS:t54.test, DNS:t55.test, DNS:t56.test, DNS:t57.test, DNS:t58.test, DNS:t59.test, DNS:t60.test, DNS:t61.test, DNS:t62.test, DNS:t63.test, DNS:t64.test, DNS:t65.test, DNS:t66.test, DNS:t67.test, DNS:t68.test, DNS:t69.test, DNS:t70.test, DNS:t71.test, DNS:t72.test, DNS:t73.test, DNS:t74.test, DNS:t75.test, DNS:t76.test, DNS:t77.test, DNS:t78.test, DNS:t79.test, DNS:t80.test, DNS:t81.test, DNS:t82.test, DNS:t83.test, DNS:t84.test, DNS:t85.test, DNS:t86.test, DNS:t87.test, DNS:t88.test, DNS:t89.test, DNS:t90.test, DNS:t91.test, DNS:t92.test, DNS:t93.test, DNS:t94.test, DNS:t95.test, DNS:t96.test, DNS:t97.test, DNS:t98.test, DNS:t99.test, DNS:t100.test, DNS:t101.test, DNS:t102.test, DNS:t103.test, DNS:t104.test, DNS:t105.test, DNS:t106.test, DNS:t107.test, DNS:t108.test, DNS:t109.test, DNS:t110.test, DNS:t111.test, DNS:t112.test, DNS:t113.test, DNS:t114.test, DNS:t115.test, DNS:t116.test, DNS:t117.test, DNS:t118.test, DNS:t119.test, DNS:t120.test, DNS:t121.test, DNS:t122.test, DNS:t123.test, DNS:t124.test, DNS:t125.test, DNS:t126.test, DNS:t127.test, DNS:t128.test, DNS:t129.test, DNS:t130.test, DNS:t131.test, DNS:t132.test, DNS:t133.test, DNS:t134.test, DNS:t135.test, DNS:t136.test, DNS:t137.test, DNS:t138.test, DNS:t139.test, DNS:t140.test, DNS:t141.test, DNS:t142.test, DNS:t143.test, DNS:t144.test, DNS:t145.test, DNS:t146.test, DNS:t147.test, DNS:t148.test, DNS:t149.test, DNS:t150.test, DNS:t151.test, DNS:t152.test, DNS:t153.test, DNS:t154.test, DNS:t155.test, DNS:t156.test, DNS:t157.test, DNS:t158.test, DNS:t159.test, DNS:t160.test, DNS:t161.test, DNS:t162.test, DNS:t163.test, DNS:t164.test, DNS:t165.test, DNS:t166.test, DNS:t167.test, DNS:t168.test, DNS:t169.test, DNS:t170.test, DNS:t171.test, DNS:t172.test, DNS:t173.test, DNS:t174.test, DNS:t175.test, DNS:t176.test, DNS:t177.test, DNS:t178.test, DNS:t179.test, DNS:t180.test, DNS:t181.test, DNS:t182.test, DNS:t183.test, DNS:t184.test, DNS:t185.test, DNS:t186.test, DNS:t187.test, DNS:t188.test, DNS:t189.test, DNS:t190.test, DNS:t191.test, DNS:t192.test, DNS:t193.test, DNS:t194.test, DNS:t195.test, DNS:t196.test, DNS:t197.test, DNS:t198.test, DNS:t199.test, DNS:t200.test, DNS:t201.test, DNS:t202.test, DNS:t203.test, DNS:t204.test, DNS:t205.test, DNS:t206.test, DNS:t207.test, DNS:t208.test, DNS:t209.test, DNS:t210.test, DNS:t211.test, DNS:t212.test, DNS:t213.test, DNS:t214.test, DNS:t215.test, DNS:t216.test, DNS:t217.test, DNS:t218.test, DNS:t219.test, DNS:t220.test, DNS:t221.test, DNS:t222.test, DNS:t223.test, DNS:t224.test, DNS:t225.test, DNS:t226.test, DNS:t227.test, DNS:t228.test, DNS:t229.test, DNS:t230.test, DNS:t231.test, DNS:t232.test, DNS:t233.test, DNS:t234.test, DNS:t235.test, DNS:t236.test, DNS:t237.test, DNS:t238.test, DNS:t239.test, DNS:t240.test, DNS:t241.test, DNS:t242.test, DNS:t243.test, DNS:t244.test, DNS:t245.test, DNS:t246.test, DNS:t247.test, DNS:t248.test, DNS:t249.test, DNS:t250.test, DNS:t251.test, DNS:t252.test, DNS:t253.test, DNS:t254.test, DNS:t255.test, DNS:t256.test, DNS:t257.test, DNS:t258.test, DNS:t259.test, DNS:t260.test, DNS:t261.test, DNS:t262.test, DNS:t263.test, DNS:t264.test, DNS:t265.test, DNS:t266.test, DNS:t267.test, DNS:t268.test, DNS:t269.test, DNS:t270.test, DNS:t271.test, DNS:t272.test, DNS:t273.test, DNS:t274.test, DNS:t275.test, DNS:t276.test, DNS:t277.test, DNS:t278.test, DNS:t279.test, DNS:t280.test, DNS:t281.test, DNS:t282.test, DNS:t283.test, DNS:t284.test, DNS:t285.test, DNS:t286.test, DNS:t287.test, DNS:t288.test, DNS:t289.test, DNS:t290.test, DNS:t291.test, DNS:t292.test, DNS:t293.test, DNS:t294.test, DNS:t295.test, DNS:t296.test, DNS:t297.test, DNS:t298.test, DNS:t299.test, DNS:t300.test, DNS:t301.test, DNS:t302.test, DNS:t303.test, DNS:t304.test, DNS:t305.test, DNS:t306.test, DNS:t307.test, DNS:t308.test, DNS:t309.test, DNS:t310.test, DNS:t311.test, DNS:t312.test, DNS:t313.test, DNS:t314.test, DNS:t315.test, DNS:t316.test, DNS:t317.test, DNS:t318.test, DNS:t319.test, DNS:t320.test, DNS:t321.test, DNS:t322.test, DNS:t323.test, DNS:t324.test, DNS:t325.test, DNS:t326.test, DNS:t327.test, DNS:t328.test, DNS:t329.test, DNS:t330.test, DNS:t331.test, DNS:t332.test, DNS:t333.test, DNS:t334.test, DNS:t335.test, DNS:t336.test, DNS:t337.test, DNS:t338.test, DNS:t339.test, DNS:t340.test, IP Address:10.0.0.0, IP Address:10.0.0.1, IP Address:10.0.0.2, IP Address:10.0.0.3, IP Address:10.0.0.4, IP Address:10.0.0.5, IP Address:10.0.0.6, IP Address:10.0.0.7, IP Address:10.0.0.8, IP Address:10.0.0.9, IP Address:10.0.0.10, IP Address:10.0.0.11, IP Address:10.0.0.12, IP Address:10.0.0.13, IP Address:10.0.0.14, IP Address:10.0.0.15, IP Address:10.0.0.16, IP Address:10.0.0.17, IP Address:10.0.0.18, IP Address:10.0.0.19, IP Address:10.0.0.20, IP Address:10.0.0.21, IP Address:10.0.0.22, IP Address:10.0.0.23, IP Address:10.0.0.24, IP Address:10.0.0.25, IP Address:10.0.0.26, IP Address:10.0.0.27, IP Address:10.0.0.28, IP Address:10.0.0.29, IP Address:10.0.0.30, IP Address:10.0.0.31, IP Address:10.0.0.32, IP Address:10.0.0.33, IP Address:10.0.0.34, IP Address:10.0.0.35, IP Address:10.0.0.36, IP Address:10.0.0.37, IP Address:10.0.0.38, IP Address:10.0.0.39, IP Address:10.0.0.40, IP Address:10.0.0.41, IP Address:10.0.0.42, IP Address:10.0.0.43, IP Address:10.0.0.44, IP Address:10.0.0.45, IP Address:10.0.0.46, IP Address:10.0.0.47, IP Address:10.0.0.48, IP Address:10.0.0.49, IP Address:10.0.0.50, IP Address:10.0.0.51, IP Address:10.0.0.52, IP Address:10.0.0.53, IP Address:10.0.0.54, IP Address:10.0.0.55, IP Address:10.0.0.56, IP Address:10.0.0.57, IP Address:10.0.0.58, IP Address:10.0.0.59, IP Address:10.0.0.60, IP Address:10.0.0.61, IP Address:10.0.0.62, IP Address:10.0.0.63, IP Address:10.0.0.64, IP Address:10.0.0.65, IP Address:10.0.0.66, IP Address:10.0.0.67, IP Address:10.0.0.68, IP Address:10.0.0.69, IP Address:10.0.0.70, IP Address:10.0.0.71, IP Address:10.0.0.72, IP Address:10.0.0.73, IP Address:10.0.0.74, IP Address:10.0.0.75, IP Address:10.0.0.76, IP Address:10.0.0.77, IP Address:10.0.0.78, IP Address:10.0.0.79, IP Address:10.0.0.80, IP Address:10.0.0.81, IP Address:10.0.0.82, IP Address:10.0.0.83, IP Address:10.0.0.84, IP Address:10.0.0.85, IP Address:10.0.0.86, IP Address:10.0.0.87, IP Address:10.0.0.88, IP Address:10.0.0.89, IP Address:10.0.0.90, IP Address:10.0.0.91, IP Address:10.0.0.92, IP Address:10.0.0.93, IP Address:10.0.0.94, IP Address:10.0.0.95, IP Address:10.0.0.96, IP Address:10.0.0.97, IP Address:10.0.0.98, IP Address:10.0.0.99, IP Address:10.0.0.100, IP Address:10.0.0.101, IP Address:10.0.0.102, IP Address:10.0.0.103, IP Address:10.0.0.104, IP Address:10.0.0.105, IP Address:10.0.0.106, IP Address:10.0.0.107, IP Address:10.0.0.108, IP Address:10.0.0.109, IP Address:10.0.0.110, IP Address:10.0.0.111, IP Address:10.0.0.112, IP Address:10.0.0.113, IP Address:10.0.0.114, IP Address:10.0.0.115, IP Address:10.0.0.116, IP Address:10.0.0.117, IP Address:10.0.0.118, IP Address:10.0.0.119, IP Address:10.0.0.120, IP Address:10.0.0.121, IP Address:10.0.0.122, IP Address:10.0.0.123, IP Address:10.0.0.124, IP Address:10.0.0.125, IP Address:10.0.0.126, IP Address:10.0.0.127, IP Address:10.0.0.128, IP Address:10.0.0.129, IP Address:10.0.0.130, IP Address:10.0.0.131, IP Address:10.0.0.132, IP Address:10.0.0.133, IP Address:10.0.0.134, IP Address:10.0.0.135, IP Address:10.0.0.136, IP Address:10.0.0.137, IP Address:10.0.0.138, IP Address:10.0.0.139, IP Address:10.0.0.140, IP Address:10.0.0.141, IP Address:10.0.0.142, IP Address:10.0.0.143, IP Address:10.0.0.144, IP Address:10.0.0.145, IP Address:10.0.0.146, IP Address:10.0.0.147, IP Address:10.0.0.148, IP Address:10.0.0.149, IP Address:10.0.0.150, IP Address:10.0.0.151, IP Address:10.0.0.152, IP Address:10.0.0.153, IP Address:10.0.0.154, IP Address:10.0.0.155, IP Address:10.0.0.156, IP Address:10.0.0.157, IP Address:10.0.0.158, IP Address:10.0.0.159, IP Address:10.0.0.160, IP Address:10.0.0.161, IP Address:10.0.0.162, IP Address:10.0.0.163, IP Address:10.0.0.164, IP Address:10.0.0.165, IP Address:10.0.0.166, IP Address:10.0.0.167, IP Address:10.0.0.168, IP Address:10.0.0.169, IP Address:10.0.0.170, IP Address:10.0.0.171, IP Address:10.0.0.172, IP Address:10.0.0.173, IP Address:10.0.0.174, IP Address:10.0.0.175, IP Address:10.0.0.176, IP Address:10.0.0.177, IP Address:10.0.0.178, IP Address:10.0.0.179, IP Address:10.0.0.180, IP Address:10.0.0.181, IP Address:10.0.0.182, IP Address:10.0.0.183, IP Address:10.0.0.184, IP Address:10.0.0.185, IP Address:10.0.0.186, IP Address:10.0.0.187, IP Address:10.0.0.188, IP Address:10.0.0.189, IP Address:10.0.0.190, IP Address:10.0.0.191, IP Address:10.0.0.192, IP Address:10.0.0.193, IP Address:10.0.0.194, IP Address:10.0.0.195, IP Address:10.0.0.196, IP Address:10.0.0.197, IP Address:10.0.0.198, IP Address:10.0.0.199, IP Address:10.0.0.200, IP Address:10.0.0.201, IP Address:10.0.0.202, IP Address:10.0.0.203, IP Address:10.0.0.204, IP Address:10.0.0.205, IP Address:10.0.0.206, IP Address:10.0.0.207, IP Address:10.0.0.208, IP Address:10.0.0.209, IP Address:10.0.0.210, IP Address:10.0.0.211, IP Address:10.0.0.212, IP Address:10.0.0.213, IP Address:10.0.0.214, IP Address:10.0.0.215, IP Address:10.0.0.216, IP Address:10.0.0.217, IP Address:10.0.0.218, IP Address:10.0.0.219, IP Address:10.0.0.220, IP Address:10.0.0.221, IP Address:10.0.0.222, IP Address:10.0.0.223, IP Address:10.0.0.224, IP Address:10.0.0.225, IP Address:10.0.0.226, IP Address:10.0.0.227, IP Address:10.0.0.228, IP Address:10.0.0.229, IP Address:10.0.0.230, IP Address:10.0.0.231, IP Address:10.0.0.232, IP Address:10.0.0.233, IP Address:10.0.0.234, IP Address:10.0.0.235, IP Address:10.0.0.236, IP Address:10.0.0.237, IP Address:10.0.0.238, IP Address:10.0.0.239, IP Address:10.0.0.240, IP Address:10.0.0.241, IP Address:10.0.0.242, IP Address:10.0.0.243, IP Address:10.0.0.244, IP Address:10.0.0.245, IP Address:10.0.0.246, IP Address:10.0.0.247, IP Address:10.0.0.248, IP Address:10.0.0.249, IP Address:10.0.0.250, IP Address:10.0.0.251, IP Address:10.0.0.252, IP Address:10.0.0.253, IP Address:10.0.0.254, IP Address:10.0.0.255, IP Address:10.0.1.0, IP Address:10.0.1.1, IP Address:10.0.1.2, IP Address:10.0.1.3, IP Address:10.0.1.4, IP Address:10.0.1.5, IP Address:10.0.1.6, IP Address:10.0.1.7, IP Address:10.0.1.8, IP Address:10.0.1.9, IP Address:10.0.1.10, IP Address:10.0.1.11, IP Address:10.0.1.12, IP Address:10.0.1.13, IP Address:10.0.1.14, IP Address:10.0.1.15, IP Address:10.0.1.16, IP Address:10.0.1.17, IP Address:10.0.1.18, IP Address:10.0.1.19, IP Address:10.0.1.20, IP Address:10.0.1.21, IP Address:10.0.1.22, IP Address:10.0.1.23, IP Address:10.0.1.24, IP Address:10.0.1.25, IP Address:10.0.1.26, IP Address:10.0.1.27, IP Address:10.0.1.28, IP Address:10.0.1.29, IP Address:10.0.1.30, IP Address:10.0.1.31, IP Address:10.0.1.32, IP Address:10.0.1.33, IP Address:10.0.1.34, IP Address:10.0.1.35, IP Address:10.0.1.36, IP Address:10.0.1.37, IP Address:10.0.1.38, IP Address:10.0.1.39, IP Address:10.0.1.40, IP Address:10.0.1.41, IP Address:10.0.1.42, IP Address:10.0.1.43, IP Address:10.0.1.44, IP Address:10.0.1.45, IP Address:10.0.1.46, IP Address:10.0.1.47, IP Address:10.0.1.48, IP Address:10.0.1.49, IP Address:10.0.1.50, IP Address:10.0.1.51, IP Address:10.0.1.52, IP Address:10.0.1.53, IP Address:10.0.1.54, IP Address:10.0.1.55, IP Address:10.0.1.56, IP Address:10.0.1.57, IP Address:10.0.1.58, IP Address:10.0.1.59, IP Address:10.0.1.60, IP Address:10.0.1.61, IP Address:10.0.1.62, IP Address:10.0.1.63, IP Address:10.0.1.64, IP Address:10.0.1.65, IP Address:10.0.1.66, IP Address:10.0.1.67, IP Address:10.0.1.68, IP Address:10.0.1.69, IP Address:10.0.1.70, IP Address:10.0.1.71, IP Address:10.0.1.72, IP Address:10.0.1.73, IP Address:10.0.1.74, IP Address:10.0.1.75, IP Address:10.0.1.76, IP Address:10.0.1.77, IP Address:10.0.1.78, IP Address:10.0.1.79, IP Address:10.0.1.80, IP Address:10.0.1.81, IP Address:10.0.1.82, IP Address:10.0.1.83, IP Address:10.0.1.84, DirName:/CN=t0, DirName:/CN=t1, DirName:/CN=t2, DirName:/CN=t3, DirName:/CN=t4, DirName:/CN=t5, DirName:/CN=t6, DirName:/CN=t7, DirName:/CN=t8, DirName:/CN=t9, DirName:/CN=t10, DirName:/CN=t11, DirName:/CN=t12, DirName:/CN=t13, DirName:/CN=t14, DirName:/CN=t15, DirName:/CN=t16, DirName:/CN=t17, DirName:/CN=t18, DirName:/CN=t19, DirName:/CN=t20, DirName:/CN=t21, DirName:/CN=t22, DirName:/CN=t23, DirName:/CN=t24, DirName:/CN=t25, DirName:/CN=t26, DirName:/CN=t27, DirName:/CN=t28, DirName:/CN=t29, DirName:/CN=t30, DirName:/CN=t31, DirName:/CN=t32, DirName:/CN=t33, DirName:/CN=t34, DirName:/CN=t35, DirName:/CN=t36, DirName:/CN=t37, DirName:/CN=t38, DirName:/CN=t39, DirName:/CN=t40, DirName:/CN=t41, DirName:/CN=t42, DirName:/CN=t43, DirName:/CN=t44, DirName:/CN=t45, DirName:/CN=t46, DirName:/CN=t47, DirName:/CN=t48, DirName:/CN=t49, DirName:/CN=t50, DirName:/CN=t51, DirName:/CN=t52, DirName:/CN=t53, DirName:/CN=t54, DirName:/CN=t55, DirName:/CN=t56, DirName:/CN=t57, DirName:/CN=t58, DirName:/CN=t59, DirName:/CN=t60, DirName:/CN=t61, DirName:/CN=t62, DirName:/CN=t63, DirName:/CN=t64, DirName:/CN=t65, DirName:/CN=t66, DirName:/CN=t67, DirName:/CN=t68, DirName:/CN=t69, DirName:/CN=t70, DirName:/CN=t71, DirName:/CN=t72, DirName:/CN=t73, DirName:/CN=t74, DirName:/CN=t75, DirName:/CN=t76, DirName:/CN=t77, DirName:/CN=t78, DirName:/CN=t79, DirName:/CN=t80, DirName:/CN=t81, DirName:/CN=t82, DirName:/CN=t83, DirName:/CN=t84, DirName:/CN=t85, DirName:/CN=t86, DirName:/CN=t87, DirName:/CN=t88, DirName:/CN=t89, DirName:/CN=t90, DirName:/CN=t91, DirName:/CN=t92, DirName:/CN=t93, DirName:/CN=t94, DirName:/CN=t95, DirName:/CN=t96, DirName:/CN=t97, DirName:/CN=t98, DirName:/CN=t99, DirName:/CN=t100, DirName:/CN=t101, DirName:/CN=t102, DirName:/CN=t103, DirName:/CN=t104, DirName:/CN=t105, DirName:/CN=t106, DirName:/CN=t107, DirName:/CN=t108, DirName:/CN=t109, DirName:/CN=t110, DirName:/CN=t111, DirName:/CN=t112, DirName:/CN=t113, DirName:/CN=t114, DirName:/CN=t115, DirName:/CN=t116, DirName:/CN=t117, DirName:/CN=t118, DirName:/CN=t119, DirName:/CN=t120, DirName:/CN=t121, DirName:/CN=t122, DirName:/CN=t123, DirName:/CN=t124, DirName:/CN=t125, DirName:/CN=t126, DirName:/CN=t127, DirName:/CN=t128, DirName:/CN=t129, DirName:/CN=t130, DirName:/CN=t131, DirName:/CN=t132, DirName:/CN=t133, DirName:/CN=t134, DirName:/CN=t135, DirName:/CN=t136, DirName:/CN=t137, DirName:/CN=t138, DirName:/CN=t139, DirName:/CN=t140, DirName:/CN=t141, DirName:/CN=t142, DirName:/CN=t143, DirName:/CN=t144, DirName:/CN=t145, DirName:/CN=t146, DirName:/CN=t147, DirName:/CN=t148, DirName:/CN=t149, DirName:/CN=t150, DirName:/CN=t151, DirName:/CN=t152, DirName:/CN=t153, DirName:/CN=t154, DirName:/CN=t155, DirName:/CN=t156, DirName:/CN=t157, DirName:/CN=t158, DirName:/CN=t159, DirName:/CN=t160, DirName:/CN=t161, DirName:/CN=t162, DirName:/CN=t163, DirName:/CN=t164, DirName:/CN=t165, DirName:/CN=t166, DirName:/CN=t167, DirName:/CN=t168, DirName:/CN=t169, DirName:/CN=t170, DirName:/CN=t171, DirName:/CN=t172, DirName:/CN=t173, DirName:/CN=t174, DirName:/CN=t175, DirName:/CN=t176, DirName:/CN=t177, DirName:/CN=t178, DirName:/CN=t179, DirName:/CN=t180, DirName:/CN=t181, DirName:/CN=t182, DirName:/CN=t183, DirName:/CN=t184, DirName:/CN=t185, DirName:/CN=t186, DirName:/CN=t187, DirName:/CN=t188, DirName:/CN=t189, DirName:/CN=t190, DirName:/CN=t191, DirName:/CN=t192, DirName:/CN=t193, DirName:/CN=t194, DirName:/CN=t195, DirName:/CN=t196, DirName:/CN=t197, DirName:/CN=t198, DirName:/CN=t199, DirName:/CN=t200, DirName:/CN=t201, DirName:/CN=t202, DirName:/CN=t203, DirName:/CN=t204, DirName:/CN=t205, DirName:/CN=t206, DirName:/CN=t207, DirName:/CN=t208, DirName:/CN=t209, DirName:/CN=t210, DirName:/CN=t211, DirName:/CN=t212, DirName:/CN=t213, DirName:/CN=t214, DirName:/CN=t215, DirName:/CN=t216, DirName:/CN=t217, DirName:/CN=t218, DirName:/CN=t219, DirName:/CN=t220, DirName:/CN=t221, DirName:/CN=t222, DirName:/CN=t223, DirName:/CN=t224, DirName:/CN=t225, DirName:/CN=t226, DirName:/CN=t227, DirName:/CN=t228, DirName:/CN=t229, DirName:/CN=t230, DirName:/CN=t231, DirName:/CN=t232, DirName:/CN=t233, DirName:/CN=t234, DirName:/CN=t235, DirName:/CN=t236, DirName:/CN=t237, DirName:/CN=t238, DirName:/CN=t239, DirName:/CN=t240, DirName:/CN=t241, DirName:/CN=t242, DirName:/CN=t243, DirName:/CN=t244, DirName:/CN=t245, DirName:/CN=t246, DirName:/CN=t247, DirName:/CN=t248, DirName:/CN=t249, DirName:/CN=t250, DirName:/CN=t251, DirName:/CN=t252, DirName:/CN=t253, DirName:/CN=t254, DirName:/CN=t255, DirName:/CN=t256, DirName:/CN=t257, DirName:/CN=t258, DirName:/CN=t259, DirName:/CN=t260, DirName:/CN=t261, DirName:/CN=t262, DirName:/CN=t263, DirName:/CN=t264, DirName:/CN=t265, DirName:/CN=t266, DirName:/CN=t267, DirName:/CN=t268, DirName:/CN=t269, DirName:/CN=t270, DirName:/CN=t271, DirName:/CN=t272, DirName:/CN=t273, DirName:/CN=t274, DirName:/CN=t275, DirName:/CN=t276, DirName:/CN=t277, DirName:/CN=t278, DirName:/CN=t279, DirName:/CN=t280, DirName:/CN=t281, DirName:/CN=t282, DirName:/CN=t283, DirName:/CN=t284, DirName:/CN=t285, DirName:/CN=t286, DirName:/CN=t287, DirName:/CN=t288, DirName:/CN=t289, DirName:/CN=t290, DirName:/CN=t291, DirName:/CN=t292, DirName:/CN=t293, DirName:/CN=t294, DirName:/CN=t295, DirName:/CN=t296, DirName:/CN=t297, DirName:/CN=t298, DirName:/CN=t299, DirName:/CN=t300, DirName:/CN=t301, DirName:/CN=t302, DirName:/CN=t303, DirName:/CN=t304, DirName:/CN=t305, DirName:/CN=t306, DirName:/CN=t307, DirName:/CN=t308, DirName:/CN=t309, DirName:/CN=t310, DirName:/CN=t311, DirName:/CN=t312, DirName:/CN=t313, DirName:/CN=t314, DirName:/CN=t315, DirName:/CN=t316, DirName:/CN=t317, DirName:/CN=t318, DirName:/CN=t319, DirName:/CN=t320, DirName:/CN=t321, DirName:/CN=t322, DirName:/CN=t323, DirName:/CN=t324, DirName:/CN=t325, DirName:/CN=t326, DirName:/CN=t327, DirName:/CN=t328, DirName:/CN=t329, DirName:/CN=t330, DirName:/CN=t331, DirName:/CN=t332, DirName:/CN=t333, DirName:/CN=t334, DirName:/CN=t335, DirName:/CN=t336, DirName:/CN=t337, DirName:/CN=t338, DirName:/CN=t339, DirName:/CN=t340, DirName:/CN=t341, URI:http://test/0, URI:http://test/1, URI:http://test/2, URI:http://test/3, URI:http://test/4, URI:http://test/5, URI:http://test/6, URI:http://test/7, URI:http://test/8, URI:http://test/9, URI:http://test/10, URI:http://test/11, URI:http://test/12, URI:http://test/13, URI:http://test/14, URI:http://test/15, URI:http://test/16, URI:http://test/17, URI:http://test/18, URI:http://test/19, URI:http://test/20, URI:http://test/21, URI:http://test/22, URI:http://test/23, URI:http://test/24, URI:http://test/25, URI:http://test/26, URI:http://test/27, URI:http://test/28, URI:http://test/29, URI:http://test/30, URI:http://test/31, URI:http://test/32, URI:http://test/33, URI:http://test/34, URI:http://test/35, URI:http://test/36, URI:http://test/37, URI:http://test/38, URI:http://test/39, URI:http://test/40, URI:http://test/41, URI:http://test/42, URI:http://test/43, URI:http://test/44, URI:http://test/45, URI:http://test/46, URI:http://test/47, URI:http://test/48, URI:http://test/49, URI:http://test/50, URI:http://test/51, URI:http://test/52, URI:http://test/53, URI:http://test/54, URI:http://test/55, URI:http://test/56, URI:http://test/57, URI:http://test/58, URI:http://test/59, URI:http://test/60, URI:http://test/61, URI:http://test/62, URI:http://test/63, URI:http://test/64, URI:http://test/65, URI:http://test/66, URI:http://test/67, URI:http://test/68, URI:http://test/69, URI:http://test/70, URI:http://test/71, URI:http://test/72, URI:http://test/73, URI:http://test/74, URI:http://test/75, URI:http://test/76, URI:http://test/77, URI:http://test/78, URI:http://test/79, URI:http://test/80, URI:http://test/81, URI:http://test/82, URI:http://test/83, URI:http://test/84, URI:http://test/85, URI:http://test/86, URI:http://test/87, URI:http://test/88, URI:http://test/89, URI:http://test/90, URI:http://test/91, URI:http://test/92, URI:http://test/93, URI:http://test/94, URI:http://test/95, URI:http://test/96, URI:http://test/97, URI:http://test/98, URI:http://test/99, URI:http://test/100, URI:http://test/101, URI:http://test/102, URI:http://test/103, URI:http://test/104, URI:http://test/105, URI:http://test/106, URI:http://test/107, URI:http://test/108, URI:http://test/109, URI:http://test/110, URI:http://test/111, URI:http://test/112, URI:http://test/113, URI:http://test/114, URI:http://test/115, URI:http://test/116, URI:http://test/117, URI:http://test/118, URI:http://test/119, URI:http://test/120, URI:http://test/121, URI:http://test/122, URI:http://test/123, URI:http://test/124, URI:http://test/125, URI:http://test/126, URI:http://test/127, URI:http://test/128, URI:http://test/129, URI:http://test/130, URI:http://test/131, URI:http://test/132, URI:http://test/133, URI:http://test/134, URI:http://test/135, URI:http://test/136, URI:http://test/137, URI:http://test/138, URI:http://test/139, URI:http://test/140, URI:http://test/141, URI:http://test/142, URI:http://test/143, URI:http://test/144, URI:http://test/145, URI:http://test/146, URI:http://test/147, URI:http://test/148, URI:http://test/149, URI:http://test/150, URI:http://test/151, URI:http://test/152, URI:http://test/153, URI:http://test/154, URI:http://test/155, URI:http://test/156, URI:http://test/157, URI:http://test/158, URI:http://test/159, URI:http://test/160, URI:http://test/161, URI:http://test/162, URI:http://test/163, URI:http://test/164, URI:http://test/165, URI:http://test/166, URI:http://test/167, URI:http://test/168, URI:http://test/169, URI:http://test/170, URI:http://test/171, URI:http://test/172, URI:http://test/173, URI:http://test/174, URI:http://test/175, URI:http://test/176, URI:http://test/177, URI:http://test/178, URI:http://test/179, URI:http://test/180, URI:http://test/181, URI:http://test/182, URI:http://test/183, URI:http://test/184, URI:http://test/185, URI:http://test/186, URI:http://test/187, URI:http://test/188, URI:http://test/189, URI:http://test/190, URI:http://test/191, URI:http://test/192, URI:http://test/193, URI:http://test/194, URI:http://test/195, URI:http://test/196, URI:http://test/197, URI:http://test/198, URI:http://test/199, URI:http://test/200, URI:http://test/201, URI:http://test/202, URI:http://test/203, URI:http://test/204, URI:http://test/205, URI:http://test/206, URI:http://test/207, URI:http://test/208, URI:http://test/209, URI:http://test/210, URI:http://test/211, URI:http://test/212, URI:http://test/213, URI:http://test/214, URI:http://test/215, URI:http://test/216, URI:http://test/217, URI:http://test/218, URI:http://test/219, URI:http://test/220, URI:http://test/221, URI:http://test/222, URI:http://test/223, URI:http://test/224, URI:http://test/225, URI:http://test/226, URI:http://test/227, URI:http://test/228, URI:http://test/229, URI:http://test/230, URI:http://test/231, URI:http://test/232, URI:http://test/233, URI:http://test/234, URI:http://test/235, URI:http://test/236, URI:http://test/237, URI:http://test/238, URI:http://test/239, URI:http://test/240, URI:http://test/241, URI:http://test/242, URI:http://test/243, URI:http://test/244, URI:http://test/245, URI:http://test/246, URI:http://test/247, URI:http://test/248, URI:http://test/249, URI:http://test/250, URI:http://test/251, URI:http://test/252, URI:http://test/253, URI:http://test/254, URI:http://test/255, URI:http://test/256, URI:http://test/257, URI:http://test/258, URI:http://test/259, URI:http://test/260, URI:http://test/261, URI:http://test/262, URI:http://test/263, URI:http://test/264, URI:http://test/265, URI:http://test/266, URI:http://test/267, URI:http://test/268, URI:http://test/269, URI:http://test/270, URI:http://test/271, URI:http://test/272, URI:http://test/273, URI:http://test/274, URI:http://test/275, URI:http://test/276, URI:http://test/277, URI:http://test/278, URI:http://test/279, URI:http://test/280, URI:http://test/281, URI:http://test/282, URI:http://test/283, URI:http://test/284, URI:http://test/285, URI:http://test/286, URI:http://test/287, URI:http://test/288, URI:http://test/289, URI:http://test/290, URI:http://test/291, URI:http://test/292, URI:http://test/293, URI:http://test/294, URI:http://test/295, URI:http://test/296, URI:http://test/297, URI:http://test/298, URI:http://test/299, URI:http://test/300, URI:http://test/301, URI:http://test/302, URI:http://test/303, URI:http://test/304, URI:http://test/305, URI:http://test/306, URI:http://test/307, URI:http://test/308, URI:http://test/309, URI:http://test/310, URI:http://test/311, URI:http://test/312, URI:http://test/313, URI:http://test/314, URI:http://test/315, URI:http://test/316, URI:http://test/317, URI:http://test/318, URI:http://test/319, URI:http://test/320, URI:http://test/321, URI:http://test/322, URI:http://test/323, URI:http://test/324, URI:http://test/325, URI:http://test/326, URI:http://test/327, URI:http://test/328, URI:http://test/329, URI:http://test/330, URI:http://test/331, URI:http://test/332, URI:http://test/333, URI:http://test/334, URI:http://test/335, URI:http://test/336, URI:http://test/337, URI:http://test/338, URI:http://test/339, URI:http://test/340, URI:http://test/341, URI:http://test/342, URI:http://test/343, URI:http://test/344, URI:http://test/345, URI:http://test/346, URI:http://test/347, URI:http://test/348, URI:http://test/349, URI:http://test/350, URI:http://test/351, URI:http://test/352, URI:http://test/353, URI:http://test/354, URI:http://test/355, URI:http://test/356, URI:http://test/357, URI:http://test/358, URI:http://test/359, URI:http://test/360, URI:http://test/361, URI:http://test/362, URI:http://test/363, URI:http://test/364, URI:http://test/365, URI:http://test/366, URI:http://test/367, URI:http://test/368, URI:http://test/369, URI:http://test/370, URI:http://test/371, URI:http://test/372, URI:http://test/373, URI:http://test/374, URI:http://test/375, URI:http://test/376, URI:http://test/377, URI:http://test/378, URI:http://test/379, URI:http://test/380, URI:http://test/381, URI:http://test/382, URI:http://test/383, URI:http://test/384, URI:http://test/385, URI:http://test/386, URI:http://test/387, URI:http://test/388, URI:http://test/389, URI:http://test/390, URI:http://test/391, URI:http://test/392, URI:http://test/393, URI:http://test/394, URI:http://test/395, URI:http://test/396, URI:http://test/397, URI:http://test/398, URI:http://test/399, URI:http://test/400, URI:http://test/401, URI:http://test/402, URI:http://test/403, URI:http://test/404, URI:http://test/405, URI:http://test/406, URI:http://test/407, URI:http://test/408, URI:http://test/409, URI:http://test/410, URI:http://test/411, URI:http://test/412, URI:http://test/413, URI:http://test/414, URI:http://test/415, URI:http://test/416, URI:http://test/417, URI:http://test/418, URI:http://test/419, URI:http://test/420, URI:http://test/421, URI:http://test/422, URI:http://test/423, URI:http://test/424, URI:http://test/425, URI:http://test/426, URI:http://test/427, URI:http://test/428, URI:http://test/429, URI:http://test/430, URI:http://test/431, URI:http://test/432, URI:http://test/433, URI:http://test/434, URI:http://test/435, URI:http://test/436, URI:http://test/437, URI:http://test/438, URI:http://test/439, URI:http://test/440, URI:http://test/441, URI:http://test/442, URI:http://test/443, URI:http://test/444, URI:http://test/445, URI:http://test/446, URI:http://test/447, URI:http://test/448, URI:http://test/449, URI:http://test/450, URI:http://test/451, URI:http://test/452, URI:http://test/453, URI:http://test/454, URI:http://test/455, URI:http://test/456, URI:http://test/457, URI:http://test/458, URI:http://test/459, URI:http://test/460, URI:http://test/461, URI:http://test/462, URI:http://test/463, URI:http://test/464, URI:http://test/465, URI:http://test/466, URI:http://test/467, URI:http://test/468, URI:http://test/469, URI:http://test/470, URI:http://test/471, URI:http://test/472, URI:http://test/473, URI:http://test/474, URI:http://test/475, URI:http://test/476, URI:http://test/477, URI:http://test/478, URI:http://test/479, URI:http://test/480, URI:http://test/481, URI:http://test/482, URI:http://test/483, URI:http://test/484, URI:http://test/485, URI:http://test/486, URI:http://test/487, URI:http://test/488, URI:http://test/489, URI:http://test/490, URI:http://test/491, URI:http://test/492, URI:http://test/493, URI:http://test/494, URI:http://test/495, URI:http://test/496, URI:http://test/497, URI:http://test/498, URI:http://test/499, URI:http://test/500, URI:http://test/501, URI:http://test/502, URI:http://test/503, URI:http://test/504, URI:http://test/505, URI:http://test/506, URI:http://test/507, URI:http://test/508, URI:http://test/509, URI:http://test/510, URI:http://test/511, URI:http://test/512, URI:http://test/513, URI:http://test/514, URI:http://test/515, URI:http://test/516, URI:http://test/517, URI:http://test/518, URI:http://test/519, URI:http://test/520, URI:http://test/521, URI:http://test/522, URI:http://test/523, URI:http://test/524, URI:http://test/525, URI:http://test/526, URI:http://test/527, URI:http://test/528, URI:http://test/529, URI:http://test/530, URI:http://test/531, URI:http://test/532, URI:http://test/533, URI:http://test/534, URI:http://test/535, URI:http://test/536, URI:http://test/537, URI:http://test/538, URI:http://test/539, URI:http://test/540, URI:http://test/541, URI:http://test/542, URI:http://test/543, URI:http://test/544, URI:http://test/545, URI:http://test/546, URI:http://test/547, URI:http://test/548, URI:http://test/549, URI:http://test/550, URI:http://test/551, URI:http://test/552, URI:http://test/553, URI:http://test/554, URI:http://test/555, URI:http://test/556, URI:http://test/557, URI:http://test/558, URI:http://test/559, URI:http://test/560, URI:http://test/561, URI:http://test/562, URI:http://test/563, URI:http://test/564, URI:http://test/565, URI:http://test/566, URI:http://test/567, URI:http://test/568, URI:http://test/569, URI:http://test/570, URI:http://test/571, URI:http://test/572, URI:http://test/573, URI:http://test/574, URI:http://test/575, URI:http://test/576, URI:http://test/577, URI:http://test/578, URI:http://test/579, URI:http://test/580, URI:http://test/581, URI:http://test/582, URI:http://test/583, URI:http://test/584, URI:http://test/585, URI:http://test/586, URI:http://test/587, URI:http://test/588, URI:http://test/589, URI:http://test/590, URI:http://test/591, URI:http://test/592, URI:http://test/593, URI:http://test/594, URI:http://test/595, URI:http://test/596, URI:http://test/597, URI:http://test/598, URI:http://test/599, URI:http://test/600, URI:http://test/601, URI:http://test/602, URI:http://test/603, URI:http://test/604, URI:http://test/605, URI:http://test/606, URI:http://test/607, URI:http://test/608, URI:http://test/609, URI:http://test/610, URI:http://test/611, URI:http://test/612, URI:http://test/613, URI:http://test/614, URI:http://test/615, URI:http://test/616, URI:http://test/617, URI:http://test/618, URI:http://test/619, URI:http://test/620, URI:http://test/621, URI:http://test/622, URI:http://test/623, URI:http://test/624, URI:http://test/625, URI:http://test/626, URI:http://test/627, URI:http://test/628, URI:http://test/629, URI:http://test/630, URI:http://test/631, URI:http://test/632, URI:http://test/633, URI:http://test/634, URI:http://test/635, URI:http://test/636, URI:http://test/637, URI:http://test/638, URI:http://test/639, URI:http://test/640, URI:http://test/641, URI:http://test/642, URI:http://test/643, URI:http://test/644, URI:http://test/645, URI:http://test/646, URI:http://test/647, URI:http://test/648, URI:http://test/649, URI:http://test/650, URI:http://test/651, URI:http://test/652, URI:http://test/653, URI:http://test/654, URI:http://test/655, URI:http://test/656, URI:http://test/657, URI:http://test/658, URI:http://test/659, URI:http://test/660, URI:http://test/661, URI:http://test/662, URI:http://test/663, URI:http://test/664, URI:http://test/665, URI:http://test/666, URI:http://test/667, URI:http://test/668, URI:http://test/669, URI:http://test/670, URI:http://test/671, URI:http://test/672, URI:http://test/673, URI:http://test/674, URI:http://test/675, URI:http://test/676, URI:http://test/677, URI:http://test/678, URI:http://test/679, URI:http://test/680, URI:http://test/681, URI:http://test/682, URI:http://test/683, URI:http://test/684, URI:http://test/685, URI:http://test/686, URI:http://test/687, URI:http://test/688, URI:http://test/689, URI:http://test/690, URI:http://test/691, URI:http://test/692, URI:http://test/693, URI:http://test/694, URI:http://test/695, URI:http://test/696, URI:http://test/697, URI:http://test/698, URI:http://test/699, URI:http://test/700, URI:http://test/701, URI:http://test/702, URI:http://test/703, URI:http://test/704, URI:http://test/705, URI:http://test/706, URI:http://test/707, URI:http://test/708, URI:http://test/709, URI:http://test/710, URI:http://test/711, URI:http://test/712, URI:http://test/713, URI:http://test/714, URI:http://test/715, URI:http://test/716, URI:http://test/717, URI:http://test/718, URI:http://test/719, URI:http://test/720, URI:http://test/721, URI:http://test/722, URI:http://test/723, URI:http://test/724, URI:http://test/725, URI:http://test/726, URI:http://test/727, URI:http://test/728, URI:http://test/729, URI:http://test/730, URI:http://test/731, URI:http://test/732, URI:http://test/733, URI:http://test/734, URI:http://test/735, URI:http://test/736, URI:http://test/737, URI:http://test/738, URI:http://test/739, URI:http://test/740, URI:http://test/741, URI:http://test/742, URI:http://test/743, URI:http://test/744, URI:http://test/745, URI:http://test/746, URI:http://test/747, URI:http://test/748, URI:http://test/749, URI:http://test/750, URI:http://test/751, URI:http://test/752, URI:http://test/753, URI:http://test/754, URI:http://test/755, URI:http://test/756, URI:http://test/757, URI:http://test/758, URI:http://test/759, URI:http://test/760, URI:http://test/761, URI:http://test/762, URI:http://test/763, URI:http://test/764, URI:http://test/765, URI:http://test/766, URI:http://test/767, URI:http://test/768, URI:http://test/769, URI:http://test/770, URI:http://test/771, URI:http://test/772, URI:http://test/773, URI:http://test/774, URI:http://test/775, URI:http://test/776, URI:http://test/777, URI:http://test/778, URI:http://test/779, URI:http://test/780, URI:http://test/781, URI:http://test/782, URI:http://test/783, URI:http://test/784, URI:http://test/785, URI:http://test/786, URI:http://test/787, URI:http://test/788, URI:http://test/789, URI:http://test/790, URI:http://test/791, URI:http://test/792, URI:http://test/793, URI:http://test/794, URI:http://test/795, URI:http://test/796, URI:http://test/797, URI:http://test/798, URI:http://test/799, URI:http://test/800, URI:http://test/801, URI:http://test/802, URI:http://test/803, URI:http://test/804, URI:http://test/805, URI:http://test/806, URI:http://test/807, URI:http://test/808, URI:http://test/809, URI:http://test/810, URI:http://test/811, URI:http://test/812, URI:http://test/813, URI:http://test/814, URI:http://test/815, URI:http://test/816, URI:http://test/817, URI:http://test/818, URI:http://test/819, URI:http://test/820, URI:http://test/821, URI:http://test/822, URI:http://test/823, URI:http://test/824, URI:http://test/825, URI:http://test/826, URI:http://test/827, URI:http://test/828, URI:http://test/829, URI:http://test/830, URI:http://test/831, URI:http://test/832, URI:http://test/833, URI:http://test/834, URI:http://test/835, URI:http://test/836, URI:http://test/837, URI:http://test/838, URI:http://test/839, URI:http://test/840, URI:http://test/841, URI:http://test/842, URI:http://test/843, URI:http://test/844, URI:http://test/845, URI:http://test/846, URI:http://test/847, URI:http://test/848, URI:http://test/849, URI:http://test/850, URI:http://test/851, URI:http://test/852, URI:http://test/853, URI:http://test/854, URI:http://test/855, URI:http://test/856, URI:http://test/857, URI:http://test/858, URI:http://test/859, URI:http://test/860, URI:http://test/861, URI:http://test/862, URI:http://test/863, URI:http://test/864, URI:http://test/865, URI:http://test/866, URI:http://test/867, URI:http://test/868, URI:http://test/869, URI:http://test/870, URI:http://test/871, URI:http://test/872, URI:http://test/873, URI:http://test/874, URI:http://test/875, URI:http://test/876, URI:http://test/877, URI:http://test/878, URI:http://test/879, URI:http://test/880, URI:http://test/881, URI:http://test/882, URI:http://test/883, URI:http://test/884, URI:http://test/885, URI:http://test/886, URI:http://test/887, URI:http://test/888, URI:http://test/889, URI:http://test/890, URI:http://test/891, URI:http://test/892, URI:http://test/893, URI:http://test/894, URI:http://test/895, URI:http://test/896, URI:http://test/897, URI:http://test/898, URI:http://test/899, URI:http://test/900, URI:http://test/901, URI:http://test/902, URI:http://test/903, URI:http://test/904, URI:http://test/905, URI:http://test/906, URI:http://test/907, URI:http://test/908, URI:http://test/909, URI:http://test/910, URI:http://test/911, URI:http://test/912, URI:http://test/913, URI:http://test/914, URI:http://test/915, URI:http://test/916, URI:http://test/917, URI:http://test/918, URI:http://test/919, URI:http://test/920, URI:http://test/921, URI:http://test/922, URI:http://test/923, URI:http://test/924, URI:http://test/925, URI:http://test/926, URI:http://test/927, URI:http://test/928, URI:http://test/929, URI:http://test/930, URI:http://test/931, URI:http://test/932, URI:http://test/933, URI:http://test/934, URI:http://test/935, URI:http://test/936, URI:http://test/937, URI:http://test/938, URI:http://test/939, URI:http://test/940, URI:http://test/941, URI:http://test/942, URI:http://test/943, URI:http://test/944, URI:http://test/945, URI:http://test/946, URI:http://test/947, URI:http://test/948, URI:http://test/949, URI:http://test/950, URI:http://test/951, URI:http://test/952, URI:http://test/953, URI:http://test/954, URI:http://test/955, URI:http://test/956, URI:http://test/957, URI:http://test/958, URI:http://test/959, URI:http://test/960, URI:http://test/961, URI:http://test/962, URI:http://test/963, URI:http://test/964, URI:http://test/965, URI:http://test/966, URI:http://test/967, URI:http://test/968, URI:http://test/969, URI:http://test/970, URI:http://test/971, URI:http://test/972, URI:http://test/973, URI:http://test/974, URI:http://test/975, URI:http://test/976, URI:http://test/977, URI:http://test/978, URI:http://test/979, URI:http://test/980, URI:http://test/981, URI:http://test/982, URI:http://test/983, URI:http://test/984, URI:http://test/985, URI:http://test/986, URI:http://test/987, URI:http://test/988, URI:http://test/989, URI:http://test/990, URI:http://test/991, URI:http://test/992, URI:http://test/993, URI:http://test/994, URI:http://test/995, URI:http://test/996, URI:http://test/997, URI:http://test/998, URI:http://test/999, URI:http://test/1000, URI:http://test/1001, URI:http://test/1002, URI:http://test/1003, URI:http://test/1004, URI:http://test/1005, URI:http://test/1006, URI:http://test/1007, URI:http://test/1008, URI:http://test/1009, URI:http://test/1010, URI:http://test/1011, URI:http://test/1012, URI:http://test/1013, URI:http://test/1014, URI:http://test/1015, URI:http://test/1016, URI:http://test/1017, URI:http://test/1018, URI:http://test/1019, URI:http://test/1020, URI:http://test/1021, URI:http://test/1022, URI:http://test/1023, URI:http://test/1024 - Signature Algorithm: sha256WithRSAEncryption - 08:00:7f:e0:40:75:d2:43:36:3f:e3:6c:cf:c1:4a:69:b2:0c: - 1b:a8:a8:6b:7a:ee:ed:d0:2d:ee:e2:52:d9:2a:1f:5d:ac:29: - f5:12:e2:af:3b:db:a0:6d:3a:b4:09:ef:76:fa:52:68:5f:07: - 5f:9f:a4:52:8f:1d:da:da:b6:93:54:87:47:d0:3c:66:7e:ff: - 1b:e3:1e:da:52:4c:00:46:5b:0c:eb:9e:b8:5e:1e:db:f7:ce: - dd:2c:0f:4e:23:1d:63:98:ed:e5:18:e8:04:9c:a1:1e:cd:58: - de:09:43:4d:bf:8d:4b:6d:8e:32:e9:a6:53:40:17:0c:e2:59: - 43:55:2d:3f:ab:af:aa:13:48:ac:00:ac:5b:df:16:c7:20:2a: - ea:50:ef:79:78:c9:34:d5:c5:7f:8f:27:d0:5a:42:3a:e8:13: - 01:51:bc:a3:b9:53:6f:1d:e4:73:52:8d:f0:c7:9c:d1:46:19: - aa:28:63:3e:cc:4a:5f:63:0d:1d:28:4b:e0:b4:37:83:db:85: - 8c:84:86:7e:37:15:a8:ed:a8:00:da:14:97:fd:f1:c8:ea:6e: - 3a:b7:19:c1:6f:53:6b:0b:ff:29:60:30:7d:b6:35:d6:b8:58: - 6f:55:32:18:c6:44:c3:08:d8:c4:95:25:7b:ba:13:04:26:34: - 7c:d4:0e:a1 ------BEGIN CERTIFICATE----- -MIJ2lTCCdX2gAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY1DANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCc+IwgnPeMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgnL0BgNVHREEgnLrMIJy54IH -dDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIHdDQudGVzdIIHdDUu -dGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDkudGVzdIIIdDEwLnRl -c3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQxNC50ZXN0ggh0MTUu -dGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIIIdDE5LnRlc3SCCHQy -MC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0ggh0MjQudGVzdIII -dDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRlc3SCCHQyOS50ZXN0 -ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMudGVzdIIIdDM0LnRl -c3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQzOC50ZXN0ggh0Mzku -dGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIIIdDQzLnRlc3SCCHQ0 -NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0ggh0NDgudGVzdIII -dDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRlc3SCCHQ1My50ZXN0 -ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcudGVzdIIIdDU4LnRl -c3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2Mi50ZXN0ggh0NjMu -dGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIIIdDY3LnRlc3SCCHQ2 -OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0ggh0NzIudGVzdIII -dDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRlc3SCCHQ3Ny50ZXN0 -ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEudGVzdIIIdDgyLnRl -c3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4Ni50ZXN0ggh0ODcu -dGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIIIdDkxLnRlc3SCCHQ5 -Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0ggh0OTYudGVzdIII -dDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50ZXN0ggl0MTAxLnRl -c3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SCCXQxMDUudGVzdIIJ -dDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEwOS50ZXN0ggl0MTEw -LnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRlc3SCCXQxMTQudGVz -dIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJdDExOC50ZXN0ggl0 -MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIyLnRlc3SCCXQxMjMu -dGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVzdIIJdDEyNy50ZXN0 -ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0MTMxLnRlc3SCCXQx -MzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUudGVzdIIJdDEzNi50 -ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0ggl0MTQwLnRlc3SC -CXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQxNDQudGVzdIIJdDE0 -NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50ZXN0ggl0MTQ5LnRl -c3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SCCXQxNTMudGVzdIIJ -dDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1Ny50ZXN0ggl0MTU4 -LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRlc3SCCXQxNjIudGVz -dIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJdDE2Ni50ZXN0ggl0 -MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcwLnRlc3SCCXQxNzEu -dGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVzdIIJdDE3NS50ZXN0 -ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0MTc5LnRlc3SCCXQx -ODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMudGVzdIIJdDE4NC50 -ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0ggl0MTg4LnRlc3SC -CXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQxOTIudGVzdIIJdDE5 -My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50ZXN0ggl0MTk3LnRl -c3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SCCXQyMDEudGVzdIIJ -dDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIwNS50ZXN0ggl0MjA2 -LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRlc3SCCXQyMTAudGVz -dIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJdDIxNC50ZXN0ggl0 -MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4LnRlc3SCCXQyMTku -dGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVzdIIJdDIyMy50ZXN0 -ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0MjI3LnRlc3SCCXQy -MjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEudGVzdIIJdDIzMi50 -ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0ggl0MjM2LnRlc3SC -CXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQyNDAudGVzdIIJdDI0 -MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50ZXN0ggl0MjQ1LnRl -c3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SCCXQyNDkudGVzdIIJ -dDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1My50ZXN0ggl0MjU0 -LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRlc3SCCXQyNTgudGVz -dIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJdDI2Mi50ZXN0ggl0 -MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2LnRlc3SCCXQyNjcu -dGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVzdIIJdDI3MS50ZXN0 -ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0Mjc1LnRlc3SCCXQy -NzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzkudGVzdIIJdDI4MC50 -ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0ggl0Mjg0LnRlc3SC -CXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQyODgudGVzdIIJdDI4 -OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50ZXN0ggl0MjkzLnRl -c3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SCCXQyOTcudGVzdIIJ -dDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMwMS50ZXN0ggl0MzAy -LnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRlc3SCCXQzMDYudGVz -dIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJdDMxMC50ZXN0ggl0 -MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0LnRlc3SCCXQzMTUu -dGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVzdIIJdDMxOS50ZXN0 -ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0MzIzLnRlc3SCCXQz -MjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcudGVzdIIJdDMyOC50 -ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0ggl0MzMyLnRlc3SC -CXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQzMzYudGVzdIIJdDMz -Ny50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50ZXN0hwQKAAAAhwQK -AAABhwQKAAAChwQKAAADhwQKAAAEhwQKAAAFhwQKAAAGhwQKAAAHhwQKAAAIhwQK -AAAJhwQKAAAKhwQKAAALhwQKAAAMhwQKAAANhwQKAAAOhwQKAAAPhwQKAAAQhwQK -AAARhwQKAAAShwQKAAAThwQKAAAUhwQKAAAVhwQKAAAWhwQKAAAXhwQKAAAYhwQK -AAAZhwQKAAAahwQKAAAbhwQKAAAchwQKAAAdhwQKAAAehwQKAAAfhwQKAAAghwQK -AAAhhwQKAAAihwQKAAAjhwQKAAAkhwQKAAAlhwQKAAAmhwQKAAAnhwQKAAAohwQK -AAAphwQKAAAqhwQKAAArhwQKAAAshwQKAAAthwQKAAAuhwQKAAAvhwQKAAAwhwQK -AAAxhwQKAAAyhwQKAAAzhwQKAAA0hwQKAAA1hwQKAAA2hwQKAAA3hwQKAAA4hwQK -AAA5hwQKAAA6hwQKAAA7hwQKAAA8hwQKAAA9hwQKAAA+hwQKAAA/hwQKAABAhwQK -AABBhwQKAABChwQKAABDhwQKAABEhwQKAABFhwQKAABGhwQKAABHhwQKAABIhwQK -AABJhwQKAABKhwQKAABLhwQKAABMhwQKAABNhwQKAABOhwQKAABPhwQKAABQhwQK -AABRhwQKAABShwQKAABThwQKAABUhwQKAABVhwQKAABWhwQKAABXhwQKAABYhwQK -AABZhwQKAABahwQKAABbhwQKAABchwQKAABdhwQKAABehwQKAABfhwQKAABghwQK -AABhhwQKAABihwQKAABjhwQKAABkhwQKAABlhwQKAABmhwQKAABnhwQKAABohwQK -AABphwQKAABqhwQKAABrhwQKAABshwQKAABthwQKAABuhwQKAABvhwQKAABwhwQK -AABxhwQKAAByhwQKAABzhwQKAAB0hwQKAAB1hwQKAAB2hwQKAAB3hwQKAAB4hwQK -AAB5hwQKAAB6hwQKAAB7hwQKAAB8hwQKAAB9hwQKAAB+hwQKAAB/hwQKAACAhwQK -AACBhwQKAACChwQKAACDhwQKAACEhwQKAACFhwQKAACGhwQKAACHhwQKAACIhwQK -AACJhwQKAACKhwQKAACLhwQKAACMhwQKAACNhwQKAACOhwQKAACPhwQKAACQhwQK -AACRhwQKAACShwQKAACThwQKAACUhwQKAACVhwQKAACWhwQKAACXhwQKAACYhwQK -AACZhwQKAACahwQKAACbhwQKAACchwQKAACdhwQKAACehwQKAACfhwQKAACghwQK -AAChhwQKAACihwQKAACjhwQKAACkhwQKAAClhwQKAACmhwQKAACnhwQKAACohwQK -AACphwQKAACqhwQKAACrhwQKAACshwQKAACthwQKAACuhwQKAACvhwQKAACwhwQK -AACxhwQKAACyhwQKAACzhwQKAAC0hwQKAAC1hwQKAAC2hwQKAAC3hwQKAAC4hwQK -AAC5hwQKAAC6hwQKAAC7hwQKAAC8hwQKAAC9hwQKAAC+hwQKAAC/hwQKAADAhwQK -AADBhwQKAADChwQKAADDhwQKAADEhwQKAADFhwQKAADGhwQKAADHhwQKAADIhwQK -AADJhwQKAADKhwQKAADLhwQKAADMhwQKAADNhwQKAADOhwQKAADPhwQKAADQhwQK -AADRhwQKAADShwQKAADThwQKAADUhwQKAADVhwQKAADWhwQKAADXhwQKAADYhwQK -AADZhwQKAADahwQKAADbhwQKAADchwQKAADdhwQKAADehwQKAADfhwQKAADghwQK -AADhhwQKAADihwQKAADjhwQKAADkhwQKAADlhwQKAADmhwQKAADnhwQKAADohwQK -AADphwQKAADqhwQKAADrhwQKAADshwQKAADthwQKAADuhwQKAADvhwQKAADwhwQK -AADxhwQKAADyhwQKAADzhwQKAAD0hwQKAAD1hwQKAAD2hwQKAAD3hwQKAAD4hwQK -AAD5hwQKAAD6hwQKAAD7hwQKAAD8hwQKAAD9hwQKAAD+hwQKAAD/hwQKAAEAhwQK -AAEBhwQKAAEChwQKAAEDhwQKAAEEhwQKAAEFhwQKAAEGhwQKAAEHhwQKAAEIhwQK -AAEJhwQKAAEKhwQKAAELhwQKAAEMhwQKAAENhwQKAAEOhwQKAAEPhwQKAAEQhwQK -AAERhwQKAAEShwQKAAEThwQKAAEUhwQKAAEVhwQKAAEWhwQKAAEXhwQKAAEYhwQK -AAEZhwQKAAEahwQKAAEbhwQKAAEchwQKAAEdhwQKAAEehwQKAAEfhwQKAAEghwQK -AAEhhwQKAAEihwQKAAEjhwQKAAEkhwQKAAElhwQKAAEmhwQKAAEnhwQKAAEohwQK -AAEphwQKAAEqhwQKAAErhwQKAAEshwQKAAEthwQKAAEuhwQKAAEvhwQKAAEwhwQK -AAExhwQKAAEyhwQKAAEzhwQKAAE0hwQKAAE1hwQKAAE2hwQKAAE3hwQKAAE4hwQK -AAE5hwQKAAE6hwQKAAE7hwQKAAE8hwQKAAE9hwQKAAE+hwQKAAE/hwQKAAFAhwQK -AAFBhwQKAAFChwQKAAFDhwQKAAFEhwQKAAFFhwQKAAFGhwQKAAFHhwQKAAFIhwQK -AAFJhwQKAAFKhwQKAAFLhwQKAAFMhwQKAAFNhwQKAAFOhwQKAAFPhwQKAAFQhwQK -AAFRhwQKAAFShwQKAAFThwQKAAFUpA8wDTELMAkGA1UEAwwCdDCkDzANMQswCQYD -VQQDDAJ0MaQPMA0xCzAJBgNVBAMMAnQypA8wDTELMAkGA1UEAwwCdDOkDzANMQsw -CQYDVQQDDAJ0NKQPMA0xCzAJBgNVBAMMAnQ1pA8wDTELMAkGA1UEAwwCdDakDzAN -MQswCQYDVQQDDAJ0N6QPMA0xCzAJBgNVBAMMAnQ4pA8wDTELMAkGA1UEAwwCdDmk -EDAOMQwwCgYDVQQDDAN0MTCkEDAOMQwwCgYDVQQDDAN0MTGkEDAOMQwwCgYDVQQD -DAN0MTKkEDAOMQwwCgYDVQQDDAN0MTOkEDAOMQwwCgYDVQQDDAN0MTSkEDAOMQww -CgYDVQQDDAN0MTWkEDAOMQwwCgYDVQQDDAN0MTakEDAOMQwwCgYDVQQDDAN0MTek -EDAOMQwwCgYDVQQDDAN0MTikEDAOMQwwCgYDVQQDDAN0MTmkEDAOMQwwCgYDVQQD -DAN0MjCkEDAOMQwwCgYDVQQDDAN0MjGkEDAOMQwwCgYDVQQDDAN0MjKkEDAOMQww -CgYDVQQDDAN0MjOkEDAOMQwwCgYDVQQDDAN0MjSkEDAOMQwwCgYDVQQDDAN0MjWk -EDAOMQwwCgYDVQQDDAN0MjakEDAOMQwwCgYDVQQDDAN0MjekEDAOMQwwCgYDVQQD -DAN0MjikEDAOMQwwCgYDVQQDDAN0MjmkEDAOMQwwCgYDVQQDDAN0MzCkEDAOMQww -CgYDVQQDDAN0MzGkEDAOMQwwCgYDVQQDDAN0MzKkEDAOMQwwCgYDVQQDDAN0MzOk -EDAOMQwwCgYDVQQDDAN0MzSkEDAOMQwwCgYDVQQDDAN0MzWkEDAOMQwwCgYDVQQD -DAN0MzakEDAOMQwwCgYDVQQDDAN0MzekEDAOMQwwCgYDVQQDDAN0MzikEDAOMQww -CgYDVQQDDAN0MzmkEDAOMQwwCgYDVQQDDAN0NDCkEDAOMQwwCgYDVQQDDAN0NDGk -EDAOMQwwCgYDVQQDDAN0NDKkEDAOMQwwCgYDVQQDDAN0NDOkEDAOMQwwCgYDVQQD -DAN0NDSkEDAOMQwwCgYDVQQDDAN0NDWkEDAOMQwwCgYDVQQDDAN0NDakEDAOMQww -CgYDVQQDDAN0NDekEDAOMQwwCgYDVQQDDAN0NDikEDAOMQwwCgYDVQQDDAN0NDmk -EDAOMQwwCgYDVQQDDAN0NTCkEDAOMQwwCgYDVQQDDAN0NTGkEDAOMQwwCgYDVQQD -DAN0NTKkEDAOMQwwCgYDVQQDDAN0NTOkEDAOMQwwCgYDVQQDDAN0NTSkEDAOMQww -CgYDVQQDDAN0NTWkEDAOMQwwCgYDVQQDDAN0NTakEDAOMQwwCgYDVQQDDAN0NTek -EDAOMQwwCgYDVQQDDAN0NTikEDAOMQwwCgYDVQQDDAN0NTmkEDAOMQwwCgYDVQQD -DAN0NjCkEDAOMQwwCgYDVQQDDAN0NjGkEDAOMQwwCgYDVQQDDAN0NjKkEDAOMQww -CgYDVQQDDAN0NjOkEDAOMQwwCgYDVQQDDAN0NjSkEDAOMQwwCgYDVQQDDAN0NjWk -EDAOMQwwCgYDVQQDDAN0NjakEDAOMQwwCgYDVQQDDAN0NjekEDAOMQwwCgYDVQQD -DAN0NjikEDAOMQwwCgYDVQQDDAN0NjmkEDAOMQwwCgYDVQQDDAN0NzCkEDAOMQww -CgYDVQQDDAN0NzGkEDAOMQwwCgYDVQQDDAN0NzKkEDAOMQwwCgYDVQQDDAN0NzOk -EDAOMQwwCgYDVQQDDAN0NzSkEDAOMQwwCgYDVQQDDAN0NzWkEDAOMQwwCgYDVQQD -DAN0NzakEDAOMQwwCgYDVQQDDAN0NzekEDAOMQwwCgYDVQQDDAN0NzikEDAOMQww -CgYDVQQDDAN0NzmkEDAOMQwwCgYDVQQDDAN0ODCkEDAOMQwwCgYDVQQDDAN0ODGk -EDAOMQwwCgYDVQQDDAN0ODKkEDAOMQwwCgYDVQQDDAN0ODOkEDAOMQwwCgYDVQQD -DAN0ODSkEDAOMQwwCgYDVQQDDAN0ODWkEDAOMQwwCgYDVQQDDAN0ODakEDAOMQww -CgYDVQQDDAN0ODekEDAOMQwwCgYDVQQDDAN0ODikEDAOMQwwCgYDVQQDDAN0ODmk -EDAOMQwwCgYDVQQDDAN0OTCkEDAOMQwwCgYDVQQDDAN0OTGkEDAOMQwwCgYDVQQD -DAN0OTKkEDAOMQwwCgYDVQQDDAN0OTOkEDAOMQwwCgYDVQQDDAN0OTSkEDAOMQww -CgYDVQQDDAN0OTWkEDAOMQwwCgYDVQQDDAN0OTakEDAOMQwwCgYDVQQDDAN0OTek -EDAOMQwwCgYDVQQDDAN0OTikEDAOMQwwCgYDVQQDDAN0OTmkETAPMQ0wCwYDVQQD -DAR0MTAwpBEwDzENMAsGA1UEAwwEdDEwMaQRMA8xDTALBgNVBAMMBHQxMDKkETAP -MQ0wCwYDVQQDDAR0MTAzpBEwDzENMAsGA1UEAwwEdDEwNKQRMA8xDTALBgNVBAMM -BHQxMDWkETAPMQ0wCwYDVQQDDAR0MTA2pBEwDzENMAsGA1UEAwwEdDEwN6QRMA8x -DTALBgNVBAMMBHQxMDikETAPMQ0wCwYDVQQDDAR0MTA5pBEwDzENMAsGA1UEAwwE -dDExMKQRMA8xDTALBgNVBAMMBHQxMTGkETAPMQ0wCwYDVQQDDAR0MTEypBEwDzEN -MAsGA1UEAwwEdDExM6QRMA8xDTALBgNVBAMMBHQxMTSkETAPMQ0wCwYDVQQDDAR0 -MTE1pBEwDzENMAsGA1UEAwwEdDExNqQRMA8xDTALBgNVBAMMBHQxMTekETAPMQ0w -CwYDVQQDDAR0MTE4pBEwDzENMAsGA1UEAwwEdDExOaQRMA8xDTALBgNVBAMMBHQx -MjCkETAPMQ0wCwYDVQQDDAR0MTIxpBEwDzENMAsGA1UEAwwEdDEyMqQRMA8xDTAL -BgNVBAMMBHQxMjOkETAPMQ0wCwYDVQQDDAR0MTI0pBEwDzENMAsGA1UEAwwEdDEy -NaQRMA8xDTALBgNVBAMMBHQxMjakETAPMQ0wCwYDVQQDDAR0MTI3pBEwDzENMAsG -A1UEAwwEdDEyOKQRMA8xDTALBgNVBAMMBHQxMjmkETAPMQ0wCwYDVQQDDAR0MTMw -pBEwDzENMAsGA1UEAwwEdDEzMaQRMA8xDTALBgNVBAMMBHQxMzKkETAPMQ0wCwYD -VQQDDAR0MTMzpBEwDzENMAsGA1UEAwwEdDEzNKQRMA8xDTALBgNVBAMMBHQxMzWk -ETAPMQ0wCwYDVQQDDAR0MTM2pBEwDzENMAsGA1UEAwwEdDEzN6QRMA8xDTALBgNV -BAMMBHQxMzikETAPMQ0wCwYDVQQDDAR0MTM5pBEwDzENMAsGA1UEAwwEdDE0MKQR -MA8xDTALBgNVBAMMBHQxNDGkETAPMQ0wCwYDVQQDDAR0MTQypBEwDzENMAsGA1UE -AwwEdDE0M6QRMA8xDTALBgNVBAMMBHQxNDSkETAPMQ0wCwYDVQQDDAR0MTQ1pBEw -DzENMAsGA1UEAwwEdDE0NqQRMA8xDTALBgNVBAMMBHQxNDekETAPMQ0wCwYDVQQD -DAR0MTQ4pBEwDzENMAsGA1UEAwwEdDE0OaQRMA8xDTALBgNVBAMMBHQxNTCkETAP -MQ0wCwYDVQQDDAR0MTUxpBEwDzENMAsGA1UEAwwEdDE1MqQRMA8xDTALBgNVBAMM -BHQxNTOkETAPMQ0wCwYDVQQDDAR0MTU0pBEwDzENMAsGA1UEAwwEdDE1NaQRMA8x -DTALBgNVBAMMBHQxNTakETAPMQ0wCwYDVQQDDAR0MTU3pBEwDzENMAsGA1UEAwwE -dDE1OKQRMA8xDTALBgNVBAMMBHQxNTmkETAPMQ0wCwYDVQQDDAR0MTYwpBEwDzEN -MAsGA1UEAwwEdDE2MaQRMA8xDTALBgNVBAMMBHQxNjKkETAPMQ0wCwYDVQQDDAR0 -MTYzpBEwDzENMAsGA1UEAwwEdDE2NKQRMA8xDTALBgNVBAMMBHQxNjWkETAPMQ0w -CwYDVQQDDAR0MTY2pBEwDzENMAsGA1UEAwwEdDE2N6QRMA8xDTALBgNVBAMMBHQx -NjikETAPMQ0wCwYDVQQDDAR0MTY5pBEwDzENMAsGA1UEAwwEdDE3MKQRMA8xDTAL -BgNVBAMMBHQxNzGkETAPMQ0wCwYDVQQDDAR0MTcypBEwDzENMAsGA1UEAwwEdDE3 -M6QRMA8xDTALBgNVBAMMBHQxNzSkETAPMQ0wCwYDVQQDDAR0MTc1pBEwDzENMAsG -A1UEAwwEdDE3NqQRMA8xDTALBgNVBAMMBHQxNzekETAPMQ0wCwYDVQQDDAR0MTc4 -pBEwDzENMAsGA1UEAwwEdDE3OaQRMA8xDTALBgNVBAMMBHQxODCkETAPMQ0wCwYD -VQQDDAR0MTgxpBEwDzENMAsGA1UEAwwEdDE4MqQRMA8xDTALBgNVBAMMBHQxODOk -ETAPMQ0wCwYDVQQDDAR0MTg0pBEwDzENMAsGA1UEAwwEdDE4NaQRMA8xDTALBgNV -BAMMBHQxODakETAPMQ0wCwYDVQQDDAR0MTg3pBEwDzENMAsGA1UEAwwEdDE4OKQR -MA8xDTALBgNVBAMMBHQxODmkETAPMQ0wCwYDVQQDDAR0MTkwpBEwDzENMAsGA1UE -AwwEdDE5MaQRMA8xDTALBgNVBAMMBHQxOTKkETAPMQ0wCwYDVQQDDAR0MTkzpBEw -DzENMAsGA1UEAwwEdDE5NKQRMA8xDTALBgNVBAMMBHQxOTWkETAPMQ0wCwYDVQQD -DAR0MTk2pBEwDzENMAsGA1UEAwwEdDE5N6QRMA8xDTALBgNVBAMMBHQxOTikETAP -MQ0wCwYDVQQDDAR0MTk5pBEwDzENMAsGA1UEAwwEdDIwMKQRMA8xDTALBgNVBAMM -BHQyMDGkETAPMQ0wCwYDVQQDDAR0MjAypBEwDzENMAsGA1UEAwwEdDIwM6QRMA8x -DTALBgNVBAMMBHQyMDSkETAPMQ0wCwYDVQQDDAR0MjA1pBEwDzENMAsGA1UEAwwE -dDIwNqQRMA8xDTALBgNVBAMMBHQyMDekETAPMQ0wCwYDVQQDDAR0MjA4pBEwDzEN -MAsGA1UEAwwEdDIwOaQRMA8xDTALBgNVBAMMBHQyMTCkETAPMQ0wCwYDVQQDDAR0 -MjExpBEwDzENMAsGA1UEAwwEdDIxMqQRMA8xDTALBgNVBAMMBHQyMTOkETAPMQ0w -CwYDVQQDDAR0MjE0pBEwDzENMAsGA1UEAwwEdDIxNaQRMA8xDTALBgNVBAMMBHQy -MTakETAPMQ0wCwYDVQQDDAR0MjE3pBEwDzENMAsGA1UEAwwEdDIxOKQRMA8xDTAL -BgNVBAMMBHQyMTmkETAPMQ0wCwYDVQQDDAR0MjIwpBEwDzENMAsGA1UEAwwEdDIy -MaQRMA8xDTALBgNVBAMMBHQyMjKkETAPMQ0wCwYDVQQDDAR0MjIzpBEwDzENMAsG -A1UEAwwEdDIyNKQRMA8xDTALBgNVBAMMBHQyMjWkETAPMQ0wCwYDVQQDDAR0MjI2 -pBEwDzENMAsGA1UEAwwEdDIyN6QRMA8xDTALBgNVBAMMBHQyMjikETAPMQ0wCwYD -VQQDDAR0MjI5pBEwDzENMAsGA1UEAwwEdDIzMKQRMA8xDTALBgNVBAMMBHQyMzGk -ETAPMQ0wCwYDVQQDDAR0MjMypBEwDzENMAsGA1UEAwwEdDIzM6QRMA8xDTALBgNV -BAMMBHQyMzSkETAPMQ0wCwYDVQQDDAR0MjM1pBEwDzENMAsGA1UEAwwEdDIzNqQR -MA8xDTALBgNVBAMMBHQyMzekETAPMQ0wCwYDVQQDDAR0MjM4pBEwDzENMAsGA1UE -AwwEdDIzOaQRMA8xDTALBgNVBAMMBHQyNDCkETAPMQ0wCwYDVQQDDAR0MjQxpBEw -DzENMAsGA1UEAwwEdDI0MqQRMA8xDTALBgNVBAMMBHQyNDOkETAPMQ0wCwYDVQQD -DAR0MjQ0pBEwDzENMAsGA1UEAwwEdDI0NaQRMA8xDTALBgNVBAMMBHQyNDakETAP -MQ0wCwYDVQQDDAR0MjQ3pBEwDzENMAsGA1UEAwwEdDI0OKQRMA8xDTALBgNVBAMM -BHQyNDmkETAPMQ0wCwYDVQQDDAR0MjUwpBEwDzENMAsGA1UEAwwEdDI1MaQRMA8x -DTALBgNVBAMMBHQyNTKkETAPMQ0wCwYDVQQDDAR0MjUzpBEwDzENMAsGA1UEAwwE -dDI1NKQRMA8xDTALBgNVBAMMBHQyNTWkETAPMQ0wCwYDVQQDDAR0MjU2pBEwDzEN -MAsGA1UEAwwEdDI1N6QRMA8xDTALBgNVBAMMBHQyNTikETAPMQ0wCwYDVQQDDAR0 -MjU5pBEwDzENMAsGA1UEAwwEdDI2MKQRMA8xDTALBgNVBAMMBHQyNjGkETAPMQ0w -CwYDVQQDDAR0MjYypBEwDzENMAsGA1UEAwwEdDI2M6QRMA8xDTALBgNVBAMMBHQy -NjSkETAPMQ0wCwYDVQQDDAR0MjY1pBEwDzENMAsGA1UEAwwEdDI2NqQRMA8xDTAL -BgNVBAMMBHQyNjekETAPMQ0wCwYDVQQDDAR0MjY4pBEwDzENMAsGA1UEAwwEdDI2 -OaQRMA8xDTALBgNVBAMMBHQyNzCkETAPMQ0wCwYDVQQDDAR0MjcxpBEwDzENMAsG -A1UEAwwEdDI3MqQRMA8xDTALBgNVBAMMBHQyNzOkETAPMQ0wCwYDVQQDDAR0Mjc0 -pBEwDzENMAsGA1UEAwwEdDI3NaQRMA8xDTALBgNVBAMMBHQyNzakETAPMQ0wCwYD -VQQDDAR0Mjc3pBEwDzENMAsGA1UEAwwEdDI3OKQRMA8xDTALBgNVBAMMBHQyNzmk -ETAPMQ0wCwYDVQQDDAR0MjgwpBEwDzENMAsGA1UEAwwEdDI4MaQRMA8xDTALBgNV -BAMMBHQyODKkETAPMQ0wCwYDVQQDDAR0MjgzpBEwDzENMAsGA1UEAwwEdDI4NKQR -MA8xDTALBgNVBAMMBHQyODWkETAPMQ0wCwYDVQQDDAR0Mjg2pBEwDzENMAsGA1UE -AwwEdDI4N6QRMA8xDTALBgNVBAMMBHQyODikETAPMQ0wCwYDVQQDDAR0Mjg5pBEw -DzENMAsGA1UEAwwEdDI5MKQRMA8xDTALBgNVBAMMBHQyOTGkETAPMQ0wCwYDVQQD -DAR0MjkypBEwDzENMAsGA1UEAwwEdDI5M6QRMA8xDTALBgNVBAMMBHQyOTSkETAP -MQ0wCwYDVQQDDAR0Mjk1pBEwDzENMAsGA1UEAwwEdDI5NqQRMA8xDTALBgNVBAMM -BHQyOTekETAPMQ0wCwYDVQQDDAR0Mjk4pBEwDzENMAsGA1UEAwwEdDI5OaQRMA8x -DTALBgNVBAMMBHQzMDCkETAPMQ0wCwYDVQQDDAR0MzAxpBEwDzENMAsGA1UEAwwE -dDMwMqQRMA8xDTALBgNVBAMMBHQzMDOkETAPMQ0wCwYDVQQDDAR0MzA0pBEwDzEN -MAsGA1UEAwwEdDMwNaQRMA8xDTALBgNVBAMMBHQzMDakETAPMQ0wCwYDVQQDDAR0 -MzA3pBEwDzENMAsGA1UEAwwEdDMwOKQRMA8xDTALBgNVBAMMBHQzMDmkETAPMQ0w -CwYDVQQDDAR0MzEwpBEwDzENMAsGA1UEAwwEdDMxMaQRMA8xDTALBgNVBAMMBHQz -MTKkETAPMQ0wCwYDVQQDDAR0MzEzpBEwDzENMAsGA1UEAwwEdDMxNKQRMA8xDTAL -BgNVBAMMBHQzMTWkETAPMQ0wCwYDVQQDDAR0MzE2pBEwDzENMAsGA1UEAwwEdDMx -N6QRMA8xDTALBgNVBAMMBHQzMTikETAPMQ0wCwYDVQQDDAR0MzE5pBEwDzENMAsG -A1UEAwwEdDMyMKQRMA8xDTALBgNVBAMMBHQzMjGkETAPMQ0wCwYDVQQDDAR0MzIy -pBEwDzENMAsGA1UEAwwEdDMyM6QRMA8xDTALBgNVBAMMBHQzMjSkETAPMQ0wCwYD -VQQDDAR0MzI1pBEwDzENMAsGA1UEAwwEdDMyNqQRMA8xDTALBgNVBAMMBHQzMjek -ETAPMQ0wCwYDVQQDDAR0MzI4pBEwDzENMAsGA1UEAwwEdDMyOaQRMA8xDTALBgNV -BAMMBHQzMzCkETAPMQ0wCwYDVQQDDAR0MzMxpBEwDzENMAsGA1UEAwwEdDMzMqQR -MA8xDTALBgNVBAMMBHQzMzOkETAPMQ0wCwYDVQQDDAR0MzM0pBEwDzENMAsGA1UE -AwwEdDMzNaQRMA8xDTALBgNVBAMMBHQzMzakETAPMQ0wCwYDVQQDDAR0MzM3pBEw -DzENMAsGA1UEAwwEdDMzOKQRMA8xDTALBgNVBAMMBHQzMzmkETAPMQ0wCwYDVQQD -DAR0MzQwpBEwDzENMAsGA1UEAwwEdDM0MYYNaHR0cDovL3Rlc3QvMIYNaHR0cDov -L3Rlc3QvMYYNaHR0cDovL3Rlc3QvMoYNaHR0cDovL3Rlc3QvM4YNaHR0cDovL3Rl -c3QvNIYNaHR0cDovL3Rlc3QvNYYNaHR0cDovL3Rlc3QvNoYNaHR0cDovL3Rlc3Qv -N4YNaHR0cDovL3Rlc3QvOIYNaHR0cDovL3Rlc3QvOYYOaHR0cDovL3Rlc3QvMTCG -Dmh0dHA6Ly90ZXN0LzExhg5odHRwOi8vdGVzdC8xMoYOaHR0cDovL3Rlc3QvMTOG -Dmh0dHA6Ly90ZXN0LzE0hg5odHRwOi8vdGVzdC8xNYYOaHR0cDovL3Rlc3QvMTaG -Dmh0dHA6Ly90ZXN0LzE3hg5odHRwOi8vdGVzdC8xOIYOaHR0cDovL3Rlc3QvMTmG -Dmh0dHA6Ly90ZXN0LzIwhg5odHRwOi8vdGVzdC8yMYYOaHR0cDovL3Rlc3QvMjKG -Dmh0dHA6Ly90ZXN0LzIzhg5odHRwOi8vdGVzdC8yNIYOaHR0cDovL3Rlc3QvMjWG -Dmh0dHA6Ly90ZXN0LzI2hg5odHRwOi8vdGVzdC8yN4YOaHR0cDovL3Rlc3QvMjiG -Dmh0dHA6Ly90ZXN0LzI5hg5odHRwOi8vdGVzdC8zMIYOaHR0cDovL3Rlc3QvMzGG -Dmh0dHA6Ly90ZXN0LzMyhg5odHRwOi8vdGVzdC8zM4YOaHR0cDovL3Rlc3QvMzSG -Dmh0dHA6Ly90ZXN0LzM1hg5odHRwOi8vdGVzdC8zNoYOaHR0cDovL3Rlc3QvMzeG -Dmh0dHA6Ly90ZXN0LzM4hg5odHRwOi8vdGVzdC8zOYYOaHR0cDovL3Rlc3QvNDCG -Dmh0dHA6Ly90ZXN0LzQxhg5odHRwOi8vdGVzdC80MoYOaHR0cDovL3Rlc3QvNDOG -Dmh0dHA6Ly90ZXN0LzQ0hg5odHRwOi8vdGVzdC80NYYOaHR0cDovL3Rlc3QvNDaG -Dmh0dHA6Ly90ZXN0LzQ3hg5odHRwOi8vdGVzdC80OIYOaHR0cDovL3Rlc3QvNDmG -Dmh0dHA6Ly90ZXN0LzUwhg5odHRwOi8vdGVzdC81MYYOaHR0cDovL3Rlc3QvNTKG -Dmh0dHA6Ly90ZXN0LzUzhg5odHRwOi8vdGVzdC81NIYOaHR0cDovL3Rlc3QvNTWG -Dmh0dHA6Ly90ZXN0LzU2hg5odHRwOi8vdGVzdC81N4YOaHR0cDovL3Rlc3QvNTiG -Dmh0dHA6Ly90ZXN0LzU5hg5odHRwOi8vdGVzdC82MIYOaHR0cDovL3Rlc3QvNjGG -Dmh0dHA6Ly90ZXN0LzYyhg5odHRwOi8vdGVzdC82M4YOaHR0cDovL3Rlc3QvNjSG -Dmh0dHA6Ly90ZXN0LzY1hg5odHRwOi8vdGVzdC82NoYOaHR0cDovL3Rlc3QvNjeG -Dmh0dHA6Ly90ZXN0LzY4hg5odHRwOi8vdGVzdC82OYYOaHR0cDovL3Rlc3QvNzCG -Dmh0dHA6Ly90ZXN0Lzcxhg5odHRwOi8vdGVzdC83MoYOaHR0cDovL3Rlc3QvNzOG -Dmh0dHA6Ly90ZXN0Lzc0hg5odHRwOi8vdGVzdC83NYYOaHR0cDovL3Rlc3QvNzaG -Dmh0dHA6Ly90ZXN0Lzc3hg5odHRwOi8vdGVzdC83OIYOaHR0cDovL3Rlc3QvNzmG -Dmh0dHA6Ly90ZXN0Lzgwhg5odHRwOi8vdGVzdC84MYYOaHR0cDovL3Rlc3QvODKG -Dmh0dHA6Ly90ZXN0Lzgzhg5odHRwOi8vdGVzdC84NIYOaHR0cDovL3Rlc3QvODWG -Dmh0dHA6Ly90ZXN0Lzg2hg5odHRwOi8vdGVzdC84N4YOaHR0cDovL3Rlc3QvODiG -Dmh0dHA6Ly90ZXN0Lzg5hg5odHRwOi8vdGVzdC85MIYOaHR0cDovL3Rlc3QvOTGG -Dmh0dHA6Ly90ZXN0Lzkyhg5odHRwOi8vdGVzdC85M4YOaHR0cDovL3Rlc3QvOTSG -Dmh0dHA6Ly90ZXN0Lzk1hg5odHRwOi8vdGVzdC85NoYOaHR0cDovL3Rlc3QvOTeG -Dmh0dHA6Ly90ZXN0Lzk4hg5odHRwOi8vdGVzdC85OYYPaHR0cDovL3Rlc3QvMTAw -hg9odHRwOi8vdGVzdC8xMDGGD2h0dHA6Ly90ZXN0LzEwMoYPaHR0cDovL3Rlc3Qv -MTAzhg9odHRwOi8vdGVzdC8xMDSGD2h0dHA6Ly90ZXN0LzEwNYYPaHR0cDovL3Rl -c3QvMTA2hg9odHRwOi8vdGVzdC8xMDeGD2h0dHA6Ly90ZXN0LzEwOIYPaHR0cDov -L3Rlc3QvMTA5hg9odHRwOi8vdGVzdC8xMTCGD2h0dHA6Ly90ZXN0LzExMYYPaHR0 -cDovL3Rlc3QvMTEyhg9odHRwOi8vdGVzdC8xMTOGD2h0dHA6Ly90ZXN0LzExNIYP -aHR0cDovL3Rlc3QvMTE1hg9odHRwOi8vdGVzdC8xMTaGD2h0dHA6Ly90ZXN0LzEx -N4YPaHR0cDovL3Rlc3QvMTE4hg9odHRwOi8vdGVzdC8xMTmGD2h0dHA6Ly90ZXN0 -LzEyMIYPaHR0cDovL3Rlc3QvMTIxhg9odHRwOi8vdGVzdC8xMjKGD2h0dHA6Ly90 -ZXN0LzEyM4YPaHR0cDovL3Rlc3QvMTI0hg9odHRwOi8vdGVzdC8xMjWGD2h0dHA6 -Ly90ZXN0LzEyNoYPaHR0cDovL3Rlc3QvMTI3hg9odHRwOi8vdGVzdC8xMjiGD2h0 -dHA6Ly90ZXN0LzEyOYYPaHR0cDovL3Rlc3QvMTMwhg9odHRwOi8vdGVzdC8xMzGG -D2h0dHA6Ly90ZXN0LzEzMoYPaHR0cDovL3Rlc3QvMTMzhg9odHRwOi8vdGVzdC8x -MzSGD2h0dHA6Ly90ZXN0LzEzNYYPaHR0cDovL3Rlc3QvMTM2hg9odHRwOi8vdGVz -dC8xMzeGD2h0dHA6Ly90ZXN0LzEzOIYPaHR0cDovL3Rlc3QvMTM5hg9odHRwOi8v -dGVzdC8xNDCGD2h0dHA6Ly90ZXN0LzE0MYYPaHR0cDovL3Rlc3QvMTQyhg9odHRw -Oi8vdGVzdC8xNDOGD2h0dHA6Ly90ZXN0LzE0NIYPaHR0cDovL3Rlc3QvMTQ1hg9o -dHRwOi8vdGVzdC8xNDaGD2h0dHA6Ly90ZXN0LzE0N4YPaHR0cDovL3Rlc3QvMTQ4 -hg9odHRwOi8vdGVzdC8xNDmGD2h0dHA6Ly90ZXN0LzE1MIYPaHR0cDovL3Rlc3Qv -MTUxhg9odHRwOi8vdGVzdC8xNTKGD2h0dHA6Ly90ZXN0LzE1M4YPaHR0cDovL3Rl -c3QvMTU0hg9odHRwOi8vdGVzdC8xNTWGD2h0dHA6Ly90ZXN0LzE1NoYPaHR0cDov -L3Rlc3QvMTU3hg9odHRwOi8vdGVzdC8xNTiGD2h0dHA6Ly90ZXN0LzE1OYYPaHR0 -cDovL3Rlc3QvMTYwhg9odHRwOi8vdGVzdC8xNjGGD2h0dHA6Ly90ZXN0LzE2MoYP -aHR0cDovL3Rlc3QvMTYzhg9odHRwOi8vdGVzdC8xNjSGD2h0dHA6Ly90ZXN0LzE2 -NYYPaHR0cDovL3Rlc3QvMTY2hg9odHRwOi8vdGVzdC8xNjeGD2h0dHA6Ly90ZXN0 -LzE2OIYPaHR0cDovL3Rlc3QvMTY5hg9odHRwOi8vdGVzdC8xNzCGD2h0dHA6Ly90 -ZXN0LzE3MYYPaHR0cDovL3Rlc3QvMTcyhg9odHRwOi8vdGVzdC8xNzOGD2h0dHA6 -Ly90ZXN0LzE3NIYPaHR0cDovL3Rlc3QvMTc1hg9odHRwOi8vdGVzdC8xNzaGD2h0 -dHA6Ly90ZXN0LzE3N4YPaHR0cDovL3Rlc3QvMTc4hg9odHRwOi8vdGVzdC8xNzmG -D2h0dHA6Ly90ZXN0LzE4MIYPaHR0cDovL3Rlc3QvMTgxhg9odHRwOi8vdGVzdC8x -ODKGD2h0dHA6Ly90ZXN0LzE4M4YPaHR0cDovL3Rlc3QvMTg0hg9odHRwOi8vdGVz -dC8xODWGD2h0dHA6Ly90ZXN0LzE4NoYPaHR0cDovL3Rlc3QvMTg3hg9odHRwOi8v -dGVzdC8xODiGD2h0dHA6Ly90ZXN0LzE4OYYPaHR0cDovL3Rlc3QvMTkwhg9odHRw -Oi8vdGVzdC8xOTGGD2h0dHA6Ly90ZXN0LzE5MoYPaHR0cDovL3Rlc3QvMTkzhg9o -dHRwOi8vdGVzdC8xOTSGD2h0dHA6Ly90ZXN0LzE5NYYPaHR0cDovL3Rlc3QvMTk2 -hg9odHRwOi8vdGVzdC8xOTeGD2h0dHA6Ly90ZXN0LzE5OIYPaHR0cDovL3Rlc3Qv -MTk5hg9odHRwOi8vdGVzdC8yMDCGD2h0dHA6Ly90ZXN0LzIwMYYPaHR0cDovL3Rl -c3QvMjAyhg9odHRwOi8vdGVzdC8yMDOGD2h0dHA6Ly90ZXN0LzIwNIYPaHR0cDov -L3Rlc3QvMjA1hg9odHRwOi8vdGVzdC8yMDaGD2h0dHA6Ly90ZXN0LzIwN4YPaHR0 -cDovL3Rlc3QvMjA4hg9odHRwOi8vdGVzdC8yMDmGD2h0dHA6Ly90ZXN0LzIxMIYP -aHR0cDovL3Rlc3QvMjExhg9odHRwOi8vdGVzdC8yMTKGD2h0dHA6Ly90ZXN0LzIx -M4YPaHR0cDovL3Rlc3QvMjE0hg9odHRwOi8vdGVzdC8yMTWGD2h0dHA6Ly90ZXN0 -LzIxNoYPaHR0cDovL3Rlc3QvMjE3hg9odHRwOi8vdGVzdC8yMTiGD2h0dHA6Ly90 -ZXN0LzIxOYYPaHR0cDovL3Rlc3QvMjIwhg9odHRwOi8vdGVzdC8yMjGGD2h0dHA6 -Ly90ZXN0LzIyMoYPaHR0cDovL3Rlc3QvMjIzhg9odHRwOi8vdGVzdC8yMjSGD2h0 -dHA6Ly90ZXN0LzIyNYYPaHR0cDovL3Rlc3QvMjI2hg9odHRwOi8vdGVzdC8yMjeG -D2h0dHA6Ly90ZXN0LzIyOIYPaHR0cDovL3Rlc3QvMjI5hg9odHRwOi8vdGVzdC8y -MzCGD2h0dHA6Ly90ZXN0LzIzMYYPaHR0cDovL3Rlc3QvMjMyhg9odHRwOi8vdGVz -dC8yMzOGD2h0dHA6Ly90ZXN0LzIzNIYPaHR0cDovL3Rlc3QvMjM1hg9odHRwOi8v -dGVzdC8yMzaGD2h0dHA6Ly90ZXN0LzIzN4YPaHR0cDovL3Rlc3QvMjM4hg9odHRw -Oi8vdGVzdC8yMzmGD2h0dHA6Ly90ZXN0LzI0MIYPaHR0cDovL3Rlc3QvMjQxhg9o -dHRwOi8vdGVzdC8yNDKGD2h0dHA6Ly90ZXN0LzI0M4YPaHR0cDovL3Rlc3QvMjQ0 -hg9odHRwOi8vdGVzdC8yNDWGD2h0dHA6Ly90ZXN0LzI0NoYPaHR0cDovL3Rlc3Qv -MjQ3hg9odHRwOi8vdGVzdC8yNDiGD2h0dHA6Ly90ZXN0LzI0OYYPaHR0cDovL3Rl -c3QvMjUwhg9odHRwOi8vdGVzdC8yNTGGD2h0dHA6Ly90ZXN0LzI1MoYPaHR0cDov -L3Rlc3QvMjUzhg9odHRwOi8vdGVzdC8yNTSGD2h0dHA6Ly90ZXN0LzI1NYYPaHR0 -cDovL3Rlc3QvMjU2hg9odHRwOi8vdGVzdC8yNTeGD2h0dHA6Ly90ZXN0LzI1OIYP -aHR0cDovL3Rlc3QvMjU5hg9odHRwOi8vdGVzdC8yNjCGD2h0dHA6Ly90ZXN0LzI2 -MYYPaHR0cDovL3Rlc3QvMjYyhg9odHRwOi8vdGVzdC8yNjOGD2h0dHA6Ly90ZXN0 -LzI2NIYPaHR0cDovL3Rlc3QvMjY1hg9odHRwOi8vdGVzdC8yNjaGD2h0dHA6Ly90 -ZXN0LzI2N4YPaHR0cDovL3Rlc3QvMjY4hg9odHRwOi8vdGVzdC8yNjmGD2h0dHA6 -Ly90ZXN0LzI3MIYPaHR0cDovL3Rlc3QvMjcxhg9odHRwOi8vdGVzdC8yNzKGD2h0 -dHA6Ly90ZXN0LzI3M4YPaHR0cDovL3Rlc3QvMjc0hg9odHRwOi8vdGVzdC8yNzWG -D2h0dHA6Ly90ZXN0LzI3NoYPaHR0cDovL3Rlc3QvMjc3hg9odHRwOi8vdGVzdC8y -NziGD2h0dHA6Ly90ZXN0LzI3OYYPaHR0cDovL3Rlc3QvMjgwhg9odHRwOi8vdGVz -dC8yODGGD2h0dHA6Ly90ZXN0LzI4MoYPaHR0cDovL3Rlc3QvMjgzhg9odHRwOi8v -dGVzdC8yODSGD2h0dHA6Ly90ZXN0LzI4NYYPaHR0cDovL3Rlc3QvMjg2hg9odHRw -Oi8vdGVzdC8yODeGD2h0dHA6Ly90ZXN0LzI4OIYPaHR0cDovL3Rlc3QvMjg5hg9o -dHRwOi8vdGVzdC8yOTCGD2h0dHA6Ly90ZXN0LzI5MYYPaHR0cDovL3Rlc3QvMjky -hg9odHRwOi8vdGVzdC8yOTOGD2h0dHA6Ly90ZXN0LzI5NIYPaHR0cDovL3Rlc3Qv -Mjk1hg9odHRwOi8vdGVzdC8yOTaGD2h0dHA6Ly90ZXN0LzI5N4YPaHR0cDovL3Rl -c3QvMjk4hg9odHRwOi8vdGVzdC8yOTmGD2h0dHA6Ly90ZXN0LzMwMIYPaHR0cDov -L3Rlc3QvMzAxhg9odHRwOi8vdGVzdC8zMDKGD2h0dHA6Ly90ZXN0LzMwM4YPaHR0 -cDovL3Rlc3QvMzA0hg9odHRwOi8vdGVzdC8zMDWGD2h0dHA6Ly90ZXN0LzMwNoYP -aHR0cDovL3Rlc3QvMzA3hg9odHRwOi8vdGVzdC8zMDiGD2h0dHA6Ly90ZXN0LzMw -OYYPaHR0cDovL3Rlc3QvMzEwhg9odHRwOi8vdGVzdC8zMTGGD2h0dHA6Ly90ZXN0 -LzMxMoYPaHR0cDovL3Rlc3QvMzEzhg9odHRwOi8vdGVzdC8zMTSGD2h0dHA6Ly90 -ZXN0LzMxNYYPaHR0cDovL3Rlc3QvMzE2hg9odHRwOi8vdGVzdC8zMTeGD2h0dHA6 -Ly90ZXN0LzMxOIYPaHR0cDovL3Rlc3QvMzE5hg9odHRwOi8vdGVzdC8zMjCGD2h0 -dHA6Ly90ZXN0LzMyMYYPaHR0cDovL3Rlc3QvMzIyhg9odHRwOi8vdGVzdC8zMjOG -D2h0dHA6Ly90ZXN0LzMyNIYPaHR0cDovL3Rlc3QvMzI1hg9odHRwOi8vdGVzdC8z -MjaGD2h0dHA6Ly90ZXN0LzMyN4YPaHR0cDovL3Rlc3QvMzI4hg9odHRwOi8vdGVz -dC8zMjmGD2h0dHA6Ly90ZXN0LzMzMIYPaHR0cDovL3Rlc3QvMzMxhg9odHRwOi8v -dGVzdC8zMzKGD2h0dHA6Ly90ZXN0LzMzM4YPaHR0cDovL3Rlc3QvMzM0hg9odHRw -Oi8vdGVzdC8zMzWGD2h0dHA6Ly90ZXN0LzMzNoYPaHR0cDovL3Rlc3QvMzM3hg9o -dHRwOi8vdGVzdC8zMziGD2h0dHA6Ly90ZXN0LzMzOYYPaHR0cDovL3Rlc3QvMzQw -hg9odHRwOi8vdGVzdC8zNDGGD2h0dHA6Ly90ZXN0LzM0MoYPaHR0cDovL3Rlc3Qv -MzQzhg9odHRwOi8vdGVzdC8zNDSGD2h0dHA6Ly90ZXN0LzM0NYYPaHR0cDovL3Rl -c3QvMzQ2hg9odHRwOi8vdGVzdC8zNDeGD2h0dHA6Ly90ZXN0LzM0OIYPaHR0cDov -L3Rlc3QvMzQ5hg9odHRwOi8vdGVzdC8zNTCGD2h0dHA6Ly90ZXN0LzM1MYYPaHR0 -cDovL3Rlc3QvMzUyhg9odHRwOi8vdGVzdC8zNTOGD2h0dHA6Ly90ZXN0LzM1NIYP -aHR0cDovL3Rlc3QvMzU1hg9odHRwOi8vdGVzdC8zNTaGD2h0dHA6Ly90ZXN0LzM1 -N4YPaHR0cDovL3Rlc3QvMzU4hg9odHRwOi8vdGVzdC8zNTmGD2h0dHA6Ly90ZXN0 -LzM2MIYPaHR0cDovL3Rlc3QvMzYxhg9odHRwOi8vdGVzdC8zNjKGD2h0dHA6Ly90 -ZXN0LzM2M4YPaHR0cDovL3Rlc3QvMzY0hg9odHRwOi8vdGVzdC8zNjWGD2h0dHA6 -Ly90ZXN0LzM2NoYPaHR0cDovL3Rlc3QvMzY3hg9odHRwOi8vdGVzdC8zNjiGD2h0 -dHA6Ly90ZXN0LzM2OYYPaHR0cDovL3Rlc3QvMzcwhg9odHRwOi8vdGVzdC8zNzGG -D2h0dHA6Ly90ZXN0LzM3MoYPaHR0cDovL3Rlc3QvMzczhg9odHRwOi8vdGVzdC8z -NzSGD2h0dHA6Ly90ZXN0LzM3NYYPaHR0cDovL3Rlc3QvMzc2hg9odHRwOi8vdGVz -dC8zNzeGD2h0dHA6Ly90ZXN0LzM3OIYPaHR0cDovL3Rlc3QvMzc5hg9odHRwOi8v -dGVzdC8zODCGD2h0dHA6Ly90ZXN0LzM4MYYPaHR0cDovL3Rlc3QvMzgyhg9odHRw -Oi8vdGVzdC8zODOGD2h0dHA6Ly90ZXN0LzM4NIYPaHR0cDovL3Rlc3QvMzg1hg9o -dHRwOi8vdGVzdC8zODaGD2h0dHA6Ly90ZXN0LzM4N4YPaHR0cDovL3Rlc3QvMzg4 -hg9odHRwOi8vdGVzdC8zODmGD2h0dHA6Ly90ZXN0LzM5MIYPaHR0cDovL3Rlc3Qv -Mzkxhg9odHRwOi8vdGVzdC8zOTKGD2h0dHA6Ly90ZXN0LzM5M4YPaHR0cDovL3Rl -c3QvMzk0hg9odHRwOi8vdGVzdC8zOTWGD2h0dHA6Ly90ZXN0LzM5NoYPaHR0cDov -L3Rlc3QvMzk3hg9odHRwOi8vdGVzdC8zOTiGD2h0dHA6Ly90ZXN0LzM5OYYPaHR0 -cDovL3Rlc3QvNDAwhg9odHRwOi8vdGVzdC80MDGGD2h0dHA6Ly90ZXN0LzQwMoYP -aHR0cDovL3Rlc3QvNDAzhg9odHRwOi8vdGVzdC80MDSGD2h0dHA6Ly90ZXN0LzQw -NYYPaHR0cDovL3Rlc3QvNDA2hg9odHRwOi8vdGVzdC80MDeGD2h0dHA6Ly90ZXN0 -LzQwOIYPaHR0cDovL3Rlc3QvNDA5hg9odHRwOi8vdGVzdC80MTCGD2h0dHA6Ly90 -ZXN0LzQxMYYPaHR0cDovL3Rlc3QvNDEyhg9odHRwOi8vdGVzdC80MTOGD2h0dHA6 -Ly90ZXN0LzQxNIYPaHR0cDovL3Rlc3QvNDE1hg9odHRwOi8vdGVzdC80MTaGD2h0 -dHA6Ly90ZXN0LzQxN4YPaHR0cDovL3Rlc3QvNDE4hg9odHRwOi8vdGVzdC80MTmG -D2h0dHA6Ly90ZXN0LzQyMIYPaHR0cDovL3Rlc3QvNDIxhg9odHRwOi8vdGVzdC80 -MjKGD2h0dHA6Ly90ZXN0LzQyM4YPaHR0cDovL3Rlc3QvNDI0hg9odHRwOi8vdGVz -dC80MjWGD2h0dHA6Ly90ZXN0LzQyNoYPaHR0cDovL3Rlc3QvNDI3hg9odHRwOi8v -dGVzdC80MjiGD2h0dHA6Ly90ZXN0LzQyOYYPaHR0cDovL3Rlc3QvNDMwhg9odHRw -Oi8vdGVzdC80MzGGD2h0dHA6Ly90ZXN0LzQzMoYPaHR0cDovL3Rlc3QvNDMzhg9o -dHRwOi8vdGVzdC80MzSGD2h0dHA6Ly90ZXN0LzQzNYYPaHR0cDovL3Rlc3QvNDM2 -hg9odHRwOi8vdGVzdC80MzeGD2h0dHA6Ly90ZXN0LzQzOIYPaHR0cDovL3Rlc3Qv -NDM5hg9odHRwOi8vdGVzdC80NDCGD2h0dHA6Ly90ZXN0LzQ0MYYPaHR0cDovL3Rl -c3QvNDQyhg9odHRwOi8vdGVzdC80NDOGD2h0dHA6Ly90ZXN0LzQ0NIYPaHR0cDov -L3Rlc3QvNDQ1hg9odHRwOi8vdGVzdC80NDaGD2h0dHA6Ly90ZXN0LzQ0N4YPaHR0 -cDovL3Rlc3QvNDQ4hg9odHRwOi8vdGVzdC80NDmGD2h0dHA6Ly90ZXN0LzQ1MIYP -aHR0cDovL3Rlc3QvNDUxhg9odHRwOi8vdGVzdC80NTKGD2h0dHA6Ly90ZXN0LzQ1 -M4YPaHR0cDovL3Rlc3QvNDU0hg9odHRwOi8vdGVzdC80NTWGD2h0dHA6Ly90ZXN0 -LzQ1NoYPaHR0cDovL3Rlc3QvNDU3hg9odHRwOi8vdGVzdC80NTiGD2h0dHA6Ly90 -ZXN0LzQ1OYYPaHR0cDovL3Rlc3QvNDYwhg9odHRwOi8vdGVzdC80NjGGD2h0dHA6 -Ly90ZXN0LzQ2MoYPaHR0cDovL3Rlc3QvNDYzhg9odHRwOi8vdGVzdC80NjSGD2h0 -dHA6Ly90ZXN0LzQ2NYYPaHR0cDovL3Rlc3QvNDY2hg9odHRwOi8vdGVzdC80NjeG -D2h0dHA6Ly90ZXN0LzQ2OIYPaHR0cDovL3Rlc3QvNDY5hg9odHRwOi8vdGVzdC80 -NzCGD2h0dHA6Ly90ZXN0LzQ3MYYPaHR0cDovL3Rlc3QvNDcyhg9odHRwOi8vdGVz -dC80NzOGD2h0dHA6Ly90ZXN0LzQ3NIYPaHR0cDovL3Rlc3QvNDc1hg9odHRwOi8v -dGVzdC80NzaGD2h0dHA6Ly90ZXN0LzQ3N4YPaHR0cDovL3Rlc3QvNDc4hg9odHRw -Oi8vdGVzdC80NzmGD2h0dHA6Ly90ZXN0LzQ4MIYPaHR0cDovL3Rlc3QvNDgxhg9o -dHRwOi8vdGVzdC80ODKGD2h0dHA6Ly90ZXN0LzQ4M4YPaHR0cDovL3Rlc3QvNDg0 -hg9odHRwOi8vdGVzdC80ODWGD2h0dHA6Ly90ZXN0LzQ4NoYPaHR0cDovL3Rlc3Qv -NDg3hg9odHRwOi8vdGVzdC80ODiGD2h0dHA6Ly90ZXN0LzQ4OYYPaHR0cDovL3Rl -c3QvNDkwhg9odHRwOi8vdGVzdC80OTGGD2h0dHA6Ly90ZXN0LzQ5MoYPaHR0cDov -L3Rlc3QvNDkzhg9odHRwOi8vdGVzdC80OTSGD2h0dHA6Ly90ZXN0LzQ5NYYPaHR0 -cDovL3Rlc3QvNDk2hg9odHRwOi8vdGVzdC80OTeGD2h0dHA6Ly90ZXN0LzQ5OIYP -aHR0cDovL3Rlc3QvNDk5hg9odHRwOi8vdGVzdC81MDCGD2h0dHA6Ly90ZXN0LzUw -MYYPaHR0cDovL3Rlc3QvNTAyhg9odHRwOi8vdGVzdC81MDOGD2h0dHA6Ly90ZXN0 -LzUwNIYPaHR0cDovL3Rlc3QvNTA1hg9odHRwOi8vdGVzdC81MDaGD2h0dHA6Ly90 -ZXN0LzUwN4YPaHR0cDovL3Rlc3QvNTA4hg9odHRwOi8vdGVzdC81MDmGD2h0dHA6 -Ly90ZXN0LzUxMIYPaHR0cDovL3Rlc3QvNTExhg9odHRwOi8vdGVzdC81MTKGD2h0 -dHA6Ly90ZXN0LzUxM4YPaHR0cDovL3Rlc3QvNTE0hg9odHRwOi8vdGVzdC81MTWG -D2h0dHA6Ly90ZXN0LzUxNoYPaHR0cDovL3Rlc3QvNTE3hg9odHRwOi8vdGVzdC81 -MTiGD2h0dHA6Ly90ZXN0LzUxOYYPaHR0cDovL3Rlc3QvNTIwhg9odHRwOi8vdGVz -dC81MjGGD2h0dHA6Ly90ZXN0LzUyMoYPaHR0cDovL3Rlc3QvNTIzhg9odHRwOi8v -dGVzdC81MjSGD2h0dHA6Ly90ZXN0LzUyNYYPaHR0cDovL3Rlc3QvNTI2hg9odHRw -Oi8vdGVzdC81MjeGD2h0dHA6Ly90ZXN0LzUyOIYPaHR0cDovL3Rlc3QvNTI5hg9o -dHRwOi8vdGVzdC81MzCGD2h0dHA6Ly90ZXN0LzUzMYYPaHR0cDovL3Rlc3QvNTMy -hg9odHRwOi8vdGVzdC81MzOGD2h0dHA6Ly90ZXN0LzUzNIYPaHR0cDovL3Rlc3Qv -NTM1hg9odHRwOi8vdGVzdC81MzaGD2h0dHA6Ly90ZXN0LzUzN4YPaHR0cDovL3Rl -c3QvNTM4hg9odHRwOi8vdGVzdC81MzmGD2h0dHA6Ly90ZXN0LzU0MIYPaHR0cDov -L3Rlc3QvNTQxhg9odHRwOi8vdGVzdC81NDKGD2h0dHA6Ly90ZXN0LzU0M4YPaHR0 -cDovL3Rlc3QvNTQ0hg9odHRwOi8vdGVzdC81NDWGD2h0dHA6Ly90ZXN0LzU0NoYP -aHR0cDovL3Rlc3QvNTQ3hg9odHRwOi8vdGVzdC81NDiGD2h0dHA6Ly90ZXN0LzU0 -OYYPaHR0cDovL3Rlc3QvNTUwhg9odHRwOi8vdGVzdC81NTGGD2h0dHA6Ly90ZXN0 -LzU1MoYPaHR0cDovL3Rlc3QvNTUzhg9odHRwOi8vdGVzdC81NTSGD2h0dHA6Ly90 -ZXN0LzU1NYYPaHR0cDovL3Rlc3QvNTU2hg9odHRwOi8vdGVzdC81NTeGD2h0dHA6 -Ly90ZXN0LzU1OIYPaHR0cDovL3Rlc3QvNTU5hg9odHRwOi8vdGVzdC81NjCGD2h0 -dHA6Ly90ZXN0LzU2MYYPaHR0cDovL3Rlc3QvNTYyhg9odHRwOi8vdGVzdC81NjOG -D2h0dHA6Ly90ZXN0LzU2NIYPaHR0cDovL3Rlc3QvNTY1hg9odHRwOi8vdGVzdC81 -NjaGD2h0dHA6Ly90ZXN0LzU2N4YPaHR0cDovL3Rlc3QvNTY4hg9odHRwOi8vdGVz -dC81NjmGD2h0dHA6Ly90ZXN0LzU3MIYPaHR0cDovL3Rlc3QvNTcxhg9odHRwOi8v -dGVzdC81NzKGD2h0dHA6Ly90ZXN0LzU3M4YPaHR0cDovL3Rlc3QvNTc0hg9odHRw -Oi8vdGVzdC81NzWGD2h0dHA6Ly90ZXN0LzU3NoYPaHR0cDovL3Rlc3QvNTc3hg9o -dHRwOi8vdGVzdC81NziGD2h0dHA6Ly90ZXN0LzU3OYYPaHR0cDovL3Rlc3QvNTgw -hg9odHRwOi8vdGVzdC81ODGGD2h0dHA6Ly90ZXN0LzU4MoYPaHR0cDovL3Rlc3Qv -NTgzhg9odHRwOi8vdGVzdC81ODSGD2h0dHA6Ly90ZXN0LzU4NYYPaHR0cDovL3Rl -c3QvNTg2hg9odHRwOi8vdGVzdC81ODeGD2h0dHA6Ly90ZXN0LzU4OIYPaHR0cDov -L3Rlc3QvNTg5hg9odHRwOi8vdGVzdC81OTCGD2h0dHA6Ly90ZXN0LzU5MYYPaHR0 -cDovL3Rlc3QvNTkyhg9odHRwOi8vdGVzdC81OTOGD2h0dHA6Ly90ZXN0LzU5NIYP -aHR0cDovL3Rlc3QvNTk1hg9odHRwOi8vdGVzdC81OTaGD2h0dHA6Ly90ZXN0LzU5 -N4YPaHR0cDovL3Rlc3QvNTk4hg9odHRwOi8vdGVzdC81OTmGD2h0dHA6Ly90ZXN0 -LzYwMIYPaHR0cDovL3Rlc3QvNjAxhg9odHRwOi8vdGVzdC82MDKGD2h0dHA6Ly90 -ZXN0LzYwM4YPaHR0cDovL3Rlc3QvNjA0hg9odHRwOi8vdGVzdC82MDWGD2h0dHA6 -Ly90ZXN0LzYwNoYPaHR0cDovL3Rlc3QvNjA3hg9odHRwOi8vdGVzdC82MDiGD2h0 -dHA6Ly90ZXN0LzYwOYYPaHR0cDovL3Rlc3QvNjEwhg9odHRwOi8vdGVzdC82MTGG -D2h0dHA6Ly90ZXN0LzYxMoYPaHR0cDovL3Rlc3QvNjEzhg9odHRwOi8vdGVzdC82 -MTSGD2h0dHA6Ly90ZXN0LzYxNYYPaHR0cDovL3Rlc3QvNjE2hg9odHRwOi8vdGVz -dC82MTeGD2h0dHA6Ly90ZXN0LzYxOIYPaHR0cDovL3Rlc3QvNjE5hg9odHRwOi8v -dGVzdC82MjCGD2h0dHA6Ly90ZXN0LzYyMYYPaHR0cDovL3Rlc3QvNjIyhg9odHRw -Oi8vdGVzdC82MjOGD2h0dHA6Ly90ZXN0LzYyNIYPaHR0cDovL3Rlc3QvNjI1hg9o -dHRwOi8vdGVzdC82MjaGD2h0dHA6Ly90ZXN0LzYyN4YPaHR0cDovL3Rlc3QvNjI4 -hg9odHRwOi8vdGVzdC82MjmGD2h0dHA6Ly90ZXN0LzYzMIYPaHR0cDovL3Rlc3Qv -NjMxhg9odHRwOi8vdGVzdC82MzKGD2h0dHA6Ly90ZXN0LzYzM4YPaHR0cDovL3Rl -c3QvNjM0hg9odHRwOi8vdGVzdC82MzWGD2h0dHA6Ly90ZXN0LzYzNoYPaHR0cDov -L3Rlc3QvNjM3hg9odHRwOi8vdGVzdC82MziGD2h0dHA6Ly90ZXN0LzYzOYYPaHR0 -cDovL3Rlc3QvNjQwhg9odHRwOi8vdGVzdC82NDGGD2h0dHA6Ly90ZXN0LzY0MoYP -aHR0cDovL3Rlc3QvNjQzhg9odHRwOi8vdGVzdC82NDSGD2h0dHA6Ly90ZXN0LzY0 -NYYPaHR0cDovL3Rlc3QvNjQ2hg9odHRwOi8vdGVzdC82NDeGD2h0dHA6Ly90ZXN0 -LzY0OIYPaHR0cDovL3Rlc3QvNjQ5hg9odHRwOi8vdGVzdC82NTCGD2h0dHA6Ly90 -ZXN0LzY1MYYPaHR0cDovL3Rlc3QvNjUyhg9odHRwOi8vdGVzdC82NTOGD2h0dHA6 -Ly90ZXN0LzY1NIYPaHR0cDovL3Rlc3QvNjU1hg9odHRwOi8vdGVzdC82NTaGD2h0 -dHA6Ly90ZXN0LzY1N4YPaHR0cDovL3Rlc3QvNjU4hg9odHRwOi8vdGVzdC82NTmG -D2h0dHA6Ly90ZXN0LzY2MIYPaHR0cDovL3Rlc3QvNjYxhg9odHRwOi8vdGVzdC82 -NjKGD2h0dHA6Ly90ZXN0LzY2M4YPaHR0cDovL3Rlc3QvNjY0hg9odHRwOi8vdGVz -dC82NjWGD2h0dHA6Ly90ZXN0LzY2NoYPaHR0cDovL3Rlc3QvNjY3hg9odHRwOi8v -dGVzdC82NjiGD2h0dHA6Ly90ZXN0LzY2OYYPaHR0cDovL3Rlc3QvNjcwhg9odHRw -Oi8vdGVzdC82NzGGD2h0dHA6Ly90ZXN0LzY3MoYPaHR0cDovL3Rlc3QvNjczhg9o -dHRwOi8vdGVzdC82NzSGD2h0dHA6Ly90ZXN0LzY3NYYPaHR0cDovL3Rlc3QvNjc2 -hg9odHRwOi8vdGVzdC82NzeGD2h0dHA6Ly90ZXN0LzY3OIYPaHR0cDovL3Rlc3Qv -Njc5hg9odHRwOi8vdGVzdC82ODCGD2h0dHA6Ly90ZXN0LzY4MYYPaHR0cDovL3Rl -c3QvNjgyhg9odHRwOi8vdGVzdC82ODOGD2h0dHA6Ly90ZXN0LzY4NIYPaHR0cDov -L3Rlc3QvNjg1hg9odHRwOi8vdGVzdC82ODaGD2h0dHA6Ly90ZXN0LzY4N4YPaHR0 -cDovL3Rlc3QvNjg4hg9odHRwOi8vdGVzdC82ODmGD2h0dHA6Ly90ZXN0LzY5MIYP -aHR0cDovL3Rlc3QvNjkxhg9odHRwOi8vdGVzdC82OTKGD2h0dHA6Ly90ZXN0LzY5 -M4YPaHR0cDovL3Rlc3QvNjk0hg9odHRwOi8vdGVzdC82OTWGD2h0dHA6Ly90ZXN0 -LzY5NoYPaHR0cDovL3Rlc3QvNjk3hg9odHRwOi8vdGVzdC82OTiGD2h0dHA6Ly90 -ZXN0LzY5OYYPaHR0cDovL3Rlc3QvNzAwhg9odHRwOi8vdGVzdC83MDGGD2h0dHA6 -Ly90ZXN0LzcwMoYPaHR0cDovL3Rlc3QvNzAzhg9odHRwOi8vdGVzdC83MDSGD2h0 -dHA6Ly90ZXN0LzcwNYYPaHR0cDovL3Rlc3QvNzA2hg9odHRwOi8vdGVzdC83MDeG -D2h0dHA6Ly90ZXN0LzcwOIYPaHR0cDovL3Rlc3QvNzA5hg9odHRwOi8vdGVzdC83 -MTCGD2h0dHA6Ly90ZXN0LzcxMYYPaHR0cDovL3Rlc3QvNzEyhg9odHRwOi8vdGVz -dC83MTOGD2h0dHA6Ly90ZXN0LzcxNIYPaHR0cDovL3Rlc3QvNzE1hg9odHRwOi8v -dGVzdC83MTaGD2h0dHA6Ly90ZXN0LzcxN4YPaHR0cDovL3Rlc3QvNzE4hg9odHRw -Oi8vdGVzdC83MTmGD2h0dHA6Ly90ZXN0LzcyMIYPaHR0cDovL3Rlc3QvNzIxhg9o -dHRwOi8vdGVzdC83MjKGD2h0dHA6Ly90ZXN0LzcyM4YPaHR0cDovL3Rlc3QvNzI0 -hg9odHRwOi8vdGVzdC83MjWGD2h0dHA6Ly90ZXN0LzcyNoYPaHR0cDovL3Rlc3Qv -NzI3hg9odHRwOi8vdGVzdC83MjiGD2h0dHA6Ly90ZXN0LzcyOYYPaHR0cDovL3Rl -c3QvNzMwhg9odHRwOi8vdGVzdC83MzGGD2h0dHA6Ly90ZXN0LzczMoYPaHR0cDov -L3Rlc3QvNzMzhg9odHRwOi8vdGVzdC83MzSGD2h0dHA6Ly90ZXN0LzczNYYPaHR0 -cDovL3Rlc3QvNzM2hg9odHRwOi8vdGVzdC83MzeGD2h0dHA6Ly90ZXN0LzczOIYP -aHR0cDovL3Rlc3QvNzM5hg9odHRwOi8vdGVzdC83NDCGD2h0dHA6Ly90ZXN0Lzc0 -MYYPaHR0cDovL3Rlc3QvNzQyhg9odHRwOi8vdGVzdC83NDOGD2h0dHA6Ly90ZXN0 -Lzc0NIYPaHR0cDovL3Rlc3QvNzQ1hg9odHRwOi8vdGVzdC83NDaGD2h0dHA6Ly90 -ZXN0Lzc0N4YPaHR0cDovL3Rlc3QvNzQ4hg9odHRwOi8vdGVzdC83NDmGD2h0dHA6 -Ly90ZXN0Lzc1MIYPaHR0cDovL3Rlc3QvNzUxhg9odHRwOi8vdGVzdC83NTKGD2h0 -dHA6Ly90ZXN0Lzc1M4YPaHR0cDovL3Rlc3QvNzU0hg9odHRwOi8vdGVzdC83NTWG -D2h0dHA6Ly90ZXN0Lzc1NoYPaHR0cDovL3Rlc3QvNzU3hg9odHRwOi8vdGVzdC83 -NTiGD2h0dHA6Ly90ZXN0Lzc1OYYPaHR0cDovL3Rlc3QvNzYwhg9odHRwOi8vdGVz -dC83NjGGD2h0dHA6Ly90ZXN0Lzc2MoYPaHR0cDovL3Rlc3QvNzYzhg9odHRwOi8v -dGVzdC83NjSGD2h0dHA6Ly90ZXN0Lzc2NYYPaHR0cDovL3Rlc3QvNzY2hg9odHRw -Oi8vdGVzdC83NjeGD2h0dHA6Ly90ZXN0Lzc2OIYPaHR0cDovL3Rlc3QvNzY5hg9o -dHRwOi8vdGVzdC83NzCGD2h0dHA6Ly90ZXN0Lzc3MYYPaHR0cDovL3Rlc3QvNzcy -hg9odHRwOi8vdGVzdC83NzOGD2h0dHA6Ly90ZXN0Lzc3NIYPaHR0cDovL3Rlc3Qv -Nzc1hg9odHRwOi8vdGVzdC83NzaGD2h0dHA6Ly90ZXN0Lzc3N4YPaHR0cDovL3Rl -c3QvNzc4hg9odHRwOi8vdGVzdC83NzmGD2h0dHA6Ly90ZXN0Lzc4MIYPaHR0cDov -L3Rlc3QvNzgxhg9odHRwOi8vdGVzdC83ODKGD2h0dHA6Ly90ZXN0Lzc4M4YPaHR0 -cDovL3Rlc3QvNzg0hg9odHRwOi8vdGVzdC83ODWGD2h0dHA6Ly90ZXN0Lzc4NoYP -aHR0cDovL3Rlc3QvNzg3hg9odHRwOi8vdGVzdC83ODiGD2h0dHA6Ly90ZXN0Lzc4 -OYYPaHR0cDovL3Rlc3QvNzkwhg9odHRwOi8vdGVzdC83OTGGD2h0dHA6Ly90ZXN0 -Lzc5MoYPaHR0cDovL3Rlc3QvNzkzhg9odHRwOi8vdGVzdC83OTSGD2h0dHA6Ly90 -ZXN0Lzc5NYYPaHR0cDovL3Rlc3QvNzk2hg9odHRwOi8vdGVzdC83OTeGD2h0dHA6 -Ly90ZXN0Lzc5OIYPaHR0cDovL3Rlc3QvNzk5hg9odHRwOi8vdGVzdC84MDCGD2h0 -dHA6Ly90ZXN0LzgwMYYPaHR0cDovL3Rlc3QvODAyhg9odHRwOi8vdGVzdC84MDOG -D2h0dHA6Ly90ZXN0LzgwNIYPaHR0cDovL3Rlc3QvODA1hg9odHRwOi8vdGVzdC84 -MDaGD2h0dHA6Ly90ZXN0LzgwN4YPaHR0cDovL3Rlc3QvODA4hg9odHRwOi8vdGVz -dC84MDmGD2h0dHA6Ly90ZXN0LzgxMIYPaHR0cDovL3Rlc3QvODExhg9odHRwOi8v -dGVzdC84MTKGD2h0dHA6Ly90ZXN0LzgxM4YPaHR0cDovL3Rlc3QvODE0hg9odHRw -Oi8vdGVzdC84MTWGD2h0dHA6Ly90ZXN0LzgxNoYPaHR0cDovL3Rlc3QvODE3hg9o -dHRwOi8vdGVzdC84MTiGD2h0dHA6Ly90ZXN0LzgxOYYPaHR0cDovL3Rlc3QvODIw -hg9odHRwOi8vdGVzdC84MjGGD2h0dHA6Ly90ZXN0LzgyMoYPaHR0cDovL3Rlc3Qv -ODIzhg9odHRwOi8vdGVzdC84MjSGD2h0dHA6Ly90ZXN0LzgyNYYPaHR0cDovL3Rl -c3QvODI2hg9odHRwOi8vdGVzdC84MjeGD2h0dHA6Ly90ZXN0LzgyOIYPaHR0cDov -L3Rlc3QvODI5hg9odHRwOi8vdGVzdC84MzCGD2h0dHA6Ly90ZXN0LzgzMYYPaHR0 -cDovL3Rlc3QvODMyhg9odHRwOi8vdGVzdC84MzOGD2h0dHA6Ly90ZXN0LzgzNIYP -aHR0cDovL3Rlc3QvODM1hg9odHRwOi8vdGVzdC84MzaGD2h0dHA6Ly90ZXN0Lzgz -N4YPaHR0cDovL3Rlc3QvODM4hg9odHRwOi8vdGVzdC84MzmGD2h0dHA6Ly90ZXN0 -Lzg0MIYPaHR0cDovL3Rlc3QvODQxhg9odHRwOi8vdGVzdC84NDKGD2h0dHA6Ly90 -ZXN0Lzg0M4YPaHR0cDovL3Rlc3QvODQ0hg9odHRwOi8vdGVzdC84NDWGD2h0dHA6 -Ly90ZXN0Lzg0NoYPaHR0cDovL3Rlc3QvODQ3hg9odHRwOi8vdGVzdC84NDiGD2h0 -dHA6Ly90ZXN0Lzg0OYYPaHR0cDovL3Rlc3QvODUwhg9odHRwOi8vdGVzdC84NTGG -D2h0dHA6Ly90ZXN0Lzg1MoYPaHR0cDovL3Rlc3QvODUzhg9odHRwOi8vdGVzdC84 -NTSGD2h0dHA6Ly90ZXN0Lzg1NYYPaHR0cDovL3Rlc3QvODU2hg9odHRwOi8vdGVz -dC84NTeGD2h0dHA6Ly90ZXN0Lzg1OIYPaHR0cDovL3Rlc3QvODU5hg9odHRwOi8v -dGVzdC84NjCGD2h0dHA6Ly90ZXN0Lzg2MYYPaHR0cDovL3Rlc3QvODYyhg9odHRw -Oi8vdGVzdC84NjOGD2h0dHA6Ly90ZXN0Lzg2NIYPaHR0cDovL3Rlc3QvODY1hg9o -dHRwOi8vdGVzdC84NjaGD2h0dHA6Ly90ZXN0Lzg2N4YPaHR0cDovL3Rlc3QvODY4 -hg9odHRwOi8vdGVzdC84NjmGD2h0dHA6Ly90ZXN0Lzg3MIYPaHR0cDovL3Rlc3Qv -ODcxhg9odHRwOi8vdGVzdC84NzKGD2h0dHA6Ly90ZXN0Lzg3M4YPaHR0cDovL3Rl -c3QvODc0hg9odHRwOi8vdGVzdC84NzWGD2h0dHA6Ly90ZXN0Lzg3NoYPaHR0cDov -L3Rlc3QvODc3hg9odHRwOi8vdGVzdC84NziGD2h0dHA6Ly90ZXN0Lzg3OYYPaHR0 -cDovL3Rlc3QvODgwhg9odHRwOi8vdGVzdC84ODGGD2h0dHA6Ly90ZXN0Lzg4MoYP -aHR0cDovL3Rlc3QvODgzhg9odHRwOi8vdGVzdC84ODSGD2h0dHA6Ly90ZXN0Lzg4 -NYYPaHR0cDovL3Rlc3QvODg2hg9odHRwOi8vdGVzdC84ODeGD2h0dHA6Ly90ZXN0 -Lzg4OIYPaHR0cDovL3Rlc3QvODg5hg9odHRwOi8vdGVzdC84OTCGD2h0dHA6Ly90 -ZXN0Lzg5MYYPaHR0cDovL3Rlc3QvODkyhg9odHRwOi8vdGVzdC84OTOGD2h0dHA6 -Ly90ZXN0Lzg5NIYPaHR0cDovL3Rlc3QvODk1hg9odHRwOi8vdGVzdC84OTaGD2h0 -dHA6Ly90ZXN0Lzg5N4YPaHR0cDovL3Rlc3QvODk4hg9odHRwOi8vdGVzdC84OTmG -D2h0dHA6Ly90ZXN0LzkwMIYPaHR0cDovL3Rlc3QvOTAxhg9odHRwOi8vdGVzdC85 -MDKGD2h0dHA6Ly90ZXN0LzkwM4YPaHR0cDovL3Rlc3QvOTA0hg9odHRwOi8vdGVz -dC85MDWGD2h0dHA6Ly90ZXN0LzkwNoYPaHR0cDovL3Rlc3QvOTA3hg9odHRwOi8v -dGVzdC85MDiGD2h0dHA6Ly90ZXN0LzkwOYYPaHR0cDovL3Rlc3QvOTEwhg9odHRw -Oi8vdGVzdC85MTGGD2h0dHA6Ly90ZXN0LzkxMoYPaHR0cDovL3Rlc3QvOTEzhg9o -dHRwOi8vdGVzdC85MTSGD2h0dHA6Ly90ZXN0LzkxNYYPaHR0cDovL3Rlc3QvOTE2 -hg9odHRwOi8vdGVzdC85MTeGD2h0dHA6Ly90ZXN0LzkxOIYPaHR0cDovL3Rlc3Qv -OTE5hg9odHRwOi8vdGVzdC85MjCGD2h0dHA6Ly90ZXN0LzkyMYYPaHR0cDovL3Rl -c3QvOTIyhg9odHRwOi8vdGVzdC85MjOGD2h0dHA6Ly90ZXN0LzkyNIYPaHR0cDov -L3Rlc3QvOTI1hg9odHRwOi8vdGVzdC85MjaGD2h0dHA6Ly90ZXN0LzkyN4YPaHR0 -cDovL3Rlc3QvOTI4hg9odHRwOi8vdGVzdC85MjmGD2h0dHA6Ly90ZXN0LzkzMIYP -aHR0cDovL3Rlc3QvOTMxhg9odHRwOi8vdGVzdC85MzKGD2h0dHA6Ly90ZXN0Lzkz -M4YPaHR0cDovL3Rlc3QvOTM0hg9odHRwOi8vdGVzdC85MzWGD2h0dHA6Ly90ZXN0 -LzkzNoYPaHR0cDovL3Rlc3QvOTM3hg9odHRwOi8vdGVzdC85MziGD2h0dHA6Ly90 -ZXN0LzkzOYYPaHR0cDovL3Rlc3QvOTQwhg9odHRwOi8vdGVzdC85NDGGD2h0dHA6 -Ly90ZXN0Lzk0MoYPaHR0cDovL3Rlc3QvOTQzhg9odHRwOi8vdGVzdC85NDSGD2h0 -dHA6Ly90ZXN0Lzk0NYYPaHR0cDovL3Rlc3QvOTQ2hg9odHRwOi8vdGVzdC85NDeG -D2h0dHA6Ly90ZXN0Lzk0OIYPaHR0cDovL3Rlc3QvOTQ5hg9odHRwOi8vdGVzdC85 -NTCGD2h0dHA6Ly90ZXN0Lzk1MYYPaHR0cDovL3Rlc3QvOTUyhg9odHRwOi8vdGVz -dC85NTOGD2h0dHA6Ly90ZXN0Lzk1NIYPaHR0cDovL3Rlc3QvOTU1hg9odHRwOi8v -dGVzdC85NTaGD2h0dHA6Ly90ZXN0Lzk1N4YPaHR0cDovL3Rlc3QvOTU4hg9odHRw -Oi8vdGVzdC85NTmGD2h0dHA6Ly90ZXN0Lzk2MIYPaHR0cDovL3Rlc3QvOTYxhg9o -dHRwOi8vdGVzdC85NjKGD2h0dHA6Ly90ZXN0Lzk2M4YPaHR0cDovL3Rlc3QvOTY0 -hg9odHRwOi8vdGVzdC85NjWGD2h0dHA6Ly90ZXN0Lzk2NoYPaHR0cDovL3Rlc3Qv -OTY3hg9odHRwOi8vdGVzdC85NjiGD2h0dHA6Ly90ZXN0Lzk2OYYPaHR0cDovL3Rl -c3QvOTcwhg9odHRwOi8vdGVzdC85NzGGD2h0dHA6Ly90ZXN0Lzk3MoYPaHR0cDov -L3Rlc3QvOTczhg9odHRwOi8vdGVzdC85NzSGD2h0dHA6Ly90ZXN0Lzk3NYYPaHR0 -cDovL3Rlc3QvOTc2hg9odHRwOi8vdGVzdC85NzeGD2h0dHA6Ly90ZXN0Lzk3OIYP -aHR0cDovL3Rlc3QvOTc5hg9odHRwOi8vdGVzdC85ODCGD2h0dHA6Ly90ZXN0Lzk4 -MYYPaHR0cDovL3Rlc3QvOTgyhg9odHRwOi8vdGVzdC85ODOGD2h0dHA6Ly90ZXN0 -Lzk4NIYPaHR0cDovL3Rlc3QvOTg1hg9odHRwOi8vdGVzdC85ODaGD2h0dHA6Ly90 -ZXN0Lzk4N4YPaHR0cDovL3Rlc3QvOTg4hg9odHRwOi8vdGVzdC85ODmGD2h0dHA6 -Ly90ZXN0Lzk5MIYPaHR0cDovL3Rlc3QvOTkxhg9odHRwOi8vdGVzdC85OTKGD2h0 -dHA6Ly90ZXN0Lzk5M4YPaHR0cDovL3Rlc3QvOTk0hg9odHRwOi8vdGVzdC85OTWG -D2h0dHA6Ly90ZXN0Lzk5NoYPaHR0cDovL3Rlc3QvOTk3hg9odHRwOi8vdGVzdC85 -OTiGD2h0dHA6Ly90ZXN0Lzk5OYYQaHR0cDovL3Rlc3QvMTAwMIYQaHR0cDovL3Rl -c3QvMTAwMYYQaHR0cDovL3Rlc3QvMTAwMoYQaHR0cDovL3Rlc3QvMTAwM4YQaHR0 -cDovL3Rlc3QvMTAwNIYQaHR0cDovL3Rlc3QvMTAwNYYQaHR0cDovL3Rlc3QvMTAw -NoYQaHR0cDovL3Rlc3QvMTAwN4YQaHR0cDovL3Rlc3QvMTAwOIYQaHR0cDovL3Rl -c3QvMTAwOYYQaHR0cDovL3Rlc3QvMTAxMIYQaHR0cDovL3Rlc3QvMTAxMYYQaHR0 -cDovL3Rlc3QvMTAxMoYQaHR0cDovL3Rlc3QvMTAxM4YQaHR0cDovL3Rlc3QvMTAx -NIYQaHR0cDovL3Rlc3QvMTAxNYYQaHR0cDovL3Rlc3QvMTAxNoYQaHR0cDovL3Rl -c3QvMTAxN4YQaHR0cDovL3Rlc3QvMTAxOIYQaHR0cDovL3Rlc3QvMTAxOYYQaHR0 -cDovL3Rlc3QvMTAyMIYQaHR0cDovL3Rlc3QvMTAyMYYQaHR0cDovL3Rlc3QvMTAy -MoYQaHR0cDovL3Rlc3QvMTAyM4YQaHR0cDovL3Rlc3QvMTAyNDANBgkqhkiG9w0B -AQsFAAOCAQEACAB/4EB10kM2P+Nsz8FKabIMG6ioa3ru7dAt7uJS2SofXawp9RLi -rzvboG06tAnvdvpSaF8HX5+kUo8d2tq2k1SHR9A8Zn7/G+Me2lJMAEZbDOueuF4e -2/fO3SwPTiMdY5jt5RjoBJyhHs1Y3glDTb+NS22OMummU0AXDOJZQ1UtP6uvqhNI -rACsW98WxyAq6lDveXjJNNXFf48n0FpCOugTAVG8o7lTbx3kc1KN8Mec0UYZqihj -PsxKX2MNHShL4LQ3g9uFjISGfjcVqO2oANoUl/3xyOpuOrcZwW9Tawv/KWAwfbY1 -1rhYb1UyGMZEwwjYxJUle7oTBCY0fNQOoQ== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.serial b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.serial deleted file mode 100644 index 7d65bb030a..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0.serial +++ /dev/null @@ -1 +0,0 @@ -4e051cb473343d0bb73feba2b428796a07e228cc diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.cnf deleted file mode 100644 index 993796c831..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.cnf +++ /dev/null @@ -1,2114 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "t0" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,digitalSignature,keyEncipherment -extendedKeyUsage = serverAuth,clientAuth -subjectAltName = @san_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/t0_1.pem -new_certs_dir = out -serial = out/t0.serial -database = out/t0.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/t0.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/t0.cer - -[crl_info] -URI.0 = http://url-for-crl/t0.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[san_info] -DNS.1 = t0.test -DNS.2 = t1.test -DNS.3 = t2.test -DNS.4 = t3.test -DNS.5 = t4.test -DNS.6 = t5.test -DNS.7 = t6.test -DNS.8 = t7.test -DNS.9 = t8.test -DNS.10 = t9.test -DNS.11 = t10.test -DNS.12 = t11.test -DNS.13 = t12.test -DNS.14 = t13.test -DNS.15 = t14.test -DNS.16 = t15.test -DNS.17 = t16.test -DNS.18 = t17.test -DNS.19 = t18.test -DNS.20 = t19.test -DNS.21 = t20.test -DNS.22 = t21.test -DNS.23 = t22.test -DNS.24 = t23.test -DNS.25 = t24.test -DNS.26 = t25.test -DNS.27 = t26.test -DNS.28 = t27.test -DNS.29 = t28.test -DNS.30 = t29.test -DNS.31 = t30.test -DNS.32 = t31.test -DNS.33 = t32.test -DNS.34 = t33.test -DNS.35 = t34.test -DNS.36 = t35.test -DNS.37 = t36.test -DNS.38 = t37.test -DNS.39 = t38.test -DNS.40 = t39.test -DNS.41 = t40.test -DNS.42 = t41.test -DNS.43 = t42.test -DNS.44 = t43.test -DNS.45 = t44.test -DNS.46 = t45.test -DNS.47 = t46.test -DNS.48 = t47.test -DNS.49 = t48.test -DNS.50 = t49.test -DNS.51 = t50.test -DNS.52 = t51.test -DNS.53 = t52.test -DNS.54 = t53.test -DNS.55 = t54.test -DNS.56 = t55.test -DNS.57 = t56.test -DNS.58 = t57.test -DNS.59 = t58.test -DNS.60 = t59.test -DNS.61 = t60.test -DNS.62 = t61.test -DNS.63 = t62.test -DNS.64 = t63.test -DNS.65 = t64.test -DNS.66 = t65.test -DNS.67 = t66.test -DNS.68 = t67.test -DNS.69 = t68.test -DNS.70 = t69.test -DNS.71 = t70.test -DNS.72 = t71.test -DNS.73 = t72.test -DNS.74 = t73.test -DNS.75 = t74.test -DNS.76 = t75.test -DNS.77 = t76.test -DNS.78 = t77.test -DNS.79 = t78.test -DNS.80 = t79.test -DNS.81 = t80.test -DNS.82 = t81.test -DNS.83 = t82.test -DNS.84 = t83.test -DNS.85 = t84.test -DNS.86 = t85.test -DNS.87 = t86.test -DNS.88 = t87.test -DNS.89 = t88.test -DNS.90 = t89.test -DNS.91 = t90.test -DNS.92 = t91.test -DNS.93 = t92.test -DNS.94 = t93.test -DNS.95 = t94.test -DNS.96 = t95.test -DNS.97 = t96.test -DNS.98 = t97.test -DNS.99 = t98.test -DNS.100 = t99.test -DNS.101 = t100.test -DNS.102 = t101.test -DNS.103 = t102.test -DNS.104 = t103.test -DNS.105 = t104.test -DNS.106 = t105.test -DNS.107 = t106.test -DNS.108 = t107.test -DNS.109 = t108.test -DNS.110 = t109.test -DNS.111 = t110.test -DNS.112 = t111.test -DNS.113 = t112.test -DNS.114 = t113.test -DNS.115 = t114.test -DNS.116 = t115.test -DNS.117 = t116.test -DNS.118 = t117.test -DNS.119 = t118.test -DNS.120 = t119.test -DNS.121 = t120.test -DNS.122 = t121.test -DNS.123 = t122.test -DNS.124 = t123.test -DNS.125 = t124.test -DNS.126 = t125.test -DNS.127 = t126.test -DNS.128 = t127.test -DNS.129 = t128.test -DNS.130 = t129.test -DNS.131 = t130.test -DNS.132 = t131.test -DNS.133 = t132.test -DNS.134 = t133.test -DNS.135 = t134.test -DNS.136 = t135.test -DNS.137 = t136.test -DNS.138 = t137.test -DNS.139 = t138.test -DNS.140 = t139.test -DNS.141 = t140.test -DNS.142 = t141.test -DNS.143 = t142.test -DNS.144 = t143.test -DNS.145 = t144.test -DNS.146 = t145.test -DNS.147 = t146.test -DNS.148 = t147.test -DNS.149 = t148.test -DNS.150 = t149.test -DNS.151 = t150.test -DNS.152 = t151.test -DNS.153 = t152.test -DNS.154 = t153.test -DNS.155 = t154.test -DNS.156 = t155.test -DNS.157 = t156.test -DNS.158 = t157.test -DNS.159 = t158.test -DNS.160 = t159.test -DNS.161 = t160.test -DNS.162 = t161.test -DNS.163 = t162.test -DNS.164 = t163.test -DNS.165 = t164.test -DNS.166 = t165.test -DNS.167 = t166.test -DNS.168 = t167.test -DNS.169 = t168.test -DNS.170 = t169.test -DNS.171 = t170.test -DNS.172 = t171.test -DNS.173 = t172.test -DNS.174 = t173.test -DNS.175 = t174.test -DNS.176 = t175.test -DNS.177 = t176.test -DNS.178 = t177.test -DNS.179 = t178.test -DNS.180 = t179.test -DNS.181 = t180.test -DNS.182 = t181.test -DNS.183 = t182.test -DNS.184 = t183.test -DNS.185 = t184.test -DNS.186 = t185.test -DNS.187 = t186.test -DNS.188 = t187.test -DNS.189 = t188.test -DNS.190 = t189.test -DNS.191 = t190.test -DNS.192 = t191.test -DNS.193 = t192.test -DNS.194 = t193.test -DNS.195 = t194.test -DNS.196 = t195.test -DNS.197 = t196.test -DNS.198 = t197.test -DNS.199 = t198.test -DNS.200 = t199.test -DNS.201 = t200.test -DNS.202 = t201.test -DNS.203 = t202.test -DNS.204 = t203.test -DNS.205 = t204.test -DNS.206 = t205.test -DNS.207 = t206.test -DNS.208 = t207.test -DNS.209 = t208.test -DNS.210 = t209.test -DNS.211 = t210.test -DNS.212 = t211.test -DNS.213 = t212.test -DNS.214 = t213.test -DNS.215 = t214.test -DNS.216 = t215.test -DNS.217 = t216.test -DNS.218 = t217.test -DNS.219 = t218.test -DNS.220 = t219.test -DNS.221 = t220.test -DNS.222 = t221.test -DNS.223 = t222.test -DNS.224 = t223.test -DNS.225 = t224.test -DNS.226 = t225.test -DNS.227 = t226.test -DNS.228 = t227.test -DNS.229 = t228.test -DNS.230 = t229.test -DNS.231 = t230.test -DNS.232 = t231.test -DNS.233 = t232.test -DNS.234 = t233.test -DNS.235 = t234.test -DNS.236 = t235.test -DNS.237 = t236.test -DNS.238 = t237.test -DNS.239 = t238.test -DNS.240 = t239.test -DNS.241 = t240.test -DNS.242 = t241.test -DNS.243 = t242.test -DNS.244 = t243.test -DNS.245 = t244.test -DNS.246 = t245.test -DNS.247 = t246.test -DNS.248 = t247.test -DNS.249 = t248.test -DNS.250 = t249.test -DNS.251 = t250.test -DNS.252 = t251.test -DNS.253 = t252.test -DNS.254 = t253.test -DNS.255 = t254.test -DNS.256 = t255.test -DNS.257 = t256.test -DNS.258 = t257.test -DNS.259 = t258.test -DNS.260 = t259.test -DNS.261 = t260.test -DNS.262 = t261.test -DNS.263 = t262.test -DNS.264 = t263.test -DNS.265 = t264.test -DNS.266 = t265.test -DNS.267 = t266.test -DNS.268 = t267.test -DNS.269 = t268.test -DNS.270 = t269.test -DNS.271 = t270.test -DNS.272 = t271.test -DNS.273 = t272.test -DNS.274 = t273.test -DNS.275 = t274.test -DNS.276 = t275.test -DNS.277 = t276.test -DNS.278 = t277.test -DNS.279 = t278.test -DNS.280 = t279.test -DNS.281 = t280.test -DNS.282 = t281.test -DNS.283 = t282.test -DNS.284 = t283.test -DNS.285 = t284.test -DNS.286 = t285.test -DNS.287 = t286.test -DNS.288 = t287.test -DNS.289 = t288.test -DNS.290 = t289.test -DNS.291 = t290.test -DNS.292 = t291.test -DNS.293 = t292.test -DNS.294 = t293.test -DNS.295 = t294.test -DNS.296 = t295.test -DNS.297 = t296.test -DNS.298 = t297.test -DNS.299 = t298.test -DNS.300 = t299.test -DNS.301 = t300.test -DNS.302 = t301.test -DNS.303 = t302.test -DNS.304 = t303.test -DNS.305 = t304.test -DNS.306 = t305.test -DNS.307 = t306.test -DNS.308 = t307.test -DNS.309 = t308.test -DNS.310 = t309.test -DNS.311 = t310.test -DNS.312 = t311.test -DNS.313 = t312.test -DNS.314 = t313.test -DNS.315 = t314.test -DNS.316 = t315.test -DNS.317 = t316.test -DNS.318 = t317.test -DNS.319 = t318.test -DNS.320 = t319.test -DNS.321 = t320.test -DNS.322 = t321.test -DNS.323 = t322.test -DNS.324 = t323.test -DNS.325 = t324.test -DNS.326 = t325.test -DNS.327 = t326.test -DNS.328 = t327.test -DNS.329 = t328.test -DNS.330 = t329.test -DNS.331 = t330.test -DNS.332 = t331.test -DNS.333 = t332.test -DNS.334 = t333.test -DNS.335 = t334.test -DNS.336 = t335.test -DNS.337 = t336.test -DNS.338 = t337.test -DNS.339 = t338.test -DNS.340 = t339.test -DNS.341 = t340.test -DNS.342 = t341.test -IP.1 = 10.0.0.0 -IP.2 = 10.0.0.1 -IP.3 = 10.0.0.2 -IP.4 = 10.0.0.3 -IP.5 = 10.0.0.4 -IP.6 = 10.0.0.5 -IP.7 = 10.0.0.6 -IP.8 = 10.0.0.7 -IP.9 = 10.0.0.8 -IP.10 = 10.0.0.9 -IP.11 = 10.0.0.10 -IP.12 = 10.0.0.11 -IP.13 = 10.0.0.12 -IP.14 = 10.0.0.13 -IP.15 = 10.0.0.14 -IP.16 = 10.0.0.15 -IP.17 = 10.0.0.16 -IP.18 = 10.0.0.17 -IP.19 = 10.0.0.18 -IP.20 = 10.0.0.19 -IP.21 = 10.0.0.20 -IP.22 = 10.0.0.21 -IP.23 = 10.0.0.22 -IP.24 = 10.0.0.23 -IP.25 = 10.0.0.24 -IP.26 = 10.0.0.25 -IP.27 = 10.0.0.26 -IP.28 = 10.0.0.27 -IP.29 = 10.0.0.28 -IP.30 = 10.0.0.29 -IP.31 = 10.0.0.30 -IP.32 = 10.0.0.31 -IP.33 = 10.0.0.32 -IP.34 = 10.0.0.33 -IP.35 = 10.0.0.34 -IP.36 = 10.0.0.35 -IP.37 = 10.0.0.36 -IP.38 = 10.0.0.37 -IP.39 = 10.0.0.38 -IP.40 = 10.0.0.39 -IP.41 = 10.0.0.40 -IP.42 = 10.0.0.41 -IP.43 = 10.0.0.42 -IP.44 = 10.0.0.43 -IP.45 = 10.0.0.44 -IP.46 = 10.0.0.45 -IP.47 = 10.0.0.46 -IP.48 = 10.0.0.47 -IP.49 = 10.0.0.48 -IP.50 = 10.0.0.49 -IP.51 = 10.0.0.50 -IP.52 = 10.0.0.51 -IP.53 = 10.0.0.52 -IP.54 = 10.0.0.53 -IP.55 = 10.0.0.54 -IP.56 = 10.0.0.55 -IP.57 = 10.0.0.56 -IP.58 = 10.0.0.57 -IP.59 = 10.0.0.58 -IP.60 = 10.0.0.59 -IP.61 = 10.0.0.60 -IP.62 = 10.0.0.61 -IP.63 = 10.0.0.62 -IP.64 = 10.0.0.63 -IP.65 = 10.0.0.64 -IP.66 = 10.0.0.65 -IP.67 = 10.0.0.66 -IP.68 = 10.0.0.67 -IP.69 = 10.0.0.68 -IP.70 = 10.0.0.69 -IP.71 = 10.0.0.70 -IP.72 = 10.0.0.71 -IP.73 = 10.0.0.72 -IP.74 = 10.0.0.73 -IP.75 = 10.0.0.74 -IP.76 = 10.0.0.75 -IP.77 = 10.0.0.76 -IP.78 = 10.0.0.77 -IP.79 = 10.0.0.78 -IP.80 = 10.0.0.79 -IP.81 = 10.0.0.80 -IP.82 = 10.0.0.81 -IP.83 = 10.0.0.82 -IP.84 = 10.0.0.83 -IP.85 = 10.0.0.84 -IP.86 = 10.0.0.85 -IP.87 = 10.0.0.86 -IP.88 = 10.0.0.87 -IP.89 = 10.0.0.88 -IP.90 = 10.0.0.89 -IP.91 = 10.0.0.90 -IP.92 = 10.0.0.91 -IP.93 = 10.0.0.92 -IP.94 = 10.0.0.93 -IP.95 = 10.0.0.94 -IP.96 = 10.0.0.95 -IP.97 = 10.0.0.96 -IP.98 = 10.0.0.97 -IP.99 = 10.0.0.98 -IP.100 = 10.0.0.99 -IP.101 = 10.0.0.100 -IP.102 = 10.0.0.101 -IP.103 = 10.0.0.102 -IP.104 = 10.0.0.103 -IP.105 = 10.0.0.104 -IP.106 = 10.0.0.105 -IP.107 = 10.0.0.106 -IP.108 = 10.0.0.107 -IP.109 = 10.0.0.108 -IP.110 = 10.0.0.109 -IP.111 = 10.0.0.110 -IP.112 = 10.0.0.111 -IP.113 = 10.0.0.112 -IP.114 = 10.0.0.113 -IP.115 = 10.0.0.114 -IP.116 = 10.0.0.115 -IP.117 = 10.0.0.116 -IP.118 = 10.0.0.117 -IP.119 = 10.0.0.118 -IP.120 = 10.0.0.119 -IP.121 = 10.0.0.120 -IP.122 = 10.0.0.121 -IP.123 = 10.0.0.122 -IP.124 = 10.0.0.123 -IP.125 = 10.0.0.124 -IP.126 = 10.0.0.125 -IP.127 = 10.0.0.126 -IP.128 = 10.0.0.127 -IP.129 = 10.0.0.128 -IP.130 = 10.0.0.129 -IP.131 = 10.0.0.130 -IP.132 = 10.0.0.131 -IP.133 = 10.0.0.132 -IP.134 = 10.0.0.133 -IP.135 = 10.0.0.134 -IP.136 = 10.0.0.135 -IP.137 = 10.0.0.136 -IP.138 = 10.0.0.137 -IP.139 = 10.0.0.138 -IP.140 = 10.0.0.139 -IP.141 = 10.0.0.140 -IP.142 = 10.0.0.141 -IP.143 = 10.0.0.142 -IP.144 = 10.0.0.143 -IP.145 = 10.0.0.144 -IP.146 = 10.0.0.145 -IP.147 = 10.0.0.146 -IP.148 = 10.0.0.147 -IP.149 = 10.0.0.148 -IP.150 = 10.0.0.149 -IP.151 = 10.0.0.150 -IP.152 = 10.0.0.151 -IP.153 = 10.0.0.152 -IP.154 = 10.0.0.153 -IP.155 = 10.0.0.154 -IP.156 = 10.0.0.155 -IP.157 = 10.0.0.156 -IP.158 = 10.0.0.157 -IP.159 = 10.0.0.158 -IP.160 = 10.0.0.159 -IP.161 = 10.0.0.160 -IP.162 = 10.0.0.161 -IP.163 = 10.0.0.162 -IP.164 = 10.0.0.163 -IP.165 = 10.0.0.164 -IP.166 = 10.0.0.165 -IP.167 = 10.0.0.166 -IP.168 = 10.0.0.167 -IP.169 = 10.0.0.168 -IP.170 = 10.0.0.169 -IP.171 = 10.0.0.170 -IP.172 = 10.0.0.171 -IP.173 = 10.0.0.172 -IP.174 = 10.0.0.173 -IP.175 = 10.0.0.174 -IP.176 = 10.0.0.175 -IP.177 = 10.0.0.176 -IP.178 = 10.0.0.177 -IP.179 = 10.0.0.178 -IP.180 = 10.0.0.179 -IP.181 = 10.0.0.180 -IP.182 = 10.0.0.181 -IP.183 = 10.0.0.182 -IP.184 = 10.0.0.183 -IP.185 = 10.0.0.184 -IP.186 = 10.0.0.185 -IP.187 = 10.0.0.186 -IP.188 = 10.0.0.187 -IP.189 = 10.0.0.188 -IP.190 = 10.0.0.189 -IP.191 = 10.0.0.190 -IP.192 = 10.0.0.191 -IP.193 = 10.0.0.192 -IP.194 = 10.0.0.193 -IP.195 = 10.0.0.194 -IP.196 = 10.0.0.195 -IP.197 = 10.0.0.196 -IP.198 = 10.0.0.197 -IP.199 = 10.0.0.198 -IP.200 = 10.0.0.199 -IP.201 = 10.0.0.200 -IP.202 = 10.0.0.201 -IP.203 = 10.0.0.202 -IP.204 = 10.0.0.203 -IP.205 = 10.0.0.204 -IP.206 = 10.0.0.205 -IP.207 = 10.0.0.206 -IP.208 = 10.0.0.207 -IP.209 = 10.0.0.208 -IP.210 = 10.0.0.209 -IP.211 = 10.0.0.210 -IP.212 = 10.0.0.211 -IP.213 = 10.0.0.212 -IP.214 = 10.0.0.213 -IP.215 = 10.0.0.214 -IP.216 = 10.0.0.215 -IP.217 = 10.0.0.216 -IP.218 = 10.0.0.217 -IP.219 = 10.0.0.218 -IP.220 = 10.0.0.219 -IP.221 = 10.0.0.220 -IP.222 = 10.0.0.221 -IP.223 = 10.0.0.222 -IP.224 = 10.0.0.223 -IP.225 = 10.0.0.224 -IP.226 = 10.0.0.225 -IP.227 = 10.0.0.226 -IP.228 = 10.0.0.227 -IP.229 = 10.0.0.228 -IP.230 = 10.0.0.229 -IP.231 = 10.0.0.230 -IP.232 = 10.0.0.231 -IP.233 = 10.0.0.232 -IP.234 = 10.0.0.233 -IP.235 = 10.0.0.234 -IP.236 = 10.0.0.235 -IP.237 = 10.0.0.236 -IP.238 = 10.0.0.237 -IP.239 = 10.0.0.238 -IP.240 = 10.0.0.239 -IP.241 = 10.0.0.240 -IP.242 = 10.0.0.241 -IP.243 = 10.0.0.242 -IP.244 = 10.0.0.243 -IP.245 = 10.0.0.244 -IP.246 = 10.0.0.245 -IP.247 = 10.0.0.246 -IP.248 = 10.0.0.247 -IP.249 = 10.0.0.248 -IP.250 = 10.0.0.249 -IP.251 = 10.0.0.250 -IP.252 = 10.0.0.251 -IP.253 = 10.0.0.252 -IP.254 = 10.0.0.253 -IP.255 = 10.0.0.254 -IP.256 = 10.0.0.255 -IP.257 = 10.0.1.0 -IP.258 = 10.0.1.1 -IP.259 = 10.0.1.2 -IP.260 = 10.0.1.3 -IP.261 = 10.0.1.4 -IP.262 = 10.0.1.5 -IP.263 = 10.0.1.6 -IP.264 = 10.0.1.7 -IP.265 = 10.0.1.8 -IP.266 = 10.0.1.9 -IP.267 = 10.0.1.10 -IP.268 = 10.0.1.11 -IP.269 = 10.0.1.12 -IP.270 = 10.0.1.13 -IP.271 = 10.0.1.14 -IP.272 = 10.0.1.15 -IP.273 = 10.0.1.16 -IP.274 = 10.0.1.17 -IP.275 = 10.0.1.18 -IP.276 = 10.0.1.19 -IP.277 = 10.0.1.20 -IP.278 = 10.0.1.21 -IP.279 = 10.0.1.22 -IP.280 = 10.0.1.23 -IP.281 = 10.0.1.24 -IP.282 = 10.0.1.25 -IP.283 = 10.0.1.26 -IP.284 = 10.0.1.27 -IP.285 = 10.0.1.28 -IP.286 = 10.0.1.29 -IP.287 = 10.0.1.30 -IP.288 = 10.0.1.31 -IP.289 = 10.0.1.32 -IP.290 = 10.0.1.33 -IP.291 = 10.0.1.34 -IP.292 = 10.0.1.35 -IP.293 = 10.0.1.36 -IP.294 = 10.0.1.37 -IP.295 = 10.0.1.38 -IP.296 = 10.0.1.39 -IP.297 = 10.0.1.40 -IP.298 = 10.0.1.41 -IP.299 = 10.0.1.42 -IP.300 = 10.0.1.43 -IP.301 = 10.0.1.44 -IP.302 = 10.0.1.45 -IP.303 = 10.0.1.46 -IP.304 = 10.0.1.47 -IP.305 = 10.0.1.48 -IP.306 = 10.0.1.49 -IP.307 = 10.0.1.50 -IP.308 = 10.0.1.51 -IP.309 = 10.0.1.52 -IP.310 = 10.0.1.53 -IP.311 = 10.0.1.54 -IP.312 = 10.0.1.55 -IP.313 = 10.0.1.56 -IP.314 = 10.0.1.57 -IP.315 = 10.0.1.58 -IP.316 = 10.0.1.59 -IP.317 = 10.0.1.60 -IP.318 = 10.0.1.61 -IP.319 = 10.0.1.62 -IP.320 = 10.0.1.63 -IP.321 = 10.0.1.64 -IP.322 = 10.0.1.65 -IP.323 = 10.0.1.66 -IP.324 = 10.0.1.67 -IP.325 = 10.0.1.68 -IP.326 = 10.0.1.69 -IP.327 = 10.0.1.70 -IP.328 = 10.0.1.71 -IP.329 = 10.0.1.72 -IP.330 = 10.0.1.73 -IP.331 = 10.0.1.74 -IP.332 = 10.0.1.75 -IP.333 = 10.0.1.76 -IP.334 = 10.0.1.77 -IP.335 = 10.0.1.78 -IP.336 = 10.0.1.79 -IP.337 = 10.0.1.80 -IP.338 = 10.0.1.81 -IP.339 = 10.0.1.82 -IP.340 = 10.0.1.83 -IP.341 = 10.0.1.84 -dirName.1 = san_dirname1 -dirName.2 = san_dirname2 -dirName.3 = san_dirname3 -dirName.4 = san_dirname4 -dirName.5 = san_dirname5 -dirName.6 = san_dirname6 -dirName.7 = san_dirname7 -dirName.8 = san_dirname8 -dirName.9 = san_dirname9 -dirName.10 = san_dirname10 -dirName.11 = san_dirname11 -dirName.12 = san_dirname12 -dirName.13 = san_dirname13 -dirName.14 = san_dirname14 -dirName.15 = san_dirname15 -dirName.16 = san_dirname16 -dirName.17 = san_dirname17 -dirName.18 = san_dirname18 -dirName.19 = san_dirname19 -dirName.20 = san_dirname20 -dirName.21 = san_dirname21 -dirName.22 = san_dirname22 -dirName.23 = san_dirname23 -dirName.24 = san_dirname24 -dirName.25 = san_dirname25 -dirName.26 = san_dirname26 -dirName.27 = san_dirname27 -dirName.28 = san_dirname28 -dirName.29 = san_dirname29 -dirName.30 = san_dirname30 -dirName.31 = san_dirname31 -dirName.32 = san_dirname32 -dirName.33 = san_dirname33 -dirName.34 = san_dirname34 -dirName.35 = san_dirname35 -dirName.36 = san_dirname36 -dirName.37 = san_dirname37 -dirName.38 = san_dirname38 -dirName.39 = san_dirname39 -dirName.40 = san_dirname40 -dirName.41 = san_dirname41 -dirName.42 = san_dirname42 -dirName.43 = san_dirname43 -dirName.44 = san_dirname44 -dirName.45 = san_dirname45 -dirName.46 = san_dirname46 -dirName.47 = san_dirname47 -dirName.48 = san_dirname48 -dirName.49 = san_dirname49 -dirName.50 = san_dirname50 -dirName.51 = san_dirname51 -dirName.52 = san_dirname52 -dirName.53 = san_dirname53 -dirName.54 = san_dirname54 -dirName.55 = san_dirname55 -dirName.56 = san_dirname56 -dirName.57 = san_dirname57 -dirName.58 = san_dirname58 -dirName.59 = san_dirname59 -dirName.60 = san_dirname60 -dirName.61 = san_dirname61 -dirName.62 = san_dirname62 -dirName.63 = san_dirname63 -dirName.64 = san_dirname64 -dirName.65 = san_dirname65 -dirName.66 = san_dirname66 -dirName.67 = san_dirname67 -dirName.68 = san_dirname68 -dirName.69 = san_dirname69 -dirName.70 = san_dirname70 -dirName.71 = san_dirname71 -dirName.72 = san_dirname72 -dirName.73 = san_dirname73 -dirName.74 = san_dirname74 -dirName.75 = san_dirname75 -dirName.76 = san_dirname76 -dirName.77 = san_dirname77 -dirName.78 = san_dirname78 -dirName.79 = san_dirname79 -dirName.80 = san_dirname80 -dirName.81 = san_dirname81 -dirName.82 = san_dirname82 -dirName.83 = san_dirname83 -dirName.84 = san_dirname84 -dirName.85 = san_dirname85 -dirName.86 = san_dirname86 -dirName.87 = san_dirname87 -dirName.88 = san_dirname88 -dirName.89 = san_dirname89 -dirName.90 = san_dirname90 -dirName.91 = san_dirname91 -dirName.92 = san_dirname92 -dirName.93 = san_dirname93 -dirName.94 = san_dirname94 -dirName.95 = san_dirname95 -dirName.96 = san_dirname96 -dirName.97 = san_dirname97 -dirName.98 = san_dirname98 -dirName.99 = san_dirname99 -dirName.100 = san_dirname100 -dirName.101 = san_dirname101 -dirName.102 = san_dirname102 -dirName.103 = san_dirname103 -dirName.104 = san_dirname104 -dirName.105 = san_dirname105 -dirName.106 = san_dirname106 -dirName.107 = san_dirname107 -dirName.108 = san_dirname108 -dirName.109 = san_dirname109 -dirName.110 = san_dirname110 -dirName.111 = san_dirname111 -dirName.112 = san_dirname112 -dirName.113 = san_dirname113 -dirName.114 = san_dirname114 -dirName.115 = san_dirname115 -dirName.116 = san_dirname116 -dirName.117 = san_dirname117 -dirName.118 = san_dirname118 -dirName.119 = san_dirname119 -dirName.120 = san_dirname120 -dirName.121 = san_dirname121 -dirName.122 = san_dirname122 -dirName.123 = san_dirname123 -dirName.124 = san_dirname124 -dirName.125 = san_dirname125 -dirName.126 = san_dirname126 -dirName.127 = san_dirname127 -dirName.128 = san_dirname128 -dirName.129 = san_dirname129 -dirName.130 = san_dirname130 -dirName.131 = san_dirname131 -dirName.132 = san_dirname132 -dirName.133 = san_dirname133 -dirName.134 = san_dirname134 -dirName.135 = san_dirname135 -dirName.136 = san_dirname136 -dirName.137 = san_dirname137 -dirName.138 = san_dirname138 -dirName.139 = san_dirname139 -dirName.140 = san_dirname140 -dirName.141 = san_dirname141 -dirName.142 = san_dirname142 -dirName.143 = san_dirname143 -dirName.144 = san_dirname144 -dirName.145 = san_dirname145 -dirName.146 = san_dirname146 -dirName.147 = san_dirname147 -dirName.148 = san_dirname148 -dirName.149 = san_dirname149 -dirName.150 = san_dirname150 -dirName.151 = san_dirname151 -dirName.152 = san_dirname152 -dirName.153 = san_dirname153 -dirName.154 = san_dirname154 -dirName.155 = san_dirname155 -dirName.156 = san_dirname156 -dirName.157 = san_dirname157 -dirName.158 = san_dirname158 -dirName.159 = san_dirname159 -dirName.160 = san_dirname160 -dirName.161 = san_dirname161 -dirName.162 = san_dirname162 -dirName.163 = san_dirname163 -dirName.164 = san_dirname164 -dirName.165 = san_dirname165 -dirName.166 = san_dirname166 -dirName.167 = san_dirname167 -dirName.168 = san_dirname168 -dirName.169 = san_dirname169 -dirName.170 = san_dirname170 -dirName.171 = san_dirname171 -dirName.172 = san_dirname172 -dirName.173 = san_dirname173 -dirName.174 = san_dirname174 -dirName.175 = san_dirname175 -dirName.176 = san_dirname176 -dirName.177 = san_dirname177 -dirName.178 = san_dirname178 -dirName.179 = san_dirname179 -dirName.180 = san_dirname180 -dirName.181 = san_dirname181 -dirName.182 = san_dirname182 -dirName.183 = san_dirname183 -dirName.184 = san_dirname184 -dirName.185 = san_dirname185 -dirName.186 = san_dirname186 -dirName.187 = san_dirname187 -dirName.188 = san_dirname188 -dirName.189 = san_dirname189 -dirName.190 = san_dirname190 -dirName.191 = san_dirname191 -dirName.192 = san_dirname192 -dirName.193 = san_dirname193 -dirName.194 = san_dirname194 -dirName.195 = san_dirname195 -dirName.196 = san_dirname196 -dirName.197 = san_dirname197 -dirName.198 = san_dirname198 -dirName.199 = san_dirname199 -dirName.200 = san_dirname200 -dirName.201 = san_dirname201 -dirName.202 = san_dirname202 -dirName.203 = san_dirname203 -dirName.204 = san_dirname204 -dirName.205 = san_dirname205 -dirName.206 = san_dirname206 -dirName.207 = san_dirname207 -dirName.208 = san_dirname208 -dirName.209 = san_dirname209 -dirName.210 = san_dirname210 -dirName.211 = san_dirname211 -dirName.212 = san_dirname212 -dirName.213 = san_dirname213 -dirName.214 = san_dirname214 -dirName.215 = san_dirname215 -dirName.216 = san_dirname216 -dirName.217 = san_dirname217 -dirName.218 = san_dirname218 -dirName.219 = san_dirname219 -dirName.220 = san_dirname220 -dirName.221 = san_dirname221 -dirName.222 = san_dirname222 -dirName.223 = san_dirname223 -dirName.224 = san_dirname224 -dirName.225 = san_dirname225 -dirName.226 = san_dirname226 -dirName.227 = san_dirname227 -dirName.228 = san_dirname228 -dirName.229 = san_dirname229 -dirName.230 = san_dirname230 -dirName.231 = san_dirname231 -dirName.232 = san_dirname232 -dirName.233 = san_dirname233 -dirName.234 = san_dirname234 -dirName.235 = san_dirname235 -dirName.236 = san_dirname236 -dirName.237 = san_dirname237 -dirName.238 = san_dirname238 -dirName.239 = san_dirname239 -dirName.240 = san_dirname240 -dirName.241 = san_dirname241 -dirName.242 = san_dirname242 -dirName.243 = san_dirname243 -dirName.244 = san_dirname244 -dirName.245 = san_dirname245 -dirName.246 = san_dirname246 -dirName.247 = san_dirname247 -dirName.248 = san_dirname248 -dirName.249 = san_dirname249 -dirName.250 = san_dirname250 -dirName.251 = san_dirname251 -dirName.252 = san_dirname252 -dirName.253 = san_dirname253 -dirName.254 = san_dirname254 -dirName.255 = san_dirname255 -dirName.256 = san_dirname256 -dirName.257 = san_dirname257 -dirName.258 = san_dirname258 -dirName.259 = san_dirname259 -dirName.260 = san_dirname260 -dirName.261 = san_dirname261 -dirName.262 = san_dirname262 -dirName.263 = san_dirname263 -dirName.264 = san_dirname264 -dirName.265 = san_dirname265 -dirName.266 = san_dirname266 -dirName.267 = san_dirname267 -dirName.268 = san_dirname268 -dirName.269 = san_dirname269 -dirName.270 = san_dirname270 -dirName.271 = san_dirname271 -dirName.272 = san_dirname272 -dirName.273 = san_dirname273 -dirName.274 = san_dirname274 -dirName.275 = san_dirname275 -dirName.276 = san_dirname276 -dirName.277 = san_dirname277 -dirName.278 = san_dirname278 -dirName.279 = san_dirname279 -dirName.280 = san_dirname280 -dirName.281 = san_dirname281 -dirName.282 = san_dirname282 -dirName.283 = san_dirname283 -dirName.284 = san_dirname284 -dirName.285 = san_dirname285 -dirName.286 = san_dirname286 -dirName.287 = san_dirname287 -dirName.288 = san_dirname288 -dirName.289 = san_dirname289 -dirName.290 = san_dirname290 -dirName.291 = san_dirname291 -dirName.292 = san_dirname292 -dirName.293 = san_dirname293 -dirName.294 = san_dirname294 -dirName.295 = san_dirname295 -dirName.296 = san_dirname296 -dirName.297 = san_dirname297 -dirName.298 = san_dirname298 -dirName.299 = san_dirname299 -dirName.300 = san_dirname300 -dirName.301 = san_dirname301 -dirName.302 = san_dirname302 -dirName.303 = san_dirname303 -dirName.304 = san_dirname304 -dirName.305 = san_dirname305 -dirName.306 = san_dirname306 -dirName.307 = san_dirname307 -dirName.308 = san_dirname308 -dirName.309 = san_dirname309 -dirName.310 = san_dirname310 -dirName.311 = san_dirname311 -dirName.312 = san_dirname312 -dirName.313 = san_dirname313 -dirName.314 = san_dirname314 -dirName.315 = san_dirname315 -dirName.316 = san_dirname316 -dirName.317 = san_dirname317 -dirName.318 = san_dirname318 -dirName.319 = san_dirname319 -dirName.320 = san_dirname320 -dirName.321 = san_dirname321 -dirName.322 = san_dirname322 -dirName.323 = san_dirname323 -dirName.324 = san_dirname324 -dirName.325 = san_dirname325 -dirName.326 = san_dirname326 -dirName.327 = san_dirname327 -dirName.328 = san_dirname328 -dirName.329 = san_dirname329 -dirName.330 = san_dirname330 -dirName.331 = san_dirname331 -dirName.332 = san_dirname332 -dirName.333 = san_dirname333 -dirName.334 = san_dirname334 -dirName.335 = san_dirname335 -dirName.336 = san_dirname336 -dirName.337 = san_dirname337 -dirName.338 = san_dirname338 -dirName.339 = san_dirname339 -dirName.340 = san_dirname340 -dirName.341 = san_dirname341 - -[san_dirname1] -commonName = "t0 - -[san_dirname2] -commonName = "t1 - -[san_dirname3] -commonName = "t2 - -[san_dirname4] -commonName = "t3 - -[san_dirname5] -commonName = "t4 - -[san_dirname6] -commonName = "t5 - -[san_dirname7] -commonName = "t6 - -[san_dirname8] -commonName = "t7 - -[san_dirname9] -commonName = "t8 - -[san_dirname10] -commonName = "t9 - -[san_dirname11] -commonName = "t10 - -[san_dirname12] -commonName = "t11 - -[san_dirname13] -commonName = "t12 - -[san_dirname14] -commonName = "t13 - -[san_dirname15] -commonName = "t14 - -[san_dirname16] -commonName = "t15 - -[san_dirname17] -commonName = "t16 - -[san_dirname18] -commonName = "t17 - -[san_dirname19] -commonName = "t18 - -[san_dirname20] -commonName = "t19 - -[san_dirname21] -commonName = "t20 - -[san_dirname22] -commonName = "t21 - -[san_dirname23] -commonName = "t22 - -[san_dirname24] -commonName = "t23 - -[san_dirname25] -commonName = "t24 - -[san_dirname26] -commonName = "t25 - -[san_dirname27] -commonName = "t26 - -[san_dirname28] -commonName = "t27 - -[san_dirname29] -commonName = "t28 - -[san_dirname30] -commonName = "t29 - -[san_dirname31] -commonName = "t30 - -[san_dirname32] -commonName = "t31 - -[san_dirname33] -commonName = "t32 - -[san_dirname34] -commonName = "t33 - -[san_dirname35] -commonName = "t34 - -[san_dirname36] -commonName = "t35 - -[san_dirname37] -commonName = "t36 - -[san_dirname38] -commonName = "t37 - -[san_dirname39] -commonName = "t38 - -[san_dirname40] -commonName = "t39 - -[san_dirname41] -commonName = "t40 - -[san_dirname42] -commonName = "t41 - -[san_dirname43] -commonName = "t42 - -[san_dirname44] -commonName = "t43 - -[san_dirname45] -commonName = "t44 - -[san_dirname46] -commonName = "t45 - -[san_dirname47] -commonName = "t46 - -[san_dirname48] -commonName = "t47 - -[san_dirname49] -commonName = "t48 - -[san_dirname50] -commonName = "t49 - -[san_dirname51] -commonName = "t50 - -[san_dirname52] -commonName = "t51 - -[san_dirname53] -commonName = "t52 - -[san_dirname54] -commonName = "t53 - -[san_dirname55] -commonName = "t54 - -[san_dirname56] -commonName = "t55 - -[san_dirname57] -commonName = "t56 - -[san_dirname58] -commonName = "t57 - -[san_dirname59] -commonName = "t58 - -[san_dirname60] -commonName = "t59 - -[san_dirname61] -commonName = "t60 - -[san_dirname62] -commonName = "t61 - -[san_dirname63] -commonName = "t62 - -[san_dirname64] -commonName = "t63 - -[san_dirname65] -commonName = "t64 - -[san_dirname66] -commonName = "t65 - -[san_dirname67] -commonName = "t66 - -[san_dirname68] -commonName = "t67 - -[san_dirname69] -commonName = "t68 - -[san_dirname70] -commonName = "t69 - -[san_dirname71] -commonName = "t70 - -[san_dirname72] -commonName = "t71 - -[san_dirname73] -commonName = "t72 - -[san_dirname74] -commonName = "t73 - -[san_dirname75] -commonName = "t74 - -[san_dirname76] -commonName = "t75 - -[san_dirname77] -commonName = "t76 - -[san_dirname78] -commonName = "t77 - -[san_dirname79] -commonName = "t78 - -[san_dirname80] -commonName = "t79 - -[san_dirname81] -commonName = "t80 - -[san_dirname82] -commonName = "t81 - -[san_dirname83] -commonName = "t82 - -[san_dirname84] -commonName = "t83 - -[san_dirname85] -commonName = "t84 - -[san_dirname86] -commonName = "t85 - -[san_dirname87] -commonName = "t86 - -[san_dirname88] -commonName = "t87 - -[san_dirname89] -commonName = "t88 - -[san_dirname90] -commonName = "t89 - -[san_dirname91] -commonName = "t90 - -[san_dirname92] -commonName = "t91 - -[san_dirname93] -commonName = "t92 - -[san_dirname94] -commonName = "t93 - -[san_dirname95] -commonName = "t94 - -[san_dirname96] -commonName = "t95 - -[san_dirname97] -commonName = "t96 - -[san_dirname98] -commonName = "t97 - -[san_dirname99] -commonName = "t98 - -[san_dirname100] -commonName = "t99 - -[san_dirname101] -commonName = "t100 - -[san_dirname102] -commonName = "t101 - -[san_dirname103] -commonName = "t102 - -[san_dirname104] -commonName = "t103 - -[san_dirname105] -commonName = "t104 - -[san_dirname106] -commonName = "t105 - -[san_dirname107] -commonName = "t106 - -[san_dirname108] -commonName = "t107 - -[san_dirname109] -commonName = "t108 - -[san_dirname110] -commonName = "t109 - -[san_dirname111] -commonName = "t110 - -[san_dirname112] -commonName = "t111 - -[san_dirname113] -commonName = "t112 - -[san_dirname114] -commonName = "t113 - -[san_dirname115] -commonName = "t114 - -[san_dirname116] -commonName = "t115 - -[san_dirname117] -commonName = "t116 - -[san_dirname118] -commonName = "t117 - -[san_dirname119] -commonName = "t118 - -[san_dirname120] -commonName = "t119 - -[san_dirname121] -commonName = "t120 - -[san_dirname122] -commonName = "t121 - -[san_dirname123] -commonName = "t122 - -[san_dirname124] -commonName = "t123 - -[san_dirname125] -commonName = "t124 - -[san_dirname126] -commonName = "t125 - -[san_dirname127] -commonName = "t126 - -[san_dirname128] -commonName = "t127 - -[san_dirname129] -commonName = "t128 - -[san_dirname130] -commonName = "t129 - -[san_dirname131] -commonName = "t130 - -[san_dirname132] -commonName = "t131 - -[san_dirname133] -commonName = "t132 - -[san_dirname134] -commonName = "t133 - -[san_dirname135] -commonName = "t134 - -[san_dirname136] -commonName = "t135 - -[san_dirname137] -commonName = "t136 - -[san_dirname138] -commonName = "t137 - -[san_dirname139] -commonName = "t138 - -[san_dirname140] -commonName = "t139 - -[san_dirname141] -commonName = "t140 - -[san_dirname142] -commonName = "t141 - -[san_dirname143] -commonName = "t142 - -[san_dirname144] -commonName = "t143 - -[san_dirname145] -commonName = "t144 - -[san_dirname146] -commonName = "t145 - -[san_dirname147] -commonName = "t146 - -[san_dirname148] -commonName = "t147 - -[san_dirname149] -commonName = "t148 - -[san_dirname150] -commonName = "t149 - -[san_dirname151] -commonName = "t150 - -[san_dirname152] -commonName = "t151 - -[san_dirname153] -commonName = "t152 - -[san_dirname154] -commonName = "t153 - -[san_dirname155] -commonName = "t154 - -[san_dirname156] -commonName = "t155 - -[san_dirname157] -commonName = "t156 - -[san_dirname158] -commonName = "t157 - -[san_dirname159] -commonName = "t158 - -[san_dirname160] -commonName = "t159 - -[san_dirname161] -commonName = "t160 - -[san_dirname162] -commonName = "t161 - -[san_dirname163] -commonName = "t162 - -[san_dirname164] -commonName = "t163 - -[san_dirname165] -commonName = "t164 - -[san_dirname166] -commonName = "t165 - -[san_dirname167] -commonName = "t166 - -[san_dirname168] -commonName = "t167 - -[san_dirname169] -commonName = "t168 - -[san_dirname170] -commonName = "t169 - -[san_dirname171] -commonName = "t170 - -[san_dirname172] -commonName = "t171 - -[san_dirname173] -commonName = "t172 - -[san_dirname174] -commonName = "t173 - -[san_dirname175] -commonName = "t174 - -[san_dirname176] -commonName = "t175 - -[san_dirname177] -commonName = "t176 - -[san_dirname178] -commonName = "t177 - -[san_dirname179] -commonName = "t178 - -[san_dirname180] -commonName = "t179 - -[san_dirname181] -commonName = "t180 - -[san_dirname182] -commonName = "t181 - -[san_dirname183] -commonName = "t182 - -[san_dirname184] -commonName = "t183 - -[san_dirname185] -commonName = "t184 - -[san_dirname186] -commonName = "t185 - -[san_dirname187] -commonName = "t186 - -[san_dirname188] -commonName = "t187 - -[san_dirname189] -commonName = "t188 - -[san_dirname190] -commonName = "t189 - -[san_dirname191] -commonName = "t190 - -[san_dirname192] -commonName = "t191 - -[san_dirname193] -commonName = "t192 - -[san_dirname194] -commonName = "t193 - -[san_dirname195] -commonName = "t194 - -[san_dirname196] -commonName = "t195 - -[san_dirname197] -commonName = "t196 - -[san_dirname198] -commonName = "t197 - -[san_dirname199] -commonName = "t198 - -[san_dirname200] -commonName = "t199 - -[san_dirname201] -commonName = "t200 - -[san_dirname202] -commonName = "t201 - -[san_dirname203] -commonName = "t202 - -[san_dirname204] -commonName = "t203 - -[san_dirname205] -commonName = "t204 - -[san_dirname206] -commonName = "t205 - -[san_dirname207] -commonName = "t206 - -[san_dirname208] -commonName = "t207 - -[san_dirname209] -commonName = "t208 - -[san_dirname210] -commonName = "t209 - -[san_dirname211] -commonName = "t210 - -[san_dirname212] -commonName = "t211 - -[san_dirname213] -commonName = "t212 - -[san_dirname214] -commonName = "t213 - -[san_dirname215] -commonName = "t214 - -[san_dirname216] -commonName = "t215 - -[san_dirname217] -commonName = "t216 - -[san_dirname218] -commonName = "t217 - -[san_dirname219] -commonName = "t218 - -[san_dirname220] -commonName = "t219 - -[san_dirname221] -commonName = "t220 - -[san_dirname222] -commonName = "t221 - -[san_dirname223] -commonName = "t222 - -[san_dirname224] -commonName = "t223 - -[san_dirname225] -commonName = "t224 - -[san_dirname226] -commonName = "t225 - -[san_dirname227] -commonName = "t226 - -[san_dirname228] -commonName = "t227 - -[san_dirname229] -commonName = "t228 - -[san_dirname230] -commonName = "t229 - -[san_dirname231] -commonName = "t230 - -[san_dirname232] -commonName = "t231 - -[san_dirname233] -commonName = "t232 - -[san_dirname234] -commonName = "t233 - -[san_dirname235] -commonName = "t234 - -[san_dirname236] -commonName = "t235 - -[san_dirname237] -commonName = "t236 - -[san_dirname238] -commonName = "t237 - -[san_dirname239] -commonName = "t238 - -[san_dirname240] -commonName = "t239 - -[san_dirname241] -commonName = "t240 - -[san_dirname242] -commonName = "t241 - -[san_dirname243] -commonName = "t242 - -[san_dirname244] -commonName = "t243 - -[san_dirname245] -commonName = "t244 - -[san_dirname246] -commonName = "t245 - -[san_dirname247] -commonName = "t246 - -[san_dirname248] -commonName = "t247 - -[san_dirname249] -commonName = "t248 - -[san_dirname250] -commonName = "t249 - -[san_dirname251] -commonName = "t250 - -[san_dirname252] -commonName = "t251 - -[san_dirname253] -commonName = "t252 - -[san_dirname254] -commonName = "t253 - -[san_dirname255] -commonName = "t254 - -[san_dirname256] -commonName = "t255 - -[san_dirname257] -commonName = "t256 - -[san_dirname258] -commonName = "t257 - -[san_dirname259] -commonName = "t258 - -[san_dirname260] -commonName = "t259 - -[san_dirname261] -commonName = "t260 - -[san_dirname262] -commonName = "t261 - -[san_dirname263] -commonName = "t262 - -[san_dirname264] -commonName = "t263 - -[san_dirname265] -commonName = "t264 - -[san_dirname266] -commonName = "t265 - -[san_dirname267] -commonName = "t266 - -[san_dirname268] -commonName = "t267 - -[san_dirname269] -commonName = "t268 - -[san_dirname270] -commonName = "t269 - -[san_dirname271] -commonName = "t270 - -[san_dirname272] -commonName = "t271 - -[san_dirname273] -commonName = "t272 - -[san_dirname274] -commonName = "t273 - -[san_dirname275] -commonName = "t274 - -[san_dirname276] -commonName = "t275 - -[san_dirname277] -commonName = "t276 - -[san_dirname278] -commonName = "t277 - -[san_dirname279] -commonName = "t278 - -[san_dirname280] -commonName = "t279 - -[san_dirname281] -commonName = "t280 - -[san_dirname282] -commonName = "t281 - -[san_dirname283] -commonName = "t282 - -[san_dirname284] -commonName = "t283 - -[san_dirname285] -commonName = "t284 - -[san_dirname286] -commonName = "t285 - -[san_dirname287] -commonName = "t286 - -[san_dirname288] -commonName = "t287 - -[san_dirname289] -commonName = "t288 - -[san_dirname290] -commonName = "t289 - -[san_dirname291] -commonName = "t290 - -[san_dirname292] -commonName = "t291 - -[san_dirname293] -commonName = "t292 - -[san_dirname294] -commonName = "t293 - -[san_dirname295] -commonName = "t294 - -[san_dirname296] -commonName = "t295 - -[san_dirname297] -commonName = "t296 - -[san_dirname298] -commonName = "t297 - -[san_dirname299] -commonName = "t298 - -[san_dirname300] -commonName = "t299 - -[san_dirname301] -commonName = "t300 - -[san_dirname302] -commonName = "t301 - -[san_dirname303] -commonName = "t302 - -[san_dirname304] -commonName = "t303 - -[san_dirname305] -commonName = "t304 - -[san_dirname306] -commonName = "t305 - -[san_dirname307] -commonName = "t306 - -[san_dirname308] -commonName = "t307 - -[san_dirname309] -commonName = "t308 - -[san_dirname310] -commonName = "t309 - -[san_dirname311] -commonName = "t310 - -[san_dirname312] -commonName = "t311 - -[san_dirname313] -commonName = "t312 - -[san_dirname314] -commonName = "t313 - -[san_dirname315] -commonName = "t314 - -[san_dirname316] -commonName = "t315 - -[san_dirname317] -commonName = "t316 - -[san_dirname318] -commonName = "t317 - -[san_dirname319] -commonName = "t318 - -[san_dirname320] -commonName = "t319 - -[san_dirname321] -commonName = "t320 - -[san_dirname322] -commonName = "t321 - -[san_dirname323] -commonName = "t322 - -[san_dirname324] -commonName = "t323 - -[san_dirname325] -commonName = "t324 - -[san_dirname326] -commonName = "t325 - -[san_dirname327] -commonName = "t326 - -[san_dirname328] -commonName = "t327 - -[san_dirname329] -commonName = "t328 - -[san_dirname330] -commonName = "t329 - -[san_dirname331] -commonName = "t330 - -[san_dirname332] -commonName = "t331 - -[san_dirname333] -commonName = "t332 - -[san_dirname334] -commonName = "t333 - -[san_dirname335] -commonName = "t334 - -[san_dirname336] -commonName = "t335 - -[san_dirname337] -commonName = "t336 - -[san_dirname338] -commonName = "t337 - -[san_dirname339] -commonName = "t338 - -[san_dirname340] -commonName = "t339 - -[san_dirname341] -commonName = "t340 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.csr deleted file mode 100644 index d5ea947afa..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.csr +++ /dev/null @@ -1,269 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIx7TCCMNUCAQAwDTELMAkGA1UEAwwCdDAwggEiMA0GCSqGSIb3DQEBAQUAA4IB -DwAwggEKAoIBAQDbLFMBzvkagzZSUSpbQmPeMnURan2woeR3R5tx5aYtZNeuWwTt -ej/H9sorK63NbIiljjb756IitX1UeenVelvKKylsDYQKEMQhtliYuw22DI1WWyyF -WQfKBkY2JRopjsQ5t8Mxzm5JwgHPsDsnQ4rj1QYfLZOd3XpFZW39tLHAEFlC8h6P -zkOslyXBfOJR4UQ1W5SqA27acS8lf1gwAeESFx7yqmwigLHJZep3lbMHxPdyODT+ -oEMzTGZtoeihBLxvFDk5RC44N3TJCiGFkSG3TrqwmUp2mHtYyhzTsEDD2Sp1++sZ -6uMamDFSl+l/pHshfy/cYoaP/f2oiOhLRFK9AgMBAAGggi+ZMIIvlQYJKoZIhvcN -AQkOMYIvhjCCL4IwHQYDVR0OBBYEFDu0BcyqulE9/PL5HiVTcuE68prfMA4GA1Ud -DwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgi8wBgNV -HREEgi8nMIIvI4IHdDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIH -dDQudGVzdIIHdDUudGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDku -dGVzdIIIdDEwLnRlc3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQx -NC50ZXN0ggh0MTUudGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIII -dDE5LnRlc3SCCHQyMC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0 -ggh0MjQudGVzdIIIdDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRl -c3SCCHQyOS50ZXN0ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMu -dGVzdIIIdDM0LnRlc3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQz -OC50ZXN0ggh0MzkudGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIII -dDQzLnRlc3SCCHQ0NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0 -ggh0NDgudGVzdIIIdDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRl -c3SCCHQ1My50ZXN0ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcu -dGVzdIIIdDU4LnRlc3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2 -Mi50ZXN0ggh0NjMudGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIII -dDY3LnRlc3SCCHQ2OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0 -ggh0NzIudGVzdIIIdDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRl -c3SCCHQ3Ny50ZXN0ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEu -dGVzdIIIdDgyLnRlc3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4 -Ni50ZXN0ggh0ODcudGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIII -dDkxLnRlc3SCCHQ5Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0 -ggh0OTYudGVzdIIIdDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50 -ZXN0ggl0MTAxLnRlc3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SC -CXQxMDUudGVzdIIJdDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEw -OS50ZXN0ggl0MTEwLnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRl -c3SCCXQxMTQudGVzdIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJ -dDExOC50ZXN0ggl0MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIy -LnRlc3SCCXQxMjMudGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVz -dIIJdDEyNy50ZXN0ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0 -MTMxLnRlc3SCCXQxMzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUu -dGVzdIIJdDEzNi50ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0 -ggl0MTQwLnRlc3SCCXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQx -NDQudGVzdIIJdDE0NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50 -ZXN0ggl0MTQ5LnRlc3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SC -CXQxNTMudGVzdIIJdDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1 -Ny50ZXN0ggl0MTU4LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRl -c3SCCXQxNjIudGVzdIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJ -dDE2Ni50ZXN0ggl0MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcw -LnRlc3SCCXQxNzEudGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVz -dIIJdDE3NS50ZXN0ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0 -MTc5LnRlc3SCCXQxODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMu -dGVzdIIJdDE4NC50ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0 -ggl0MTg4LnRlc3SCCXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQx -OTIudGVzdIIJdDE5My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50 -ZXN0ggl0MTk3LnRlc3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SC -CXQyMDEudGVzdIIJdDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIw -NS50ZXN0ggl0MjA2LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRl -c3SCCXQyMTAudGVzdIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJ -dDIxNC50ZXN0ggl0MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4 -LnRlc3SCCXQyMTkudGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVz -dIIJdDIyMy50ZXN0ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0 -MjI3LnRlc3SCCXQyMjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEu -dGVzdIIJdDIzMi50ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0 -ggl0MjM2LnRlc3SCCXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQy -NDAudGVzdIIJdDI0MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50 -ZXN0ggl0MjQ1LnRlc3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SC -CXQyNDkudGVzdIIJdDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1 -My50ZXN0ggl0MjU0LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRl -c3SCCXQyNTgudGVzdIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJ -dDI2Mi50ZXN0ggl0MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2 -LnRlc3SCCXQyNjcudGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVz -dIIJdDI3MS50ZXN0ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0 -Mjc1LnRlc3SCCXQyNzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzku -dGVzdIIJdDI4MC50ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0 -ggl0Mjg0LnRlc3SCCXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQy -ODgudGVzdIIJdDI4OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50 -ZXN0ggl0MjkzLnRlc3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SC -CXQyOTcudGVzdIIJdDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMw -MS50ZXN0ggl0MzAyLnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRl -c3SCCXQzMDYudGVzdIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJ -dDMxMC50ZXN0ggl0MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0 -LnRlc3SCCXQzMTUudGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVz -dIIJdDMxOS50ZXN0ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0 -MzIzLnRlc3SCCXQzMjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcu -dGVzdIIJdDMyOC50ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0 -ggl0MzMyLnRlc3SCCXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQz -MzYudGVzdIIJdDMzNy50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50 -ZXN0ggl0MzQxLnRlc3SHBAoAAACHBAoAAAGHBAoAAAKHBAoAAAOHBAoAAASHBAoA -AAWHBAoAAAaHBAoAAAeHBAoAAAiHBAoAAAmHBAoAAAqHBAoAAAuHBAoAAAyHBAoA -AA2HBAoAAA6HBAoAAA+HBAoAABCHBAoAABGHBAoAABKHBAoAABOHBAoAABSHBAoA -ABWHBAoAABaHBAoAABeHBAoAABiHBAoAABmHBAoAABqHBAoAABuHBAoAAByHBAoA -AB2HBAoAAB6HBAoAAB+HBAoAACCHBAoAACGHBAoAACKHBAoAACOHBAoAACSHBAoA -ACWHBAoAACaHBAoAACeHBAoAACiHBAoAACmHBAoAACqHBAoAACuHBAoAACyHBAoA -AC2HBAoAAC6HBAoAAC+HBAoAADCHBAoAADGHBAoAADKHBAoAADOHBAoAADSHBAoA -ADWHBAoAADaHBAoAADeHBAoAADiHBAoAADmHBAoAADqHBAoAADuHBAoAADyHBAoA -AD2HBAoAAD6HBAoAAD+HBAoAAECHBAoAAEGHBAoAAEKHBAoAAEOHBAoAAESHBAoA -AEWHBAoAAEaHBAoAAEeHBAoAAEiHBAoAAEmHBAoAAEqHBAoAAEuHBAoAAEyHBAoA -AE2HBAoAAE6HBAoAAE+HBAoAAFCHBAoAAFGHBAoAAFKHBAoAAFOHBAoAAFSHBAoA -AFWHBAoAAFaHBAoAAFeHBAoAAFiHBAoAAFmHBAoAAFqHBAoAAFuHBAoAAFyHBAoA -AF2HBAoAAF6HBAoAAF+HBAoAAGCHBAoAAGGHBAoAAGKHBAoAAGOHBAoAAGSHBAoA -AGWHBAoAAGaHBAoAAGeHBAoAAGiHBAoAAGmHBAoAAGqHBAoAAGuHBAoAAGyHBAoA -AG2HBAoAAG6HBAoAAG+HBAoAAHCHBAoAAHGHBAoAAHKHBAoAAHOHBAoAAHSHBAoA -AHWHBAoAAHaHBAoAAHeHBAoAAHiHBAoAAHmHBAoAAHqHBAoAAHuHBAoAAHyHBAoA -AH2HBAoAAH6HBAoAAH+HBAoAAICHBAoAAIGHBAoAAIKHBAoAAIOHBAoAAISHBAoA -AIWHBAoAAIaHBAoAAIeHBAoAAIiHBAoAAImHBAoAAIqHBAoAAIuHBAoAAIyHBAoA -AI2HBAoAAI6HBAoAAI+HBAoAAJCHBAoAAJGHBAoAAJKHBAoAAJOHBAoAAJSHBAoA -AJWHBAoAAJaHBAoAAJeHBAoAAJiHBAoAAJmHBAoAAJqHBAoAAJuHBAoAAJyHBAoA -AJ2HBAoAAJ6HBAoAAJ+HBAoAAKCHBAoAAKGHBAoAAKKHBAoAAKOHBAoAAKSHBAoA -AKWHBAoAAKaHBAoAAKeHBAoAAKiHBAoAAKmHBAoAAKqHBAoAAKuHBAoAAKyHBAoA -AK2HBAoAAK6HBAoAAK+HBAoAALCHBAoAALGHBAoAALKHBAoAALOHBAoAALSHBAoA -ALWHBAoAALaHBAoAALeHBAoAALiHBAoAALmHBAoAALqHBAoAALuHBAoAALyHBAoA -AL2HBAoAAL6HBAoAAL+HBAoAAMCHBAoAAMGHBAoAAMKHBAoAAMOHBAoAAMSHBAoA -AMWHBAoAAMaHBAoAAMeHBAoAAMiHBAoAAMmHBAoAAMqHBAoAAMuHBAoAAMyHBAoA -AM2HBAoAAM6HBAoAAM+HBAoAANCHBAoAANGHBAoAANKHBAoAANOHBAoAANSHBAoA -ANWHBAoAANaHBAoAANeHBAoAANiHBAoAANmHBAoAANqHBAoAANuHBAoAANyHBAoA -AN2HBAoAAN6HBAoAAN+HBAoAAOCHBAoAAOGHBAoAAOKHBAoAAOOHBAoAAOSHBAoA -AOWHBAoAAOaHBAoAAOeHBAoAAOiHBAoAAOmHBAoAAOqHBAoAAOuHBAoAAOyHBAoA -AO2HBAoAAO6HBAoAAO+HBAoAAPCHBAoAAPGHBAoAAPKHBAoAAPOHBAoAAPSHBAoA -APWHBAoAAPaHBAoAAPeHBAoAAPiHBAoAAPmHBAoAAPqHBAoAAPuHBAoAAPyHBAoA -AP2HBAoAAP6HBAoAAP+HBAoAAQCHBAoAAQGHBAoAAQKHBAoAAQOHBAoAAQSHBAoA -AQWHBAoAAQaHBAoAAQeHBAoAAQiHBAoAAQmHBAoAAQqHBAoAAQuHBAoAAQyHBAoA -AQ2HBAoAAQ6HBAoAAQ+HBAoAARCHBAoAARGHBAoAARKHBAoAAROHBAoAARSHBAoA -ARWHBAoAARaHBAoAAReHBAoAARiHBAoAARmHBAoAARqHBAoAARuHBAoAARyHBAoA -AR2HBAoAAR6HBAoAAR+HBAoAASCHBAoAASGHBAoAASKHBAoAASOHBAoAASSHBAoA -ASWHBAoAASaHBAoAASeHBAoAASiHBAoAASmHBAoAASqHBAoAASuHBAoAASyHBAoA -AS2HBAoAAS6HBAoAAS+HBAoAATCHBAoAATGHBAoAATKHBAoAATOHBAoAATSHBAoA -ATWHBAoAATaHBAoAATeHBAoAATiHBAoAATmHBAoAATqHBAoAATuHBAoAATyHBAoA -AT2HBAoAAT6HBAoAAT+HBAoAAUCHBAoAAUGHBAoAAUKHBAoAAUOHBAoAAUSHBAoA -AUWHBAoAAUaHBAoAAUeHBAoAAUiHBAoAAUmHBAoAAUqHBAoAAUuHBAoAAUyHBAoA -AU2HBAoAAU6HBAoAAU+HBAoAAVCHBAoAAVGHBAoAAVKHBAoAAVOHBAoAAVSkDzAN -MQswCQYDVQQDDAJ0MKQPMA0xCzAJBgNVBAMMAnQxpA8wDTELMAkGA1UEAwwCdDKk -DzANMQswCQYDVQQDDAJ0M6QPMA0xCzAJBgNVBAMMAnQ0pA8wDTELMAkGA1UEAwwC -dDWkDzANMQswCQYDVQQDDAJ0NqQPMA0xCzAJBgNVBAMMAnQ3pA8wDTELMAkGA1UE -AwwCdDikDzANMQswCQYDVQQDDAJ0OaQQMA4xDDAKBgNVBAMMA3QxMKQQMA4xDDAK -BgNVBAMMA3QxMaQQMA4xDDAKBgNVBAMMA3QxMqQQMA4xDDAKBgNVBAMMA3QxM6QQ -MA4xDDAKBgNVBAMMA3QxNKQQMA4xDDAKBgNVBAMMA3QxNaQQMA4xDDAKBgNVBAMM -A3QxNqQQMA4xDDAKBgNVBAMMA3QxN6QQMA4xDDAKBgNVBAMMA3QxOKQQMA4xDDAK -BgNVBAMMA3QxOaQQMA4xDDAKBgNVBAMMA3QyMKQQMA4xDDAKBgNVBAMMA3QyMaQQ -MA4xDDAKBgNVBAMMA3QyMqQQMA4xDDAKBgNVBAMMA3QyM6QQMA4xDDAKBgNVBAMM -A3QyNKQQMA4xDDAKBgNVBAMMA3QyNaQQMA4xDDAKBgNVBAMMA3QyNqQQMA4xDDAK -BgNVBAMMA3QyN6QQMA4xDDAKBgNVBAMMA3QyOKQQMA4xDDAKBgNVBAMMA3QyOaQQ -MA4xDDAKBgNVBAMMA3QzMKQQMA4xDDAKBgNVBAMMA3QzMaQQMA4xDDAKBgNVBAMM -A3QzMqQQMA4xDDAKBgNVBAMMA3QzM6QQMA4xDDAKBgNVBAMMA3QzNKQQMA4xDDAK -BgNVBAMMA3QzNaQQMA4xDDAKBgNVBAMMA3QzNqQQMA4xDDAKBgNVBAMMA3QzN6QQ -MA4xDDAKBgNVBAMMA3QzOKQQMA4xDDAKBgNVBAMMA3QzOaQQMA4xDDAKBgNVBAMM -A3Q0MKQQMA4xDDAKBgNVBAMMA3Q0MaQQMA4xDDAKBgNVBAMMA3Q0MqQQMA4xDDAK -BgNVBAMMA3Q0M6QQMA4xDDAKBgNVBAMMA3Q0NKQQMA4xDDAKBgNVBAMMA3Q0NaQQ -MA4xDDAKBgNVBAMMA3Q0NqQQMA4xDDAKBgNVBAMMA3Q0N6QQMA4xDDAKBgNVBAMM -A3Q0OKQQMA4xDDAKBgNVBAMMA3Q0OaQQMA4xDDAKBgNVBAMMA3Q1MKQQMA4xDDAK -BgNVBAMMA3Q1MaQQMA4xDDAKBgNVBAMMA3Q1MqQQMA4xDDAKBgNVBAMMA3Q1M6QQ -MA4xDDAKBgNVBAMMA3Q1NKQQMA4xDDAKBgNVBAMMA3Q1NaQQMA4xDDAKBgNVBAMM -A3Q1NqQQMA4xDDAKBgNVBAMMA3Q1N6QQMA4xDDAKBgNVBAMMA3Q1OKQQMA4xDDAK -BgNVBAMMA3Q1OaQQMA4xDDAKBgNVBAMMA3Q2MKQQMA4xDDAKBgNVBAMMA3Q2MaQQ -MA4xDDAKBgNVBAMMA3Q2MqQQMA4xDDAKBgNVBAMMA3Q2M6QQMA4xDDAKBgNVBAMM -A3Q2NKQQMA4xDDAKBgNVBAMMA3Q2NaQQMA4xDDAKBgNVBAMMA3Q2NqQQMA4xDDAK -BgNVBAMMA3Q2N6QQMA4xDDAKBgNVBAMMA3Q2OKQQMA4xDDAKBgNVBAMMA3Q2OaQQ -MA4xDDAKBgNVBAMMA3Q3MKQQMA4xDDAKBgNVBAMMA3Q3MaQQMA4xDDAKBgNVBAMM -A3Q3MqQQMA4xDDAKBgNVBAMMA3Q3M6QQMA4xDDAKBgNVBAMMA3Q3NKQQMA4xDDAK -BgNVBAMMA3Q3NaQQMA4xDDAKBgNVBAMMA3Q3NqQQMA4xDDAKBgNVBAMMA3Q3N6QQ -MA4xDDAKBgNVBAMMA3Q3OKQQMA4xDDAKBgNVBAMMA3Q3OaQQMA4xDDAKBgNVBAMM -A3Q4MKQQMA4xDDAKBgNVBAMMA3Q4MaQQMA4xDDAKBgNVBAMMA3Q4MqQQMA4xDDAK -BgNVBAMMA3Q4M6QQMA4xDDAKBgNVBAMMA3Q4NKQQMA4xDDAKBgNVBAMMA3Q4NaQQ -MA4xDDAKBgNVBAMMA3Q4NqQQMA4xDDAKBgNVBAMMA3Q4N6QQMA4xDDAKBgNVBAMM -A3Q4OKQQMA4xDDAKBgNVBAMMA3Q4OaQQMA4xDDAKBgNVBAMMA3Q5MKQQMA4xDDAK -BgNVBAMMA3Q5MaQQMA4xDDAKBgNVBAMMA3Q5MqQQMA4xDDAKBgNVBAMMA3Q5M6QQ -MA4xDDAKBgNVBAMMA3Q5NKQQMA4xDDAKBgNVBAMMA3Q5NaQQMA4xDDAKBgNVBAMM -A3Q5NqQQMA4xDDAKBgNVBAMMA3Q5N6QQMA4xDDAKBgNVBAMMA3Q5OKQQMA4xDDAK -BgNVBAMMA3Q5OaQRMA8xDTALBgNVBAMMBHQxMDCkETAPMQ0wCwYDVQQDDAR0MTAx -pBEwDzENMAsGA1UEAwwEdDEwMqQRMA8xDTALBgNVBAMMBHQxMDOkETAPMQ0wCwYD -VQQDDAR0MTA0pBEwDzENMAsGA1UEAwwEdDEwNaQRMA8xDTALBgNVBAMMBHQxMDak -ETAPMQ0wCwYDVQQDDAR0MTA3pBEwDzENMAsGA1UEAwwEdDEwOKQRMA8xDTALBgNV -BAMMBHQxMDmkETAPMQ0wCwYDVQQDDAR0MTEwpBEwDzENMAsGA1UEAwwEdDExMaQR -MA8xDTALBgNVBAMMBHQxMTKkETAPMQ0wCwYDVQQDDAR0MTEzpBEwDzENMAsGA1UE -AwwEdDExNKQRMA8xDTALBgNVBAMMBHQxMTWkETAPMQ0wCwYDVQQDDAR0MTE2pBEw -DzENMAsGA1UEAwwEdDExN6QRMA8xDTALBgNVBAMMBHQxMTikETAPMQ0wCwYDVQQD -DAR0MTE5pBEwDzENMAsGA1UEAwwEdDEyMKQRMA8xDTALBgNVBAMMBHQxMjGkETAP -MQ0wCwYDVQQDDAR0MTIypBEwDzENMAsGA1UEAwwEdDEyM6QRMA8xDTALBgNVBAMM -BHQxMjSkETAPMQ0wCwYDVQQDDAR0MTI1pBEwDzENMAsGA1UEAwwEdDEyNqQRMA8x -DTALBgNVBAMMBHQxMjekETAPMQ0wCwYDVQQDDAR0MTI4pBEwDzENMAsGA1UEAwwE -dDEyOaQRMA8xDTALBgNVBAMMBHQxMzCkETAPMQ0wCwYDVQQDDAR0MTMxpBEwDzEN -MAsGA1UEAwwEdDEzMqQRMA8xDTALBgNVBAMMBHQxMzOkETAPMQ0wCwYDVQQDDAR0 -MTM0pBEwDzENMAsGA1UEAwwEdDEzNaQRMA8xDTALBgNVBAMMBHQxMzakETAPMQ0w -CwYDVQQDDAR0MTM3pBEwDzENMAsGA1UEAwwEdDEzOKQRMA8xDTALBgNVBAMMBHQx -MzmkETAPMQ0wCwYDVQQDDAR0MTQwpBEwDzENMAsGA1UEAwwEdDE0MaQRMA8xDTAL -BgNVBAMMBHQxNDKkETAPMQ0wCwYDVQQDDAR0MTQzpBEwDzENMAsGA1UEAwwEdDE0 -NKQRMA8xDTALBgNVBAMMBHQxNDWkETAPMQ0wCwYDVQQDDAR0MTQ2pBEwDzENMAsG -A1UEAwwEdDE0N6QRMA8xDTALBgNVBAMMBHQxNDikETAPMQ0wCwYDVQQDDAR0MTQ5 -pBEwDzENMAsGA1UEAwwEdDE1MKQRMA8xDTALBgNVBAMMBHQxNTGkETAPMQ0wCwYD -VQQDDAR0MTUypBEwDzENMAsGA1UEAwwEdDE1M6QRMA8xDTALBgNVBAMMBHQxNTSk -ETAPMQ0wCwYDVQQDDAR0MTU1pBEwDzENMAsGA1UEAwwEdDE1NqQRMA8xDTALBgNV -BAMMBHQxNTekETAPMQ0wCwYDVQQDDAR0MTU4pBEwDzENMAsGA1UEAwwEdDE1OaQR -MA8xDTALBgNVBAMMBHQxNjCkETAPMQ0wCwYDVQQDDAR0MTYxpBEwDzENMAsGA1UE -AwwEdDE2MqQRMA8xDTALBgNVBAMMBHQxNjOkETAPMQ0wCwYDVQQDDAR0MTY0pBEw -DzENMAsGA1UEAwwEdDE2NaQRMA8xDTALBgNVBAMMBHQxNjakETAPMQ0wCwYDVQQD -DAR0MTY3pBEwDzENMAsGA1UEAwwEdDE2OKQRMA8xDTALBgNVBAMMBHQxNjmkETAP -MQ0wCwYDVQQDDAR0MTcwpBEwDzENMAsGA1UEAwwEdDE3MaQRMA8xDTALBgNVBAMM -BHQxNzKkETAPMQ0wCwYDVQQDDAR0MTczpBEwDzENMAsGA1UEAwwEdDE3NKQRMA8x -DTALBgNVBAMMBHQxNzWkETAPMQ0wCwYDVQQDDAR0MTc2pBEwDzENMAsGA1UEAwwE -dDE3N6QRMA8xDTALBgNVBAMMBHQxNzikETAPMQ0wCwYDVQQDDAR0MTc5pBEwDzEN -MAsGA1UEAwwEdDE4MKQRMA8xDTALBgNVBAMMBHQxODGkETAPMQ0wCwYDVQQDDAR0 -MTgypBEwDzENMAsGA1UEAwwEdDE4M6QRMA8xDTALBgNVBAMMBHQxODSkETAPMQ0w -CwYDVQQDDAR0MTg1pBEwDzENMAsGA1UEAwwEdDE4NqQRMA8xDTALBgNVBAMMBHQx -ODekETAPMQ0wCwYDVQQDDAR0MTg4pBEwDzENMAsGA1UEAwwEdDE4OaQRMA8xDTAL -BgNVBAMMBHQxOTCkETAPMQ0wCwYDVQQDDAR0MTkxpBEwDzENMAsGA1UEAwwEdDE5 -MqQRMA8xDTALBgNVBAMMBHQxOTOkETAPMQ0wCwYDVQQDDAR0MTk0pBEwDzENMAsG -A1UEAwwEdDE5NaQRMA8xDTALBgNVBAMMBHQxOTakETAPMQ0wCwYDVQQDDAR0MTk3 -pBEwDzENMAsGA1UEAwwEdDE5OKQRMA8xDTALBgNVBAMMBHQxOTmkETAPMQ0wCwYD -VQQDDAR0MjAwpBEwDzENMAsGA1UEAwwEdDIwMaQRMA8xDTALBgNVBAMMBHQyMDKk -ETAPMQ0wCwYDVQQDDAR0MjAzpBEwDzENMAsGA1UEAwwEdDIwNKQRMA8xDTALBgNV -BAMMBHQyMDWkETAPMQ0wCwYDVQQDDAR0MjA2pBEwDzENMAsGA1UEAwwEdDIwN6QR -MA8xDTALBgNVBAMMBHQyMDikETAPMQ0wCwYDVQQDDAR0MjA5pBEwDzENMAsGA1UE -AwwEdDIxMKQRMA8xDTALBgNVBAMMBHQyMTGkETAPMQ0wCwYDVQQDDAR0MjEypBEw -DzENMAsGA1UEAwwEdDIxM6QRMA8xDTALBgNVBAMMBHQyMTSkETAPMQ0wCwYDVQQD -DAR0MjE1pBEwDzENMAsGA1UEAwwEdDIxNqQRMA8xDTALBgNVBAMMBHQyMTekETAP -MQ0wCwYDVQQDDAR0MjE4pBEwDzENMAsGA1UEAwwEdDIxOaQRMA8xDTALBgNVBAMM -BHQyMjCkETAPMQ0wCwYDVQQDDAR0MjIxpBEwDzENMAsGA1UEAwwEdDIyMqQRMA8x -DTALBgNVBAMMBHQyMjOkETAPMQ0wCwYDVQQDDAR0MjI0pBEwDzENMAsGA1UEAwwE -dDIyNaQRMA8xDTALBgNVBAMMBHQyMjakETAPMQ0wCwYDVQQDDAR0MjI3pBEwDzEN -MAsGA1UEAwwEdDIyOKQRMA8xDTALBgNVBAMMBHQyMjmkETAPMQ0wCwYDVQQDDAR0 -MjMwpBEwDzENMAsGA1UEAwwEdDIzMaQRMA8xDTALBgNVBAMMBHQyMzKkETAPMQ0w -CwYDVQQDDAR0MjMzpBEwDzENMAsGA1UEAwwEdDIzNKQRMA8xDTALBgNVBAMMBHQy -MzWkETAPMQ0wCwYDVQQDDAR0MjM2pBEwDzENMAsGA1UEAwwEdDIzN6QRMA8xDTAL -BgNVBAMMBHQyMzikETAPMQ0wCwYDVQQDDAR0MjM5pBEwDzENMAsGA1UEAwwEdDI0 -MKQRMA8xDTALBgNVBAMMBHQyNDGkETAPMQ0wCwYDVQQDDAR0MjQypBEwDzENMAsG -A1UEAwwEdDI0M6QRMA8xDTALBgNVBAMMBHQyNDSkETAPMQ0wCwYDVQQDDAR0MjQ1 -pBEwDzENMAsGA1UEAwwEdDI0NqQRMA8xDTALBgNVBAMMBHQyNDekETAPMQ0wCwYD -VQQDDAR0MjQ4pBEwDzENMAsGA1UEAwwEdDI0OaQRMA8xDTALBgNVBAMMBHQyNTCk -ETAPMQ0wCwYDVQQDDAR0MjUxpBEwDzENMAsGA1UEAwwEdDI1MqQRMA8xDTALBgNV -BAMMBHQyNTOkETAPMQ0wCwYDVQQDDAR0MjU0pBEwDzENMAsGA1UEAwwEdDI1NaQR -MA8xDTALBgNVBAMMBHQyNTakETAPMQ0wCwYDVQQDDAR0MjU3pBEwDzENMAsGA1UE -AwwEdDI1OKQRMA8xDTALBgNVBAMMBHQyNTmkETAPMQ0wCwYDVQQDDAR0MjYwpBEw -DzENMAsGA1UEAwwEdDI2MaQRMA8xDTALBgNVBAMMBHQyNjKkETAPMQ0wCwYDVQQD -DAR0MjYzpBEwDzENMAsGA1UEAwwEdDI2NKQRMA8xDTALBgNVBAMMBHQyNjWkETAP -MQ0wCwYDVQQDDAR0MjY2pBEwDzENMAsGA1UEAwwEdDI2N6QRMA8xDTALBgNVBAMM -BHQyNjikETAPMQ0wCwYDVQQDDAR0MjY5pBEwDzENMAsGA1UEAwwEdDI3MKQRMA8x -DTALBgNVBAMMBHQyNzGkETAPMQ0wCwYDVQQDDAR0MjcypBEwDzENMAsGA1UEAwwE -dDI3M6QRMA8xDTALBgNVBAMMBHQyNzSkETAPMQ0wCwYDVQQDDAR0Mjc1pBEwDzEN -MAsGA1UEAwwEdDI3NqQRMA8xDTALBgNVBAMMBHQyNzekETAPMQ0wCwYDVQQDDAR0 -Mjc4pBEwDzENMAsGA1UEAwwEdDI3OaQRMA8xDTALBgNVBAMMBHQyODCkETAPMQ0w -CwYDVQQDDAR0MjgxpBEwDzENMAsGA1UEAwwEdDI4MqQRMA8xDTALBgNVBAMMBHQy -ODOkETAPMQ0wCwYDVQQDDAR0Mjg0pBEwDzENMAsGA1UEAwwEdDI4NaQRMA8xDTAL -BgNVBAMMBHQyODakETAPMQ0wCwYDVQQDDAR0Mjg3pBEwDzENMAsGA1UEAwwEdDI4 -OKQRMA8xDTALBgNVBAMMBHQyODmkETAPMQ0wCwYDVQQDDAR0MjkwpBEwDzENMAsG -A1UEAwwEdDI5MaQRMA8xDTALBgNVBAMMBHQyOTKkETAPMQ0wCwYDVQQDDAR0Mjkz -pBEwDzENMAsGA1UEAwwEdDI5NKQRMA8xDTALBgNVBAMMBHQyOTWkETAPMQ0wCwYD -VQQDDAR0Mjk2pBEwDzENMAsGA1UEAwwEdDI5N6QRMA8xDTALBgNVBAMMBHQyOTik -ETAPMQ0wCwYDVQQDDAR0Mjk5pBEwDzENMAsGA1UEAwwEdDMwMKQRMA8xDTALBgNV -BAMMBHQzMDGkETAPMQ0wCwYDVQQDDAR0MzAypBEwDzENMAsGA1UEAwwEdDMwM6QR -MA8xDTALBgNVBAMMBHQzMDSkETAPMQ0wCwYDVQQDDAR0MzA1pBEwDzENMAsGA1UE -AwwEdDMwNqQRMA8xDTALBgNVBAMMBHQzMDekETAPMQ0wCwYDVQQDDAR0MzA4pBEw -DzENMAsGA1UEAwwEdDMwOaQRMA8xDTALBgNVBAMMBHQzMTCkETAPMQ0wCwYDVQQD -DAR0MzExpBEwDzENMAsGA1UEAwwEdDMxMqQRMA8xDTALBgNVBAMMBHQzMTOkETAP -MQ0wCwYDVQQDDAR0MzE0pBEwDzENMAsGA1UEAwwEdDMxNaQRMA8xDTALBgNVBAMM -BHQzMTakETAPMQ0wCwYDVQQDDAR0MzE3pBEwDzENMAsGA1UEAwwEdDMxOKQRMA8x -DTALBgNVBAMMBHQzMTmkETAPMQ0wCwYDVQQDDAR0MzIwpBEwDzENMAsGA1UEAwwE -dDMyMaQRMA8xDTALBgNVBAMMBHQzMjKkETAPMQ0wCwYDVQQDDAR0MzIzpBEwDzEN -MAsGA1UEAwwEdDMyNKQRMA8xDTALBgNVBAMMBHQzMjWkETAPMQ0wCwYDVQQDDAR0 -MzI2pBEwDzENMAsGA1UEAwwEdDMyN6QRMA8xDTALBgNVBAMMBHQzMjikETAPMQ0w -CwYDVQQDDAR0MzI5pBEwDzENMAsGA1UEAwwEdDMzMKQRMA8xDTALBgNVBAMMBHQz -MzGkETAPMQ0wCwYDVQQDDAR0MzMypBEwDzENMAsGA1UEAwwEdDMzM6QRMA8xDTAL -BgNVBAMMBHQzMzSkETAPMQ0wCwYDVQQDDAR0MzM1pBEwDzENMAsGA1UEAwwEdDMz -NqQRMA8xDTALBgNVBAMMBHQzMzekETAPMQ0wCwYDVQQDDAR0MzM4pBEwDzENMAsG -A1UEAwwEdDMzOaQRMA8xDTALBgNVBAMMBHQzNDAwDQYJKoZIhvcNAQELBQADggEB -AD9lGsQ44lWttO8MroupRr76cU9sQgZ63z+1zAiQI6r98o2/eSOx2fA8JnUxIS+b -e2QXz+iln1bL/LkFq8X1M3VzEX43oIJDCZmHNMY4hxYxIR8XteXAzt73qzislxM2 -e1tuw0vdyzPEORvrxY7jmz7kzzBv6A6ZtlXwLlYykVbMhC/K+dgPs1ysgv0YWGpZ -JJ1Q4hCi6+DsvMeM6eph1HZE1dOUeYIl0DbcKcx3db54sYULNNM00F0Yl5EFb+kF -Qe8coGisSx3k0HG+EyitVf2pcebALZl4ya+aLN77CLOVliRMv+QzVwuX7uLPZrom -wVyvBts/YzoYuiHVAX38N/w= ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.pem deleted file mode 100644 index 7ef7fdabb3..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_1.pem +++ /dev/null @@ -1,344 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d5 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DNS:t0.test, DNS:t1.test, DNS:t2.test, DNS:t3.test, DNS:t4.test, DNS:t5.test, DNS:t6.test, DNS:t7.test, DNS:t8.test, DNS:t9.test, DNS:t10.test, DNS:t11.test, DNS:t12.test, DNS:t13.test, DNS:t14.test, DNS:t15.test, DNS:t16.test, DNS:t17.test, DNS:t18.test, DNS:t19.test, DNS:t20.test, DNS:t21.test, DNS:t22.test, DNS:t23.test, DNS:t24.test, DNS:t25.test, DNS:t26.test, DNS:t27.test, DNS:t28.test, DNS:t29.test, DNS:t30.test, DNS:t31.test, DNS:t32.test, DNS:t33.test, DNS:t34.test, DNS:t35.test, DNS:t36.test, DNS:t37.test, DNS:t38.test, DNS:t39.test, DNS:t40.test, DNS:t41.test, DNS:t42.test, DNS:t43.test, DNS:t44.test, DNS:t45.test, DNS:t46.test, DNS:t47.test, DNS:t48.test, DNS:t49.test, DNS:t50.test, DNS:t51.test, DNS:t52.test, DNS:t53.test, DNS:t54.test, DNS:t55.test, DNS:t56.test, DNS:t57.test, DNS:t58.test, DNS:t59.test, DNS:t60.test, DNS:t61.test, DNS:t62.test, DNS:t63.test, DNS:t64.test, DNS:t65.test, DNS:t66.test, DNS:t67.test, DNS:t68.test, DNS:t69.test, DNS:t70.test, DNS:t71.test, DNS:t72.test, DNS:t73.test, DNS:t74.test, DNS:t75.test, DNS:t76.test, DNS:t77.test, DNS:t78.test, DNS:t79.test, DNS:t80.test, DNS:t81.test, DNS:t82.test, DNS:t83.test, DNS:t84.test, DNS:t85.test, DNS:t86.test, DNS:t87.test, DNS:t88.test, DNS:t89.test, DNS:t90.test, DNS:t91.test, DNS:t92.test, DNS:t93.test, DNS:t94.test, DNS:t95.test, DNS:t96.test, DNS:t97.test, DNS:t98.test, DNS:t99.test, DNS:t100.test, DNS:t101.test, DNS:t102.test, DNS:t103.test, DNS:t104.test, DNS:t105.test, DNS:t106.test, DNS:t107.test, DNS:t108.test, DNS:t109.test, DNS:t110.test, DNS:t111.test, DNS:t112.test, DNS:t113.test, DNS:t114.test, DNS:t115.test, DNS:t116.test, DNS:t117.test, DNS:t118.test, DNS:t119.test, DNS:t120.test, DNS:t121.test, DNS:t122.test, DNS:t123.test, DNS:t124.test, DNS:t125.test, DNS:t126.test, DNS:t127.test, DNS:t128.test, DNS:t129.test, DNS:t130.test, DNS:t131.test, DNS:t132.test, DNS:t133.test, DNS:t134.test, DNS:t135.test, DNS:t136.test, DNS:t137.test, DNS:t138.test, DNS:t139.test, DNS:t140.test, DNS:t141.test, DNS:t142.test, DNS:t143.test, DNS:t144.test, DNS:t145.test, DNS:t146.test, DNS:t147.test, DNS:t148.test, DNS:t149.test, DNS:t150.test, DNS:t151.test, DNS:t152.test, DNS:t153.test, DNS:t154.test, DNS:t155.test, DNS:t156.test, DNS:t157.test, DNS:t158.test, DNS:t159.test, DNS:t160.test, DNS:t161.test, DNS:t162.test, DNS:t163.test, DNS:t164.test, DNS:t165.test, DNS:t166.test, DNS:t167.test, DNS:t168.test, DNS:t169.test, DNS:t170.test, DNS:t171.test, DNS:t172.test, DNS:t173.test, DNS:t174.test, DNS:t175.test, DNS:t176.test, DNS:t177.test, DNS:t178.test, DNS:t179.test, DNS:t180.test, DNS:t181.test, DNS:t182.test, DNS:t183.test, DNS:t184.test, DNS:t185.test, DNS:t186.test, DNS:t187.test, DNS:t188.test, DNS:t189.test, DNS:t190.test, DNS:t191.test, DNS:t192.test, DNS:t193.test, DNS:t194.test, DNS:t195.test, DNS:t196.test, DNS:t197.test, DNS:t198.test, DNS:t199.test, DNS:t200.test, DNS:t201.test, DNS:t202.test, DNS:t203.test, DNS:t204.test, DNS:t205.test, DNS:t206.test, DNS:t207.test, DNS:t208.test, DNS:t209.test, DNS:t210.test, DNS:t211.test, DNS:t212.test, DNS:t213.test, DNS:t214.test, DNS:t215.test, DNS:t216.test, DNS:t217.test, DNS:t218.test, DNS:t219.test, DNS:t220.test, DNS:t221.test, DNS:t222.test, DNS:t223.test, DNS:t224.test, DNS:t225.test, DNS:t226.test, DNS:t227.test, DNS:t228.test, DNS:t229.test, DNS:t230.test, DNS:t231.test, DNS:t232.test, DNS:t233.test, DNS:t234.test, DNS:t235.test, DNS:t236.test, DNS:t237.test, DNS:t238.test, DNS:t239.test, DNS:t240.test, DNS:t241.test, DNS:t242.test, DNS:t243.test, DNS:t244.test, DNS:t245.test, DNS:t246.test, DNS:t247.test, DNS:t248.test, DNS:t249.test, DNS:t250.test, DNS:t251.test, DNS:t252.test, DNS:t253.test, DNS:t254.test, DNS:t255.test, DNS:t256.test, DNS:t257.test, DNS:t258.test, DNS:t259.test, DNS:t260.test, DNS:t261.test, DNS:t262.test, DNS:t263.test, DNS:t264.test, DNS:t265.test, DNS:t266.test, DNS:t267.test, DNS:t268.test, DNS:t269.test, DNS:t270.test, DNS:t271.test, DNS:t272.test, DNS:t273.test, DNS:t274.test, DNS:t275.test, DNS:t276.test, DNS:t277.test, DNS:t278.test, DNS:t279.test, DNS:t280.test, DNS:t281.test, DNS:t282.test, DNS:t283.test, DNS:t284.test, DNS:t285.test, DNS:t286.test, DNS:t287.test, DNS:t288.test, DNS:t289.test, DNS:t290.test, DNS:t291.test, DNS:t292.test, DNS:t293.test, DNS:t294.test, DNS:t295.test, DNS:t296.test, DNS:t297.test, DNS:t298.test, DNS:t299.test, DNS:t300.test, DNS:t301.test, DNS:t302.test, DNS:t303.test, DNS:t304.test, DNS:t305.test, DNS:t306.test, DNS:t307.test, DNS:t308.test, DNS:t309.test, DNS:t310.test, DNS:t311.test, DNS:t312.test, DNS:t313.test, DNS:t314.test, DNS:t315.test, DNS:t316.test, DNS:t317.test, DNS:t318.test, DNS:t319.test, DNS:t320.test, DNS:t321.test, DNS:t322.test, DNS:t323.test, DNS:t324.test, DNS:t325.test, DNS:t326.test, DNS:t327.test, DNS:t328.test, DNS:t329.test, DNS:t330.test, DNS:t331.test, DNS:t332.test, DNS:t333.test, DNS:t334.test, DNS:t335.test, DNS:t336.test, DNS:t337.test, DNS:t338.test, DNS:t339.test, DNS:t340.test, DNS:t341.test, IP Address:10.0.0.0, IP Address:10.0.0.1, IP Address:10.0.0.2, IP Address:10.0.0.3, IP Address:10.0.0.4, IP Address:10.0.0.5, IP Address:10.0.0.6, IP Address:10.0.0.7, IP Address:10.0.0.8, IP Address:10.0.0.9, IP Address:10.0.0.10, IP Address:10.0.0.11, IP Address:10.0.0.12, IP Address:10.0.0.13, IP Address:10.0.0.14, IP Address:10.0.0.15, IP Address:10.0.0.16, IP Address:10.0.0.17, IP Address:10.0.0.18, IP Address:10.0.0.19, IP Address:10.0.0.20, IP Address:10.0.0.21, IP Address:10.0.0.22, IP Address:10.0.0.23, IP Address:10.0.0.24, IP Address:10.0.0.25, IP Address:10.0.0.26, IP Address:10.0.0.27, IP Address:10.0.0.28, IP Address:10.0.0.29, IP Address:10.0.0.30, IP Address:10.0.0.31, IP Address:10.0.0.32, IP Address:10.0.0.33, IP Address:10.0.0.34, IP Address:10.0.0.35, IP Address:10.0.0.36, IP Address:10.0.0.37, IP Address:10.0.0.38, IP Address:10.0.0.39, IP Address:10.0.0.40, IP Address:10.0.0.41, IP Address:10.0.0.42, IP Address:10.0.0.43, IP Address:10.0.0.44, IP Address:10.0.0.45, IP Address:10.0.0.46, IP Address:10.0.0.47, IP Address:10.0.0.48, IP Address:10.0.0.49, IP Address:10.0.0.50, IP Address:10.0.0.51, IP Address:10.0.0.52, IP Address:10.0.0.53, IP Address:10.0.0.54, IP Address:10.0.0.55, IP Address:10.0.0.56, IP Address:10.0.0.57, IP Address:10.0.0.58, IP Address:10.0.0.59, IP Address:10.0.0.60, IP Address:10.0.0.61, IP Address:10.0.0.62, IP Address:10.0.0.63, IP Address:10.0.0.64, IP Address:10.0.0.65, IP Address:10.0.0.66, IP Address:10.0.0.67, IP Address:10.0.0.68, IP Address:10.0.0.69, IP Address:10.0.0.70, IP Address:10.0.0.71, IP Address:10.0.0.72, IP Address:10.0.0.73, IP Address:10.0.0.74, IP Address:10.0.0.75, IP Address:10.0.0.76, IP Address:10.0.0.77, IP Address:10.0.0.78, IP Address:10.0.0.79, IP Address:10.0.0.80, IP Address:10.0.0.81, IP Address:10.0.0.82, IP Address:10.0.0.83, IP Address:10.0.0.84, IP Address:10.0.0.85, IP Address:10.0.0.86, IP Address:10.0.0.87, IP Address:10.0.0.88, IP Address:10.0.0.89, IP Address:10.0.0.90, IP Address:10.0.0.91, IP Address:10.0.0.92, IP Address:10.0.0.93, IP Address:10.0.0.94, IP Address:10.0.0.95, IP Address:10.0.0.96, IP Address:10.0.0.97, IP Address:10.0.0.98, IP Address:10.0.0.99, IP Address:10.0.0.100, IP Address:10.0.0.101, IP Address:10.0.0.102, IP Address:10.0.0.103, IP Address:10.0.0.104, IP Address:10.0.0.105, IP Address:10.0.0.106, IP Address:10.0.0.107, IP Address:10.0.0.108, IP Address:10.0.0.109, IP Address:10.0.0.110, IP Address:10.0.0.111, IP Address:10.0.0.112, IP Address:10.0.0.113, IP Address:10.0.0.114, IP Address:10.0.0.115, IP Address:10.0.0.116, IP Address:10.0.0.117, IP Address:10.0.0.118, IP Address:10.0.0.119, IP Address:10.0.0.120, IP Address:10.0.0.121, IP Address:10.0.0.122, IP Address:10.0.0.123, IP Address:10.0.0.124, IP Address:10.0.0.125, IP Address:10.0.0.126, IP Address:10.0.0.127, IP Address:10.0.0.128, IP Address:10.0.0.129, IP Address:10.0.0.130, IP Address:10.0.0.131, IP Address:10.0.0.132, IP Address:10.0.0.133, IP Address:10.0.0.134, IP Address:10.0.0.135, IP Address:10.0.0.136, IP Address:10.0.0.137, IP Address:10.0.0.138, IP Address:10.0.0.139, IP Address:10.0.0.140, IP Address:10.0.0.141, IP Address:10.0.0.142, IP Address:10.0.0.143, IP Address:10.0.0.144, IP Address:10.0.0.145, IP Address:10.0.0.146, IP Address:10.0.0.147, IP Address:10.0.0.148, IP Address:10.0.0.149, IP Address:10.0.0.150, IP Address:10.0.0.151, IP Address:10.0.0.152, IP Address:10.0.0.153, IP Address:10.0.0.154, IP Address:10.0.0.155, IP Address:10.0.0.156, IP Address:10.0.0.157, IP Address:10.0.0.158, IP Address:10.0.0.159, IP Address:10.0.0.160, IP Address:10.0.0.161, IP Address:10.0.0.162, IP Address:10.0.0.163, IP Address:10.0.0.164, IP Address:10.0.0.165, IP Address:10.0.0.166, IP Address:10.0.0.167, IP Address:10.0.0.168, IP Address:10.0.0.169, IP Address:10.0.0.170, IP Address:10.0.0.171, IP Address:10.0.0.172, IP Address:10.0.0.173, IP Address:10.0.0.174, IP Address:10.0.0.175, IP Address:10.0.0.176, IP Address:10.0.0.177, IP Address:10.0.0.178, IP Address:10.0.0.179, IP Address:10.0.0.180, IP Address:10.0.0.181, IP Address:10.0.0.182, IP Address:10.0.0.183, IP Address:10.0.0.184, IP Address:10.0.0.185, IP Address:10.0.0.186, IP Address:10.0.0.187, IP Address:10.0.0.188, IP Address:10.0.0.189, IP Address:10.0.0.190, IP Address:10.0.0.191, IP Address:10.0.0.192, IP Address:10.0.0.193, IP Address:10.0.0.194, IP Address:10.0.0.195, IP Address:10.0.0.196, IP Address:10.0.0.197, IP Address:10.0.0.198, IP Address:10.0.0.199, IP Address:10.0.0.200, IP Address:10.0.0.201, IP Address:10.0.0.202, IP Address:10.0.0.203, IP Address:10.0.0.204, IP Address:10.0.0.205, IP Address:10.0.0.206, IP Address:10.0.0.207, IP Address:10.0.0.208, IP Address:10.0.0.209, IP Address:10.0.0.210, IP Address:10.0.0.211, IP Address:10.0.0.212, IP Address:10.0.0.213, IP Address:10.0.0.214, IP Address:10.0.0.215, IP Address:10.0.0.216, IP Address:10.0.0.217, IP Address:10.0.0.218, IP Address:10.0.0.219, IP Address:10.0.0.220, IP Address:10.0.0.221, IP Address:10.0.0.222, IP Address:10.0.0.223, IP Address:10.0.0.224, IP Address:10.0.0.225, IP Address:10.0.0.226, IP Address:10.0.0.227, IP Address:10.0.0.228, IP Address:10.0.0.229, IP Address:10.0.0.230, IP Address:10.0.0.231, IP Address:10.0.0.232, IP Address:10.0.0.233, IP Address:10.0.0.234, IP Address:10.0.0.235, IP Address:10.0.0.236, IP Address:10.0.0.237, IP Address:10.0.0.238, IP Address:10.0.0.239, IP Address:10.0.0.240, IP Address:10.0.0.241, IP Address:10.0.0.242, IP Address:10.0.0.243, IP Address:10.0.0.244, IP Address:10.0.0.245, IP Address:10.0.0.246, IP Address:10.0.0.247, IP Address:10.0.0.248, IP Address:10.0.0.249, IP Address:10.0.0.250, IP Address:10.0.0.251, IP Address:10.0.0.252, IP Address:10.0.0.253, IP Address:10.0.0.254, IP Address:10.0.0.255, IP Address:10.0.1.0, IP Address:10.0.1.1, IP Address:10.0.1.2, IP Address:10.0.1.3, IP Address:10.0.1.4, IP Address:10.0.1.5, IP Address:10.0.1.6, IP Address:10.0.1.7, IP Address:10.0.1.8, IP Address:10.0.1.9, IP Address:10.0.1.10, IP Address:10.0.1.11, IP Address:10.0.1.12, IP Address:10.0.1.13, IP Address:10.0.1.14, IP Address:10.0.1.15, IP Address:10.0.1.16, IP Address:10.0.1.17, IP Address:10.0.1.18, IP Address:10.0.1.19, IP Address:10.0.1.20, IP Address:10.0.1.21, IP Address:10.0.1.22, IP Address:10.0.1.23, IP Address:10.0.1.24, IP Address:10.0.1.25, IP Address:10.0.1.26, IP Address:10.0.1.27, IP Address:10.0.1.28, IP Address:10.0.1.29, IP Address:10.0.1.30, IP Address:10.0.1.31, IP Address:10.0.1.32, IP Address:10.0.1.33, IP Address:10.0.1.34, IP Address:10.0.1.35, IP Address:10.0.1.36, IP Address:10.0.1.37, IP Address:10.0.1.38, IP Address:10.0.1.39, IP Address:10.0.1.40, IP Address:10.0.1.41, IP Address:10.0.1.42, IP Address:10.0.1.43, IP Address:10.0.1.44, IP Address:10.0.1.45, IP Address:10.0.1.46, IP Address:10.0.1.47, IP Address:10.0.1.48, IP Address:10.0.1.49, IP Address:10.0.1.50, IP Address:10.0.1.51, IP Address:10.0.1.52, IP Address:10.0.1.53, IP Address:10.0.1.54, IP Address:10.0.1.55, IP Address:10.0.1.56, IP Address:10.0.1.57, IP Address:10.0.1.58, IP Address:10.0.1.59, IP Address:10.0.1.60, IP Address:10.0.1.61, IP Address:10.0.1.62, IP Address:10.0.1.63, IP Address:10.0.1.64, IP Address:10.0.1.65, IP Address:10.0.1.66, IP Address:10.0.1.67, IP Address:10.0.1.68, IP Address:10.0.1.69, IP Address:10.0.1.70, IP Address:10.0.1.71, IP Address:10.0.1.72, IP Address:10.0.1.73, IP Address:10.0.1.74, IP Address:10.0.1.75, IP Address:10.0.1.76, IP Address:10.0.1.77, IP Address:10.0.1.78, IP Address:10.0.1.79, IP Address:10.0.1.80, IP Address:10.0.1.81, IP Address:10.0.1.82, IP Address:10.0.1.83, IP Address:10.0.1.84, DirName:/CN=t0, DirName:/CN=t1, DirName:/CN=t2, DirName:/CN=t3, DirName:/CN=t4, DirName:/CN=t5, DirName:/CN=t6, DirName:/CN=t7, DirName:/CN=t8, DirName:/CN=t9, DirName:/CN=t10, DirName:/CN=t11, DirName:/CN=t12, DirName:/CN=t13, DirName:/CN=t14, DirName:/CN=t15, DirName:/CN=t16, DirName:/CN=t17, DirName:/CN=t18, DirName:/CN=t19, DirName:/CN=t20, DirName:/CN=t21, DirName:/CN=t22, DirName:/CN=t23, DirName:/CN=t24, DirName:/CN=t25, DirName:/CN=t26, DirName:/CN=t27, DirName:/CN=t28, DirName:/CN=t29, DirName:/CN=t30, DirName:/CN=t31, DirName:/CN=t32, DirName:/CN=t33, DirName:/CN=t34, DirName:/CN=t35, DirName:/CN=t36, DirName:/CN=t37, DirName:/CN=t38, DirName:/CN=t39, DirName:/CN=t40, DirName:/CN=t41, DirName:/CN=t42, DirName:/CN=t43, DirName:/CN=t44, DirName:/CN=t45, DirName:/CN=t46, DirName:/CN=t47, DirName:/CN=t48, DirName:/CN=t49, DirName:/CN=t50, DirName:/CN=t51, DirName:/CN=t52, DirName:/CN=t53, DirName:/CN=t54, DirName:/CN=t55, DirName:/CN=t56, DirName:/CN=t57, DirName:/CN=t58, DirName:/CN=t59, DirName:/CN=t60, DirName:/CN=t61, DirName:/CN=t62, DirName:/CN=t63, DirName:/CN=t64, DirName:/CN=t65, DirName:/CN=t66, DirName:/CN=t67, DirName:/CN=t68, DirName:/CN=t69, DirName:/CN=t70, DirName:/CN=t71, DirName:/CN=t72, DirName:/CN=t73, DirName:/CN=t74, DirName:/CN=t75, DirName:/CN=t76, DirName:/CN=t77, DirName:/CN=t78, DirName:/CN=t79, DirName:/CN=t80, DirName:/CN=t81, DirName:/CN=t82, DirName:/CN=t83, DirName:/CN=t84, DirName:/CN=t85, DirName:/CN=t86, DirName:/CN=t87, DirName:/CN=t88, DirName:/CN=t89, DirName:/CN=t90, DirName:/CN=t91, DirName:/CN=t92, DirName:/CN=t93, DirName:/CN=t94, DirName:/CN=t95, DirName:/CN=t96, DirName:/CN=t97, DirName:/CN=t98, DirName:/CN=t99, DirName:/CN=t100, DirName:/CN=t101, DirName:/CN=t102, DirName:/CN=t103, DirName:/CN=t104, DirName:/CN=t105, DirName:/CN=t106, DirName:/CN=t107, DirName:/CN=t108, DirName:/CN=t109, DirName:/CN=t110, DirName:/CN=t111, DirName:/CN=t112, DirName:/CN=t113, DirName:/CN=t114, DirName:/CN=t115, DirName:/CN=t116, DirName:/CN=t117, DirName:/CN=t118, DirName:/CN=t119, DirName:/CN=t120, DirName:/CN=t121, DirName:/CN=t122, DirName:/CN=t123, DirName:/CN=t124, DirName:/CN=t125, DirName:/CN=t126, DirName:/CN=t127, DirName:/CN=t128, DirName:/CN=t129, DirName:/CN=t130, DirName:/CN=t131, DirName:/CN=t132, DirName:/CN=t133, DirName:/CN=t134, DirName:/CN=t135, DirName:/CN=t136, DirName:/CN=t137, DirName:/CN=t138, DirName:/CN=t139, DirName:/CN=t140, DirName:/CN=t141, DirName:/CN=t142, DirName:/CN=t143, DirName:/CN=t144, DirName:/CN=t145, DirName:/CN=t146, DirName:/CN=t147, DirName:/CN=t148, DirName:/CN=t149, DirName:/CN=t150, DirName:/CN=t151, DirName:/CN=t152, DirName:/CN=t153, DirName:/CN=t154, DirName:/CN=t155, DirName:/CN=t156, DirName:/CN=t157, DirName:/CN=t158, DirName:/CN=t159, DirName:/CN=t160, DirName:/CN=t161, DirName:/CN=t162, DirName:/CN=t163, DirName:/CN=t164, DirName:/CN=t165, DirName:/CN=t166, DirName:/CN=t167, DirName:/CN=t168, DirName:/CN=t169, DirName:/CN=t170, DirName:/CN=t171, DirName:/CN=t172, DirName:/CN=t173, DirName:/CN=t174, DirName:/CN=t175, DirName:/CN=t176, DirName:/CN=t177, DirName:/CN=t178, DirName:/CN=t179, DirName:/CN=t180, DirName:/CN=t181, DirName:/CN=t182, DirName:/CN=t183, DirName:/CN=t184, DirName:/CN=t185, DirName:/CN=t186, DirName:/CN=t187, DirName:/CN=t188, DirName:/CN=t189, DirName:/CN=t190, DirName:/CN=t191, DirName:/CN=t192, DirName:/CN=t193, DirName:/CN=t194, DirName:/CN=t195, DirName:/CN=t196, DirName:/CN=t197, DirName:/CN=t198, DirName:/CN=t199, DirName:/CN=t200, DirName:/CN=t201, DirName:/CN=t202, DirName:/CN=t203, DirName:/CN=t204, DirName:/CN=t205, DirName:/CN=t206, DirName:/CN=t207, DirName:/CN=t208, DirName:/CN=t209, DirName:/CN=t210, DirName:/CN=t211, DirName:/CN=t212, DirName:/CN=t213, DirName:/CN=t214, DirName:/CN=t215, DirName:/CN=t216, DirName:/CN=t217, DirName:/CN=t218, DirName:/CN=t219, DirName:/CN=t220, DirName:/CN=t221, DirName:/CN=t222, DirName:/CN=t223, DirName:/CN=t224, DirName:/CN=t225, DirName:/CN=t226, DirName:/CN=t227, DirName:/CN=t228, DirName:/CN=t229, DirName:/CN=t230, DirName:/CN=t231, DirName:/CN=t232, DirName:/CN=t233, DirName:/CN=t234, DirName:/CN=t235, DirName:/CN=t236, DirName:/CN=t237, DirName:/CN=t238, DirName:/CN=t239, DirName:/CN=t240, DirName:/CN=t241, DirName:/CN=t242, DirName:/CN=t243, DirName:/CN=t244, DirName:/CN=t245, DirName:/CN=t246, DirName:/CN=t247, DirName:/CN=t248, DirName:/CN=t249, DirName:/CN=t250, DirName:/CN=t251, DirName:/CN=t252, DirName:/CN=t253, DirName:/CN=t254, DirName:/CN=t255, DirName:/CN=t256, DirName:/CN=t257, DirName:/CN=t258, DirName:/CN=t259, DirName:/CN=t260, DirName:/CN=t261, DirName:/CN=t262, DirName:/CN=t263, DirName:/CN=t264, DirName:/CN=t265, DirName:/CN=t266, DirName:/CN=t267, DirName:/CN=t268, DirName:/CN=t269, DirName:/CN=t270, DirName:/CN=t271, DirName:/CN=t272, DirName:/CN=t273, DirName:/CN=t274, DirName:/CN=t275, DirName:/CN=t276, DirName:/CN=t277, DirName:/CN=t278, DirName:/CN=t279, DirName:/CN=t280, DirName:/CN=t281, DirName:/CN=t282, DirName:/CN=t283, DirName:/CN=t284, DirName:/CN=t285, DirName:/CN=t286, DirName:/CN=t287, DirName:/CN=t288, DirName:/CN=t289, DirName:/CN=t290, DirName:/CN=t291, DirName:/CN=t292, DirName:/CN=t293, DirName:/CN=t294, DirName:/CN=t295, DirName:/CN=t296, DirName:/CN=t297, DirName:/CN=t298, DirName:/CN=t299, DirName:/CN=t300, DirName:/CN=t301, DirName:/CN=t302, DirName:/CN=t303, DirName:/CN=t304, DirName:/CN=t305, DirName:/CN=t306, DirName:/CN=t307, DirName:/CN=t308, DirName:/CN=t309, DirName:/CN=t310, DirName:/CN=t311, DirName:/CN=t312, DirName:/CN=t313, DirName:/CN=t314, DirName:/CN=t315, DirName:/CN=t316, DirName:/CN=t317, DirName:/CN=t318, DirName:/CN=t319, DirName:/CN=t320, DirName:/CN=t321, DirName:/CN=t322, DirName:/CN=t323, DirName:/CN=t324, DirName:/CN=t325, DirName:/CN=t326, DirName:/CN=t327, DirName:/CN=t328, DirName:/CN=t329, DirName:/CN=t330, DirName:/CN=t331, DirName:/CN=t332, DirName:/CN=t333, DirName:/CN=t334, DirName:/CN=t335, DirName:/CN=t336, DirName:/CN=t337, DirName:/CN=t338, DirName:/CN=t339, DirName:/CN=t340 - Signature Algorithm: sha256WithRSAEncryption - 90:c2:57:f6:92:e9:c7:58:4e:b5:bd:11:26:33:dd:b9:3d:c2: - 1e:6d:6b:21:74:04:85:22:1e:d2:1b:09:fb:99:24:d8:e6:ed: - 1c:55:14:34:b7:19:4e:f2:cc:37:2e:b3:d3:26:96:f2:6d:88: - d6:8d:b2:7b:1a:6f:eb:66:f1:d9:f3:a3:4f:b0:76:51:d2:1c: - e6:b0:ae:0f:28:38:bf:c6:94:d5:76:71:0f:f6:11:95:c8:07: - 26:be:81:aa:55:4d:17:17:36:90:bb:c2:b8:40:72:a2:cf:0f: - d3:55:b1:65:50:67:c8:57:4b:54:bd:5b:42:7f:d4:b4:46:0e: - fe:9d:f0:eb:a9:96:c2:53:ce:b5:fb:71:3c:da:51:37:94:c7: - 7b:1e:d6:5b:c1:1b:da:ae:09:b1:da:d0:2d:27:ae:46:c6:5e: - d0:72:cb:e0:29:a7:c8:40:e8:18:94:26:ad:d8:51:21:43:24: - f6:f9:a4:9e:f1:57:d1:4b:3e:74:71:97:8f:de:09:2d:d3:85: - b1:79:a8:9d:d0:6c:35:90:a8:62:2f:fb:45:ac:c5:5b:5c:cc: - ea:72:05:b0:2f:79:36:56:f2:75:5b:b4:30:8c:0c:9f:fc:e8: - da:7e:2c:dd:fc:5e:fc:23:04:c1:53:31:a7:e2:ce:18:10:28: - b8:d4:60:8e ------BEGIN CERTIFICATE----- -MIIy0TCCMbmgAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY1TANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCMB4wgjAaMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgi8wBgNVHREEgi8nMIIvI4IH -dDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIHdDQudGVzdIIHdDUu -dGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDkudGVzdIIIdDEwLnRl -c3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQxNC50ZXN0ggh0MTUu -dGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIIIdDE5LnRlc3SCCHQy -MC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0ggh0MjQudGVzdIII -dDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRlc3SCCHQyOS50ZXN0 -ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMudGVzdIIIdDM0LnRl -c3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQzOC50ZXN0ggh0Mzku -dGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIIIdDQzLnRlc3SCCHQ0 -NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0ggh0NDgudGVzdIII -dDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRlc3SCCHQ1My50ZXN0 -ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcudGVzdIIIdDU4LnRl -c3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2Mi50ZXN0ggh0NjMu -dGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIIIdDY3LnRlc3SCCHQ2 -OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0ggh0NzIudGVzdIII -dDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRlc3SCCHQ3Ny50ZXN0 -ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEudGVzdIIIdDgyLnRl -c3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4Ni50ZXN0ggh0ODcu -dGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIIIdDkxLnRlc3SCCHQ5 -Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0ggh0OTYudGVzdIII -dDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50ZXN0ggl0MTAxLnRl -c3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SCCXQxMDUudGVzdIIJ -dDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEwOS50ZXN0ggl0MTEw -LnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRlc3SCCXQxMTQudGVz -dIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJdDExOC50ZXN0ggl0 -MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIyLnRlc3SCCXQxMjMu -dGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVzdIIJdDEyNy50ZXN0 -ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0MTMxLnRlc3SCCXQx -MzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUudGVzdIIJdDEzNi50 -ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0ggl0MTQwLnRlc3SC -CXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQxNDQudGVzdIIJdDE0 -NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50ZXN0ggl0MTQ5LnRl -c3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SCCXQxNTMudGVzdIIJ -dDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1Ny50ZXN0ggl0MTU4 -LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRlc3SCCXQxNjIudGVz -dIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJdDE2Ni50ZXN0ggl0 -MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcwLnRlc3SCCXQxNzEu -dGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVzdIIJdDE3NS50ZXN0 -ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0MTc5LnRlc3SCCXQx -ODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMudGVzdIIJdDE4NC50 -ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0ggl0MTg4LnRlc3SC -CXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQxOTIudGVzdIIJdDE5 -My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50ZXN0ggl0MTk3LnRl -c3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SCCXQyMDEudGVzdIIJ -dDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIwNS50ZXN0ggl0MjA2 -LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRlc3SCCXQyMTAudGVz -dIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJdDIxNC50ZXN0ggl0 -MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4LnRlc3SCCXQyMTku -dGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVzdIIJdDIyMy50ZXN0 -ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0MjI3LnRlc3SCCXQy -MjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEudGVzdIIJdDIzMi50 -ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0ggl0MjM2LnRlc3SC -CXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQyNDAudGVzdIIJdDI0 -MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50ZXN0ggl0MjQ1LnRl -c3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SCCXQyNDkudGVzdIIJ -dDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1My50ZXN0ggl0MjU0 -LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRlc3SCCXQyNTgudGVz -dIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJdDI2Mi50ZXN0ggl0 -MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2LnRlc3SCCXQyNjcu -dGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVzdIIJdDI3MS50ZXN0 -ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0Mjc1LnRlc3SCCXQy -NzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzkudGVzdIIJdDI4MC50 -ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0ggl0Mjg0LnRlc3SC -CXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQyODgudGVzdIIJdDI4 -OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50ZXN0ggl0MjkzLnRl -c3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SCCXQyOTcudGVzdIIJ -dDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMwMS50ZXN0ggl0MzAy -LnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRlc3SCCXQzMDYudGVz -dIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJdDMxMC50ZXN0ggl0 -MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0LnRlc3SCCXQzMTUu -dGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVzdIIJdDMxOS50ZXN0 -ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0MzIzLnRlc3SCCXQz -MjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcudGVzdIIJdDMyOC50 -ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0ggl0MzMyLnRlc3SC -CXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQzMzYudGVzdIIJdDMz -Ny50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50ZXN0ggl0MzQxLnRl -c3SHBAoAAACHBAoAAAGHBAoAAAKHBAoAAAOHBAoAAASHBAoAAAWHBAoAAAaHBAoA -AAeHBAoAAAiHBAoAAAmHBAoAAAqHBAoAAAuHBAoAAAyHBAoAAA2HBAoAAA6HBAoA -AA+HBAoAABCHBAoAABGHBAoAABKHBAoAABOHBAoAABSHBAoAABWHBAoAABaHBAoA -ABeHBAoAABiHBAoAABmHBAoAABqHBAoAABuHBAoAAByHBAoAAB2HBAoAAB6HBAoA -AB+HBAoAACCHBAoAACGHBAoAACKHBAoAACOHBAoAACSHBAoAACWHBAoAACaHBAoA -ACeHBAoAACiHBAoAACmHBAoAACqHBAoAACuHBAoAACyHBAoAAC2HBAoAAC6HBAoA -AC+HBAoAADCHBAoAADGHBAoAADKHBAoAADOHBAoAADSHBAoAADWHBAoAADaHBAoA -ADeHBAoAADiHBAoAADmHBAoAADqHBAoAADuHBAoAADyHBAoAAD2HBAoAAD6HBAoA -AD+HBAoAAECHBAoAAEGHBAoAAEKHBAoAAEOHBAoAAESHBAoAAEWHBAoAAEaHBAoA -AEeHBAoAAEiHBAoAAEmHBAoAAEqHBAoAAEuHBAoAAEyHBAoAAE2HBAoAAE6HBAoA -AE+HBAoAAFCHBAoAAFGHBAoAAFKHBAoAAFOHBAoAAFSHBAoAAFWHBAoAAFaHBAoA -AFeHBAoAAFiHBAoAAFmHBAoAAFqHBAoAAFuHBAoAAFyHBAoAAF2HBAoAAF6HBAoA -AF+HBAoAAGCHBAoAAGGHBAoAAGKHBAoAAGOHBAoAAGSHBAoAAGWHBAoAAGaHBAoA -AGeHBAoAAGiHBAoAAGmHBAoAAGqHBAoAAGuHBAoAAGyHBAoAAG2HBAoAAG6HBAoA -AG+HBAoAAHCHBAoAAHGHBAoAAHKHBAoAAHOHBAoAAHSHBAoAAHWHBAoAAHaHBAoA -AHeHBAoAAHiHBAoAAHmHBAoAAHqHBAoAAHuHBAoAAHyHBAoAAH2HBAoAAH6HBAoA -AH+HBAoAAICHBAoAAIGHBAoAAIKHBAoAAIOHBAoAAISHBAoAAIWHBAoAAIaHBAoA -AIeHBAoAAIiHBAoAAImHBAoAAIqHBAoAAIuHBAoAAIyHBAoAAI2HBAoAAI6HBAoA -AI+HBAoAAJCHBAoAAJGHBAoAAJKHBAoAAJOHBAoAAJSHBAoAAJWHBAoAAJaHBAoA -AJeHBAoAAJiHBAoAAJmHBAoAAJqHBAoAAJuHBAoAAJyHBAoAAJ2HBAoAAJ6HBAoA -AJ+HBAoAAKCHBAoAAKGHBAoAAKKHBAoAAKOHBAoAAKSHBAoAAKWHBAoAAKaHBAoA -AKeHBAoAAKiHBAoAAKmHBAoAAKqHBAoAAKuHBAoAAKyHBAoAAK2HBAoAAK6HBAoA -AK+HBAoAALCHBAoAALGHBAoAALKHBAoAALOHBAoAALSHBAoAALWHBAoAALaHBAoA -ALeHBAoAALiHBAoAALmHBAoAALqHBAoAALuHBAoAALyHBAoAAL2HBAoAAL6HBAoA -AL+HBAoAAMCHBAoAAMGHBAoAAMKHBAoAAMOHBAoAAMSHBAoAAMWHBAoAAMaHBAoA -AMeHBAoAAMiHBAoAAMmHBAoAAMqHBAoAAMuHBAoAAMyHBAoAAM2HBAoAAM6HBAoA -AM+HBAoAANCHBAoAANGHBAoAANKHBAoAANOHBAoAANSHBAoAANWHBAoAANaHBAoA -ANeHBAoAANiHBAoAANmHBAoAANqHBAoAANuHBAoAANyHBAoAAN2HBAoAAN6HBAoA -AN+HBAoAAOCHBAoAAOGHBAoAAOKHBAoAAOOHBAoAAOSHBAoAAOWHBAoAAOaHBAoA -AOeHBAoAAOiHBAoAAOmHBAoAAOqHBAoAAOuHBAoAAOyHBAoAAO2HBAoAAO6HBAoA -AO+HBAoAAPCHBAoAAPGHBAoAAPKHBAoAAPOHBAoAAPSHBAoAAPWHBAoAAPaHBAoA -APeHBAoAAPiHBAoAAPmHBAoAAPqHBAoAAPuHBAoAAPyHBAoAAP2HBAoAAP6HBAoA -AP+HBAoAAQCHBAoAAQGHBAoAAQKHBAoAAQOHBAoAAQSHBAoAAQWHBAoAAQaHBAoA -AQeHBAoAAQiHBAoAAQmHBAoAAQqHBAoAAQuHBAoAAQyHBAoAAQ2HBAoAAQ6HBAoA -AQ+HBAoAARCHBAoAARGHBAoAARKHBAoAAROHBAoAARSHBAoAARWHBAoAARaHBAoA -AReHBAoAARiHBAoAARmHBAoAARqHBAoAARuHBAoAARyHBAoAAR2HBAoAAR6HBAoA -AR+HBAoAASCHBAoAASGHBAoAASKHBAoAASOHBAoAASSHBAoAASWHBAoAASaHBAoA -ASeHBAoAASiHBAoAASmHBAoAASqHBAoAASuHBAoAASyHBAoAAS2HBAoAAS6HBAoA -AS+HBAoAATCHBAoAATGHBAoAATKHBAoAATOHBAoAATSHBAoAATWHBAoAATaHBAoA -ATeHBAoAATiHBAoAATmHBAoAATqHBAoAATuHBAoAATyHBAoAAT2HBAoAAT6HBAoA -AT+HBAoAAUCHBAoAAUGHBAoAAUKHBAoAAUOHBAoAAUSHBAoAAUWHBAoAAUaHBAoA -AUeHBAoAAUiHBAoAAUmHBAoAAUqHBAoAAUuHBAoAAUyHBAoAAU2HBAoAAU6HBAoA -AU+HBAoAAVCHBAoAAVGHBAoAAVKHBAoAAVOHBAoAAVSkDzANMQswCQYDVQQDDAJ0 -MKQPMA0xCzAJBgNVBAMMAnQxpA8wDTELMAkGA1UEAwwCdDKkDzANMQswCQYDVQQD -DAJ0M6QPMA0xCzAJBgNVBAMMAnQ0pA8wDTELMAkGA1UEAwwCdDWkDzANMQswCQYD -VQQDDAJ0NqQPMA0xCzAJBgNVBAMMAnQ3pA8wDTELMAkGA1UEAwwCdDikDzANMQsw -CQYDVQQDDAJ0OaQQMA4xDDAKBgNVBAMMA3QxMKQQMA4xDDAKBgNVBAMMA3QxMaQQ -MA4xDDAKBgNVBAMMA3QxMqQQMA4xDDAKBgNVBAMMA3QxM6QQMA4xDDAKBgNVBAMM -A3QxNKQQMA4xDDAKBgNVBAMMA3QxNaQQMA4xDDAKBgNVBAMMA3QxNqQQMA4xDDAK -BgNVBAMMA3QxN6QQMA4xDDAKBgNVBAMMA3QxOKQQMA4xDDAKBgNVBAMMA3QxOaQQ -MA4xDDAKBgNVBAMMA3QyMKQQMA4xDDAKBgNVBAMMA3QyMaQQMA4xDDAKBgNVBAMM -A3QyMqQQMA4xDDAKBgNVBAMMA3QyM6QQMA4xDDAKBgNVBAMMA3QyNKQQMA4xDDAK -BgNVBAMMA3QyNaQQMA4xDDAKBgNVBAMMA3QyNqQQMA4xDDAKBgNVBAMMA3QyN6QQ -MA4xDDAKBgNVBAMMA3QyOKQQMA4xDDAKBgNVBAMMA3QyOaQQMA4xDDAKBgNVBAMM -A3QzMKQQMA4xDDAKBgNVBAMMA3QzMaQQMA4xDDAKBgNVBAMMA3QzMqQQMA4xDDAK -BgNVBAMMA3QzM6QQMA4xDDAKBgNVBAMMA3QzNKQQMA4xDDAKBgNVBAMMA3QzNaQQ -MA4xDDAKBgNVBAMMA3QzNqQQMA4xDDAKBgNVBAMMA3QzN6QQMA4xDDAKBgNVBAMM -A3QzOKQQMA4xDDAKBgNVBAMMA3QzOaQQMA4xDDAKBgNVBAMMA3Q0MKQQMA4xDDAK -BgNVBAMMA3Q0MaQQMA4xDDAKBgNVBAMMA3Q0MqQQMA4xDDAKBgNVBAMMA3Q0M6QQ -MA4xDDAKBgNVBAMMA3Q0NKQQMA4xDDAKBgNVBAMMA3Q0NaQQMA4xDDAKBgNVBAMM -A3Q0NqQQMA4xDDAKBgNVBAMMA3Q0N6QQMA4xDDAKBgNVBAMMA3Q0OKQQMA4xDDAK -BgNVBAMMA3Q0OaQQMA4xDDAKBgNVBAMMA3Q1MKQQMA4xDDAKBgNVBAMMA3Q1MaQQ -MA4xDDAKBgNVBAMMA3Q1MqQQMA4xDDAKBgNVBAMMA3Q1M6QQMA4xDDAKBgNVBAMM -A3Q1NKQQMA4xDDAKBgNVBAMMA3Q1NaQQMA4xDDAKBgNVBAMMA3Q1NqQQMA4xDDAK -BgNVBAMMA3Q1N6QQMA4xDDAKBgNVBAMMA3Q1OKQQMA4xDDAKBgNVBAMMA3Q1OaQQ -MA4xDDAKBgNVBAMMA3Q2MKQQMA4xDDAKBgNVBAMMA3Q2MaQQMA4xDDAKBgNVBAMM -A3Q2MqQQMA4xDDAKBgNVBAMMA3Q2M6QQMA4xDDAKBgNVBAMMA3Q2NKQQMA4xDDAK -BgNVBAMMA3Q2NaQQMA4xDDAKBgNVBAMMA3Q2NqQQMA4xDDAKBgNVBAMMA3Q2N6QQ -MA4xDDAKBgNVBAMMA3Q2OKQQMA4xDDAKBgNVBAMMA3Q2OaQQMA4xDDAKBgNVBAMM -A3Q3MKQQMA4xDDAKBgNVBAMMA3Q3MaQQMA4xDDAKBgNVBAMMA3Q3MqQQMA4xDDAK -BgNVBAMMA3Q3M6QQMA4xDDAKBgNVBAMMA3Q3NKQQMA4xDDAKBgNVBAMMA3Q3NaQQ -MA4xDDAKBgNVBAMMA3Q3NqQQMA4xDDAKBgNVBAMMA3Q3N6QQMA4xDDAKBgNVBAMM -A3Q3OKQQMA4xDDAKBgNVBAMMA3Q3OaQQMA4xDDAKBgNVBAMMA3Q4MKQQMA4xDDAK -BgNVBAMMA3Q4MaQQMA4xDDAKBgNVBAMMA3Q4MqQQMA4xDDAKBgNVBAMMA3Q4M6QQ -MA4xDDAKBgNVBAMMA3Q4NKQQMA4xDDAKBgNVBAMMA3Q4NaQQMA4xDDAKBgNVBAMM -A3Q4NqQQMA4xDDAKBgNVBAMMA3Q4N6QQMA4xDDAKBgNVBAMMA3Q4OKQQMA4xDDAK -BgNVBAMMA3Q4OaQQMA4xDDAKBgNVBAMMA3Q5MKQQMA4xDDAKBgNVBAMMA3Q5MaQQ -MA4xDDAKBgNVBAMMA3Q5MqQQMA4xDDAKBgNVBAMMA3Q5M6QQMA4xDDAKBgNVBAMM -A3Q5NKQQMA4xDDAKBgNVBAMMA3Q5NaQQMA4xDDAKBgNVBAMMA3Q5NqQQMA4xDDAK -BgNVBAMMA3Q5N6QQMA4xDDAKBgNVBAMMA3Q5OKQQMA4xDDAKBgNVBAMMA3Q5OaQR -MA8xDTALBgNVBAMMBHQxMDCkETAPMQ0wCwYDVQQDDAR0MTAxpBEwDzENMAsGA1UE -AwwEdDEwMqQRMA8xDTALBgNVBAMMBHQxMDOkETAPMQ0wCwYDVQQDDAR0MTA0pBEw -DzENMAsGA1UEAwwEdDEwNaQRMA8xDTALBgNVBAMMBHQxMDakETAPMQ0wCwYDVQQD -DAR0MTA3pBEwDzENMAsGA1UEAwwEdDEwOKQRMA8xDTALBgNVBAMMBHQxMDmkETAP -MQ0wCwYDVQQDDAR0MTEwpBEwDzENMAsGA1UEAwwEdDExMaQRMA8xDTALBgNVBAMM -BHQxMTKkETAPMQ0wCwYDVQQDDAR0MTEzpBEwDzENMAsGA1UEAwwEdDExNKQRMA8x -DTALBgNVBAMMBHQxMTWkETAPMQ0wCwYDVQQDDAR0MTE2pBEwDzENMAsGA1UEAwwE -dDExN6QRMA8xDTALBgNVBAMMBHQxMTikETAPMQ0wCwYDVQQDDAR0MTE5pBEwDzEN -MAsGA1UEAwwEdDEyMKQRMA8xDTALBgNVBAMMBHQxMjGkETAPMQ0wCwYDVQQDDAR0 -MTIypBEwDzENMAsGA1UEAwwEdDEyM6QRMA8xDTALBgNVBAMMBHQxMjSkETAPMQ0w -CwYDVQQDDAR0MTI1pBEwDzENMAsGA1UEAwwEdDEyNqQRMA8xDTALBgNVBAMMBHQx -MjekETAPMQ0wCwYDVQQDDAR0MTI4pBEwDzENMAsGA1UEAwwEdDEyOaQRMA8xDTAL -BgNVBAMMBHQxMzCkETAPMQ0wCwYDVQQDDAR0MTMxpBEwDzENMAsGA1UEAwwEdDEz -MqQRMA8xDTALBgNVBAMMBHQxMzOkETAPMQ0wCwYDVQQDDAR0MTM0pBEwDzENMAsG -A1UEAwwEdDEzNaQRMA8xDTALBgNVBAMMBHQxMzakETAPMQ0wCwYDVQQDDAR0MTM3 -pBEwDzENMAsGA1UEAwwEdDEzOKQRMA8xDTALBgNVBAMMBHQxMzmkETAPMQ0wCwYD -VQQDDAR0MTQwpBEwDzENMAsGA1UEAwwEdDE0MaQRMA8xDTALBgNVBAMMBHQxNDKk -ETAPMQ0wCwYDVQQDDAR0MTQzpBEwDzENMAsGA1UEAwwEdDE0NKQRMA8xDTALBgNV -BAMMBHQxNDWkETAPMQ0wCwYDVQQDDAR0MTQ2pBEwDzENMAsGA1UEAwwEdDE0N6QR -MA8xDTALBgNVBAMMBHQxNDikETAPMQ0wCwYDVQQDDAR0MTQ5pBEwDzENMAsGA1UE -AwwEdDE1MKQRMA8xDTALBgNVBAMMBHQxNTGkETAPMQ0wCwYDVQQDDAR0MTUypBEw -DzENMAsGA1UEAwwEdDE1M6QRMA8xDTALBgNVBAMMBHQxNTSkETAPMQ0wCwYDVQQD -DAR0MTU1pBEwDzENMAsGA1UEAwwEdDE1NqQRMA8xDTALBgNVBAMMBHQxNTekETAP -MQ0wCwYDVQQDDAR0MTU4pBEwDzENMAsGA1UEAwwEdDE1OaQRMA8xDTALBgNVBAMM -BHQxNjCkETAPMQ0wCwYDVQQDDAR0MTYxpBEwDzENMAsGA1UEAwwEdDE2MqQRMA8x -DTALBgNVBAMMBHQxNjOkETAPMQ0wCwYDVQQDDAR0MTY0pBEwDzENMAsGA1UEAwwE -dDE2NaQRMA8xDTALBgNVBAMMBHQxNjakETAPMQ0wCwYDVQQDDAR0MTY3pBEwDzEN -MAsGA1UEAwwEdDE2OKQRMA8xDTALBgNVBAMMBHQxNjmkETAPMQ0wCwYDVQQDDAR0 -MTcwpBEwDzENMAsGA1UEAwwEdDE3MaQRMA8xDTALBgNVBAMMBHQxNzKkETAPMQ0w -CwYDVQQDDAR0MTczpBEwDzENMAsGA1UEAwwEdDE3NKQRMA8xDTALBgNVBAMMBHQx -NzWkETAPMQ0wCwYDVQQDDAR0MTc2pBEwDzENMAsGA1UEAwwEdDE3N6QRMA8xDTAL -BgNVBAMMBHQxNzikETAPMQ0wCwYDVQQDDAR0MTc5pBEwDzENMAsGA1UEAwwEdDE4 -MKQRMA8xDTALBgNVBAMMBHQxODGkETAPMQ0wCwYDVQQDDAR0MTgypBEwDzENMAsG -A1UEAwwEdDE4M6QRMA8xDTALBgNVBAMMBHQxODSkETAPMQ0wCwYDVQQDDAR0MTg1 -pBEwDzENMAsGA1UEAwwEdDE4NqQRMA8xDTALBgNVBAMMBHQxODekETAPMQ0wCwYD -VQQDDAR0MTg4pBEwDzENMAsGA1UEAwwEdDE4OaQRMA8xDTALBgNVBAMMBHQxOTCk -ETAPMQ0wCwYDVQQDDAR0MTkxpBEwDzENMAsGA1UEAwwEdDE5MqQRMA8xDTALBgNV -BAMMBHQxOTOkETAPMQ0wCwYDVQQDDAR0MTk0pBEwDzENMAsGA1UEAwwEdDE5NaQR -MA8xDTALBgNVBAMMBHQxOTakETAPMQ0wCwYDVQQDDAR0MTk3pBEwDzENMAsGA1UE -AwwEdDE5OKQRMA8xDTALBgNVBAMMBHQxOTmkETAPMQ0wCwYDVQQDDAR0MjAwpBEw -DzENMAsGA1UEAwwEdDIwMaQRMA8xDTALBgNVBAMMBHQyMDKkETAPMQ0wCwYDVQQD -DAR0MjAzpBEwDzENMAsGA1UEAwwEdDIwNKQRMA8xDTALBgNVBAMMBHQyMDWkETAP -MQ0wCwYDVQQDDAR0MjA2pBEwDzENMAsGA1UEAwwEdDIwN6QRMA8xDTALBgNVBAMM -BHQyMDikETAPMQ0wCwYDVQQDDAR0MjA5pBEwDzENMAsGA1UEAwwEdDIxMKQRMA8x -DTALBgNVBAMMBHQyMTGkETAPMQ0wCwYDVQQDDAR0MjEypBEwDzENMAsGA1UEAwwE -dDIxM6QRMA8xDTALBgNVBAMMBHQyMTSkETAPMQ0wCwYDVQQDDAR0MjE1pBEwDzEN -MAsGA1UEAwwEdDIxNqQRMA8xDTALBgNVBAMMBHQyMTekETAPMQ0wCwYDVQQDDAR0 -MjE4pBEwDzENMAsGA1UEAwwEdDIxOaQRMA8xDTALBgNVBAMMBHQyMjCkETAPMQ0w -CwYDVQQDDAR0MjIxpBEwDzENMAsGA1UEAwwEdDIyMqQRMA8xDTALBgNVBAMMBHQy -MjOkETAPMQ0wCwYDVQQDDAR0MjI0pBEwDzENMAsGA1UEAwwEdDIyNaQRMA8xDTAL -BgNVBAMMBHQyMjakETAPMQ0wCwYDVQQDDAR0MjI3pBEwDzENMAsGA1UEAwwEdDIy -OKQRMA8xDTALBgNVBAMMBHQyMjmkETAPMQ0wCwYDVQQDDAR0MjMwpBEwDzENMAsG -A1UEAwwEdDIzMaQRMA8xDTALBgNVBAMMBHQyMzKkETAPMQ0wCwYDVQQDDAR0MjMz -pBEwDzENMAsGA1UEAwwEdDIzNKQRMA8xDTALBgNVBAMMBHQyMzWkETAPMQ0wCwYD -VQQDDAR0MjM2pBEwDzENMAsGA1UEAwwEdDIzN6QRMA8xDTALBgNVBAMMBHQyMzik -ETAPMQ0wCwYDVQQDDAR0MjM5pBEwDzENMAsGA1UEAwwEdDI0MKQRMA8xDTALBgNV -BAMMBHQyNDGkETAPMQ0wCwYDVQQDDAR0MjQypBEwDzENMAsGA1UEAwwEdDI0M6QR -MA8xDTALBgNVBAMMBHQyNDSkETAPMQ0wCwYDVQQDDAR0MjQ1pBEwDzENMAsGA1UE -AwwEdDI0NqQRMA8xDTALBgNVBAMMBHQyNDekETAPMQ0wCwYDVQQDDAR0MjQ4pBEw -DzENMAsGA1UEAwwEdDI0OaQRMA8xDTALBgNVBAMMBHQyNTCkETAPMQ0wCwYDVQQD -DAR0MjUxpBEwDzENMAsGA1UEAwwEdDI1MqQRMA8xDTALBgNVBAMMBHQyNTOkETAP -MQ0wCwYDVQQDDAR0MjU0pBEwDzENMAsGA1UEAwwEdDI1NaQRMA8xDTALBgNVBAMM -BHQyNTakETAPMQ0wCwYDVQQDDAR0MjU3pBEwDzENMAsGA1UEAwwEdDI1OKQRMA8x -DTALBgNVBAMMBHQyNTmkETAPMQ0wCwYDVQQDDAR0MjYwpBEwDzENMAsGA1UEAwwE -dDI2MaQRMA8xDTALBgNVBAMMBHQyNjKkETAPMQ0wCwYDVQQDDAR0MjYzpBEwDzEN -MAsGA1UEAwwEdDI2NKQRMA8xDTALBgNVBAMMBHQyNjWkETAPMQ0wCwYDVQQDDAR0 -MjY2pBEwDzENMAsGA1UEAwwEdDI2N6QRMA8xDTALBgNVBAMMBHQyNjikETAPMQ0w -CwYDVQQDDAR0MjY5pBEwDzENMAsGA1UEAwwEdDI3MKQRMA8xDTALBgNVBAMMBHQy -NzGkETAPMQ0wCwYDVQQDDAR0MjcypBEwDzENMAsGA1UEAwwEdDI3M6QRMA8xDTAL -BgNVBAMMBHQyNzSkETAPMQ0wCwYDVQQDDAR0Mjc1pBEwDzENMAsGA1UEAwwEdDI3 -NqQRMA8xDTALBgNVBAMMBHQyNzekETAPMQ0wCwYDVQQDDAR0Mjc4pBEwDzENMAsG -A1UEAwwEdDI3OaQRMA8xDTALBgNVBAMMBHQyODCkETAPMQ0wCwYDVQQDDAR0Mjgx -pBEwDzENMAsGA1UEAwwEdDI4MqQRMA8xDTALBgNVBAMMBHQyODOkETAPMQ0wCwYD -VQQDDAR0Mjg0pBEwDzENMAsGA1UEAwwEdDI4NaQRMA8xDTALBgNVBAMMBHQyODak -ETAPMQ0wCwYDVQQDDAR0Mjg3pBEwDzENMAsGA1UEAwwEdDI4OKQRMA8xDTALBgNV -BAMMBHQyODmkETAPMQ0wCwYDVQQDDAR0MjkwpBEwDzENMAsGA1UEAwwEdDI5MaQR -MA8xDTALBgNVBAMMBHQyOTKkETAPMQ0wCwYDVQQDDAR0MjkzpBEwDzENMAsGA1UE -AwwEdDI5NKQRMA8xDTALBgNVBAMMBHQyOTWkETAPMQ0wCwYDVQQDDAR0Mjk2pBEw -DzENMAsGA1UEAwwEdDI5N6QRMA8xDTALBgNVBAMMBHQyOTikETAPMQ0wCwYDVQQD -DAR0Mjk5pBEwDzENMAsGA1UEAwwEdDMwMKQRMA8xDTALBgNVBAMMBHQzMDGkETAP -MQ0wCwYDVQQDDAR0MzAypBEwDzENMAsGA1UEAwwEdDMwM6QRMA8xDTALBgNVBAMM -BHQzMDSkETAPMQ0wCwYDVQQDDAR0MzA1pBEwDzENMAsGA1UEAwwEdDMwNqQRMA8x -DTALBgNVBAMMBHQzMDekETAPMQ0wCwYDVQQDDAR0MzA4pBEwDzENMAsGA1UEAwwE -dDMwOaQRMA8xDTALBgNVBAMMBHQzMTCkETAPMQ0wCwYDVQQDDAR0MzExpBEwDzEN -MAsGA1UEAwwEdDMxMqQRMA8xDTALBgNVBAMMBHQzMTOkETAPMQ0wCwYDVQQDDAR0 -MzE0pBEwDzENMAsGA1UEAwwEdDMxNaQRMA8xDTALBgNVBAMMBHQzMTakETAPMQ0w -CwYDVQQDDAR0MzE3pBEwDzENMAsGA1UEAwwEdDMxOKQRMA8xDTALBgNVBAMMBHQz -MTmkETAPMQ0wCwYDVQQDDAR0MzIwpBEwDzENMAsGA1UEAwwEdDMyMaQRMA8xDTAL -BgNVBAMMBHQzMjKkETAPMQ0wCwYDVQQDDAR0MzIzpBEwDzENMAsGA1UEAwwEdDMy -NKQRMA8xDTALBgNVBAMMBHQzMjWkETAPMQ0wCwYDVQQDDAR0MzI2pBEwDzENMAsG -A1UEAwwEdDMyN6QRMA8xDTALBgNVBAMMBHQzMjikETAPMQ0wCwYDVQQDDAR0MzI5 -pBEwDzENMAsGA1UEAwwEdDMzMKQRMA8xDTALBgNVBAMMBHQzMzGkETAPMQ0wCwYD -VQQDDAR0MzMypBEwDzENMAsGA1UEAwwEdDMzM6QRMA8xDTALBgNVBAMMBHQzMzSk -ETAPMQ0wCwYDVQQDDAR0MzM1pBEwDzENMAsGA1UEAwwEdDMzNqQRMA8xDTALBgNV -BAMMBHQzMzekETAPMQ0wCwYDVQQDDAR0MzM4pBEwDzENMAsGA1UEAwwEdDMzOaQR -MA8xDTALBgNVBAMMBHQzNDAwDQYJKoZIhvcNAQELBQADggEBAJDCV/aS6cdYTrW9 -ESYz3bk9wh5tayF0BIUiHtIbCfuZJNjm7RxVFDS3GU7yzDcus9MmlvJtiNaNsnsa -b+tm8dnzo0+wdlHSHOawrg8oOL/GlNV2cQ/2EZXIBya+gapVTRcXNpC7wrhAcqLP -D9NVsWVQZ8hXS1S9W0J/1LRGDv6d8OuplsJTzrX7cTzaUTeUx3se1lvBG9quCbHa -0C0nrkbGXtByy+App8hA6BiUJq3YUSFDJPb5pJ7xV9FLPnRxl4/eCS3ThbF5qJ3Q -bDWQqGIv+0WsxVtczOpyBbAveTZW8nVbtDCMDJ/86Np+LN38XvwjBMFTMafizhgQ -KLjUYI4= ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.cnf deleted file mode 100644 index e7c2816a80..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.cnf +++ /dev/null @@ -1,1091 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "t0" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,digitalSignature,keyEncipherment -extendedKeyUsage = serverAuth,clientAuth -subjectAltName = @san_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/t0_2.pem -new_certs_dir = out -serial = out/t0.serial -database = out/t0.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/t0.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/t0.cer - -[crl_info] -URI.0 = http://url-for-crl/t0.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[san_info] -DNS.1 = t0.test -DNS.2 = t1.test -DNS.3 = t2.test -DNS.4 = t3.test -DNS.5 = t4.test -DNS.6 = t5.test -DNS.7 = t6.test -DNS.8 = t7.test -DNS.9 = t8.test -DNS.10 = t9.test -DNS.11 = t10.test -DNS.12 = t11.test -DNS.13 = t12.test -DNS.14 = t13.test -DNS.15 = t14.test -DNS.16 = t15.test -DNS.17 = t16.test -DNS.18 = t17.test -DNS.19 = t18.test -DNS.20 = t19.test -DNS.21 = t20.test -DNS.22 = t21.test -DNS.23 = t22.test -DNS.24 = t23.test -DNS.25 = t24.test -DNS.26 = t25.test -DNS.27 = t26.test -DNS.28 = t27.test -DNS.29 = t28.test -DNS.30 = t29.test -DNS.31 = t30.test -DNS.32 = t31.test -DNS.33 = t32.test -DNS.34 = t33.test -DNS.35 = t34.test -DNS.36 = t35.test -DNS.37 = t36.test -DNS.38 = t37.test -DNS.39 = t38.test -DNS.40 = t39.test -DNS.41 = t40.test -DNS.42 = t41.test -DNS.43 = t42.test -DNS.44 = t43.test -DNS.45 = t44.test -DNS.46 = t45.test -DNS.47 = t46.test -DNS.48 = t47.test -DNS.49 = t48.test -DNS.50 = t49.test -DNS.51 = t50.test -DNS.52 = t51.test -DNS.53 = t52.test -DNS.54 = t53.test -DNS.55 = t54.test -DNS.56 = t55.test -DNS.57 = t56.test -DNS.58 = t57.test -DNS.59 = t58.test -DNS.60 = t59.test -DNS.61 = t60.test -DNS.62 = t61.test -DNS.63 = t62.test -DNS.64 = t63.test -DNS.65 = t64.test -DNS.66 = t65.test -DNS.67 = t66.test -DNS.68 = t67.test -DNS.69 = t68.test -DNS.70 = t69.test -DNS.71 = t70.test -DNS.72 = t71.test -DNS.73 = t72.test -DNS.74 = t73.test -DNS.75 = t74.test -DNS.76 = t75.test -DNS.77 = t76.test -DNS.78 = t77.test -DNS.79 = t78.test -DNS.80 = t79.test -DNS.81 = t80.test -DNS.82 = t81.test -DNS.83 = t82.test -DNS.84 = t83.test -DNS.85 = t84.test -DNS.86 = t85.test -DNS.87 = t86.test -DNS.88 = t87.test -DNS.89 = t88.test -DNS.90 = t89.test -DNS.91 = t90.test -DNS.92 = t91.test -DNS.93 = t92.test -DNS.94 = t93.test -DNS.95 = t94.test -DNS.96 = t95.test -DNS.97 = t96.test -DNS.98 = t97.test -DNS.99 = t98.test -DNS.100 = t99.test -DNS.101 = t100.test -DNS.102 = t101.test -DNS.103 = t102.test -DNS.104 = t103.test -DNS.105 = t104.test -DNS.106 = t105.test -DNS.107 = t106.test -DNS.108 = t107.test -DNS.109 = t108.test -DNS.110 = t109.test -DNS.111 = t110.test -DNS.112 = t111.test -DNS.113 = t112.test -DNS.114 = t113.test -DNS.115 = t114.test -DNS.116 = t115.test -DNS.117 = t116.test -DNS.118 = t117.test -DNS.119 = t118.test -DNS.120 = t119.test -DNS.121 = t120.test -DNS.122 = t121.test -DNS.123 = t122.test -DNS.124 = t123.test -DNS.125 = t124.test -DNS.126 = t125.test -DNS.127 = t126.test -DNS.128 = t127.test -DNS.129 = t128.test -DNS.130 = t129.test -DNS.131 = t130.test -DNS.132 = t131.test -DNS.133 = t132.test -DNS.134 = t133.test -DNS.135 = t134.test -DNS.136 = t135.test -DNS.137 = t136.test -DNS.138 = t137.test -DNS.139 = t138.test -DNS.140 = t139.test -DNS.141 = t140.test -DNS.142 = t141.test -DNS.143 = t142.test -DNS.144 = t143.test -DNS.145 = t144.test -DNS.146 = t145.test -DNS.147 = t146.test -DNS.148 = t147.test -DNS.149 = t148.test -DNS.150 = t149.test -DNS.151 = t150.test -DNS.152 = t151.test -DNS.153 = t152.test -DNS.154 = t153.test -DNS.155 = t154.test -DNS.156 = t155.test -DNS.157 = t156.test -DNS.158 = t157.test -DNS.159 = t158.test -DNS.160 = t159.test -DNS.161 = t160.test -DNS.162 = t161.test -DNS.163 = t162.test -DNS.164 = t163.test -DNS.165 = t164.test -DNS.166 = t165.test -DNS.167 = t166.test -DNS.168 = t167.test -DNS.169 = t168.test -DNS.170 = t169.test -DNS.171 = t170.test -DNS.172 = t171.test -DNS.173 = t172.test -DNS.174 = t173.test -DNS.175 = t174.test -DNS.176 = t175.test -DNS.177 = t176.test -DNS.178 = t177.test -DNS.179 = t178.test -DNS.180 = t179.test -DNS.181 = t180.test -DNS.182 = t181.test -DNS.183 = t182.test -DNS.184 = t183.test -DNS.185 = t184.test -DNS.186 = t185.test -DNS.187 = t186.test -DNS.188 = t187.test -DNS.189 = t188.test -DNS.190 = t189.test -DNS.191 = t190.test -DNS.192 = t191.test -DNS.193 = t192.test -DNS.194 = t193.test -DNS.195 = t194.test -DNS.196 = t195.test -DNS.197 = t196.test -DNS.198 = t197.test -DNS.199 = t198.test -DNS.200 = t199.test -DNS.201 = t200.test -DNS.202 = t201.test -DNS.203 = t202.test -DNS.204 = t203.test -DNS.205 = t204.test -DNS.206 = t205.test -DNS.207 = t206.test -DNS.208 = t207.test -DNS.209 = t208.test -DNS.210 = t209.test -DNS.211 = t210.test -DNS.212 = t211.test -DNS.213 = t212.test -DNS.214 = t213.test -DNS.215 = t214.test -DNS.216 = t215.test -DNS.217 = t216.test -DNS.218 = t217.test -DNS.219 = t218.test -DNS.220 = t219.test -DNS.221 = t220.test -DNS.222 = t221.test -DNS.223 = t222.test -DNS.224 = t223.test -DNS.225 = t224.test -DNS.226 = t225.test -DNS.227 = t226.test -DNS.228 = t227.test -DNS.229 = t228.test -DNS.230 = t229.test -DNS.231 = t230.test -DNS.232 = t231.test -DNS.233 = t232.test -DNS.234 = t233.test -DNS.235 = t234.test -DNS.236 = t235.test -DNS.237 = t236.test -DNS.238 = t237.test -DNS.239 = t238.test -DNS.240 = t239.test -DNS.241 = t240.test -DNS.242 = t241.test -DNS.243 = t242.test -DNS.244 = t243.test -DNS.245 = t244.test -DNS.246 = t245.test -DNS.247 = t246.test -DNS.248 = t247.test -DNS.249 = t248.test -DNS.250 = t249.test -DNS.251 = t250.test -DNS.252 = t251.test -DNS.253 = t252.test -DNS.254 = t253.test -DNS.255 = t254.test -DNS.256 = t255.test -DNS.257 = t256.test -DNS.258 = t257.test -DNS.259 = t258.test -DNS.260 = t259.test -DNS.261 = t260.test -DNS.262 = t261.test -DNS.263 = t262.test -DNS.264 = t263.test -DNS.265 = t264.test -DNS.266 = t265.test -DNS.267 = t266.test -DNS.268 = t267.test -DNS.269 = t268.test -DNS.270 = t269.test -DNS.271 = t270.test -DNS.272 = t271.test -DNS.273 = t272.test -DNS.274 = t273.test -DNS.275 = t274.test -DNS.276 = t275.test -DNS.277 = t276.test -DNS.278 = t277.test -DNS.279 = t278.test -DNS.280 = t279.test -DNS.281 = t280.test -DNS.282 = t281.test -DNS.283 = t282.test -DNS.284 = t283.test -DNS.285 = t284.test -DNS.286 = t285.test -DNS.287 = t286.test -DNS.288 = t287.test -DNS.289 = t288.test -DNS.290 = t289.test -DNS.291 = t290.test -DNS.292 = t291.test -DNS.293 = t292.test -DNS.294 = t293.test -DNS.295 = t294.test -DNS.296 = t295.test -DNS.297 = t296.test -DNS.298 = t297.test -DNS.299 = t298.test -DNS.300 = t299.test -DNS.301 = t300.test -DNS.302 = t301.test -DNS.303 = t302.test -DNS.304 = t303.test -DNS.305 = t304.test -DNS.306 = t305.test -DNS.307 = t306.test -DNS.308 = t307.test -DNS.309 = t308.test -DNS.310 = t309.test -DNS.311 = t310.test -DNS.312 = t311.test -DNS.313 = t312.test -DNS.314 = t313.test -DNS.315 = t314.test -DNS.316 = t315.test -DNS.317 = t316.test -DNS.318 = t317.test -DNS.319 = t318.test -DNS.320 = t319.test -DNS.321 = t320.test -DNS.322 = t321.test -DNS.323 = t322.test -DNS.324 = t323.test -DNS.325 = t324.test -DNS.326 = t325.test -DNS.327 = t326.test -DNS.328 = t327.test -DNS.329 = t328.test -DNS.330 = t329.test -DNS.331 = t330.test -DNS.332 = t331.test -DNS.333 = t332.test -DNS.334 = t333.test -DNS.335 = t334.test -DNS.336 = t335.test -DNS.337 = t336.test -DNS.338 = t337.test -DNS.339 = t338.test -DNS.340 = t339.test -DNS.341 = t340.test -DNS.342 = t341.test -DNS.343 = t342.test -DNS.344 = t343.test -DNS.345 = t344.test -DNS.346 = t345.test -DNS.347 = t346.test -DNS.348 = t347.test -DNS.349 = t348.test -DNS.350 = t349.test -DNS.351 = t350.test -DNS.352 = t351.test -DNS.353 = t352.test -DNS.354 = t353.test -DNS.355 = t354.test -DNS.356 = t355.test -DNS.357 = t356.test -DNS.358 = t357.test -DNS.359 = t358.test -DNS.360 = t359.test -DNS.361 = t360.test -DNS.362 = t361.test -DNS.363 = t362.test -DNS.364 = t363.test -DNS.365 = t364.test -DNS.366 = t365.test -DNS.367 = t366.test -DNS.368 = t367.test -DNS.369 = t368.test -DNS.370 = t369.test -DNS.371 = t370.test -DNS.372 = t371.test -DNS.373 = t372.test -DNS.374 = t373.test -DNS.375 = t374.test -DNS.376 = t375.test -DNS.377 = t376.test -DNS.378 = t377.test -DNS.379 = t378.test -DNS.380 = t379.test -DNS.381 = t380.test -DNS.382 = t381.test -DNS.383 = t382.test -DNS.384 = t383.test -DNS.385 = t384.test -DNS.386 = t385.test -DNS.387 = t386.test -DNS.388 = t387.test -DNS.389 = t388.test -DNS.390 = t389.test -DNS.391 = t390.test -DNS.392 = t391.test -DNS.393 = t392.test -DNS.394 = t393.test -DNS.395 = t394.test -DNS.396 = t395.test -DNS.397 = t396.test -DNS.398 = t397.test -DNS.399 = t398.test -DNS.400 = t399.test -DNS.401 = t400.test -DNS.402 = t401.test -DNS.403 = t402.test -DNS.404 = t403.test -DNS.405 = t404.test -DNS.406 = t405.test -DNS.407 = t406.test -DNS.408 = t407.test -DNS.409 = t408.test -DNS.410 = t409.test -DNS.411 = t410.test -DNS.412 = t411.test -DNS.413 = t412.test -DNS.414 = t413.test -DNS.415 = t414.test -DNS.416 = t415.test -DNS.417 = t416.test -DNS.418 = t417.test -DNS.419 = t418.test -DNS.420 = t419.test -DNS.421 = t420.test -DNS.422 = t421.test -DNS.423 = t422.test -DNS.424 = t423.test -DNS.425 = t424.test -DNS.426 = t425.test -DNS.427 = t426.test -DNS.428 = t427.test -DNS.429 = t428.test -DNS.430 = t429.test -DNS.431 = t430.test -DNS.432 = t431.test -DNS.433 = t432.test -DNS.434 = t433.test -DNS.435 = t434.test -DNS.436 = t435.test -DNS.437 = t436.test -DNS.438 = t437.test -DNS.439 = t438.test -DNS.440 = t439.test -DNS.441 = t440.test -DNS.442 = t441.test -DNS.443 = t442.test -DNS.444 = t443.test -DNS.445 = t444.test -DNS.446 = t445.test -DNS.447 = t446.test -DNS.448 = t447.test -DNS.449 = t448.test -DNS.450 = t449.test -DNS.451 = t450.test -DNS.452 = t451.test -DNS.453 = t452.test -DNS.454 = t453.test -DNS.455 = t454.test -DNS.456 = t455.test -DNS.457 = t456.test -DNS.458 = t457.test -DNS.459 = t458.test -DNS.460 = t459.test -DNS.461 = t460.test -DNS.462 = t461.test -DNS.463 = t462.test -DNS.464 = t463.test -DNS.465 = t464.test -DNS.466 = t465.test -DNS.467 = t466.test -DNS.468 = t467.test -DNS.469 = t468.test -DNS.470 = t469.test -DNS.471 = t470.test -DNS.472 = t471.test -DNS.473 = t472.test -DNS.474 = t473.test -DNS.475 = t474.test -DNS.476 = t475.test -DNS.477 = t476.test -DNS.478 = t477.test -DNS.479 = t478.test -DNS.480 = t479.test -DNS.481 = t480.test -DNS.482 = t481.test -DNS.483 = t482.test -DNS.484 = t483.test -DNS.485 = t484.test -DNS.486 = t485.test -DNS.487 = t486.test -DNS.488 = t487.test -DNS.489 = t488.test -DNS.490 = t489.test -DNS.491 = t490.test -DNS.492 = t491.test -DNS.493 = t492.test -DNS.494 = t493.test -DNS.495 = t494.test -DNS.496 = t495.test -DNS.497 = t496.test -DNS.498 = t497.test -DNS.499 = t498.test -DNS.500 = t499.test -DNS.501 = t500.test -DNS.502 = t501.test -DNS.503 = t502.test -DNS.504 = t503.test -DNS.505 = t504.test -DNS.506 = t505.test -DNS.507 = t506.test -DNS.508 = t507.test -DNS.509 = t508.test -DNS.510 = t509.test -DNS.511 = t510.test -DNS.512 = t511.test -DNS.513 = t512.test -DNS.514 = t513.test -DNS.515 = t514.test -DNS.516 = t515.test -DNS.517 = t516.test -DNS.518 = t517.test -DNS.519 = t518.test -DNS.520 = t519.test -DNS.521 = t520.test -DNS.522 = t521.test -DNS.523 = t522.test -DNS.524 = t523.test -DNS.525 = t524.test -DNS.526 = t525.test -DNS.527 = t526.test -DNS.528 = t527.test -DNS.529 = t528.test -DNS.530 = t529.test -DNS.531 = t530.test -DNS.532 = t531.test -DNS.533 = t532.test -DNS.534 = t533.test -DNS.535 = t534.test -DNS.536 = t535.test -DNS.537 = t536.test -DNS.538 = t537.test -DNS.539 = t538.test -DNS.540 = t539.test -DNS.541 = t540.test -DNS.542 = t541.test -DNS.543 = t542.test -DNS.544 = t543.test -DNS.545 = t544.test -DNS.546 = t545.test -DNS.547 = t546.test -DNS.548 = t547.test -DNS.549 = t548.test -DNS.550 = t549.test -DNS.551 = t550.test -DNS.552 = t551.test -DNS.553 = t552.test -DNS.554 = t553.test -DNS.555 = t554.test -DNS.556 = t555.test -DNS.557 = t556.test -DNS.558 = t557.test -DNS.559 = t558.test -DNS.560 = t559.test -DNS.561 = t560.test -DNS.562 = t561.test -DNS.563 = t562.test -DNS.564 = t563.test -DNS.565 = t564.test -DNS.566 = t565.test -DNS.567 = t566.test -DNS.568 = t567.test -DNS.569 = t568.test -DNS.570 = t569.test -DNS.571 = t570.test -DNS.572 = t571.test -DNS.573 = t572.test -DNS.574 = t573.test -DNS.575 = t574.test -DNS.576 = t575.test -DNS.577 = t576.test -DNS.578 = t577.test -DNS.579 = t578.test -DNS.580 = t579.test -DNS.581 = t580.test -DNS.582 = t581.test -DNS.583 = t582.test -DNS.584 = t583.test -DNS.585 = t584.test -DNS.586 = t585.test -DNS.587 = t586.test -DNS.588 = t587.test -DNS.589 = t588.test -DNS.590 = t589.test -DNS.591 = t590.test -DNS.592 = t591.test -DNS.593 = t592.test -DNS.594 = t593.test -DNS.595 = t594.test -DNS.596 = t595.test -DNS.597 = t596.test -DNS.598 = t597.test -DNS.599 = t598.test -DNS.600 = t599.test -DNS.601 = t600.test -DNS.602 = t601.test -DNS.603 = t602.test -DNS.604 = t603.test -DNS.605 = t604.test -DNS.606 = t605.test -DNS.607 = t606.test -DNS.608 = t607.test -DNS.609 = t608.test -DNS.610 = t609.test -DNS.611 = t610.test -DNS.612 = t611.test -DNS.613 = t612.test -DNS.614 = t613.test -DNS.615 = t614.test -DNS.616 = t615.test -DNS.617 = t616.test -DNS.618 = t617.test -DNS.619 = t618.test -DNS.620 = t619.test -DNS.621 = t620.test -DNS.622 = t621.test -DNS.623 = t622.test -DNS.624 = t623.test -DNS.625 = t624.test -DNS.626 = t625.test -DNS.627 = t626.test -DNS.628 = t627.test -DNS.629 = t628.test -DNS.630 = t629.test -DNS.631 = t630.test -DNS.632 = t631.test -DNS.633 = t632.test -DNS.634 = t633.test -DNS.635 = t634.test -DNS.636 = t635.test -DNS.637 = t636.test -DNS.638 = t637.test -DNS.639 = t638.test -DNS.640 = t639.test -DNS.641 = t640.test -DNS.642 = t641.test -DNS.643 = t642.test -DNS.644 = t643.test -DNS.645 = t644.test -DNS.646 = t645.test -DNS.647 = t646.test -DNS.648 = t647.test -DNS.649 = t648.test -DNS.650 = t649.test -DNS.651 = t650.test -DNS.652 = t651.test -DNS.653 = t652.test -DNS.654 = t653.test -DNS.655 = t654.test -DNS.656 = t655.test -DNS.657 = t656.test -DNS.658 = t657.test -DNS.659 = t658.test -DNS.660 = t659.test -DNS.661 = t660.test -DNS.662 = t661.test -DNS.663 = t662.test -DNS.664 = t663.test -DNS.665 = t664.test -DNS.666 = t665.test -DNS.667 = t666.test -DNS.668 = t667.test -DNS.669 = t668.test -DNS.670 = t669.test -DNS.671 = t670.test -DNS.672 = t671.test -DNS.673 = t672.test -DNS.674 = t673.test -DNS.675 = t674.test -DNS.676 = t675.test -DNS.677 = t676.test -DNS.678 = t677.test -DNS.679 = t678.test -DNS.680 = t679.test -DNS.681 = t680.test -DNS.682 = t681.test -DNS.683 = t682.test -DNS.684 = t683.test -DNS.685 = t684.test -DNS.686 = t685.test -DNS.687 = t686.test -DNS.688 = t687.test -DNS.689 = t688.test -DNS.690 = t689.test -DNS.691 = t690.test -DNS.692 = t691.test -DNS.693 = t692.test -DNS.694 = t693.test -DNS.695 = t694.test -DNS.696 = t695.test -DNS.697 = t696.test -DNS.698 = t697.test -DNS.699 = t698.test -DNS.700 = t699.test -DNS.701 = t700.test -DNS.702 = t701.test -DNS.703 = t702.test -DNS.704 = t703.test -DNS.705 = t704.test -DNS.706 = t705.test -DNS.707 = t706.test -DNS.708 = t707.test -DNS.709 = t708.test -DNS.710 = t709.test -DNS.711 = t710.test -DNS.712 = t711.test -DNS.713 = t712.test -DNS.714 = t713.test -DNS.715 = t714.test -DNS.716 = t715.test -DNS.717 = t716.test -DNS.718 = t717.test -DNS.719 = t718.test -DNS.720 = t719.test -DNS.721 = t720.test -DNS.722 = t721.test -DNS.723 = t722.test -DNS.724 = t723.test -DNS.725 = t724.test -DNS.726 = t725.test -DNS.727 = t726.test -DNS.728 = t727.test -DNS.729 = t728.test -DNS.730 = t729.test -DNS.731 = t730.test -DNS.732 = t731.test -DNS.733 = t732.test -DNS.734 = t733.test -DNS.735 = t734.test -DNS.736 = t735.test -DNS.737 = t736.test -DNS.738 = t737.test -DNS.739 = t738.test -DNS.740 = t739.test -DNS.741 = t740.test -DNS.742 = t741.test -DNS.743 = t742.test -DNS.744 = t743.test -DNS.745 = t744.test -DNS.746 = t745.test -DNS.747 = t746.test -DNS.748 = t747.test -DNS.749 = t748.test -DNS.750 = t749.test -DNS.751 = t750.test -DNS.752 = t751.test -DNS.753 = t752.test -DNS.754 = t753.test -DNS.755 = t754.test -DNS.756 = t755.test -DNS.757 = t756.test -DNS.758 = t757.test -DNS.759 = t758.test -DNS.760 = t759.test -DNS.761 = t760.test -DNS.762 = t761.test -DNS.763 = t762.test -DNS.764 = t763.test -DNS.765 = t764.test -DNS.766 = t765.test -DNS.767 = t766.test -DNS.768 = t767.test -DNS.769 = t768.test -DNS.770 = t769.test -DNS.771 = t770.test -DNS.772 = t771.test -DNS.773 = t772.test -DNS.774 = t773.test -DNS.775 = t774.test -DNS.776 = t775.test -DNS.777 = t776.test -DNS.778 = t777.test -DNS.779 = t778.test -DNS.780 = t779.test -DNS.781 = t780.test -DNS.782 = t781.test -DNS.783 = t782.test -DNS.784 = t783.test -DNS.785 = t784.test -DNS.786 = t785.test -DNS.787 = t786.test -DNS.788 = t787.test -DNS.789 = t788.test -DNS.790 = t789.test -DNS.791 = t790.test -DNS.792 = t791.test -DNS.793 = t792.test -DNS.794 = t793.test -DNS.795 = t794.test -DNS.796 = t795.test -DNS.797 = t796.test -DNS.798 = t797.test -DNS.799 = t798.test -DNS.800 = t799.test -DNS.801 = t800.test -DNS.802 = t801.test -DNS.803 = t802.test -DNS.804 = t803.test -DNS.805 = t804.test -DNS.806 = t805.test -DNS.807 = t806.test -DNS.808 = t807.test -DNS.809 = t808.test -DNS.810 = t809.test -DNS.811 = t810.test -DNS.812 = t811.test -DNS.813 = t812.test -DNS.814 = t813.test -DNS.815 = t814.test -DNS.816 = t815.test -DNS.817 = t816.test -DNS.818 = t817.test -DNS.819 = t818.test -DNS.820 = t819.test -DNS.821 = t820.test -DNS.822 = t821.test -DNS.823 = t822.test -DNS.824 = t823.test -DNS.825 = t824.test -DNS.826 = t825.test -DNS.827 = t826.test -DNS.828 = t827.test -DNS.829 = t828.test -DNS.830 = t829.test -DNS.831 = t830.test -DNS.832 = t831.test -DNS.833 = t832.test -DNS.834 = t833.test -DNS.835 = t834.test -DNS.836 = t835.test -DNS.837 = t836.test -DNS.838 = t837.test -DNS.839 = t838.test -DNS.840 = t839.test -DNS.841 = t840.test -DNS.842 = t841.test -DNS.843 = t842.test -DNS.844 = t843.test -DNS.845 = t844.test -DNS.846 = t845.test -DNS.847 = t846.test -DNS.848 = t847.test -DNS.849 = t848.test -DNS.850 = t849.test -DNS.851 = t850.test -DNS.852 = t851.test -DNS.853 = t852.test -DNS.854 = t853.test -DNS.855 = t854.test -DNS.856 = t855.test -DNS.857 = t856.test -DNS.858 = t857.test -DNS.859 = t858.test -DNS.860 = t859.test -DNS.861 = t860.test -DNS.862 = t861.test -DNS.863 = t862.test -DNS.864 = t863.test -DNS.865 = t864.test -DNS.866 = t865.test -DNS.867 = t866.test -DNS.868 = t867.test -DNS.869 = t868.test -DNS.870 = t869.test -DNS.871 = t870.test -DNS.872 = t871.test -DNS.873 = t872.test -DNS.874 = t873.test -DNS.875 = t874.test -DNS.876 = t875.test -DNS.877 = t876.test -DNS.878 = t877.test -DNS.879 = t878.test -DNS.880 = t879.test -DNS.881 = t880.test -DNS.882 = t881.test -DNS.883 = t882.test -DNS.884 = t883.test -DNS.885 = t884.test -DNS.886 = t885.test -DNS.887 = t886.test -DNS.888 = t887.test -DNS.889 = t888.test -DNS.890 = t889.test -DNS.891 = t890.test -DNS.892 = t891.test -DNS.893 = t892.test -DNS.894 = t893.test -DNS.895 = t894.test -DNS.896 = t895.test -DNS.897 = t896.test -DNS.898 = t897.test -DNS.899 = t898.test -DNS.900 = t899.test -DNS.901 = t900.test -DNS.902 = t901.test -DNS.903 = t902.test -DNS.904 = t903.test -DNS.905 = t904.test -DNS.906 = t905.test -DNS.907 = t906.test -DNS.908 = t907.test -DNS.909 = t908.test -DNS.910 = t909.test -DNS.911 = t910.test -DNS.912 = t911.test -DNS.913 = t912.test -DNS.914 = t913.test -DNS.915 = t914.test -DNS.916 = t915.test -DNS.917 = t916.test -DNS.918 = t917.test -DNS.919 = t918.test -DNS.920 = t919.test -DNS.921 = t920.test -DNS.922 = t921.test -DNS.923 = t922.test -DNS.924 = t923.test -DNS.925 = t924.test -DNS.926 = t925.test -DNS.927 = t926.test -DNS.928 = t927.test -DNS.929 = t928.test -DNS.930 = t929.test -DNS.931 = t930.test -DNS.932 = t931.test -DNS.933 = t932.test -DNS.934 = t933.test -DNS.935 = t934.test -DNS.936 = t935.test -DNS.937 = t936.test -DNS.938 = t937.test -DNS.939 = t938.test -DNS.940 = t939.test -DNS.941 = t940.test -DNS.942 = t941.test -DNS.943 = t942.test -DNS.944 = t943.test -DNS.945 = t944.test -DNS.946 = t945.test -DNS.947 = t946.test -DNS.948 = t947.test -DNS.949 = t948.test -DNS.950 = t949.test -DNS.951 = t950.test -DNS.952 = t951.test -DNS.953 = t952.test -DNS.954 = t953.test -DNS.955 = t954.test -DNS.956 = t955.test -DNS.957 = t956.test -DNS.958 = t957.test -DNS.959 = t958.test -DNS.960 = t959.test -DNS.961 = t960.test -DNS.962 = t961.test -DNS.963 = t962.test -DNS.964 = t963.test -DNS.965 = t964.test -DNS.966 = t965.test -DNS.967 = t966.test -DNS.968 = t967.test -DNS.969 = t968.test -DNS.970 = t969.test -DNS.971 = t970.test -DNS.972 = t971.test -DNS.973 = t972.test -DNS.974 = t973.test -DNS.975 = t974.test -DNS.976 = t975.test -DNS.977 = t976.test -DNS.978 = t977.test -DNS.979 = t978.test -DNS.980 = t979.test -DNS.981 = t980.test -DNS.982 = t981.test -DNS.983 = t982.test -DNS.984 = t983.test -DNS.985 = t984.test -DNS.986 = t985.test -DNS.987 = t986.test -DNS.988 = t987.test -DNS.989 = t988.test -DNS.990 = t989.test -DNS.991 = t990.test -DNS.992 = t991.test -DNS.993 = t992.test -DNS.994 = t993.test -DNS.995 = t994.test -DNS.996 = t995.test -DNS.997 = t996.test -DNS.998 = t997.test -DNS.999 = t998.test -DNS.1000 = t999.test -DNS.1001 = t1000.test -DNS.1002 = t1001.test -DNS.1003 = t1002.test -DNS.1004 = t1003.test -DNS.1005 = t1004.test -DNS.1006 = t1005.test -DNS.1007 = t1006.test -DNS.1008 = t1007.test -DNS.1009 = t1008.test -DNS.1010 = t1009.test -DNS.1011 = t1010.test -DNS.1012 = t1011.test -DNS.1013 = t1012.test -DNS.1014 = t1013.test -DNS.1015 = t1014.test -DNS.1016 = t1015.test -DNS.1017 = t1016.test -DNS.1018 = t1017.test -DNS.1019 = t1018.test -DNS.1020 = t1019.test -DNS.1021 = t1020.test -DNS.1022 = t1021.test -DNS.1023 = t1022.test -DNS.1024 = t1023.test - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.csr deleted file mode 100644 index cddc484d4f..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.csr +++ /dev/null @@ -1,250 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIudDCCLVwCAQAwDTELMAkGA1UEAwwCdDAwggEiMA0GCSqGSIb3DQEBAQUAA4IB -DwAwggEKAoIBAQDbLFMBzvkagzZSUSpbQmPeMnURan2woeR3R5tx5aYtZNeuWwTt -ej/H9sorK63NbIiljjb756IitX1UeenVelvKKylsDYQKEMQhtliYuw22DI1WWyyF -WQfKBkY2JRopjsQ5t8Mxzm5JwgHPsDsnQ4rj1QYfLZOd3XpFZW39tLHAEFlC8h6P -zkOslyXBfOJR4UQ1W5SqA27acS8lf1gwAeESFx7yqmwigLHJZep3lbMHxPdyODT+ -oEMzTGZtoeihBLxvFDk5RC44N3TJCiGFkSG3TrqwmUp2mHtYyhzTsEDD2Sp1++sZ -6uMamDFSl+l/pHshfy/cYoaP/f2oiOhLRFK9AgMBAAGggiwgMIIsHAYJKoZIhvcN -AQkOMYIsDTCCLAkwHQYDVR0OBBYEFDu0BcyqulE9/PL5HiVTcuE68prfMA4GA1Ud -DwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgiu3BgNV -HREEgiuuMIIrqoIHdDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIH -dDQudGVzdIIHdDUudGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDku -dGVzdIIIdDEwLnRlc3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQx -NC50ZXN0ggh0MTUudGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIII -dDE5LnRlc3SCCHQyMC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0 -ggh0MjQudGVzdIIIdDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRl -c3SCCHQyOS50ZXN0ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMu -dGVzdIIIdDM0LnRlc3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQz -OC50ZXN0ggh0MzkudGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIII -dDQzLnRlc3SCCHQ0NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0 -ggh0NDgudGVzdIIIdDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRl -c3SCCHQ1My50ZXN0ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcu -dGVzdIIIdDU4LnRlc3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2 -Mi50ZXN0ggh0NjMudGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIII -dDY3LnRlc3SCCHQ2OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0 -ggh0NzIudGVzdIIIdDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRl -c3SCCHQ3Ny50ZXN0ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEu -dGVzdIIIdDgyLnRlc3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4 -Ni50ZXN0ggh0ODcudGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIII -dDkxLnRlc3SCCHQ5Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0 -ggh0OTYudGVzdIIIdDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50 -ZXN0ggl0MTAxLnRlc3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SC -CXQxMDUudGVzdIIJdDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEw -OS50ZXN0ggl0MTEwLnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRl -c3SCCXQxMTQudGVzdIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJ -dDExOC50ZXN0ggl0MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIy -LnRlc3SCCXQxMjMudGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVz -dIIJdDEyNy50ZXN0ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0 -MTMxLnRlc3SCCXQxMzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUu -dGVzdIIJdDEzNi50ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0 -ggl0MTQwLnRlc3SCCXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQx -NDQudGVzdIIJdDE0NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50 -ZXN0ggl0MTQ5LnRlc3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SC -CXQxNTMudGVzdIIJdDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1 -Ny50ZXN0ggl0MTU4LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRl -c3SCCXQxNjIudGVzdIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJ -dDE2Ni50ZXN0ggl0MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcw -LnRlc3SCCXQxNzEudGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVz -dIIJdDE3NS50ZXN0ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0 -MTc5LnRlc3SCCXQxODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMu -dGVzdIIJdDE4NC50ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0 -ggl0MTg4LnRlc3SCCXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQx -OTIudGVzdIIJdDE5My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50 -ZXN0ggl0MTk3LnRlc3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SC -CXQyMDEudGVzdIIJdDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIw -NS50ZXN0ggl0MjA2LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRl -c3SCCXQyMTAudGVzdIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJ -dDIxNC50ZXN0ggl0MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4 -LnRlc3SCCXQyMTkudGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVz -dIIJdDIyMy50ZXN0ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0 -MjI3LnRlc3SCCXQyMjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEu -dGVzdIIJdDIzMi50ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0 -ggl0MjM2LnRlc3SCCXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQy -NDAudGVzdIIJdDI0MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50 -ZXN0ggl0MjQ1LnRlc3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SC -CXQyNDkudGVzdIIJdDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1 -My50ZXN0ggl0MjU0LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRl -c3SCCXQyNTgudGVzdIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJ -dDI2Mi50ZXN0ggl0MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2 -LnRlc3SCCXQyNjcudGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVz -dIIJdDI3MS50ZXN0ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0 -Mjc1LnRlc3SCCXQyNzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzku -dGVzdIIJdDI4MC50ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0 -ggl0Mjg0LnRlc3SCCXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQy -ODgudGVzdIIJdDI4OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50 -ZXN0ggl0MjkzLnRlc3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SC -CXQyOTcudGVzdIIJdDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMw -MS50ZXN0ggl0MzAyLnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRl -c3SCCXQzMDYudGVzdIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJ -dDMxMC50ZXN0ggl0MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0 -LnRlc3SCCXQzMTUudGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVz -dIIJdDMxOS50ZXN0ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0 -MzIzLnRlc3SCCXQzMjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcu -dGVzdIIJdDMyOC50ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0 -ggl0MzMyLnRlc3SCCXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQz -MzYudGVzdIIJdDMzNy50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50 -ZXN0ggl0MzQxLnRlc3SCCXQzNDIudGVzdIIJdDM0My50ZXN0ggl0MzQ0LnRlc3SC -CXQzNDUudGVzdIIJdDM0Ni50ZXN0ggl0MzQ3LnRlc3SCCXQzNDgudGVzdIIJdDM0 -OS50ZXN0ggl0MzUwLnRlc3SCCXQzNTEudGVzdIIJdDM1Mi50ZXN0ggl0MzUzLnRl -c3SCCXQzNTQudGVzdIIJdDM1NS50ZXN0ggl0MzU2LnRlc3SCCXQzNTcudGVzdIIJ -dDM1OC50ZXN0ggl0MzU5LnRlc3SCCXQzNjAudGVzdIIJdDM2MS50ZXN0ggl0MzYy -LnRlc3SCCXQzNjMudGVzdIIJdDM2NC50ZXN0ggl0MzY1LnRlc3SCCXQzNjYudGVz -dIIJdDM2Ny50ZXN0ggl0MzY4LnRlc3SCCXQzNjkudGVzdIIJdDM3MC50ZXN0ggl0 -MzcxLnRlc3SCCXQzNzIudGVzdIIJdDM3My50ZXN0ggl0Mzc0LnRlc3SCCXQzNzUu -dGVzdIIJdDM3Ni50ZXN0ggl0Mzc3LnRlc3SCCXQzNzgudGVzdIIJdDM3OS50ZXN0 -ggl0MzgwLnRlc3SCCXQzODEudGVzdIIJdDM4Mi50ZXN0ggl0MzgzLnRlc3SCCXQz -ODQudGVzdIIJdDM4NS50ZXN0ggl0Mzg2LnRlc3SCCXQzODcudGVzdIIJdDM4OC50 -ZXN0ggl0Mzg5LnRlc3SCCXQzOTAudGVzdIIJdDM5MS50ZXN0ggl0MzkyLnRlc3SC -CXQzOTMudGVzdIIJdDM5NC50ZXN0ggl0Mzk1LnRlc3SCCXQzOTYudGVzdIIJdDM5 -Ny50ZXN0ggl0Mzk4LnRlc3SCCXQzOTkudGVzdIIJdDQwMC50ZXN0ggl0NDAxLnRl -c3SCCXQ0MDIudGVzdIIJdDQwMy50ZXN0ggl0NDA0LnRlc3SCCXQ0MDUudGVzdIIJ -dDQwNi50ZXN0ggl0NDA3LnRlc3SCCXQ0MDgudGVzdIIJdDQwOS50ZXN0ggl0NDEw -LnRlc3SCCXQ0MTEudGVzdIIJdDQxMi50ZXN0ggl0NDEzLnRlc3SCCXQ0MTQudGVz -dIIJdDQxNS50ZXN0ggl0NDE2LnRlc3SCCXQ0MTcudGVzdIIJdDQxOC50ZXN0ggl0 -NDE5LnRlc3SCCXQ0MjAudGVzdIIJdDQyMS50ZXN0ggl0NDIyLnRlc3SCCXQ0MjMu -dGVzdIIJdDQyNC50ZXN0ggl0NDI1LnRlc3SCCXQ0MjYudGVzdIIJdDQyNy50ZXN0 -ggl0NDI4LnRlc3SCCXQ0MjkudGVzdIIJdDQzMC50ZXN0ggl0NDMxLnRlc3SCCXQ0 -MzIudGVzdIIJdDQzMy50ZXN0ggl0NDM0LnRlc3SCCXQ0MzUudGVzdIIJdDQzNi50 -ZXN0ggl0NDM3LnRlc3SCCXQ0MzgudGVzdIIJdDQzOS50ZXN0ggl0NDQwLnRlc3SC -CXQ0NDEudGVzdIIJdDQ0Mi50ZXN0ggl0NDQzLnRlc3SCCXQ0NDQudGVzdIIJdDQ0 -NS50ZXN0ggl0NDQ2LnRlc3SCCXQ0NDcudGVzdIIJdDQ0OC50ZXN0ggl0NDQ5LnRl -c3SCCXQ0NTAudGVzdIIJdDQ1MS50ZXN0ggl0NDUyLnRlc3SCCXQ0NTMudGVzdIIJ -dDQ1NC50ZXN0ggl0NDU1LnRlc3SCCXQ0NTYudGVzdIIJdDQ1Ny50ZXN0ggl0NDU4 -LnRlc3SCCXQ0NTkudGVzdIIJdDQ2MC50ZXN0ggl0NDYxLnRlc3SCCXQ0NjIudGVz -dIIJdDQ2My50ZXN0ggl0NDY0LnRlc3SCCXQ0NjUudGVzdIIJdDQ2Ni50ZXN0ggl0 -NDY3LnRlc3SCCXQ0NjgudGVzdIIJdDQ2OS50ZXN0ggl0NDcwLnRlc3SCCXQ0NzEu -dGVzdIIJdDQ3Mi50ZXN0ggl0NDczLnRlc3SCCXQ0NzQudGVzdIIJdDQ3NS50ZXN0 -ggl0NDc2LnRlc3SCCXQ0NzcudGVzdIIJdDQ3OC50ZXN0ggl0NDc5LnRlc3SCCXQ0 -ODAudGVzdIIJdDQ4MS50ZXN0ggl0NDgyLnRlc3SCCXQ0ODMudGVzdIIJdDQ4NC50 -ZXN0ggl0NDg1LnRlc3SCCXQ0ODYudGVzdIIJdDQ4Ny50ZXN0ggl0NDg4LnRlc3SC -CXQ0ODkudGVzdIIJdDQ5MC50ZXN0ggl0NDkxLnRlc3SCCXQ0OTIudGVzdIIJdDQ5 -My50ZXN0ggl0NDk0LnRlc3SCCXQ0OTUudGVzdIIJdDQ5Ni50ZXN0ggl0NDk3LnRl -c3SCCXQ0OTgudGVzdIIJdDQ5OS50ZXN0ggl0NTAwLnRlc3SCCXQ1MDEudGVzdIIJ -dDUwMi50ZXN0ggl0NTAzLnRlc3SCCXQ1MDQudGVzdIIJdDUwNS50ZXN0ggl0NTA2 -LnRlc3SCCXQ1MDcudGVzdIIJdDUwOC50ZXN0ggl0NTA5LnRlc3SCCXQ1MTAudGVz -dIIJdDUxMS50ZXN0ggl0NTEyLnRlc3SCCXQ1MTMudGVzdIIJdDUxNC50ZXN0ggl0 -NTE1LnRlc3SCCXQ1MTYudGVzdIIJdDUxNy50ZXN0ggl0NTE4LnRlc3SCCXQ1MTku -dGVzdIIJdDUyMC50ZXN0ggl0NTIxLnRlc3SCCXQ1MjIudGVzdIIJdDUyMy50ZXN0 -ggl0NTI0LnRlc3SCCXQ1MjUudGVzdIIJdDUyNi50ZXN0ggl0NTI3LnRlc3SCCXQ1 -MjgudGVzdIIJdDUyOS50ZXN0ggl0NTMwLnRlc3SCCXQ1MzEudGVzdIIJdDUzMi50 -ZXN0ggl0NTMzLnRlc3SCCXQ1MzQudGVzdIIJdDUzNS50ZXN0ggl0NTM2LnRlc3SC -CXQ1MzcudGVzdIIJdDUzOC50ZXN0ggl0NTM5LnRlc3SCCXQ1NDAudGVzdIIJdDU0 -MS50ZXN0ggl0NTQyLnRlc3SCCXQ1NDMudGVzdIIJdDU0NC50ZXN0ggl0NTQ1LnRl -c3SCCXQ1NDYudGVzdIIJdDU0Ny50ZXN0ggl0NTQ4LnRlc3SCCXQ1NDkudGVzdIIJ -dDU1MC50ZXN0ggl0NTUxLnRlc3SCCXQ1NTIudGVzdIIJdDU1My50ZXN0ggl0NTU0 -LnRlc3SCCXQ1NTUudGVzdIIJdDU1Ni50ZXN0ggl0NTU3LnRlc3SCCXQ1NTgudGVz -dIIJdDU1OS50ZXN0ggl0NTYwLnRlc3SCCXQ1NjEudGVzdIIJdDU2Mi50ZXN0ggl0 -NTYzLnRlc3SCCXQ1NjQudGVzdIIJdDU2NS50ZXN0ggl0NTY2LnRlc3SCCXQ1Njcu -dGVzdIIJdDU2OC50ZXN0ggl0NTY5LnRlc3SCCXQ1NzAudGVzdIIJdDU3MS50ZXN0 -ggl0NTcyLnRlc3SCCXQ1NzMudGVzdIIJdDU3NC50ZXN0ggl0NTc1LnRlc3SCCXQ1 -NzYudGVzdIIJdDU3Ny50ZXN0ggl0NTc4LnRlc3SCCXQ1NzkudGVzdIIJdDU4MC50 -ZXN0ggl0NTgxLnRlc3SCCXQ1ODIudGVzdIIJdDU4My50ZXN0ggl0NTg0LnRlc3SC -CXQ1ODUudGVzdIIJdDU4Ni50ZXN0ggl0NTg3LnRlc3SCCXQ1ODgudGVzdIIJdDU4 -OS50ZXN0ggl0NTkwLnRlc3SCCXQ1OTEudGVzdIIJdDU5Mi50ZXN0ggl0NTkzLnRl -c3SCCXQ1OTQudGVzdIIJdDU5NS50ZXN0ggl0NTk2LnRlc3SCCXQ1OTcudGVzdIIJ -dDU5OC50ZXN0ggl0NTk5LnRlc3SCCXQ2MDAudGVzdIIJdDYwMS50ZXN0ggl0NjAy -LnRlc3SCCXQ2MDMudGVzdIIJdDYwNC50ZXN0ggl0NjA1LnRlc3SCCXQ2MDYudGVz -dIIJdDYwNy50ZXN0ggl0NjA4LnRlc3SCCXQ2MDkudGVzdIIJdDYxMC50ZXN0ggl0 -NjExLnRlc3SCCXQ2MTIudGVzdIIJdDYxMy50ZXN0ggl0NjE0LnRlc3SCCXQ2MTUu -dGVzdIIJdDYxNi50ZXN0ggl0NjE3LnRlc3SCCXQ2MTgudGVzdIIJdDYxOS50ZXN0 -ggl0NjIwLnRlc3SCCXQ2MjEudGVzdIIJdDYyMi50ZXN0ggl0NjIzLnRlc3SCCXQ2 -MjQudGVzdIIJdDYyNS50ZXN0ggl0NjI2LnRlc3SCCXQ2MjcudGVzdIIJdDYyOC50 -ZXN0ggl0NjI5LnRlc3SCCXQ2MzAudGVzdIIJdDYzMS50ZXN0ggl0NjMyLnRlc3SC -CXQ2MzMudGVzdIIJdDYzNC50ZXN0ggl0NjM1LnRlc3SCCXQ2MzYudGVzdIIJdDYz -Ny50ZXN0ggl0NjM4LnRlc3SCCXQ2MzkudGVzdIIJdDY0MC50ZXN0ggl0NjQxLnRl -c3SCCXQ2NDIudGVzdIIJdDY0My50ZXN0ggl0NjQ0LnRlc3SCCXQ2NDUudGVzdIIJ -dDY0Ni50ZXN0ggl0NjQ3LnRlc3SCCXQ2NDgudGVzdIIJdDY0OS50ZXN0ggl0NjUw -LnRlc3SCCXQ2NTEudGVzdIIJdDY1Mi50ZXN0ggl0NjUzLnRlc3SCCXQ2NTQudGVz -dIIJdDY1NS50ZXN0ggl0NjU2LnRlc3SCCXQ2NTcudGVzdIIJdDY1OC50ZXN0ggl0 -NjU5LnRlc3SCCXQ2NjAudGVzdIIJdDY2MS50ZXN0ggl0NjYyLnRlc3SCCXQ2NjMu -dGVzdIIJdDY2NC50ZXN0ggl0NjY1LnRlc3SCCXQ2NjYudGVzdIIJdDY2Ny50ZXN0 -ggl0NjY4LnRlc3SCCXQ2NjkudGVzdIIJdDY3MC50ZXN0ggl0NjcxLnRlc3SCCXQ2 -NzIudGVzdIIJdDY3My50ZXN0ggl0Njc0LnRlc3SCCXQ2NzUudGVzdIIJdDY3Ni50 -ZXN0ggl0Njc3LnRlc3SCCXQ2NzgudGVzdIIJdDY3OS50ZXN0ggl0NjgwLnRlc3SC -CXQ2ODEudGVzdIIJdDY4Mi50ZXN0ggl0NjgzLnRlc3SCCXQ2ODQudGVzdIIJdDY4 -NS50ZXN0ggl0Njg2LnRlc3SCCXQ2ODcudGVzdIIJdDY4OC50ZXN0ggl0Njg5LnRl -c3SCCXQ2OTAudGVzdIIJdDY5MS50ZXN0ggl0NjkyLnRlc3SCCXQ2OTMudGVzdIIJ -dDY5NC50ZXN0ggl0Njk1LnRlc3SCCXQ2OTYudGVzdIIJdDY5Ny50ZXN0ggl0Njk4 -LnRlc3SCCXQ2OTkudGVzdIIJdDcwMC50ZXN0ggl0NzAxLnRlc3SCCXQ3MDIudGVz -dIIJdDcwMy50ZXN0ggl0NzA0LnRlc3SCCXQ3MDUudGVzdIIJdDcwNi50ZXN0ggl0 -NzA3LnRlc3SCCXQ3MDgudGVzdIIJdDcwOS50ZXN0ggl0NzEwLnRlc3SCCXQ3MTEu -dGVzdIIJdDcxMi50ZXN0ggl0NzEzLnRlc3SCCXQ3MTQudGVzdIIJdDcxNS50ZXN0 -ggl0NzE2LnRlc3SCCXQ3MTcudGVzdIIJdDcxOC50ZXN0ggl0NzE5LnRlc3SCCXQ3 -MjAudGVzdIIJdDcyMS50ZXN0ggl0NzIyLnRlc3SCCXQ3MjMudGVzdIIJdDcyNC50 -ZXN0ggl0NzI1LnRlc3SCCXQ3MjYudGVzdIIJdDcyNy50ZXN0ggl0NzI4LnRlc3SC -CXQ3MjkudGVzdIIJdDczMC50ZXN0ggl0NzMxLnRlc3SCCXQ3MzIudGVzdIIJdDcz -My50ZXN0ggl0NzM0LnRlc3SCCXQ3MzUudGVzdIIJdDczNi50ZXN0ggl0NzM3LnRl -c3SCCXQ3MzgudGVzdIIJdDczOS50ZXN0ggl0NzQwLnRlc3SCCXQ3NDEudGVzdIIJ -dDc0Mi50ZXN0ggl0NzQzLnRlc3SCCXQ3NDQudGVzdIIJdDc0NS50ZXN0ggl0NzQ2 -LnRlc3SCCXQ3NDcudGVzdIIJdDc0OC50ZXN0ggl0NzQ5LnRlc3SCCXQ3NTAudGVz -dIIJdDc1MS50ZXN0ggl0NzUyLnRlc3SCCXQ3NTMudGVzdIIJdDc1NC50ZXN0ggl0 -NzU1LnRlc3SCCXQ3NTYudGVzdIIJdDc1Ny50ZXN0ggl0NzU4LnRlc3SCCXQ3NTku -dGVzdIIJdDc2MC50ZXN0ggl0NzYxLnRlc3SCCXQ3NjIudGVzdIIJdDc2My50ZXN0 -ggl0NzY0LnRlc3SCCXQ3NjUudGVzdIIJdDc2Ni50ZXN0ggl0NzY3LnRlc3SCCXQ3 -NjgudGVzdIIJdDc2OS50ZXN0ggl0NzcwLnRlc3SCCXQ3NzEudGVzdIIJdDc3Mi50 -ZXN0ggl0NzczLnRlc3SCCXQ3NzQudGVzdIIJdDc3NS50ZXN0ggl0Nzc2LnRlc3SC -CXQ3NzcudGVzdIIJdDc3OC50ZXN0ggl0Nzc5LnRlc3SCCXQ3ODAudGVzdIIJdDc4 -MS50ZXN0ggl0NzgyLnRlc3SCCXQ3ODMudGVzdIIJdDc4NC50ZXN0ggl0Nzg1LnRl -c3SCCXQ3ODYudGVzdIIJdDc4Ny50ZXN0ggl0Nzg4LnRlc3SCCXQ3ODkudGVzdIIJ -dDc5MC50ZXN0ggl0NzkxLnRlc3SCCXQ3OTIudGVzdIIJdDc5My50ZXN0ggl0Nzk0 -LnRlc3SCCXQ3OTUudGVzdIIJdDc5Ni50ZXN0ggl0Nzk3LnRlc3SCCXQ3OTgudGVz -dIIJdDc5OS50ZXN0ggl0ODAwLnRlc3SCCXQ4MDEudGVzdIIJdDgwMi50ZXN0ggl0 -ODAzLnRlc3SCCXQ4MDQudGVzdIIJdDgwNS50ZXN0ggl0ODA2LnRlc3SCCXQ4MDcu -dGVzdIIJdDgwOC50ZXN0ggl0ODA5LnRlc3SCCXQ4MTAudGVzdIIJdDgxMS50ZXN0 -ggl0ODEyLnRlc3SCCXQ4MTMudGVzdIIJdDgxNC50ZXN0ggl0ODE1LnRlc3SCCXQ4 -MTYudGVzdIIJdDgxNy50ZXN0ggl0ODE4LnRlc3SCCXQ4MTkudGVzdIIJdDgyMC50 -ZXN0ggl0ODIxLnRlc3SCCXQ4MjIudGVzdIIJdDgyMy50ZXN0ggl0ODI0LnRlc3SC -CXQ4MjUudGVzdIIJdDgyNi50ZXN0ggl0ODI3LnRlc3SCCXQ4MjgudGVzdIIJdDgy -OS50ZXN0ggl0ODMwLnRlc3SCCXQ4MzEudGVzdIIJdDgzMi50ZXN0ggl0ODMzLnRl -c3SCCXQ4MzQudGVzdIIJdDgzNS50ZXN0ggl0ODM2LnRlc3SCCXQ4MzcudGVzdIIJ -dDgzOC50ZXN0ggl0ODM5LnRlc3SCCXQ4NDAudGVzdIIJdDg0MS50ZXN0ggl0ODQy -LnRlc3SCCXQ4NDMudGVzdIIJdDg0NC50ZXN0ggl0ODQ1LnRlc3SCCXQ4NDYudGVz -dIIJdDg0Ny50ZXN0ggl0ODQ4LnRlc3SCCXQ4NDkudGVzdIIJdDg1MC50ZXN0ggl0 -ODUxLnRlc3SCCXQ4NTIudGVzdIIJdDg1My50ZXN0ggl0ODU0LnRlc3SCCXQ4NTUu -dGVzdIIJdDg1Ni50ZXN0ggl0ODU3LnRlc3SCCXQ4NTgudGVzdIIJdDg1OS50ZXN0 -ggl0ODYwLnRlc3SCCXQ4NjEudGVzdIIJdDg2Mi50ZXN0ggl0ODYzLnRlc3SCCXQ4 -NjQudGVzdIIJdDg2NS50ZXN0ggl0ODY2LnRlc3SCCXQ4NjcudGVzdIIJdDg2OC50 -ZXN0ggl0ODY5LnRlc3SCCXQ4NzAudGVzdIIJdDg3MS50ZXN0ggl0ODcyLnRlc3SC -CXQ4NzMudGVzdIIJdDg3NC50ZXN0ggl0ODc1LnRlc3SCCXQ4NzYudGVzdIIJdDg3 -Ny50ZXN0ggl0ODc4LnRlc3SCCXQ4NzkudGVzdIIJdDg4MC50ZXN0ggl0ODgxLnRl -c3SCCXQ4ODIudGVzdIIJdDg4My50ZXN0ggl0ODg0LnRlc3SCCXQ4ODUudGVzdIIJ -dDg4Ni50ZXN0ggl0ODg3LnRlc3SCCXQ4ODgudGVzdIIJdDg4OS50ZXN0ggl0ODkw -LnRlc3SCCXQ4OTEudGVzdIIJdDg5Mi50ZXN0ggl0ODkzLnRlc3SCCXQ4OTQudGVz -dIIJdDg5NS50ZXN0ggl0ODk2LnRlc3SCCXQ4OTcudGVzdIIJdDg5OC50ZXN0ggl0 -ODk5LnRlc3SCCXQ5MDAudGVzdIIJdDkwMS50ZXN0ggl0OTAyLnRlc3SCCXQ5MDMu -dGVzdIIJdDkwNC50ZXN0ggl0OTA1LnRlc3SCCXQ5MDYudGVzdIIJdDkwNy50ZXN0 -ggl0OTA4LnRlc3SCCXQ5MDkudGVzdIIJdDkxMC50ZXN0ggl0OTExLnRlc3SCCXQ5 -MTIudGVzdIIJdDkxMy50ZXN0ggl0OTE0LnRlc3SCCXQ5MTUudGVzdIIJdDkxNi50 -ZXN0ggl0OTE3LnRlc3SCCXQ5MTgudGVzdIIJdDkxOS50ZXN0ggl0OTIwLnRlc3SC -CXQ5MjEudGVzdIIJdDkyMi50ZXN0ggl0OTIzLnRlc3SCCXQ5MjQudGVzdIIJdDky -NS50ZXN0ggl0OTI2LnRlc3SCCXQ5MjcudGVzdIIJdDkyOC50ZXN0ggl0OTI5LnRl -c3SCCXQ5MzAudGVzdIIJdDkzMS50ZXN0ggl0OTMyLnRlc3SCCXQ5MzMudGVzdIIJ -dDkzNC50ZXN0ggl0OTM1LnRlc3SCCXQ5MzYudGVzdIIJdDkzNy50ZXN0ggl0OTM4 -LnRlc3SCCXQ5MzkudGVzdIIJdDk0MC50ZXN0ggl0OTQxLnRlc3SCCXQ5NDIudGVz -dIIJdDk0My50ZXN0ggl0OTQ0LnRlc3SCCXQ5NDUudGVzdIIJdDk0Ni50ZXN0ggl0 -OTQ3LnRlc3SCCXQ5NDgudGVzdIIJdDk0OS50ZXN0ggl0OTUwLnRlc3SCCXQ5NTEu -dGVzdIIJdDk1Mi50ZXN0ggl0OTUzLnRlc3SCCXQ5NTQudGVzdIIJdDk1NS50ZXN0 -ggl0OTU2LnRlc3SCCXQ5NTcudGVzdIIJdDk1OC50ZXN0ggl0OTU5LnRlc3SCCXQ5 -NjAudGVzdIIJdDk2MS50ZXN0ggl0OTYyLnRlc3SCCXQ5NjMudGVzdIIJdDk2NC50 -ZXN0ggl0OTY1LnRlc3SCCXQ5NjYudGVzdIIJdDk2Ny50ZXN0ggl0OTY4LnRlc3SC -CXQ5NjkudGVzdIIJdDk3MC50ZXN0ggl0OTcxLnRlc3SCCXQ5NzIudGVzdIIJdDk3 -My50ZXN0ggl0OTc0LnRlc3SCCXQ5NzUudGVzdIIJdDk3Ni50ZXN0ggl0OTc3LnRl -c3SCCXQ5NzgudGVzdIIJdDk3OS50ZXN0ggl0OTgwLnRlc3SCCXQ5ODEudGVzdIIJ -dDk4Mi50ZXN0ggl0OTgzLnRlc3SCCXQ5ODQudGVzdIIJdDk4NS50ZXN0ggl0OTg2 -LnRlc3SCCXQ5ODcudGVzdIIJdDk4OC50ZXN0ggl0OTg5LnRlc3SCCXQ5OTAudGVz -dIIJdDk5MS50ZXN0ggl0OTkyLnRlc3SCCXQ5OTMudGVzdIIJdDk5NC50ZXN0ggl0 -OTk1LnRlc3SCCXQ5OTYudGVzdIIJdDk5Ny50ZXN0ggl0OTk4LnRlc3SCCXQ5OTku -dGVzdIIKdDEwMDAudGVzdIIKdDEwMDEudGVzdIIKdDEwMDIudGVzdIIKdDEwMDMu -dGVzdIIKdDEwMDQudGVzdIIKdDEwMDUudGVzdIIKdDEwMDYudGVzdIIKdDEwMDcu -dGVzdIIKdDEwMDgudGVzdIIKdDEwMDkudGVzdIIKdDEwMTAudGVzdIIKdDEwMTEu -dGVzdIIKdDEwMTIudGVzdIIKdDEwMTMudGVzdIIKdDEwMTQudGVzdIIKdDEwMTUu -dGVzdIIKdDEwMTYudGVzdIIKdDEwMTcudGVzdIIKdDEwMTgudGVzdIIKdDEwMTku -dGVzdIIKdDEwMjAudGVzdIIKdDEwMjEudGVzdIIKdDEwMjIudGVzdIIKdDEwMjMu -dGVzdDANBgkqhkiG9w0BAQsFAAOCAQEA0o00q1HNbJjS3Ssi+w5XIhTU4OEwH97f -BmAr/vddshl6urTb7BJf9Qf/kfzrN1TiJ7IA5wMoYXfeGZ9vH6PJpvWVXIcphSeE -GEzAFbpXGCW0710ar62X4Jwd70X61zqRQrEzJPzhtfixhcNIAH9wakSDHlQeEoys -l94K0JE4eM+I2kAGAk8pXp0htxrG47tW2vrJL7YY9O/dwc/qo5wyjY0amsu6YW2f -snkIM7OonB77X6i4rWuDKxxbovpQPRbY5qWKWPT7A++E9TUFQZqhGqcUEDK4iN5l -0ac9ppAG7me4/mzcDzABHFe2buy3gioN16PmRkvjAg+BnYTlT6oiFQ== ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.pem deleted file mode 100644 index 7afb574bfc..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_2.pem +++ /dev/null @@ -1,325 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d6 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DNS:t0.test, DNS:t1.test, DNS:t2.test, DNS:t3.test, DNS:t4.test, DNS:t5.test, DNS:t6.test, DNS:t7.test, DNS:t8.test, DNS:t9.test, DNS:t10.test, DNS:t11.test, DNS:t12.test, DNS:t13.test, DNS:t14.test, DNS:t15.test, DNS:t16.test, DNS:t17.test, DNS:t18.test, DNS:t19.test, DNS:t20.test, DNS:t21.test, DNS:t22.test, DNS:t23.test, DNS:t24.test, DNS:t25.test, DNS:t26.test, DNS:t27.test, DNS:t28.test, DNS:t29.test, DNS:t30.test, DNS:t31.test, DNS:t32.test, DNS:t33.test, DNS:t34.test, DNS:t35.test, DNS:t36.test, DNS:t37.test, DNS:t38.test, DNS:t39.test, DNS:t40.test, DNS:t41.test, DNS:t42.test, DNS:t43.test, DNS:t44.test, DNS:t45.test, DNS:t46.test, DNS:t47.test, DNS:t48.test, DNS:t49.test, DNS:t50.test, DNS:t51.test, DNS:t52.test, DNS:t53.test, DNS:t54.test, DNS:t55.test, DNS:t56.test, DNS:t57.test, DNS:t58.test, DNS:t59.test, DNS:t60.test, DNS:t61.test, DNS:t62.test, DNS:t63.test, DNS:t64.test, DNS:t65.test, DNS:t66.test, DNS:t67.test, DNS:t68.test, DNS:t69.test, DNS:t70.test, DNS:t71.test, DNS:t72.test, DNS:t73.test, DNS:t74.test, DNS:t75.test, DNS:t76.test, DNS:t77.test, DNS:t78.test, DNS:t79.test, DNS:t80.test, DNS:t81.test, DNS:t82.test, DNS:t83.test, DNS:t84.test, DNS:t85.test, DNS:t86.test, DNS:t87.test, DNS:t88.test, DNS:t89.test, DNS:t90.test, DNS:t91.test, DNS:t92.test, DNS:t93.test, DNS:t94.test, DNS:t95.test, DNS:t96.test, DNS:t97.test, DNS:t98.test, DNS:t99.test, DNS:t100.test, DNS:t101.test, DNS:t102.test, DNS:t103.test, DNS:t104.test, DNS:t105.test, DNS:t106.test, DNS:t107.test, DNS:t108.test, DNS:t109.test, DNS:t110.test, DNS:t111.test, DNS:t112.test, DNS:t113.test, DNS:t114.test, DNS:t115.test, DNS:t116.test, DNS:t117.test, DNS:t118.test, DNS:t119.test, DNS:t120.test, DNS:t121.test, DNS:t122.test, DNS:t123.test, DNS:t124.test, DNS:t125.test, DNS:t126.test, DNS:t127.test, DNS:t128.test, DNS:t129.test, DNS:t130.test, DNS:t131.test, DNS:t132.test, DNS:t133.test, DNS:t134.test, DNS:t135.test, DNS:t136.test, DNS:t137.test, DNS:t138.test, DNS:t139.test, DNS:t140.test, DNS:t141.test, DNS:t142.test, DNS:t143.test, DNS:t144.test, DNS:t145.test, DNS:t146.test, DNS:t147.test, DNS:t148.test, DNS:t149.test, DNS:t150.test, DNS:t151.test, DNS:t152.test, DNS:t153.test, DNS:t154.test, DNS:t155.test, DNS:t156.test, DNS:t157.test, DNS:t158.test, DNS:t159.test, DNS:t160.test, DNS:t161.test, DNS:t162.test, DNS:t163.test, DNS:t164.test, DNS:t165.test, DNS:t166.test, DNS:t167.test, DNS:t168.test, DNS:t169.test, DNS:t170.test, DNS:t171.test, DNS:t172.test, DNS:t173.test, DNS:t174.test, DNS:t175.test, DNS:t176.test, DNS:t177.test, DNS:t178.test, DNS:t179.test, DNS:t180.test, DNS:t181.test, DNS:t182.test, DNS:t183.test, DNS:t184.test, DNS:t185.test, DNS:t186.test, DNS:t187.test, DNS:t188.test, DNS:t189.test, DNS:t190.test, DNS:t191.test, DNS:t192.test, DNS:t193.test, DNS:t194.test, DNS:t195.test, DNS:t196.test, DNS:t197.test, DNS:t198.test, DNS:t199.test, DNS:t200.test, DNS:t201.test, DNS:t202.test, DNS:t203.test, DNS:t204.test, DNS:t205.test, DNS:t206.test, DNS:t207.test, DNS:t208.test, DNS:t209.test, DNS:t210.test, DNS:t211.test, DNS:t212.test, DNS:t213.test, DNS:t214.test, DNS:t215.test, DNS:t216.test, DNS:t217.test, DNS:t218.test, DNS:t219.test, DNS:t220.test, DNS:t221.test, DNS:t222.test, DNS:t223.test, DNS:t224.test, DNS:t225.test, DNS:t226.test, DNS:t227.test, DNS:t228.test, DNS:t229.test, DNS:t230.test, DNS:t231.test, DNS:t232.test, DNS:t233.test, DNS:t234.test, DNS:t235.test, DNS:t236.test, DNS:t237.test, DNS:t238.test, DNS:t239.test, DNS:t240.test, DNS:t241.test, DNS:t242.test, DNS:t243.test, DNS:t244.test, DNS:t245.test, DNS:t246.test, DNS:t247.test, DNS:t248.test, DNS:t249.test, DNS:t250.test, DNS:t251.test, DNS:t252.test, DNS:t253.test, DNS:t254.test, DNS:t255.test, DNS:t256.test, DNS:t257.test, DNS:t258.test, DNS:t259.test, DNS:t260.test, DNS:t261.test, DNS:t262.test, DNS:t263.test, DNS:t264.test, DNS:t265.test, DNS:t266.test, DNS:t267.test, DNS:t268.test, DNS:t269.test, DNS:t270.test, DNS:t271.test, DNS:t272.test, DNS:t273.test, DNS:t274.test, DNS:t275.test, DNS:t276.test, DNS:t277.test, DNS:t278.test, DNS:t279.test, DNS:t280.test, DNS:t281.test, DNS:t282.test, DNS:t283.test, DNS:t284.test, DNS:t285.test, DNS:t286.test, DNS:t287.test, DNS:t288.test, DNS:t289.test, DNS:t290.test, DNS:t291.test, DNS:t292.test, DNS:t293.test, DNS:t294.test, DNS:t295.test, DNS:t296.test, DNS:t297.test, DNS:t298.test, DNS:t299.test, DNS:t300.test, DNS:t301.test, DNS:t302.test, DNS:t303.test, DNS:t304.test, DNS:t305.test, DNS:t306.test, DNS:t307.test, DNS:t308.test, DNS:t309.test, DNS:t310.test, DNS:t311.test, DNS:t312.test, DNS:t313.test, DNS:t314.test, DNS:t315.test, DNS:t316.test, DNS:t317.test, DNS:t318.test, DNS:t319.test, DNS:t320.test, DNS:t321.test, DNS:t322.test, DNS:t323.test, DNS:t324.test, DNS:t325.test, DNS:t326.test, DNS:t327.test, DNS:t328.test, DNS:t329.test, DNS:t330.test, DNS:t331.test, DNS:t332.test, DNS:t333.test, DNS:t334.test, DNS:t335.test, DNS:t336.test, DNS:t337.test, DNS:t338.test, DNS:t339.test, DNS:t340.test, DNS:t341.test, DNS:t342.test, DNS:t343.test, DNS:t344.test, DNS:t345.test, DNS:t346.test, DNS:t347.test, DNS:t348.test, DNS:t349.test, DNS:t350.test, DNS:t351.test, DNS:t352.test, DNS:t353.test, DNS:t354.test, DNS:t355.test, DNS:t356.test, DNS:t357.test, DNS:t358.test, DNS:t359.test, DNS:t360.test, DNS:t361.test, DNS:t362.test, DNS:t363.test, DNS:t364.test, DNS:t365.test, DNS:t366.test, DNS:t367.test, DNS:t368.test, DNS:t369.test, DNS:t370.test, DNS:t371.test, DNS:t372.test, DNS:t373.test, DNS:t374.test, DNS:t375.test, DNS:t376.test, DNS:t377.test, DNS:t378.test, DNS:t379.test, DNS:t380.test, DNS:t381.test, DNS:t382.test, DNS:t383.test, DNS:t384.test, DNS:t385.test, DNS:t386.test, DNS:t387.test, DNS:t388.test, DNS:t389.test, DNS:t390.test, DNS:t391.test, DNS:t392.test, DNS:t393.test, DNS:t394.test, DNS:t395.test, DNS:t396.test, DNS:t397.test, DNS:t398.test, DNS:t399.test, DNS:t400.test, DNS:t401.test, DNS:t402.test, DNS:t403.test, DNS:t404.test, DNS:t405.test, DNS:t406.test, DNS:t407.test, DNS:t408.test, DNS:t409.test, DNS:t410.test, DNS:t411.test, DNS:t412.test, DNS:t413.test, DNS:t414.test, DNS:t415.test, DNS:t416.test, DNS:t417.test, DNS:t418.test, DNS:t419.test, DNS:t420.test, DNS:t421.test, DNS:t422.test, DNS:t423.test, DNS:t424.test, DNS:t425.test, DNS:t426.test, DNS:t427.test, DNS:t428.test, DNS:t429.test, DNS:t430.test, DNS:t431.test, DNS:t432.test, DNS:t433.test, DNS:t434.test, DNS:t435.test, DNS:t436.test, DNS:t437.test, DNS:t438.test, DNS:t439.test, DNS:t440.test, DNS:t441.test, DNS:t442.test, DNS:t443.test, DNS:t444.test, DNS:t445.test, DNS:t446.test, DNS:t447.test, DNS:t448.test, DNS:t449.test, DNS:t450.test, DNS:t451.test, DNS:t452.test, DNS:t453.test, DNS:t454.test, DNS:t455.test, DNS:t456.test, DNS:t457.test, DNS:t458.test, DNS:t459.test, DNS:t460.test, DNS:t461.test, DNS:t462.test, DNS:t463.test, DNS:t464.test, DNS:t465.test, DNS:t466.test, DNS:t467.test, DNS:t468.test, DNS:t469.test, DNS:t470.test, DNS:t471.test, DNS:t472.test, DNS:t473.test, DNS:t474.test, DNS:t475.test, DNS:t476.test, DNS:t477.test, DNS:t478.test, DNS:t479.test, DNS:t480.test, DNS:t481.test, DNS:t482.test, DNS:t483.test, DNS:t484.test, DNS:t485.test, DNS:t486.test, DNS:t487.test, DNS:t488.test, DNS:t489.test, DNS:t490.test, DNS:t491.test, DNS:t492.test, DNS:t493.test, DNS:t494.test, DNS:t495.test, DNS:t496.test, DNS:t497.test, DNS:t498.test, DNS:t499.test, DNS:t500.test, DNS:t501.test, DNS:t502.test, DNS:t503.test, DNS:t504.test, DNS:t505.test, DNS:t506.test, DNS:t507.test, DNS:t508.test, DNS:t509.test, DNS:t510.test, DNS:t511.test, DNS:t512.test, DNS:t513.test, DNS:t514.test, DNS:t515.test, DNS:t516.test, DNS:t517.test, DNS:t518.test, DNS:t519.test, DNS:t520.test, DNS:t521.test, DNS:t522.test, DNS:t523.test, DNS:t524.test, DNS:t525.test, DNS:t526.test, DNS:t527.test, DNS:t528.test, DNS:t529.test, DNS:t530.test, DNS:t531.test, DNS:t532.test, DNS:t533.test, DNS:t534.test, DNS:t535.test, DNS:t536.test, DNS:t537.test, DNS:t538.test, DNS:t539.test, DNS:t540.test, DNS:t541.test, DNS:t542.test, DNS:t543.test, DNS:t544.test, DNS:t545.test, DNS:t546.test, DNS:t547.test, DNS:t548.test, DNS:t549.test, DNS:t550.test, DNS:t551.test, DNS:t552.test, DNS:t553.test, DNS:t554.test, DNS:t555.test, DNS:t556.test, DNS:t557.test, DNS:t558.test, DNS:t559.test, DNS:t560.test, DNS:t561.test, DNS:t562.test, DNS:t563.test, DNS:t564.test, DNS:t565.test, DNS:t566.test, DNS:t567.test, DNS:t568.test, DNS:t569.test, DNS:t570.test, DNS:t571.test, DNS:t572.test, DNS:t573.test, DNS:t574.test, DNS:t575.test, DNS:t576.test, DNS:t577.test, DNS:t578.test, DNS:t579.test, DNS:t580.test, DNS:t581.test, DNS:t582.test, DNS:t583.test, DNS:t584.test, DNS:t585.test, DNS:t586.test, DNS:t587.test, DNS:t588.test, DNS:t589.test, DNS:t590.test, DNS:t591.test, DNS:t592.test, DNS:t593.test, DNS:t594.test, DNS:t595.test, DNS:t596.test, DNS:t597.test, DNS:t598.test, DNS:t599.test, DNS:t600.test, DNS:t601.test, DNS:t602.test, DNS:t603.test, DNS:t604.test, DNS:t605.test, DNS:t606.test, DNS:t607.test, DNS:t608.test, DNS:t609.test, DNS:t610.test, DNS:t611.test, DNS:t612.test, DNS:t613.test, DNS:t614.test, DNS:t615.test, DNS:t616.test, DNS:t617.test, DNS:t618.test, DNS:t619.test, DNS:t620.test, DNS:t621.test, DNS:t622.test, DNS:t623.test, DNS:t624.test, DNS:t625.test, DNS:t626.test, DNS:t627.test, DNS:t628.test, DNS:t629.test, DNS:t630.test, DNS:t631.test, DNS:t632.test, DNS:t633.test, DNS:t634.test, DNS:t635.test, DNS:t636.test, DNS:t637.test, DNS:t638.test, DNS:t639.test, DNS:t640.test, DNS:t641.test, DNS:t642.test, DNS:t643.test, DNS:t644.test, DNS:t645.test, DNS:t646.test, DNS:t647.test, DNS:t648.test, DNS:t649.test, DNS:t650.test, DNS:t651.test, DNS:t652.test, DNS:t653.test, DNS:t654.test, DNS:t655.test, DNS:t656.test, DNS:t657.test, DNS:t658.test, DNS:t659.test, DNS:t660.test, DNS:t661.test, DNS:t662.test, DNS:t663.test, DNS:t664.test, DNS:t665.test, DNS:t666.test, DNS:t667.test, DNS:t668.test, DNS:t669.test, DNS:t670.test, DNS:t671.test, DNS:t672.test, DNS:t673.test, DNS:t674.test, DNS:t675.test, DNS:t676.test, DNS:t677.test, DNS:t678.test, DNS:t679.test, DNS:t680.test, DNS:t681.test, DNS:t682.test, DNS:t683.test, DNS:t684.test, DNS:t685.test, DNS:t686.test, DNS:t687.test, DNS:t688.test, DNS:t689.test, DNS:t690.test, DNS:t691.test, DNS:t692.test, DNS:t693.test, DNS:t694.test, DNS:t695.test, DNS:t696.test, DNS:t697.test, DNS:t698.test, DNS:t699.test, DNS:t700.test, DNS:t701.test, DNS:t702.test, DNS:t703.test, DNS:t704.test, DNS:t705.test, DNS:t706.test, DNS:t707.test, DNS:t708.test, DNS:t709.test, DNS:t710.test, DNS:t711.test, DNS:t712.test, DNS:t713.test, DNS:t714.test, DNS:t715.test, DNS:t716.test, DNS:t717.test, DNS:t718.test, DNS:t719.test, DNS:t720.test, DNS:t721.test, DNS:t722.test, DNS:t723.test, DNS:t724.test, DNS:t725.test, DNS:t726.test, DNS:t727.test, DNS:t728.test, DNS:t729.test, DNS:t730.test, DNS:t731.test, DNS:t732.test, DNS:t733.test, DNS:t734.test, DNS:t735.test, DNS:t736.test, DNS:t737.test, DNS:t738.test, DNS:t739.test, DNS:t740.test, DNS:t741.test, DNS:t742.test, DNS:t743.test, DNS:t744.test, DNS:t745.test, DNS:t746.test, DNS:t747.test, DNS:t748.test, DNS:t749.test, DNS:t750.test, DNS:t751.test, DNS:t752.test, DNS:t753.test, DNS:t754.test, DNS:t755.test, DNS:t756.test, DNS:t757.test, DNS:t758.test, DNS:t759.test, DNS:t760.test, DNS:t761.test, DNS:t762.test, DNS:t763.test, DNS:t764.test, DNS:t765.test, DNS:t766.test, DNS:t767.test, DNS:t768.test, DNS:t769.test, DNS:t770.test, DNS:t771.test, DNS:t772.test, DNS:t773.test, DNS:t774.test, DNS:t775.test, DNS:t776.test, DNS:t777.test, DNS:t778.test, DNS:t779.test, DNS:t780.test, DNS:t781.test, DNS:t782.test, DNS:t783.test, DNS:t784.test, DNS:t785.test, DNS:t786.test, DNS:t787.test, DNS:t788.test, DNS:t789.test, DNS:t790.test, DNS:t791.test, DNS:t792.test, DNS:t793.test, DNS:t794.test, DNS:t795.test, DNS:t796.test, DNS:t797.test, DNS:t798.test, DNS:t799.test, DNS:t800.test, DNS:t801.test, DNS:t802.test, DNS:t803.test, DNS:t804.test, DNS:t805.test, DNS:t806.test, DNS:t807.test, DNS:t808.test, DNS:t809.test, DNS:t810.test, DNS:t811.test, DNS:t812.test, DNS:t813.test, DNS:t814.test, DNS:t815.test, DNS:t816.test, DNS:t817.test, DNS:t818.test, DNS:t819.test, DNS:t820.test, DNS:t821.test, DNS:t822.test, DNS:t823.test, DNS:t824.test, DNS:t825.test, DNS:t826.test, DNS:t827.test, DNS:t828.test, DNS:t829.test, DNS:t830.test, DNS:t831.test, DNS:t832.test, DNS:t833.test, DNS:t834.test, DNS:t835.test, DNS:t836.test, DNS:t837.test, DNS:t838.test, DNS:t839.test, DNS:t840.test, DNS:t841.test, DNS:t842.test, DNS:t843.test, DNS:t844.test, DNS:t845.test, DNS:t846.test, DNS:t847.test, DNS:t848.test, DNS:t849.test, DNS:t850.test, DNS:t851.test, DNS:t852.test, DNS:t853.test, DNS:t854.test, DNS:t855.test, DNS:t856.test, DNS:t857.test, DNS:t858.test, DNS:t859.test, DNS:t860.test, DNS:t861.test, DNS:t862.test, DNS:t863.test, DNS:t864.test, DNS:t865.test, DNS:t866.test, DNS:t867.test, DNS:t868.test, DNS:t869.test, DNS:t870.test, DNS:t871.test, DNS:t872.test, DNS:t873.test, DNS:t874.test, DNS:t875.test, DNS:t876.test, DNS:t877.test, DNS:t878.test, DNS:t879.test, DNS:t880.test, DNS:t881.test, DNS:t882.test, DNS:t883.test, DNS:t884.test, DNS:t885.test, DNS:t886.test, DNS:t887.test, DNS:t888.test, DNS:t889.test, DNS:t890.test, DNS:t891.test, DNS:t892.test, DNS:t893.test, DNS:t894.test, DNS:t895.test, DNS:t896.test, DNS:t897.test, DNS:t898.test, DNS:t899.test, DNS:t900.test, DNS:t901.test, DNS:t902.test, DNS:t903.test, DNS:t904.test, DNS:t905.test, DNS:t906.test, DNS:t907.test, DNS:t908.test, DNS:t909.test, DNS:t910.test, DNS:t911.test, DNS:t912.test, DNS:t913.test, DNS:t914.test, DNS:t915.test, DNS:t916.test, DNS:t917.test, DNS:t918.test, DNS:t919.test, DNS:t920.test, DNS:t921.test, DNS:t922.test, DNS:t923.test, DNS:t924.test, DNS:t925.test, DNS:t926.test, DNS:t927.test, DNS:t928.test, DNS:t929.test, DNS:t930.test, DNS:t931.test, DNS:t932.test, DNS:t933.test, DNS:t934.test, DNS:t935.test, DNS:t936.test, DNS:t937.test, DNS:t938.test, DNS:t939.test, DNS:t940.test, DNS:t941.test, DNS:t942.test, DNS:t943.test, DNS:t944.test, DNS:t945.test, DNS:t946.test, DNS:t947.test, DNS:t948.test, DNS:t949.test, DNS:t950.test, DNS:t951.test, DNS:t952.test, DNS:t953.test, DNS:t954.test, DNS:t955.test, DNS:t956.test, DNS:t957.test, DNS:t958.test, DNS:t959.test, DNS:t960.test, DNS:t961.test, DNS:t962.test, DNS:t963.test, DNS:t964.test, DNS:t965.test, DNS:t966.test, DNS:t967.test, DNS:t968.test, DNS:t969.test, DNS:t970.test, DNS:t971.test, DNS:t972.test, DNS:t973.test, DNS:t974.test, DNS:t975.test, DNS:t976.test, DNS:t977.test, DNS:t978.test, DNS:t979.test, DNS:t980.test, DNS:t981.test, DNS:t982.test, DNS:t983.test, DNS:t984.test, DNS:t985.test, DNS:t986.test, DNS:t987.test, DNS:t988.test, DNS:t989.test, DNS:t990.test, DNS:t991.test, DNS:t992.test, DNS:t993.test, DNS:t994.test, DNS:t995.test, DNS:t996.test, DNS:t997.test, DNS:t998.test, DNS:t999.test, DNS:t1000.test, DNS:t1001.test, DNS:t1002.test, DNS:t1003.test, DNS:t1004.test, DNS:t1005.test, DNS:t1006.test, DNS:t1007.test, DNS:t1008.test, DNS:t1009.test, DNS:t1010.test, DNS:t1011.test, DNS:t1012.test, DNS:t1013.test, DNS:t1014.test, DNS:t1015.test, DNS:t1016.test, DNS:t1017.test, DNS:t1018.test, DNS:t1019.test, DNS:t1020.test, DNS:t1021.test, DNS:t1022.test, DNS:t1023.test - Signature Algorithm: sha256WithRSAEncryption - 74:b3:46:3e:05:7e:b3:03:85:e3:32:be:81:d2:63:14:24:b1: - 6d:3a:24:e1:79:b7:68:99:15:33:d9:63:6d:8b:b3:63:a5:a3: - a8:1d:c5:05:89:7d:5e:00:2e:16:9d:b3:7e:e3:d6:8b:ec:3b: - e6:00:e3:74:e9:d3:53:89:ee:33:54:c0:19:41:9f:35:62:41: - 32:87:21:e7:84:44:ca:21:2a:f8:33:33:f5:92:39:37:a3:3e: - 43:42:52:16:81:c3:6e:ce:71:d9:d9:4e:be:ee:87:14:39:7b: - 2a:13:67:85:e0:72:b9:05:b7:75:6a:4a:86:f4:bf:9a:67:19: - 75:7c:e6:01:da:42:13:58:ad:f9:1f:d1:63:a5:8c:27:fd:48: - 04:ca:b9:b7:4a:b5:62:12:ad:0f:0b:6f:ba:7f:d1:c4:1f:b6: - c0:6a:c6:88:d5:1b:3d:bd:64:34:fa:44:89:ad:05:47:4c:ac: - dd:72:2f:7c:fa:34:71:bb:41:f0:43:7d:97:3f:29:00:de:ab: - 4c:f7:cc:2b:ca:80:fb:2a:fb:34:81:5a:73:7b:77:da:54:5b: - 1e:09:3c:31:8d:7e:ed:c2:af:48:19:59:fd:59:68:56:c9:f5: - 3a:2d:ac:0f:57:6e:f1:ee:89:ea:69:71:d2:7a:ee:ee:9f:f6: - cc:15:7f:20 ------BEGIN CERTIFICATE----- -MIIvWDCCLkCgAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY1jANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCLKUwgiyhMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgiu3BgNVHREEgiuuMIIrqoIH -dDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIHdDQudGVzdIIHdDUu -dGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDkudGVzdIIIdDEwLnRl -c3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQxNC50ZXN0ggh0MTUu -dGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIIIdDE5LnRlc3SCCHQy -MC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0ggh0MjQudGVzdIII -dDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRlc3SCCHQyOS50ZXN0 -ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMudGVzdIIIdDM0LnRl -c3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQzOC50ZXN0ggh0Mzku -dGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIIIdDQzLnRlc3SCCHQ0 -NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0ggh0NDgudGVzdIII -dDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRlc3SCCHQ1My50ZXN0 -ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcudGVzdIIIdDU4LnRl -c3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2Mi50ZXN0ggh0NjMu -dGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIIIdDY3LnRlc3SCCHQ2 -OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0ggh0NzIudGVzdIII -dDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRlc3SCCHQ3Ny50ZXN0 -ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEudGVzdIIIdDgyLnRl -c3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4Ni50ZXN0ggh0ODcu -dGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIIIdDkxLnRlc3SCCHQ5 -Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0ggh0OTYudGVzdIII -dDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50ZXN0ggl0MTAxLnRl -c3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SCCXQxMDUudGVzdIIJ -dDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEwOS50ZXN0ggl0MTEw -LnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRlc3SCCXQxMTQudGVz -dIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJdDExOC50ZXN0ggl0 -MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIyLnRlc3SCCXQxMjMu -dGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVzdIIJdDEyNy50ZXN0 -ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0MTMxLnRlc3SCCXQx -MzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUudGVzdIIJdDEzNi50 -ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0ggl0MTQwLnRlc3SC -CXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQxNDQudGVzdIIJdDE0 -NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50ZXN0ggl0MTQ5LnRl -c3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SCCXQxNTMudGVzdIIJ -dDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1Ny50ZXN0ggl0MTU4 -LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRlc3SCCXQxNjIudGVz -dIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJdDE2Ni50ZXN0ggl0 -MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcwLnRlc3SCCXQxNzEu -dGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVzdIIJdDE3NS50ZXN0 -ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0MTc5LnRlc3SCCXQx -ODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMudGVzdIIJdDE4NC50 -ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0ggl0MTg4LnRlc3SC -CXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQxOTIudGVzdIIJdDE5 -My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50ZXN0ggl0MTk3LnRl -c3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SCCXQyMDEudGVzdIIJ -dDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIwNS50ZXN0ggl0MjA2 -LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRlc3SCCXQyMTAudGVz -dIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJdDIxNC50ZXN0ggl0 -MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4LnRlc3SCCXQyMTku -dGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVzdIIJdDIyMy50ZXN0 -ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0MjI3LnRlc3SCCXQy -MjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEudGVzdIIJdDIzMi50 -ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0ggl0MjM2LnRlc3SC -CXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQyNDAudGVzdIIJdDI0 -MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50ZXN0ggl0MjQ1LnRl -c3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SCCXQyNDkudGVzdIIJ -dDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1My50ZXN0ggl0MjU0 -LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRlc3SCCXQyNTgudGVz -dIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJdDI2Mi50ZXN0ggl0 -MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2LnRlc3SCCXQyNjcu -dGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVzdIIJdDI3MS50ZXN0 -ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0Mjc1LnRlc3SCCXQy -NzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzkudGVzdIIJdDI4MC50 -ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0ggl0Mjg0LnRlc3SC -CXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQyODgudGVzdIIJdDI4 -OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50ZXN0ggl0MjkzLnRl -c3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SCCXQyOTcudGVzdIIJ -dDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMwMS50ZXN0ggl0MzAy -LnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRlc3SCCXQzMDYudGVz -dIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJdDMxMC50ZXN0ggl0 -MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0LnRlc3SCCXQzMTUu -dGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVzdIIJdDMxOS50ZXN0 -ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0MzIzLnRlc3SCCXQz -MjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcudGVzdIIJdDMyOC50 -ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0ggl0MzMyLnRlc3SC -CXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQzMzYudGVzdIIJdDMz -Ny50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50ZXN0ggl0MzQxLnRl -c3SCCXQzNDIudGVzdIIJdDM0My50ZXN0ggl0MzQ0LnRlc3SCCXQzNDUudGVzdIIJ -dDM0Ni50ZXN0ggl0MzQ3LnRlc3SCCXQzNDgudGVzdIIJdDM0OS50ZXN0ggl0MzUw -LnRlc3SCCXQzNTEudGVzdIIJdDM1Mi50ZXN0ggl0MzUzLnRlc3SCCXQzNTQudGVz -dIIJdDM1NS50ZXN0ggl0MzU2LnRlc3SCCXQzNTcudGVzdIIJdDM1OC50ZXN0ggl0 -MzU5LnRlc3SCCXQzNjAudGVzdIIJdDM2MS50ZXN0ggl0MzYyLnRlc3SCCXQzNjMu -dGVzdIIJdDM2NC50ZXN0ggl0MzY1LnRlc3SCCXQzNjYudGVzdIIJdDM2Ny50ZXN0 -ggl0MzY4LnRlc3SCCXQzNjkudGVzdIIJdDM3MC50ZXN0ggl0MzcxLnRlc3SCCXQz -NzIudGVzdIIJdDM3My50ZXN0ggl0Mzc0LnRlc3SCCXQzNzUudGVzdIIJdDM3Ni50 -ZXN0ggl0Mzc3LnRlc3SCCXQzNzgudGVzdIIJdDM3OS50ZXN0ggl0MzgwLnRlc3SC -CXQzODEudGVzdIIJdDM4Mi50ZXN0ggl0MzgzLnRlc3SCCXQzODQudGVzdIIJdDM4 -NS50ZXN0ggl0Mzg2LnRlc3SCCXQzODcudGVzdIIJdDM4OC50ZXN0ggl0Mzg5LnRl -c3SCCXQzOTAudGVzdIIJdDM5MS50ZXN0ggl0MzkyLnRlc3SCCXQzOTMudGVzdIIJ -dDM5NC50ZXN0ggl0Mzk1LnRlc3SCCXQzOTYudGVzdIIJdDM5Ny50ZXN0ggl0Mzk4 -LnRlc3SCCXQzOTkudGVzdIIJdDQwMC50ZXN0ggl0NDAxLnRlc3SCCXQ0MDIudGVz -dIIJdDQwMy50ZXN0ggl0NDA0LnRlc3SCCXQ0MDUudGVzdIIJdDQwNi50ZXN0ggl0 -NDA3LnRlc3SCCXQ0MDgudGVzdIIJdDQwOS50ZXN0ggl0NDEwLnRlc3SCCXQ0MTEu -dGVzdIIJdDQxMi50ZXN0ggl0NDEzLnRlc3SCCXQ0MTQudGVzdIIJdDQxNS50ZXN0 -ggl0NDE2LnRlc3SCCXQ0MTcudGVzdIIJdDQxOC50ZXN0ggl0NDE5LnRlc3SCCXQ0 -MjAudGVzdIIJdDQyMS50ZXN0ggl0NDIyLnRlc3SCCXQ0MjMudGVzdIIJdDQyNC50 -ZXN0ggl0NDI1LnRlc3SCCXQ0MjYudGVzdIIJdDQyNy50ZXN0ggl0NDI4LnRlc3SC -CXQ0MjkudGVzdIIJdDQzMC50ZXN0ggl0NDMxLnRlc3SCCXQ0MzIudGVzdIIJdDQz -My50ZXN0ggl0NDM0LnRlc3SCCXQ0MzUudGVzdIIJdDQzNi50ZXN0ggl0NDM3LnRl -c3SCCXQ0MzgudGVzdIIJdDQzOS50ZXN0ggl0NDQwLnRlc3SCCXQ0NDEudGVzdIIJ -dDQ0Mi50ZXN0ggl0NDQzLnRlc3SCCXQ0NDQudGVzdIIJdDQ0NS50ZXN0ggl0NDQ2 -LnRlc3SCCXQ0NDcudGVzdIIJdDQ0OC50ZXN0ggl0NDQ5LnRlc3SCCXQ0NTAudGVz -dIIJdDQ1MS50ZXN0ggl0NDUyLnRlc3SCCXQ0NTMudGVzdIIJdDQ1NC50ZXN0ggl0 -NDU1LnRlc3SCCXQ0NTYudGVzdIIJdDQ1Ny50ZXN0ggl0NDU4LnRlc3SCCXQ0NTku -dGVzdIIJdDQ2MC50ZXN0ggl0NDYxLnRlc3SCCXQ0NjIudGVzdIIJdDQ2My50ZXN0 -ggl0NDY0LnRlc3SCCXQ0NjUudGVzdIIJdDQ2Ni50ZXN0ggl0NDY3LnRlc3SCCXQ0 -NjgudGVzdIIJdDQ2OS50ZXN0ggl0NDcwLnRlc3SCCXQ0NzEudGVzdIIJdDQ3Mi50 -ZXN0ggl0NDczLnRlc3SCCXQ0NzQudGVzdIIJdDQ3NS50ZXN0ggl0NDc2LnRlc3SC -CXQ0NzcudGVzdIIJdDQ3OC50ZXN0ggl0NDc5LnRlc3SCCXQ0ODAudGVzdIIJdDQ4 -MS50ZXN0ggl0NDgyLnRlc3SCCXQ0ODMudGVzdIIJdDQ4NC50ZXN0ggl0NDg1LnRl -c3SCCXQ0ODYudGVzdIIJdDQ4Ny50ZXN0ggl0NDg4LnRlc3SCCXQ0ODkudGVzdIIJ -dDQ5MC50ZXN0ggl0NDkxLnRlc3SCCXQ0OTIudGVzdIIJdDQ5My50ZXN0ggl0NDk0 -LnRlc3SCCXQ0OTUudGVzdIIJdDQ5Ni50ZXN0ggl0NDk3LnRlc3SCCXQ0OTgudGVz -dIIJdDQ5OS50ZXN0ggl0NTAwLnRlc3SCCXQ1MDEudGVzdIIJdDUwMi50ZXN0ggl0 -NTAzLnRlc3SCCXQ1MDQudGVzdIIJdDUwNS50ZXN0ggl0NTA2LnRlc3SCCXQ1MDcu -dGVzdIIJdDUwOC50ZXN0ggl0NTA5LnRlc3SCCXQ1MTAudGVzdIIJdDUxMS50ZXN0 -ggl0NTEyLnRlc3SCCXQ1MTMudGVzdIIJdDUxNC50ZXN0ggl0NTE1LnRlc3SCCXQ1 -MTYudGVzdIIJdDUxNy50ZXN0ggl0NTE4LnRlc3SCCXQ1MTkudGVzdIIJdDUyMC50 -ZXN0ggl0NTIxLnRlc3SCCXQ1MjIudGVzdIIJdDUyMy50ZXN0ggl0NTI0LnRlc3SC -CXQ1MjUudGVzdIIJdDUyNi50ZXN0ggl0NTI3LnRlc3SCCXQ1MjgudGVzdIIJdDUy -OS50ZXN0ggl0NTMwLnRlc3SCCXQ1MzEudGVzdIIJdDUzMi50ZXN0ggl0NTMzLnRl -c3SCCXQ1MzQudGVzdIIJdDUzNS50ZXN0ggl0NTM2LnRlc3SCCXQ1MzcudGVzdIIJ -dDUzOC50ZXN0ggl0NTM5LnRlc3SCCXQ1NDAudGVzdIIJdDU0MS50ZXN0ggl0NTQy -LnRlc3SCCXQ1NDMudGVzdIIJdDU0NC50ZXN0ggl0NTQ1LnRlc3SCCXQ1NDYudGVz -dIIJdDU0Ny50ZXN0ggl0NTQ4LnRlc3SCCXQ1NDkudGVzdIIJdDU1MC50ZXN0ggl0 -NTUxLnRlc3SCCXQ1NTIudGVzdIIJdDU1My50ZXN0ggl0NTU0LnRlc3SCCXQ1NTUu -dGVzdIIJdDU1Ni50ZXN0ggl0NTU3LnRlc3SCCXQ1NTgudGVzdIIJdDU1OS50ZXN0 -ggl0NTYwLnRlc3SCCXQ1NjEudGVzdIIJdDU2Mi50ZXN0ggl0NTYzLnRlc3SCCXQ1 -NjQudGVzdIIJdDU2NS50ZXN0ggl0NTY2LnRlc3SCCXQ1NjcudGVzdIIJdDU2OC50 -ZXN0ggl0NTY5LnRlc3SCCXQ1NzAudGVzdIIJdDU3MS50ZXN0ggl0NTcyLnRlc3SC -CXQ1NzMudGVzdIIJdDU3NC50ZXN0ggl0NTc1LnRlc3SCCXQ1NzYudGVzdIIJdDU3 -Ny50ZXN0ggl0NTc4LnRlc3SCCXQ1NzkudGVzdIIJdDU4MC50ZXN0ggl0NTgxLnRl -c3SCCXQ1ODIudGVzdIIJdDU4My50ZXN0ggl0NTg0LnRlc3SCCXQ1ODUudGVzdIIJ -dDU4Ni50ZXN0ggl0NTg3LnRlc3SCCXQ1ODgudGVzdIIJdDU4OS50ZXN0ggl0NTkw -LnRlc3SCCXQ1OTEudGVzdIIJdDU5Mi50ZXN0ggl0NTkzLnRlc3SCCXQ1OTQudGVz -dIIJdDU5NS50ZXN0ggl0NTk2LnRlc3SCCXQ1OTcudGVzdIIJdDU5OC50ZXN0ggl0 -NTk5LnRlc3SCCXQ2MDAudGVzdIIJdDYwMS50ZXN0ggl0NjAyLnRlc3SCCXQ2MDMu -dGVzdIIJdDYwNC50ZXN0ggl0NjA1LnRlc3SCCXQ2MDYudGVzdIIJdDYwNy50ZXN0 -ggl0NjA4LnRlc3SCCXQ2MDkudGVzdIIJdDYxMC50ZXN0ggl0NjExLnRlc3SCCXQ2 -MTIudGVzdIIJdDYxMy50ZXN0ggl0NjE0LnRlc3SCCXQ2MTUudGVzdIIJdDYxNi50 -ZXN0ggl0NjE3LnRlc3SCCXQ2MTgudGVzdIIJdDYxOS50ZXN0ggl0NjIwLnRlc3SC -CXQ2MjEudGVzdIIJdDYyMi50ZXN0ggl0NjIzLnRlc3SCCXQ2MjQudGVzdIIJdDYy -NS50ZXN0ggl0NjI2LnRlc3SCCXQ2MjcudGVzdIIJdDYyOC50ZXN0ggl0NjI5LnRl -c3SCCXQ2MzAudGVzdIIJdDYzMS50ZXN0ggl0NjMyLnRlc3SCCXQ2MzMudGVzdIIJ -dDYzNC50ZXN0ggl0NjM1LnRlc3SCCXQ2MzYudGVzdIIJdDYzNy50ZXN0ggl0NjM4 -LnRlc3SCCXQ2MzkudGVzdIIJdDY0MC50ZXN0ggl0NjQxLnRlc3SCCXQ2NDIudGVz -dIIJdDY0My50ZXN0ggl0NjQ0LnRlc3SCCXQ2NDUudGVzdIIJdDY0Ni50ZXN0ggl0 -NjQ3LnRlc3SCCXQ2NDgudGVzdIIJdDY0OS50ZXN0ggl0NjUwLnRlc3SCCXQ2NTEu -dGVzdIIJdDY1Mi50ZXN0ggl0NjUzLnRlc3SCCXQ2NTQudGVzdIIJdDY1NS50ZXN0 -ggl0NjU2LnRlc3SCCXQ2NTcudGVzdIIJdDY1OC50ZXN0ggl0NjU5LnRlc3SCCXQ2 -NjAudGVzdIIJdDY2MS50ZXN0ggl0NjYyLnRlc3SCCXQ2NjMudGVzdIIJdDY2NC50 -ZXN0ggl0NjY1LnRlc3SCCXQ2NjYudGVzdIIJdDY2Ny50ZXN0ggl0NjY4LnRlc3SC -CXQ2NjkudGVzdIIJdDY3MC50ZXN0ggl0NjcxLnRlc3SCCXQ2NzIudGVzdIIJdDY3 -My50ZXN0ggl0Njc0LnRlc3SCCXQ2NzUudGVzdIIJdDY3Ni50ZXN0ggl0Njc3LnRl -c3SCCXQ2NzgudGVzdIIJdDY3OS50ZXN0ggl0NjgwLnRlc3SCCXQ2ODEudGVzdIIJ -dDY4Mi50ZXN0ggl0NjgzLnRlc3SCCXQ2ODQudGVzdIIJdDY4NS50ZXN0ggl0Njg2 -LnRlc3SCCXQ2ODcudGVzdIIJdDY4OC50ZXN0ggl0Njg5LnRlc3SCCXQ2OTAudGVz -dIIJdDY5MS50ZXN0ggl0NjkyLnRlc3SCCXQ2OTMudGVzdIIJdDY5NC50ZXN0ggl0 -Njk1LnRlc3SCCXQ2OTYudGVzdIIJdDY5Ny50ZXN0ggl0Njk4LnRlc3SCCXQ2OTku -dGVzdIIJdDcwMC50ZXN0ggl0NzAxLnRlc3SCCXQ3MDIudGVzdIIJdDcwMy50ZXN0 -ggl0NzA0LnRlc3SCCXQ3MDUudGVzdIIJdDcwNi50ZXN0ggl0NzA3LnRlc3SCCXQ3 -MDgudGVzdIIJdDcwOS50ZXN0ggl0NzEwLnRlc3SCCXQ3MTEudGVzdIIJdDcxMi50 -ZXN0ggl0NzEzLnRlc3SCCXQ3MTQudGVzdIIJdDcxNS50ZXN0ggl0NzE2LnRlc3SC -CXQ3MTcudGVzdIIJdDcxOC50ZXN0ggl0NzE5LnRlc3SCCXQ3MjAudGVzdIIJdDcy -MS50ZXN0ggl0NzIyLnRlc3SCCXQ3MjMudGVzdIIJdDcyNC50ZXN0ggl0NzI1LnRl -c3SCCXQ3MjYudGVzdIIJdDcyNy50ZXN0ggl0NzI4LnRlc3SCCXQ3MjkudGVzdIIJ -dDczMC50ZXN0ggl0NzMxLnRlc3SCCXQ3MzIudGVzdIIJdDczMy50ZXN0ggl0NzM0 -LnRlc3SCCXQ3MzUudGVzdIIJdDczNi50ZXN0ggl0NzM3LnRlc3SCCXQ3MzgudGVz -dIIJdDczOS50ZXN0ggl0NzQwLnRlc3SCCXQ3NDEudGVzdIIJdDc0Mi50ZXN0ggl0 -NzQzLnRlc3SCCXQ3NDQudGVzdIIJdDc0NS50ZXN0ggl0NzQ2LnRlc3SCCXQ3NDcu -dGVzdIIJdDc0OC50ZXN0ggl0NzQ5LnRlc3SCCXQ3NTAudGVzdIIJdDc1MS50ZXN0 -ggl0NzUyLnRlc3SCCXQ3NTMudGVzdIIJdDc1NC50ZXN0ggl0NzU1LnRlc3SCCXQ3 -NTYudGVzdIIJdDc1Ny50ZXN0ggl0NzU4LnRlc3SCCXQ3NTkudGVzdIIJdDc2MC50 -ZXN0ggl0NzYxLnRlc3SCCXQ3NjIudGVzdIIJdDc2My50ZXN0ggl0NzY0LnRlc3SC -CXQ3NjUudGVzdIIJdDc2Ni50ZXN0ggl0NzY3LnRlc3SCCXQ3NjgudGVzdIIJdDc2 -OS50ZXN0ggl0NzcwLnRlc3SCCXQ3NzEudGVzdIIJdDc3Mi50ZXN0ggl0NzczLnRl -c3SCCXQ3NzQudGVzdIIJdDc3NS50ZXN0ggl0Nzc2LnRlc3SCCXQ3NzcudGVzdIIJ -dDc3OC50ZXN0ggl0Nzc5LnRlc3SCCXQ3ODAudGVzdIIJdDc4MS50ZXN0ggl0Nzgy -LnRlc3SCCXQ3ODMudGVzdIIJdDc4NC50ZXN0ggl0Nzg1LnRlc3SCCXQ3ODYudGVz -dIIJdDc4Ny50ZXN0ggl0Nzg4LnRlc3SCCXQ3ODkudGVzdIIJdDc5MC50ZXN0ggl0 -NzkxLnRlc3SCCXQ3OTIudGVzdIIJdDc5My50ZXN0ggl0Nzk0LnRlc3SCCXQ3OTUu -dGVzdIIJdDc5Ni50ZXN0ggl0Nzk3LnRlc3SCCXQ3OTgudGVzdIIJdDc5OS50ZXN0 -ggl0ODAwLnRlc3SCCXQ4MDEudGVzdIIJdDgwMi50ZXN0ggl0ODAzLnRlc3SCCXQ4 -MDQudGVzdIIJdDgwNS50ZXN0ggl0ODA2LnRlc3SCCXQ4MDcudGVzdIIJdDgwOC50 -ZXN0ggl0ODA5LnRlc3SCCXQ4MTAudGVzdIIJdDgxMS50ZXN0ggl0ODEyLnRlc3SC -CXQ4MTMudGVzdIIJdDgxNC50ZXN0ggl0ODE1LnRlc3SCCXQ4MTYudGVzdIIJdDgx -Ny50ZXN0ggl0ODE4LnRlc3SCCXQ4MTkudGVzdIIJdDgyMC50ZXN0ggl0ODIxLnRl -c3SCCXQ4MjIudGVzdIIJdDgyMy50ZXN0ggl0ODI0LnRlc3SCCXQ4MjUudGVzdIIJ -dDgyNi50ZXN0ggl0ODI3LnRlc3SCCXQ4MjgudGVzdIIJdDgyOS50ZXN0ggl0ODMw -LnRlc3SCCXQ4MzEudGVzdIIJdDgzMi50ZXN0ggl0ODMzLnRlc3SCCXQ4MzQudGVz -dIIJdDgzNS50ZXN0ggl0ODM2LnRlc3SCCXQ4MzcudGVzdIIJdDgzOC50ZXN0ggl0 -ODM5LnRlc3SCCXQ4NDAudGVzdIIJdDg0MS50ZXN0ggl0ODQyLnRlc3SCCXQ4NDMu -dGVzdIIJdDg0NC50ZXN0ggl0ODQ1LnRlc3SCCXQ4NDYudGVzdIIJdDg0Ny50ZXN0 -ggl0ODQ4LnRlc3SCCXQ4NDkudGVzdIIJdDg1MC50ZXN0ggl0ODUxLnRlc3SCCXQ4 -NTIudGVzdIIJdDg1My50ZXN0ggl0ODU0LnRlc3SCCXQ4NTUudGVzdIIJdDg1Ni50 -ZXN0ggl0ODU3LnRlc3SCCXQ4NTgudGVzdIIJdDg1OS50ZXN0ggl0ODYwLnRlc3SC -CXQ4NjEudGVzdIIJdDg2Mi50ZXN0ggl0ODYzLnRlc3SCCXQ4NjQudGVzdIIJdDg2 -NS50ZXN0ggl0ODY2LnRlc3SCCXQ4NjcudGVzdIIJdDg2OC50ZXN0ggl0ODY5LnRl -c3SCCXQ4NzAudGVzdIIJdDg3MS50ZXN0ggl0ODcyLnRlc3SCCXQ4NzMudGVzdIIJ -dDg3NC50ZXN0ggl0ODc1LnRlc3SCCXQ4NzYudGVzdIIJdDg3Ny50ZXN0ggl0ODc4 -LnRlc3SCCXQ4NzkudGVzdIIJdDg4MC50ZXN0ggl0ODgxLnRlc3SCCXQ4ODIudGVz -dIIJdDg4My50ZXN0ggl0ODg0LnRlc3SCCXQ4ODUudGVzdIIJdDg4Ni50ZXN0ggl0 -ODg3LnRlc3SCCXQ4ODgudGVzdIIJdDg4OS50ZXN0ggl0ODkwLnRlc3SCCXQ4OTEu -dGVzdIIJdDg5Mi50ZXN0ggl0ODkzLnRlc3SCCXQ4OTQudGVzdIIJdDg5NS50ZXN0 -ggl0ODk2LnRlc3SCCXQ4OTcudGVzdIIJdDg5OC50ZXN0ggl0ODk5LnRlc3SCCXQ5 -MDAudGVzdIIJdDkwMS50ZXN0ggl0OTAyLnRlc3SCCXQ5MDMudGVzdIIJdDkwNC50 -ZXN0ggl0OTA1LnRlc3SCCXQ5MDYudGVzdIIJdDkwNy50ZXN0ggl0OTA4LnRlc3SC -CXQ5MDkudGVzdIIJdDkxMC50ZXN0ggl0OTExLnRlc3SCCXQ5MTIudGVzdIIJdDkx -My50ZXN0ggl0OTE0LnRlc3SCCXQ5MTUudGVzdIIJdDkxNi50ZXN0ggl0OTE3LnRl -c3SCCXQ5MTgudGVzdIIJdDkxOS50ZXN0ggl0OTIwLnRlc3SCCXQ5MjEudGVzdIIJ -dDkyMi50ZXN0ggl0OTIzLnRlc3SCCXQ5MjQudGVzdIIJdDkyNS50ZXN0ggl0OTI2 -LnRlc3SCCXQ5MjcudGVzdIIJdDkyOC50ZXN0ggl0OTI5LnRlc3SCCXQ5MzAudGVz -dIIJdDkzMS50ZXN0ggl0OTMyLnRlc3SCCXQ5MzMudGVzdIIJdDkzNC50ZXN0ggl0 -OTM1LnRlc3SCCXQ5MzYudGVzdIIJdDkzNy50ZXN0ggl0OTM4LnRlc3SCCXQ5Mzku -dGVzdIIJdDk0MC50ZXN0ggl0OTQxLnRlc3SCCXQ5NDIudGVzdIIJdDk0My50ZXN0 -ggl0OTQ0LnRlc3SCCXQ5NDUudGVzdIIJdDk0Ni50ZXN0ggl0OTQ3LnRlc3SCCXQ5 -NDgudGVzdIIJdDk0OS50ZXN0ggl0OTUwLnRlc3SCCXQ5NTEudGVzdIIJdDk1Mi50 -ZXN0ggl0OTUzLnRlc3SCCXQ5NTQudGVzdIIJdDk1NS50ZXN0ggl0OTU2LnRlc3SC -CXQ5NTcudGVzdIIJdDk1OC50ZXN0ggl0OTU5LnRlc3SCCXQ5NjAudGVzdIIJdDk2 -MS50ZXN0ggl0OTYyLnRlc3SCCXQ5NjMudGVzdIIJdDk2NC50ZXN0ggl0OTY1LnRl -c3SCCXQ5NjYudGVzdIIJdDk2Ny50ZXN0ggl0OTY4LnRlc3SCCXQ5NjkudGVzdIIJ -dDk3MC50ZXN0ggl0OTcxLnRlc3SCCXQ5NzIudGVzdIIJdDk3My50ZXN0ggl0OTc0 -LnRlc3SCCXQ5NzUudGVzdIIJdDk3Ni50ZXN0ggl0OTc3LnRlc3SCCXQ5NzgudGVz -dIIJdDk3OS50ZXN0ggl0OTgwLnRlc3SCCXQ5ODEudGVzdIIJdDk4Mi50ZXN0ggl0 -OTgzLnRlc3SCCXQ5ODQudGVzdIIJdDk4NS50ZXN0ggl0OTg2LnRlc3SCCXQ5ODcu -dGVzdIIJdDk4OC50ZXN0ggl0OTg5LnRlc3SCCXQ5OTAudGVzdIIJdDk5MS50ZXN0 -ggl0OTkyLnRlc3SCCXQ5OTMudGVzdIIJdDk5NC50ZXN0ggl0OTk1LnRlc3SCCXQ5 -OTYudGVzdIIJdDk5Ny50ZXN0ggl0OTk4LnRlc3SCCXQ5OTkudGVzdIIKdDEwMDAu -dGVzdIIKdDEwMDEudGVzdIIKdDEwMDIudGVzdIIKdDEwMDMudGVzdIIKdDEwMDQu -dGVzdIIKdDEwMDUudGVzdIIKdDEwMDYudGVzdIIKdDEwMDcudGVzdIIKdDEwMDgu -dGVzdIIKdDEwMDkudGVzdIIKdDEwMTAudGVzdIIKdDEwMTEudGVzdIIKdDEwMTIu -dGVzdIIKdDEwMTMudGVzdIIKdDEwMTQudGVzdIIKdDEwMTUudGVzdIIKdDEwMTYu -dGVzdIIKdDEwMTcudGVzdIIKdDEwMTgudGVzdIIKdDEwMTkudGVzdIIKdDEwMjAu -dGVzdIIKdDEwMjEudGVzdIIKdDEwMjIudGVzdIIKdDEwMjMudGVzdDANBgkqhkiG -9w0BAQsFAAOCAQEAdLNGPgV+swOF4zK+gdJjFCSxbTok4Xm3aJkVM9ljbYuzY6Wj -qB3FBYl9XgAuFp2zfuPWi+w75gDjdOnTU4nuM1TAGUGfNWJBMoch54REyiEq+DMz -9ZI5N6M+Q0JSFoHDbs5x2dlOvu6HFDl7KhNnheByuQW3dWpKhvS/mmcZdXzmAdpC -E1it+R/RY6WMJ/1IBMq5t0q1YhKtDwtvun/RxB+2wGrGiNUbPb1kNPpEia0FR0ys -3XIvfPo0cbtB8EN9lz8pAN6rTPfMK8qA+yr7NIFac3t32lRbHgk8MY1+7cKvSBlZ -/VloVsn1Oi2sD1du8e6J6mlx0nru7p/2zBV/IA== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.cnf deleted file mode 100644 index 03ea2c8255..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.cnf +++ /dev/null @@ -1,1091 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "t0" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,digitalSignature,keyEncipherment -extendedKeyUsage = serverAuth,clientAuth -subjectAltName = @san_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/t0_3.pem -new_certs_dir = out -serial = out/t0.serial -database = out/t0.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/t0.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/t0.cer - -[crl_info] -URI.0 = http://url-for-crl/t0.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[san_info] -IP.1 = 10.0.0.0 -IP.2 = 10.0.0.1 -IP.3 = 10.0.0.2 -IP.4 = 10.0.0.3 -IP.5 = 10.0.0.4 -IP.6 = 10.0.0.5 -IP.7 = 10.0.0.6 -IP.8 = 10.0.0.7 -IP.9 = 10.0.0.8 -IP.10 = 10.0.0.9 -IP.11 = 10.0.0.10 -IP.12 = 10.0.0.11 -IP.13 = 10.0.0.12 -IP.14 = 10.0.0.13 -IP.15 = 10.0.0.14 -IP.16 = 10.0.0.15 -IP.17 = 10.0.0.16 -IP.18 = 10.0.0.17 -IP.19 = 10.0.0.18 -IP.20 = 10.0.0.19 -IP.21 = 10.0.0.20 -IP.22 = 10.0.0.21 -IP.23 = 10.0.0.22 -IP.24 = 10.0.0.23 -IP.25 = 10.0.0.24 -IP.26 = 10.0.0.25 -IP.27 = 10.0.0.26 -IP.28 = 10.0.0.27 -IP.29 = 10.0.0.28 -IP.30 = 10.0.0.29 -IP.31 = 10.0.0.30 -IP.32 = 10.0.0.31 -IP.33 = 10.0.0.32 -IP.34 = 10.0.0.33 -IP.35 = 10.0.0.34 -IP.36 = 10.0.0.35 -IP.37 = 10.0.0.36 -IP.38 = 10.0.0.37 -IP.39 = 10.0.0.38 -IP.40 = 10.0.0.39 -IP.41 = 10.0.0.40 -IP.42 = 10.0.0.41 -IP.43 = 10.0.0.42 -IP.44 = 10.0.0.43 -IP.45 = 10.0.0.44 -IP.46 = 10.0.0.45 -IP.47 = 10.0.0.46 -IP.48 = 10.0.0.47 -IP.49 = 10.0.0.48 -IP.50 = 10.0.0.49 -IP.51 = 10.0.0.50 -IP.52 = 10.0.0.51 -IP.53 = 10.0.0.52 -IP.54 = 10.0.0.53 -IP.55 = 10.0.0.54 -IP.56 = 10.0.0.55 -IP.57 = 10.0.0.56 -IP.58 = 10.0.0.57 -IP.59 = 10.0.0.58 -IP.60 = 10.0.0.59 -IP.61 = 10.0.0.60 -IP.62 = 10.0.0.61 -IP.63 = 10.0.0.62 -IP.64 = 10.0.0.63 -IP.65 = 10.0.0.64 -IP.66 = 10.0.0.65 -IP.67 = 10.0.0.66 -IP.68 = 10.0.0.67 -IP.69 = 10.0.0.68 -IP.70 = 10.0.0.69 -IP.71 = 10.0.0.70 -IP.72 = 10.0.0.71 -IP.73 = 10.0.0.72 -IP.74 = 10.0.0.73 -IP.75 = 10.0.0.74 -IP.76 = 10.0.0.75 -IP.77 = 10.0.0.76 -IP.78 = 10.0.0.77 -IP.79 = 10.0.0.78 -IP.80 = 10.0.0.79 -IP.81 = 10.0.0.80 -IP.82 = 10.0.0.81 -IP.83 = 10.0.0.82 -IP.84 = 10.0.0.83 -IP.85 = 10.0.0.84 -IP.86 = 10.0.0.85 -IP.87 = 10.0.0.86 -IP.88 = 10.0.0.87 -IP.89 = 10.0.0.88 -IP.90 = 10.0.0.89 -IP.91 = 10.0.0.90 -IP.92 = 10.0.0.91 -IP.93 = 10.0.0.92 -IP.94 = 10.0.0.93 -IP.95 = 10.0.0.94 -IP.96 = 10.0.0.95 -IP.97 = 10.0.0.96 -IP.98 = 10.0.0.97 -IP.99 = 10.0.0.98 -IP.100 = 10.0.0.99 -IP.101 = 10.0.0.100 -IP.102 = 10.0.0.101 -IP.103 = 10.0.0.102 -IP.104 = 10.0.0.103 -IP.105 = 10.0.0.104 -IP.106 = 10.0.0.105 -IP.107 = 10.0.0.106 -IP.108 = 10.0.0.107 -IP.109 = 10.0.0.108 -IP.110 = 10.0.0.109 -IP.111 = 10.0.0.110 -IP.112 = 10.0.0.111 -IP.113 = 10.0.0.112 -IP.114 = 10.0.0.113 -IP.115 = 10.0.0.114 -IP.116 = 10.0.0.115 -IP.117 = 10.0.0.116 -IP.118 = 10.0.0.117 -IP.119 = 10.0.0.118 -IP.120 = 10.0.0.119 -IP.121 = 10.0.0.120 -IP.122 = 10.0.0.121 -IP.123 = 10.0.0.122 -IP.124 = 10.0.0.123 -IP.125 = 10.0.0.124 -IP.126 = 10.0.0.125 -IP.127 = 10.0.0.126 -IP.128 = 10.0.0.127 -IP.129 = 10.0.0.128 -IP.130 = 10.0.0.129 -IP.131 = 10.0.0.130 -IP.132 = 10.0.0.131 -IP.133 = 10.0.0.132 -IP.134 = 10.0.0.133 -IP.135 = 10.0.0.134 -IP.136 = 10.0.0.135 -IP.137 = 10.0.0.136 -IP.138 = 10.0.0.137 -IP.139 = 10.0.0.138 -IP.140 = 10.0.0.139 -IP.141 = 10.0.0.140 -IP.142 = 10.0.0.141 -IP.143 = 10.0.0.142 -IP.144 = 10.0.0.143 -IP.145 = 10.0.0.144 -IP.146 = 10.0.0.145 -IP.147 = 10.0.0.146 -IP.148 = 10.0.0.147 -IP.149 = 10.0.0.148 -IP.150 = 10.0.0.149 -IP.151 = 10.0.0.150 -IP.152 = 10.0.0.151 -IP.153 = 10.0.0.152 -IP.154 = 10.0.0.153 -IP.155 = 10.0.0.154 -IP.156 = 10.0.0.155 -IP.157 = 10.0.0.156 -IP.158 = 10.0.0.157 -IP.159 = 10.0.0.158 -IP.160 = 10.0.0.159 -IP.161 = 10.0.0.160 -IP.162 = 10.0.0.161 -IP.163 = 10.0.0.162 -IP.164 = 10.0.0.163 -IP.165 = 10.0.0.164 -IP.166 = 10.0.0.165 -IP.167 = 10.0.0.166 -IP.168 = 10.0.0.167 -IP.169 = 10.0.0.168 -IP.170 = 10.0.0.169 -IP.171 = 10.0.0.170 -IP.172 = 10.0.0.171 -IP.173 = 10.0.0.172 -IP.174 = 10.0.0.173 -IP.175 = 10.0.0.174 -IP.176 = 10.0.0.175 -IP.177 = 10.0.0.176 -IP.178 = 10.0.0.177 -IP.179 = 10.0.0.178 -IP.180 = 10.0.0.179 -IP.181 = 10.0.0.180 -IP.182 = 10.0.0.181 -IP.183 = 10.0.0.182 -IP.184 = 10.0.0.183 -IP.185 = 10.0.0.184 -IP.186 = 10.0.0.185 -IP.187 = 10.0.0.186 -IP.188 = 10.0.0.187 -IP.189 = 10.0.0.188 -IP.190 = 10.0.0.189 -IP.191 = 10.0.0.190 -IP.192 = 10.0.0.191 -IP.193 = 10.0.0.192 -IP.194 = 10.0.0.193 -IP.195 = 10.0.0.194 -IP.196 = 10.0.0.195 -IP.197 = 10.0.0.196 -IP.198 = 10.0.0.197 -IP.199 = 10.0.0.198 -IP.200 = 10.0.0.199 -IP.201 = 10.0.0.200 -IP.202 = 10.0.0.201 -IP.203 = 10.0.0.202 -IP.204 = 10.0.0.203 -IP.205 = 10.0.0.204 -IP.206 = 10.0.0.205 -IP.207 = 10.0.0.206 -IP.208 = 10.0.0.207 -IP.209 = 10.0.0.208 -IP.210 = 10.0.0.209 -IP.211 = 10.0.0.210 -IP.212 = 10.0.0.211 -IP.213 = 10.0.0.212 -IP.214 = 10.0.0.213 -IP.215 = 10.0.0.214 -IP.216 = 10.0.0.215 -IP.217 = 10.0.0.216 -IP.218 = 10.0.0.217 -IP.219 = 10.0.0.218 -IP.220 = 10.0.0.219 -IP.221 = 10.0.0.220 -IP.222 = 10.0.0.221 -IP.223 = 10.0.0.222 -IP.224 = 10.0.0.223 -IP.225 = 10.0.0.224 -IP.226 = 10.0.0.225 -IP.227 = 10.0.0.226 -IP.228 = 10.0.0.227 -IP.229 = 10.0.0.228 -IP.230 = 10.0.0.229 -IP.231 = 10.0.0.230 -IP.232 = 10.0.0.231 -IP.233 = 10.0.0.232 -IP.234 = 10.0.0.233 -IP.235 = 10.0.0.234 -IP.236 = 10.0.0.235 -IP.237 = 10.0.0.236 -IP.238 = 10.0.0.237 -IP.239 = 10.0.0.238 -IP.240 = 10.0.0.239 -IP.241 = 10.0.0.240 -IP.242 = 10.0.0.241 -IP.243 = 10.0.0.242 -IP.244 = 10.0.0.243 -IP.245 = 10.0.0.244 -IP.246 = 10.0.0.245 -IP.247 = 10.0.0.246 -IP.248 = 10.0.0.247 -IP.249 = 10.0.0.248 -IP.250 = 10.0.0.249 -IP.251 = 10.0.0.250 -IP.252 = 10.0.0.251 -IP.253 = 10.0.0.252 -IP.254 = 10.0.0.253 -IP.255 = 10.0.0.254 -IP.256 = 10.0.0.255 -IP.257 = 10.0.1.0 -IP.258 = 10.0.1.1 -IP.259 = 10.0.1.2 -IP.260 = 10.0.1.3 -IP.261 = 10.0.1.4 -IP.262 = 10.0.1.5 -IP.263 = 10.0.1.6 -IP.264 = 10.0.1.7 -IP.265 = 10.0.1.8 -IP.266 = 10.0.1.9 -IP.267 = 10.0.1.10 -IP.268 = 10.0.1.11 -IP.269 = 10.0.1.12 -IP.270 = 10.0.1.13 -IP.271 = 10.0.1.14 -IP.272 = 10.0.1.15 -IP.273 = 10.0.1.16 -IP.274 = 10.0.1.17 -IP.275 = 10.0.1.18 -IP.276 = 10.0.1.19 -IP.277 = 10.0.1.20 -IP.278 = 10.0.1.21 -IP.279 = 10.0.1.22 -IP.280 = 10.0.1.23 -IP.281 = 10.0.1.24 -IP.282 = 10.0.1.25 -IP.283 = 10.0.1.26 -IP.284 = 10.0.1.27 -IP.285 = 10.0.1.28 -IP.286 = 10.0.1.29 -IP.287 = 10.0.1.30 -IP.288 = 10.0.1.31 -IP.289 = 10.0.1.32 -IP.290 = 10.0.1.33 -IP.291 = 10.0.1.34 -IP.292 = 10.0.1.35 -IP.293 = 10.0.1.36 -IP.294 = 10.0.1.37 -IP.295 = 10.0.1.38 -IP.296 = 10.0.1.39 -IP.297 = 10.0.1.40 -IP.298 = 10.0.1.41 -IP.299 = 10.0.1.42 -IP.300 = 10.0.1.43 -IP.301 = 10.0.1.44 -IP.302 = 10.0.1.45 -IP.303 = 10.0.1.46 -IP.304 = 10.0.1.47 -IP.305 = 10.0.1.48 -IP.306 = 10.0.1.49 -IP.307 = 10.0.1.50 -IP.308 = 10.0.1.51 -IP.309 = 10.0.1.52 -IP.310 = 10.0.1.53 -IP.311 = 10.0.1.54 -IP.312 = 10.0.1.55 -IP.313 = 10.0.1.56 -IP.314 = 10.0.1.57 -IP.315 = 10.0.1.58 -IP.316 = 10.0.1.59 -IP.317 = 10.0.1.60 -IP.318 = 10.0.1.61 -IP.319 = 10.0.1.62 -IP.320 = 10.0.1.63 -IP.321 = 10.0.1.64 -IP.322 = 10.0.1.65 -IP.323 = 10.0.1.66 -IP.324 = 10.0.1.67 -IP.325 = 10.0.1.68 -IP.326 = 10.0.1.69 -IP.327 = 10.0.1.70 -IP.328 = 10.0.1.71 -IP.329 = 10.0.1.72 -IP.330 = 10.0.1.73 -IP.331 = 10.0.1.74 -IP.332 = 10.0.1.75 -IP.333 = 10.0.1.76 -IP.334 = 10.0.1.77 -IP.335 = 10.0.1.78 -IP.336 = 10.0.1.79 -IP.337 = 10.0.1.80 -IP.338 = 10.0.1.81 -IP.339 = 10.0.1.82 -IP.340 = 10.0.1.83 -IP.341 = 10.0.1.84 -IP.342 = 10.0.1.85 -IP.343 = 10.0.1.86 -IP.344 = 10.0.1.87 -IP.345 = 10.0.1.88 -IP.346 = 10.0.1.89 -IP.347 = 10.0.1.90 -IP.348 = 10.0.1.91 -IP.349 = 10.0.1.92 -IP.350 = 10.0.1.93 -IP.351 = 10.0.1.94 -IP.352 = 10.0.1.95 -IP.353 = 10.0.1.96 -IP.354 = 10.0.1.97 -IP.355 = 10.0.1.98 -IP.356 = 10.0.1.99 -IP.357 = 10.0.1.100 -IP.358 = 10.0.1.101 -IP.359 = 10.0.1.102 -IP.360 = 10.0.1.103 -IP.361 = 10.0.1.104 -IP.362 = 10.0.1.105 -IP.363 = 10.0.1.106 -IP.364 = 10.0.1.107 -IP.365 = 10.0.1.108 -IP.366 = 10.0.1.109 -IP.367 = 10.0.1.110 -IP.368 = 10.0.1.111 -IP.369 = 10.0.1.112 -IP.370 = 10.0.1.113 -IP.371 = 10.0.1.114 -IP.372 = 10.0.1.115 -IP.373 = 10.0.1.116 -IP.374 = 10.0.1.117 -IP.375 = 10.0.1.118 -IP.376 = 10.0.1.119 -IP.377 = 10.0.1.120 -IP.378 = 10.0.1.121 -IP.379 = 10.0.1.122 -IP.380 = 10.0.1.123 -IP.381 = 10.0.1.124 -IP.382 = 10.0.1.125 -IP.383 = 10.0.1.126 -IP.384 = 10.0.1.127 -IP.385 = 10.0.1.128 -IP.386 = 10.0.1.129 -IP.387 = 10.0.1.130 -IP.388 = 10.0.1.131 -IP.389 = 10.0.1.132 -IP.390 = 10.0.1.133 -IP.391 = 10.0.1.134 -IP.392 = 10.0.1.135 -IP.393 = 10.0.1.136 -IP.394 = 10.0.1.137 -IP.395 = 10.0.1.138 -IP.396 = 10.0.1.139 -IP.397 = 10.0.1.140 -IP.398 = 10.0.1.141 -IP.399 = 10.0.1.142 -IP.400 = 10.0.1.143 -IP.401 = 10.0.1.144 -IP.402 = 10.0.1.145 -IP.403 = 10.0.1.146 -IP.404 = 10.0.1.147 -IP.405 = 10.0.1.148 -IP.406 = 10.0.1.149 -IP.407 = 10.0.1.150 -IP.408 = 10.0.1.151 -IP.409 = 10.0.1.152 -IP.410 = 10.0.1.153 -IP.411 = 10.0.1.154 -IP.412 = 10.0.1.155 -IP.413 = 10.0.1.156 -IP.414 = 10.0.1.157 -IP.415 = 10.0.1.158 -IP.416 = 10.0.1.159 -IP.417 = 10.0.1.160 -IP.418 = 10.0.1.161 -IP.419 = 10.0.1.162 -IP.420 = 10.0.1.163 -IP.421 = 10.0.1.164 -IP.422 = 10.0.1.165 -IP.423 = 10.0.1.166 -IP.424 = 10.0.1.167 -IP.425 = 10.0.1.168 -IP.426 = 10.0.1.169 -IP.427 = 10.0.1.170 -IP.428 = 10.0.1.171 -IP.429 = 10.0.1.172 -IP.430 = 10.0.1.173 -IP.431 = 10.0.1.174 -IP.432 = 10.0.1.175 -IP.433 = 10.0.1.176 -IP.434 = 10.0.1.177 -IP.435 = 10.0.1.178 -IP.436 = 10.0.1.179 -IP.437 = 10.0.1.180 -IP.438 = 10.0.1.181 -IP.439 = 10.0.1.182 -IP.440 = 10.0.1.183 -IP.441 = 10.0.1.184 -IP.442 = 10.0.1.185 -IP.443 = 10.0.1.186 -IP.444 = 10.0.1.187 -IP.445 = 10.0.1.188 -IP.446 = 10.0.1.189 -IP.447 = 10.0.1.190 -IP.448 = 10.0.1.191 -IP.449 = 10.0.1.192 -IP.450 = 10.0.1.193 -IP.451 = 10.0.1.194 -IP.452 = 10.0.1.195 -IP.453 = 10.0.1.196 -IP.454 = 10.0.1.197 -IP.455 = 10.0.1.198 -IP.456 = 10.0.1.199 -IP.457 = 10.0.1.200 -IP.458 = 10.0.1.201 -IP.459 = 10.0.1.202 -IP.460 = 10.0.1.203 -IP.461 = 10.0.1.204 -IP.462 = 10.0.1.205 -IP.463 = 10.0.1.206 -IP.464 = 10.0.1.207 -IP.465 = 10.0.1.208 -IP.466 = 10.0.1.209 -IP.467 = 10.0.1.210 -IP.468 = 10.0.1.211 -IP.469 = 10.0.1.212 -IP.470 = 10.0.1.213 -IP.471 = 10.0.1.214 -IP.472 = 10.0.1.215 -IP.473 = 10.0.1.216 -IP.474 = 10.0.1.217 -IP.475 = 10.0.1.218 -IP.476 = 10.0.1.219 -IP.477 = 10.0.1.220 -IP.478 = 10.0.1.221 -IP.479 = 10.0.1.222 -IP.480 = 10.0.1.223 -IP.481 = 10.0.1.224 -IP.482 = 10.0.1.225 -IP.483 = 10.0.1.226 -IP.484 = 10.0.1.227 -IP.485 = 10.0.1.228 -IP.486 = 10.0.1.229 -IP.487 = 10.0.1.230 -IP.488 = 10.0.1.231 -IP.489 = 10.0.1.232 -IP.490 = 10.0.1.233 -IP.491 = 10.0.1.234 -IP.492 = 10.0.1.235 -IP.493 = 10.0.1.236 -IP.494 = 10.0.1.237 -IP.495 = 10.0.1.238 -IP.496 = 10.0.1.239 -IP.497 = 10.0.1.240 -IP.498 = 10.0.1.241 -IP.499 = 10.0.1.242 -IP.500 = 10.0.1.243 -IP.501 = 10.0.1.244 -IP.502 = 10.0.1.245 -IP.503 = 10.0.1.246 -IP.504 = 10.0.1.247 -IP.505 = 10.0.1.248 -IP.506 = 10.0.1.249 -IP.507 = 10.0.1.250 -IP.508 = 10.0.1.251 -IP.509 = 10.0.1.252 -IP.510 = 10.0.1.253 -IP.511 = 10.0.1.254 -IP.512 = 10.0.1.255 -IP.513 = 10.0.2.0 -IP.514 = 10.0.2.1 -IP.515 = 10.0.2.2 -IP.516 = 10.0.2.3 -IP.517 = 10.0.2.4 -IP.518 = 10.0.2.5 -IP.519 = 10.0.2.6 -IP.520 = 10.0.2.7 -IP.521 = 10.0.2.8 -IP.522 = 10.0.2.9 -IP.523 = 10.0.2.10 -IP.524 = 10.0.2.11 -IP.525 = 10.0.2.12 -IP.526 = 10.0.2.13 -IP.527 = 10.0.2.14 -IP.528 = 10.0.2.15 -IP.529 = 10.0.2.16 -IP.530 = 10.0.2.17 -IP.531 = 10.0.2.18 -IP.532 = 10.0.2.19 -IP.533 = 10.0.2.20 -IP.534 = 10.0.2.21 -IP.535 = 10.0.2.22 -IP.536 = 10.0.2.23 -IP.537 = 10.0.2.24 -IP.538 = 10.0.2.25 -IP.539 = 10.0.2.26 -IP.540 = 10.0.2.27 -IP.541 = 10.0.2.28 -IP.542 = 10.0.2.29 -IP.543 = 10.0.2.30 -IP.544 = 10.0.2.31 -IP.545 = 10.0.2.32 -IP.546 = 10.0.2.33 -IP.547 = 10.0.2.34 -IP.548 = 10.0.2.35 -IP.549 = 10.0.2.36 -IP.550 = 10.0.2.37 -IP.551 = 10.0.2.38 -IP.552 = 10.0.2.39 -IP.553 = 10.0.2.40 -IP.554 = 10.0.2.41 -IP.555 = 10.0.2.42 -IP.556 = 10.0.2.43 -IP.557 = 10.0.2.44 -IP.558 = 10.0.2.45 -IP.559 = 10.0.2.46 -IP.560 = 10.0.2.47 -IP.561 = 10.0.2.48 -IP.562 = 10.0.2.49 -IP.563 = 10.0.2.50 -IP.564 = 10.0.2.51 -IP.565 = 10.0.2.52 -IP.566 = 10.0.2.53 -IP.567 = 10.0.2.54 -IP.568 = 10.0.2.55 -IP.569 = 10.0.2.56 -IP.570 = 10.0.2.57 -IP.571 = 10.0.2.58 -IP.572 = 10.0.2.59 -IP.573 = 10.0.2.60 -IP.574 = 10.0.2.61 -IP.575 = 10.0.2.62 -IP.576 = 10.0.2.63 -IP.577 = 10.0.2.64 -IP.578 = 10.0.2.65 -IP.579 = 10.0.2.66 -IP.580 = 10.0.2.67 -IP.581 = 10.0.2.68 -IP.582 = 10.0.2.69 -IP.583 = 10.0.2.70 -IP.584 = 10.0.2.71 -IP.585 = 10.0.2.72 -IP.586 = 10.0.2.73 -IP.587 = 10.0.2.74 -IP.588 = 10.0.2.75 -IP.589 = 10.0.2.76 -IP.590 = 10.0.2.77 -IP.591 = 10.0.2.78 -IP.592 = 10.0.2.79 -IP.593 = 10.0.2.80 -IP.594 = 10.0.2.81 -IP.595 = 10.0.2.82 -IP.596 = 10.0.2.83 -IP.597 = 10.0.2.84 -IP.598 = 10.0.2.85 -IP.599 = 10.0.2.86 -IP.600 = 10.0.2.87 -IP.601 = 10.0.2.88 -IP.602 = 10.0.2.89 -IP.603 = 10.0.2.90 -IP.604 = 10.0.2.91 -IP.605 = 10.0.2.92 -IP.606 = 10.0.2.93 -IP.607 = 10.0.2.94 -IP.608 = 10.0.2.95 -IP.609 = 10.0.2.96 -IP.610 = 10.0.2.97 -IP.611 = 10.0.2.98 -IP.612 = 10.0.2.99 -IP.613 = 10.0.2.100 -IP.614 = 10.0.2.101 -IP.615 = 10.0.2.102 -IP.616 = 10.0.2.103 -IP.617 = 10.0.2.104 -IP.618 = 10.0.2.105 -IP.619 = 10.0.2.106 -IP.620 = 10.0.2.107 -IP.621 = 10.0.2.108 -IP.622 = 10.0.2.109 -IP.623 = 10.0.2.110 -IP.624 = 10.0.2.111 -IP.625 = 10.0.2.112 -IP.626 = 10.0.2.113 -IP.627 = 10.0.2.114 -IP.628 = 10.0.2.115 -IP.629 = 10.0.2.116 -IP.630 = 10.0.2.117 -IP.631 = 10.0.2.118 -IP.632 = 10.0.2.119 -IP.633 = 10.0.2.120 -IP.634 = 10.0.2.121 -IP.635 = 10.0.2.122 -IP.636 = 10.0.2.123 -IP.637 = 10.0.2.124 -IP.638 = 10.0.2.125 -IP.639 = 10.0.2.126 -IP.640 = 10.0.2.127 -IP.641 = 10.0.2.128 -IP.642 = 10.0.2.129 -IP.643 = 10.0.2.130 -IP.644 = 10.0.2.131 -IP.645 = 10.0.2.132 -IP.646 = 10.0.2.133 -IP.647 = 10.0.2.134 -IP.648 = 10.0.2.135 -IP.649 = 10.0.2.136 -IP.650 = 10.0.2.137 -IP.651 = 10.0.2.138 -IP.652 = 10.0.2.139 -IP.653 = 10.0.2.140 -IP.654 = 10.0.2.141 -IP.655 = 10.0.2.142 -IP.656 = 10.0.2.143 -IP.657 = 10.0.2.144 -IP.658 = 10.0.2.145 -IP.659 = 10.0.2.146 -IP.660 = 10.0.2.147 -IP.661 = 10.0.2.148 -IP.662 = 10.0.2.149 -IP.663 = 10.0.2.150 -IP.664 = 10.0.2.151 -IP.665 = 10.0.2.152 -IP.666 = 10.0.2.153 -IP.667 = 10.0.2.154 -IP.668 = 10.0.2.155 -IP.669 = 10.0.2.156 -IP.670 = 10.0.2.157 -IP.671 = 10.0.2.158 -IP.672 = 10.0.2.159 -IP.673 = 10.0.2.160 -IP.674 = 10.0.2.161 -IP.675 = 10.0.2.162 -IP.676 = 10.0.2.163 -IP.677 = 10.0.2.164 -IP.678 = 10.0.2.165 -IP.679 = 10.0.2.166 -IP.680 = 10.0.2.167 -IP.681 = 10.0.2.168 -IP.682 = 10.0.2.169 -IP.683 = 10.0.2.170 -IP.684 = 10.0.2.171 -IP.685 = 10.0.2.172 -IP.686 = 10.0.2.173 -IP.687 = 10.0.2.174 -IP.688 = 10.0.2.175 -IP.689 = 10.0.2.176 -IP.690 = 10.0.2.177 -IP.691 = 10.0.2.178 -IP.692 = 10.0.2.179 -IP.693 = 10.0.2.180 -IP.694 = 10.0.2.181 -IP.695 = 10.0.2.182 -IP.696 = 10.0.2.183 -IP.697 = 10.0.2.184 -IP.698 = 10.0.2.185 -IP.699 = 10.0.2.186 -IP.700 = 10.0.2.187 -IP.701 = 10.0.2.188 -IP.702 = 10.0.2.189 -IP.703 = 10.0.2.190 -IP.704 = 10.0.2.191 -IP.705 = 10.0.2.192 -IP.706 = 10.0.2.193 -IP.707 = 10.0.2.194 -IP.708 = 10.0.2.195 -IP.709 = 10.0.2.196 -IP.710 = 10.0.2.197 -IP.711 = 10.0.2.198 -IP.712 = 10.0.2.199 -IP.713 = 10.0.2.200 -IP.714 = 10.0.2.201 -IP.715 = 10.0.2.202 -IP.716 = 10.0.2.203 -IP.717 = 10.0.2.204 -IP.718 = 10.0.2.205 -IP.719 = 10.0.2.206 -IP.720 = 10.0.2.207 -IP.721 = 10.0.2.208 -IP.722 = 10.0.2.209 -IP.723 = 10.0.2.210 -IP.724 = 10.0.2.211 -IP.725 = 10.0.2.212 -IP.726 = 10.0.2.213 -IP.727 = 10.0.2.214 -IP.728 = 10.0.2.215 -IP.729 = 10.0.2.216 -IP.730 = 10.0.2.217 -IP.731 = 10.0.2.218 -IP.732 = 10.0.2.219 -IP.733 = 10.0.2.220 -IP.734 = 10.0.2.221 -IP.735 = 10.0.2.222 -IP.736 = 10.0.2.223 -IP.737 = 10.0.2.224 -IP.738 = 10.0.2.225 -IP.739 = 10.0.2.226 -IP.740 = 10.0.2.227 -IP.741 = 10.0.2.228 -IP.742 = 10.0.2.229 -IP.743 = 10.0.2.230 -IP.744 = 10.0.2.231 -IP.745 = 10.0.2.232 -IP.746 = 10.0.2.233 -IP.747 = 10.0.2.234 -IP.748 = 10.0.2.235 -IP.749 = 10.0.2.236 -IP.750 = 10.0.2.237 -IP.751 = 10.0.2.238 -IP.752 = 10.0.2.239 -IP.753 = 10.0.2.240 -IP.754 = 10.0.2.241 -IP.755 = 10.0.2.242 -IP.756 = 10.0.2.243 -IP.757 = 10.0.2.244 -IP.758 = 10.0.2.245 -IP.759 = 10.0.2.246 -IP.760 = 10.0.2.247 -IP.761 = 10.0.2.248 -IP.762 = 10.0.2.249 -IP.763 = 10.0.2.250 -IP.764 = 10.0.2.251 -IP.765 = 10.0.2.252 -IP.766 = 10.0.2.253 -IP.767 = 10.0.2.254 -IP.768 = 10.0.2.255 -IP.769 = 10.0.3.0 -IP.770 = 10.0.3.1 -IP.771 = 10.0.3.2 -IP.772 = 10.0.3.3 -IP.773 = 10.0.3.4 -IP.774 = 10.0.3.5 -IP.775 = 10.0.3.6 -IP.776 = 10.0.3.7 -IP.777 = 10.0.3.8 -IP.778 = 10.0.3.9 -IP.779 = 10.0.3.10 -IP.780 = 10.0.3.11 -IP.781 = 10.0.3.12 -IP.782 = 10.0.3.13 -IP.783 = 10.0.3.14 -IP.784 = 10.0.3.15 -IP.785 = 10.0.3.16 -IP.786 = 10.0.3.17 -IP.787 = 10.0.3.18 -IP.788 = 10.0.3.19 -IP.789 = 10.0.3.20 -IP.790 = 10.0.3.21 -IP.791 = 10.0.3.22 -IP.792 = 10.0.3.23 -IP.793 = 10.0.3.24 -IP.794 = 10.0.3.25 -IP.795 = 10.0.3.26 -IP.796 = 10.0.3.27 -IP.797 = 10.0.3.28 -IP.798 = 10.0.3.29 -IP.799 = 10.0.3.30 -IP.800 = 10.0.3.31 -IP.801 = 10.0.3.32 -IP.802 = 10.0.3.33 -IP.803 = 10.0.3.34 -IP.804 = 10.0.3.35 -IP.805 = 10.0.3.36 -IP.806 = 10.0.3.37 -IP.807 = 10.0.3.38 -IP.808 = 10.0.3.39 -IP.809 = 10.0.3.40 -IP.810 = 10.0.3.41 -IP.811 = 10.0.3.42 -IP.812 = 10.0.3.43 -IP.813 = 10.0.3.44 -IP.814 = 10.0.3.45 -IP.815 = 10.0.3.46 -IP.816 = 10.0.3.47 -IP.817 = 10.0.3.48 -IP.818 = 10.0.3.49 -IP.819 = 10.0.3.50 -IP.820 = 10.0.3.51 -IP.821 = 10.0.3.52 -IP.822 = 10.0.3.53 -IP.823 = 10.0.3.54 -IP.824 = 10.0.3.55 -IP.825 = 10.0.3.56 -IP.826 = 10.0.3.57 -IP.827 = 10.0.3.58 -IP.828 = 10.0.3.59 -IP.829 = 10.0.3.60 -IP.830 = 10.0.3.61 -IP.831 = 10.0.3.62 -IP.832 = 10.0.3.63 -IP.833 = 10.0.3.64 -IP.834 = 10.0.3.65 -IP.835 = 10.0.3.66 -IP.836 = 10.0.3.67 -IP.837 = 10.0.3.68 -IP.838 = 10.0.3.69 -IP.839 = 10.0.3.70 -IP.840 = 10.0.3.71 -IP.841 = 10.0.3.72 -IP.842 = 10.0.3.73 -IP.843 = 10.0.3.74 -IP.844 = 10.0.3.75 -IP.845 = 10.0.3.76 -IP.846 = 10.0.3.77 -IP.847 = 10.0.3.78 -IP.848 = 10.0.3.79 -IP.849 = 10.0.3.80 -IP.850 = 10.0.3.81 -IP.851 = 10.0.3.82 -IP.852 = 10.0.3.83 -IP.853 = 10.0.3.84 -IP.854 = 10.0.3.85 -IP.855 = 10.0.3.86 -IP.856 = 10.0.3.87 -IP.857 = 10.0.3.88 -IP.858 = 10.0.3.89 -IP.859 = 10.0.3.90 -IP.860 = 10.0.3.91 -IP.861 = 10.0.3.92 -IP.862 = 10.0.3.93 -IP.863 = 10.0.3.94 -IP.864 = 10.0.3.95 -IP.865 = 10.0.3.96 -IP.866 = 10.0.3.97 -IP.867 = 10.0.3.98 -IP.868 = 10.0.3.99 -IP.869 = 10.0.3.100 -IP.870 = 10.0.3.101 -IP.871 = 10.0.3.102 -IP.872 = 10.0.3.103 -IP.873 = 10.0.3.104 -IP.874 = 10.0.3.105 -IP.875 = 10.0.3.106 -IP.876 = 10.0.3.107 -IP.877 = 10.0.3.108 -IP.878 = 10.0.3.109 -IP.879 = 10.0.3.110 -IP.880 = 10.0.3.111 -IP.881 = 10.0.3.112 -IP.882 = 10.0.3.113 -IP.883 = 10.0.3.114 -IP.884 = 10.0.3.115 -IP.885 = 10.0.3.116 -IP.886 = 10.0.3.117 -IP.887 = 10.0.3.118 -IP.888 = 10.0.3.119 -IP.889 = 10.0.3.120 -IP.890 = 10.0.3.121 -IP.891 = 10.0.3.122 -IP.892 = 10.0.3.123 -IP.893 = 10.0.3.124 -IP.894 = 10.0.3.125 -IP.895 = 10.0.3.126 -IP.896 = 10.0.3.127 -IP.897 = 10.0.3.128 -IP.898 = 10.0.3.129 -IP.899 = 10.0.3.130 -IP.900 = 10.0.3.131 -IP.901 = 10.0.3.132 -IP.902 = 10.0.3.133 -IP.903 = 10.0.3.134 -IP.904 = 10.0.3.135 -IP.905 = 10.0.3.136 -IP.906 = 10.0.3.137 -IP.907 = 10.0.3.138 -IP.908 = 10.0.3.139 -IP.909 = 10.0.3.140 -IP.910 = 10.0.3.141 -IP.911 = 10.0.3.142 -IP.912 = 10.0.3.143 -IP.913 = 10.0.3.144 -IP.914 = 10.0.3.145 -IP.915 = 10.0.3.146 -IP.916 = 10.0.3.147 -IP.917 = 10.0.3.148 -IP.918 = 10.0.3.149 -IP.919 = 10.0.3.150 -IP.920 = 10.0.3.151 -IP.921 = 10.0.3.152 -IP.922 = 10.0.3.153 -IP.923 = 10.0.3.154 -IP.924 = 10.0.3.155 -IP.925 = 10.0.3.156 -IP.926 = 10.0.3.157 -IP.927 = 10.0.3.158 -IP.928 = 10.0.3.159 -IP.929 = 10.0.3.160 -IP.930 = 10.0.3.161 -IP.931 = 10.0.3.162 -IP.932 = 10.0.3.163 -IP.933 = 10.0.3.164 -IP.934 = 10.0.3.165 -IP.935 = 10.0.3.166 -IP.936 = 10.0.3.167 -IP.937 = 10.0.3.168 -IP.938 = 10.0.3.169 -IP.939 = 10.0.3.170 -IP.940 = 10.0.3.171 -IP.941 = 10.0.3.172 -IP.942 = 10.0.3.173 -IP.943 = 10.0.3.174 -IP.944 = 10.0.3.175 -IP.945 = 10.0.3.176 -IP.946 = 10.0.3.177 -IP.947 = 10.0.3.178 -IP.948 = 10.0.3.179 -IP.949 = 10.0.3.180 -IP.950 = 10.0.3.181 -IP.951 = 10.0.3.182 -IP.952 = 10.0.3.183 -IP.953 = 10.0.3.184 -IP.954 = 10.0.3.185 -IP.955 = 10.0.3.186 -IP.956 = 10.0.3.187 -IP.957 = 10.0.3.188 -IP.958 = 10.0.3.189 -IP.959 = 10.0.3.190 -IP.960 = 10.0.3.191 -IP.961 = 10.0.3.192 -IP.962 = 10.0.3.193 -IP.963 = 10.0.3.194 -IP.964 = 10.0.3.195 -IP.965 = 10.0.3.196 -IP.966 = 10.0.3.197 -IP.967 = 10.0.3.198 -IP.968 = 10.0.3.199 -IP.969 = 10.0.3.200 -IP.970 = 10.0.3.201 -IP.971 = 10.0.3.202 -IP.972 = 10.0.3.203 -IP.973 = 10.0.3.204 -IP.974 = 10.0.3.205 -IP.975 = 10.0.3.206 -IP.976 = 10.0.3.207 -IP.977 = 10.0.3.208 -IP.978 = 10.0.3.209 -IP.979 = 10.0.3.210 -IP.980 = 10.0.3.211 -IP.981 = 10.0.3.212 -IP.982 = 10.0.3.213 -IP.983 = 10.0.3.214 -IP.984 = 10.0.3.215 -IP.985 = 10.0.3.216 -IP.986 = 10.0.3.217 -IP.987 = 10.0.3.218 -IP.988 = 10.0.3.219 -IP.989 = 10.0.3.220 -IP.990 = 10.0.3.221 -IP.991 = 10.0.3.222 -IP.992 = 10.0.3.223 -IP.993 = 10.0.3.224 -IP.994 = 10.0.3.225 -IP.995 = 10.0.3.226 -IP.996 = 10.0.3.227 -IP.997 = 10.0.3.228 -IP.998 = 10.0.3.229 -IP.999 = 10.0.3.230 -IP.1000 = 10.0.3.231 -IP.1001 = 10.0.3.232 -IP.1002 = 10.0.3.233 -IP.1003 = 10.0.3.234 -IP.1004 = 10.0.3.235 -IP.1005 = 10.0.3.236 -IP.1006 = 10.0.3.237 -IP.1007 = 10.0.3.238 -IP.1008 = 10.0.3.239 -IP.1009 = 10.0.3.240 -IP.1010 = 10.0.3.241 -IP.1011 = 10.0.3.242 -IP.1012 = 10.0.3.243 -IP.1013 = 10.0.3.244 -IP.1014 = 10.0.3.245 -IP.1015 = 10.0.3.246 -IP.1016 = 10.0.3.247 -IP.1017 = 10.0.3.248 -IP.1018 = 10.0.3.249 -IP.1019 = 10.0.3.250 -IP.1020 = 10.0.3.251 -IP.1021 = 10.0.3.252 -IP.1022 = 10.0.3.253 -IP.1023 = 10.0.3.254 -IP.1024 = 10.0.3.255 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.csr deleted file mode 100644 index 20a991966d..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.csr +++ /dev/null @@ -1,145 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIayjCCGbICAQAwDTELMAkGA1UEAwwCdDAwggEiMA0GCSqGSIb3DQEBAQUAA4IB -DwAwggEKAoIBAQDbLFMBzvkagzZSUSpbQmPeMnURan2woeR3R5tx5aYtZNeuWwTt -ej/H9sorK63NbIiljjb756IitX1UeenVelvKKylsDYQKEMQhtliYuw22DI1WWyyF -WQfKBkY2JRopjsQ5t8Mxzm5JwgHPsDsnQ4rj1QYfLZOd3XpFZW39tLHAEFlC8h6P -zkOslyXBfOJR4UQ1W5SqA27acS8lf1gwAeESFx7yqmwigLHJZep3lbMHxPdyODT+ -oEMzTGZtoeihBLxvFDk5RC44N3TJCiGFkSG3TrqwmUp2mHtYyhzTsEDD2Sp1++sZ -6uMamDFSl+l/pHshfy/cYoaP/f2oiOhLRFK9AgMBAAGgghh2MIIYcgYJKoZIhvcN -AQkOMYIYYzCCGF8wHQYDVR0OBBYEFDu0BcyqulE9/PL5HiVTcuE68prfMA4GA1Ud -DwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwghgNBgNV -HREEghgEMIIYAIcECgAAAIcECgAAAYcECgAAAocECgAAA4cECgAABIcECgAABYcE -CgAABocECgAAB4cECgAACIcECgAACYcECgAACocECgAAC4cECgAADIcECgAADYcE -CgAADocECgAAD4cECgAAEIcECgAAEYcECgAAEocECgAAE4cECgAAFIcECgAAFYcE -CgAAFocECgAAF4cECgAAGIcECgAAGYcECgAAGocECgAAG4cECgAAHIcECgAAHYcE -CgAAHocECgAAH4cECgAAIIcECgAAIYcECgAAIocECgAAI4cECgAAJIcECgAAJYcE -CgAAJocECgAAJ4cECgAAKIcECgAAKYcECgAAKocECgAAK4cECgAALIcECgAALYcE -CgAALocECgAAL4cECgAAMIcECgAAMYcECgAAMocECgAAM4cECgAANIcECgAANYcE -CgAANocECgAAN4cECgAAOIcECgAAOYcECgAAOocECgAAO4cECgAAPIcECgAAPYcE -CgAAPocECgAAP4cECgAAQIcECgAAQYcECgAAQocECgAAQ4cECgAARIcECgAARYcE -CgAARocECgAAR4cECgAASIcECgAASYcECgAASocECgAAS4cECgAATIcECgAATYcE -CgAATocECgAAT4cECgAAUIcECgAAUYcECgAAUocECgAAU4cECgAAVIcECgAAVYcE -CgAAVocECgAAV4cECgAAWIcECgAAWYcECgAAWocECgAAW4cECgAAXIcECgAAXYcE -CgAAXocECgAAX4cECgAAYIcECgAAYYcECgAAYocECgAAY4cECgAAZIcECgAAZYcE -CgAAZocECgAAZ4cECgAAaIcECgAAaYcECgAAaocECgAAa4cECgAAbIcECgAAbYcE -CgAAbocECgAAb4cECgAAcIcECgAAcYcECgAAcocECgAAc4cECgAAdIcECgAAdYcE -CgAAdocECgAAd4cECgAAeIcECgAAeYcECgAAeocECgAAe4cECgAAfIcECgAAfYcE -CgAAfocECgAAf4cECgAAgIcECgAAgYcECgAAgocECgAAg4cECgAAhIcECgAAhYcE -CgAAhocECgAAh4cECgAAiIcECgAAiYcECgAAiocECgAAi4cECgAAjIcECgAAjYcE -CgAAjocECgAAj4cECgAAkIcECgAAkYcECgAAkocECgAAk4cECgAAlIcECgAAlYcE -CgAAlocECgAAl4cECgAAmIcECgAAmYcECgAAmocECgAAm4cECgAAnIcECgAAnYcE -CgAAnocECgAAn4cECgAAoIcECgAAoYcECgAAoocECgAAo4cECgAApIcECgAApYcE -CgAApocECgAAp4cECgAAqIcECgAAqYcECgAAqocECgAAq4cECgAArIcECgAArYcE -CgAArocECgAAr4cECgAAsIcECgAAsYcECgAAsocECgAAs4cECgAAtIcECgAAtYcE -CgAAtocECgAAt4cECgAAuIcECgAAuYcECgAAuocECgAAu4cECgAAvIcECgAAvYcE -CgAAvocECgAAv4cECgAAwIcECgAAwYcECgAAwocECgAAw4cECgAAxIcECgAAxYcE -CgAAxocECgAAx4cECgAAyIcECgAAyYcECgAAyocECgAAy4cECgAAzIcECgAAzYcE -CgAAzocECgAAz4cECgAA0IcECgAA0YcECgAA0ocECgAA04cECgAA1IcECgAA1YcE -CgAA1ocECgAA14cECgAA2IcECgAA2YcECgAA2ocECgAA24cECgAA3IcECgAA3YcE -CgAA3ocECgAA34cECgAA4IcECgAA4YcECgAA4ocECgAA44cECgAA5IcECgAA5YcE -CgAA5ocECgAA54cECgAA6IcECgAA6YcECgAA6ocECgAA64cECgAA7IcECgAA7YcE -CgAA7ocECgAA74cECgAA8IcECgAA8YcECgAA8ocECgAA84cECgAA9IcECgAA9YcE -CgAA9ocECgAA94cECgAA+IcECgAA+YcECgAA+ocECgAA+4cECgAA/IcECgAA/YcE -CgAA/ocECgAA/4cECgABAIcECgABAYcECgABAocECgABA4cECgABBIcECgABBYcE -CgABBocECgABB4cECgABCIcECgABCYcECgABCocECgABC4cECgABDIcECgABDYcE -CgABDocECgABD4cECgABEIcECgABEYcECgABEocECgABE4cECgABFIcECgABFYcE -CgABFocECgABF4cECgABGIcECgABGYcECgABGocECgABG4cECgABHIcECgABHYcE -CgABHocECgABH4cECgABIIcECgABIYcECgABIocECgABI4cECgABJIcECgABJYcE -CgABJocECgABJ4cECgABKIcECgABKYcECgABKocECgABK4cECgABLIcECgABLYcE -CgABLocECgABL4cECgABMIcECgABMYcECgABMocECgABM4cECgABNIcECgABNYcE -CgABNocECgABN4cECgABOIcECgABOYcECgABOocECgABO4cECgABPIcECgABPYcE -CgABPocECgABP4cECgABQIcECgABQYcECgABQocECgABQ4cECgABRIcECgABRYcE -CgABRocECgABR4cECgABSIcECgABSYcECgABSocECgABS4cECgABTIcECgABTYcE -CgABTocECgABT4cECgABUIcECgABUYcECgABUocECgABU4cECgABVIcECgABVYcE -CgABVocECgABV4cECgABWIcECgABWYcECgABWocECgABW4cECgABXIcECgABXYcE -CgABXocECgABX4cECgABYIcECgABYYcECgABYocECgABY4cECgABZIcECgABZYcE -CgABZocECgABZ4cECgABaIcECgABaYcECgABaocECgABa4cECgABbIcECgABbYcE -CgABbocECgABb4cECgABcIcECgABcYcECgABcocECgABc4cECgABdIcECgABdYcE -CgABdocECgABd4cECgABeIcECgABeYcECgABeocECgABe4cECgABfIcECgABfYcE -CgABfocECgABf4cECgABgIcECgABgYcECgABgocECgABg4cECgABhIcECgABhYcE -CgABhocECgABh4cECgABiIcECgABiYcECgABiocECgABi4cECgABjIcECgABjYcE -CgABjocECgABj4cECgABkIcECgABkYcECgABkocECgABk4cECgABlIcECgABlYcE -CgABlocECgABl4cECgABmIcECgABmYcECgABmocECgABm4cECgABnIcECgABnYcE -CgABnocECgABn4cECgABoIcECgABoYcECgABoocECgABo4cECgABpIcECgABpYcE -CgABpocECgABp4cECgABqIcECgABqYcECgABqocECgABq4cECgABrIcECgABrYcE -CgABrocECgABr4cECgABsIcECgABsYcECgABsocECgABs4cECgABtIcECgABtYcE -CgABtocECgABt4cECgABuIcECgABuYcECgABuocECgABu4cECgABvIcECgABvYcE -CgABvocECgABv4cECgABwIcECgABwYcECgABwocECgABw4cECgABxIcECgABxYcE -CgABxocECgABx4cECgAByIcECgAByYcECgAByocECgABy4cECgABzIcECgABzYcE -CgABzocECgABz4cECgAB0IcECgAB0YcECgAB0ocECgAB04cECgAB1IcECgAB1YcE -CgAB1ocECgAB14cECgAB2IcECgAB2YcECgAB2ocECgAB24cECgAB3IcECgAB3YcE -CgAB3ocECgAB34cECgAB4IcECgAB4YcECgAB4ocECgAB44cECgAB5IcECgAB5YcE -CgAB5ocECgAB54cECgAB6IcECgAB6YcECgAB6ocECgAB64cECgAB7IcECgAB7YcE -CgAB7ocECgAB74cECgAB8IcECgAB8YcECgAB8ocECgAB84cECgAB9IcECgAB9YcE -CgAB9ocECgAB94cECgAB+IcECgAB+YcECgAB+ocECgAB+4cECgAB/IcECgAB/YcE -CgAB/ocECgAB/4cECgACAIcECgACAYcECgACAocECgACA4cECgACBIcECgACBYcE -CgACBocECgACB4cECgACCIcECgACCYcECgACCocECgACC4cECgACDIcECgACDYcE -CgACDocECgACD4cECgACEIcECgACEYcECgACEocECgACE4cECgACFIcECgACFYcE -CgACFocECgACF4cECgACGIcECgACGYcECgACGocECgACG4cECgACHIcECgACHYcE -CgACHocECgACH4cECgACIIcECgACIYcECgACIocECgACI4cECgACJIcECgACJYcE -CgACJocECgACJ4cECgACKIcECgACKYcECgACKocECgACK4cECgACLIcECgACLYcE -CgACLocECgACL4cECgACMIcECgACMYcECgACMocECgACM4cECgACNIcECgACNYcE -CgACNocECgACN4cECgACOIcECgACOYcECgACOocECgACO4cECgACPIcECgACPYcE -CgACPocECgACP4cECgACQIcECgACQYcECgACQocECgACQ4cECgACRIcECgACRYcE -CgACRocECgACR4cECgACSIcECgACSYcECgACSocECgACS4cECgACTIcECgACTYcE -CgACTocECgACT4cECgACUIcECgACUYcECgACUocECgACU4cECgACVIcECgACVYcE -CgACVocECgACV4cECgACWIcECgACWYcECgACWocECgACW4cECgACXIcECgACXYcE -CgACXocECgACX4cECgACYIcECgACYYcECgACYocECgACY4cECgACZIcECgACZYcE -CgACZocECgACZ4cECgACaIcECgACaYcECgACaocECgACa4cECgACbIcECgACbYcE -CgACbocECgACb4cECgACcIcECgACcYcECgACcocECgACc4cECgACdIcECgACdYcE -CgACdocECgACd4cECgACeIcECgACeYcECgACeocECgACe4cECgACfIcECgACfYcE -CgACfocECgACf4cECgACgIcECgACgYcECgACgocECgACg4cECgAChIcECgAChYcE -CgAChocECgACh4cECgACiIcECgACiYcECgACiocECgACi4cECgACjIcECgACjYcE -CgACjocECgACj4cECgACkIcECgACkYcECgACkocECgACk4cECgAClIcECgAClYcE -CgAClocECgACl4cECgACmIcECgACmYcECgACmocECgACm4cECgACnIcECgACnYcE -CgACnocECgACn4cECgACoIcECgACoYcECgACoocECgACo4cECgACpIcECgACpYcE -CgACpocECgACp4cECgACqIcECgACqYcECgACqocECgACq4cECgACrIcECgACrYcE -CgACrocECgACr4cECgACsIcECgACsYcECgACsocECgACs4cECgACtIcECgACtYcE -CgACtocECgACt4cECgACuIcECgACuYcECgACuocECgACu4cECgACvIcECgACvYcE -CgACvocECgACv4cECgACwIcECgACwYcECgACwocECgACw4cECgACxIcECgACxYcE -CgACxocECgACx4cECgACyIcECgACyYcECgACyocECgACy4cECgACzIcECgACzYcE -CgACzocECgACz4cECgAC0IcECgAC0YcECgAC0ocECgAC04cECgAC1IcECgAC1YcE -CgAC1ocECgAC14cECgAC2IcECgAC2YcECgAC2ocECgAC24cECgAC3IcECgAC3YcE -CgAC3ocECgAC34cECgAC4IcECgAC4YcECgAC4ocECgAC44cECgAC5IcECgAC5YcE -CgAC5ocECgAC54cECgAC6IcECgAC6YcECgAC6ocECgAC64cECgAC7IcECgAC7YcE -CgAC7ocECgAC74cECgAC8IcECgAC8YcECgAC8ocECgAC84cECgAC9IcECgAC9YcE -CgAC9ocECgAC94cECgAC+IcECgAC+YcECgAC+ocECgAC+4cECgAC/IcECgAC/YcE -CgAC/ocECgAC/4cECgADAIcECgADAYcECgADAocECgADA4cECgADBIcECgADBYcE -CgADBocECgADB4cECgADCIcECgADCYcECgADCocECgADC4cECgADDIcECgADDYcE -CgADDocECgADD4cECgADEIcECgADEYcECgADEocECgADE4cECgADFIcECgADFYcE -CgADFocECgADF4cECgADGIcECgADGYcECgADGocECgADG4cECgADHIcECgADHYcE -CgADHocECgADH4cECgADIIcECgADIYcECgADIocECgADI4cECgADJIcECgADJYcE -CgADJocECgADJ4cECgADKIcECgADKYcECgADKocECgADK4cECgADLIcECgADLYcE -CgADLocECgADL4cECgADMIcECgADMYcECgADMocECgADM4cECgADNIcECgADNYcE -CgADNocECgADN4cECgADOIcECgADOYcECgADOocECgADO4cECgADPIcECgADPYcE -CgADPocECgADP4cECgADQIcECgADQYcECgADQocECgADQ4cECgADRIcECgADRYcE -CgADRocECgADR4cECgADSIcECgADSYcECgADSocECgADS4cECgADTIcECgADTYcE -CgADTocECgADT4cECgADUIcECgADUYcECgADUocECgADU4cECgADVIcECgADVYcE -CgADVocECgADV4cECgADWIcECgADWYcECgADWocECgADW4cECgADXIcECgADXYcE -CgADXocECgADX4cECgADYIcECgADYYcECgADYocECgADY4cECgADZIcECgADZYcE -CgADZocECgADZ4cECgADaIcECgADaYcECgADaocECgADa4cECgADbIcECgADbYcE -CgADbocECgADb4cECgADcIcECgADcYcECgADcocECgADc4cECgADdIcECgADdYcE -CgADdocECgADd4cECgADeIcECgADeYcECgADeocECgADe4cECgADfIcECgADfYcE -CgADfocECgADf4cECgADgIcECgADgYcECgADgocECgADg4cECgADhIcECgADhYcE -CgADhocECgADh4cECgADiIcECgADiYcECgADiocECgADi4cECgADjIcECgADjYcE -CgADjocECgADj4cECgADkIcECgADkYcECgADkocECgADk4cECgADlIcECgADlYcE -CgADlocECgADl4cECgADmIcECgADmYcECgADmocECgADm4cECgADnIcECgADnYcE -CgADnocECgADn4cECgADoIcECgADoYcECgADoocECgADo4cECgADpIcECgADpYcE -CgADpocECgADp4cECgADqIcECgADqYcECgADqocECgADq4cECgADrIcECgADrYcE -CgADrocECgADr4cECgADsIcECgADsYcECgADsocECgADs4cECgADtIcECgADtYcE -CgADtocECgADt4cECgADuIcECgADuYcECgADuocECgADu4cECgADvIcECgADvYcE -CgADvocECgADv4cECgADwIcECgADwYcECgADwocECgADw4cECgADxIcECgADxYcE -CgADxocECgADx4cECgADyIcECgADyYcECgADyocECgADy4cECgADzIcECgADzYcE -CgADzocECgADz4cECgAD0IcECgAD0YcECgAD0ocECgAD04cECgAD1IcECgAD1YcE -CgAD1ocECgAD14cECgAD2IcECgAD2YcECgAD2ocECgAD24cECgAD3IcECgAD3YcE -CgAD3ocECgAD34cECgAD4IcECgAD4YcECgAD4ocECgAD44cECgAD5IcECgAD5YcE -CgAD5ocECgAD54cECgAD6IcECgAD6YcECgAD6ocECgAD64cECgAD7IcECgAD7YcE -CgAD7ocECgAD74cECgAD8IcECgAD8YcECgAD8ocECgAD84cECgAD9IcECgAD9YcE -CgAD9ocECgAD94cECgAD+IcECgAD+YcECgAD+ocECgAD+4cECgAD/IcECgAD/YcE -CgAD/ocECgAD/zANBgkqhkiG9w0BAQsFAAOCAQEAPvGfgaK1FKxTNxCDWV+yYfuz -EVUhxh4SNGwKdYj9/n829IE/40YKNo3o8hCQq1e0VtLvW1YyxZQ7Lsaaiaj3rgUE -jzI78mZBEIBvf4S2S1PFXNwx0EwsNyarImIFirDR/wyI/O3qHiDgDL+QZ0G9K4pe -yDoPHQWzRff5bczSyVTZESp/i6c0r4gB3S9dwmpJ40BJvGqDs7h3115K7KjT3Y7t -G/h70xGD1n+8X/HRQCc0inutWk0ToZdkRNEvzFlAqU34g2/eS+uyzntJWXAtO4nc -uAflue4l2NC2tR76MzNtHgvwFyiugvXjpQwT6oFgUmnyISfvhWprW1XaWqSVWw== ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.pem deleted file mode 100644 index 9782123c7d..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_3.pem +++ /dev/null @@ -1,220 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d7 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - IP Address:10.0.0.0, IP Address:10.0.0.1, IP Address:10.0.0.2, IP Address:10.0.0.3, IP Address:10.0.0.4, IP Address:10.0.0.5, IP Address:10.0.0.6, IP Address:10.0.0.7, IP Address:10.0.0.8, IP Address:10.0.0.9, IP Address:10.0.0.10, IP Address:10.0.0.11, IP Address:10.0.0.12, IP Address:10.0.0.13, IP Address:10.0.0.14, IP Address:10.0.0.15, IP Address:10.0.0.16, IP Address:10.0.0.17, IP Address:10.0.0.18, IP Address:10.0.0.19, IP Address:10.0.0.20, IP Address:10.0.0.21, IP Address:10.0.0.22, IP Address:10.0.0.23, IP Address:10.0.0.24, IP Address:10.0.0.25, IP Address:10.0.0.26, IP Address:10.0.0.27, IP Address:10.0.0.28, IP Address:10.0.0.29, IP Address:10.0.0.30, IP Address:10.0.0.31, IP Address:10.0.0.32, IP Address:10.0.0.33, IP Address:10.0.0.34, IP Address:10.0.0.35, IP Address:10.0.0.36, IP Address:10.0.0.37, IP Address:10.0.0.38, IP Address:10.0.0.39, IP Address:10.0.0.40, IP Address:10.0.0.41, IP Address:10.0.0.42, IP Address:10.0.0.43, IP Address:10.0.0.44, IP Address:10.0.0.45, IP Address:10.0.0.46, IP Address:10.0.0.47, IP Address:10.0.0.48, IP Address:10.0.0.49, IP Address:10.0.0.50, IP Address:10.0.0.51, IP Address:10.0.0.52, IP Address:10.0.0.53, IP Address:10.0.0.54, IP Address:10.0.0.55, IP Address:10.0.0.56, IP Address:10.0.0.57, IP Address:10.0.0.58, IP Address:10.0.0.59, IP Address:10.0.0.60, IP Address:10.0.0.61, IP Address:10.0.0.62, IP Address:10.0.0.63, IP Address:10.0.0.64, IP Address:10.0.0.65, IP Address:10.0.0.66, IP Address:10.0.0.67, IP Address:10.0.0.68, IP Address:10.0.0.69, IP Address:10.0.0.70, IP Address:10.0.0.71, IP Address:10.0.0.72, IP Address:10.0.0.73, IP Address:10.0.0.74, IP Address:10.0.0.75, IP Address:10.0.0.76, IP Address:10.0.0.77, IP Address:10.0.0.78, IP Address:10.0.0.79, IP Address:10.0.0.80, IP Address:10.0.0.81, IP Address:10.0.0.82, IP Address:10.0.0.83, IP Address:10.0.0.84, IP Address:10.0.0.85, IP Address:10.0.0.86, IP Address:10.0.0.87, IP Address:10.0.0.88, IP Address:10.0.0.89, IP Address:10.0.0.90, IP Address:10.0.0.91, IP Address:10.0.0.92, IP Address:10.0.0.93, IP Address:10.0.0.94, IP Address:10.0.0.95, IP Address:10.0.0.96, IP Address:10.0.0.97, IP Address:10.0.0.98, IP Address:10.0.0.99, IP Address:10.0.0.100, IP Address:10.0.0.101, IP Address:10.0.0.102, IP Address:10.0.0.103, IP Address:10.0.0.104, IP Address:10.0.0.105, IP Address:10.0.0.106, IP Address:10.0.0.107, IP Address:10.0.0.108, IP Address:10.0.0.109, IP Address:10.0.0.110, IP Address:10.0.0.111, IP Address:10.0.0.112, IP Address:10.0.0.113, IP Address:10.0.0.114, IP Address:10.0.0.115, IP Address:10.0.0.116, IP Address:10.0.0.117, IP Address:10.0.0.118, IP Address:10.0.0.119, IP Address:10.0.0.120, IP Address:10.0.0.121, IP Address:10.0.0.122, IP Address:10.0.0.123, IP Address:10.0.0.124, IP Address:10.0.0.125, IP Address:10.0.0.126, IP Address:10.0.0.127, IP Address:10.0.0.128, IP Address:10.0.0.129, IP Address:10.0.0.130, IP Address:10.0.0.131, IP Address:10.0.0.132, IP Address:10.0.0.133, IP Address:10.0.0.134, IP Address:10.0.0.135, IP Address:10.0.0.136, IP Address:10.0.0.137, IP Address:10.0.0.138, IP Address:10.0.0.139, IP Address:10.0.0.140, IP Address:10.0.0.141, IP Address:10.0.0.142, IP Address:10.0.0.143, IP Address:10.0.0.144, IP Address:10.0.0.145, IP Address:10.0.0.146, IP Address:10.0.0.147, IP Address:10.0.0.148, IP Address:10.0.0.149, IP Address:10.0.0.150, IP Address:10.0.0.151, IP Address:10.0.0.152, IP Address:10.0.0.153, IP Address:10.0.0.154, IP Address:10.0.0.155, IP Address:10.0.0.156, IP Address:10.0.0.157, IP Address:10.0.0.158, IP Address:10.0.0.159, IP Address:10.0.0.160, IP Address:10.0.0.161, IP Address:10.0.0.162, IP Address:10.0.0.163, IP Address:10.0.0.164, IP Address:10.0.0.165, IP Address:10.0.0.166, IP Address:10.0.0.167, IP Address:10.0.0.168, IP Address:10.0.0.169, IP Address:10.0.0.170, IP Address:10.0.0.171, IP Address:10.0.0.172, IP Address:10.0.0.173, IP Address:10.0.0.174, IP Address:10.0.0.175, IP Address:10.0.0.176, IP Address:10.0.0.177, IP Address:10.0.0.178, IP Address:10.0.0.179, IP Address:10.0.0.180, IP Address:10.0.0.181, IP Address:10.0.0.182, IP Address:10.0.0.183, IP Address:10.0.0.184, IP Address:10.0.0.185, IP Address:10.0.0.186, IP Address:10.0.0.187, IP Address:10.0.0.188, IP Address:10.0.0.189, IP Address:10.0.0.190, IP Address:10.0.0.191, IP Address:10.0.0.192, IP Address:10.0.0.193, IP Address:10.0.0.194, IP Address:10.0.0.195, IP Address:10.0.0.196, IP Address:10.0.0.197, IP Address:10.0.0.198, IP Address:10.0.0.199, IP Address:10.0.0.200, IP Address:10.0.0.201, IP Address:10.0.0.202, IP Address:10.0.0.203, IP Address:10.0.0.204, IP Address:10.0.0.205, IP Address:10.0.0.206, IP Address:10.0.0.207, IP Address:10.0.0.208, IP Address:10.0.0.209, IP Address:10.0.0.210, IP Address:10.0.0.211, IP Address:10.0.0.212, IP Address:10.0.0.213, IP Address:10.0.0.214, IP Address:10.0.0.215, IP Address:10.0.0.216, IP Address:10.0.0.217, IP Address:10.0.0.218, IP Address:10.0.0.219, IP Address:10.0.0.220, IP Address:10.0.0.221, IP Address:10.0.0.222, IP Address:10.0.0.223, IP Address:10.0.0.224, IP Address:10.0.0.225, IP Address:10.0.0.226, IP Address:10.0.0.227, IP Address:10.0.0.228, IP Address:10.0.0.229, IP Address:10.0.0.230, IP Address:10.0.0.231, IP Address:10.0.0.232, IP Address:10.0.0.233, IP Address:10.0.0.234, IP Address:10.0.0.235, IP Address:10.0.0.236, IP Address:10.0.0.237, IP Address:10.0.0.238, IP Address:10.0.0.239, IP Address:10.0.0.240, IP Address:10.0.0.241, IP Address:10.0.0.242, IP Address:10.0.0.243, IP Address:10.0.0.244, IP Address:10.0.0.245, IP Address:10.0.0.246, IP Address:10.0.0.247, IP Address:10.0.0.248, IP Address:10.0.0.249, IP Address:10.0.0.250, IP Address:10.0.0.251, IP Address:10.0.0.252, IP Address:10.0.0.253, IP Address:10.0.0.254, IP Address:10.0.0.255, IP Address:10.0.1.0, IP Address:10.0.1.1, IP Address:10.0.1.2, IP Address:10.0.1.3, IP Address:10.0.1.4, IP Address:10.0.1.5, IP Address:10.0.1.6, IP Address:10.0.1.7, IP Address:10.0.1.8, IP Address:10.0.1.9, IP Address:10.0.1.10, IP Address:10.0.1.11, IP Address:10.0.1.12, IP Address:10.0.1.13, IP Address:10.0.1.14, IP Address:10.0.1.15, IP Address:10.0.1.16, IP Address:10.0.1.17, IP Address:10.0.1.18, IP Address:10.0.1.19, IP Address:10.0.1.20, IP Address:10.0.1.21, IP Address:10.0.1.22, IP Address:10.0.1.23, IP Address:10.0.1.24, IP Address:10.0.1.25, IP Address:10.0.1.26, IP Address:10.0.1.27, IP Address:10.0.1.28, IP Address:10.0.1.29, IP Address:10.0.1.30, IP Address:10.0.1.31, IP Address:10.0.1.32, IP Address:10.0.1.33, IP Address:10.0.1.34, IP Address:10.0.1.35, IP Address:10.0.1.36, IP Address:10.0.1.37, IP Address:10.0.1.38, IP Address:10.0.1.39, IP Address:10.0.1.40, IP Address:10.0.1.41, IP Address:10.0.1.42, IP Address:10.0.1.43, IP Address:10.0.1.44, IP Address:10.0.1.45, IP Address:10.0.1.46, IP Address:10.0.1.47, IP Address:10.0.1.48, IP Address:10.0.1.49, IP Address:10.0.1.50, IP Address:10.0.1.51, IP Address:10.0.1.52, IP Address:10.0.1.53, IP Address:10.0.1.54, IP Address:10.0.1.55, IP Address:10.0.1.56, IP Address:10.0.1.57, IP Address:10.0.1.58, IP Address:10.0.1.59, IP Address:10.0.1.60, IP Address:10.0.1.61, IP Address:10.0.1.62, IP Address:10.0.1.63, IP Address:10.0.1.64, IP Address:10.0.1.65, IP Address:10.0.1.66, IP Address:10.0.1.67, IP Address:10.0.1.68, IP Address:10.0.1.69, IP Address:10.0.1.70, IP Address:10.0.1.71, IP Address:10.0.1.72, IP Address:10.0.1.73, IP Address:10.0.1.74, IP Address:10.0.1.75, IP Address:10.0.1.76, IP Address:10.0.1.77, IP Address:10.0.1.78, IP Address:10.0.1.79, IP Address:10.0.1.80, IP Address:10.0.1.81, IP Address:10.0.1.82, IP Address:10.0.1.83, IP Address:10.0.1.84, IP Address:10.0.1.85, IP Address:10.0.1.86, IP Address:10.0.1.87, IP Address:10.0.1.88, IP Address:10.0.1.89, IP Address:10.0.1.90, IP Address:10.0.1.91, IP Address:10.0.1.92, IP Address:10.0.1.93, IP Address:10.0.1.94, IP Address:10.0.1.95, IP Address:10.0.1.96, IP Address:10.0.1.97, IP Address:10.0.1.98, IP Address:10.0.1.99, IP Address:10.0.1.100, IP Address:10.0.1.101, IP Address:10.0.1.102, IP Address:10.0.1.103, IP Address:10.0.1.104, IP Address:10.0.1.105, IP Address:10.0.1.106, IP Address:10.0.1.107, IP Address:10.0.1.108, IP Address:10.0.1.109, IP Address:10.0.1.110, IP Address:10.0.1.111, IP Address:10.0.1.112, IP Address:10.0.1.113, IP Address:10.0.1.114, IP Address:10.0.1.115, IP Address:10.0.1.116, IP Address:10.0.1.117, IP Address:10.0.1.118, IP Address:10.0.1.119, IP Address:10.0.1.120, IP Address:10.0.1.121, IP Address:10.0.1.122, IP Address:10.0.1.123, IP Address:10.0.1.124, IP Address:10.0.1.125, IP Address:10.0.1.126, IP Address:10.0.1.127, IP Address:10.0.1.128, IP Address:10.0.1.129, IP Address:10.0.1.130, IP Address:10.0.1.131, IP Address:10.0.1.132, IP Address:10.0.1.133, IP Address:10.0.1.134, IP Address:10.0.1.135, IP Address:10.0.1.136, IP Address:10.0.1.137, IP Address:10.0.1.138, IP Address:10.0.1.139, IP Address:10.0.1.140, IP Address:10.0.1.141, IP Address:10.0.1.142, IP Address:10.0.1.143, IP Address:10.0.1.144, IP Address:10.0.1.145, IP Address:10.0.1.146, IP Address:10.0.1.147, IP Address:10.0.1.148, IP Address:10.0.1.149, IP Address:10.0.1.150, IP Address:10.0.1.151, IP Address:10.0.1.152, IP Address:10.0.1.153, IP Address:10.0.1.154, IP Address:10.0.1.155, IP Address:10.0.1.156, IP Address:10.0.1.157, IP Address:10.0.1.158, IP Address:10.0.1.159, IP Address:10.0.1.160, IP Address:10.0.1.161, IP Address:10.0.1.162, IP Address:10.0.1.163, IP Address:10.0.1.164, IP Address:10.0.1.165, IP Address:10.0.1.166, IP Address:10.0.1.167, IP Address:10.0.1.168, IP Address:10.0.1.169, IP Address:10.0.1.170, IP Address:10.0.1.171, IP Address:10.0.1.172, IP Address:10.0.1.173, IP Address:10.0.1.174, IP Address:10.0.1.175, IP Address:10.0.1.176, IP Address:10.0.1.177, IP Address:10.0.1.178, IP Address:10.0.1.179, IP Address:10.0.1.180, IP Address:10.0.1.181, IP Address:10.0.1.182, IP Address:10.0.1.183, IP Address:10.0.1.184, IP Address:10.0.1.185, IP Address:10.0.1.186, IP Address:10.0.1.187, IP Address:10.0.1.188, IP Address:10.0.1.189, IP Address:10.0.1.190, IP Address:10.0.1.191, IP Address:10.0.1.192, IP Address:10.0.1.193, IP Address:10.0.1.194, IP Address:10.0.1.195, IP Address:10.0.1.196, IP Address:10.0.1.197, IP Address:10.0.1.198, IP Address:10.0.1.199, IP Address:10.0.1.200, IP Address:10.0.1.201, IP Address:10.0.1.202, IP Address:10.0.1.203, IP Address:10.0.1.204, IP Address:10.0.1.205, IP Address:10.0.1.206, IP Address:10.0.1.207, IP Address:10.0.1.208, IP Address:10.0.1.209, IP Address:10.0.1.210, IP Address:10.0.1.211, IP Address:10.0.1.212, IP Address:10.0.1.213, IP Address:10.0.1.214, IP Address:10.0.1.215, IP Address:10.0.1.216, IP Address:10.0.1.217, IP Address:10.0.1.218, IP Address:10.0.1.219, IP Address:10.0.1.220, IP Address:10.0.1.221, IP Address:10.0.1.222, IP Address:10.0.1.223, IP Address:10.0.1.224, IP Address:10.0.1.225, IP Address:10.0.1.226, IP Address:10.0.1.227, IP Address:10.0.1.228, IP Address:10.0.1.229, IP Address:10.0.1.230, IP Address:10.0.1.231, IP Address:10.0.1.232, IP Address:10.0.1.233, IP Address:10.0.1.234, IP Address:10.0.1.235, IP Address:10.0.1.236, IP Address:10.0.1.237, IP Address:10.0.1.238, IP Address:10.0.1.239, IP Address:10.0.1.240, IP Address:10.0.1.241, IP Address:10.0.1.242, IP Address:10.0.1.243, IP Address:10.0.1.244, IP Address:10.0.1.245, IP Address:10.0.1.246, IP Address:10.0.1.247, IP Address:10.0.1.248, IP Address:10.0.1.249, IP Address:10.0.1.250, IP Address:10.0.1.251, IP Address:10.0.1.252, IP Address:10.0.1.253, IP Address:10.0.1.254, IP Address:10.0.1.255, IP Address:10.0.2.0, IP Address:10.0.2.1, IP Address:10.0.2.2, IP Address:10.0.2.3, IP Address:10.0.2.4, IP Address:10.0.2.5, IP Address:10.0.2.6, IP Address:10.0.2.7, IP Address:10.0.2.8, IP Address:10.0.2.9, IP Address:10.0.2.10, IP Address:10.0.2.11, IP Address:10.0.2.12, IP Address:10.0.2.13, IP Address:10.0.2.14, IP Address:10.0.2.15, IP Address:10.0.2.16, IP Address:10.0.2.17, IP Address:10.0.2.18, IP Address:10.0.2.19, IP Address:10.0.2.20, IP Address:10.0.2.21, IP Address:10.0.2.22, IP Address:10.0.2.23, IP Address:10.0.2.24, IP Address:10.0.2.25, IP Address:10.0.2.26, IP Address:10.0.2.27, IP Address:10.0.2.28, IP Address:10.0.2.29, IP Address:10.0.2.30, IP Address:10.0.2.31, IP Address:10.0.2.32, IP Address:10.0.2.33, IP Address:10.0.2.34, IP Address:10.0.2.35, IP Address:10.0.2.36, IP Address:10.0.2.37, IP Address:10.0.2.38, IP Address:10.0.2.39, IP Address:10.0.2.40, IP Address:10.0.2.41, IP Address:10.0.2.42, IP Address:10.0.2.43, IP Address:10.0.2.44, IP Address:10.0.2.45, IP Address:10.0.2.46, IP Address:10.0.2.47, IP Address:10.0.2.48, IP Address:10.0.2.49, IP Address:10.0.2.50, IP Address:10.0.2.51, IP Address:10.0.2.52, IP Address:10.0.2.53, IP Address:10.0.2.54, IP Address:10.0.2.55, IP Address:10.0.2.56, IP Address:10.0.2.57, IP Address:10.0.2.58, IP Address:10.0.2.59, IP Address:10.0.2.60, IP Address:10.0.2.61, IP Address:10.0.2.62, IP Address:10.0.2.63, IP Address:10.0.2.64, IP Address:10.0.2.65, IP Address:10.0.2.66, IP Address:10.0.2.67, IP Address:10.0.2.68, IP Address:10.0.2.69, IP Address:10.0.2.70, IP Address:10.0.2.71, IP Address:10.0.2.72, IP Address:10.0.2.73, IP Address:10.0.2.74, IP Address:10.0.2.75, IP Address:10.0.2.76, IP Address:10.0.2.77, IP Address:10.0.2.78, IP Address:10.0.2.79, IP Address:10.0.2.80, IP Address:10.0.2.81, IP Address:10.0.2.82, IP Address:10.0.2.83, IP Address:10.0.2.84, IP Address:10.0.2.85, IP Address:10.0.2.86, IP Address:10.0.2.87, IP Address:10.0.2.88, IP Address:10.0.2.89, IP Address:10.0.2.90, IP Address:10.0.2.91, IP Address:10.0.2.92, IP Address:10.0.2.93, IP Address:10.0.2.94, IP Address:10.0.2.95, IP Address:10.0.2.96, IP Address:10.0.2.97, IP Address:10.0.2.98, IP Address:10.0.2.99, IP Address:10.0.2.100, IP Address:10.0.2.101, IP Address:10.0.2.102, IP Address:10.0.2.103, IP Address:10.0.2.104, IP Address:10.0.2.105, IP Address:10.0.2.106, IP Address:10.0.2.107, IP Address:10.0.2.108, IP Address:10.0.2.109, IP Address:10.0.2.110, IP Address:10.0.2.111, IP Address:10.0.2.112, IP Address:10.0.2.113, IP Address:10.0.2.114, IP Address:10.0.2.115, IP Address:10.0.2.116, IP Address:10.0.2.117, IP Address:10.0.2.118, IP Address:10.0.2.119, IP Address:10.0.2.120, IP Address:10.0.2.121, IP Address:10.0.2.122, IP Address:10.0.2.123, IP Address:10.0.2.124, IP Address:10.0.2.125, IP Address:10.0.2.126, IP Address:10.0.2.127, IP Address:10.0.2.128, IP Address:10.0.2.129, IP Address:10.0.2.130, IP Address:10.0.2.131, IP Address:10.0.2.132, IP Address:10.0.2.133, IP Address:10.0.2.134, IP Address:10.0.2.135, IP Address:10.0.2.136, IP Address:10.0.2.137, IP Address:10.0.2.138, IP Address:10.0.2.139, IP Address:10.0.2.140, IP Address:10.0.2.141, IP Address:10.0.2.142, IP Address:10.0.2.143, IP Address:10.0.2.144, IP Address:10.0.2.145, IP Address:10.0.2.146, IP Address:10.0.2.147, IP Address:10.0.2.148, IP Address:10.0.2.149, IP Address:10.0.2.150, IP Address:10.0.2.151, IP Address:10.0.2.152, IP Address:10.0.2.153, IP Address:10.0.2.154, IP Address:10.0.2.155, IP Address:10.0.2.156, IP Address:10.0.2.157, IP Address:10.0.2.158, IP Address:10.0.2.159, IP Address:10.0.2.160, IP Address:10.0.2.161, IP Address:10.0.2.162, IP Address:10.0.2.163, IP Address:10.0.2.164, IP Address:10.0.2.165, IP Address:10.0.2.166, IP Address:10.0.2.167, IP Address:10.0.2.168, IP Address:10.0.2.169, IP Address:10.0.2.170, IP Address:10.0.2.171, IP Address:10.0.2.172, IP Address:10.0.2.173, IP Address:10.0.2.174, IP Address:10.0.2.175, IP Address:10.0.2.176, IP Address:10.0.2.177, IP Address:10.0.2.178, IP Address:10.0.2.179, IP Address:10.0.2.180, IP Address:10.0.2.181, IP Address:10.0.2.182, IP Address:10.0.2.183, IP Address:10.0.2.184, IP Address:10.0.2.185, IP Address:10.0.2.186, IP Address:10.0.2.187, IP Address:10.0.2.188, IP Address:10.0.2.189, IP Address:10.0.2.190, IP Address:10.0.2.191, IP Address:10.0.2.192, IP Address:10.0.2.193, IP Address:10.0.2.194, IP Address:10.0.2.195, IP Address:10.0.2.196, IP Address:10.0.2.197, IP Address:10.0.2.198, IP Address:10.0.2.199, IP Address:10.0.2.200, IP Address:10.0.2.201, IP Address:10.0.2.202, IP Address:10.0.2.203, IP Address:10.0.2.204, IP Address:10.0.2.205, IP Address:10.0.2.206, IP Address:10.0.2.207, IP Address:10.0.2.208, IP Address:10.0.2.209, IP Address:10.0.2.210, IP Address:10.0.2.211, IP Address:10.0.2.212, IP Address:10.0.2.213, IP Address:10.0.2.214, IP Address:10.0.2.215, IP Address:10.0.2.216, IP Address:10.0.2.217, IP Address:10.0.2.218, IP Address:10.0.2.219, IP Address:10.0.2.220, IP Address:10.0.2.221, IP Address:10.0.2.222, IP Address:10.0.2.223, IP Address:10.0.2.224, IP Address:10.0.2.225, IP Address:10.0.2.226, IP Address:10.0.2.227, IP Address:10.0.2.228, IP Address:10.0.2.229, IP Address:10.0.2.230, IP Address:10.0.2.231, IP Address:10.0.2.232, IP Address:10.0.2.233, IP Address:10.0.2.234, IP Address:10.0.2.235, IP Address:10.0.2.236, IP Address:10.0.2.237, IP Address:10.0.2.238, IP Address:10.0.2.239, IP Address:10.0.2.240, IP Address:10.0.2.241, IP Address:10.0.2.242, IP Address:10.0.2.243, IP Address:10.0.2.244, IP Address:10.0.2.245, IP Address:10.0.2.246, IP Address:10.0.2.247, IP Address:10.0.2.248, IP Address:10.0.2.249, IP Address:10.0.2.250, IP Address:10.0.2.251, IP Address:10.0.2.252, IP Address:10.0.2.253, IP Address:10.0.2.254, IP Address:10.0.2.255, IP Address:10.0.3.0, IP Address:10.0.3.1, IP Address:10.0.3.2, IP Address:10.0.3.3, IP Address:10.0.3.4, IP Address:10.0.3.5, IP Address:10.0.3.6, IP Address:10.0.3.7, IP Address:10.0.3.8, IP Address:10.0.3.9, IP Address:10.0.3.10, IP Address:10.0.3.11, IP Address:10.0.3.12, IP Address:10.0.3.13, IP Address:10.0.3.14, IP Address:10.0.3.15, IP Address:10.0.3.16, IP Address:10.0.3.17, IP Address:10.0.3.18, IP Address:10.0.3.19, IP Address:10.0.3.20, IP Address:10.0.3.21, IP Address:10.0.3.22, IP Address:10.0.3.23, IP Address:10.0.3.24, IP Address:10.0.3.25, IP Address:10.0.3.26, IP Address:10.0.3.27, IP Address:10.0.3.28, IP Address:10.0.3.29, IP Address:10.0.3.30, IP Address:10.0.3.31, IP Address:10.0.3.32, IP Address:10.0.3.33, IP Address:10.0.3.34, IP Address:10.0.3.35, IP Address:10.0.3.36, IP Address:10.0.3.37, IP Address:10.0.3.38, IP Address:10.0.3.39, IP Address:10.0.3.40, IP Address:10.0.3.41, IP Address:10.0.3.42, IP Address:10.0.3.43, IP Address:10.0.3.44, IP Address:10.0.3.45, IP Address:10.0.3.46, IP Address:10.0.3.47, IP Address:10.0.3.48, IP Address:10.0.3.49, IP Address:10.0.3.50, IP Address:10.0.3.51, IP Address:10.0.3.52, IP Address:10.0.3.53, IP Address:10.0.3.54, IP Address:10.0.3.55, IP Address:10.0.3.56, IP Address:10.0.3.57, IP Address:10.0.3.58, IP Address:10.0.3.59, IP Address:10.0.3.60, IP Address:10.0.3.61, IP Address:10.0.3.62, IP Address:10.0.3.63, IP Address:10.0.3.64, IP Address:10.0.3.65, IP Address:10.0.3.66, IP Address:10.0.3.67, IP Address:10.0.3.68, IP Address:10.0.3.69, IP Address:10.0.3.70, IP Address:10.0.3.71, IP Address:10.0.3.72, IP Address:10.0.3.73, IP Address:10.0.3.74, IP Address:10.0.3.75, IP Address:10.0.3.76, IP Address:10.0.3.77, IP Address:10.0.3.78, IP Address:10.0.3.79, IP Address:10.0.3.80, IP Address:10.0.3.81, IP Address:10.0.3.82, IP Address:10.0.3.83, IP Address:10.0.3.84, IP Address:10.0.3.85, IP Address:10.0.3.86, IP Address:10.0.3.87, IP Address:10.0.3.88, IP Address:10.0.3.89, IP Address:10.0.3.90, IP Address:10.0.3.91, IP Address:10.0.3.92, IP Address:10.0.3.93, IP Address:10.0.3.94, IP Address:10.0.3.95, IP Address:10.0.3.96, IP Address:10.0.3.97, IP Address:10.0.3.98, IP Address:10.0.3.99, IP Address:10.0.3.100, IP Address:10.0.3.101, IP Address:10.0.3.102, IP Address:10.0.3.103, IP Address:10.0.3.104, IP Address:10.0.3.105, IP Address:10.0.3.106, IP Address:10.0.3.107, IP Address:10.0.3.108, IP Address:10.0.3.109, IP Address:10.0.3.110, IP Address:10.0.3.111, IP Address:10.0.3.112, IP Address:10.0.3.113, IP Address:10.0.3.114, IP Address:10.0.3.115, IP Address:10.0.3.116, IP Address:10.0.3.117, IP Address:10.0.3.118, IP Address:10.0.3.119, IP Address:10.0.3.120, IP Address:10.0.3.121, IP Address:10.0.3.122, IP Address:10.0.3.123, IP Address:10.0.3.124, IP Address:10.0.3.125, IP Address:10.0.3.126, IP Address:10.0.3.127, IP Address:10.0.3.128, IP Address:10.0.3.129, IP Address:10.0.3.130, IP Address:10.0.3.131, IP Address:10.0.3.132, IP Address:10.0.3.133, IP Address:10.0.3.134, IP Address:10.0.3.135, IP Address:10.0.3.136, IP Address:10.0.3.137, IP Address:10.0.3.138, IP Address:10.0.3.139, IP Address:10.0.3.140, IP Address:10.0.3.141, IP Address:10.0.3.142, IP Address:10.0.3.143, IP Address:10.0.3.144, IP Address:10.0.3.145, IP Address:10.0.3.146, IP Address:10.0.3.147, IP Address:10.0.3.148, IP Address:10.0.3.149, IP Address:10.0.3.150, IP Address:10.0.3.151, IP Address:10.0.3.152, IP Address:10.0.3.153, IP Address:10.0.3.154, IP Address:10.0.3.155, IP Address:10.0.3.156, IP Address:10.0.3.157, IP Address:10.0.3.158, IP Address:10.0.3.159, IP Address:10.0.3.160, IP Address:10.0.3.161, IP Address:10.0.3.162, IP Address:10.0.3.163, IP Address:10.0.3.164, IP Address:10.0.3.165, IP Address:10.0.3.166, IP Address:10.0.3.167, IP Address:10.0.3.168, IP Address:10.0.3.169, IP Address:10.0.3.170, IP Address:10.0.3.171, IP Address:10.0.3.172, IP Address:10.0.3.173, IP Address:10.0.3.174, IP Address:10.0.3.175, IP Address:10.0.3.176, IP Address:10.0.3.177, IP Address:10.0.3.178, IP Address:10.0.3.179, IP Address:10.0.3.180, IP Address:10.0.3.181, IP Address:10.0.3.182, IP Address:10.0.3.183, IP Address:10.0.3.184, IP Address:10.0.3.185, IP Address:10.0.3.186, IP Address:10.0.3.187, IP Address:10.0.3.188, IP Address:10.0.3.189, IP Address:10.0.3.190, IP Address:10.0.3.191, IP Address:10.0.3.192, IP Address:10.0.3.193, IP Address:10.0.3.194, IP Address:10.0.3.195, IP Address:10.0.3.196, IP Address:10.0.3.197, IP Address:10.0.3.198, IP Address:10.0.3.199, IP Address:10.0.3.200, IP Address:10.0.3.201, IP Address:10.0.3.202, IP Address:10.0.3.203, IP Address:10.0.3.204, IP Address:10.0.3.205, IP Address:10.0.3.206, IP Address:10.0.3.207, IP Address:10.0.3.208, IP Address:10.0.3.209, IP Address:10.0.3.210, IP Address:10.0.3.211, IP Address:10.0.3.212, IP Address:10.0.3.213, IP Address:10.0.3.214, IP Address:10.0.3.215, IP Address:10.0.3.216, IP Address:10.0.3.217, IP Address:10.0.3.218, IP Address:10.0.3.219, IP Address:10.0.3.220, IP Address:10.0.3.221, IP Address:10.0.3.222, IP Address:10.0.3.223, IP Address:10.0.3.224, IP Address:10.0.3.225, IP Address:10.0.3.226, IP Address:10.0.3.227, IP Address:10.0.3.228, IP Address:10.0.3.229, IP Address:10.0.3.230, IP Address:10.0.3.231, IP Address:10.0.3.232, IP Address:10.0.3.233, IP Address:10.0.3.234, IP Address:10.0.3.235, IP Address:10.0.3.236, IP Address:10.0.3.237, IP Address:10.0.3.238, IP Address:10.0.3.239, IP Address:10.0.3.240, IP Address:10.0.3.241, IP Address:10.0.3.242, IP Address:10.0.3.243, IP Address:10.0.3.244, IP Address:10.0.3.245, IP Address:10.0.3.246, IP Address:10.0.3.247, IP Address:10.0.3.248, IP Address:10.0.3.249, IP Address:10.0.3.250, IP Address:10.0.3.251, IP Address:10.0.3.252, IP Address:10.0.3.253, IP Address:10.0.3.254, IP Address:10.0.3.255 - Signature Algorithm: sha256WithRSAEncryption - 24:e6:7f:49:27:e7:de:27:ca:06:88:0f:d2:64:ba:07:75:08: - c0:72:41:ce:67:9f:1a:d8:23:d7:b6:35:ab:d4:49:1b:7e:cb: - 46:74:25:52:65:fb:5b:2b:74:ab:2c:19:1c:bf:06:01:78:0c: - c7:a6:3c:e0:1a:d4:dc:8c:00:8b:a8:05:4c:c2:cf:82:41:c7: - 51:65:49:fc:6b:dc:b3:b6:57:f0:0a:3c:05:39:7d:6e:2c:cd: - 6b:f3:b0:38:c4:0b:1b:5f:bf:03:e9:59:f8:d4:c5:42:7a:c0: - 39:5e:a4:ef:45:39:aa:ab:91:35:9d:8e:65:3f:43:bc:59:6f: - 90:d1:da:eb:fe:b0:b5:3a:24:63:78:04:f3:75:58:43:79:b5: - 64:1f:96:ee:c9:3b:93:12:e1:c7:31:5b:9d:a9:58:48:03:f7: - 76:ad:0a:e8:b1:38:58:df:2e:04:8b:56:07:1c:9c:4e:e8:27: - 2b:9d:24:a0:09:a6:b7:c2:7f:f4:16:c0:2a:f7:ca:b0:f5:b9: - c2:0c:4b:e8:c2:16:e3:b4:dc:0b:a9:95:7f:60:35:b1:62:1b: - 53:14:94:c9:ea:74:ee:0e:05:64:ff:04:1b:b4:1d:8c:10:d2: - 3e:6e:0d:f0:87:0b:c5:29:0a:90:cb:86:ee:0a:ba:3f:d7:d4: - 12:e3:0a:e9 ------BEGIN CERTIFICATE----- -MIIbrjCCGpagAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY1zANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCGPswghj3MB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwghgNBgNVHREEghgEMIIYAIcE -CgAAAIcECgAAAYcECgAAAocECgAAA4cECgAABIcECgAABYcECgAABocECgAAB4cE -CgAACIcECgAACYcECgAACocECgAAC4cECgAADIcECgAADYcECgAADocECgAAD4cE -CgAAEIcECgAAEYcECgAAEocECgAAE4cECgAAFIcECgAAFYcECgAAFocECgAAF4cE -CgAAGIcECgAAGYcECgAAGocECgAAG4cECgAAHIcECgAAHYcECgAAHocECgAAH4cE -CgAAIIcECgAAIYcECgAAIocECgAAI4cECgAAJIcECgAAJYcECgAAJocECgAAJ4cE -CgAAKIcECgAAKYcECgAAKocECgAAK4cECgAALIcECgAALYcECgAALocECgAAL4cE -CgAAMIcECgAAMYcECgAAMocECgAAM4cECgAANIcECgAANYcECgAANocECgAAN4cE -CgAAOIcECgAAOYcECgAAOocECgAAO4cECgAAPIcECgAAPYcECgAAPocECgAAP4cE -CgAAQIcECgAAQYcECgAAQocECgAAQ4cECgAARIcECgAARYcECgAARocECgAAR4cE -CgAASIcECgAASYcECgAASocECgAAS4cECgAATIcECgAATYcECgAATocECgAAT4cE -CgAAUIcECgAAUYcECgAAUocECgAAU4cECgAAVIcECgAAVYcECgAAVocECgAAV4cE -CgAAWIcECgAAWYcECgAAWocECgAAW4cECgAAXIcECgAAXYcECgAAXocECgAAX4cE -CgAAYIcECgAAYYcECgAAYocECgAAY4cECgAAZIcECgAAZYcECgAAZocECgAAZ4cE -CgAAaIcECgAAaYcECgAAaocECgAAa4cECgAAbIcECgAAbYcECgAAbocECgAAb4cE -CgAAcIcECgAAcYcECgAAcocECgAAc4cECgAAdIcECgAAdYcECgAAdocECgAAd4cE -CgAAeIcECgAAeYcECgAAeocECgAAe4cECgAAfIcECgAAfYcECgAAfocECgAAf4cE -CgAAgIcECgAAgYcECgAAgocECgAAg4cECgAAhIcECgAAhYcECgAAhocECgAAh4cE -CgAAiIcECgAAiYcECgAAiocECgAAi4cECgAAjIcECgAAjYcECgAAjocECgAAj4cE -CgAAkIcECgAAkYcECgAAkocECgAAk4cECgAAlIcECgAAlYcECgAAlocECgAAl4cE -CgAAmIcECgAAmYcECgAAmocECgAAm4cECgAAnIcECgAAnYcECgAAnocECgAAn4cE -CgAAoIcECgAAoYcECgAAoocECgAAo4cECgAApIcECgAApYcECgAApocECgAAp4cE -CgAAqIcECgAAqYcECgAAqocECgAAq4cECgAArIcECgAArYcECgAArocECgAAr4cE -CgAAsIcECgAAsYcECgAAsocECgAAs4cECgAAtIcECgAAtYcECgAAtocECgAAt4cE -CgAAuIcECgAAuYcECgAAuocECgAAu4cECgAAvIcECgAAvYcECgAAvocECgAAv4cE -CgAAwIcECgAAwYcECgAAwocECgAAw4cECgAAxIcECgAAxYcECgAAxocECgAAx4cE -CgAAyIcECgAAyYcECgAAyocECgAAy4cECgAAzIcECgAAzYcECgAAzocECgAAz4cE -CgAA0IcECgAA0YcECgAA0ocECgAA04cECgAA1IcECgAA1YcECgAA1ocECgAA14cE -CgAA2IcECgAA2YcECgAA2ocECgAA24cECgAA3IcECgAA3YcECgAA3ocECgAA34cE -CgAA4IcECgAA4YcECgAA4ocECgAA44cECgAA5IcECgAA5YcECgAA5ocECgAA54cE -CgAA6IcECgAA6YcECgAA6ocECgAA64cECgAA7IcECgAA7YcECgAA7ocECgAA74cE -CgAA8IcECgAA8YcECgAA8ocECgAA84cECgAA9IcECgAA9YcECgAA9ocECgAA94cE -CgAA+IcECgAA+YcECgAA+ocECgAA+4cECgAA/IcECgAA/YcECgAA/ocECgAA/4cE -CgABAIcECgABAYcECgABAocECgABA4cECgABBIcECgABBYcECgABBocECgABB4cE -CgABCIcECgABCYcECgABCocECgABC4cECgABDIcECgABDYcECgABDocECgABD4cE -CgABEIcECgABEYcECgABEocECgABE4cECgABFIcECgABFYcECgABFocECgABF4cE -CgABGIcECgABGYcECgABGocECgABG4cECgABHIcECgABHYcECgABHocECgABH4cE -CgABIIcECgABIYcECgABIocECgABI4cECgABJIcECgABJYcECgABJocECgABJ4cE -CgABKIcECgABKYcECgABKocECgABK4cECgABLIcECgABLYcECgABLocECgABL4cE -CgABMIcECgABMYcECgABMocECgABM4cECgABNIcECgABNYcECgABNocECgABN4cE -CgABOIcECgABOYcECgABOocECgABO4cECgABPIcECgABPYcECgABPocECgABP4cE -CgABQIcECgABQYcECgABQocECgABQ4cECgABRIcECgABRYcECgABRocECgABR4cE -CgABSIcECgABSYcECgABSocECgABS4cECgABTIcECgABTYcECgABTocECgABT4cE -CgABUIcECgABUYcECgABUocECgABU4cECgABVIcECgABVYcECgABVocECgABV4cE -CgABWIcECgABWYcECgABWocECgABW4cECgABXIcECgABXYcECgABXocECgABX4cE -CgABYIcECgABYYcECgABYocECgABY4cECgABZIcECgABZYcECgABZocECgABZ4cE -CgABaIcECgABaYcECgABaocECgABa4cECgABbIcECgABbYcECgABbocECgABb4cE -CgABcIcECgABcYcECgABcocECgABc4cECgABdIcECgABdYcECgABdocECgABd4cE -CgABeIcECgABeYcECgABeocECgABe4cECgABfIcECgABfYcECgABfocECgABf4cE -CgABgIcECgABgYcECgABgocECgABg4cECgABhIcECgABhYcECgABhocECgABh4cE -CgABiIcECgABiYcECgABiocECgABi4cECgABjIcECgABjYcECgABjocECgABj4cE -CgABkIcECgABkYcECgABkocECgABk4cECgABlIcECgABlYcECgABlocECgABl4cE -CgABmIcECgABmYcECgABmocECgABm4cECgABnIcECgABnYcECgABnocECgABn4cE -CgABoIcECgABoYcECgABoocECgABo4cECgABpIcECgABpYcECgABpocECgABp4cE -CgABqIcECgABqYcECgABqocECgABq4cECgABrIcECgABrYcECgABrocECgABr4cE -CgABsIcECgABsYcECgABsocECgABs4cECgABtIcECgABtYcECgABtocECgABt4cE -CgABuIcECgABuYcECgABuocECgABu4cECgABvIcECgABvYcECgABvocECgABv4cE -CgABwIcECgABwYcECgABwocECgABw4cECgABxIcECgABxYcECgABxocECgABx4cE -CgAByIcECgAByYcECgAByocECgABy4cECgABzIcECgABzYcECgABzocECgABz4cE -CgAB0IcECgAB0YcECgAB0ocECgAB04cECgAB1IcECgAB1YcECgAB1ocECgAB14cE -CgAB2IcECgAB2YcECgAB2ocECgAB24cECgAB3IcECgAB3YcECgAB3ocECgAB34cE -CgAB4IcECgAB4YcECgAB4ocECgAB44cECgAB5IcECgAB5YcECgAB5ocECgAB54cE -CgAB6IcECgAB6YcECgAB6ocECgAB64cECgAB7IcECgAB7YcECgAB7ocECgAB74cE -CgAB8IcECgAB8YcECgAB8ocECgAB84cECgAB9IcECgAB9YcECgAB9ocECgAB94cE -CgAB+IcECgAB+YcECgAB+ocECgAB+4cECgAB/IcECgAB/YcECgAB/ocECgAB/4cE -CgACAIcECgACAYcECgACAocECgACA4cECgACBIcECgACBYcECgACBocECgACB4cE -CgACCIcECgACCYcECgACCocECgACC4cECgACDIcECgACDYcECgACDocECgACD4cE -CgACEIcECgACEYcECgACEocECgACE4cECgACFIcECgACFYcECgACFocECgACF4cE -CgACGIcECgACGYcECgACGocECgACG4cECgACHIcECgACHYcECgACHocECgACH4cE -CgACIIcECgACIYcECgACIocECgACI4cECgACJIcECgACJYcECgACJocECgACJ4cE -CgACKIcECgACKYcECgACKocECgACK4cECgACLIcECgACLYcECgACLocECgACL4cE -CgACMIcECgACMYcECgACMocECgACM4cECgACNIcECgACNYcECgACNocECgACN4cE -CgACOIcECgACOYcECgACOocECgACO4cECgACPIcECgACPYcECgACPocECgACP4cE -CgACQIcECgACQYcECgACQocECgACQ4cECgACRIcECgACRYcECgACRocECgACR4cE -CgACSIcECgACSYcECgACSocECgACS4cECgACTIcECgACTYcECgACTocECgACT4cE -CgACUIcECgACUYcECgACUocECgACU4cECgACVIcECgACVYcECgACVocECgACV4cE -CgACWIcECgACWYcECgACWocECgACW4cECgACXIcECgACXYcECgACXocECgACX4cE -CgACYIcECgACYYcECgACYocECgACY4cECgACZIcECgACZYcECgACZocECgACZ4cE -CgACaIcECgACaYcECgACaocECgACa4cECgACbIcECgACbYcECgACbocECgACb4cE -CgACcIcECgACcYcECgACcocECgACc4cECgACdIcECgACdYcECgACdocECgACd4cE -CgACeIcECgACeYcECgACeocECgACe4cECgACfIcECgACfYcECgACfocECgACf4cE -CgACgIcECgACgYcECgACgocECgACg4cECgAChIcECgAChYcECgAChocECgACh4cE -CgACiIcECgACiYcECgACiocECgACi4cECgACjIcECgACjYcECgACjocECgACj4cE -CgACkIcECgACkYcECgACkocECgACk4cECgAClIcECgAClYcECgAClocECgACl4cE -CgACmIcECgACmYcECgACmocECgACm4cECgACnIcECgACnYcECgACnocECgACn4cE -CgACoIcECgACoYcECgACoocECgACo4cECgACpIcECgACpYcECgACpocECgACp4cE -CgACqIcECgACqYcECgACqocECgACq4cECgACrIcECgACrYcECgACrocECgACr4cE -CgACsIcECgACsYcECgACsocECgACs4cECgACtIcECgACtYcECgACtocECgACt4cE -CgACuIcECgACuYcECgACuocECgACu4cECgACvIcECgACvYcECgACvocECgACv4cE -CgACwIcECgACwYcECgACwocECgACw4cECgACxIcECgACxYcECgACxocECgACx4cE -CgACyIcECgACyYcECgACyocECgACy4cECgACzIcECgACzYcECgACzocECgACz4cE -CgAC0IcECgAC0YcECgAC0ocECgAC04cECgAC1IcECgAC1YcECgAC1ocECgAC14cE -CgAC2IcECgAC2YcECgAC2ocECgAC24cECgAC3IcECgAC3YcECgAC3ocECgAC34cE -CgAC4IcECgAC4YcECgAC4ocECgAC44cECgAC5IcECgAC5YcECgAC5ocECgAC54cE -CgAC6IcECgAC6YcECgAC6ocECgAC64cECgAC7IcECgAC7YcECgAC7ocECgAC74cE -CgAC8IcECgAC8YcECgAC8ocECgAC84cECgAC9IcECgAC9YcECgAC9ocECgAC94cE -CgAC+IcECgAC+YcECgAC+ocECgAC+4cECgAC/IcECgAC/YcECgAC/ocECgAC/4cE -CgADAIcECgADAYcECgADAocECgADA4cECgADBIcECgADBYcECgADBocECgADB4cE -CgADCIcECgADCYcECgADCocECgADC4cECgADDIcECgADDYcECgADDocECgADD4cE -CgADEIcECgADEYcECgADEocECgADE4cECgADFIcECgADFYcECgADFocECgADF4cE -CgADGIcECgADGYcECgADGocECgADG4cECgADHIcECgADHYcECgADHocECgADH4cE -CgADIIcECgADIYcECgADIocECgADI4cECgADJIcECgADJYcECgADJocECgADJ4cE -CgADKIcECgADKYcECgADKocECgADK4cECgADLIcECgADLYcECgADLocECgADL4cE -CgADMIcECgADMYcECgADMocECgADM4cECgADNIcECgADNYcECgADNocECgADN4cE -CgADOIcECgADOYcECgADOocECgADO4cECgADPIcECgADPYcECgADPocECgADP4cE -CgADQIcECgADQYcECgADQocECgADQ4cECgADRIcECgADRYcECgADRocECgADR4cE -CgADSIcECgADSYcECgADSocECgADS4cECgADTIcECgADTYcECgADTocECgADT4cE -CgADUIcECgADUYcECgADUocECgADU4cECgADVIcECgADVYcECgADVocECgADV4cE -CgADWIcECgADWYcECgADWocECgADW4cECgADXIcECgADXYcECgADXocECgADX4cE -CgADYIcECgADYYcECgADYocECgADY4cECgADZIcECgADZYcECgADZocECgADZ4cE -CgADaIcECgADaYcECgADaocECgADa4cECgADbIcECgADbYcECgADbocECgADb4cE -CgADcIcECgADcYcECgADcocECgADc4cECgADdIcECgADdYcECgADdocECgADd4cE -CgADeIcECgADeYcECgADeocECgADe4cECgADfIcECgADfYcECgADfocECgADf4cE -CgADgIcECgADgYcECgADgocECgADg4cECgADhIcECgADhYcECgADhocECgADh4cE -CgADiIcECgADiYcECgADiocECgADi4cECgADjIcECgADjYcECgADjocECgADj4cE -CgADkIcECgADkYcECgADkocECgADk4cECgADlIcECgADlYcECgADlocECgADl4cE -CgADmIcECgADmYcECgADmocECgADm4cECgADnIcECgADnYcECgADnocECgADn4cE -CgADoIcECgADoYcECgADoocECgADo4cECgADpIcECgADpYcECgADpocECgADp4cE -CgADqIcECgADqYcECgADqocECgADq4cECgADrIcECgADrYcECgADrocECgADr4cE -CgADsIcECgADsYcECgADsocECgADs4cECgADtIcECgADtYcECgADtocECgADt4cE -CgADuIcECgADuYcECgADuocECgADu4cECgADvIcECgADvYcECgADvocECgADv4cE -CgADwIcECgADwYcECgADwocECgADw4cECgADxIcECgADxYcECgADxocECgADx4cE -CgADyIcECgADyYcECgADyocECgADy4cECgADzIcECgADzYcECgADzocECgADz4cE -CgAD0IcECgAD0YcECgAD0ocECgAD04cECgAD1IcECgAD1YcECgAD1ocECgAD14cE -CgAD2IcECgAD2YcECgAD2ocECgAD24cECgAD3IcECgAD3YcECgAD3ocECgAD34cE -CgAD4IcECgAD4YcECgAD4ocECgAD44cECgAD5IcECgAD5YcECgAD5ocECgAD54cE -CgAD6IcECgAD6YcECgAD6ocECgAD64cECgAD7IcECgAD7YcECgAD7ocECgAD74cE -CgAD8IcECgAD8YcECgAD8ocECgAD84cECgAD9IcECgAD9YcECgAD9ocECgAD94cE -CgAD+IcECgAD+YcECgAD+ocECgAD+4cECgAD/IcECgAD/YcECgAD/ocECgAD/zAN -BgkqhkiG9w0BAQsFAAOCAQEAJOZ/SSfn3ifKBogP0mS6B3UIwHJBzmefGtgj17Y1 -q9RJG37LRnQlUmX7Wyt0qywZHL8GAXgMx6Y84BrU3IwAi6gFTMLPgkHHUWVJ/Gvc -s7ZX8Ao8BTl9bizNa/OwOMQLG1+/A+lZ+NTFQnrAOV6k70U5qquRNZ2OZT9DvFlv -kNHa6/6wtTokY3gE83VYQ3m1ZB+W7sk7kxLhxzFbnalYSAP3dq0K6LE4WN8uBItW -BxycTugnK50koAmmt8J/9BbAKvfKsPW5wgxL6MIW47TcC6mVf2A1sWIbUxSUyep0 -7g4FZP8EG7QdjBDSPm4N8IcLxSkKkMuG7gq6P9fUEuMK6Q== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.cnf deleted file mode 100644 index f4ed185541..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.cnf +++ /dev/null @@ -1,4163 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "t0" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,digitalSignature,keyEncipherment -extendedKeyUsage = serverAuth,clientAuth -subjectAltName = @san_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/t0_4.pem -new_certs_dir = out -serial = out/t0.serial -database = out/t0.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/t0.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/t0.cer - -[crl_info] -URI.0 = http://url-for-crl/t0.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[san_info] -dirName.1 = san_dirname1 -dirName.2 = san_dirname2 -dirName.3 = san_dirname3 -dirName.4 = san_dirname4 -dirName.5 = san_dirname5 -dirName.6 = san_dirname6 -dirName.7 = san_dirname7 -dirName.8 = san_dirname8 -dirName.9 = san_dirname9 -dirName.10 = san_dirname10 -dirName.11 = san_dirname11 -dirName.12 = san_dirname12 -dirName.13 = san_dirname13 -dirName.14 = san_dirname14 -dirName.15 = san_dirname15 -dirName.16 = san_dirname16 -dirName.17 = san_dirname17 -dirName.18 = san_dirname18 -dirName.19 = san_dirname19 -dirName.20 = san_dirname20 -dirName.21 = san_dirname21 -dirName.22 = san_dirname22 -dirName.23 = san_dirname23 -dirName.24 = san_dirname24 -dirName.25 = san_dirname25 -dirName.26 = san_dirname26 -dirName.27 = san_dirname27 -dirName.28 = san_dirname28 -dirName.29 = san_dirname29 -dirName.30 = san_dirname30 -dirName.31 = san_dirname31 -dirName.32 = san_dirname32 -dirName.33 = san_dirname33 -dirName.34 = san_dirname34 -dirName.35 = san_dirname35 -dirName.36 = san_dirname36 -dirName.37 = san_dirname37 -dirName.38 = san_dirname38 -dirName.39 = san_dirname39 -dirName.40 = san_dirname40 -dirName.41 = san_dirname41 -dirName.42 = san_dirname42 -dirName.43 = san_dirname43 -dirName.44 = san_dirname44 -dirName.45 = san_dirname45 -dirName.46 = san_dirname46 -dirName.47 = san_dirname47 -dirName.48 = san_dirname48 -dirName.49 = san_dirname49 -dirName.50 = san_dirname50 -dirName.51 = san_dirname51 -dirName.52 = san_dirname52 -dirName.53 = san_dirname53 -dirName.54 = san_dirname54 -dirName.55 = san_dirname55 -dirName.56 = san_dirname56 -dirName.57 = san_dirname57 -dirName.58 = san_dirname58 -dirName.59 = san_dirname59 -dirName.60 = san_dirname60 -dirName.61 = san_dirname61 -dirName.62 = san_dirname62 -dirName.63 = san_dirname63 -dirName.64 = san_dirname64 -dirName.65 = san_dirname65 -dirName.66 = san_dirname66 -dirName.67 = san_dirname67 -dirName.68 = san_dirname68 -dirName.69 = san_dirname69 -dirName.70 = san_dirname70 -dirName.71 = san_dirname71 -dirName.72 = san_dirname72 -dirName.73 = san_dirname73 -dirName.74 = san_dirname74 -dirName.75 = san_dirname75 -dirName.76 = san_dirname76 -dirName.77 = san_dirname77 -dirName.78 = san_dirname78 -dirName.79 = san_dirname79 -dirName.80 = san_dirname80 -dirName.81 = san_dirname81 -dirName.82 = san_dirname82 -dirName.83 = san_dirname83 -dirName.84 = san_dirname84 -dirName.85 = san_dirname85 -dirName.86 = san_dirname86 -dirName.87 = san_dirname87 -dirName.88 = san_dirname88 -dirName.89 = san_dirname89 -dirName.90 = san_dirname90 -dirName.91 = san_dirname91 -dirName.92 = san_dirname92 -dirName.93 = san_dirname93 -dirName.94 = san_dirname94 -dirName.95 = san_dirname95 -dirName.96 = san_dirname96 -dirName.97 = san_dirname97 -dirName.98 = san_dirname98 -dirName.99 = san_dirname99 -dirName.100 = san_dirname100 -dirName.101 = san_dirname101 -dirName.102 = san_dirname102 -dirName.103 = san_dirname103 -dirName.104 = san_dirname104 -dirName.105 = san_dirname105 -dirName.106 = san_dirname106 -dirName.107 = san_dirname107 -dirName.108 = san_dirname108 -dirName.109 = san_dirname109 -dirName.110 = san_dirname110 -dirName.111 = san_dirname111 -dirName.112 = san_dirname112 -dirName.113 = san_dirname113 -dirName.114 = san_dirname114 -dirName.115 = san_dirname115 -dirName.116 = san_dirname116 -dirName.117 = san_dirname117 -dirName.118 = san_dirname118 -dirName.119 = san_dirname119 -dirName.120 = san_dirname120 -dirName.121 = san_dirname121 -dirName.122 = san_dirname122 -dirName.123 = san_dirname123 -dirName.124 = san_dirname124 -dirName.125 = san_dirname125 -dirName.126 = san_dirname126 -dirName.127 = san_dirname127 -dirName.128 = san_dirname128 -dirName.129 = san_dirname129 -dirName.130 = san_dirname130 -dirName.131 = san_dirname131 -dirName.132 = san_dirname132 -dirName.133 = san_dirname133 -dirName.134 = san_dirname134 -dirName.135 = san_dirname135 -dirName.136 = san_dirname136 -dirName.137 = san_dirname137 -dirName.138 = san_dirname138 -dirName.139 = san_dirname139 -dirName.140 = san_dirname140 -dirName.141 = san_dirname141 -dirName.142 = san_dirname142 -dirName.143 = san_dirname143 -dirName.144 = san_dirname144 -dirName.145 = san_dirname145 -dirName.146 = san_dirname146 -dirName.147 = san_dirname147 -dirName.148 = san_dirname148 -dirName.149 = san_dirname149 -dirName.150 = san_dirname150 -dirName.151 = san_dirname151 -dirName.152 = san_dirname152 -dirName.153 = san_dirname153 -dirName.154 = san_dirname154 -dirName.155 = san_dirname155 -dirName.156 = san_dirname156 -dirName.157 = san_dirname157 -dirName.158 = san_dirname158 -dirName.159 = san_dirname159 -dirName.160 = san_dirname160 -dirName.161 = san_dirname161 -dirName.162 = san_dirname162 -dirName.163 = san_dirname163 -dirName.164 = san_dirname164 -dirName.165 = san_dirname165 -dirName.166 = san_dirname166 -dirName.167 = san_dirname167 -dirName.168 = san_dirname168 -dirName.169 = san_dirname169 -dirName.170 = san_dirname170 -dirName.171 = san_dirname171 -dirName.172 = san_dirname172 -dirName.173 = san_dirname173 -dirName.174 = san_dirname174 -dirName.175 = san_dirname175 -dirName.176 = san_dirname176 -dirName.177 = san_dirname177 -dirName.178 = san_dirname178 -dirName.179 = san_dirname179 -dirName.180 = san_dirname180 -dirName.181 = san_dirname181 -dirName.182 = san_dirname182 -dirName.183 = san_dirname183 -dirName.184 = san_dirname184 -dirName.185 = san_dirname185 -dirName.186 = san_dirname186 -dirName.187 = san_dirname187 -dirName.188 = san_dirname188 -dirName.189 = san_dirname189 -dirName.190 = san_dirname190 -dirName.191 = san_dirname191 -dirName.192 = san_dirname192 -dirName.193 = san_dirname193 -dirName.194 = san_dirname194 -dirName.195 = san_dirname195 -dirName.196 = san_dirname196 -dirName.197 = san_dirname197 -dirName.198 = san_dirname198 -dirName.199 = san_dirname199 -dirName.200 = san_dirname200 -dirName.201 = san_dirname201 -dirName.202 = san_dirname202 -dirName.203 = san_dirname203 -dirName.204 = san_dirname204 -dirName.205 = san_dirname205 -dirName.206 = san_dirname206 -dirName.207 = san_dirname207 -dirName.208 = san_dirname208 -dirName.209 = san_dirname209 -dirName.210 = san_dirname210 -dirName.211 = san_dirname211 -dirName.212 = san_dirname212 -dirName.213 = san_dirname213 -dirName.214 = san_dirname214 -dirName.215 = san_dirname215 -dirName.216 = san_dirname216 -dirName.217 = san_dirname217 -dirName.218 = san_dirname218 -dirName.219 = san_dirname219 -dirName.220 = san_dirname220 -dirName.221 = san_dirname221 -dirName.222 = san_dirname222 -dirName.223 = san_dirname223 -dirName.224 = san_dirname224 -dirName.225 = san_dirname225 -dirName.226 = san_dirname226 -dirName.227 = san_dirname227 -dirName.228 = san_dirname228 -dirName.229 = san_dirname229 -dirName.230 = san_dirname230 -dirName.231 = san_dirname231 -dirName.232 = san_dirname232 -dirName.233 = san_dirname233 -dirName.234 = san_dirname234 -dirName.235 = san_dirname235 -dirName.236 = san_dirname236 -dirName.237 = san_dirname237 -dirName.238 = san_dirname238 -dirName.239 = san_dirname239 -dirName.240 = san_dirname240 -dirName.241 = san_dirname241 -dirName.242 = san_dirname242 -dirName.243 = san_dirname243 -dirName.244 = san_dirname244 -dirName.245 = san_dirname245 -dirName.246 = san_dirname246 -dirName.247 = san_dirname247 -dirName.248 = san_dirname248 -dirName.249 = san_dirname249 -dirName.250 = san_dirname250 -dirName.251 = san_dirname251 -dirName.252 = san_dirname252 -dirName.253 = san_dirname253 -dirName.254 = san_dirname254 -dirName.255 = san_dirname255 -dirName.256 = san_dirname256 -dirName.257 = san_dirname257 -dirName.258 = san_dirname258 -dirName.259 = san_dirname259 -dirName.260 = san_dirname260 -dirName.261 = san_dirname261 -dirName.262 = san_dirname262 -dirName.263 = san_dirname263 -dirName.264 = san_dirname264 -dirName.265 = san_dirname265 -dirName.266 = san_dirname266 -dirName.267 = san_dirname267 -dirName.268 = san_dirname268 -dirName.269 = san_dirname269 -dirName.270 = san_dirname270 -dirName.271 = san_dirname271 -dirName.272 = san_dirname272 -dirName.273 = san_dirname273 -dirName.274 = san_dirname274 -dirName.275 = san_dirname275 -dirName.276 = san_dirname276 -dirName.277 = san_dirname277 -dirName.278 = san_dirname278 -dirName.279 = san_dirname279 -dirName.280 = san_dirname280 -dirName.281 = san_dirname281 -dirName.282 = san_dirname282 -dirName.283 = san_dirname283 -dirName.284 = san_dirname284 -dirName.285 = san_dirname285 -dirName.286 = san_dirname286 -dirName.287 = san_dirname287 -dirName.288 = san_dirname288 -dirName.289 = san_dirname289 -dirName.290 = san_dirname290 -dirName.291 = san_dirname291 -dirName.292 = san_dirname292 -dirName.293 = san_dirname293 -dirName.294 = san_dirname294 -dirName.295 = san_dirname295 -dirName.296 = san_dirname296 -dirName.297 = san_dirname297 -dirName.298 = san_dirname298 -dirName.299 = san_dirname299 -dirName.300 = san_dirname300 -dirName.301 = san_dirname301 -dirName.302 = san_dirname302 -dirName.303 = san_dirname303 -dirName.304 = san_dirname304 -dirName.305 = san_dirname305 -dirName.306 = san_dirname306 -dirName.307 = san_dirname307 -dirName.308 = san_dirname308 -dirName.309 = san_dirname309 -dirName.310 = san_dirname310 -dirName.311 = san_dirname311 -dirName.312 = san_dirname312 -dirName.313 = san_dirname313 -dirName.314 = san_dirname314 -dirName.315 = san_dirname315 -dirName.316 = san_dirname316 -dirName.317 = san_dirname317 -dirName.318 = san_dirname318 -dirName.319 = san_dirname319 -dirName.320 = san_dirname320 -dirName.321 = san_dirname321 -dirName.322 = san_dirname322 -dirName.323 = san_dirname323 -dirName.324 = san_dirname324 -dirName.325 = san_dirname325 -dirName.326 = san_dirname326 -dirName.327 = san_dirname327 -dirName.328 = san_dirname328 -dirName.329 = san_dirname329 -dirName.330 = san_dirname330 -dirName.331 = san_dirname331 -dirName.332 = san_dirname332 -dirName.333 = san_dirname333 -dirName.334 = san_dirname334 -dirName.335 = san_dirname335 -dirName.336 = san_dirname336 -dirName.337 = san_dirname337 -dirName.338 = san_dirname338 -dirName.339 = san_dirname339 -dirName.340 = san_dirname340 -dirName.341 = san_dirname341 -dirName.342 = san_dirname342 -dirName.343 = san_dirname343 -dirName.344 = san_dirname344 -dirName.345 = san_dirname345 -dirName.346 = san_dirname346 -dirName.347 = san_dirname347 -dirName.348 = san_dirname348 -dirName.349 = san_dirname349 -dirName.350 = san_dirname350 -dirName.351 = san_dirname351 -dirName.352 = san_dirname352 -dirName.353 = san_dirname353 -dirName.354 = san_dirname354 -dirName.355 = san_dirname355 -dirName.356 = san_dirname356 -dirName.357 = san_dirname357 -dirName.358 = san_dirname358 -dirName.359 = san_dirname359 -dirName.360 = san_dirname360 -dirName.361 = san_dirname361 -dirName.362 = san_dirname362 -dirName.363 = san_dirname363 -dirName.364 = san_dirname364 -dirName.365 = san_dirname365 -dirName.366 = san_dirname366 -dirName.367 = san_dirname367 -dirName.368 = san_dirname368 -dirName.369 = san_dirname369 -dirName.370 = san_dirname370 -dirName.371 = san_dirname371 -dirName.372 = san_dirname372 -dirName.373 = san_dirname373 -dirName.374 = san_dirname374 -dirName.375 = san_dirname375 -dirName.376 = san_dirname376 -dirName.377 = san_dirname377 -dirName.378 = san_dirname378 -dirName.379 = san_dirname379 -dirName.380 = san_dirname380 -dirName.381 = san_dirname381 -dirName.382 = san_dirname382 -dirName.383 = san_dirname383 -dirName.384 = san_dirname384 -dirName.385 = san_dirname385 -dirName.386 = san_dirname386 -dirName.387 = san_dirname387 -dirName.388 = san_dirname388 -dirName.389 = san_dirname389 -dirName.390 = san_dirname390 -dirName.391 = san_dirname391 -dirName.392 = san_dirname392 -dirName.393 = san_dirname393 -dirName.394 = san_dirname394 -dirName.395 = san_dirname395 -dirName.396 = san_dirname396 -dirName.397 = san_dirname397 -dirName.398 = san_dirname398 -dirName.399 = san_dirname399 -dirName.400 = san_dirname400 -dirName.401 = san_dirname401 -dirName.402 = san_dirname402 -dirName.403 = san_dirname403 -dirName.404 = san_dirname404 -dirName.405 = san_dirname405 -dirName.406 = san_dirname406 -dirName.407 = san_dirname407 -dirName.408 = san_dirname408 -dirName.409 = san_dirname409 -dirName.410 = san_dirname410 -dirName.411 = san_dirname411 -dirName.412 = san_dirname412 -dirName.413 = san_dirname413 -dirName.414 = san_dirname414 -dirName.415 = san_dirname415 -dirName.416 = san_dirname416 -dirName.417 = san_dirname417 -dirName.418 = san_dirname418 -dirName.419 = san_dirname419 -dirName.420 = san_dirname420 -dirName.421 = san_dirname421 -dirName.422 = san_dirname422 -dirName.423 = san_dirname423 -dirName.424 = san_dirname424 -dirName.425 = san_dirname425 -dirName.426 = san_dirname426 -dirName.427 = san_dirname427 -dirName.428 = san_dirname428 -dirName.429 = san_dirname429 -dirName.430 = san_dirname430 -dirName.431 = san_dirname431 -dirName.432 = san_dirname432 -dirName.433 = san_dirname433 -dirName.434 = san_dirname434 -dirName.435 = san_dirname435 -dirName.436 = san_dirname436 -dirName.437 = san_dirname437 -dirName.438 = san_dirname438 -dirName.439 = san_dirname439 -dirName.440 = san_dirname440 -dirName.441 = san_dirname441 -dirName.442 = san_dirname442 -dirName.443 = san_dirname443 -dirName.444 = san_dirname444 -dirName.445 = san_dirname445 -dirName.446 = san_dirname446 -dirName.447 = san_dirname447 -dirName.448 = san_dirname448 -dirName.449 = san_dirname449 -dirName.450 = san_dirname450 -dirName.451 = san_dirname451 -dirName.452 = san_dirname452 -dirName.453 = san_dirname453 -dirName.454 = san_dirname454 -dirName.455 = san_dirname455 -dirName.456 = san_dirname456 -dirName.457 = san_dirname457 -dirName.458 = san_dirname458 -dirName.459 = san_dirname459 -dirName.460 = san_dirname460 -dirName.461 = san_dirname461 -dirName.462 = san_dirname462 -dirName.463 = san_dirname463 -dirName.464 = san_dirname464 -dirName.465 = san_dirname465 -dirName.466 = san_dirname466 -dirName.467 = san_dirname467 -dirName.468 = san_dirname468 -dirName.469 = san_dirname469 -dirName.470 = san_dirname470 -dirName.471 = san_dirname471 -dirName.472 = san_dirname472 -dirName.473 = san_dirname473 -dirName.474 = san_dirname474 -dirName.475 = san_dirname475 -dirName.476 = san_dirname476 -dirName.477 = san_dirname477 -dirName.478 = san_dirname478 -dirName.479 = san_dirname479 -dirName.480 = san_dirname480 -dirName.481 = san_dirname481 -dirName.482 = san_dirname482 -dirName.483 = san_dirname483 -dirName.484 = san_dirname484 -dirName.485 = san_dirname485 -dirName.486 = san_dirname486 -dirName.487 = san_dirname487 -dirName.488 = san_dirname488 -dirName.489 = san_dirname489 -dirName.490 = san_dirname490 -dirName.491 = san_dirname491 -dirName.492 = san_dirname492 -dirName.493 = san_dirname493 -dirName.494 = san_dirname494 -dirName.495 = san_dirname495 -dirName.496 = san_dirname496 -dirName.497 = san_dirname497 -dirName.498 = san_dirname498 -dirName.499 = san_dirname499 -dirName.500 = san_dirname500 -dirName.501 = san_dirname501 -dirName.502 = san_dirname502 -dirName.503 = san_dirname503 -dirName.504 = san_dirname504 -dirName.505 = san_dirname505 -dirName.506 = san_dirname506 -dirName.507 = san_dirname507 -dirName.508 = san_dirname508 -dirName.509 = san_dirname509 -dirName.510 = san_dirname510 -dirName.511 = san_dirname511 -dirName.512 = san_dirname512 -dirName.513 = san_dirname513 -dirName.514 = san_dirname514 -dirName.515 = san_dirname515 -dirName.516 = san_dirname516 -dirName.517 = san_dirname517 -dirName.518 = san_dirname518 -dirName.519 = san_dirname519 -dirName.520 = san_dirname520 -dirName.521 = san_dirname521 -dirName.522 = san_dirname522 -dirName.523 = san_dirname523 -dirName.524 = san_dirname524 -dirName.525 = san_dirname525 -dirName.526 = san_dirname526 -dirName.527 = san_dirname527 -dirName.528 = san_dirname528 -dirName.529 = san_dirname529 -dirName.530 = san_dirname530 -dirName.531 = san_dirname531 -dirName.532 = san_dirname532 -dirName.533 = san_dirname533 -dirName.534 = san_dirname534 -dirName.535 = san_dirname535 -dirName.536 = san_dirname536 -dirName.537 = san_dirname537 -dirName.538 = san_dirname538 -dirName.539 = san_dirname539 -dirName.540 = san_dirname540 -dirName.541 = san_dirname541 -dirName.542 = san_dirname542 -dirName.543 = san_dirname543 -dirName.544 = san_dirname544 -dirName.545 = san_dirname545 -dirName.546 = san_dirname546 -dirName.547 = san_dirname547 -dirName.548 = san_dirname548 -dirName.549 = san_dirname549 -dirName.550 = san_dirname550 -dirName.551 = san_dirname551 -dirName.552 = san_dirname552 -dirName.553 = san_dirname553 -dirName.554 = san_dirname554 -dirName.555 = san_dirname555 -dirName.556 = san_dirname556 -dirName.557 = san_dirname557 -dirName.558 = san_dirname558 -dirName.559 = san_dirname559 -dirName.560 = san_dirname560 -dirName.561 = san_dirname561 -dirName.562 = san_dirname562 -dirName.563 = san_dirname563 -dirName.564 = san_dirname564 -dirName.565 = san_dirname565 -dirName.566 = san_dirname566 -dirName.567 = san_dirname567 -dirName.568 = san_dirname568 -dirName.569 = san_dirname569 -dirName.570 = san_dirname570 -dirName.571 = san_dirname571 -dirName.572 = san_dirname572 -dirName.573 = san_dirname573 -dirName.574 = san_dirname574 -dirName.575 = san_dirname575 -dirName.576 = san_dirname576 -dirName.577 = san_dirname577 -dirName.578 = san_dirname578 -dirName.579 = san_dirname579 -dirName.580 = san_dirname580 -dirName.581 = san_dirname581 -dirName.582 = san_dirname582 -dirName.583 = san_dirname583 -dirName.584 = san_dirname584 -dirName.585 = san_dirname585 -dirName.586 = san_dirname586 -dirName.587 = san_dirname587 -dirName.588 = san_dirname588 -dirName.589 = san_dirname589 -dirName.590 = san_dirname590 -dirName.591 = san_dirname591 -dirName.592 = san_dirname592 -dirName.593 = san_dirname593 -dirName.594 = san_dirname594 -dirName.595 = san_dirname595 -dirName.596 = san_dirname596 -dirName.597 = san_dirname597 -dirName.598 = san_dirname598 -dirName.599 = san_dirname599 -dirName.600 = san_dirname600 -dirName.601 = san_dirname601 -dirName.602 = san_dirname602 -dirName.603 = san_dirname603 -dirName.604 = san_dirname604 -dirName.605 = san_dirname605 -dirName.606 = san_dirname606 -dirName.607 = san_dirname607 -dirName.608 = san_dirname608 -dirName.609 = san_dirname609 -dirName.610 = san_dirname610 -dirName.611 = san_dirname611 -dirName.612 = san_dirname612 -dirName.613 = san_dirname613 -dirName.614 = san_dirname614 -dirName.615 = san_dirname615 -dirName.616 = san_dirname616 -dirName.617 = san_dirname617 -dirName.618 = san_dirname618 -dirName.619 = san_dirname619 -dirName.620 = san_dirname620 -dirName.621 = san_dirname621 -dirName.622 = san_dirname622 -dirName.623 = san_dirname623 -dirName.624 = san_dirname624 -dirName.625 = san_dirname625 -dirName.626 = san_dirname626 -dirName.627 = san_dirname627 -dirName.628 = san_dirname628 -dirName.629 = san_dirname629 -dirName.630 = san_dirname630 -dirName.631 = san_dirname631 -dirName.632 = san_dirname632 -dirName.633 = san_dirname633 -dirName.634 = san_dirname634 -dirName.635 = san_dirname635 -dirName.636 = san_dirname636 -dirName.637 = san_dirname637 -dirName.638 = san_dirname638 -dirName.639 = san_dirname639 -dirName.640 = san_dirname640 -dirName.641 = san_dirname641 -dirName.642 = san_dirname642 -dirName.643 = san_dirname643 -dirName.644 = san_dirname644 -dirName.645 = san_dirname645 -dirName.646 = san_dirname646 -dirName.647 = san_dirname647 -dirName.648 = san_dirname648 -dirName.649 = san_dirname649 -dirName.650 = san_dirname650 -dirName.651 = san_dirname651 -dirName.652 = san_dirname652 -dirName.653 = san_dirname653 -dirName.654 = san_dirname654 -dirName.655 = san_dirname655 -dirName.656 = san_dirname656 -dirName.657 = san_dirname657 -dirName.658 = san_dirname658 -dirName.659 = san_dirname659 -dirName.660 = san_dirname660 -dirName.661 = san_dirname661 -dirName.662 = san_dirname662 -dirName.663 = san_dirname663 -dirName.664 = san_dirname664 -dirName.665 = san_dirname665 -dirName.666 = san_dirname666 -dirName.667 = san_dirname667 -dirName.668 = san_dirname668 -dirName.669 = san_dirname669 -dirName.670 = san_dirname670 -dirName.671 = san_dirname671 -dirName.672 = san_dirname672 -dirName.673 = san_dirname673 -dirName.674 = san_dirname674 -dirName.675 = san_dirname675 -dirName.676 = san_dirname676 -dirName.677 = san_dirname677 -dirName.678 = san_dirname678 -dirName.679 = san_dirname679 -dirName.680 = san_dirname680 -dirName.681 = san_dirname681 -dirName.682 = san_dirname682 -dirName.683 = san_dirname683 -dirName.684 = san_dirname684 -dirName.685 = san_dirname685 -dirName.686 = san_dirname686 -dirName.687 = san_dirname687 -dirName.688 = san_dirname688 -dirName.689 = san_dirname689 -dirName.690 = san_dirname690 -dirName.691 = san_dirname691 -dirName.692 = san_dirname692 -dirName.693 = san_dirname693 -dirName.694 = san_dirname694 -dirName.695 = san_dirname695 -dirName.696 = san_dirname696 -dirName.697 = san_dirname697 -dirName.698 = san_dirname698 -dirName.699 = san_dirname699 -dirName.700 = san_dirname700 -dirName.701 = san_dirname701 -dirName.702 = san_dirname702 -dirName.703 = san_dirname703 -dirName.704 = san_dirname704 -dirName.705 = san_dirname705 -dirName.706 = san_dirname706 -dirName.707 = san_dirname707 -dirName.708 = san_dirname708 -dirName.709 = san_dirname709 -dirName.710 = san_dirname710 -dirName.711 = san_dirname711 -dirName.712 = san_dirname712 -dirName.713 = san_dirname713 -dirName.714 = san_dirname714 -dirName.715 = san_dirname715 -dirName.716 = san_dirname716 -dirName.717 = san_dirname717 -dirName.718 = san_dirname718 -dirName.719 = san_dirname719 -dirName.720 = san_dirname720 -dirName.721 = san_dirname721 -dirName.722 = san_dirname722 -dirName.723 = san_dirname723 -dirName.724 = san_dirname724 -dirName.725 = san_dirname725 -dirName.726 = san_dirname726 -dirName.727 = san_dirname727 -dirName.728 = san_dirname728 -dirName.729 = san_dirname729 -dirName.730 = san_dirname730 -dirName.731 = san_dirname731 -dirName.732 = san_dirname732 -dirName.733 = san_dirname733 -dirName.734 = san_dirname734 -dirName.735 = san_dirname735 -dirName.736 = san_dirname736 -dirName.737 = san_dirname737 -dirName.738 = san_dirname738 -dirName.739 = san_dirname739 -dirName.740 = san_dirname740 -dirName.741 = san_dirname741 -dirName.742 = san_dirname742 -dirName.743 = san_dirname743 -dirName.744 = san_dirname744 -dirName.745 = san_dirname745 -dirName.746 = san_dirname746 -dirName.747 = san_dirname747 -dirName.748 = san_dirname748 -dirName.749 = san_dirname749 -dirName.750 = san_dirname750 -dirName.751 = san_dirname751 -dirName.752 = san_dirname752 -dirName.753 = san_dirname753 -dirName.754 = san_dirname754 -dirName.755 = san_dirname755 -dirName.756 = san_dirname756 -dirName.757 = san_dirname757 -dirName.758 = san_dirname758 -dirName.759 = san_dirname759 -dirName.760 = san_dirname760 -dirName.761 = san_dirname761 -dirName.762 = san_dirname762 -dirName.763 = san_dirname763 -dirName.764 = san_dirname764 -dirName.765 = san_dirname765 -dirName.766 = san_dirname766 -dirName.767 = san_dirname767 -dirName.768 = san_dirname768 -dirName.769 = san_dirname769 -dirName.770 = san_dirname770 -dirName.771 = san_dirname771 -dirName.772 = san_dirname772 -dirName.773 = san_dirname773 -dirName.774 = san_dirname774 -dirName.775 = san_dirname775 -dirName.776 = san_dirname776 -dirName.777 = san_dirname777 -dirName.778 = san_dirname778 -dirName.779 = san_dirname779 -dirName.780 = san_dirname780 -dirName.781 = san_dirname781 -dirName.782 = san_dirname782 -dirName.783 = san_dirname783 -dirName.784 = san_dirname784 -dirName.785 = san_dirname785 -dirName.786 = san_dirname786 -dirName.787 = san_dirname787 -dirName.788 = san_dirname788 -dirName.789 = san_dirname789 -dirName.790 = san_dirname790 -dirName.791 = san_dirname791 -dirName.792 = san_dirname792 -dirName.793 = san_dirname793 -dirName.794 = san_dirname794 -dirName.795 = san_dirname795 -dirName.796 = san_dirname796 -dirName.797 = san_dirname797 -dirName.798 = san_dirname798 -dirName.799 = san_dirname799 -dirName.800 = san_dirname800 -dirName.801 = san_dirname801 -dirName.802 = san_dirname802 -dirName.803 = san_dirname803 -dirName.804 = san_dirname804 -dirName.805 = san_dirname805 -dirName.806 = san_dirname806 -dirName.807 = san_dirname807 -dirName.808 = san_dirname808 -dirName.809 = san_dirname809 -dirName.810 = san_dirname810 -dirName.811 = san_dirname811 -dirName.812 = san_dirname812 -dirName.813 = san_dirname813 -dirName.814 = san_dirname814 -dirName.815 = san_dirname815 -dirName.816 = san_dirname816 -dirName.817 = san_dirname817 -dirName.818 = san_dirname818 -dirName.819 = san_dirname819 -dirName.820 = san_dirname820 -dirName.821 = san_dirname821 -dirName.822 = san_dirname822 -dirName.823 = san_dirname823 -dirName.824 = san_dirname824 -dirName.825 = san_dirname825 -dirName.826 = san_dirname826 -dirName.827 = san_dirname827 -dirName.828 = san_dirname828 -dirName.829 = san_dirname829 -dirName.830 = san_dirname830 -dirName.831 = san_dirname831 -dirName.832 = san_dirname832 -dirName.833 = san_dirname833 -dirName.834 = san_dirname834 -dirName.835 = san_dirname835 -dirName.836 = san_dirname836 -dirName.837 = san_dirname837 -dirName.838 = san_dirname838 -dirName.839 = san_dirname839 -dirName.840 = san_dirname840 -dirName.841 = san_dirname841 -dirName.842 = san_dirname842 -dirName.843 = san_dirname843 -dirName.844 = san_dirname844 -dirName.845 = san_dirname845 -dirName.846 = san_dirname846 -dirName.847 = san_dirname847 -dirName.848 = san_dirname848 -dirName.849 = san_dirname849 -dirName.850 = san_dirname850 -dirName.851 = san_dirname851 -dirName.852 = san_dirname852 -dirName.853 = san_dirname853 -dirName.854 = san_dirname854 -dirName.855 = san_dirname855 -dirName.856 = san_dirname856 -dirName.857 = san_dirname857 -dirName.858 = san_dirname858 -dirName.859 = san_dirname859 -dirName.860 = san_dirname860 -dirName.861 = san_dirname861 -dirName.862 = san_dirname862 -dirName.863 = san_dirname863 -dirName.864 = san_dirname864 -dirName.865 = san_dirname865 -dirName.866 = san_dirname866 -dirName.867 = san_dirname867 -dirName.868 = san_dirname868 -dirName.869 = san_dirname869 -dirName.870 = san_dirname870 -dirName.871 = san_dirname871 -dirName.872 = san_dirname872 -dirName.873 = san_dirname873 -dirName.874 = san_dirname874 -dirName.875 = san_dirname875 -dirName.876 = san_dirname876 -dirName.877 = san_dirname877 -dirName.878 = san_dirname878 -dirName.879 = san_dirname879 -dirName.880 = san_dirname880 -dirName.881 = san_dirname881 -dirName.882 = san_dirname882 -dirName.883 = san_dirname883 -dirName.884 = san_dirname884 -dirName.885 = san_dirname885 -dirName.886 = san_dirname886 -dirName.887 = san_dirname887 -dirName.888 = san_dirname888 -dirName.889 = san_dirname889 -dirName.890 = san_dirname890 -dirName.891 = san_dirname891 -dirName.892 = san_dirname892 -dirName.893 = san_dirname893 -dirName.894 = san_dirname894 -dirName.895 = san_dirname895 -dirName.896 = san_dirname896 -dirName.897 = san_dirname897 -dirName.898 = san_dirname898 -dirName.899 = san_dirname899 -dirName.900 = san_dirname900 -dirName.901 = san_dirname901 -dirName.902 = san_dirname902 -dirName.903 = san_dirname903 -dirName.904 = san_dirname904 -dirName.905 = san_dirname905 -dirName.906 = san_dirname906 -dirName.907 = san_dirname907 -dirName.908 = san_dirname908 -dirName.909 = san_dirname909 -dirName.910 = san_dirname910 -dirName.911 = san_dirname911 -dirName.912 = san_dirname912 -dirName.913 = san_dirname913 -dirName.914 = san_dirname914 -dirName.915 = san_dirname915 -dirName.916 = san_dirname916 -dirName.917 = san_dirname917 -dirName.918 = san_dirname918 -dirName.919 = san_dirname919 -dirName.920 = san_dirname920 -dirName.921 = san_dirname921 -dirName.922 = san_dirname922 -dirName.923 = san_dirname923 -dirName.924 = san_dirname924 -dirName.925 = san_dirname925 -dirName.926 = san_dirname926 -dirName.927 = san_dirname927 -dirName.928 = san_dirname928 -dirName.929 = san_dirname929 -dirName.930 = san_dirname930 -dirName.931 = san_dirname931 -dirName.932 = san_dirname932 -dirName.933 = san_dirname933 -dirName.934 = san_dirname934 -dirName.935 = san_dirname935 -dirName.936 = san_dirname936 -dirName.937 = san_dirname937 -dirName.938 = san_dirname938 -dirName.939 = san_dirname939 -dirName.940 = san_dirname940 -dirName.941 = san_dirname941 -dirName.942 = san_dirname942 -dirName.943 = san_dirname943 -dirName.944 = san_dirname944 -dirName.945 = san_dirname945 -dirName.946 = san_dirname946 -dirName.947 = san_dirname947 -dirName.948 = san_dirname948 -dirName.949 = san_dirname949 -dirName.950 = san_dirname950 -dirName.951 = san_dirname951 -dirName.952 = san_dirname952 -dirName.953 = san_dirname953 -dirName.954 = san_dirname954 -dirName.955 = san_dirname955 -dirName.956 = san_dirname956 -dirName.957 = san_dirname957 -dirName.958 = san_dirname958 -dirName.959 = san_dirname959 -dirName.960 = san_dirname960 -dirName.961 = san_dirname961 -dirName.962 = san_dirname962 -dirName.963 = san_dirname963 -dirName.964 = san_dirname964 -dirName.965 = san_dirname965 -dirName.966 = san_dirname966 -dirName.967 = san_dirname967 -dirName.968 = san_dirname968 -dirName.969 = san_dirname969 -dirName.970 = san_dirname970 -dirName.971 = san_dirname971 -dirName.972 = san_dirname972 -dirName.973 = san_dirname973 -dirName.974 = san_dirname974 -dirName.975 = san_dirname975 -dirName.976 = san_dirname976 -dirName.977 = san_dirname977 -dirName.978 = san_dirname978 -dirName.979 = san_dirname979 -dirName.980 = san_dirname980 -dirName.981 = san_dirname981 -dirName.982 = san_dirname982 -dirName.983 = san_dirname983 -dirName.984 = san_dirname984 -dirName.985 = san_dirname985 -dirName.986 = san_dirname986 -dirName.987 = san_dirname987 -dirName.988 = san_dirname988 -dirName.989 = san_dirname989 -dirName.990 = san_dirname990 -dirName.991 = san_dirname991 -dirName.992 = san_dirname992 -dirName.993 = san_dirname993 -dirName.994 = san_dirname994 -dirName.995 = san_dirname995 -dirName.996 = san_dirname996 -dirName.997 = san_dirname997 -dirName.998 = san_dirname998 -dirName.999 = san_dirname999 -dirName.1000 = san_dirname1000 -dirName.1001 = san_dirname1001 -dirName.1002 = san_dirname1002 -dirName.1003 = san_dirname1003 -dirName.1004 = san_dirname1004 -dirName.1005 = san_dirname1005 -dirName.1006 = san_dirname1006 -dirName.1007 = san_dirname1007 -dirName.1008 = san_dirname1008 -dirName.1009 = san_dirname1009 -dirName.1010 = san_dirname1010 -dirName.1011 = san_dirname1011 -dirName.1012 = san_dirname1012 -dirName.1013 = san_dirname1013 -dirName.1014 = san_dirname1014 -dirName.1015 = san_dirname1015 -dirName.1016 = san_dirname1016 -dirName.1017 = san_dirname1017 -dirName.1018 = san_dirname1018 -dirName.1019 = san_dirname1019 -dirName.1020 = san_dirname1020 -dirName.1021 = san_dirname1021 -dirName.1022 = san_dirname1022 -dirName.1023 = san_dirname1023 -dirName.1024 = san_dirname1024 - -[san_dirname1] -commonName = "t0 - -[san_dirname2] -commonName = "t1 - -[san_dirname3] -commonName = "t2 - -[san_dirname4] -commonName = "t3 - -[san_dirname5] -commonName = "t4 - -[san_dirname6] -commonName = "t5 - -[san_dirname7] -commonName = "t6 - -[san_dirname8] -commonName = "t7 - -[san_dirname9] -commonName = "t8 - -[san_dirname10] -commonName = "t9 - -[san_dirname11] -commonName = "t10 - -[san_dirname12] -commonName = "t11 - -[san_dirname13] -commonName = "t12 - -[san_dirname14] -commonName = "t13 - -[san_dirname15] -commonName = "t14 - -[san_dirname16] -commonName = "t15 - -[san_dirname17] -commonName = "t16 - -[san_dirname18] -commonName = "t17 - -[san_dirname19] -commonName = "t18 - -[san_dirname20] -commonName = "t19 - -[san_dirname21] -commonName = "t20 - -[san_dirname22] -commonName = "t21 - -[san_dirname23] -commonName = "t22 - -[san_dirname24] -commonName = "t23 - -[san_dirname25] -commonName = "t24 - -[san_dirname26] -commonName = "t25 - -[san_dirname27] -commonName = "t26 - -[san_dirname28] -commonName = "t27 - -[san_dirname29] -commonName = "t28 - -[san_dirname30] -commonName = "t29 - -[san_dirname31] -commonName = "t30 - -[san_dirname32] -commonName = "t31 - -[san_dirname33] -commonName = "t32 - -[san_dirname34] -commonName = "t33 - -[san_dirname35] -commonName = "t34 - -[san_dirname36] -commonName = "t35 - -[san_dirname37] -commonName = "t36 - -[san_dirname38] -commonName = "t37 - -[san_dirname39] -commonName = "t38 - -[san_dirname40] -commonName = "t39 - -[san_dirname41] -commonName = "t40 - -[san_dirname42] -commonName = "t41 - -[san_dirname43] -commonName = "t42 - -[san_dirname44] -commonName = "t43 - -[san_dirname45] -commonName = "t44 - -[san_dirname46] -commonName = "t45 - -[san_dirname47] -commonName = "t46 - -[san_dirname48] -commonName = "t47 - -[san_dirname49] -commonName = "t48 - -[san_dirname50] -commonName = "t49 - -[san_dirname51] -commonName = "t50 - -[san_dirname52] -commonName = "t51 - -[san_dirname53] -commonName = "t52 - -[san_dirname54] -commonName = "t53 - -[san_dirname55] -commonName = "t54 - -[san_dirname56] -commonName = "t55 - -[san_dirname57] -commonName = "t56 - -[san_dirname58] -commonName = "t57 - -[san_dirname59] -commonName = "t58 - -[san_dirname60] -commonName = "t59 - -[san_dirname61] -commonName = "t60 - -[san_dirname62] -commonName = "t61 - -[san_dirname63] -commonName = "t62 - -[san_dirname64] -commonName = "t63 - -[san_dirname65] -commonName = "t64 - -[san_dirname66] -commonName = "t65 - -[san_dirname67] -commonName = "t66 - -[san_dirname68] -commonName = "t67 - -[san_dirname69] -commonName = "t68 - -[san_dirname70] -commonName = "t69 - -[san_dirname71] -commonName = "t70 - -[san_dirname72] -commonName = "t71 - -[san_dirname73] -commonName = "t72 - -[san_dirname74] -commonName = "t73 - -[san_dirname75] -commonName = "t74 - -[san_dirname76] -commonName = "t75 - -[san_dirname77] -commonName = "t76 - -[san_dirname78] -commonName = "t77 - -[san_dirname79] -commonName = "t78 - -[san_dirname80] -commonName = "t79 - -[san_dirname81] -commonName = "t80 - -[san_dirname82] -commonName = "t81 - -[san_dirname83] -commonName = "t82 - -[san_dirname84] -commonName = "t83 - -[san_dirname85] -commonName = "t84 - -[san_dirname86] -commonName = "t85 - -[san_dirname87] -commonName = "t86 - -[san_dirname88] -commonName = "t87 - -[san_dirname89] -commonName = "t88 - -[san_dirname90] -commonName = "t89 - -[san_dirname91] -commonName = "t90 - -[san_dirname92] -commonName = "t91 - -[san_dirname93] -commonName = "t92 - -[san_dirname94] -commonName = "t93 - -[san_dirname95] -commonName = "t94 - -[san_dirname96] -commonName = "t95 - -[san_dirname97] -commonName = "t96 - -[san_dirname98] -commonName = "t97 - -[san_dirname99] -commonName = "t98 - -[san_dirname100] -commonName = "t99 - -[san_dirname101] -commonName = "t100 - -[san_dirname102] -commonName = "t101 - -[san_dirname103] -commonName = "t102 - -[san_dirname104] -commonName = "t103 - -[san_dirname105] -commonName = "t104 - -[san_dirname106] -commonName = "t105 - -[san_dirname107] -commonName = "t106 - -[san_dirname108] -commonName = "t107 - -[san_dirname109] -commonName = "t108 - -[san_dirname110] -commonName = "t109 - -[san_dirname111] -commonName = "t110 - -[san_dirname112] -commonName = "t111 - -[san_dirname113] -commonName = "t112 - -[san_dirname114] -commonName = "t113 - -[san_dirname115] -commonName = "t114 - -[san_dirname116] -commonName = "t115 - -[san_dirname117] -commonName = "t116 - -[san_dirname118] -commonName = "t117 - -[san_dirname119] -commonName = "t118 - -[san_dirname120] -commonName = "t119 - -[san_dirname121] -commonName = "t120 - -[san_dirname122] -commonName = "t121 - -[san_dirname123] -commonName = "t122 - -[san_dirname124] -commonName = "t123 - -[san_dirname125] -commonName = "t124 - -[san_dirname126] -commonName = "t125 - -[san_dirname127] -commonName = "t126 - -[san_dirname128] -commonName = "t127 - -[san_dirname129] -commonName = "t128 - -[san_dirname130] -commonName = "t129 - -[san_dirname131] -commonName = "t130 - -[san_dirname132] -commonName = "t131 - -[san_dirname133] -commonName = "t132 - -[san_dirname134] -commonName = "t133 - -[san_dirname135] -commonName = "t134 - -[san_dirname136] -commonName = "t135 - -[san_dirname137] -commonName = "t136 - -[san_dirname138] -commonName = "t137 - -[san_dirname139] -commonName = "t138 - -[san_dirname140] -commonName = "t139 - -[san_dirname141] -commonName = "t140 - -[san_dirname142] -commonName = "t141 - -[san_dirname143] -commonName = "t142 - -[san_dirname144] -commonName = "t143 - -[san_dirname145] -commonName = "t144 - -[san_dirname146] -commonName = "t145 - -[san_dirname147] -commonName = "t146 - -[san_dirname148] -commonName = "t147 - -[san_dirname149] -commonName = "t148 - -[san_dirname150] -commonName = "t149 - -[san_dirname151] -commonName = "t150 - -[san_dirname152] -commonName = "t151 - -[san_dirname153] -commonName = "t152 - -[san_dirname154] -commonName = "t153 - -[san_dirname155] -commonName = "t154 - -[san_dirname156] -commonName = "t155 - -[san_dirname157] -commonName = "t156 - -[san_dirname158] -commonName = "t157 - -[san_dirname159] -commonName = "t158 - -[san_dirname160] -commonName = "t159 - -[san_dirname161] -commonName = "t160 - -[san_dirname162] -commonName = "t161 - -[san_dirname163] -commonName = "t162 - -[san_dirname164] -commonName = "t163 - -[san_dirname165] -commonName = "t164 - -[san_dirname166] -commonName = "t165 - -[san_dirname167] -commonName = "t166 - -[san_dirname168] -commonName = "t167 - -[san_dirname169] -commonName = "t168 - -[san_dirname170] -commonName = "t169 - -[san_dirname171] -commonName = "t170 - -[san_dirname172] -commonName = "t171 - -[san_dirname173] -commonName = "t172 - -[san_dirname174] -commonName = "t173 - -[san_dirname175] -commonName = "t174 - -[san_dirname176] -commonName = "t175 - -[san_dirname177] -commonName = "t176 - -[san_dirname178] -commonName = "t177 - -[san_dirname179] -commonName = "t178 - -[san_dirname180] -commonName = "t179 - -[san_dirname181] -commonName = "t180 - -[san_dirname182] -commonName = "t181 - -[san_dirname183] -commonName = "t182 - -[san_dirname184] -commonName = "t183 - -[san_dirname185] -commonName = "t184 - -[san_dirname186] -commonName = "t185 - -[san_dirname187] -commonName = "t186 - -[san_dirname188] -commonName = "t187 - -[san_dirname189] -commonName = "t188 - -[san_dirname190] -commonName = "t189 - -[san_dirname191] -commonName = "t190 - -[san_dirname192] -commonName = "t191 - -[san_dirname193] -commonName = "t192 - -[san_dirname194] -commonName = "t193 - -[san_dirname195] -commonName = "t194 - -[san_dirname196] -commonName = "t195 - -[san_dirname197] -commonName = "t196 - -[san_dirname198] -commonName = "t197 - -[san_dirname199] -commonName = "t198 - -[san_dirname200] -commonName = "t199 - -[san_dirname201] -commonName = "t200 - -[san_dirname202] -commonName = "t201 - -[san_dirname203] -commonName = "t202 - -[san_dirname204] -commonName = "t203 - -[san_dirname205] -commonName = "t204 - -[san_dirname206] -commonName = "t205 - -[san_dirname207] -commonName = "t206 - -[san_dirname208] -commonName = "t207 - -[san_dirname209] -commonName = "t208 - -[san_dirname210] -commonName = "t209 - -[san_dirname211] -commonName = "t210 - -[san_dirname212] -commonName = "t211 - -[san_dirname213] -commonName = "t212 - -[san_dirname214] -commonName = "t213 - -[san_dirname215] -commonName = "t214 - -[san_dirname216] -commonName = "t215 - -[san_dirname217] -commonName = "t216 - -[san_dirname218] -commonName = "t217 - -[san_dirname219] -commonName = "t218 - -[san_dirname220] -commonName = "t219 - -[san_dirname221] -commonName = "t220 - -[san_dirname222] -commonName = "t221 - -[san_dirname223] -commonName = "t222 - -[san_dirname224] -commonName = "t223 - -[san_dirname225] -commonName = "t224 - -[san_dirname226] -commonName = "t225 - -[san_dirname227] -commonName = "t226 - -[san_dirname228] -commonName = "t227 - -[san_dirname229] -commonName = "t228 - -[san_dirname230] -commonName = "t229 - -[san_dirname231] -commonName = "t230 - -[san_dirname232] -commonName = "t231 - -[san_dirname233] -commonName = "t232 - -[san_dirname234] -commonName = "t233 - -[san_dirname235] -commonName = "t234 - -[san_dirname236] -commonName = "t235 - -[san_dirname237] -commonName = "t236 - -[san_dirname238] -commonName = "t237 - -[san_dirname239] -commonName = "t238 - -[san_dirname240] -commonName = "t239 - -[san_dirname241] -commonName = "t240 - -[san_dirname242] -commonName = "t241 - -[san_dirname243] -commonName = "t242 - -[san_dirname244] -commonName = "t243 - -[san_dirname245] -commonName = "t244 - -[san_dirname246] -commonName = "t245 - -[san_dirname247] -commonName = "t246 - -[san_dirname248] -commonName = "t247 - -[san_dirname249] -commonName = "t248 - -[san_dirname250] -commonName = "t249 - -[san_dirname251] -commonName = "t250 - -[san_dirname252] -commonName = "t251 - -[san_dirname253] -commonName = "t252 - -[san_dirname254] -commonName = "t253 - -[san_dirname255] -commonName = "t254 - -[san_dirname256] -commonName = "t255 - -[san_dirname257] -commonName = "t256 - -[san_dirname258] -commonName = "t257 - -[san_dirname259] -commonName = "t258 - -[san_dirname260] -commonName = "t259 - -[san_dirname261] -commonName = "t260 - -[san_dirname262] -commonName = "t261 - -[san_dirname263] -commonName = "t262 - -[san_dirname264] -commonName = "t263 - -[san_dirname265] -commonName = "t264 - -[san_dirname266] -commonName = "t265 - -[san_dirname267] -commonName = "t266 - -[san_dirname268] -commonName = "t267 - -[san_dirname269] -commonName = "t268 - -[san_dirname270] -commonName = "t269 - -[san_dirname271] -commonName = "t270 - -[san_dirname272] -commonName = "t271 - -[san_dirname273] -commonName = "t272 - -[san_dirname274] -commonName = "t273 - -[san_dirname275] -commonName = "t274 - -[san_dirname276] -commonName = "t275 - -[san_dirname277] -commonName = "t276 - -[san_dirname278] -commonName = "t277 - -[san_dirname279] -commonName = "t278 - -[san_dirname280] -commonName = "t279 - -[san_dirname281] -commonName = "t280 - -[san_dirname282] -commonName = "t281 - -[san_dirname283] -commonName = "t282 - -[san_dirname284] -commonName = "t283 - -[san_dirname285] -commonName = "t284 - -[san_dirname286] -commonName = "t285 - -[san_dirname287] -commonName = "t286 - -[san_dirname288] -commonName = "t287 - -[san_dirname289] -commonName = "t288 - -[san_dirname290] -commonName = "t289 - -[san_dirname291] -commonName = "t290 - -[san_dirname292] -commonName = "t291 - -[san_dirname293] -commonName = "t292 - -[san_dirname294] -commonName = "t293 - -[san_dirname295] -commonName = "t294 - -[san_dirname296] -commonName = "t295 - -[san_dirname297] -commonName = "t296 - -[san_dirname298] -commonName = "t297 - -[san_dirname299] -commonName = "t298 - -[san_dirname300] -commonName = "t299 - -[san_dirname301] -commonName = "t300 - -[san_dirname302] -commonName = "t301 - -[san_dirname303] -commonName = "t302 - -[san_dirname304] -commonName = "t303 - -[san_dirname305] -commonName = "t304 - -[san_dirname306] -commonName = "t305 - -[san_dirname307] -commonName = "t306 - -[san_dirname308] -commonName = "t307 - -[san_dirname309] -commonName = "t308 - -[san_dirname310] -commonName = "t309 - -[san_dirname311] -commonName = "t310 - -[san_dirname312] -commonName = "t311 - -[san_dirname313] -commonName = "t312 - -[san_dirname314] -commonName = "t313 - -[san_dirname315] -commonName = "t314 - -[san_dirname316] -commonName = "t315 - -[san_dirname317] -commonName = "t316 - -[san_dirname318] -commonName = "t317 - -[san_dirname319] -commonName = "t318 - -[san_dirname320] -commonName = "t319 - -[san_dirname321] -commonName = "t320 - -[san_dirname322] -commonName = "t321 - -[san_dirname323] -commonName = "t322 - -[san_dirname324] -commonName = "t323 - -[san_dirname325] -commonName = "t324 - -[san_dirname326] -commonName = "t325 - -[san_dirname327] -commonName = "t326 - -[san_dirname328] -commonName = "t327 - -[san_dirname329] -commonName = "t328 - -[san_dirname330] -commonName = "t329 - -[san_dirname331] -commonName = "t330 - -[san_dirname332] -commonName = "t331 - -[san_dirname333] -commonName = "t332 - -[san_dirname334] -commonName = "t333 - -[san_dirname335] -commonName = "t334 - -[san_dirname336] -commonName = "t335 - -[san_dirname337] -commonName = "t336 - -[san_dirname338] -commonName = "t337 - -[san_dirname339] -commonName = "t338 - -[san_dirname340] -commonName = "t339 - -[san_dirname341] -commonName = "t340 - -[san_dirname342] -commonName = "t341 - -[san_dirname343] -commonName = "t342 - -[san_dirname344] -commonName = "t343 - -[san_dirname345] -commonName = "t344 - -[san_dirname346] -commonName = "t345 - -[san_dirname347] -commonName = "t346 - -[san_dirname348] -commonName = "t347 - -[san_dirname349] -commonName = "t348 - -[san_dirname350] -commonName = "t349 - -[san_dirname351] -commonName = "t350 - -[san_dirname352] -commonName = "t351 - -[san_dirname353] -commonName = "t352 - -[san_dirname354] -commonName = "t353 - -[san_dirname355] -commonName = "t354 - -[san_dirname356] -commonName = "t355 - -[san_dirname357] -commonName = "t356 - -[san_dirname358] -commonName = "t357 - -[san_dirname359] -commonName = "t358 - -[san_dirname360] -commonName = "t359 - -[san_dirname361] -commonName = "t360 - -[san_dirname362] -commonName = "t361 - -[san_dirname363] -commonName = "t362 - -[san_dirname364] -commonName = "t363 - -[san_dirname365] -commonName = "t364 - -[san_dirname366] -commonName = "t365 - -[san_dirname367] -commonName = "t366 - -[san_dirname368] -commonName = "t367 - -[san_dirname369] -commonName = "t368 - -[san_dirname370] -commonName = "t369 - -[san_dirname371] -commonName = "t370 - -[san_dirname372] -commonName = "t371 - -[san_dirname373] -commonName = "t372 - -[san_dirname374] -commonName = "t373 - -[san_dirname375] -commonName = "t374 - -[san_dirname376] -commonName = "t375 - -[san_dirname377] -commonName = "t376 - -[san_dirname378] -commonName = "t377 - -[san_dirname379] -commonName = "t378 - -[san_dirname380] -commonName = "t379 - -[san_dirname381] -commonName = "t380 - -[san_dirname382] -commonName = "t381 - -[san_dirname383] -commonName = "t382 - -[san_dirname384] -commonName = "t383 - -[san_dirname385] -commonName = "t384 - -[san_dirname386] -commonName = "t385 - -[san_dirname387] -commonName = "t386 - -[san_dirname388] -commonName = "t387 - -[san_dirname389] -commonName = "t388 - -[san_dirname390] -commonName = "t389 - -[san_dirname391] -commonName = "t390 - -[san_dirname392] -commonName = "t391 - -[san_dirname393] -commonName = "t392 - -[san_dirname394] -commonName = "t393 - -[san_dirname395] -commonName = "t394 - -[san_dirname396] -commonName = "t395 - -[san_dirname397] -commonName = "t396 - -[san_dirname398] -commonName = "t397 - -[san_dirname399] -commonName = "t398 - -[san_dirname400] -commonName = "t399 - -[san_dirname401] -commonName = "t400 - -[san_dirname402] -commonName = "t401 - -[san_dirname403] -commonName = "t402 - -[san_dirname404] -commonName = "t403 - -[san_dirname405] -commonName = "t404 - -[san_dirname406] -commonName = "t405 - -[san_dirname407] -commonName = "t406 - -[san_dirname408] -commonName = "t407 - -[san_dirname409] -commonName = "t408 - -[san_dirname410] -commonName = "t409 - -[san_dirname411] -commonName = "t410 - -[san_dirname412] -commonName = "t411 - -[san_dirname413] -commonName = "t412 - -[san_dirname414] -commonName = "t413 - -[san_dirname415] -commonName = "t414 - -[san_dirname416] -commonName = "t415 - -[san_dirname417] -commonName = "t416 - -[san_dirname418] -commonName = "t417 - -[san_dirname419] -commonName = "t418 - -[san_dirname420] -commonName = "t419 - -[san_dirname421] -commonName = "t420 - -[san_dirname422] -commonName = "t421 - -[san_dirname423] -commonName = "t422 - -[san_dirname424] -commonName = "t423 - -[san_dirname425] -commonName = "t424 - -[san_dirname426] -commonName = "t425 - -[san_dirname427] -commonName = "t426 - -[san_dirname428] -commonName = "t427 - -[san_dirname429] -commonName = "t428 - -[san_dirname430] -commonName = "t429 - -[san_dirname431] -commonName = "t430 - -[san_dirname432] -commonName = "t431 - -[san_dirname433] -commonName = "t432 - -[san_dirname434] -commonName = "t433 - -[san_dirname435] -commonName = "t434 - -[san_dirname436] -commonName = "t435 - -[san_dirname437] -commonName = "t436 - -[san_dirname438] -commonName = "t437 - -[san_dirname439] -commonName = "t438 - -[san_dirname440] -commonName = "t439 - -[san_dirname441] -commonName = "t440 - -[san_dirname442] -commonName = "t441 - -[san_dirname443] -commonName = "t442 - -[san_dirname444] -commonName = "t443 - -[san_dirname445] -commonName = "t444 - -[san_dirname446] -commonName = "t445 - -[san_dirname447] -commonName = "t446 - -[san_dirname448] -commonName = "t447 - -[san_dirname449] -commonName = "t448 - -[san_dirname450] -commonName = "t449 - -[san_dirname451] -commonName = "t450 - -[san_dirname452] -commonName = "t451 - -[san_dirname453] -commonName = "t452 - -[san_dirname454] -commonName = "t453 - -[san_dirname455] -commonName = "t454 - -[san_dirname456] -commonName = "t455 - -[san_dirname457] -commonName = "t456 - -[san_dirname458] -commonName = "t457 - -[san_dirname459] -commonName = "t458 - -[san_dirname460] -commonName = "t459 - -[san_dirname461] -commonName = "t460 - -[san_dirname462] -commonName = "t461 - -[san_dirname463] -commonName = "t462 - -[san_dirname464] -commonName = "t463 - -[san_dirname465] -commonName = "t464 - -[san_dirname466] -commonName = "t465 - -[san_dirname467] -commonName = "t466 - -[san_dirname468] -commonName = "t467 - -[san_dirname469] -commonName = "t468 - -[san_dirname470] -commonName = "t469 - -[san_dirname471] -commonName = "t470 - -[san_dirname472] -commonName = "t471 - -[san_dirname473] -commonName = "t472 - -[san_dirname474] -commonName = "t473 - -[san_dirname475] -commonName = "t474 - -[san_dirname476] -commonName = "t475 - -[san_dirname477] -commonName = "t476 - -[san_dirname478] -commonName = "t477 - -[san_dirname479] -commonName = "t478 - -[san_dirname480] -commonName = "t479 - -[san_dirname481] -commonName = "t480 - -[san_dirname482] -commonName = "t481 - -[san_dirname483] -commonName = "t482 - -[san_dirname484] -commonName = "t483 - -[san_dirname485] -commonName = "t484 - -[san_dirname486] -commonName = "t485 - -[san_dirname487] -commonName = "t486 - -[san_dirname488] -commonName = "t487 - -[san_dirname489] -commonName = "t488 - -[san_dirname490] -commonName = "t489 - -[san_dirname491] -commonName = "t490 - -[san_dirname492] -commonName = "t491 - -[san_dirname493] -commonName = "t492 - -[san_dirname494] -commonName = "t493 - -[san_dirname495] -commonName = "t494 - -[san_dirname496] -commonName = "t495 - -[san_dirname497] -commonName = "t496 - -[san_dirname498] -commonName = "t497 - -[san_dirname499] -commonName = "t498 - -[san_dirname500] -commonName = "t499 - -[san_dirname501] -commonName = "t500 - -[san_dirname502] -commonName = "t501 - -[san_dirname503] -commonName = "t502 - -[san_dirname504] -commonName = "t503 - -[san_dirname505] -commonName = "t504 - -[san_dirname506] -commonName = "t505 - -[san_dirname507] -commonName = "t506 - -[san_dirname508] -commonName = "t507 - -[san_dirname509] -commonName = "t508 - -[san_dirname510] -commonName = "t509 - -[san_dirname511] -commonName = "t510 - -[san_dirname512] -commonName = "t511 - -[san_dirname513] -commonName = "t512 - -[san_dirname514] -commonName = "t513 - -[san_dirname515] -commonName = "t514 - -[san_dirname516] -commonName = "t515 - -[san_dirname517] -commonName = "t516 - -[san_dirname518] -commonName = "t517 - -[san_dirname519] -commonName = "t518 - -[san_dirname520] -commonName = "t519 - -[san_dirname521] -commonName = "t520 - -[san_dirname522] -commonName = "t521 - -[san_dirname523] -commonName = "t522 - -[san_dirname524] -commonName = "t523 - -[san_dirname525] -commonName = "t524 - -[san_dirname526] -commonName = "t525 - -[san_dirname527] -commonName = "t526 - -[san_dirname528] -commonName = "t527 - -[san_dirname529] -commonName = "t528 - -[san_dirname530] -commonName = "t529 - -[san_dirname531] -commonName = "t530 - -[san_dirname532] -commonName = "t531 - -[san_dirname533] -commonName = "t532 - -[san_dirname534] -commonName = "t533 - -[san_dirname535] -commonName = "t534 - -[san_dirname536] -commonName = "t535 - -[san_dirname537] -commonName = "t536 - -[san_dirname538] -commonName = "t537 - -[san_dirname539] -commonName = "t538 - -[san_dirname540] -commonName = "t539 - -[san_dirname541] -commonName = "t540 - -[san_dirname542] -commonName = "t541 - -[san_dirname543] -commonName = "t542 - -[san_dirname544] -commonName = "t543 - -[san_dirname545] -commonName = "t544 - -[san_dirname546] -commonName = "t545 - -[san_dirname547] -commonName = "t546 - -[san_dirname548] -commonName = "t547 - -[san_dirname549] -commonName = "t548 - -[san_dirname550] -commonName = "t549 - -[san_dirname551] -commonName = "t550 - -[san_dirname552] -commonName = "t551 - -[san_dirname553] -commonName = "t552 - -[san_dirname554] -commonName = "t553 - -[san_dirname555] -commonName = "t554 - -[san_dirname556] -commonName = "t555 - -[san_dirname557] -commonName = "t556 - -[san_dirname558] -commonName = "t557 - -[san_dirname559] -commonName = "t558 - -[san_dirname560] -commonName = "t559 - -[san_dirname561] -commonName = "t560 - -[san_dirname562] -commonName = "t561 - -[san_dirname563] -commonName = "t562 - -[san_dirname564] -commonName = "t563 - -[san_dirname565] -commonName = "t564 - -[san_dirname566] -commonName = "t565 - -[san_dirname567] -commonName = "t566 - -[san_dirname568] -commonName = "t567 - -[san_dirname569] -commonName = "t568 - -[san_dirname570] -commonName = "t569 - -[san_dirname571] -commonName = "t570 - -[san_dirname572] -commonName = "t571 - -[san_dirname573] -commonName = "t572 - -[san_dirname574] -commonName = "t573 - -[san_dirname575] -commonName = "t574 - -[san_dirname576] -commonName = "t575 - -[san_dirname577] -commonName = "t576 - -[san_dirname578] -commonName = "t577 - -[san_dirname579] -commonName = "t578 - -[san_dirname580] -commonName = "t579 - -[san_dirname581] -commonName = "t580 - -[san_dirname582] -commonName = "t581 - -[san_dirname583] -commonName = "t582 - -[san_dirname584] -commonName = "t583 - -[san_dirname585] -commonName = "t584 - -[san_dirname586] -commonName = "t585 - -[san_dirname587] -commonName = "t586 - -[san_dirname588] -commonName = "t587 - -[san_dirname589] -commonName = "t588 - -[san_dirname590] -commonName = "t589 - -[san_dirname591] -commonName = "t590 - -[san_dirname592] -commonName = "t591 - -[san_dirname593] -commonName = "t592 - -[san_dirname594] -commonName = "t593 - -[san_dirname595] -commonName = "t594 - -[san_dirname596] -commonName = "t595 - -[san_dirname597] -commonName = "t596 - -[san_dirname598] -commonName = "t597 - -[san_dirname599] -commonName = "t598 - -[san_dirname600] -commonName = "t599 - -[san_dirname601] -commonName = "t600 - -[san_dirname602] -commonName = "t601 - -[san_dirname603] -commonName = "t602 - -[san_dirname604] -commonName = "t603 - -[san_dirname605] -commonName = "t604 - -[san_dirname606] -commonName = "t605 - -[san_dirname607] -commonName = "t606 - -[san_dirname608] -commonName = "t607 - -[san_dirname609] -commonName = "t608 - -[san_dirname610] -commonName = "t609 - -[san_dirname611] -commonName = "t610 - -[san_dirname612] -commonName = "t611 - -[san_dirname613] -commonName = "t612 - -[san_dirname614] -commonName = "t613 - -[san_dirname615] -commonName = "t614 - -[san_dirname616] -commonName = "t615 - -[san_dirname617] -commonName = "t616 - -[san_dirname618] -commonName = "t617 - -[san_dirname619] -commonName = "t618 - -[san_dirname620] -commonName = "t619 - -[san_dirname621] -commonName = "t620 - -[san_dirname622] -commonName = "t621 - -[san_dirname623] -commonName = "t622 - -[san_dirname624] -commonName = "t623 - -[san_dirname625] -commonName = "t624 - -[san_dirname626] -commonName = "t625 - -[san_dirname627] -commonName = "t626 - -[san_dirname628] -commonName = "t627 - -[san_dirname629] -commonName = "t628 - -[san_dirname630] -commonName = "t629 - -[san_dirname631] -commonName = "t630 - -[san_dirname632] -commonName = "t631 - -[san_dirname633] -commonName = "t632 - -[san_dirname634] -commonName = "t633 - -[san_dirname635] -commonName = "t634 - -[san_dirname636] -commonName = "t635 - -[san_dirname637] -commonName = "t636 - -[san_dirname638] -commonName = "t637 - -[san_dirname639] -commonName = "t638 - -[san_dirname640] -commonName = "t639 - -[san_dirname641] -commonName = "t640 - -[san_dirname642] -commonName = "t641 - -[san_dirname643] -commonName = "t642 - -[san_dirname644] -commonName = "t643 - -[san_dirname645] -commonName = "t644 - -[san_dirname646] -commonName = "t645 - -[san_dirname647] -commonName = "t646 - -[san_dirname648] -commonName = "t647 - -[san_dirname649] -commonName = "t648 - -[san_dirname650] -commonName = "t649 - -[san_dirname651] -commonName = "t650 - -[san_dirname652] -commonName = "t651 - -[san_dirname653] -commonName = "t652 - -[san_dirname654] -commonName = "t653 - -[san_dirname655] -commonName = "t654 - -[san_dirname656] -commonName = "t655 - -[san_dirname657] -commonName = "t656 - -[san_dirname658] -commonName = "t657 - -[san_dirname659] -commonName = "t658 - -[san_dirname660] -commonName = "t659 - -[san_dirname661] -commonName = "t660 - -[san_dirname662] -commonName = "t661 - -[san_dirname663] -commonName = "t662 - -[san_dirname664] -commonName = "t663 - -[san_dirname665] -commonName = "t664 - -[san_dirname666] -commonName = "t665 - -[san_dirname667] -commonName = "t666 - -[san_dirname668] -commonName = "t667 - -[san_dirname669] -commonName = "t668 - -[san_dirname670] -commonName = "t669 - -[san_dirname671] -commonName = "t670 - -[san_dirname672] -commonName = "t671 - -[san_dirname673] -commonName = "t672 - -[san_dirname674] -commonName = "t673 - -[san_dirname675] -commonName = "t674 - -[san_dirname676] -commonName = "t675 - -[san_dirname677] -commonName = "t676 - -[san_dirname678] -commonName = "t677 - -[san_dirname679] -commonName = "t678 - -[san_dirname680] -commonName = "t679 - -[san_dirname681] -commonName = "t680 - -[san_dirname682] -commonName = "t681 - -[san_dirname683] -commonName = "t682 - -[san_dirname684] -commonName = "t683 - -[san_dirname685] -commonName = "t684 - -[san_dirname686] -commonName = "t685 - -[san_dirname687] -commonName = "t686 - -[san_dirname688] -commonName = "t687 - -[san_dirname689] -commonName = "t688 - -[san_dirname690] -commonName = "t689 - -[san_dirname691] -commonName = "t690 - -[san_dirname692] -commonName = "t691 - -[san_dirname693] -commonName = "t692 - -[san_dirname694] -commonName = "t693 - -[san_dirname695] -commonName = "t694 - -[san_dirname696] -commonName = "t695 - -[san_dirname697] -commonName = "t696 - -[san_dirname698] -commonName = "t697 - -[san_dirname699] -commonName = "t698 - -[san_dirname700] -commonName = "t699 - -[san_dirname701] -commonName = "t700 - -[san_dirname702] -commonName = "t701 - -[san_dirname703] -commonName = "t702 - -[san_dirname704] -commonName = "t703 - -[san_dirname705] -commonName = "t704 - -[san_dirname706] -commonName = "t705 - -[san_dirname707] -commonName = "t706 - -[san_dirname708] -commonName = "t707 - -[san_dirname709] -commonName = "t708 - -[san_dirname710] -commonName = "t709 - -[san_dirname711] -commonName = "t710 - -[san_dirname712] -commonName = "t711 - -[san_dirname713] -commonName = "t712 - -[san_dirname714] -commonName = "t713 - -[san_dirname715] -commonName = "t714 - -[san_dirname716] -commonName = "t715 - -[san_dirname717] -commonName = "t716 - -[san_dirname718] -commonName = "t717 - -[san_dirname719] -commonName = "t718 - -[san_dirname720] -commonName = "t719 - -[san_dirname721] -commonName = "t720 - -[san_dirname722] -commonName = "t721 - -[san_dirname723] -commonName = "t722 - -[san_dirname724] -commonName = "t723 - -[san_dirname725] -commonName = "t724 - -[san_dirname726] -commonName = "t725 - -[san_dirname727] -commonName = "t726 - -[san_dirname728] -commonName = "t727 - -[san_dirname729] -commonName = "t728 - -[san_dirname730] -commonName = "t729 - -[san_dirname731] -commonName = "t730 - -[san_dirname732] -commonName = "t731 - -[san_dirname733] -commonName = "t732 - -[san_dirname734] -commonName = "t733 - -[san_dirname735] -commonName = "t734 - -[san_dirname736] -commonName = "t735 - -[san_dirname737] -commonName = "t736 - -[san_dirname738] -commonName = "t737 - -[san_dirname739] -commonName = "t738 - -[san_dirname740] -commonName = "t739 - -[san_dirname741] -commonName = "t740 - -[san_dirname742] -commonName = "t741 - -[san_dirname743] -commonName = "t742 - -[san_dirname744] -commonName = "t743 - -[san_dirname745] -commonName = "t744 - -[san_dirname746] -commonName = "t745 - -[san_dirname747] -commonName = "t746 - -[san_dirname748] -commonName = "t747 - -[san_dirname749] -commonName = "t748 - -[san_dirname750] -commonName = "t749 - -[san_dirname751] -commonName = "t750 - -[san_dirname752] -commonName = "t751 - -[san_dirname753] -commonName = "t752 - -[san_dirname754] -commonName = "t753 - -[san_dirname755] -commonName = "t754 - -[san_dirname756] -commonName = "t755 - -[san_dirname757] -commonName = "t756 - -[san_dirname758] -commonName = "t757 - -[san_dirname759] -commonName = "t758 - -[san_dirname760] -commonName = "t759 - -[san_dirname761] -commonName = "t760 - -[san_dirname762] -commonName = "t761 - -[san_dirname763] -commonName = "t762 - -[san_dirname764] -commonName = "t763 - -[san_dirname765] -commonName = "t764 - -[san_dirname766] -commonName = "t765 - -[san_dirname767] -commonName = "t766 - -[san_dirname768] -commonName = "t767 - -[san_dirname769] -commonName = "t768 - -[san_dirname770] -commonName = "t769 - -[san_dirname771] -commonName = "t770 - -[san_dirname772] -commonName = "t771 - -[san_dirname773] -commonName = "t772 - -[san_dirname774] -commonName = "t773 - -[san_dirname775] -commonName = "t774 - -[san_dirname776] -commonName = "t775 - -[san_dirname777] -commonName = "t776 - -[san_dirname778] -commonName = "t777 - -[san_dirname779] -commonName = "t778 - -[san_dirname780] -commonName = "t779 - -[san_dirname781] -commonName = "t780 - -[san_dirname782] -commonName = "t781 - -[san_dirname783] -commonName = "t782 - -[san_dirname784] -commonName = "t783 - -[san_dirname785] -commonName = "t784 - -[san_dirname786] -commonName = "t785 - -[san_dirname787] -commonName = "t786 - -[san_dirname788] -commonName = "t787 - -[san_dirname789] -commonName = "t788 - -[san_dirname790] -commonName = "t789 - -[san_dirname791] -commonName = "t790 - -[san_dirname792] -commonName = "t791 - -[san_dirname793] -commonName = "t792 - -[san_dirname794] -commonName = "t793 - -[san_dirname795] -commonName = "t794 - -[san_dirname796] -commonName = "t795 - -[san_dirname797] -commonName = "t796 - -[san_dirname798] -commonName = "t797 - -[san_dirname799] -commonName = "t798 - -[san_dirname800] -commonName = "t799 - -[san_dirname801] -commonName = "t800 - -[san_dirname802] -commonName = "t801 - -[san_dirname803] -commonName = "t802 - -[san_dirname804] -commonName = "t803 - -[san_dirname805] -commonName = "t804 - -[san_dirname806] -commonName = "t805 - -[san_dirname807] -commonName = "t806 - -[san_dirname808] -commonName = "t807 - -[san_dirname809] -commonName = "t808 - -[san_dirname810] -commonName = "t809 - -[san_dirname811] -commonName = "t810 - -[san_dirname812] -commonName = "t811 - -[san_dirname813] -commonName = "t812 - -[san_dirname814] -commonName = "t813 - -[san_dirname815] -commonName = "t814 - -[san_dirname816] -commonName = "t815 - -[san_dirname817] -commonName = "t816 - -[san_dirname818] -commonName = "t817 - -[san_dirname819] -commonName = "t818 - -[san_dirname820] -commonName = "t819 - -[san_dirname821] -commonName = "t820 - -[san_dirname822] -commonName = "t821 - -[san_dirname823] -commonName = "t822 - -[san_dirname824] -commonName = "t823 - -[san_dirname825] -commonName = "t824 - -[san_dirname826] -commonName = "t825 - -[san_dirname827] -commonName = "t826 - -[san_dirname828] -commonName = "t827 - -[san_dirname829] -commonName = "t828 - -[san_dirname830] -commonName = "t829 - -[san_dirname831] -commonName = "t830 - -[san_dirname832] -commonName = "t831 - -[san_dirname833] -commonName = "t832 - -[san_dirname834] -commonName = "t833 - -[san_dirname835] -commonName = "t834 - -[san_dirname836] -commonName = "t835 - -[san_dirname837] -commonName = "t836 - -[san_dirname838] -commonName = "t837 - -[san_dirname839] -commonName = "t838 - -[san_dirname840] -commonName = "t839 - -[san_dirname841] -commonName = "t840 - -[san_dirname842] -commonName = "t841 - -[san_dirname843] -commonName = "t842 - -[san_dirname844] -commonName = "t843 - -[san_dirname845] -commonName = "t844 - -[san_dirname846] -commonName = "t845 - -[san_dirname847] -commonName = "t846 - -[san_dirname848] -commonName = "t847 - -[san_dirname849] -commonName = "t848 - -[san_dirname850] -commonName = "t849 - -[san_dirname851] -commonName = "t850 - -[san_dirname852] -commonName = "t851 - -[san_dirname853] -commonName = "t852 - -[san_dirname854] -commonName = "t853 - -[san_dirname855] -commonName = "t854 - -[san_dirname856] -commonName = "t855 - -[san_dirname857] -commonName = "t856 - -[san_dirname858] -commonName = "t857 - -[san_dirname859] -commonName = "t858 - -[san_dirname860] -commonName = "t859 - -[san_dirname861] -commonName = "t860 - -[san_dirname862] -commonName = "t861 - -[san_dirname863] -commonName = "t862 - -[san_dirname864] -commonName = "t863 - -[san_dirname865] -commonName = "t864 - -[san_dirname866] -commonName = "t865 - -[san_dirname867] -commonName = "t866 - -[san_dirname868] -commonName = "t867 - -[san_dirname869] -commonName = "t868 - -[san_dirname870] -commonName = "t869 - -[san_dirname871] -commonName = "t870 - -[san_dirname872] -commonName = "t871 - -[san_dirname873] -commonName = "t872 - -[san_dirname874] -commonName = "t873 - -[san_dirname875] -commonName = "t874 - -[san_dirname876] -commonName = "t875 - -[san_dirname877] -commonName = "t876 - -[san_dirname878] -commonName = "t877 - -[san_dirname879] -commonName = "t878 - -[san_dirname880] -commonName = "t879 - -[san_dirname881] -commonName = "t880 - -[san_dirname882] -commonName = "t881 - -[san_dirname883] -commonName = "t882 - -[san_dirname884] -commonName = "t883 - -[san_dirname885] -commonName = "t884 - -[san_dirname886] -commonName = "t885 - -[san_dirname887] -commonName = "t886 - -[san_dirname888] -commonName = "t887 - -[san_dirname889] -commonName = "t888 - -[san_dirname890] -commonName = "t889 - -[san_dirname891] -commonName = "t890 - -[san_dirname892] -commonName = "t891 - -[san_dirname893] -commonName = "t892 - -[san_dirname894] -commonName = "t893 - -[san_dirname895] -commonName = "t894 - -[san_dirname896] -commonName = "t895 - -[san_dirname897] -commonName = "t896 - -[san_dirname898] -commonName = "t897 - -[san_dirname899] -commonName = "t898 - -[san_dirname900] -commonName = "t899 - -[san_dirname901] -commonName = "t900 - -[san_dirname902] -commonName = "t901 - -[san_dirname903] -commonName = "t902 - -[san_dirname904] -commonName = "t903 - -[san_dirname905] -commonName = "t904 - -[san_dirname906] -commonName = "t905 - -[san_dirname907] -commonName = "t906 - -[san_dirname908] -commonName = "t907 - -[san_dirname909] -commonName = "t908 - -[san_dirname910] -commonName = "t909 - -[san_dirname911] -commonName = "t910 - -[san_dirname912] -commonName = "t911 - -[san_dirname913] -commonName = "t912 - -[san_dirname914] -commonName = "t913 - -[san_dirname915] -commonName = "t914 - -[san_dirname916] -commonName = "t915 - -[san_dirname917] -commonName = "t916 - -[san_dirname918] -commonName = "t917 - -[san_dirname919] -commonName = "t918 - -[san_dirname920] -commonName = "t919 - -[san_dirname921] -commonName = "t920 - -[san_dirname922] -commonName = "t921 - -[san_dirname923] -commonName = "t922 - -[san_dirname924] -commonName = "t923 - -[san_dirname925] -commonName = "t924 - -[san_dirname926] -commonName = "t925 - -[san_dirname927] -commonName = "t926 - -[san_dirname928] -commonName = "t927 - -[san_dirname929] -commonName = "t928 - -[san_dirname930] -commonName = "t929 - -[san_dirname931] -commonName = "t930 - -[san_dirname932] -commonName = "t931 - -[san_dirname933] -commonName = "t932 - -[san_dirname934] -commonName = "t933 - -[san_dirname935] -commonName = "t934 - -[san_dirname936] -commonName = "t935 - -[san_dirname937] -commonName = "t936 - -[san_dirname938] -commonName = "t937 - -[san_dirname939] -commonName = "t938 - -[san_dirname940] -commonName = "t939 - -[san_dirname941] -commonName = "t940 - -[san_dirname942] -commonName = "t941 - -[san_dirname943] -commonName = "t942 - -[san_dirname944] -commonName = "t943 - -[san_dirname945] -commonName = "t944 - -[san_dirname946] -commonName = "t945 - -[san_dirname947] -commonName = "t946 - -[san_dirname948] -commonName = "t947 - -[san_dirname949] -commonName = "t948 - -[san_dirname950] -commonName = "t949 - -[san_dirname951] -commonName = "t950 - -[san_dirname952] -commonName = "t951 - -[san_dirname953] -commonName = "t952 - -[san_dirname954] -commonName = "t953 - -[san_dirname955] -commonName = "t954 - -[san_dirname956] -commonName = "t955 - -[san_dirname957] -commonName = "t956 - -[san_dirname958] -commonName = "t957 - -[san_dirname959] -commonName = "t958 - -[san_dirname960] -commonName = "t959 - -[san_dirname961] -commonName = "t960 - -[san_dirname962] -commonName = "t961 - -[san_dirname963] -commonName = "t962 - -[san_dirname964] -commonName = "t963 - -[san_dirname965] -commonName = "t964 - -[san_dirname966] -commonName = "t965 - -[san_dirname967] -commonName = "t966 - -[san_dirname968] -commonName = "t967 - -[san_dirname969] -commonName = "t968 - -[san_dirname970] -commonName = "t969 - -[san_dirname971] -commonName = "t970 - -[san_dirname972] -commonName = "t971 - -[san_dirname973] -commonName = "t972 - -[san_dirname974] -commonName = "t973 - -[san_dirname975] -commonName = "t974 - -[san_dirname976] -commonName = "t975 - -[san_dirname977] -commonName = "t976 - -[san_dirname978] -commonName = "t977 - -[san_dirname979] -commonName = "t978 - -[san_dirname980] -commonName = "t979 - -[san_dirname981] -commonName = "t980 - -[san_dirname982] -commonName = "t981 - -[san_dirname983] -commonName = "t982 - -[san_dirname984] -commonName = "t983 - -[san_dirname985] -commonName = "t984 - -[san_dirname986] -commonName = "t985 - -[san_dirname987] -commonName = "t986 - -[san_dirname988] -commonName = "t987 - -[san_dirname989] -commonName = "t988 - -[san_dirname990] -commonName = "t989 - -[san_dirname991] -commonName = "t990 - -[san_dirname992] -commonName = "t991 - -[san_dirname993] -commonName = "t992 - -[san_dirname994] -commonName = "t993 - -[san_dirname995] -commonName = "t994 - -[san_dirname996] -commonName = "t995 - -[san_dirname997] -commonName = "t996 - -[san_dirname998] -commonName = "t997 - -[san_dirname999] -commonName = "t998 - -[san_dirname1000] -commonName = "t999 - -[san_dirname1001] -commonName = "t1000 - -[san_dirname1002] -commonName = "t1001 - -[san_dirname1003] -commonName = "t1002 - -[san_dirname1004] -commonName = "t1003 - -[san_dirname1005] -commonName = "t1004 - -[san_dirname1006] -commonName = "t1005 - -[san_dirname1007] -commonName = "t1006 - -[san_dirname1008] -commonName = "t1007 - -[san_dirname1009] -commonName = "t1008 - -[san_dirname1010] -commonName = "t1009 - -[san_dirname1011] -commonName = "t1010 - -[san_dirname1012] -commonName = "t1011 - -[san_dirname1013] -commonName = "t1012 - -[san_dirname1014] -commonName = "t1013 - -[san_dirname1015] -commonName = "t1014 - -[san_dirname1016] -commonName = "t1015 - -[san_dirname1017] -commonName = "t1016 - -[san_dirname1018] -commonName = "t1017 - -[san_dirname1019] -commonName = "t1018 - -[san_dirname1020] -commonName = "t1019 - -[san_dirname1021] -commonName = "t1020 - -[san_dirname1022] -commonName = "t1021 - -[san_dirname1023] -commonName = "t1022 - -[san_dirname1024] -commonName = "t1023 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.csr deleted file mode 100644 index c8b892d0e0..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.csr +++ /dev/null @@ -1,421 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIJOdDCCTVwCAQAwDTELMAkGA1UEAwwCdDAwggEiMA0GCSqGSIb3DQEBAQUAA4IB -DwAwggEKAoIBAQDbLFMBzvkagzZSUSpbQmPeMnURan2woeR3R5tx5aYtZNeuWwTt -ej/H9sorK63NbIiljjb756IitX1UeenVelvKKylsDYQKEMQhtliYuw22DI1WWyyF -WQfKBkY2JRopjsQ5t8Mxzm5JwgHPsDsnQ4rj1QYfLZOd3XpFZW39tLHAEFlC8h6P -zkOslyXBfOJR4UQ1W5SqA27acS8lf1gwAeESFx7yqmwigLHJZep3lbMHxPdyODT+ -oEMzTGZtoeihBLxvFDk5RC44N3TJCiGFkSG3TrqwmUp2mHtYyhzTsEDD2Sp1++sZ -6uMamDFSl+l/pHshfy/cYoaP/f2oiOhLRFK9AgMBAAGggkwgMIJMHAYJKoZIhvcN -AQkOMYJMDTCCTAkwHQYDVR0OBBYEFDu0BcyqulE9/PL5HiVTcuE68prfMA4GA1Ud -DwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgku3BgNV -HREEgkuuMIJLqqQPMA0xCzAJBgNVBAMMAnQwpA8wDTELMAkGA1UEAwwCdDGkDzAN -MQswCQYDVQQDDAJ0MqQPMA0xCzAJBgNVBAMMAnQzpA8wDTELMAkGA1UEAwwCdDSk -DzANMQswCQYDVQQDDAJ0NaQPMA0xCzAJBgNVBAMMAnQ2pA8wDTELMAkGA1UEAwwC -dDekDzANMQswCQYDVQQDDAJ0OKQPMA0xCzAJBgNVBAMMAnQ5pBAwDjEMMAoGA1UE -AwwDdDEwpBAwDjEMMAoGA1UEAwwDdDExpBAwDjEMMAoGA1UEAwwDdDEypBAwDjEM -MAoGA1UEAwwDdDEzpBAwDjEMMAoGA1UEAwwDdDE0pBAwDjEMMAoGA1UEAwwDdDE1 -pBAwDjEMMAoGA1UEAwwDdDE2pBAwDjEMMAoGA1UEAwwDdDE3pBAwDjEMMAoGA1UE -AwwDdDE4pBAwDjEMMAoGA1UEAwwDdDE5pBAwDjEMMAoGA1UEAwwDdDIwpBAwDjEM -MAoGA1UEAwwDdDIxpBAwDjEMMAoGA1UEAwwDdDIypBAwDjEMMAoGA1UEAwwDdDIz -pBAwDjEMMAoGA1UEAwwDdDI0pBAwDjEMMAoGA1UEAwwDdDI1pBAwDjEMMAoGA1UE -AwwDdDI2pBAwDjEMMAoGA1UEAwwDdDI3pBAwDjEMMAoGA1UEAwwDdDI4pBAwDjEM -MAoGA1UEAwwDdDI5pBAwDjEMMAoGA1UEAwwDdDMwpBAwDjEMMAoGA1UEAwwDdDMx -pBAwDjEMMAoGA1UEAwwDdDMypBAwDjEMMAoGA1UEAwwDdDMzpBAwDjEMMAoGA1UE -AwwDdDM0pBAwDjEMMAoGA1UEAwwDdDM1pBAwDjEMMAoGA1UEAwwDdDM2pBAwDjEM -MAoGA1UEAwwDdDM3pBAwDjEMMAoGA1UEAwwDdDM4pBAwDjEMMAoGA1UEAwwDdDM5 -pBAwDjEMMAoGA1UEAwwDdDQwpBAwDjEMMAoGA1UEAwwDdDQxpBAwDjEMMAoGA1UE -AwwDdDQypBAwDjEMMAoGA1UEAwwDdDQzpBAwDjEMMAoGA1UEAwwDdDQ0pBAwDjEM -MAoGA1UEAwwDdDQ1pBAwDjEMMAoGA1UEAwwDdDQ2pBAwDjEMMAoGA1UEAwwDdDQ3 -pBAwDjEMMAoGA1UEAwwDdDQ4pBAwDjEMMAoGA1UEAwwDdDQ5pBAwDjEMMAoGA1UE -AwwDdDUwpBAwDjEMMAoGA1UEAwwDdDUxpBAwDjEMMAoGA1UEAwwDdDUypBAwDjEM -MAoGA1UEAwwDdDUzpBAwDjEMMAoGA1UEAwwDdDU0pBAwDjEMMAoGA1UEAwwDdDU1 -pBAwDjEMMAoGA1UEAwwDdDU2pBAwDjEMMAoGA1UEAwwDdDU3pBAwDjEMMAoGA1UE -AwwDdDU4pBAwDjEMMAoGA1UEAwwDdDU5pBAwDjEMMAoGA1UEAwwDdDYwpBAwDjEM -MAoGA1UEAwwDdDYxpBAwDjEMMAoGA1UEAwwDdDYypBAwDjEMMAoGA1UEAwwDdDYz -pBAwDjEMMAoGA1UEAwwDdDY0pBAwDjEMMAoGA1UEAwwDdDY1pBAwDjEMMAoGA1UE -AwwDdDY2pBAwDjEMMAoGA1UEAwwDdDY3pBAwDjEMMAoGA1UEAwwDdDY4pBAwDjEM -MAoGA1UEAwwDdDY5pBAwDjEMMAoGA1UEAwwDdDcwpBAwDjEMMAoGA1UEAwwDdDcx -pBAwDjEMMAoGA1UEAwwDdDcypBAwDjEMMAoGA1UEAwwDdDczpBAwDjEMMAoGA1UE -AwwDdDc0pBAwDjEMMAoGA1UEAwwDdDc1pBAwDjEMMAoGA1UEAwwDdDc2pBAwDjEM -MAoGA1UEAwwDdDc3pBAwDjEMMAoGA1UEAwwDdDc4pBAwDjEMMAoGA1UEAwwDdDc5 -pBAwDjEMMAoGA1UEAwwDdDgwpBAwDjEMMAoGA1UEAwwDdDgxpBAwDjEMMAoGA1UE -AwwDdDgypBAwDjEMMAoGA1UEAwwDdDgzpBAwDjEMMAoGA1UEAwwDdDg0pBAwDjEM -MAoGA1UEAwwDdDg1pBAwDjEMMAoGA1UEAwwDdDg2pBAwDjEMMAoGA1UEAwwDdDg3 -pBAwDjEMMAoGA1UEAwwDdDg4pBAwDjEMMAoGA1UEAwwDdDg5pBAwDjEMMAoGA1UE -AwwDdDkwpBAwDjEMMAoGA1UEAwwDdDkxpBAwDjEMMAoGA1UEAwwDdDkypBAwDjEM -MAoGA1UEAwwDdDkzpBAwDjEMMAoGA1UEAwwDdDk0pBAwDjEMMAoGA1UEAwwDdDk1 -pBAwDjEMMAoGA1UEAwwDdDk2pBAwDjEMMAoGA1UEAwwDdDk3pBAwDjEMMAoGA1UE -AwwDdDk4pBAwDjEMMAoGA1UEAwwDdDk5pBEwDzENMAsGA1UEAwwEdDEwMKQRMA8x -DTALBgNVBAMMBHQxMDGkETAPMQ0wCwYDVQQDDAR0MTAypBEwDzENMAsGA1UEAwwE -dDEwM6QRMA8xDTALBgNVBAMMBHQxMDSkETAPMQ0wCwYDVQQDDAR0MTA1pBEwDzEN -MAsGA1UEAwwEdDEwNqQRMA8xDTALBgNVBAMMBHQxMDekETAPMQ0wCwYDVQQDDAR0 -MTA4pBEwDzENMAsGA1UEAwwEdDEwOaQRMA8xDTALBgNVBAMMBHQxMTCkETAPMQ0w -CwYDVQQDDAR0MTExpBEwDzENMAsGA1UEAwwEdDExMqQRMA8xDTALBgNVBAMMBHQx -MTOkETAPMQ0wCwYDVQQDDAR0MTE0pBEwDzENMAsGA1UEAwwEdDExNaQRMA8xDTAL -BgNVBAMMBHQxMTakETAPMQ0wCwYDVQQDDAR0MTE3pBEwDzENMAsGA1UEAwwEdDEx -OKQRMA8xDTALBgNVBAMMBHQxMTmkETAPMQ0wCwYDVQQDDAR0MTIwpBEwDzENMAsG -A1UEAwwEdDEyMaQRMA8xDTALBgNVBAMMBHQxMjKkETAPMQ0wCwYDVQQDDAR0MTIz -pBEwDzENMAsGA1UEAwwEdDEyNKQRMA8xDTALBgNVBAMMBHQxMjWkETAPMQ0wCwYD -VQQDDAR0MTI2pBEwDzENMAsGA1UEAwwEdDEyN6QRMA8xDTALBgNVBAMMBHQxMjik -ETAPMQ0wCwYDVQQDDAR0MTI5pBEwDzENMAsGA1UEAwwEdDEzMKQRMA8xDTALBgNV -BAMMBHQxMzGkETAPMQ0wCwYDVQQDDAR0MTMypBEwDzENMAsGA1UEAwwEdDEzM6QR -MA8xDTALBgNVBAMMBHQxMzSkETAPMQ0wCwYDVQQDDAR0MTM1pBEwDzENMAsGA1UE -AwwEdDEzNqQRMA8xDTALBgNVBAMMBHQxMzekETAPMQ0wCwYDVQQDDAR0MTM4pBEw -DzENMAsGA1UEAwwEdDEzOaQRMA8xDTALBgNVBAMMBHQxNDCkETAPMQ0wCwYDVQQD -DAR0MTQxpBEwDzENMAsGA1UEAwwEdDE0MqQRMA8xDTALBgNVBAMMBHQxNDOkETAP -MQ0wCwYDVQQDDAR0MTQ0pBEwDzENMAsGA1UEAwwEdDE0NaQRMA8xDTALBgNVBAMM -BHQxNDakETAPMQ0wCwYDVQQDDAR0MTQ3pBEwDzENMAsGA1UEAwwEdDE0OKQRMA8x -DTALBgNVBAMMBHQxNDmkETAPMQ0wCwYDVQQDDAR0MTUwpBEwDzENMAsGA1UEAwwE -dDE1MaQRMA8xDTALBgNVBAMMBHQxNTKkETAPMQ0wCwYDVQQDDAR0MTUzpBEwDzEN -MAsGA1UEAwwEdDE1NKQRMA8xDTALBgNVBAMMBHQxNTWkETAPMQ0wCwYDVQQDDAR0 -MTU2pBEwDzENMAsGA1UEAwwEdDE1N6QRMA8xDTALBgNVBAMMBHQxNTikETAPMQ0w -CwYDVQQDDAR0MTU5pBEwDzENMAsGA1UEAwwEdDE2MKQRMA8xDTALBgNVBAMMBHQx -NjGkETAPMQ0wCwYDVQQDDAR0MTYypBEwDzENMAsGA1UEAwwEdDE2M6QRMA8xDTAL -BgNVBAMMBHQxNjSkETAPMQ0wCwYDVQQDDAR0MTY1pBEwDzENMAsGA1UEAwwEdDE2 -NqQRMA8xDTALBgNVBAMMBHQxNjekETAPMQ0wCwYDVQQDDAR0MTY4pBEwDzENMAsG -A1UEAwwEdDE2OaQRMA8xDTALBgNVBAMMBHQxNzCkETAPMQ0wCwYDVQQDDAR0MTcx -pBEwDzENMAsGA1UEAwwEdDE3MqQRMA8xDTALBgNVBAMMBHQxNzOkETAPMQ0wCwYD -VQQDDAR0MTc0pBEwDzENMAsGA1UEAwwEdDE3NaQRMA8xDTALBgNVBAMMBHQxNzak -ETAPMQ0wCwYDVQQDDAR0MTc3pBEwDzENMAsGA1UEAwwEdDE3OKQRMA8xDTALBgNV -BAMMBHQxNzmkETAPMQ0wCwYDVQQDDAR0MTgwpBEwDzENMAsGA1UEAwwEdDE4MaQR -MA8xDTALBgNVBAMMBHQxODKkETAPMQ0wCwYDVQQDDAR0MTgzpBEwDzENMAsGA1UE -AwwEdDE4NKQRMA8xDTALBgNVBAMMBHQxODWkETAPMQ0wCwYDVQQDDAR0MTg2pBEw -DzENMAsGA1UEAwwEdDE4N6QRMA8xDTALBgNVBAMMBHQxODikETAPMQ0wCwYDVQQD -DAR0MTg5pBEwDzENMAsGA1UEAwwEdDE5MKQRMA8xDTALBgNVBAMMBHQxOTGkETAP -MQ0wCwYDVQQDDAR0MTkypBEwDzENMAsGA1UEAwwEdDE5M6QRMA8xDTALBgNVBAMM -BHQxOTSkETAPMQ0wCwYDVQQDDAR0MTk1pBEwDzENMAsGA1UEAwwEdDE5NqQRMA8x -DTALBgNVBAMMBHQxOTekETAPMQ0wCwYDVQQDDAR0MTk4pBEwDzENMAsGA1UEAwwE -dDE5OaQRMA8xDTALBgNVBAMMBHQyMDCkETAPMQ0wCwYDVQQDDAR0MjAxpBEwDzEN -MAsGA1UEAwwEdDIwMqQRMA8xDTALBgNVBAMMBHQyMDOkETAPMQ0wCwYDVQQDDAR0 -MjA0pBEwDzENMAsGA1UEAwwEdDIwNaQRMA8xDTALBgNVBAMMBHQyMDakETAPMQ0w -CwYDVQQDDAR0MjA3pBEwDzENMAsGA1UEAwwEdDIwOKQRMA8xDTALBgNVBAMMBHQy -MDmkETAPMQ0wCwYDVQQDDAR0MjEwpBEwDzENMAsGA1UEAwwEdDIxMaQRMA8xDTAL -BgNVBAMMBHQyMTKkETAPMQ0wCwYDVQQDDAR0MjEzpBEwDzENMAsGA1UEAwwEdDIx -NKQRMA8xDTALBgNVBAMMBHQyMTWkETAPMQ0wCwYDVQQDDAR0MjE2pBEwDzENMAsG -A1UEAwwEdDIxN6QRMA8xDTALBgNVBAMMBHQyMTikETAPMQ0wCwYDVQQDDAR0MjE5 -pBEwDzENMAsGA1UEAwwEdDIyMKQRMA8xDTALBgNVBAMMBHQyMjGkETAPMQ0wCwYD -VQQDDAR0MjIypBEwDzENMAsGA1UEAwwEdDIyM6QRMA8xDTALBgNVBAMMBHQyMjSk -ETAPMQ0wCwYDVQQDDAR0MjI1pBEwDzENMAsGA1UEAwwEdDIyNqQRMA8xDTALBgNV -BAMMBHQyMjekETAPMQ0wCwYDVQQDDAR0MjI4pBEwDzENMAsGA1UEAwwEdDIyOaQR -MA8xDTALBgNVBAMMBHQyMzCkETAPMQ0wCwYDVQQDDAR0MjMxpBEwDzENMAsGA1UE -AwwEdDIzMqQRMA8xDTALBgNVBAMMBHQyMzOkETAPMQ0wCwYDVQQDDAR0MjM0pBEw -DzENMAsGA1UEAwwEdDIzNaQRMA8xDTALBgNVBAMMBHQyMzakETAPMQ0wCwYDVQQD -DAR0MjM3pBEwDzENMAsGA1UEAwwEdDIzOKQRMA8xDTALBgNVBAMMBHQyMzmkETAP -MQ0wCwYDVQQDDAR0MjQwpBEwDzENMAsGA1UEAwwEdDI0MaQRMA8xDTALBgNVBAMM -BHQyNDKkETAPMQ0wCwYDVQQDDAR0MjQzpBEwDzENMAsGA1UEAwwEdDI0NKQRMA8x -DTALBgNVBAMMBHQyNDWkETAPMQ0wCwYDVQQDDAR0MjQ2pBEwDzENMAsGA1UEAwwE -dDI0N6QRMA8xDTALBgNVBAMMBHQyNDikETAPMQ0wCwYDVQQDDAR0MjQ5pBEwDzEN -MAsGA1UEAwwEdDI1MKQRMA8xDTALBgNVBAMMBHQyNTGkETAPMQ0wCwYDVQQDDAR0 -MjUypBEwDzENMAsGA1UEAwwEdDI1M6QRMA8xDTALBgNVBAMMBHQyNTSkETAPMQ0w -CwYDVQQDDAR0MjU1pBEwDzENMAsGA1UEAwwEdDI1NqQRMA8xDTALBgNVBAMMBHQy -NTekETAPMQ0wCwYDVQQDDAR0MjU4pBEwDzENMAsGA1UEAwwEdDI1OaQRMA8xDTAL -BgNVBAMMBHQyNjCkETAPMQ0wCwYDVQQDDAR0MjYxpBEwDzENMAsGA1UEAwwEdDI2 -MqQRMA8xDTALBgNVBAMMBHQyNjOkETAPMQ0wCwYDVQQDDAR0MjY0pBEwDzENMAsG -A1UEAwwEdDI2NaQRMA8xDTALBgNVBAMMBHQyNjakETAPMQ0wCwYDVQQDDAR0MjY3 -pBEwDzENMAsGA1UEAwwEdDI2OKQRMA8xDTALBgNVBAMMBHQyNjmkETAPMQ0wCwYD -VQQDDAR0MjcwpBEwDzENMAsGA1UEAwwEdDI3MaQRMA8xDTALBgNVBAMMBHQyNzKk -ETAPMQ0wCwYDVQQDDAR0MjczpBEwDzENMAsGA1UEAwwEdDI3NKQRMA8xDTALBgNV -BAMMBHQyNzWkETAPMQ0wCwYDVQQDDAR0Mjc2pBEwDzENMAsGA1UEAwwEdDI3N6QR -MA8xDTALBgNVBAMMBHQyNzikETAPMQ0wCwYDVQQDDAR0Mjc5pBEwDzENMAsGA1UE -AwwEdDI4MKQRMA8xDTALBgNVBAMMBHQyODGkETAPMQ0wCwYDVQQDDAR0MjgypBEw -DzENMAsGA1UEAwwEdDI4M6QRMA8xDTALBgNVBAMMBHQyODSkETAPMQ0wCwYDVQQD -DAR0Mjg1pBEwDzENMAsGA1UEAwwEdDI4NqQRMA8xDTALBgNVBAMMBHQyODekETAP -MQ0wCwYDVQQDDAR0Mjg4pBEwDzENMAsGA1UEAwwEdDI4OaQRMA8xDTALBgNVBAMM -BHQyOTCkETAPMQ0wCwYDVQQDDAR0MjkxpBEwDzENMAsGA1UEAwwEdDI5MqQRMA8x -DTALBgNVBAMMBHQyOTOkETAPMQ0wCwYDVQQDDAR0Mjk0pBEwDzENMAsGA1UEAwwE -dDI5NaQRMA8xDTALBgNVBAMMBHQyOTakETAPMQ0wCwYDVQQDDAR0Mjk3pBEwDzEN -MAsGA1UEAwwEdDI5OKQRMA8xDTALBgNVBAMMBHQyOTmkETAPMQ0wCwYDVQQDDAR0 -MzAwpBEwDzENMAsGA1UEAwwEdDMwMaQRMA8xDTALBgNVBAMMBHQzMDKkETAPMQ0w -CwYDVQQDDAR0MzAzpBEwDzENMAsGA1UEAwwEdDMwNKQRMA8xDTALBgNVBAMMBHQz -MDWkETAPMQ0wCwYDVQQDDAR0MzA2pBEwDzENMAsGA1UEAwwEdDMwN6QRMA8xDTAL -BgNVBAMMBHQzMDikETAPMQ0wCwYDVQQDDAR0MzA5pBEwDzENMAsGA1UEAwwEdDMx -MKQRMA8xDTALBgNVBAMMBHQzMTGkETAPMQ0wCwYDVQQDDAR0MzEypBEwDzENMAsG -A1UEAwwEdDMxM6QRMA8xDTALBgNVBAMMBHQzMTSkETAPMQ0wCwYDVQQDDAR0MzE1 -pBEwDzENMAsGA1UEAwwEdDMxNqQRMA8xDTALBgNVBAMMBHQzMTekETAPMQ0wCwYD -VQQDDAR0MzE4pBEwDzENMAsGA1UEAwwEdDMxOaQRMA8xDTALBgNVBAMMBHQzMjCk -ETAPMQ0wCwYDVQQDDAR0MzIxpBEwDzENMAsGA1UEAwwEdDMyMqQRMA8xDTALBgNV -BAMMBHQzMjOkETAPMQ0wCwYDVQQDDAR0MzI0pBEwDzENMAsGA1UEAwwEdDMyNaQR -MA8xDTALBgNVBAMMBHQzMjakETAPMQ0wCwYDVQQDDAR0MzI3pBEwDzENMAsGA1UE -AwwEdDMyOKQRMA8xDTALBgNVBAMMBHQzMjmkETAPMQ0wCwYDVQQDDAR0MzMwpBEw -DzENMAsGA1UEAwwEdDMzMaQRMA8xDTALBgNVBAMMBHQzMzKkETAPMQ0wCwYDVQQD -DAR0MzMzpBEwDzENMAsGA1UEAwwEdDMzNKQRMA8xDTALBgNVBAMMBHQzMzWkETAP -MQ0wCwYDVQQDDAR0MzM2pBEwDzENMAsGA1UEAwwEdDMzN6QRMA8xDTALBgNVBAMM -BHQzMzikETAPMQ0wCwYDVQQDDAR0MzM5pBEwDzENMAsGA1UEAwwEdDM0MKQRMA8x -DTALBgNVBAMMBHQzNDGkETAPMQ0wCwYDVQQDDAR0MzQypBEwDzENMAsGA1UEAwwE -dDM0M6QRMA8xDTALBgNVBAMMBHQzNDSkETAPMQ0wCwYDVQQDDAR0MzQ1pBEwDzEN -MAsGA1UEAwwEdDM0NqQRMA8xDTALBgNVBAMMBHQzNDekETAPMQ0wCwYDVQQDDAR0 -MzQ4pBEwDzENMAsGA1UEAwwEdDM0OaQRMA8xDTALBgNVBAMMBHQzNTCkETAPMQ0w -CwYDVQQDDAR0MzUxpBEwDzENMAsGA1UEAwwEdDM1MqQRMA8xDTALBgNVBAMMBHQz -NTOkETAPMQ0wCwYDVQQDDAR0MzU0pBEwDzENMAsGA1UEAwwEdDM1NaQRMA8xDTAL -BgNVBAMMBHQzNTakETAPMQ0wCwYDVQQDDAR0MzU3pBEwDzENMAsGA1UEAwwEdDM1 -OKQRMA8xDTALBgNVBAMMBHQzNTmkETAPMQ0wCwYDVQQDDAR0MzYwpBEwDzENMAsG -A1UEAwwEdDM2MaQRMA8xDTALBgNVBAMMBHQzNjKkETAPMQ0wCwYDVQQDDAR0MzYz -pBEwDzENMAsGA1UEAwwEdDM2NKQRMA8xDTALBgNVBAMMBHQzNjWkETAPMQ0wCwYD -VQQDDAR0MzY2pBEwDzENMAsGA1UEAwwEdDM2N6QRMA8xDTALBgNVBAMMBHQzNjik -ETAPMQ0wCwYDVQQDDAR0MzY5pBEwDzENMAsGA1UEAwwEdDM3MKQRMA8xDTALBgNV -BAMMBHQzNzGkETAPMQ0wCwYDVQQDDAR0MzcypBEwDzENMAsGA1UEAwwEdDM3M6QR -MA8xDTALBgNVBAMMBHQzNzSkETAPMQ0wCwYDVQQDDAR0Mzc1pBEwDzENMAsGA1UE -AwwEdDM3NqQRMA8xDTALBgNVBAMMBHQzNzekETAPMQ0wCwYDVQQDDAR0Mzc4pBEw -DzENMAsGA1UEAwwEdDM3OaQRMA8xDTALBgNVBAMMBHQzODCkETAPMQ0wCwYDVQQD -DAR0MzgxpBEwDzENMAsGA1UEAwwEdDM4MqQRMA8xDTALBgNVBAMMBHQzODOkETAP -MQ0wCwYDVQQDDAR0Mzg0pBEwDzENMAsGA1UEAwwEdDM4NaQRMA8xDTALBgNVBAMM -BHQzODakETAPMQ0wCwYDVQQDDAR0Mzg3pBEwDzENMAsGA1UEAwwEdDM4OKQRMA8x -DTALBgNVBAMMBHQzODmkETAPMQ0wCwYDVQQDDAR0MzkwpBEwDzENMAsGA1UEAwwE -dDM5MaQRMA8xDTALBgNVBAMMBHQzOTKkETAPMQ0wCwYDVQQDDAR0MzkzpBEwDzEN -MAsGA1UEAwwEdDM5NKQRMA8xDTALBgNVBAMMBHQzOTWkETAPMQ0wCwYDVQQDDAR0 -Mzk2pBEwDzENMAsGA1UEAwwEdDM5N6QRMA8xDTALBgNVBAMMBHQzOTikETAPMQ0w -CwYDVQQDDAR0Mzk5pBEwDzENMAsGA1UEAwwEdDQwMKQRMA8xDTALBgNVBAMMBHQ0 -MDGkETAPMQ0wCwYDVQQDDAR0NDAypBEwDzENMAsGA1UEAwwEdDQwM6QRMA8xDTAL -BgNVBAMMBHQ0MDSkETAPMQ0wCwYDVQQDDAR0NDA1pBEwDzENMAsGA1UEAwwEdDQw -NqQRMA8xDTALBgNVBAMMBHQ0MDekETAPMQ0wCwYDVQQDDAR0NDA4pBEwDzENMAsG -A1UEAwwEdDQwOaQRMA8xDTALBgNVBAMMBHQ0MTCkETAPMQ0wCwYDVQQDDAR0NDEx -pBEwDzENMAsGA1UEAwwEdDQxMqQRMA8xDTALBgNVBAMMBHQ0MTOkETAPMQ0wCwYD -VQQDDAR0NDE0pBEwDzENMAsGA1UEAwwEdDQxNaQRMA8xDTALBgNVBAMMBHQ0MTak -ETAPMQ0wCwYDVQQDDAR0NDE3pBEwDzENMAsGA1UEAwwEdDQxOKQRMA8xDTALBgNV -BAMMBHQ0MTmkETAPMQ0wCwYDVQQDDAR0NDIwpBEwDzENMAsGA1UEAwwEdDQyMaQR -MA8xDTALBgNVBAMMBHQ0MjKkETAPMQ0wCwYDVQQDDAR0NDIzpBEwDzENMAsGA1UE -AwwEdDQyNKQRMA8xDTALBgNVBAMMBHQ0MjWkETAPMQ0wCwYDVQQDDAR0NDI2pBEw -DzENMAsGA1UEAwwEdDQyN6QRMA8xDTALBgNVBAMMBHQ0MjikETAPMQ0wCwYDVQQD -DAR0NDI5pBEwDzENMAsGA1UEAwwEdDQzMKQRMA8xDTALBgNVBAMMBHQ0MzGkETAP -MQ0wCwYDVQQDDAR0NDMypBEwDzENMAsGA1UEAwwEdDQzM6QRMA8xDTALBgNVBAMM -BHQ0MzSkETAPMQ0wCwYDVQQDDAR0NDM1pBEwDzENMAsGA1UEAwwEdDQzNqQRMA8x -DTALBgNVBAMMBHQ0MzekETAPMQ0wCwYDVQQDDAR0NDM4pBEwDzENMAsGA1UEAwwE -dDQzOaQRMA8xDTALBgNVBAMMBHQ0NDCkETAPMQ0wCwYDVQQDDAR0NDQxpBEwDzEN -MAsGA1UEAwwEdDQ0MqQRMA8xDTALBgNVBAMMBHQ0NDOkETAPMQ0wCwYDVQQDDAR0 -NDQ0pBEwDzENMAsGA1UEAwwEdDQ0NaQRMA8xDTALBgNVBAMMBHQ0NDakETAPMQ0w -CwYDVQQDDAR0NDQ3pBEwDzENMAsGA1UEAwwEdDQ0OKQRMA8xDTALBgNVBAMMBHQ0 -NDmkETAPMQ0wCwYDVQQDDAR0NDUwpBEwDzENMAsGA1UEAwwEdDQ1MaQRMA8xDTAL -BgNVBAMMBHQ0NTKkETAPMQ0wCwYDVQQDDAR0NDUzpBEwDzENMAsGA1UEAwwEdDQ1 -NKQRMA8xDTALBgNVBAMMBHQ0NTWkETAPMQ0wCwYDVQQDDAR0NDU2pBEwDzENMAsG -A1UEAwwEdDQ1N6QRMA8xDTALBgNVBAMMBHQ0NTikETAPMQ0wCwYDVQQDDAR0NDU5 -pBEwDzENMAsGA1UEAwwEdDQ2MKQRMA8xDTALBgNVBAMMBHQ0NjGkETAPMQ0wCwYD -VQQDDAR0NDYypBEwDzENMAsGA1UEAwwEdDQ2M6QRMA8xDTALBgNVBAMMBHQ0NjSk -ETAPMQ0wCwYDVQQDDAR0NDY1pBEwDzENMAsGA1UEAwwEdDQ2NqQRMA8xDTALBgNV -BAMMBHQ0NjekETAPMQ0wCwYDVQQDDAR0NDY4pBEwDzENMAsGA1UEAwwEdDQ2OaQR -MA8xDTALBgNVBAMMBHQ0NzCkETAPMQ0wCwYDVQQDDAR0NDcxpBEwDzENMAsGA1UE -AwwEdDQ3MqQRMA8xDTALBgNVBAMMBHQ0NzOkETAPMQ0wCwYDVQQDDAR0NDc0pBEw -DzENMAsGA1UEAwwEdDQ3NaQRMA8xDTALBgNVBAMMBHQ0NzakETAPMQ0wCwYDVQQD -DAR0NDc3pBEwDzENMAsGA1UEAwwEdDQ3OKQRMA8xDTALBgNVBAMMBHQ0NzmkETAP -MQ0wCwYDVQQDDAR0NDgwpBEwDzENMAsGA1UEAwwEdDQ4MaQRMA8xDTALBgNVBAMM -BHQ0ODKkETAPMQ0wCwYDVQQDDAR0NDgzpBEwDzENMAsGA1UEAwwEdDQ4NKQRMA8x -DTALBgNVBAMMBHQ0ODWkETAPMQ0wCwYDVQQDDAR0NDg2pBEwDzENMAsGA1UEAwwE -dDQ4N6QRMA8xDTALBgNVBAMMBHQ0ODikETAPMQ0wCwYDVQQDDAR0NDg5pBEwDzEN -MAsGA1UEAwwEdDQ5MKQRMA8xDTALBgNVBAMMBHQ0OTGkETAPMQ0wCwYDVQQDDAR0 -NDkypBEwDzENMAsGA1UEAwwEdDQ5M6QRMA8xDTALBgNVBAMMBHQ0OTSkETAPMQ0w -CwYDVQQDDAR0NDk1pBEwDzENMAsGA1UEAwwEdDQ5NqQRMA8xDTALBgNVBAMMBHQ0 -OTekETAPMQ0wCwYDVQQDDAR0NDk4pBEwDzENMAsGA1UEAwwEdDQ5OaQRMA8xDTAL -BgNVBAMMBHQ1MDCkETAPMQ0wCwYDVQQDDAR0NTAxpBEwDzENMAsGA1UEAwwEdDUw -MqQRMA8xDTALBgNVBAMMBHQ1MDOkETAPMQ0wCwYDVQQDDAR0NTA0pBEwDzENMAsG -A1UEAwwEdDUwNaQRMA8xDTALBgNVBAMMBHQ1MDakETAPMQ0wCwYDVQQDDAR0NTA3 -pBEwDzENMAsGA1UEAwwEdDUwOKQRMA8xDTALBgNVBAMMBHQ1MDmkETAPMQ0wCwYD -VQQDDAR0NTEwpBEwDzENMAsGA1UEAwwEdDUxMaQRMA8xDTALBgNVBAMMBHQ1MTKk -ETAPMQ0wCwYDVQQDDAR0NTEzpBEwDzENMAsGA1UEAwwEdDUxNKQRMA8xDTALBgNV -BAMMBHQ1MTWkETAPMQ0wCwYDVQQDDAR0NTE2pBEwDzENMAsGA1UEAwwEdDUxN6QR -MA8xDTALBgNVBAMMBHQ1MTikETAPMQ0wCwYDVQQDDAR0NTE5pBEwDzENMAsGA1UE -AwwEdDUyMKQRMA8xDTALBgNVBAMMBHQ1MjGkETAPMQ0wCwYDVQQDDAR0NTIypBEw -DzENMAsGA1UEAwwEdDUyM6QRMA8xDTALBgNVBAMMBHQ1MjSkETAPMQ0wCwYDVQQD -DAR0NTI1pBEwDzENMAsGA1UEAwwEdDUyNqQRMA8xDTALBgNVBAMMBHQ1MjekETAP -MQ0wCwYDVQQDDAR0NTI4pBEwDzENMAsGA1UEAwwEdDUyOaQRMA8xDTALBgNVBAMM -BHQ1MzCkETAPMQ0wCwYDVQQDDAR0NTMxpBEwDzENMAsGA1UEAwwEdDUzMqQRMA8x -DTALBgNVBAMMBHQ1MzOkETAPMQ0wCwYDVQQDDAR0NTM0pBEwDzENMAsGA1UEAwwE -dDUzNaQRMA8xDTALBgNVBAMMBHQ1MzakETAPMQ0wCwYDVQQDDAR0NTM3pBEwDzEN -MAsGA1UEAwwEdDUzOKQRMA8xDTALBgNVBAMMBHQ1MzmkETAPMQ0wCwYDVQQDDAR0 -NTQwpBEwDzENMAsGA1UEAwwEdDU0MaQRMA8xDTALBgNVBAMMBHQ1NDKkETAPMQ0w -CwYDVQQDDAR0NTQzpBEwDzENMAsGA1UEAwwEdDU0NKQRMA8xDTALBgNVBAMMBHQ1 -NDWkETAPMQ0wCwYDVQQDDAR0NTQ2pBEwDzENMAsGA1UEAwwEdDU0N6QRMA8xDTAL -BgNVBAMMBHQ1NDikETAPMQ0wCwYDVQQDDAR0NTQ5pBEwDzENMAsGA1UEAwwEdDU1 -MKQRMA8xDTALBgNVBAMMBHQ1NTGkETAPMQ0wCwYDVQQDDAR0NTUypBEwDzENMAsG -A1UEAwwEdDU1M6QRMA8xDTALBgNVBAMMBHQ1NTSkETAPMQ0wCwYDVQQDDAR0NTU1 -pBEwDzENMAsGA1UEAwwEdDU1NqQRMA8xDTALBgNVBAMMBHQ1NTekETAPMQ0wCwYD -VQQDDAR0NTU4pBEwDzENMAsGA1UEAwwEdDU1OaQRMA8xDTALBgNVBAMMBHQ1NjCk -ETAPMQ0wCwYDVQQDDAR0NTYxpBEwDzENMAsGA1UEAwwEdDU2MqQRMA8xDTALBgNV -BAMMBHQ1NjOkETAPMQ0wCwYDVQQDDAR0NTY0pBEwDzENMAsGA1UEAwwEdDU2NaQR -MA8xDTALBgNVBAMMBHQ1NjakETAPMQ0wCwYDVQQDDAR0NTY3pBEwDzENMAsGA1UE -AwwEdDU2OKQRMA8xDTALBgNVBAMMBHQ1NjmkETAPMQ0wCwYDVQQDDAR0NTcwpBEw -DzENMAsGA1UEAwwEdDU3MaQRMA8xDTALBgNVBAMMBHQ1NzKkETAPMQ0wCwYDVQQD -DAR0NTczpBEwDzENMAsGA1UEAwwEdDU3NKQRMA8xDTALBgNVBAMMBHQ1NzWkETAP -MQ0wCwYDVQQDDAR0NTc2pBEwDzENMAsGA1UEAwwEdDU3N6QRMA8xDTALBgNVBAMM -BHQ1NzikETAPMQ0wCwYDVQQDDAR0NTc5pBEwDzENMAsGA1UEAwwEdDU4MKQRMA8x -DTALBgNVBAMMBHQ1ODGkETAPMQ0wCwYDVQQDDAR0NTgypBEwDzENMAsGA1UEAwwE -dDU4M6QRMA8xDTALBgNVBAMMBHQ1ODSkETAPMQ0wCwYDVQQDDAR0NTg1pBEwDzEN -MAsGA1UEAwwEdDU4NqQRMA8xDTALBgNVBAMMBHQ1ODekETAPMQ0wCwYDVQQDDAR0 -NTg4pBEwDzENMAsGA1UEAwwEdDU4OaQRMA8xDTALBgNVBAMMBHQ1OTCkETAPMQ0w -CwYDVQQDDAR0NTkxpBEwDzENMAsGA1UEAwwEdDU5MqQRMA8xDTALBgNVBAMMBHQ1 -OTOkETAPMQ0wCwYDVQQDDAR0NTk0pBEwDzENMAsGA1UEAwwEdDU5NaQRMA8xDTAL -BgNVBAMMBHQ1OTakETAPMQ0wCwYDVQQDDAR0NTk3pBEwDzENMAsGA1UEAwwEdDU5 -OKQRMA8xDTALBgNVBAMMBHQ1OTmkETAPMQ0wCwYDVQQDDAR0NjAwpBEwDzENMAsG -A1UEAwwEdDYwMaQRMA8xDTALBgNVBAMMBHQ2MDKkETAPMQ0wCwYDVQQDDAR0NjAz -pBEwDzENMAsGA1UEAwwEdDYwNKQRMA8xDTALBgNVBAMMBHQ2MDWkETAPMQ0wCwYD -VQQDDAR0NjA2pBEwDzENMAsGA1UEAwwEdDYwN6QRMA8xDTALBgNVBAMMBHQ2MDik -ETAPMQ0wCwYDVQQDDAR0NjA5pBEwDzENMAsGA1UEAwwEdDYxMKQRMA8xDTALBgNV -BAMMBHQ2MTGkETAPMQ0wCwYDVQQDDAR0NjEypBEwDzENMAsGA1UEAwwEdDYxM6QR -MA8xDTALBgNVBAMMBHQ2MTSkETAPMQ0wCwYDVQQDDAR0NjE1pBEwDzENMAsGA1UE -AwwEdDYxNqQRMA8xDTALBgNVBAMMBHQ2MTekETAPMQ0wCwYDVQQDDAR0NjE4pBEw -DzENMAsGA1UEAwwEdDYxOaQRMA8xDTALBgNVBAMMBHQ2MjCkETAPMQ0wCwYDVQQD -DAR0NjIxpBEwDzENMAsGA1UEAwwEdDYyMqQRMA8xDTALBgNVBAMMBHQ2MjOkETAP -MQ0wCwYDVQQDDAR0NjI0pBEwDzENMAsGA1UEAwwEdDYyNaQRMA8xDTALBgNVBAMM -BHQ2MjakETAPMQ0wCwYDVQQDDAR0NjI3pBEwDzENMAsGA1UEAwwEdDYyOKQRMA8x -DTALBgNVBAMMBHQ2MjmkETAPMQ0wCwYDVQQDDAR0NjMwpBEwDzENMAsGA1UEAwwE -dDYzMaQRMA8xDTALBgNVBAMMBHQ2MzKkETAPMQ0wCwYDVQQDDAR0NjMzpBEwDzEN -MAsGA1UEAwwEdDYzNKQRMA8xDTALBgNVBAMMBHQ2MzWkETAPMQ0wCwYDVQQDDAR0 -NjM2pBEwDzENMAsGA1UEAwwEdDYzN6QRMA8xDTALBgNVBAMMBHQ2MzikETAPMQ0w -CwYDVQQDDAR0NjM5pBEwDzENMAsGA1UEAwwEdDY0MKQRMA8xDTALBgNVBAMMBHQ2 -NDGkETAPMQ0wCwYDVQQDDAR0NjQypBEwDzENMAsGA1UEAwwEdDY0M6QRMA8xDTAL -BgNVBAMMBHQ2NDSkETAPMQ0wCwYDVQQDDAR0NjQ1pBEwDzENMAsGA1UEAwwEdDY0 -NqQRMA8xDTALBgNVBAMMBHQ2NDekETAPMQ0wCwYDVQQDDAR0NjQ4pBEwDzENMAsG -A1UEAwwEdDY0OaQRMA8xDTALBgNVBAMMBHQ2NTCkETAPMQ0wCwYDVQQDDAR0NjUx -pBEwDzENMAsGA1UEAwwEdDY1MqQRMA8xDTALBgNVBAMMBHQ2NTOkETAPMQ0wCwYD -VQQDDAR0NjU0pBEwDzENMAsGA1UEAwwEdDY1NaQRMA8xDTALBgNVBAMMBHQ2NTak -ETAPMQ0wCwYDVQQDDAR0NjU3pBEwDzENMAsGA1UEAwwEdDY1OKQRMA8xDTALBgNV -BAMMBHQ2NTmkETAPMQ0wCwYDVQQDDAR0NjYwpBEwDzENMAsGA1UEAwwEdDY2MaQR -MA8xDTALBgNVBAMMBHQ2NjKkETAPMQ0wCwYDVQQDDAR0NjYzpBEwDzENMAsGA1UE -AwwEdDY2NKQRMA8xDTALBgNVBAMMBHQ2NjWkETAPMQ0wCwYDVQQDDAR0NjY2pBEw -DzENMAsGA1UEAwwEdDY2N6QRMA8xDTALBgNVBAMMBHQ2NjikETAPMQ0wCwYDVQQD -DAR0NjY5pBEwDzENMAsGA1UEAwwEdDY3MKQRMA8xDTALBgNVBAMMBHQ2NzGkETAP -MQ0wCwYDVQQDDAR0NjcypBEwDzENMAsGA1UEAwwEdDY3M6QRMA8xDTALBgNVBAMM -BHQ2NzSkETAPMQ0wCwYDVQQDDAR0Njc1pBEwDzENMAsGA1UEAwwEdDY3NqQRMA8x -DTALBgNVBAMMBHQ2NzekETAPMQ0wCwYDVQQDDAR0Njc4pBEwDzENMAsGA1UEAwwE -dDY3OaQRMA8xDTALBgNVBAMMBHQ2ODCkETAPMQ0wCwYDVQQDDAR0NjgxpBEwDzEN -MAsGA1UEAwwEdDY4MqQRMA8xDTALBgNVBAMMBHQ2ODOkETAPMQ0wCwYDVQQDDAR0 -Njg0pBEwDzENMAsGA1UEAwwEdDY4NaQRMA8xDTALBgNVBAMMBHQ2ODakETAPMQ0w -CwYDVQQDDAR0Njg3pBEwDzENMAsGA1UEAwwEdDY4OKQRMA8xDTALBgNVBAMMBHQ2 -ODmkETAPMQ0wCwYDVQQDDAR0NjkwpBEwDzENMAsGA1UEAwwEdDY5MaQRMA8xDTAL -BgNVBAMMBHQ2OTKkETAPMQ0wCwYDVQQDDAR0NjkzpBEwDzENMAsGA1UEAwwEdDY5 -NKQRMA8xDTALBgNVBAMMBHQ2OTWkETAPMQ0wCwYDVQQDDAR0Njk2pBEwDzENMAsG -A1UEAwwEdDY5N6QRMA8xDTALBgNVBAMMBHQ2OTikETAPMQ0wCwYDVQQDDAR0Njk5 -pBEwDzENMAsGA1UEAwwEdDcwMKQRMA8xDTALBgNVBAMMBHQ3MDGkETAPMQ0wCwYD -VQQDDAR0NzAypBEwDzENMAsGA1UEAwwEdDcwM6QRMA8xDTALBgNVBAMMBHQ3MDSk -ETAPMQ0wCwYDVQQDDAR0NzA1pBEwDzENMAsGA1UEAwwEdDcwNqQRMA8xDTALBgNV -BAMMBHQ3MDekETAPMQ0wCwYDVQQDDAR0NzA4pBEwDzENMAsGA1UEAwwEdDcwOaQR -MA8xDTALBgNVBAMMBHQ3MTCkETAPMQ0wCwYDVQQDDAR0NzExpBEwDzENMAsGA1UE -AwwEdDcxMqQRMA8xDTALBgNVBAMMBHQ3MTOkETAPMQ0wCwYDVQQDDAR0NzE0pBEw -DzENMAsGA1UEAwwEdDcxNaQRMA8xDTALBgNVBAMMBHQ3MTakETAPMQ0wCwYDVQQD -DAR0NzE3pBEwDzENMAsGA1UEAwwEdDcxOKQRMA8xDTALBgNVBAMMBHQ3MTmkETAP -MQ0wCwYDVQQDDAR0NzIwpBEwDzENMAsGA1UEAwwEdDcyMaQRMA8xDTALBgNVBAMM -BHQ3MjKkETAPMQ0wCwYDVQQDDAR0NzIzpBEwDzENMAsGA1UEAwwEdDcyNKQRMA8x -DTALBgNVBAMMBHQ3MjWkETAPMQ0wCwYDVQQDDAR0NzI2pBEwDzENMAsGA1UEAwwE -dDcyN6QRMA8xDTALBgNVBAMMBHQ3MjikETAPMQ0wCwYDVQQDDAR0NzI5pBEwDzEN -MAsGA1UEAwwEdDczMKQRMA8xDTALBgNVBAMMBHQ3MzGkETAPMQ0wCwYDVQQDDAR0 -NzMypBEwDzENMAsGA1UEAwwEdDczM6QRMA8xDTALBgNVBAMMBHQ3MzSkETAPMQ0w -CwYDVQQDDAR0NzM1pBEwDzENMAsGA1UEAwwEdDczNqQRMA8xDTALBgNVBAMMBHQ3 -MzekETAPMQ0wCwYDVQQDDAR0NzM4pBEwDzENMAsGA1UEAwwEdDczOaQRMA8xDTAL -BgNVBAMMBHQ3NDCkETAPMQ0wCwYDVQQDDAR0NzQxpBEwDzENMAsGA1UEAwwEdDc0 -MqQRMA8xDTALBgNVBAMMBHQ3NDOkETAPMQ0wCwYDVQQDDAR0NzQ0pBEwDzENMAsG -A1UEAwwEdDc0NaQRMA8xDTALBgNVBAMMBHQ3NDakETAPMQ0wCwYDVQQDDAR0NzQ3 -pBEwDzENMAsGA1UEAwwEdDc0OKQRMA8xDTALBgNVBAMMBHQ3NDmkETAPMQ0wCwYD -VQQDDAR0NzUwpBEwDzENMAsGA1UEAwwEdDc1MaQRMA8xDTALBgNVBAMMBHQ3NTKk -ETAPMQ0wCwYDVQQDDAR0NzUzpBEwDzENMAsGA1UEAwwEdDc1NKQRMA8xDTALBgNV -BAMMBHQ3NTWkETAPMQ0wCwYDVQQDDAR0NzU2pBEwDzENMAsGA1UEAwwEdDc1N6QR -MA8xDTALBgNVBAMMBHQ3NTikETAPMQ0wCwYDVQQDDAR0NzU5pBEwDzENMAsGA1UE -AwwEdDc2MKQRMA8xDTALBgNVBAMMBHQ3NjGkETAPMQ0wCwYDVQQDDAR0NzYypBEw -DzENMAsGA1UEAwwEdDc2M6QRMA8xDTALBgNVBAMMBHQ3NjSkETAPMQ0wCwYDVQQD -DAR0NzY1pBEwDzENMAsGA1UEAwwEdDc2NqQRMA8xDTALBgNVBAMMBHQ3NjekETAP -MQ0wCwYDVQQDDAR0NzY4pBEwDzENMAsGA1UEAwwEdDc2OaQRMA8xDTALBgNVBAMM -BHQ3NzCkETAPMQ0wCwYDVQQDDAR0NzcxpBEwDzENMAsGA1UEAwwEdDc3MqQRMA8x -DTALBgNVBAMMBHQ3NzOkETAPMQ0wCwYDVQQDDAR0Nzc0pBEwDzENMAsGA1UEAwwE -dDc3NaQRMA8xDTALBgNVBAMMBHQ3NzakETAPMQ0wCwYDVQQDDAR0Nzc3pBEwDzEN -MAsGA1UEAwwEdDc3OKQRMA8xDTALBgNVBAMMBHQ3NzmkETAPMQ0wCwYDVQQDDAR0 -NzgwpBEwDzENMAsGA1UEAwwEdDc4MaQRMA8xDTALBgNVBAMMBHQ3ODKkETAPMQ0w -CwYDVQQDDAR0NzgzpBEwDzENMAsGA1UEAwwEdDc4NKQRMA8xDTALBgNVBAMMBHQ3 -ODWkETAPMQ0wCwYDVQQDDAR0Nzg2pBEwDzENMAsGA1UEAwwEdDc4N6QRMA8xDTAL -BgNVBAMMBHQ3ODikETAPMQ0wCwYDVQQDDAR0Nzg5pBEwDzENMAsGA1UEAwwEdDc5 -MKQRMA8xDTALBgNVBAMMBHQ3OTGkETAPMQ0wCwYDVQQDDAR0NzkypBEwDzENMAsG -A1UEAwwEdDc5M6QRMA8xDTALBgNVBAMMBHQ3OTSkETAPMQ0wCwYDVQQDDAR0Nzk1 -pBEwDzENMAsGA1UEAwwEdDc5NqQRMA8xDTALBgNVBAMMBHQ3OTekETAPMQ0wCwYD -VQQDDAR0Nzk4pBEwDzENMAsGA1UEAwwEdDc5OaQRMA8xDTALBgNVBAMMBHQ4MDCk -ETAPMQ0wCwYDVQQDDAR0ODAxpBEwDzENMAsGA1UEAwwEdDgwMqQRMA8xDTALBgNV -BAMMBHQ4MDOkETAPMQ0wCwYDVQQDDAR0ODA0pBEwDzENMAsGA1UEAwwEdDgwNaQR -MA8xDTALBgNVBAMMBHQ4MDakETAPMQ0wCwYDVQQDDAR0ODA3pBEwDzENMAsGA1UE -AwwEdDgwOKQRMA8xDTALBgNVBAMMBHQ4MDmkETAPMQ0wCwYDVQQDDAR0ODEwpBEw -DzENMAsGA1UEAwwEdDgxMaQRMA8xDTALBgNVBAMMBHQ4MTKkETAPMQ0wCwYDVQQD -DAR0ODEzpBEwDzENMAsGA1UEAwwEdDgxNKQRMA8xDTALBgNVBAMMBHQ4MTWkETAP -MQ0wCwYDVQQDDAR0ODE2pBEwDzENMAsGA1UEAwwEdDgxN6QRMA8xDTALBgNVBAMM -BHQ4MTikETAPMQ0wCwYDVQQDDAR0ODE5pBEwDzENMAsGA1UEAwwEdDgyMKQRMA8x -DTALBgNVBAMMBHQ4MjGkETAPMQ0wCwYDVQQDDAR0ODIypBEwDzENMAsGA1UEAwwE -dDgyM6QRMA8xDTALBgNVBAMMBHQ4MjSkETAPMQ0wCwYDVQQDDAR0ODI1pBEwDzEN -MAsGA1UEAwwEdDgyNqQRMA8xDTALBgNVBAMMBHQ4MjekETAPMQ0wCwYDVQQDDAR0 -ODI4pBEwDzENMAsGA1UEAwwEdDgyOaQRMA8xDTALBgNVBAMMBHQ4MzCkETAPMQ0w -CwYDVQQDDAR0ODMxpBEwDzENMAsGA1UEAwwEdDgzMqQRMA8xDTALBgNVBAMMBHQ4 -MzOkETAPMQ0wCwYDVQQDDAR0ODM0pBEwDzENMAsGA1UEAwwEdDgzNaQRMA8xDTAL -BgNVBAMMBHQ4MzakETAPMQ0wCwYDVQQDDAR0ODM3pBEwDzENMAsGA1UEAwwEdDgz -OKQRMA8xDTALBgNVBAMMBHQ4MzmkETAPMQ0wCwYDVQQDDAR0ODQwpBEwDzENMAsG -A1UEAwwEdDg0MaQRMA8xDTALBgNVBAMMBHQ4NDKkETAPMQ0wCwYDVQQDDAR0ODQz -pBEwDzENMAsGA1UEAwwEdDg0NKQRMA8xDTALBgNVBAMMBHQ4NDWkETAPMQ0wCwYD -VQQDDAR0ODQ2pBEwDzENMAsGA1UEAwwEdDg0N6QRMA8xDTALBgNVBAMMBHQ4NDik -ETAPMQ0wCwYDVQQDDAR0ODQ5pBEwDzENMAsGA1UEAwwEdDg1MKQRMA8xDTALBgNV -BAMMBHQ4NTGkETAPMQ0wCwYDVQQDDAR0ODUypBEwDzENMAsGA1UEAwwEdDg1M6QR -MA8xDTALBgNVBAMMBHQ4NTSkETAPMQ0wCwYDVQQDDAR0ODU1pBEwDzENMAsGA1UE -AwwEdDg1NqQRMA8xDTALBgNVBAMMBHQ4NTekETAPMQ0wCwYDVQQDDAR0ODU4pBEw -DzENMAsGA1UEAwwEdDg1OaQRMA8xDTALBgNVBAMMBHQ4NjCkETAPMQ0wCwYDVQQD -DAR0ODYxpBEwDzENMAsGA1UEAwwEdDg2MqQRMA8xDTALBgNVBAMMBHQ4NjOkETAP -MQ0wCwYDVQQDDAR0ODY0pBEwDzENMAsGA1UEAwwEdDg2NaQRMA8xDTALBgNVBAMM -BHQ4NjakETAPMQ0wCwYDVQQDDAR0ODY3pBEwDzENMAsGA1UEAwwEdDg2OKQRMA8x -DTALBgNVBAMMBHQ4NjmkETAPMQ0wCwYDVQQDDAR0ODcwpBEwDzENMAsGA1UEAwwE -dDg3MaQRMA8xDTALBgNVBAMMBHQ4NzKkETAPMQ0wCwYDVQQDDAR0ODczpBEwDzEN -MAsGA1UEAwwEdDg3NKQRMA8xDTALBgNVBAMMBHQ4NzWkETAPMQ0wCwYDVQQDDAR0 -ODc2pBEwDzENMAsGA1UEAwwEdDg3N6QRMA8xDTALBgNVBAMMBHQ4NzikETAPMQ0w -CwYDVQQDDAR0ODc5pBEwDzENMAsGA1UEAwwEdDg4MKQRMA8xDTALBgNVBAMMBHQ4 -ODGkETAPMQ0wCwYDVQQDDAR0ODgypBEwDzENMAsGA1UEAwwEdDg4M6QRMA8xDTAL -BgNVBAMMBHQ4ODSkETAPMQ0wCwYDVQQDDAR0ODg1pBEwDzENMAsGA1UEAwwEdDg4 -NqQRMA8xDTALBgNVBAMMBHQ4ODekETAPMQ0wCwYDVQQDDAR0ODg4pBEwDzENMAsG -A1UEAwwEdDg4OaQRMA8xDTALBgNVBAMMBHQ4OTCkETAPMQ0wCwYDVQQDDAR0ODkx -pBEwDzENMAsGA1UEAwwEdDg5MqQRMA8xDTALBgNVBAMMBHQ4OTOkETAPMQ0wCwYD -VQQDDAR0ODk0pBEwDzENMAsGA1UEAwwEdDg5NaQRMA8xDTALBgNVBAMMBHQ4OTak -ETAPMQ0wCwYDVQQDDAR0ODk3pBEwDzENMAsGA1UEAwwEdDg5OKQRMA8xDTALBgNV -BAMMBHQ4OTmkETAPMQ0wCwYDVQQDDAR0OTAwpBEwDzENMAsGA1UEAwwEdDkwMaQR -MA8xDTALBgNVBAMMBHQ5MDKkETAPMQ0wCwYDVQQDDAR0OTAzpBEwDzENMAsGA1UE -AwwEdDkwNKQRMA8xDTALBgNVBAMMBHQ5MDWkETAPMQ0wCwYDVQQDDAR0OTA2pBEw -DzENMAsGA1UEAwwEdDkwN6QRMA8xDTALBgNVBAMMBHQ5MDikETAPMQ0wCwYDVQQD -DAR0OTA5pBEwDzENMAsGA1UEAwwEdDkxMKQRMA8xDTALBgNVBAMMBHQ5MTGkETAP -MQ0wCwYDVQQDDAR0OTEypBEwDzENMAsGA1UEAwwEdDkxM6QRMA8xDTALBgNVBAMM -BHQ5MTSkETAPMQ0wCwYDVQQDDAR0OTE1pBEwDzENMAsGA1UEAwwEdDkxNqQRMA8x -DTALBgNVBAMMBHQ5MTekETAPMQ0wCwYDVQQDDAR0OTE4pBEwDzENMAsGA1UEAwwE -dDkxOaQRMA8xDTALBgNVBAMMBHQ5MjCkETAPMQ0wCwYDVQQDDAR0OTIxpBEwDzEN -MAsGA1UEAwwEdDkyMqQRMA8xDTALBgNVBAMMBHQ5MjOkETAPMQ0wCwYDVQQDDAR0 -OTI0pBEwDzENMAsGA1UEAwwEdDkyNaQRMA8xDTALBgNVBAMMBHQ5MjakETAPMQ0w -CwYDVQQDDAR0OTI3pBEwDzENMAsGA1UEAwwEdDkyOKQRMA8xDTALBgNVBAMMBHQ5 -MjmkETAPMQ0wCwYDVQQDDAR0OTMwpBEwDzENMAsGA1UEAwwEdDkzMaQRMA8xDTAL -BgNVBAMMBHQ5MzKkETAPMQ0wCwYDVQQDDAR0OTMzpBEwDzENMAsGA1UEAwwEdDkz -NKQRMA8xDTALBgNVBAMMBHQ5MzWkETAPMQ0wCwYDVQQDDAR0OTM2pBEwDzENMAsG -A1UEAwwEdDkzN6QRMA8xDTALBgNVBAMMBHQ5MzikETAPMQ0wCwYDVQQDDAR0OTM5 -pBEwDzENMAsGA1UEAwwEdDk0MKQRMA8xDTALBgNVBAMMBHQ5NDGkETAPMQ0wCwYD -VQQDDAR0OTQypBEwDzENMAsGA1UEAwwEdDk0M6QRMA8xDTALBgNVBAMMBHQ5NDSk -ETAPMQ0wCwYDVQQDDAR0OTQ1pBEwDzENMAsGA1UEAwwEdDk0NqQRMA8xDTALBgNV -BAMMBHQ5NDekETAPMQ0wCwYDVQQDDAR0OTQ4pBEwDzENMAsGA1UEAwwEdDk0OaQR -MA8xDTALBgNVBAMMBHQ5NTCkETAPMQ0wCwYDVQQDDAR0OTUxpBEwDzENMAsGA1UE -AwwEdDk1MqQRMA8xDTALBgNVBAMMBHQ5NTOkETAPMQ0wCwYDVQQDDAR0OTU0pBEw -DzENMAsGA1UEAwwEdDk1NaQRMA8xDTALBgNVBAMMBHQ5NTakETAPMQ0wCwYDVQQD -DAR0OTU3pBEwDzENMAsGA1UEAwwEdDk1OKQRMA8xDTALBgNVBAMMBHQ5NTmkETAP -MQ0wCwYDVQQDDAR0OTYwpBEwDzENMAsGA1UEAwwEdDk2MaQRMA8xDTALBgNVBAMM -BHQ5NjKkETAPMQ0wCwYDVQQDDAR0OTYzpBEwDzENMAsGA1UEAwwEdDk2NKQRMA8x -DTALBgNVBAMMBHQ5NjWkETAPMQ0wCwYDVQQDDAR0OTY2pBEwDzENMAsGA1UEAwwE -dDk2N6QRMA8xDTALBgNVBAMMBHQ5NjikETAPMQ0wCwYDVQQDDAR0OTY5pBEwDzEN -MAsGA1UEAwwEdDk3MKQRMA8xDTALBgNVBAMMBHQ5NzGkETAPMQ0wCwYDVQQDDAR0 -OTcypBEwDzENMAsGA1UEAwwEdDk3M6QRMA8xDTALBgNVBAMMBHQ5NzSkETAPMQ0w -CwYDVQQDDAR0OTc1pBEwDzENMAsGA1UEAwwEdDk3NqQRMA8xDTALBgNVBAMMBHQ5 -NzekETAPMQ0wCwYDVQQDDAR0OTc4pBEwDzENMAsGA1UEAwwEdDk3OaQRMA8xDTAL -BgNVBAMMBHQ5ODCkETAPMQ0wCwYDVQQDDAR0OTgxpBEwDzENMAsGA1UEAwwEdDk4 -MqQRMA8xDTALBgNVBAMMBHQ5ODOkETAPMQ0wCwYDVQQDDAR0OTg0pBEwDzENMAsG -A1UEAwwEdDk4NaQRMA8xDTALBgNVBAMMBHQ5ODakETAPMQ0wCwYDVQQDDAR0OTg3 -pBEwDzENMAsGA1UEAwwEdDk4OKQRMA8xDTALBgNVBAMMBHQ5ODmkETAPMQ0wCwYD -VQQDDAR0OTkwpBEwDzENMAsGA1UEAwwEdDk5MaQRMA8xDTALBgNVBAMMBHQ5OTKk -ETAPMQ0wCwYDVQQDDAR0OTkzpBEwDzENMAsGA1UEAwwEdDk5NKQRMA8xDTALBgNV -BAMMBHQ5OTWkETAPMQ0wCwYDVQQDDAR0OTk2pBEwDzENMAsGA1UEAwwEdDk5N6QR -MA8xDTALBgNVBAMMBHQ5OTikETAPMQ0wCwYDVQQDDAR0OTk5pBIwEDEOMAwGA1UE -AwwFdDEwMDCkEjAQMQ4wDAYDVQQDDAV0MTAwMaQSMBAxDjAMBgNVBAMMBXQxMDAy -pBIwEDEOMAwGA1UEAwwFdDEwMDOkEjAQMQ4wDAYDVQQDDAV0MTAwNKQSMBAxDjAM -BgNVBAMMBXQxMDA1pBIwEDEOMAwGA1UEAwwFdDEwMDakEjAQMQ4wDAYDVQQDDAV0 -MTAwN6QSMBAxDjAMBgNVBAMMBXQxMDA4pBIwEDEOMAwGA1UEAwwFdDEwMDmkEjAQ -MQ4wDAYDVQQDDAV0MTAxMKQSMBAxDjAMBgNVBAMMBXQxMDExpBIwEDEOMAwGA1UE -AwwFdDEwMTKkEjAQMQ4wDAYDVQQDDAV0MTAxM6QSMBAxDjAMBgNVBAMMBXQxMDE0 -pBIwEDEOMAwGA1UEAwwFdDEwMTWkEjAQMQ4wDAYDVQQDDAV0MTAxNqQSMBAxDjAM -BgNVBAMMBXQxMDE3pBIwEDEOMAwGA1UEAwwFdDEwMTikEjAQMQ4wDAYDVQQDDAV0 -MTAxOaQSMBAxDjAMBgNVBAMMBXQxMDIwpBIwEDEOMAwGA1UEAwwFdDEwMjGkEjAQ -MQ4wDAYDVQQDDAV0MTAyMqQSMBAxDjAMBgNVBAMMBXQxMDIzMA0GCSqGSIb3DQEB -CwUAA4IBAQCsaFcXH4XdFQ83K+/gx/oSaX6L9FVr5BYE7JyygYwt6eIvyj3LIbqE -IPqTcNodP2hPiofuebQdPUNOca515G/NBlA3FdzjNsFpNr+ybuClrxtb84Yapp5H -zyQSoVjFf4SQL50RV79vtJdsXogD45K+l3bM3cXLTSJbS5D35kqWpIUI3iPiWwLb -1wAmMk3kk+vHks8U2nb7+cQ7dIEyeheiT8D7OGftZ3H+K0ZRpA9exz47yyuDzdgz -z5jDX+HrnFsU4IE20NI8ctKqx7qmlyVFd6dXVIHFNEPR8D7kZmm/5fr5sAHPMEqz -uAXU6z2r+eHC83Jp/4CScmJkK0MOQfZg ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.pem deleted file mode 100644 index 54fb25ecc2..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_4.pem +++ /dev/null @@ -1,496 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d8 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DirName:/CN=t0, DirName:/CN=t1, DirName:/CN=t2, DirName:/CN=t3, DirName:/CN=t4, DirName:/CN=t5, DirName:/CN=t6, DirName:/CN=t7, DirName:/CN=t8, DirName:/CN=t9, DirName:/CN=t10, DirName:/CN=t11, DirName:/CN=t12, DirName:/CN=t13, DirName:/CN=t14, DirName:/CN=t15, DirName:/CN=t16, DirName:/CN=t17, DirName:/CN=t18, DirName:/CN=t19, DirName:/CN=t20, DirName:/CN=t21, DirName:/CN=t22, DirName:/CN=t23, DirName:/CN=t24, DirName:/CN=t25, DirName:/CN=t26, DirName:/CN=t27, DirName:/CN=t28, DirName:/CN=t29, DirName:/CN=t30, DirName:/CN=t31, DirName:/CN=t32, DirName:/CN=t33, DirName:/CN=t34, DirName:/CN=t35, DirName:/CN=t36, DirName:/CN=t37, DirName:/CN=t38, DirName:/CN=t39, DirName:/CN=t40, DirName:/CN=t41, DirName:/CN=t42, DirName:/CN=t43, DirName:/CN=t44, DirName:/CN=t45, DirName:/CN=t46, DirName:/CN=t47, DirName:/CN=t48, DirName:/CN=t49, DirName:/CN=t50, DirName:/CN=t51, DirName:/CN=t52, DirName:/CN=t53, DirName:/CN=t54, DirName:/CN=t55, DirName:/CN=t56, DirName:/CN=t57, DirName:/CN=t58, DirName:/CN=t59, DirName:/CN=t60, DirName:/CN=t61, DirName:/CN=t62, DirName:/CN=t63, DirName:/CN=t64, DirName:/CN=t65, DirName:/CN=t66, DirName:/CN=t67, DirName:/CN=t68, DirName:/CN=t69, DirName:/CN=t70, DirName:/CN=t71, DirName:/CN=t72, DirName:/CN=t73, DirName:/CN=t74, DirName:/CN=t75, DirName:/CN=t76, DirName:/CN=t77, DirName:/CN=t78, DirName:/CN=t79, DirName:/CN=t80, DirName:/CN=t81, DirName:/CN=t82, DirName:/CN=t83, DirName:/CN=t84, DirName:/CN=t85, DirName:/CN=t86, DirName:/CN=t87, DirName:/CN=t88, DirName:/CN=t89, DirName:/CN=t90, DirName:/CN=t91, DirName:/CN=t92, DirName:/CN=t93, DirName:/CN=t94, DirName:/CN=t95, DirName:/CN=t96, DirName:/CN=t97, DirName:/CN=t98, DirName:/CN=t99, DirName:/CN=t100, DirName:/CN=t101, DirName:/CN=t102, DirName:/CN=t103, DirName:/CN=t104, DirName:/CN=t105, DirName:/CN=t106, DirName:/CN=t107, DirName:/CN=t108, DirName:/CN=t109, DirName:/CN=t110, DirName:/CN=t111, DirName:/CN=t112, DirName:/CN=t113, DirName:/CN=t114, DirName:/CN=t115, DirName:/CN=t116, DirName:/CN=t117, DirName:/CN=t118, DirName:/CN=t119, DirName:/CN=t120, DirName:/CN=t121, DirName:/CN=t122, DirName:/CN=t123, DirName:/CN=t124, DirName:/CN=t125, DirName:/CN=t126, DirName:/CN=t127, DirName:/CN=t128, DirName:/CN=t129, DirName:/CN=t130, DirName:/CN=t131, DirName:/CN=t132, DirName:/CN=t133, DirName:/CN=t134, DirName:/CN=t135, DirName:/CN=t136, DirName:/CN=t137, DirName:/CN=t138, DirName:/CN=t139, DirName:/CN=t140, DirName:/CN=t141, DirName:/CN=t142, DirName:/CN=t143, DirName:/CN=t144, DirName:/CN=t145, DirName:/CN=t146, DirName:/CN=t147, DirName:/CN=t148, DirName:/CN=t149, DirName:/CN=t150, DirName:/CN=t151, DirName:/CN=t152, DirName:/CN=t153, DirName:/CN=t154, DirName:/CN=t155, DirName:/CN=t156, DirName:/CN=t157, DirName:/CN=t158, DirName:/CN=t159, DirName:/CN=t160, DirName:/CN=t161, DirName:/CN=t162, DirName:/CN=t163, DirName:/CN=t164, DirName:/CN=t165, DirName:/CN=t166, DirName:/CN=t167, DirName:/CN=t168, DirName:/CN=t169, DirName:/CN=t170, DirName:/CN=t171, DirName:/CN=t172, DirName:/CN=t173, DirName:/CN=t174, DirName:/CN=t175, DirName:/CN=t176, DirName:/CN=t177, DirName:/CN=t178, DirName:/CN=t179, DirName:/CN=t180, DirName:/CN=t181, DirName:/CN=t182, DirName:/CN=t183, DirName:/CN=t184, DirName:/CN=t185, DirName:/CN=t186, DirName:/CN=t187, DirName:/CN=t188, DirName:/CN=t189, DirName:/CN=t190, DirName:/CN=t191, DirName:/CN=t192, DirName:/CN=t193, DirName:/CN=t194, DirName:/CN=t195, DirName:/CN=t196, DirName:/CN=t197, DirName:/CN=t198, DirName:/CN=t199, DirName:/CN=t200, DirName:/CN=t201, DirName:/CN=t202, DirName:/CN=t203, DirName:/CN=t204, DirName:/CN=t205, DirName:/CN=t206, DirName:/CN=t207, DirName:/CN=t208, DirName:/CN=t209, DirName:/CN=t210, DirName:/CN=t211, DirName:/CN=t212, DirName:/CN=t213, DirName:/CN=t214, DirName:/CN=t215, DirName:/CN=t216, DirName:/CN=t217, DirName:/CN=t218, DirName:/CN=t219, DirName:/CN=t220, DirName:/CN=t221, DirName:/CN=t222, DirName:/CN=t223, DirName:/CN=t224, DirName:/CN=t225, DirName:/CN=t226, DirName:/CN=t227, DirName:/CN=t228, DirName:/CN=t229, DirName:/CN=t230, DirName:/CN=t231, DirName:/CN=t232, DirName:/CN=t233, DirName:/CN=t234, DirName:/CN=t235, DirName:/CN=t236, DirName:/CN=t237, DirName:/CN=t238, DirName:/CN=t239, DirName:/CN=t240, DirName:/CN=t241, DirName:/CN=t242, DirName:/CN=t243, DirName:/CN=t244, DirName:/CN=t245, DirName:/CN=t246, DirName:/CN=t247, DirName:/CN=t248, DirName:/CN=t249, DirName:/CN=t250, DirName:/CN=t251, DirName:/CN=t252, DirName:/CN=t253, DirName:/CN=t254, DirName:/CN=t255, DirName:/CN=t256, DirName:/CN=t257, DirName:/CN=t258, DirName:/CN=t259, DirName:/CN=t260, DirName:/CN=t261, DirName:/CN=t262, DirName:/CN=t263, DirName:/CN=t264, DirName:/CN=t265, DirName:/CN=t266, DirName:/CN=t267, DirName:/CN=t268, DirName:/CN=t269, DirName:/CN=t270, DirName:/CN=t271, DirName:/CN=t272, DirName:/CN=t273, DirName:/CN=t274, DirName:/CN=t275, DirName:/CN=t276, DirName:/CN=t277, DirName:/CN=t278, DirName:/CN=t279, DirName:/CN=t280, DirName:/CN=t281, DirName:/CN=t282, DirName:/CN=t283, DirName:/CN=t284, DirName:/CN=t285, DirName:/CN=t286, DirName:/CN=t287, DirName:/CN=t288, DirName:/CN=t289, DirName:/CN=t290, DirName:/CN=t291, DirName:/CN=t292, DirName:/CN=t293, DirName:/CN=t294, DirName:/CN=t295, DirName:/CN=t296, DirName:/CN=t297, DirName:/CN=t298, DirName:/CN=t299, DirName:/CN=t300, DirName:/CN=t301, DirName:/CN=t302, DirName:/CN=t303, DirName:/CN=t304, DirName:/CN=t305, DirName:/CN=t306, DirName:/CN=t307, DirName:/CN=t308, DirName:/CN=t309, DirName:/CN=t310, DirName:/CN=t311, DirName:/CN=t312, DirName:/CN=t313, DirName:/CN=t314, DirName:/CN=t315, DirName:/CN=t316, DirName:/CN=t317, DirName:/CN=t318, DirName:/CN=t319, DirName:/CN=t320, DirName:/CN=t321, DirName:/CN=t322, DirName:/CN=t323, DirName:/CN=t324, DirName:/CN=t325, DirName:/CN=t326, DirName:/CN=t327, DirName:/CN=t328, DirName:/CN=t329, DirName:/CN=t330, DirName:/CN=t331, DirName:/CN=t332, DirName:/CN=t333, DirName:/CN=t334, DirName:/CN=t335, DirName:/CN=t336, DirName:/CN=t337, DirName:/CN=t338, DirName:/CN=t339, DirName:/CN=t340, DirName:/CN=t341, DirName:/CN=t342, DirName:/CN=t343, DirName:/CN=t344, DirName:/CN=t345, DirName:/CN=t346, DirName:/CN=t347, DirName:/CN=t348, DirName:/CN=t349, DirName:/CN=t350, DirName:/CN=t351, DirName:/CN=t352, DirName:/CN=t353, DirName:/CN=t354, DirName:/CN=t355, DirName:/CN=t356, DirName:/CN=t357, DirName:/CN=t358, DirName:/CN=t359, DirName:/CN=t360, DirName:/CN=t361, DirName:/CN=t362, DirName:/CN=t363, DirName:/CN=t364, DirName:/CN=t365, DirName:/CN=t366, DirName:/CN=t367, DirName:/CN=t368, DirName:/CN=t369, DirName:/CN=t370, DirName:/CN=t371, DirName:/CN=t372, DirName:/CN=t373, DirName:/CN=t374, DirName:/CN=t375, DirName:/CN=t376, DirName:/CN=t377, DirName:/CN=t378, DirName:/CN=t379, DirName:/CN=t380, DirName:/CN=t381, DirName:/CN=t382, DirName:/CN=t383, DirName:/CN=t384, DirName:/CN=t385, DirName:/CN=t386, DirName:/CN=t387, DirName:/CN=t388, DirName:/CN=t389, DirName:/CN=t390, DirName:/CN=t391, DirName:/CN=t392, DirName:/CN=t393, DirName:/CN=t394, DirName:/CN=t395, DirName:/CN=t396, DirName:/CN=t397, DirName:/CN=t398, DirName:/CN=t399, DirName:/CN=t400, DirName:/CN=t401, DirName:/CN=t402, DirName:/CN=t403, DirName:/CN=t404, DirName:/CN=t405, DirName:/CN=t406, DirName:/CN=t407, DirName:/CN=t408, DirName:/CN=t409, DirName:/CN=t410, DirName:/CN=t411, DirName:/CN=t412, DirName:/CN=t413, DirName:/CN=t414, DirName:/CN=t415, DirName:/CN=t416, DirName:/CN=t417, DirName:/CN=t418, DirName:/CN=t419, DirName:/CN=t420, DirName:/CN=t421, DirName:/CN=t422, DirName:/CN=t423, DirName:/CN=t424, DirName:/CN=t425, DirName:/CN=t426, DirName:/CN=t427, DirName:/CN=t428, DirName:/CN=t429, DirName:/CN=t430, DirName:/CN=t431, DirName:/CN=t432, DirName:/CN=t433, DirName:/CN=t434, DirName:/CN=t435, DirName:/CN=t436, DirName:/CN=t437, DirName:/CN=t438, DirName:/CN=t439, DirName:/CN=t440, DirName:/CN=t441, DirName:/CN=t442, DirName:/CN=t443, DirName:/CN=t444, DirName:/CN=t445, DirName:/CN=t446, DirName:/CN=t447, DirName:/CN=t448, DirName:/CN=t449, DirName:/CN=t450, DirName:/CN=t451, DirName:/CN=t452, DirName:/CN=t453, DirName:/CN=t454, DirName:/CN=t455, DirName:/CN=t456, DirName:/CN=t457, DirName:/CN=t458, DirName:/CN=t459, DirName:/CN=t460, DirName:/CN=t461, DirName:/CN=t462, DirName:/CN=t463, DirName:/CN=t464, DirName:/CN=t465, DirName:/CN=t466, DirName:/CN=t467, DirName:/CN=t468, DirName:/CN=t469, DirName:/CN=t470, DirName:/CN=t471, DirName:/CN=t472, DirName:/CN=t473, DirName:/CN=t474, DirName:/CN=t475, DirName:/CN=t476, DirName:/CN=t477, DirName:/CN=t478, DirName:/CN=t479, DirName:/CN=t480, DirName:/CN=t481, DirName:/CN=t482, DirName:/CN=t483, DirName:/CN=t484, DirName:/CN=t485, DirName:/CN=t486, DirName:/CN=t487, DirName:/CN=t488, DirName:/CN=t489, DirName:/CN=t490, DirName:/CN=t491, DirName:/CN=t492, DirName:/CN=t493, DirName:/CN=t494, DirName:/CN=t495, DirName:/CN=t496, DirName:/CN=t497, DirName:/CN=t498, DirName:/CN=t499, DirName:/CN=t500, DirName:/CN=t501, DirName:/CN=t502, DirName:/CN=t503, DirName:/CN=t504, DirName:/CN=t505, DirName:/CN=t506, DirName:/CN=t507, DirName:/CN=t508, DirName:/CN=t509, DirName:/CN=t510, DirName:/CN=t511, DirName:/CN=t512, DirName:/CN=t513, DirName:/CN=t514, DirName:/CN=t515, DirName:/CN=t516, DirName:/CN=t517, DirName:/CN=t518, DirName:/CN=t519, DirName:/CN=t520, DirName:/CN=t521, DirName:/CN=t522, DirName:/CN=t523, DirName:/CN=t524, DirName:/CN=t525, DirName:/CN=t526, DirName:/CN=t527, DirName:/CN=t528, DirName:/CN=t529, DirName:/CN=t530, DirName:/CN=t531, DirName:/CN=t532, DirName:/CN=t533, DirName:/CN=t534, DirName:/CN=t535, DirName:/CN=t536, DirName:/CN=t537, DirName:/CN=t538, DirName:/CN=t539, DirName:/CN=t540, DirName:/CN=t541, DirName:/CN=t542, DirName:/CN=t543, DirName:/CN=t544, DirName:/CN=t545, DirName:/CN=t546, DirName:/CN=t547, DirName:/CN=t548, DirName:/CN=t549, DirName:/CN=t550, DirName:/CN=t551, DirName:/CN=t552, DirName:/CN=t553, DirName:/CN=t554, DirName:/CN=t555, DirName:/CN=t556, DirName:/CN=t557, DirName:/CN=t558, DirName:/CN=t559, DirName:/CN=t560, DirName:/CN=t561, DirName:/CN=t562, DirName:/CN=t563, DirName:/CN=t564, DirName:/CN=t565, DirName:/CN=t566, DirName:/CN=t567, DirName:/CN=t568, DirName:/CN=t569, DirName:/CN=t570, DirName:/CN=t571, DirName:/CN=t572, DirName:/CN=t573, DirName:/CN=t574, DirName:/CN=t575, DirName:/CN=t576, DirName:/CN=t577, DirName:/CN=t578, DirName:/CN=t579, DirName:/CN=t580, DirName:/CN=t581, DirName:/CN=t582, DirName:/CN=t583, DirName:/CN=t584, DirName:/CN=t585, DirName:/CN=t586, DirName:/CN=t587, DirName:/CN=t588, DirName:/CN=t589, DirName:/CN=t590, DirName:/CN=t591, DirName:/CN=t592, DirName:/CN=t593, DirName:/CN=t594, DirName:/CN=t595, DirName:/CN=t596, DirName:/CN=t597, DirName:/CN=t598, DirName:/CN=t599, DirName:/CN=t600, DirName:/CN=t601, DirName:/CN=t602, DirName:/CN=t603, DirName:/CN=t604, DirName:/CN=t605, DirName:/CN=t606, DirName:/CN=t607, DirName:/CN=t608, DirName:/CN=t609, DirName:/CN=t610, DirName:/CN=t611, DirName:/CN=t612, DirName:/CN=t613, DirName:/CN=t614, DirName:/CN=t615, DirName:/CN=t616, DirName:/CN=t617, DirName:/CN=t618, DirName:/CN=t619, DirName:/CN=t620, DirName:/CN=t621, DirName:/CN=t622, DirName:/CN=t623, DirName:/CN=t624, DirName:/CN=t625, DirName:/CN=t626, DirName:/CN=t627, DirName:/CN=t628, DirName:/CN=t629, DirName:/CN=t630, DirName:/CN=t631, DirName:/CN=t632, DirName:/CN=t633, DirName:/CN=t634, DirName:/CN=t635, DirName:/CN=t636, DirName:/CN=t637, DirName:/CN=t638, DirName:/CN=t639, DirName:/CN=t640, DirName:/CN=t641, DirName:/CN=t642, DirName:/CN=t643, DirName:/CN=t644, DirName:/CN=t645, DirName:/CN=t646, DirName:/CN=t647, DirName:/CN=t648, DirName:/CN=t649, DirName:/CN=t650, DirName:/CN=t651, DirName:/CN=t652, DirName:/CN=t653, DirName:/CN=t654, DirName:/CN=t655, DirName:/CN=t656, DirName:/CN=t657, DirName:/CN=t658, DirName:/CN=t659, DirName:/CN=t660, DirName:/CN=t661, DirName:/CN=t662, DirName:/CN=t663, DirName:/CN=t664, DirName:/CN=t665, DirName:/CN=t666, DirName:/CN=t667, DirName:/CN=t668, DirName:/CN=t669, DirName:/CN=t670, DirName:/CN=t671, DirName:/CN=t672, DirName:/CN=t673, DirName:/CN=t674, DirName:/CN=t675, DirName:/CN=t676, DirName:/CN=t677, DirName:/CN=t678, DirName:/CN=t679, DirName:/CN=t680, DirName:/CN=t681, DirName:/CN=t682, DirName:/CN=t683, DirName:/CN=t684, DirName:/CN=t685, DirName:/CN=t686, DirName:/CN=t687, DirName:/CN=t688, DirName:/CN=t689, DirName:/CN=t690, DirName:/CN=t691, DirName:/CN=t692, DirName:/CN=t693, DirName:/CN=t694, DirName:/CN=t695, DirName:/CN=t696, DirName:/CN=t697, DirName:/CN=t698, DirName:/CN=t699, DirName:/CN=t700, DirName:/CN=t701, DirName:/CN=t702, DirName:/CN=t703, DirName:/CN=t704, DirName:/CN=t705, DirName:/CN=t706, DirName:/CN=t707, DirName:/CN=t708, DirName:/CN=t709, DirName:/CN=t710, DirName:/CN=t711, DirName:/CN=t712, DirName:/CN=t713, DirName:/CN=t714, DirName:/CN=t715, DirName:/CN=t716, DirName:/CN=t717, DirName:/CN=t718, DirName:/CN=t719, DirName:/CN=t720, DirName:/CN=t721, DirName:/CN=t722, DirName:/CN=t723, DirName:/CN=t724, DirName:/CN=t725, DirName:/CN=t726, DirName:/CN=t727, DirName:/CN=t728, DirName:/CN=t729, DirName:/CN=t730, DirName:/CN=t731, DirName:/CN=t732, DirName:/CN=t733, DirName:/CN=t734, DirName:/CN=t735, DirName:/CN=t736, DirName:/CN=t737, DirName:/CN=t738, DirName:/CN=t739, DirName:/CN=t740, DirName:/CN=t741, DirName:/CN=t742, DirName:/CN=t743, DirName:/CN=t744, DirName:/CN=t745, DirName:/CN=t746, DirName:/CN=t747, DirName:/CN=t748, DirName:/CN=t749, DirName:/CN=t750, DirName:/CN=t751, DirName:/CN=t752, DirName:/CN=t753, DirName:/CN=t754, DirName:/CN=t755, DirName:/CN=t756, DirName:/CN=t757, DirName:/CN=t758, DirName:/CN=t759, DirName:/CN=t760, DirName:/CN=t761, DirName:/CN=t762, DirName:/CN=t763, DirName:/CN=t764, DirName:/CN=t765, DirName:/CN=t766, DirName:/CN=t767, DirName:/CN=t768, DirName:/CN=t769, DirName:/CN=t770, DirName:/CN=t771, DirName:/CN=t772, DirName:/CN=t773, DirName:/CN=t774, DirName:/CN=t775, DirName:/CN=t776, DirName:/CN=t777, DirName:/CN=t778, DirName:/CN=t779, DirName:/CN=t780, DirName:/CN=t781, DirName:/CN=t782, DirName:/CN=t783, DirName:/CN=t784, DirName:/CN=t785, DirName:/CN=t786, DirName:/CN=t787, DirName:/CN=t788, DirName:/CN=t789, DirName:/CN=t790, DirName:/CN=t791, DirName:/CN=t792, DirName:/CN=t793, DirName:/CN=t794, DirName:/CN=t795, DirName:/CN=t796, DirName:/CN=t797, DirName:/CN=t798, DirName:/CN=t799, DirName:/CN=t800, DirName:/CN=t801, DirName:/CN=t802, DirName:/CN=t803, DirName:/CN=t804, DirName:/CN=t805, DirName:/CN=t806, DirName:/CN=t807, DirName:/CN=t808, DirName:/CN=t809, DirName:/CN=t810, DirName:/CN=t811, DirName:/CN=t812, DirName:/CN=t813, DirName:/CN=t814, DirName:/CN=t815, DirName:/CN=t816, DirName:/CN=t817, DirName:/CN=t818, DirName:/CN=t819, DirName:/CN=t820, DirName:/CN=t821, DirName:/CN=t822, DirName:/CN=t823, DirName:/CN=t824, DirName:/CN=t825, DirName:/CN=t826, DirName:/CN=t827, DirName:/CN=t828, DirName:/CN=t829, DirName:/CN=t830, DirName:/CN=t831, DirName:/CN=t832, DirName:/CN=t833, DirName:/CN=t834, DirName:/CN=t835, DirName:/CN=t836, DirName:/CN=t837, DirName:/CN=t838, DirName:/CN=t839, DirName:/CN=t840, DirName:/CN=t841, DirName:/CN=t842, DirName:/CN=t843, DirName:/CN=t844, DirName:/CN=t845, DirName:/CN=t846, DirName:/CN=t847, DirName:/CN=t848, DirName:/CN=t849, DirName:/CN=t850, DirName:/CN=t851, DirName:/CN=t852, DirName:/CN=t853, DirName:/CN=t854, DirName:/CN=t855, DirName:/CN=t856, DirName:/CN=t857, DirName:/CN=t858, DirName:/CN=t859, DirName:/CN=t860, DirName:/CN=t861, DirName:/CN=t862, DirName:/CN=t863, DirName:/CN=t864, DirName:/CN=t865, DirName:/CN=t866, DirName:/CN=t867, DirName:/CN=t868, DirName:/CN=t869, DirName:/CN=t870, DirName:/CN=t871, DirName:/CN=t872, DirName:/CN=t873, DirName:/CN=t874, DirName:/CN=t875, DirName:/CN=t876, DirName:/CN=t877, DirName:/CN=t878, DirName:/CN=t879, DirName:/CN=t880, DirName:/CN=t881, DirName:/CN=t882, DirName:/CN=t883, DirName:/CN=t884, DirName:/CN=t885, DirName:/CN=t886, DirName:/CN=t887, DirName:/CN=t888, DirName:/CN=t889, DirName:/CN=t890, DirName:/CN=t891, DirName:/CN=t892, DirName:/CN=t893, DirName:/CN=t894, DirName:/CN=t895, DirName:/CN=t896, DirName:/CN=t897, DirName:/CN=t898, DirName:/CN=t899, DirName:/CN=t900, DirName:/CN=t901, DirName:/CN=t902, DirName:/CN=t903, DirName:/CN=t904, DirName:/CN=t905, DirName:/CN=t906, DirName:/CN=t907, DirName:/CN=t908, DirName:/CN=t909, DirName:/CN=t910, DirName:/CN=t911, DirName:/CN=t912, DirName:/CN=t913, DirName:/CN=t914, DirName:/CN=t915, DirName:/CN=t916, DirName:/CN=t917, DirName:/CN=t918, DirName:/CN=t919, DirName:/CN=t920, DirName:/CN=t921, DirName:/CN=t922, DirName:/CN=t923, DirName:/CN=t924, DirName:/CN=t925, DirName:/CN=t926, DirName:/CN=t927, DirName:/CN=t928, DirName:/CN=t929, DirName:/CN=t930, DirName:/CN=t931, DirName:/CN=t932, DirName:/CN=t933, DirName:/CN=t934, DirName:/CN=t935, DirName:/CN=t936, DirName:/CN=t937, DirName:/CN=t938, DirName:/CN=t939, DirName:/CN=t940, DirName:/CN=t941, DirName:/CN=t942, DirName:/CN=t943, DirName:/CN=t944, DirName:/CN=t945, DirName:/CN=t946, DirName:/CN=t947, DirName:/CN=t948, DirName:/CN=t949, DirName:/CN=t950, DirName:/CN=t951, DirName:/CN=t952, DirName:/CN=t953, DirName:/CN=t954, DirName:/CN=t955, DirName:/CN=t956, DirName:/CN=t957, DirName:/CN=t958, DirName:/CN=t959, DirName:/CN=t960, DirName:/CN=t961, DirName:/CN=t962, DirName:/CN=t963, DirName:/CN=t964, DirName:/CN=t965, DirName:/CN=t966, DirName:/CN=t967, DirName:/CN=t968, DirName:/CN=t969, DirName:/CN=t970, DirName:/CN=t971, DirName:/CN=t972, DirName:/CN=t973, DirName:/CN=t974, DirName:/CN=t975, DirName:/CN=t976, DirName:/CN=t977, DirName:/CN=t978, DirName:/CN=t979, DirName:/CN=t980, DirName:/CN=t981, DirName:/CN=t982, DirName:/CN=t983, DirName:/CN=t984, DirName:/CN=t985, DirName:/CN=t986, DirName:/CN=t987, DirName:/CN=t988, DirName:/CN=t989, DirName:/CN=t990, DirName:/CN=t991, DirName:/CN=t992, DirName:/CN=t993, DirName:/CN=t994, DirName:/CN=t995, DirName:/CN=t996, DirName:/CN=t997, DirName:/CN=t998, DirName:/CN=t999, DirName:/CN=t1000, DirName:/CN=t1001, DirName:/CN=t1002, DirName:/CN=t1003, DirName:/CN=t1004, DirName:/CN=t1005, DirName:/CN=t1006, DirName:/CN=t1007, DirName:/CN=t1008, DirName:/CN=t1009, DirName:/CN=t1010, DirName:/CN=t1011, DirName:/CN=t1012, DirName:/CN=t1013, DirName:/CN=t1014, DirName:/CN=t1015, DirName:/CN=t1016, DirName:/CN=t1017, DirName:/CN=t1018, DirName:/CN=t1019, DirName:/CN=t1020, DirName:/CN=t1021, DirName:/CN=t1022, DirName:/CN=t1023 - Signature Algorithm: sha256WithRSAEncryption - 9b:b4:29:30:f0:2d:7a:66:c7:f8:92:4c:cb:f4:08:11:f5:eb: - 66:c3:02:4a:24:12:f2:9d:19:a9:c7:51:3a:93:fe:71:34:93: - 27:32:14:a0:1b:f4:eb:ba:c2:4b:df:7e:a8:57:ce:7f:61:fa: - 9f:d2:ec:9a:02:51:30:13:a5:eb:6a:7c:04:b3:f0:e6:28:66: - 5c:f7:4e:70:66:8f:07:ae:42:77:c0:ec:ee:ff:10:34:83:4a: - b2:81:2c:df:c4:d8:f7:80:70:ea:ae:c8:7c:05:41:19:f8:40: - 23:c1:c0:40:e1:d7:f5:f8:7d:b0:83:b3:6b:3a:01:17:68:ca: - 0a:b2:77:c4:0c:43:5c:d8:4b:0f:21:f4:6f:7e:a8:f7:b4:bc: - 31:cd:02:9a:b6:72:5b:bb:45:0c:4c:97:61:98:24:b0:44:cd: - af:7f:7e:fc:72:55:5a:54:43:04:1d:40:bf:52:9d:4b:c1:58: - 2c:d2:9a:04:ee:0a:04:d8:dc:75:2e:ab:3f:87:08:7c:e2:f0: - 3f:6b:17:95:2f:77:e2:f6:30:93:6c:db:84:aa:c1:3d:70:5d: - fa:b4:40:c4:28:85:76:73:5b:4e:b5:3d:bc:fe:8d:7f:a8:f3: - 20:31:3e:69:d1:c7:fb:8c:79:21:cf:2f:32:e6:46:01:bf:4c: - f2:15:96:98 ------BEGIN CERTIFICATE----- -MIJPWDCCTkCgAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY2DANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCTKUwgkyhMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgku3BgNVHREEgkuuMIJLqqQP -MA0xCzAJBgNVBAMMAnQwpA8wDTELMAkGA1UEAwwCdDGkDzANMQswCQYDVQQDDAJ0 -MqQPMA0xCzAJBgNVBAMMAnQzpA8wDTELMAkGA1UEAwwCdDSkDzANMQswCQYDVQQD -DAJ0NaQPMA0xCzAJBgNVBAMMAnQ2pA8wDTELMAkGA1UEAwwCdDekDzANMQswCQYD -VQQDDAJ0OKQPMA0xCzAJBgNVBAMMAnQ5pBAwDjEMMAoGA1UEAwwDdDEwpBAwDjEM -MAoGA1UEAwwDdDExpBAwDjEMMAoGA1UEAwwDdDEypBAwDjEMMAoGA1UEAwwDdDEz -pBAwDjEMMAoGA1UEAwwDdDE0pBAwDjEMMAoGA1UEAwwDdDE1pBAwDjEMMAoGA1UE -AwwDdDE2pBAwDjEMMAoGA1UEAwwDdDE3pBAwDjEMMAoGA1UEAwwDdDE4pBAwDjEM -MAoGA1UEAwwDdDE5pBAwDjEMMAoGA1UEAwwDdDIwpBAwDjEMMAoGA1UEAwwDdDIx -pBAwDjEMMAoGA1UEAwwDdDIypBAwDjEMMAoGA1UEAwwDdDIzpBAwDjEMMAoGA1UE -AwwDdDI0pBAwDjEMMAoGA1UEAwwDdDI1pBAwDjEMMAoGA1UEAwwDdDI2pBAwDjEM -MAoGA1UEAwwDdDI3pBAwDjEMMAoGA1UEAwwDdDI4pBAwDjEMMAoGA1UEAwwDdDI5 -pBAwDjEMMAoGA1UEAwwDdDMwpBAwDjEMMAoGA1UEAwwDdDMxpBAwDjEMMAoGA1UE -AwwDdDMypBAwDjEMMAoGA1UEAwwDdDMzpBAwDjEMMAoGA1UEAwwDdDM0pBAwDjEM -MAoGA1UEAwwDdDM1pBAwDjEMMAoGA1UEAwwDdDM2pBAwDjEMMAoGA1UEAwwDdDM3 -pBAwDjEMMAoGA1UEAwwDdDM4pBAwDjEMMAoGA1UEAwwDdDM5pBAwDjEMMAoGA1UE -AwwDdDQwpBAwDjEMMAoGA1UEAwwDdDQxpBAwDjEMMAoGA1UEAwwDdDQypBAwDjEM -MAoGA1UEAwwDdDQzpBAwDjEMMAoGA1UEAwwDdDQ0pBAwDjEMMAoGA1UEAwwDdDQ1 -pBAwDjEMMAoGA1UEAwwDdDQ2pBAwDjEMMAoGA1UEAwwDdDQ3pBAwDjEMMAoGA1UE -AwwDdDQ4pBAwDjEMMAoGA1UEAwwDdDQ5pBAwDjEMMAoGA1UEAwwDdDUwpBAwDjEM -MAoGA1UEAwwDdDUxpBAwDjEMMAoGA1UEAwwDdDUypBAwDjEMMAoGA1UEAwwDdDUz -pBAwDjEMMAoGA1UEAwwDdDU0pBAwDjEMMAoGA1UEAwwDdDU1pBAwDjEMMAoGA1UE -AwwDdDU2pBAwDjEMMAoGA1UEAwwDdDU3pBAwDjEMMAoGA1UEAwwDdDU4pBAwDjEM -MAoGA1UEAwwDdDU5pBAwDjEMMAoGA1UEAwwDdDYwpBAwDjEMMAoGA1UEAwwDdDYx -pBAwDjEMMAoGA1UEAwwDdDYypBAwDjEMMAoGA1UEAwwDdDYzpBAwDjEMMAoGA1UE -AwwDdDY0pBAwDjEMMAoGA1UEAwwDdDY1pBAwDjEMMAoGA1UEAwwDdDY2pBAwDjEM -MAoGA1UEAwwDdDY3pBAwDjEMMAoGA1UEAwwDdDY4pBAwDjEMMAoGA1UEAwwDdDY5 -pBAwDjEMMAoGA1UEAwwDdDcwpBAwDjEMMAoGA1UEAwwDdDcxpBAwDjEMMAoGA1UE -AwwDdDcypBAwDjEMMAoGA1UEAwwDdDczpBAwDjEMMAoGA1UEAwwDdDc0pBAwDjEM -MAoGA1UEAwwDdDc1pBAwDjEMMAoGA1UEAwwDdDc2pBAwDjEMMAoGA1UEAwwDdDc3 -pBAwDjEMMAoGA1UEAwwDdDc4pBAwDjEMMAoGA1UEAwwDdDc5pBAwDjEMMAoGA1UE -AwwDdDgwpBAwDjEMMAoGA1UEAwwDdDgxpBAwDjEMMAoGA1UEAwwDdDgypBAwDjEM -MAoGA1UEAwwDdDgzpBAwDjEMMAoGA1UEAwwDdDg0pBAwDjEMMAoGA1UEAwwDdDg1 -pBAwDjEMMAoGA1UEAwwDdDg2pBAwDjEMMAoGA1UEAwwDdDg3pBAwDjEMMAoGA1UE -AwwDdDg4pBAwDjEMMAoGA1UEAwwDdDg5pBAwDjEMMAoGA1UEAwwDdDkwpBAwDjEM -MAoGA1UEAwwDdDkxpBAwDjEMMAoGA1UEAwwDdDkypBAwDjEMMAoGA1UEAwwDdDkz -pBAwDjEMMAoGA1UEAwwDdDk0pBAwDjEMMAoGA1UEAwwDdDk1pBAwDjEMMAoGA1UE -AwwDdDk2pBAwDjEMMAoGA1UEAwwDdDk3pBAwDjEMMAoGA1UEAwwDdDk4pBAwDjEM -MAoGA1UEAwwDdDk5pBEwDzENMAsGA1UEAwwEdDEwMKQRMA8xDTALBgNVBAMMBHQx -MDGkETAPMQ0wCwYDVQQDDAR0MTAypBEwDzENMAsGA1UEAwwEdDEwM6QRMA8xDTAL -BgNVBAMMBHQxMDSkETAPMQ0wCwYDVQQDDAR0MTA1pBEwDzENMAsGA1UEAwwEdDEw -NqQRMA8xDTALBgNVBAMMBHQxMDekETAPMQ0wCwYDVQQDDAR0MTA4pBEwDzENMAsG -A1UEAwwEdDEwOaQRMA8xDTALBgNVBAMMBHQxMTCkETAPMQ0wCwYDVQQDDAR0MTEx -pBEwDzENMAsGA1UEAwwEdDExMqQRMA8xDTALBgNVBAMMBHQxMTOkETAPMQ0wCwYD -VQQDDAR0MTE0pBEwDzENMAsGA1UEAwwEdDExNaQRMA8xDTALBgNVBAMMBHQxMTak -ETAPMQ0wCwYDVQQDDAR0MTE3pBEwDzENMAsGA1UEAwwEdDExOKQRMA8xDTALBgNV -BAMMBHQxMTmkETAPMQ0wCwYDVQQDDAR0MTIwpBEwDzENMAsGA1UEAwwEdDEyMaQR -MA8xDTALBgNVBAMMBHQxMjKkETAPMQ0wCwYDVQQDDAR0MTIzpBEwDzENMAsGA1UE -AwwEdDEyNKQRMA8xDTALBgNVBAMMBHQxMjWkETAPMQ0wCwYDVQQDDAR0MTI2pBEw -DzENMAsGA1UEAwwEdDEyN6QRMA8xDTALBgNVBAMMBHQxMjikETAPMQ0wCwYDVQQD -DAR0MTI5pBEwDzENMAsGA1UEAwwEdDEzMKQRMA8xDTALBgNVBAMMBHQxMzGkETAP -MQ0wCwYDVQQDDAR0MTMypBEwDzENMAsGA1UEAwwEdDEzM6QRMA8xDTALBgNVBAMM -BHQxMzSkETAPMQ0wCwYDVQQDDAR0MTM1pBEwDzENMAsGA1UEAwwEdDEzNqQRMA8x -DTALBgNVBAMMBHQxMzekETAPMQ0wCwYDVQQDDAR0MTM4pBEwDzENMAsGA1UEAwwE -dDEzOaQRMA8xDTALBgNVBAMMBHQxNDCkETAPMQ0wCwYDVQQDDAR0MTQxpBEwDzEN -MAsGA1UEAwwEdDE0MqQRMA8xDTALBgNVBAMMBHQxNDOkETAPMQ0wCwYDVQQDDAR0 -MTQ0pBEwDzENMAsGA1UEAwwEdDE0NaQRMA8xDTALBgNVBAMMBHQxNDakETAPMQ0w -CwYDVQQDDAR0MTQ3pBEwDzENMAsGA1UEAwwEdDE0OKQRMA8xDTALBgNVBAMMBHQx -NDmkETAPMQ0wCwYDVQQDDAR0MTUwpBEwDzENMAsGA1UEAwwEdDE1MaQRMA8xDTAL -BgNVBAMMBHQxNTKkETAPMQ0wCwYDVQQDDAR0MTUzpBEwDzENMAsGA1UEAwwEdDE1 -NKQRMA8xDTALBgNVBAMMBHQxNTWkETAPMQ0wCwYDVQQDDAR0MTU2pBEwDzENMAsG -A1UEAwwEdDE1N6QRMA8xDTALBgNVBAMMBHQxNTikETAPMQ0wCwYDVQQDDAR0MTU5 -pBEwDzENMAsGA1UEAwwEdDE2MKQRMA8xDTALBgNVBAMMBHQxNjGkETAPMQ0wCwYD -VQQDDAR0MTYypBEwDzENMAsGA1UEAwwEdDE2M6QRMA8xDTALBgNVBAMMBHQxNjSk -ETAPMQ0wCwYDVQQDDAR0MTY1pBEwDzENMAsGA1UEAwwEdDE2NqQRMA8xDTALBgNV -BAMMBHQxNjekETAPMQ0wCwYDVQQDDAR0MTY4pBEwDzENMAsGA1UEAwwEdDE2OaQR -MA8xDTALBgNVBAMMBHQxNzCkETAPMQ0wCwYDVQQDDAR0MTcxpBEwDzENMAsGA1UE -AwwEdDE3MqQRMA8xDTALBgNVBAMMBHQxNzOkETAPMQ0wCwYDVQQDDAR0MTc0pBEw -DzENMAsGA1UEAwwEdDE3NaQRMA8xDTALBgNVBAMMBHQxNzakETAPMQ0wCwYDVQQD -DAR0MTc3pBEwDzENMAsGA1UEAwwEdDE3OKQRMA8xDTALBgNVBAMMBHQxNzmkETAP -MQ0wCwYDVQQDDAR0MTgwpBEwDzENMAsGA1UEAwwEdDE4MaQRMA8xDTALBgNVBAMM -BHQxODKkETAPMQ0wCwYDVQQDDAR0MTgzpBEwDzENMAsGA1UEAwwEdDE4NKQRMA8x -DTALBgNVBAMMBHQxODWkETAPMQ0wCwYDVQQDDAR0MTg2pBEwDzENMAsGA1UEAwwE -dDE4N6QRMA8xDTALBgNVBAMMBHQxODikETAPMQ0wCwYDVQQDDAR0MTg5pBEwDzEN -MAsGA1UEAwwEdDE5MKQRMA8xDTALBgNVBAMMBHQxOTGkETAPMQ0wCwYDVQQDDAR0 -MTkypBEwDzENMAsGA1UEAwwEdDE5M6QRMA8xDTALBgNVBAMMBHQxOTSkETAPMQ0w -CwYDVQQDDAR0MTk1pBEwDzENMAsGA1UEAwwEdDE5NqQRMA8xDTALBgNVBAMMBHQx -OTekETAPMQ0wCwYDVQQDDAR0MTk4pBEwDzENMAsGA1UEAwwEdDE5OaQRMA8xDTAL -BgNVBAMMBHQyMDCkETAPMQ0wCwYDVQQDDAR0MjAxpBEwDzENMAsGA1UEAwwEdDIw -MqQRMA8xDTALBgNVBAMMBHQyMDOkETAPMQ0wCwYDVQQDDAR0MjA0pBEwDzENMAsG -A1UEAwwEdDIwNaQRMA8xDTALBgNVBAMMBHQyMDakETAPMQ0wCwYDVQQDDAR0MjA3 -pBEwDzENMAsGA1UEAwwEdDIwOKQRMA8xDTALBgNVBAMMBHQyMDmkETAPMQ0wCwYD -VQQDDAR0MjEwpBEwDzENMAsGA1UEAwwEdDIxMaQRMA8xDTALBgNVBAMMBHQyMTKk -ETAPMQ0wCwYDVQQDDAR0MjEzpBEwDzENMAsGA1UEAwwEdDIxNKQRMA8xDTALBgNV -BAMMBHQyMTWkETAPMQ0wCwYDVQQDDAR0MjE2pBEwDzENMAsGA1UEAwwEdDIxN6QR -MA8xDTALBgNVBAMMBHQyMTikETAPMQ0wCwYDVQQDDAR0MjE5pBEwDzENMAsGA1UE -AwwEdDIyMKQRMA8xDTALBgNVBAMMBHQyMjGkETAPMQ0wCwYDVQQDDAR0MjIypBEw -DzENMAsGA1UEAwwEdDIyM6QRMA8xDTALBgNVBAMMBHQyMjSkETAPMQ0wCwYDVQQD -DAR0MjI1pBEwDzENMAsGA1UEAwwEdDIyNqQRMA8xDTALBgNVBAMMBHQyMjekETAP -MQ0wCwYDVQQDDAR0MjI4pBEwDzENMAsGA1UEAwwEdDIyOaQRMA8xDTALBgNVBAMM -BHQyMzCkETAPMQ0wCwYDVQQDDAR0MjMxpBEwDzENMAsGA1UEAwwEdDIzMqQRMA8x -DTALBgNVBAMMBHQyMzOkETAPMQ0wCwYDVQQDDAR0MjM0pBEwDzENMAsGA1UEAwwE -dDIzNaQRMA8xDTALBgNVBAMMBHQyMzakETAPMQ0wCwYDVQQDDAR0MjM3pBEwDzEN -MAsGA1UEAwwEdDIzOKQRMA8xDTALBgNVBAMMBHQyMzmkETAPMQ0wCwYDVQQDDAR0 -MjQwpBEwDzENMAsGA1UEAwwEdDI0MaQRMA8xDTALBgNVBAMMBHQyNDKkETAPMQ0w -CwYDVQQDDAR0MjQzpBEwDzENMAsGA1UEAwwEdDI0NKQRMA8xDTALBgNVBAMMBHQy -NDWkETAPMQ0wCwYDVQQDDAR0MjQ2pBEwDzENMAsGA1UEAwwEdDI0N6QRMA8xDTAL -BgNVBAMMBHQyNDikETAPMQ0wCwYDVQQDDAR0MjQ5pBEwDzENMAsGA1UEAwwEdDI1 -MKQRMA8xDTALBgNVBAMMBHQyNTGkETAPMQ0wCwYDVQQDDAR0MjUypBEwDzENMAsG -A1UEAwwEdDI1M6QRMA8xDTALBgNVBAMMBHQyNTSkETAPMQ0wCwYDVQQDDAR0MjU1 -pBEwDzENMAsGA1UEAwwEdDI1NqQRMA8xDTALBgNVBAMMBHQyNTekETAPMQ0wCwYD -VQQDDAR0MjU4pBEwDzENMAsGA1UEAwwEdDI1OaQRMA8xDTALBgNVBAMMBHQyNjCk -ETAPMQ0wCwYDVQQDDAR0MjYxpBEwDzENMAsGA1UEAwwEdDI2MqQRMA8xDTALBgNV -BAMMBHQyNjOkETAPMQ0wCwYDVQQDDAR0MjY0pBEwDzENMAsGA1UEAwwEdDI2NaQR -MA8xDTALBgNVBAMMBHQyNjakETAPMQ0wCwYDVQQDDAR0MjY3pBEwDzENMAsGA1UE -AwwEdDI2OKQRMA8xDTALBgNVBAMMBHQyNjmkETAPMQ0wCwYDVQQDDAR0MjcwpBEw -DzENMAsGA1UEAwwEdDI3MaQRMA8xDTALBgNVBAMMBHQyNzKkETAPMQ0wCwYDVQQD -DAR0MjczpBEwDzENMAsGA1UEAwwEdDI3NKQRMA8xDTALBgNVBAMMBHQyNzWkETAP -MQ0wCwYDVQQDDAR0Mjc2pBEwDzENMAsGA1UEAwwEdDI3N6QRMA8xDTALBgNVBAMM -BHQyNzikETAPMQ0wCwYDVQQDDAR0Mjc5pBEwDzENMAsGA1UEAwwEdDI4MKQRMA8x -DTALBgNVBAMMBHQyODGkETAPMQ0wCwYDVQQDDAR0MjgypBEwDzENMAsGA1UEAwwE -dDI4M6QRMA8xDTALBgNVBAMMBHQyODSkETAPMQ0wCwYDVQQDDAR0Mjg1pBEwDzEN -MAsGA1UEAwwEdDI4NqQRMA8xDTALBgNVBAMMBHQyODekETAPMQ0wCwYDVQQDDAR0 -Mjg4pBEwDzENMAsGA1UEAwwEdDI4OaQRMA8xDTALBgNVBAMMBHQyOTCkETAPMQ0w -CwYDVQQDDAR0MjkxpBEwDzENMAsGA1UEAwwEdDI5MqQRMA8xDTALBgNVBAMMBHQy -OTOkETAPMQ0wCwYDVQQDDAR0Mjk0pBEwDzENMAsGA1UEAwwEdDI5NaQRMA8xDTAL -BgNVBAMMBHQyOTakETAPMQ0wCwYDVQQDDAR0Mjk3pBEwDzENMAsGA1UEAwwEdDI5 -OKQRMA8xDTALBgNVBAMMBHQyOTmkETAPMQ0wCwYDVQQDDAR0MzAwpBEwDzENMAsG -A1UEAwwEdDMwMaQRMA8xDTALBgNVBAMMBHQzMDKkETAPMQ0wCwYDVQQDDAR0MzAz -pBEwDzENMAsGA1UEAwwEdDMwNKQRMA8xDTALBgNVBAMMBHQzMDWkETAPMQ0wCwYD -VQQDDAR0MzA2pBEwDzENMAsGA1UEAwwEdDMwN6QRMA8xDTALBgNVBAMMBHQzMDik -ETAPMQ0wCwYDVQQDDAR0MzA5pBEwDzENMAsGA1UEAwwEdDMxMKQRMA8xDTALBgNV -BAMMBHQzMTGkETAPMQ0wCwYDVQQDDAR0MzEypBEwDzENMAsGA1UEAwwEdDMxM6QR -MA8xDTALBgNVBAMMBHQzMTSkETAPMQ0wCwYDVQQDDAR0MzE1pBEwDzENMAsGA1UE -AwwEdDMxNqQRMA8xDTALBgNVBAMMBHQzMTekETAPMQ0wCwYDVQQDDAR0MzE4pBEw -DzENMAsGA1UEAwwEdDMxOaQRMA8xDTALBgNVBAMMBHQzMjCkETAPMQ0wCwYDVQQD -DAR0MzIxpBEwDzENMAsGA1UEAwwEdDMyMqQRMA8xDTALBgNVBAMMBHQzMjOkETAP -MQ0wCwYDVQQDDAR0MzI0pBEwDzENMAsGA1UEAwwEdDMyNaQRMA8xDTALBgNVBAMM -BHQzMjakETAPMQ0wCwYDVQQDDAR0MzI3pBEwDzENMAsGA1UEAwwEdDMyOKQRMA8x -DTALBgNVBAMMBHQzMjmkETAPMQ0wCwYDVQQDDAR0MzMwpBEwDzENMAsGA1UEAwwE -dDMzMaQRMA8xDTALBgNVBAMMBHQzMzKkETAPMQ0wCwYDVQQDDAR0MzMzpBEwDzEN -MAsGA1UEAwwEdDMzNKQRMA8xDTALBgNVBAMMBHQzMzWkETAPMQ0wCwYDVQQDDAR0 -MzM2pBEwDzENMAsGA1UEAwwEdDMzN6QRMA8xDTALBgNVBAMMBHQzMzikETAPMQ0w -CwYDVQQDDAR0MzM5pBEwDzENMAsGA1UEAwwEdDM0MKQRMA8xDTALBgNVBAMMBHQz -NDGkETAPMQ0wCwYDVQQDDAR0MzQypBEwDzENMAsGA1UEAwwEdDM0M6QRMA8xDTAL -BgNVBAMMBHQzNDSkETAPMQ0wCwYDVQQDDAR0MzQ1pBEwDzENMAsGA1UEAwwEdDM0 -NqQRMA8xDTALBgNVBAMMBHQzNDekETAPMQ0wCwYDVQQDDAR0MzQ4pBEwDzENMAsG -A1UEAwwEdDM0OaQRMA8xDTALBgNVBAMMBHQzNTCkETAPMQ0wCwYDVQQDDAR0MzUx -pBEwDzENMAsGA1UEAwwEdDM1MqQRMA8xDTALBgNVBAMMBHQzNTOkETAPMQ0wCwYD -VQQDDAR0MzU0pBEwDzENMAsGA1UEAwwEdDM1NaQRMA8xDTALBgNVBAMMBHQzNTak -ETAPMQ0wCwYDVQQDDAR0MzU3pBEwDzENMAsGA1UEAwwEdDM1OKQRMA8xDTALBgNV -BAMMBHQzNTmkETAPMQ0wCwYDVQQDDAR0MzYwpBEwDzENMAsGA1UEAwwEdDM2MaQR -MA8xDTALBgNVBAMMBHQzNjKkETAPMQ0wCwYDVQQDDAR0MzYzpBEwDzENMAsGA1UE -AwwEdDM2NKQRMA8xDTALBgNVBAMMBHQzNjWkETAPMQ0wCwYDVQQDDAR0MzY2pBEw -DzENMAsGA1UEAwwEdDM2N6QRMA8xDTALBgNVBAMMBHQzNjikETAPMQ0wCwYDVQQD -DAR0MzY5pBEwDzENMAsGA1UEAwwEdDM3MKQRMA8xDTALBgNVBAMMBHQzNzGkETAP -MQ0wCwYDVQQDDAR0MzcypBEwDzENMAsGA1UEAwwEdDM3M6QRMA8xDTALBgNVBAMM -BHQzNzSkETAPMQ0wCwYDVQQDDAR0Mzc1pBEwDzENMAsGA1UEAwwEdDM3NqQRMA8x -DTALBgNVBAMMBHQzNzekETAPMQ0wCwYDVQQDDAR0Mzc4pBEwDzENMAsGA1UEAwwE -dDM3OaQRMA8xDTALBgNVBAMMBHQzODCkETAPMQ0wCwYDVQQDDAR0MzgxpBEwDzEN -MAsGA1UEAwwEdDM4MqQRMA8xDTALBgNVBAMMBHQzODOkETAPMQ0wCwYDVQQDDAR0 -Mzg0pBEwDzENMAsGA1UEAwwEdDM4NaQRMA8xDTALBgNVBAMMBHQzODakETAPMQ0w -CwYDVQQDDAR0Mzg3pBEwDzENMAsGA1UEAwwEdDM4OKQRMA8xDTALBgNVBAMMBHQz -ODmkETAPMQ0wCwYDVQQDDAR0MzkwpBEwDzENMAsGA1UEAwwEdDM5MaQRMA8xDTAL -BgNVBAMMBHQzOTKkETAPMQ0wCwYDVQQDDAR0MzkzpBEwDzENMAsGA1UEAwwEdDM5 -NKQRMA8xDTALBgNVBAMMBHQzOTWkETAPMQ0wCwYDVQQDDAR0Mzk2pBEwDzENMAsG -A1UEAwwEdDM5N6QRMA8xDTALBgNVBAMMBHQzOTikETAPMQ0wCwYDVQQDDAR0Mzk5 -pBEwDzENMAsGA1UEAwwEdDQwMKQRMA8xDTALBgNVBAMMBHQ0MDGkETAPMQ0wCwYD -VQQDDAR0NDAypBEwDzENMAsGA1UEAwwEdDQwM6QRMA8xDTALBgNVBAMMBHQ0MDSk -ETAPMQ0wCwYDVQQDDAR0NDA1pBEwDzENMAsGA1UEAwwEdDQwNqQRMA8xDTALBgNV -BAMMBHQ0MDekETAPMQ0wCwYDVQQDDAR0NDA4pBEwDzENMAsGA1UEAwwEdDQwOaQR -MA8xDTALBgNVBAMMBHQ0MTCkETAPMQ0wCwYDVQQDDAR0NDExpBEwDzENMAsGA1UE -AwwEdDQxMqQRMA8xDTALBgNVBAMMBHQ0MTOkETAPMQ0wCwYDVQQDDAR0NDE0pBEw -DzENMAsGA1UEAwwEdDQxNaQRMA8xDTALBgNVBAMMBHQ0MTakETAPMQ0wCwYDVQQD -DAR0NDE3pBEwDzENMAsGA1UEAwwEdDQxOKQRMA8xDTALBgNVBAMMBHQ0MTmkETAP -MQ0wCwYDVQQDDAR0NDIwpBEwDzENMAsGA1UEAwwEdDQyMaQRMA8xDTALBgNVBAMM -BHQ0MjKkETAPMQ0wCwYDVQQDDAR0NDIzpBEwDzENMAsGA1UEAwwEdDQyNKQRMA8x -DTALBgNVBAMMBHQ0MjWkETAPMQ0wCwYDVQQDDAR0NDI2pBEwDzENMAsGA1UEAwwE -dDQyN6QRMA8xDTALBgNVBAMMBHQ0MjikETAPMQ0wCwYDVQQDDAR0NDI5pBEwDzEN -MAsGA1UEAwwEdDQzMKQRMA8xDTALBgNVBAMMBHQ0MzGkETAPMQ0wCwYDVQQDDAR0 -NDMypBEwDzENMAsGA1UEAwwEdDQzM6QRMA8xDTALBgNVBAMMBHQ0MzSkETAPMQ0w -CwYDVQQDDAR0NDM1pBEwDzENMAsGA1UEAwwEdDQzNqQRMA8xDTALBgNVBAMMBHQ0 -MzekETAPMQ0wCwYDVQQDDAR0NDM4pBEwDzENMAsGA1UEAwwEdDQzOaQRMA8xDTAL -BgNVBAMMBHQ0NDCkETAPMQ0wCwYDVQQDDAR0NDQxpBEwDzENMAsGA1UEAwwEdDQ0 -MqQRMA8xDTALBgNVBAMMBHQ0NDOkETAPMQ0wCwYDVQQDDAR0NDQ0pBEwDzENMAsG -A1UEAwwEdDQ0NaQRMA8xDTALBgNVBAMMBHQ0NDakETAPMQ0wCwYDVQQDDAR0NDQ3 -pBEwDzENMAsGA1UEAwwEdDQ0OKQRMA8xDTALBgNVBAMMBHQ0NDmkETAPMQ0wCwYD -VQQDDAR0NDUwpBEwDzENMAsGA1UEAwwEdDQ1MaQRMA8xDTALBgNVBAMMBHQ0NTKk -ETAPMQ0wCwYDVQQDDAR0NDUzpBEwDzENMAsGA1UEAwwEdDQ1NKQRMA8xDTALBgNV -BAMMBHQ0NTWkETAPMQ0wCwYDVQQDDAR0NDU2pBEwDzENMAsGA1UEAwwEdDQ1N6QR -MA8xDTALBgNVBAMMBHQ0NTikETAPMQ0wCwYDVQQDDAR0NDU5pBEwDzENMAsGA1UE -AwwEdDQ2MKQRMA8xDTALBgNVBAMMBHQ0NjGkETAPMQ0wCwYDVQQDDAR0NDYypBEw -DzENMAsGA1UEAwwEdDQ2M6QRMA8xDTALBgNVBAMMBHQ0NjSkETAPMQ0wCwYDVQQD -DAR0NDY1pBEwDzENMAsGA1UEAwwEdDQ2NqQRMA8xDTALBgNVBAMMBHQ0NjekETAP -MQ0wCwYDVQQDDAR0NDY4pBEwDzENMAsGA1UEAwwEdDQ2OaQRMA8xDTALBgNVBAMM -BHQ0NzCkETAPMQ0wCwYDVQQDDAR0NDcxpBEwDzENMAsGA1UEAwwEdDQ3MqQRMA8x -DTALBgNVBAMMBHQ0NzOkETAPMQ0wCwYDVQQDDAR0NDc0pBEwDzENMAsGA1UEAwwE -dDQ3NaQRMA8xDTALBgNVBAMMBHQ0NzakETAPMQ0wCwYDVQQDDAR0NDc3pBEwDzEN -MAsGA1UEAwwEdDQ3OKQRMA8xDTALBgNVBAMMBHQ0NzmkETAPMQ0wCwYDVQQDDAR0 -NDgwpBEwDzENMAsGA1UEAwwEdDQ4MaQRMA8xDTALBgNVBAMMBHQ0ODKkETAPMQ0w -CwYDVQQDDAR0NDgzpBEwDzENMAsGA1UEAwwEdDQ4NKQRMA8xDTALBgNVBAMMBHQ0 -ODWkETAPMQ0wCwYDVQQDDAR0NDg2pBEwDzENMAsGA1UEAwwEdDQ4N6QRMA8xDTAL -BgNVBAMMBHQ0ODikETAPMQ0wCwYDVQQDDAR0NDg5pBEwDzENMAsGA1UEAwwEdDQ5 -MKQRMA8xDTALBgNVBAMMBHQ0OTGkETAPMQ0wCwYDVQQDDAR0NDkypBEwDzENMAsG -A1UEAwwEdDQ5M6QRMA8xDTALBgNVBAMMBHQ0OTSkETAPMQ0wCwYDVQQDDAR0NDk1 -pBEwDzENMAsGA1UEAwwEdDQ5NqQRMA8xDTALBgNVBAMMBHQ0OTekETAPMQ0wCwYD -VQQDDAR0NDk4pBEwDzENMAsGA1UEAwwEdDQ5OaQRMA8xDTALBgNVBAMMBHQ1MDCk -ETAPMQ0wCwYDVQQDDAR0NTAxpBEwDzENMAsGA1UEAwwEdDUwMqQRMA8xDTALBgNV -BAMMBHQ1MDOkETAPMQ0wCwYDVQQDDAR0NTA0pBEwDzENMAsGA1UEAwwEdDUwNaQR -MA8xDTALBgNVBAMMBHQ1MDakETAPMQ0wCwYDVQQDDAR0NTA3pBEwDzENMAsGA1UE -AwwEdDUwOKQRMA8xDTALBgNVBAMMBHQ1MDmkETAPMQ0wCwYDVQQDDAR0NTEwpBEw -DzENMAsGA1UEAwwEdDUxMaQRMA8xDTALBgNVBAMMBHQ1MTKkETAPMQ0wCwYDVQQD -DAR0NTEzpBEwDzENMAsGA1UEAwwEdDUxNKQRMA8xDTALBgNVBAMMBHQ1MTWkETAP -MQ0wCwYDVQQDDAR0NTE2pBEwDzENMAsGA1UEAwwEdDUxN6QRMA8xDTALBgNVBAMM -BHQ1MTikETAPMQ0wCwYDVQQDDAR0NTE5pBEwDzENMAsGA1UEAwwEdDUyMKQRMA8x -DTALBgNVBAMMBHQ1MjGkETAPMQ0wCwYDVQQDDAR0NTIypBEwDzENMAsGA1UEAwwE -dDUyM6QRMA8xDTALBgNVBAMMBHQ1MjSkETAPMQ0wCwYDVQQDDAR0NTI1pBEwDzEN -MAsGA1UEAwwEdDUyNqQRMA8xDTALBgNVBAMMBHQ1MjekETAPMQ0wCwYDVQQDDAR0 -NTI4pBEwDzENMAsGA1UEAwwEdDUyOaQRMA8xDTALBgNVBAMMBHQ1MzCkETAPMQ0w -CwYDVQQDDAR0NTMxpBEwDzENMAsGA1UEAwwEdDUzMqQRMA8xDTALBgNVBAMMBHQ1 -MzOkETAPMQ0wCwYDVQQDDAR0NTM0pBEwDzENMAsGA1UEAwwEdDUzNaQRMA8xDTAL -BgNVBAMMBHQ1MzakETAPMQ0wCwYDVQQDDAR0NTM3pBEwDzENMAsGA1UEAwwEdDUz -OKQRMA8xDTALBgNVBAMMBHQ1MzmkETAPMQ0wCwYDVQQDDAR0NTQwpBEwDzENMAsG -A1UEAwwEdDU0MaQRMA8xDTALBgNVBAMMBHQ1NDKkETAPMQ0wCwYDVQQDDAR0NTQz -pBEwDzENMAsGA1UEAwwEdDU0NKQRMA8xDTALBgNVBAMMBHQ1NDWkETAPMQ0wCwYD -VQQDDAR0NTQ2pBEwDzENMAsGA1UEAwwEdDU0N6QRMA8xDTALBgNVBAMMBHQ1NDik -ETAPMQ0wCwYDVQQDDAR0NTQ5pBEwDzENMAsGA1UEAwwEdDU1MKQRMA8xDTALBgNV -BAMMBHQ1NTGkETAPMQ0wCwYDVQQDDAR0NTUypBEwDzENMAsGA1UEAwwEdDU1M6QR -MA8xDTALBgNVBAMMBHQ1NTSkETAPMQ0wCwYDVQQDDAR0NTU1pBEwDzENMAsGA1UE -AwwEdDU1NqQRMA8xDTALBgNVBAMMBHQ1NTekETAPMQ0wCwYDVQQDDAR0NTU4pBEw -DzENMAsGA1UEAwwEdDU1OaQRMA8xDTALBgNVBAMMBHQ1NjCkETAPMQ0wCwYDVQQD -DAR0NTYxpBEwDzENMAsGA1UEAwwEdDU2MqQRMA8xDTALBgNVBAMMBHQ1NjOkETAP -MQ0wCwYDVQQDDAR0NTY0pBEwDzENMAsGA1UEAwwEdDU2NaQRMA8xDTALBgNVBAMM -BHQ1NjakETAPMQ0wCwYDVQQDDAR0NTY3pBEwDzENMAsGA1UEAwwEdDU2OKQRMA8x -DTALBgNVBAMMBHQ1NjmkETAPMQ0wCwYDVQQDDAR0NTcwpBEwDzENMAsGA1UEAwwE -dDU3MaQRMA8xDTALBgNVBAMMBHQ1NzKkETAPMQ0wCwYDVQQDDAR0NTczpBEwDzEN -MAsGA1UEAwwEdDU3NKQRMA8xDTALBgNVBAMMBHQ1NzWkETAPMQ0wCwYDVQQDDAR0 -NTc2pBEwDzENMAsGA1UEAwwEdDU3N6QRMA8xDTALBgNVBAMMBHQ1NzikETAPMQ0w -CwYDVQQDDAR0NTc5pBEwDzENMAsGA1UEAwwEdDU4MKQRMA8xDTALBgNVBAMMBHQ1 -ODGkETAPMQ0wCwYDVQQDDAR0NTgypBEwDzENMAsGA1UEAwwEdDU4M6QRMA8xDTAL -BgNVBAMMBHQ1ODSkETAPMQ0wCwYDVQQDDAR0NTg1pBEwDzENMAsGA1UEAwwEdDU4 -NqQRMA8xDTALBgNVBAMMBHQ1ODekETAPMQ0wCwYDVQQDDAR0NTg4pBEwDzENMAsG -A1UEAwwEdDU4OaQRMA8xDTALBgNVBAMMBHQ1OTCkETAPMQ0wCwYDVQQDDAR0NTkx -pBEwDzENMAsGA1UEAwwEdDU5MqQRMA8xDTALBgNVBAMMBHQ1OTOkETAPMQ0wCwYD -VQQDDAR0NTk0pBEwDzENMAsGA1UEAwwEdDU5NaQRMA8xDTALBgNVBAMMBHQ1OTak -ETAPMQ0wCwYDVQQDDAR0NTk3pBEwDzENMAsGA1UEAwwEdDU5OKQRMA8xDTALBgNV -BAMMBHQ1OTmkETAPMQ0wCwYDVQQDDAR0NjAwpBEwDzENMAsGA1UEAwwEdDYwMaQR -MA8xDTALBgNVBAMMBHQ2MDKkETAPMQ0wCwYDVQQDDAR0NjAzpBEwDzENMAsGA1UE -AwwEdDYwNKQRMA8xDTALBgNVBAMMBHQ2MDWkETAPMQ0wCwYDVQQDDAR0NjA2pBEw -DzENMAsGA1UEAwwEdDYwN6QRMA8xDTALBgNVBAMMBHQ2MDikETAPMQ0wCwYDVQQD -DAR0NjA5pBEwDzENMAsGA1UEAwwEdDYxMKQRMA8xDTALBgNVBAMMBHQ2MTGkETAP -MQ0wCwYDVQQDDAR0NjEypBEwDzENMAsGA1UEAwwEdDYxM6QRMA8xDTALBgNVBAMM -BHQ2MTSkETAPMQ0wCwYDVQQDDAR0NjE1pBEwDzENMAsGA1UEAwwEdDYxNqQRMA8x -DTALBgNVBAMMBHQ2MTekETAPMQ0wCwYDVQQDDAR0NjE4pBEwDzENMAsGA1UEAwwE -dDYxOaQRMA8xDTALBgNVBAMMBHQ2MjCkETAPMQ0wCwYDVQQDDAR0NjIxpBEwDzEN -MAsGA1UEAwwEdDYyMqQRMA8xDTALBgNVBAMMBHQ2MjOkETAPMQ0wCwYDVQQDDAR0 -NjI0pBEwDzENMAsGA1UEAwwEdDYyNaQRMA8xDTALBgNVBAMMBHQ2MjakETAPMQ0w -CwYDVQQDDAR0NjI3pBEwDzENMAsGA1UEAwwEdDYyOKQRMA8xDTALBgNVBAMMBHQ2 -MjmkETAPMQ0wCwYDVQQDDAR0NjMwpBEwDzENMAsGA1UEAwwEdDYzMaQRMA8xDTAL -BgNVBAMMBHQ2MzKkETAPMQ0wCwYDVQQDDAR0NjMzpBEwDzENMAsGA1UEAwwEdDYz -NKQRMA8xDTALBgNVBAMMBHQ2MzWkETAPMQ0wCwYDVQQDDAR0NjM2pBEwDzENMAsG -A1UEAwwEdDYzN6QRMA8xDTALBgNVBAMMBHQ2MzikETAPMQ0wCwYDVQQDDAR0NjM5 -pBEwDzENMAsGA1UEAwwEdDY0MKQRMA8xDTALBgNVBAMMBHQ2NDGkETAPMQ0wCwYD -VQQDDAR0NjQypBEwDzENMAsGA1UEAwwEdDY0M6QRMA8xDTALBgNVBAMMBHQ2NDSk -ETAPMQ0wCwYDVQQDDAR0NjQ1pBEwDzENMAsGA1UEAwwEdDY0NqQRMA8xDTALBgNV -BAMMBHQ2NDekETAPMQ0wCwYDVQQDDAR0NjQ4pBEwDzENMAsGA1UEAwwEdDY0OaQR -MA8xDTALBgNVBAMMBHQ2NTCkETAPMQ0wCwYDVQQDDAR0NjUxpBEwDzENMAsGA1UE -AwwEdDY1MqQRMA8xDTALBgNVBAMMBHQ2NTOkETAPMQ0wCwYDVQQDDAR0NjU0pBEw -DzENMAsGA1UEAwwEdDY1NaQRMA8xDTALBgNVBAMMBHQ2NTakETAPMQ0wCwYDVQQD -DAR0NjU3pBEwDzENMAsGA1UEAwwEdDY1OKQRMA8xDTALBgNVBAMMBHQ2NTmkETAP -MQ0wCwYDVQQDDAR0NjYwpBEwDzENMAsGA1UEAwwEdDY2MaQRMA8xDTALBgNVBAMM -BHQ2NjKkETAPMQ0wCwYDVQQDDAR0NjYzpBEwDzENMAsGA1UEAwwEdDY2NKQRMA8x -DTALBgNVBAMMBHQ2NjWkETAPMQ0wCwYDVQQDDAR0NjY2pBEwDzENMAsGA1UEAwwE -dDY2N6QRMA8xDTALBgNVBAMMBHQ2NjikETAPMQ0wCwYDVQQDDAR0NjY5pBEwDzEN -MAsGA1UEAwwEdDY3MKQRMA8xDTALBgNVBAMMBHQ2NzGkETAPMQ0wCwYDVQQDDAR0 -NjcypBEwDzENMAsGA1UEAwwEdDY3M6QRMA8xDTALBgNVBAMMBHQ2NzSkETAPMQ0w -CwYDVQQDDAR0Njc1pBEwDzENMAsGA1UEAwwEdDY3NqQRMA8xDTALBgNVBAMMBHQ2 -NzekETAPMQ0wCwYDVQQDDAR0Njc4pBEwDzENMAsGA1UEAwwEdDY3OaQRMA8xDTAL -BgNVBAMMBHQ2ODCkETAPMQ0wCwYDVQQDDAR0NjgxpBEwDzENMAsGA1UEAwwEdDY4 -MqQRMA8xDTALBgNVBAMMBHQ2ODOkETAPMQ0wCwYDVQQDDAR0Njg0pBEwDzENMAsG -A1UEAwwEdDY4NaQRMA8xDTALBgNVBAMMBHQ2ODakETAPMQ0wCwYDVQQDDAR0Njg3 -pBEwDzENMAsGA1UEAwwEdDY4OKQRMA8xDTALBgNVBAMMBHQ2ODmkETAPMQ0wCwYD -VQQDDAR0NjkwpBEwDzENMAsGA1UEAwwEdDY5MaQRMA8xDTALBgNVBAMMBHQ2OTKk -ETAPMQ0wCwYDVQQDDAR0NjkzpBEwDzENMAsGA1UEAwwEdDY5NKQRMA8xDTALBgNV -BAMMBHQ2OTWkETAPMQ0wCwYDVQQDDAR0Njk2pBEwDzENMAsGA1UEAwwEdDY5N6QR -MA8xDTALBgNVBAMMBHQ2OTikETAPMQ0wCwYDVQQDDAR0Njk5pBEwDzENMAsGA1UE -AwwEdDcwMKQRMA8xDTALBgNVBAMMBHQ3MDGkETAPMQ0wCwYDVQQDDAR0NzAypBEw -DzENMAsGA1UEAwwEdDcwM6QRMA8xDTALBgNVBAMMBHQ3MDSkETAPMQ0wCwYDVQQD -DAR0NzA1pBEwDzENMAsGA1UEAwwEdDcwNqQRMA8xDTALBgNVBAMMBHQ3MDekETAP -MQ0wCwYDVQQDDAR0NzA4pBEwDzENMAsGA1UEAwwEdDcwOaQRMA8xDTALBgNVBAMM -BHQ3MTCkETAPMQ0wCwYDVQQDDAR0NzExpBEwDzENMAsGA1UEAwwEdDcxMqQRMA8x -DTALBgNVBAMMBHQ3MTOkETAPMQ0wCwYDVQQDDAR0NzE0pBEwDzENMAsGA1UEAwwE -dDcxNaQRMA8xDTALBgNVBAMMBHQ3MTakETAPMQ0wCwYDVQQDDAR0NzE3pBEwDzEN -MAsGA1UEAwwEdDcxOKQRMA8xDTALBgNVBAMMBHQ3MTmkETAPMQ0wCwYDVQQDDAR0 -NzIwpBEwDzENMAsGA1UEAwwEdDcyMaQRMA8xDTALBgNVBAMMBHQ3MjKkETAPMQ0w -CwYDVQQDDAR0NzIzpBEwDzENMAsGA1UEAwwEdDcyNKQRMA8xDTALBgNVBAMMBHQ3 -MjWkETAPMQ0wCwYDVQQDDAR0NzI2pBEwDzENMAsGA1UEAwwEdDcyN6QRMA8xDTAL -BgNVBAMMBHQ3MjikETAPMQ0wCwYDVQQDDAR0NzI5pBEwDzENMAsGA1UEAwwEdDcz -MKQRMA8xDTALBgNVBAMMBHQ3MzGkETAPMQ0wCwYDVQQDDAR0NzMypBEwDzENMAsG -A1UEAwwEdDczM6QRMA8xDTALBgNVBAMMBHQ3MzSkETAPMQ0wCwYDVQQDDAR0NzM1 -pBEwDzENMAsGA1UEAwwEdDczNqQRMA8xDTALBgNVBAMMBHQ3MzekETAPMQ0wCwYD -VQQDDAR0NzM4pBEwDzENMAsGA1UEAwwEdDczOaQRMA8xDTALBgNVBAMMBHQ3NDCk -ETAPMQ0wCwYDVQQDDAR0NzQxpBEwDzENMAsGA1UEAwwEdDc0MqQRMA8xDTALBgNV -BAMMBHQ3NDOkETAPMQ0wCwYDVQQDDAR0NzQ0pBEwDzENMAsGA1UEAwwEdDc0NaQR -MA8xDTALBgNVBAMMBHQ3NDakETAPMQ0wCwYDVQQDDAR0NzQ3pBEwDzENMAsGA1UE -AwwEdDc0OKQRMA8xDTALBgNVBAMMBHQ3NDmkETAPMQ0wCwYDVQQDDAR0NzUwpBEw -DzENMAsGA1UEAwwEdDc1MaQRMA8xDTALBgNVBAMMBHQ3NTKkETAPMQ0wCwYDVQQD -DAR0NzUzpBEwDzENMAsGA1UEAwwEdDc1NKQRMA8xDTALBgNVBAMMBHQ3NTWkETAP -MQ0wCwYDVQQDDAR0NzU2pBEwDzENMAsGA1UEAwwEdDc1N6QRMA8xDTALBgNVBAMM -BHQ3NTikETAPMQ0wCwYDVQQDDAR0NzU5pBEwDzENMAsGA1UEAwwEdDc2MKQRMA8x -DTALBgNVBAMMBHQ3NjGkETAPMQ0wCwYDVQQDDAR0NzYypBEwDzENMAsGA1UEAwwE -dDc2M6QRMA8xDTALBgNVBAMMBHQ3NjSkETAPMQ0wCwYDVQQDDAR0NzY1pBEwDzEN -MAsGA1UEAwwEdDc2NqQRMA8xDTALBgNVBAMMBHQ3NjekETAPMQ0wCwYDVQQDDAR0 -NzY4pBEwDzENMAsGA1UEAwwEdDc2OaQRMA8xDTALBgNVBAMMBHQ3NzCkETAPMQ0w -CwYDVQQDDAR0NzcxpBEwDzENMAsGA1UEAwwEdDc3MqQRMA8xDTALBgNVBAMMBHQ3 -NzOkETAPMQ0wCwYDVQQDDAR0Nzc0pBEwDzENMAsGA1UEAwwEdDc3NaQRMA8xDTAL -BgNVBAMMBHQ3NzakETAPMQ0wCwYDVQQDDAR0Nzc3pBEwDzENMAsGA1UEAwwEdDc3 -OKQRMA8xDTALBgNVBAMMBHQ3NzmkETAPMQ0wCwYDVQQDDAR0NzgwpBEwDzENMAsG -A1UEAwwEdDc4MaQRMA8xDTALBgNVBAMMBHQ3ODKkETAPMQ0wCwYDVQQDDAR0Nzgz -pBEwDzENMAsGA1UEAwwEdDc4NKQRMA8xDTALBgNVBAMMBHQ3ODWkETAPMQ0wCwYD -VQQDDAR0Nzg2pBEwDzENMAsGA1UEAwwEdDc4N6QRMA8xDTALBgNVBAMMBHQ3ODik -ETAPMQ0wCwYDVQQDDAR0Nzg5pBEwDzENMAsGA1UEAwwEdDc5MKQRMA8xDTALBgNV -BAMMBHQ3OTGkETAPMQ0wCwYDVQQDDAR0NzkypBEwDzENMAsGA1UEAwwEdDc5M6QR -MA8xDTALBgNVBAMMBHQ3OTSkETAPMQ0wCwYDVQQDDAR0Nzk1pBEwDzENMAsGA1UE -AwwEdDc5NqQRMA8xDTALBgNVBAMMBHQ3OTekETAPMQ0wCwYDVQQDDAR0Nzk4pBEw -DzENMAsGA1UEAwwEdDc5OaQRMA8xDTALBgNVBAMMBHQ4MDCkETAPMQ0wCwYDVQQD -DAR0ODAxpBEwDzENMAsGA1UEAwwEdDgwMqQRMA8xDTALBgNVBAMMBHQ4MDOkETAP -MQ0wCwYDVQQDDAR0ODA0pBEwDzENMAsGA1UEAwwEdDgwNaQRMA8xDTALBgNVBAMM -BHQ4MDakETAPMQ0wCwYDVQQDDAR0ODA3pBEwDzENMAsGA1UEAwwEdDgwOKQRMA8x -DTALBgNVBAMMBHQ4MDmkETAPMQ0wCwYDVQQDDAR0ODEwpBEwDzENMAsGA1UEAwwE -dDgxMaQRMA8xDTALBgNVBAMMBHQ4MTKkETAPMQ0wCwYDVQQDDAR0ODEzpBEwDzEN -MAsGA1UEAwwEdDgxNKQRMA8xDTALBgNVBAMMBHQ4MTWkETAPMQ0wCwYDVQQDDAR0 -ODE2pBEwDzENMAsGA1UEAwwEdDgxN6QRMA8xDTALBgNVBAMMBHQ4MTikETAPMQ0w -CwYDVQQDDAR0ODE5pBEwDzENMAsGA1UEAwwEdDgyMKQRMA8xDTALBgNVBAMMBHQ4 -MjGkETAPMQ0wCwYDVQQDDAR0ODIypBEwDzENMAsGA1UEAwwEdDgyM6QRMA8xDTAL -BgNVBAMMBHQ4MjSkETAPMQ0wCwYDVQQDDAR0ODI1pBEwDzENMAsGA1UEAwwEdDgy -NqQRMA8xDTALBgNVBAMMBHQ4MjekETAPMQ0wCwYDVQQDDAR0ODI4pBEwDzENMAsG -A1UEAwwEdDgyOaQRMA8xDTALBgNVBAMMBHQ4MzCkETAPMQ0wCwYDVQQDDAR0ODMx -pBEwDzENMAsGA1UEAwwEdDgzMqQRMA8xDTALBgNVBAMMBHQ4MzOkETAPMQ0wCwYD -VQQDDAR0ODM0pBEwDzENMAsGA1UEAwwEdDgzNaQRMA8xDTALBgNVBAMMBHQ4Mzak -ETAPMQ0wCwYDVQQDDAR0ODM3pBEwDzENMAsGA1UEAwwEdDgzOKQRMA8xDTALBgNV -BAMMBHQ4MzmkETAPMQ0wCwYDVQQDDAR0ODQwpBEwDzENMAsGA1UEAwwEdDg0MaQR -MA8xDTALBgNVBAMMBHQ4NDKkETAPMQ0wCwYDVQQDDAR0ODQzpBEwDzENMAsGA1UE -AwwEdDg0NKQRMA8xDTALBgNVBAMMBHQ4NDWkETAPMQ0wCwYDVQQDDAR0ODQ2pBEw -DzENMAsGA1UEAwwEdDg0N6QRMA8xDTALBgNVBAMMBHQ4NDikETAPMQ0wCwYDVQQD -DAR0ODQ5pBEwDzENMAsGA1UEAwwEdDg1MKQRMA8xDTALBgNVBAMMBHQ4NTGkETAP -MQ0wCwYDVQQDDAR0ODUypBEwDzENMAsGA1UEAwwEdDg1M6QRMA8xDTALBgNVBAMM -BHQ4NTSkETAPMQ0wCwYDVQQDDAR0ODU1pBEwDzENMAsGA1UEAwwEdDg1NqQRMA8x -DTALBgNVBAMMBHQ4NTekETAPMQ0wCwYDVQQDDAR0ODU4pBEwDzENMAsGA1UEAwwE -dDg1OaQRMA8xDTALBgNVBAMMBHQ4NjCkETAPMQ0wCwYDVQQDDAR0ODYxpBEwDzEN -MAsGA1UEAwwEdDg2MqQRMA8xDTALBgNVBAMMBHQ4NjOkETAPMQ0wCwYDVQQDDAR0 -ODY0pBEwDzENMAsGA1UEAwwEdDg2NaQRMA8xDTALBgNVBAMMBHQ4NjakETAPMQ0w -CwYDVQQDDAR0ODY3pBEwDzENMAsGA1UEAwwEdDg2OKQRMA8xDTALBgNVBAMMBHQ4 -NjmkETAPMQ0wCwYDVQQDDAR0ODcwpBEwDzENMAsGA1UEAwwEdDg3MaQRMA8xDTAL -BgNVBAMMBHQ4NzKkETAPMQ0wCwYDVQQDDAR0ODczpBEwDzENMAsGA1UEAwwEdDg3 -NKQRMA8xDTALBgNVBAMMBHQ4NzWkETAPMQ0wCwYDVQQDDAR0ODc2pBEwDzENMAsG -A1UEAwwEdDg3N6QRMA8xDTALBgNVBAMMBHQ4NzikETAPMQ0wCwYDVQQDDAR0ODc5 -pBEwDzENMAsGA1UEAwwEdDg4MKQRMA8xDTALBgNVBAMMBHQ4ODGkETAPMQ0wCwYD -VQQDDAR0ODgypBEwDzENMAsGA1UEAwwEdDg4M6QRMA8xDTALBgNVBAMMBHQ4ODSk -ETAPMQ0wCwYDVQQDDAR0ODg1pBEwDzENMAsGA1UEAwwEdDg4NqQRMA8xDTALBgNV -BAMMBHQ4ODekETAPMQ0wCwYDVQQDDAR0ODg4pBEwDzENMAsGA1UEAwwEdDg4OaQR -MA8xDTALBgNVBAMMBHQ4OTCkETAPMQ0wCwYDVQQDDAR0ODkxpBEwDzENMAsGA1UE -AwwEdDg5MqQRMA8xDTALBgNVBAMMBHQ4OTOkETAPMQ0wCwYDVQQDDAR0ODk0pBEw -DzENMAsGA1UEAwwEdDg5NaQRMA8xDTALBgNVBAMMBHQ4OTakETAPMQ0wCwYDVQQD -DAR0ODk3pBEwDzENMAsGA1UEAwwEdDg5OKQRMA8xDTALBgNVBAMMBHQ4OTmkETAP -MQ0wCwYDVQQDDAR0OTAwpBEwDzENMAsGA1UEAwwEdDkwMaQRMA8xDTALBgNVBAMM -BHQ5MDKkETAPMQ0wCwYDVQQDDAR0OTAzpBEwDzENMAsGA1UEAwwEdDkwNKQRMA8x -DTALBgNVBAMMBHQ5MDWkETAPMQ0wCwYDVQQDDAR0OTA2pBEwDzENMAsGA1UEAwwE -dDkwN6QRMA8xDTALBgNVBAMMBHQ5MDikETAPMQ0wCwYDVQQDDAR0OTA5pBEwDzEN -MAsGA1UEAwwEdDkxMKQRMA8xDTALBgNVBAMMBHQ5MTGkETAPMQ0wCwYDVQQDDAR0 -OTEypBEwDzENMAsGA1UEAwwEdDkxM6QRMA8xDTALBgNVBAMMBHQ5MTSkETAPMQ0w -CwYDVQQDDAR0OTE1pBEwDzENMAsGA1UEAwwEdDkxNqQRMA8xDTALBgNVBAMMBHQ5 -MTekETAPMQ0wCwYDVQQDDAR0OTE4pBEwDzENMAsGA1UEAwwEdDkxOaQRMA8xDTAL -BgNVBAMMBHQ5MjCkETAPMQ0wCwYDVQQDDAR0OTIxpBEwDzENMAsGA1UEAwwEdDky -MqQRMA8xDTALBgNVBAMMBHQ5MjOkETAPMQ0wCwYDVQQDDAR0OTI0pBEwDzENMAsG -A1UEAwwEdDkyNaQRMA8xDTALBgNVBAMMBHQ5MjakETAPMQ0wCwYDVQQDDAR0OTI3 -pBEwDzENMAsGA1UEAwwEdDkyOKQRMA8xDTALBgNVBAMMBHQ5MjmkETAPMQ0wCwYD -VQQDDAR0OTMwpBEwDzENMAsGA1UEAwwEdDkzMaQRMA8xDTALBgNVBAMMBHQ5MzKk -ETAPMQ0wCwYDVQQDDAR0OTMzpBEwDzENMAsGA1UEAwwEdDkzNKQRMA8xDTALBgNV -BAMMBHQ5MzWkETAPMQ0wCwYDVQQDDAR0OTM2pBEwDzENMAsGA1UEAwwEdDkzN6QR -MA8xDTALBgNVBAMMBHQ5MzikETAPMQ0wCwYDVQQDDAR0OTM5pBEwDzENMAsGA1UE -AwwEdDk0MKQRMA8xDTALBgNVBAMMBHQ5NDGkETAPMQ0wCwYDVQQDDAR0OTQypBEw -DzENMAsGA1UEAwwEdDk0M6QRMA8xDTALBgNVBAMMBHQ5NDSkETAPMQ0wCwYDVQQD -DAR0OTQ1pBEwDzENMAsGA1UEAwwEdDk0NqQRMA8xDTALBgNVBAMMBHQ5NDekETAP -MQ0wCwYDVQQDDAR0OTQ4pBEwDzENMAsGA1UEAwwEdDk0OaQRMA8xDTALBgNVBAMM -BHQ5NTCkETAPMQ0wCwYDVQQDDAR0OTUxpBEwDzENMAsGA1UEAwwEdDk1MqQRMA8x -DTALBgNVBAMMBHQ5NTOkETAPMQ0wCwYDVQQDDAR0OTU0pBEwDzENMAsGA1UEAwwE -dDk1NaQRMA8xDTALBgNVBAMMBHQ5NTakETAPMQ0wCwYDVQQDDAR0OTU3pBEwDzEN -MAsGA1UEAwwEdDk1OKQRMA8xDTALBgNVBAMMBHQ5NTmkETAPMQ0wCwYDVQQDDAR0 -OTYwpBEwDzENMAsGA1UEAwwEdDk2MaQRMA8xDTALBgNVBAMMBHQ5NjKkETAPMQ0w -CwYDVQQDDAR0OTYzpBEwDzENMAsGA1UEAwwEdDk2NKQRMA8xDTALBgNVBAMMBHQ5 -NjWkETAPMQ0wCwYDVQQDDAR0OTY2pBEwDzENMAsGA1UEAwwEdDk2N6QRMA8xDTAL -BgNVBAMMBHQ5NjikETAPMQ0wCwYDVQQDDAR0OTY5pBEwDzENMAsGA1UEAwwEdDk3 -MKQRMA8xDTALBgNVBAMMBHQ5NzGkETAPMQ0wCwYDVQQDDAR0OTcypBEwDzENMAsG -A1UEAwwEdDk3M6QRMA8xDTALBgNVBAMMBHQ5NzSkETAPMQ0wCwYDVQQDDAR0OTc1 -pBEwDzENMAsGA1UEAwwEdDk3NqQRMA8xDTALBgNVBAMMBHQ5NzekETAPMQ0wCwYD -VQQDDAR0OTc4pBEwDzENMAsGA1UEAwwEdDk3OaQRMA8xDTALBgNVBAMMBHQ5ODCk -ETAPMQ0wCwYDVQQDDAR0OTgxpBEwDzENMAsGA1UEAwwEdDk4MqQRMA8xDTALBgNV -BAMMBHQ5ODOkETAPMQ0wCwYDVQQDDAR0OTg0pBEwDzENMAsGA1UEAwwEdDk4NaQR -MA8xDTALBgNVBAMMBHQ5ODakETAPMQ0wCwYDVQQDDAR0OTg3pBEwDzENMAsGA1UE -AwwEdDk4OKQRMA8xDTALBgNVBAMMBHQ5ODmkETAPMQ0wCwYDVQQDDAR0OTkwpBEw -DzENMAsGA1UEAwwEdDk5MaQRMA8xDTALBgNVBAMMBHQ5OTKkETAPMQ0wCwYDVQQD -DAR0OTkzpBEwDzENMAsGA1UEAwwEdDk5NKQRMA8xDTALBgNVBAMMBHQ5OTWkETAP -MQ0wCwYDVQQDDAR0OTk2pBEwDzENMAsGA1UEAwwEdDk5N6QRMA8xDTALBgNVBAMM -BHQ5OTikETAPMQ0wCwYDVQQDDAR0OTk5pBIwEDEOMAwGA1UEAwwFdDEwMDCkEjAQ -MQ4wDAYDVQQDDAV0MTAwMaQSMBAxDjAMBgNVBAMMBXQxMDAypBIwEDEOMAwGA1UE -AwwFdDEwMDOkEjAQMQ4wDAYDVQQDDAV0MTAwNKQSMBAxDjAMBgNVBAMMBXQxMDA1 -pBIwEDEOMAwGA1UEAwwFdDEwMDakEjAQMQ4wDAYDVQQDDAV0MTAwN6QSMBAxDjAM -BgNVBAMMBXQxMDA4pBIwEDEOMAwGA1UEAwwFdDEwMDmkEjAQMQ4wDAYDVQQDDAV0 -MTAxMKQSMBAxDjAMBgNVBAMMBXQxMDExpBIwEDEOMAwGA1UEAwwFdDEwMTKkEjAQ -MQ4wDAYDVQQDDAV0MTAxM6QSMBAxDjAMBgNVBAMMBXQxMDE0pBIwEDEOMAwGA1UE -AwwFdDEwMTWkEjAQMQ4wDAYDVQQDDAV0MTAxNqQSMBAxDjAMBgNVBAMMBXQxMDE3 -pBIwEDEOMAwGA1UEAwwFdDEwMTikEjAQMQ4wDAYDVQQDDAV0MTAxOaQSMBAxDjAM -BgNVBAMMBXQxMDIwpBIwEDEOMAwGA1UEAwwFdDEwMjGkEjAQMQ4wDAYDVQQDDAV0 -MTAyMqQSMBAxDjAMBgNVBAMMBXQxMDIzMA0GCSqGSIb3DQEBCwUAA4IBAQCbtCkw -8C16Zsf4kkzL9AgR9etmwwJKJBLynRmpx1E6k/5xNJMnMhSgG/TrusJL336oV85/ -Yfqf0uyaAlEwE6XranwEs/DmKGZc905wZo8HrkJ3wOzu/xA0g0qygSzfxNj3gHDq -rsh8BUEZ+EAjwcBA4df1+H2wg7NrOgEXaMoKsnfEDENc2EsPIfRvfqj3tLwxzQKa -tnJbu0UMTJdhmCSwRM2vf378clVaVEMEHUC/Up1LwVgs0poE7goE2Nx1Lqs/hwh8 -4vA/axeVL3fi9jCTbNuEqsE9cF36tEDEKIV2c1tOtT28/o1/qPMgMT5p0cf7jHkh -zy8y5kYBv0zyFZaY ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.cnf deleted file mode 100644 index 37d2fc8b38..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.cnf +++ /dev/null @@ -1,1091 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "t0" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,digitalSignature,keyEncipherment -extendedKeyUsage = serverAuth,clientAuth -subjectAltName = @san_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/t0_5.pem -new_certs_dir = out -serial = out/t0.serial -database = out/t0.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/t0.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/t0.cer - -[crl_info] -URI.0 = http://url-for-crl/t0.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[san_info] -DNS.1 = t0.test -DNS.2 = t1.test -DNS.3 = t2.test -DNS.4 = t3.test -DNS.5 = t4.test -DNS.6 = t5.test -DNS.7 = t6.test -DNS.8 = t7.test -DNS.9 = t8.test -DNS.10 = t9.test -DNS.11 = t10.test -DNS.12 = t11.test -DNS.13 = t12.test -DNS.14 = t13.test -DNS.15 = t14.test -DNS.16 = t15.test -DNS.17 = t16.test -DNS.18 = t17.test -DNS.19 = t18.test -DNS.20 = t19.test -DNS.21 = t20.test -DNS.22 = t21.test -DNS.23 = t22.test -DNS.24 = t23.test -DNS.25 = t24.test -DNS.26 = t25.test -DNS.27 = t26.test -DNS.28 = t27.test -DNS.29 = t28.test -DNS.30 = t29.test -DNS.31 = t30.test -DNS.32 = t31.test -DNS.33 = t32.test -DNS.34 = t33.test -DNS.35 = t34.test -DNS.36 = t35.test -DNS.37 = t36.test -DNS.38 = t37.test -DNS.39 = t38.test -DNS.40 = t39.test -DNS.41 = t40.test -DNS.42 = t41.test -DNS.43 = t42.test -DNS.44 = t43.test -DNS.45 = t44.test -DNS.46 = t45.test -DNS.47 = t46.test -DNS.48 = t47.test -DNS.49 = t48.test -DNS.50 = t49.test -DNS.51 = t50.test -DNS.52 = t51.test -DNS.53 = t52.test -DNS.54 = t53.test -DNS.55 = t54.test -DNS.56 = t55.test -DNS.57 = t56.test -DNS.58 = t57.test -DNS.59 = t58.test -DNS.60 = t59.test -DNS.61 = t60.test -DNS.62 = t61.test -DNS.63 = t62.test -DNS.64 = t63.test -DNS.65 = t64.test -DNS.66 = t65.test -DNS.67 = t66.test -DNS.68 = t67.test -DNS.69 = t68.test -DNS.70 = t69.test -DNS.71 = t70.test -DNS.72 = t71.test -DNS.73 = t72.test -DNS.74 = t73.test -DNS.75 = t74.test -DNS.76 = t75.test -DNS.77 = t76.test -DNS.78 = t77.test -DNS.79 = t78.test -DNS.80 = t79.test -DNS.81 = t80.test -DNS.82 = t81.test -DNS.83 = t82.test -DNS.84 = t83.test -DNS.85 = t84.test -DNS.86 = t85.test -DNS.87 = t86.test -DNS.88 = t87.test -DNS.89 = t88.test -DNS.90 = t89.test -DNS.91 = t90.test -DNS.92 = t91.test -DNS.93 = t92.test -DNS.94 = t93.test -DNS.95 = t94.test -DNS.96 = t95.test -DNS.97 = t96.test -DNS.98 = t97.test -DNS.99 = t98.test -DNS.100 = t99.test -DNS.101 = t100.test -DNS.102 = t101.test -DNS.103 = t102.test -DNS.104 = t103.test -DNS.105 = t104.test -DNS.106 = t105.test -DNS.107 = t106.test -DNS.108 = t107.test -DNS.109 = t108.test -DNS.110 = t109.test -DNS.111 = t110.test -DNS.112 = t111.test -DNS.113 = t112.test -DNS.114 = t113.test -DNS.115 = t114.test -DNS.116 = t115.test -DNS.117 = t116.test -DNS.118 = t117.test -DNS.119 = t118.test -DNS.120 = t119.test -DNS.121 = t120.test -DNS.122 = t121.test -DNS.123 = t122.test -DNS.124 = t123.test -DNS.125 = t124.test -DNS.126 = t125.test -DNS.127 = t126.test -DNS.128 = t127.test -DNS.129 = t128.test -DNS.130 = t129.test -DNS.131 = t130.test -DNS.132 = t131.test -DNS.133 = t132.test -DNS.134 = t133.test -DNS.135 = t134.test -DNS.136 = t135.test -DNS.137 = t136.test -DNS.138 = t137.test -DNS.139 = t138.test -DNS.140 = t139.test -DNS.141 = t140.test -DNS.142 = t141.test -DNS.143 = t142.test -DNS.144 = t143.test -DNS.145 = t144.test -DNS.146 = t145.test -DNS.147 = t146.test -DNS.148 = t147.test -DNS.149 = t148.test -DNS.150 = t149.test -DNS.151 = t150.test -DNS.152 = t151.test -DNS.153 = t152.test -DNS.154 = t153.test -DNS.155 = t154.test -DNS.156 = t155.test -DNS.157 = t156.test -DNS.158 = t157.test -DNS.159 = t158.test -DNS.160 = t159.test -DNS.161 = t160.test -DNS.162 = t161.test -DNS.163 = t162.test -DNS.164 = t163.test -DNS.165 = t164.test -DNS.166 = t165.test -DNS.167 = t166.test -DNS.168 = t167.test -DNS.169 = t168.test -DNS.170 = t169.test -DNS.171 = t170.test -DNS.172 = t171.test -DNS.173 = t172.test -DNS.174 = t173.test -DNS.175 = t174.test -DNS.176 = t175.test -DNS.177 = t176.test -DNS.178 = t177.test -DNS.179 = t178.test -DNS.180 = t179.test -DNS.181 = t180.test -DNS.182 = t181.test -DNS.183 = t182.test -DNS.184 = t183.test -DNS.185 = t184.test -DNS.186 = t185.test -DNS.187 = t186.test -DNS.188 = t187.test -DNS.189 = t188.test -DNS.190 = t189.test -DNS.191 = t190.test -DNS.192 = t191.test -DNS.193 = t192.test -DNS.194 = t193.test -DNS.195 = t194.test -DNS.196 = t195.test -DNS.197 = t196.test -DNS.198 = t197.test -DNS.199 = t198.test -DNS.200 = t199.test -DNS.201 = t200.test -DNS.202 = t201.test -DNS.203 = t202.test -DNS.204 = t203.test -DNS.205 = t204.test -DNS.206 = t205.test -DNS.207 = t206.test -DNS.208 = t207.test -DNS.209 = t208.test -DNS.210 = t209.test -DNS.211 = t210.test -DNS.212 = t211.test -DNS.213 = t212.test -DNS.214 = t213.test -DNS.215 = t214.test -DNS.216 = t215.test -DNS.217 = t216.test -DNS.218 = t217.test -DNS.219 = t218.test -DNS.220 = t219.test -DNS.221 = t220.test -DNS.222 = t221.test -DNS.223 = t222.test -DNS.224 = t223.test -DNS.225 = t224.test -DNS.226 = t225.test -DNS.227 = t226.test -DNS.228 = t227.test -DNS.229 = t228.test -DNS.230 = t229.test -DNS.231 = t230.test -DNS.232 = t231.test -DNS.233 = t232.test -DNS.234 = t233.test -DNS.235 = t234.test -DNS.236 = t235.test -DNS.237 = t236.test -DNS.238 = t237.test -DNS.239 = t238.test -DNS.240 = t239.test -DNS.241 = t240.test -DNS.242 = t241.test -DNS.243 = t242.test -DNS.244 = t243.test -DNS.245 = t244.test -DNS.246 = t245.test -DNS.247 = t246.test -DNS.248 = t247.test -DNS.249 = t248.test -DNS.250 = t249.test -DNS.251 = t250.test -DNS.252 = t251.test -DNS.253 = t252.test -DNS.254 = t253.test -DNS.255 = t254.test -DNS.256 = t255.test -DNS.257 = t256.test -DNS.258 = t257.test -DNS.259 = t258.test -DNS.260 = t259.test -DNS.261 = t260.test -DNS.262 = t261.test -DNS.263 = t262.test -DNS.264 = t263.test -DNS.265 = t264.test -DNS.266 = t265.test -DNS.267 = t266.test -DNS.268 = t267.test -DNS.269 = t268.test -DNS.270 = t269.test -DNS.271 = t270.test -DNS.272 = t271.test -DNS.273 = t272.test -DNS.274 = t273.test -DNS.275 = t274.test -DNS.276 = t275.test -DNS.277 = t276.test -DNS.278 = t277.test -DNS.279 = t278.test -DNS.280 = t279.test -DNS.281 = t280.test -DNS.282 = t281.test -DNS.283 = t282.test -DNS.284 = t283.test -DNS.285 = t284.test -DNS.286 = t285.test -DNS.287 = t286.test -DNS.288 = t287.test -DNS.289 = t288.test -DNS.290 = t289.test -DNS.291 = t290.test -DNS.292 = t291.test -DNS.293 = t292.test -DNS.294 = t293.test -DNS.295 = t294.test -DNS.296 = t295.test -DNS.297 = t296.test -DNS.298 = t297.test -DNS.299 = t298.test -DNS.300 = t299.test -DNS.301 = t300.test -DNS.302 = t301.test -DNS.303 = t302.test -DNS.304 = t303.test -DNS.305 = t304.test -DNS.306 = t305.test -DNS.307 = t306.test -DNS.308 = t307.test -DNS.309 = t308.test -DNS.310 = t309.test -DNS.311 = t310.test -DNS.312 = t311.test -DNS.313 = t312.test -DNS.314 = t313.test -DNS.315 = t314.test -DNS.316 = t315.test -DNS.317 = t316.test -DNS.318 = t317.test -DNS.319 = t318.test -DNS.320 = t319.test -DNS.321 = t320.test -DNS.322 = t321.test -DNS.323 = t322.test -DNS.324 = t323.test -DNS.325 = t324.test -DNS.326 = t325.test -DNS.327 = t326.test -DNS.328 = t327.test -DNS.329 = t328.test -DNS.330 = t329.test -DNS.331 = t330.test -DNS.332 = t331.test -DNS.333 = t332.test -DNS.334 = t333.test -DNS.335 = t334.test -DNS.336 = t335.test -DNS.337 = t336.test -DNS.338 = t337.test -DNS.339 = t338.test -DNS.340 = t339.test -DNS.341 = t340.test -DNS.342 = t341.test -DNS.343 = t342.test -DNS.344 = t343.test -DNS.345 = t344.test -DNS.346 = t345.test -DNS.347 = t346.test -DNS.348 = t347.test -DNS.349 = t348.test -DNS.350 = t349.test -DNS.351 = t350.test -DNS.352 = t351.test -DNS.353 = t352.test -DNS.354 = t353.test -DNS.355 = t354.test -DNS.356 = t355.test -DNS.357 = t356.test -DNS.358 = t357.test -DNS.359 = t358.test -DNS.360 = t359.test -DNS.361 = t360.test -DNS.362 = t361.test -DNS.363 = t362.test -DNS.364 = t363.test -DNS.365 = t364.test -DNS.366 = t365.test -DNS.367 = t366.test -DNS.368 = t367.test -DNS.369 = t368.test -DNS.370 = t369.test -DNS.371 = t370.test -DNS.372 = t371.test -DNS.373 = t372.test -DNS.374 = t373.test -DNS.375 = t374.test -DNS.376 = t375.test -DNS.377 = t376.test -DNS.378 = t377.test -DNS.379 = t378.test -DNS.380 = t379.test -DNS.381 = t380.test -DNS.382 = t381.test -DNS.383 = t382.test -DNS.384 = t383.test -DNS.385 = t384.test -DNS.386 = t385.test -DNS.387 = t386.test -DNS.388 = t387.test -DNS.389 = t388.test -DNS.390 = t389.test -DNS.391 = t390.test -DNS.392 = t391.test -DNS.393 = t392.test -DNS.394 = t393.test -DNS.395 = t394.test -DNS.396 = t395.test -DNS.397 = t396.test -DNS.398 = t397.test -DNS.399 = t398.test -DNS.400 = t399.test -DNS.401 = t400.test -DNS.402 = t401.test -DNS.403 = t402.test -DNS.404 = t403.test -DNS.405 = t404.test -DNS.406 = t405.test -DNS.407 = t406.test -DNS.408 = t407.test -DNS.409 = t408.test -DNS.410 = t409.test -DNS.411 = t410.test -DNS.412 = t411.test -DNS.413 = t412.test -DNS.414 = t413.test -DNS.415 = t414.test -DNS.416 = t415.test -DNS.417 = t416.test -DNS.418 = t417.test -DNS.419 = t418.test -DNS.420 = t419.test -DNS.421 = t420.test -DNS.422 = t421.test -DNS.423 = t422.test -DNS.424 = t423.test -DNS.425 = t424.test -DNS.426 = t425.test -DNS.427 = t426.test -DNS.428 = t427.test -DNS.429 = t428.test -DNS.430 = t429.test -DNS.431 = t430.test -DNS.432 = t431.test -DNS.433 = t432.test -DNS.434 = t433.test -DNS.435 = t434.test -DNS.436 = t435.test -DNS.437 = t436.test -DNS.438 = t437.test -DNS.439 = t438.test -DNS.440 = t439.test -DNS.441 = t440.test -DNS.442 = t441.test -DNS.443 = t442.test -DNS.444 = t443.test -DNS.445 = t444.test -DNS.446 = t445.test -DNS.447 = t446.test -DNS.448 = t447.test -DNS.449 = t448.test -DNS.450 = t449.test -DNS.451 = t450.test -DNS.452 = t451.test -DNS.453 = t452.test -DNS.454 = t453.test -DNS.455 = t454.test -DNS.456 = t455.test -DNS.457 = t456.test -DNS.458 = t457.test -DNS.459 = t458.test -DNS.460 = t459.test -DNS.461 = t460.test -DNS.462 = t461.test -DNS.463 = t462.test -DNS.464 = t463.test -DNS.465 = t464.test -DNS.466 = t465.test -DNS.467 = t466.test -DNS.468 = t467.test -DNS.469 = t468.test -DNS.470 = t469.test -DNS.471 = t470.test -DNS.472 = t471.test -DNS.473 = t472.test -DNS.474 = t473.test -DNS.475 = t474.test -DNS.476 = t475.test -DNS.477 = t476.test -DNS.478 = t477.test -DNS.479 = t478.test -DNS.480 = t479.test -DNS.481 = t480.test -DNS.482 = t481.test -DNS.483 = t482.test -DNS.484 = t483.test -DNS.485 = t484.test -DNS.486 = t485.test -DNS.487 = t486.test -DNS.488 = t487.test -DNS.489 = t488.test -DNS.490 = t489.test -DNS.491 = t490.test -DNS.492 = t491.test -DNS.493 = t492.test -DNS.494 = t493.test -DNS.495 = t494.test -DNS.496 = t495.test -DNS.497 = t496.test -DNS.498 = t497.test -DNS.499 = t498.test -DNS.500 = t499.test -DNS.501 = t500.test -DNS.502 = t501.test -DNS.503 = t502.test -DNS.504 = t503.test -DNS.505 = t504.test -DNS.506 = t505.test -DNS.507 = t506.test -DNS.508 = t507.test -DNS.509 = t508.test -DNS.510 = t509.test -DNS.511 = t510.test -DNS.512 = t511.test -DNS.513 = t512.test -DNS.514 = t513.test -DNS.515 = t514.test -DNS.516 = t515.test -DNS.517 = t516.test -DNS.518 = t517.test -DNS.519 = t518.test -DNS.520 = t519.test -DNS.521 = t520.test -DNS.522 = t521.test -DNS.523 = t522.test -DNS.524 = t523.test -DNS.525 = t524.test -DNS.526 = t525.test -DNS.527 = t526.test -DNS.528 = t527.test -DNS.529 = t528.test -DNS.530 = t529.test -DNS.531 = t530.test -DNS.532 = t531.test -DNS.533 = t532.test -DNS.534 = t533.test -DNS.535 = t534.test -DNS.536 = t535.test -DNS.537 = t536.test -DNS.538 = t537.test -DNS.539 = t538.test -DNS.540 = t539.test -DNS.541 = t540.test -DNS.542 = t541.test -DNS.543 = t542.test -DNS.544 = t543.test -DNS.545 = t544.test -DNS.546 = t545.test -DNS.547 = t546.test -DNS.548 = t547.test -DNS.549 = t548.test -DNS.550 = t549.test -DNS.551 = t550.test -DNS.552 = t551.test -DNS.553 = t552.test -DNS.554 = t553.test -DNS.555 = t554.test -DNS.556 = t555.test -DNS.557 = t556.test -DNS.558 = t557.test -DNS.559 = t558.test -DNS.560 = t559.test -DNS.561 = t560.test -DNS.562 = t561.test -DNS.563 = t562.test -DNS.564 = t563.test -DNS.565 = t564.test -DNS.566 = t565.test -DNS.567 = t566.test -DNS.568 = t567.test -DNS.569 = t568.test -DNS.570 = t569.test -DNS.571 = t570.test -DNS.572 = t571.test -DNS.573 = t572.test -DNS.574 = t573.test -DNS.575 = t574.test -DNS.576 = t575.test -DNS.577 = t576.test -DNS.578 = t577.test -DNS.579 = t578.test -DNS.580 = t579.test -DNS.581 = t580.test -DNS.582 = t581.test -DNS.583 = t582.test -DNS.584 = t583.test -DNS.585 = t584.test -DNS.586 = t585.test -DNS.587 = t586.test -DNS.588 = t587.test -DNS.589 = t588.test -DNS.590 = t589.test -DNS.591 = t590.test -DNS.592 = t591.test -DNS.593 = t592.test -DNS.594 = t593.test -DNS.595 = t594.test -DNS.596 = t595.test -DNS.597 = t596.test -DNS.598 = t597.test -DNS.599 = t598.test -DNS.600 = t599.test -DNS.601 = t600.test -DNS.602 = t601.test -DNS.603 = t602.test -DNS.604 = t603.test -DNS.605 = t604.test -DNS.606 = t605.test -DNS.607 = t606.test -DNS.608 = t607.test -DNS.609 = t608.test -DNS.610 = t609.test -DNS.611 = t610.test -DNS.612 = t611.test -DNS.613 = t612.test -DNS.614 = t613.test -DNS.615 = t614.test -DNS.616 = t615.test -DNS.617 = t616.test -DNS.618 = t617.test -DNS.619 = t618.test -DNS.620 = t619.test -DNS.621 = t620.test -DNS.622 = t621.test -DNS.623 = t622.test -DNS.624 = t623.test -DNS.625 = t624.test -DNS.626 = t625.test -DNS.627 = t626.test -DNS.628 = t627.test -DNS.629 = t628.test -DNS.630 = t629.test -DNS.631 = t630.test -DNS.632 = t631.test -DNS.633 = t632.test -DNS.634 = t633.test -DNS.635 = t634.test -DNS.636 = t635.test -DNS.637 = t636.test -DNS.638 = t637.test -DNS.639 = t638.test -DNS.640 = t639.test -DNS.641 = t640.test -DNS.642 = t641.test -DNS.643 = t642.test -DNS.644 = t643.test -DNS.645 = t644.test -DNS.646 = t645.test -DNS.647 = t646.test -DNS.648 = t647.test -DNS.649 = t648.test -DNS.650 = t649.test -DNS.651 = t650.test -DNS.652 = t651.test -DNS.653 = t652.test -DNS.654 = t653.test -DNS.655 = t654.test -DNS.656 = t655.test -DNS.657 = t656.test -DNS.658 = t657.test -DNS.659 = t658.test -DNS.660 = t659.test -DNS.661 = t660.test -DNS.662 = t661.test -DNS.663 = t662.test -DNS.664 = t663.test -DNS.665 = t664.test -DNS.666 = t665.test -DNS.667 = t666.test -DNS.668 = t667.test -DNS.669 = t668.test -DNS.670 = t669.test -DNS.671 = t670.test -DNS.672 = t671.test -DNS.673 = t672.test -DNS.674 = t673.test -DNS.675 = t674.test -DNS.676 = t675.test -DNS.677 = t676.test -DNS.678 = t677.test -DNS.679 = t678.test -DNS.680 = t679.test -DNS.681 = t680.test -DNS.682 = t681.test -DNS.683 = t682.test -DNS.684 = t683.test -DNS.685 = t684.test -DNS.686 = t685.test -DNS.687 = t686.test -DNS.688 = t687.test -DNS.689 = t688.test -DNS.690 = t689.test -DNS.691 = t690.test -DNS.692 = t691.test -DNS.693 = t692.test -DNS.694 = t693.test -DNS.695 = t694.test -DNS.696 = t695.test -DNS.697 = t696.test -DNS.698 = t697.test -DNS.699 = t698.test -DNS.700 = t699.test -DNS.701 = t700.test -DNS.702 = t701.test -DNS.703 = t702.test -DNS.704 = t703.test -DNS.705 = t704.test -DNS.706 = t705.test -DNS.707 = t706.test -DNS.708 = t707.test -DNS.709 = t708.test -DNS.710 = t709.test -DNS.711 = t710.test -DNS.712 = t711.test -DNS.713 = t712.test -DNS.714 = t713.test -DNS.715 = t714.test -DNS.716 = t715.test -DNS.717 = t716.test -DNS.718 = t717.test -DNS.719 = t718.test -DNS.720 = t719.test -DNS.721 = t720.test -DNS.722 = t721.test -DNS.723 = t722.test -DNS.724 = t723.test -DNS.725 = t724.test -DNS.726 = t725.test -DNS.727 = t726.test -DNS.728 = t727.test -DNS.729 = t728.test -DNS.730 = t729.test -DNS.731 = t730.test -DNS.732 = t731.test -DNS.733 = t732.test -DNS.734 = t733.test -DNS.735 = t734.test -DNS.736 = t735.test -DNS.737 = t736.test -DNS.738 = t737.test -DNS.739 = t738.test -DNS.740 = t739.test -DNS.741 = t740.test -DNS.742 = t741.test -DNS.743 = t742.test -DNS.744 = t743.test -DNS.745 = t744.test -DNS.746 = t745.test -DNS.747 = t746.test -DNS.748 = t747.test -DNS.749 = t748.test -DNS.750 = t749.test -DNS.751 = t750.test -DNS.752 = t751.test -DNS.753 = t752.test -DNS.754 = t753.test -DNS.755 = t754.test -DNS.756 = t755.test -DNS.757 = t756.test -DNS.758 = t757.test -DNS.759 = t758.test -DNS.760 = t759.test -DNS.761 = t760.test -DNS.762 = t761.test -DNS.763 = t762.test -DNS.764 = t763.test -DNS.765 = t764.test -DNS.766 = t765.test -DNS.767 = t766.test -DNS.768 = t767.test -DNS.769 = t768.test -DNS.770 = t769.test -DNS.771 = t770.test -DNS.772 = t771.test -DNS.773 = t772.test -DNS.774 = t773.test -DNS.775 = t774.test -DNS.776 = t775.test -DNS.777 = t776.test -DNS.778 = t777.test -DNS.779 = t778.test -DNS.780 = t779.test -DNS.781 = t780.test -DNS.782 = t781.test -DNS.783 = t782.test -DNS.784 = t783.test -DNS.785 = t784.test -DNS.786 = t785.test -DNS.787 = t786.test -DNS.788 = t787.test -DNS.789 = t788.test -DNS.790 = t789.test -DNS.791 = t790.test -DNS.792 = t791.test -DNS.793 = t792.test -DNS.794 = t793.test -DNS.795 = t794.test -DNS.796 = t795.test -DNS.797 = t796.test -DNS.798 = t797.test -DNS.799 = t798.test -DNS.800 = t799.test -DNS.801 = t800.test -DNS.802 = t801.test -DNS.803 = t802.test -DNS.804 = t803.test -DNS.805 = t804.test -DNS.806 = t805.test -DNS.807 = t806.test -DNS.808 = t807.test -DNS.809 = t808.test -DNS.810 = t809.test -DNS.811 = t810.test -DNS.812 = t811.test -DNS.813 = t812.test -DNS.814 = t813.test -DNS.815 = t814.test -DNS.816 = t815.test -DNS.817 = t816.test -DNS.818 = t817.test -DNS.819 = t818.test -DNS.820 = t819.test -DNS.821 = t820.test -DNS.822 = t821.test -DNS.823 = t822.test -DNS.824 = t823.test -DNS.825 = t824.test -DNS.826 = t825.test -DNS.827 = t826.test -DNS.828 = t827.test -DNS.829 = t828.test -DNS.830 = t829.test -DNS.831 = t830.test -DNS.832 = t831.test -DNS.833 = t832.test -DNS.834 = t833.test -DNS.835 = t834.test -DNS.836 = t835.test -DNS.837 = t836.test -DNS.838 = t837.test -DNS.839 = t838.test -DNS.840 = t839.test -DNS.841 = t840.test -DNS.842 = t841.test -DNS.843 = t842.test -DNS.844 = t843.test -DNS.845 = t844.test -DNS.846 = t845.test -DNS.847 = t846.test -DNS.848 = t847.test -DNS.849 = t848.test -DNS.850 = t849.test -DNS.851 = t850.test -DNS.852 = t851.test -DNS.853 = t852.test -DNS.854 = t853.test -DNS.855 = t854.test -DNS.856 = t855.test -DNS.857 = t856.test -DNS.858 = t857.test -DNS.859 = t858.test -DNS.860 = t859.test -DNS.861 = t860.test -DNS.862 = t861.test -DNS.863 = t862.test -DNS.864 = t863.test -DNS.865 = t864.test -DNS.866 = t865.test -DNS.867 = t866.test -DNS.868 = t867.test -DNS.869 = t868.test -DNS.870 = t869.test -DNS.871 = t870.test -DNS.872 = t871.test -DNS.873 = t872.test -DNS.874 = t873.test -DNS.875 = t874.test -DNS.876 = t875.test -DNS.877 = t876.test -DNS.878 = t877.test -DNS.879 = t878.test -DNS.880 = t879.test -DNS.881 = t880.test -DNS.882 = t881.test -DNS.883 = t882.test -DNS.884 = t883.test -DNS.885 = t884.test -DNS.886 = t885.test -DNS.887 = t886.test -DNS.888 = t887.test -DNS.889 = t888.test -DNS.890 = t889.test -DNS.891 = t890.test -DNS.892 = t891.test -DNS.893 = t892.test -DNS.894 = t893.test -DNS.895 = t894.test -DNS.896 = t895.test -DNS.897 = t896.test -DNS.898 = t897.test -DNS.899 = t898.test -DNS.900 = t899.test -DNS.901 = t900.test -DNS.902 = t901.test -DNS.903 = t902.test -DNS.904 = t903.test -DNS.905 = t904.test -DNS.906 = t905.test -DNS.907 = t906.test -DNS.908 = t907.test -DNS.909 = t908.test -DNS.910 = t909.test -DNS.911 = t910.test -DNS.912 = t911.test -DNS.913 = t912.test -DNS.914 = t913.test -DNS.915 = t914.test -DNS.916 = t915.test -DNS.917 = t916.test -DNS.918 = t917.test -DNS.919 = t918.test -DNS.920 = t919.test -DNS.921 = t920.test -DNS.922 = t921.test -DNS.923 = t922.test -DNS.924 = t923.test -DNS.925 = t924.test -DNS.926 = t925.test -DNS.927 = t926.test -DNS.928 = t927.test -DNS.929 = t928.test -DNS.930 = t929.test -DNS.931 = t930.test -DNS.932 = t931.test -DNS.933 = t932.test -DNS.934 = t933.test -DNS.935 = t934.test -DNS.936 = t935.test -DNS.937 = t936.test -DNS.938 = t937.test -DNS.939 = t938.test -DNS.940 = t939.test -DNS.941 = t940.test -DNS.942 = t941.test -DNS.943 = t942.test -DNS.944 = t943.test -DNS.945 = t944.test -DNS.946 = t945.test -DNS.947 = t946.test -DNS.948 = t947.test -DNS.949 = t948.test -DNS.950 = t949.test -DNS.951 = t950.test -DNS.952 = t951.test -DNS.953 = t952.test -DNS.954 = t953.test -DNS.955 = t954.test -DNS.956 = t955.test -DNS.957 = t956.test -DNS.958 = t957.test -DNS.959 = t958.test -DNS.960 = t959.test -DNS.961 = t960.test -DNS.962 = t961.test -DNS.963 = t962.test -DNS.964 = t963.test -DNS.965 = t964.test -DNS.966 = t965.test -DNS.967 = t966.test -DNS.968 = t967.test -DNS.969 = t968.test -DNS.970 = t969.test -DNS.971 = t970.test -DNS.972 = t971.test -DNS.973 = t972.test -DNS.974 = t973.test -DNS.975 = t974.test -DNS.976 = t975.test -DNS.977 = t976.test -DNS.978 = t977.test -DNS.979 = t978.test -DNS.980 = t979.test -DNS.981 = t980.test -DNS.982 = t981.test -DNS.983 = t982.test -DNS.984 = t983.test -DNS.985 = t984.test -DNS.986 = t985.test -DNS.987 = t986.test -DNS.988 = t987.test -DNS.989 = t988.test -DNS.990 = t989.test -DNS.991 = t990.test -DNS.992 = t991.test -DNS.993 = t992.test -DNS.994 = t993.test -DNS.995 = t994.test -DNS.996 = t995.test -DNS.997 = t996.test -DNS.998 = t997.test -DNS.999 = t998.test -DNS.1000 = t999.test -DNS.1001 = t1000.test -DNS.1002 = t1001.test -DNS.1003 = t1002.test -DNS.1004 = t1003.test -DNS.1005 = t1004.test -DNS.1006 = t1005.test -DNS.1007 = t1006.test -DNS.1008 = t1007.test -DNS.1009 = t1008.test -DNS.1010 = t1009.test -DNS.1011 = t1010.test -DNS.1012 = t1011.test -DNS.1013 = t1012.test -DNS.1014 = t1013.test -DNS.1015 = t1014.test -DNS.1016 = t1015.test -DNS.1017 = t1016.test -DNS.1018 = t1017.test -DNS.1019 = t1018.test -DNS.1020 = t1019.test -DNS.1021 = t1020.test -DNS.1022 = t1021.test -DNS.1023 = t1022.test -DNS.1024 = t1023.test - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.csr deleted file mode 100644 index cddc484d4f..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.csr +++ /dev/null @@ -1,250 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIudDCCLVwCAQAwDTELMAkGA1UEAwwCdDAwggEiMA0GCSqGSIb3DQEBAQUAA4IB -DwAwggEKAoIBAQDbLFMBzvkagzZSUSpbQmPeMnURan2woeR3R5tx5aYtZNeuWwTt -ej/H9sorK63NbIiljjb756IitX1UeenVelvKKylsDYQKEMQhtliYuw22DI1WWyyF -WQfKBkY2JRopjsQ5t8Mxzm5JwgHPsDsnQ4rj1QYfLZOd3XpFZW39tLHAEFlC8h6P -zkOslyXBfOJR4UQ1W5SqA27acS8lf1gwAeESFx7yqmwigLHJZep3lbMHxPdyODT+ -oEMzTGZtoeihBLxvFDk5RC44N3TJCiGFkSG3TrqwmUp2mHtYyhzTsEDD2Sp1++sZ -6uMamDFSl+l/pHshfy/cYoaP/f2oiOhLRFK9AgMBAAGggiwgMIIsHAYJKoZIhvcN -AQkOMYIsDTCCLAkwHQYDVR0OBBYEFDu0BcyqulE9/PL5HiVTcuE68prfMA4GA1Ud -DwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgiu3BgNV -HREEgiuuMIIrqoIHdDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIH -dDQudGVzdIIHdDUudGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDku -dGVzdIIIdDEwLnRlc3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQx -NC50ZXN0ggh0MTUudGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIII -dDE5LnRlc3SCCHQyMC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0 -ggh0MjQudGVzdIIIdDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRl -c3SCCHQyOS50ZXN0ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMu -dGVzdIIIdDM0LnRlc3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQz -OC50ZXN0ggh0MzkudGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIII -dDQzLnRlc3SCCHQ0NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0 -ggh0NDgudGVzdIIIdDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRl -c3SCCHQ1My50ZXN0ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcu -dGVzdIIIdDU4LnRlc3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2 -Mi50ZXN0ggh0NjMudGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIII -dDY3LnRlc3SCCHQ2OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0 -ggh0NzIudGVzdIIIdDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRl -c3SCCHQ3Ny50ZXN0ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEu -dGVzdIIIdDgyLnRlc3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4 -Ni50ZXN0ggh0ODcudGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIII -dDkxLnRlc3SCCHQ5Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0 -ggh0OTYudGVzdIIIdDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50 -ZXN0ggl0MTAxLnRlc3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SC -CXQxMDUudGVzdIIJdDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEw -OS50ZXN0ggl0MTEwLnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRl -c3SCCXQxMTQudGVzdIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJ -dDExOC50ZXN0ggl0MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIy -LnRlc3SCCXQxMjMudGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVz -dIIJdDEyNy50ZXN0ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0 -MTMxLnRlc3SCCXQxMzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUu -dGVzdIIJdDEzNi50ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0 -ggl0MTQwLnRlc3SCCXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQx -NDQudGVzdIIJdDE0NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50 -ZXN0ggl0MTQ5LnRlc3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SC -CXQxNTMudGVzdIIJdDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1 -Ny50ZXN0ggl0MTU4LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRl -c3SCCXQxNjIudGVzdIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJ -dDE2Ni50ZXN0ggl0MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcw -LnRlc3SCCXQxNzEudGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVz -dIIJdDE3NS50ZXN0ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0 -MTc5LnRlc3SCCXQxODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMu -dGVzdIIJdDE4NC50ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0 -ggl0MTg4LnRlc3SCCXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQx -OTIudGVzdIIJdDE5My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50 -ZXN0ggl0MTk3LnRlc3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SC -CXQyMDEudGVzdIIJdDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIw -NS50ZXN0ggl0MjA2LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRl -c3SCCXQyMTAudGVzdIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJ -dDIxNC50ZXN0ggl0MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4 -LnRlc3SCCXQyMTkudGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVz -dIIJdDIyMy50ZXN0ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0 -MjI3LnRlc3SCCXQyMjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEu -dGVzdIIJdDIzMi50ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0 -ggl0MjM2LnRlc3SCCXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQy -NDAudGVzdIIJdDI0MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50 -ZXN0ggl0MjQ1LnRlc3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SC -CXQyNDkudGVzdIIJdDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1 -My50ZXN0ggl0MjU0LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRl -c3SCCXQyNTgudGVzdIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJ -dDI2Mi50ZXN0ggl0MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2 -LnRlc3SCCXQyNjcudGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVz -dIIJdDI3MS50ZXN0ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0 -Mjc1LnRlc3SCCXQyNzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzku -dGVzdIIJdDI4MC50ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0 -ggl0Mjg0LnRlc3SCCXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQy -ODgudGVzdIIJdDI4OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50 -ZXN0ggl0MjkzLnRlc3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SC -CXQyOTcudGVzdIIJdDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMw -MS50ZXN0ggl0MzAyLnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRl -c3SCCXQzMDYudGVzdIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJ -dDMxMC50ZXN0ggl0MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0 -LnRlc3SCCXQzMTUudGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVz -dIIJdDMxOS50ZXN0ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0 -MzIzLnRlc3SCCXQzMjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcu -dGVzdIIJdDMyOC50ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0 -ggl0MzMyLnRlc3SCCXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQz -MzYudGVzdIIJdDMzNy50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50 -ZXN0ggl0MzQxLnRlc3SCCXQzNDIudGVzdIIJdDM0My50ZXN0ggl0MzQ0LnRlc3SC -CXQzNDUudGVzdIIJdDM0Ni50ZXN0ggl0MzQ3LnRlc3SCCXQzNDgudGVzdIIJdDM0 -OS50ZXN0ggl0MzUwLnRlc3SCCXQzNTEudGVzdIIJdDM1Mi50ZXN0ggl0MzUzLnRl -c3SCCXQzNTQudGVzdIIJdDM1NS50ZXN0ggl0MzU2LnRlc3SCCXQzNTcudGVzdIIJ -dDM1OC50ZXN0ggl0MzU5LnRlc3SCCXQzNjAudGVzdIIJdDM2MS50ZXN0ggl0MzYy -LnRlc3SCCXQzNjMudGVzdIIJdDM2NC50ZXN0ggl0MzY1LnRlc3SCCXQzNjYudGVz -dIIJdDM2Ny50ZXN0ggl0MzY4LnRlc3SCCXQzNjkudGVzdIIJdDM3MC50ZXN0ggl0 -MzcxLnRlc3SCCXQzNzIudGVzdIIJdDM3My50ZXN0ggl0Mzc0LnRlc3SCCXQzNzUu -dGVzdIIJdDM3Ni50ZXN0ggl0Mzc3LnRlc3SCCXQzNzgudGVzdIIJdDM3OS50ZXN0 -ggl0MzgwLnRlc3SCCXQzODEudGVzdIIJdDM4Mi50ZXN0ggl0MzgzLnRlc3SCCXQz -ODQudGVzdIIJdDM4NS50ZXN0ggl0Mzg2LnRlc3SCCXQzODcudGVzdIIJdDM4OC50 -ZXN0ggl0Mzg5LnRlc3SCCXQzOTAudGVzdIIJdDM5MS50ZXN0ggl0MzkyLnRlc3SC -CXQzOTMudGVzdIIJdDM5NC50ZXN0ggl0Mzk1LnRlc3SCCXQzOTYudGVzdIIJdDM5 -Ny50ZXN0ggl0Mzk4LnRlc3SCCXQzOTkudGVzdIIJdDQwMC50ZXN0ggl0NDAxLnRl -c3SCCXQ0MDIudGVzdIIJdDQwMy50ZXN0ggl0NDA0LnRlc3SCCXQ0MDUudGVzdIIJ -dDQwNi50ZXN0ggl0NDA3LnRlc3SCCXQ0MDgudGVzdIIJdDQwOS50ZXN0ggl0NDEw -LnRlc3SCCXQ0MTEudGVzdIIJdDQxMi50ZXN0ggl0NDEzLnRlc3SCCXQ0MTQudGVz -dIIJdDQxNS50ZXN0ggl0NDE2LnRlc3SCCXQ0MTcudGVzdIIJdDQxOC50ZXN0ggl0 -NDE5LnRlc3SCCXQ0MjAudGVzdIIJdDQyMS50ZXN0ggl0NDIyLnRlc3SCCXQ0MjMu -dGVzdIIJdDQyNC50ZXN0ggl0NDI1LnRlc3SCCXQ0MjYudGVzdIIJdDQyNy50ZXN0 -ggl0NDI4LnRlc3SCCXQ0MjkudGVzdIIJdDQzMC50ZXN0ggl0NDMxLnRlc3SCCXQ0 -MzIudGVzdIIJdDQzMy50ZXN0ggl0NDM0LnRlc3SCCXQ0MzUudGVzdIIJdDQzNi50 -ZXN0ggl0NDM3LnRlc3SCCXQ0MzgudGVzdIIJdDQzOS50ZXN0ggl0NDQwLnRlc3SC -CXQ0NDEudGVzdIIJdDQ0Mi50ZXN0ggl0NDQzLnRlc3SCCXQ0NDQudGVzdIIJdDQ0 -NS50ZXN0ggl0NDQ2LnRlc3SCCXQ0NDcudGVzdIIJdDQ0OC50ZXN0ggl0NDQ5LnRl -c3SCCXQ0NTAudGVzdIIJdDQ1MS50ZXN0ggl0NDUyLnRlc3SCCXQ0NTMudGVzdIIJ -dDQ1NC50ZXN0ggl0NDU1LnRlc3SCCXQ0NTYudGVzdIIJdDQ1Ny50ZXN0ggl0NDU4 -LnRlc3SCCXQ0NTkudGVzdIIJdDQ2MC50ZXN0ggl0NDYxLnRlc3SCCXQ0NjIudGVz -dIIJdDQ2My50ZXN0ggl0NDY0LnRlc3SCCXQ0NjUudGVzdIIJdDQ2Ni50ZXN0ggl0 -NDY3LnRlc3SCCXQ0NjgudGVzdIIJdDQ2OS50ZXN0ggl0NDcwLnRlc3SCCXQ0NzEu -dGVzdIIJdDQ3Mi50ZXN0ggl0NDczLnRlc3SCCXQ0NzQudGVzdIIJdDQ3NS50ZXN0 -ggl0NDc2LnRlc3SCCXQ0NzcudGVzdIIJdDQ3OC50ZXN0ggl0NDc5LnRlc3SCCXQ0 -ODAudGVzdIIJdDQ4MS50ZXN0ggl0NDgyLnRlc3SCCXQ0ODMudGVzdIIJdDQ4NC50 -ZXN0ggl0NDg1LnRlc3SCCXQ0ODYudGVzdIIJdDQ4Ny50ZXN0ggl0NDg4LnRlc3SC -CXQ0ODkudGVzdIIJdDQ5MC50ZXN0ggl0NDkxLnRlc3SCCXQ0OTIudGVzdIIJdDQ5 -My50ZXN0ggl0NDk0LnRlc3SCCXQ0OTUudGVzdIIJdDQ5Ni50ZXN0ggl0NDk3LnRl -c3SCCXQ0OTgudGVzdIIJdDQ5OS50ZXN0ggl0NTAwLnRlc3SCCXQ1MDEudGVzdIIJ -dDUwMi50ZXN0ggl0NTAzLnRlc3SCCXQ1MDQudGVzdIIJdDUwNS50ZXN0ggl0NTA2 -LnRlc3SCCXQ1MDcudGVzdIIJdDUwOC50ZXN0ggl0NTA5LnRlc3SCCXQ1MTAudGVz -dIIJdDUxMS50ZXN0ggl0NTEyLnRlc3SCCXQ1MTMudGVzdIIJdDUxNC50ZXN0ggl0 -NTE1LnRlc3SCCXQ1MTYudGVzdIIJdDUxNy50ZXN0ggl0NTE4LnRlc3SCCXQ1MTku -dGVzdIIJdDUyMC50ZXN0ggl0NTIxLnRlc3SCCXQ1MjIudGVzdIIJdDUyMy50ZXN0 -ggl0NTI0LnRlc3SCCXQ1MjUudGVzdIIJdDUyNi50ZXN0ggl0NTI3LnRlc3SCCXQ1 -MjgudGVzdIIJdDUyOS50ZXN0ggl0NTMwLnRlc3SCCXQ1MzEudGVzdIIJdDUzMi50 -ZXN0ggl0NTMzLnRlc3SCCXQ1MzQudGVzdIIJdDUzNS50ZXN0ggl0NTM2LnRlc3SC -CXQ1MzcudGVzdIIJdDUzOC50ZXN0ggl0NTM5LnRlc3SCCXQ1NDAudGVzdIIJdDU0 -MS50ZXN0ggl0NTQyLnRlc3SCCXQ1NDMudGVzdIIJdDU0NC50ZXN0ggl0NTQ1LnRl -c3SCCXQ1NDYudGVzdIIJdDU0Ny50ZXN0ggl0NTQ4LnRlc3SCCXQ1NDkudGVzdIIJ -dDU1MC50ZXN0ggl0NTUxLnRlc3SCCXQ1NTIudGVzdIIJdDU1My50ZXN0ggl0NTU0 -LnRlc3SCCXQ1NTUudGVzdIIJdDU1Ni50ZXN0ggl0NTU3LnRlc3SCCXQ1NTgudGVz -dIIJdDU1OS50ZXN0ggl0NTYwLnRlc3SCCXQ1NjEudGVzdIIJdDU2Mi50ZXN0ggl0 -NTYzLnRlc3SCCXQ1NjQudGVzdIIJdDU2NS50ZXN0ggl0NTY2LnRlc3SCCXQ1Njcu -dGVzdIIJdDU2OC50ZXN0ggl0NTY5LnRlc3SCCXQ1NzAudGVzdIIJdDU3MS50ZXN0 -ggl0NTcyLnRlc3SCCXQ1NzMudGVzdIIJdDU3NC50ZXN0ggl0NTc1LnRlc3SCCXQ1 -NzYudGVzdIIJdDU3Ny50ZXN0ggl0NTc4LnRlc3SCCXQ1NzkudGVzdIIJdDU4MC50 -ZXN0ggl0NTgxLnRlc3SCCXQ1ODIudGVzdIIJdDU4My50ZXN0ggl0NTg0LnRlc3SC -CXQ1ODUudGVzdIIJdDU4Ni50ZXN0ggl0NTg3LnRlc3SCCXQ1ODgudGVzdIIJdDU4 -OS50ZXN0ggl0NTkwLnRlc3SCCXQ1OTEudGVzdIIJdDU5Mi50ZXN0ggl0NTkzLnRl -c3SCCXQ1OTQudGVzdIIJdDU5NS50ZXN0ggl0NTk2LnRlc3SCCXQ1OTcudGVzdIIJ -dDU5OC50ZXN0ggl0NTk5LnRlc3SCCXQ2MDAudGVzdIIJdDYwMS50ZXN0ggl0NjAy -LnRlc3SCCXQ2MDMudGVzdIIJdDYwNC50ZXN0ggl0NjA1LnRlc3SCCXQ2MDYudGVz -dIIJdDYwNy50ZXN0ggl0NjA4LnRlc3SCCXQ2MDkudGVzdIIJdDYxMC50ZXN0ggl0 -NjExLnRlc3SCCXQ2MTIudGVzdIIJdDYxMy50ZXN0ggl0NjE0LnRlc3SCCXQ2MTUu -dGVzdIIJdDYxNi50ZXN0ggl0NjE3LnRlc3SCCXQ2MTgudGVzdIIJdDYxOS50ZXN0 -ggl0NjIwLnRlc3SCCXQ2MjEudGVzdIIJdDYyMi50ZXN0ggl0NjIzLnRlc3SCCXQ2 -MjQudGVzdIIJdDYyNS50ZXN0ggl0NjI2LnRlc3SCCXQ2MjcudGVzdIIJdDYyOC50 -ZXN0ggl0NjI5LnRlc3SCCXQ2MzAudGVzdIIJdDYzMS50ZXN0ggl0NjMyLnRlc3SC -CXQ2MzMudGVzdIIJdDYzNC50ZXN0ggl0NjM1LnRlc3SCCXQ2MzYudGVzdIIJdDYz -Ny50ZXN0ggl0NjM4LnRlc3SCCXQ2MzkudGVzdIIJdDY0MC50ZXN0ggl0NjQxLnRl -c3SCCXQ2NDIudGVzdIIJdDY0My50ZXN0ggl0NjQ0LnRlc3SCCXQ2NDUudGVzdIIJ -dDY0Ni50ZXN0ggl0NjQ3LnRlc3SCCXQ2NDgudGVzdIIJdDY0OS50ZXN0ggl0NjUw -LnRlc3SCCXQ2NTEudGVzdIIJdDY1Mi50ZXN0ggl0NjUzLnRlc3SCCXQ2NTQudGVz -dIIJdDY1NS50ZXN0ggl0NjU2LnRlc3SCCXQ2NTcudGVzdIIJdDY1OC50ZXN0ggl0 -NjU5LnRlc3SCCXQ2NjAudGVzdIIJdDY2MS50ZXN0ggl0NjYyLnRlc3SCCXQ2NjMu -dGVzdIIJdDY2NC50ZXN0ggl0NjY1LnRlc3SCCXQ2NjYudGVzdIIJdDY2Ny50ZXN0 -ggl0NjY4LnRlc3SCCXQ2NjkudGVzdIIJdDY3MC50ZXN0ggl0NjcxLnRlc3SCCXQ2 -NzIudGVzdIIJdDY3My50ZXN0ggl0Njc0LnRlc3SCCXQ2NzUudGVzdIIJdDY3Ni50 -ZXN0ggl0Njc3LnRlc3SCCXQ2NzgudGVzdIIJdDY3OS50ZXN0ggl0NjgwLnRlc3SC -CXQ2ODEudGVzdIIJdDY4Mi50ZXN0ggl0NjgzLnRlc3SCCXQ2ODQudGVzdIIJdDY4 -NS50ZXN0ggl0Njg2LnRlc3SCCXQ2ODcudGVzdIIJdDY4OC50ZXN0ggl0Njg5LnRl -c3SCCXQ2OTAudGVzdIIJdDY5MS50ZXN0ggl0NjkyLnRlc3SCCXQ2OTMudGVzdIIJ -dDY5NC50ZXN0ggl0Njk1LnRlc3SCCXQ2OTYudGVzdIIJdDY5Ny50ZXN0ggl0Njk4 -LnRlc3SCCXQ2OTkudGVzdIIJdDcwMC50ZXN0ggl0NzAxLnRlc3SCCXQ3MDIudGVz -dIIJdDcwMy50ZXN0ggl0NzA0LnRlc3SCCXQ3MDUudGVzdIIJdDcwNi50ZXN0ggl0 -NzA3LnRlc3SCCXQ3MDgudGVzdIIJdDcwOS50ZXN0ggl0NzEwLnRlc3SCCXQ3MTEu -dGVzdIIJdDcxMi50ZXN0ggl0NzEzLnRlc3SCCXQ3MTQudGVzdIIJdDcxNS50ZXN0 -ggl0NzE2LnRlc3SCCXQ3MTcudGVzdIIJdDcxOC50ZXN0ggl0NzE5LnRlc3SCCXQ3 -MjAudGVzdIIJdDcyMS50ZXN0ggl0NzIyLnRlc3SCCXQ3MjMudGVzdIIJdDcyNC50 -ZXN0ggl0NzI1LnRlc3SCCXQ3MjYudGVzdIIJdDcyNy50ZXN0ggl0NzI4LnRlc3SC -CXQ3MjkudGVzdIIJdDczMC50ZXN0ggl0NzMxLnRlc3SCCXQ3MzIudGVzdIIJdDcz -My50ZXN0ggl0NzM0LnRlc3SCCXQ3MzUudGVzdIIJdDczNi50ZXN0ggl0NzM3LnRl -c3SCCXQ3MzgudGVzdIIJdDczOS50ZXN0ggl0NzQwLnRlc3SCCXQ3NDEudGVzdIIJ -dDc0Mi50ZXN0ggl0NzQzLnRlc3SCCXQ3NDQudGVzdIIJdDc0NS50ZXN0ggl0NzQ2 -LnRlc3SCCXQ3NDcudGVzdIIJdDc0OC50ZXN0ggl0NzQ5LnRlc3SCCXQ3NTAudGVz -dIIJdDc1MS50ZXN0ggl0NzUyLnRlc3SCCXQ3NTMudGVzdIIJdDc1NC50ZXN0ggl0 -NzU1LnRlc3SCCXQ3NTYudGVzdIIJdDc1Ny50ZXN0ggl0NzU4LnRlc3SCCXQ3NTku -dGVzdIIJdDc2MC50ZXN0ggl0NzYxLnRlc3SCCXQ3NjIudGVzdIIJdDc2My50ZXN0 -ggl0NzY0LnRlc3SCCXQ3NjUudGVzdIIJdDc2Ni50ZXN0ggl0NzY3LnRlc3SCCXQ3 -NjgudGVzdIIJdDc2OS50ZXN0ggl0NzcwLnRlc3SCCXQ3NzEudGVzdIIJdDc3Mi50 -ZXN0ggl0NzczLnRlc3SCCXQ3NzQudGVzdIIJdDc3NS50ZXN0ggl0Nzc2LnRlc3SC -CXQ3NzcudGVzdIIJdDc3OC50ZXN0ggl0Nzc5LnRlc3SCCXQ3ODAudGVzdIIJdDc4 -MS50ZXN0ggl0NzgyLnRlc3SCCXQ3ODMudGVzdIIJdDc4NC50ZXN0ggl0Nzg1LnRl -c3SCCXQ3ODYudGVzdIIJdDc4Ny50ZXN0ggl0Nzg4LnRlc3SCCXQ3ODkudGVzdIIJ -dDc5MC50ZXN0ggl0NzkxLnRlc3SCCXQ3OTIudGVzdIIJdDc5My50ZXN0ggl0Nzk0 -LnRlc3SCCXQ3OTUudGVzdIIJdDc5Ni50ZXN0ggl0Nzk3LnRlc3SCCXQ3OTgudGVz -dIIJdDc5OS50ZXN0ggl0ODAwLnRlc3SCCXQ4MDEudGVzdIIJdDgwMi50ZXN0ggl0 -ODAzLnRlc3SCCXQ4MDQudGVzdIIJdDgwNS50ZXN0ggl0ODA2LnRlc3SCCXQ4MDcu -dGVzdIIJdDgwOC50ZXN0ggl0ODA5LnRlc3SCCXQ4MTAudGVzdIIJdDgxMS50ZXN0 -ggl0ODEyLnRlc3SCCXQ4MTMudGVzdIIJdDgxNC50ZXN0ggl0ODE1LnRlc3SCCXQ4 -MTYudGVzdIIJdDgxNy50ZXN0ggl0ODE4LnRlc3SCCXQ4MTkudGVzdIIJdDgyMC50 -ZXN0ggl0ODIxLnRlc3SCCXQ4MjIudGVzdIIJdDgyMy50ZXN0ggl0ODI0LnRlc3SC -CXQ4MjUudGVzdIIJdDgyNi50ZXN0ggl0ODI3LnRlc3SCCXQ4MjgudGVzdIIJdDgy -OS50ZXN0ggl0ODMwLnRlc3SCCXQ4MzEudGVzdIIJdDgzMi50ZXN0ggl0ODMzLnRl -c3SCCXQ4MzQudGVzdIIJdDgzNS50ZXN0ggl0ODM2LnRlc3SCCXQ4MzcudGVzdIIJ -dDgzOC50ZXN0ggl0ODM5LnRlc3SCCXQ4NDAudGVzdIIJdDg0MS50ZXN0ggl0ODQy -LnRlc3SCCXQ4NDMudGVzdIIJdDg0NC50ZXN0ggl0ODQ1LnRlc3SCCXQ4NDYudGVz -dIIJdDg0Ny50ZXN0ggl0ODQ4LnRlc3SCCXQ4NDkudGVzdIIJdDg1MC50ZXN0ggl0 -ODUxLnRlc3SCCXQ4NTIudGVzdIIJdDg1My50ZXN0ggl0ODU0LnRlc3SCCXQ4NTUu -dGVzdIIJdDg1Ni50ZXN0ggl0ODU3LnRlc3SCCXQ4NTgudGVzdIIJdDg1OS50ZXN0 -ggl0ODYwLnRlc3SCCXQ4NjEudGVzdIIJdDg2Mi50ZXN0ggl0ODYzLnRlc3SCCXQ4 -NjQudGVzdIIJdDg2NS50ZXN0ggl0ODY2LnRlc3SCCXQ4NjcudGVzdIIJdDg2OC50 -ZXN0ggl0ODY5LnRlc3SCCXQ4NzAudGVzdIIJdDg3MS50ZXN0ggl0ODcyLnRlc3SC -CXQ4NzMudGVzdIIJdDg3NC50ZXN0ggl0ODc1LnRlc3SCCXQ4NzYudGVzdIIJdDg3 -Ny50ZXN0ggl0ODc4LnRlc3SCCXQ4NzkudGVzdIIJdDg4MC50ZXN0ggl0ODgxLnRl -c3SCCXQ4ODIudGVzdIIJdDg4My50ZXN0ggl0ODg0LnRlc3SCCXQ4ODUudGVzdIIJ -dDg4Ni50ZXN0ggl0ODg3LnRlc3SCCXQ4ODgudGVzdIIJdDg4OS50ZXN0ggl0ODkw -LnRlc3SCCXQ4OTEudGVzdIIJdDg5Mi50ZXN0ggl0ODkzLnRlc3SCCXQ4OTQudGVz -dIIJdDg5NS50ZXN0ggl0ODk2LnRlc3SCCXQ4OTcudGVzdIIJdDg5OC50ZXN0ggl0 -ODk5LnRlc3SCCXQ5MDAudGVzdIIJdDkwMS50ZXN0ggl0OTAyLnRlc3SCCXQ5MDMu -dGVzdIIJdDkwNC50ZXN0ggl0OTA1LnRlc3SCCXQ5MDYudGVzdIIJdDkwNy50ZXN0 -ggl0OTA4LnRlc3SCCXQ5MDkudGVzdIIJdDkxMC50ZXN0ggl0OTExLnRlc3SCCXQ5 -MTIudGVzdIIJdDkxMy50ZXN0ggl0OTE0LnRlc3SCCXQ5MTUudGVzdIIJdDkxNi50 -ZXN0ggl0OTE3LnRlc3SCCXQ5MTgudGVzdIIJdDkxOS50ZXN0ggl0OTIwLnRlc3SC -CXQ5MjEudGVzdIIJdDkyMi50ZXN0ggl0OTIzLnRlc3SCCXQ5MjQudGVzdIIJdDky -NS50ZXN0ggl0OTI2LnRlc3SCCXQ5MjcudGVzdIIJdDkyOC50ZXN0ggl0OTI5LnRl -c3SCCXQ5MzAudGVzdIIJdDkzMS50ZXN0ggl0OTMyLnRlc3SCCXQ5MzMudGVzdIIJ -dDkzNC50ZXN0ggl0OTM1LnRlc3SCCXQ5MzYudGVzdIIJdDkzNy50ZXN0ggl0OTM4 -LnRlc3SCCXQ5MzkudGVzdIIJdDk0MC50ZXN0ggl0OTQxLnRlc3SCCXQ5NDIudGVz -dIIJdDk0My50ZXN0ggl0OTQ0LnRlc3SCCXQ5NDUudGVzdIIJdDk0Ni50ZXN0ggl0 -OTQ3LnRlc3SCCXQ5NDgudGVzdIIJdDk0OS50ZXN0ggl0OTUwLnRlc3SCCXQ5NTEu -dGVzdIIJdDk1Mi50ZXN0ggl0OTUzLnRlc3SCCXQ5NTQudGVzdIIJdDk1NS50ZXN0 -ggl0OTU2LnRlc3SCCXQ5NTcudGVzdIIJdDk1OC50ZXN0ggl0OTU5LnRlc3SCCXQ5 -NjAudGVzdIIJdDk2MS50ZXN0ggl0OTYyLnRlc3SCCXQ5NjMudGVzdIIJdDk2NC50 -ZXN0ggl0OTY1LnRlc3SCCXQ5NjYudGVzdIIJdDk2Ny50ZXN0ggl0OTY4LnRlc3SC -CXQ5NjkudGVzdIIJdDk3MC50ZXN0ggl0OTcxLnRlc3SCCXQ5NzIudGVzdIIJdDk3 -My50ZXN0ggl0OTc0LnRlc3SCCXQ5NzUudGVzdIIJdDk3Ni50ZXN0ggl0OTc3LnRl -c3SCCXQ5NzgudGVzdIIJdDk3OS50ZXN0ggl0OTgwLnRlc3SCCXQ5ODEudGVzdIIJ -dDk4Mi50ZXN0ggl0OTgzLnRlc3SCCXQ5ODQudGVzdIIJdDk4NS50ZXN0ggl0OTg2 -LnRlc3SCCXQ5ODcudGVzdIIJdDk4OC50ZXN0ggl0OTg5LnRlc3SCCXQ5OTAudGVz -dIIJdDk5MS50ZXN0ggl0OTkyLnRlc3SCCXQ5OTMudGVzdIIJdDk5NC50ZXN0ggl0 -OTk1LnRlc3SCCXQ5OTYudGVzdIIJdDk5Ny50ZXN0ggl0OTk4LnRlc3SCCXQ5OTku -dGVzdIIKdDEwMDAudGVzdIIKdDEwMDEudGVzdIIKdDEwMDIudGVzdIIKdDEwMDMu -dGVzdIIKdDEwMDQudGVzdIIKdDEwMDUudGVzdIIKdDEwMDYudGVzdIIKdDEwMDcu -dGVzdIIKdDEwMDgudGVzdIIKdDEwMDkudGVzdIIKdDEwMTAudGVzdIIKdDEwMTEu -dGVzdIIKdDEwMTIudGVzdIIKdDEwMTMudGVzdIIKdDEwMTQudGVzdIIKdDEwMTUu -dGVzdIIKdDEwMTYudGVzdIIKdDEwMTcudGVzdIIKdDEwMTgudGVzdIIKdDEwMTku -dGVzdIIKdDEwMjAudGVzdIIKdDEwMjEudGVzdIIKdDEwMjIudGVzdIIKdDEwMjMu -dGVzdDANBgkqhkiG9w0BAQsFAAOCAQEA0o00q1HNbJjS3Ssi+w5XIhTU4OEwH97f -BmAr/vddshl6urTb7BJf9Qf/kfzrN1TiJ7IA5wMoYXfeGZ9vH6PJpvWVXIcphSeE -GEzAFbpXGCW0710ar62X4Jwd70X61zqRQrEzJPzhtfixhcNIAH9wakSDHlQeEoys -l94K0JE4eM+I2kAGAk8pXp0htxrG47tW2vrJL7YY9O/dwc/qo5wyjY0amsu6YW2f -snkIM7OonB77X6i4rWuDKxxbovpQPRbY5qWKWPT7A++E9TUFQZqhGqcUEDK4iN5l -0ac9ppAG7me4/mzcDzABHFe2buy3gioN16PmRkvjAg+BnYTlT6oiFQ== ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.pem deleted file mode 100644 index a79609b93c..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_5.pem +++ /dev/null @@ -1,325 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:d9 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DNS:t0.test, DNS:t1.test, DNS:t2.test, DNS:t3.test, DNS:t4.test, DNS:t5.test, DNS:t6.test, DNS:t7.test, DNS:t8.test, DNS:t9.test, DNS:t10.test, DNS:t11.test, DNS:t12.test, DNS:t13.test, DNS:t14.test, DNS:t15.test, DNS:t16.test, DNS:t17.test, DNS:t18.test, DNS:t19.test, DNS:t20.test, DNS:t21.test, DNS:t22.test, DNS:t23.test, DNS:t24.test, DNS:t25.test, DNS:t26.test, DNS:t27.test, DNS:t28.test, DNS:t29.test, DNS:t30.test, DNS:t31.test, DNS:t32.test, DNS:t33.test, DNS:t34.test, DNS:t35.test, DNS:t36.test, DNS:t37.test, DNS:t38.test, DNS:t39.test, DNS:t40.test, DNS:t41.test, DNS:t42.test, DNS:t43.test, DNS:t44.test, DNS:t45.test, DNS:t46.test, DNS:t47.test, DNS:t48.test, DNS:t49.test, DNS:t50.test, DNS:t51.test, DNS:t52.test, DNS:t53.test, DNS:t54.test, DNS:t55.test, DNS:t56.test, DNS:t57.test, DNS:t58.test, DNS:t59.test, DNS:t60.test, DNS:t61.test, DNS:t62.test, DNS:t63.test, DNS:t64.test, DNS:t65.test, DNS:t66.test, DNS:t67.test, DNS:t68.test, DNS:t69.test, DNS:t70.test, DNS:t71.test, DNS:t72.test, DNS:t73.test, DNS:t74.test, DNS:t75.test, DNS:t76.test, DNS:t77.test, DNS:t78.test, DNS:t79.test, DNS:t80.test, DNS:t81.test, DNS:t82.test, DNS:t83.test, DNS:t84.test, DNS:t85.test, DNS:t86.test, DNS:t87.test, DNS:t88.test, DNS:t89.test, DNS:t90.test, DNS:t91.test, DNS:t92.test, DNS:t93.test, DNS:t94.test, DNS:t95.test, DNS:t96.test, DNS:t97.test, DNS:t98.test, DNS:t99.test, DNS:t100.test, DNS:t101.test, DNS:t102.test, DNS:t103.test, DNS:t104.test, DNS:t105.test, DNS:t106.test, DNS:t107.test, DNS:t108.test, DNS:t109.test, DNS:t110.test, DNS:t111.test, DNS:t112.test, DNS:t113.test, DNS:t114.test, DNS:t115.test, DNS:t116.test, DNS:t117.test, DNS:t118.test, DNS:t119.test, DNS:t120.test, DNS:t121.test, DNS:t122.test, DNS:t123.test, DNS:t124.test, DNS:t125.test, DNS:t126.test, DNS:t127.test, DNS:t128.test, DNS:t129.test, DNS:t130.test, DNS:t131.test, DNS:t132.test, DNS:t133.test, DNS:t134.test, DNS:t135.test, DNS:t136.test, DNS:t137.test, DNS:t138.test, DNS:t139.test, DNS:t140.test, DNS:t141.test, DNS:t142.test, DNS:t143.test, DNS:t144.test, DNS:t145.test, DNS:t146.test, DNS:t147.test, DNS:t148.test, DNS:t149.test, DNS:t150.test, DNS:t151.test, DNS:t152.test, DNS:t153.test, DNS:t154.test, DNS:t155.test, DNS:t156.test, DNS:t157.test, DNS:t158.test, DNS:t159.test, DNS:t160.test, DNS:t161.test, DNS:t162.test, DNS:t163.test, DNS:t164.test, DNS:t165.test, DNS:t166.test, DNS:t167.test, DNS:t168.test, DNS:t169.test, DNS:t170.test, DNS:t171.test, DNS:t172.test, DNS:t173.test, DNS:t174.test, DNS:t175.test, DNS:t176.test, DNS:t177.test, DNS:t178.test, DNS:t179.test, DNS:t180.test, DNS:t181.test, DNS:t182.test, DNS:t183.test, DNS:t184.test, DNS:t185.test, DNS:t186.test, DNS:t187.test, DNS:t188.test, DNS:t189.test, DNS:t190.test, DNS:t191.test, DNS:t192.test, DNS:t193.test, DNS:t194.test, DNS:t195.test, DNS:t196.test, DNS:t197.test, DNS:t198.test, DNS:t199.test, DNS:t200.test, DNS:t201.test, DNS:t202.test, DNS:t203.test, DNS:t204.test, DNS:t205.test, DNS:t206.test, DNS:t207.test, DNS:t208.test, DNS:t209.test, DNS:t210.test, DNS:t211.test, DNS:t212.test, DNS:t213.test, DNS:t214.test, DNS:t215.test, DNS:t216.test, DNS:t217.test, DNS:t218.test, DNS:t219.test, DNS:t220.test, DNS:t221.test, DNS:t222.test, DNS:t223.test, DNS:t224.test, DNS:t225.test, DNS:t226.test, DNS:t227.test, DNS:t228.test, DNS:t229.test, DNS:t230.test, DNS:t231.test, DNS:t232.test, DNS:t233.test, DNS:t234.test, DNS:t235.test, DNS:t236.test, DNS:t237.test, DNS:t238.test, DNS:t239.test, DNS:t240.test, DNS:t241.test, DNS:t242.test, DNS:t243.test, DNS:t244.test, DNS:t245.test, DNS:t246.test, DNS:t247.test, DNS:t248.test, DNS:t249.test, DNS:t250.test, DNS:t251.test, DNS:t252.test, DNS:t253.test, DNS:t254.test, DNS:t255.test, DNS:t256.test, DNS:t257.test, DNS:t258.test, DNS:t259.test, DNS:t260.test, DNS:t261.test, DNS:t262.test, DNS:t263.test, DNS:t264.test, DNS:t265.test, DNS:t266.test, DNS:t267.test, DNS:t268.test, DNS:t269.test, DNS:t270.test, DNS:t271.test, DNS:t272.test, DNS:t273.test, DNS:t274.test, DNS:t275.test, DNS:t276.test, DNS:t277.test, DNS:t278.test, DNS:t279.test, DNS:t280.test, DNS:t281.test, DNS:t282.test, DNS:t283.test, DNS:t284.test, DNS:t285.test, DNS:t286.test, DNS:t287.test, DNS:t288.test, DNS:t289.test, DNS:t290.test, DNS:t291.test, DNS:t292.test, DNS:t293.test, DNS:t294.test, DNS:t295.test, DNS:t296.test, DNS:t297.test, DNS:t298.test, DNS:t299.test, DNS:t300.test, DNS:t301.test, DNS:t302.test, DNS:t303.test, DNS:t304.test, DNS:t305.test, DNS:t306.test, DNS:t307.test, DNS:t308.test, DNS:t309.test, DNS:t310.test, DNS:t311.test, DNS:t312.test, DNS:t313.test, DNS:t314.test, DNS:t315.test, DNS:t316.test, DNS:t317.test, DNS:t318.test, DNS:t319.test, DNS:t320.test, DNS:t321.test, DNS:t322.test, DNS:t323.test, DNS:t324.test, DNS:t325.test, DNS:t326.test, DNS:t327.test, DNS:t328.test, DNS:t329.test, DNS:t330.test, DNS:t331.test, DNS:t332.test, DNS:t333.test, DNS:t334.test, DNS:t335.test, DNS:t336.test, DNS:t337.test, DNS:t338.test, DNS:t339.test, DNS:t340.test, DNS:t341.test, DNS:t342.test, DNS:t343.test, DNS:t344.test, DNS:t345.test, DNS:t346.test, DNS:t347.test, DNS:t348.test, DNS:t349.test, DNS:t350.test, DNS:t351.test, DNS:t352.test, DNS:t353.test, DNS:t354.test, DNS:t355.test, DNS:t356.test, DNS:t357.test, DNS:t358.test, DNS:t359.test, DNS:t360.test, DNS:t361.test, DNS:t362.test, DNS:t363.test, DNS:t364.test, DNS:t365.test, DNS:t366.test, DNS:t367.test, DNS:t368.test, DNS:t369.test, DNS:t370.test, DNS:t371.test, DNS:t372.test, DNS:t373.test, DNS:t374.test, DNS:t375.test, DNS:t376.test, DNS:t377.test, DNS:t378.test, DNS:t379.test, DNS:t380.test, DNS:t381.test, DNS:t382.test, DNS:t383.test, DNS:t384.test, DNS:t385.test, DNS:t386.test, DNS:t387.test, DNS:t388.test, DNS:t389.test, DNS:t390.test, DNS:t391.test, DNS:t392.test, DNS:t393.test, DNS:t394.test, DNS:t395.test, DNS:t396.test, DNS:t397.test, DNS:t398.test, DNS:t399.test, DNS:t400.test, DNS:t401.test, DNS:t402.test, DNS:t403.test, DNS:t404.test, DNS:t405.test, DNS:t406.test, DNS:t407.test, DNS:t408.test, DNS:t409.test, DNS:t410.test, DNS:t411.test, DNS:t412.test, DNS:t413.test, DNS:t414.test, DNS:t415.test, DNS:t416.test, DNS:t417.test, DNS:t418.test, DNS:t419.test, DNS:t420.test, DNS:t421.test, DNS:t422.test, DNS:t423.test, DNS:t424.test, DNS:t425.test, DNS:t426.test, DNS:t427.test, DNS:t428.test, DNS:t429.test, DNS:t430.test, DNS:t431.test, DNS:t432.test, DNS:t433.test, DNS:t434.test, DNS:t435.test, DNS:t436.test, DNS:t437.test, DNS:t438.test, DNS:t439.test, DNS:t440.test, DNS:t441.test, DNS:t442.test, DNS:t443.test, DNS:t444.test, DNS:t445.test, DNS:t446.test, DNS:t447.test, DNS:t448.test, DNS:t449.test, DNS:t450.test, DNS:t451.test, DNS:t452.test, DNS:t453.test, DNS:t454.test, DNS:t455.test, DNS:t456.test, DNS:t457.test, DNS:t458.test, DNS:t459.test, DNS:t460.test, DNS:t461.test, DNS:t462.test, DNS:t463.test, DNS:t464.test, DNS:t465.test, DNS:t466.test, DNS:t467.test, DNS:t468.test, DNS:t469.test, DNS:t470.test, DNS:t471.test, DNS:t472.test, DNS:t473.test, DNS:t474.test, DNS:t475.test, DNS:t476.test, DNS:t477.test, DNS:t478.test, DNS:t479.test, DNS:t480.test, DNS:t481.test, DNS:t482.test, DNS:t483.test, DNS:t484.test, DNS:t485.test, DNS:t486.test, DNS:t487.test, DNS:t488.test, DNS:t489.test, DNS:t490.test, DNS:t491.test, DNS:t492.test, DNS:t493.test, DNS:t494.test, DNS:t495.test, DNS:t496.test, DNS:t497.test, DNS:t498.test, DNS:t499.test, DNS:t500.test, DNS:t501.test, DNS:t502.test, DNS:t503.test, DNS:t504.test, DNS:t505.test, DNS:t506.test, DNS:t507.test, DNS:t508.test, DNS:t509.test, DNS:t510.test, DNS:t511.test, DNS:t512.test, DNS:t513.test, DNS:t514.test, DNS:t515.test, DNS:t516.test, DNS:t517.test, DNS:t518.test, DNS:t519.test, DNS:t520.test, DNS:t521.test, DNS:t522.test, DNS:t523.test, DNS:t524.test, DNS:t525.test, DNS:t526.test, DNS:t527.test, DNS:t528.test, DNS:t529.test, DNS:t530.test, DNS:t531.test, DNS:t532.test, DNS:t533.test, DNS:t534.test, DNS:t535.test, DNS:t536.test, DNS:t537.test, DNS:t538.test, DNS:t539.test, DNS:t540.test, DNS:t541.test, DNS:t542.test, DNS:t543.test, DNS:t544.test, DNS:t545.test, DNS:t546.test, DNS:t547.test, DNS:t548.test, DNS:t549.test, DNS:t550.test, DNS:t551.test, DNS:t552.test, DNS:t553.test, DNS:t554.test, DNS:t555.test, DNS:t556.test, DNS:t557.test, DNS:t558.test, DNS:t559.test, DNS:t560.test, DNS:t561.test, DNS:t562.test, DNS:t563.test, DNS:t564.test, DNS:t565.test, DNS:t566.test, DNS:t567.test, DNS:t568.test, DNS:t569.test, DNS:t570.test, DNS:t571.test, DNS:t572.test, DNS:t573.test, DNS:t574.test, DNS:t575.test, DNS:t576.test, DNS:t577.test, DNS:t578.test, DNS:t579.test, DNS:t580.test, DNS:t581.test, DNS:t582.test, DNS:t583.test, DNS:t584.test, DNS:t585.test, DNS:t586.test, DNS:t587.test, DNS:t588.test, DNS:t589.test, DNS:t590.test, DNS:t591.test, DNS:t592.test, DNS:t593.test, DNS:t594.test, DNS:t595.test, DNS:t596.test, DNS:t597.test, DNS:t598.test, DNS:t599.test, DNS:t600.test, DNS:t601.test, DNS:t602.test, DNS:t603.test, DNS:t604.test, DNS:t605.test, DNS:t606.test, DNS:t607.test, DNS:t608.test, DNS:t609.test, DNS:t610.test, DNS:t611.test, DNS:t612.test, DNS:t613.test, DNS:t614.test, DNS:t615.test, DNS:t616.test, DNS:t617.test, DNS:t618.test, DNS:t619.test, DNS:t620.test, DNS:t621.test, DNS:t622.test, DNS:t623.test, DNS:t624.test, DNS:t625.test, DNS:t626.test, DNS:t627.test, DNS:t628.test, DNS:t629.test, DNS:t630.test, DNS:t631.test, DNS:t632.test, DNS:t633.test, DNS:t634.test, DNS:t635.test, DNS:t636.test, DNS:t637.test, DNS:t638.test, DNS:t639.test, DNS:t640.test, DNS:t641.test, DNS:t642.test, DNS:t643.test, DNS:t644.test, DNS:t645.test, DNS:t646.test, DNS:t647.test, DNS:t648.test, DNS:t649.test, DNS:t650.test, DNS:t651.test, DNS:t652.test, DNS:t653.test, DNS:t654.test, DNS:t655.test, DNS:t656.test, DNS:t657.test, DNS:t658.test, DNS:t659.test, DNS:t660.test, DNS:t661.test, DNS:t662.test, DNS:t663.test, DNS:t664.test, DNS:t665.test, DNS:t666.test, DNS:t667.test, DNS:t668.test, DNS:t669.test, DNS:t670.test, DNS:t671.test, DNS:t672.test, DNS:t673.test, DNS:t674.test, DNS:t675.test, DNS:t676.test, DNS:t677.test, DNS:t678.test, DNS:t679.test, DNS:t680.test, DNS:t681.test, DNS:t682.test, DNS:t683.test, DNS:t684.test, DNS:t685.test, DNS:t686.test, DNS:t687.test, DNS:t688.test, DNS:t689.test, DNS:t690.test, DNS:t691.test, DNS:t692.test, DNS:t693.test, DNS:t694.test, DNS:t695.test, DNS:t696.test, DNS:t697.test, DNS:t698.test, DNS:t699.test, DNS:t700.test, DNS:t701.test, DNS:t702.test, DNS:t703.test, DNS:t704.test, DNS:t705.test, DNS:t706.test, DNS:t707.test, DNS:t708.test, DNS:t709.test, DNS:t710.test, DNS:t711.test, DNS:t712.test, DNS:t713.test, DNS:t714.test, DNS:t715.test, DNS:t716.test, DNS:t717.test, DNS:t718.test, DNS:t719.test, DNS:t720.test, DNS:t721.test, DNS:t722.test, DNS:t723.test, DNS:t724.test, DNS:t725.test, DNS:t726.test, DNS:t727.test, DNS:t728.test, DNS:t729.test, DNS:t730.test, DNS:t731.test, DNS:t732.test, DNS:t733.test, DNS:t734.test, DNS:t735.test, DNS:t736.test, DNS:t737.test, DNS:t738.test, DNS:t739.test, DNS:t740.test, DNS:t741.test, DNS:t742.test, DNS:t743.test, DNS:t744.test, DNS:t745.test, DNS:t746.test, DNS:t747.test, DNS:t748.test, DNS:t749.test, DNS:t750.test, DNS:t751.test, DNS:t752.test, DNS:t753.test, DNS:t754.test, DNS:t755.test, DNS:t756.test, DNS:t757.test, DNS:t758.test, DNS:t759.test, DNS:t760.test, DNS:t761.test, DNS:t762.test, DNS:t763.test, DNS:t764.test, DNS:t765.test, DNS:t766.test, DNS:t767.test, DNS:t768.test, DNS:t769.test, DNS:t770.test, DNS:t771.test, DNS:t772.test, DNS:t773.test, DNS:t774.test, DNS:t775.test, DNS:t776.test, DNS:t777.test, DNS:t778.test, DNS:t779.test, DNS:t780.test, DNS:t781.test, DNS:t782.test, DNS:t783.test, DNS:t784.test, DNS:t785.test, DNS:t786.test, DNS:t787.test, DNS:t788.test, DNS:t789.test, DNS:t790.test, DNS:t791.test, DNS:t792.test, DNS:t793.test, DNS:t794.test, DNS:t795.test, DNS:t796.test, DNS:t797.test, DNS:t798.test, DNS:t799.test, DNS:t800.test, DNS:t801.test, DNS:t802.test, DNS:t803.test, DNS:t804.test, DNS:t805.test, DNS:t806.test, DNS:t807.test, DNS:t808.test, DNS:t809.test, DNS:t810.test, DNS:t811.test, DNS:t812.test, DNS:t813.test, DNS:t814.test, DNS:t815.test, DNS:t816.test, DNS:t817.test, DNS:t818.test, DNS:t819.test, DNS:t820.test, DNS:t821.test, DNS:t822.test, DNS:t823.test, DNS:t824.test, DNS:t825.test, DNS:t826.test, DNS:t827.test, DNS:t828.test, DNS:t829.test, DNS:t830.test, DNS:t831.test, DNS:t832.test, DNS:t833.test, DNS:t834.test, DNS:t835.test, DNS:t836.test, DNS:t837.test, DNS:t838.test, DNS:t839.test, DNS:t840.test, DNS:t841.test, DNS:t842.test, DNS:t843.test, DNS:t844.test, DNS:t845.test, DNS:t846.test, DNS:t847.test, DNS:t848.test, DNS:t849.test, DNS:t850.test, DNS:t851.test, DNS:t852.test, DNS:t853.test, DNS:t854.test, DNS:t855.test, DNS:t856.test, DNS:t857.test, DNS:t858.test, DNS:t859.test, DNS:t860.test, DNS:t861.test, DNS:t862.test, DNS:t863.test, DNS:t864.test, DNS:t865.test, DNS:t866.test, DNS:t867.test, DNS:t868.test, DNS:t869.test, DNS:t870.test, DNS:t871.test, DNS:t872.test, DNS:t873.test, DNS:t874.test, DNS:t875.test, DNS:t876.test, DNS:t877.test, DNS:t878.test, DNS:t879.test, DNS:t880.test, DNS:t881.test, DNS:t882.test, DNS:t883.test, DNS:t884.test, DNS:t885.test, DNS:t886.test, DNS:t887.test, DNS:t888.test, DNS:t889.test, DNS:t890.test, DNS:t891.test, DNS:t892.test, DNS:t893.test, DNS:t894.test, DNS:t895.test, DNS:t896.test, DNS:t897.test, DNS:t898.test, DNS:t899.test, DNS:t900.test, DNS:t901.test, DNS:t902.test, DNS:t903.test, DNS:t904.test, DNS:t905.test, DNS:t906.test, DNS:t907.test, DNS:t908.test, DNS:t909.test, DNS:t910.test, DNS:t911.test, DNS:t912.test, DNS:t913.test, DNS:t914.test, DNS:t915.test, DNS:t916.test, DNS:t917.test, DNS:t918.test, DNS:t919.test, DNS:t920.test, DNS:t921.test, DNS:t922.test, DNS:t923.test, DNS:t924.test, DNS:t925.test, DNS:t926.test, DNS:t927.test, DNS:t928.test, DNS:t929.test, DNS:t930.test, DNS:t931.test, DNS:t932.test, DNS:t933.test, DNS:t934.test, DNS:t935.test, DNS:t936.test, DNS:t937.test, DNS:t938.test, DNS:t939.test, DNS:t940.test, DNS:t941.test, DNS:t942.test, DNS:t943.test, DNS:t944.test, DNS:t945.test, DNS:t946.test, DNS:t947.test, DNS:t948.test, DNS:t949.test, DNS:t950.test, DNS:t951.test, DNS:t952.test, DNS:t953.test, DNS:t954.test, DNS:t955.test, DNS:t956.test, DNS:t957.test, DNS:t958.test, DNS:t959.test, DNS:t960.test, DNS:t961.test, DNS:t962.test, DNS:t963.test, DNS:t964.test, DNS:t965.test, DNS:t966.test, DNS:t967.test, DNS:t968.test, DNS:t969.test, DNS:t970.test, DNS:t971.test, DNS:t972.test, DNS:t973.test, DNS:t974.test, DNS:t975.test, DNS:t976.test, DNS:t977.test, DNS:t978.test, DNS:t979.test, DNS:t980.test, DNS:t981.test, DNS:t982.test, DNS:t983.test, DNS:t984.test, DNS:t985.test, DNS:t986.test, DNS:t987.test, DNS:t988.test, DNS:t989.test, DNS:t990.test, DNS:t991.test, DNS:t992.test, DNS:t993.test, DNS:t994.test, DNS:t995.test, DNS:t996.test, DNS:t997.test, DNS:t998.test, DNS:t999.test, DNS:t1000.test, DNS:t1001.test, DNS:t1002.test, DNS:t1003.test, DNS:t1004.test, DNS:t1005.test, DNS:t1006.test, DNS:t1007.test, DNS:t1008.test, DNS:t1009.test, DNS:t1010.test, DNS:t1011.test, DNS:t1012.test, DNS:t1013.test, DNS:t1014.test, DNS:t1015.test, DNS:t1016.test, DNS:t1017.test, DNS:t1018.test, DNS:t1019.test, DNS:t1020.test, DNS:t1021.test, DNS:t1022.test, DNS:t1023.test - Signature Algorithm: sha256WithRSAEncryption - b7:c8:45:e8:f3:e4:4f:01:a9:fd:50:ef:22:07:85:79:92:9d: - e2:75:89:b7:0d:59:6c:65:ad:83:73:bc:44:09:7c:8b:be:cc: - d4:f6:d5:47:64:7b:c6:c8:d6:dd:ed:f9:bf:77:12:af:21:93: - ce:a8:1c:e3:6b:07:a2:80:f4:a8:83:3e:67:59:63:ae:07:f0: - 70:5b:db:f8:50:76:34:0b:b0:3f:97:93:6b:45:b1:3c:af:0a: - d8:08:96:1d:fa:f1:1b:2c:6b:82:9a:d2:ad:1e:f5:3e:46:33: - 91:60:1d:4d:7a:9b:6d:75:3d:b8:a5:50:d1:0a:cd:ce:ab:24: - 9a:ab:89:d3:73:15:70:f8:c6:23:0d:85:fe:1b:78:e6:d6:69: - 5c:7c:b2:28:1f:39:16:98:bd:f6:e3:0c:1e:71:7f:a9:15:75: - 02:aa:6e:38:2c:a0:18:95:18:28:9e:00:92:2c:eb:78:0b:75: - 11:9c:e9:a9:b5:fa:f9:ea:96:18:58:46:3b:7a:ed:47:08:42: - 01:ac:48:2f:7d:bc:b2:16:e8:b4:1c:36:1e:16:85:d2:ae:26: - 24:36:b2:c3:9f:c7:a1:c3:4e:76:27:5a:ca:cc:33:7e:a4:60: - 7c:86:d7:a7:19:6f:60:1a:98:89:16:ad:4a:de:12:15:0e:d0: - eb:6a:78:1f ------BEGIN CERTIFICATE----- -MIIvWDCCLkCgAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY2TANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCLKUwgiyhMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgiu3BgNVHREEgiuuMIIrqoIH -dDAudGVzdIIHdDEudGVzdIIHdDIudGVzdIIHdDMudGVzdIIHdDQudGVzdIIHdDUu -dGVzdIIHdDYudGVzdIIHdDcudGVzdIIHdDgudGVzdIIHdDkudGVzdIIIdDEwLnRl -c3SCCHQxMS50ZXN0ggh0MTIudGVzdIIIdDEzLnRlc3SCCHQxNC50ZXN0ggh0MTUu -dGVzdIIIdDE2LnRlc3SCCHQxNy50ZXN0ggh0MTgudGVzdIIIdDE5LnRlc3SCCHQy -MC50ZXN0ggh0MjEudGVzdIIIdDIyLnRlc3SCCHQyMy50ZXN0ggh0MjQudGVzdIII -dDI1LnRlc3SCCHQyNi50ZXN0ggh0MjcudGVzdIIIdDI4LnRlc3SCCHQyOS50ZXN0 -ggh0MzAudGVzdIIIdDMxLnRlc3SCCHQzMi50ZXN0ggh0MzMudGVzdIIIdDM0LnRl -c3SCCHQzNS50ZXN0ggh0MzYudGVzdIIIdDM3LnRlc3SCCHQzOC50ZXN0ggh0Mzku -dGVzdIIIdDQwLnRlc3SCCHQ0MS50ZXN0ggh0NDIudGVzdIIIdDQzLnRlc3SCCHQ0 -NC50ZXN0ggh0NDUudGVzdIIIdDQ2LnRlc3SCCHQ0Ny50ZXN0ggh0NDgudGVzdIII -dDQ5LnRlc3SCCHQ1MC50ZXN0ggh0NTEudGVzdIIIdDUyLnRlc3SCCHQ1My50ZXN0 -ggh0NTQudGVzdIIIdDU1LnRlc3SCCHQ1Ni50ZXN0ggh0NTcudGVzdIIIdDU4LnRl -c3SCCHQ1OS50ZXN0ggh0NjAudGVzdIIIdDYxLnRlc3SCCHQ2Mi50ZXN0ggh0NjMu -dGVzdIIIdDY0LnRlc3SCCHQ2NS50ZXN0ggh0NjYudGVzdIIIdDY3LnRlc3SCCHQ2 -OC50ZXN0ggh0NjkudGVzdIIIdDcwLnRlc3SCCHQ3MS50ZXN0ggh0NzIudGVzdIII -dDczLnRlc3SCCHQ3NC50ZXN0ggh0NzUudGVzdIIIdDc2LnRlc3SCCHQ3Ny50ZXN0 -ggh0NzgudGVzdIIIdDc5LnRlc3SCCHQ4MC50ZXN0ggh0ODEudGVzdIIIdDgyLnRl -c3SCCHQ4My50ZXN0ggh0ODQudGVzdIIIdDg1LnRlc3SCCHQ4Ni50ZXN0ggh0ODcu -dGVzdIIIdDg4LnRlc3SCCHQ4OS50ZXN0ggh0OTAudGVzdIIIdDkxLnRlc3SCCHQ5 -Mi50ZXN0ggh0OTMudGVzdIIIdDk0LnRlc3SCCHQ5NS50ZXN0ggh0OTYudGVzdIII -dDk3LnRlc3SCCHQ5OC50ZXN0ggh0OTkudGVzdIIJdDEwMC50ZXN0ggl0MTAxLnRl -c3SCCXQxMDIudGVzdIIJdDEwMy50ZXN0ggl0MTA0LnRlc3SCCXQxMDUudGVzdIIJ -dDEwNi50ZXN0ggl0MTA3LnRlc3SCCXQxMDgudGVzdIIJdDEwOS50ZXN0ggl0MTEw -LnRlc3SCCXQxMTEudGVzdIIJdDExMi50ZXN0ggl0MTEzLnRlc3SCCXQxMTQudGVz -dIIJdDExNS50ZXN0ggl0MTE2LnRlc3SCCXQxMTcudGVzdIIJdDExOC50ZXN0ggl0 -MTE5LnRlc3SCCXQxMjAudGVzdIIJdDEyMS50ZXN0ggl0MTIyLnRlc3SCCXQxMjMu -dGVzdIIJdDEyNC50ZXN0ggl0MTI1LnRlc3SCCXQxMjYudGVzdIIJdDEyNy50ZXN0 -ggl0MTI4LnRlc3SCCXQxMjkudGVzdIIJdDEzMC50ZXN0ggl0MTMxLnRlc3SCCXQx -MzIudGVzdIIJdDEzMy50ZXN0ggl0MTM0LnRlc3SCCXQxMzUudGVzdIIJdDEzNi50 -ZXN0ggl0MTM3LnRlc3SCCXQxMzgudGVzdIIJdDEzOS50ZXN0ggl0MTQwLnRlc3SC -CXQxNDEudGVzdIIJdDE0Mi50ZXN0ggl0MTQzLnRlc3SCCXQxNDQudGVzdIIJdDE0 -NS50ZXN0ggl0MTQ2LnRlc3SCCXQxNDcudGVzdIIJdDE0OC50ZXN0ggl0MTQ5LnRl -c3SCCXQxNTAudGVzdIIJdDE1MS50ZXN0ggl0MTUyLnRlc3SCCXQxNTMudGVzdIIJ -dDE1NC50ZXN0ggl0MTU1LnRlc3SCCXQxNTYudGVzdIIJdDE1Ny50ZXN0ggl0MTU4 -LnRlc3SCCXQxNTkudGVzdIIJdDE2MC50ZXN0ggl0MTYxLnRlc3SCCXQxNjIudGVz -dIIJdDE2My50ZXN0ggl0MTY0LnRlc3SCCXQxNjUudGVzdIIJdDE2Ni50ZXN0ggl0 -MTY3LnRlc3SCCXQxNjgudGVzdIIJdDE2OS50ZXN0ggl0MTcwLnRlc3SCCXQxNzEu -dGVzdIIJdDE3Mi50ZXN0ggl0MTczLnRlc3SCCXQxNzQudGVzdIIJdDE3NS50ZXN0 -ggl0MTc2LnRlc3SCCXQxNzcudGVzdIIJdDE3OC50ZXN0ggl0MTc5LnRlc3SCCXQx -ODAudGVzdIIJdDE4MS50ZXN0ggl0MTgyLnRlc3SCCXQxODMudGVzdIIJdDE4NC50 -ZXN0ggl0MTg1LnRlc3SCCXQxODYudGVzdIIJdDE4Ny50ZXN0ggl0MTg4LnRlc3SC -CXQxODkudGVzdIIJdDE5MC50ZXN0ggl0MTkxLnRlc3SCCXQxOTIudGVzdIIJdDE5 -My50ZXN0ggl0MTk0LnRlc3SCCXQxOTUudGVzdIIJdDE5Ni50ZXN0ggl0MTk3LnRl -c3SCCXQxOTgudGVzdIIJdDE5OS50ZXN0ggl0MjAwLnRlc3SCCXQyMDEudGVzdIIJ -dDIwMi50ZXN0ggl0MjAzLnRlc3SCCXQyMDQudGVzdIIJdDIwNS50ZXN0ggl0MjA2 -LnRlc3SCCXQyMDcudGVzdIIJdDIwOC50ZXN0ggl0MjA5LnRlc3SCCXQyMTAudGVz -dIIJdDIxMS50ZXN0ggl0MjEyLnRlc3SCCXQyMTMudGVzdIIJdDIxNC50ZXN0ggl0 -MjE1LnRlc3SCCXQyMTYudGVzdIIJdDIxNy50ZXN0ggl0MjE4LnRlc3SCCXQyMTku -dGVzdIIJdDIyMC50ZXN0ggl0MjIxLnRlc3SCCXQyMjIudGVzdIIJdDIyMy50ZXN0 -ggl0MjI0LnRlc3SCCXQyMjUudGVzdIIJdDIyNi50ZXN0ggl0MjI3LnRlc3SCCXQy -MjgudGVzdIIJdDIyOS50ZXN0ggl0MjMwLnRlc3SCCXQyMzEudGVzdIIJdDIzMi50 -ZXN0ggl0MjMzLnRlc3SCCXQyMzQudGVzdIIJdDIzNS50ZXN0ggl0MjM2LnRlc3SC -CXQyMzcudGVzdIIJdDIzOC50ZXN0ggl0MjM5LnRlc3SCCXQyNDAudGVzdIIJdDI0 -MS50ZXN0ggl0MjQyLnRlc3SCCXQyNDMudGVzdIIJdDI0NC50ZXN0ggl0MjQ1LnRl -c3SCCXQyNDYudGVzdIIJdDI0Ny50ZXN0ggl0MjQ4LnRlc3SCCXQyNDkudGVzdIIJ -dDI1MC50ZXN0ggl0MjUxLnRlc3SCCXQyNTIudGVzdIIJdDI1My50ZXN0ggl0MjU0 -LnRlc3SCCXQyNTUudGVzdIIJdDI1Ni50ZXN0ggl0MjU3LnRlc3SCCXQyNTgudGVz -dIIJdDI1OS50ZXN0ggl0MjYwLnRlc3SCCXQyNjEudGVzdIIJdDI2Mi50ZXN0ggl0 -MjYzLnRlc3SCCXQyNjQudGVzdIIJdDI2NS50ZXN0ggl0MjY2LnRlc3SCCXQyNjcu -dGVzdIIJdDI2OC50ZXN0ggl0MjY5LnRlc3SCCXQyNzAudGVzdIIJdDI3MS50ZXN0 -ggl0MjcyLnRlc3SCCXQyNzMudGVzdIIJdDI3NC50ZXN0ggl0Mjc1LnRlc3SCCXQy -NzYudGVzdIIJdDI3Ny50ZXN0ggl0Mjc4LnRlc3SCCXQyNzkudGVzdIIJdDI4MC50 -ZXN0ggl0MjgxLnRlc3SCCXQyODIudGVzdIIJdDI4My50ZXN0ggl0Mjg0LnRlc3SC -CXQyODUudGVzdIIJdDI4Ni50ZXN0ggl0Mjg3LnRlc3SCCXQyODgudGVzdIIJdDI4 -OS50ZXN0ggl0MjkwLnRlc3SCCXQyOTEudGVzdIIJdDI5Mi50ZXN0ggl0MjkzLnRl -c3SCCXQyOTQudGVzdIIJdDI5NS50ZXN0ggl0Mjk2LnRlc3SCCXQyOTcudGVzdIIJ -dDI5OC50ZXN0ggl0Mjk5LnRlc3SCCXQzMDAudGVzdIIJdDMwMS50ZXN0ggl0MzAy -LnRlc3SCCXQzMDMudGVzdIIJdDMwNC50ZXN0ggl0MzA1LnRlc3SCCXQzMDYudGVz -dIIJdDMwNy50ZXN0ggl0MzA4LnRlc3SCCXQzMDkudGVzdIIJdDMxMC50ZXN0ggl0 -MzExLnRlc3SCCXQzMTIudGVzdIIJdDMxMy50ZXN0ggl0MzE0LnRlc3SCCXQzMTUu -dGVzdIIJdDMxNi50ZXN0ggl0MzE3LnRlc3SCCXQzMTgudGVzdIIJdDMxOS50ZXN0 -ggl0MzIwLnRlc3SCCXQzMjEudGVzdIIJdDMyMi50ZXN0ggl0MzIzLnRlc3SCCXQz -MjQudGVzdIIJdDMyNS50ZXN0ggl0MzI2LnRlc3SCCXQzMjcudGVzdIIJdDMyOC50 -ZXN0ggl0MzI5LnRlc3SCCXQzMzAudGVzdIIJdDMzMS50ZXN0ggl0MzMyLnRlc3SC -CXQzMzMudGVzdIIJdDMzNC50ZXN0ggl0MzM1LnRlc3SCCXQzMzYudGVzdIIJdDMz -Ny50ZXN0ggl0MzM4LnRlc3SCCXQzMzkudGVzdIIJdDM0MC50ZXN0ggl0MzQxLnRl -c3SCCXQzNDIudGVzdIIJdDM0My50ZXN0ggl0MzQ0LnRlc3SCCXQzNDUudGVzdIIJ -dDM0Ni50ZXN0ggl0MzQ3LnRlc3SCCXQzNDgudGVzdIIJdDM0OS50ZXN0ggl0MzUw -LnRlc3SCCXQzNTEudGVzdIIJdDM1Mi50ZXN0ggl0MzUzLnRlc3SCCXQzNTQudGVz -dIIJdDM1NS50ZXN0ggl0MzU2LnRlc3SCCXQzNTcudGVzdIIJdDM1OC50ZXN0ggl0 -MzU5LnRlc3SCCXQzNjAudGVzdIIJdDM2MS50ZXN0ggl0MzYyLnRlc3SCCXQzNjMu -dGVzdIIJdDM2NC50ZXN0ggl0MzY1LnRlc3SCCXQzNjYudGVzdIIJdDM2Ny50ZXN0 -ggl0MzY4LnRlc3SCCXQzNjkudGVzdIIJdDM3MC50ZXN0ggl0MzcxLnRlc3SCCXQz -NzIudGVzdIIJdDM3My50ZXN0ggl0Mzc0LnRlc3SCCXQzNzUudGVzdIIJdDM3Ni50 -ZXN0ggl0Mzc3LnRlc3SCCXQzNzgudGVzdIIJdDM3OS50ZXN0ggl0MzgwLnRlc3SC -CXQzODEudGVzdIIJdDM4Mi50ZXN0ggl0MzgzLnRlc3SCCXQzODQudGVzdIIJdDM4 -NS50ZXN0ggl0Mzg2LnRlc3SCCXQzODcudGVzdIIJdDM4OC50ZXN0ggl0Mzg5LnRl -c3SCCXQzOTAudGVzdIIJdDM5MS50ZXN0ggl0MzkyLnRlc3SCCXQzOTMudGVzdIIJ -dDM5NC50ZXN0ggl0Mzk1LnRlc3SCCXQzOTYudGVzdIIJdDM5Ny50ZXN0ggl0Mzk4 -LnRlc3SCCXQzOTkudGVzdIIJdDQwMC50ZXN0ggl0NDAxLnRlc3SCCXQ0MDIudGVz -dIIJdDQwMy50ZXN0ggl0NDA0LnRlc3SCCXQ0MDUudGVzdIIJdDQwNi50ZXN0ggl0 -NDA3LnRlc3SCCXQ0MDgudGVzdIIJdDQwOS50ZXN0ggl0NDEwLnRlc3SCCXQ0MTEu -dGVzdIIJdDQxMi50ZXN0ggl0NDEzLnRlc3SCCXQ0MTQudGVzdIIJdDQxNS50ZXN0 -ggl0NDE2LnRlc3SCCXQ0MTcudGVzdIIJdDQxOC50ZXN0ggl0NDE5LnRlc3SCCXQ0 -MjAudGVzdIIJdDQyMS50ZXN0ggl0NDIyLnRlc3SCCXQ0MjMudGVzdIIJdDQyNC50 -ZXN0ggl0NDI1LnRlc3SCCXQ0MjYudGVzdIIJdDQyNy50ZXN0ggl0NDI4LnRlc3SC -CXQ0MjkudGVzdIIJdDQzMC50ZXN0ggl0NDMxLnRlc3SCCXQ0MzIudGVzdIIJdDQz -My50ZXN0ggl0NDM0LnRlc3SCCXQ0MzUudGVzdIIJdDQzNi50ZXN0ggl0NDM3LnRl -c3SCCXQ0MzgudGVzdIIJdDQzOS50ZXN0ggl0NDQwLnRlc3SCCXQ0NDEudGVzdIIJ -dDQ0Mi50ZXN0ggl0NDQzLnRlc3SCCXQ0NDQudGVzdIIJdDQ0NS50ZXN0ggl0NDQ2 -LnRlc3SCCXQ0NDcudGVzdIIJdDQ0OC50ZXN0ggl0NDQ5LnRlc3SCCXQ0NTAudGVz -dIIJdDQ1MS50ZXN0ggl0NDUyLnRlc3SCCXQ0NTMudGVzdIIJdDQ1NC50ZXN0ggl0 -NDU1LnRlc3SCCXQ0NTYudGVzdIIJdDQ1Ny50ZXN0ggl0NDU4LnRlc3SCCXQ0NTku -dGVzdIIJdDQ2MC50ZXN0ggl0NDYxLnRlc3SCCXQ0NjIudGVzdIIJdDQ2My50ZXN0 -ggl0NDY0LnRlc3SCCXQ0NjUudGVzdIIJdDQ2Ni50ZXN0ggl0NDY3LnRlc3SCCXQ0 -NjgudGVzdIIJdDQ2OS50ZXN0ggl0NDcwLnRlc3SCCXQ0NzEudGVzdIIJdDQ3Mi50 -ZXN0ggl0NDczLnRlc3SCCXQ0NzQudGVzdIIJdDQ3NS50ZXN0ggl0NDc2LnRlc3SC -CXQ0NzcudGVzdIIJdDQ3OC50ZXN0ggl0NDc5LnRlc3SCCXQ0ODAudGVzdIIJdDQ4 -MS50ZXN0ggl0NDgyLnRlc3SCCXQ0ODMudGVzdIIJdDQ4NC50ZXN0ggl0NDg1LnRl -c3SCCXQ0ODYudGVzdIIJdDQ4Ny50ZXN0ggl0NDg4LnRlc3SCCXQ0ODkudGVzdIIJ -dDQ5MC50ZXN0ggl0NDkxLnRlc3SCCXQ0OTIudGVzdIIJdDQ5My50ZXN0ggl0NDk0 -LnRlc3SCCXQ0OTUudGVzdIIJdDQ5Ni50ZXN0ggl0NDk3LnRlc3SCCXQ0OTgudGVz -dIIJdDQ5OS50ZXN0ggl0NTAwLnRlc3SCCXQ1MDEudGVzdIIJdDUwMi50ZXN0ggl0 -NTAzLnRlc3SCCXQ1MDQudGVzdIIJdDUwNS50ZXN0ggl0NTA2LnRlc3SCCXQ1MDcu -dGVzdIIJdDUwOC50ZXN0ggl0NTA5LnRlc3SCCXQ1MTAudGVzdIIJdDUxMS50ZXN0 -ggl0NTEyLnRlc3SCCXQ1MTMudGVzdIIJdDUxNC50ZXN0ggl0NTE1LnRlc3SCCXQ1 -MTYudGVzdIIJdDUxNy50ZXN0ggl0NTE4LnRlc3SCCXQ1MTkudGVzdIIJdDUyMC50 -ZXN0ggl0NTIxLnRlc3SCCXQ1MjIudGVzdIIJdDUyMy50ZXN0ggl0NTI0LnRlc3SC -CXQ1MjUudGVzdIIJdDUyNi50ZXN0ggl0NTI3LnRlc3SCCXQ1MjgudGVzdIIJdDUy -OS50ZXN0ggl0NTMwLnRlc3SCCXQ1MzEudGVzdIIJdDUzMi50ZXN0ggl0NTMzLnRl -c3SCCXQ1MzQudGVzdIIJdDUzNS50ZXN0ggl0NTM2LnRlc3SCCXQ1MzcudGVzdIIJ -dDUzOC50ZXN0ggl0NTM5LnRlc3SCCXQ1NDAudGVzdIIJdDU0MS50ZXN0ggl0NTQy -LnRlc3SCCXQ1NDMudGVzdIIJdDU0NC50ZXN0ggl0NTQ1LnRlc3SCCXQ1NDYudGVz -dIIJdDU0Ny50ZXN0ggl0NTQ4LnRlc3SCCXQ1NDkudGVzdIIJdDU1MC50ZXN0ggl0 -NTUxLnRlc3SCCXQ1NTIudGVzdIIJdDU1My50ZXN0ggl0NTU0LnRlc3SCCXQ1NTUu -dGVzdIIJdDU1Ni50ZXN0ggl0NTU3LnRlc3SCCXQ1NTgudGVzdIIJdDU1OS50ZXN0 -ggl0NTYwLnRlc3SCCXQ1NjEudGVzdIIJdDU2Mi50ZXN0ggl0NTYzLnRlc3SCCXQ1 -NjQudGVzdIIJdDU2NS50ZXN0ggl0NTY2LnRlc3SCCXQ1NjcudGVzdIIJdDU2OC50 -ZXN0ggl0NTY5LnRlc3SCCXQ1NzAudGVzdIIJdDU3MS50ZXN0ggl0NTcyLnRlc3SC -CXQ1NzMudGVzdIIJdDU3NC50ZXN0ggl0NTc1LnRlc3SCCXQ1NzYudGVzdIIJdDU3 -Ny50ZXN0ggl0NTc4LnRlc3SCCXQ1NzkudGVzdIIJdDU4MC50ZXN0ggl0NTgxLnRl -c3SCCXQ1ODIudGVzdIIJdDU4My50ZXN0ggl0NTg0LnRlc3SCCXQ1ODUudGVzdIIJ -dDU4Ni50ZXN0ggl0NTg3LnRlc3SCCXQ1ODgudGVzdIIJdDU4OS50ZXN0ggl0NTkw -LnRlc3SCCXQ1OTEudGVzdIIJdDU5Mi50ZXN0ggl0NTkzLnRlc3SCCXQ1OTQudGVz -dIIJdDU5NS50ZXN0ggl0NTk2LnRlc3SCCXQ1OTcudGVzdIIJdDU5OC50ZXN0ggl0 -NTk5LnRlc3SCCXQ2MDAudGVzdIIJdDYwMS50ZXN0ggl0NjAyLnRlc3SCCXQ2MDMu -dGVzdIIJdDYwNC50ZXN0ggl0NjA1LnRlc3SCCXQ2MDYudGVzdIIJdDYwNy50ZXN0 -ggl0NjA4LnRlc3SCCXQ2MDkudGVzdIIJdDYxMC50ZXN0ggl0NjExLnRlc3SCCXQ2 -MTIudGVzdIIJdDYxMy50ZXN0ggl0NjE0LnRlc3SCCXQ2MTUudGVzdIIJdDYxNi50 -ZXN0ggl0NjE3LnRlc3SCCXQ2MTgudGVzdIIJdDYxOS50ZXN0ggl0NjIwLnRlc3SC -CXQ2MjEudGVzdIIJdDYyMi50ZXN0ggl0NjIzLnRlc3SCCXQ2MjQudGVzdIIJdDYy -NS50ZXN0ggl0NjI2LnRlc3SCCXQ2MjcudGVzdIIJdDYyOC50ZXN0ggl0NjI5LnRl -c3SCCXQ2MzAudGVzdIIJdDYzMS50ZXN0ggl0NjMyLnRlc3SCCXQ2MzMudGVzdIIJ -dDYzNC50ZXN0ggl0NjM1LnRlc3SCCXQ2MzYudGVzdIIJdDYzNy50ZXN0ggl0NjM4 -LnRlc3SCCXQ2MzkudGVzdIIJdDY0MC50ZXN0ggl0NjQxLnRlc3SCCXQ2NDIudGVz -dIIJdDY0My50ZXN0ggl0NjQ0LnRlc3SCCXQ2NDUudGVzdIIJdDY0Ni50ZXN0ggl0 -NjQ3LnRlc3SCCXQ2NDgudGVzdIIJdDY0OS50ZXN0ggl0NjUwLnRlc3SCCXQ2NTEu -dGVzdIIJdDY1Mi50ZXN0ggl0NjUzLnRlc3SCCXQ2NTQudGVzdIIJdDY1NS50ZXN0 -ggl0NjU2LnRlc3SCCXQ2NTcudGVzdIIJdDY1OC50ZXN0ggl0NjU5LnRlc3SCCXQ2 -NjAudGVzdIIJdDY2MS50ZXN0ggl0NjYyLnRlc3SCCXQ2NjMudGVzdIIJdDY2NC50 -ZXN0ggl0NjY1LnRlc3SCCXQ2NjYudGVzdIIJdDY2Ny50ZXN0ggl0NjY4LnRlc3SC -CXQ2NjkudGVzdIIJdDY3MC50ZXN0ggl0NjcxLnRlc3SCCXQ2NzIudGVzdIIJdDY3 -My50ZXN0ggl0Njc0LnRlc3SCCXQ2NzUudGVzdIIJdDY3Ni50ZXN0ggl0Njc3LnRl -c3SCCXQ2NzgudGVzdIIJdDY3OS50ZXN0ggl0NjgwLnRlc3SCCXQ2ODEudGVzdIIJ -dDY4Mi50ZXN0ggl0NjgzLnRlc3SCCXQ2ODQudGVzdIIJdDY4NS50ZXN0ggl0Njg2 -LnRlc3SCCXQ2ODcudGVzdIIJdDY4OC50ZXN0ggl0Njg5LnRlc3SCCXQ2OTAudGVz -dIIJdDY5MS50ZXN0ggl0NjkyLnRlc3SCCXQ2OTMudGVzdIIJdDY5NC50ZXN0ggl0 -Njk1LnRlc3SCCXQ2OTYudGVzdIIJdDY5Ny50ZXN0ggl0Njk4LnRlc3SCCXQ2OTku -dGVzdIIJdDcwMC50ZXN0ggl0NzAxLnRlc3SCCXQ3MDIudGVzdIIJdDcwMy50ZXN0 -ggl0NzA0LnRlc3SCCXQ3MDUudGVzdIIJdDcwNi50ZXN0ggl0NzA3LnRlc3SCCXQ3 -MDgudGVzdIIJdDcwOS50ZXN0ggl0NzEwLnRlc3SCCXQ3MTEudGVzdIIJdDcxMi50 -ZXN0ggl0NzEzLnRlc3SCCXQ3MTQudGVzdIIJdDcxNS50ZXN0ggl0NzE2LnRlc3SC -CXQ3MTcudGVzdIIJdDcxOC50ZXN0ggl0NzE5LnRlc3SCCXQ3MjAudGVzdIIJdDcy -MS50ZXN0ggl0NzIyLnRlc3SCCXQ3MjMudGVzdIIJdDcyNC50ZXN0ggl0NzI1LnRl -c3SCCXQ3MjYudGVzdIIJdDcyNy50ZXN0ggl0NzI4LnRlc3SCCXQ3MjkudGVzdIIJ -dDczMC50ZXN0ggl0NzMxLnRlc3SCCXQ3MzIudGVzdIIJdDczMy50ZXN0ggl0NzM0 -LnRlc3SCCXQ3MzUudGVzdIIJdDczNi50ZXN0ggl0NzM3LnRlc3SCCXQ3MzgudGVz -dIIJdDczOS50ZXN0ggl0NzQwLnRlc3SCCXQ3NDEudGVzdIIJdDc0Mi50ZXN0ggl0 -NzQzLnRlc3SCCXQ3NDQudGVzdIIJdDc0NS50ZXN0ggl0NzQ2LnRlc3SCCXQ3NDcu -dGVzdIIJdDc0OC50ZXN0ggl0NzQ5LnRlc3SCCXQ3NTAudGVzdIIJdDc1MS50ZXN0 -ggl0NzUyLnRlc3SCCXQ3NTMudGVzdIIJdDc1NC50ZXN0ggl0NzU1LnRlc3SCCXQ3 -NTYudGVzdIIJdDc1Ny50ZXN0ggl0NzU4LnRlc3SCCXQ3NTkudGVzdIIJdDc2MC50 -ZXN0ggl0NzYxLnRlc3SCCXQ3NjIudGVzdIIJdDc2My50ZXN0ggl0NzY0LnRlc3SC -CXQ3NjUudGVzdIIJdDc2Ni50ZXN0ggl0NzY3LnRlc3SCCXQ3NjgudGVzdIIJdDc2 -OS50ZXN0ggl0NzcwLnRlc3SCCXQ3NzEudGVzdIIJdDc3Mi50ZXN0ggl0NzczLnRl -c3SCCXQ3NzQudGVzdIIJdDc3NS50ZXN0ggl0Nzc2LnRlc3SCCXQ3NzcudGVzdIIJ -dDc3OC50ZXN0ggl0Nzc5LnRlc3SCCXQ3ODAudGVzdIIJdDc4MS50ZXN0ggl0Nzgy -LnRlc3SCCXQ3ODMudGVzdIIJdDc4NC50ZXN0ggl0Nzg1LnRlc3SCCXQ3ODYudGVz -dIIJdDc4Ny50ZXN0ggl0Nzg4LnRlc3SCCXQ3ODkudGVzdIIJdDc5MC50ZXN0ggl0 -NzkxLnRlc3SCCXQ3OTIudGVzdIIJdDc5My50ZXN0ggl0Nzk0LnRlc3SCCXQ3OTUu -dGVzdIIJdDc5Ni50ZXN0ggl0Nzk3LnRlc3SCCXQ3OTgudGVzdIIJdDc5OS50ZXN0 -ggl0ODAwLnRlc3SCCXQ4MDEudGVzdIIJdDgwMi50ZXN0ggl0ODAzLnRlc3SCCXQ4 -MDQudGVzdIIJdDgwNS50ZXN0ggl0ODA2LnRlc3SCCXQ4MDcudGVzdIIJdDgwOC50 -ZXN0ggl0ODA5LnRlc3SCCXQ4MTAudGVzdIIJdDgxMS50ZXN0ggl0ODEyLnRlc3SC -CXQ4MTMudGVzdIIJdDgxNC50ZXN0ggl0ODE1LnRlc3SCCXQ4MTYudGVzdIIJdDgx -Ny50ZXN0ggl0ODE4LnRlc3SCCXQ4MTkudGVzdIIJdDgyMC50ZXN0ggl0ODIxLnRl -c3SCCXQ4MjIudGVzdIIJdDgyMy50ZXN0ggl0ODI0LnRlc3SCCXQ4MjUudGVzdIIJ -dDgyNi50ZXN0ggl0ODI3LnRlc3SCCXQ4MjgudGVzdIIJdDgyOS50ZXN0ggl0ODMw -LnRlc3SCCXQ4MzEudGVzdIIJdDgzMi50ZXN0ggl0ODMzLnRlc3SCCXQ4MzQudGVz -dIIJdDgzNS50ZXN0ggl0ODM2LnRlc3SCCXQ4MzcudGVzdIIJdDgzOC50ZXN0ggl0 -ODM5LnRlc3SCCXQ4NDAudGVzdIIJdDg0MS50ZXN0ggl0ODQyLnRlc3SCCXQ4NDMu -dGVzdIIJdDg0NC50ZXN0ggl0ODQ1LnRlc3SCCXQ4NDYudGVzdIIJdDg0Ny50ZXN0 -ggl0ODQ4LnRlc3SCCXQ4NDkudGVzdIIJdDg1MC50ZXN0ggl0ODUxLnRlc3SCCXQ4 -NTIudGVzdIIJdDg1My50ZXN0ggl0ODU0LnRlc3SCCXQ4NTUudGVzdIIJdDg1Ni50 -ZXN0ggl0ODU3LnRlc3SCCXQ4NTgudGVzdIIJdDg1OS50ZXN0ggl0ODYwLnRlc3SC -CXQ4NjEudGVzdIIJdDg2Mi50ZXN0ggl0ODYzLnRlc3SCCXQ4NjQudGVzdIIJdDg2 -NS50ZXN0ggl0ODY2LnRlc3SCCXQ4NjcudGVzdIIJdDg2OC50ZXN0ggl0ODY5LnRl -c3SCCXQ4NzAudGVzdIIJdDg3MS50ZXN0ggl0ODcyLnRlc3SCCXQ4NzMudGVzdIIJ -dDg3NC50ZXN0ggl0ODc1LnRlc3SCCXQ4NzYudGVzdIIJdDg3Ny50ZXN0ggl0ODc4 -LnRlc3SCCXQ4NzkudGVzdIIJdDg4MC50ZXN0ggl0ODgxLnRlc3SCCXQ4ODIudGVz -dIIJdDg4My50ZXN0ggl0ODg0LnRlc3SCCXQ4ODUudGVzdIIJdDg4Ni50ZXN0ggl0 -ODg3LnRlc3SCCXQ4ODgudGVzdIIJdDg4OS50ZXN0ggl0ODkwLnRlc3SCCXQ4OTEu -dGVzdIIJdDg5Mi50ZXN0ggl0ODkzLnRlc3SCCXQ4OTQudGVzdIIJdDg5NS50ZXN0 -ggl0ODk2LnRlc3SCCXQ4OTcudGVzdIIJdDg5OC50ZXN0ggl0ODk5LnRlc3SCCXQ5 -MDAudGVzdIIJdDkwMS50ZXN0ggl0OTAyLnRlc3SCCXQ5MDMudGVzdIIJdDkwNC50 -ZXN0ggl0OTA1LnRlc3SCCXQ5MDYudGVzdIIJdDkwNy50ZXN0ggl0OTA4LnRlc3SC -CXQ5MDkudGVzdIIJdDkxMC50ZXN0ggl0OTExLnRlc3SCCXQ5MTIudGVzdIIJdDkx -My50ZXN0ggl0OTE0LnRlc3SCCXQ5MTUudGVzdIIJdDkxNi50ZXN0ggl0OTE3LnRl -c3SCCXQ5MTgudGVzdIIJdDkxOS50ZXN0ggl0OTIwLnRlc3SCCXQ5MjEudGVzdIIJ -dDkyMi50ZXN0ggl0OTIzLnRlc3SCCXQ5MjQudGVzdIIJdDkyNS50ZXN0ggl0OTI2 -LnRlc3SCCXQ5MjcudGVzdIIJdDkyOC50ZXN0ggl0OTI5LnRlc3SCCXQ5MzAudGVz -dIIJdDkzMS50ZXN0ggl0OTMyLnRlc3SCCXQ5MzMudGVzdIIJdDkzNC50ZXN0ggl0 -OTM1LnRlc3SCCXQ5MzYudGVzdIIJdDkzNy50ZXN0ggl0OTM4LnRlc3SCCXQ5Mzku -dGVzdIIJdDk0MC50ZXN0ggl0OTQxLnRlc3SCCXQ5NDIudGVzdIIJdDk0My50ZXN0 -ggl0OTQ0LnRlc3SCCXQ5NDUudGVzdIIJdDk0Ni50ZXN0ggl0OTQ3LnRlc3SCCXQ5 -NDgudGVzdIIJdDk0OS50ZXN0ggl0OTUwLnRlc3SCCXQ5NTEudGVzdIIJdDk1Mi50 -ZXN0ggl0OTUzLnRlc3SCCXQ5NTQudGVzdIIJdDk1NS50ZXN0ggl0OTU2LnRlc3SC -CXQ5NTcudGVzdIIJdDk1OC50ZXN0ggl0OTU5LnRlc3SCCXQ5NjAudGVzdIIJdDk2 -MS50ZXN0ggl0OTYyLnRlc3SCCXQ5NjMudGVzdIIJdDk2NC50ZXN0ggl0OTY1LnRl -c3SCCXQ5NjYudGVzdIIJdDk2Ny50ZXN0ggl0OTY4LnRlc3SCCXQ5NjkudGVzdIIJ -dDk3MC50ZXN0ggl0OTcxLnRlc3SCCXQ5NzIudGVzdIIJdDk3My50ZXN0ggl0OTc0 -LnRlc3SCCXQ5NzUudGVzdIIJdDk3Ni50ZXN0ggl0OTc3LnRlc3SCCXQ5NzgudGVz -dIIJdDk3OS50ZXN0ggl0OTgwLnRlc3SCCXQ5ODEudGVzdIIJdDk4Mi50ZXN0ggl0 -OTgzLnRlc3SCCXQ5ODQudGVzdIIJdDk4NS50ZXN0ggl0OTg2LnRlc3SCCXQ5ODcu -dGVzdIIJdDk4OC50ZXN0ggl0OTg5LnRlc3SCCXQ5OTAudGVzdIIJdDk5MS50ZXN0 -ggl0OTkyLnRlc3SCCXQ5OTMudGVzdIIJdDk5NC50ZXN0ggl0OTk1LnRlc3SCCXQ5 -OTYudGVzdIIJdDk5Ny50ZXN0ggl0OTk4LnRlc3SCCXQ5OTkudGVzdIIKdDEwMDAu -dGVzdIIKdDEwMDEudGVzdIIKdDEwMDIudGVzdIIKdDEwMDMudGVzdIIKdDEwMDQu -dGVzdIIKdDEwMDUudGVzdIIKdDEwMDYudGVzdIIKdDEwMDcudGVzdIIKdDEwMDgu -dGVzdIIKdDEwMDkudGVzdIIKdDEwMTAudGVzdIIKdDEwMTEudGVzdIIKdDEwMTIu -dGVzdIIKdDEwMTMudGVzdIIKdDEwMTQudGVzdIIKdDEwMTUudGVzdIIKdDEwMTYu -dGVzdIIKdDEwMTcudGVzdIIKdDEwMTgudGVzdIIKdDEwMTkudGVzdIIKdDEwMjAu -dGVzdIIKdDEwMjEudGVzdIIKdDEwMjIudGVzdIIKdDEwMjMudGVzdDANBgkqhkiG -9w0BAQsFAAOCAQEAt8hF6PPkTwGp/VDvIgeFeZKd4nWJtw1ZbGWtg3O8RAl8i77M -1PbVR2R7xsjW3e35v3cSryGTzqgc42sHooD0qIM+Z1ljrgfwcFvb+FB2NAuwP5eT -a0WxPK8K2AiWHfrxGyxrgprSrR71PkYzkWAdTXqbbXU9uKVQ0QrNzqskmquJ03MV -cPjGIw2F/ht45tZpXHyyKB85Fpi99uMMHnF/qRV1AqpuOCygGJUYKJ4AkizreAt1 -EZzpqbX6+eqWGFhGO3rtRwhCAaxIL328shbotBw2HhaF0q4mJDayw5/HocNOdida -yswzfqRgfIbXpxlvYBqYiRatSt4SFQ7Q62p4Hw== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.cnf deleted file mode 100644 index cd38c7037d..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.cnf +++ /dev/null @@ -1,1091 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "t0" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,digitalSignature,keyEncipherment -extendedKeyUsage = serverAuth,clientAuth -subjectAltName = @san_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/t0_6.pem -new_certs_dir = out -serial = out/t0.serial -database = out/t0.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/t0.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/t0.cer - -[crl_info] -URI.0 = http://url-for-crl/t0.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[san_info] -IP.1 = 10.0.0.0 -IP.2 = 10.0.0.1 -IP.3 = 10.0.0.2 -IP.4 = 10.0.0.3 -IP.5 = 10.0.0.4 -IP.6 = 10.0.0.5 -IP.7 = 10.0.0.6 -IP.8 = 10.0.0.7 -IP.9 = 10.0.0.8 -IP.10 = 10.0.0.9 -IP.11 = 10.0.0.10 -IP.12 = 10.0.0.11 -IP.13 = 10.0.0.12 -IP.14 = 10.0.0.13 -IP.15 = 10.0.0.14 -IP.16 = 10.0.0.15 -IP.17 = 10.0.0.16 -IP.18 = 10.0.0.17 -IP.19 = 10.0.0.18 -IP.20 = 10.0.0.19 -IP.21 = 10.0.0.20 -IP.22 = 10.0.0.21 -IP.23 = 10.0.0.22 -IP.24 = 10.0.0.23 -IP.25 = 10.0.0.24 -IP.26 = 10.0.0.25 -IP.27 = 10.0.0.26 -IP.28 = 10.0.0.27 -IP.29 = 10.0.0.28 -IP.30 = 10.0.0.29 -IP.31 = 10.0.0.30 -IP.32 = 10.0.0.31 -IP.33 = 10.0.0.32 -IP.34 = 10.0.0.33 -IP.35 = 10.0.0.34 -IP.36 = 10.0.0.35 -IP.37 = 10.0.0.36 -IP.38 = 10.0.0.37 -IP.39 = 10.0.0.38 -IP.40 = 10.0.0.39 -IP.41 = 10.0.0.40 -IP.42 = 10.0.0.41 -IP.43 = 10.0.0.42 -IP.44 = 10.0.0.43 -IP.45 = 10.0.0.44 -IP.46 = 10.0.0.45 -IP.47 = 10.0.0.46 -IP.48 = 10.0.0.47 -IP.49 = 10.0.0.48 -IP.50 = 10.0.0.49 -IP.51 = 10.0.0.50 -IP.52 = 10.0.0.51 -IP.53 = 10.0.0.52 -IP.54 = 10.0.0.53 -IP.55 = 10.0.0.54 -IP.56 = 10.0.0.55 -IP.57 = 10.0.0.56 -IP.58 = 10.0.0.57 -IP.59 = 10.0.0.58 -IP.60 = 10.0.0.59 -IP.61 = 10.0.0.60 -IP.62 = 10.0.0.61 -IP.63 = 10.0.0.62 -IP.64 = 10.0.0.63 -IP.65 = 10.0.0.64 -IP.66 = 10.0.0.65 -IP.67 = 10.0.0.66 -IP.68 = 10.0.0.67 -IP.69 = 10.0.0.68 -IP.70 = 10.0.0.69 -IP.71 = 10.0.0.70 -IP.72 = 10.0.0.71 -IP.73 = 10.0.0.72 -IP.74 = 10.0.0.73 -IP.75 = 10.0.0.74 -IP.76 = 10.0.0.75 -IP.77 = 10.0.0.76 -IP.78 = 10.0.0.77 -IP.79 = 10.0.0.78 -IP.80 = 10.0.0.79 -IP.81 = 10.0.0.80 -IP.82 = 10.0.0.81 -IP.83 = 10.0.0.82 -IP.84 = 10.0.0.83 -IP.85 = 10.0.0.84 -IP.86 = 10.0.0.85 -IP.87 = 10.0.0.86 -IP.88 = 10.0.0.87 -IP.89 = 10.0.0.88 -IP.90 = 10.0.0.89 -IP.91 = 10.0.0.90 -IP.92 = 10.0.0.91 -IP.93 = 10.0.0.92 -IP.94 = 10.0.0.93 -IP.95 = 10.0.0.94 -IP.96 = 10.0.0.95 -IP.97 = 10.0.0.96 -IP.98 = 10.0.0.97 -IP.99 = 10.0.0.98 -IP.100 = 10.0.0.99 -IP.101 = 10.0.0.100 -IP.102 = 10.0.0.101 -IP.103 = 10.0.0.102 -IP.104 = 10.0.0.103 -IP.105 = 10.0.0.104 -IP.106 = 10.0.0.105 -IP.107 = 10.0.0.106 -IP.108 = 10.0.0.107 -IP.109 = 10.0.0.108 -IP.110 = 10.0.0.109 -IP.111 = 10.0.0.110 -IP.112 = 10.0.0.111 -IP.113 = 10.0.0.112 -IP.114 = 10.0.0.113 -IP.115 = 10.0.0.114 -IP.116 = 10.0.0.115 -IP.117 = 10.0.0.116 -IP.118 = 10.0.0.117 -IP.119 = 10.0.0.118 -IP.120 = 10.0.0.119 -IP.121 = 10.0.0.120 -IP.122 = 10.0.0.121 -IP.123 = 10.0.0.122 -IP.124 = 10.0.0.123 -IP.125 = 10.0.0.124 -IP.126 = 10.0.0.125 -IP.127 = 10.0.0.126 -IP.128 = 10.0.0.127 -IP.129 = 10.0.0.128 -IP.130 = 10.0.0.129 -IP.131 = 10.0.0.130 -IP.132 = 10.0.0.131 -IP.133 = 10.0.0.132 -IP.134 = 10.0.0.133 -IP.135 = 10.0.0.134 -IP.136 = 10.0.0.135 -IP.137 = 10.0.0.136 -IP.138 = 10.0.0.137 -IP.139 = 10.0.0.138 -IP.140 = 10.0.0.139 -IP.141 = 10.0.0.140 -IP.142 = 10.0.0.141 -IP.143 = 10.0.0.142 -IP.144 = 10.0.0.143 -IP.145 = 10.0.0.144 -IP.146 = 10.0.0.145 -IP.147 = 10.0.0.146 -IP.148 = 10.0.0.147 -IP.149 = 10.0.0.148 -IP.150 = 10.0.0.149 -IP.151 = 10.0.0.150 -IP.152 = 10.0.0.151 -IP.153 = 10.0.0.152 -IP.154 = 10.0.0.153 -IP.155 = 10.0.0.154 -IP.156 = 10.0.0.155 -IP.157 = 10.0.0.156 -IP.158 = 10.0.0.157 -IP.159 = 10.0.0.158 -IP.160 = 10.0.0.159 -IP.161 = 10.0.0.160 -IP.162 = 10.0.0.161 -IP.163 = 10.0.0.162 -IP.164 = 10.0.0.163 -IP.165 = 10.0.0.164 -IP.166 = 10.0.0.165 -IP.167 = 10.0.0.166 -IP.168 = 10.0.0.167 -IP.169 = 10.0.0.168 -IP.170 = 10.0.0.169 -IP.171 = 10.0.0.170 -IP.172 = 10.0.0.171 -IP.173 = 10.0.0.172 -IP.174 = 10.0.0.173 -IP.175 = 10.0.0.174 -IP.176 = 10.0.0.175 -IP.177 = 10.0.0.176 -IP.178 = 10.0.0.177 -IP.179 = 10.0.0.178 -IP.180 = 10.0.0.179 -IP.181 = 10.0.0.180 -IP.182 = 10.0.0.181 -IP.183 = 10.0.0.182 -IP.184 = 10.0.0.183 -IP.185 = 10.0.0.184 -IP.186 = 10.0.0.185 -IP.187 = 10.0.0.186 -IP.188 = 10.0.0.187 -IP.189 = 10.0.0.188 -IP.190 = 10.0.0.189 -IP.191 = 10.0.0.190 -IP.192 = 10.0.0.191 -IP.193 = 10.0.0.192 -IP.194 = 10.0.0.193 -IP.195 = 10.0.0.194 -IP.196 = 10.0.0.195 -IP.197 = 10.0.0.196 -IP.198 = 10.0.0.197 -IP.199 = 10.0.0.198 -IP.200 = 10.0.0.199 -IP.201 = 10.0.0.200 -IP.202 = 10.0.0.201 -IP.203 = 10.0.0.202 -IP.204 = 10.0.0.203 -IP.205 = 10.0.0.204 -IP.206 = 10.0.0.205 -IP.207 = 10.0.0.206 -IP.208 = 10.0.0.207 -IP.209 = 10.0.0.208 -IP.210 = 10.0.0.209 -IP.211 = 10.0.0.210 -IP.212 = 10.0.0.211 -IP.213 = 10.0.0.212 -IP.214 = 10.0.0.213 -IP.215 = 10.0.0.214 -IP.216 = 10.0.0.215 -IP.217 = 10.0.0.216 -IP.218 = 10.0.0.217 -IP.219 = 10.0.0.218 -IP.220 = 10.0.0.219 -IP.221 = 10.0.0.220 -IP.222 = 10.0.0.221 -IP.223 = 10.0.0.222 -IP.224 = 10.0.0.223 -IP.225 = 10.0.0.224 -IP.226 = 10.0.0.225 -IP.227 = 10.0.0.226 -IP.228 = 10.0.0.227 -IP.229 = 10.0.0.228 -IP.230 = 10.0.0.229 -IP.231 = 10.0.0.230 -IP.232 = 10.0.0.231 -IP.233 = 10.0.0.232 -IP.234 = 10.0.0.233 -IP.235 = 10.0.0.234 -IP.236 = 10.0.0.235 -IP.237 = 10.0.0.236 -IP.238 = 10.0.0.237 -IP.239 = 10.0.0.238 -IP.240 = 10.0.0.239 -IP.241 = 10.0.0.240 -IP.242 = 10.0.0.241 -IP.243 = 10.0.0.242 -IP.244 = 10.0.0.243 -IP.245 = 10.0.0.244 -IP.246 = 10.0.0.245 -IP.247 = 10.0.0.246 -IP.248 = 10.0.0.247 -IP.249 = 10.0.0.248 -IP.250 = 10.0.0.249 -IP.251 = 10.0.0.250 -IP.252 = 10.0.0.251 -IP.253 = 10.0.0.252 -IP.254 = 10.0.0.253 -IP.255 = 10.0.0.254 -IP.256 = 10.0.0.255 -IP.257 = 10.0.1.0 -IP.258 = 10.0.1.1 -IP.259 = 10.0.1.2 -IP.260 = 10.0.1.3 -IP.261 = 10.0.1.4 -IP.262 = 10.0.1.5 -IP.263 = 10.0.1.6 -IP.264 = 10.0.1.7 -IP.265 = 10.0.1.8 -IP.266 = 10.0.1.9 -IP.267 = 10.0.1.10 -IP.268 = 10.0.1.11 -IP.269 = 10.0.1.12 -IP.270 = 10.0.1.13 -IP.271 = 10.0.1.14 -IP.272 = 10.0.1.15 -IP.273 = 10.0.1.16 -IP.274 = 10.0.1.17 -IP.275 = 10.0.1.18 -IP.276 = 10.0.1.19 -IP.277 = 10.0.1.20 -IP.278 = 10.0.1.21 -IP.279 = 10.0.1.22 -IP.280 = 10.0.1.23 -IP.281 = 10.0.1.24 -IP.282 = 10.0.1.25 -IP.283 = 10.0.1.26 -IP.284 = 10.0.1.27 -IP.285 = 10.0.1.28 -IP.286 = 10.0.1.29 -IP.287 = 10.0.1.30 -IP.288 = 10.0.1.31 -IP.289 = 10.0.1.32 -IP.290 = 10.0.1.33 -IP.291 = 10.0.1.34 -IP.292 = 10.0.1.35 -IP.293 = 10.0.1.36 -IP.294 = 10.0.1.37 -IP.295 = 10.0.1.38 -IP.296 = 10.0.1.39 -IP.297 = 10.0.1.40 -IP.298 = 10.0.1.41 -IP.299 = 10.0.1.42 -IP.300 = 10.0.1.43 -IP.301 = 10.0.1.44 -IP.302 = 10.0.1.45 -IP.303 = 10.0.1.46 -IP.304 = 10.0.1.47 -IP.305 = 10.0.1.48 -IP.306 = 10.0.1.49 -IP.307 = 10.0.1.50 -IP.308 = 10.0.1.51 -IP.309 = 10.0.1.52 -IP.310 = 10.0.1.53 -IP.311 = 10.0.1.54 -IP.312 = 10.0.1.55 -IP.313 = 10.0.1.56 -IP.314 = 10.0.1.57 -IP.315 = 10.0.1.58 -IP.316 = 10.0.1.59 -IP.317 = 10.0.1.60 -IP.318 = 10.0.1.61 -IP.319 = 10.0.1.62 -IP.320 = 10.0.1.63 -IP.321 = 10.0.1.64 -IP.322 = 10.0.1.65 -IP.323 = 10.0.1.66 -IP.324 = 10.0.1.67 -IP.325 = 10.0.1.68 -IP.326 = 10.0.1.69 -IP.327 = 10.0.1.70 -IP.328 = 10.0.1.71 -IP.329 = 10.0.1.72 -IP.330 = 10.0.1.73 -IP.331 = 10.0.1.74 -IP.332 = 10.0.1.75 -IP.333 = 10.0.1.76 -IP.334 = 10.0.1.77 -IP.335 = 10.0.1.78 -IP.336 = 10.0.1.79 -IP.337 = 10.0.1.80 -IP.338 = 10.0.1.81 -IP.339 = 10.0.1.82 -IP.340 = 10.0.1.83 -IP.341 = 10.0.1.84 -IP.342 = 10.0.1.85 -IP.343 = 10.0.1.86 -IP.344 = 10.0.1.87 -IP.345 = 10.0.1.88 -IP.346 = 10.0.1.89 -IP.347 = 10.0.1.90 -IP.348 = 10.0.1.91 -IP.349 = 10.0.1.92 -IP.350 = 10.0.1.93 -IP.351 = 10.0.1.94 -IP.352 = 10.0.1.95 -IP.353 = 10.0.1.96 -IP.354 = 10.0.1.97 -IP.355 = 10.0.1.98 -IP.356 = 10.0.1.99 -IP.357 = 10.0.1.100 -IP.358 = 10.0.1.101 -IP.359 = 10.0.1.102 -IP.360 = 10.0.1.103 -IP.361 = 10.0.1.104 -IP.362 = 10.0.1.105 -IP.363 = 10.0.1.106 -IP.364 = 10.0.1.107 -IP.365 = 10.0.1.108 -IP.366 = 10.0.1.109 -IP.367 = 10.0.1.110 -IP.368 = 10.0.1.111 -IP.369 = 10.0.1.112 -IP.370 = 10.0.1.113 -IP.371 = 10.0.1.114 -IP.372 = 10.0.1.115 -IP.373 = 10.0.1.116 -IP.374 = 10.0.1.117 -IP.375 = 10.0.1.118 -IP.376 = 10.0.1.119 -IP.377 = 10.0.1.120 -IP.378 = 10.0.1.121 -IP.379 = 10.0.1.122 -IP.380 = 10.0.1.123 -IP.381 = 10.0.1.124 -IP.382 = 10.0.1.125 -IP.383 = 10.0.1.126 -IP.384 = 10.0.1.127 -IP.385 = 10.0.1.128 -IP.386 = 10.0.1.129 -IP.387 = 10.0.1.130 -IP.388 = 10.0.1.131 -IP.389 = 10.0.1.132 -IP.390 = 10.0.1.133 -IP.391 = 10.0.1.134 -IP.392 = 10.0.1.135 -IP.393 = 10.0.1.136 -IP.394 = 10.0.1.137 -IP.395 = 10.0.1.138 -IP.396 = 10.0.1.139 -IP.397 = 10.0.1.140 -IP.398 = 10.0.1.141 -IP.399 = 10.0.1.142 -IP.400 = 10.0.1.143 -IP.401 = 10.0.1.144 -IP.402 = 10.0.1.145 -IP.403 = 10.0.1.146 -IP.404 = 10.0.1.147 -IP.405 = 10.0.1.148 -IP.406 = 10.0.1.149 -IP.407 = 10.0.1.150 -IP.408 = 10.0.1.151 -IP.409 = 10.0.1.152 -IP.410 = 10.0.1.153 -IP.411 = 10.0.1.154 -IP.412 = 10.0.1.155 -IP.413 = 10.0.1.156 -IP.414 = 10.0.1.157 -IP.415 = 10.0.1.158 -IP.416 = 10.0.1.159 -IP.417 = 10.0.1.160 -IP.418 = 10.0.1.161 -IP.419 = 10.0.1.162 -IP.420 = 10.0.1.163 -IP.421 = 10.0.1.164 -IP.422 = 10.0.1.165 -IP.423 = 10.0.1.166 -IP.424 = 10.0.1.167 -IP.425 = 10.0.1.168 -IP.426 = 10.0.1.169 -IP.427 = 10.0.1.170 -IP.428 = 10.0.1.171 -IP.429 = 10.0.1.172 -IP.430 = 10.0.1.173 -IP.431 = 10.0.1.174 -IP.432 = 10.0.1.175 -IP.433 = 10.0.1.176 -IP.434 = 10.0.1.177 -IP.435 = 10.0.1.178 -IP.436 = 10.0.1.179 -IP.437 = 10.0.1.180 -IP.438 = 10.0.1.181 -IP.439 = 10.0.1.182 -IP.440 = 10.0.1.183 -IP.441 = 10.0.1.184 -IP.442 = 10.0.1.185 -IP.443 = 10.0.1.186 -IP.444 = 10.0.1.187 -IP.445 = 10.0.1.188 -IP.446 = 10.0.1.189 -IP.447 = 10.0.1.190 -IP.448 = 10.0.1.191 -IP.449 = 10.0.1.192 -IP.450 = 10.0.1.193 -IP.451 = 10.0.1.194 -IP.452 = 10.0.1.195 -IP.453 = 10.0.1.196 -IP.454 = 10.0.1.197 -IP.455 = 10.0.1.198 -IP.456 = 10.0.1.199 -IP.457 = 10.0.1.200 -IP.458 = 10.0.1.201 -IP.459 = 10.0.1.202 -IP.460 = 10.0.1.203 -IP.461 = 10.0.1.204 -IP.462 = 10.0.1.205 -IP.463 = 10.0.1.206 -IP.464 = 10.0.1.207 -IP.465 = 10.0.1.208 -IP.466 = 10.0.1.209 -IP.467 = 10.0.1.210 -IP.468 = 10.0.1.211 -IP.469 = 10.0.1.212 -IP.470 = 10.0.1.213 -IP.471 = 10.0.1.214 -IP.472 = 10.0.1.215 -IP.473 = 10.0.1.216 -IP.474 = 10.0.1.217 -IP.475 = 10.0.1.218 -IP.476 = 10.0.1.219 -IP.477 = 10.0.1.220 -IP.478 = 10.0.1.221 -IP.479 = 10.0.1.222 -IP.480 = 10.0.1.223 -IP.481 = 10.0.1.224 -IP.482 = 10.0.1.225 -IP.483 = 10.0.1.226 -IP.484 = 10.0.1.227 -IP.485 = 10.0.1.228 -IP.486 = 10.0.1.229 -IP.487 = 10.0.1.230 -IP.488 = 10.0.1.231 -IP.489 = 10.0.1.232 -IP.490 = 10.0.1.233 -IP.491 = 10.0.1.234 -IP.492 = 10.0.1.235 -IP.493 = 10.0.1.236 -IP.494 = 10.0.1.237 -IP.495 = 10.0.1.238 -IP.496 = 10.0.1.239 -IP.497 = 10.0.1.240 -IP.498 = 10.0.1.241 -IP.499 = 10.0.1.242 -IP.500 = 10.0.1.243 -IP.501 = 10.0.1.244 -IP.502 = 10.0.1.245 -IP.503 = 10.0.1.246 -IP.504 = 10.0.1.247 -IP.505 = 10.0.1.248 -IP.506 = 10.0.1.249 -IP.507 = 10.0.1.250 -IP.508 = 10.0.1.251 -IP.509 = 10.0.1.252 -IP.510 = 10.0.1.253 -IP.511 = 10.0.1.254 -IP.512 = 10.0.1.255 -IP.513 = 10.0.2.0 -IP.514 = 10.0.2.1 -IP.515 = 10.0.2.2 -IP.516 = 10.0.2.3 -IP.517 = 10.0.2.4 -IP.518 = 10.0.2.5 -IP.519 = 10.0.2.6 -IP.520 = 10.0.2.7 -IP.521 = 10.0.2.8 -IP.522 = 10.0.2.9 -IP.523 = 10.0.2.10 -IP.524 = 10.0.2.11 -IP.525 = 10.0.2.12 -IP.526 = 10.0.2.13 -IP.527 = 10.0.2.14 -IP.528 = 10.0.2.15 -IP.529 = 10.0.2.16 -IP.530 = 10.0.2.17 -IP.531 = 10.0.2.18 -IP.532 = 10.0.2.19 -IP.533 = 10.0.2.20 -IP.534 = 10.0.2.21 -IP.535 = 10.0.2.22 -IP.536 = 10.0.2.23 -IP.537 = 10.0.2.24 -IP.538 = 10.0.2.25 -IP.539 = 10.0.2.26 -IP.540 = 10.0.2.27 -IP.541 = 10.0.2.28 -IP.542 = 10.0.2.29 -IP.543 = 10.0.2.30 -IP.544 = 10.0.2.31 -IP.545 = 10.0.2.32 -IP.546 = 10.0.2.33 -IP.547 = 10.0.2.34 -IP.548 = 10.0.2.35 -IP.549 = 10.0.2.36 -IP.550 = 10.0.2.37 -IP.551 = 10.0.2.38 -IP.552 = 10.0.2.39 -IP.553 = 10.0.2.40 -IP.554 = 10.0.2.41 -IP.555 = 10.0.2.42 -IP.556 = 10.0.2.43 -IP.557 = 10.0.2.44 -IP.558 = 10.0.2.45 -IP.559 = 10.0.2.46 -IP.560 = 10.0.2.47 -IP.561 = 10.0.2.48 -IP.562 = 10.0.2.49 -IP.563 = 10.0.2.50 -IP.564 = 10.0.2.51 -IP.565 = 10.0.2.52 -IP.566 = 10.0.2.53 -IP.567 = 10.0.2.54 -IP.568 = 10.0.2.55 -IP.569 = 10.0.2.56 -IP.570 = 10.0.2.57 -IP.571 = 10.0.2.58 -IP.572 = 10.0.2.59 -IP.573 = 10.0.2.60 -IP.574 = 10.0.2.61 -IP.575 = 10.0.2.62 -IP.576 = 10.0.2.63 -IP.577 = 10.0.2.64 -IP.578 = 10.0.2.65 -IP.579 = 10.0.2.66 -IP.580 = 10.0.2.67 -IP.581 = 10.0.2.68 -IP.582 = 10.0.2.69 -IP.583 = 10.0.2.70 -IP.584 = 10.0.2.71 -IP.585 = 10.0.2.72 -IP.586 = 10.0.2.73 -IP.587 = 10.0.2.74 -IP.588 = 10.0.2.75 -IP.589 = 10.0.2.76 -IP.590 = 10.0.2.77 -IP.591 = 10.0.2.78 -IP.592 = 10.0.2.79 -IP.593 = 10.0.2.80 -IP.594 = 10.0.2.81 -IP.595 = 10.0.2.82 -IP.596 = 10.0.2.83 -IP.597 = 10.0.2.84 -IP.598 = 10.0.2.85 -IP.599 = 10.0.2.86 -IP.600 = 10.0.2.87 -IP.601 = 10.0.2.88 -IP.602 = 10.0.2.89 -IP.603 = 10.0.2.90 -IP.604 = 10.0.2.91 -IP.605 = 10.0.2.92 -IP.606 = 10.0.2.93 -IP.607 = 10.0.2.94 -IP.608 = 10.0.2.95 -IP.609 = 10.0.2.96 -IP.610 = 10.0.2.97 -IP.611 = 10.0.2.98 -IP.612 = 10.0.2.99 -IP.613 = 10.0.2.100 -IP.614 = 10.0.2.101 -IP.615 = 10.0.2.102 -IP.616 = 10.0.2.103 -IP.617 = 10.0.2.104 -IP.618 = 10.0.2.105 -IP.619 = 10.0.2.106 -IP.620 = 10.0.2.107 -IP.621 = 10.0.2.108 -IP.622 = 10.0.2.109 -IP.623 = 10.0.2.110 -IP.624 = 10.0.2.111 -IP.625 = 10.0.2.112 -IP.626 = 10.0.2.113 -IP.627 = 10.0.2.114 -IP.628 = 10.0.2.115 -IP.629 = 10.0.2.116 -IP.630 = 10.0.2.117 -IP.631 = 10.0.2.118 -IP.632 = 10.0.2.119 -IP.633 = 10.0.2.120 -IP.634 = 10.0.2.121 -IP.635 = 10.0.2.122 -IP.636 = 10.0.2.123 -IP.637 = 10.0.2.124 -IP.638 = 10.0.2.125 -IP.639 = 10.0.2.126 -IP.640 = 10.0.2.127 -IP.641 = 10.0.2.128 -IP.642 = 10.0.2.129 -IP.643 = 10.0.2.130 -IP.644 = 10.0.2.131 -IP.645 = 10.0.2.132 -IP.646 = 10.0.2.133 -IP.647 = 10.0.2.134 -IP.648 = 10.0.2.135 -IP.649 = 10.0.2.136 -IP.650 = 10.0.2.137 -IP.651 = 10.0.2.138 -IP.652 = 10.0.2.139 -IP.653 = 10.0.2.140 -IP.654 = 10.0.2.141 -IP.655 = 10.0.2.142 -IP.656 = 10.0.2.143 -IP.657 = 10.0.2.144 -IP.658 = 10.0.2.145 -IP.659 = 10.0.2.146 -IP.660 = 10.0.2.147 -IP.661 = 10.0.2.148 -IP.662 = 10.0.2.149 -IP.663 = 10.0.2.150 -IP.664 = 10.0.2.151 -IP.665 = 10.0.2.152 -IP.666 = 10.0.2.153 -IP.667 = 10.0.2.154 -IP.668 = 10.0.2.155 -IP.669 = 10.0.2.156 -IP.670 = 10.0.2.157 -IP.671 = 10.0.2.158 -IP.672 = 10.0.2.159 -IP.673 = 10.0.2.160 -IP.674 = 10.0.2.161 -IP.675 = 10.0.2.162 -IP.676 = 10.0.2.163 -IP.677 = 10.0.2.164 -IP.678 = 10.0.2.165 -IP.679 = 10.0.2.166 -IP.680 = 10.0.2.167 -IP.681 = 10.0.2.168 -IP.682 = 10.0.2.169 -IP.683 = 10.0.2.170 -IP.684 = 10.0.2.171 -IP.685 = 10.0.2.172 -IP.686 = 10.0.2.173 -IP.687 = 10.0.2.174 -IP.688 = 10.0.2.175 -IP.689 = 10.0.2.176 -IP.690 = 10.0.2.177 -IP.691 = 10.0.2.178 -IP.692 = 10.0.2.179 -IP.693 = 10.0.2.180 -IP.694 = 10.0.2.181 -IP.695 = 10.0.2.182 -IP.696 = 10.0.2.183 -IP.697 = 10.0.2.184 -IP.698 = 10.0.2.185 -IP.699 = 10.0.2.186 -IP.700 = 10.0.2.187 -IP.701 = 10.0.2.188 -IP.702 = 10.0.2.189 -IP.703 = 10.0.2.190 -IP.704 = 10.0.2.191 -IP.705 = 10.0.2.192 -IP.706 = 10.0.2.193 -IP.707 = 10.0.2.194 -IP.708 = 10.0.2.195 -IP.709 = 10.0.2.196 -IP.710 = 10.0.2.197 -IP.711 = 10.0.2.198 -IP.712 = 10.0.2.199 -IP.713 = 10.0.2.200 -IP.714 = 10.0.2.201 -IP.715 = 10.0.2.202 -IP.716 = 10.0.2.203 -IP.717 = 10.0.2.204 -IP.718 = 10.0.2.205 -IP.719 = 10.0.2.206 -IP.720 = 10.0.2.207 -IP.721 = 10.0.2.208 -IP.722 = 10.0.2.209 -IP.723 = 10.0.2.210 -IP.724 = 10.0.2.211 -IP.725 = 10.0.2.212 -IP.726 = 10.0.2.213 -IP.727 = 10.0.2.214 -IP.728 = 10.0.2.215 -IP.729 = 10.0.2.216 -IP.730 = 10.0.2.217 -IP.731 = 10.0.2.218 -IP.732 = 10.0.2.219 -IP.733 = 10.0.2.220 -IP.734 = 10.0.2.221 -IP.735 = 10.0.2.222 -IP.736 = 10.0.2.223 -IP.737 = 10.0.2.224 -IP.738 = 10.0.2.225 -IP.739 = 10.0.2.226 -IP.740 = 10.0.2.227 -IP.741 = 10.0.2.228 -IP.742 = 10.0.2.229 -IP.743 = 10.0.2.230 -IP.744 = 10.0.2.231 -IP.745 = 10.0.2.232 -IP.746 = 10.0.2.233 -IP.747 = 10.0.2.234 -IP.748 = 10.0.2.235 -IP.749 = 10.0.2.236 -IP.750 = 10.0.2.237 -IP.751 = 10.0.2.238 -IP.752 = 10.0.2.239 -IP.753 = 10.0.2.240 -IP.754 = 10.0.2.241 -IP.755 = 10.0.2.242 -IP.756 = 10.0.2.243 -IP.757 = 10.0.2.244 -IP.758 = 10.0.2.245 -IP.759 = 10.0.2.246 -IP.760 = 10.0.2.247 -IP.761 = 10.0.2.248 -IP.762 = 10.0.2.249 -IP.763 = 10.0.2.250 -IP.764 = 10.0.2.251 -IP.765 = 10.0.2.252 -IP.766 = 10.0.2.253 -IP.767 = 10.0.2.254 -IP.768 = 10.0.2.255 -IP.769 = 10.0.3.0 -IP.770 = 10.0.3.1 -IP.771 = 10.0.3.2 -IP.772 = 10.0.3.3 -IP.773 = 10.0.3.4 -IP.774 = 10.0.3.5 -IP.775 = 10.0.3.6 -IP.776 = 10.0.3.7 -IP.777 = 10.0.3.8 -IP.778 = 10.0.3.9 -IP.779 = 10.0.3.10 -IP.780 = 10.0.3.11 -IP.781 = 10.0.3.12 -IP.782 = 10.0.3.13 -IP.783 = 10.0.3.14 -IP.784 = 10.0.3.15 -IP.785 = 10.0.3.16 -IP.786 = 10.0.3.17 -IP.787 = 10.0.3.18 -IP.788 = 10.0.3.19 -IP.789 = 10.0.3.20 -IP.790 = 10.0.3.21 -IP.791 = 10.0.3.22 -IP.792 = 10.0.3.23 -IP.793 = 10.0.3.24 -IP.794 = 10.0.3.25 -IP.795 = 10.0.3.26 -IP.796 = 10.0.3.27 -IP.797 = 10.0.3.28 -IP.798 = 10.0.3.29 -IP.799 = 10.0.3.30 -IP.800 = 10.0.3.31 -IP.801 = 10.0.3.32 -IP.802 = 10.0.3.33 -IP.803 = 10.0.3.34 -IP.804 = 10.0.3.35 -IP.805 = 10.0.3.36 -IP.806 = 10.0.3.37 -IP.807 = 10.0.3.38 -IP.808 = 10.0.3.39 -IP.809 = 10.0.3.40 -IP.810 = 10.0.3.41 -IP.811 = 10.0.3.42 -IP.812 = 10.0.3.43 -IP.813 = 10.0.3.44 -IP.814 = 10.0.3.45 -IP.815 = 10.0.3.46 -IP.816 = 10.0.3.47 -IP.817 = 10.0.3.48 -IP.818 = 10.0.3.49 -IP.819 = 10.0.3.50 -IP.820 = 10.0.3.51 -IP.821 = 10.0.3.52 -IP.822 = 10.0.3.53 -IP.823 = 10.0.3.54 -IP.824 = 10.0.3.55 -IP.825 = 10.0.3.56 -IP.826 = 10.0.3.57 -IP.827 = 10.0.3.58 -IP.828 = 10.0.3.59 -IP.829 = 10.0.3.60 -IP.830 = 10.0.3.61 -IP.831 = 10.0.3.62 -IP.832 = 10.0.3.63 -IP.833 = 10.0.3.64 -IP.834 = 10.0.3.65 -IP.835 = 10.0.3.66 -IP.836 = 10.0.3.67 -IP.837 = 10.0.3.68 -IP.838 = 10.0.3.69 -IP.839 = 10.0.3.70 -IP.840 = 10.0.3.71 -IP.841 = 10.0.3.72 -IP.842 = 10.0.3.73 -IP.843 = 10.0.3.74 -IP.844 = 10.0.3.75 -IP.845 = 10.0.3.76 -IP.846 = 10.0.3.77 -IP.847 = 10.0.3.78 -IP.848 = 10.0.3.79 -IP.849 = 10.0.3.80 -IP.850 = 10.0.3.81 -IP.851 = 10.0.3.82 -IP.852 = 10.0.3.83 -IP.853 = 10.0.3.84 -IP.854 = 10.0.3.85 -IP.855 = 10.0.3.86 -IP.856 = 10.0.3.87 -IP.857 = 10.0.3.88 -IP.858 = 10.0.3.89 -IP.859 = 10.0.3.90 -IP.860 = 10.0.3.91 -IP.861 = 10.0.3.92 -IP.862 = 10.0.3.93 -IP.863 = 10.0.3.94 -IP.864 = 10.0.3.95 -IP.865 = 10.0.3.96 -IP.866 = 10.0.3.97 -IP.867 = 10.0.3.98 -IP.868 = 10.0.3.99 -IP.869 = 10.0.3.100 -IP.870 = 10.0.3.101 -IP.871 = 10.0.3.102 -IP.872 = 10.0.3.103 -IP.873 = 10.0.3.104 -IP.874 = 10.0.3.105 -IP.875 = 10.0.3.106 -IP.876 = 10.0.3.107 -IP.877 = 10.0.3.108 -IP.878 = 10.0.3.109 -IP.879 = 10.0.3.110 -IP.880 = 10.0.3.111 -IP.881 = 10.0.3.112 -IP.882 = 10.0.3.113 -IP.883 = 10.0.3.114 -IP.884 = 10.0.3.115 -IP.885 = 10.0.3.116 -IP.886 = 10.0.3.117 -IP.887 = 10.0.3.118 -IP.888 = 10.0.3.119 -IP.889 = 10.0.3.120 -IP.890 = 10.0.3.121 -IP.891 = 10.0.3.122 -IP.892 = 10.0.3.123 -IP.893 = 10.0.3.124 -IP.894 = 10.0.3.125 -IP.895 = 10.0.3.126 -IP.896 = 10.0.3.127 -IP.897 = 10.0.3.128 -IP.898 = 10.0.3.129 -IP.899 = 10.0.3.130 -IP.900 = 10.0.3.131 -IP.901 = 10.0.3.132 -IP.902 = 10.0.3.133 -IP.903 = 10.0.3.134 -IP.904 = 10.0.3.135 -IP.905 = 10.0.3.136 -IP.906 = 10.0.3.137 -IP.907 = 10.0.3.138 -IP.908 = 10.0.3.139 -IP.909 = 10.0.3.140 -IP.910 = 10.0.3.141 -IP.911 = 10.0.3.142 -IP.912 = 10.0.3.143 -IP.913 = 10.0.3.144 -IP.914 = 10.0.3.145 -IP.915 = 10.0.3.146 -IP.916 = 10.0.3.147 -IP.917 = 10.0.3.148 -IP.918 = 10.0.3.149 -IP.919 = 10.0.3.150 -IP.920 = 10.0.3.151 -IP.921 = 10.0.3.152 -IP.922 = 10.0.3.153 -IP.923 = 10.0.3.154 -IP.924 = 10.0.3.155 -IP.925 = 10.0.3.156 -IP.926 = 10.0.3.157 -IP.927 = 10.0.3.158 -IP.928 = 10.0.3.159 -IP.929 = 10.0.3.160 -IP.930 = 10.0.3.161 -IP.931 = 10.0.3.162 -IP.932 = 10.0.3.163 -IP.933 = 10.0.3.164 -IP.934 = 10.0.3.165 -IP.935 = 10.0.3.166 -IP.936 = 10.0.3.167 -IP.937 = 10.0.3.168 -IP.938 = 10.0.3.169 -IP.939 = 10.0.3.170 -IP.940 = 10.0.3.171 -IP.941 = 10.0.3.172 -IP.942 = 10.0.3.173 -IP.943 = 10.0.3.174 -IP.944 = 10.0.3.175 -IP.945 = 10.0.3.176 -IP.946 = 10.0.3.177 -IP.947 = 10.0.3.178 -IP.948 = 10.0.3.179 -IP.949 = 10.0.3.180 -IP.950 = 10.0.3.181 -IP.951 = 10.0.3.182 -IP.952 = 10.0.3.183 -IP.953 = 10.0.3.184 -IP.954 = 10.0.3.185 -IP.955 = 10.0.3.186 -IP.956 = 10.0.3.187 -IP.957 = 10.0.3.188 -IP.958 = 10.0.3.189 -IP.959 = 10.0.3.190 -IP.960 = 10.0.3.191 -IP.961 = 10.0.3.192 -IP.962 = 10.0.3.193 -IP.963 = 10.0.3.194 -IP.964 = 10.0.3.195 -IP.965 = 10.0.3.196 -IP.966 = 10.0.3.197 -IP.967 = 10.0.3.198 -IP.968 = 10.0.3.199 -IP.969 = 10.0.3.200 -IP.970 = 10.0.3.201 -IP.971 = 10.0.3.202 -IP.972 = 10.0.3.203 -IP.973 = 10.0.3.204 -IP.974 = 10.0.3.205 -IP.975 = 10.0.3.206 -IP.976 = 10.0.3.207 -IP.977 = 10.0.3.208 -IP.978 = 10.0.3.209 -IP.979 = 10.0.3.210 -IP.980 = 10.0.3.211 -IP.981 = 10.0.3.212 -IP.982 = 10.0.3.213 -IP.983 = 10.0.3.214 -IP.984 = 10.0.3.215 -IP.985 = 10.0.3.216 -IP.986 = 10.0.3.217 -IP.987 = 10.0.3.218 -IP.988 = 10.0.3.219 -IP.989 = 10.0.3.220 -IP.990 = 10.0.3.221 -IP.991 = 10.0.3.222 -IP.992 = 10.0.3.223 -IP.993 = 10.0.3.224 -IP.994 = 10.0.3.225 -IP.995 = 10.0.3.226 -IP.996 = 10.0.3.227 -IP.997 = 10.0.3.228 -IP.998 = 10.0.3.229 -IP.999 = 10.0.3.230 -IP.1000 = 10.0.3.231 -IP.1001 = 10.0.3.232 -IP.1002 = 10.0.3.233 -IP.1003 = 10.0.3.234 -IP.1004 = 10.0.3.235 -IP.1005 = 10.0.3.236 -IP.1006 = 10.0.3.237 -IP.1007 = 10.0.3.238 -IP.1008 = 10.0.3.239 -IP.1009 = 10.0.3.240 -IP.1010 = 10.0.3.241 -IP.1011 = 10.0.3.242 -IP.1012 = 10.0.3.243 -IP.1013 = 10.0.3.244 -IP.1014 = 10.0.3.245 -IP.1015 = 10.0.3.246 -IP.1016 = 10.0.3.247 -IP.1017 = 10.0.3.248 -IP.1018 = 10.0.3.249 -IP.1019 = 10.0.3.250 -IP.1020 = 10.0.3.251 -IP.1021 = 10.0.3.252 -IP.1022 = 10.0.3.253 -IP.1023 = 10.0.3.254 -IP.1024 = 10.0.3.255 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.csr deleted file mode 100644 index 20a991966d..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.csr +++ /dev/null @@ -1,145 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIayjCCGbICAQAwDTELMAkGA1UEAwwCdDAwggEiMA0GCSqGSIb3DQEBAQUAA4IB -DwAwggEKAoIBAQDbLFMBzvkagzZSUSpbQmPeMnURan2woeR3R5tx5aYtZNeuWwTt -ej/H9sorK63NbIiljjb756IitX1UeenVelvKKylsDYQKEMQhtliYuw22DI1WWyyF -WQfKBkY2JRopjsQ5t8Mxzm5JwgHPsDsnQ4rj1QYfLZOd3XpFZW39tLHAEFlC8h6P -zkOslyXBfOJR4UQ1W5SqA27acS8lf1gwAeESFx7yqmwigLHJZep3lbMHxPdyODT+ -oEMzTGZtoeihBLxvFDk5RC44N3TJCiGFkSG3TrqwmUp2mHtYyhzTsEDD2Sp1++sZ -6uMamDFSl+l/pHshfy/cYoaP/f2oiOhLRFK9AgMBAAGgghh2MIIYcgYJKoZIhvcN -AQkOMYIYYzCCGF8wHQYDVR0OBBYEFDu0BcyqulE9/PL5HiVTcuE68prfMA4GA1Ud -DwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwghgNBgNV -HREEghgEMIIYAIcECgAAAIcECgAAAYcECgAAAocECgAAA4cECgAABIcECgAABYcE -CgAABocECgAAB4cECgAACIcECgAACYcECgAACocECgAAC4cECgAADIcECgAADYcE -CgAADocECgAAD4cECgAAEIcECgAAEYcECgAAEocECgAAE4cECgAAFIcECgAAFYcE -CgAAFocECgAAF4cECgAAGIcECgAAGYcECgAAGocECgAAG4cECgAAHIcECgAAHYcE -CgAAHocECgAAH4cECgAAIIcECgAAIYcECgAAIocECgAAI4cECgAAJIcECgAAJYcE -CgAAJocECgAAJ4cECgAAKIcECgAAKYcECgAAKocECgAAK4cECgAALIcECgAALYcE -CgAALocECgAAL4cECgAAMIcECgAAMYcECgAAMocECgAAM4cECgAANIcECgAANYcE -CgAANocECgAAN4cECgAAOIcECgAAOYcECgAAOocECgAAO4cECgAAPIcECgAAPYcE -CgAAPocECgAAP4cECgAAQIcECgAAQYcECgAAQocECgAAQ4cECgAARIcECgAARYcE -CgAARocECgAAR4cECgAASIcECgAASYcECgAASocECgAAS4cECgAATIcECgAATYcE -CgAATocECgAAT4cECgAAUIcECgAAUYcECgAAUocECgAAU4cECgAAVIcECgAAVYcE -CgAAVocECgAAV4cECgAAWIcECgAAWYcECgAAWocECgAAW4cECgAAXIcECgAAXYcE -CgAAXocECgAAX4cECgAAYIcECgAAYYcECgAAYocECgAAY4cECgAAZIcECgAAZYcE -CgAAZocECgAAZ4cECgAAaIcECgAAaYcECgAAaocECgAAa4cECgAAbIcECgAAbYcE -CgAAbocECgAAb4cECgAAcIcECgAAcYcECgAAcocECgAAc4cECgAAdIcECgAAdYcE -CgAAdocECgAAd4cECgAAeIcECgAAeYcECgAAeocECgAAe4cECgAAfIcECgAAfYcE -CgAAfocECgAAf4cECgAAgIcECgAAgYcECgAAgocECgAAg4cECgAAhIcECgAAhYcE -CgAAhocECgAAh4cECgAAiIcECgAAiYcECgAAiocECgAAi4cECgAAjIcECgAAjYcE -CgAAjocECgAAj4cECgAAkIcECgAAkYcECgAAkocECgAAk4cECgAAlIcECgAAlYcE -CgAAlocECgAAl4cECgAAmIcECgAAmYcECgAAmocECgAAm4cECgAAnIcECgAAnYcE -CgAAnocECgAAn4cECgAAoIcECgAAoYcECgAAoocECgAAo4cECgAApIcECgAApYcE -CgAApocECgAAp4cECgAAqIcECgAAqYcECgAAqocECgAAq4cECgAArIcECgAArYcE -CgAArocECgAAr4cECgAAsIcECgAAsYcECgAAsocECgAAs4cECgAAtIcECgAAtYcE -CgAAtocECgAAt4cECgAAuIcECgAAuYcECgAAuocECgAAu4cECgAAvIcECgAAvYcE -CgAAvocECgAAv4cECgAAwIcECgAAwYcECgAAwocECgAAw4cECgAAxIcECgAAxYcE -CgAAxocECgAAx4cECgAAyIcECgAAyYcECgAAyocECgAAy4cECgAAzIcECgAAzYcE -CgAAzocECgAAz4cECgAA0IcECgAA0YcECgAA0ocECgAA04cECgAA1IcECgAA1YcE -CgAA1ocECgAA14cECgAA2IcECgAA2YcECgAA2ocECgAA24cECgAA3IcECgAA3YcE -CgAA3ocECgAA34cECgAA4IcECgAA4YcECgAA4ocECgAA44cECgAA5IcECgAA5YcE -CgAA5ocECgAA54cECgAA6IcECgAA6YcECgAA6ocECgAA64cECgAA7IcECgAA7YcE -CgAA7ocECgAA74cECgAA8IcECgAA8YcECgAA8ocECgAA84cECgAA9IcECgAA9YcE -CgAA9ocECgAA94cECgAA+IcECgAA+YcECgAA+ocECgAA+4cECgAA/IcECgAA/YcE -CgAA/ocECgAA/4cECgABAIcECgABAYcECgABAocECgABA4cECgABBIcECgABBYcE -CgABBocECgABB4cECgABCIcECgABCYcECgABCocECgABC4cECgABDIcECgABDYcE -CgABDocECgABD4cECgABEIcECgABEYcECgABEocECgABE4cECgABFIcECgABFYcE -CgABFocECgABF4cECgABGIcECgABGYcECgABGocECgABG4cECgABHIcECgABHYcE -CgABHocECgABH4cECgABIIcECgABIYcECgABIocECgABI4cECgABJIcECgABJYcE -CgABJocECgABJ4cECgABKIcECgABKYcECgABKocECgABK4cECgABLIcECgABLYcE -CgABLocECgABL4cECgABMIcECgABMYcECgABMocECgABM4cECgABNIcECgABNYcE -CgABNocECgABN4cECgABOIcECgABOYcECgABOocECgABO4cECgABPIcECgABPYcE -CgABPocECgABP4cECgABQIcECgABQYcECgABQocECgABQ4cECgABRIcECgABRYcE -CgABRocECgABR4cECgABSIcECgABSYcECgABSocECgABS4cECgABTIcECgABTYcE -CgABTocECgABT4cECgABUIcECgABUYcECgABUocECgABU4cECgABVIcECgABVYcE -CgABVocECgABV4cECgABWIcECgABWYcECgABWocECgABW4cECgABXIcECgABXYcE -CgABXocECgABX4cECgABYIcECgABYYcECgABYocECgABY4cECgABZIcECgABZYcE -CgABZocECgABZ4cECgABaIcECgABaYcECgABaocECgABa4cECgABbIcECgABbYcE -CgABbocECgABb4cECgABcIcECgABcYcECgABcocECgABc4cECgABdIcECgABdYcE -CgABdocECgABd4cECgABeIcECgABeYcECgABeocECgABe4cECgABfIcECgABfYcE -CgABfocECgABf4cECgABgIcECgABgYcECgABgocECgABg4cECgABhIcECgABhYcE -CgABhocECgABh4cECgABiIcECgABiYcECgABiocECgABi4cECgABjIcECgABjYcE -CgABjocECgABj4cECgABkIcECgABkYcECgABkocECgABk4cECgABlIcECgABlYcE -CgABlocECgABl4cECgABmIcECgABmYcECgABmocECgABm4cECgABnIcECgABnYcE -CgABnocECgABn4cECgABoIcECgABoYcECgABoocECgABo4cECgABpIcECgABpYcE -CgABpocECgABp4cECgABqIcECgABqYcECgABqocECgABq4cECgABrIcECgABrYcE -CgABrocECgABr4cECgABsIcECgABsYcECgABsocECgABs4cECgABtIcECgABtYcE -CgABtocECgABt4cECgABuIcECgABuYcECgABuocECgABu4cECgABvIcECgABvYcE -CgABvocECgABv4cECgABwIcECgABwYcECgABwocECgABw4cECgABxIcECgABxYcE -CgABxocECgABx4cECgAByIcECgAByYcECgAByocECgABy4cECgABzIcECgABzYcE -CgABzocECgABz4cECgAB0IcECgAB0YcECgAB0ocECgAB04cECgAB1IcECgAB1YcE -CgAB1ocECgAB14cECgAB2IcECgAB2YcECgAB2ocECgAB24cECgAB3IcECgAB3YcE -CgAB3ocECgAB34cECgAB4IcECgAB4YcECgAB4ocECgAB44cECgAB5IcECgAB5YcE -CgAB5ocECgAB54cECgAB6IcECgAB6YcECgAB6ocECgAB64cECgAB7IcECgAB7YcE -CgAB7ocECgAB74cECgAB8IcECgAB8YcECgAB8ocECgAB84cECgAB9IcECgAB9YcE -CgAB9ocECgAB94cECgAB+IcECgAB+YcECgAB+ocECgAB+4cECgAB/IcECgAB/YcE -CgAB/ocECgAB/4cECgACAIcECgACAYcECgACAocECgACA4cECgACBIcECgACBYcE -CgACBocECgACB4cECgACCIcECgACCYcECgACCocECgACC4cECgACDIcECgACDYcE -CgACDocECgACD4cECgACEIcECgACEYcECgACEocECgACE4cECgACFIcECgACFYcE -CgACFocECgACF4cECgACGIcECgACGYcECgACGocECgACG4cECgACHIcECgACHYcE -CgACHocECgACH4cECgACIIcECgACIYcECgACIocECgACI4cECgACJIcECgACJYcE -CgACJocECgACJ4cECgACKIcECgACKYcECgACKocECgACK4cECgACLIcECgACLYcE -CgACLocECgACL4cECgACMIcECgACMYcECgACMocECgACM4cECgACNIcECgACNYcE -CgACNocECgACN4cECgACOIcECgACOYcECgACOocECgACO4cECgACPIcECgACPYcE -CgACPocECgACP4cECgACQIcECgACQYcECgACQocECgACQ4cECgACRIcECgACRYcE -CgACRocECgACR4cECgACSIcECgACSYcECgACSocECgACS4cECgACTIcECgACTYcE -CgACTocECgACT4cECgACUIcECgACUYcECgACUocECgACU4cECgACVIcECgACVYcE -CgACVocECgACV4cECgACWIcECgACWYcECgACWocECgACW4cECgACXIcECgACXYcE -CgACXocECgACX4cECgACYIcECgACYYcECgACYocECgACY4cECgACZIcECgACZYcE -CgACZocECgACZ4cECgACaIcECgACaYcECgACaocECgACa4cECgACbIcECgACbYcE -CgACbocECgACb4cECgACcIcECgACcYcECgACcocECgACc4cECgACdIcECgACdYcE -CgACdocECgACd4cECgACeIcECgACeYcECgACeocECgACe4cECgACfIcECgACfYcE -CgACfocECgACf4cECgACgIcECgACgYcECgACgocECgACg4cECgAChIcECgAChYcE -CgAChocECgACh4cECgACiIcECgACiYcECgACiocECgACi4cECgACjIcECgACjYcE -CgACjocECgACj4cECgACkIcECgACkYcECgACkocECgACk4cECgAClIcECgAClYcE -CgAClocECgACl4cECgACmIcECgACmYcECgACmocECgACm4cECgACnIcECgACnYcE -CgACnocECgACn4cECgACoIcECgACoYcECgACoocECgACo4cECgACpIcECgACpYcE -CgACpocECgACp4cECgACqIcECgACqYcECgACqocECgACq4cECgACrIcECgACrYcE -CgACrocECgACr4cECgACsIcECgACsYcECgACsocECgACs4cECgACtIcECgACtYcE -CgACtocECgACt4cECgACuIcECgACuYcECgACuocECgACu4cECgACvIcECgACvYcE -CgACvocECgACv4cECgACwIcECgACwYcECgACwocECgACw4cECgACxIcECgACxYcE -CgACxocECgACx4cECgACyIcECgACyYcECgACyocECgACy4cECgACzIcECgACzYcE -CgACzocECgACz4cECgAC0IcECgAC0YcECgAC0ocECgAC04cECgAC1IcECgAC1YcE -CgAC1ocECgAC14cECgAC2IcECgAC2YcECgAC2ocECgAC24cECgAC3IcECgAC3YcE -CgAC3ocECgAC34cECgAC4IcECgAC4YcECgAC4ocECgAC44cECgAC5IcECgAC5YcE -CgAC5ocECgAC54cECgAC6IcECgAC6YcECgAC6ocECgAC64cECgAC7IcECgAC7YcE -CgAC7ocECgAC74cECgAC8IcECgAC8YcECgAC8ocECgAC84cECgAC9IcECgAC9YcE -CgAC9ocECgAC94cECgAC+IcECgAC+YcECgAC+ocECgAC+4cECgAC/IcECgAC/YcE -CgAC/ocECgAC/4cECgADAIcECgADAYcECgADAocECgADA4cECgADBIcECgADBYcE -CgADBocECgADB4cECgADCIcECgADCYcECgADCocECgADC4cECgADDIcECgADDYcE -CgADDocECgADD4cECgADEIcECgADEYcECgADEocECgADE4cECgADFIcECgADFYcE -CgADFocECgADF4cECgADGIcECgADGYcECgADGocECgADG4cECgADHIcECgADHYcE -CgADHocECgADH4cECgADIIcECgADIYcECgADIocECgADI4cECgADJIcECgADJYcE -CgADJocECgADJ4cECgADKIcECgADKYcECgADKocECgADK4cECgADLIcECgADLYcE -CgADLocECgADL4cECgADMIcECgADMYcECgADMocECgADM4cECgADNIcECgADNYcE -CgADNocECgADN4cECgADOIcECgADOYcECgADOocECgADO4cECgADPIcECgADPYcE -CgADPocECgADP4cECgADQIcECgADQYcECgADQocECgADQ4cECgADRIcECgADRYcE -CgADRocECgADR4cECgADSIcECgADSYcECgADSocECgADS4cECgADTIcECgADTYcE -CgADTocECgADT4cECgADUIcECgADUYcECgADUocECgADU4cECgADVIcECgADVYcE -CgADVocECgADV4cECgADWIcECgADWYcECgADWocECgADW4cECgADXIcECgADXYcE -CgADXocECgADX4cECgADYIcECgADYYcECgADYocECgADY4cECgADZIcECgADZYcE -CgADZocECgADZ4cECgADaIcECgADaYcECgADaocECgADa4cECgADbIcECgADbYcE -CgADbocECgADb4cECgADcIcECgADcYcECgADcocECgADc4cECgADdIcECgADdYcE -CgADdocECgADd4cECgADeIcECgADeYcECgADeocECgADe4cECgADfIcECgADfYcE -CgADfocECgADf4cECgADgIcECgADgYcECgADgocECgADg4cECgADhIcECgADhYcE -CgADhocECgADh4cECgADiIcECgADiYcECgADiocECgADi4cECgADjIcECgADjYcE -CgADjocECgADj4cECgADkIcECgADkYcECgADkocECgADk4cECgADlIcECgADlYcE -CgADlocECgADl4cECgADmIcECgADmYcECgADmocECgADm4cECgADnIcECgADnYcE -CgADnocECgADn4cECgADoIcECgADoYcECgADoocECgADo4cECgADpIcECgADpYcE -CgADpocECgADp4cECgADqIcECgADqYcECgADqocECgADq4cECgADrIcECgADrYcE -CgADrocECgADr4cECgADsIcECgADsYcECgADsocECgADs4cECgADtIcECgADtYcE -CgADtocECgADt4cECgADuIcECgADuYcECgADuocECgADu4cECgADvIcECgADvYcE -CgADvocECgADv4cECgADwIcECgADwYcECgADwocECgADw4cECgADxIcECgADxYcE -CgADxocECgADx4cECgADyIcECgADyYcECgADyocECgADy4cECgADzIcECgADzYcE -CgADzocECgADz4cECgAD0IcECgAD0YcECgAD0ocECgAD04cECgAD1IcECgAD1YcE -CgAD1ocECgAD14cECgAD2IcECgAD2YcECgAD2ocECgAD24cECgAD3IcECgAD3YcE -CgAD3ocECgAD34cECgAD4IcECgAD4YcECgAD4ocECgAD44cECgAD5IcECgAD5YcE -CgAD5ocECgAD54cECgAD6IcECgAD6YcECgAD6ocECgAD64cECgAD7IcECgAD7YcE -CgAD7ocECgAD74cECgAD8IcECgAD8YcECgAD8ocECgAD84cECgAD9IcECgAD9YcE -CgAD9ocECgAD94cECgAD+IcECgAD+YcECgAD+ocECgAD+4cECgAD/IcECgAD/YcE -CgAD/ocECgAD/zANBgkqhkiG9w0BAQsFAAOCAQEAPvGfgaK1FKxTNxCDWV+yYfuz -EVUhxh4SNGwKdYj9/n829IE/40YKNo3o8hCQq1e0VtLvW1YyxZQ7Lsaaiaj3rgUE -jzI78mZBEIBvf4S2S1PFXNwx0EwsNyarImIFirDR/wyI/O3qHiDgDL+QZ0G9K4pe -yDoPHQWzRff5bczSyVTZESp/i6c0r4gB3S9dwmpJ40BJvGqDs7h3115K7KjT3Y7t -G/h70xGD1n+8X/HRQCc0inutWk0ToZdkRNEvzFlAqU34g2/eS+uyzntJWXAtO4nc -uAflue4l2NC2tR76MzNtHgvwFyiugvXjpQwT6oFgUmnyISfvhWprW1XaWqSVWw== ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.pem deleted file mode 100644 index e32f370641..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_6.pem +++ /dev/null @@ -1,220 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:da - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - IP Address:10.0.0.0, IP Address:10.0.0.1, IP Address:10.0.0.2, IP Address:10.0.0.3, IP Address:10.0.0.4, IP Address:10.0.0.5, IP Address:10.0.0.6, IP Address:10.0.0.7, IP Address:10.0.0.8, IP Address:10.0.0.9, IP Address:10.0.0.10, IP Address:10.0.0.11, IP Address:10.0.0.12, IP Address:10.0.0.13, IP Address:10.0.0.14, IP Address:10.0.0.15, IP Address:10.0.0.16, IP Address:10.0.0.17, IP Address:10.0.0.18, IP Address:10.0.0.19, IP Address:10.0.0.20, IP Address:10.0.0.21, IP Address:10.0.0.22, IP Address:10.0.0.23, IP Address:10.0.0.24, IP Address:10.0.0.25, IP Address:10.0.0.26, IP Address:10.0.0.27, IP Address:10.0.0.28, IP Address:10.0.0.29, IP Address:10.0.0.30, IP Address:10.0.0.31, IP Address:10.0.0.32, IP Address:10.0.0.33, IP Address:10.0.0.34, IP Address:10.0.0.35, IP Address:10.0.0.36, IP Address:10.0.0.37, IP Address:10.0.0.38, IP Address:10.0.0.39, IP Address:10.0.0.40, IP Address:10.0.0.41, IP Address:10.0.0.42, IP Address:10.0.0.43, IP Address:10.0.0.44, IP Address:10.0.0.45, IP Address:10.0.0.46, IP Address:10.0.0.47, IP Address:10.0.0.48, IP Address:10.0.0.49, IP Address:10.0.0.50, IP Address:10.0.0.51, IP Address:10.0.0.52, IP Address:10.0.0.53, IP Address:10.0.0.54, IP Address:10.0.0.55, IP Address:10.0.0.56, IP Address:10.0.0.57, IP Address:10.0.0.58, IP Address:10.0.0.59, IP Address:10.0.0.60, IP Address:10.0.0.61, IP Address:10.0.0.62, IP Address:10.0.0.63, IP Address:10.0.0.64, IP Address:10.0.0.65, IP Address:10.0.0.66, IP Address:10.0.0.67, IP Address:10.0.0.68, IP Address:10.0.0.69, IP Address:10.0.0.70, IP Address:10.0.0.71, IP Address:10.0.0.72, IP Address:10.0.0.73, IP Address:10.0.0.74, IP Address:10.0.0.75, IP Address:10.0.0.76, IP Address:10.0.0.77, IP Address:10.0.0.78, IP Address:10.0.0.79, IP Address:10.0.0.80, IP Address:10.0.0.81, IP Address:10.0.0.82, IP Address:10.0.0.83, IP Address:10.0.0.84, IP Address:10.0.0.85, IP Address:10.0.0.86, IP Address:10.0.0.87, IP Address:10.0.0.88, IP Address:10.0.0.89, IP Address:10.0.0.90, IP Address:10.0.0.91, IP Address:10.0.0.92, IP Address:10.0.0.93, IP Address:10.0.0.94, IP Address:10.0.0.95, IP Address:10.0.0.96, IP Address:10.0.0.97, IP Address:10.0.0.98, IP Address:10.0.0.99, IP Address:10.0.0.100, IP Address:10.0.0.101, IP Address:10.0.0.102, IP Address:10.0.0.103, IP Address:10.0.0.104, IP Address:10.0.0.105, IP Address:10.0.0.106, IP Address:10.0.0.107, IP Address:10.0.0.108, IP Address:10.0.0.109, IP Address:10.0.0.110, IP Address:10.0.0.111, IP Address:10.0.0.112, IP Address:10.0.0.113, IP Address:10.0.0.114, IP Address:10.0.0.115, IP Address:10.0.0.116, IP Address:10.0.0.117, IP Address:10.0.0.118, IP Address:10.0.0.119, IP Address:10.0.0.120, IP Address:10.0.0.121, IP Address:10.0.0.122, IP Address:10.0.0.123, IP Address:10.0.0.124, IP Address:10.0.0.125, IP Address:10.0.0.126, IP Address:10.0.0.127, IP Address:10.0.0.128, IP Address:10.0.0.129, IP Address:10.0.0.130, IP Address:10.0.0.131, IP Address:10.0.0.132, IP Address:10.0.0.133, IP Address:10.0.0.134, IP Address:10.0.0.135, IP Address:10.0.0.136, IP Address:10.0.0.137, IP Address:10.0.0.138, IP Address:10.0.0.139, IP Address:10.0.0.140, IP Address:10.0.0.141, IP Address:10.0.0.142, IP Address:10.0.0.143, IP Address:10.0.0.144, IP Address:10.0.0.145, IP Address:10.0.0.146, IP Address:10.0.0.147, IP Address:10.0.0.148, IP Address:10.0.0.149, IP Address:10.0.0.150, IP Address:10.0.0.151, IP Address:10.0.0.152, IP Address:10.0.0.153, IP Address:10.0.0.154, IP Address:10.0.0.155, IP Address:10.0.0.156, IP Address:10.0.0.157, IP Address:10.0.0.158, IP Address:10.0.0.159, IP Address:10.0.0.160, IP Address:10.0.0.161, IP Address:10.0.0.162, IP Address:10.0.0.163, IP Address:10.0.0.164, IP Address:10.0.0.165, IP Address:10.0.0.166, IP Address:10.0.0.167, IP Address:10.0.0.168, IP Address:10.0.0.169, IP Address:10.0.0.170, IP Address:10.0.0.171, IP Address:10.0.0.172, IP Address:10.0.0.173, IP Address:10.0.0.174, IP Address:10.0.0.175, IP Address:10.0.0.176, IP Address:10.0.0.177, IP Address:10.0.0.178, IP Address:10.0.0.179, IP Address:10.0.0.180, IP Address:10.0.0.181, IP Address:10.0.0.182, IP Address:10.0.0.183, IP Address:10.0.0.184, IP Address:10.0.0.185, IP Address:10.0.0.186, IP Address:10.0.0.187, IP Address:10.0.0.188, IP Address:10.0.0.189, IP Address:10.0.0.190, IP Address:10.0.0.191, IP Address:10.0.0.192, IP Address:10.0.0.193, IP Address:10.0.0.194, IP Address:10.0.0.195, IP Address:10.0.0.196, IP Address:10.0.0.197, IP Address:10.0.0.198, IP Address:10.0.0.199, IP Address:10.0.0.200, IP Address:10.0.0.201, IP Address:10.0.0.202, IP Address:10.0.0.203, IP Address:10.0.0.204, IP Address:10.0.0.205, IP Address:10.0.0.206, IP Address:10.0.0.207, IP Address:10.0.0.208, IP Address:10.0.0.209, IP Address:10.0.0.210, IP Address:10.0.0.211, IP Address:10.0.0.212, IP Address:10.0.0.213, IP Address:10.0.0.214, IP Address:10.0.0.215, IP Address:10.0.0.216, IP Address:10.0.0.217, IP Address:10.0.0.218, IP Address:10.0.0.219, IP Address:10.0.0.220, IP Address:10.0.0.221, IP Address:10.0.0.222, IP Address:10.0.0.223, IP Address:10.0.0.224, IP Address:10.0.0.225, IP Address:10.0.0.226, IP Address:10.0.0.227, IP Address:10.0.0.228, IP Address:10.0.0.229, IP Address:10.0.0.230, IP Address:10.0.0.231, IP Address:10.0.0.232, IP Address:10.0.0.233, IP Address:10.0.0.234, IP Address:10.0.0.235, IP Address:10.0.0.236, IP Address:10.0.0.237, IP Address:10.0.0.238, IP Address:10.0.0.239, IP Address:10.0.0.240, IP Address:10.0.0.241, IP Address:10.0.0.242, IP Address:10.0.0.243, IP Address:10.0.0.244, IP Address:10.0.0.245, IP Address:10.0.0.246, IP Address:10.0.0.247, IP Address:10.0.0.248, IP Address:10.0.0.249, IP Address:10.0.0.250, IP Address:10.0.0.251, IP Address:10.0.0.252, IP Address:10.0.0.253, IP Address:10.0.0.254, IP Address:10.0.0.255, IP Address:10.0.1.0, IP Address:10.0.1.1, IP Address:10.0.1.2, IP Address:10.0.1.3, IP Address:10.0.1.4, IP Address:10.0.1.5, IP Address:10.0.1.6, IP Address:10.0.1.7, IP Address:10.0.1.8, IP Address:10.0.1.9, IP Address:10.0.1.10, IP Address:10.0.1.11, IP Address:10.0.1.12, IP Address:10.0.1.13, IP Address:10.0.1.14, IP Address:10.0.1.15, IP Address:10.0.1.16, IP Address:10.0.1.17, IP Address:10.0.1.18, IP Address:10.0.1.19, IP Address:10.0.1.20, IP Address:10.0.1.21, IP Address:10.0.1.22, IP Address:10.0.1.23, IP Address:10.0.1.24, IP Address:10.0.1.25, IP Address:10.0.1.26, IP Address:10.0.1.27, IP Address:10.0.1.28, IP Address:10.0.1.29, IP Address:10.0.1.30, IP Address:10.0.1.31, IP Address:10.0.1.32, IP Address:10.0.1.33, IP Address:10.0.1.34, IP Address:10.0.1.35, IP Address:10.0.1.36, IP Address:10.0.1.37, IP Address:10.0.1.38, IP Address:10.0.1.39, IP Address:10.0.1.40, IP Address:10.0.1.41, IP Address:10.0.1.42, IP Address:10.0.1.43, IP Address:10.0.1.44, IP Address:10.0.1.45, IP Address:10.0.1.46, IP Address:10.0.1.47, IP Address:10.0.1.48, IP Address:10.0.1.49, IP Address:10.0.1.50, IP Address:10.0.1.51, IP Address:10.0.1.52, IP Address:10.0.1.53, IP Address:10.0.1.54, IP Address:10.0.1.55, IP Address:10.0.1.56, IP Address:10.0.1.57, IP Address:10.0.1.58, IP Address:10.0.1.59, IP Address:10.0.1.60, IP Address:10.0.1.61, IP Address:10.0.1.62, IP Address:10.0.1.63, IP Address:10.0.1.64, IP Address:10.0.1.65, IP Address:10.0.1.66, IP Address:10.0.1.67, IP Address:10.0.1.68, IP Address:10.0.1.69, IP Address:10.0.1.70, IP Address:10.0.1.71, IP Address:10.0.1.72, IP Address:10.0.1.73, IP Address:10.0.1.74, IP Address:10.0.1.75, IP Address:10.0.1.76, IP Address:10.0.1.77, IP Address:10.0.1.78, IP Address:10.0.1.79, IP Address:10.0.1.80, IP Address:10.0.1.81, IP Address:10.0.1.82, IP Address:10.0.1.83, IP Address:10.0.1.84, IP Address:10.0.1.85, IP Address:10.0.1.86, IP Address:10.0.1.87, IP Address:10.0.1.88, IP Address:10.0.1.89, IP Address:10.0.1.90, IP Address:10.0.1.91, IP Address:10.0.1.92, IP Address:10.0.1.93, IP Address:10.0.1.94, IP Address:10.0.1.95, IP Address:10.0.1.96, IP Address:10.0.1.97, IP Address:10.0.1.98, IP Address:10.0.1.99, IP Address:10.0.1.100, IP Address:10.0.1.101, IP Address:10.0.1.102, IP Address:10.0.1.103, IP Address:10.0.1.104, IP Address:10.0.1.105, IP Address:10.0.1.106, IP Address:10.0.1.107, IP Address:10.0.1.108, IP Address:10.0.1.109, IP Address:10.0.1.110, IP Address:10.0.1.111, IP Address:10.0.1.112, IP Address:10.0.1.113, IP Address:10.0.1.114, IP Address:10.0.1.115, IP Address:10.0.1.116, IP Address:10.0.1.117, IP Address:10.0.1.118, IP Address:10.0.1.119, IP Address:10.0.1.120, IP Address:10.0.1.121, IP Address:10.0.1.122, IP Address:10.0.1.123, IP Address:10.0.1.124, IP Address:10.0.1.125, IP Address:10.0.1.126, IP Address:10.0.1.127, IP Address:10.0.1.128, IP Address:10.0.1.129, IP Address:10.0.1.130, IP Address:10.0.1.131, IP Address:10.0.1.132, IP Address:10.0.1.133, IP Address:10.0.1.134, IP Address:10.0.1.135, IP Address:10.0.1.136, IP Address:10.0.1.137, IP Address:10.0.1.138, IP Address:10.0.1.139, IP Address:10.0.1.140, IP Address:10.0.1.141, IP Address:10.0.1.142, IP Address:10.0.1.143, IP Address:10.0.1.144, IP Address:10.0.1.145, IP Address:10.0.1.146, IP Address:10.0.1.147, IP Address:10.0.1.148, IP Address:10.0.1.149, IP Address:10.0.1.150, IP Address:10.0.1.151, IP Address:10.0.1.152, IP Address:10.0.1.153, IP Address:10.0.1.154, IP Address:10.0.1.155, IP Address:10.0.1.156, IP Address:10.0.1.157, IP Address:10.0.1.158, IP Address:10.0.1.159, IP Address:10.0.1.160, IP Address:10.0.1.161, IP Address:10.0.1.162, IP Address:10.0.1.163, IP Address:10.0.1.164, IP Address:10.0.1.165, IP Address:10.0.1.166, IP Address:10.0.1.167, IP Address:10.0.1.168, IP Address:10.0.1.169, IP Address:10.0.1.170, IP Address:10.0.1.171, IP Address:10.0.1.172, IP Address:10.0.1.173, IP Address:10.0.1.174, IP Address:10.0.1.175, IP Address:10.0.1.176, IP Address:10.0.1.177, IP Address:10.0.1.178, IP Address:10.0.1.179, IP Address:10.0.1.180, IP Address:10.0.1.181, IP Address:10.0.1.182, IP Address:10.0.1.183, IP Address:10.0.1.184, IP Address:10.0.1.185, IP Address:10.0.1.186, IP Address:10.0.1.187, IP Address:10.0.1.188, IP Address:10.0.1.189, IP Address:10.0.1.190, IP Address:10.0.1.191, IP Address:10.0.1.192, IP Address:10.0.1.193, IP Address:10.0.1.194, IP Address:10.0.1.195, IP Address:10.0.1.196, IP Address:10.0.1.197, IP Address:10.0.1.198, IP Address:10.0.1.199, IP Address:10.0.1.200, IP Address:10.0.1.201, IP Address:10.0.1.202, IP Address:10.0.1.203, IP Address:10.0.1.204, IP Address:10.0.1.205, IP Address:10.0.1.206, IP Address:10.0.1.207, IP Address:10.0.1.208, IP Address:10.0.1.209, IP Address:10.0.1.210, IP Address:10.0.1.211, IP Address:10.0.1.212, IP Address:10.0.1.213, IP Address:10.0.1.214, IP Address:10.0.1.215, IP Address:10.0.1.216, IP Address:10.0.1.217, IP Address:10.0.1.218, IP Address:10.0.1.219, IP Address:10.0.1.220, IP Address:10.0.1.221, IP Address:10.0.1.222, IP Address:10.0.1.223, IP Address:10.0.1.224, IP Address:10.0.1.225, IP Address:10.0.1.226, IP Address:10.0.1.227, IP Address:10.0.1.228, IP Address:10.0.1.229, IP Address:10.0.1.230, IP Address:10.0.1.231, IP Address:10.0.1.232, IP Address:10.0.1.233, IP Address:10.0.1.234, IP Address:10.0.1.235, IP Address:10.0.1.236, IP Address:10.0.1.237, IP Address:10.0.1.238, IP Address:10.0.1.239, IP Address:10.0.1.240, IP Address:10.0.1.241, IP Address:10.0.1.242, IP Address:10.0.1.243, IP Address:10.0.1.244, IP Address:10.0.1.245, IP Address:10.0.1.246, IP Address:10.0.1.247, IP Address:10.0.1.248, IP Address:10.0.1.249, IP Address:10.0.1.250, IP Address:10.0.1.251, IP Address:10.0.1.252, IP Address:10.0.1.253, IP Address:10.0.1.254, IP Address:10.0.1.255, IP Address:10.0.2.0, IP Address:10.0.2.1, IP Address:10.0.2.2, IP Address:10.0.2.3, IP Address:10.0.2.4, IP Address:10.0.2.5, IP Address:10.0.2.6, IP Address:10.0.2.7, IP Address:10.0.2.8, IP Address:10.0.2.9, IP Address:10.0.2.10, IP Address:10.0.2.11, IP Address:10.0.2.12, IP Address:10.0.2.13, IP Address:10.0.2.14, IP Address:10.0.2.15, IP Address:10.0.2.16, IP Address:10.0.2.17, IP Address:10.0.2.18, IP Address:10.0.2.19, IP Address:10.0.2.20, IP Address:10.0.2.21, IP Address:10.0.2.22, IP Address:10.0.2.23, IP Address:10.0.2.24, IP Address:10.0.2.25, IP Address:10.0.2.26, IP Address:10.0.2.27, IP Address:10.0.2.28, IP Address:10.0.2.29, IP Address:10.0.2.30, IP Address:10.0.2.31, IP Address:10.0.2.32, IP Address:10.0.2.33, IP Address:10.0.2.34, IP Address:10.0.2.35, IP Address:10.0.2.36, IP Address:10.0.2.37, IP Address:10.0.2.38, IP Address:10.0.2.39, IP Address:10.0.2.40, IP Address:10.0.2.41, IP Address:10.0.2.42, IP Address:10.0.2.43, IP Address:10.0.2.44, IP Address:10.0.2.45, IP Address:10.0.2.46, IP Address:10.0.2.47, IP Address:10.0.2.48, IP Address:10.0.2.49, IP Address:10.0.2.50, IP Address:10.0.2.51, IP Address:10.0.2.52, IP Address:10.0.2.53, IP Address:10.0.2.54, IP Address:10.0.2.55, IP Address:10.0.2.56, IP Address:10.0.2.57, IP Address:10.0.2.58, IP Address:10.0.2.59, IP Address:10.0.2.60, IP Address:10.0.2.61, IP Address:10.0.2.62, IP Address:10.0.2.63, IP Address:10.0.2.64, IP Address:10.0.2.65, IP Address:10.0.2.66, IP Address:10.0.2.67, IP Address:10.0.2.68, IP Address:10.0.2.69, IP Address:10.0.2.70, IP Address:10.0.2.71, IP Address:10.0.2.72, IP Address:10.0.2.73, IP Address:10.0.2.74, IP Address:10.0.2.75, IP Address:10.0.2.76, IP Address:10.0.2.77, IP Address:10.0.2.78, IP Address:10.0.2.79, IP Address:10.0.2.80, IP Address:10.0.2.81, IP Address:10.0.2.82, IP Address:10.0.2.83, IP Address:10.0.2.84, IP Address:10.0.2.85, IP Address:10.0.2.86, IP Address:10.0.2.87, IP Address:10.0.2.88, IP Address:10.0.2.89, IP Address:10.0.2.90, IP Address:10.0.2.91, IP Address:10.0.2.92, IP Address:10.0.2.93, IP Address:10.0.2.94, IP Address:10.0.2.95, IP Address:10.0.2.96, IP Address:10.0.2.97, IP Address:10.0.2.98, IP Address:10.0.2.99, IP Address:10.0.2.100, IP Address:10.0.2.101, IP Address:10.0.2.102, IP Address:10.0.2.103, IP Address:10.0.2.104, IP Address:10.0.2.105, IP Address:10.0.2.106, IP Address:10.0.2.107, IP Address:10.0.2.108, IP Address:10.0.2.109, IP Address:10.0.2.110, IP Address:10.0.2.111, IP Address:10.0.2.112, IP Address:10.0.2.113, IP Address:10.0.2.114, IP Address:10.0.2.115, IP Address:10.0.2.116, IP Address:10.0.2.117, IP Address:10.0.2.118, IP Address:10.0.2.119, IP Address:10.0.2.120, IP Address:10.0.2.121, IP Address:10.0.2.122, IP Address:10.0.2.123, IP Address:10.0.2.124, IP Address:10.0.2.125, IP Address:10.0.2.126, IP Address:10.0.2.127, IP Address:10.0.2.128, IP Address:10.0.2.129, IP Address:10.0.2.130, IP Address:10.0.2.131, IP Address:10.0.2.132, IP Address:10.0.2.133, IP Address:10.0.2.134, IP Address:10.0.2.135, IP Address:10.0.2.136, IP Address:10.0.2.137, IP Address:10.0.2.138, IP Address:10.0.2.139, IP Address:10.0.2.140, IP Address:10.0.2.141, IP Address:10.0.2.142, IP Address:10.0.2.143, IP Address:10.0.2.144, IP Address:10.0.2.145, IP Address:10.0.2.146, IP Address:10.0.2.147, IP Address:10.0.2.148, IP Address:10.0.2.149, IP Address:10.0.2.150, IP Address:10.0.2.151, IP Address:10.0.2.152, IP Address:10.0.2.153, IP Address:10.0.2.154, IP Address:10.0.2.155, IP Address:10.0.2.156, IP Address:10.0.2.157, IP Address:10.0.2.158, IP Address:10.0.2.159, IP Address:10.0.2.160, IP Address:10.0.2.161, IP Address:10.0.2.162, IP Address:10.0.2.163, IP Address:10.0.2.164, IP Address:10.0.2.165, IP Address:10.0.2.166, IP Address:10.0.2.167, IP Address:10.0.2.168, IP Address:10.0.2.169, IP Address:10.0.2.170, IP Address:10.0.2.171, IP Address:10.0.2.172, IP Address:10.0.2.173, IP Address:10.0.2.174, IP Address:10.0.2.175, IP Address:10.0.2.176, IP Address:10.0.2.177, IP Address:10.0.2.178, IP Address:10.0.2.179, IP Address:10.0.2.180, IP Address:10.0.2.181, IP Address:10.0.2.182, IP Address:10.0.2.183, IP Address:10.0.2.184, IP Address:10.0.2.185, IP Address:10.0.2.186, IP Address:10.0.2.187, IP Address:10.0.2.188, IP Address:10.0.2.189, IP Address:10.0.2.190, IP Address:10.0.2.191, IP Address:10.0.2.192, IP Address:10.0.2.193, IP Address:10.0.2.194, IP Address:10.0.2.195, IP Address:10.0.2.196, IP Address:10.0.2.197, IP Address:10.0.2.198, IP Address:10.0.2.199, IP Address:10.0.2.200, IP Address:10.0.2.201, IP Address:10.0.2.202, IP Address:10.0.2.203, IP Address:10.0.2.204, IP Address:10.0.2.205, IP Address:10.0.2.206, IP Address:10.0.2.207, IP Address:10.0.2.208, IP Address:10.0.2.209, IP Address:10.0.2.210, IP Address:10.0.2.211, IP Address:10.0.2.212, IP Address:10.0.2.213, IP Address:10.0.2.214, IP Address:10.0.2.215, IP Address:10.0.2.216, IP Address:10.0.2.217, IP Address:10.0.2.218, IP Address:10.0.2.219, IP Address:10.0.2.220, IP Address:10.0.2.221, IP Address:10.0.2.222, IP Address:10.0.2.223, IP Address:10.0.2.224, IP Address:10.0.2.225, IP Address:10.0.2.226, IP Address:10.0.2.227, IP Address:10.0.2.228, IP Address:10.0.2.229, IP Address:10.0.2.230, IP Address:10.0.2.231, IP Address:10.0.2.232, IP Address:10.0.2.233, IP Address:10.0.2.234, IP Address:10.0.2.235, IP Address:10.0.2.236, IP Address:10.0.2.237, IP Address:10.0.2.238, IP Address:10.0.2.239, IP Address:10.0.2.240, IP Address:10.0.2.241, IP Address:10.0.2.242, IP Address:10.0.2.243, IP Address:10.0.2.244, IP Address:10.0.2.245, IP Address:10.0.2.246, IP Address:10.0.2.247, IP Address:10.0.2.248, IP Address:10.0.2.249, IP Address:10.0.2.250, IP Address:10.0.2.251, IP Address:10.0.2.252, IP Address:10.0.2.253, IP Address:10.0.2.254, IP Address:10.0.2.255, IP Address:10.0.3.0, IP Address:10.0.3.1, IP Address:10.0.3.2, IP Address:10.0.3.3, IP Address:10.0.3.4, IP Address:10.0.3.5, IP Address:10.0.3.6, IP Address:10.0.3.7, IP Address:10.0.3.8, IP Address:10.0.3.9, IP Address:10.0.3.10, IP Address:10.0.3.11, IP Address:10.0.3.12, IP Address:10.0.3.13, IP Address:10.0.3.14, IP Address:10.0.3.15, IP Address:10.0.3.16, IP Address:10.0.3.17, IP Address:10.0.3.18, IP Address:10.0.3.19, IP Address:10.0.3.20, IP Address:10.0.3.21, IP Address:10.0.3.22, IP Address:10.0.3.23, IP Address:10.0.3.24, IP Address:10.0.3.25, IP Address:10.0.3.26, IP Address:10.0.3.27, IP Address:10.0.3.28, IP Address:10.0.3.29, IP Address:10.0.3.30, IP Address:10.0.3.31, IP Address:10.0.3.32, IP Address:10.0.3.33, IP Address:10.0.3.34, IP Address:10.0.3.35, IP Address:10.0.3.36, IP Address:10.0.3.37, IP Address:10.0.3.38, IP Address:10.0.3.39, IP Address:10.0.3.40, IP Address:10.0.3.41, IP Address:10.0.3.42, IP Address:10.0.3.43, IP Address:10.0.3.44, IP Address:10.0.3.45, IP Address:10.0.3.46, IP Address:10.0.3.47, IP Address:10.0.3.48, IP Address:10.0.3.49, IP Address:10.0.3.50, IP Address:10.0.3.51, IP Address:10.0.3.52, IP Address:10.0.3.53, IP Address:10.0.3.54, IP Address:10.0.3.55, IP Address:10.0.3.56, IP Address:10.0.3.57, IP Address:10.0.3.58, IP Address:10.0.3.59, IP Address:10.0.3.60, IP Address:10.0.3.61, IP Address:10.0.3.62, IP Address:10.0.3.63, IP Address:10.0.3.64, IP Address:10.0.3.65, IP Address:10.0.3.66, IP Address:10.0.3.67, IP Address:10.0.3.68, IP Address:10.0.3.69, IP Address:10.0.3.70, IP Address:10.0.3.71, IP Address:10.0.3.72, IP Address:10.0.3.73, IP Address:10.0.3.74, IP Address:10.0.3.75, IP Address:10.0.3.76, IP Address:10.0.3.77, IP Address:10.0.3.78, IP Address:10.0.3.79, IP Address:10.0.3.80, IP Address:10.0.3.81, IP Address:10.0.3.82, IP Address:10.0.3.83, IP Address:10.0.3.84, IP Address:10.0.3.85, IP Address:10.0.3.86, IP Address:10.0.3.87, IP Address:10.0.3.88, IP Address:10.0.3.89, IP Address:10.0.3.90, IP Address:10.0.3.91, IP Address:10.0.3.92, IP Address:10.0.3.93, IP Address:10.0.3.94, IP Address:10.0.3.95, IP Address:10.0.3.96, IP Address:10.0.3.97, IP Address:10.0.3.98, IP Address:10.0.3.99, IP Address:10.0.3.100, IP Address:10.0.3.101, IP Address:10.0.3.102, IP Address:10.0.3.103, IP Address:10.0.3.104, IP Address:10.0.3.105, IP Address:10.0.3.106, IP Address:10.0.3.107, IP Address:10.0.3.108, IP Address:10.0.3.109, IP Address:10.0.3.110, IP Address:10.0.3.111, IP Address:10.0.3.112, IP Address:10.0.3.113, IP Address:10.0.3.114, IP Address:10.0.3.115, IP Address:10.0.3.116, IP Address:10.0.3.117, IP Address:10.0.3.118, IP Address:10.0.3.119, IP Address:10.0.3.120, IP Address:10.0.3.121, IP Address:10.0.3.122, IP Address:10.0.3.123, IP Address:10.0.3.124, IP Address:10.0.3.125, IP Address:10.0.3.126, IP Address:10.0.3.127, IP Address:10.0.3.128, IP Address:10.0.3.129, IP Address:10.0.3.130, IP Address:10.0.3.131, IP Address:10.0.3.132, IP Address:10.0.3.133, IP Address:10.0.3.134, IP Address:10.0.3.135, IP Address:10.0.3.136, IP Address:10.0.3.137, IP Address:10.0.3.138, IP Address:10.0.3.139, IP Address:10.0.3.140, IP Address:10.0.3.141, IP Address:10.0.3.142, IP Address:10.0.3.143, IP Address:10.0.3.144, IP Address:10.0.3.145, IP Address:10.0.3.146, IP Address:10.0.3.147, IP Address:10.0.3.148, IP Address:10.0.3.149, IP Address:10.0.3.150, IP Address:10.0.3.151, IP Address:10.0.3.152, IP Address:10.0.3.153, IP Address:10.0.3.154, IP Address:10.0.3.155, IP Address:10.0.3.156, IP Address:10.0.3.157, IP Address:10.0.3.158, IP Address:10.0.3.159, IP Address:10.0.3.160, IP Address:10.0.3.161, IP Address:10.0.3.162, IP Address:10.0.3.163, IP Address:10.0.3.164, IP Address:10.0.3.165, IP Address:10.0.3.166, IP Address:10.0.3.167, IP Address:10.0.3.168, IP Address:10.0.3.169, IP Address:10.0.3.170, IP Address:10.0.3.171, IP Address:10.0.3.172, IP Address:10.0.3.173, IP Address:10.0.3.174, IP Address:10.0.3.175, IP Address:10.0.3.176, IP Address:10.0.3.177, IP Address:10.0.3.178, IP Address:10.0.3.179, IP Address:10.0.3.180, IP Address:10.0.3.181, IP Address:10.0.3.182, IP Address:10.0.3.183, IP Address:10.0.3.184, IP Address:10.0.3.185, IP Address:10.0.3.186, IP Address:10.0.3.187, IP Address:10.0.3.188, IP Address:10.0.3.189, IP Address:10.0.3.190, IP Address:10.0.3.191, IP Address:10.0.3.192, IP Address:10.0.3.193, IP Address:10.0.3.194, IP Address:10.0.3.195, IP Address:10.0.3.196, IP Address:10.0.3.197, IP Address:10.0.3.198, IP Address:10.0.3.199, IP Address:10.0.3.200, IP Address:10.0.3.201, IP Address:10.0.3.202, IP Address:10.0.3.203, IP Address:10.0.3.204, IP Address:10.0.3.205, IP Address:10.0.3.206, IP Address:10.0.3.207, IP Address:10.0.3.208, IP Address:10.0.3.209, IP Address:10.0.3.210, IP Address:10.0.3.211, IP Address:10.0.3.212, IP Address:10.0.3.213, IP Address:10.0.3.214, IP Address:10.0.3.215, IP Address:10.0.3.216, IP Address:10.0.3.217, IP Address:10.0.3.218, IP Address:10.0.3.219, IP Address:10.0.3.220, IP Address:10.0.3.221, IP Address:10.0.3.222, IP Address:10.0.3.223, IP Address:10.0.3.224, IP Address:10.0.3.225, IP Address:10.0.3.226, IP Address:10.0.3.227, IP Address:10.0.3.228, IP Address:10.0.3.229, IP Address:10.0.3.230, IP Address:10.0.3.231, IP Address:10.0.3.232, IP Address:10.0.3.233, IP Address:10.0.3.234, IP Address:10.0.3.235, IP Address:10.0.3.236, IP Address:10.0.3.237, IP Address:10.0.3.238, IP Address:10.0.3.239, IP Address:10.0.3.240, IP Address:10.0.3.241, IP Address:10.0.3.242, IP Address:10.0.3.243, IP Address:10.0.3.244, IP Address:10.0.3.245, IP Address:10.0.3.246, IP Address:10.0.3.247, IP Address:10.0.3.248, IP Address:10.0.3.249, IP Address:10.0.3.250, IP Address:10.0.3.251, IP Address:10.0.3.252, IP Address:10.0.3.253, IP Address:10.0.3.254, IP Address:10.0.3.255 - Signature Algorithm: sha256WithRSAEncryption - 13:e0:0d:71:4c:e5:af:98:fc:35:e0:79:60:26:93:28:ee:ef: - 83:73:c6:86:03:3d:4a:5c:b6:75:25:14:44:0d:af:bf:0b:ac: - 7a:f1:10:78:65:6d:f3:bc:ff:e2:aa:36:af:37:a4:6f:0c:b3: - c5:78:dc:81:a0:98:2a:d2:1c:b3:04:0f:cb:f7:47:b5:75:a2: - 1d:bc:69:2b:aa:62:ff:59:51:53:5b:f6:38:30:00:fa:2d:15: - 9c:9a:7b:b6:56:d7:f7:bc:1d:87:8b:4d:17:41:81:c0:72:c6: - 13:3e:ea:bc:e1:d9:6a:e2:ac:fa:02:a3:3b:c8:59:be:bb:e7: - 62:8c:86:23:f2:ec:d5:d0:f3:45:69:20:95:a2:c3:f4:40:eb: - 36:44:64:b6:11:9d:f8:51:8a:38:85:ef:f3:e0:3e:93:1c:29: - 80:93:4d:d5:75:8c:33:d1:66:9c:61:4e:eb:a2:9a:61:6e:55: - 13:2b:1c:2b:0a:73:6e:44:fb:87:74:c8:08:df:34:78:18:4b: - 66:42:54:11:ce:c4:88:38:4f:42:36:41:81:28:be:91:7d:ce: - 5c:81:71:0d:26:48:d9:65:cf:00:36:66:3b:88:cb:51:21:f5: - ce:e4:56:4f:10:cf:87:0e:40:2f:d9:b6:fc:0b:ae:e6:86:74: - 5c:bd:a5:aa ------BEGIN CERTIFICATE----- -MIIbrjCCGpagAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY2jANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCGPswghj3MB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwghgNBgNVHREEghgEMIIYAIcE -CgAAAIcECgAAAYcECgAAAocECgAAA4cECgAABIcECgAABYcECgAABocECgAAB4cE -CgAACIcECgAACYcECgAACocECgAAC4cECgAADIcECgAADYcECgAADocECgAAD4cE -CgAAEIcECgAAEYcECgAAEocECgAAE4cECgAAFIcECgAAFYcECgAAFocECgAAF4cE -CgAAGIcECgAAGYcECgAAGocECgAAG4cECgAAHIcECgAAHYcECgAAHocECgAAH4cE -CgAAIIcECgAAIYcECgAAIocECgAAI4cECgAAJIcECgAAJYcECgAAJocECgAAJ4cE -CgAAKIcECgAAKYcECgAAKocECgAAK4cECgAALIcECgAALYcECgAALocECgAAL4cE -CgAAMIcECgAAMYcECgAAMocECgAAM4cECgAANIcECgAANYcECgAANocECgAAN4cE -CgAAOIcECgAAOYcECgAAOocECgAAO4cECgAAPIcECgAAPYcECgAAPocECgAAP4cE -CgAAQIcECgAAQYcECgAAQocECgAAQ4cECgAARIcECgAARYcECgAARocECgAAR4cE -CgAASIcECgAASYcECgAASocECgAAS4cECgAATIcECgAATYcECgAATocECgAAT4cE -CgAAUIcECgAAUYcECgAAUocECgAAU4cECgAAVIcECgAAVYcECgAAVocECgAAV4cE -CgAAWIcECgAAWYcECgAAWocECgAAW4cECgAAXIcECgAAXYcECgAAXocECgAAX4cE -CgAAYIcECgAAYYcECgAAYocECgAAY4cECgAAZIcECgAAZYcECgAAZocECgAAZ4cE -CgAAaIcECgAAaYcECgAAaocECgAAa4cECgAAbIcECgAAbYcECgAAbocECgAAb4cE -CgAAcIcECgAAcYcECgAAcocECgAAc4cECgAAdIcECgAAdYcECgAAdocECgAAd4cE -CgAAeIcECgAAeYcECgAAeocECgAAe4cECgAAfIcECgAAfYcECgAAfocECgAAf4cE -CgAAgIcECgAAgYcECgAAgocECgAAg4cECgAAhIcECgAAhYcECgAAhocECgAAh4cE -CgAAiIcECgAAiYcECgAAiocECgAAi4cECgAAjIcECgAAjYcECgAAjocECgAAj4cE -CgAAkIcECgAAkYcECgAAkocECgAAk4cECgAAlIcECgAAlYcECgAAlocECgAAl4cE -CgAAmIcECgAAmYcECgAAmocECgAAm4cECgAAnIcECgAAnYcECgAAnocECgAAn4cE -CgAAoIcECgAAoYcECgAAoocECgAAo4cECgAApIcECgAApYcECgAApocECgAAp4cE -CgAAqIcECgAAqYcECgAAqocECgAAq4cECgAArIcECgAArYcECgAArocECgAAr4cE -CgAAsIcECgAAsYcECgAAsocECgAAs4cECgAAtIcECgAAtYcECgAAtocECgAAt4cE -CgAAuIcECgAAuYcECgAAuocECgAAu4cECgAAvIcECgAAvYcECgAAvocECgAAv4cE -CgAAwIcECgAAwYcECgAAwocECgAAw4cECgAAxIcECgAAxYcECgAAxocECgAAx4cE -CgAAyIcECgAAyYcECgAAyocECgAAy4cECgAAzIcECgAAzYcECgAAzocECgAAz4cE -CgAA0IcECgAA0YcECgAA0ocECgAA04cECgAA1IcECgAA1YcECgAA1ocECgAA14cE -CgAA2IcECgAA2YcECgAA2ocECgAA24cECgAA3IcECgAA3YcECgAA3ocECgAA34cE -CgAA4IcECgAA4YcECgAA4ocECgAA44cECgAA5IcECgAA5YcECgAA5ocECgAA54cE -CgAA6IcECgAA6YcECgAA6ocECgAA64cECgAA7IcECgAA7YcECgAA7ocECgAA74cE -CgAA8IcECgAA8YcECgAA8ocECgAA84cECgAA9IcECgAA9YcECgAA9ocECgAA94cE -CgAA+IcECgAA+YcECgAA+ocECgAA+4cECgAA/IcECgAA/YcECgAA/ocECgAA/4cE -CgABAIcECgABAYcECgABAocECgABA4cECgABBIcECgABBYcECgABBocECgABB4cE -CgABCIcECgABCYcECgABCocECgABC4cECgABDIcECgABDYcECgABDocECgABD4cE -CgABEIcECgABEYcECgABEocECgABE4cECgABFIcECgABFYcECgABFocECgABF4cE -CgABGIcECgABGYcECgABGocECgABG4cECgABHIcECgABHYcECgABHocECgABH4cE -CgABIIcECgABIYcECgABIocECgABI4cECgABJIcECgABJYcECgABJocECgABJ4cE -CgABKIcECgABKYcECgABKocECgABK4cECgABLIcECgABLYcECgABLocECgABL4cE -CgABMIcECgABMYcECgABMocECgABM4cECgABNIcECgABNYcECgABNocECgABN4cE -CgABOIcECgABOYcECgABOocECgABO4cECgABPIcECgABPYcECgABPocECgABP4cE -CgABQIcECgABQYcECgABQocECgABQ4cECgABRIcECgABRYcECgABRocECgABR4cE -CgABSIcECgABSYcECgABSocECgABS4cECgABTIcECgABTYcECgABTocECgABT4cE -CgABUIcECgABUYcECgABUocECgABU4cECgABVIcECgABVYcECgABVocECgABV4cE -CgABWIcECgABWYcECgABWocECgABW4cECgABXIcECgABXYcECgABXocECgABX4cE -CgABYIcECgABYYcECgABYocECgABY4cECgABZIcECgABZYcECgABZocECgABZ4cE -CgABaIcECgABaYcECgABaocECgABa4cECgABbIcECgABbYcECgABbocECgABb4cE -CgABcIcECgABcYcECgABcocECgABc4cECgABdIcECgABdYcECgABdocECgABd4cE -CgABeIcECgABeYcECgABeocECgABe4cECgABfIcECgABfYcECgABfocECgABf4cE -CgABgIcECgABgYcECgABgocECgABg4cECgABhIcECgABhYcECgABhocECgABh4cE -CgABiIcECgABiYcECgABiocECgABi4cECgABjIcECgABjYcECgABjocECgABj4cE -CgABkIcECgABkYcECgABkocECgABk4cECgABlIcECgABlYcECgABlocECgABl4cE -CgABmIcECgABmYcECgABmocECgABm4cECgABnIcECgABnYcECgABnocECgABn4cE -CgABoIcECgABoYcECgABoocECgABo4cECgABpIcECgABpYcECgABpocECgABp4cE -CgABqIcECgABqYcECgABqocECgABq4cECgABrIcECgABrYcECgABrocECgABr4cE -CgABsIcECgABsYcECgABsocECgABs4cECgABtIcECgABtYcECgABtocECgABt4cE -CgABuIcECgABuYcECgABuocECgABu4cECgABvIcECgABvYcECgABvocECgABv4cE -CgABwIcECgABwYcECgABwocECgABw4cECgABxIcECgABxYcECgABxocECgABx4cE -CgAByIcECgAByYcECgAByocECgABy4cECgABzIcECgABzYcECgABzocECgABz4cE -CgAB0IcECgAB0YcECgAB0ocECgAB04cECgAB1IcECgAB1YcECgAB1ocECgAB14cE -CgAB2IcECgAB2YcECgAB2ocECgAB24cECgAB3IcECgAB3YcECgAB3ocECgAB34cE -CgAB4IcECgAB4YcECgAB4ocECgAB44cECgAB5IcECgAB5YcECgAB5ocECgAB54cE -CgAB6IcECgAB6YcECgAB6ocECgAB64cECgAB7IcECgAB7YcECgAB7ocECgAB74cE -CgAB8IcECgAB8YcECgAB8ocECgAB84cECgAB9IcECgAB9YcECgAB9ocECgAB94cE -CgAB+IcECgAB+YcECgAB+ocECgAB+4cECgAB/IcECgAB/YcECgAB/ocECgAB/4cE -CgACAIcECgACAYcECgACAocECgACA4cECgACBIcECgACBYcECgACBocECgACB4cE -CgACCIcECgACCYcECgACCocECgACC4cECgACDIcECgACDYcECgACDocECgACD4cE -CgACEIcECgACEYcECgACEocECgACE4cECgACFIcECgACFYcECgACFocECgACF4cE -CgACGIcECgACGYcECgACGocECgACG4cECgACHIcECgACHYcECgACHocECgACH4cE -CgACIIcECgACIYcECgACIocECgACI4cECgACJIcECgACJYcECgACJocECgACJ4cE -CgACKIcECgACKYcECgACKocECgACK4cECgACLIcECgACLYcECgACLocECgACL4cE -CgACMIcECgACMYcECgACMocECgACM4cECgACNIcECgACNYcECgACNocECgACN4cE -CgACOIcECgACOYcECgACOocECgACO4cECgACPIcECgACPYcECgACPocECgACP4cE -CgACQIcECgACQYcECgACQocECgACQ4cECgACRIcECgACRYcECgACRocECgACR4cE -CgACSIcECgACSYcECgACSocECgACS4cECgACTIcECgACTYcECgACTocECgACT4cE -CgACUIcECgACUYcECgACUocECgACU4cECgACVIcECgACVYcECgACVocECgACV4cE -CgACWIcECgACWYcECgACWocECgACW4cECgACXIcECgACXYcECgACXocECgACX4cE -CgACYIcECgACYYcECgACYocECgACY4cECgACZIcECgACZYcECgACZocECgACZ4cE -CgACaIcECgACaYcECgACaocECgACa4cECgACbIcECgACbYcECgACbocECgACb4cE -CgACcIcECgACcYcECgACcocECgACc4cECgACdIcECgACdYcECgACdocECgACd4cE -CgACeIcECgACeYcECgACeocECgACe4cECgACfIcECgACfYcECgACfocECgACf4cE -CgACgIcECgACgYcECgACgocECgACg4cECgAChIcECgAChYcECgAChocECgACh4cE -CgACiIcECgACiYcECgACiocECgACi4cECgACjIcECgACjYcECgACjocECgACj4cE -CgACkIcECgACkYcECgACkocECgACk4cECgAClIcECgAClYcECgAClocECgACl4cE -CgACmIcECgACmYcECgACmocECgACm4cECgACnIcECgACnYcECgACnocECgACn4cE -CgACoIcECgACoYcECgACoocECgACo4cECgACpIcECgACpYcECgACpocECgACp4cE -CgACqIcECgACqYcECgACqocECgACq4cECgACrIcECgACrYcECgACrocECgACr4cE -CgACsIcECgACsYcECgACsocECgACs4cECgACtIcECgACtYcECgACtocECgACt4cE -CgACuIcECgACuYcECgACuocECgACu4cECgACvIcECgACvYcECgACvocECgACv4cE -CgACwIcECgACwYcECgACwocECgACw4cECgACxIcECgACxYcECgACxocECgACx4cE -CgACyIcECgACyYcECgACyocECgACy4cECgACzIcECgACzYcECgACzocECgACz4cE -CgAC0IcECgAC0YcECgAC0ocECgAC04cECgAC1IcECgAC1YcECgAC1ocECgAC14cE -CgAC2IcECgAC2YcECgAC2ocECgAC24cECgAC3IcECgAC3YcECgAC3ocECgAC34cE -CgAC4IcECgAC4YcECgAC4ocECgAC44cECgAC5IcECgAC5YcECgAC5ocECgAC54cE -CgAC6IcECgAC6YcECgAC6ocECgAC64cECgAC7IcECgAC7YcECgAC7ocECgAC74cE -CgAC8IcECgAC8YcECgAC8ocECgAC84cECgAC9IcECgAC9YcECgAC9ocECgAC94cE -CgAC+IcECgAC+YcECgAC+ocECgAC+4cECgAC/IcECgAC/YcECgAC/ocECgAC/4cE -CgADAIcECgADAYcECgADAocECgADA4cECgADBIcECgADBYcECgADBocECgADB4cE -CgADCIcECgADCYcECgADCocECgADC4cECgADDIcECgADDYcECgADDocECgADD4cE -CgADEIcECgADEYcECgADEocECgADE4cECgADFIcECgADFYcECgADFocECgADF4cE -CgADGIcECgADGYcECgADGocECgADG4cECgADHIcECgADHYcECgADHocECgADH4cE -CgADIIcECgADIYcECgADIocECgADI4cECgADJIcECgADJYcECgADJocECgADJ4cE -CgADKIcECgADKYcECgADKocECgADK4cECgADLIcECgADLYcECgADLocECgADL4cE -CgADMIcECgADMYcECgADMocECgADM4cECgADNIcECgADNYcECgADNocECgADN4cE -CgADOIcECgADOYcECgADOocECgADO4cECgADPIcECgADPYcECgADPocECgADP4cE -CgADQIcECgADQYcECgADQocECgADQ4cECgADRIcECgADRYcECgADRocECgADR4cE -CgADSIcECgADSYcECgADSocECgADS4cECgADTIcECgADTYcECgADTocECgADT4cE -CgADUIcECgADUYcECgADUocECgADU4cECgADVIcECgADVYcECgADVocECgADV4cE -CgADWIcECgADWYcECgADWocECgADW4cECgADXIcECgADXYcECgADXocECgADX4cE -CgADYIcECgADYYcECgADYocECgADY4cECgADZIcECgADZYcECgADZocECgADZ4cE -CgADaIcECgADaYcECgADaocECgADa4cECgADbIcECgADbYcECgADbocECgADb4cE -CgADcIcECgADcYcECgADcocECgADc4cECgADdIcECgADdYcECgADdocECgADd4cE -CgADeIcECgADeYcECgADeocECgADe4cECgADfIcECgADfYcECgADfocECgADf4cE -CgADgIcECgADgYcECgADgocECgADg4cECgADhIcECgADhYcECgADhocECgADh4cE -CgADiIcECgADiYcECgADiocECgADi4cECgADjIcECgADjYcECgADjocECgADj4cE -CgADkIcECgADkYcECgADkocECgADk4cECgADlIcECgADlYcECgADlocECgADl4cE -CgADmIcECgADmYcECgADmocECgADm4cECgADnIcECgADnYcECgADnocECgADn4cE -CgADoIcECgADoYcECgADoocECgADo4cECgADpIcECgADpYcECgADpocECgADp4cE -CgADqIcECgADqYcECgADqocECgADq4cECgADrIcECgADrYcECgADrocECgADr4cE -CgADsIcECgADsYcECgADsocECgADs4cECgADtIcECgADtYcECgADtocECgADt4cE -CgADuIcECgADuYcECgADuocECgADu4cECgADvIcECgADvYcECgADvocECgADv4cE -CgADwIcECgADwYcECgADwocECgADw4cECgADxIcECgADxYcECgADxocECgADx4cE -CgADyIcECgADyYcECgADyocECgADy4cECgADzIcECgADzYcECgADzocECgADz4cE -CgAD0IcECgAD0YcECgAD0ocECgAD04cECgAD1IcECgAD1YcECgAD1ocECgAD14cE -CgAD2IcECgAD2YcECgAD2ocECgAD24cECgAD3IcECgAD3YcECgAD3ocECgAD34cE -CgAD4IcECgAD4YcECgAD4ocECgAD44cECgAD5IcECgAD5YcECgAD5ocECgAD54cE -CgAD6IcECgAD6YcECgAD6ocECgAD64cECgAD7IcECgAD7YcECgAD7ocECgAD74cE -CgAD8IcECgAD8YcECgAD8ocECgAD84cECgAD9IcECgAD9YcECgAD9ocECgAD94cE -CgAD+IcECgAD+YcECgAD+ocECgAD+4cECgAD/IcECgAD/YcECgAD/ocECgAD/zAN -BgkqhkiG9w0BAQsFAAOCAQEAE+ANcUzlr5j8NeB5YCaTKO7vg3PGhgM9Sly2dSUU -RA2vvwusevEQeGVt87z/4qo2rzekbwyzxXjcgaCYKtIcswQPy/dHtXWiHbxpK6pi -/1lRU1v2ODAA+i0VnJp7tlbX97wdh4tNF0GBwHLGEz7qvOHZauKs+gKjO8hZvrvn -YoyGI/Ls1dDzRWkglaLD9EDrNkRkthGd+FGKOIXv8+A+kxwpgJNN1XWMM9FmnGFO -66KaYW5VEyscKwpzbkT7h3TICN80eBhLZkJUEc7EiDhPQjZBgSi+kX3OXIFxDSZI -2WXPADZmO4jLUSH1zuRWTxDPhw5AL9m2/Auu5oZ0XL2lqg== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.cnf b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.cnf deleted file mode 100644 index 60613384c8..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.cnf +++ /dev/null @@ -1,4163 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "t0" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,digitalSignature,keyEncipherment -extendedKeyUsage = serverAuth,clientAuth -subjectAltName = @san_info - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/t0_7.pem -new_certs_dir = out -serial = out/t0.serial -database = out/t0.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/t0.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/t0.cer - -[crl_info] -URI.0 = http://url-for-crl/t0.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - -[san_info] -dirName.1 = san_dirname1 -dirName.2 = san_dirname2 -dirName.3 = san_dirname3 -dirName.4 = san_dirname4 -dirName.5 = san_dirname5 -dirName.6 = san_dirname6 -dirName.7 = san_dirname7 -dirName.8 = san_dirname8 -dirName.9 = san_dirname9 -dirName.10 = san_dirname10 -dirName.11 = san_dirname11 -dirName.12 = san_dirname12 -dirName.13 = san_dirname13 -dirName.14 = san_dirname14 -dirName.15 = san_dirname15 -dirName.16 = san_dirname16 -dirName.17 = san_dirname17 -dirName.18 = san_dirname18 -dirName.19 = san_dirname19 -dirName.20 = san_dirname20 -dirName.21 = san_dirname21 -dirName.22 = san_dirname22 -dirName.23 = san_dirname23 -dirName.24 = san_dirname24 -dirName.25 = san_dirname25 -dirName.26 = san_dirname26 -dirName.27 = san_dirname27 -dirName.28 = san_dirname28 -dirName.29 = san_dirname29 -dirName.30 = san_dirname30 -dirName.31 = san_dirname31 -dirName.32 = san_dirname32 -dirName.33 = san_dirname33 -dirName.34 = san_dirname34 -dirName.35 = san_dirname35 -dirName.36 = san_dirname36 -dirName.37 = san_dirname37 -dirName.38 = san_dirname38 -dirName.39 = san_dirname39 -dirName.40 = san_dirname40 -dirName.41 = san_dirname41 -dirName.42 = san_dirname42 -dirName.43 = san_dirname43 -dirName.44 = san_dirname44 -dirName.45 = san_dirname45 -dirName.46 = san_dirname46 -dirName.47 = san_dirname47 -dirName.48 = san_dirname48 -dirName.49 = san_dirname49 -dirName.50 = san_dirname50 -dirName.51 = san_dirname51 -dirName.52 = san_dirname52 -dirName.53 = san_dirname53 -dirName.54 = san_dirname54 -dirName.55 = san_dirname55 -dirName.56 = san_dirname56 -dirName.57 = san_dirname57 -dirName.58 = san_dirname58 -dirName.59 = san_dirname59 -dirName.60 = san_dirname60 -dirName.61 = san_dirname61 -dirName.62 = san_dirname62 -dirName.63 = san_dirname63 -dirName.64 = san_dirname64 -dirName.65 = san_dirname65 -dirName.66 = san_dirname66 -dirName.67 = san_dirname67 -dirName.68 = san_dirname68 -dirName.69 = san_dirname69 -dirName.70 = san_dirname70 -dirName.71 = san_dirname71 -dirName.72 = san_dirname72 -dirName.73 = san_dirname73 -dirName.74 = san_dirname74 -dirName.75 = san_dirname75 -dirName.76 = san_dirname76 -dirName.77 = san_dirname77 -dirName.78 = san_dirname78 -dirName.79 = san_dirname79 -dirName.80 = san_dirname80 -dirName.81 = san_dirname81 -dirName.82 = san_dirname82 -dirName.83 = san_dirname83 -dirName.84 = san_dirname84 -dirName.85 = san_dirname85 -dirName.86 = san_dirname86 -dirName.87 = san_dirname87 -dirName.88 = san_dirname88 -dirName.89 = san_dirname89 -dirName.90 = san_dirname90 -dirName.91 = san_dirname91 -dirName.92 = san_dirname92 -dirName.93 = san_dirname93 -dirName.94 = san_dirname94 -dirName.95 = san_dirname95 -dirName.96 = san_dirname96 -dirName.97 = san_dirname97 -dirName.98 = san_dirname98 -dirName.99 = san_dirname99 -dirName.100 = san_dirname100 -dirName.101 = san_dirname101 -dirName.102 = san_dirname102 -dirName.103 = san_dirname103 -dirName.104 = san_dirname104 -dirName.105 = san_dirname105 -dirName.106 = san_dirname106 -dirName.107 = san_dirname107 -dirName.108 = san_dirname108 -dirName.109 = san_dirname109 -dirName.110 = san_dirname110 -dirName.111 = san_dirname111 -dirName.112 = san_dirname112 -dirName.113 = san_dirname113 -dirName.114 = san_dirname114 -dirName.115 = san_dirname115 -dirName.116 = san_dirname116 -dirName.117 = san_dirname117 -dirName.118 = san_dirname118 -dirName.119 = san_dirname119 -dirName.120 = san_dirname120 -dirName.121 = san_dirname121 -dirName.122 = san_dirname122 -dirName.123 = san_dirname123 -dirName.124 = san_dirname124 -dirName.125 = san_dirname125 -dirName.126 = san_dirname126 -dirName.127 = san_dirname127 -dirName.128 = san_dirname128 -dirName.129 = san_dirname129 -dirName.130 = san_dirname130 -dirName.131 = san_dirname131 -dirName.132 = san_dirname132 -dirName.133 = san_dirname133 -dirName.134 = san_dirname134 -dirName.135 = san_dirname135 -dirName.136 = san_dirname136 -dirName.137 = san_dirname137 -dirName.138 = san_dirname138 -dirName.139 = san_dirname139 -dirName.140 = san_dirname140 -dirName.141 = san_dirname141 -dirName.142 = san_dirname142 -dirName.143 = san_dirname143 -dirName.144 = san_dirname144 -dirName.145 = san_dirname145 -dirName.146 = san_dirname146 -dirName.147 = san_dirname147 -dirName.148 = san_dirname148 -dirName.149 = san_dirname149 -dirName.150 = san_dirname150 -dirName.151 = san_dirname151 -dirName.152 = san_dirname152 -dirName.153 = san_dirname153 -dirName.154 = san_dirname154 -dirName.155 = san_dirname155 -dirName.156 = san_dirname156 -dirName.157 = san_dirname157 -dirName.158 = san_dirname158 -dirName.159 = san_dirname159 -dirName.160 = san_dirname160 -dirName.161 = san_dirname161 -dirName.162 = san_dirname162 -dirName.163 = san_dirname163 -dirName.164 = san_dirname164 -dirName.165 = san_dirname165 -dirName.166 = san_dirname166 -dirName.167 = san_dirname167 -dirName.168 = san_dirname168 -dirName.169 = san_dirname169 -dirName.170 = san_dirname170 -dirName.171 = san_dirname171 -dirName.172 = san_dirname172 -dirName.173 = san_dirname173 -dirName.174 = san_dirname174 -dirName.175 = san_dirname175 -dirName.176 = san_dirname176 -dirName.177 = san_dirname177 -dirName.178 = san_dirname178 -dirName.179 = san_dirname179 -dirName.180 = san_dirname180 -dirName.181 = san_dirname181 -dirName.182 = san_dirname182 -dirName.183 = san_dirname183 -dirName.184 = san_dirname184 -dirName.185 = san_dirname185 -dirName.186 = san_dirname186 -dirName.187 = san_dirname187 -dirName.188 = san_dirname188 -dirName.189 = san_dirname189 -dirName.190 = san_dirname190 -dirName.191 = san_dirname191 -dirName.192 = san_dirname192 -dirName.193 = san_dirname193 -dirName.194 = san_dirname194 -dirName.195 = san_dirname195 -dirName.196 = san_dirname196 -dirName.197 = san_dirname197 -dirName.198 = san_dirname198 -dirName.199 = san_dirname199 -dirName.200 = san_dirname200 -dirName.201 = san_dirname201 -dirName.202 = san_dirname202 -dirName.203 = san_dirname203 -dirName.204 = san_dirname204 -dirName.205 = san_dirname205 -dirName.206 = san_dirname206 -dirName.207 = san_dirname207 -dirName.208 = san_dirname208 -dirName.209 = san_dirname209 -dirName.210 = san_dirname210 -dirName.211 = san_dirname211 -dirName.212 = san_dirname212 -dirName.213 = san_dirname213 -dirName.214 = san_dirname214 -dirName.215 = san_dirname215 -dirName.216 = san_dirname216 -dirName.217 = san_dirname217 -dirName.218 = san_dirname218 -dirName.219 = san_dirname219 -dirName.220 = san_dirname220 -dirName.221 = san_dirname221 -dirName.222 = san_dirname222 -dirName.223 = san_dirname223 -dirName.224 = san_dirname224 -dirName.225 = san_dirname225 -dirName.226 = san_dirname226 -dirName.227 = san_dirname227 -dirName.228 = san_dirname228 -dirName.229 = san_dirname229 -dirName.230 = san_dirname230 -dirName.231 = san_dirname231 -dirName.232 = san_dirname232 -dirName.233 = san_dirname233 -dirName.234 = san_dirname234 -dirName.235 = san_dirname235 -dirName.236 = san_dirname236 -dirName.237 = san_dirname237 -dirName.238 = san_dirname238 -dirName.239 = san_dirname239 -dirName.240 = san_dirname240 -dirName.241 = san_dirname241 -dirName.242 = san_dirname242 -dirName.243 = san_dirname243 -dirName.244 = san_dirname244 -dirName.245 = san_dirname245 -dirName.246 = san_dirname246 -dirName.247 = san_dirname247 -dirName.248 = san_dirname248 -dirName.249 = san_dirname249 -dirName.250 = san_dirname250 -dirName.251 = san_dirname251 -dirName.252 = san_dirname252 -dirName.253 = san_dirname253 -dirName.254 = san_dirname254 -dirName.255 = san_dirname255 -dirName.256 = san_dirname256 -dirName.257 = san_dirname257 -dirName.258 = san_dirname258 -dirName.259 = san_dirname259 -dirName.260 = san_dirname260 -dirName.261 = san_dirname261 -dirName.262 = san_dirname262 -dirName.263 = san_dirname263 -dirName.264 = san_dirname264 -dirName.265 = san_dirname265 -dirName.266 = san_dirname266 -dirName.267 = san_dirname267 -dirName.268 = san_dirname268 -dirName.269 = san_dirname269 -dirName.270 = san_dirname270 -dirName.271 = san_dirname271 -dirName.272 = san_dirname272 -dirName.273 = san_dirname273 -dirName.274 = san_dirname274 -dirName.275 = san_dirname275 -dirName.276 = san_dirname276 -dirName.277 = san_dirname277 -dirName.278 = san_dirname278 -dirName.279 = san_dirname279 -dirName.280 = san_dirname280 -dirName.281 = san_dirname281 -dirName.282 = san_dirname282 -dirName.283 = san_dirname283 -dirName.284 = san_dirname284 -dirName.285 = san_dirname285 -dirName.286 = san_dirname286 -dirName.287 = san_dirname287 -dirName.288 = san_dirname288 -dirName.289 = san_dirname289 -dirName.290 = san_dirname290 -dirName.291 = san_dirname291 -dirName.292 = san_dirname292 -dirName.293 = san_dirname293 -dirName.294 = san_dirname294 -dirName.295 = san_dirname295 -dirName.296 = san_dirname296 -dirName.297 = san_dirname297 -dirName.298 = san_dirname298 -dirName.299 = san_dirname299 -dirName.300 = san_dirname300 -dirName.301 = san_dirname301 -dirName.302 = san_dirname302 -dirName.303 = san_dirname303 -dirName.304 = san_dirname304 -dirName.305 = san_dirname305 -dirName.306 = san_dirname306 -dirName.307 = san_dirname307 -dirName.308 = san_dirname308 -dirName.309 = san_dirname309 -dirName.310 = san_dirname310 -dirName.311 = san_dirname311 -dirName.312 = san_dirname312 -dirName.313 = san_dirname313 -dirName.314 = san_dirname314 -dirName.315 = san_dirname315 -dirName.316 = san_dirname316 -dirName.317 = san_dirname317 -dirName.318 = san_dirname318 -dirName.319 = san_dirname319 -dirName.320 = san_dirname320 -dirName.321 = san_dirname321 -dirName.322 = san_dirname322 -dirName.323 = san_dirname323 -dirName.324 = san_dirname324 -dirName.325 = san_dirname325 -dirName.326 = san_dirname326 -dirName.327 = san_dirname327 -dirName.328 = san_dirname328 -dirName.329 = san_dirname329 -dirName.330 = san_dirname330 -dirName.331 = san_dirname331 -dirName.332 = san_dirname332 -dirName.333 = san_dirname333 -dirName.334 = san_dirname334 -dirName.335 = san_dirname335 -dirName.336 = san_dirname336 -dirName.337 = san_dirname337 -dirName.338 = san_dirname338 -dirName.339 = san_dirname339 -dirName.340 = san_dirname340 -dirName.341 = san_dirname341 -dirName.342 = san_dirname342 -dirName.343 = san_dirname343 -dirName.344 = san_dirname344 -dirName.345 = san_dirname345 -dirName.346 = san_dirname346 -dirName.347 = san_dirname347 -dirName.348 = san_dirname348 -dirName.349 = san_dirname349 -dirName.350 = san_dirname350 -dirName.351 = san_dirname351 -dirName.352 = san_dirname352 -dirName.353 = san_dirname353 -dirName.354 = san_dirname354 -dirName.355 = san_dirname355 -dirName.356 = san_dirname356 -dirName.357 = san_dirname357 -dirName.358 = san_dirname358 -dirName.359 = san_dirname359 -dirName.360 = san_dirname360 -dirName.361 = san_dirname361 -dirName.362 = san_dirname362 -dirName.363 = san_dirname363 -dirName.364 = san_dirname364 -dirName.365 = san_dirname365 -dirName.366 = san_dirname366 -dirName.367 = san_dirname367 -dirName.368 = san_dirname368 -dirName.369 = san_dirname369 -dirName.370 = san_dirname370 -dirName.371 = san_dirname371 -dirName.372 = san_dirname372 -dirName.373 = san_dirname373 -dirName.374 = san_dirname374 -dirName.375 = san_dirname375 -dirName.376 = san_dirname376 -dirName.377 = san_dirname377 -dirName.378 = san_dirname378 -dirName.379 = san_dirname379 -dirName.380 = san_dirname380 -dirName.381 = san_dirname381 -dirName.382 = san_dirname382 -dirName.383 = san_dirname383 -dirName.384 = san_dirname384 -dirName.385 = san_dirname385 -dirName.386 = san_dirname386 -dirName.387 = san_dirname387 -dirName.388 = san_dirname388 -dirName.389 = san_dirname389 -dirName.390 = san_dirname390 -dirName.391 = san_dirname391 -dirName.392 = san_dirname392 -dirName.393 = san_dirname393 -dirName.394 = san_dirname394 -dirName.395 = san_dirname395 -dirName.396 = san_dirname396 -dirName.397 = san_dirname397 -dirName.398 = san_dirname398 -dirName.399 = san_dirname399 -dirName.400 = san_dirname400 -dirName.401 = san_dirname401 -dirName.402 = san_dirname402 -dirName.403 = san_dirname403 -dirName.404 = san_dirname404 -dirName.405 = san_dirname405 -dirName.406 = san_dirname406 -dirName.407 = san_dirname407 -dirName.408 = san_dirname408 -dirName.409 = san_dirname409 -dirName.410 = san_dirname410 -dirName.411 = san_dirname411 -dirName.412 = san_dirname412 -dirName.413 = san_dirname413 -dirName.414 = san_dirname414 -dirName.415 = san_dirname415 -dirName.416 = san_dirname416 -dirName.417 = san_dirname417 -dirName.418 = san_dirname418 -dirName.419 = san_dirname419 -dirName.420 = san_dirname420 -dirName.421 = san_dirname421 -dirName.422 = san_dirname422 -dirName.423 = san_dirname423 -dirName.424 = san_dirname424 -dirName.425 = san_dirname425 -dirName.426 = san_dirname426 -dirName.427 = san_dirname427 -dirName.428 = san_dirname428 -dirName.429 = san_dirname429 -dirName.430 = san_dirname430 -dirName.431 = san_dirname431 -dirName.432 = san_dirname432 -dirName.433 = san_dirname433 -dirName.434 = san_dirname434 -dirName.435 = san_dirname435 -dirName.436 = san_dirname436 -dirName.437 = san_dirname437 -dirName.438 = san_dirname438 -dirName.439 = san_dirname439 -dirName.440 = san_dirname440 -dirName.441 = san_dirname441 -dirName.442 = san_dirname442 -dirName.443 = san_dirname443 -dirName.444 = san_dirname444 -dirName.445 = san_dirname445 -dirName.446 = san_dirname446 -dirName.447 = san_dirname447 -dirName.448 = san_dirname448 -dirName.449 = san_dirname449 -dirName.450 = san_dirname450 -dirName.451 = san_dirname451 -dirName.452 = san_dirname452 -dirName.453 = san_dirname453 -dirName.454 = san_dirname454 -dirName.455 = san_dirname455 -dirName.456 = san_dirname456 -dirName.457 = san_dirname457 -dirName.458 = san_dirname458 -dirName.459 = san_dirname459 -dirName.460 = san_dirname460 -dirName.461 = san_dirname461 -dirName.462 = san_dirname462 -dirName.463 = san_dirname463 -dirName.464 = san_dirname464 -dirName.465 = san_dirname465 -dirName.466 = san_dirname466 -dirName.467 = san_dirname467 -dirName.468 = san_dirname468 -dirName.469 = san_dirname469 -dirName.470 = san_dirname470 -dirName.471 = san_dirname471 -dirName.472 = san_dirname472 -dirName.473 = san_dirname473 -dirName.474 = san_dirname474 -dirName.475 = san_dirname475 -dirName.476 = san_dirname476 -dirName.477 = san_dirname477 -dirName.478 = san_dirname478 -dirName.479 = san_dirname479 -dirName.480 = san_dirname480 -dirName.481 = san_dirname481 -dirName.482 = san_dirname482 -dirName.483 = san_dirname483 -dirName.484 = san_dirname484 -dirName.485 = san_dirname485 -dirName.486 = san_dirname486 -dirName.487 = san_dirname487 -dirName.488 = san_dirname488 -dirName.489 = san_dirname489 -dirName.490 = san_dirname490 -dirName.491 = san_dirname491 -dirName.492 = san_dirname492 -dirName.493 = san_dirname493 -dirName.494 = san_dirname494 -dirName.495 = san_dirname495 -dirName.496 = san_dirname496 -dirName.497 = san_dirname497 -dirName.498 = san_dirname498 -dirName.499 = san_dirname499 -dirName.500 = san_dirname500 -dirName.501 = san_dirname501 -dirName.502 = san_dirname502 -dirName.503 = san_dirname503 -dirName.504 = san_dirname504 -dirName.505 = san_dirname505 -dirName.506 = san_dirname506 -dirName.507 = san_dirname507 -dirName.508 = san_dirname508 -dirName.509 = san_dirname509 -dirName.510 = san_dirname510 -dirName.511 = san_dirname511 -dirName.512 = san_dirname512 -dirName.513 = san_dirname513 -dirName.514 = san_dirname514 -dirName.515 = san_dirname515 -dirName.516 = san_dirname516 -dirName.517 = san_dirname517 -dirName.518 = san_dirname518 -dirName.519 = san_dirname519 -dirName.520 = san_dirname520 -dirName.521 = san_dirname521 -dirName.522 = san_dirname522 -dirName.523 = san_dirname523 -dirName.524 = san_dirname524 -dirName.525 = san_dirname525 -dirName.526 = san_dirname526 -dirName.527 = san_dirname527 -dirName.528 = san_dirname528 -dirName.529 = san_dirname529 -dirName.530 = san_dirname530 -dirName.531 = san_dirname531 -dirName.532 = san_dirname532 -dirName.533 = san_dirname533 -dirName.534 = san_dirname534 -dirName.535 = san_dirname535 -dirName.536 = san_dirname536 -dirName.537 = san_dirname537 -dirName.538 = san_dirname538 -dirName.539 = san_dirname539 -dirName.540 = san_dirname540 -dirName.541 = san_dirname541 -dirName.542 = san_dirname542 -dirName.543 = san_dirname543 -dirName.544 = san_dirname544 -dirName.545 = san_dirname545 -dirName.546 = san_dirname546 -dirName.547 = san_dirname547 -dirName.548 = san_dirname548 -dirName.549 = san_dirname549 -dirName.550 = san_dirname550 -dirName.551 = san_dirname551 -dirName.552 = san_dirname552 -dirName.553 = san_dirname553 -dirName.554 = san_dirname554 -dirName.555 = san_dirname555 -dirName.556 = san_dirname556 -dirName.557 = san_dirname557 -dirName.558 = san_dirname558 -dirName.559 = san_dirname559 -dirName.560 = san_dirname560 -dirName.561 = san_dirname561 -dirName.562 = san_dirname562 -dirName.563 = san_dirname563 -dirName.564 = san_dirname564 -dirName.565 = san_dirname565 -dirName.566 = san_dirname566 -dirName.567 = san_dirname567 -dirName.568 = san_dirname568 -dirName.569 = san_dirname569 -dirName.570 = san_dirname570 -dirName.571 = san_dirname571 -dirName.572 = san_dirname572 -dirName.573 = san_dirname573 -dirName.574 = san_dirname574 -dirName.575 = san_dirname575 -dirName.576 = san_dirname576 -dirName.577 = san_dirname577 -dirName.578 = san_dirname578 -dirName.579 = san_dirname579 -dirName.580 = san_dirname580 -dirName.581 = san_dirname581 -dirName.582 = san_dirname582 -dirName.583 = san_dirname583 -dirName.584 = san_dirname584 -dirName.585 = san_dirname585 -dirName.586 = san_dirname586 -dirName.587 = san_dirname587 -dirName.588 = san_dirname588 -dirName.589 = san_dirname589 -dirName.590 = san_dirname590 -dirName.591 = san_dirname591 -dirName.592 = san_dirname592 -dirName.593 = san_dirname593 -dirName.594 = san_dirname594 -dirName.595 = san_dirname595 -dirName.596 = san_dirname596 -dirName.597 = san_dirname597 -dirName.598 = san_dirname598 -dirName.599 = san_dirname599 -dirName.600 = san_dirname600 -dirName.601 = san_dirname601 -dirName.602 = san_dirname602 -dirName.603 = san_dirname603 -dirName.604 = san_dirname604 -dirName.605 = san_dirname605 -dirName.606 = san_dirname606 -dirName.607 = san_dirname607 -dirName.608 = san_dirname608 -dirName.609 = san_dirname609 -dirName.610 = san_dirname610 -dirName.611 = san_dirname611 -dirName.612 = san_dirname612 -dirName.613 = san_dirname613 -dirName.614 = san_dirname614 -dirName.615 = san_dirname615 -dirName.616 = san_dirname616 -dirName.617 = san_dirname617 -dirName.618 = san_dirname618 -dirName.619 = san_dirname619 -dirName.620 = san_dirname620 -dirName.621 = san_dirname621 -dirName.622 = san_dirname622 -dirName.623 = san_dirname623 -dirName.624 = san_dirname624 -dirName.625 = san_dirname625 -dirName.626 = san_dirname626 -dirName.627 = san_dirname627 -dirName.628 = san_dirname628 -dirName.629 = san_dirname629 -dirName.630 = san_dirname630 -dirName.631 = san_dirname631 -dirName.632 = san_dirname632 -dirName.633 = san_dirname633 -dirName.634 = san_dirname634 -dirName.635 = san_dirname635 -dirName.636 = san_dirname636 -dirName.637 = san_dirname637 -dirName.638 = san_dirname638 -dirName.639 = san_dirname639 -dirName.640 = san_dirname640 -dirName.641 = san_dirname641 -dirName.642 = san_dirname642 -dirName.643 = san_dirname643 -dirName.644 = san_dirname644 -dirName.645 = san_dirname645 -dirName.646 = san_dirname646 -dirName.647 = san_dirname647 -dirName.648 = san_dirname648 -dirName.649 = san_dirname649 -dirName.650 = san_dirname650 -dirName.651 = san_dirname651 -dirName.652 = san_dirname652 -dirName.653 = san_dirname653 -dirName.654 = san_dirname654 -dirName.655 = san_dirname655 -dirName.656 = san_dirname656 -dirName.657 = san_dirname657 -dirName.658 = san_dirname658 -dirName.659 = san_dirname659 -dirName.660 = san_dirname660 -dirName.661 = san_dirname661 -dirName.662 = san_dirname662 -dirName.663 = san_dirname663 -dirName.664 = san_dirname664 -dirName.665 = san_dirname665 -dirName.666 = san_dirname666 -dirName.667 = san_dirname667 -dirName.668 = san_dirname668 -dirName.669 = san_dirname669 -dirName.670 = san_dirname670 -dirName.671 = san_dirname671 -dirName.672 = san_dirname672 -dirName.673 = san_dirname673 -dirName.674 = san_dirname674 -dirName.675 = san_dirname675 -dirName.676 = san_dirname676 -dirName.677 = san_dirname677 -dirName.678 = san_dirname678 -dirName.679 = san_dirname679 -dirName.680 = san_dirname680 -dirName.681 = san_dirname681 -dirName.682 = san_dirname682 -dirName.683 = san_dirname683 -dirName.684 = san_dirname684 -dirName.685 = san_dirname685 -dirName.686 = san_dirname686 -dirName.687 = san_dirname687 -dirName.688 = san_dirname688 -dirName.689 = san_dirname689 -dirName.690 = san_dirname690 -dirName.691 = san_dirname691 -dirName.692 = san_dirname692 -dirName.693 = san_dirname693 -dirName.694 = san_dirname694 -dirName.695 = san_dirname695 -dirName.696 = san_dirname696 -dirName.697 = san_dirname697 -dirName.698 = san_dirname698 -dirName.699 = san_dirname699 -dirName.700 = san_dirname700 -dirName.701 = san_dirname701 -dirName.702 = san_dirname702 -dirName.703 = san_dirname703 -dirName.704 = san_dirname704 -dirName.705 = san_dirname705 -dirName.706 = san_dirname706 -dirName.707 = san_dirname707 -dirName.708 = san_dirname708 -dirName.709 = san_dirname709 -dirName.710 = san_dirname710 -dirName.711 = san_dirname711 -dirName.712 = san_dirname712 -dirName.713 = san_dirname713 -dirName.714 = san_dirname714 -dirName.715 = san_dirname715 -dirName.716 = san_dirname716 -dirName.717 = san_dirname717 -dirName.718 = san_dirname718 -dirName.719 = san_dirname719 -dirName.720 = san_dirname720 -dirName.721 = san_dirname721 -dirName.722 = san_dirname722 -dirName.723 = san_dirname723 -dirName.724 = san_dirname724 -dirName.725 = san_dirname725 -dirName.726 = san_dirname726 -dirName.727 = san_dirname727 -dirName.728 = san_dirname728 -dirName.729 = san_dirname729 -dirName.730 = san_dirname730 -dirName.731 = san_dirname731 -dirName.732 = san_dirname732 -dirName.733 = san_dirname733 -dirName.734 = san_dirname734 -dirName.735 = san_dirname735 -dirName.736 = san_dirname736 -dirName.737 = san_dirname737 -dirName.738 = san_dirname738 -dirName.739 = san_dirname739 -dirName.740 = san_dirname740 -dirName.741 = san_dirname741 -dirName.742 = san_dirname742 -dirName.743 = san_dirname743 -dirName.744 = san_dirname744 -dirName.745 = san_dirname745 -dirName.746 = san_dirname746 -dirName.747 = san_dirname747 -dirName.748 = san_dirname748 -dirName.749 = san_dirname749 -dirName.750 = san_dirname750 -dirName.751 = san_dirname751 -dirName.752 = san_dirname752 -dirName.753 = san_dirname753 -dirName.754 = san_dirname754 -dirName.755 = san_dirname755 -dirName.756 = san_dirname756 -dirName.757 = san_dirname757 -dirName.758 = san_dirname758 -dirName.759 = san_dirname759 -dirName.760 = san_dirname760 -dirName.761 = san_dirname761 -dirName.762 = san_dirname762 -dirName.763 = san_dirname763 -dirName.764 = san_dirname764 -dirName.765 = san_dirname765 -dirName.766 = san_dirname766 -dirName.767 = san_dirname767 -dirName.768 = san_dirname768 -dirName.769 = san_dirname769 -dirName.770 = san_dirname770 -dirName.771 = san_dirname771 -dirName.772 = san_dirname772 -dirName.773 = san_dirname773 -dirName.774 = san_dirname774 -dirName.775 = san_dirname775 -dirName.776 = san_dirname776 -dirName.777 = san_dirname777 -dirName.778 = san_dirname778 -dirName.779 = san_dirname779 -dirName.780 = san_dirname780 -dirName.781 = san_dirname781 -dirName.782 = san_dirname782 -dirName.783 = san_dirname783 -dirName.784 = san_dirname784 -dirName.785 = san_dirname785 -dirName.786 = san_dirname786 -dirName.787 = san_dirname787 -dirName.788 = san_dirname788 -dirName.789 = san_dirname789 -dirName.790 = san_dirname790 -dirName.791 = san_dirname791 -dirName.792 = san_dirname792 -dirName.793 = san_dirname793 -dirName.794 = san_dirname794 -dirName.795 = san_dirname795 -dirName.796 = san_dirname796 -dirName.797 = san_dirname797 -dirName.798 = san_dirname798 -dirName.799 = san_dirname799 -dirName.800 = san_dirname800 -dirName.801 = san_dirname801 -dirName.802 = san_dirname802 -dirName.803 = san_dirname803 -dirName.804 = san_dirname804 -dirName.805 = san_dirname805 -dirName.806 = san_dirname806 -dirName.807 = san_dirname807 -dirName.808 = san_dirname808 -dirName.809 = san_dirname809 -dirName.810 = san_dirname810 -dirName.811 = san_dirname811 -dirName.812 = san_dirname812 -dirName.813 = san_dirname813 -dirName.814 = san_dirname814 -dirName.815 = san_dirname815 -dirName.816 = san_dirname816 -dirName.817 = san_dirname817 -dirName.818 = san_dirname818 -dirName.819 = san_dirname819 -dirName.820 = san_dirname820 -dirName.821 = san_dirname821 -dirName.822 = san_dirname822 -dirName.823 = san_dirname823 -dirName.824 = san_dirname824 -dirName.825 = san_dirname825 -dirName.826 = san_dirname826 -dirName.827 = san_dirname827 -dirName.828 = san_dirname828 -dirName.829 = san_dirname829 -dirName.830 = san_dirname830 -dirName.831 = san_dirname831 -dirName.832 = san_dirname832 -dirName.833 = san_dirname833 -dirName.834 = san_dirname834 -dirName.835 = san_dirname835 -dirName.836 = san_dirname836 -dirName.837 = san_dirname837 -dirName.838 = san_dirname838 -dirName.839 = san_dirname839 -dirName.840 = san_dirname840 -dirName.841 = san_dirname841 -dirName.842 = san_dirname842 -dirName.843 = san_dirname843 -dirName.844 = san_dirname844 -dirName.845 = san_dirname845 -dirName.846 = san_dirname846 -dirName.847 = san_dirname847 -dirName.848 = san_dirname848 -dirName.849 = san_dirname849 -dirName.850 = san_dirname850 -dirName.851 = san_dirname851 -dirName.852 = san_dirname852 -dirName.853 = san_dirname853 -dirName.854 = san_dirname854 -dirName.855 = san_dirname855 -dirName.856 = san_dirname856 -dirName.857 = san_dirname857 -dirName.858 = san_dirname858 -dirName.859 = san_dirname859 -dirName.860 = san_dirname860 -dirName.861 = san_dirname861 -dirName.862 = san_dirname862 -dirName.863 = san_dirname863 -dirName.864 = san_dirname864 -dirName.865 = san_dirname865 -dirName.866 = san_dirname866 -dirName.867 = san_dirname867 -dirName.868 = san_dirname868 -dirName.869 = san_dirname869 -dirName.870 = san_dirname870 -dirName.871 = san_dirname871 -dirName.872 = san_dirname872 -dirName.873 = san_dirname873 -dirName.874 = san_dirname874 -dirName.875 = san_dirname875 -dirName.876 = san_dirname876 -dirName.877 = san_dirname877 -dirName.878 = san_dirname878 -dirName.879 = san_dirname879 -dirName.880 = san_dirname880 -dirName.881 = san_dirname881 -dirName.882 = san_dirname882 -dirName.883 = san_dirname883 -dirName.884 = san_dirname884 -dirName.885 = san_dirname885 -dirName.886 = san_dirname886 -dirName.887 = san_dirname887 -dirName.888 = san_dirname888 -dirName.889 = san_dirname889 -dirName.890 = san_dirname890 -dirName.891 = san_dirname891 -dirName.892 = san_dirname892 -dirName.893 = san_dirname893 -dirName.894 = san_dirname894 -dirName.895 = san_dirname895 -dirName.896 = san_dirname896 -dirName.897 = san_dirname897 -dirName.898 = san_dirname898 -dirName.899 = san_dirname899 -dirName.900 = san_dirname900 -dirName.901 = san_dirname901 -dirName.902 = san_dirname902 -dirName.903 = san_dirname903 -dirName.904 = san_dirname904 -dirName.905 = san_dirname905 -dirName.906 = san_dirname906 -dirName.907 = san_dirname907 -dirName.908 = san_dirname908 -dirName.909 = san_dirname909 -dirName.910 = san_dirname910 -dirName.911 = san_dirname911 -dirName.912 = san_dirname912 -dirName.913 = san_dirname913 -dirName.914 = san_dirname914 -dirName.915 = san_dirname915 -dirName.916 = san_dirname916 -dirName.917 = san_dirname917 -dirName.918 = san_dirname918 -dirName.919 = san_dirname919 -dirName.920 = san_dirname920 -dirName.921 = san_dirname921 -dirName.922 = san_dirname922 -dirName.923 = san_dirname923 -dirName.924 = san_dirname924 -dirName.925 = san_dirname925 -dirName.926 = san_dirname926 -dirName.927 = san_dirname927 -dirName.928 = san_dirname928 -dirName.929 = san_dirname929 -dirName.930 = san_dirname930 -dirName.931 = san_dirname931 -dirName.932 = san_dirname932 -dirName.933 = san_dirname933 -dirName.934 = san_dirname934 -dirName.935 = san_dirname935 -dirName.936 = san_dirname936 -dirName.937 = san_dirname937 -dirName.938 = san_dirname938 -dirName.939 = san_dirname939 -dirName.940 = san_dirname940 -dirName.941 = san_dirname941 -dirName.942 = san_dirname942 -dirName.943 = san_dirname943 -dirName.944 = san_dirname944 -dirName.945 = san_dirname945 -dirName.946 = san_dirname946 -dirName.947 = san_dirname947 -dirName.948 = san_dirname948 -dirName.949 = san_dirname949 -dirName.950 = san_dirname950 -dirName.951 = san_dirname951 -dirName.952 = san_dirname952 -dirName.953 = san_dirname953 -dirName.954 = san_dirname954 -dirName.955 = san_dirname955 -dirName.956 = san_dirname956 -dirName.957 = san_dirname957 -dirName.958 = san_dirname958 -dirName.959 = san_dirname959 -dirName.960 = san_dirname960 -dirName.961 = san_dirname961 -dirName.962 = san_dirname962 -dirName.963 = san_dirname963 -dirName.964 = san_dirname964 -dirName.965 = san_dirname965 -dirName.966 = san_dirname966 -dirName.967 = san_dirname967 -dirName.968 = san_dirname968 -dirName.969 = san_dirname969 -dirName.970 = san_dirname970 -dirName.971 = san_dirname971 -dirName.972 = san_dirname972 -dirName.973 = san_dirname973 -dirName.974 = san_dirname974 -dirName.975 = san_dirname975 -dirName.976 = san_dirname976 -dirName.977 = san_dirname977 -dirName.978 = san_dirname978 -dirName.979 = san_dirname979 -dirName.980 = san_dirname980 -dirName.981 = san_dirname981 -dirName.982 = san_dirname982 -dirName.983 = san_dirname983 -dirName.984 = san_dirname984 -dirName.985 = san_dirname985 -dirName.986 = san_dirname986 -dirName.987 = san_dirname987 -dirName.988 = san_dirname988 -dirName.989 = san_dirname989 -dirName.990 = san_dirname990 -dirName.991 = san_dirname991 -dirName.992 = san_dirname992 -dirName.993 = san_dirname993 -dirName.994 = san_dirname994 -dirName.995 = san_dirname995 -dirName.996 = san_dirname996 -dirName.997 = san_dirname997 -dirName.998 = san_dirname998 -dirName.999 = san_dirname999 -dirName.1000 = san_dirname1000 -dirName.1001 = san_dirname1001 -dirName.1002 = san_dirname1002 -dirName.1003 = san_dirname1003 -dirName.1004 = san_dirname1004 -dirName.1005 = san_dirname1005 -dirName.1006 = san_dirname1006 -dirName.1007 = san_dirname1007 -dirName.1008 = san_dirname1008 -dirName.1009 = san_dirname1009 -dirName.1010 = san_dirname1010 -dirName.1011 = san_dirname1011 -dirName.1012 = san_dirname1012 -dirName.1013 = san_dirname1013 -dirName.1014 = san_dirname1014 -dirName.1015 = san_dirname1015 -dirName.1016 = san_dirname1016 -dirName.1017 = san_dirname1017 -dirName.1018 = san_dirname1018 -dirName.1019 = san_dirname1019 -dirName.1020 = san_dirname1020 -dirName.1021 = san_dirname1021 -dirName.1022 = san_dirname1022 -dirName.1023 = san_dirname1023 -dirName.1024 = san_dirname1024 - -[san_dirname1] -commonName = "t0 - -[san_dirname2] -commonName = "t1 - -[san_dirname3] -commonName = "t2 - -[san_dirname4] -commonName = "t3 - -[san_dirname5] -commonName = "t4 - -[san_dirname6] -commonName = "t5 - -[san_dirname7] -commonName = "t6 - -[san_dirname8] -commonName = "t7 - -[san_dirname9] -commonName = "t8 - -[san_dirname10] -commonName = "t9 - -[san_dirname11] -commonName = "t10 - -[san_dirname12] -commonName = "t11 - -[san_dirname13] -commonName = "t12 - -[san_dirname14] -commonName = "t13 - -[san_dirname15] -commonName = "t14 - -[san_dirname16] -commonName = "t15 - -[san_dirname17] -commonName = "t16 - -[san_dirname18] -commonName = "t17 - -[san_dirname19] -commonName = "t18 - -[san_dirname20] -commonName = "t19 - -[san_dirname21] -commonName = "t20 - -[san_dirname22] -commonName = "t21 - -[san_dirname23] -commonName = "t22 - -[san_dirname24] -commonName = "t23 - -[san_dirname25] -commonName = "t24 - -[san_dirname26] -commonName = "t25 - -[san_dirname27] -commonName = "t26 - -[san_dirname28] -commonName = "t27 - -[san_dirname29] -commonName = "t28 - -[san_dirname30] -commonName = "t29 - -[san_dirname31] -commonName = "t30 - -[san_dirname32] -commonName = "t31 - -[san_dirname33] -commonName = "t32 - -[san_dirname34] -commonName = "t33 - -[san_dirname35] -commonName = "t34 - -[san_dirname36] -commonName = "t35 - -[san_dirname37] -commonName = "t36 - -[san_dirname38] -commonName = "t37 - -[san_dirname39] -commonName = "t38 - -[san_dirname40] -commonName = "t39 - -[san_dirname41] -commonName = "t40 - -[san_dirname42] -commonName = "t41 - -[san_dirname43] -commonName = "t42 - -[san_dirname44] -commonName = "t43 - -[san_dirname45] -commonName = "t44 - -[san_dirname46] -commonName = "t45 - -[san_dirname47] -commonName = "t46 - -[san_dirname48] -commonName = "t47 - -[san_dirname49] -commonName = "t48 - -[san_dirname50] -commonName = "t49 - -[san_dirname51] -commonName = "t50 - -[san_dirname52] -commonName = "t51 - -[san_dirname53] -commonName = "t52 - -[san_dirname54] -commonName = "t53 - -[san_dirname55] -commonName = "t54 - -[san_dirname56] -commonName = "t55 - -[san_dirname57] -commonName = "t56 - -[san_dirname58] -commonName = "t57 - -[san_dirname59] -commonName = "t58 - -[san_dirname60] -commonName = "t59 - -[san_dirname61] -commonName = "t60 - -[san_dirname62] -commonName = "t61 - -[san_dirname63] -commonName = "t62 - -[san_dirname64] -commonName = "t63 - -[san_dirname65] -commonName = "t64 - -[san_dirname66] -commonName = "t65 - -[san_dirname67] -commonName = "t66 - -[san_dirname68] -commonName = "t67 - -[san_dirname69] -commonName = "t68 - -[san_dirname70] -commonName = "t69 - -[san_dirname71] -commonName = "t70 - -[san_dirname72] -commonName = "t71 - -[san_dirname73] -commonName = "t72 - -[san_dirname74] -commonName = "t73 - -[san_dirname75] -commonName = "t74 - -[san_dirname76] -commonName = "t75 - -[san_dirname77] -commonName = "t76 - -[san_dirname78] -commonName = "t77 - -[san_dirname79] -commonName = "t78 - -[san_dirname80] -commonName = "t79 - -[san_dirname81] -commonName = "t80 - -[san_dirname82] -commonName = "t81 - -[san_dirname83] -commonName = "t82 - -[san_dirname84] -commonName = "t83 - -[san_dirname85] -commonName = "t84 - -[san_dirname86] -commonName = "t85 - -[san_dirname87] -commonName = "t86 - -[san_dirname88] -commonName = "t87 - -[san_dirname89] -commonName = "t88 - -[san_dirname90] -commonName = "t89 - -[san_dirname91] -commonName = "t90 - -[san_dirname92] -commonName = "t91 - -[san_dirname93] -commonName = "t92 - -[san_dirname94] -commonName = "t93 - -[san_dirname95] -commonName = "t94 - -[san_dirname96] -commonName = "t95 - -[san_dirname97] -commonName = "t96 - -[san_dirname98] -commonName = "t97 - -[san_dirname99] -commonName = "t98 - -[san_dirname100] -commonName = "t99 - -[san_dirname101] -commonName = "t100 - -[san_dirname102] -commonName = "t101 - -[san_dirname103] -commonName = "t102 - -[san_dirname104] -commonName = "t103 - -[san_dirname105] -commonName = "t104 - -[san_dirname106] -commonName = "t105 - -[san_dirname107] -commonName = "t106 - -[san_dirname108] -commonName = "t107 - -[san_dirname109] -commonName = "t108 - -[san_dirname110] -commonName = "t109 - -[san_dirname111] -commonName = "t110 - -[san_dirname112] -commonName = "t111 - -[san_dirname113] -commonName = "t112 - -[san_dirname114] -commonName = "t113 - -[san_dirname115] -commonName = "t114 - -[san_dirname116] -commonName = "t115 - -[san_dirname117] -commonName = "t116 - -[san_dirname118] -commonName = "t117 - -[san_dirname119] -commonName = "t118 - -[san_dirname120] -commonName = "t119 - -[san_dirname121] -commonName = "t120 - -[san_dirname122] -commonName = "t121 - -[san_dirname123] -commonName = "t122 - -[san_dirname124] -commonName = "t123 - -[san_dirname125] -commonName = "t124 - -[san_dirname126] -commonName = "t125 - -[san_dirname127] -commonName = "t126 - -[san_dirname128] -commonName = "t127 - -[san_dirname129] -commonName = "t128 - -[san_dirname130] -commonName = "t129 - -[san_dirname131] -commonName = "t130 - -[san_dirname132] -commonName = "t131 - -[san_dirname133] -commonName = "t132 - -[san_dirname134] -commonName = "t133 - -[san_dirname135] -commonName = "t134 - -[san_dirname136] -commonName = "t135 - -[san_dirname137] -commonName = "t136 - -[san_dirname138] -commonName = "t137 - -[san_dirname139] -commonName = "t138 - -[san_dirname140] -commonName = "t139 - -[san_dirname141] -commonName = "t140 - -[san_dirname142] -commonName = "t141 - -[san_dirname143] -commonName = "t142 - -[san_dirname144] -commonName = "t143 - -[san_dirname145] -commonName = "t144 - -[san_dirname146] -commonName = "t145 - -[san_dirname147] -commonName = "t146 - -[san_dirname148] -commonName = "t147 - -[san_dirname149] -commonName = "t148 - -[san_dirname150] -commonName = "t149 - -[san_dirname151] -commonName = "t150 - -[san_dirname152] -commonName = "t151 - -[san_dirname153] -commonName = "t152 - -[san_dirname154] -commonName = "t153 - -[san_dirname155] -commonName = "t154 - -[san_dirname156] -commonName = "t155 - -[san_dirname157] -commonName = "t156 - -[san_dirname158] -commonName = "t157 - -[san_dirname159] -commonName = "t158 - -[san_dirname160] -commonName = "t159 - -[san_dirname161] -commonName = "t160 - -[san_dirname162] -commonName = "t161 - -[san_dirname163] -commonName = "t162 - -[san_dirname164] -commonName = "t163 - -[san_dirname165] -commonName = "t164 - -[san_dirname166] -commonName = "t165 - -[san_dirname167] -commonName = "t166 - -[san_dirname168] -commonName = "t167 - -[san_dirname169] -commonName = "t168 - -[san_dirname170] -commonName = "t169 - -[san_dirname171] -commonName = "t170 - -[san_dirname172] -commonName = "t171 - -[san_dirname173] -commonName = "t172 - -[san_dirname174] -commonName = "t173 - -[san_dirname175] -commonName = "t174 - -[san_dirname176] -commonName = "t175 - -[san_dirname177] -commonName = "t176 - -[san_dirname178] -commonName = "t177 - -[san_dirname179] -commonName = "t178 - -[san_dirname180] -commonName = "t179 - -[san_dirname181] -commonName = "t180 - -[san_dirname182] -commonName = "t181 - -[san_dirname183] -commonName = "t182 - -[san_dirname184] -commonName = "t183 - -[san_dirname185] -commonName = "t184 - -[san_dirname186] -commonName = "t185 - -[san_dirname187] -commonName = "t186 - -[san_dirname188] -commonName = "t187 - -[san_dirname189] -commonName = "t188 - -[san_dirname190] -commonName = "t189 - -[san_dirname191] -commonName = "t190 - -[san_dirname192] -commonName = "t191 - -[san_dirname193] -commonName = "t192 - -[san_dirname194] -commonName = "t193 - -[san_dirname195] -commonName = "t194 - -[san_dirname196] -commonName = "t195 - -[san_dirname197] -commonName = "t196 - -[san_dirname198] -commonName = "t197 - -[san_dirname199] -commonName = "t198 - -[san_dirname200] -commonName = "t199 - -[san_dirname201] -commonName = "t200 - -[san_dirname202] -commonName = "t201 - -[san_dirname203] -commonName = "t202 - -[san_dirname204] -commonName = "t203 - -[san_dirname205] -commonName = "t204 - -[san_dirname206] -commonName = "t205 - -[san_dirname207] -commonName = "t206 - -[san_dirname208] -commonName = "t207 - -[san_dirname209] -commonName = "t208 - -[san_dirname210] -commonName = "t209 - -[san_dirname211] -commonName = "t210 - -[san_dirname212] -commonName = "t211 - -[san_dirname213] -commonName = "t212 - -[san_dirname214] -commonName = "t213 - -[san_dirname215] -commonName = "t214 - -[san_dirname216] -commonName = "t215 - -[san_dirname217] -commonName = "t216 - -[san_dirname218] -commonName = "t217 - -[san_dirname219] -commonName = "t218 - -[san_dirname220] -commonName = "t219 - -[san_dirname221] -commonName = "t220 - -[san_dirname222] -commonName = "t221 - -[san_dirname223] -commonName = "t222 - -[san_dirname224] -commonName = "t223 - -[san_dirname225] -commonName = "t224 - -[san_dirname226] -commonName = "t225 - -[san_dirname227] -commonName = "t226 - -[san_dirname228] -commonName = "t227 - -[san_dirname229] -commonName = "t228 - -[san_dirname230] -commonName = "t229 - -[san_dirname231] -commonName = "t230 - -[san_dirname232] -commonName = "t231 - -[san_dirname233] -commonName = "t232 - -[san_dirname234] -commonName = "t233 - -[san_dirname235] -commonName = "t234 - -[san_dirname236] -commonName = "t235 - -[san_dirname237] -commonName = "t236 - -[san_dirname238] -commonName = "t237 - -[san_dirname239] -commonName = "t238 - -[san_dirname240] -commonName = "t239 - -[san_dirname241] -commonName = "t240 - -[san_dirname242] -commonName = "t241 - -[san_dirname243] -commonName = "t242 - -[san_dirname244] -commonName = "t243 - -[san_dirname245] -commonName = "t244 - -[san_dirname246] -commonName = "t245 - -[san_dirname247] -commonName = "t246 - -[san_dirname248] -commonName = "t247 - -[san_dirname249] -commonName = "t248 - -[san_dirname250] -commonName = "t249 - -[san_dirname251] -commonName = "t250 - -[san_dirname252] -commonName = "t251 - -[san_dirname253] -commonName = "t252 - -[san_dirname254] -commonName = "t253 - -[san_dirname255] -commonName = "t254 - -[san_dirname256] -commonName = "t255 - -[san_dirname257] -commonName = "t256 - -[san_dirname258] -commonName = "t257 - -[san_dirname259] -commonName = "t258 - -[san_dirname260] -commonName = "t259 - -[san_dirname261] -commonName = "t260 - -[san_dirname262] -commonName = "t261 - -[san_dirname263] -commonName = "t262 - -[san_dirname264] -commonName = "t263 - -[san_dirname265] -commonName = "t264 - -[san_dirname266] -commonName = "t265 - -[san_dirname267] -commonName = "t266 - -[san_dirname268] -commonName = "t267 - -[san_dirname269] -commonName = "t268 - -[san_dirname270] -commonName = "t269 - -[san_dirname271] -commonName = "t270 - -[san_dirname272] -commonName = "t271 - -[san_dirname273] -commonName = "t272 - -[san_dirname274] -commonName = "t273 - -[san_dirname275] -commonName = "t274 - -[san_dirname276] -commonName = "t275 - -[san_dirname277] -commonName = "t276 - -[san_dirname278] -commonName = "t277 - -[san_dirname279] -commonName = "t278 - -[san_dirname280] -commonName = "t279 - -[san_dirname281] -commonName = "t280 - -[san_dirname282] -commonName = "t281 - -[san_dirname283] -commonName = "t282 - -[san_dirname284] -commonName = "t283 - -[san_dirname285] -commonName = "t284 - -[san_dirname286] -commonName = "t285 - -[san_dirname287] -commonName = "t286 - -[san_dirname288] -commonName = "t287 - -[san_dirname289] -commonName = "t288 - -[san_dirname290] -commonName = "t289 - -[san_dirname291] -commonName = "t290 - -[san_dirname292] -commonName = "t291 - -[san_dirname293] -commonName = "t292 - -[san_dirname294] -commonName = "t293 - -[san_dirname295] -commonName = "t294 - -[san_dirname296] -commonName = "t295 - -[san_dirname297] -commonName = "t296 - -[san_dirname298] -commonName = "t297 - -[san_dirname299] -commonName = "t298 - -[san_dirname300] -commonName = "t299 - -[san_dirname301] -commonName = "t300 - -[san_dirname302] -commonName = "t301 - -[san_dirname303] -commonName = "t302 - -[san_dirname304] -commonName = "t303 - -[san_dirname305] -commonName = "t304 - -[san_dirname306] -commonName = "t305 - -[san_dirname307] -commonName = "t306 - -[san_dirname308] -commonName = "t307 - -[san_dirname309] -commonName = "t308 - -[san_dirname310] -commonName = "t309 - -[san_dirname311] -commonName = "t310 - -[san_dirname312] -commonName = "t311 - -[san_dirname313] -commonName = "t312 - -[san_dirname314] -commonName = "t313 - -[san_dirname315] -commonName = "t314 - -[san_dirname316] -commonName = "t315 - -[san_dirname317] -commonName = "t316 - -[san_dirname318] -commonName = "t317 - -[san_dirname319] -commonName = "t318 - -[san_dirname320] -commonName = "t319 - -[san_dirname321] -commonName = "t320 - -[san_dirname322] -commonName = "t321 - -[san_dirname323] -commonName = "t322 - -[san_dirname324] -commonName = "t323 - -[san_dirname325] -commonName = "t324 - -[san_dirname326] -commonName = "t325 - -[san_dirname327] -commonName = "t326 - -[san_dirname328] -commonName = "t327 - -[san_dirname329] -commonName = "t328 - -[san_dirname330] -commonName = "t329 - -[san_dirname331] -commonName = "t330 - -[san_dirname332] -commonName = "t331 - -[san_dirname333] -commonName = "t332 - -[san_dirname334] -commonName = "t333 - -[san_dirname335] -commonName = "t334 - -[san_dirname336] -commonName = "t335 - -[san_dirname337] -commonName = "t336 - -[san_dirname338] -commonName = "t337 - -[san_dirname339] -commonName = "t338 - -[san_dirname340] -commonName = "t339 - -[san_dirname341] -commonName = "t340 - -[san_dirname342] -commonName = "t341 - -[san_dirname343] -commonName = "t342 - -[san_dirname344] -commonName = "t343 - -[san_dirname345] -commonName = "t344 - -[san_dirname346] -commonName = "t345 - -[san_dirname347] -commonName = "t346 - -[san_dirname348] -commonName = "t347 - -[san_dirname349] -commonName = "t348 - -[san_dirname350] -commonName = "t349 - -[san_dirname351] -commonName = "t350 - -[san_dirname352] -commonName = "t351 - -[san_dirname353] -commonName = "t352 - -[san_dirname354] -commonName = "t353 - -[san_dirname355] -commonName = "t354 - -[san_dirname356] -commonName = "t355 - -[san_dirname357] -commonName = "t356 - -[san_dirname358] -commonName = "t357 - -[san_dirname359] -commonName = "t358 - -[san_dirname360] -commonName = "t359 - -[san_dirname361] -commonName = "t360 - -[san_dirname362] -commonName = "t361 - -[san_dirname363] -commonName = "t362 - -[san_dirname364] -commonName = "t363 - -[san_dirname365] -commonName = "t364 - -[san_dirname366] -commonName = "t365 - -[san_dirname367] -commonName = "t366 - -[san_dirname368] -commonName = "t367 - -[san_dirname369] -commonName = "t368 - -[san_dirname370] -commonName = "t369 - -[san_dirname371] -commonName = "t370 - -[san_dirname372] -commonName = "t371 - -[san_dirname373] -commonName = "t372 - -[san_dirname374] -commonName = "t373 - -[san_dirname375] -commonName = "t374 - -[san_dirname376] -commonName = "t375 - -[san_dirname377] -commonName = "t376 - -[san_dirname378] -commonName = "t377 - -[san_dirname379] -commonName = "t378 - -[san_dirname380] -commonName = "t379 - -[san_dirname381] -commonName = "t380 - -[san_dirname382] -commonName = "t381 - -[san_dirname383] -commonName = "t382 - -[san_dirname384] -commonName = "t383 - -[san_dirname385] -commonName = "t384 - -[san_dirname386] -commonName = "t385 - -[san_dirname387] -commonName = "t386 - -[san_dirname388] -commonName = "t387 - -[san_dirname389] -commonName = "t388 - -[san_dirname390] -commonName = "t389 - -[san_dirname391] -commonName = "t390 - -[san_dirname392] -commonName = "t391 - -[san_dirname393] -commonName = "t392 - -[san_dirname394] -commonName = "t393 - -[san_dirname395] -commonName = "t394 - -[san_dirname396] -commonName = "t395 - -[san_dirname397] -commonName = "t396 - -[san_dirname398] -commonName = "t397 - -[san_dirname399] -commonName = "t398 - -[san_dirname400] -commonName = "t399 - -[san_dirname401] -commonName = "t400 - -[san_dirname402] -commonName = "t401 - -[san_dirname403] -commonName = "t402 - -[san_dirname404] -commonName = "t403 - -[san_dirname405] -commonName = "t404 - -[san_dirname406] -commonName = "t405 - -[san_dirname407] -commonName = "t406 - -[san_dirname408] -commonName = "t407 - -[san_dirname409] -commonName = "t408 - -[san_dirname410] -commonName = "t409 - -[san_dirname411] -commonName = "t410 - -[san_dirname412] -commonName = "t411 - -[san_dirname413] -commonName = "t412 - -[san_dirname414] -commonName = "t413 - -[san_dirname415] -commonName = "t414 - -[san_dirname416] -commonName = "t415 - -[san_dirname417] -commonName = "t416 - -[san_dirname418] -commonName = "t417 - -[san_dirname419] -commonName = "t418 - -[san_dirname420] -commonName = "t419 - -[san_dirname421] -commonName = "t420 - -[san_dirname422] -commonName = "t421 - -[san_dirname423] -commonName = "t422 - -[san_dirname424] -commonName = "t423 - -[san_dirname425] -commonName = "t424 - -[san_dirname426] -commonName = "t425 - -[san_dirname427] -commonName = "t426 - -[san_dirname428] -commonName = "t427 - -[san_dirname429] -commonName = "t428 - -[san_dirname430] -commonName = "t429 - -[san_dirname431] -commonName = "t430 - -[san_dirname432] -commonName = "t431 - -[san_dirname433] -commonName = "t432 - -[san_dirname434] -commonName = "t433 - -[san_dirname435] -commonName = "t434 - -[san_dirname436] -commonName = "t435 - -[san_dirname437] -commonName = "t436 - -[san_dirname438] -commonName = "t437 - -[san_dirname439] -commonName = "t438 - -[san_dirname440] -commonName = "t439 - -[san_dirname441] -commonName = "t440 - -[san_dirname442] -commonName = "t441 - -[san_dirname443] -commonName = "t442 - -[san_dirname444] -commonName = "t443 - -[san_dirname445] -commonName = "t444 - -[san_dirname446] -commonName = "t445 - -[san_dirname447] -commonName = "t446 - -[san_dirname448] -commonName = "t447 - -[san_dirname449] -commonName = "t448 - -[san_dirname450] -commonName = "t449 - -[san_dirname451] -commonName = "t450 - -[san_dirname452] -commonName = "t451 - -[san_dirname453] -commonName = "t452 - -[san_dirname454] -commonName = "t453 - -[san_dirname455] -commonName = "t454 - -[san_dirname456] -commonName = "t455 - -[san_dirname457] -commonName = "t456 - -[san_dirname458] -commonName = "t457 - -[san_dirname459] -commonName = "t458 - -[san_dirname460] -commonName = "t459 - -[san_dirname461] -commonName = "t460 - -[san_dirname462] -commonName = "t461 - -[san_dirname463] -commonName = "t462 - -[san_dirname464] -commonName = "t463 - -[san_dirname465] -commonName = "t464 - -[san_dirname466] -commonName = "t465 - -[san_dirname467] -commonName = "t466 - -[san_dirname468] -commonName = "t467 - -[san_dirname469] -commonName = "t468 - -[san_dirname470] -commonName = "t469 - -[san_dirname471] -commonName = "t470 - -[san_dirname472] -commonName = "t471 - -[san_dirname473] -commonName = "t472 - -[san_dirname474] -commonName = "t473 - -[san_dirname475] -commonName = "t474 - -[san_dirname476] -commonName = "t475 - -[san_dirname477] -commonName = "t476 - -[san_dirname478] -commonName = "t477 - -[san_dirname479] -commonName = "t478 - -[san_dirname480] -commonName = "t479 - -[san_dirname481] -commonName = "t480 - -[san_dirname482] -commonName = "t481 - -[san_dirname483] -commonName = "t482 - -[san_dirname484] -commonName = "t483 - -[san_dirname485] -commonName = "t484 - -[san_dirname486] -commonName = "t485 - -[san_dirname487] -commonName = "t486 - -[san_dirname488] -commonName = "t487 - -[san_dirname489] -commonName = "t488 - -[san_dirname490] -commonName = "t489 - -[san_dirname491] -commonName = "t490 - -[san_dirname492] -commonName = "t491 - -[san_dirname493] -commonName = "t492 - -[san_dirname494] -commonName = "t493 - -[san_dirname495] -commonName = "t494 - -[san_dirname496] -commonName = "t495 - -[san_dirname497] -commonName = "t496 - -[san_dirname498] -commonName = "t497 - -[san_dirname499] -commonName = "t498 - -[san_dirname500] -commonName = "t499 - -[san_dirname501] -commonName = "t500 - -[san_dirname502] -commonName = "t501 - -[san_dirname503] -commonName = "t502 - -[san_dirname504] -commonName = "t503 - -[san_dirname505] -commonName = "t504 - -[san_dirname506] -commonName = "t505 - -[san_dirname507] -commonName = "t506 - -[san_dirname508] -commonName = "t507 - -[san_dirname509] -commonName = "t508 - -[san_dirname510] -commonName = "t509 - -[san_dirname511] -commonName = "t510 - -[san_dirname512] -commonName = "t511 - -[san_dirname513] -commonName = "t512 - -[san_dirname514] -commonName = "t513 - -[san_dirname515] -commonName = "t514 - -[san_dirname516] -commonName = "t515 - -[san_dirname517] -commonName = "t516 - -[san_dirname518] -commonName = "t517 - -[san_dirname519] -commonName = "t518 - -[san_dirname520] -commonName = "t519 - -[san_dirname521] -commonName = "t520 - -[san_dirname522] -commonName = "t521 - -[san_dirname523] -commonName = "t522 - -[san_dirname524] -commonName = "t523 - -[san_dirname525] -commonName = "t524 - -[san_dirname526] -commonName = "t525 - -[san_dirname527] -commonName = "t526 - -[san_dirname528] -commonName = "t527 - -[san_dirname529] -commonName = "t528 - -[san_dirname530] -commonName = "t529 - -[san_dirname531] -commonName = "t530 - -[san_dirname532] -commonName = "t531 - -[san_dirname533] -commonName = "t532 - -[san_dirname534] -commonName = "t533 - -[san_dirname535] -commonName = "t534 - -[san_dirname536] -commonName = "t535 - -[san_dirname537] -commonName = "t536 - -[san_dirname538] -commonName = "t537 - -[san_dirname539] -commonName = "t538 - -[san_dirname540] -commonName = "t539 - -[san_dirname541] -commonName = "t540 - -[san_dirname542] -commonName = "t541 - -[san_dirname543] -commonName = "t542 - -[san_dirname544] -commonName = "t543 - -[san_dirname545] -commonName = "t544 - -[san_dirname546] -commonName = "t545 - -[san_dirname547] -commonName = "t546 - -[san_dirname548] -commonName = "t547 - -[san_dirname549] -commonName = "t548 - -[san_dirname550] -commonName = "t549 - -[san_dirname551] -commonName = "t550 - -[san_dirname552] -commonName = "t551 - -[san_dirname553] -commonName = "t552 - -[san_dirname554] -commonName = "t553 - -[san_dirname555] -commonName = "t554 - -[san_dirname556] -commonName = "t555 - -[san_dirname557] -commonName = "t556 - -[san_dirname558] -commonName = "t557 - -[san_dirname559] -commonName = "t558 - -[san_dirname560] -commonName = "t559 - -[san_dirname561] -commonName = "t560 - -[san_dirname562] -commonName = "t561 - -[san_dirname563] -commonName = "t562 - -[san_dirname564] -commonName = "t563 - -[san_dirname565] -commonName = "t564 - -[san_dirname566] -commonName = "t565 - -[san_dirname567] -commonName = "t566 - -[san_dirname568] -commonName = "t567 - -[san_dirname569] -commonName = "t568 - -[san_dirname570] -commonName = "t569 - -[san_dirname571] -commonName = "t570 - -[san_dirname572] -commonName = "t571 - -[san_dirname573] -commonName = "t572 - -[san_dirname574] -commonName = "t573 - -[san_dirname575] -commonName = "t574 - -[san_dirname576] -commonName = "t575 - -[san_dirname577] -commonName = "t576 - -[san_dirname578] -commonName = "t577 - -[san_dirname579] -commonName = "t578 - -[san_dirname580] -commonName = "t579 - -[san_dirname581] -commonName = "t580 - -[san_dirname582] -commonName = "t581 - -[san_dirname583] -commonName = "t582 - -[san_dirname584] -commonName = "t583 - -[san_dirname585] -commonName = "t584 - -[san_dirname586] -commonName = "t585 - -[san_dirname587] -commonName = "t586 - -[san_dirname588] -commonName = "t587 - -[san_dirname589] -commonName = "t588 - -[san_dirname590] -commonName = "t589 - -[san_dirname591] -commonName = "t590 - -[san_dirname592] -commonName = "t591 - -[san_dirname593] -commonName = "t592 - -[san_dirname594] -commonName = "t593 - -[san_dirname595] -commonName = "t594 - -[san_dirname596] -commonName = "t595 - -[san_dirname597] -commonName = "t596 - -[san_dirname598] -commonName = "t597 - -[san_dirname599] -commonName = "t598 - -[san_dirname600] -commonName = "t599 - -[san_dirname601] -commonName = "t600 - -[san_dirname602] -commonName = "t601 - -[san_dirname603] -commonName = "t602 - -[san_dirname604] -commonName = "t603 - -[san_dirname605] -commonName = "t604 - -[san_dirname606] -commonName = "t605 - -[san_dirname607] -commonName = "t606 - -[san_dirname608] -commonName = "t607 - -[san_dirname609] -commonName = "t608 - -[san_dirname610] -commonName = "t609 - -[san_dirname611] -commonName = "t610 - -[san_dirname612] -commonName = "t611 - -[san_dirname613] -commonName = "t612 - -[san_dirname614] -commonName = "t613 - -[san_dirname615] -commonName = "t614 - -[san_dirname616] -commonName = "t615 - -[san_dirname617] -commonName = "t616 - -[san_dirname618] -commonName = "t617 - -[san_dirname619] -commonName = "t618 - -[san_dirname620] -commonName = "t619 - -[san_dirname621] -commonName = "t620 - -[san_dirname622] -commonName = "t621 - -[san_dirname623] -commonName = "t622 - -[san_dirname624] -commonName = "t623 - -[san_dirname625] -commonName = "t624 - -[san_dirname626] -commonName = "t625 - -[san_dirname627] -commonName = "t626 - -[san_dirname628] -commonName = "t627 - -[san_dirname629] -commonName = "t628 - -[san_dirname630] -commonName = "t629 - -[san_dirname631] -commonName = "t630 - -[san_dirname632] -commonName = "t631 - -[san_dirname633] -commonName = "t632 - -[san_dirname634] -commonName = "t633 - -[san_dirname635] -commonName = "t634 - -[san_dirname636] -commonName = "t635 - -[san_dirname637] -commonName = "t636 - -[san_dirname638] -commonName = "t637 - -[san_dirname639] -commonName = "t638 - -[san_dirname640] -commonName = "t639 - -[san_dirname641] -commonName = "t640 - -[san_dirname642] -commonName = "t641 - -[san_dirname643] -commonName = "t642 - -[san_dirname644] -commonName = "t643 - -[san_dirname645] -commonName = "t644 - -[san_dirname646] -commonName = "t645 - -[san_dirname647] -commonName = "t646 - -[san_dirname648] -commonName = "t647 - -[san_dirname649] -commonName = "t648 - -[san_dirname650] -commonName = "t649 - -[san_dirname651] -commonName = "t650 - -[san_dirname652] -commonName = "t651 - -[san_dirname653] -commonName = "t652 - -[san_dirname654] -commonName = "t653 - -[san_dirname655] -commonName = "t654 - -[san_dirname656] -commonName = "t655 - -[san_dirname657] -commonName = "t656 - -[san_dirname658] -commonName = "t657 - -[san_dirname659] -commonName = "t658 - -[san_dirname660] -commonName = "t659 - -[san_dirname661] -commonName = "t660 - -[san_dirname662] -commonName = "t661 - -[san_dirname663] -commonName = "t662 - -[san_dirname664] -commonName = "t663 - -[san_dirname665] -commonName = "t664 - -[san_dirname666] -commonName = "t665 - -[san_dirname667] -commonName = "t666 - -[san_dirname668] -commonName = "t667 - -[san_dirname669] -commonName = "t668 - -[san_dirname670] -commonName = "t669 - -[san_dirname671] -commonName = "t670 - -[san_dirname672] -commonName = "t671 - -[san_dirname673] -commonName = "t672 - -[san_dirname674] -commonName = "t673 - -[san_dirname675] -commonName = "t674 - -[san_dirname676] -commonName = "t675 - -[san_dirname677] -commonName = "t676 - -[san_dirname678] -commonName = "t677 - -[san_dirname679] -commonName = "t678 - -[san_dirname680] -commonName = "t679 - -[san_dirname681] -commonName = "t680 - -[san_dirname682] -commonName = "t681 - -[san_dirname683] -commonName = "t682 - -[san_dirname684] -commonName = "t683 - -[san_dirname685] -commonName = "t684 - -[san_dirname686] -commonName = "t685 - -[san_dirname687] -commonName = "t686 - -[san_dirname688] -commonName = "t687 - -[san_dirname689] -commonName = "t688 - -[san_dirname690] -commonName = "t689 - -[san_dirname691] -commonName = "t690 - -[san_dirname692] -commonName = "t691 - -[san_dirname693] -commonName = "t692 - -[san_dirname694] -commonName = "t693 - -[san_dirname695] -commonName = "t694 - -[san_dirname696] -commonName = "t695 - -[san_dirname697] -commonName = "t696 - -[san_dirname698] -commonName = "t697 - -[san_dirname699] -commonName = "t698 - -[san_dirname700] -commonName = "t699 - -[san_dirname701] -commonName = "t700 - -[san_dirname702] -commonName = "t701 - -[san_dirname703] -commonName = "t702 - -[san_dirname704] -commonName = "t703 - -[san_dirname705] -commonName = "t704 - -[san_dirname706] -commonName = "t705 - -[san_dirname707] -commonName = "t706 - -[san_dirname708] -commonName = "t707 - -[san_dirname709] -commonName = "t708 - -[san_dirname710] -commonName = "t709 - -[san_dirname711] -commonName = "t710 - -[san_dirname712] -commonName = "t711 - -[san_dirname713] -commonName = "t712 - -[san_dirname714] -commonName = "t713 - -[san_dirname715] -commonName = "t714 - -[san_dirname716] -commonName = "t715 - -[san_dirname717] -commonName = "t716 - -[san_dirname718] -commonName = "t717 - -[san_dirname719] -commonName = "t718 - -[san_dirname720] -commonName = "t719 - -[san_dirname721] -commonName = "t720 - -[san_dirname722] -commonName = "t721 - -[san_dirname723] -commonName = "t722 - -[san_dirname724] -commonName = "t723 - -[san_dirname725] -commonName = "t724 - -[san_dirname726] -commonName = "t725 - -[san_dirname727] -commonName = "t726 - -[san_dirname728] -commonName = "t727 - -[san_dirname729] -commonName = "t728 - -[san_dirname730] -commonName = "t729 - -[san_dirname731] -commonName = "t730 - -[san_dirname732] -commonName = "t731 - -[san_dirname733] -commonName = "t732 - -[san_dirname734] -commonName = "t733 - -[san_dirname735] -commonName = "t734 - -[san_dirname736] -commonName = "t735 - -[san_dirname737] -commonName = "t736 - -[san_dirname738] -commonName = "t737 - -[san_dirname739] -commonName = "t738 - -[san_dirname740] -commonName = "t739 - -[san_dirname741] -commonName = "t740 - -[san_dirname742] -commonName = "t741 - -[san_dirname743] -commonName = "t742 - -[san_dirname744] -commonName = "t743 - -[san_dirname745] -commonName = "t744 - -[san_dirname746] -commonName = "t745 - -[san_dirname747] -commonName = "t746 - -[san_dirname748] -commonName = "t747 - -[san_dirname749] -commonName = "t748 - -[san_dirname750] -commonName = "t749 - -[san_dirname751] -commonName = "t750 - -[san_dirname752] -commonName = "t751 - -[san_dirname753] -commonName = "t752 - -[san_dirname754] -commonName = "t753 - -[san_dirname755] -commonName = "t754 - -[san_dirname756] -commonName = "t755 - -[san_dirname757] -commonName = "t756 - -[san_dirname758] -commonName = "t757 - -[san_dirname759] -commonName = "t758 - -[san_dirname760] -commonName = "t759 - -[san_dirname761] -commonName = "t760 - -[san_dirname762] -commonName = "t761 - -[san_dirname763] -commonName = "t762 - -[san_dirname764] -commonName = "t763 - -[san_dirname765] -commonName = "t764 - -[san_dirname766] -commonName = "t765 - -[san_dirname767] -commonName = "t766 - -[san_dirname768] -commonName = "t767 - -[san_dirname769] -commonName = "t768 - -[san_dirname770] -commonName = "t769 - -[san_dirname771] -commonName = "t770 - -[san_dirname772] -commonName = "t771 - -[san_dirname773] -commonName = "t772 - -[san_dirname774] -commonName = "t773 - -[san_dirname775] -commonName = "t774 - -[san_dirname776] -commonName = "t775 - -[san_dirname777] -commonName = "t776 - -[san_dirname778] -commonName = "t777 - -[san_dirname779] -commonName = "t778 - -[san_dirname780] -commonName = "t779 - -[san_dirname781] -commonName = "t780 - -[san_dirname782] -commonName = "t781 - -[san_dirname783] -commonName = "t782 - -[san_dirname784] -commonName = "t783 - -[san_dirname785] -commonName = "t784 - -[san_dirname786] -commonName = "t785 - -[san_dirname787] -commonName = "t786 - -[san_dirname788] -commonName = "t787 - -[san_dirname789] -commonName = "t788 - -[san_dirname790] -commonName = "t789 - -[san_dirname791] -commonName = "t790 - -[san_dirname792] -commonName = "t791 - -[san_dirname793] -commonName = "t792 - -[san_dirname794] -commonName = "t793 - -[san_dirname795] -commonName = "t794 - -[san_dirname796] -commonName = "t795 - -[san_dirname797] -commonName = "t796 - -[san_dirname798] -commonName = "t797 - -[san_dirname799] -commonName = "t798 - -[san_dirname800] -commonName = "t799 - -[san_dirname801] -commonName = "t800 - -[san_dirname802] -commonName = "t801 - -[san_dirname803] -commonName = "t802 - -[san_dirname804] -commonName = "t803 - -[san_dirname805] -commonName = "t804 - -[san_dirname806] -commonName = "t805 - -[san_dirname807] -commonName = "t806 - -[san_dirname808] -commonName = "t807 - -[san_dirname809] -commonName = "t808 - -[san_dirname810] -commonName = "t809 - -[san_dirname811] -commonName = "t810 - -[san_dirname812] -commonName = "t811 - -[san_dirname813] -commonName = "t812 - -[san_dirname814] -commonName = "t813 - -[san_dirname815] -commonName = "t814 - -[san_dirname816] -commonName = "t815 - -[san_dirname817] -commonName = "t816 - -[san_dirname818] -commonName = "t817 - -[san_dirname819] -commonName = "t818 - -[san_dirname820] -commonName = "t819 - -[san_dirname821] -commonName = "t820 - -[san_dirname822] -commonName = "t821 - -[san_dirname823] -commonName = "t822 - -[san_dirname824] -commonName = "t823 - -[san_dirname825] -commonName = "t824 - -[san_dirname826] -commonName = "t825 - -[san_dirname827] -commonName = "t826 - -[san_dirname828] -commonName = "t827 - -[san_dirname829] -commonName = "t828 - -[san_dirname830] -commonName = "t829 - -[san_dirname831] -commonName = "t830 - -[san_dirname832] -commonName = "t831 - -[san_dirname833] -commonName = "t832 - -[san_dirname834] -commonName = "t833 - -[san_dirname835] -commonName = "t834 - -[san_dirname836] -commonName = "t835 - -[san_dirname837] -commonName = "t836 - -[san_dirname838] -commonName = "t837 - -[san_dirname839] -commonName = "t838 - -[san_dirname840] -commonName = "t839 - -[san_dirname841] -commonName = "t840 - -[san_dirname842] -commonName = "t841 - -[san_dirname843] -commonName = "t842 - -[san_dirname844] -commonName = "t843 - -[san_dirname845] -commonName = "t844 - -[san_dirname846] -commonName = "t845 - -[san_dirname847] -commonName = "t846 - -[san_dirname848] -commonName = "t847 - -[san_dirname849] -commonName = "t848 - -[san_dirname850] -commonName = "t849 - -[san_dirname851] -commonName = "t850 - -[san_dirname852] -commonName = "t851 - -[san_dirname853] -commonName = "t852 - -[san_dirname854] -commonName = "t853 - -[san_dirname855] -commonName = "t854 - -[san_dirname856] -commonName = "t855 - -[san_dirname857] -commonName = "t856 - -[san_dirname858] -commonName = "t857 - -[san_dirname859] -commonName = "t858 - -[san_dirname860] -commonName = "t859 - -[san_dirname861] -commonName = "t860 - -[san_dirname862] -commonName = "t861 - -[san_dirname863] -commonName = "t862 - -[san_dirname864] -commonName = "t863 - -[san_dirname865] -commonName = "t864 - -[san_dirname866] -commonName = "t865 - -[san_dirname867] -commonName = "t866 - -[san_dirname868] -commonName = "t867 - -[san_dirname869] -commonName = "t868 - -[san_dirname870] -commonName = "t869 - -[san_dirname871] -commonName = "t870 - -[san_dirname872] -commonName = "t871 - -[san_dirname873] -commonName = "t872 - -[san_dirname874] -commonName = "t873 - -[san_dirname875] -commonName = "t874 - -[san_dirname876] -commonName = "t875 - -[san_dirname877] -commonName = "t876 - -[san_dirname878] -commonName = "t877 - -[san_dirname879] -commonName = "t878 - -[san_dirname880] -commonName = "t879 - -[san_dirname881] -commonName = "t880 - -[san_dirname882] -commonName = "t881 - -[san_dirname883] -commonName = "t882 - -[san_dirname884] -commonName = "t883 - -[san_dirname885] -commonName = "t884 - -[san_dirname886] -commonName = "t885 - -[san_dirname887] -commonName = "t886 - -[san_dirname888] -commonName = "t887 - -[san_dirname889] -commonName = "t888 - -[san_dirname890] -commonName = "t889 - -[san_dirname891] -commonName = "t890 - -[san_dirname892] -commonName = "t891 - -[san_dirname893] -commonName = "t892 - -[san_dirname894] -commonName = "t893 - -[san_dirname895] -commonName = "t894 - -[san_dirname896] -commonName = "t895 - -[san_dirname897] -commonName = "t896 - -[san_dirname898] -commonName = "t897 - -[san_dirname899] -commonName = "t898 - -[san_dirname900] -commonName = "t899 - -[san_dirname901] -commonName = "t900 - -[san_dirname902] -commonName = "t901 - -[san_dirname903] -commonName = "t902 - -[san_dirname904] -commonName = "t903 - -[san_dirname905] -commonName = "t904 - -[san_dirname906] -commonName = "t905 - -[san_dirname907] -commonName = "t906 - -[san_dirname908] -commonName = "t907 - -[san_dirname909] -commonName = "t908 - -[san_dirname910] -commonName = "t909 - -[san_dirname911] -commonName = "t910 - -[san_dirname912] -commonName = "t911 - -[san_dirname913] -commonName = "t912 - -[san_dirname914] -commonName = "t913 - -[san_dirname915] -commonName = "t914 - -[san_dirname916] -commonName = "t915 - -[san_dirname917] -commonName = "t916 - -[san_dirname918] -commonName = "t917 - -[san_dirname919] -commonName = "t918 - -[san_dirname920] -commonName = "t919 - -[san_dirname921] -commonName = "t920 - -[san_dirname922] -commonName = "t921 - -[san_dirname923] -commonName = "t922 - -[san_dirname924] -commonName = "t923 - -[san_dirname925] -commonName = "t924 - -[san_dirname926] -commonName = "t925 - -[san_dirname927] -commonName = "t926 - -[san_dirname928] -commonName = "t927 - -[san_dirname929] -commonName = "t928 - -[san_dirname930] -commonName = "t929 - -[san_dirname931] -commonName = "t930 - -[san_dirname932] -commonName = "t931 - -[san_dirname933] -commonName = "t932 - -[san_dirname934] -commonName = "t933 - -[san_dirname935] -commonName = "t934 - -[san_dirname936] -commonName = "t935 - -[san_dirname937] -commonName = "t936 - -[san_dirname938] -commonName = "t937 - -[san_dirname939] -commonName = "t938 - -[san_dirname940] -commonName = "t939 - -[san_dirname941] -commonName = "t940 - -[san_dirname942] -commonName = "t941 - -[san_dirname943] -commonName = "t942 - -[san_dirname944] -commonName = "t943 - -[san_dirname945] -commonName = "t944 - -[san_dirname946] -commonName = "t945 - -[san_dirname947] -commonName = "t946 - -[san_dirname948] -commonName = "t947 - -[san_dirname949] -commonName = "t948 - -[san_dirname950] -commonName = "t949 - -[san_dirname951] -commonName = "t950 - -[san_dirname952] -commonName = "t951 - -[san_dirname953] -commonName = "t952 - -[san_dirname954] -commonName = "t953 - -[san_dirname955] -commonName = "t954 - -[san_dirname956] -commonName = "t955 - -[san_dirname957] -commonName = "t956 - -[san_dirname958] -commonName = "t957 - -[san_dirname959] -commonName = "t958 - -[san_dirname960] -commonName = "t959 - -[san_dirname961] -commonName = "t960 - -[san_dirname962] -commonName = "t961 - -[san_dirname963] -commonName = "t962 - -[san_dirname964] -commonName = "t963 - -[san_dirname965] -commonName = "t964 - -[san_dirname966] -commonName = "t965 - -[san_dirname967] -commonName = "t966 - -[san_dirname968] -commonName = "t967 - -[san_dirname969] -commonName = "t968 - -[san_dirname970] -commonName = "t969 - -[san_dirname971] -commonName = "t970 - -[san_dirname972] -commonName = "t971 - -[san_dirname973] -commonName = "t972 - -[san_dirname974] -commonName = "t973 - -[san_dirname975] -commonName = "t974 - -[san_dirname976] -commonName = "t975 - -[san_dirname977] -commonName = "t976 - -[san_dirname978] -commonName = "t977 - -[san_dirname979] -commonName = "t978 - -[san_dirname980] -commonName = "t979 - -[san_dirname981] -commonName = "t980 - -[san_dirname982] -commonName = "t981 - -[san_dirname983] -commonName = "t982 - -[san_dirname984] -commonName = "t983 - -[san_dirname985] -commonName = "t984 - -[san_dirname986] -commonName = "t985 - -[san_dirname987] -commonName = "t986 - -[san_dirname988] -commonName = "t987 - -[san_dirname989] -commonName = "t988 - -[san_dirname990] -commonName = "t989 - -[san_dirname991] -commonName = "t990 - -[san_dirname992] -commonName = "t991 - -[san_dirname993] -commonName = "t992 - -[san_dirname994] -commonName = "t993 - -[san_dirname995] -commonName = "t994 - -[san_dirname996] -commonName = "t995 - -[san_dirname997] -commonName = "t996 - -[san_dirname998] -commonName = "t997 - -[san_dirname999] -commonName = "t998 - -[san_dirname1000] -commonName = "t999 - -[san_dirname1001] -commonName = "t1000 - -[san_dirname1002] -commonName = "t1001 - -[san_dirname1003] -commonName = "t1002 - -[san_dirname1004] -commonName = "t1003 - -[san_dirname1005] -commonName = "t1004 - -[san_dirname1006] -commonName = "t1005 - -[san_dirname1007] -commonName = "t1006 - -[san_dirname1008] -commonName = "t1007 - -[san_dirname1009] -commonName = "t1008 - -[san_dirname1010] -commonName = "t1009 - -[san_dirname1011] -commonName = "t1010 - -[san_dirname1012] -commonName = "t1011 - -[san_dirname1013] -commonName = "t1012 - -[san_dirname1014] -commonName = "t1013 - -[san_dirname1015] -commonName = "t1014 - -[san_dirname1016] -commonName = "t1015 - -[san_dirname1017] -commonName = "t1016 - -[san_dirname1018] -commonName = "t1017 - -[san_dirname1019] -commonName = "t1018 - -[san_dirname1020] -commonName = "t1019 - -[san_dirname1021] -commonName = "t1020 - -[san_dirname1022] -commonName = "t1021 - -[san_dirname1023] -commonName = "t1022 - -[san_dirname1024] -commonName = "t1023 - diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.csr b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.csr deleted file mode 100644 index c8b892d0e0..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.csr +++ /dev/null @@ -1,421 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIJOdDCCTVwCAQAwDTELMAkGA1UEAwwCdDAwggEiMA0GCSqGSIb3DQEBAQUAA4IB -DwAwggEKAoIBAQDbLFMBzvkagzZSUSpbQmPeMnURan2woeR3R5tx5aYtZNeuWwTt -ej/H9sorK63NbIiljjb756IitX1UeenVelvKKylsDYQKEMQhtliYuw22DI1WWyyF -WQfKBkY2JRopjsQ5t8Mxzm5JwgHPsDsnQ4rj1QYfLZOd3XpFZW39tLHAEFlC8h6P -zkOslyXBfOJR4UQ1W5SqA27acS8lf1gwAeESFx7yqmwigLHJZep3lbMHxPdyODT+ -oEMzTGZtoeihBLxvFDk5RC44N3TJCiGFkSG3TrqwmUp2mHtYyhzTsEDD2Sp1++sZ -6uMamDFSl+l/pHshfy/cYoaP/f2oiOhLRFK9AgMBAAGggkwgMIJMHAYJKoZIhvcN -AQkOMYJMDTCCTAkwHQYDVR0OBBYEFDu0BcyqulE9/PL5HiVTcuE68prfMA4GA1Ud -DwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgku3BgNV -HREEgkuuMIJLqqQPMA0xCzAJBgNVBAMMAnQwpA8wDTELMAkGA1UEAwwCdDGkDzAN -MQswCQYDVQQDDAJ0MqQPMA0xCzAJBgNVBAMMAnQzpA8wDTELMAkGA1UEAwwCdDSk -DzANMQswCQYDVQQDDAJ0NaQPMA0xCzAJBgNVBAMMAnQ2pA8wDTELMAkGA1UEAwwC -dDekDzANMQswCQYDVQQDDAJ0OKQPMA0xCzAJBgNVBAMMAnQ5pBAwDjEMMAoGA1UE -AwwDdDEwpBAwDjEMMAoGA1UEAwwDdDExpBAwDjEMMAoGA1UEAwwDdDEypBAwDjEM -MAoGA1UEAwwDdDEzpBAwDjEMMAoGA1UEAwwDdDE0pBAwDjEMMAoGA1UEAwwDdDE1 -pBAwDjEMMAoGA1UEAwwDdDE2pBAwDjEMMAoGA1UEAwwDdDE3pBAwDjEMMAoGA1UE -AwwDdDE4pBAwDjEMMAoGA1UEAwwDdDE5pBAwDjEMMAoGA1UEAwwDdDIwpBAwDjEM -MAoGA1UEAwwDdDIxpBAwDjEMMAoGA1UEAwwDdDIypBAwDjEMMAoGA1UEAwwDdDIz -pBAwDjEMMAoGA1UEAwwDdDI0pBAwDjEMMAoGA1UEAwwDdDI1pBAwDjEMMAoGA1UE -AwwDdDI2pBAwDjEMMAoGA1UEAwwDdDI3pBAwDjEMMAoGA1UEAwwDdDI4pBAwDjEM -MAoGA1UEAwwDdDI5pBAwDjEMMAoGA1UEAwwDdDMwpBAwDjEMMAoGA1UEAwwDdDMx -pBAwDjEMMAoGA1UEAwwDdDMypBAwDjEMMAoGA1UEAwwDdDMzpBAwDjEMMAoGA1UE -AwwDdDM0pBAwDjEMMAoGA1UEAwwDdDM1pBAwDjEMMAoGA1UEAwwDdDM2pBAwDjEM -MAoGA1UEAwwDdDM3pBAwDjEMMAoGA1UEAwwDdDM4pBAwDjEMMAoGA1UEAwwDdDM5 -pBAwDjEMMAoGA1UEAwwDdDQwpBAwDjEMMAoGA1UEAwwDdDQxpBAwDjEMMAoGA1UE -AwwDdDQypBAwDjEMMAoGA1UEAwwDdDQzpBAwDjEMMAoGA1UEAwwDdDQ0pBAwDjEM -MAoGA1UEAwwDdDQ1pBAwDjEMMAoGA1UEAwwDdDQ2pBAwDjEMMAoGA1UEAwwDdDQ3 -pBAwDjEMMAoGA1UEAwwDdDQ4pBAwDjEMMAoGA1UEAwwDdDQ5pBAwDjEMMAoGA1UE -AwwDdDUwpBAwDjEMMAoGA1UEAwwDdDUxpBAwDjEMMAoGA1UEAwwDdDUypBAwDjEM -MAoGA1UEAwwDdDUzpBAwDjEMMAoGA1UEAwwDdDU0pBAwDjEMMAoGA1UEAwwDdDU1 -pBAwDjEMMAoGA1UEAwwDdDU2pBAwDjEMMAoGA1UEAwwDdDU3pBAwDjEMMAoGA1UE -AwwDdDU4pBAwDjEMMAoGA1UEAwwDdDU5pBAwDjEMMAoGA1UEAwwDdDYwpBAwDjEM -MAoGA1UEAwwDdDYxpBAwDjEMMAoGA1UEAwwDdDYypBAwDjEMMAoGA1UEAwwDdDYz -pBAwDjEMMAoGA1UEAwwDdDY0pBAwDjEMMAoGA1UEAwwDdDY1pBAwDjEMMAoGA1UE -AwwDdDY2pBAwDjEMMAoGA1UEAwwDdDY3pBAwDjEMMAoGA1UEAwwDdDY4pBAwDjEM -MAoGA1UEAwwDdDY5pBAwDjEMMAoGA1UEAwwDdDcwpBAwDjEMMAoGA1UEAwwDdDcx -pBAwDjEMMAoGA1UEAwwDdDcypBAwDjEMMAoGA1UEAwwDdDczpBAwDjEMMAoGA1UE -AwwDdDc0pBAwDjEMMAoGA1UEAwwDdDc1pBAwDjEMMAoGA1UEAwwDdDc2pBAwDjEM -MAoGA1UEAwwDdDc3pBAwDjEMMAoGA1UEAwwDdDc4pBAwDjEMMAoGA1UEAwwDdDc5 -pBAwDjEMMAoGA1UEAwwDdDgwpBAwDjEMMAoGA1UEAwwDdDgxpBAwDjEMMAoGA1UE -AwwDdDgypBAwDjEMMAoGA1UEAwwDdDgzpBAwDjEMMAoGA1UEAwwDdDg0pBAwDjEM -MAoGA1UEAwwDdDg1pBAwDjEMMAoGA1UEAwwDdDg2pBAwDjEMMAoGA1UEAwwDdDg3 -pBAwDjEMMAoGA1UEAwwDdDg4pBAwDjEMMAoGA1UEAwwDdDg5pBAwDjEMMAoGA1UE -AwwDdDkwpBAwDjEMMAoGA1UEAwwDdDkxpBAwDjEMMAoGA1UEAwwDdDkypBAwDjEM -MAoGA1UEAwwDdDkzpBAwDjEMMAoGA1UEAwwDdDk0pBAwDjEMMAoGA1UEAwwDdDk1 -pBAwDjEMMAoGA1UEAwwDdDk2pBAwDjEMMAoGA1UEAwwDdDk3pBAwDjEMMAoGA1UE -AwwDdDk4pBAwDjEMMAoGA1UEAwwDdDk5pBEwDzENMAsGA1UEAwwEdDEwMKQRMA8x -DTALBgNVBAMMBHQxMDGkETAPMQ0wCwYDVQQDDAR0MTAypBEwDzENMAsGA1UEAwwE -dDEwM6QRMA8xDTALBgNVBAMMBHQxMDSkETAPMQ0wCwYDVQQDDAR0MTA1pBEwDzEN -MAsGA1UEAwwEdDEwNqQRMA8xDTALBgNVBAMMBHQxMDekETAPMQ0wCwYDVQQDDAR0 -MTA4pBEwDzENMAsGA1UEAwwEdDEwOaQRMA8xDTALBgNVBAMMBHQxMTCkETAPMQ0w -CwYDVQQDDAR0MTExpBEwDzENMAsGA1UEAwwEdDExMqQRMA8xDTALBgNVBAMMBHQx -MTOkETAPMQ0wCwYDVQQDDAR0MTE0pBEwDzENMAsGA1UEAwwEdDExNaQRMA8xDTAL -BgNVBAMMBHQxMTakETAPMQ0wCwYDVQQDDAR0MTE3pBEwDzENMAsGA1UEAwwEdDEx -OKQRMA8xDTALBgNVBAMMBHQxMTmkETAPMQ0wCwYDVQQDDAR0MTIwpBEwDzENMAsG -A1UEAwwEdDEyMaQRMA8xDTALBgNVBAMMBHQxMjKkETAPMQ0wCwYDVQQDDAR0MTIz -pBEwDzENMAsGA1UEAwwEdDEyNKQRMA8xDTALBgNVBAMMBHQxMjWkETAPMQ0wCwYD -VQQDDAR0MTI2pBEwDzENMAsGA1UEAwwEdDEyN6QRMA8xDTALBgNVBAMMBHQxMjik -ETAPMQ0wCwYDVQQDDAR0MTI5pBEwDzENMAsGA1UEAwwEdDEzMKQRMA8xDTALBgNV -BAMMBHQxMzGkETAPMQ0wCwYDVQQDDAR0MTMypBEwDzENMAsGA1UEAwwEdDEzM6QR -MA8xDTALBgNVBAMMBHQxMzSkETAPMQ0wCwYDVQQDDAR0MTM1pBEwDzENMAsGA1UE -AwwEdDEzNqQRMA8xDTALBgNVBAMMBHQxMzekETAPMQ0wCwYDVQQDDAR0MTM4pBEw -DzENMAsGA1UEAwwEdDEzOaQRMA8xDTALBgNVBAMMBHQxNDCkETAPMQ0wCwYDVQQD -DAR0MTQxpBEwDzENMAsGA1UEAwwEdDE0MqQRMA8xDTALBgNVBAMMBHQxNDOkETAP -MQ0wCwYDVQQDDAR0MTQ0pBEwDzENMAsGA1UEAwwEdDE0NaQRMA8xDTALBgNVBAMM -BHQxNDakETAPMQ0wCwYDVQQDDAR0MTQ3pBEwDzENMAsGA1UEAwwEdDE0OKQRMA8x -DTALBgNVBAMMBHQxNDmkETAPMQ0wCwYDVQQDDAR0MTUwpBEwDzENMAsGA1UEAwwE -dDE1MaQRMA8xDTALBgNVBAMMBHQxNTKkETAPMQ0wCwYDVQQDDAR0MTUzpBEwDzEN -MAsGA1UEAwwEdDE1NKQRMA8xDTALBgNVBAMMBHQxNTWkETAPMQ0wCwYDVQQDDAR0 -MTU2pBEwDzENMAsGA1UEAwwEdDE1N6QRMA8xDTALBgNVBAMMBHQxNTikETAPMQ0w -CwYDVQQDDAR0MTU5pBEwDzENMAsGA1UEAwwEdDE2MKQRMA8xDTALBgNVBAMMBHQx -NjGkETAPMQ0wCwYDVQQDDAR0MTYypBEwDzENMAsGA1UEAwwEdDE2M6QRMA8xDTAL -BgNVBAMMBHQxNjSkETAPMQ0wCwYDVQQDDAR0MTY1pBEwDzENMAsGA1UEAwwEdDE2 -NqQRMA8xDTALBgNVBAMMBHQxNjekETAPMQ0wCwYDVQQDDAR0MTY4pBEwDzENMAsG -A1UEAwwEdDE2OaQRMA8xDTALBgNVBAMMBHQxNzCkETAPMQ0wCwYDVQQDDAR0MTcx -pBEwDzENMAsGA1UEAwwEdDE3MqQRMA8xDTALBgNVBAMMBHQxNzOkETAPMQ0wCwYD -VQQDDAR0MTc0pBEwDzENMAsGA1UEAwwEdDE3NaQRMA8xDTALBgNVBAMMBHQxNzak -ETAPMQ0wCwYDVQQDDAR0MTc3pBEwDzENMAsGA1UEAwwEdDE3OKQRMA8xDTALBgNV -BAMMBHQxNzmkETAPMQ0wCwYDVQQDDAR0MTgwpBEwDzENMAsGA1UEAwwEdDE4MaQR -MA8xDTALBgNVBAMMBHQxODKkETAPMQ0wCwYDVQQDDAR0MTgzpBEwDzENMAsGA1UE -AwwEdDE4NKQRMA8xDTALBgNVBAMMBHQxODWkETAPMQ0wCwYDVQQDDAR0MTg2pBEw -DzENMAsGA1UEAwwEdDE4N6QRMA8xDTALBgNVBAMMBHQxODikETAPMQ0wCwYDVQQD -DAR0MTg5pBEwDzENMAsGA1UEAwwEdDE5MKQRMA8xDTALBgNVBAMMBHQxOTGkETAP -MQ0wCwYDVQQDDAR0MTkypBEwDzENMAsGA1UEAwwEdDE5M6QRMA8xDTALBgNVBAMM -BHQxOTSkETAPMQ0wCwYDVQQDDAR0MTk1pBEwDzENMAsGA1UEAwwEdDE5NqQRMA8x -DTALBgNVBAMMBHQxOTekETAPMQ0wCwYDVQQDDAR0MTk4pBEwDzENMAsGA1UEAwwE -dDE5OaQRMA8xDTALBgNVBAMMBHQyMDCkETAPMQ0wCwYDVQQDDAR0MjAxpBEwDzEN -MAsGA1UEAwwEdDIwMqQRMA8xDTALBgNVBAMMBHQyMDOkETAPMQ0wCwYDVQQDDAR0 -MjA0pBEwDzENMAsGA1UEAwwEdDIwNaQRMA8xDTALBgNVBAMMBHQyMDakETAPMQ0w -CwYDVQQDDAR0MjA3pBEwDzENMAsGA1UEAwwEdDIwOKQRMA8xDTALBgNVBAMMBHQy -MDmkETAPMQ0wCwYDVQQDDAR0MjEwpBEwDzENMAsGA1UEAwwEdDIxMaQRMA8xDTAL -BgNVBAMMBHQyMTKkETAPMQ0wCwYDVQQDDAR0MjEzpBEwDzENMAsGA1UEAwwEdDIx -NKQRMA8xDTALBgNVBAMMBHQyMTWkETAPMQ0wCwYDVQQDDAR0MjE2pBEwDzENMAsG -A1UEAwwEdDIxN6QRMA8xDTALBgNVBAMMBHQyMTikETAPMQ0wCwYDVQQDDAR0MjE5 -pBEwDzENMAsGA1UEAwwEdDIyMKQRMA8xDTALBgNVBAMMBHQyMjGkETAPMQ0wCwYD -VQQDDAR0MjIypBEwDzENMAsGA1UEAwwEdDIyM6QRMA8xDTALBgNVBAMMBHQyMjSk -ETAPMQ0wCwYDVQQDDAR0MjI1pBEwDzENMAsGA1UEAwwEdDIyNqQRMA8xDTALBgNV -BAMMBHQyMjekETAPMQ0wCwYDVQQDDAR0MjI4pBEwDzENMAsGA1UEAwwEdDIyOaQR -MA8xDTALBgNVBAMMBHQyMzCkETAPMQ0wCwYDVQQDDAR0MjMxpBEwDzENMAsGA1UE -AwwEdDIzMqQRMA8xDTALBgNVBAMMBHQyMzOkETAPMQ0wCwYDVQQDDAR0MjM0pBEw -DzENMAsGA1UEAwwEdDIzNaQRMA8xDTALBgNVBAMMBHQyMzakETAPMQ0wCwYDVQQD -DAR0MjM3pBEwDzENMAsGA1UEAwwEdDIzOKQRMA8xDTALBgNVBAMMBHQyMzmkETAP -MQ0wCwYDVQQDDAR0MjQwpBEwDzENMAsGA1UEAwwEdDI0MaQRMA8xDTALBgNVBAMM -BHQyNDKkETAPMQ0wCwYDVQQDDAR0MjQzpBEwDzENMAsGA1UEAwwEdDI0NKQRMA8x -DTALBgNVBAMMBHQyNDWkETAPMQ0wCwYDVQQDDAR0MjQ2pBEwDzENMAsGA1UEAwwE -dDI0N6QRMA8xDTALBgNVBAMMBHQyNDikETAPMQ0wCwYDVQQDDAR0MjQ5pBEwDzEN -MAsGA1UEAwwEdDI1MKQRMA8xDTALBgNVBAMMBHQyNTGkETAPMQ0wCwYDVQQDDAR0 -MjUypBEwDzENMAsGA1UEAwwEdDI1M6QRMA8xDTALBgNVBAMMBHQyNTSkETAPMQ0w -CwYDVQQDDAR0MjU1pBEwDzENMAsGA1UEAwwEdDI1NqQRMA8xDTALBgNVBAMMBHQy -NTekETAPMQ0wCwYDVQQDDAR0MjU4pBEwDzENMAsGA1UEAwwEdDI1OaQRMA8xDTAL -BgNVBAMMBHQyNjCkETAPMQ0wCwYDVQQDDAR0MjYxpBEwDzENMAsGA1UEAwwEdDI2 -MqQRMA8xDTALBgNVBAMMBHQyNjOkETAPMQ0wCwYDVQQDDAR0MjY0pBEwDzENMAsG -A1UEAwwEdDI2NaQRMA8xDTALBgNVBAMMBHQyNjakETAPMQ0wCwYDVQQDDAR0MjY3 -pBEwDzENMAsGA1UEAwwEdDI2OKQRMA8xDTALBgNVBAMMBHQyNjmkETAPMQ0wCwYD -VQQDDAR0MjcwpBEwDzENMAsGA1UEAwwEdDI3MaQRMA8xDTALBgNVBAMMBHQyNzKk -ETAPMQ0wCwYDVQQDDAR0MjczpBEwDzENMAsGA1UEAwwEdDI3NKQRMA8xDTALBgNV -BAMMBHQyNzWkETAPMQ0wCwYDVQQDDAR0Mjc2pBEwDzENMAsGA1UEAwwEdDI3N6QR -MA8xDTALBgNVBAMMBHQyNzikETAPMQ0wCwYDVQQDDAR0Mjc5pBEwDzENMAsGA1UE -AwwEdDI4MKQRMA8xDTALBgNVBAMMBHQyODGkETAPMQ0wCwYDVQQDDAR0MjgypBEw -DzENMAsGA1UEAwwEdDI4M6QRMA8xDTALBgNVBAMMBHQyODSkETAPMQ0wCwYDVQQD -DAR0Mjg1pBEwDzENMAsGA1UEAwwEdDI4NqQRMA8xDTALBgNVBAMMBHQyODekETAP -MQ0wCwYDVQQDDAR0Mjg4pBEwDzENMAsGA1UEAwwEdDI4OaQRMA8xDTALBgNVBAMM -BHQyOTCkETAPMQ0wCwYDVQQDDAR0MjkxpBEwDzENMAsGA1UEAwwEdDI5MqQRMA8x -DTALBgNVBAMMBHQyOTOkETAPMQ0wCwYDVQQDDAR0Mjk0pBEwDzENMAsGA1UEAwwE -dDI5NaQRMA8xDTALBgNVBAMMBHQyOTakETAPMQ0wCwYDVQQDDAR0Mjk3pBEwDzEN -MAsGA1UEAwwEdDI5OKQRMA8xDTALBgNVBAMMBHQyOTmkETAPMQ0wCwYDVQQDDAR0 -MzAwpBEwDzENMAsGA1UEAwwEdDMwMaQRMA8xDTALBgNVBAMMBHQzMDKkETAPMQ0w -CwYDVQQDDAR0MzAzpBEwDzENMAsGA1UEAwwEdDMwNKQRMA8xDTALBgNVBAMMBHQz -MDWkETAPMQ0wCwYDVQQDDAR0MzA2pBEwDzENMAsGA1UEAwwEdDMwN6QRMA8xDTAL -BgNVBAMMBHQzMDikETAPMQ0wCwYDVQQDDAR0MzA5pBEwDzENMAsGA1UEAwwEdDMx -MKQRMA8xDTALBgNVBAMMBHQzMTGkETAPMQ0wCwYDVQQDDAR0MzEypBEwDzENMAsG -A1UEAwwEdDMxM6QRMA8xDTALBgNVBAMMBHQzMTSkETAPMQ0wCwYDVQQDDAR0MzE1 -pBEwDzENMAsGA1UEAwwEdDMxNqQRMA8xDTALBgNVBAMMBHQzMTekETAPMQ0wCwYD -VQQDDAR0MzE4pBEwDzENMAsGA1UEAwwEdDMxOaQRMA8xDTALBgNVBAMMBHQzMjCk -ETAPMQ0wCwYDVQQDDAR0MzIxpBEwDzENMAsGA1UEAwwEdDMyMqQRMA8xDTALBgNV -BAMMBHQzMjOkETAPMQ0wCwYDVQQDDAR0MzI0pBEwDzENMAsGA1UEAwwEdDMyNaQR -MA8xDTALBgNVBAMMBHQzMjakETAPMQ0wCwYDVQQDDAR0MzI3pBEwDzENMAsGA1UE -AwwEdDMyOKQRMA8xDTALBgNVBAMMBHQzMjmkETAPMQ0wCwYDVQQDDAR0MzMwpBEw -DzENMAsGA1UEAwwEdDMzMaQRMA8xDTALBgNVBAMMBHQzMzKkETAPMQ0wCwYDVQQD -DAR0MzMzpBEwDzENMAsGA1UEAwwEdDMzNKQRMA8xDTALBgNVBAMMBHQzMzWkETAP -MQ0wCwYDVQQDDAR0MzM2pBEwDzENMAsGA1UEAwwEdDMzN6QRMA8xDTALBgNVBAMM -BHQzMzikETAPMQ0wCwYDVQQDDAR0MzM5pBEwDzENMAsGA1UEAwwEdDM0MKQRMA8x -DTALBgNVBAMMBHQzNDGkETAPMQ0wCwYDVQQDDAR0MzQypBEwDzENMAsGA1UEAwwE -dDM0M6QRMA8xDTALBgNVBAMMBHQzNDSkETAPMQ0wCwYDVQQDDAR0MzQ1pBEwDzEN -MAsGA1UEAwwEdDM0NqQRMA8xDTALBgNVBAMMBHQzNDekETAPMQ0wCwYDVQQDDAR0 -MzQ4pBEwDzENMAsGA1UEAwwEdDM0OaQRMA8xDTALBgNVBAMMBHQzNTCkETAPMQ0w -CwYDVQQDDAR0MzUxpBEwDzENMAsGA1UEAwwEdDM1MqQRMA8xDTALBgNVBAMMBHQz -NTOkETAPMQ0wCwYDVQQDDAR0MzU0pBEwDzENMAsGA1UEAwwEdDM1NaQRMA8xDTAL -BgNVBAMMBHQzNTakETAPMQ0wCwYDVQQDDAR0MzU3pBEwDzENMAsGA1UEAwwEdDM1 -OKQRMA8xDTALBgNVBAMMBHQzNTmkETAPMQ0wCwYDVQQDDAR0MzYwpBEwDzENMAsG -A1UEAwwEdDM2MaQRMA8xDTALBgNVBAMMBHQzNjKkETAPMQ0wCwYDVQQDDAR0MzYz -pBEwDzENMAsGA1UEAwwEdDM2NKQRMA8xDTALBgNVBAMMBHQzNjWkETAPMQ0wCwYD -VQQDDAR0MzY2pBEwDzENMAsGA1UEAwwEdDM2N6QRMA8xDTALBgNVBAMMBHQzNjik -ETAPMQ0wCwYDVQQDDAR0MzY5pBEwDzENMAsGA1UEAwwEdDM3MKQRMA8xDTALBgNV -BAMMBHQzNzGkETAPMQ0wCwYDVQQDDAR0MzcypBEwDzENMAsGA1UEAwwEdDM3M6QR -MA8xDTALBgNVBAMMBHQzNzSkETAPMQ0wCwYDVQQDDAR0Mzc1pBEwDzENMAsGA1UE -AwwEdDM3NqQRMA8xDTALBgNVBAMMBHQzNzekETAPMQ0wCwYDVQQDDAR0Mzc4pBEw -DzENMAsGA1UEAwwEdDM3OaQRMA8xDTALBgNVBAMMBHQzODCkETAPMQ0wCwYDVQQD -DAR0MzgxpBEwDzENMAsGA1UEAwwEdDM4MqQRMA8xDTALBgNVBAMMBHQzODOkETAP -MQ0wCwYDVQQDDAR0Mzg0pBEwDzENMAsGA1UEAwwEdDM4NaQRMA8xDTALBgNVBAMM -BHQzODakETAPMQ0wCwYDVQQDDAR0Mzg3pBEwDzENMAsGA1UEAwwEdDM4OKQRMA8x -DTALBgNVBAMMBHQzODmkETAPMQ0wCwYDVQQDDAR0MzkwpBEwDzENMAsGA1UEAwwE -dDM5MaQRMA8xDTALBgNVBAMMBHQzOTKkETAPMQ0wCwYDVQQDDAR0MzkzpBEwDzEN -MAsGA1UEAwwEdDM5NKQRMA8xDTALBgNVBAMMBHQzOTWkETAPMQ0wCwYDVQQDDAR0 -Mzk2pBEwDzENMAsGA1UEAwwEdDM5N6QRMA8xDTALBgNVBAMMBHQzOTikETAPMQ0w -CwYDVQQDDAR0Mzk5pBEwDzENMAsGA1UEAwwEdDQwMKQRMA8xDTALBgNVBAMMBHQ0 -MDGkETAPMQ0wCwYDVQQDDAR0NDAypBEwDzENMAsGA1UEAwwEdDQwM6QRMA8xDTAL -BgNVBAMMBHQ0MDSkETAPMQ0wCwYDVQQDDAR0NDA1pBEwDzENMAsGA1UEAwwEdDQw -NqQRMA8xDTALBgNVBAMMBHQ0MDekETAPMQ0wCwYDVQQDDAR0NDA4pBEwDzENMAsG -A1UEAwwEdDQwOaQRMA8xDTALBgNVBAMMBHQ0MTCkETAPMQ0wCwYDVQQDDAR0NDEx -pBEwDzENMAsGA1UEAwwEdDQxMqQRMA8xDTALBgNVBAMMBHQ0MTOkETAPMQ0wCwYD -VQQDDAR0NDE0pBEwDzENMAsGA1UEAwwEdDQxNaQRMA8xDTALBgNVBAMMBHQ0MTak -ETAPMQ0wCwYDVQQDDAR0NDE3pBEwDzENMAsGA1UEAwwEdDQxOKQRMA8xDTALBgNV -BAMMBHQ0MTmkETAPMQ0wCwYDVQQDDAR0NDIwpBEwDzENMAsGA1UEAwwEdDQyMaQR -MA8xDTALBgNVBAMMBHQ0MjKkETAPMQ0wCwYDVQQDDAR0NDIzpBEwDzENMAsGA1UE -AwwEdDQyNKQRMA8xDTALBgNVBAMMBHQ0MjWkETAPMQ0wCwYDVQQDDAR0NDI2pBEw -DzENMAsGA1UEAwwEdDQyN6QRMA8xDTALBgNVBAMMBHQ0MjikETAPMQ0wCwYDVQQD -DAR0NDI5pBEwDzENMAsGA1UEAwwEdDQzMKQRMA8xDTALBgNVBAMMBHQ0MzGkETAP -MQ0wCwYDVQQDDAR0NDMypBEwDzENMAsGA1UEAwwEdDQzM6QRMA8xDTALBgNVBAMM -BHQ0MzSkETAPMQ0wCwYDVQQDDAR0NDM1pBEwDzENMAsGA1UEAwwEdDQzNqQRMA8x -DTALBgNVBAMMBHQ0MzekETAPMQ0wCwYDVQQDDAR0NDM4pBEwDzENMAsGA1UEAwwE -dDQzOaQRMA8xDTALBgNVBAMMBHQ0NDCkETAPMQ0wCwYDVQQDDAR0NDQxpBEwDzEN -MAsGA1UEAwwEdDQ0MqQRMA8xDTALBgNVBAMMBHQ0NDOkETAPMQ0wCwYDVQQDDAR0 -NDQ0pBEwDzENMAsGA1UEAwwEdDQ0NaQRMA8xDTALBgNVBAMMBHQ0NDakETAPMQ0w -CwYDVQQDDAR0NDQ3pBEwDzENMAsGA1UEAwwEdDQ0OKQRMA8xDTALBgNVBAMMBHQ0 -NDmkETAPMQ0wCwYDVQQDDAR0NDUwpBEwDzENMAsGA1UEAwwEdDQ1MaQRMA8xDTAL -BgNVBAMMBHQ0NTKkETAPMQ0wCwYDVQQDDAR0NDUzpBEwDzENMAsGA1UEAwwEdDQ1 -NKQRMA8xDTALBgNVBAMMBHQ0NTWkETAPMQ0wCwYDVQQDDAR0NDU2pBEwDzENMAsG -A1UEAwwEdDQ1N6QRMA8xDTALBgNVBAMMBHQ0NTikETAPMQ0wCwYDVQQDDAR0NDU5 -pBEwDzENMAsGA1UEAwwEdDQ2MKQRMA8xDTALBgNVBAMMBHQ0NjGkETAPMQ0wCwYD -VQQDDAR0NDYypBEwDzENMAsGA1UEAwwEdDQ2M6QRMA8xDTALBgNVBAMMBHQ0NjSk -ETAPMQ0wCwYDVQQDDAR0NDY1pBEwDzENMAsGA1UEAwwEdDQ2NqQRMA8xDTALBgNV -BAMMBHQ0NjekETAPMQ0wCwYDVQQDDAR0NDY4pBEwDzENMAsGA1UEAwwEdDQ2OaQR -MA8xDTALBgNVBAMMBHQ0NzCkETAPMQ0wCwYDVQQDDAR0NDcxpBEwDzENMAsGA1UE -AwwEdDQ3MqQRMA8xDTALBgNVBAMMBHQ0NzOkETAPMQ0wCwYDVQQDDAR0NDc0pBEw -DzENMAsGA1UEAwwEdDQ3NaQRMA8xDTALBgNVBAMMBHQ0NzakETAPMQ0wCwYDVQQD -DAR0NDc3pBEwDzENMAsGA1UEAwwEdDQ3OKQRMA8xDTALBgNVBAMMBHQ0NzmkETAP -MQ0wCwYDVQQDDAR0NDgwpBEwDzENMAsGA1UEAwwEdDQ4MaQRMA8xDTALBgNVBAMM -BHQ0ODKkETAPMQ0wCwYDVQQDDAR0NDgzpBEwDzENMAsGA1UEAwwEdDQ4NKQRMA8x -DTALBgNVBAMMBHQ0ODWkETAPMQ0wCwYDVQQDDAR0NDg2pBEwDzENMAsGA1UEAwwE -dDQ4N6QRMA8xDTALBgNVBAMMBHQ0ODikETAPMQ0wCwYDVQQDDAR0NDg5pBEwDzEN -MAsGA1UEAwwEdDQ5MKQRMA8xDTALBgNVBAMMBHQ0OTGkETAPMQ0wCwYDVQQDDAR0 -NDkypBEwDzENMAsGA1UEAwwEdDQ5M6QRMA8xDTALBgNVBAMMBHQ0OTSkETAPMQ0w -CwYDVQQDDAR0NDk1pBEwDzENMAsGA1UEAwwEdDQ5NqQRMA8xDTALBgNVBAMMBHQ0 -OTekETAPMQ0wCwYDVQQDDAR0NDk4pBEwDzENMAsGA1UEAwwEdDQ5OaQRMA8xDTAL -BgNVBAMMBHQ1MDCkETAPMQ0wCwYDVQQDDAR0NTAxpBEwDzENMAsGA1UEAwwEdDUw -MqQRMA8xDTALBgNVBAMMBHQ1MDOkETAPMQ0wCwYDVQQDDAR0NTA0pBEwDzENMAsG -A1UEAwwEdDUwNaQRMA8xDTALBgNVBAMMBHQ1MDakETAPMQ0wCwYDVQQDDAR0NTA3 -pBEwDzENMAsGA1UEAwwEdDUwOKQRMA8xDTALBgNVBAMMBHQ1MDmkETAPMQ0wCwYD -VQQDDAR0NTEwpBEwDzENMAsGA1UEAwwEdDUxMaQRMA8xDTALBgNVBAMMBHQ1MTKk -ETAPMQ0wCwYDVQQDDAR0NTEzpBEwDzENMAsGA1UEAwwEdDUxNKQRMA8xDTALBgNV -BAMMBHQ1MTWkETAPMQ0wCwYDVQQDDAR0NTE2pBEwDzENMAsGA1UEAwwEdDUxN6QR -MA8xDTALBgNVBAMMBHQ1MTikETAPMQ0wCwYDVQQDDAR0NTE5pBEwDzENMAsGA1UE -AwwEdDUyMKQRMA8xDTALBgNVBAMMBHQ1MjGkETAPMQ0wCwYDVQQDDAR0NTIypBEw -DzENMAsGA1UEAwwEdDUyM6QRMA8xDTALBgNVBAMMBHQ1MjSkETAPMQ0wCwYDVQQD -DAR0NTI1pBEwDzENMAsGA1UEAwwEdDUyNqQRMA8xDTALBgNVBAMMBHQ1MjekETAP -MQ0wCwYDVQQDDAR0NTI4pBEwDzENMAsGA1UEAwwEdDUyOaQRMA8xDTALBgNVBAMM -BHQ1MzCkETAPMQ0wCwYDVQQDDAR0NTMxpBEwDzENMAsGA1UEAwwEdDUzMqQRMA8x -DTALBgNVBAMMBHQ1MzOkETAPMQ0wCwYDVQQDDAR0NTM0pBEwDzENMAsGA1UEAwwE -dDUzNaQRMA8xDTALBgNVBAMMBHQ1MzakETAPMQ0wCwYDVQQDDAR0NTM3pBEwDzEN -MAsGA1UEAwwEdDUzOKQRMA8xDTALBgNVBAMMBHQ1MzmkETAPMQ0wCwYDVQQDDAR0 -NTQwpBEwDzENMAsGA1UEAwwEdDU0MaQRMA8xDTALBgNVBAMMBHQ1NDKkETAPMQ0w -CwYDVQQDDAR0NTQzpBEwDzENMAsGA1UEAwwEdDU0NKQRMA8xDTALBgNVBAMMBHQ1 -NDWkETAPMQ0wCwYDVQQDDAR0NTQ2pBEwDzENMAsGA1UEAwwEdDU0N6QRMA8xDTAL -BgNVBAMMBHQ1NDikETAPMQ0wCwYDVQQDDAR0NTQ5pBEwDzENMAsGA1UEAwwEdDU1 -MKQRMA8xDTALBgNVBAMMBHQ1NTGkETAPMQ0wCwYDVQQDDAR0NTUypBEwDzENMAsG -A1UEAwwEdDU1M6QRMA8xDTALBgNVBAMMBHQ1NTSkETAPMQ0wCwYDVQQDDAR0NTU1 -pBEwDzENMAsGA1UEAwwEdDU1NqQRMA8xDTALBgNVBAMMBHQ1NTekETAPMQ0wCwYD -VQQDDAR0NTU4pBEwDzENMAsGA1UEAwwEdDU1OaQRMA8xDTALBgNVBAMMBHQ1NjCk -ETAPMQ0wCwYDVQQDDAR0NTYxpBEwDzENMAsGA1UEAwwEdDU2MqQRMA8xDTALBgNV -BAMMBHQ1NjOkETAPMQ0wCwYDVQQDDAR0NTY0pBEwDzENMAsGA1UEAwwEdDU2NaQR -MA8xDTALBgNVBAMMBHQ1NjakETAPMQ0wCwYDVQQDDAR0NTY3pBEwDzENMAsGA1UE -AwwEdDU2OKQRMA8xDTALBgNVBAMMBHQ1NjmkETAPMQ0wCwYDVQQDDAR0NTcwpBEw -DzENMAsGA1UEAwwEdDU3MaQRMA8xDTALBgNVBAMMBHQ1NzKkETAPMQ0wCwYDVQQD -DAR0NTczpBEwDzENMAsGA1UEAwwEdDU3NKQRMA8xDTALBgNVBAMMBHQ1NzWkETAP -MQ0wCwYDVQQDDAR0NTc2pBEwDzENMAsGA1UEAwwEdDU3N6QRMA8xDTALBgNVBAMM -BHQ1NzikETAPMQ0wCwYDVQQDDAR0NTc5pBEwDzENMAsGA1UEAwwEdDU4MKQRMA8x -DTALBgNVBAMMBHQ1ODGkETAPMQ0wCwYDVQQDDAR0NTgypBEwDzENMAsGA1UEAwwE -dDU4M6QRMA8xDTALBgNVBAMMBHQ1ODSkETAPMQ0wCwYDVQQDDAR0NTg1pBEwDzEN -MAsGA1UEAwwEdDU4NqQRMA8xDTALBgNVBAMMBHQ1ODekETAPMQ0wCwYDVQQDDAR0 -NTg4pBEwDzENMAsGA1UEAwwEdDU4OaQRMA8xDTALBgNVBAMMBHQ1OTCkETAPMQ0w -CwYDVQQDDAR0NTkxpBEwDzENMAsGA1UEAwwEdDU5MqQRMA8xDTALBgNVBAMMBHQ1 -OTOkETAPMQ0wCwYDVQQDDAR0NTk0pBEwDzENMAsGA1UEAwwEdDU5NaQRMA8xDTAL -BgNVBAMMBHQ1OTakETAPMQ0wCwYDVQQDDAR0NTk3pBEwDzENMAsGA1UEAwwEdDU5 -OKQRMA8xDTALBgNVBAMMBHQ1OTmkETAPMQ0wCwYDVQQDDAR0NjAwpBEwDzENMAsG -A1UEAwwEdDYwMaQRMA8xDTALBgNVBAMMBHQ2MDKkETAPMQ0wCwYDVQQDDAR0NjAz -pBEwDzENMAsGA1UEAwwEdDYwNKQRMA8xDTALBgNVBAMMBHQ2MDWkETAPMQ0wCwYD -VQQDDAR0NjA2pBEwDzENMAsGA1UEAwwEdDYwN6QRMA8xDTALBgNVBAMMBHQ2MDik -ETAPMQ0wCwYDVQQDDAR0NjA5pBEwDzENMAsGA1UEAwwEdDYxMKQRMA8xDTALBgNV -BAMMBHQ2MTGkETAPMQ0wCwYDVQQDDAR0NjEypBEwDzENMAsGA1UEAwwEdDYxM6QR -MA8xDTALBgNVBAMMBHQ2MTSkETAPMQ0wCwYDVQQDDAR0NjE1pBEwDzENMAsGA1UE -AwwEdDYxNqQRMA8xDTALBgNVBAMMBHQ2MTekETAPMQ0wCwYDVQQDDAR0NjE4pBEw -DzENMAsGA1UEAwwEdDYxOaQRMA8xDTALBgNVBAMMBHQ2MjCkETAPMQ0wCwYDVQQD -DAR0NjIxpBEwDzENMAsGA1UEAwwEdDYyMqQRMA8xDTALBgNVBAMMBHQ2MjOkETAP -MQ0wCwYDVQQDDAR0NjI0pBEwDzENMAsGA1UEAwwEdDYyNaQRMA8xDTALBgNVBAMM -BHQ2MjakETAPMQ0wCwYDVQQDDAR0NjI3pBEwDzENMAsGA1UEAwwEdDYyOKQRMA8x -DTALBgNVBAMMBHQ2MjmkETAPMQ0wCwYDVQQDDAR0NjMwpBEwDzENMAsGA1UEAwwE -dDYzMaQRMA8xDTALBgNVBAMMBHQ2MzKkETAPMQ0wCwYDVQQDDAR0NjMzpBEwDzEN -MAsGA1UEAwwEdDYzNKQRMA8xDTALBgNVBAMMBHQ2MzWkETAPMQ0wCwYDVQQDDAR0 -NjM2pBEwDzENMAsGA1UEAwwEdDYzN6QRMA8xDTALBgNVBAMMBHQ2MzikETAPMQ0w -CwYDVQQDDAR0NjM5pBEwDzENMAsGA1UEAwwEdDY0MKQRMA8xDTALBgNVBAMMBHQ2 -NDGkETAPMQ0wCwYDVQQDDAR0NjQypBEwDzENMAsGA1UEAwwEdDY0M6QRMA8xDTAL -BgNVBAMMBHQ2NDSkETAPMQ0wCwYDVQQDDAR0NjQ1pBEwDzENMAsGA1UEAwwEdDY0 -NqQRMA8xDTALBgNVBAMMBHQ2NDekETAPMQ0wCwYDVQQDDAR0NjQ4pBEwDzENMAsG -A1UEAwwEdDY0OaQRMA8xDTALBgNVBAMMBHQ2NTCkETAPMQ0wCwYDVQQDDAR0NjUx -pBEwDzENMAsGA1UEAwwEdDY1MqQRMA8xDTALBgNVBAMMBHQ2NTOkETAPMQ0wCwYD -VQQDDAR0NjU0pBEwDzENMAsGA1UEAwwEdDY1NaQRMA8xDTALBgNVBAMMBHQ2NTak -ETAPMQ0wCwYDVQQDDAR0NjU3pBEwDzENMAsGA1UEAwwEdDY1OKQRMA8xDTALBgNV -BAMMBHQ2NTmkETAPMQ0wCwYDVQQDDAR0NjYwpBEwDzENMAsGA1UEAwwEdDY2MaQR -MA8xDTALBgNVBAMMBHQ2NjKkETAPMQ0wCwYDVQQDDAR0NjYzpBEwDzENMAsGA1UE -AwwEdDY2NKQRMA8xDTALBgNVBAMMBHQ2NjWkETAPMQ0wCwYDVQQDDAR0NjY2pBEw -DzENMAsGA1UEAwwEdDY2N6QRMA8xDTALBgNVBAMMBHQ2NjikETAPMQ0wCwYDVQQD -DAR0NjY5pBEwDzENMAsGA1UEAwwEdDY3MKQRMA8xDTALBgNVBAMMBHQ2NzGkETAP -MQ0wCwYDVQQDDAR0NjcypBEwDzENMAsGA1UEAwwEdDY3M6QRMA8xDTALBgNVBAMM -BHQ2NzSkETAPMQ0wCwYDVQQDDAR0Njc1pBEwDzENMAsGA1UEAwwEdDY3NqQRMA8x -DTALBgNVBAMMBHQ2NzekETAPMQ0wCwYDVQQDDAR0Njc4pBEwDzENMAsGA1UEAwwE -dDY3OaQRMA8xDTALBgNVBAMMBHQ2ODCkETAPMQ0wCwYDVQQDDAR0NjgxpBEwDzEN -MAsGA1UEAwwEdDY4MqQRMA8xDTALBgNVBAMMBHQ2ODOkETAPMQ0wCwYDVQQDDAR0 -Njg0pBEwDzENMAsGA1UEAwwEdDY4NaQRMA8xDTALBgNVBAMMBHQ2ODakETAPMQ0w -CwYDVQQDDAR0Njg3pBEwDzENMAsGA1UEAwwEdDY4OKQRMA8xDTALBgNVBAMMBHQ2 -ODmkETAPMQ0wCwYDVQQDDAR0NjkwpBEwDzENMAsGA1UEAwwEdDY5MaQRMA8xDTAL -BgNVBAMMBHQ2OTKkETAPMQ0wCwYDVQQDDAR0NjkzpBEwDzENMAsGA1UEAwwEdDY5 -NKQRMA8xDTALBgNVBAMMBHQ2OTWkETAPMQ0wCwYDVQQDDAR0Njk2pBEwDzENMAsG -A1UEAwwEdDY5N6QRMA8xDTALBgNVBAMMBHQ2OTikETAPMQ0wCwYDVQQDDAR0Njk5 -pBEwDzENMAsGA1UEAwwEdDcwMKQRMA8xDTALBgNVBAMMBHQ3MDGkETAPMQ0wCwYD -VQQDDAR0NzAypBEwDzENMAsGA1UEAwwEdDcwM6QRMA8xDTALBgNVBAMMBHQ3MDSk -ETAPMQ0wCwYDVQQDDAR0NzA1pBEwDzENMAsGA1UEAwwEdDcwNqQRMA8xDTALBgNV -BAMMBHQ3MDekETAPMQ0wCwYDVQQDDAR0NzA4pBEwDzENMAsGA1UEAwwEdDcwOaQR -MA8xDTALBgNVBAMMBHQ3MTCkETAPMQ0wCwYDVQQDDAR0NzExpBEwDzENMAsGA1UE -AwwEdDcxMqQRMA8xDTALBgNVBAMMBHQ3MTOkETAPMQ0wCwYDVQQDDAR0NzE0pBEw -DzENMAsGA1UEAwwEdDcxNaQRMA8xDTALBgNVBAMMBHQ3MTakETAPMQ0wCwYDVQQD -DAR0NzE3pBEwDzENMAsGA1UEAwwEdDcxOKQRMA8xDTALBgNVBAMMBHQ3MTmkETAP -MQ0wCwYDVQQDDAR0NzIwpBEwDzENMAsGA1UEAwwEdDcyMaQRMA8xDTALBgNVBAMM -BHQ3MjKkETAPMQ0wCwYDVQQDDAR0NzIzpBEwDzENMAsGA1UEAwwEdDcyNKQRMA8x -DTALBgNVBAMMBHQ3MjWkETAPMQ0wCwYDVQQDDAR0NzI2pBEwDzENMAsGA1UEAwwE -dDcyN6QRMA8xDTALBgNVBAMMBHQ3MjikETAPMQ0wCwYDVQQDDAR0NzI5pBEwDzEN -MAsGA1UEAwwEdDczMKQRMA8xDTALBgNVBAMMBHQ3MzGkETAPMQ0wCwYDVQQDDAR0 -NzMypBEwDzENMAsGA1UEAwwEdDczM6QRMA8xDTALBgNVBAMMBHQ3MzSkETAPMQ0w -CwYDVQQDDAR0NzM1pBEwDzENMAsGA1UEAwwEdDczNqQRMA8xDTALBgNVBAMMBHQ3 -MzekETAPMQ0wCwYDVQQDDAR0NzM4pBEwDzENMAsGA1UEAwwEdDczOaQRMA8xDTAL -BgNVBAMMBHQ3NDCkETAPMQ0wCwYDVQQDDAR0NzQxpBEwDzENMAsGA1UEAwwEdDc0 -MqQRMA8xDTALBgNVBAMMBHQ3NDOkETAPMQ0wCwYDVQQDDAR0NzQ0pBEwDzENMAsG -A1UEAwwEdDc0NaQRMA8xDTALBgNVBAMMBHQ3NDakETAPMQ0wCwYDVQQDDAR0NzQ3 -pBEwDzENMAsGA1UEAwwEdDc0OKQRMA8xDTALBgNVBAMMBHQ3NDmkETAPMQ0wCwYD -VQQDDAR0NzUwpBEwDzENMAsGA1UEAwwEdDc1MaQRMA8xDTALBgNVBAMMBHQ3NTKk -ETAPMQ0wCwYDVQQDDAR0NzUzpBEwDzENMAsGA1UEAwwEdDc1NKQRMA8xDTALBgNV -BAMMBHQ3NTWkETAPMQ0wCwYDVQQDDAR0NzU2pBEwDzENMAsGA1UEAwwEdDc1N6QR -MA8xDTALBgNVBAMMBHQ3NTikETAPMQ0wCwYDVQQDDAR0NzU5pBEwDzENMAsGA1UE -AwwEdDc2MKQRMA8xDTALBgNVBAMMBHQ3NjGkETAPMQ0wCwYDVQQDDAR0NzYypBEw -DzENMAsGA1UEAwwEdDc2M6QRMA8xDTALBgNVBAMMBHQ3NjSkETAPMQ0wCwYDVQQD -DAR0NzY1pBEwDzENMAsGA1UEAwwEdDc2NqQRMA8xDTALBgNVBAMMBHQ3NjekETAP -MQ0wCwYDVQQDDAR0NzY4pBEwDzENMAsGA1UEAwwEdDc2OaQRMA8xDTALBgNVBAMM -BHQ3NzCkETAPMQ0wCwYDVQQDDAR0NzcxpBEwDzENMAsGA1UEAwwEdDc3MqQRMA8x -DTALBgNVBAMMBHQ3NzOkETAPMQ0wCwYDVQQDDAR0Nzc0pBEwDzENMAsGA1UEAwwE -dDc3NaQRMA8xDTALBgNVBAMMBHQ3NzakETAPMQ0wCwYDVQQDDAR0Nzc3pBEwDzEN -MAsGA1UEAwwEdDc3OKQRMA8xDTALBgNVBAMMBHQ3NzmkETAPMQ0wCwYDVQQDDAR0 -NzgwpBEwDzENMAsGA1UEAwwEdDc4MaQRMA8xDTALBgNVBAMMBHQ3ODKkETAPMQ0w -CwYDVQQDDAR0NzgzpBEwDzENMAsGA1UEAwwEdDc4NKQRMA8xDTALBgNVBAMMBHQ3 -ODWkETAPMQ0wCwYDVQQDDAR0Nzg2pBEwDzENMAsGA1UEAwwEdDc4N6QRMA8xDTAL -BgNVBAMMBHQ3ODikETAPMQ0wCwYDVQQDDAR0Nzg5pBEwDzENMAsGA1UEAwwEdDc5 -MKQRMA8xDTALBgNVBAMMBHQ3OTGkETAPMQ0wCwYDVQQDDAR0NzkypBEwDzENMAsG -A1UEAwwEdDc5M6QRMA8xDTALBgNVBAMMBHQ3OTSkETAPMQ0wCwYDVQQDDAR0Nzk1 -pBEwDzENMAsGA1UEAwwEdDc5NqQRMA8xDTALBgNVBAMMBHQ3OTekETAPMQ0wCwYD -VQQDDAR0Nzk4pBEwDzENMAsGA1UEAwwEdDc5OaQRMA8xDTALBgNVBAMMBHQ4MDCk -ETAPMQ0wCwYDVQQDDAR0ODAxpBEwDzENMAsGA1UEAwwEdDgwMqQRMA8xDTALBgNV -BAMMBHQ4MDOkETAPMQ0wCwYDVQQDDAR0ODA0pBEwDzENMAsGA1UEAwwEdDgwNaQR -MA8xDTALBgNVBAMMBHQ4MDakETAPMQ0wCwYDVQQDDAR0ODA3pBEwDzENMAsGA1UE -AwwEdDgwOKQRMA8xDTALBgNVBAMMBHQ4MDmkETAPMQ0wCwYDVQQDDAR0ODEwpBEw -DzENMAsGA1UEAwwEdDgxMaQRMA8xDTALBgNVBAMMBHQ4MTKkETAPMQ0wCwYDVQQD -DAR0ODEzpBEwDzENMAsGA1UEAwwEdDgxNKQRMA8xDTALBgNVBAMMBHQ4MTWkETAP -MQ0wCwYDVQQDDAR0ODE2pBEwDzENMAsGA1UEAwwEdDgxN6QRMA8xDTALBgNVBAMM -BHQ4MTikETAPMQ0wCwYDVQQDDAR0ODE5pBEwDzENMAsGA1UEAwwEdDgyMKQRMA8x -DTALBgNVBAMMBHQ4MjGkETAPMQ0wCwYDVQQDDAR0ODIypBEwDzENMAsGA1UEAwwE -dDgyM6QRMA8xDTALBgNVBAMMBHQ4MjSkETAPMQ0wCwYDVQQDDAR0ODI1pBEwDzEN -MAsGA1UEAwwEdDgyNqQRMA8xDTALBgNVBAMMBHQ4MjekETAPMQ0wCwYDVQQDDAR0 -ODI4pBEwDzENMAsGA1UEAwwEdDgyOaQRMA8xDTALBgNVBAMMBHQ4MzCkETAPMQ0w -CwYDVQQDDAR0ODMxpBEwDzENMAsGA1UEAwwEdDgzMqQRMA8xDTALBgNVBAMMBHQ4 -MzOkETAPMQ0wCwYDVQQDDAR0ODM0pBEwDzENMAsGA1UEAwwEdDgzNaQRMA8xDTAL -BgNVBAMMBHQ4MzakETAPMQ0wCwYDVQQDDAR0ODM3pBEwDzENMAsGA1UEAwwEdDgz -OKQRMA8xDTALBgNVBAMMBHQ4MzmkETAPMQ0wCwYDVQQDDAR0ODQwpBEwDzENMAsG -A1UEAwwEdDg0MaQRMA8xDTALBgNVBAMMBHQ4NDKkETAPMQ0wCwYDVQQDDAR0ODQz -pBEwDzENMAsGA1UEAwwEdDg0NKQRMA8xDTALBgNVBAMMBHQ4NDWkETAPMQ0wCwYD -VQQDDAR0ODQ2pBEwDzENMAsGA1UEAwwEdDg0N6QRMA8xDTALBgNVBAMMBHQ4NDik -ETAPMQ0wCwYDVQQDDAR0ODQ5pBEwDzENMAsGA1UEAwwEdDg1MKQRMA8xDTALBgNV -BAMMBHQ4NTGkETAPMQ0wCwYDVQQDDAR0ODUypBEwDzENMAsGA1UEAwwEdDg1M6QR -MA8xDTALBgNVBAMMBHQ4NTSkETAPMQ0wCwYDVQQDDAR0ODU1pBEwDzENMAsGA1UE -AwwEdDg1NqQRMA8xDTALBgNVBAMMBHQ4NTekETAPMQ0wCwYDVQQDDAR0ODU4pBEw -DzENMAsGA1UEAwwEdDg1OaQRMA8xDTALBgNVBAMMBHQ4NjCkETAPMQ0wCwYDVQQD -DAR0ODYxpBEwDzENMAsGA1UEAwwEdDg2MqQRMA8xDTALBgNVBAMMBHQ4NjOkETAP -MQ0wCwYDVQQDDAR0ODY0pBEwDzENMAsGA1UEAwwEdDg2NaQRMA8xDTALBgNVBAMM -BHQ4NjakETAPMQ0wCwYDVQQDDAR0ODY3pBEwDzENMAsGA1UEAwwEdDg2OKQRMA8x -DTALBgNVBAMMBHQ4NjmkETAPMQ0wCwYDVQQDDAR0ODcwpBEwDzENMAsGA1UEAwwE -dDg3MaQRMA8xDTALBgNVBAMMBHQ4NzKkETAPMQ0wCwYDVQQDDAR0ODczpBEwDzEN -MAsGA1UEAwwEdDg3NKQRMA8xDTALBgNVBAMMBHQ4NzWkETAPMQ0wCwYDVQQDDAR0 -ODc2pBEwDzENMAsGA1UEAwwEdDg3N6QRMA8xDTALBgNVBAMMBHQ4NzikETAPMQ0w -CwYDVQQDDAR0ODc5pBEwDzENMAsGA1UEAwwEdDg4MKQRMA8xDTALBgNVBAMMBHQ4 -ODGkETAPMQ0wCwYDVQQDDAR0ODgypBEwDzENMAsGA1UEAwwEdDg4M6QRMA8xDTAL -BgNVBAMMBHQ4ODSkETAPMQ0wCwYDVQQDDAR0ODg1pBEwDzENMAsGA1UEAwwEdDg4 -NqQRMA8xDTALBgNVBAMMBHQ4ODekETAPMQ0wCwYDVQQDDAR0ODg4pBEwDzENMAsG -A1UEAwwEdDg4OaQRMA8xDTALBgNVBAMMBHQ4OTCkETAPMQ0wCwYDVQQDDAR0ODkx -pBEwDzENMAsGA1UEAwwEdDg5MqQRMA8xDTALBgNVBAMMBHQ4OTOkETAPMQ0wCwYD -VQQDDAR0ODk0pBEwDzENMAsGA1UEAwwEdDg5NaQRMA8xDTALBgNVBAMMBHQ4OTak -ETAPMQ0wCwYDVQQDDAR0ODk3pBEwDzENMAsGA1UEAwwEdDg5OKQRMA8xDTALBgNV -BAMMBHQ4OTmkETAPMQ0wCwYDVQQDDAR0OTAwpBEwDzENMAsGA1UEAwwEdDkwMaQR -MA8xDTALBgNVBAMMBHQ5MDKkETAPMQ0wCwYDVQQDDAR0OTAzpBEwDzENMAsGA1UE -AwwEdDkwNKQRMA8xDTALBgNVBAMMBHQ5MDWkETAPMQ0wCwYDVQQDDAR0OTA2pBEw -DzENMAsGA1UEAwwEdDkwN6QRMA8xDTALBgNVBAMMBHQ5MDikETAPMQ0wCwYDVQQD -DAR0OTA5pBEwDzENMAsGA1UEAwwEdDkxMKQRMA8xDTALBgNVBAMMBHQ5MTGkETAP -MQ0wCwYDVQQDDAR0OTEypBEwDzENMAsGA1UEAwwEdDkxM6QRMA8xDTALBgNVBAMM -BHQ5MTSkETAPMQ0wCwYDVQQDDAR0OTE1pBEwDzENMAsGA1UEAwwEdDkxNqQRMA8x -DTALBgNVBAMMBHQ5MTekETAPMQ0wCwYDVQQDDAR0OTE4pBEwDzENMAsGA1UEAwwE -dDkxOaQRMA8xDTALBgNVBAMMBHQ5MjCkETAPMQ0wCwYDVQQDDAR0OTIxpBEwDzEN -MAsGA1UEAwwEdDkyMqQRMA8xDTALBgNVBAMMBHQ5MjOkETAPMQ0wCwYDVQQDDAR0 -OTI0pBEwDzENMAsGA1UEAwwEdDkyNaQRMA8xDTALBgNVBAMMBHQ5MjakETAPMQ0w -CwYDVQQDDAR0OTI3pBEwDzENMAsGA1UEAwwEdDkyOKQRMA8xDTALBgNVBAMMBHQ5 -MjmkETAPMQ0wCwYDVQQDDAR0OTMwpBEwDzENMAsGA1UEAwwEdDkzMaQRMA8xDTAL -BgNVBAMMBHQ5MzKkETAPMQ0wCwYDVQQDDAR0OTMzpBEwDzENMAsGA1UEAwwEdDkz -NKQRMA8xDTALBgNVBAMMBHQ5MzWkETAPMQ0wCwYDVQQDDAR0OTM2pBEwDzENMAsG -A1UEAwwEdDkzN6QRMA8xDTALBgNVBAMMBHQ5MzikETAPMQ0wCwYDVQQDDAR0OTM5 -pBEwDzENMAsGA1UEAwwEdDk0MKQRMA8xDTALBgNVBAMMBHQ5NDGkETAPMQ0wCwYD -VQQDDAR0OTQypBEwDzENMAsGA1UEAwwEdDk0M6QRMA8xDTALBgNVBAMMBHQ5NDSk -ETAPMQ0wCwYDVQQDDAR0OTQ1pBEwDzENMAsGA1UEAwwEdDk0NqQRMA8xDTALBgNV -BAMMBHQ5NDekETAPMQ0wCwYDVQQDDAR0OTQ4pBEwDzENMAsGA1UEAwwEdDk0OaQR -MA8xDTALBgNVBAMMBHQ5NTCkETAPMQ0wCwYDVQQDDAR0OTUxpBEwDzENMAsGA1UE -AwwEdDk1MqQRMA8xDTALBgNVBAMMBHQ5NTOkETAPMQ0wCwYDVQQDDAR0OTU0pBEw -DzENMAsGA1UEAwwEdDk1NaQRMA8xDTALBgNVBAMMBHQ5NTakETAPMQ0wCwYDVQQD -DAR0OTU3pBEwDzENMAsGA1UEAwwEdDk1OKQRMA8xDTALBgNVBAMMBHQ5NTmkETAP -MQ0wCwYDVQQDDAR0OTYwpBEwDzENMAsGA1UEAwwEdDk2MaQRMA8xDTALBgNVBAMM -BHQ5NjKkETAPMQ0wCwYDVQQDDAR0OTYzpBEwDzENMAsGA1UEAwwEdDk2NKQRMA8x -DTALBgNVBAMMBHQ5NjWkETAPMQ0wCwYDVQQDDAR0OTY2pBEwDzENMAsGA1UEAwwE -dDk2N6QRMA8xDTALBgNVBAMMBHQ5NjikETAPMQ0wCwYDVQQDDAR0OTY5pBEwDzEN -MAsGA1UEAwwEdDk3MKQRMA8xDTALBgNVBAMMBHQ5NzGkETAPMQ0wCwYDVQQDDAR0 -OTcypBEwDzENMAsGA1UEAwwEdDk3M6QRMA8xDTALBgNVBAMMBHQ5NzSkETAPMQ0w -CwYDVQQDDAR0OTc1pBEwDzENMAsGA1UEAwwEdDk3NqQRMA8xDTALBgNVBAMMBHQ5 -NzekETAPMQ0wCwYDVQQDDAR0OTc4pBEwDzENMAsGA1UEAwwEdDk3OaQRMA8xDTAL -BgNVBAMMBHQ5ODCkETAPMQ0wCwYDVQQDDAR0OTgxpBEwDzENMAsGA1UEAwwEdDk4 -MqQRMA8xDTALBgNVBAMMBHQ5ODOkETAPMQ0wCwYDVQQDDAR0OTg0pBEwDzENMAsG -A1UEAwwEdDk4NaQRMA8xDTALBgNVBAMMBHQ5ODakETAPMQ0wCwYDVQQDDAR0OTg3 -pBEwDzENMAsGA1UEAwwEdDk4OKQRMA8xDTALBgNVBAMMBHQ5ODmkETAPMQ0wCwYD -VQQDDAR0OTkwpBEwDzENMAsGA1UEAwwEdDk5MaQRMA8xDTALBgNVBAMMBHQ5OTKk -ETAPMQ0wCwYDVQQDDAR0OTkzpBEwDzENMAsGA1UEAwwEdDk5NKQRMA8xDTALBgNV -BAMMBHQ5OTWkETAPMQ0wCwYDVQQDDAR0OTk2pBEwDzENMAsGA1UEAwwEdDk5N6QR -MA8xDTALBgNVBAMMBHQ5OTikETAPMQ0wCwYDVQQDDAR0OTk5pBIwEDEOMAwGA1UE -AwwFdDEwMDCkEjAQMQ4wDAYDVQQDDAV0MTAwMaQSMBAxDjAMBgNVBAMMBXQxMDAy -pBIwEDEOMAwGA1UEAwwFdDEwMDOkEjAQMQ4wDAYDVQQDDAV0MTAwNKQSMBAxDjAM -BgNVBAMMBXQxMDA1pBIwEDEOMAwGA1UEAwwFdDEwMDakEjAQMQ4wDAYDVQQDDAV0 -MTAwN6QSMBAxDjAMBgNVBAMMBXQxMDA4pBIwEDEOMAwGA1UEAwwFdDEwMDmkEjAQ -MQ4wDAYDVQQDDAV0MTAxMKQSMBAxDjAMBgNVBAMMBXQxMDExpBIwEDEOMAwGA1UE -AwwFdDEwMTKkEjAQMQ4wDAYDVQQDDAV0MTAxM6QSMBAxDjAMBgNVBAMMBXQxMDE0 -pBIwEDEOMAwGA1UEAwwFdDEwMTWkEjAQMQ4wDAYDVQQDDAV0MTAxNqQSMBAxDjAM -BgNVBAMMBXQxMDE3pBIwEDEOMAwGA1UEAwwFdDEwMTikEjAQMQ4wDAYDVQQDDAV0 -MTAxOaQSMBAxDjAMBgNVBAMMBXQxMDIwpBIwEDEOMAwGA1UEAwwFdDEwMjGkEjAQ -MQ4wDAYDVQQDDAV0MTAyMqQSMBAxDjAMBgNVBAMMBXQxMDIzMA0GCSqGSIb3DQEB -CwUAA4IBAQCsaFcXH4XdFQ83K+/gx/oSaX6L9FVr5BYE7JyygYwt6eIvyj3LIbqE -IPqTcNodP2hPiofuebQdPUNOca515G/NBlA3FdzjNsFpNr+ybuClrxtb84Yapp5H -zyQSoVjFf4SQL50RV79vtJdsXogD45K+l3bM3cXLTSJbS5D35kqWpIUI3iPiWwLb -1wAmMk3kk+vHks8U2nb7+cQ7dIEyeheiT8D7OGftZ3H+K0ZRpA9exz47yyuDzdgz -z5jDX+HrnFsU4IE20NI8ctKqx7qmlyVFd6dXVIHFNEPR8D7kZmm/5fr5sAHPMEqz -uAXU6z2r+eHC83Jp/4CScmJkK0MOQfZg ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.pem b/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.pem deleted file mode 100644 index 690368a460..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/many-names/out/t0_7.pem +++ /dev/null @@ -1,496 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 2f:ab:b4:3d:dc:c0:77:80:2a:03:09:ad:43:74:02:bf:98:d8:db - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=t0 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - RSA Public-Key: (2048 bit) - Modulus: - 00:db:2c:53:01:ce:f9:1a:83:36:52:51:2a:5b:42: - 63:de:32:75:11:6a:7d:b0:a1:e4:77:47:9b:71:e5: - a6:2d:64:d7:ae:5b:04:ed:7a:3f:c7:f6:ca:2b:2b: - ad:cd:6c:88:a5:8e:36:fb:e7:a2:22:b5:7d:54:79: - e9:d5:7a:5b:ca:2b:29:6c:0d:84:0a:10:c4:21:b6: - 58:98:bb:0d:b6:0c:8d:56:5b:2c:85:59:07:ca:06: - 46:36:25:1a:29:8e:c4:39:b7:c3:31:ce:6e:49:c2: - 01:cf:b0:3b:27:43:8a:e3:d5:06:1f:2d:93:9d:dd: - 7a:45:65:6d:fd:b4:b1:c0:10:59:42:f2:1e:8f:ce: - 43:ac:97:25:c1:7c:e2:51:e1:44:35:5b:94:aa:03: - 6e:da:71:2f:25:7f:58:30:01:e1:12:17:1e:f2:aa: - 6c:22:80:b1:c9:65:ea:77:95:b3:07:c4:f7:72:38: - 34:fe:a0:43:33:4c:66:6d:a1:e8:a1:04:bc:6f:14: - 39:39:44:2e:38:37:74:c9:0a:21:85:91:21:b7:4e: - ba:b0:99:4a:76:98:7b:58:ca:1c:d3:b0:40:c3:d9: - 2a:75:fb:eb:19:ea:e3:1a:98:31:52:97:e9:7f:a4: - 7b:21:7f:2f:dc:62:86:8f:fd:fd:a8:88:e8:4b:44: - 52:bd - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 3B:B4:05:CC:AA:BA:51:3D:FC:F2:F9:1E:25:53:72:E1:3A:F2:9A:DF - X509v3 Authority Key Identifier: - keyid:92:11:3F:AC:11:96:C7:66:37:CF:83:5A:24:F0:3A:77:AF:33:8D:7F - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Server Authentication, TLS Web Client Authentication - X509v3 Subject Alternative Name: - DirName:/CN=t0, DirName:/CN=t1, DirName:/CN=t2, DirName:/CN=t3, DirName:/CN=t4, DirName:/CN=t5, DirName:/CN=t6, DirName:/CN=t7, DirName:/CN=t8, DirName:/CN=t9, DirName:/CN=t10, DirName:/CN=t11, DirName:/CN=t12, DirName:/CN=t13, DirName:/CN=t14, DirName:/CN=t15, DirName:/CN=t16, DirName:/CN=t17, DirName:/CN=t18, DirName:/CN=t19, DirName:/CN=t20, DirName:/CN=t21, DirName:/CN=t22, DirName:/CN=t23, DirName:/CN=t24, DirName:/CN=t25, DirName:/CN=t26, DirName:/CN=t27, DirName:/CN=t28, DirName:/CN=t29, DirName:/CN=t30, DirName:/CN=t31, DirName:/CN=t32, DirName:/CN=t33, DirName:/CN=t34, DirName:/CN=t35, DirName:/CN=t36, DirName:/CN=t37, DirName:/CN=t38, DirName:/CN=t39, DirName:/CN=t40, DirName:/CN=t41, DirName:/CN=t42, DirName:/CN=t43, DirName:/CN=t44, DirName:/CN=t45, DirName:/CN=t46, DirName:/CN=t47, DirName:/CN=t48, DirName:/CN=t49, DirName:/CN=t50, DirName:/CN=t51, DirName:/CN=t52, DirName:/CN=t53, DirName:/CN=t54, DirName:/CN=t55, DirName:/CN=t56, DirName:/CN=t57, DirName:/CN=t58, DirName:/CN=t59, DirName:/CN=t60, DirName:/CN=t61, DirName:/CN=t62, DirName:/CN=t63, DirName:/CN=t64, DirName:/CN=t65, DirName:/CN=t66, DirName:/CN=t67, DirName:/CN=t68, DirName:/CN=t69, DirName:/CN=t70, DirName:/CN=t71, DirName:/CN=t72, DirName:/CN=t73, DirName:/CN=t74, DirName:/CN=t75, DirName:/CN=t76, DirName:/CN=t77, DirName:/CN=t78, DirName:/CN=t79, DirName:/CN=t80, DirName:/CN=t81, DirName:/CN=t82, DirName:/CN=t83, DirName:/CN=t84, DirName:/CN=t85, DirName:/CN=t86, DirName:/CN=t87, DirName:/CN=t88, DirName:/CN=t89, DirName:/CN=t90, DirName:/CN=t91, DirName:/CN=t92, DirName:/CN=t93, DirName:/CN=t94, DirName:/CN=t95, DirName:/CN=t96, DirName:/CN=t97, DirName:/CN=t98, DirName:/CN=t99, DirName:/CN=t100, DirName:/CN=t101, DirName:/CN=t102, DirName:/CN=t103, DirName:/CN=t104, DirName:/CN=t105, DirName:/CN=t106, DirName:/CN=t107, DirName:/CN=t108, DirName:/CN=t109, DirName:/CN=t110, DirName:/CN=t111, DirName:/CN=t112, DirName:/CN=t113, DirName:/CN=t114, DirName:/CN=t115, DirName:/CN=t116, DirName:/CN=t117, DirName:/CN=t118, DirName:/CN=t119, DirName:/CN=t120, DirName:/CN=t121, DirName:/CN=t122, DirName:/CN=t123, DirName:/CN=t124, DirName:/CN=t125, DirName:/CN=t126, DirName:/CN=t127, DirName:/CN=t128, DirName:/CN=t129, DirName:/CN=t130, DirName:/CN=t131, DirName:/CN=t132, DirName:/CN=t133, DirName:/CN=t134, DirName:/CN=t135, DirName:/CN=t136, DirName:/CN=t137, DirName:/CN=t138, DirName:/CN=t139, DirName:/CN=t140, DirName:/CN=t141, DirName:/CN=t142, DirName:/CN=t143, DirName:/CN=t144, DirName:/CN=t145, DirName:/CN=t146, DirName:/CN=t147, DirName:/CN=t148, DirName:/CN=t149, DirName:/CN=t150, DirName:/CN=t151, DirName:/CN=t152, DirName:/CN=t153, DirName:/CN=t154, DirName:/CN=t155, DirName:/CN=t156, DirName:/CN=t157, DirName:/CN=t158, DirName:/CN=t159, DirName:/CN=t160, DirName:/CN=t161, DirName:/CN=t162, DirName:/CN=t163, DirName:/CN=t164, DirName:/CN=t165, DirName:/CN=t166, DirName:/CN=t167, DirName:/CN=t168, DirName:/CN=t169, DirName:/CN=t170, DirName:/CN=t171, DirName:/CN=t172, DirName:/CN=t173, DirName:/CN=t174, DirName:/CN=t175, DirName:/CN=t176, DirName:/CN=t177, DirName:/CN=t178, DirName:/CN=t179, DirName:/CN=t180, DirName:/CN=t181, DirName:/CN=t182, DirName:/CN=t183, DirName:/CN=t184, DirName:/CN=t185, DirName:/CN=t186, DirName:/CN=t187, DirName:/CN=t188, DirName:/CN=t189, DirName:/CN=t190, DirName:/CN=t191, DirName:/CN=t192, DirName:/CN=t193, DirName:/CN=t194, DirName:/CN=t195, DirName:/CN=t196, DirName:/CN=t197, DirName:/CN=t198, DirName:/CN=t199, DirName:/CN=t200, DirName:/CN=t201, DirName:/CN=t202, DirName:/CN=t203, DirName:/CN=t204, DirName:/CN=t205, DirName:/CN=t206, DirName:/CN=t207, DirName:/CN=t208, DirName:/CN=t209, DirName:/CN=t210, DirName:/CN=t211, DirName:/CN=t212, DirName:/CN=t213, DirName:/CN=t214, DirName:/CN=t215, DirName:/CN=t216, DirName:/CN=t217, DirName:/CN=t218, DirName:/CN=t219, DirName:/CN=t220, DirName:/CN=t221, DirName:/CN=t222, DirName:/CN=t223, DirName:/CN=t224, DirName:/CN=t225, DirName:/CN=t226, DirName:/CN=t227, DirName:/CN=t228, DirName:/CN=t229, DirName:/CN=t230, DirName:/CN=t231, DirName:/CN=t232, DirName:/CN=t233, DirName:/CN=t234, DirName:/CN=t235, DirName:/CN=t236, DirName:/CN=t237, DirName:/CN=t238, DirName:/CN=t239, DirName:/CN=t240, DirName:/CN=t241, DirName:/CN=t242, DirName:/CN=t243, DirName:/CN=t244, DirName:/CN=t245, DirName:/CN=t246, DirName:/CN=t247, DirName:/CN=t248, DirName:/CN=t249, DirName:/CN=t250, DirName:/CN=t251, DirName:/CN=t252, DirName:/CN=t253, DirName:/CN=t254, DirName:/CN=t255, DirName:/CN=t256, DirName:/CN=t257, DirName:/CN=t258, DirName:/CN=t259, DirName:/CN=t260, DirName:/CN=t261, DirName:/CN=t262, DirName:/CN=t263, DirName:/CN=t264, DirName:/CN=t265, DirName:/CN=t266, DirName:/CN=t267, DirName:/CN=t268, DirName:/CN=t269, DirName:/CN=t270, DirName:/CN=t271, DirName:/CN=t272, DirName:/CN=t273, DirName:/CN=t274, DirName:/CN=t275, DirName:/CN=t276, DirName:/CN=t277, DirName:/CN=t278, DirName:/CN=t279, DirName:/CN=t280, DirName:/CN=t281, DirName:/CN=t282, DirName:/CN=t283, DirName:/CN=t284, DirName:/CN=t285, DirName:/CN=t286, DirName:/CN=t287, DirName:/CN=t288, DirName:/CN=t289, DirName:/CN=t290, DirName:/CN=t291, DirName:/CN=t292, DirName:/CN=t293, DirName:/CN=t294, DirName:/CN=t295, DirName:/CN=t296, DirName:/CN=t297, DirName:/CN=t298, DirName:/CN=t299, DirName:/CN=t300, DirName:/CN=t301, DirName:/CN=t302, DirName:/CN=t303, DirName:/CN=t304, DirName:/CN=t305, DirName:/CN=t306, DirName:/CN=t307, DirName:/CN=t308, DirName:/CN=t309, DirName:/CN=t310, DirName:/CN=t311, DirName:/CN=t312, DirName:/CN=t313, DirName:/CN=t314, DirName:/CN=t315, DirName:/CN=t316, DirName:/CN=t317, DirName:/CN=t318, DirName:/CN=t319, DirName:/CN=t320, DirName:/CN=t321, DirName:/CN=t322, DirName:/CN=t323, DirName:/CN=t324, DirName:/CN=t325, DirName:/CN=t326, DirName:/CN=t327, DirName:/CN=t328, DirName:/CN=t329, DirName:/CN=t330, DirName:/CN=t331, DirName:/CN=t332, DirName:/CN=t333, DirName:/CN=t334, DirName:/CN=t335, DirName:/CN=t336, DirName:/CN=t337, DirName:/CN=t338, DirName:/CN=t339, DirName:/CN=t340, DirName:/CN=t341, DirName:/CN=t342, DirName:/CN=t343, DirName:/CN=t344, DirName:/CN=t345, DirName:/CN=t346, DirName:/CN=t347, DirName:/CN=t348, DirName:/CN=t349, DirName:/CN=t350, DirName:/CN=t351, DirName:/CN=t352, DirName:/CN=t353, DirName:/CN=t354, DirName:/CN=t355, DirName:/CN=t356, DirName:/CN=t357, DirName:/CN=t358, DirName:/CN=t359, DirName:/CN=t360, DirName:/CN=t361, DirName:/CN=t362, DirName:/CN=t363, DirName:/CN=t364, DirName:/CN=t365, DirName:/CN=t366, DirName:/CN=t367, DirName:/CN=t368, DirName:/CN=t369, DirName:/CN=t370, DirName:/CN=t371, DirName:/CN=t372, DirName:/CN=t373, DirName:/CN=t374, DirName:/CN=t375, DirName:/CN=t376, DirName:/CN=t377, DirName:/CN=t378, DirName:/CN=t379, DirName:/CN=t380, DirName:/CN=t381, DirName:/CN=t382, DirName:/CN=t383, DirName:/CN=t384, DirName:/CN=t385, DirName:/CN=t386, DirName:/CN=t387, DirName:/CN=t388, DirName:/CN=t389, DirName:/CN=t390, DirName:/CN=t391, DirName:/CN=t392, DirName:/CN=t393, DirName:/CN=t394, DirName:/CN=t395, DirName:/CN=t396, DirName:/CN=t397, DirName:/CN=t398, DirName:/CN=t399, DirName:/CN=t400, DirName:/CN=t401, DirName:/CN=t402, DirName:/CN=t403, DirName:/CN=t404, DirName:/CN=t405, DirName:/CN=t406, DirName:/CN=t407, DirName:/CN=t408, DirName:/CN=t409, DirName:/CN=t410, DirName:/CN=t411, DirName:/CN=t412, DirName:/CN=t413, DirName:/CN=t414, DirName:/CN=t415, DirName:/CN=t416, DirName:/CN=t417, DirName:/CN=t418, DirName:/CN=t419, DirName:/CN=t420, DirName:/CN=t421, DirName:/CN=t422, DirName:/CN=t423, DirName:/CN=t424, DirName:/CN=t425, DirName:/CN=t426, DirName:/CN=t427, DirName:/CN=t428, DirName:/CN=t429, DirName:/CN=t430, DirName:/CN=t431, DirName:/CN=t432, DirName:/CN=t433, DirName:/CN=t434, DirName:/CN=t435, DirName:/CN=t436, DirName:/CN=t437, DirName:/CN=t438, DirName:/CN=t439, DirName:/CN=t440, DirName:/CN=t441, DirName:/CN=t442, DirName:/CN=t443, DirName:/CN=t444, DirName:/CN=t445, DirName:/CN=t446, DirName:/CN=t447, DirName:/CN=t448, DirName:/CN=t449, DirName:/CN=t450, DirName:/CN=t451, DirName:/CN=t452, DirName:/CN=t453, DirName:/CN=t454, DirName:/CN=t455, DirName:/CN=t456, DirName:/CN=t457, DirName:/CN=t458, DirName:/CN=t459, DirName:/CN=t460, DirName:/CN=t461, DirName:/CN=t462, DirName:/CN=t463, DirName:/CN=t464, DirName:/CN=t465, DirName:/CN=t466, DirName:/CN=t467, DirName:/CN=t468, DirName:/CN=t469, DirName:/CN=t470, DirName:/CN=t471, DirName:/CN=t472, DirName:/CN=t473, DirName:/CN=t474, DirName:/CN=t475, DirName:/CN=t476, DirName:/CN=t477, DirName:/CN=t478, DirName:/CN=t479, DirName:/CN=t480, DirName:/CN=t481, DirName:/CN=t482, DirName:/CN=t483, DirName:/CN=t484, DirName:/CN=t485, DirName:/CN=t486, DirName:/CN=t487, DirName:/CN=t488, DirName:/CN=t489, DirName:/CN=t490, DirName:/CN=t491, DirName:/CN=t492, DirName:/CN=t493, DirName:/CN=t494, DirName:/CN=t495, DirName:/CN=t496, DirName:/CN=t497, DirName:/CN=t498, DirName:/CN=t499, DirName:/CN=t500, DirName:/CN=t501, DirName:/CN=t502, DirName:/CN=t503, DirName:/CN=t504, DirName:/CN=t505, DirName:/CN=t506, DirName:/CN=t507, DirName:/CN=t508, DirName:/CN=t509, DirName:/CN=t510, DirName:/CN=t511, DirName:/CN=t512, DirName:/CN=t513, DirName:/CN=t514, DirName:/CN=t515, DirName:/CN=t516, DirName:/CN=t517, DirName:/CN=t518, DirName:/CN=t519, DirName:/CN=t520, DirName:/CN=t521, DirName:/CN=t522, DirName:/CN=t523, DirName:/CN=t524, DirName:/CN=t525, DirName:/CN=t526, DirName:/CN=t527, DirName:/CN=t528, DirName:/CN=t529, DirName:/CN=t530, DirName:/CN=t531, DirName:/CN=t532, DirName:/CN=t533, DirName:/CN=t534, DirName:/CN=t535, DirName:/CN=t536, DirName:/CN=t537, DirName:/CN=t538, DirName:/CN=t539, DirName:/CN=t540, DirName:/CN=t541, DirName:/CN=t542, DirName:/CN=t543, DirName:/CN=t544, DirName:/CN=t545, DirName:/CN=t546, DirName:/CN=t547, DirName:/CN=t548, DirName:/CN=t549, DirName:/CN=t550, DirName:/CN=t551, DirName:/CN=t552, DirName:/CN=t553, DirName:/CN=t554, DirName:/CN=t555, DirName:/CN=t556, DirName:/CN=t557, DirName:/CN=t558, DirName:/CN=t559, DirName:/CN=t560, DirName:/CN=t561, DirName:/CN=t562, DirName:/CN=t563, DirName:/CN=t564, DirName:/CN=t565, DirName:/CN=t566, DirName:/CN=t567, DirName:/CN=t568, DirName:/CN=t569, DirName:/CN=t570, DirName:/CN=t571, DirName:/CN=t572, DirName:/CN=t573, DirName:/CN=t574, DirName:/CN=t575, DirName:/CN=t576, DirName:/CN=t577, DirName:/CN=t578, DirName:/CN=t579, DirName:/CN=t580, DirName:/CN=t581, DirName:/CN=t582, DirName:/CN=t583, DirName:/CN=t584, DirName:/CN=t585, DirName:/CN=t586, DirName:/CN=t587, DirName:/CN=t588, DirName:/CN=t589, DirName:/CN=t590, DirName:/CN=t591, DirName:/CN=t592, DirName:/CN=t593, DirName:/CN=t594, DirName:/CN=t595, DirName:/CN=t596, DirName:/CN=t597, DirName:/CN=t598, DirName:/CN=t599, DirName:/CN=t600, DirName:/CN=t601, DirName:/CN=t602, DirName:/CN=t603, DirName:/CN=t604, DirName:/CN=t605, DirName:/CN=t606, DirName:/CN=t607, DirName:/CN=t608, DirName:/CN=t609, DirName:/CN=t610, DirName:/CN=t611, DirName:/CN=t612, DirName:/CN=t613, DirName:/CN=t614, DirName:/CN=t615, DirName:/CN=t616, DirName:/CN=t617, DirName:/CN=t618, DirName:/CN=t619, DirName:/CN=t620, DirName:/CN=t621, DirName:/CN=t622, DirName:/CN=t623, DirName:/CN=t624, DirName:/CN=t625, DirName:/CN=t626, DirName:/CN=t627, DirName:/CN=t628, DirName:/CN=t629, DirName:/CN=t630, DirName:/CN=t631, DirName:/CN=t632, DirName:/CN=t633, DirName:/CN=t634, DirName:/CN=t635, DirName:/CN=t636, DirName:/CN=t637, DirName:/CN=t638, DirName:/CN=t639, DirName:/CN=t640, DirName:/CN=t641, DirName:/CN=t642, DirName:/CN=t643, DirName:/CN=t644, DirName:/CN=t645, DirName:/CN=t646, DirName:/CN=t647, DirName:/CN=t648, DirName:/CN=t649, DirName:/CN=t650, DirName:/CN=t651, DirName:/CN=t652, DirName:/CN=t653, DirName:/CN=t654, DirName:/CN=t655, DirName:/CN=t656, DirName:/CN=t657, DirName:/CN=t658, DirName:/CN=t659, DirName:/CN=t660, DirName:/CN=t661, DirName:/CN=t662, DirName:/CN=t663, DirName:/CN=t664, DirName:/CN=t665, DirName:/CN=t666, DirName:/CN=t667, DirName:/CN=t668, DirName:/CN=t669, DirName:/CN=t670, DirName:/CN=t671, DirName:/CN=t672, DirName:/CN=t673, DirName:/CN=t674, DirName:/CN=t675, DirName:/CN=t676, DirName:/CN=t677, DirName:/CN=t678, DirName:/CN=t679, DirName:/CN=t680, DirName:/CN=t681, DirName:/CN=t682, DirName:/CN=t683, DirName:/CN=t684, DirName:/CN=t685, DirName:/CN=t686, DirName:/CN=t687, DirName:/CN=t688, DirName:/CN=t689, DirName:/CN=t690, DirName:/CN=t691, DirName:/CN=t692, DirName:/CN=t693, DirName:/CN=t694, DirName:/CN=t695, DirName:/CN=t696, DirName:/CN=t697, DirName:/CN=t698, DirName:/CN=t699, DirName:/CN=t700, DirName:/CN=t701, DirName:/CN=t702, DirName:/CN=t703, DirName:/CN=t704, DirName:/CN=t705, DirName:/CN=t706, DirName:/CN=t707, DirName:/CN=t708, DirName:/CN=t709, DirName:/CN=t710, DirName:/CN=t711, DirName:/CN=t712, DirName:/CN=t713, DirName:/CN=t714, DirName:/CN=t715, DirName:/CN=t716, DirName:/CN=t717, DirName:/CN=t718, DirName:/CN=t719, DirName:/CN=t720, DirName:/CN=t721, DirName:/CN=t722, DirName:/CN=t723, DirName:/CN=t724, DirName:/CN=t725, DirName:/CN=t726, DirName:/CN=t727, DirName:/CN=t728, DirName:/CN=t729, DirName:/CN=t730, DirName:/CN=t731, DirName:/CN=t732, DirName:/CN=t733, DirName:/CN=t734, DirName:/CN=t735, DirName:/CN=t736, DirName:/CN=t737, DirName:/CN=t738, DirName:/CN=t739, DirName:/CN=t740, DirName:/CN=t741, DirName:/CN=t742, DirName:/CN=t743, DirName:/CN=t744, DirName:/CN=t745, DirName:/CN=t746, DirName:/CN=t747, DirName:/CN=t748, DirName:/CN=t749, DirName:/CN=t750, DirName:/CN=t751, DirName:/CN=t752, DirName:/CN=t753, DirName:/CN=t754, DirName:/CN=t755, DirName:/CN=t756, DirName:/CN=t757, DirName:/CN=t758, DirName:/CN=t759, DirName:/CN=t760, DirName:/CN=t761, DirName:/CN=t762, DirName:/CN=t763, DirName:/CN=t764, DirName:/CN=t765, DirName:/CN=t766, DirName:/CN=t767, DirName:/CN=t768, DirName:/CN=t769, DirName:/CN=t770, DirName:/CN=t771, DirName:/CN=t772, DirName:/CN=t773, DirName:/CN=t774, DirName:/CN=t775, DirName:/CN=t776, DirName:/CN=t777, DirName:/CN=t778, DirName:/CN=t779, DirName:/CN=t780, DirName:/CN=t781, DirName:/CN=t782, DirName:/CN=t783, DirName:/CN=t784, DirName:/CN=t785, DirName:/CN=t786, DirName:/CN=t787, DirName:/CN=t788, DirName:/CN=t789, DirName:/CN=t790, DirName:/CN=t791, DirName:/CN=t792, DirName:/CN=t793, DirName:/CN=t794, DirName:/CN=t795, DirName:/CN=t796, DirName:/CN=t797, DirName:/CN=t798, DirName:/CN=t799, DirName:/CN=t800, DirName:/CN=t801, DirName:/CN=t802, DirName:/CN=t803, DirName:/CN=t804, DirName:/CN=t805, DirName:/CN=t806, DirName:/CN=t807, DirName:/CN=t808, DirName:/CN=t809, DirName:/CN=t810, DirName:/CN=t811, DirName:/CN=t812, DirName:/CN=t813, DirName:/CN=t814, DirName:/CN=t815, DirName:/CN=t816, DirName:/CN=t817, DirName:/CN=t818, DirName:/CN=t819, DirName:/CN=t820, DirName:/CN=t821, DirName:/CN=t822, DirName:/CN=t823, DirName:/CN=t824, DirName:/CN=t825, DirName:/CN=t826, DirName:/CN=t827, DirName:/CN=t828, DirName:/CN=t829, DirName:/CN=t830, DirName:/CN=t831, DirName:/CN=t832, DirName:/CN=t833, DirName:/CN=t834, DirName:/CN=t835, DirName:/CN=t836, DirName:/CN=t837, DirName:/CN=t838, DirName:/CN=t839, DirName:/CN=t840, DirName:/CN=t841, DirName:/CN=t842, DirName:/CN=t843, DirName:/CN=t844, DirName:/CN=t845, DirName:/CN=t846, DirName:/CN=t847, DirName:/CN=t848, DirName:/CN=t849, DirName:/CN=t850, DirName:/CN=t851, DirName:/CN=t852, DirName:/CN=t853, DirName:/CN=t854, DirName:/CN=t855, DirName:/CN=t856, DirName:/CN=t857, DirName:/CN=t858, DirName:/CN=t859, DirName:/CN=t860, DirName:/CN=t861, DirName:/CN=t862, DirName:/CN=t863, DirName:/CN=t864, DirName:/CN=t865, DirName:/CN=t866, DirName:/CN=t867, DirName:/CN=t868, DirName:/CN=t869, DirName:/CN=t870, DirName:/CN=t871, DirName:/CN=t872, DirName:/CN=t873, DirName:/CN=t874, DirName:/CN=t875, DirName:/CN=t876, DirName:/CN=t877, DirName:/CN=t878, DirName:/CN=t879, DirName:/CN=t880, DirName:/CN=t881, DirName:/CN=t882, DirName:/CN=t883, DirName:/CN=t884, DirName:/CN=t885, DirName:/CN=t886, DirName:/CN=t887, DirName:/CN=t888, DirName:/CN=t889, DirName:/CN=t890, DirName:/CN=t891, DirName:/CN=t892, DirName:/CN=t893, DirName:/CN=t894, DirName:/CN=t895, DirName:/CN=t896, DirName:/CN=t897, DirName:/CN=t898, DirName:/CN=t899, DirName:/CN=t900, DirName:/CN=t901, DirName:/CN=t902, DirName:/CN=t903, DirName:/CN=t904, DirName:/CN=t905, DirName:/CN=t906, DirName:/CN=t907, DirName:/CN=t908, DirName:/CN=t909, DirName:/CN=t910, DirName:/CN=t911, DirName:/CN=t912, DirName:/CN=t913, DirName:/CN=t914, DirName:/CN=t915, DirName:/CN=t916, DirName:/CN=t917, DirName:/CN=t918, DirName:/CN=t919, DirName:/CN=t920, DirName:/CN=t921, DirName:/CN=t922, DirName:/CN=t923, DirName:/CN=t924, DirName:/CN=t925, DirName:/CN=t926, DirName:/CN=t927, DirName:/CN=t928, DirName:/CN=t929, DirName:/CN=t930, DirName:/CN=t931, DirName:/CN=t932, DirName:/CN=t933, DirName:/CN=t934, DirName:/CN=t935, DirName:/CN=t936, DirName:/CN=t937, DirName:/CN=t938, DirName:/CN=t939, DirName:/CN=t940, DirName:/CN=t941, DirName:/CN=t942, DirName:/CN=t943, DirName:/CN=t944, DirName:/CN=t945, DirName:/CN=t946, DirName:/CN=t947, DirName:/CN=t948, DirName:/CN=t949, DirName:/CN=t950, DirName:/CN=t951, DirName:/CN=t952, DirName:/CN=t953, DirName:/CN=t954, DirName:/CN=t955, DirName:/CN=t956, DirName:/CN=t957, DirName:/CN=t958, DirName:/CN=t959, DirName:/CN=t960, DirName:/CN=t961, DirName:/CN=t962, DirName:/CN=t963, DirName:/CN=t964, DirName:/CN=t965, DirName:/CN=t966, DirName:/CN=t967, DirName:/CN=t968, DirName:/CN=t969, DirName:/CN=t970, DirName:/CN=t971, DirName:/CN=t972, DirName:/CN=t973, DirName:/CN=t974, DirName:/CN=t975, DirName:/CN=t976, DirName:/CN=t977, DirName:/CN=t978, DirName:/CN=t979, DirName:/CN=t980, DirName:/CN=t981, DirName:/CN=t982, DirName:/CN=t983, DirName:/CN=t984, DirName:/CN=t985, DirName:/CN=t986, DirName:/CN=t987, DirName:/CN=t988, DirName:/CN=t989, DirName:/CN=t990, DirName:/CN=t991, DirName:/CN=t992, DirName:/CN=t993, DirName:/CN=t994, DirName:/CN=t995, DirName:/CN=t996, DirName:/CN=t997, DirName:/CN=t998, DirName:/CN=t999, DirName:/CN=t1000, DirName:/CN=t1001, DirName:/CN=t1002, DirName:/CN=t1003, DirName:/CN=t1004, DirName:/CN=t1005, DirName:/CN=t1006, DirName:/CN=t1007, DirName:/CN=t1008, DirName:/CN=t1009, DirName:/CN=t1010, DirName:/CN=t1011, DirName:/CN=t1012, DirName:/CN=t1013, DirName:/CN=t1014, DirName:/CN=t1015, DirName:/CN=t1016, DirName:/CN=t1017, DirName:/CN=t1018, DirName:/CN=t1019, DirName:/CN=t1020, DirName:/CN=t1021, DirName:/CN=t1022, DirName:/CN=t1023 - Signature Algorithm: sha256WithRSAEncryption - 77:af:27:9b:23:82:9d:90:b4:3c:02:1f:d4:a9:c8:0c:7f:58: - 19:ae:9a:86:fe:f5:b1:a4:ae:cb:af:46:3a:04:ff:3c:cf:ea: - 6b:df:16:cb:d1:89:8d:8c:a7:f9:11:e7:e9:90:92:6b:54:d5: - fa:aa:24:96:63:61:57:4a:81:da:7e:0b:2e:c8:04:34:6a:dd: - 6e:46:27:97:5a:9d:db:8c:2d:e8:5a:45:11:bf:7d:1a:25:7a: - ca:9e:b1:e3:1c:53:22:0b:37:b6:fa:d6:1e:83:6d:54:40:4d: - 71:b3:e3:52:dc:84:d1:95:fc:92:e4:f0:85:ce:6d:4e:36:a6: - 6c:b4:35:7e:0e:e8:b6:8b:09:b0:c8:4e:f1:b8:aa:fe:e8:28: - ba:8e:a3:31:ef:99:bd:da:9e:cb:5a:02:95:24:45:41:3c:ed: - 7a:92:94:bd:9d:fd:7e:07:51:8c:55:97:07:53:60:b4:dd:64: - 02:6c:2b:18:32:8d:df:ed:89:4a:dd:37:32:cb:66:9a:fa:b8: - e8:3d:87:8f:63:6a:3f:6f:2c:91:25:b3:85:71:0a:39:aa:24: - a5:8e:7b:c2:57:86:ed:3b:e7:33:6d:e9:a4:c1:cd:88:8b:0e: - c8:06:63:9b:40:40:2a:3c:b2:96:12:2d:1c:53:fe:83:ec:4a: - 50:be:c6:53 ------BEGIN CERTIFICATE----- -MIJPWDCCTkCgAwIBAgITL6u0PdzAd4AqAwmtQ3QCv5jY2zANBgkqhkiG9w0BAQsF -ADAXMRUwEwYDVQQDDAxJbnRlcm1lZGlhdGUwHhcNMjExMDA1MTIwMDAwWhcNMjIx -MDA1MTIwMDAwWjANMQswCQYDVQQDDAJ0MDCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANssUwHO+RqDNlJRKltCY94ydRFqfbCh5HdHm3Hlpi1k165bBO16 -P8f2yisrrc1siKWONvvnoiK1fVR56dV6W8orKWwNhAoQxCG2WJi7DbYMjVZbLIVZ -B8oGRjYlGimOxDm3wzHObknCAc+wOydDiuPVBh8tk53dekVlbf20scAQWULyHo/O -Q6yXJcF84lHhRDVblKoDbtpxLyV/WDAB4RIXHvKqbCKAscll6neVswfE93I4NP6g -QzNMZm2h6KEEvG8UOTlELjg3dMkKIYWRIbdOurCZSnaYe1jKHNOwQMPZKnX76xnq -4xqYMVKX6X+keyF/L9xiho/9/aiI6EtEUr0CAwEAAaOCTKUwgkyhMB0GA1UdDgQW -BBQ7tAXMqrpRPfzy+R4lU3LhOvKa3zAfBgNVHSMEGDAWgBSSET+sEZbHZjfPg1ok -8Dp3rzONfzA/BggrBgEFBQcBAQQzMDEwLwYIKwYBBQUHMAKGI2h0dHA6Ly91cmwt -Zm9yLWFpYS9JbnRlcm1lZGlhdGUuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6 -Ly91cmwtZm9yLWNybC9JbnRlcm1lZGlhdGUuY3JsMA4GA1UdDwEB/wQEAwIFoDAd -BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwgku3BgNVHREEgkuuMIJLqqQP -MA0xCzAJBgNVBAMMAnQwpA8wDTELMAkGA1UEAwwCdDGkDzANMQswCQYDVQQDDAJ0 -MqQPMA0xCzAJBgNVBAMMAnQzpA8wDTELMAkGA1UEAwwCdDSkDzANMQswCQYDVQQD -DAJ0NaQPMA0xCzAJBgNVBAMMAnQ2pA8wDTELMAkGA1UEAwwCdDekDzANMQswCQYD -VQQDDAJ0OKQPMA0xCzAJBgNVBAMMAnQ5pBAwDjEMMAoGA1UEAwwDdDEwpBAwDjEM -MAoGA1UEAwwDdDExpBAwDjEMMAoGA1UEAwwDdDEypBAwDjEMMAoGA1UEAwwDdDEz -pBAwDjEMMAoGA1UEAwwDdDE0pBAwDjEMMAoGA1UEAwwDdDE1pBAwDjEMMAoGA1UE -AwwDdDE2pBAwDjEMMAoGA1UEAwwDdDE3pBAwDjEMMAoGA1UEAwwDdDE4pBAwDjEM -MAoGA1UEAwwDdDE5pBAwDjEMMAoGA1UEAwwDdDIwpBAwDjEMMAoGA1UEAwwDdDIx -pBAwDjEMMAoGA1UEAwwDdDIypBAwDjEMMAoGA1UEAwwDdDIzpBAwDjEMMAoGA1UE -AwwDdDI0pBAwDjEMMAoGA1UEAwwDdDI1pBAwDjEMMAoGA1UEAwwDdDI2pBAwDjEM -MAoGA1UEAwwDdDI3pBAwDjEMMAoGA1UEAwwDdDI4pBAwDjEMMAoGA1UEAwwDdDI5 -pBAwDjEMMAoGA1UEAwwDdDMwpBAwDjEMMAoGA1UEAwwDdDMxpBAwDjEMMAoGA1UE -AwwDdDMypBAwDjEMMAoGA1UEAwwDdDMzpBAwDjEMMAoGA1UEAwwDdDM0pBAwDjEM -MAoGA1UEAwwDdDM1pBAwDjEMMAoGA1UEAwwDdDM2pBAwDjEMMAoGA1UEAwwDdDM3 -pBAwDjEMMAoGA1UEAwwDdDM4pBAwDjEMMAoGA1UEAwwDdDM5pBAwDjEMMAoGA1UE -AwwDdDQwpBAwDjEMMAoGA1UEAwwDdDQxpBAwDjEMMAoGA1UEAwwDdDQypBAwDjEM -MAoGA1UEAwwDdDQzpBAwDjEMMAoGA1UEAwwDdDQ0pBAwDjEMMAoGA1UEAwwDdDQ1 -pBAwDjEMMAoGA1UEAwwDdDQ2pBAwDjEMMAoGA1UEAwwDdDQ3pBAwDjEMMAoGA1UE -AwwDdDQ4pBAwDjEMMAoGA1UEAwwDdDQ5pBAwDjEMMAoGA1UEAwwDdDUwpBAwDjEM -MAoGA1UEAwwDdDUxpBAwDjEMMAoGA1UEAwwDdDUypBAwDjEMMAoGA1UEAwwDdDUz -pBAwDjEMMAoGA1UEAwwDdDU0pBAwDjEMMAoGA1UEAwwDdDU1pBAwDjEMMAoGA1UE -AwwDdDU2pBAwDjEMMAoGA1UEAwwDdDU3pBAwDjEMMAoGA1UEAwwDdDU4pBAwDjEM -MAoGA1UEAwwDdDU5pBAwDjEMMAoGA1UEAwwDdDYwpBAwDjEMMAoGA1UEAwwDdDYx -pBAwDjEMMAoGA1UEAwwDdDYypBAwDjEMMAoGA1UEAwwDdDYzpBAwDjEMMAoGA1UE -AwwDdDY0pBAwDjEMMAoGA1UEAwwDdDY1pBAwDjEMMAoGA1UEAwwDdDY2pBAwDjEM -MAoGA1UEAwwDdDY3pBAwDjEMMAoGA1UEAwwDdDY4pBAwDjEMMAoGA1UEAwwDdDY5 -pBAwDjEMMAoGA1UEAwwDdDcwpBAwDjEMMAoGA1UEAwwDdDcxpBAwDjEMMAoGA1UE -AwwDdDcypBAwDjEMMAoGA1UEAwwDdDczpBAwDjEMMAoGA1UEAwwDdDc0pBAwDjEM -MAoGA1UEAwwDdDc1pBAwDjEMMAoGA1UEAwwDdDc2pBAwDjEMMAoGA1UEAwwDdDc3 -pBAwDjEMMAoGA1UEAwwDdDc4pBAwDjEMMAoGA1UEAwwDdDc5pBAwDjEMMAoGA1UE -AwwDdDgwpBAwDjEMMAoGA1UEAwwDdDgxpBAwDjEMMAoGA1UEAwwDdDgypBAwDjEM -MAoGA1UEAwwDdDgzpBAwDjEMMAoGA1UEAwwDdDg0pBAwDjEMMAoGA1UEAwwDdDg1 -pBAwDjEMMAoGA1UEAwwDdDg2pBAwDjEMMAoGA1UEAwwDdDg3pBAwDjEMMAoGA1UE -AwwDdDg4pBAwDjEMMAoGA1UEAwwDdDg5pBAwDjEMMAoGA1UEAwwDdDkwpBAwDjEM -MAoGA1UEAwwDdDkxpBAwDjEMMAoGA1UEAwwDdDkypBAwDjEMMAoGA1UEAwwDdDkz -pBAwDjEMMAoGA1UEAwwDdDk0pBAwDjEMMAoGA1UEAwwDdDk1pBAwDjEMMAoGA1UE -AwwDdDk2pBAwDjEMMAoGA1UEAwwDdDk3pBAwDjEMMAoGA1UEAwwDdDk4pBAwDjEM -MAoGA1UEAwwDdDk5pBEwDzENMAsGA1UEAwwEdDEwMKQRMA8xDTALBgNVBAMMBHQx -MDGkETAPMQ0wCwYDVQQDDAR0MTAypBEwDzENMAsGA1UEAwwEdDEwM6QRMA8xDTAL -BgNVBAMMBHQxMDSkETAPMQ0wCwYDVQQDDAR0MTA1pBEwDzENMAsGA1UEAwwEdDEw -NqQRMA8xDTALBgNVBAMMBHQxMDekETAPMQ0wCwYDVQQDDAR0MTA4pBEwDzENMAsG -A1UEAwwEdDEwOaQRMA8xDTALBgNVBAMMBHQxMTCkETAPMQ0wCwYDVQQDDAR0MTEx -pBEwDzENMAsGA1UEAwwEdDExMqQRMA8xDTALBgNVBAMMBHQxMTOkETAPMQ0wCwYD -VQQDDAR0MTE0pBEwDzENMAsGA1UEAwwEdDExNaQRMA8xDTALBgNVBAMMBHQxMTak -ETAPMQ0wCwYDVQQDDAR0MTE3pBEwDzENMAsGA1UEAwwEdDExOKQRMA8xDTALBgNV -BAMMBHQxMTmkETAPMQ0wCwYDVQQDDAR0MTIwpBEwDzENMAsGA1UEAwwEdDEyMaQR -MA8xDTALBgNVBAMMBHQxMjKkETAPMQ0wCwYDVQQDDAR0MTIzpBEwDzENMAsGA1UE -AwwEdDEyNKQRMA8xDTALBgNVBAMMBHQxMjWkETAPMQ0wCwYDVQQDDAR0MTI2pBEw -DzENMAsGA1UEAwwEdDEyN6QRMA8xDTALBgNVBAMMBHQxMjikETAPMQ0wCwYDVQQD -DAR0MTI5pBEwDzENMAsGA1UEAwwEdDEzMKQRMA8xDTALBgNVBAMMBHQxMzGkETAP -MQ0wCwYDVQQDDAR0MTMypBEwDzENMAsGA1UEAwwEdDEzM6QRMA8xDTALBgNVBAMM -BHQxMzSkETAPMQ0wCwYDVQQDDAR0MTM1pBEwDzENMAsGA1UEAwwEdDEzNqQRMA8x -DTALBgNVBAMMBHQxMzekETAPMQ0wCwYDVQQDDAR0MTM4pBEwDzENMAsGA1UEAwwE -dDEzOaQRMA8xDTALBgNVBAMMBHQxNDCkETAPMQ0wCwYDVQQDDAR0MTQxpBEwDzEN -MAsGA1UEAwwEdDE0MqQRMA8xDTALBgNVBAMMBHQxNDOkETAPMQ0wCwYDVQQDDAR0 -MTQ0pBEwDzENMAsGA1UEAwwEdDE0NaQRMA8xDTALBgNVBAMMBHQxNDakETAPMQ0w -CwYDVQQDDAR0MTQ3pBEwDzENMAsGA1UEAwwEdDE0OKQRMA8xDTALBgNVBAMMBHQx -NDmkETAPMQ0wCwYDVQQDDAR0MTUwpBEwDzENMAsGA1UEAwwEdDE1MaQRMA8xDTAL -BgNVBAMMBHQxNTKkETAPMQ0wCwYDVQQDDAR0MTUzpBEwDzENMAsGA1UEAwwEdDE1 -NKQRMA8xDTALBgNVBAMMBHQxNTWkETAPMQ0wCwYDVQQDDAR0MTU2pBEwDzENMAsG -A1UEAwwEdDE1N6QRMA8xDTALBgNVBAMMBHQxNTikETAPMQ0wCwYDVQQDDAR0MTU5 -pBEwDzENMAsGA1UEAwwEdDE2MKQRMA8xDTALBgNVBAMMBHQxNjGkETAPMQ0wCwYD -VQQDDAR0MTYypBEwDzENMAsGA1UEAwwEdDE2M6QRMA8xDTALBgNVBAMMBHQxNjSk -ETAPMQ0wCwYDVQQDDAR0MTY1pBEwDzENMAsGA1UEAwwEdDE2NqQRMA8xDTALBgNV -BAMMBHQxNjekETAPMQ0wCwYDVQQDDAR0MTY4pBEwDzENMAsGA1UEAwwEdDE2OaQR -MA8xDTALBgNVBAMMBHQxNzCkETAPMQ0wCwYDVQQDDAR0MTcxpBEwDzENMAsGA1UE -AwwEdDE3MqQRMA8xDTALBgNVBAMMBHQxNzOkETAPMQ0wCwYDVQQDDAR0MTc0pBEw -DzENMAsGA1UEAwwEdDE3NaQRMA8xDTALBgNVBAMMBHQxNzakETAPMQ0wCwYDVQQD -DAR0MTc3pBEwDzENMAsGA1UEAwwEdDE3OKQRMA8xDTALBgNVBAMMBHQxNzmkETAP -MQ0wCwYDVQQDDAR0MTgwpBEwDzENMAsGA1UEAwwEdDE4MaQRMA8xDTALBgNVBAMM -BHQxODKkETAPMQ0wCwYDVQQDDAR0MTgzpBEwDzENMAsGA1UEAwwEdDE4NKQRMA8x -DTALBgNVBAMMBHQxODWkETAPMQ0wCwYDVQQDDAR0MTg2pBEwDzENMAsGA1UEAwwE -dDE4N6QRMA8xDTALBgNVBAMMBHQxODikETAPMQ0wCwYDVQQDDAR0MTg5pBEwDzEN -MAsGA1UEAwwEdDE5MKQRMA8xDTALBgNVBAMMBHQxOTGkETAPMQ0wCwYDVQQDDAR0 -MTkypBEwDzENMAsGA1UEAwwEdDE5M6QRMA8xDTALBgNVBAMMBHQxOTSkETAPMQ0w -CwYDVQQDDAR0MTk1pBEwDzENMAsGA1UEAwwEdDE5NqQRMA8xDTALBgNVBAMMBHQx -OTekETAPMQ0wCwYDVQQDDAR0MTk4pBEwDzENMAsGA1UEAwwEdDE5OaQRMA8xDTAL -BgNVBAMMBHQyMDCkETAPMQ0wCwYDVQQDDAR0MjAxpBEwDzENMAsGA1UEAwwEdDIw -MqQRMA8xDTALBgNVBAMMBHQyMDOkETAPMQ0wCwYDVQQDDAR0MjA0pBEwDzENMAsG -A1UEAwwEdDIwNaQRMA8xDTALBgNVBAMMBHQyMDakETAPMQ0wCwYDVQQDDAR0MjA3 -pBEwDzENMAsGA1UEAwwEdDIwOKQRMA8xDTALBgNVBAMMBHQyMDmkETAPMQ0wCwYD -VQQDDAR0MjEwpBEwDzENMAsGA1UEAwwEdDIxMaQRMA8xDTALBgNVBAMMBHQyMTKk -ETAPMQ0wCwYDVQQDDAR0MjEzpBEwDzENMAsGA1UEAwwEdDIxNKQRMA8xDTALBgNV -BAMMBHQyMTWkETAPMQ0wCwYDVQQDDAR0MjE2pBEwDzENMAsGA1UEAwwEdDIxN6QR -MA8xDTALBgNVBAMMBHQyMTikETAPMQ0wCwYDVQQDDAR0MjE5pBEwDzENMAsGA1UE -AwwEdDIyMKQRMA8xDTALBgNVBAMMBHQyMjGkETAPMQ0wCwYDVQQDDAR0MjIypBEw -DzENMAsGA1UEAwwEdDIyM6QRMA8xDTALBgNVBAMMBHQyMjSkETAPMQ0wCwYDVQQD -DAR0MjI1pBEwDzENMAsGA1UEAwwEdDIyNqQRMA8xDTALBgNVBAMMBHQyMjekETAP -MQ0wCwYDVQQDDAR0MjI4pBEwDzENMAsGA1UEAwwEdDIyOaQRMA8xDTALBgNVBAMM -BHQyMzCkETAPMQ0wCwYDVQQDDAR0MjMxpBEwDzENMAsGA1UEAwwEdDIzMqQRMA8x -DTALBgNVBAMMBHQyMzOkETAPMQ0wCwYDVQQDDAR0MjM0pBEwDzENMAsGA1UEAwwE -dDIzNaQRMA8xDTALBgNVBAMMBHQyMzakETAPMQ0wCwYDVQQDDAR0MjM3pBEwDzEN -MAsGA1UEAwwEdDIzOKQRMA8xDTALBgNVBAMMBHQyMzmkETAPMQ0wCwYDVQQDDAR0 -MjQwpBEwDzENMAsGA1UEAwwEdDI0MaQRMA8xDTALBgNVBAMMBHQyNDKkETAPMQ0w -CwYDVQQDDAR0MjQzpBEwDzENMAsGA1UEAwwEdDI0NKQRMA8xDTALBgNVBAMMBHQy -NDWkETAPMQ0wCwYDVQQDDAR0MjQ2pBEwDzENMAsGA1UEAwwEdDI0N6QRMA8xDTAL -BgNVBAMMBHQyNDikETAPMQ0wCwYDVQQDDAR0MjQ5pBEwDzENMAsGA1UEAwwEdDI1 -MKQRMA8xDTALBgNVBAMMBHQyNTGkETAPMQ0wCwYDVQQDDAR0MjUypBEwDzENMAsG -A1UEAwwEdDI1M6QRMA8xDTALBgNVBAMMBHQyNTSkETAPMQ0wCwYDVQQDDAR0MjU1 -pBEwDzENMAsGA1UEAwwEdDI1NqQRMA8xDTALBgNVBAMMBHQyNTekETAPMQ0wCwYD -VQQDDAR0MjU4pBEwDzENMAsGA1UEAwwEdDI1OaQRMA8xDTALBgNVBAMMBHQyNjCk -ETAPMQ0wCwYDVQQDDAR0MjYxpBEwDzENMAsGA1UEAwwEdDI2MqQRMA8xDTALBgNV -BAMMBHQyNjOkETAPMQ0wCwYDVQQDDAR0MjY0pBEwDzENMAsGA1UEAwwEdDI2NaQR -MA8xDTALBgNVBAMMBHQyNjakETAPMQ0wCwYDVQQDDAR0MjY3pBEwDzENMAsGA1UE -AwwEdDI2OKQRMA8xDTALBgNVBAMMBHQyNjmkETAPMQ0wCwYDVQQDDAR0MjcwpBEw -DzENMAsGA1UEAwwEdDI3MaQRMA8xDTALBgNVBAMMBHQyNzKkETAPMQ0wCwYDVQQD -DAR0MjczpBEwDzENMAsGA1UEAwwEdDI3NKQRMA8xDTALBgNVBAMMBHQyNzWkETAP -MQ0wCwYDVQQDDAR0Mjc2pBEwDzENMAsGA1UEAwwEdDI3N6QRMA8xDTALBgNVBAMM -BHQyNzikETAPMQ0wCwYDVQQDDAR0Mjc5pBEwDzENMAsGA1UEAwwEdDI4MKQRMA8x -DTALBgNVBAMMBHQyODGkETAPMQ0wCwYDVQQDDAR0MjgypBEwDzENMAsGA1UEAwwE -dDI4M6QRMA8xDTALBgNVBAMMBHQyODSkETAPMQ0wCwYDVQQDDAR0Mjg1pBEwDzEN -MAsGA1UEAwwEdDI4NqQRMA8xDTALBgNVBAMMBHQyODekETAPMQ0wCwYDVQQDDAR0 -Mjg4pBEwDzENMAsGA1UEAwwEdDI4OaQRMA8xDTALBgNVBAMMBHQyOTCkETAPMQ0w -CwYDVQQDDAR0MjkxpBEwDzENMAsGA1UEAwwEdDI5MqQRMA8xDTALBgNVBAMMBHQy -OTOkETAPMQ0wCwYDVQQDDAR0Mjk0pBEwDzENMAsGA1UEAwwEdDI5NaQRMA8xDTAL -BgNVBAMMBHQyOTakETAPMQ0wCwYDVQQDDAR0Mjk3pBEwDzENMAsGA1UEAwwEdDI5 -OKQRMA8xDTALBgNVBAMMBHQyOTmkETAPMQ0wCwYDVQQDDAR0MzAwpBEwDzENMAsG -A1UEAwwEdDMwMaQRMA8xDTALBgNVBAMMBHQzMDKkETAPMQ0wCwYDVQQDDAR0MzAz -pBEwDzENMAsGA1UEAwwEdDMwNKQRMA8xDTALBgNVBAMMBHQzMDWkETAPMQ0wCwYD -VQQDDAR0MzA2pBEwDzENMAsGA1UEAwwEdDMwN6QRMA8xDTALBgNVBAMMBHQzMDik -ETAPMQ0wCwYDVQQDDAR0MzA5pBEwDzENMAsGA1UEAwwEdDMxMKQRMA8xDTALBgNV -BAMMBHQzMTGkETAPMQ0wCwYDVQQDDAR0MzEypBEwDzENMAsGA1UEAwwEdDMxM6QR -MA8xDTALBgNVBAMMBHQzMTSkETAPMQ0wCwYDVQQDDAR0MzE1pBEwDzENMAsGA1UE -AwwEdDMxNqQRMA8xDTALBgNVBAMMBHQzMTekETAPMQ0wCwYDVQQDDAR0MzE4pBEw -DzENMAsGA1UEAwwEdDMxOaQRMA8xDTALBgNVBAMMBHQzMjCkETAPMQ0wCwYDVQQD -DAR0MzIxpBEwDzENMAsGA1UEAwwEdDMyMqQRMA8xDTALBgNVBAMMBHQzMjOkETAP -MQ0wCwYDVQQDDAR0MzI0pBEwDzENMAsGA1UEAwwEdDMyNaQRMA8xDTALBgNVBAMM -BHQzMjakETAPMQ0wCwYDVQQDDAR0MzI3pBEwDzENMAsGA1UEAwwEdDMyOKQRMA8x -DTALBgNVBAMMBHQzMjmkETAPMQ0wCwYDVQQDDAR0MzMwpBEwDzENMAsGA1UEAwwE -dDMzMaQRMA8xDTALBgNVBAMMBHQzMzKkETAPMQ0wCwYDVQQDDAR0MzMzpBEwDzEN -MAsGA1UEAwwEdDMzNKQRMA8xDTALBgNVBAMMBHQzMzWkETAPMQ0wCwYDVQQDDAR0 -MzM2pBEwDzENMAsGA1UEAwwEdDMzN6QRMA8xDTALBgNVBAMMBHQzMzikETAPMQ0w -CwYDVQQDDAR0MzM5pBEwDzENMAsGA1UEAwwEdDM0MKQRMA8xDTALBgNVBAMMBHQz -NDGkETAPMQ0wCwYDVQQDDAR0MzQypBEwDzENMAsGA1UEAwwEdDM0M6QRMA8xDTAL -BgNVBAMMBHQzNDSkETAPMQ0wCwYDVQQDDAR0MzQ1pBEwDzENMAsGA1UEAwwEdDM0 -NqQRMA8xDTALBgNVBAMMBHQzNDekETAPMQ0wCwYDVQQDDAR0MzQ4pBEwDzENMAsG -A1UEAwwEdDM0OaQRMA8xDTALBgNVBAMMBHQzNTCkETAPMQ0wCwYDVQQDDAR0MzUx -pBEwDzENMAsGA1UEAwwEdDM1MqQRMA8xDTALBgNVBAMMBHQzNTOkETAPMQ0wCwYD -VQQDDAR0MzU0pBEwDzENMAsGA1UEAwwEdDM1NaQRMA8xDTALBgNVBAMMBHQzNTak -ETAPMQ0wCwYDVQQDDAR0MzU3pBEwDzENMAsGA1UEAwwEdDM1OKQRMA8xDTALBgNV -BAMMBHQzNTmkETAPMQ0wCwYDVQQDDAR0MzYwpBEwDzENMAsGA1UEAwwEdDM2MaQR -MA8xDTALBgNVBAMMBHQzNjKkETAPMQ0wCwYDVQQDDAR0MzYzpBEwDzENMAsGA1UE -AwwEdDM2NKQRMA8xDTALBgNVBAMMBHQzNjWkETAPMQ0wCwYDVQQDDAR0MzY2pBEw -DzENMAsGA1UEAwwEdDM2N6QRMA8xDTALBgNVBAMMBHQzNjikETAPMQ0wCwYDVQQD -DAR0MzY5pBEwDzENMAsGA1UEAwwEdDM3MKQRMA8xDTALBgNVBAMMBHQzNzGkETAP -MQ0wCwYDVQQDDAR0MzcypBEwDzENMAsGA1UEAwwEdDM3M6QRMA8xDTALBgNVBAMM -BHQzNzSkETAPMQ0wCwYDVQQDDAR0Mzc1pBEwDzENMAsGA1UEAwwEdDM3NqQRMA8x -DTALBgNVBAMMBHQzNzekETAPMQ0wCwYDVQQDDAR0Mzc4pBEwDzENMAsGA1UEAwwE -dDM3OaQRMA8xDTALBgNVBAMMBHQzODCkETAPMQ0wCwYDVQQDDAR0MzgxpBEwDzEN -MAsGA1UEAwwEdDM4MqQRMA8xDTALBgNVBAMMBHQzODOkETAPMQ0wCwYDVQQDDAR0 -Mzg0pBEwDzENMAsGA1UEAwwEdDM4NaQRMA8xDTALBgNVBAMMBHQzODakETAPMQ0w -CwYDVQQDDAR0Mzg3pBEwDzENMAsGA1UEAwwEdDM4OKQRMA8xDTALBgNVBAMMBHQz -ODmkETAPMQ0wCwYDVQQDDAR0MzkwpBEwDzENMAsGA1UEAwwEdDM5MaQRMA8xDTAL -BgNVBAMMBHQzOTKkETAPMQ0wCwYDVQQDDAR0MzkzpBEwDzENMAsGA1UEAwwEdDM5 -NKQRMA8xDTALBgNVBAMMBHQzOTWkETAPMQ0wCwYDVQQDDAR0Mzk2pBEwDzENMAsG -A1UEAwwEdDM5N6QRMA8xDTALBgNVBAMMBHQzOTikETAPMQ0wCwYDVQQDDAR0Mzk5 -pBEwDzENMAsGA1UEAwwEdDQwMKQRMA8xDTALBgNVBAMMBHQ0MDGkETAPMQ0wCwYD -VQQDDAR0NDAypBEwDzENMAsGA1UEAwwEdDQwM6QRMA8xDTALBgNVBAMMBHQ0MDSk -ETAPMQ0wCwYDVQQDDAR0NDA1pBEwDzENMAsGA1UEAwwEdDQwNqQRMA8xDTALBgNV -BAMMBHQ0MDekETAPMQ0wCwYDVQQDDAR0NDA4pBEwDzENMAsGA1UEAwwEdDQwOaQR -MA8xDTALBgNVBAMMBHQ0MTCkETAPMQ0wCwYDVQQDDAR0NDExpBEwDzENMAsGA1UE -AwwEdDQxMqQRMA8xDTALBgNVBAMMBHQ0MTOkETAPMQ0wCwYDVQQDDAR0NDE0pBEw -DzENMAsGA1UEAwwEdDQxNaQRMA8xDTALBgNVBAMMBHQ0MTakETAPMQ0wCwYDVQQD -DAR0NDE3pBEwDzENMAsGA1UEAwwEdDQxOKQRMA8xDTALBgNVBAMMBHQ0MTmkETAP -MQ0wCwYDVQQDDAR0NDIwpBEwDzENMAsGA1UEAwwEdDQyMaQRMA8xDTALBgNVBAMM -BHQ0MjKkETAPMQ0wCwYDVQQDDAR0NDIzpBEwDzENMAsGA1UEAwwEdDQyNKQRMA8x -DTALBgNVBAMMBHQ0MjWkETAPMQ0wCwYDVQQDDAR0NDI2pBEwDzENMAsGA1UEAwwE -dDQyN6QRMA8xDTALBgNVBAMMBHQ0MjikETAPMQ0wCwYDVQQDDAR0NDI5pBEwDzEN -MAsGA1UEAwwEdDQzMKQRMA8xDTALBgNVBAMMBHQ0MzGkETAPMQ0wCwYDVQQDDAR0 -NDMypBEwDzENMAsGA1UEAwwEdDQzM6QRMA8xDTALBgNVBAMMBHQ0MzSkETAPMQ0w -CwYDVQQDDAR0NDM1pBEwDzENMAsGA1UEAwwEdDQzNqQRMA8xDTALBgNVBAMMBHQ0 -MzekETAPMQ0wCwYDVQQDDAR0NDM4pBEwDzENMAsGA1UEAwwEdDQzOaQRMA8xDTAL -BgNVBAMMBHQ0NDCkETAPMQ0wCwYDVQQDDAR0NDQxpBEwDzENMAsGA1UEAwwEdDQ0 -MqQRMA8xDTALBgNVBAMMBHQ0NDOkETAPMQ0wCwYDVQQDDAR0NDQ0pBEwDzENMAsG -A1UEAwwEdDQ0NaQRMA8xDTALBgNVBAMMBHQ0NDakETAPMQ0wCwYDVQQDDAR0NDQ3 -pBEwDzENMAsGA1UEAwwEdDQ0OKQRMA8xDTALBgNVBAMMBHQ0NDmkETAPMQ0wCwYD -VQQDDAR0NDUwpBEwDzENMAsGA1UEAwwEdDQ1MaQRMA8xDTALBgNVBAMMBHQ0NTKk -ETAPMQ0wCwYDVQQDDAR0NDUzpBEwDzENMAsGA1UEAwwEdDQ1NKQRMA8xDTALBgNV -BAMMBHQ0NTWkETAPMQ0wCwYDVQQDDAR0NDU2pBEwDzENMAsGA1UEAwwEdDQ1N6QR -MA8xDTALBgNVBAMMBHQ0NTikETAPMQ0wCwYDVQQDDAR0NDU5pBEwDzENMAsGA1UE -AwwEdDQ2MKQRMA8xDTALBgNVBAMMBHQ0NjGkETAPMQ0wCwYDVQQDDAR0NDYypBEw -DzENMAsGA1UEAwwEdDQ2M6QRMA8xDTALBgNVBAMMBHQ0NjSkETAPMQ0wCwYDVQQD -DAR0NDY1pBEwDzENMAsGA1UEAwwEdDQ2NqQRMA8xDTALBgNVBAMMBHQ0NjekETAP -MQ0wCwYDVQQDDAR0NDY4pBEwDzENMAsGA1UEAwwEdDQ2OaQRMA8xDTALBgNVBAMM -BHQ0NzCkETAPMQ0wCwYDVQQDDAR0NDcxpBEwDzENMAsGA1UEAwwEdDQ3MqQRMA8x -DTALBgNVBAMMBHQ0NzOkETAPMQ0wCwYDVQQDDAR0NDc0pBEwDzENMAsGA1UEAwwE -dDQ3NaQRMA8xDTALBgNVBAMMBHQ0NzakETAPMQ0wCwYDVQQDDAR0NDc3pBEwDzEN -MAsGA1UEAwwEdDQ3OKQRMA8xDTALBgNVBAMMBHQ0NzmkETAPMQ0wCwYDVQQDDAR0 -NDgwpBEwDzENMAsGA1UEAwwEdDQ4MaQRMA8xDTALBgNVBAMMBHQ0ODKkETAPMQ0w -CwYDVQQDDAR0NDgzpBEwDzENMAsGA1UEAwwEdDQ4NKQRMA8xDTALBgNVBAMMBHQ0 -ODWkETAPMQ0wCwYDVQQDDAR0NDg2pBEwDzENMAsGA1UEAwwEdDQ4N6QRMA8xDTAL -BgNVBAMMBHQ0ODikETAPMQ0wCwYDVQQDDAR0NDg5pBEwDzENMAsGA1UEAwwEdDQ5 -MKQRMA8xDTALBgNVBAMMBHQ0OTGkETAPMQ0wCwYDVQQDDAR0NDkypBEwDzENMAsG -A1UEAwwEdDQ5M6QRMA8xDTALBgNVBAMMBHQ0OTSkETAPMQ0wCwYDVQQDDAR0NDk1 -pBEwDzENMAsGA1UEAwwEdDQ5NqQRMA8xDTALBgNVBAMMBHQ0OTekETAPMQ0wCwYD -VQQDDAR0NDk4pBEwDzENMAsGA1UEAwwEdDQ5OaQRMA8xDTALBgNVBAMMBHQ1MDCk -ETAPMQ0wCwYDVQQDDAR0NTAxpBEwDzENMAsGA1UEAwwEdDUwMqQRMA8xDTALBgNV -BAMMBHQ1MDOkETAPMQ0wCwYDVQQDDAR0NTA0pBEwDzENMAsGA1UEAwwEdDUwNaQR -MA8xDTALBgNVBAMMBHQ1MDakETAPMQ0wCwYDVQQDDAR0NTA3pBEwDzENMAsGA1UE -AwwEdDUwOKQRMA8xDTALBgNVBAMMBHQ1MDmkETAPMQ0wCwYDVQQDDAR0NTEwpBEw -DzENMAsGA1UEAwwEdDUxMaQRMA8xDTALBgNVBAMMBHQ1MTKkETAPMQ0wCwYDVQQD -DAR0NTEzpBEwDzENMAsGA1UEAwwEdDUxNKQRMA8xDTALBgNVBAMMBHQ1MTWkETAP -MQ0wCwYDVQQDDAR0NTE2pBEwDzENMAsGA1UEAwwEdDUxN6QRMA8xDTALBgNVBAMM -BHQ1MTikETAPMQ0wCwYDVQQDDAR0NTE5pBEwDzENMAsGA1UEAwwEdDUyMKQRMA8x -DTALBgNVBAMMBHQ1MjGkETAPMQ0wCwYDVQQDDAR0NTIypBEwDzENMAsGA1UEAwwE -dDUyM6QRMA8xDTALBgNVBAMMBHQ1MjSkETAPMQ0wCwYDVQQDDAR0NTI1pBEwDzEN -MAsGA1UEAwwEdDUyNqQRMA8xDTALBgNVBAMMBHQ1MjekETAPMQ0wCwYDVQQDDAR0 -NTI4pBEwDzENMAsGA1UEAwwEdDUyOaQRMA8xDTALBgNVBAMMBHQ1MzCkETAPMQ0w -CwYDVQQDDAR0NTMxpBEwDzENMAsGA1UEAwwEdDUzMqQRMA8xDTALBgNVBAMMBHQ1 -MzOkETAPMQ0wCwYDVQQDDAR0NTM0pBEwDzENMAsGA1UEAwwEdDUzNaQRMA8xDTAL -BgNVBAMMBHQ1MzakETAPMQ0wCwYDVQQDDAR0NTM3pBEwDzENMAsGA1UEAwwEdDUz -OKQRMA8xDTALBgNVBAMMBHQ1MzmkETAPMQ0wCwYDVQQDDAR0NTQwpBEwDzENMAsG -A1UEAwwEdDU0MaQRMA8xDTALBgNVBAMMBHQ1NDKkETAPMQ0wCwYDVQQDDAR0NTQz -pBEwDzENMAsGA1UEAwwEdDU0NKQRMA8xDTALBgNVBAMMBHQ1NDWkETAPMQ0wCwYD -VQQDDAR0NTQ2pBEwDzENMAsGA1UEAwwEdDU0N6QRMA8xDTALBgNVBAMMBHQ1NDik -ETAPMQ0wCwYDVQQDDAR0NTQ5pBEwDzENMAsGA1UEAwwEdDU1MKQRMA8xDTALBgNV -BAMMBHQ1NTGkETAPMQ0wCwYDVQQDDAR0NTUypBEwDzENMAsGA1UEAwwEdDU1M6QR -MA8xDTALBgNVBAMMBHQ1NTSkETAPMQ0wCwYDVQQDDAR0NTU1pBEwDzENMAsGA1UE -AwwEdDU1NqQRMA8xDTALBgNVBAMMBHQ1NTekETAPMQ0wCwYDVQQDDAR0NTU4pBEw -DzENMAsGA1UEAwwEdDU1OaQRMA8xDTALBgNVBAMMBHQ1NjCkETAPMQ0wCwYDVQQD -DAR0NTYxpBEwDzENMAsGA1UEAwwEdDU2MqQRMA8xDTALBgNVBAMMBHQ1NjOkETAP -MQ0wCwYDVQQDDAR0NTY0pBEwDzENMAsGA1UEAwwEdDU2NaQRMA8xDTALBgNVBAMM -BHQ1NjakETAPMQ0wCwYDVQQDDAR0NTY3pBEwDzENMAsGA1UEAwwEdDU2OKQRMA8x -DTALBgNVBAMMBHQ1NjmkETAPMQ0wCwYDVQQDDAR0NTcwpBEwDzENMAsGA1UEAwwE -dDU3MaQRMA8xDTALBgNVBAMMBHQ1NzKkETAPMQ0wCwYDVQQDDAR0NTczpBEwDzEN -MAsGA1UEAwwEdDU3NKQRMA8xDTALBgNVBAMMBHQ1NzWkETAPMQ0wCwYDVQQDDAR0 -NTc2pBEwDzENMAsGA1UEAwwEdDU3N6QRMA8xDTALBgNVBAMMBHQ1NzikETAPMQ0w -CwYDVQQDDAR0NTc5pBEwDzENMAsGA1UEAwwEdDU4MKQRMA8xDTALBgNVBAMMBHQ1 -ODGkETAPMQ0wCwYDVQQDDAR0NTgypBEwDzENMAsGA1UEAwwEdDU4M6QRMA8xDTAL -BgNVBAMMBHQ1ODSkETAPMQ0wCwYDVQQDDAR0NTg1pBEwDzENMAsGA1UEAwwEdDU4 -NqQRMA8xDTALBgNVBAMMBHQ1ODekETAPMQ0wCwYDVQQDDAR0NTg4pBEwDzENMAsG -A1UEAwwEdDU4OaQRMA8xDTALBgNVBAMMBHQ1OTCkETAPMQ0wCwYDVQQDDAR0NTkx -pBEwDzENMAsGA1UEAwwEdDU5MqQRMA8xDTALBgNVBAMMBHQ1OTOkETAPMQ0wCwYD -VQQDDAR0NTk0pBEwDzENMAsGA1UEAwwEdDU5NaQRMA8xDTALBgNVBAMMBHQ1OTak -ETAPMQ0wCwYDVQQDDAR0NTk3pBEwDzENMAsGA1UEAwwEdDU5OKQRMA8xDTALBgNV -BAMMBHQ1OTmkETAPMQ0wCwYDVQQDDAR0NjAwpBEwDzENMAsGA1UEAwwEdDYwMaQR -MA8xDTALBgNVBAMMBHQ2MDKkETAPMQ0wCwYDVQQDDAR0NjAzpBEwDzENMAsGA1UE -AwwEdDYwNKQRMA8xDTALBgNVBAMMBHQ2MDWkETAPMQ0wCwYDVQQDDAR0NjA2pBEw -DzENMAsGA1UEAwwEdDYwN6QRMA8xDTALBgNVBAMMBHQ2MDikETAPMQ0wCwYDVQQD -DAR0NjA5pBEwDzENMAsGA1UEAwwEdDYxMKQRMA8xDTALBgNVBAMMBHQ2MTGkETAP -MQ0wCwYDVQQDDAR0NjEypBEwDzENMAsGA1UEAwwEdDYxM6QRMA8xDTALBgNVBAMM -BHQ2MTSkETAPMQ0wCwYDVQQDDAR0NjE1pBEwDzENMAsGA1UEAwwEdDYxNqQRMA8x -DTALBgNVBAMMBHQ2MTekETAPMQ0wCwYDVQQDDAR0NjE4pBEwDzENMAsGA1UEAwwE -dDYxOaQRMA8xDTALBgNVBAMMBHQ2MjCkETAPMQ0wCwYDVQQDDAR0NjIxpBEwDzEN -MAsGA1UEAwwEdDYyMqQRMA8xDTALBgNVBAMMBHQ2MjOkETAPMQ0wCwYDVQQDDAR0 -NjI0pBEwDzENMAsGA1UEAwwEdDYyNaQRMA8xDTALBgNVBAMMBHQ2MjakETAPMQ0w -CwYDVQQDDAR0NjI3pBEwDzENMAsGA1UEAwwEdDYyOKQRMA8xDTALBgNVBAMMBHQ2 -MjmkETAPMQ0wCwYDVQQDDAR0NjMwpBEwDzENMAsGA1UEAwwEdDYzMaQRMA8xDTAL -BgNVBAMMBHQ2MzKkETAPMQ0wCwYDVQQDDAR0NjMzpBEwDzENMAsGA1UEAwwEdDYz -NKQRMA8xDTALBgNVBAMMBHQ2MzWkETAPMQ0wCwYDVQQDDAR0NjM2pBEwDzENMAsG -A1UEAwwEdDYzN6QRMA8xDTALBgNVBAMMBHQ2MzikETAPMQ0wCwYDVQQDDAR0NjM5 -pBEwDzENMAsGA1UEAwwEdDY0MKQRMA8xDTALBgNVBAMMBHQ2NDGkETAPMQ0wCwYD -VQQDDAR0NjQypBEwDzENMAsGA1UEAwwEdDY0M6QRMA8xDTALBgNVBAMMBHQ2NDSk -ETAPMQ0wCwYDVQQDDAR0NjQ1pBEwDzENMAsGA1UEAwwEdDY0NqQRMA8xDTALBgNV -BAMMBHQ2NDekETAPMQ0wCwYDVQQDDAR0NjQ4pBEwDzENMAsGA1UEAwwEdDY0OaQR -MA8xDTALBgNVBAMMBHQ2NTCkETAPMQ0wCwYDVQQDDAR0NjUxpBEwDzENMAsGA1UE -AwwEdDY1MqQRMA8xDTALBgNVBAMMBHQ2NTOkETAPMQ0wCwYDVQQDDAR0NjU0pBEw -DzENMAsGA1UEAwwEdDY1NaQRMA8xDTALBgNVBAMMBHQ2NTakETAPMQ0wCwYDVQQD -DAR0NjU3pBEwDzENMAsGA1UEAwwEdDY1OKQRMA8xDTALBgNVBAMMBHQ2NTmkETAP -MQ0wCwYDVQQDDAR0NjYwpBEwDzENMAsGA1UEAwwEdDY2MaQRMA8xDTALBgNVBAMM -BHQ2NjKkETAPMQ0wCwYDVQQDDAR0NjYzpBEwDzENMAsGA1UEAwwEdDY2NKQRMA8x -DTALBgNVBAMMBHQ2NjWkETAPMQ0wCwYDVQQDDAR0NjY2pBEwDzENMAsGA1UEAwwE -dDY2N6QRMA8xDTALBgNVBAMMBHQ2NjikETAPMQ0wCwYDVQQDDAR0NjY5pBEwDzEN -MAsGA1UEAwwEdDY3MKQRMA8xDTALBgNVBAMMBHQ2NzGkETAPMQ0wCwYDVQQDDAR0 -NjcypBEwDzENMAsGA1UEAwwEdDY3M6QRMA8xDTALBgNVBAMMBHQ2NzSkETAPMQ0w -CwYDVQQDDAR0Njc1pBEwDzENMAsGA1UEAwwEdDY3NqQRMA8xDTALBgNVBAMMBHQ2 -NzekETAPMQ0wCwYDVQQDDAR0Njc4pBEwDzENMAsGA1UEAwwEdDY3OaQRMA8xDTAL -BgNVBAMMBHQ2ODCkETAPMQ0wCwYDVQQDDAR0NjgxpBEwDzENMAsGA1UEAwwEdDY4 -MqQRMA8xDTALBgNVBAMMBHQ2ODOkETAPMQ0wCwYDVQQDDAR0Njg0pBEwDzENMAsG -A1UEAwwEdDY4NaQRMA8xDTALBgNVBAMMBHQ2ODakETAPMQ0wCwYDVQQDDAR0Njg3 -pBEwDzENMAsGA1UEAwwEdDY4OKQRMA8xDTALBgNVBAMMBHQ2ODmkETAPMQ0wCwYD -VQQDDAR0NjkwpBEwDzENMAsGA1UEAwwEdDY5MaQRMA8xDTALBgNVBAMMBHQ2OTKk -ETAPMQ0wCwYDVQQDDAR0NjkzpBEwDzENMAsGA1UEAwwEdDY5NKQRMA8xDTALBgNV -BAMMBHQ2OTWkETAPMQ0wCwYDVQQDDAR0Njk2pBEwDzENMAsGA1UEAwwEdDY5N6QR -MA8xDTALBgNVBAMMBHQ2OTikETAPMQ0wCwYDVQQDDAR0Njk5pBEwDzENMAsGA1UE -AwwEdDcwMKQRMA8xDTALBgNVBAMMBHQ3MDGkETAPMQ0wCwYDVQQDDAR0NzAypBEw -DzENMAsGA1UEAwwEdDcwM6QRMA8xDTALBgNVBAMMBHQ3MDSkETAPMQ0wCwYDVQQD -DAR0NzA1pBEwDzENMAsGA1UEAwwEdDcwNqQRMA8xDTALBgNVBAMMBHQ3MDekETAP -MQ0wCwYDVQQDDAR0NzA4pBEwDzENMAsGA1UEAwwEdDcwOaQRMA8xDTALBgNVBAMM -BHQ3MTCkETAPMQ0wCwYDVQQDDAR0NzExpBEwDzENMAsGA1UEAwwEdDcxMqQRMA8x -DTALBgNVBAMMBHQ3MTOkETAPMQ0wCwYDVQQDDAR0NzE0pBEwDzENMAsGA1UEAwwE -dDcxNaQRMA8xDTALBgNVBAMMBHQ3MTakETAPMQ0wCwYDVQQDDAR0NzE3pBEwDzEN -MAsGA1UEAwwEdDcxOKQRMA8xDTALBgNVBAMMBHQ3MTmkETAPMQ0wCwYDVQQDDAR0 -NzIwpBEwDzENMAsGA1UEAwwEdDcyMaQRMA8xDTALBgNVBAMMBHQ3MjKkETAPMQ0w -CwYDVQQDDAR0NzIzpBEwDzENMAsGA1UEAwwEdDcyNKQRMA8xDTALBgNVBAMMBHQ3 -MjWkETAPMQ0wCwYDVQQDDAR0NzI2pBEwDzENMAsGA1UEAwwEdDcyN6QRMA8xDTAL -BgNVBAMMBHQ3MjikETAPMQ0wCwYDVQQDDAR0NzI5pBEwDzENMAsGA1UEAwwEdDcz -MKQRMA8xDTALBgNVBAMMBHQ3MzGkETAPMQ0wCwYDVQQDDAR0NzMypBEwDzENMAsG -A1UEAwwEdDczM6QRMA8xDTALBgNVBAMMBHQ3MzSkETAPMQ0wCwYDVQQDDAR0NzM1 -pBEwDzENMAsGA1UEAwwEdDczNqQRMA8xDTALBgNVBAMMBHQ3MzekETAPMQ0wCwYD -VQQDDAR0NzM4pBEwDzENMAsGA1UEAwwEdDczOaQRMA8xDTALBgNVBAMMBHQ3NDCk -ETAPMQ0wCwYDVQQDDAR0NzQxpBEwDzENMAsGA1UEAwwEdDc0MqQRMA8xDTALBgNV -BAMMBHQ3NDOkETAPMQ0wCwYDVQQDDAR0NzQ0pBEwDzENMAsGA1UEAwwEdDc0NaQR -MA8xDTALBgNVBAMMBHQ3NDakETAPMQ0wCwYDVQQDDAR0NzQ3pBEwDzENMAsGA1UE -AwwEdDc0OKQRMA8xDTALBgNVBAMMBHQ3NDmkETAPMQ0wCwYDVQQDDAR0NzUwpBEw -DzENMAsGA1UEAwwEdDc1MaQRMA8xDTALBgNVBAMMBHQ3NTKkETAPMQ0wCwYDVQQD -DAR0NzUzpBEwDzENMAsGA1UEAwwEdDc1NKQRMA8xDTALBgNVBAMMBHQ3NTWkETAP -MQ0wCwYDVQQDDAR0NzU2pBEwDzENMAsGA1UEAwwEdDc1N6QRMA8xDTALBgNVBAMM -BHQ3NTikETAPMQ0wCwYDVQQDDAR0NzU5pBEwDzENMAsGA1UEAwwEdDc2MKQRMA8x -DTALBgNVBAMMBHQ3NjGkETAPMQ0wCwYDVQQDDAR0NzYypBEwDzENMAsGA1UEAwwE -dDc2M6QRMA8xDTALBgNVBAMMBHQ3NjSkETAPMQ0wCwYDVQQDDAR0NzY1pBEwDzEN -MAsGA1UEAwwEdDc2NqQRMA8xDTALBgNVBAMMBHQ3NjekETAPMQ0wCwYDVQQDDAR0 -NzY4pBEwDzENMAsGA1UEAwwEdDc2OaQRMA8xDTALBgNVBAMMBHQ3NzCkETAPMQ0w -CwYDVQQDDAR0NzcxpBEwDzENMAsGA1UEAwwEdDc3MqQRMA8xDTALBgNVBAMMBHQ3 -NzOkETAPMQ0wCwYDVQQDDAR0Nzc0pBEwDzENMAsGA1UEAwwEdDc3NaQRMA8xDTAL -BgNVBAMMBHQ3NzakETAPMQ0wCwYDVQQDDAR0Nzc3pBEwDzENMAsGA1UEAwwEdDc3 -OKQRMA8xDTALBgNVBAMMBHQ3NzmkETAPMQ0wCwYDVQQDDAR0NzgwpBEwDzENMAsG -A1UEAwwEdDc4MaQRMA8xDTALBgNVBAMMBHQ3ODKkETAPMQ0wCwYDVQQDDAR0Nzgz -pBEwDzENMAsGA1UEAwwEdDc4NKQRMA8xDTALBgNVBAMMBHQ3ODWkETAPMQ0wCwYD -VQQDDAR0Nzg2pBEwDzENMAsGA1UEAwwEdDc4N6QRMA8xDTALBgNVBAMMBHQ3ODik -ETAPMQ0wCwYDVQQDDAR0Nzg5pBEwDzENMAsGA1UEAwwEdDc5MKQRMA8xDTALBgNV -BAMMBHQ3OTGkETAPMQ0wCwYDVQQDDAR0NzkypBEwDzENMAsGA1UEAwwEdDc5M6QR -MA8xDTALBgNVBAMMBHQ3OTSkETAPMQ0wCwYDVQQDDAR0Nzk1pBEwDzENMAsGA1UE -AwwEdDc5NqQRMA8xDTALBgNVBAMMBHQ3OTekETAPMQ0wCwYDVQQDDAR0Nzk4pBEw -DzENMAsGA1UEAwwEdDc5OaQRMA8xDTALBgNVBAMMBHQ4MDCkETAPMQ0wCwYDVQQD -DAR0ODAxpBEwDzENMAsGA1UEAwwEdDgwMqQRMA8xDTALBgNVBAMMBHQ4MDOkETAP -MQ0wCwYDVQQDDAR0ODA0pBEwDzENMAsGA1UEAwwEdDgwNaQRMA8xDTALBgNVBAMM -BHQ4MDakETAPMQ0wCwYDVQQDDAR0ODA3pBEwDzENMAsGA1UEAwwEdDgwOKQRMA8x -DTALBgNVBAMMBHQ4MDmkETAPMQ0wCwYDVQQDDAR0ODEwpBEwDzENMAsGA1UEAwwE -dDgxMaQRMA8xDTALBgNVBAMMBHQ4MTKkETAPMQ0wCwYDVQQDDAR0ODEzpBEwDzEN -MAsGA1UEAwwEdDgxNKQRMA8xDTALBgNVBAMMBHQ4MTWkETAPMQ0wCwYDVQQDDAR0 -ODE2pBEwDzENMAsGA1UEAwwEdDgxN6QRMA8xDTALBgNVBAMMBHQ4MTikETAPMQ0w -CwYDVQQDDAR0ODE5pBEwDzENMAsGA1UEAwwEdDgyMKQRMA8xDTALBgNVBAMMBHQ4 -MjGkETAPMQ0wCwYDVQQDDAR0ODIypBEwDzENMAsGA1UEAwwEdDgyM6QRMA8xDTAL -BgNVBAMMBHQ4MjSkETAPMQ0wCwYDVQQDDAR0ODI1pBEwDzENMAsGA1UEAwwEdDgy -NqQRMA8xDTALBgNVBAMMBHQ4MjekETAPMQ0wCwYDVQQDDAR0ODI4pBEwDzENMAsG -A1UEAwwEdDgyOaQRMA8xDTALBgNVBAMMBHQ4MzCkETAPMQ0wCwYDVQQDDAR0ODMx -pBEwDzENMAsGA1UEAwwEdDgzMqQRMA8xDTALBgNVBAMMBHQ4MzOkETAPMQ0wCwYD -VQQDDAR0ODM0pBEwDzENMAsGA1UEAwwEdDgzNaQRMA8xDTALBgNVBAMMBHQ4Mzak -ETAPMQ0wCwYDVQQDDAR0ODM3pBEwDzENMAsGA1UEAwwEdDgzOKQRMA8xDTALBgNV -BAMMBHQ4MzmkETAPMQ0wCwYDVQQDDAR0ODQwpBEwDzENMAsGA1UEAwwEdDg0MaQR -MA8xDTALBgNVBAMMBHQ4NDKkETAPMQ0wCwYDVQQDDAR0ODQzpBEwDzENMAsGA1UE -AwwEdDg0NKQRMA8xDTALBgNVBAMMBHQ4NDWkETAPMQ0wCwYDVQQDDAR0ODQ2pBEw -DzENMAsGA1UEAwwEdDg0N6QRMA8xDTALBgNVBAMMBHQ4NDikETAPMQ0wCwYDVQQD -DAR0ODQ5pBEwDzENMAsGA1UEAwwEdDg1MKQRMA8xDTALBgNVBAMMBHQ4NTGkETAP -MQ0wCwYDVQQDDAR0ODUypBEwDzENMAsGA1UEAwwEdDg1M6QRMA8xDTALBgNVBAMM -BHQ4NTSkETAPMQ0wCwYDVQQDDAR0ODU1pBEwDzENMAsGA1UEAwwEdDg1NqQRMA8x -DTALBgNVBAMMBHQ4NTekETAPMQ0wCwYDVQQDDAR0ODU4pBEwDzENMAsGA1UEAwwE -dDg1OaQRMA8xDTALBgNVBAMMBHQ4NjCkETAPMQ0wCwYDVQQDDAR0ODYxpBEwDzEN -MAsGA1UEAwwEdDg2MqQRMA8xDTALBgNVBAMMBHQ4NjOkETAPMQ0wCwYDVQQDDAR0 -ODY0pBEwDzENMAsGA1UEAwwEdDg2NaQRMA8xDTALBgNVBAMMBHQ4NjakETAPMQ0w -CwYDVQQDDAR0ODY3pBEwDzENMAsGA1UEAwwEdDg2OKQRMA8xDTALBgNVBAMMBHQ4 -NjmkETAPMQ0wCwYDVQQDDAR0ODcwpBEwDzENMAsGA1UEAwwEdDg3MaQRMA8xDTAL -BgNVBAMMBHQ4NzKkETAPMQ0wCwYDVQQDDAR0ODczpBEwDzENMAsGA1UEAwwEdDg3 -NKQRMA8xDTALBgNVBAMMBHQ4NzWkETAPMQ0wCwYDVQQDDAR0ODc2pBEwDzENMAsG -A1UEAwwEdDg3N6QRMA8xDTALBgNVBAMMBHQ4NzikETAPMQ0wCwYDVQQDDAR0ODc5 -pBEwDzENMAsGA1UEAwwEdDg4MKQRMA8xDTALBgNVBAMMBHQ4ODGkETAPMQ0wCwYD -VQQDDAR0ODgypBEwDzENMAsGA1UEAwwEdDg4M6QRMA8xDTALBgNVBAMMBHQ4ODSk -ETAPMQ0wCwYDVQQDDAR0ODg1pBEwDzENMAsGA1UEAwwEdDg4NqQRMA8xDTALBgNV -BAMMBHQ4ODekETAPMQ0wCwYDVQQDDAR0ODg4pBEwDzENMAsGA1UEAwwEdDg4OaQR -MA8xDTALBgNVBAMMBHQ4OTCkETAPMQ0wCwYDVQQDDAR0ODkxpBEwDzENMAsGA1UE -AwwEdDg5MqQRMA8xDTALBgNVBAMMBHQ4OTOkETAPMQ0wCwYDVQQDDAR0ODk0pBEw -DzENMAsGA1UEAwwEdDg5NaQRMA8xDTALBgNVBAMMBHQ4OTakETAPMQ0wCwYDVQQD -DAR0ODk3pBEwDzENMAsGA1UEAwwEdDg5OKQRMA8xDTALBgNVBAMMBHQ4OTmkETAP -MQ0wCwYDVQQDDAR0OTAwpBEwDzENMAsGA1UEAwwEdDkwMaQRMA8xDTALBgNVBAMM -BHQ5MDKkETAPMQ0wCwYDVQQDDAR0OTAzpBEwDzENMAsGA1UEAwwEdDkwNKQRMA8x -DTALBgNVBAMMBHQ5MDWkETAPMQ0wCwYDVQQDDAR0OTA2pBEwDzENMAsGA1UEAwwE -dDkwN6QRMA8xDTALBgNVBAMMBHQ5MDikETAPMQ0wCwYDVQQDDAR0OTA5pBEwDzEN -MAsGA1UEAwwEdDkxMKQRMA8xDTALBgNVBAMMBHQ5MTGkETAPMQ0wCwYDVQQDDAR0 -OTEypBEwDzENMAsGA1UEAwwEdDkxM6QRMA8xDTALBgNVBAMMBHQ5MTSkETAPMQ0w -CwYDVQQDDAR0OTE1pBEwDzENMAsGA1UEAwwEdDkxNqQRMA8xDTALBgNVBAMMBHQ5 -MTekETAPMQ0wCwYDVQQDDAR0OTE4pBEwDzENMAsGA1UEAwwEdDkxOaQRMA8xDTAL -BgNVBAMMBHQ5MjCkETAPMQ0wCwYDVQQDDAR0OTIxpBEwDzENMAsGA1UEAwwEdDky -MqQRMA8xDTALBgNVBAMMBHQ5MjOkETAPMQ0wCwYDVQQDDAR0OTI0pBEwDzENMAsG -A1UEAwwEdDkyNaQRMA8xDTALBgNVBAMMBHQ5MjakETAPMQ0wCwYDVQQDDAR0OTI3 -pBEwDzENMAsGA1UEAwwEdDkyOKQRMA8xDTALBgNVBAMMBHQ5MjmkETAPMQ0wCwYD -VQQDDAR0OTMwpBEwDzENMAsGA1UEAwwEdDkzMaQRMA8xDTALBgNVBAMMBHQ5MzKk -ETAPMQ0wCwYDVQQDDAR0OTMzpBEwDzENMAsGA1UEAwwEdDkzNKQRMA8xDTALBgNV -BAMMBHQ5MzWkETAPMQ0wCwYDVQQDDAR0OTM2pBEwDzENMAsGA1UEAwwEdDkzN6QR -MA8xDTALBgNVBAMMBHQ5MzikETAPMQ0wCwYDVQQDDAR0OTM5pBEwDzENMAsGA1UE -AwwEdDk0MKQRMA8xDTALBgNVBAMMBHQ5NDGkETAPMQ0wCwYDVQQDDAR0OTQypBEw -DzENMAsGA1UEAwwEdDk0M6QRMA8xDTALBgNVBAMMBHQ5NDSkETAPMQ0wCwYDVQQD -DAR0OTQ1pBEwDzENMAsGA1UEAwwEdDk0NqQRMA8xDTALBgNVBAMMBHQ5NDekETAP -MQ0wCwYDVQQDDAR0OTQ4pBEwDzENMAsGA1UEAwwEdDk0OaQRMA8xDTALBgNVBAMM -BHQ5NTCkETAPMQ0wCwYDVQQDDAR0OTUxpBEwDzENMAsGA1UEAwwEdDk1MqQRMA8x -DTALBgNVBAMMBHQ5NTOkETAPMQ0wCwYDVQQDDAR0OTU0pBEwDzENMAsGA1UEAwwE -dDk1NaQRMA8xDTALBgNVBAMMBHQ5NTakETAPMQ0wCwYDVQQDDAR0OTU3pBEwDzEN -MAsGA1UEAwwEdDk1OKQRMA8xDTALBgNVBAMMBHQ5NTmkETAPMQ0wCwYDVQQDDAR0 -OTYwpBEwDzENMAsGA1UEAwwEdDk2MaQRMA8xDTALBgNVBAMMBHQ5NjKkETAPMQ0w -CwYDVQQDDAR0OTYzpBEwDzENMAsGA1UEAwwEdDk2NKQRMA8xDTALBgNVBAMMBHQ5 -NjWkETAPMQ0wCwYDVQQDDAR0OTY2pBEwDzENMAsGA1UEAwwEdDk2N6QRMA8xDTAL -BgNVBAMMBHQ5NjikETAPMQ0wCwYDVQQDDAR0OTY5pBEwDzENMAsGA1UEAwwEdDk3 -MKQRMA8xDTALBgNVBAMMBHQ5NzGkETAPMQ0wCwYDVQQDDAR0OTcypBEwDzENMAsG -A1UEAwwEdDk3M6QRMA8xDTALBgNVBAMMBHQ5NzSkETAPMQ0wCwYDVQQDDAR0OTc1 -pBEwDzENMAsGA1UEAwwEdDk3NqQRMA8xDTALBgNVBAMMBHQ5NzekETAPMQ0wCwYD -VQQDDAR0OTc4pBEwDzENMAsGA1UEAwwEdDk3OaQRMA8xDTALBgNVBAMMBHQ5ODCk -ETAPMQ0wCwYDVQQDDAR0OTgxpBEwDzENMAsGA1UEAwwEdDk4MqQRMA8xDTALBgNV -BAMMBHQ5ODOkETAPMQ0wCwYDVQQDDAR0OTg0pBEwDzENMAsGA1UEAwwEdDk4NaQR -MA8xDTALBgNVBAMMBHQ5ODakETAPMQ0wCwYDVQQDDAR0OTg3pBEwDzENMAsGA1UE -AwwEdDk4OKQRMA8xDTALBgNVBAMMBHQ5ODmkETAPMQ0wCwYDVQQDDAR0OTkwpBEw -DzENMAsGA1UEAwwEdDk5MaQRMA8xDTALBgNVBAMMBHQ5OTKkETAPMQ0wCwYDVQQD -DAR0OTkzpBEwDzENMAsGA1UEAwwEdDk5NKQRMA8xDTALBgNVBAMMBHQ5OTWkETAP -MQ0wCwYDVQQDDAR0OTk2pBEwDzENMAsGA1UEAwwEdDk5N6QRMA8xDTALBgNVBAMM -BHQ5OTikETAPMQ0wCwYDVQQDDAR0OTk5pBIwEDEOMAwGA1UEAwwFdDEwMDCkEjAQ -MQ4wDAYDVQQDDAV0MTAwMaQSMBAxDjAMBgNVBAMMBXQxMDAypBIwEDEOMAwGA1UE -AwwFdDEwMDOkEjAQMQ4wDAYDVQQDDAV0MTAwNKQSMBAxDjAMBgNVBAMMBXQxMDA1 -pBIwEDEOMAwGA1UEAwwFdDEwMDakEjAQMQ4wDAYDVQQDDAV0MTAwN6QSMBAxDjAM -BgNVBAMMBXQxMDA4pBIwEDEOMAwGA1UEAwwFdDEwMDmkEjAQMQ4wDAYDVQQDDAV0 -MTAxMKQSMBAxDjAMBgNVBAMMBXQxMDExpBIwEDEOMAwGA1UEAwwFdDEwMTKkEjAQ -MQ4wDAYDVQQDDAV0MTAxM6QSMBAxDjAMBgNVBAMMBXQxMDE0pBIwEDEOMAwGA1UE -AwwFdDEwMTWkEjAQMQ4wDAYDVQQDDAV0MTAxNqQSMBAxDjAMBgNVBAMMBXQxMDE3 -pBIwEDEOMAwGA1UEAwwFdDEwMTikEjAQMQ4wDAYDVQQDDAV0MTAxOaQSMBAxDjAM -BgNVBAMMBXQxMDIwpBIwEDEOMAwGA1UEAwwFdDEwMjGkEjAQMQ4wDAYDVQQDDAV0 -MTAyMqQSMBAxDjAMBgNVBAMMBXQxMDIzMA0GCSqGSIb3DQEBCwUAA4IBAQB3ryeb -I4KdkLQ8Ah/UqcgMf1gZrpqG/vWxpK7Lr0Y6BP88z+pr3xbL0YmNjKf5EefpkJJr -VNX6qiSWY2FXSoHafgsuyAQ0at1uRieXWp3bjC3oWkURv30aJXrKnrHjHFMiCze2 -+tYeg21UQE1xs+NS3ITRlfyS5PCFzm1ONqZstDV+Dui2iwmwyE7xuKr+6Ci6jqMx -75m92p7LWgKVJEVBPO16kpS9nf1+B1GMVZcHU2C03WQCbCsYMo3f7YlK3Tcyy2aa -+rjoPYePY2o/byyRJbOFcQo5qiSljnvCV4btO+czbemkwc2Iiw7IBmObQEAqPLKW -Ei0cU/6D7EpQvsZT ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/3F1D2B1D127E34B62B61B278F274669ADC66ADCC.pem b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/3F1D2B1D127E34B62B61B278F274669ADC66ADCC.pem deleted file mode 100644 index 5f2dfd782e..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/3F1D2B1D127E34B62B61B278F274669ADC66ADCC.pem +++ /dev/null @@ -1,91 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3f:1d:2b:1d:12:7e:34:b6:2b:61:b2:78:f2:74:66:9a:dc:66:ad:cc - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Target - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (2048 bit) - Modulus: - 00:c3:82:13:64:0e:35:33:0c:ac:44:be:6d:92:f5: - e4:97:d8:9a:bd:64:f1:b5:67:62:01:7b:0c:98:57: - 4a:63:64:b0:9d:6a:7b:84:a2:91:fe:73:0b:4c:81: - ce:89:f9:8d:8d:8a:41:18:c8:d8:64:27:36:32:e6: - 36:26:44:16:13:2e:a1:ad:38:06:0b:1b:39:62:6a: - 94:ac:a0:59:be:52:cb:47:d7:4b:00:09:91:8e:14: - 69:a9:62:df:49:d8:b6:79:73:de:60:d4:b8:76:89: - a4:53:8a:1d:4b:80:88:31:e8:05:46:81:1b:7b:5d: - 52:d0:6b:3b:53:0d:25:3c:95:9b:2d:99:83:3c:03: - 8c:b5:73:fb:43:6c:82:b3:48:57:38:3c:ff:b7:79: - d8:13:74:06:d0:17:78:a9:38:09:76:ca:f9:b7:5a: - a5:8a:6e:85:7f:27:34:79:82:ef:a2:01:93:ae:fa: - 0b:18:47:d4:14:ff:67:78:2b:53:92:f6:ac:27:42: - c7:7f:8e:fd:06:4a:36:b9:7a:98:5e:0d:94:ef:1a: - fa:08:ad:8d:64:28:c7:c1:03:76:63:b9:33:5a:9f: - 16:be:d3:e0:5c:e9:43:7b:9b:83:b3:90:31:e7:59: - 2b:1c:d2:8c:73:15:a2:3a:94:35:03:80:97:f8:5d: - a3:13 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 5A:16:9C:06:85:B6:F4:77:AD:72:58:A2:4F:A1:FE:29:CF:97:8A:2B - X509v3 Authority Key Identifier: - keyid:24:B9:91:41:39:F1:30:5E:F8:C5:3B:C0:51:CC:11:58:A6:13:73:B3 - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Client Authentication, TLS Web Server Authentication, Code Signing, OCSP Signing, Time Stamping - Signature Algorithm: sha256WithRSAEncryption - 4a:f1:10:7d:eb:77:f7:e9:8a:1a:e4:1a:2d:84:9c:1d:91:67: - f8:c2:d9:a7:f4:e9:97:5e:74:fe:d8:a3:8f:21:3d:51:bc:af: - eb:2a:e5:dd:76:61:de:31:4c:1b:ca:91:1c:79:5e:2c:5d:7b: - 41:b8:04:47:e0:92:ac:cd:39:c2:86:b3:e0:24:5b:62:c7:ef: - 79:8d:f5:09:60:29:74:16:80:94:ed:8c:93:15:32:ee:66:bb: - 31:db:6a:eb:00:b4:60:6e:ed:61:f6:1e:f9:e7:fd:de:2f:a2: - 4f:f1:3d:50:7e:86:04:8b:e0:a9:94:ee:83:fc:23:16:a5:3c: - 07:87:1b:b8:71:f2:22:2e:5b:cf:8d:86:be:ae:45:5d:81:8a: - 33:6e:36:32:8a:28:04:cb:39:f2:78:b0:e4:cf:21:fd:72:06: - 76:c1:83:06:6e:36:0c:69:5a:4c:90:42:60:64:56:db:b6:c8: - 29:56:d8:48:77:6b:2b:5b:2a:33:37:fd:6a:78:ae:a2:0a:29: - 8c:2b:5e:10:d7:04:ef:b7:19:6f:e5:82:1e:03:d1:8e:73:b0: - 1b:dd:4c:8a:ce:40:de:a5:02:29:8a:e3:ff:5a:bb:a9:8c:34: - 87:b0:6b:44:6b:ee:c3:dc:d0:51:d3:af:e8:ee:37:4f:b7:c1: - 0f:7e:5a:2c ------BEGIN CERTIFICATE----- -MIIDwDCCAqigAwIBAgIUPx0rHRJ+NLYrYbJ48nRmmtxmrcwwDQYJKoZIhvcNAQEL -BQAwFzEVMBMGA1UEAwwMSW50ZXJtZWRpYXRlMB4XDTIxMTAwNTEyMDAwMFoXDTIy -MTAwNTEyMDAwMFowETEPMA0GA1UEAwwGVGFyZ2V0MIIBIjANBgkqhkiG9w0BAQEF -AAOCAQ8AMIIBCgKCAQEAw4ITZA41MwysRL5tkvXkl9iavWTxtWdiAXsMmFdKY2Sw -nWp7hKKR/nMLTIHOifmNjYpBGMjYZCc2MuY2JkQWEy6hrTgGCxs5YmqUrKBZvlLL -R9dLAAmRjhRpqWLfSdi2eXPeYNS4domkU4odS4CIMegFRoEbe11S0Gs7Uw0lPJWb -LZmDPAOMtXP7Q2yCs0hXODz/t3nYE3QG0Bd4qTgJdsr5t1qlim6Ffyc0eYLvogGT -rvoLGEfUFP9neCtTkvasJ0LHf479Bko2uXqYXg2U7xr6CK2NZCjHwQN2Y7kzWp8W -vtPgXOlDe5uDs5Ax51krHNKMcxWiOpQ1A4CX+F2jEwIDAQABo4IBCDCCAQQwHQYD -VR0OBBYEFFoWnAaFtvR3rXJYok+h/inPl4orMB8GA1UdIwQYMBaAFCS5kUE58TBe -+MU7wFHMEVimE3OzMD8GCCsGAQUFBwEBBDMwMTAvBggrBgEFBQcwAoYjaHR0cDov -L3VybC1mb3ItYWlhL0ludGVybWVkaWF0ZS5jZXIwNAYDVR0fBC0wKzApoCegJYYj -aHR0cDovL3VybC1mb3ItY3JsL0ludGVybWVkaWF0ZS5jcmwwDgYDVR0PAQH/BAQD -AgWgMDsGA1UdJQQ0MDIGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYBBQUHAwMGCCsG -AQUFBwMJBggrBgEFBQcDCDANBgkqhkiG9w0BAQsFAAOCAQEASvEQfet39+mKGuQa -LYScHZFn+MLZp/Tpl150/tijjyE9Ubyv6yrl3XZh3jFMG8qRHHleLF17QbgER+CS -rM05woaz4CRbYsfveY31CWApdBaAlO2MkxUy7ma7Mdtq6wC0YG7tYfYe+ef93i+i -T/E9UH6GBIvgqZTug/wjFqU8B4cbuHHyIi5bz42Gvq5FXYGKM242MoooBMs58niw -5M8h/XIGdsGDBm42DGlaTJBCYGRW27bIKVbYSHdrK1sqMzf9aniuogopjCteENcE -77cZb+WCHgPRjnOwG91Mis5A3qUCKYrj/1q7qYw0h7BrRGvuw9zQUdOv6O43T7fB -D35aLA== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/71F49EE7B5F73630C9845EA5B8398B58F3237B18.pem b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/71F49EE7B5F73630C9845EA5B8398B58F3237B18.pem deleted file mode 100644 index a25531b9c1..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/71F49EE7B5F73630C9845EA5B8398B58F3237B18.pem +++ /dev/null @@ -1,89 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 71:f4:9e:e7:b5:f7:36:30:c9:84:5e:a5:b8:39:8b:58:f3:23:7b:18 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Root - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (2048 bit) - Modulus: - 00:e8:17:31:b6:0e:84:10:a4:9b:bf:9e:ae:9e:29: - b7:6f:81:ae:d7:df:45:89:d1:29:51:0e:1e:39:7a: - 96:6b:7f:c0:78:df:88:cf:db:b3:ab:8d:49:0f:fb: - 70:55:85:4f:93:9f:12:a1:a6:55:5c:a9:ae:8d:79: - 4d:a6:3a:32:03:9c:bf:ad:95:c4:8b:49:1f:02:b5: - 23:a0:9f:da:d3:45:c6:8c:fc:ec:97:46:57:dd:77: - 56:c6:a2:46:78:da:a2:59:bb:22:ea:de:63:94:50: - 19:91:1c:10:cd:67:e0:57:10:bd:e0:de:69:67:80: - 6d:31:a8:43:bc:49:2c:8a:d6:4a:23:0f:a6:78:f4: - 74:c7:4f:37:52:3a:af:9c:03:b2:b3:6c:26:ab:62: - 61:12:6d:22:15:66:da:ec:d6:b8:1f:9b:14:b9:04: - 9c:9b:5e:b5:cb:8b:62:95:67:6a:a1:57:44:02:77: - a2:81:3e:c7:20:52:a2:16:2e:ba:c2:29:a1:54:ed: - 33:67:f2:2a:26:a3:b6:da:08:8d:63:6c:ca:4f:c6: - 84:88:b9:60:08:cf:50:8e:5a:3e:75:d7:ec:d7:63: - c1:fe:18:3f:4e:fb:08:de:39:45:d2:81:34:8e:89: - 5a:48:ce:49:bf:ca:84:cb:26:ac:c2:f7:1f:6b:3f: - 0d:49 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - CD:6F:4C:FE:AA:7A:3A:63:5D:12:79:6D:F4:4C:B0:2A:8A:7F:FB:6C - X509v3 Authority Key Identifier: - keyid:CD:6F:4C:FE:AA:7A:3A:63:5D:12:79:6D:F4:4C:B0:2A:8A:7F:FB:6C - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - Signature Algorithm: sha256WithRSAEncryption - 2e:3a:98:e7:b2:5c:e7:8d:50:e4:04:4d:82:34:86:f0:13:6b: - 02:e6:cd:c9:ae:cc:6c:0b:79:da:1f:9a:5e:9d:59:12:f2:c8: - aa:56:32:28:2a:ea:64:68:15:a1:9f:27:e6:26:b7:66:15:9c: - 65:3c:37:af:f9:27:78:63:42:cc:bb:d4:ea:49:e2:7d:31:6b: - 94:7e:d0:41:24:bc:f9:e1:b3:34:a7:60:35:d7:4a:05:ef:53: - 5f:9f:a7:9a:e8:25:40:35:94:3e:c0:2e:3a:3a:5e:00:f9:ec: - 45:16:e3:11:2c:29:8e:86:70:ae:8f:0e:f6:7a:3d:c3:01:ef: - b2:35:e7:00:3d:1a:4a:0c:8e:a8:fe:bb:11:b9:05:71:60:d4: - a6:94:4c:ee:1b:a1:88:68:13:87:e0:1d:25:ba:e3:71:fd:7a: - ee:3e:c1:8c:4e:a5:c9:c2:26:a4:c6:dc:de:73:7c:14:e9:a1: - 2d:a6:0a:82:09:8a:1a:bb:08:54:01:50:3b:fa:e9:1e:ca:96: - fd:93:6f:a6:9e:4c:02:18:0f:71:86:0b:14:92:a8:43:09:39: - 19:96:d1:5f:96:12:08:18:bd:46:53:28:df:19:37:1d:17:48: - 97:4d:57:4d:90:7b:d2:1e:be:32:cd:e6:4c:98:bd:15:c8:26: - cc:7f:8a:ff ------BEGIN CERTIFICATE----- -MIIDeDCCAmCgAwIBAgIUcfSe57X3NjDJhF6luDmLWPMjexgwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMA8xDTALBgNVBAMMBFJvb3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK -AoIBAQDoFzG2DoQQpJu/nq6eKbdvga7X30WJ0SlRDh45epZrf8B434jP27OrjUkP -+3BVhU+TnxKhplVcqa6NeU2mOjIDnL+tlcSLSR8CtSOgn9rTRcaM/OyXRlfdd1bG -okZ42qJZuyLq3mOUUBmRHBDNZ+BXEL3g3mlngG0xqEO8SSyK1kojD6Z49HTHTzdS -Oq+cA7KzbCarYmESbSIVZtrs1rgfmxS5BJybXrXLi2KVZ2qhV0QCd6KBPscgUqIW -LrrCKaFU7TNn8iomo7baCI1jbMpPxoSIuWAIz1COWj511+zXY8H+GD9O+wjeOUXS -gTSOiVpIzkm/yoTLJqzC9x9rPw1JAgMBAAGjgcswgcgwHQYDVR0OBBYEFM1vTP6q -ejpjXRJ5bfRMsCqKf/tsMB8GA1UdIwQYMBaAFM1vTP6qejpjXRJ5bfRMsCqKf/ts -MDcGCCsGAQUFBwEBBCswKTAnBggrBgEFBQcwAoYbaHR0cDovL3VybC1mb3ItYWlh -L1Jvb3QuY2VyMCwGA1UdHwQlMCMwIaAfoB2GG2h0dHA6Ly91cmwtZm9yLWNybC9S -b290LmNybDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG -9w0BAQsFAAOCAQEALjqY57Jc541Q5ARNgjSG8BNrAubNya7MbAt52h+aXp1ZEvLI -qlYyKCrqZGgVoZ8n5ia3ZhWcZTw3r/kneGNCzLvU6knifTFrlH7QQSS8+eGzNKdg -NddKBe9TX5+nmuglQDWUPsAuOjpeAPnsRRbjESwpjoZwro8O9no9wwHvsjXnAD0a -SgyOqP67EbkFcWDUppRM7huhiGgTh+AdJbrjcf167j7BjE6lycImpMbc3nN8FOmh -LaYKggmKGrsIVAFQO/rpHsqW/ZNvpp5MAhgPcYYLFJKoQwk5GZbRX5YSCBi9RlMo -3xk3HRdIl01XTZB70h6+Ms3mTJi9FcgmzH+K/w== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/71F49EE7B5F73630C9845EA5B8398B58F3237B19.pem b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/71F49EE7B5F73630C9845EA5B8398B58F3237B19.pem deleted file mode 100644 index a9f492408b..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/71F49EE7B5F73630C9845EA5B8398B58F3237B19.pem +++ /dev/null @@ -1,89 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 71:f4:9e:e7:b5:f7:36:30:c9:84:5e:a5:b8:39:8b:58:f3:23:7b:19 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (2048 bit) - Modulus: - 00:ed:3b:bb:f2:8b:20:81:de:42:41:c6:24:63:1c: - 4b:e5:63:b0:93:07:fd:22:64:50:7d:ef:8f:ed:65: - aa:ba:f4:d9:ad:0c:68:dd:50:b0:ea:0a:5e:18:9e: - df:48:88:ec:1f:fa:6b:4a:3e:db:ea:24:6e:b1:a3: - bb:0b:12:de:1d:49:d3:32:78:24:f9:e8:4f:aa:85: - 90:21:a2:2c:8f:58:95:8c:70:80:8d:cd:99:68:03: - 67:0f:48:eb:96:17:63:93:2b:8f:72:77:23:5f:97: - 4f:86:bd:17:d2:70:5b:5c:18:f8:01:d6:11:d8:c0: - dc:32:b2:f4:bf:dd:da:65:fb:86:23:c0:a4:bd:ff: - c2:a4:b6:87:9e:10:98:d4:f4:09:cb:26:50:1d:56: - 83:72:09:c6:c1:b7:cc:52:9c:61:09:04:bb:aa:2a: - 63:66:a5:b1:02:60:85:bc:30:91:62:bb:6f:b0:24: - 33:e8:b5:9a:13:1f:3a:73:95:d5:fb:bc:a9:48:dd: - 14:a2:a4:62:e1:97:19:57:b1:1a:da:c1:79:93:fd: - 74:cb:e1:ff:0c:49:c2:78:57:8e:ef:dc:df:60:96: - 8e:e6:a2:97:60:b9:53:6b:17:8e:ae:f9:3d:be:31: - dd:46:18:bd:af:b6:a6:02:fa:48:2f:d8:c6:f0:1f: - bc:43 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 24:B9:91:41:39:F1:30:5E:F8:C5:3B:C0:51:CC:11:58:A6:13:73:B3 - X509v3 Authority Key Identifier: - keyid:CD:6F:4C:FE:AA:7A:3A:63:5D:12:79:6D:F4:4C:B0:2A:8A:7F:FB:6C - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - Signature Algorithm: sha256WithRSAEncryption - b5:72:33:3e:f7:8f:e4:b8:bb:1c:6d:25:34:ec:3f:2b:03:19: - c8:50:bd:f0:17:e8:5a:eb:43:6d:57:b0:e5:5e:90:18:c9:5d: - 96:e4:27:d3:09:35:ba:22:c7:5f:c3:b2:b0:2f:be:dc:50:57: - b3:1a:7b:60:fa:ba:99:85:d9:8b:cb:08:67:c5:4b:28:a7:f2: - 21:91:44:ac:aa:c2:d0:4e:15:59:1f:c0:91:06:fa:f8:09:b5: - 39:3f:6d:be:80:7b:10:72:fd:2c:fe:27:69:3a:36:63:e3:14: - 30:11:a0:77:83:f3:14:d2:fa:76:0c:c3:88:1a:3c:fa:f0:50: - ba:d4:69:4b:80:93:6d:01:38:2e:3e:81:e4:e5:f7:02:1c:bf: - ad:e7:be:6e:dd:a3:1d:3c:7c:df:58:7b:ea:06:56:2c:8e:e1: - 00:14:79:c3:a9:aa:b5:25:8d:fb:62:e2:18:75:27:d3:f4:09: - 3b:fa:49:f7:9e:fd:28:22:57:e4:fe:f4:b6:3e:17:91:46:2c: - 6d:b0:5a:36:b4:f1:47:fb:dd:28:2a:b4:c3:43:7e:dd:05:a5: - 35:05:60:8c:fc:1e:76:8d:28:a7:42:f0:6b:b3:4b:5c:77:ae: - ec:be:c3:9e:a6:50:be:5b:46:f4:b3:2d:e4:a5:f5:a1:4e:94: - 0a:09:e4:2e ------BEGIN CERTIFICATE----- -MIIDgDCCAmigAwIBAgIUcfSe57X3NjDJhF6luDmLWPMjexkwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBAO07u/KLIIHeQkHGJGMcS+VjsJMH/SJkUH3vj+1lqrr02a0M -aN1QsOoKXhie30iI7B/6a0o+2+okbrGjuwsS3h1J0zJ4JPnoT6qFkCGiLI9YlYxw -gI3NmWgDZw9I65YXY5Mrj3J3I1+XT4a9F9JwW1wY+AHWEdjA3DKy9L/d2mX7hiPA -pL3/wqS2h54QmNT0CcsmUB1Wg3IJxsG3zFKcYQkEu6oqY2alsQJghbwwkWK7b7Ak -M+i1mhMfOnOV1fu8qUjdFKKkYuGXGVexGtrBeZP9dMvh/wxJwnhXju/c32CWjuai -l2C5U2sXjq75Pb4x3UYYva+2pgL6SC/YxvAfvEMCAwEAAaOByzCByDAdBgNVHQ4E -FgQUJLmRQTnxMF74xTvAUcwRWKYTc7MwHwYDVR0jBBgwFoAUzW9M/qp6OmNdEnlt -9EywKop/+2wwNwYIKwYBBQUHAQEEKzApMCcGCCsGAQUFBzAChhtodHRwOi8vdXJs -LWZvci1haWEvUm9vdC5jZXIwLAYDVR0fBCUwIzAhoB+gHYYbaHR0cDovL3VybC1m -b3ItY3JsL1Jvb3QuY3JsMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/ -MA0GCSqGSIb3DQEBCwUAA4IBAQC1cjM+94/kuLscbSU07D8rAxnIUL3wF+ha60Nt -V7DlXpAYyV2W5CfTCTW6Isdfw7KwL77cUFezGntg+rqZhdmLywhnxUsop/IhkUSs -qsLQThVZH8CRBvr4CbU5P22+gHsQcv0s/idpOjZj4xQwEaB3g/MU0vp2DMOIGjz6 -8FC61GlLgJNtATguPoHk5fcCHL+t575u3aMdPHzfWHvqBlYsjuEAFHnDqaq1JY37 -YuIYdSfT9Ak7+kn3nv0oIlfk/vS2PheRRixtsFo2tPFH+90oKrTDQ37dBaU1BWCM -/B52jSinQvBrs0tcd67svsOeplC+W0b0sy3kpfWhTpQKCeQu ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.cnf b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.cnf deleted file mode 100644 index 2aa48b2d2c..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.cnf +++ /dev/null @@ -1,64 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Intermediate" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,keyCertSign,cRLSign -basicConstraints = critical,CA:true - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Intermediate.pem -new_certs_dir = out -serial = out/Intermediate.serial -database = out/Intermediate.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Intermediate.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Intermediate.cer - -[crl_info] -URI.0 = http://url-for-crl/Intermediate.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.csr b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.csr deleted file mode 100644 index d4a90f4ad5..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.csr +++ /dev/null @@ -1,17 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIICrTCCAZUCAQAwFzEVMBMGA1UEAwwMSW50ZXJtZWRpYXRlMIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7Tu78osggd5CQcYkYxxL5WOwkwf9ImRQfe+P -7WWquvTZrQxo3VCw6gpeGJ7fSIjsH/prSj7b6iRusaO7CxLeHUnTMngk+ehPqoWQ -IaIsj1iVjHCAjc2ZaANnD0jrlhdjkyuPcncjX5dPhr0X0nBbXBj4AdYR2MDcMrL0 -v93aZfuGI8Ckvf/CpLaHnhCY1PQJyyZQHVaDcgnGwbfMUpxhCQS7qipjZqWxAmCF -vDCRYrtvsCQz6LWaEx86c5XV+7ypSN0UoqRi4ZcZV7Ea2sF5k/10y+H/DEnCeFeO -79zfYJaO5qKXYLlTaxeOrvk9vjHdRhi9r7amAvpIL9jG8B+8QwIDAQABoFEwTwYJ -KoZIhvcNAQkOMUIwQDAdBgNVHQ4EFgQUJLmRQTnxMF74xTvAUcwRWKYTc7MwDgYD -VR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEB -AL8MfpH7/bX1WSuoRgJnZJpMKD9uw4if0Xn6Tsq+woqWANJE1UDolrweFGweTWHP -dNeIhQBpbssUIYnDIH5WsaSkBVFgDc3fld2orEwuMF5k1TNLtgtC9nLB+F7PQd+5 -ni7M78BW+F5ZwNO6lP2MfJjpmrbMhIszIUeJLEBl3CHjGfgDwBK34nfCCFCaMTpT -qQ/tkFkmo1jRcJIVjlBX6KXNQ/g/hFRsvbMEVWtRtgAtK7hX2rT96jtDxD07f6+R -PG8GCt2Y1MS1zoVGSzH1jOv5XK4KeElZFZI4XJOwXIxBg/4mBEle25Wnj5QdeK4R -fiA75GDwI+efWsNpenjnuNU= ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.db b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.db deleted file mode 100644 index ccdda2b43b..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.db +++ /dev/null @@ -1 +0,0 @@ -V 221005120000Z 3F1D2B1D127E34B62B61B278F274669ADC66ADCC unknown /CN=Target diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.db.attr b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.db.attr deleted file mode 100644 index 3a7e39e6ee..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.db.attr +++ /dev/null @@ -1 +0,0 @@ -unique_subject = no diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.db.old b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.db.old deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.pem b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.pem deleted file mode 100644 index a9f492408b..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.pem +++ /dev/null @@ -1,89 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 71:f4:9e:e7:b5:f7:36:30:c9:84:5e:a5:b8:39:8b:58:f3:23:7b:19 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Intermediate - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (2048 bit) - Modulus: - 00:ed:3b:bb:f2:8b:20:81:de:42:41:c6:24:63:1c: - 4b:e5:63:b0:93:07:fd:22:64:50:7d:ef:8f:ed:65: - aa:ba:f4:d9:ad:0c:68:dd:50:b0:ea:0a:5e:18:9e: - df:48:88:ec:1f:fa:6b:4a:3e:db:ea:24:6e:b1:a3: - bb:0b:12:de:1d:49:d3:32:78:24:f9:e8:4f:aa:85: - 90:21:a2:2c:8f:58:95:8c:70:80:8d:cd:99:68:03: - 67:0f:48:eb:96:17:63:93:2b:8f:72:77:23:5f:97: - 4f:86:bd:17:d2:70:5b:5c:18:f8:01:d6:11:d8:c0: - dc:32:b2:f4:bf:dd:da:65:fb:86:23:c0:a4:bd:ff: - c2:a4:b6:87:9e:10:98:d4:f4:09:cb:26:50:1d:56: - 83:72:09:c6:c1:b7:cc:52:9c:61:09:04:bb:aa:2a: - 63:66:a5:b1:02:60:85:bc:30:91:62:bb:6f:b0:24: - 33:e8:b5:9a:13:1f:3a:73:95:d5:fb:bc:a9:48:dd: - 14:a2:a4:62:e1:97:19:57:b1:1a:da:c1:79:93:fd: - 74:cb:e1:ff:0c:49:c2:78:57:8e:ef:dc:df:60:96: - 8e:e6:a2:97:60:b9:53:6b:17:8e:ae:f9:3d:be:31: - dd:46:18:bd:af:b6:a6:02:fa:48:2f:d8:c6:f0:1f: - bc:43 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 24:B9:91:41:39:F1:30:5E:F8:C5:3B:C0:51:CC:11:58:A6:13:73:B3 - X509v3 Authority Key Identifier: - keyid:CD:6F:4C:FE:AA:7A:3A:63:5D:12:79:6D:F4:4C:B0:2A:8A:7F:FB:6C - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - Signature Algorithm: sha256WithRSAEncryption - b5:72:33:3e:f7:8f:e4:b8:bb:1c:6d:25:34:ec:3f:2b:03:19: - c8:50:bd:f0:17:e8:5a:eb:43:6d:57:b0:e5:5e:90:18:c9:5d: - 96:e4:27:d3:09:35:ba:22:c7:5f:c3:b2:b0:2f:be:dc:50:57: - b3:1a:7b:60:fa:ba:99:85:d9:8b:cb:08:67:c5:4b:28:a7:f2: - 21:91:44:ac:aa:c2:d0:4e:15:59:1f:c0:91:06:fa:f8:09:b5: - 39:3f:6d:be:80:7b:10:72:fd:2c:fe:27:69:3a:36:63:e3:14: - 30:11:a0:77:83:f3:14:d2:fa:76:0c:c3:88:1a:3c:fa:f0:50: - ba:d4:69:4b:80:93:6d:01:38:2e:3e:81:e4:e5:f7:02:1c:bf: - ad:e7:be:6e:dd:a3:1d:3c:7c:df:58:7b:ea:06:56:2c:8e:e1: - 00:14:79:c3:a9:aa:b5:25:8d:fb:62:e2:18:75:27:d3:f4:09: - 3b:fa:49:f7:9e:fd:28:22:57:e4:fe:f4:b6:3e:17:91:46:2c: - 6d:b0:5a:36:b4:f1:47:fb:dd:28:2a:b4:c3:43:7e:dd:05:a5: - 35:05:60:8c:fc:1e:76:8d:28:a7:42:f0:6b:b3:4b:5c:77:ae: - ec:be:c3:9e:a6:50:be:5b:46:f4:b3:2d:e4:a5:f5:a1:4e:94: - 0a:09:e4:2e ------BEGIN CERTIFICATE----- -MIIDgDCCAmigAwIBAgIUcfSe57X3NjDJhF6luDmLWPMjexkwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMBcxFTATBgNVBAMMDEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBAO07u/KLIIHeQkHGJGMcS+VjsJMH/SJkUH3vj+1lqrr02a0M -aN1QsOoKXhie30iI7B/6a0o+2+okbrGjuwsS3h1J0zJ4JPnoT6qFkCGiLI9YlYxw -gI3NmWgDZw9I65YXY5Mrj3J3I1+XT4a9F9JwW1wY+AHWEdjA3DKy9L/d2mX7hiPA -pL3/wqS2h54QmNT0CcsmUB1Wg3IJxsG3zFKcYQkEu6oqY2alsQJghbwwkWK7b7Ak -M+i1mhMfOnOV1fu8qUjdFKKkYuGXGVexGtrBeZP9dMvh/wxJwnhXju/c32CWjuai -l2C5U2sXjq75Pb4x3UYYva+2pgL6SC/YxvAfvEMCAwEAAaOByzCByDAdBgNVHQ4E -FgQUJLmRQTnxMF74xTvAUcwRWKYTc7MwHwYDVR0jBBgwFoAUzW9M/qp6OmNdEnlt -9EywKop/+2wwNwYIKwYBBQUHAQEEKzApMCcGCCsGAQUFBzAChhtodHRwOi8vdXJs -LWZvci1haWEvUm9vdC5jZXIwLAYDVR0fBCUwIzAhoB+gHYYbaHR0cDovL3VybC1m -b3ItY3JsL1Jvb3QuY3JsMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/ -MA0GCSqGSIb3DQEBCwUAA4IBAQC1cjM+94/kuLscbSU07D8rAxnIUL3wF+ha60Nt -V7DlXpAYyV2W5CfTCTW6Isdfw7KwL77cUFezGntg+rqZhdmLywhnxUsop/IhkUSs -qsLQThVZH8CRBvr4CbU5P22+gHsQcv0s/idpOjZj4xQwEaB3g/MU0vp2DMOIGjz6 -8FC61GlLgJNtATguPoHk5fcCHL+t575u3aMdPHzfWHvqBlYsjuEAFHnDqaq1JY37 -YuIYdSfT9Ak7+kn3nv0oIlfk/vS2PheRRixtsFo2tPFH+90oKrTDQ37dBaU1BWCM -/B52jSinQvBrs0tcd67svsOeplC+W0b0sy3kpfWhTpQKCeQu ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.serial b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.serial deleted file mode 100644 index cf31e8d3b9..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.serial +++ /dev/null @@ -1 +0,0 @@ -3F1D2B1D127E34B62B61B278F274669ADC66ADCD diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.serial.old b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.serial.old deleted file mode 100644 index 9e8d818323..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Intermediate.serial.old +++ /dev/null @@ -1 +0,0 @@ -3f1d2b1d127e34b62b61b278f274669adc66adcc diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Issuer.db b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Issuer.db deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Issuer.serial b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Issuer.serial deleted file mode 100644 index ecf3f52873..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Issuer.serial +++ /dev/null @@ -1 +0,0 @@ -7dce8fe3e857ca744822009ee1c071adf6aff6bd diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.cnf b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.cnf deleted file mode 100644 index 5525d6b9df..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.cnf +++ /dev/null @@ -1,64 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Root" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,keyCertSign,cRLSign -basicConstraints = critical,CA:true - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Root.pem -new_certs_dir = out -serial = out/Root.serial -database = out/Root.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Root.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Root.cer - -[crl_info] -URI.0 = http://url-for-crl/Root.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.csr b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.csr deleted file mode 100644 index af13689df0..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.csr +++ /dev/null @@ -1,17 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIICpTCCAY0CAQAwDzENMAsGA1UEAwwEUm9vdDCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBAOgXMbYOhBCkm7+erp4pt2+BrtffRYnRKVEOHjl6lmt/wHjf -iM/bs6uNSQ/7cFWFT5OfEqGmVVypro15TaY6MgOcv62VxItJHwK1I6Cf2tNFxoz8 -7JdGV913VsaiRnjaolm7IureY5RQGZEcEM1n4FcQveDeaWeAbTGoQ7xJLIrWSiMP -pnj0dMdPN1I6r5wDsrNsJqtiYRJtIhVm2uzWuB+bFLkEnJtetcuLYpVnaqFXRAJ3 -ooE+xyBSohYuusIpoVTtM2fyKiajttoIjWNsyk/GhIi5YAjPUI5aPnXX7Ndjwf4Y -P077CN45RdKBNI6JWkjOSb/KhMsmrML3H2s/DUkCAwEAAaBRME8GCSqGSIb3DQEJ -DjFCMEAwHQYDVR0OBBYEFM1vTP6qejpjXRJ5bfRMsCqKf/tsMA4GA1UdDwEB/wQE -AwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAOI+wtRA5k -H6nQ7FASXZ4BkI2ZQb/ZcDD9OO8cKqMFslyksK8FvmdfNZKVvs+96NZYan+fe3nv -Mhd226KdtQDdsnsbLmJMptJwCAquOm8DC9Hq/adYP8KDmbf+bEDMgS+CkHYUDEfK -xL1gryBVli26eQnu3hIFTX222/ydKhe1Pa/IfIJlghHzWHbYmKh7LsyMhVWUShep -XShqCFztctvpbQLco+ZDVzJN+bO/OuZKsiEzXjZ0uC8Ri0pVWNF7pZJfV8aTS73D -PSnTJIE//y2EVoNKjaBxJb5al19Xsd+B35NmaJ8GnmnPbf1PJU5bv/B1UtJKXCt7 -0EybEMHhaz3H ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db deleted file mode 100644 index e22c1037eb..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db +++ /dev/null @@ -1,2 +0,0 @@ -V 221005120000Z 71F49EE7B5F73630C9845EA5B8398B58F3237B18 unknown /CN=Root -V 221005120000Z 71F49EE7B5F73630C9845EA5B8398B58F3237B19 unknown /CN=Intermediate diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.attr b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.attr deleted file mode 100644 index 3a7e39e6ee..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.attr +++ /dev/null @@ -1 +0,0 @@ -unique_subject = no diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.attr.old b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.attr.old deleted file mode 100644 index 3a7e39e6ee..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.attr.old +++ /dev/null @@ -1 +0,0 @@ -unique_subject = no diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.old b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.old deleted file mode 100644 index 01aa816ea6..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.db.old +++ /dev/null @@ -1 +0,0 @@ -V 221005120000Z 71F49EE7B5F73630C9845EA5B8398B58F3237B18 unknown /CN=Root diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.pem b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.pem deleted file mode 100644 index a25531b9c1..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.pem +++ /dev/null @@ -1,89 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 71:f4:9e:e7:b5:f7:36:30:c9:84:5e:a5:b8:39:8b:58:f3:23:7b:18 - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Root - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Root - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (2048 bit) - Modulus: - 00:e8:17:31:b6:0e:84:10:a4:9b:bf:9e:ae:9e:29: - b7:6f:81:ae:d7:df:45:89:d1:29:51:0e:1e:39:7a: - 96:6b:7f:c0:78:df:88:cf:db:b3:ab:8d:49:0f:fb: - 70:55:85:4f:93:9f:12:a1:a6:55:5c:a9:ae:8d:79: - 4d:a6:3a:32:03:9c:bf:ad:95:c4:8b:49:1f:02:b5: - 23:a0:9f:da:d3:45:c6:8c:fc:ec:97:46:57:dd:77: - 56:c6:a2:46:78:da:a2:59:bb:22:ea:de:63:94:50: - 19:91:1c:10:cd:67:e0:57:10:bd:e0:de:69:67:80: - 6d:31:a8:43:bc:49:2c:8a:d6:4a:23:0f:a6:78:f4: - 74:c7:4f:37:52:3a:af:9c:03:b2:b3:6c:26:ab:62: - 61:12:6d:22:15:66:da:ec:d6:b8:1f:9b:14:b9:04: - 9c:9b:5e:b5:cb:8b:62:95:67:6a:a1:57:44:02:77: - a2:81:3e:c7:20:52:a2:16:2e:ba:c2:29:a1:54:ed: - 33:67:f2:2a:26:a3:b6:da:08:8d:63:6c:ca:4f:c6: - 84:88:b9:60:08:cf:50:8e:5a:3e:75:d7:ec:d7:63: - c1:fe:18:3f:4e:fb:08:de:39:45:d2:81:34:8e:89: - 5a:48:ce:49:bf:ca:84:cb:26:ac:c2:f7:1f:6b:3f: - 0d:49 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - CD:6F:4C:FE:AA:7A:3A:63:5D:12:79:6D:F4:4C:B0:2A:8A:7F:FB:6C - X509v3 Authority Key Identifier: - keyid:CD:6F:4C:FE:AA:7A:3A:63:5D:12:79:6D:F4:4C:B0:2A:8A:7F:FB:6C - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Root.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Root.crl - - X509v3 Key Usage: critical - Certificate Sign, CRL Sign - X509v3 Basic Constraints: critical - CA:TRUE - Signature Algorithm: sha256WithRSAEncryption - 2e:3a:98:e7:b2:5c:e7:8d:50:e4:04:4d:82:34:86:f0:13:6b: - 02:e6:cd:c9:ae:cc:6c:0b:79:da:1f:9a:5e:9d:59:12:f2:c8: - aa:56:32:28:2a:ea:64:68:15:a1:9f:27:e6:26:b7:66:15:9c: - 65:3c:37:af:f9:27:78:63:42:cc:bb:d4:ea:49:e2:7d:31:6b: - 94:7e:d0:41:24:bc:f9:e1:b3:34:a7:60:35:d7:4a:05:ef:53: - 5f:9f:a7:9a:e8:25:40:35:94:3e:c0:2e:3a:3a:5e:00:f9:ec: - 45:16:e3:11:2c:29:8e:86:70:ae:8f:0e:f6:7a:3d:c3:01:ef: - b2:35:e7:00:3d:1a:4a:0c:8e:a8:fe:bb:11:b9:05:71:60:d4: - a6:94:4c:ee:1b:a1:88:68:13:87:e0:1d:25:ba:e3:71:fd:7a: - ee:3e:c1:8c:4e:a5:c9:c2:26:a4:c6:dc:de:73:7c:14:e9:a1: - 2d:a6:0a:82:09:8a:1a:bb:08:54:01:50:3b:fa:e9:1e:ca:96: - fd:93:6f:a6:9e:4c:02:18:0f:71:86:0b:14:92:a8:43:09:39: - 19:96:d1:5f:96:12:08:18:bd:46:53:28:df:19:37:1d:17:48: - 97:4d:57:4d:90:7b:d2:1e:be:32:cd:e6:4c:98:bd:15:c8:26: - cc:7f:8a:ff ------BEGIN CERTIFICATE----- -MIIDeDCCAmCgAwIBAgIUcfSe57X3NjDJhF6luDmLWPMjexgwDQYJKoZIhvcNAQEL -BQAwDzENMAsGA1UEAwwEUm9vdDAeFw0yMTEwMDUxMjAwMDBaFw0yMjEwMDUxMjAw -MDBaMA8xDTALBgNVBAMMBFJvb3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK -AoIBAQDoFzG2DoQQpJu/nq6eKbdvga7X30WJ0SlRDh45epZrf8B434jP27OrjUkP -+3BVhU+TnxKhplVcqa6NeU2mOjIDnL+tlcSLSR8CtSOgn9rTRcaM/OyXRlfdd1bG -okZ42qJZuyLq3mOUUBmRHBDNZ+BXEL3g3mlngG0xqEO8SSyK1kojD6Z49HTHTzdS -Oq+cA7KzbCarYmESbSIVZtrs1rgfmxS5BJybXrXLi2KVZ2qhV0QCd6KBPscgUqIW -LrrCKaFU7TNn8iomo7baCI1jbMpPxoSIuWAIz1COWj511+zXY8H+GD9O+wjeOUXS -gTSOiVpIzkm/yoTLJqzC9x9rPw1JAgMBAAGjgcswgcgwHQYDVR0OBBYEFM1vTP6q -ejpjXRJ5bfRMsCqKf/tsMB8GA1UdIwQYMBaAFM1vTP6qejpjXRJ5bfRMsCqKf/ts -MDcGCCsGAQUFBwEBBCswKTAnBggrBgEFBQcwAoYbaHR0cDovL3VybC1mb3ItYWlh -L1Jvb3QuY2VyMCwGA1UdHwQlMCMwIaAfoB2GG2h0dHA6Ly91cmwtZm9yLWNybC9S -b290LmNybDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG -9w0BAQsFAAOCAQEALjqY57Jc541Q5ARNgjSG8BNrAubNya7MbAt52h+aXp1ZEvLI -qlYyKCrqZGgVoZ8n5ia3ZhWcZTw3r/kneGNCzLvU6knifTFrlH7QQSS8+eGzNKdg -NddKBe9TX5+nmuglQDWUPsAuOjpeAPnsRRbjESwpjoZwro8O9no9wwHvsjXnAD0a -SgyOqP67EbkFcWDUppRM7huhiGgTh+AdJbrjcf167j7BjE6lycImpMbc3nN8FOmh -LaYKggmKGrsIVAFQO/rpHsqW/ZNvpp5MAhgPcYYLFJKoQwk5GZbRX5YSCBi9RlMo -3xk3HRdIl01XTZB70h6+Ms3mTJi9FcgmzH+K/w== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.serial b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.serial deleted file mode 100644 index ec3595e6a2..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.serial +++ /dev/null @@ -1 +0,0 @@ -71F49EE7B5F73630C9845EA5B8398B58F3237B1A diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.serial.old b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.serial.old deleted file mode 100644 index 662e34920d..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Root.serial.old +++ /dev/null @@ -1 +0,0 @@ -71F49EE7B5F73630C9845EA5B8398B58F3237B19 diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.cnf b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.cnf deleted file mode 100644 index 7c297e44dc..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.cnf +++ /dev/null @@ -1,64 +0,0 @@ -[req] -encrypt_key = no -utf8 = yes -string_mask = utf8only -prompt = no -distinguished_name = req_dn -req_extensions = req_ext - -[req_dn] -commonName = "Target" - -[req_ext] -subjectKeyIdentifier = hash -keyUsage = critical,digitalSignature,keyEncipherment -extendedKeyUsage = clientAuth,serverAuth,codeSigning,OCSPSigning,timeStamping - -[ca] -default_ca = root_ca - -[root_ca] -certificate = out/Target.pem -new_certs_dir = out -serial = out/Target.serial -database = out/Target.db -unique_subject = no -default_days = 365 -default_md = sha256 -policy = policy_anything -email_in_dn = no -preserve = yes -name_opt = multiline,-esc_msb,utf8 -cert_opt = ca_default -copy_extensions = copy -x509_extensions = signing_ca_ext -default_crl_days = 30 -crl_extensions = crl_ext -private_key = keys/Target.key - -[policy_anything] -domainComponent = optional -countryName = optional -stateOrProvinceName = optional -localityName = optional -organizationName = optional -organizationalUnitName = optional -commonName = optional -emailAddress = optional - -[signing_ca_ext] -subjectKeyIdentifier = hash -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info -crlDistributionPoints = @crl_info - -[issuer_info] -caIssuers;URI.0 = http://url-for-aia/Target.cer - -[crl_info] -URI.0 = http://url-for-crl/Target.crl - -[crl_ext] -authorityKeyIdentifier = keyid:always -authorityInfoAccess = @issuer_info - diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.csr b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.csr deleted file mode 100644 index ef8b5538ee..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.csr +++ /dev/null @@ -1,18 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIC0zCCAbsCAQAwETEPMA0GA1UEAwwGVGFyZ2V0MIIBIjANBgkqhkiG9w0BAQEF -AAOCAQ8AMIIBCgKCAQEAw4ITZA41MwysRL5tkvXkl9iavWTxtWdiAXsMmFdKY2Sw -nWp7hKKR/nMLTIHOifmNjYpBGMjYZCc2MuY2JkQWEy6hrTgGCxs5YmqUrKBZvlLL -R9dLAAmRjhRpqWLfSdi2eXPeYNS4domkU4odS4CIMegFRoEbe11S0Gs7Uw0lPJWb -LZmDPAOMtXP7Q2yCs0hXODz/t3nYE3QG0Bd4qTgJdsr5t1qlim6Ffyc0eYLvogGT -rvoLGEfUFP9neCtTkvasJ0LHf479Bko2uXqYXg2U7xr6CK2NZCjHwQN2Y7kzWp8W -vtPgXOlDe5uDs5Ax51krHNKMcxWiOpQ1A4CX+F2jEwIDAQABoH0wewYJKoZIhvcN -AQkOMW4wbDAdBgNVHQ4EFgQUWhacBoW29HetcliiT6H+Kc+XiiswDgYDVR0PAQH/ -BAQDAgWgMDsGA1UdJQQ0MDIGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYBBQUHAwMG -CCsGAQUFBwMJBggrBgEFBQcDCDANBgkqhkiG9w0BAQsFAAOCAQEAfJHTJvha20G6 -3Kp/n9avFm1r67ZlVJ0v7v/LPrLa28NEZ9FN8hzP4llXEz5GhLo3q44ndcJl4VxJ -uEEnddSdNA9ZvGvGV80ESe/UgziP+BnhZBg6G7L0M3eiFyTjI5riyGnQ/vRJM52q -YGg1BQSypyeyKhlKJLCURSZabqb+Jni7aBMcRcoscGYCrQRgp3w5/D8PiWcEhV3f -HQZCUw6SYEXuW8hVALEanS4Y5axjmccMuG5Ys0lBj3tTbCBCec9ja7DWP6rC4c40 -dFld44KnR1kkuJv+gp6/gPM5Qhicp8eHsrBeVTKvf6daYdIUBZfzFamWc34nJtgU -kBj+xR4iWw== ------END CERTIFICATE REQUEST----- diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.db b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.db deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.pem b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.pem deleted file mode 100644 index 5f2dfd782e..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.pem +++ /dev/null @@ -1,91 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: - 3f:1d:2b:1d:12:7e:34:b6:2b:61:b2:78:f2:74:66:9a:dc:66:ad:cc - Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=Intermediate - Validity - Not Before: Oct 5 12:00:00 2021 GMT - Not After : Oct 5 12:00:00 2022 GMT - Subject: CN=Target - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (2048 bit) - Modulus: - 00:c3:82:13:64:0e:35:33:0c:ac:44:be:6d:92:f5: - e4:97:d8:9a:bd:64:f1:b5:67:62:01:7b:0c:98:57: - 4a:63:64:b0:9d:6a:7b:84:a2:91:fe:73:0b:4c:81: - ce:89:f9:8d:8d:8a:41:18:c8:d8:64:27:36:32:e6: - 36:26:44:16:13:2e:a1:ad:38:06:0b:1b:39:62:6a: - 94:ac:a0:59:be:52:cb:47:d7:4b:00:09:91:8e:14: - 69:a9:62:df:49:d8:b6:79:73:de:60:d4:b8:76:89: - a4:53:8a:1d:4b:80:88:31:e8:05:46:81:1b:7b:5d: - 52:d0:6b:3b:53:0d:25:3c:95:9b:2d:99:83:3c:03: - 8c:b5:73:fb:43:6c:82:b3:48:57:38:3c:ff:b7:79: - d8:13:74:06:d0:17:78:a9:38:09:76:ca:f9:b7:5a: - a5:8a:6e:85:7f:27:34:79:82:ef:a2:01:93:ae:fa: - 0b:18:47:d4:14:ff:67:78:2b:53:92:f6:ac:27:42: - c7:7f:8e:fd:06:4a:36:b9:7a:98:5e:0d:94:ef:1a: - fa:08:ad:8d:64:28:c7:c1:03:76:63:b9:33:5a:9f: - 16:be:d3:e0:5c:e9:43:7b:9b:83:b3:90:31:e7:59: - 2b:1c:d2:8c:73:15:a2:3a:94:35:03:80:97:f8:5d: - a3:13 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 5A:16:9C:06:85:B6:F4:77:AD:72:58:A2:4F:A1:FE:29:CF:97:8A:2B - X509v3 Authority Key Identifier: - keyid:24:B9:91:41:39:F1:30:5E:F8:C5:3B:C0:51:CC:11:58:A6:13:73:B3 - - Authority Information Access: - CA Issuers - URI:http://url-for-aia/Intermediate.cer - - X509v3 CRL Distribution Points: - - Full Name: - URI:http://url-for-crl/Intermediate.crl - - X509v3 Key Usage: critical - Digital Signature, Key Encipherment - X509v3 Extended Key Usage: - TLS Web Client Authentication, TLS Web Server Authentication, Code Signing, OCSP Signing, Time Stamping - Signature Algorithm: sha256WithRSAEncryption - 4a:f1:10:7d:eb:77:f7:e9:8a:1a:e4:1a:2d:84:9c:1d:91:67: - f8:c2:d9:a7:f4:e9:97:5e:74:fe:d8:a3:8f:21:3d:51:bc:af: - eb:2a:e5:dd:76:61:de:31:4c:1b:ca:91:1c:79:5e:2c:5d:7b: - 41:b8:04:47:e0:92:ac:cd:39:c2:86:b3:e0:24:5b:62:c7:ef: - 79:8d:f5:09:60:29:74:16:80:94:ed:8c:93:15:32:ee:66:bb: - 31:db:6a:eb:00:b4:60:6e:ed:61:f6:1e:f9:e7:fd:de:2f:a2: - 4f:f1:3d:50:7e:86:04:8b:e0:a9:94:ee:83:fc:23:16:a5:3c: - 07:87:1b:b8:71:f2:22:2e:5b:cf:8d:86:be:ae:45:5d:81:8a: - 33:6e:36:32:8a:28:04:cb:39:f2:78:b0:e4:cf:21:fd:72:06: - 76:c1:83:06:6e:36:0c:69:5a:4c:90:42:60:64:56:db:b6:c8: - 29:56:d8:48:77:6b:2b:5b:2a:33:37:fd:6a:78:ae:a2:0a:29: - 8c:2b:5e:10:d7:04:ef:b7:19:6f:e5:82:1e:03:d1:8e:73:b0: - 1b:dd:4c:8a:ce:40:de:a5:02:29:8a:e3:ff:5a:bb:a9:8c:34: - 87:b0:6b:44:6b:ee:c3:dc:d0:51:d3:af:e8:ee:37:4f:b7:c1: - 0f:7e:5a:2c ------BEGIN CERTIFICATE----- -MIIDwDCCAqigAwIBAgIUPx0rHRJ+NLYrYbJ48nRmmtxmrcwwDQYJKoZIhvcNAQEL -BQAwFzEVMBMGA1UEAwwMSW50ZXJtZWRpYXRlMB4XDTIxMTAwNTEyMDAwMFoXDTIy -MTAwNTEyMDAwMFowETEPMA0GA1UEAwwGVGFyZ2V0MIIBIjANBgkqhkiG9w0BAQEF -AAOCAQ8AMIIBCgKCAQEAw4ITZA41MwysRL5tkvXkl9iavWTxtWdiAXsMmFdKY2Sw -nWp7hKKR/nMLTIHOifmNjYpBGMjYZCc2MuY2JkQWEy6hrTgGCxs5YmqUrKBZvlLL -R9dLAAmRjhRpqWLfSdi2eXPeYNS4domkU4odS4CIMegFRoEbe11S0Gs7Uw0lPJWb -LZmDPAOMtXP7Q2yCs0hXODz/t3nYE3QG0Bd4qTgJdsr5t1qlim6Ffyc0eYLvogGT -rvoLGEfUFP9neCtTkvasJ0LHf479Bko2uXqYXg2U7xr6CK2NZCjHwQN2Y7kzWp8W -vtPgXOlDe5uDs5Ax51krHNKMcxWiOpQ1A4CX+F2jEwIDAQABo4IBCDCCAQQwHQYD -VR0OBBYEFFoWnAaFtvR3rXJYok+h/inPl4orMB8GA1UdIwQYMBaAFCS5kUE58TBe -+MU7wFHMEVimE3OzMD8GCCsGAQUFBwEBBDMwMTAvBggrBgEFBQcwAoYjaHR0cDov -L3VybC1mb3ItYWlhL0ludGVybWVkaWF0ZS5jZXIwNAYDVR0fBC0wKzApoCegJYYj -aHR0cDovL3VybC1mb3ItY3JsL0ludGVybWVkaWF0ZS5jcmwwDgYDVR0PAQH/BAQD -AgWgMDsGA1UdJQQ0MDIGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYBBQUHAwMGCCsG -AQUFBwMJBggrBgEFBQcDCDANBgkqhkiG9w0BAQsFAAOCAQEASvEQfet39+mKGuQa -LYScHZFn+MLZp/Tpl150/tijjyE9Ubyv6yrl3XZh3jFMG8qRHHleLF17QbgER+CS -rM05woaz4CRbYsfveY31CWApdBaAlO2MkxUy7ma7Mdtq6wC0YG7tYfYe+ef93i+i -T/E9UH6GBIvgqZTug/wjFqU8B4cbuHHyIi5bz42Gvq5FXYGKM242MoooBMs58niw -5M8h/XIGdsGDBm42DGlaTJBCYGRW27bIKVbYSHdrK1sqMzf9aniuogopjCteENcE -77cZb+WCHgPRjnOwG91Mis5A3qUCKYrj/1q7qYw0h7BrRGvuw9zQUdOv6O43T7fB -D35aLA== ------END CERTIFICATE----- diff --git a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.serial b/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.serial deleted file mode 100644 index 3819d47b2c..0000000000 --- a/pki/testdata/verify_certificate_chain_unittest/target-eku-many/out/Target.serial +++ /dev/null @@ -1 +0,0 @@ -1407b97c84b89757ac724c89d88d25efdc52a432 From 0093ff3137d0f2bc6bbd5fdafea6929f1b107bd3 Mon Sep 17 00:00:00 2001 From: Bob Beck Date: Tue, 7 Jan 2025 00:05:37 +0000 Subject: [PATCH 31/64] replace some more allocate + strlcat with asprintf Change-Id: Id8447847e3cf6a48123cb625762ecbc4ddad8f16 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74907 Reviewed-by: Adam Langley Commit-Queue: Bob Beck --- crypto/x509/v3_utl.cc | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/crypto/x509/v3_utl.cc b/crypto/x509/v3_utl.cc index d2a6149411..9f4aba9bd9 100644 --- a/crypto/x509/v3_utl.cc +++ b/crypto/x509/v3_utl.cc @@ -119,7 +119,6 @@ int X509V3_add_value_bool(const char *name, int asn1_bool, static char *bignum_to_string(const BIGNUM *bn) { char *tmp, *ret; - size_t len; // Display large numbers in hex and small numbers in decimal. Converting to // decimal takes quadratic time and is no more useful than hex for large @@ -133,20 +132,10 @@ static char *bignum_to_string(const BIGNUM *bn) { return NULL; } - len = strlen(tmp) + 3; - ret = reinterpret_cast(OPENSSL_malloc(len)); - if (ret == NULL) { - OPENSSL_free(tmp); - return NULL; - } - // Prepend "0x", but place it after the "-" if negative. - if (tmp[0] == '-') { - OPENSSL_strlcpy(ret, "-0x", len); - OPENSSL_strlcat(ret, tmp + 1, len); - } else { - OPENSSL_strlcpy(ret, "0x", len); - OPENSSL_strlcat(ret, tmp, len); + if (OPENSSL_asprintf(&ret, "%s0x%s", (tmp[0] == '-') ? "-" : "", + (tmp[0] == '-') ? tmp + 1 : tmp) == -1) { + ret = nullptr; } OPENSSL_free(tmp); return ret; From a66e808c0f15a42b6e9b5b5c42cc02d458835da1 Mon Sep 17 00:00:00 2001 From: Adam Langley Date: Tue, 7 Jan 2025 10:31:33 -0800 Subject: [PATCH 32/64] Revert "Always try and enable the new_uninit feature." This reverts commit d678fbfb4802deac0258a9a53eac960d6e6e1bc5. The original change broke Chromium: ``` error[E0725]: the feature `new_uninit` is not in the list of allowed features --> ../../third_party/boringssl/src/rust/bssl-crypto/src/lib.rs:28:12 | 28 | #![feature(new_uninit)] | ^^^^^^^^^^ ``` Change-Id: I6732a720a5705cfe7b0219b5d9d02a911af0f89a Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74987 Auto-Submit: Adam Langley Commit-Queue: Adam Langley Reviewed-by: David Benjamin Commit-Queue: David Benjamin --- rust/bssl-crypto/src/lib.rs | 4 ---- 1 file changed, 4 deletions(-) diff --git a/rust/bssl-crypto/src/lib.rs b/rust/bssl-crypto/src/lib.rs index 5cc3a7a9df..bd6876010b 100644 --- a/rust/bssl-crypto/src/lib.rs +++ b/rust/bssl-crypto/src/lib.rs @@ -23,10 +23,6 @@ )] #![cfg_attr(not(any(feature = "std", test)), no_std)] -// This crate requires the |new_uninit| feature which is available by -// default in Rust 1.82 but present and usable in some earlier versions. -#![feature(new_uninit)] - //! Rust BoringSSL bindings extern crate alloc; From f2394d14d81df436b263ff104eb6efc915cbdfc6 Mon Sep 17 00:00:00 2001 From: Bob Beck Date: Tue, 7 Jan 2025 01:40:45 +0000 Subject: [PATCH 33/64] Stop playing with time strings with strlcat In ASN1_TIME_to_generalizedtime we were already parsing the input time string to check for validity at the start of the function. Instead of throwing away the tm we construct to do this, keep the tm, and just convert the time normally to what we want after the check instead of messing with the original string. Change-Id: I32b351abd135b1f9c30b228c09718c5be994187a Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74848 Reviewed-by: Adam Langley Commit-Queue: Bob Beck --- crypto/asn1/a_time.cc | 40 ++++++++++++++-------------------------- 1 file changed, 14 insertions(+), 26 deletions(-) diff --git a/crypto/asn1/a_time.cc b/crypto/asn1/a_time.cc index 6ab5d93dae..597b4861be 100644 --- a/crypto/asn1/a_time.cc +++ b/crypto/asn1/a_time.cc @@ -71,8 +71,17 @@ int ASN1_TIME_check(const ASN1_TIME *t) { // Convert an ASN1_TIME structure to GeneralizedTime ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(const ASN1_TIME *in, ASN1_GENERALIZEDTIME **out) { - if (!ASN1_TIME_check(in)) { - return NULL; + struct tm tm; + if (in->type == V_ASN1_GENERALIZEDTIME) { + if (!asn1_generalizedtime_to_tm(&tm, in)) { + return nullptr; + } + } else if (in->type == V_ASN1_UTCTIME) { + if (!asn1_utctime_to_tm(&tm, in, /*allow_timezone_offset =*/0)) { + return nullptr; + } + } else { + return nullptr; } ASN1_GENERALIZEDTIME *ret = NULL; @@ -84,33 +93,12 @@ ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(const ASN1_TIME *in, ret = *out; } - // If already GeneralizedTime just copy across - if (in->type == V_ASN1_GENERALIZEDTIME) { - if (!ASN1_STRING_set(ret, in->data, in->length)) { - goto err; - } - goto done; - } - - // Grow the string to accomodate the two-digit century. - if (!ASN1_STRING_set(ret, NULL, in->length + 2)) { + int64_t posix_time; + if (!OPENSSL_tm_to_posix(&tm, &posix_time) || // + !ASN1_GENERALIZEDTIME_set(ret, posix_time)) { goto err; } - { - char *const out_str = (char *)ret->data; - // |ASN1_STRING_set| also allocates an additional byte for a trailing NUL. - const size_t out_str_capacity = in->length + 2 + 1; - // Work out the century and prepend - if (in->data[0] >= '5') { - OPENSSL_strlcpy(out_str, "19", out_str_capacity); - } else { - OPENSSL_strlcpy(out_str, "20", out_str_capacity); - } - OPENSSL_strlcat(out_str, (const char *)in->data, out_str_capacity); - } - -done: if (out != NULL && *out == NULL) { *out = ret; } From d3f61eeacbf7fda857c1d8bbba56e3b5cb6cc2df Mon Sep 17 00:00:00 2001 From: Adam Langley Date: Tue, 7 Jan 2025 10:54:40 -0800 Subject: [PATCH 34/64] Gate Rust support for ML-{KEM,DSA} on a crate feature. These algorithms depend on `new_uninit`, which was only made stable with Rust 1.82. To allow consumers to catch up, this change gates ML-{KEM,DSA} support in `bssl-crypto` behind a (non-default) feature. Change-Id: I6ffe60560a4dc0f802564c56498f6a0a073d94da Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75027 Reviewed-by: David Benjamin Commit-Queue: David Benjamin Auto-Submit: Adam Langley --- rust/bssl-crypto/Cargo.toml | 4 ++++ rust/bssl-crypto/src/lib.rs | 11 ++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/rust/bssl-crypto/Cargo.toml b/rust/bssl-crypto/Cargo.toml index 755da8c3e0..02840152d9 100644 --- a/rust/bssl-crypto/Cargo.toml +++ b/rust/bssl-crypto/Cargo.toml @@ -10,4 +10,8 @@ bssl-sys = {path = "../bssl-sys"} [features] default = [] +# `std` depends on the Rust `std` crate, but adds some useful trait impls if +# available. std = [] +# `mlalgs` enables ML-KEM and ML-DSA support. This requires Rust 1.82. +mlalgs = [] diff --git a/rust/bssl-crypto/src/lib.rs b/rust/bssl-crypto/src/lib.rs index bd6876010b..d1abb93da6 100644 --- a/rust/bssl-crypto/src/lib.rs +++ b/rust/bssl-crypto/src/lib.rs @@ -28,7 +28,10 @@ extern crate alloc; extern crate core; -use alloc::{boxed::Box, vec::Vec}; +#[cfg(feature = "mlalgs")] +use alloc::boxed::Box; + +use alloc::vec::Vec; use core::ffi::c_void; #[macro_use] @@ -48,7 +51,9 @@ pub mod ed25519; pub mod hkdf; pub mod hmac; pub mod hpke; +#[cfg(feature = "mlalgs")] pub mod mldsa; +#[cfg(feature = "mlalgs")] pub mod mlkem; pub mod rsa; pub mod slhdsa; @@ -247,6 +252,7 @@ where /// Requires that the given function completely initializes the value. /// /// Safety: the argument must fully initialize the pointed-to `T`. +#[cfg(feature = "mlalgs")] unsafe fn initialized_boxed_struct(init: F) -> Box where F: FnOnce(*mut T), @@ -262,6 +268,7 @@ where /// /// Safety: the argument must fully initialize the pointed-to `T` if it returns /// true. If it returns false then there are no safety requirements. +#[cfg(feature = "mlalgs")] unsafe fn initialized_boxed_struct_fallible(init: F) -> Option> where F: FnOnce(*mut T) -> bool, @@ -398,6 +405,7 @@ impl Drop for Buffer { } } +#[cfg(feature = "mlalgs")] fn as_cbs(buf: &[u8]) -> bssl_sys::CBS { bssl_sys::CBS { data: buf.as_ffi_ptr(), @@ -455,6 +463,7 @@ fn cbb_to_buffer(initial_capacity: usize, func: F unsafe { Buffer::new(ptr, len) } } +#[cfg(feature = "mlalgs")] /// Calls `func` with a `CBB` pointer that has been initialized to a vector /// of `len` bytes. That function must write exactly `len` bytes to the /// `CBB`. Those bytes are then returned as a vector. From a9bdeed0cbf79003c6edcff7634f5f0cea183c9f Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sun, 5 Jan 2025 11:38:23 -0500 Subject: [PATCH 35/64] Add something to the error queue when Proc-Type version is wrong The Proc-Type header starts with a version number. From RFC 1421, Section 4.6.1.1: > The "Proc-Type:" field has two subfields, separated by a comma. The > first subfield is a decimal number which is used to distinguish among > incompatible encapsulated header field interpretations which may > arise as changes are made to this standard. Messages processed > according to this RFC will carry the subfield value "4" to > distinguish them from messages processed in accordance with prior PEM > RFCs. RFC 1421 was an update of RFC 1113, which used X-Proc-Type: 3,ENCRYPTED, which we do not support. RFC 1040 defined X-Proc-Type: 2 and RFC 989 defined X-Proc-Type: 1,E. As far as I can tell, no other numbers for Proc-Type have ever existed, and likely never will. If we were to ever Proc-Type: 5, we currently return failure but forget to put something on the error queue. It's possible this was originally done for extensibility, but it just breaks internal invariants. By returning zero, the callers will treat this as an error anyway. We'll just confuse code that expects OpenSSL to return an error. Also OpenSSL's PEM APIs all treat failure to decrypt (e.g. due to unsupported future cipher) as an error, so we should treat an unsupported future PEM encryption scheme as an error too. Change-Id: Ia1f4f6776fea8d8a465a73105bf3ce24a587f26b Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74809 Commit-Queue: David Benjamin Reviewed-by: Adam Langley --- crypto/err/pem.errordata | 1 + crypto/pem/pem_lib.cc | 9 +- crypto/pem/pem_test.cc | 121 ++++++ gen/crypto/err_data.cc | 876 ++++++++++++++++++++------------------- include/openssl/pem.h | 1 + 5 files changed, 565 insertions(+), 443 deletions(-) diff --git a/crypto/err/pem.errordata b/crypto/err/pem.errordata index 2a4b73af2d..0856f74045 100644 --- a/crypto/err/pem.errordata +++ b/crypto/err/pem.errordata @@ -13,3 +13,4 @@ PEM,111,READ_KEY PEM,112,SHORT_HEADER PEM,113,UNSUPPORTED_CIPHER PEM,114,UNSUPPORTED_ENCRYPTION +PEM,115,UNSUPPORTED_PROC_TYPE_VERSION diff --git a/crypto/pem/pem_lib.cc b/crypto/pem/pem_lib.cc index 61ab5510e1..3a54348f4e 100644 --- a/crypto/pem/pem_lib.cc +++ b/crypto/pem/pem_lib.cc @@ -391,14 +391,11 @@ int PEM_get_EVP_CIPHER_INFO(const char *header, EVP_CIPHER_INFO *cipher) { return 0; } header += 11; - if (*header != '4') { + if (header[0] != '4' || header[1] != ',') { + OPENSSL_PUT_ERROR(PEM, PEM_R_UNSUPPORTED_PROC_TYPE_VERSION); return 0; } - header++; - if (*header != ',') { - return 0; - } - header++; + header += 2; if (strncmp(header, "ENCRYPTED", 9) != 0) { OPENSSL_PUT_ERROR(PEM, PEM_R_NOT_ENCRYPTED); return 0; diff --git a/crypto/pem/pem_test.cc b/crypto/pem/pem_test.cc index 7b309542a2..30fe10aa04 100644 --- a/crypto/pem/pem_test.cc +++ b/crypto/pem/pem_test.cc @@ -316,4 +316,125 @@ Rvvdqakendy6WgHn1peoChj5w8SjHlbifINI2xYaHPUdfvGULUvPciLB } } +TEST(PEMTest, BadHeaders) { + const struct { + const char *pem; + int err_lib, err_reason; + } kTests[] = { + // Proc-Type must be the first header. + { + R"( +-----BEGIN EC PRIVATE KEY----- +DEK-Info: AES-128-CBC,B3B2988AECAE6EAB0D043105994C1123 +Proc-Type: 4,ENCRYPTED + +RK7DUIGDHWTFh2rpTX+dR88hUyC1PyDlIULiNCkuWFwHrJbc1gM6hMVOKmU196XC +iITrIKmilFm9CPD6Tpfk/NhI/QPxyJlk1geIkxpvUZ2FCeMuYI1To14oYOUKv14q +wr6JtaX2G+pOmwcSPymZC4u2TncAP7KHgS8UGcMw8CE= +-----END EC PRIVATE KEY----- +)", + ERR_LIB_PEM, PEM_R_NOT_PROC_TYPE}, + // Unsupported Proc-Type version. + { + R"( +-----BEGIN EC PRIVATE KEY----- +Proc-Type: 5,ENCRYPTED +DEK-Info: AES-128-CBC,B3B2988AECAE6EAB0D043105994C1123 + +RK7DUIGDHWTFh2rpTX+dR88hUyC1PyDlIULiNCkuWFwHrJbc1gM6hMVOKmU196XC +iITrIKmilFm9CPD6Tpfk/NhI/QPxyJlk1geIkxpvUZ2FCeMuYI1To14oYOUKv14q +wr6JtaX2G+pOmwcSPymZC4u2TncAP7KHgS8UGcMw8CE= +-----END EC PRIVATE KEY----- +)", + ERR_LIB_PEM, PEM_R_UNSUPPORTED_PROC_TYPE_VERSION}, + // Unsupported Proc-Type version. + { + R"( +-----BEGIN EC PRIVATE KEY----- +Proc-Type: 42,ENCRYPTED +DEK-Info: AES-128-CBC,B3B2988AECAE6EAB0D043105994C1123 + +RK7DUIGDHWTFh2rpTX+dR88hUyC1PyDlIULiNCkuWFwHrJbc1gM6hMVOKmU196XC +iITrIKmilFm9CPD6Tpfk/NhI/QPxyJlk1geIkxpvUZ2FCeMuYI1To14oYOUKv14q +wr6JtaX2G+pOmwcSPymZC4u2TncAP7KHgS8UGcMw8CE= +-----END EC PRIVATE KEY----- +)", + ERR_LIB_PEM, PEM_R_UNSUPPORTED_PROC_TYPE_VERSION}, + // Unsupported Proc-Type. + { + R"( +-----BEGIN EC PRIVATE KEY----- +Proc-Type: 4,MIC-ONLY +DEK-Info: AES-128-CBC,B3B2988AECAE6EAB0D043105994C1123 + +RK7DUIGDHWTFh2rpTX+dR88hUyC1PyDlIULiNCkuWFwHrJbc1gM6hMVOKmU196XC +iITrIKmilFm9CPD6Tpfk/NhI/QPxyJlk1geIkxpvUZ2FCeMuYI1To14oYOUKv14q +wr6JtaX2G+pOmwcSPymZC4u2TncAP7KHgS8UGcMw8CE= +-----END EC PRIVATE KEY----- +)", + ERR_LIB_PEM, PEM_R_NOT_ENCRYPTED}, + // Missing DEK-Info. + { + R"( +-----BEGIN EC PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED + +RK7DUIGDHWTFh2rpTX+dR88hUyC1PyDlIULiNCkuWFwHrJbc1gM6hMVOKmU196XC +iITrIKmilFm9CPD6Tpfk/NhI/QPxyJlk1geIkxpvUZ2FCeMuYI1To14oYOUKv14q +wr6JtaX2G+pOmwcSPymZC4u2TncAP7KHgS8UGcMw8CE= +-----END EC PRIVATE KEY----- +)", + ERR_LIB_PEM, PEM_R_NOT_DEK_INFO}, + // Unsupported cipher. + { + R"( +-----BEGIN EC PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED +DEK-Info: AES-127-CBC,B3B2988AECAE6EAB0D043105994C1123 + +RK7DUIGDHWTFh2rpTX+dR88hUyC1PyDlIULiNCkuWFwHrJbc1gM6hMVOKmU196XC +iITrIKmilFm9CPD6Tpfk/NhI/QPxyJlk1geIkxpvUZ2FCeMuYI1To14oYOUKv14q +wr6JtaX2G+pOmwcSPymZC4u2TncAP7KHgS8UGcMw8CE= +-----END EC PRIVATE KEY----- +)", + ERR_LIB_PEM, PEM_R_UNSUPPORTED_ENCRYPTION}, + // IV is not hex. + { + R"( +-----BEGIN EC PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED +DEK-Info: AES-128-CBC,B3B2988AECAE6EAB0D043105994C112Z + +RK7DUIGDHWTFh2rpTX+dR88hUyC1PyDlIULiNCkuWFwHrJbc1gM6hMVOKmU196XC +iITrIKmilFm9CPD6Tpfk/NhI/QPxyJlk1geIkxpvUZ2FCeMuYI1To14oYOUKv14q +wr6JtaX2G+pOmwcSPymZC4u2TncAP7KHgS8UGcMw8CE= +-----END EC PRIVATE KEY----- +)", + ERR_LIB_PEM, PEM_R_BAD_IV_CHARS}, + // Truncated IV. + { + R"( +-----BEGIN EC PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED +DEK-Info: AES-128-CBC,B3B2988AECAE6EAB0D043105994C112 + +RK7DUIGDHWTFh2rpTX+dR88hUyC1PyDlIULiNCkuWFwHrJbc1gM6hMVOKmU196XC +iITrIKmilFm9CPD6Tpfk/NhI/QPxyJlk1geIkxpvUZ2FCeMuYI1To14oYOUKv14q +wr6JtaX2G+pOmwcSPymZC4u2TncAP7KHgS8UGcMw8CE= +-----END EC PRIVATE KEY----- +)", + ERR_LIB_PEM, PEM_R_BAD_IV_CHARS}, + }; + for (const auto &t : kTests) { + SCOPED_TRACE(t.pem); + bssl::UniquePtr bio(BIO_new_mem_buf(t.pem, -1)); + ASSERT_TRUE(bio); + bssl::UniquePtr pkey(PEM_read_bio_PrivateKey( + bio.get(), nullptr, nullptr, const_cast("password"))); + EXPECT_FALSE(pkey); + EXPECT_TRUE(ErrorEquals(ERR_get_error(), t.err_lib, t.err_reason)); + ERR_clear_error(); + } +} + } // namespace diff --git a/gen/crypto/err_data.cc b/gen/crypto/err_data.cc index 48bce02762..6657eb5bdb 100644 --- a/gen/crypto/err_data.cc +++ b/gen/crypto/err_data.cc @@ -77,54 +77,54 @@ const uint32_t kOpenSSLReasonValues[] = { 0xc3b00f7, 0xc3b8921, 0x10320892, - 0x10329654, - 0x10331660, - 0x10339679, - 0x1034168c, + 0x10329672, + 0x1033167e, + 0x10339697, + 0x103416aa, 0x10348f93, 0x10350cdf, - 0x1035969f, - 0x103616c9, - 0x103696dc, - 0x103716fb, - 0x10379714, - 0x10381729, - 0x10389747, - 0x10391756, - 0x10399772, - 0x103a178d, - 0x103a979c, - 0x103b17b8, - 0x103b97d3, - 0x103c17f9, + 0x103596bd, + 0x103616e7, + 0x103696fa, + 0x10371719, + 0x10379732, + 0x10381747, + 0x10389765, + 0x10391774, + 0x10399790, + 0x103a17ab, + 0x103a97ba, + 0x103b17d6, + 0x103b97f1, + 0x103c1817, 0x103c80f7, - 0x103d180a, - 0x103d981e, - 0x103e183d, - 0x103e984c, - 0x103f1863, - 0x103f9876, + 0x103d1828, + 0x103d983c, + 0x103e185b, + 0x103e986a, + 0x103f1881, + 0x103f9894, 0x10400ca3, - 0x10409889, - 0x104118a7, - 0x104198ba, - 0x104218d4, - 0x104298e4, - 0x104318f8, - 0x1043990e, - 0x10441926, - 0x1044993b, - 0x1045194f, - 0x10459961, + 0x104098a7, + 0x104118c5, + 0x104198d8, + 0x104218f2, + 0x10429902, + 0x10431916, + 0x1043992c, + 0x10441944, + 0x10449959, + 0x1045196d, + 0x1045997f, 0x10460635, 0x1046899a, - 0x10471976, - 0x1047998d, - 0x104819a2, - 0x104899b0, + 0x10471994, + 0x104799ab, + 0x104819c0, + 0x104899ce, 0x10490edf, - 0x104997ea, - 0x104a16b4, + 0x10499808, + 0x104a16d2, 0x14320c73, 0x14328c94, 0x14330ca3, @@ -188,6 +188,7 @@ const uint32_t kOpenSSLReasonValues[] = { 0x2438134e, 0x2438935b, 0x2439136e, + 0x24399385, 0x28320cd3, 0x28328ceb, 0x28330ca3, @@ -197,51 +198,51 @@ const uint32_t kOpenSSLReasonValues[] = { 0x283500f7, 0x28358c81, 0x2836099a, - 0x2c3232d4, - 0x2c329385, - 0x2c3332e2, - 0x2c33b2f4, - 0x2c343308, - 0x2c34b31a, - 0x2c353335, - 0x2c35b347, - 0x2c363377, + 0x2c3232f2, + 0x2c3293a3, + 0x2c333300, + 0x2c33b312, + 0x2c343326, + 0x2c34b338, + 0x2c353353, + 0x2c35b365, + 0x2c363395, 0x2c36833a, - 0x2c373384, - 0x2c37b3b0, - 0x2c3833ee, - 0x2c38b405, - 0x2c393423, - 0x2c39b433, - 0x2c3a3445, - 0x2c3ab459, - 0x2c3b346a, - 0x2c3bb489, - 0x2c3c1397, - 0x2c3c93ad, - 0x2c3d34ce, - 0x2c3d93c6, - 0x2c3e34f8, - 0x2c3eb506, - 0x2c3f351e, - 0x2c3fb536, - 0x2c403560, + 0x2c3733a2, + 0x2c37b3ce, + 0x2c38340c, + 0x2c38b423, + 0x2c393441, + 0x2c39b451, + 0x2c3a3463, + 0x2c3ab477, + 0x2c3b3488, + 0x2c3bb4a7, + 0x2c3c13b5, + 0x2c3c93cb, + 0x2c3d34ec, + 0x2c3d93e4, + 0x2c3e3516, + 0x2c3eb524, + 0x2c3f353c, + 0x2c3fb554, + 0x2c40357e, 0x2c409298, - 0x2c413571, - 0x2c41b584, + 0x2c41358f, + 0x2c41b5a2, 0x2c42125e, - 0x2c42b595, + 0x2c42b5b3, 0x2c43076d, - 0x2c43b47b, - 0x2c4433c3, - 0x2c44b543, - 0x2c45335a, - 0x2c45b396, - 0x2c463413, - 0x2c46b49d, - 0x2c4734b2, - 0x2c47b4eb, - 0x2c4833d5, + 0x2c43b499, + 0x2c4433e1, + 0x2c44b561, + 0x2c453378, + 0x2c45b3b4, + 0x2c463431, + 0x2c46b4bb, + 0x2c4734d0, + 0x2c47b509, + 0x2c4833f3, 0x30320000, 0x30328015, 0x3033001f, @@ -381,260 +382,260 @@ const uint32_t kOpenSSLReasonValues[] = { 0x3c418dd3, 0x3c420edf, 0x3c428e69, - 0x40321a1c, - 0x40329a32, - 0x40331a60, - 0x40339a6a, - 0x40341a81, - 0x40349a9f, - 0x40351aaf, - 0x40359ac1, - 0x40361ace, - 0x40369ada, - 0x40371aef, - 0x40379b01, - 0x40381b0c, - 0x40389b1e, + 0x40321a3a, + 0x40329a50, + 0x40331a7e, + 0x40339a88, + 0x40341a9f, + 0x40349abd, + 0x40351acd, + 0x40359adf, + 0x40361aec, + 0x40369af8, + 0x40371b0d, + 0x40379b1f, + 0x40381b2a, + 0x40389b3c, 0x40390f93, - 0x40399b2e, - 0x403a1b41, - 0x403a9b62, - 0x403b1b73, - 0x403b9b83, + 0x40399b4c, + 0x403a1b5f, + 0x403a9b80, + 0x403b1b91, + 0x403b9ba1, 0x403c0071, 0x403c8090, - 0x403d1be4, - 0x403d9bfa, - 0x403e1c09, - 0x403e9c41, - 0x403f1c5b, - 0x403f9c83, - 0x40401c98, - 0x40409cac, - 0x40411ce7, - 0x40419d02, - 0x40421d1b, - 0x40429d2e, - 0x40431d42, - 0x40439d70, - 0x40441d87, + 0x403d1c02, + 0x403d9c18, + 0x403e1c27, + 0x403e9c5f, + 0x403f1c79, + 0x403f9ca1, + 0x40401cb6, + 0x40409cca, + 0x40411d05, + 0x40419d20, + 0x40421d39, + 0x40429d4c, + 0x40431d60, + 0x40439d8e, + 0x40441da5, 0x404480b9, - 0x40451d9c, - 0x40459dae, - 0x40461dd2, - 0x40469df2, - 0x40471e00, - 0x40479e27, - 0x40481e98, - 0x40489f52, - 0x40491f69, - 0x40499f83, - 0x404a1f9a, - 0x404a9fb8, - 0x404b1fd0, - 0x404b9ffd, - 0x404c2013, - 0x404ca025, - 0x404d2046, - 0x404da07f, - 0x404e2093, - 0x404ea0a0, - 0x404f2151, - 0x404fa1c7, - 0x40502236, - 0x4050a24a, - 0x4051227d, - 0x4052228d, - 0x4052a2b1, - 0x405322c9, - 0x4053a2dc, - 0x405422f1, - 0x4054a314, - 0x4055233f, - 0x4055a37c, - 0x405623a1, - 0x4056a3ba, - 0x405723d2, - 0x4057a3e5, - 0x405823fa, - 0x4058a421, - 0x40592450, - 0x4059a47d, - 0x405aa491, - 0x405b24a9, - 0x405ba4ba, - 0x405c24cd, - 0x405ca50c, - 0x405d2519, - 0x405da53e, - 0x405e257c, + 0x40451dba, + 0x40459dcc, + 0x40461df0, + 0x40469e10, + 0x40471e1e, + 0x40479e45, + 0x40481eb6, + 0x40489f70, + 0x40491f87, + 0x40499fa1, + 0x404a1fb8, + 0x404a9fd6, + 0x404b1fee, + 0x404ba01b, + 0x404c2031, + 0x404ca043, + 0x404d2064, + 0x404da09d, + 0x404e20b1, + 0x404ea0be, + 0x404f216f, + 0x404fa1e5, + 0x40502254, + 0x4050a268, + 0x4051229b, + 0x405222ab, + 0x4052a2cf, + 0x405322e7, + 0x4053a2fa, + 0x4054230f, + 0x4054a332, + 0x4055235d, + 0x4055a39a, + 0x405623bf, + 0x4056a3d8, + 0x405723f0, + 0x4057a403, + 0x40582418, + 0x4058a43f, + 0x4059246e, + 0x4059a49b, + 0x405aa4af, + 0x405b24c7, + 0x405ba4d8, + 0x405c24eb, + 0x405ca52a, + 0x405d2537, + 0x405da55c, + 0x405e259a, 0x405e8afe, - 0x405f259d, - 0x405fa5aa, - 0x406025b8, - 0x4060a5da, - 0x4061263b, - 0x4061a673, - 0x4062268a, - 0x4062a69b, - 0x406326e8, - 0x4063a6fd, - 0x40642714, - 0x4064a740, - 0x4065275b, - 0x4065a772, - 0x4066278a, - 0x4066a7b4, - 0x406727df, - 0x4067a824, - 0x4068286c, - 0x4068a88d, - 0x406928bf, - 0x4069a8ed, - 0x406a290e, - 0x406aa92e, - 0x406b2ab6, - 0x406baad9, - 0x406c2aef, - 0x406cadf9, - 0x406d2e28, - 0x406dae50, - 0x406e2e7e, - 0x406eaecb, - 0x406f2f24, - 0x406faf5c, - 0x40702f6f, - 0x4070af8c, + 0x405f25bb, + 0x405fa5c8, + 0x406025d6, + 0x4060a5f8, + 0x40612659, + 0x4061a691, + 0x406226a8, + 0x4062a6b9, + 0x40632706, + 0x4063a71b, + 0x40642732, + 0x4064a75e, + 0x40652779, + 0x4065a790, + 0x406627a8, + 0x4066a7d2, + 0x406727fd, + 0x4067a842, + 0x4068288a, + 0x4068a8ab, + 0x406928dd, + 0x4069a90b, + 0x406a292c, + 0x406aa94c, + 0x406b2ad4, + 0x406baaf7, + 0x406c2b0d, + 0x406cae17, + 0x406d2e46, + 0x406dae6e, + 0x406e2e9c, + 0x406eaee9, + 0x406f2f42, + 0x406faf7a, + 0x40702f8d, + 0x4070afaa, 0x4071084d, - 0x4071af9e, - 0x40722fb1, - 0x4072afe7, - 0x40732fff, - 0x407395af, - 0x40743013, - 0x4074b02d, - 0x4075303e, - 0x4075b052, - 0x40763060, + 0x4071afbc, + 0x40722fcf, + 0x4072b005, + 0x4073301d, + 0x407395cd, + 0x40743031, + 0x4074b04b, + 0x4075305c, + 0x4075b070, + 0x4076307e, 0x4076935b, - 0x40773085, - 0x4077b0c5, - 0x407830e0, - 0x4078b119, - 0x40793130, - 0x4079b146, - 0x407a3172, - 0x407ab185, - 0x407b319a, - 0x407bb1ac, - 0x407c31dd, - 0x407cb1e6, - 0x407d28a8, - 0x407da1ef, - 0x407e30f5, - 0x407ea431, - 0x407f1e14, - 0x407f9fe7, - 0x40802161, - 0x40809e3c, - 0x4081229f, - 0x4081a0ee, - 0x40822e69, - 0x40829b8f, - 0x4083240c, - 0x4083a725, - 0x40841e50, - 0x4084a469, - 0x408524de, - 0x4085a602, - 0x4086255e, - 0x4086a209, - 0x40872eaf, - 0x4087a650, - 0x40881bcd, - 0x4088a837, - 0x40891c1c, - 0x40899ba9, - 0x408a2b27, - 0x408a99c7, - 0x408b31c1, - 0x408baf39, - 0x408c24ee, - 0x408d1f38, - 0x408d9e82, - 0x408e2068, - 0x408ea35c, - 0x408f284b, - 0x408fa61e, - 0x40902800, - 0x4090a530, - 0x40912b0f, - 0x409199ff, - 0x40921c69, - 0x4092aeea, - 0x40932fca, - 0x4093a21a, - 0x40941e64, - 0x4094ab40, - 0x409526ac, - 0x4095b152, - 0x40962e96, - 0x4096a17a, - 0x40972265, - 0x4097a0b7, - 0x40981cc9, - 0x4098a6c0, - 0x40992f06, - 0x4099a389, - 0x409a2322, - 0x409a99e3, - 0x409b1ebe, - 0x409b9ee9, - 0x409c30a7, - 0x409c9f11, - 0x409d2136, - 0x409da104, - 0x409e1d5a, - 0x409ea1af, - 0x409f2197, - 0x409f9eb1, - 0x40a021d7, - 0x40a0a0d1, - 0x40a1211f, - 0x41f429e1, - 0x41f92a73, - 0x41fe2966, - 0x41feac1c, - 0x41ff2d4a, - 0x420329fa, - 0x42082a1c, - 0x4208aa58, - 0x4209294a, - 0x4209aa92, - 0x420a29a1, - 0x420aa981, - 0x420b29c1, - 0x420baa3a, - 0x420c2d66, - 0x420cab50, - 0x420d2c03, - 0x420dac3a, - 0x42122c6d, - 0x42172d2d, - 0x4217acaf, - 0x421c2cd1, - 0x421f2c8c, - 0x42212dde, - 0x42262d10, - 0x422b2dbc, - 0x422babde, - 0x422c2d9e, - 0x422cab91, - 0x422d2b6a, - 0x422dad7d, - 0x422e2bbd, - 0x42302cec, - 0x4230ac54, + 0x407730a3, + 0x4077b0e3, + 0x407830fe, + 0x4078b137, + 0x4079314e, + 0x4079b164, + 0x407a3190, + 0x407ab1a3, + 0x407b31b8, + 0x407bb1ca, + 0x407c31fb, + 0x407cb204, + 0x407d28c6, + 0x407da20d, + 0x407e3113, + 0x407ea44f, + 0x407f1e32, + 0x407fa005, + 0x4080217f, + 0x40809e5a, + 0x408122bd, + 0x4081a10c, + 0x40822e87, + 0x40829bad, + 0x4083242a, + 0x4083a743, + 0x40841e6e, + 0x4084a487, + 0x408524fc, + 0x4085a620, + 0x4086257c, + 0x4086a227, + 0x40872ecd, + 0x4087a66e, + 0x40881beb, + 0x4088a855, + 0x40891c3a, + 0x40899bc7, + 0x408a2b45, + 0x408a99e5, + 0x408b31df, + 0x408baf57, + 0x408c250c, + 0x408d1f56, + 0x408d9ea0, + 0x408e2086, + 0x408ea37a, + 0x408f2869, + 0x408fa63c, + 0x4090281e, + 0x4090a54e, + 0x40912b2d, + 0x40919a1d, + 0x40921c87, + 0x4092af08, + 0x40932fe8, + 0x4093a238, + 0x40941e82, + 0x4094ab5e, + 0x409526ca, + 0x4095b170, + 0x40962eb4, + 0x4096a198, + 0x40972283, + 0x4097a0d5, + 0x40981ce7, + 0x4098a6de, + 0x40992f24, + 0x4099a3a7, + 0x409a2340, + 0x409a9a01, + 0x409b1edc, + 0x409b9f07, + 0x409c30c5, + 0x409c9f2f, + 0x409d2154, + 0x409da122, + 0x409e1d78, + 0x409ea1cd, + 0x409f21b5, + 0x409f9ecf, + 0x40a021f5, + 0x40a0a0ef, + 0x40a1213d, + 0x41f429ff, + 0x41f92a91, + 0x41fe2984, + 0x41feac3a, + 0x41ff2d68, + 0x42032a18, + 0x42082a3a, + 0x4208aa76, + 0x42092968, + 0x4209aab0, + 0x420a29bf, + 0x420aa99f, + 0x420b29df, + 0x420baa58, + 0x420c2d84, + 0x420cab6e, + 0x420d2c21, + 0x420dac58, + 0x42122c8b, + 0x42172d4b, + 0x4217accd, + 0x421c2cef, + 0x421f2caa, + 0x42212dfc, + 0x42262d2e, + 0x422b2dda, + 0x422babfc, + 0x422c2dbc, + 0x422cabaf, + 0x422d2b88, + 0x422dad9b, + 0x422e2bdb, + 0x42302d0a, + 0x4230ac72, 0x44320778, 0x44328787, 0x44330793, @@ -652,109 +653,109 @@ const uint32_t kOpenSSLReasonValues[] = { 0x4439084d, 0x4439885b, 0x443a086e, - 0x48321385, - 0x48329397, - 0x483313ad, - 0x483393c6, - 0x4c321403, - 0x4c329413, - 0x4c331426, - 0x4c339446, + 0x483213a3, + 0x483293b5, + 0x483313cb, + 0x483393e4, + 0x4c321421, + 0x4c329431, + 0x4c331444, + 0x4c339464, 0x4c3400b9, 0x4c3480f7, - 0x4c351452, - 0x4c359460, - 0x4c36147c, - 0x4c3694a2, - 0x4c3714b1, - 0x4c3794bf, - 0x4c3814d4, - 0x4c3894e0, - 0x4c391500, - 0x4c39952a, - 0x4c3a1543, - 0x4c3a955c, + 0x4c351470, + 0x4c35947e, + 0x4c36149a, + 0x4c3694c0, + 0x4c3714cf, + 0x4c3794dd, + 0x4c3814f2, + 0x4c3894fe, + 0x4c39151e, + 0x4c399548, + 0x4c3a1561, + 0x4c3a957a, 0x4c3b0635, - 0x4c3b9575, - 0x4c3c1587, - 0x4c3c9596, - 0x4c3d15af, + 0x4c3b9593, + 0x4c3c15a5, + 0x4c3c95b4, + 0x4c3d15cd, 0x4c3d8cc6, - 0x4c3e161c, - 0x4c3e95be, - 0x4c3f163e, + 0x4c3e163a, + 0x4c3e95dc, + 0x4c3f165c, 0x4c3f935b, - 0x4c4015d4, - 0x4c4093ef, - 0x4c41160c, - 0x4c41948f, - 0x4c4215f8, - 0x4c4293d7, - 0x503235a7, - 0x5032b5b6, - 0x503335c1, - 0x5033b5d1, - 0x503435ea, - 0x5034b604, - 0x50353612, - 0x5035b628, - 0x5036363a, - 0x5036b650, - 0x50373669, - 0x5037b67c, - 0x50383694, - 0x5038b6a5, - 0x503936ba, - 0x5039b6ce, - 0x503a36ee, - 0x503ab704, - 0x503b371c, - 0x503bb72e, - 0x503c374a, - 0x503cb761, - 0x503d377a, - 0x503db790, - 0x503e379d, - 0x503eb7b3, - 0x503f37c5, + 0x4c4015f2, + 0x4c40940d, + 0x4c41162a, + 0x4c4194ad, + 0x4c421616, + 0x4c4293f5, + 0x503235c5, + 0x5032b5d4, + 0x503335df, + 0x5033b5ef, + 0x50343608, + 0x5034b622, + 0x50353630, + 0x5035b646, + 0x50363658, + 0x5036b66e, + 0x50373687, + 0x5037b69a, + 0x503836b2, + 0x5038b6c3, + 0x503936d8, + 0x5039b6ec, + 0x503a370c, + 0x503ab722, + 0x503b373a, + 0x503bb74c, + 0x503c3768, + 0x503cb77f, + 0x503d3798, + 0x503db7ae, + 0x503e37bb, + 0x503eb7d1, + 0x503f37e3, 0x503f83b3, - 0x504037d8, - 0x5040b7e8, - 0x50413802, - 0x5041b811, - 0x5042382b, - 0x5042b848, - 0x50433858, - 0x5043b868, - 0x50443885, + 0x504037f6, + 0x5040b806, + 0x50413820, + 0x5041b82f, + 0x50423849, + 0x5042b866, + 0x50433876, + 0x5043b886, + 0x504438a3, 0x50448469, - 0x50453899, - 0x5045b8b7, - 0x504638ca, - 0x5046b8e0, - 0x504738f2, - 0x5047b907, - 0x5048392d, - 0x5048b93b, - 0x5049394e, - 0x5049b963, - 0x504a3979, - 0x504ab989, - 0x504b39a9, - 0x504bb9bc, - 0x504c39df, - 0x504cba0d, - 0x504d3a3a, - 0x504dba57, - 0x504e3a72, - 0x504eba8e, - 0x504f3aa0, - 0x504fbab7, - 0x50503ac6, + 0x504538b7, + 0x5045b8d5, + 0x504638e8, + 0x5046b8fe, + 0x50473910, + 0x5047b925, + 0x5048394b, + 0x5048b959, + 0x5049396c, + 0x5049b981, + 0x504a3997, + 0x504ab9a7, + 0x504b39c7, + 0x504bb9da, + 0x504c39fd, + 0x504cba2b, + 0x504d3a58, + 0x504dba75, + 0x504e3a90, + 0x504ebaac, + 0x504f3abe, + 0x504fbad5, + 0x50503ae4, 0x50508729, - 0x50513ad9, - 0x5051b877, - 0x50523a1f, + 0x50513af7, + 0x5051b895, + 0x50523a3d, 0x58320fd1, 0x68320f93, 0x68328ceb, @@ -797,21 +798,21 @@ const uint32_t kOpenSSLReasonValues[] = { 0x783e0aed, 0x783e8a9f, 0x7c321274, - 0x803214a2, + 0x803214c0, 0x80328090, - 0x803332a3, + 0x803332c1, 0x803380b9, - 0x803432b2, - 0x8034b21a, - 0x80353238, - 0x8035b2c6, - 0x8036327a, - 0x8036b229, - 0x8037326c, - 0x8037b207, - 0x8038328d, - 0x8038b249, - 0x8039325e, + 0x803432d0, + 0x8034b238, + 0x80353256, + 0x8035b2e4, + 0x80363298, + 0x8036b247, + 0x8037328a, + 0x8037b225, + 0x803832ab, + 0x8038b267, + 0x8039327c, }; extern const size_t kOpenSSLReasonValuesLen; @@ -1080,6 +1081,7 @@ const char kOpenSSLReasonStringData[] = "SHORT_HEADER\0" "UNSUPPORTED_CIPHER\0" "UNSUPPORTED_ENCRYPTION\0" + "UNSUPPORTED_PROC_TYPE_VERSION\0" "BAD_PKCS7_VERSION\0" "NOT_PKCS7_SIGNED_DATA\0" "NO_CERTIFICATES_INCLUDED\0" diff --git a/include/openssl/pem.h b/include/openssl/pem.h index 797e7f0977..28bf3f286c 100644 --- a/include/openssl/pem.h +++ b/include/openssl/pem.h @@ -443,5 +443,6 @@ OPENSSL_EXPORT int PEM_write_PKCS8PrivateKey(FILE *fp, const EVP_PKEY *x, #define PEM_R_SHORT_HEADER 112 #define PEM_R_UNSUPPORTED_CIPHER 113 #define PEM_R_UNSUPPORTED_ENCRYPTION 114 +#define PEM_R_UNSUPPORTED_PROC_TYPE_VERSION 115 #endif // OPENSSL_HEADER_PEM_H From af821e7c650739d6466948981b42094737533978 Mon Sep 17 00:00:00 2001 From: Daniel McCarney Date: Sun, 15 Dec 2024 17:24:34 -0500 Subject: [PATCH 36/64] util/fipstools: add SSH KDF ACVP support This commit updates the acvptool subprocess handling to support the SSH KDF ACVP tests specified in: https://pages.nist.gov/ACVP/draft-celi-acvp-kdf-ssh.html These vectors use the algorithm "kdf-components" and the mode "ssh". Module wrappers that advertise capabilities that include this algo/mode need to implement two new commands (described in ACVP.md): 1. "SSHKDF/$HASH/client" for deriving client direction keys. 2. "SSHKDF/$HASH/server" for deriving server direction keys. Both commands take K, H, SessionID and a cipher name as input and return the IV key, the encryption key, and the integrity key for their respective direction. Change-Id: Ib32612222f0bba299c1365b0bd9188a604fd1ead Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74347 Reviewed-by: Adam Langley Commit-Queue: Adam Langley Reviewed-by: Bob Beck --- util/fipstools/acvp/ACVP.md | 2 + .../fipstools/acvp/acvptool/subprocess/ssh.go | 127 ++++++++++++++++++ .../acvp/acvptool/subprocess/subprocess.go | 1 + 3 files changed, 130 insertions(+) create mode 100644 util/fipstools/acvp/acvptool/subprocess/ssh.go diff --git a/util/fipstools/acvp/ACVP.md b/util/fipstools/acvp/ACVP.md index 9b8f9bc98f..3a3b84e793 100644 --- a/util/fipstools/acvp/ACVP.md +++ b/util/fipstools/acvp/ACVP.md @@ -139,6 +139,8 @@ The other commands are as follows. (Note that you only need to implement the com | SLH-DSA-XX/keyGen | Seed | Private key, public key | | SLH-DSA-XX/sigGen | Private key, message, entropy or empty | Signature | | SLH-DSA-XX/sigVer | Public key, message, signature | Single-byte validity flag | +| SSHKDF/<HASH>/client | K, H, SessionID, cipher algorithm | client IV key, client encryption key, client integrity key | +| SSHKDF/<HASH>/server | K, H, SessionID, cipher algorithm | server IV key, server encryption key, server integrity key | ยน The iterated tests would result in excessive numbers of round trips if the module wrapper handled only basic operations. Thus some ACVP logic is pushed down for these tests so that the inner loop can be handled locally. Either read the NIST documentation ([block-ciphers](https://pages.nist.gov/ACVP/draft-celi-acvp-symmetric.html#name-monte-carlo-tests-for-block) [hashes](https://pages.nist.gov/ACVP/draft-celi-acvp-sha.html#name-monte-carlo-tests-for-sha-1)) to understand the iteration count and return values or, probably more fruitfully, see how these functions are handled in the `modulewrapper` directory. diff --git a/util/fipstools/acvp/acvptool/subprocess/ssh.go b/util/fipstools/acvp/acvptool/subprocess/ssh.go new file mode 100644 index 0000000000..1a9df28add --- /dev/null +++ b/util/fipstools/acvp/acvptool/subprocess/ssh.go @@ -0,0 +1,127 @@ +package subprocess + +import ( + "encoding/hex" + "encoding/json" + "fmt" +) + +// The following structures reflect the JSON of KDF SSH tests. See +// https://pages.nist.gov/ACVP/draft-celi-acvp-kdf-ssh.html#name-test-vectors + +type sshTestVectorSet struct { + Algorithm string `json:"algorithm"` + Mode string `json:"mode"` + Groups []sshTestGroup `json:"testGroups"` +} + +type sshTestGroup struct { + ID uint64 `json:"tgId"` + TestType string `json:"testType"` + HashAlg string `json:"hashAlg"` + Cipher string `json:"cipher"` + Tests []struct { + ID uint64 `json:"tcId"` + KHex string `json:"k"` + HHex string `json:"h"` + SessionIDHex string `json:"sessionID"` + } `json:"tests"` +} + +type sshTestGroupResponse struct { + ID uint64 `json:"tgId"` + Tests []sshTestResponse `json:"tests"` +} + +type sshTestResponse struct { + ID uint64 `json:"tcId"` + InitialIvClientHex string `json:"initialIvClient"` + InitialIvServerHex string `json:"initialIvServer"` + EncryptionKeyClientHex string `json:"encryptionKeyClient"` + EncryptionKeyServerHex string `json:"encryptionKeyServer"` + IntegrityKeyClientHex string `json:"integrityKeyClient"` + IntegrityKeyServerHex string `json:"integrityKeyServer"` +} + +type ssh struct { +} + +func (s *ssh) Process(vectorSet []byte, m Transactable) (any, error) { + var parsed sshTestVectorSet + if err := json.Unmarshal(vectorSet, &parsed); err != nil { + return nil, err + } + + if parsed.Algorithm != "kdf-components" { + return nil, fmt.Errorf("unexpected algorithm: %q", parsed.Algorithm) + } + if parsed.Mode != "ssh" { + return nil, fmt.Errorf("unexpected mode: %q", parsed.Mode) + } + + var ret []sshTestGroupResponse + for _, group := range parsed.Groups { + group := group + + // Only the AFT test type is specified for SSH: + // https://pages.nist.gov/ACVP/draft-celi-acvp-kdf-ssh.html#name-test-types + if group.TestType != "AFT" { + return nil, fmt.Errorf("test group %d had unexpected test type: %q", group.ID, group.TestType) + } + + response := sshTestGroupResponse{ + ID: group.ID, + } + + for _, test := range group.Tests { + test := test + + resp := sshTestResponse{ + ID: test.ID, + } + + k, err := hex.DecodeString(test.KHex) + if err != nil { + return nil, fmt.Errorf("failed to decode K hex in test case %d/%d: %s", group.ID, test.ID, err) + } + h, err := hex.DecodeString(test.HHex) + if err != nil { + return nil, fmt.Errorf("failed to decode H hex in test case %d/%d: %s", group.ID, test.ID, err) + } + sessionID, err := hex.DecodeString(test.SessionIDHex) + if err != nil { + return nil, fmt.Errorf("failed to decode session ID hex in test case %d/%d: %s", group.ID, test.ID, err) + } + + cmd := fmt.Sprintf("SSHKDF/%s/client", group.HashAlg) + m.TransactAsync(cmd, 3, [][]byte{k, h, sessionID, []byte(group.Cipher)}, func(result [][]byte) error { + resp.InitialIvClientHex = hex.EncodeToString(result[0]) + resp.EncryptionKeyClientHex = hex.EncodeToString(result[1]) + resp.IntegrityKeyClientHex = hex.EncodeToString(result[2]) + return nil + }) + + cmd = fmt.Sprintf("SSHKDF/%s/server", group.HashAlg) + m.TransactAsync(cmd, 3, [][]byte{k, h, sessionID, []byte(group.Cipher)}, func(result [][]byte) error { + resp.InitialIvServerHex = hex.EncodeToString(result[0]) + resp.EncryptionKeyServerHex = hex.EncodeToString(result[1]) + resp.IntegrityKeyServerHex = hex.EncodeToString(result[2]) + return nil + }) + + m.Barrier(func() { + response.Tests = append(response.Tests, resp) + }) + } + + m.Barrier(func() { + ret = append(ret, response) + }) + } + + if err := m.Flush(); err != nil { + return nil, err + } + + return ret, nil +} diff --git a/util/fipstools/acvp/acvptool/subprocess/subprocess.go b/util/fipstools/acvp/acvptool/subprocess/subprocess.go index 0b8b52768c..13f9e17c83 100644 --- a/util/fipstools/acvp/acvptool/subprocess/subprocess.go +++ b/util/fipstools/acvp/acvptool/subprocess/subprocess.go @@ -147,6 +147,7 @@ func NewWithIO(cmd *exec.Cmd, in io.WriteCloser, out io.ReadCloser) *Subprocess "ML-DSA": &mldsa{}, "ML-KEM": &mlkem{}, "SLH-DSA": &slhdsa{}, + "kdf-components": &ssh{}, } m.primitives["ECDSA"] = &ecdsa{"ECDSA", map[string]bool{"P-224": true, "P-256": true, "P-384": true, "P-521": true}, m.primitives} m.primitives["DetECDSA"] = &ecdsa{"DetECDSA", map[string]bool{"P-224": true, "P-256": true, "P-384": true, "P-521": true}, m.primitives} From 803062a053a86cff4ef1ffac90d12a82885688f3 Mon Sep 17 00:00:00 2001 From: Daniel McCarney Date: Tue, 17 Dec 2024 16:49:16 -0500 Subject: [PATCH 37/64] util/fipstools: document AES-gcm-randnonce cmds The acvptool supports modules that have an ACVP-AES-GCM algorithm capability that includes ivGen=internal. For these test vectors the tool invokes the AES-GCM-randnonce/open and AES-GCM-randnonce/seal commands. This commit updates ACVP.md to describe these commands since their arguments differ slightly from the base AES-GCM/open and AES-GCM/seal commands used for ivGen=external vectors. Change-Id: I52d84e2cc721adf1e1d8314b2679db4896f000b4 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74527 Reviewed-by: Bob Beck Commit-Queue: Adam Langley Reviewed-by: Adam Langley --- util/fipstools/acvp/ACVP.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/util/fipstools/acvp/ACVP.md b/util/fipstools/acvp/ACVP.md index 3a3b84e793..38700ac506 100644 --- a/util/fipstools/acvp/ACVP.md +++ b/util/fipstools/acvp/ACVP.md @@ -57,6 +57,8 @@ The other commands are as follows. (Note that you only need to implement the com | AES-CTR/encrypt | Key, plaintexttext, initial counter, constant 1 | Ciphertext | | AES-GCM/open | Tag length, key, ciphertext, nonce, ad | One-byte success flag, plaintext or empty | | AES-GCM/seal | Tag length, key, plaintext, nonce, ad | Ciphertext | +| AES-GCM-randnonce/open | Tag length, key, ciphertext (with rand nonce appended), nonce (empty), ad | One-byte success flag, plaintext or empty | +| AES-GCM-randnonce/seal | Tag length, key, plaintext, nonce (empty), ad | Ciphertext (with rand nonce appended) | | AES-KW/open | (dummy), key, ciphertext, (dummy), (dummy) | One-byte success flag, plaintext or empty | | AES-KW/seal | (dummy), key, plaintext, (dummy), (dummy) | Ciphertext | | AES-KWP/open | (dummy), key, ciphertext, (dummy), (dummy) | One-byte success flag, plaintext or empty | From 626749c0db8f0f42d5799158d9658a122d5fea38 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Thu, 9 Jan 2025 13:28:26 -0500 Subject: [PATCH 38/64] Revert "Stop playing with time strings with strlcat" This reverts commit f2394d14d81df436b263ff104eb6efc915cbdfc6. Apparently Conscrypt relies on this function working with UTCTimes with timezone offsets, even though the resulting GeneralizedTime is one we would never parse. Something we'll need to go unwind later. Change-Id: Ibf3ca1f0eaebe422450c47706fe30217da6998f8 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75067 Auto-Submit: David Benjamin Commit-Queue: Adam Langley Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- crypto/asn1/a_time.cc | 40 ++++++++++++++++++++++++++-------------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/crypto/asn1/a_time.cc b/crypto/asn1/a_time.cc index 597b4861be..6ab5d93dae 100644 --- a/crypto/asn1/a_time.cc +++ b/crypto/asn1/a_time.cc @@ -71,17 +71,8 @@ int ASN1_TIME_check(const ASN1_TIME *t) { // Convert an ASN1_TIME structure to GeneralizedTime ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(const ASN1_TIME *in, ASN1_GENERALIZEDTIME **out) { - struct tm tm; - if (in->type == V_ASN1_GENERALIZEDTIME) { - if (!asn1_generalizedtime_to_tm(&tm, in)) { - return nullptr; - } - } else if (in->type == V_ASN1_UTCTIME) { - if (!asn1_utctime_to_tm(&tm, in, /*allow_timezone_offset =*/0)) { - return nullptr; - } - } else { - return nullptr; + if (!ASN1_TIME_check(in)) { + return NULL; } ASN1_GENERALIZEDTIME *ret = NULL; @@ -93,12 +84,33 @@ ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(const ASN1_TIME *in, ret = *out; } - int64_t posix_time; - if (!OPENSSL_tm_to_posix(&tm, &posix_time) || // - !ASN1_GENERALIZEDTIME_set(ret, posix_time)) { + // If already GeneralizedTime just copy across + if (in->type == V_ASN1_GENERALIZEDTIME) { + if (!ASN1_STRING_set(ret, in->data, in->length)) { + goto err; + } + goto done; + } + + // Grow the string to accomodate the two-digit century. + if (!ASN1_STRING_set(ret, NULL, in->length + 2)) { goto err; } + { + char *const out_str = (char *)ret->data; + // |ASN1_STRING_set| also allocates an additional byte for a trailing NUL. + const size_t out_str_capacity = in->length + 2 + 1; + // Work out the century and prepend + if (in->data[0] >= '5') { + OPENSSL_strlcpy(out_str, "19", out_str_capacity); + } else { + OPENSSL_strlcpy(out_str, "20", out_str_capacity); + } + OPENSSL_strlcat(out_str, (const char *)in->data, out_str_capacity); + } + +done: if (out != NULL && *out == NULL) { *out = ret; } From e4b6d4f754ba9ec2f1b40a4a091d3f6ad01ea084 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Thu, 9 Jan 2025 16:46:59 -0500 Subject: [PATCH 39/64] Update CMAKE_CXX_STANDARD in generate_build_files.py Bug: 42290600 Change-Id: I448cc8c2e4cd54b5021b0ee04191852ef466d169 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75087 Auto-Submit: David Benjamin Commit-Queue: Adam Langley Commit-Queue: David Benjamin Reviewed-by: Adam Langley --- util/generate_build_files.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/generate_build_files.py b/util/generate_build_files.py index c97376dae6..30c5833540 100644 --- a/util/generate_build_files.py +++ b/util/generate_build_files.py @@ -404,7 +404,7 @@ def __init__(self): project(BoringSSL LANGUAGES C CXX) -set(CMAKE_CXX_STANDARD 14) +set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_C_STANDARD 11) set(CMAKE_C_STANDARD_REQUIRED ON) From 574fd72ebc0a15c4e54066e368c7834e6f86205d Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sat, 11 Jan 2025 00:07:57 -0500 Subject: [PATCH 40/64] Use std::string_view for label strings No need to deal with converting between string literals and Span is kind of annoying, and now we just have std::string_view. Bug: 42290600 Change-Id: Ic6a4de786f77c512a19fcf10ed7a5f8ec7cfbcdb Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75207 Auto-Submit: David Benjamin Commit-Queue: Adam Langley Reviewed-by: Adam Langley --- ssl/internal.h | 5 +-- ssl/ssl_transcript.cc | 9 ++--- ssl/t1_enc.cc | 34 ++++++++----------- ssl/tls13_enc.cc | 78 ++++++++++++++++++------------------------- 4 files changed, 53 insertions(+), 73 deletions(-) diff --git a/ssl/internal.h b/ssl/internal.h index 92e4388f78..4d24178ad3 100644 --- a/ssl/internal.h +++ b/ssl/internal.h @@ -21,6 +21,7 @@ #include #include #include +#include #include #include @@ -932,7 +933,7 @@ class SSLTranscript { // as the secret and |label| as the label. |seed1| and |seed2| are concatenated // to form the seed parameter. It returns true on success and false on failure. bool tls1_prf(const EVP_MD *digest, Span out, - Span secret, Span label, + Span secret, std::string_view label, Span seed1, Span seed2); @@ -1655,7 +1656,7 @@ bool tls13_derive_resumption_secret(SSL_HANDSHAKE *hs); // |exporter_secret|. bool tls13_export_keying_material(SSL *ssl, Span out, Span secret, - Span label, + std::string_view label, Span context); // tls13_finished_mac calculates the MAC of the handshake transcript to verify diff --git a/ssl/ssl_transcript.cc b/ssl/ssl_transcript.cc index 73675548b8..c8bee47786 100644 --- a/ssl/ssl_transcript.cc +++ b/ssl/ssl_transcript.cc @@ -10,6 +10,8 @@ #include +#include + #include #include #include @@ -197,18 +199,13 @@ bool SSLTranscript::GetHash(uint8_t *out, size_t *out_len) const { bool SSLTranscript::GetFinishedMAC(uint8_t *out, size_t *out_len, const SSL_SESSION *session, bool from_server) const { - static const char kClientLabel[] = "client finished"; - static const char kServerLabel[] = "server finished"; - auto label = from_server - ? MakeConstSpan(kServerLabel, sizeof(kServerLabel) - 1) - : MakeConstSpan(kClientLabel, sizeof(kClientLabel) - 1); - uint8_t digest[EVP_MAX_MD_SIZE]; size_t digest_len; if (!GetHash(digest, &digest_len)) { return false; } + std::string_view label = from_server ? "server finished" : "client finished"; static const size_t kFinishedLen = 12; if (!tls1_prf(Digest(), MakeSpan(out, kFinishedLen), session->secret, label, MakeConstSpan(digest, digest_len), {})) { diff --git a/ssl/t1_enc.cc b/ssl/t1_enc.cc index ef4550dee7..31a2423aad 100644 --- a/ssl/t1_enc.cc +++ b/ssl/t1_enc.cc @@ -13,6 +13,7 @@ #include #include +#include #include #include @@ -31,7 +32,7 @@ BSSL_NAMESPACE_BEGIN bool tls1_prf(const EVP_MD *digest, Span out, - Span secret, Span label, + Span secret, std::string_view label, Span seed1, Span seed2) { return 1 == CRYPTO_tls1_prf(digest, out.data(), out.size(), secret.data(), secret.size(), label.data(), label.size(), @@ -66,14 +67,11 @@ static bool get_key_block_lengths(const SSL *ssl, size_t *out_mac_secret_len, static bool generate_key_block(const SSL *ssl, Span out, const SSL_SESSION *session) { - static const char kLabel[] = "key expansion"; - auto label = MakeConstSpan(kLabel, sizeof(kLabel) - 1); - const EVP_MD *digest = ssl_session_get_digest(session); // Note this function assumes that |session|'s key material corresponds to // |ssl->s3->client_random| and |ssl->s3->server_random|. - return tls1_prf(digest, out, session->secret, label, ssl->s3->server_random, - ssl->s3->client_random); + return tls1_prf(digest, out, session->secret, "key expansion", + ssl->s3->server_random, ssl->s3->client_random); } bool tls1_configure_aead(SSL *ssl, evp_aead_direction_t direction, @@ -142,25 +140,20 @@ bool tls1_change_cipher_state(SSL_HANDSHAKE *hs, bool tls1_generate_master_secret(SSL_HANDSHAKE *hs, Span out, Span premaster) { - static const char kMasterSecretLabel[] = "master secret"; - static const char kExtendedMasterSecretLabel[] = "extended master secret"; BSSL_CHECK(out.size() == SSL3_MASTER_SECRET_SIZE); const SSL *ssl = hs->ssl; if (hs->extended_master_secret) { - auto label = MakeConstSpan(kExtendedMasterSecretLabel, - sizeof(kExtendedMasterSecretLabel) - 1); uint8_t digests[EVP_MAX_MD_SIZE]; size_t digests_len; if (!hs->transcript.GetHash(digests, &digests_len) || - !tls1_prf(hs->transcript.Digest(), out, premaster, label, - MakeConstSpan(digests, digests_len), {})) { + !tls1_prf(hs->transcript.Digest(), out, premaster, + "extended master secret", MakeConstSpan(digests, digests_len), + {})) { return false; } } else { - auto label = - MakeConstSpan(kMasterSecretLabel, sizeof(kMasterSecretLabel) - 1); - if (!tls1_prf(hs->transcript.Digest(), out, premaster, label, + if (!tls1_prf(hs->transcript.Digest(), out, premaster, "master secret", ssl->s3->client_random, ssl->s3->server_random)) { return false; } @@ -206,6 +199,8 @@ int SSL_export_keying_material(SSL *ssl, uint8_t *out, size_t out_len, const char *label, size_t label_len, const uint8_t *context, size_t context_len, int use_context) { + auto out_span = Span(out, out_len); + std::string_view label_sv(label, label_len); // In TLS 1.3, the exporter may be used whenever the secret has been derived. if (ssl->s3->version != 0 && ssl_protocol_version(ssl) >= TLS1_3_VERSION) { if (ssl->s3->exporter_secret.empty()) { @@ -216,9 +211,9 @@ int SSL_export_keying_material(SSL *ssl, uint8_t *out, size_t out_len, context = nullptr; context_len = 0; } - return tls13_export_keying_material( - ssl, MakeSpan(out, out_len), ssl->s3->exporter_secret, - MakeConstSpan(label, label_len), MakeConstSpan(context, context_len)); + return tls13_export_keying_material(ssl, out_span, ssl->s3->exporter_secret, + label_sv, + MakeConstSpan(context, context_len)); } // Exporters may be used in False Start, where the handshake has progressed @@ -253,6 +248,5 @@ int SSL_export_keying_material(SSL *ssl, uint8_t *out, size_t out_len, const SSL_SESSION *session = SSL_get_session(ssl); const EVP_MD *digest = ssl_session_get_digest(session); - return tls1_prf(digest, MakeSpan(out, out_len), session->secret, - MakeConstSpan(label, label_len), seed, {}); + return tls1_prf(digest, out_span, session->secret, label_sv, seed, {}); } diff --git a/ssl/tls13_enc.cc b/ssl/tls13_enc.cc index a08cb5f742..7f1ba57b70 100644 --- a/ssl/tls13_enc.cc +++ b/ssl/tls13_enc.cc @@ -18,6 +18,7 @@ #include #include +#include #include #include @@ -87,15 +88,11 @@ bool tls13_init_early_key_schedule(SSL_HANDSHAKE *hs, hkdf_extract_to_secret(hs, *transcript, session->secret); } -static Span label_to_span(const char *label) { - return MakeConstSpan(label, strlen(label)); -} - static bool hkdf_expand_label_with_prefix(Span out, const EVP_MD *digest, Span secret, - Span label_prefix, - Span label, + std::string_view label_prefix, + std::string_view label, Span hash) { // This is a copy of CRYPTO_tls13_hkdf_expand_label, but modified to take an // arbitrary prefix for the label instead of using the hardcoded "tls13 " @@ -108,7 +105,9 @@ static bool hkdf_expand_label_with_prefix(Span out, 2 + 1 + label_prefix.size() + label.size() + 1 + hash.size()) || !CBB_add_u16(&cbb, out.size()) || !CBB_add_u8_length_prefixed(&cbb, &child) || - !CBB_add_bytes(&child, label_prefix.data(), label_prefix.size()) || + !CBB_add_bytes(&child, + reinterpret_cast(label_prefix.data()), + label_prefix.size()) || !CBB_add_bytes(&child, reinterpret_cast(label.data()), label.size()) || !CBB_add_u8_length_prefixed(&cbb, &child) || @@ -126,14 +125,11 @@ static bool hkdf_expand_label_with_prefix(Span out, static bool hkdf_expand_label(Span out, const EVP_MD *digest, Span secret, - Span label, Span hash, + std::string_view label, Span hash, bool is_dtls) { if (is_dtls) { - static const uint8_t kDTLS13LabelPrefix[] = "dtls13"; - return hkdf_expand_label_with_prefix( - out, digest, secret, - MakeConstSpan(kDTLS13LabelPrefix, sizeof(kDTLS13LabelPrefix) - 1), - label, hash); + return hkdf_expand_label_with_prefix(out, digest, secret, "dtls13", label, + hash); } return CRYPTO_tls13_hkdf_expand_label( out.data(), out.size(), digest, secret.data(), secret.size(), @@ -149,7 +145,7 @@ bool tls13_advance_key_schedule(SSL_HANDSHAKE *hs, Span in) { return EVP_Digest(nullptr, 0, derive_context, &derive_context_len, hs->transcript.Digest(), nullptr) && hkdf_expand_label(MakeSpan(hs->secret), hs->transcript.Digest(), - hs->secret, label_to_span(kTLS13LabelDerived), + hs->secret, kTLS13LabelDerived, MakeConstSpan(derive_context, derive_context_len), SSL_is_dtls(hs->ssl)) && hkdf_extract_to_secret(hs, hs->transcript, in); @@ -161,7 +157,7 @@ bool tls13_advance_key_schedule(SSL_HANDSHAKE *hs, Span in) { // success and false on error. static bool derive_secret_with_transcript( const SSL_HANDSHAKE *hs, InplaceVector *out, - const SSLTranscript &transcript, Span label) { + const SSLTranscript &transcript, std::string_view label) { uint8_t context_hash[EVP_MAX_MD_SIZE]; size_t context_hash_len; if (!transcript.GetHash(context_hash, &context_hash_len)) { @@ -176,7 +172,7 @@ static bool derive_secret_with_transcript( static bool derive_secret(SSL_HANDSHAKE *hs, InplaceVector *out, - Span label) { + std::string_view label) { return derive_secret_with_transcript(hs, out, hs->transcript, label); } @@ -205,10 +201,8 @@ bool tls13_set_traffic_key(SSL *ssl, enum ssl_encryption_level_t level, uint8_t key_buf[EVP_AEAD_MAX_KEY_LENGTH], iv_buf[EVP_AEAD_MAX_NONCE_LENGTH]; auto key = MakeSpan(key_buf).first(EVP_AEAD_key_length(aead)); auto iv = MakeSpan(iv_buf).first(EVP_AEAD_nonce_length(aead)); - if (!hkdf_expand_label(key, digest, traffic_secret, label_to_span("key"), - {}, is_dtls) || - !hkdf_expand_label(iv, digest, traffic_secret, label_to_span("iv"), {}, - is_dtls)) { + if (!hkdf_expand_label(key, digest, traffic_secret, "key", {}, is_dtls) || + !hkdf_expand_label(iv, digest, traffic_secret, "iv", {}, is_dtls)) { return false; } @@ -339,8 +333,8 @@ UniquePtr RecordNumberEncrypter::Create( uint8_t rne_key_buf[RecordNumberEncrypter::kMaxKeySize]; auto rne_key = MakeSpan(rne_key_buf).first(ret->KeySize()); - if (!hkdf_expand_label(rne_key, digest, traffic_secret, label_to_span("sn"), - {}, /*is_dtls=*/true) || + if (!hkdf_expand_label(rne_key, digest, traffic_secret, "sn", {}, + /*is_dtls=*/true) || !ret->SetKey(rne_key)) { return nullptr; } @@ -362,9 +356,8 @@ bool tls13_derive_early_secret(SSL_HANDSHAKE *hs) { const SSLTranscript &transcript = (!ssl->server && hs->selected_ech_config) ? hs->inner_transcript : hs->transcript; - if (!derive_secret_with_transcript( - hs, &hs->early_traffic_secret, transcript, - label_to_span(kTLS13LabelClientEarlyTraffic)) || + if (!derive_secret_with_transcript(hs, &hs->early_traffic_secret, transcript, + kTLS13LabelClientEarlyTraffic) || !ssl_log_secret(ssl, "CLIENT_EARLY_TRAFFIC_SECRET", hs->early_traffic_secret)) { return false; @@ -375,11 +368,11 @@ bool tls13_derive_early_secret(SSL_HANDSHAKE *hs) { bool tls13_derive_handshake_secrets(SSL_HANDSHAKE *hs) { SSL *const ssl = hs->ssl; if (!derive_secret(hs, &hs->client_handshake_secret, - label_to_span(kTLS13LabelClientHandshakeTraffic)) || + kTLS13LabelClientHandshakeTraffic) || !ssl_log_secret(ssl, "CLIENT_HANDSHAKE_TRAFFIC_SECRET", hs->client_handshake_secret) || !derive_secret(hs, &hs->server_handshake_secret, - label_to_span(kTLS13LabelServerHandshakeTraffic)) || + kTLS13LabelServerHandshakeTraffic) || !ssl_log_secret(ssl, "SERVER_HANDSHAKE_TRAFFIC_SECRET", hs->server_handshake_secret)) { return false; @@ -391,15 +384,14 @@ bool tls13_derive_handshake_secrets(SSL_HANDSHAKE *hs) { bool tls13_derive_application_secrets(SSL_HANDSHAKE *hs) { SSL *const ssl = hs->ssl; if (!derive_secret(hs, &hs->client_traffic_secret_0, - label_to_span(kTLS13LabelClientApplicationTraffic)) || + kTLS13LabelClientApplicationTraffic) || !ssl_log_secret(ssl, "CLIENT_TRAFFIC_SECRET_0", hs->client_traffic_secret_0) || !derive_secret(hs, &hs->server_traffic_secret_0, - label_to_span(kTLS13LabelServerApplicationTraffic)) || + kTLS13LabelServerApplicationTraffic) || !ssl_log_secret(ssl, "SERVER_TRAFFIC_SECRET_0", hs->server_traffic_secret_0) || - !derive_secret(hs, &ssl->s3->exporter_secret, - label_to_span(kTLS13LabelExporter)) || + !derive_secret(hs, &ssl->s3->exporter_secret, kTLS13LabelExporter) || !ssl_log_secret(ssl, "EXPORTER_SECRET", ssl->s3->exporter_secret)) { return false; } @@ -417,7 +409,7 @@ bool tls13_rotate_traffic_key(SSL *ssl, enum evp_aead_direction_t direction) { const SSL_SESSION *session = SSL_get_session(ssl); const EVP_MD *digest = ssl_session_get_digest(session); return hkdf_expand_label(secret, digest, secret, - label_to_span(kTLS13LabelApplicationTraffic), {}, + kTLS13LabelApplicationTraffic, {}, SSL_is_dtls(ssl)) && tls13_set_traffic_key(ssl, ssl_encryption_application, direction, session, secret); @@ -426,8 +418,7 @@ bool tls13_rotate_traffic_key(SSL *ssl, enum evp_aead_direction_t direction) { static const char kTLS13LabelResumption[] = "res master"; bool tls13_derive_resumption_secret(SSL_HANDSHAKE *hs) { - return derive_secret(hs, &hs->new_session->secret, - label_to_span(kTLS13LabelResumption)); + return derive_secret(hs, &hs->new_session->secret, kTLS13LabelResumption); } static const char kTLS13LabelFinished[] = "finished"; @@ -442,8 +433,8 @@ static bool tls13_verify_data(uint8_t *out, size_t *out_len, uint8_t key_buf[EVP_MAX_MD_SIZE]; auto key = MakeSpan(key_buf, EVP_MD_size(digest)); unsigned len; - if (!hkdf_expand_label(key, digest, secret, - label_to_span(kTLS13LabelFinished), {}, is_dtls) || + if (!hkdf_expand_label(key, digest, secret, kTLS13LabelFinished, {}, + is_dtls) || HMAC(digest, key.data(), key.size(), context.data(), context.size(), out, &len) == nullptr) { return false; @@ -478,15 +469,14 @@ bool tls13_derive_session_psk(SSL_SESSION *session, Span nonce, // override with the PSK. assert(session->secret.size() == EVP_MD_size(digest)); return hkdf_expand_label(MakeSpan(session->secret), digest, session->secret, - label_to_span(kTLS13LabelResumptionPSK), nonce, - is_dtls); + kTLS13LabelResumptionPSK, nonce, is_dtls); } static const char kTLS13LabelExportKeying[] = "exporter"; bool tls13_export_keying_material(SSL *ssl, Span out, Span secret, - Span label, + std::string_view label, Span context) { if (secret.empty()) { assert(0); @@ -513,9 +503,8 @@ bool tls13_export_keying_material(SSL *ssl, Span out, auto derived_secret = MakeSpan(derived_secret_buf, EVP_MD_size(digest)); return hkdf_expand_label(derived_secret, digest, secret, label, export_context, SSL_is_dtls(ssl)) && - hkdf_expand_label(out, digest, derived_secret, - label_to_span(kTLS13LabelExportKeying), hash, - SSL_is_dtls(ssl)); + hkdf_expand_label(out, digest, derived_secret, kTLS13LabelExportKeying, + hash, SSL_is_dtls(ssl)); } static const char kTLS13LabelPSKBinder[] = "res binder"; @@ -544,7 +533,7 @@ static bool tls13_psk_binder(uint8_t *out, size_t *out_len, 0) || !hkdf_expand_label( binder_key, digest, MakeConstSpan(early_secret, early_secret_len), - label_to_span(kTLS13LabelPSKBinder), + kTLS13LabelPSKBinder, MakeConstSpan(binder_context, binder_context_len), is_dtls)) { return false; } @@ -703,8 +692,7 @@ bool ssl_ech_accept_confirmation(const SSL_HANDSHAKE *hs, Span out, assert(out.size() == ECH_CONFIRMATION_SIGNAL_LEN); return hkdf_expand_label( out, transcript.Digest(), MakeConstSpan(secret, secret_len), - is_hrr ? label_to_span("hrr ech accept confirmation") - : label_to_span("ech accept confirmation"), + is_hrr ? "hrr ech accept confirmation" : "ech accept confirmation", MakeConstSpan(context, context_len), SSL_is_dtls(hs->ssl)); } From 4972fd602f89abdf9e7633a52a088bed40b39375 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Fri, 10 Jan 2025 15:01:54 -0500 Subject: [PATCH 41/64] Remove some RSA_is_opaque and EC_KEY_is_opaque special cases We can still check the public parts, which we now expect callers to provide. (Without rsa->n, PSS does not work, and a group-less EC_KEY tends to break horribly.) Though it's also pretty unlikely anyone is calling these functions on such keys. Update-Note: The filled in parts of keys backed by RSA_METHOD and ECDSA_METHOD will now participate in RSA_check_key and EC_KEY_check_key. Bug: 42290186 Change-Id: I3ebc952f6adb36e9ff6a6ae8413ef0ecd72ae6b6 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75147 Auto-Submit: David Benjamin Commit-Queue: David Benjamin Reviewed-by: Bob Beck --- crypto/fipsmodule/ec/ec_key.cc.inc | 6 ------ crypto/fipsmodule/rsa/rsa.cc.inc | 16 ++++------------ 2 files changed, 4 insertions(+), 18 deletions(-) diff --git a/crypto/fipsmodule/ec/ec_key.cc.inc b/crypto/fipsmodule/ec/ec_key.cc.inc index 6de67e64d7..fa001b3305 100644 --- a/crypto/fipsmodule/ec/ec_key.cc.inc +++ b/crypto/fipsmodule/ec/ec_key.cc.inc @@ -277,12 +277,6 @@ int EC_KEY_check_fips(const EC_KEY *key) { int ret = 0; FIPS_service_indicator_lock_state(); - if (EC_KEY_is_opaque(key)) { - // Opaque keys can't be checked. - OPENSSL_PUT_ERROR(EC, EC_R_PUBLIC_KEY_VALIDATION_FAILED); - goto end; - } - if (!EC_KEY_check_key(key)) { goto end; } diff --git a/crypto/fipsmodule/rsa/rsa.cc.inc b/crypto/fipsmodule/rsa/rsa.cc.inc index 5e26e43cd2..6c857ad22b 100644 --- a/crypto/fipsmodule/rsa/rsa.cc.inc +++ b/crypto/fipsmodule/rsa/rsa.cc.inc @@ -738,11 +738,6 @@ int RSA_check_key(const RSA *key) { // https://crbug.com/boringssl/316. As a result, we inconsistently check RSA // invariants. We should fix this and integrate that logic. - if (RSA_is_opaque(key)) { - // Opaque keys can't be checked. - return 1; - } - if (!rsa_check_public_key(key)) { return 0; } @@ -893,12 +888,6 @@ DEFINE_LOCAL_DATA(BIGNUM, g_small_factors) { } int RSA_check_fips(RSA *key) { - if (RSA_is_opaque(key)) { - // Opaque keys can't be checked. - OPENSSL_PUT_ERROR(RSA, RSA_R_PUBLIC_KEY_VALIDATION_FAILED); - return 0; - } - if (!RSA_check_key(key)) { return 0; } @@ -919,8 +908,11 @@ int RSA_check_fips(RSA *key) { // match. This is only a plausibility test and we expect the value to be // composite, so too few iterations will cause us to reject the key, not use // an implausible one. + // + // |key->e| may be nullptr if created with |RSA_new_private_key_no_e|. enum bn_primality_result_t primality_result; - if (BN_num_bits(key->e) <= 16 || // + if (key->e == nullptr || // + BN_num_bits(key->e) <= 16 || // BN_num_bits(key->e) > 256 || // !BN_is_odd(key->n) || // !BN_is_odd(key->e) || From 8fa5d07525a5e31a8f3823b0aece49f37d8ad315 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Fri, 10 Jan 2025 16:26:30 -0500 Subject: [PATCH 42/64] Remove now unused size hooks from ECDSA_METHOD and RSA_METHOD Callers now all fill in the public modulus and EC group, so we can compute the sizes directly. Bug: 42290475 Change-Id: If01b00fd7e3499561a10750bfc5eb44536fb978e Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75148 Reviewed-by: Bob Beck Commit-Queue: David Benjamin --- crypto/ecdsa_extra/ecdsa_asn1.cc | 14 ++++---------- crypto/fipsmodule/rsa/internal.h | 1 - crypto/fipsmodule/rsa/rsa.cc.inc | 9 +-------- crypto/fipsmodule/rsa/rsa_impl.cc.inc | 2 -- include/openssl/ec_key.h | 5 ----- include/openssl/rsa.h | 3 --- 6 files changed, 5 insertions(+), 29 deletions(-) diff --git a/crypto/ecdsa_extra/ecdsa_asn1.cc b/crypto/ecdsa_extra/ecdsa_asn1.cc index d3d151bb5e..d33f1b0303 100644 --- a/crypto/ecdsa_extra/ecdsa_asn1.cc +++ b/crypto/ecdsa_extra/ecdsa_asn1.cc @@ -143,18 +143,12 @@ size_t ECDSA_size(const EC_KEY *key) { return 0; } - size_t group_order_size; - if (key->ecdsa_meth && key->ecdsa_meth->group_order_size) { - group_order_size = key->ecdsa_meth->group_order_size(key); - } else { - const EC_GROUP *group = EC_KEY_get0_group(key); - if (group == NULL) { - return 0; - } - - group_order_size = BN_num_bytes(EC_GROUP_get0_order(group)); + const EC_GROUP *group = EC_KEY_get0_group(key); + if (group == NULL) { + return 0; } + size_t group_order_size = BN_num_bytes(EC_GROUP_get0_order(group)); return ECDSA_SIG_max_len(group_order_size); } diff --git a/crypto/fipsmodule/rsa/internal.h b/crypto/fipsmodule/rsa/internal.h index f424023f5f..17abbb1b90 100644 --- a/crypto/fipsmodule/rsa/internal.h +++ b/crypto/fipsmodule/rsa/internal.h @@ -82,7 +82,6 @@ struct rsa_st { const RSA_METHOD *RSA_default_method(void); -size_t rsa_default_size(const RSA *rsa); int rsa_default_sign_raw(RSA *rsa, size_t *out_len, uint8_t *out, size_t max_out, const uint8_t *in, size_t in_len, int padding); diff --git a/crypto/fipsmodule/rsa/rsa.cc.inc b/crypto/fipsmodule/rsa/rsa.cc.inc index 6c857ad22b..1b1ebd1c2e 100644 --- a/crypto/fipsmodule/rsa/rsa.cc.inc +++ b/crypto/fipsmodule/rsa/rsa.cc.inc @@ -374,14 +374,7 @@ int RSA_sign_raw(RSA *rsa, size_t *out_len, uint8_t *out, size_t max_out, padding); } -unsigned RSA_size(const RSA *rsa) { - size_t ret = rsa->meth->size ? rsa->meth->size(rsa) : rsa_default_size(rsa); - // RSA modulus sizes are bounded by |BIGNUM|, which must fit in |unsigned|. - // - // TODO(https://crbug.com/boringssl/516): Should we make this return |size_t|? - assert(ret < UINT_MAX); - return (unsigned)ret; -} +unsigned RSA_size(const RSA *rsa) { return BN_num_bytes(rsa->n); } int RSA_is_opaque(const RSA *rsa) { return rsa->meth && (rsa->meth->flags & RSA_FLAG_OPAQUE); diff --git a/crypto/fipsmodule/rsa/rsa_impl.cc.inc b/crypto/fipsmodule/rsa/rsa_impl.cc.inc index 0b9729d70e..2773636769 100644 --- a/crypto/fipsmodule/rsa/rsa_impl.cc.inc +++ b/crypto/fipsmodule/rsa/rsa_impl.cc.inc @@ -252,8 +252,6 @@ void rsa_invalidate_key(RSA *rsa) { rsa->blinding_fork_generation = 0; } -size_t rsa_default_size(const RSA *rsa) { return BN_num_bytes(rsa->n); } - // MAX_BLINDINGS_PER_RSA defines the maximum number of cached BN_BLINDINGs per // RSA*. Then this limit is exceeded, BN_BLINDING objects will be created and // destroyed as needed. diff --git a/include/openssl/ec_key.h b/include/openssl/ec_key.h index bdb60a3650..170d3384fa 100644 --- a/include/openssl/ec_key.h +++ b/include/openssl/ec_key.h @@ -261,11 +261,6 @@ struct ecdsa_method_st { int (*init)(EC_KEY *key); int (*finish)(EC_KEY *key); - // group_order_size returns the number of bytes needed to represent the order - // of the group. This is used to calculate the maximum size of an ECDSA - // signature in |ECDSA_size|. - size_t (*group_order_size)(const EC_KEY *key); - // sign matches the arguments and behaviour of |ECDSA_sign|. int (*sign)(const uint8_t *digest, size_t digest_len, uint8_t *sig, unsigned int *sig_len, EC_KEY *eckey); diff --git a/include/openssl/rsa.h b/include/openssl/rsa.h index 10dd096d03..14bc2f601b 100644 --- a/include/openssl/rsa.h +++ b/include/openssl/rsa.h @@ -754,9 +754,6 @@ struct rsa_meth_st { int (*init)(RSA *rsa); int (*finish)(RSA *rsa); - // size returns the size of the RSA modulus in bytes. - size_t (*size)(const RSA *rsa); - int (*sign)(int type, const uint8_t *m, unsigned int m_length, uint8_t *sigret, unsigned int *siglen, const RSA *rsa); From f60995084e41ae7c00d370360ad79374671522df Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sat, 11 Jan 2025 00:38:56 -0500 Subject: [PATCH 43/64] Remove calls to now unnecessary MakeSpan/MakeConstSpan CTAD takes care of all of these. Bug: 42290600 Change-Id: I191c5710f402835d1b50250225edd4e535c7580c Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75208 Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- crypto/cipher_extra/cipher_test.cc | 7 +- crypto/digest_extra/digest_test.cc | 3 +- crypto/fipsmodule/ec/ec_test.cc | 9 +- crypto/mldsa/mldsa_test.cc | 16 +-- crypto/pkcs8/pkcs12_test.cc | 46 ++++---- crypto/test/file_util.h | 15 +-- fuzz/decode_client_hello_inner.cc | 2 +- include/openssl/bytestring.h | 4 +- include/openssl/span.h | 6 +- ssl/d1_both.cc | 4 +- ssl/dtls_record.cc | 8 +- ssl/encrypted_client_hello.cc | 37 +++--- ssl/extensions.cc | 17 +-- ssl/handshake.cc | 10 +- ssl/handshake_client.cc | 10 +- ssl/handshake_server.cc | 12 +- ssl/internal.h | 16 ++- ssl/s3_both.cc | 5 +- ssl/s3_pkt.cc | 6 +- ssl/ssl_aead_ctx.cc | 6 +- ssl/ssl_cipher.cc | 10 +- ssl/ssl_credential.cc | 6 +- ssl/ssl_internal_test.cc | 26 ++--- ssl/ssl_key_share.cc | 6 +- ssl/ssl_lib.cc | 37 +++--- ssl/ssl_privkey.cc | 20 ++-- ssl/ssl_session.cc | 16 +-- ssl/ssl_test.cc | 106 +++++++++--------- ssl/ssl_transcript.cc | 6 +- ssl/ssl_versions.cc | 4 +- ssl/t1_enc.cc | 10 +- ssl/test/bssl_shim.cc | 6 +- ssl/test/handshake_util.cc | 7 +- ssl/test/mock_quic_transport.cc | 10 +- ssl/test/test_config.cc | 4 +- ssl/tls13_both.cc | 6 +- ssl/tls13_client.cc | 16 ++- ssl/tls13_enc.cc | 46 ++++---- ssl/tls13_server.cc | 18 +-- ssl/tls_record.cc | 4 +- tool/generate_ech.cc | 9 +- .../acvp/modulewrapper/modulewrapper.cc | 12 +- 42 files changed, 290 insertions(+), 334 deletions(-) diff --git a/crypto/cipher_extra/cipher_test.cc b/crypto/cipher_extra/cipher_test.cc index cb0b16b6b0..b86803a426 100644 --- a/crypto/cipher_extra/cipher_test.cc +++ b/crypto/cipher_extra/cipher_test.cc @@ -215,7 +215,7 @@ static void TestCipherAPI(const EVP_CIPHER *cipher, Operation op, bool padding, std::vector result(max_out); if (in_place) { std::copy(in.begin(), in.end(), result.begin()); - in = bssl::MakeConstSpan(result).first(in.size()); + in = bssl::Span(result).first(in.size()); } size_t total = 0; @@ -315,7 +315,7 @@ static void TestLowLevelAPI( } else { result.resize(expected.size()); } - bssl::Span out = bssl::MakeSpan(result); + bssl::Span out = bssl::Span(result); // Input and output sizes for all the low-level APIs should match. ASSERT_EQ(in.size(), out.size()); @@ -733,8 +733,7 @@ TEST(CipherTest, GCMIncrementingIV) { uint8_t suffix[8]; ASSERT_TRUE(EVP_CIPHER_CTX_ctrl(ctx.get(), EVP_CTRL_GCM_IV_GEN, sizeof(suffix), suffix)); - EXPECT_EQ(Bytes(suffix), - Bytes(bssl::MakeConstSpan(kIV3).last(sizeof(suffix)))); + EXPECT_EQ(Bytes(suffix), Bytes(bssl::Span(kIV3).last(sizeof(suffix)))); ASSERT_NO_FATAL_FAILURE(expect_iv(ctx.get(), kIV3, /*enc=*/true)); // A length of -1 returns the whole IV. diff --git a/crypto/digest_extra/digest_test.cc b/crypto/digest_extra/digest_test.cc index db6d77bf01..bf5904ec7f 100644 --- a/crypto/digest_extra/digest_test.cc +++ b/crypto/digest_extra/digest_test.cc @@ -157,8 +157,7 @@ static const DigestTestVector kTestVectors[] = { static void CompareDigest(const DigestTestVector *test, const uint8_t *digest, size_t digest_len) { - EXPECT_EQ(test->expected_hex, - EncodeHex(bssl::MakeConstSpan(digest, digest_len))); + EXPECT_EQ(test->expected_hex, EncodeHex(bssl::Span(digest, digest_len))); } static void TestDigest(const DigestTestVector *test) { diff --git a/crypto/fipsmodule/ec/ec_test.cc b/crypto/fipsmodule/ec/ec_test.cc index f1019b7cb2..5d088296c2 100644 --- a/crypto/fipsmodule/ec/ec_test.cc +++ b/crypto/fipsmodule/ec/ec_test.cc @@ -1327,10 +1327,9 @@ TEST(ECTest, HashToCurve) { ASSERT_TRUE(EncodeECPoint(&buf, test.group, p.get(), POINT_CONVERSION_UNCOMPRESSED)); size_t field_len = (buf.size() - 1) / 2; - EXPECT_EQ(test.x_hex, - EncodeHex(bssl::MakeConstSpan(buf).subspan(1, field_len))); - EXPECT_EQ(test.y_hex, EncodeHex(bssl::MakeConstSpan(buf).subspan( - 1 + field_len, field_len))); + EXPECT_EQ(test.x_hex, EncodeHex(bssl::Span(buf).subspan(1, field_len))); + EXPECT_EQ(test.y_hex, + EncodeHex(bssl::Span(buf).subspan(1 + field_len, field_len))); } // hash-to-curve functions should check for the wrong group. @@ -1405,7 +1404,7 @@ TEST(ECTest, HashToScalar) { uint8_t buf[EC_MAX_BYTES]; size_t len; ec_scalar_to_bytes(test.group, buf, &len, &scalar); - EXPECT_EQ(test.result_hex, EncodeHex(bssl::MakeConstSpan(buf, len))); + EXPECT_EQ(test.result_hex, EncodeHex(bssl::Span(buf, len))); } // hash-to-scalar functions should check for the wrong group. diff --git a/crypto/mldsa/mldsa_test.cc b/crypto/mldsa/mldsa_test.cc index a0ab09021c..bfea9ccf2e 100644 --- a/crypto/mldsa/mldsa_test.cc +++ b/crypto/mldsa/mldsa_test.cc @@ -63,7 +63,7 @@ TEST(MLDSATest, DISABLED_BitFlips) { sizeof(kMessage), nullptr, 0)); auto pub = std::make_unique(); - CBS cbs = bssl::MakeConstSpan(encoded_public_key); + CBS cbs = CBS(encoded_public_key); ASSERT_TRUE(MLDSA65_parse_public_key(pub.get(), &cbs)); EXPECT_EQ(MLDSA65_verify(pub.get(), encoded_signature.data(), @@ -104,7 +104,7 @@ static void MLDSABasicTest() { const std::vector encoded_private_key = Marshal(MarshalPrivate, reinterpret_cast(priv.get())); - CBS cbs = bssl::MakeConstSpan(encoded_private_key); + CBS cbs = CBS(encoded_private_key); EXPECT_TRUE(bcm_success( ParsePrivate(reinterpret_cast(priv.get()), &cbs))); @@ -116,7 +116,7 @@ static void MLDSABasicTest() { sizeof(kMessage), kContext, sizeof(kContext))); auto pub = std::make_unique(); - cbs = bssl::MakeConstSpan(encoded_public_key); + cbs = CBS(encoded_public_key); ASSERT_TRUE(ParsePublicKey(pub.get(), &cbs)); EXPECT_EQ( @@ -220,7 +220,7 @@ TEST(MLDSATest, SignatureIsRandomized) { MLDSA65_generate_key(encoded_public_key.data(), seed, priv.get())); auto pub = std::make_unique(); - CBS cbs = bssl::MakeConstSpan(encoded_public_key); + CBS cbs = CBS(encoded_public_key); ASSERT_TRUE(MLDSA65_parse_public_key(pub.get(), &cbs)); std::vector encoded_signature1(MLDSA65_SIGNATURE_BYTES); @@ -273,17 +273,17 @@ TEST(MLDSATest, InvalidPublicKeyEncodingLength) { MLDSA65_generate_key(encoded_public_key.data(), seed, priv.get())); // Public key is 1 byte too short. - CBS cbs = bssl::MakeConstSpan(encoded_public_key) - .first(MLDSA65_PUBLIC_KEY_BYTES - 1); + CBS cbs = + CBS(bssl::Span(encoded_public_key).first(MLDSA65_PUBLIC_KEY_BYTES - 1)); auto parsed_pub = std::make_unique(); EXPECT_FALSE(MLDSA65_parse_public_key(parsed_pub.get(), &cbs)); // Public key has the correct length. - cbs = bssl::MakeConstSpan(encoded_public_key).first(MLDSA65_PUBLIC_KEY_BYTES); + cbs = CBS(bssl::Span(encoded_public_key).first(MLDSA65_PUBLIC_KEY_BYTES)); EXPECT_TRUE(MLDSA65_parse_public_key(parsed_pub.get(), &cbs)); // Public key is 1 byte too long. - cbs = bssl::MakeConstSpan(encoded_public_key); + cbs = CBS(encoded_public_key); EXPECT_FALSE(MLDSA65_parse_public_key(parsed_pub.get(), &cbs)); } diff --git a/crypto/pkcs8/pkcs12_test.cc b/crypto/pkcs8/pkcs12_test.cc index e67a7e4c1f..fd80607c0f 100644 --- a/crypto/pkcs8/pkcs12_test.cc +++ b/crypto/pkcs8/pkcs12_test.cc @@ -35,11 +35,6 @@ static const char kPassword[] = "foo"; // kUnicodePassword is the password for unicode_password.p12 static const char kUnicodePassword[] = "Hello, ไธ–็•Œ"; -static bssl::Span StringToBytes(const std::string &str) { - return bssl::MakeConstSpan(reinterpret_cast(str.data()), - str.size()); -} - static void TestImpl(const char *name, bssl::Span der, const char *password, const char *friendly_name) { @@ -95,14 +90,15 @@ TEST(PKCS12Test, TestOpenSSL) { // openssl.p12 was generated by OpenSSL with: // openssl pkcs12 -export -inkey key.pem -in cacert.pem std::string data = GetTestData("crypto/pkcs8/test/openssl.p12"); - TestImpl("OpenSSL", StringToBytes(data), kPassword, nullptr); + TestImpl("OpenSSL", bssl::StringAsBytes(data), kPassword, nullptr); } TEST(PKCS12Test, TestNSS) { // nss.p12 is the result of importing the OpenSSL example PKCS#12 into Chrome // on Linux and then exporting it again. std::string data = GetTestData("crypto/pkcs8/test/nss.p12"); - TestImpl("NSS", StringToBytes(data), kPassword, "Internet Widgits Pty Ltd"); + TestImpl("NSS", bssl::StringAsBytes(data), kPassword, + "Internet Widgits Pty Ltd"); } TEST(PKCS12Test, TestWindows) { @@ -110,7 +106,7 @@ TEST(PKCS12Test, TestWindows) { // manager on Windows 7. It has a friendlyName, but only on the key, where we // ignore it, and not the certificate. std::string data = GetTestData("crypto/pkcs8/test/windows.p12"); - TestImpl("Windows", StringToBytes(data), kPassword, nullptr); + TestImpl("Windows", bssl::StringAsBytes(data), kPassword, nullptr); } TEST(PKCS12Test, TestPBES2) { @@ -121,13 +117,13 @@ TEST(PKCS12Test, TestPBES2) { // This was generated with an older OpenSSL, which used hmacWithSHA1 as the // PRF. (There is currently no way to specify the PRF in the pkcs12 command.) std::string data = GetTestData("crypto/pkcs8/test/pbes2_sha1.p12"); - TestImpl("kPBES2WithSHA1", StringToBytes(data), kPassword, nullptr); + TestImpl("kPBES2WithSHA1", bssl::StringAsBytes(data), kPassword, nullptr); // pbes2_sha256.p12 is a PKCS#12 file using PBES2 and HMAC-SHA-256. It was // generated in the same way as pbes2_sha1.p12, but using OpenSSL 1.1.1b, // which uses hmacWithSHA256 as the PRF. data = GetTestData("crypto/pkcs8/test/pbes2_sha256.p12"); - TestImpl("kPBES2WithSHA256", StringToBytes(data), kPassword, nullptr); + TestImpl("kPBES2WithSHA256", bssl::StringAsBytes(data), kPassword, nullptr); } TEST(PKCS12Test, TestNoEncryption) { @@ -136,7 +132,7 @@ TEST(PKCS12Test, TestNoEncryption) { // // openssl pkcs12 -export -inkey ecdsa_p256_key.pem -in ecdsa_p256_cert.pem -keypbe NONE -certpbe NONE -password pass:foo std::string data = GetTestData("crypto/pkcs8/test/no_encryption.p12"); - TestImpl("kNoEncryption", StringToBytes(data), kPassword, nullptr); + TestImpl("kNoEncryption", bssl::StringAsBytes(data), kPassword, nullptr); } TEST(PKCS12Test, TestEmptyPassword) { @@ -147,23 +143,24 @@ TEST(PKCS12Test, TestEmptyPassword) { // Generated with // openssl pkcs12 -export -inkey ecdsa_p256_key.pem -in ecdsa_p256_cert.pem -password pass: std::string data = GetTestData("crypto/pkcs8/test/empty_password.p12"); - TestImpl("EmptyPassword (empty password)", StringToBytes(data), "", nullptr); - TestImpl("EmptyPassword (null password)", StringToBytes(data), nullptr, + TestImpl("EmptyPassword (empty password)", bssl::StringAsBytes(data), "", + nullptr); + TestImpl("EmptyPassword (null password)", bssl::StringAsBytes(data), nullptr, nullptr); // The above input, modified to have a constructed string. data = GetTestData("crypto/pkcs8/test/empty_password_ber.p12"); - TestImpl("EmptyPassword (BER, empty password)", StringToBytes(data), "", - nullptr); - TestImpl("EmptyPassword (BER, null password)", StringToBytes(data), nullptr, + TestImpl("EmptyPassword (BER, empty password)", bssl::StringAsBytes(data), "", nullptr); + TestImpl("EmptyPassword (BER, null password)", bssl::StringAsBytes(data), + nullptr, nullptr); // The constructed string with too much recursion. data = GetTestData("crypto/pkcs8/test/empty_password_ber_nested.p12"); bssl::UniquePtr certs(sk_X509_new_null()); ASSERT_TRUE(certs); EVP_PKEY *key = nullptr; - CBS pkcs12 = StringToBytes(data); + CBS pkcs12 = bssl::StringAsBytes(data); EXPECT_FALSE(PKCS12_get_key_and_certs(&key, certs.get(), &pkcs12, "")); } @@ -177,8 +174,9 @@ TEST(PKCS12Test, TestNullPassword) { // But with OpenSSL patched to pass NULL into PKCS12_create and // PKCS12_set_mac. std::string data = GetTestData("crypto/pkcs8/test/null_password.p12"); - TestImpl("NullPassword (empty password)", StringToBytes(data), "", nullptr); - TestImpl("NullPassword (null password)", StringToBytes(data), nullptr, + TestImpl("NullPassword (empty password)", bssl::StringAsBytes(data), "", + nullptr); + TestImpl("NullPassword (null password)", bssl::StringAsBytes(data), nullptr, nullptr); } @@ -186,12 +184,12 @@ TEST(PKCS12Test, TestUnicode) { // Generated with // openssl pkcs12 -export -inkey ecdsa_p256_key.pem -in ecdsa_p256_cert.pem -password pass:"Hello, ไธ–็•Œ" std::string data = GetTestData("crypto/pkcs8/test/unicode_password.p12"); - TestImpl("Unicode", StringToBytes(data), kUnicodePassword, nullptr); + TestImpl("Unicode", bssl::StringAsBytes(data), kUnicodePassword, nullptr); } TEST(PKCS12Test, TestWindowsCompat) { std::string data = GetTestData("crypto/pkcs8/test/windows.p12"); - TestCompat(StringToBytes(data)); + TestCompat(bssl::StringAsBytes(data)); } // kTestKey is a test P-256 key. @@ -671,7 +669,7 @@ TEST(PKCS12Test, MissingContent) { bssl::UniquePtr certs(sk_X509_new_null()); ASSERT_TRUE(certs); EVP_PKEY *key = nullptr; - CBS cbs = StringToBytes(data); + CBS cbs = bssl::StringAsBytes(data); EXPECT_FALSE(PKCS12_get_key_and_certs(&key, certs.get(), &cbs, "")); } { @@ -679,7 +677,7 @@ TEST(PKCS12Test, MissingContent) { bssl::UniquePtr certs(sk_X509_new_null()); ASSERT_TRUE(certs); EVP_PKEY *key = nullptr; - CBS cbs = StringToBytes(data); + CBS cbs = bssl::StringAsBytes(data); EXPECT_FALSE(PKCS12_get_key_and_certs(&key, certs.get(), &cbs, "")); } { @@ -687,7 +685,7 @@ TEST(PKCS12Test, MissingContent) { bssl::UniquePtr certs(sk_X509_new_null()); ASSERT_TRUE(certs); EVP_PKEY *key = nullptr; - CBS cbs = StringToBytes(data); + CBS cbs = bssl::StringAsBytes(data); EXPECT_FALSE(PKCS12_get_key_and_certs(&key, certs.get(), &cbs, "")); } } diff --git a/crypto/test/file_util.h b/crypto/test/file_util.h index 01f524a017..337d1c4b23 100644 --- a/crypto/test/file_util.h +++ b/crypto/test/file_util.h @@ -20,6 +20,7 @@ #include #include #include +#include #include #include @@ -95,9 +96,8 @@ class TemporaryFile { // true on success and false on error. On error, callers should call // |IgnoreTempFileErrors| to determine whether to ignore the error. bool Init(bssl::Span content = {}); - bool Init(const std::string &content) { - return Init(bssl::MakeConstSpan( - reinterpret_cast(content.data()), content.size())); + bool Init(std::string_view content) { + return Init(bssl::StringAsBytes(content)); } // Open opens the file as a |FILE| with the specified mode. @@ -139,14 +139,11 @@ class TemporaryDirectory { // It returns true on success and false on error. Subdirectories in the // temporary directory are not currently supported. bool AddFile(const std::string &filename, bssl::Span content); - bool AddFile(const std::string &filename, const std::string &content) { - return AddFile( - filename, - bssl::MakeConstSpan(reinterpret_cast(content.data()), - content.size())); + bool AddFile(const std::string &filename, std::string_view content) { + return AddFile(filename, bssl::StringAsBytes(content)); } - // GetFilePath returns the path to the speciifed file within the temporary + // GetFilePath returns the path to the specified file within the temporary // directory. std::string GetFilePath(const std::string &filename) { #if defined(OPENSSL_WINDOWS) diff --git a/fuzz/decode_client_hello_inner.cc b/fuzz/decode_client_hello_inner.cc index c296dc93fa..0c1b3e5692 100644 --- a/fuzz/decode_client_hello_inner.cc +++ b/fuzz/decode_client_hello_inner.cc @@ -23,7 +23,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *buf, size_t len) { static bssl::UniquePtr ctx(SSL_CTX_new(TLS_method())); static bssl::UniquePtr ssl(SSL_new(ctx.get())); - CBS reader(bssl::MakeConstSpan(buf, len)); + CBS reader(bssl::Span(buf, len)); CBS encoded_client_hello_inner_cbs; if (!CBS_get_u24_length_prefixed(&reader, &encoded_client_hello_inner_cbs)) { diff --git a/include/openssl/bytestring.h b/include/openssl/bytestring.h index 5f4200ef6a..951d3dff55 100644 --- a/include/openssl/bytestring.h +++ b/include/openssl/bytestring.h @@ -45,9 +45,7 @@ struct cbs_st { // Allow implicit conversions to and from bssl::Span. cbs_st(bssl::Span span) : data(span.data()), len(span.size()) {} - operator bssl::Span() const { - return bssl::MakeConstSpan(data, len); - } + operator bssl::Span() const { return bssl::Span(data, len); } // Defining any constructors requires we explicitly default the others. cbs_st() = default; diff --git a/include/openssl/span.h b/include/openssl/span.h index fa7796267d..11ca2db8ec 100644 --- a/include/openssl/span.h +++ b/include/openssl/span.h @@ -99,10 +99,10 @@ using EnableIfContainer = std::enable_if_t< // // FooMutate(bssl::Span(vec)); // -// You can also use the |MakeSpan| and |MakeConstSpan| factory methods to -// construct Spans in order to deduce the type of the Span automatically. +// You can also use C++17 class template argument deduction to construct Spans +// in order to deduce the type of the Span automatically. // -// FooMutate(bssl::MakeSpan(vec)); +// FooMutate(bssl::Span(vec)); // // Note that Spans have value type sematics. They are cheap to construct and // copy, and should be passed by value whenever a method would otherwise accept diff --git a/ssl/d1_both.cc b/ssl/d1_both.cc index b02a958480..69fb09bc54 100644 --- a/ssl/d1_both.cc +++ b/ssl/d1_both.cc @@ -891,7 +891,7 @@ static int send_flight(SSL *ssl) { uint32_t old_offset = ssl->d1->outgoing_offset; size_t packet_len; - if (!seal_next_packet(ssl, MakeSpan(packet), &packet_len)) { + if (!seal_next_packet(ssl, Span(packet), &packet_len)) { return -1; } @@ -1001,7 +1001,7 @@ static int send_ack(SSL *ssl) { } ssl_do_msg_callback(ssl, /*is_write=*/1, SSL3_RT_ACK, - MakeConstSpan(CBB_data(&cbb), CBB_len(&cbb))); + Span(CBB_data(&cbb), CBB_len(&cbb))); int bio_ret = BIO_write(ssl->wbio.get(), record, static_cast(record_len)); diff --git a/ssl/dtls_record.cc b/ssl/dtls_record.cc index 55cd1f2165..125de2b7c3 100644 --- a/ssl/dtls_record.cc +++ b/ssl/dtls_record.cc @@ -115,7 +115,7 @@ uint64_t reconstruct_seqnum(uint16_t wire_seq, uint64_t seq_mask, } static Span cbs_to_writable_bytes(CBS cbs) { - return MakeSpan(const_cast(CBS_data(&cbs)), CBS_len(&cbs)); + return Span(const_cast(CBS_data(&cbs)), CBS_len(&cbs)); } struct ParsedDTLSRecord { @@ -540,8 +540,7 @@ bool dtls_seal_record(SSL *ssl, DTLSRecordNumber *out_number, uint8_t *out, CRYPTO_store_u64_be(out + 3, record_number.combined()); CRYPTO_store_u16_be(out + 11, ciphertext_len); } - Span header = MakeConstSpan(out, record_header_len); - + Span header(out, record_header_len); if (!write_epoch->aead->SealScatter( out + record_header_len, out + prefix, out + prefix + in_len, type, @@ -556,8 +555,7 @@ bool dtls_seal_record(SSL *ssl, DTLSRecordNumber *out_number, uint8_t *out, // generate the mask used for encryption. For simplicity, pass in the whole // ciphertext as the sample - GenerateRecordNumberMask will read only what // it needs (and error if |sample| is too short). - Span sample = - MakeConstSpan(out + record_header_len, ciphertext_len); + Span sample(out + record_header_len, ciphertext_len); uint8_t mask[2]; if (!write_epoch->rn_encrypter->GenerateMask(mask, sample)) { return false; diff --git a/ssl/encrypted_client_hello.cc b/ssl/encrypted_client_hello.cc index 046e0a9a56..6892f9777a 100644 --- a/ssl/encrypted_client_hello.cc +++ b/ssl/encrypted_client_hello.cc @@ -172,8 +172,8 @@ bool ssl_decode_client_hello_inner( return false; } - auto inner_extensions = MakeConstSpan(client_hello_inner.extensions, - client_hello_inner.extensions_len); + auto inner_extensions = + Span(client_hello_inner.extensions, client_hello_inner.extensions_len); CBS ext_list_wrapper; if (!ssl_client_hello_get_extension(&client_hello_inner, &ext_list_wrapper, TLSEXT_TYPE_ech_outer_extensions)) { @@ -255,8 +255,8 @@ bool ssl_decode_client_hello_inner( return false; } - if (!is_valid_client_hello_inner( - ssl, out_alert, MakeConstSpan(CBB_data(&body), CBB_len(&body)))) { + if (!is_valid_client_hello_inner(ssl, out_alert, + Span(CBB_data(&body), CBB_len(&body)))) { return false; } @@ -277,8 +277,8 @@ bool ssl_client_hello_decrypt(SSL_HANDSHAKE *hs, uint8_t *out_alert, // point within |client_hello_outer->extensions|) replaced with zeros. See // draft-ietf-tls-esni-13, section 5.2. Array aad; - if (!aad.CopyFrom(MakeConstSpan(client_hello_outer->client_hello, - client_hello_outer->client_hello_len))) { + if (!aad.CopyFrom(Span(client_hello_outer->client_hello, + client_hello_outer->client_hello_len))) { *out_alert = SSL_AD_INTERNAL_ERROR; return false; } @@ -290,7 +290,7 @@ bool ssl_client_hello_decrypt(SSL_HANDSHAKE *hs, uint8_t *out_alert, assert(reinterpret_cast(client_hello_outer->extensions + client_hello_outer->extensions_len) >= reinterpret_cast(payload.data() + payload.size())); - Span payload_aad = MakeSpan(aad).subspan( + Span payload_aad = Span(aad).subspan( payload.data() - client_hello_outer->client_hello, payload.size()); OPENSSL_memset(payload_aad.data(), 0, payload_aad.size()); @@ -431,7 +431,7 @@ static bool parse_ech_config(CBS *cbs, ECHConfig *out, bool *out_supported, // Make a copy of the ECHConfig and parse from it, so the results alias into // the saved copy. if (!out->raw.CopyFrom( - MakeConstSpan(CBS_data(&orig), CBS_len(&orig) - CBS_len(cbs)))) { + Span(CBS_data(&orig), CBS_len(&orig) - CBS_len(cbs)))) { return false; } @@ -539,7 +539,7 @@ bool ECHServerConfig::Init(Span ech_config, return false; } if (ech_config_.kem_id != EVP_HPKE_KEM_id(EVP_HPKE_KEY_kem(key)) || - MakeConstSpan(expected_public_key, expected_public_key_len) != + Span(expected_public_key, expected_public_key_len) != ech_config_.public_key) { OPENSSL_PUT_ERROR(SSL, SSL_R_ECH_SERVER_CONFIG_AND_PRIVATE_KEY_MISMATCH); return false; @@ -650,7 +650,7 @@ bool ssl_select_ech_config(SSL_HANDSHAKE *hs, Span out_enc, } if (!hs->config->client_ech_config_list.empty()) { - CBS cbs = MakeConstSpan(hs->config->client_ech_config_list); + CBS cbs = CBS(hs->config->client_ech_config_list); CBS child; if (!CBS_get_u16_length_prefixed(&cbs, &child) || // CBS_len(&child) == 0 || // @@ -804,16 +804,16 @@ bool ssl_encrypt_client_hello(SSL_HANDSHAKE *hs, Span enc) { if (needs_psk_binder) { size_t binder_len; - if (!tls13_write_psk_binder(hs, hs->inner_transcript, MakeSpan(hello_inner), + if (!tls13_write_psk_binder(hs, hs->inner_transcript, Span(hello_inner), &binder_len)) { return false; } // Also update the EncodedClientHelloInner. auto encoded_binder = - MakeSpan(const_cast(CBB_data(encoded_cbb.get())), - CBB_len(encoded_cbb.get())) + Span(const_cast(CBB_data(encoded_cbb.get())), + CBB_len(encoded_cbb.get())) .last(binder_len); - auto hello_inner_binder = MakeConstSpan(hello_inner).last(binder_len); + auto hello_inner_binder = Span(hello_inner).last(binder_len); OPENSSL_memcpy(encoded_binder.data(), hello_inner_binder.data(), binder_len); } @@ -885,7 +885,7 @@ bool ssl_encrypt_client_hello(SSL_HANDSHAKE *hs, Span enc) { assert(!needs_psk_binder); // Replace the payload in |hs->ech_client_outer| with the encrypted value. - auto payload_span = MakeSpan(hs->ech_client_outer).last(payload_len); + auto payload_span = Span(hs->ech_client_outer).last(payload_len); #if defined(BORINGSSL_UNSAFE_FUZZER_MODE) // In fuzzer mode, the server expects a cleartext payload. assert(payload_span.size() == encoded.size()); @@ -920,7 +920,7 @@ int SSL_set1_ech_config_list(SSL *ssl, const uint8_t *ech_config_list, return 0; } - auto span = MakeConstSpan(ech_config_list, ech_config_list_len); + auto span = Span(ech_config_list, ech_config_list_len); if (!ssl_is_valid_ech_config_list(span)) { OPENSSL_PUT_ERROR(SSL, SSL_R_INVALID_ECH_CONFIG_LIST); return 0; @@ -972,8 +972,7 @@ void SSL_get0_ech_retry_configs(const SSL *ssl, int SSL_marshal_ech_config(uint8_t **out, size_t *out_len, uint8_t config_id, const EVP_HPKE_KEY *key, const char *public_name, size_t max_name_len) { - Span public_name_u8 = MakeConstSpan( - reinterpret_cast(public_name), strlen(public_name)); + Span public_name_u8 = StringAsBytes(public_name); if (!ssl_is_valid_ech_public_name(public_name_u8)) { OPENSSL_PUT_ERROR(SSL, SSL_R_INVALID_ECH_PUBLIC_NAME); return 0; @@ -1036,7 +1035,7 @@ int SSL_ECH_KEYS_add(SSL_ECH_KEYS *configs, int is_retry_config, if (!parsed_config) { return 0; } - if (!parsed_config->Init(MakeConstSpan(ech_config, ech_config_len), key, + if (!parsed_config->Init(Span(ech_config, ech_config_len), key, !!is_retry_config)) { OPENSSL_PUT_ERROR(SSL, SSL_R_DECODE_ERROR); return 0; diff --git a/ssl/extensions.cc b/ssl/extensions.cc index c6718d5732..df914c8066 100644 --- a/ssl/extensions.cc +++ b/ssl/extensions.cc @@ -436,9 +436,7 @@ static bool ext_sni_add_clienthello(const SSL_HANDSHAKE *hs, CBB *out, if (ssl->hostname == nullptr) { return true; } - hostname = - MakeConstSpan(reinterpret_cast(ssl->hostname.get()), - strlen(ssl->hostname.get())); + hostname = StringAsBytes(ssl->hostname.get()); } CBB contents, server_name_list, name; @@ -1102,8 +1100,7 @@ static bool ext_npn_parse_serverhello(SSL_HANDSHAKE *hs, uint8_t *out_alert, ssl, &selected, &selected_len, orig_contents, static_cast(orig_len), ssl->ctx->next_proto_select_cb_arg) != SSL_TLSEXT_ERR_OK || - !ssl->s3->next_proto_negotiated.CopyFrom( - MakeConstSpan(selected, selected_len))) { + !ssl->s3->next_proto_negotiated.CopyFrom(Span(selected, selected_len))) { *out_alert = SSL_AD_INTERNAL_ERROR; return false; } @@ -1437,8 +1434,7 @@ bool ssl_negotiate_alpn(SSL_HANDSHAKE *hs, uint8_t *out_alert, *out_alert = SSL_AD_INTERNAL_ERROR; return false; } - if (!ssl->s3->alpn_selected.CopyFrom( - MakeConstSpan(selected, selected_len))) { + if (!ssl->s3->alpn_selected.CopyFrom(Span(selected, selected_len))) { *out_alert = SSL_AD_INTERNAL_ERROR; return false; } @@ -3019,7 +3015,7 @@ bool ssl_negotiate_alps(SSL_HANDSHAKE *hs, uint8_t *out_alert, *out_alert = SSL_AD_DECODE_ERROR; return false; } - if (protocol_name == MakeConstSpan(ssl->s3->alpn_selected)) { + if (protocol_name == Span(ssl->s3->alpn_selected)) { found = true; } } @@ -4076,9 +4072,8 @@ bool tls1_choose_signature_algorithm(SSL_HANDSHAKE *hs, } } - Span sigalgs = cred->sigalgs.empty() - ? MakeConstSpan(kSignSignatureAlgorithms) - : cred->sigalgs; + Span sigalgs = + cred->sigalgs.empty() ? Span(kSignSignatureAlgorithms) : cred->sigalgs; for (uint16_t sigalg : sigalgs) { if (!ssl_pkey_supports_algorithm(ssl, cred->pubkey.get(), sigalg, /*is_verify=*/false)) { diff --git a/ssl/handshake.cc b/ssl/handshake.cc index e10950e153..4ecb5fbdcb 100644 --- a/ssl/handshake.cc +++ b/ssl/handshake.cc @@ -74,7 +74,7 @@ bool SSL_HANDSHAKE::GetClientHello(SSLMessage *out_msg, out_msg->raw = CBS(ech_client_hello_buf); size_t header_len = SSL_is_dtls(ssl) ? DTLS1_HM_HEADER_LENGTH : SSL3_HM_HEADER_LENGTH; - out_msg->body = MakeConstSpan(ech_client_hello_buf).subspan(header_len); + out_msg->body = CBS(Span(ech_client_hello_buf).subspan(header_len)); } else if (!ssl->method->get_message(ssl, out_msg)) { // The message has already been read, so this cannot fail. OPENSSL_PUT_ERROR(SSL, ERR_R_INTERNAL_ERROR); @@ -398,11 +398,9 @@ enum ssl_hs_wait_t ssl_get_finished(SSL_HANDSHAKE *hs) { } if (ssl->server) { - ssl->s3->previous_client_finished.CopyFrom( - MakeConstSpan(finished, finished_len)); + ssl->s3->previous_client_finished.CopyFrom(Span(finished, finished_len)); } else { - ssl->s3->previous_server_finished.CopyFrom( - MakeConstSpan(finished, finished_len)); + ssl->s3->previous_server_finished.CopyFrom(Span(finished, finished_len)); } // The Finished message should be the end of a flight. @@ -426,7 +424,7 @@ bool ssl_send_finished(SSL_HANDSHAKE *hs) { ssl->server)) { return false; } - auto finished = MakeConstSpan(finished_buf, finished_len); + auto finished = Span(finished_buf, finished_len); // Log the master secret, if logging is enabled. if (!ssl_log_secret(ssl, "CLIENT_RANDOM", session->secret)) { diff --git a/ssl/handshake_client.cc b/ssl/handshake_client.cc index 45f5901f45..3f8040b639 100644 --- a/ssl/handshake_client.cc +++ b/ssl/handshake_client.cc @@ -234,7 +234,7 @@ bool ssl_add_client_hello(SSL_HANDSHAKE *hs) { // ClientHelloOuter cannot have a PSK binder. Otherwise the // ClientHellOuterAAD computation would break. assert(type != ssl_client_hello_outer); - if (!tls13_write_psk_binder(hs, hs->transcript, MakeSpan(msg), + if (!tls13_write_psk_binder(hs, hs->transcript, Span(msg), /*out_binder_len=*/0)) { return false; } @@ -419,7 +419,7 @@ static enum ssl_hs_wait_t do_start_connect(SSL_HANDSHAKE *hs) { if (!ssl_setup_key_shares(hs, /*override_group_id=*/0) || !ssl_setup_extension_permutation(hs) || - !ssl_encrypt_client_hello(hs, MakeConstSpan(ech_enc, ech_enc_len)) || + !ssl_encrypt_client_hello(hs, Span(ech_enc, ech_enc_len)) || !ssl_add_client_hello(hs)) { return ssl_hs_error; } @@ -666,8 +666,7 @@ static enum ssl_hs_wait_t do_read_server_hello(SSL_HANDSHAKE *hs) { sizeof(kJDK11DowngradeRandom) == sizeof(kTLS13DowngradeRandom), "downgrade signals have different size"); auto suffix = - MakeConstSpan(ssl->s3->server_random, sizeof(ssl->s3->server_random)) - .subspan(SSL3_RANDOM_SIZE - sizeof(kTLS13DowngradeRandom)); + Span(ssl->s3->server_random).last(sizeof(kTLS13DowngradeRandom)); if (suffix == kTLS12DowngradeRandom || suffix == kTLS13DowngradeRandom || suffix == kJDK11DowngradeRandom) { OPENSSL_PUT_ERROR(SSL, SSL_R_TLS13_DOWNGRADE); @@ -1473,8 +1472,7 @@ static enum ssl_hs_wait_t do_send_client_key_exchange(SSL_HANDSHAKE *hs) { } hs->new_session->secret.ResizeForOverwrite(SSL3_MASTER_SECRET_SIZE); - if (!tls1_generate_master_secret(hs, MakeSpan(hs->new_session->secret), - pms)) { + if (!tls1_generate_master_secret(hs, Span(hs->new_session->secret), pms)) { return ssl_hs_error; } diff --git a/ssl/handshake_server.cc b/ssl/handshake_server.cc index f0adbbc822..45afcf1611 100644 --- a/ssl/handshake_server.cc +++ b/ssl/handshake_server.cc @@ -91,7 +91,7 @@ static bool negotiate_version(SSL_HANDSHAKE *hs, uint8_t *out_alert, } else if (client_hello->version <= DTLS1_VERSION) { versions_len = 2; } - versions = MakeConstSpan(kDTLSVersions).last(versions_len); + versions = Span(kDTLSVersions).last(versions_len); } else { if (client_hello->version >= TLS1_2_VERSION) { versions_len = 6; @@ -100,7 +100,7 @@ static bool negotiate_version(SSL_HANDSHAKE *hs, uint8_t *out_alert, } else if (client_hello->version >= TLS1_VERSION) { versions_len = 2; } - versions = MakeConstSpan(kTLSVersions).last(versions_len); + versions = Span(kTLSVersions).last(versions_len); } } @@ -761,7 +761,7 @@ static enum ssl_hs_wait_t do_select_parameters(SSL_HANDSHAKE *hs) { // |ssl_client_hello_init| checks that |client_hello.session_id| is not too // large. hs->session_id.CopyFrom( - MakeConstSpan(client_hello.session_id, client_hello.session_id_len)); + Span(client_hello.session_id, client_hello.session_id_len)); // Determine whether we are doing session resumption. UniquePtr session; @@ -1042,7 +1042,7 @@ static enum ssl_hs_wait_t do_send_server_certificate(SSL_HANDSHAKE *hs) { hints->ecdhe_group_id == hs->new_session->group_id && !hints->ecdhe_public_key.empty() && !hints->ecdhe_private_key.empty()) { - CBS cbs = MakeConstSpan(hints->ecdhe_private_key); + CBS cbs = CBS(hints->ecdhe_private_key); hint_ok = hs->key_shares[0]->DeserializePrivateKey(&cbs); } if (hint_ok) { @@ -1060,7 +1060,7 @@ static enum ssl_hs_wait_t do_send_server_certificate(SSL_HANDSHAKE *hs) { if (hints && hs->hints_requested) { bssl::ScopedCBB private_key_cbb; if (!hints->ecdhe_public_key.CopyFrom( - MakeConstSpan(CBB_data(&child), CBB_len(&child))) || + Span(CBB_data(&child), CBB_len(&child))) || !CBB_init(private_key_cbb.get(), 32) || !hs->key_shares[0]->SerializePrivateKey(private_key_cbb.get()) || !CBBFinishArray(private_key_cbb.get(), @@ -1470,7 +1470,7 @@ static enum ssl_hs_wait_t do_read_client_key_exchange(SSL_HANDSHAKE *hs) { // Compute the master secret. hs->new_session->secret.ResizeForOverwrite(SSL3_MASTER_SECRET_SIZE); - if (!tls1_generate_master_secret(hs, MakeSpan(hs->new_session->secret), + if (!tls1_generate_master_secret(hs, Span(hs->new_session->secret), premaster_secret)) { return ssl_hs_error; } diff --git a/ssl/internal.h b/ssl/internal.h index 4d24178ad3..0f3da92b68 100644 --- a/ssl/internal.h +++ b/ssl/internal.h @@ -555,7 +555,7 @@ template inline size_t GetAllNames(const char **out, size_t max_out, Span fixed_names, Name(T::*name), Span objects) { - auto span = bssl::MakeSpan(out, max_out); + auto span = bssl::Span(out, max_out); for (size_t i = 0; !span.empty() && i < fixed_names.size(); i++) { span[0] = fixed_names[i]; span = span.subspan(1); @@ -878,8 +878,8 @@ class SSLTranscript { bool CopyToHashContext(EVP_MD_CTX *ctx, const EVP_MD *digest) const; Span buffer() const { - return MakeConstSpan(reinterpret_cast(buffer_->data), - buffer_->length); + return Span(reinterpret_cast(buffer_->data), + buffer_->length); } // FreeBuffer releases the handshake buffer. Subsequent calls to @@ -1467,11 +1467,9 @@ class SSLBuffer { bool empty() const { return size_ == 0; } size_t cap() const { return cap_; } - Span span() { return MakeSpan(data(), size()); } + Span span() { return Span(data(), size()); } - Span remaining() { - return MakeSpan(data() + size(), cap() - size()); - } + Span remaining() { return Span(data() + size(), cap() - size()); } // Clear releases the buffer. void Clear(); @@ -3242,9 +3240,9 @@ struct hm_header_st { struct DTLSIncomingMessage { static constexpr bool kAllowUniquePtr = true; - Span msg() { return MakeSpan(data).subspan(DTLS1_HM_HEADER_LENGTH); } + Span msg() { return Span(data).subspan(DTLS1_HM_HEADER_LENGTH); } Span msg() const { - return MakeSpan(data).subspan(DTLS1_HM_HEADER_LENGTH); + return Span(data).subspan(DTLS1_HM_HEADER_LENGTH); } size_t msg_len() const { return msg().size(); } diff --git a/ssl/s3_both.cc b/ssl/s3_both.cc index 7909c01816..8b7e4ec261 100644 --- a/ssl/s3_both.cc +++ b/ssl/s3_both.cc @@ -144,9 +144,8 @@ bool tls_flush_pending_hs_data(SSL *ssl) { } UniquePtr pending_hs_data = std::move(ssl->s3->pending_hs_data); - auto data = - MakeConstSpan(reinterpret_cast(pending_hs_data->data), - pending_hs_data->length); + auto data = Span(reinterpret_cast(pending_hs_data->data), + pending_hs_data->length); if (SSL_is_quic(ssl)) { if ((ssl->s3->hs == nullptr || !ssl->s3->hs->hints_requested) && !ssl->quic_method->add_handshake_data(ssl, ssl->s3->quic_write_level, diff --git a/ssl/s3_pkt.cc b/ssl/s3_pkt.cc index 930a81636a..6a429b989a 100644 --- a/ssl/s3_pkt.cc +++ b/ssl/s3_pkt.cc @@ -163,9 +163,9 @@ static int do_tls_write(SSL *ssl, size_t *out_bytes_written, uint8_t type, // NewSessionTicket. Span pending_flight; if (ssl->s3->pending_flight != nullptr) { - pending_flight = MakeConstSpan( - reinterpret_cast(ssl->s3->pending_flight->data), - ssl->s3->pending_flight->length); + pending_flight = + Span(reinterpret_cast(ssl->s3->pending_flight->data), + ssl->s3->pending_flight->length); pending_flight = pending_flight.subspan(ssl->s3->pending_flight_offset); } diff --git a/ssl/ssl_aead_ctx.cc b/ssl/ssl_aead_ctx.cc index a7873e3550..ae857f6373 100644 --- a/ssl/ssl_aead_ctx.cc +++ b/ssl/ssl_aead_ctx.cc @@ -109,8 +109,8 @@ UniquePtr SSLAEADContext::Create( OPENSSL_memcpy(merged_key + mac_key.size(), enc_key.data(), enc_key.size()); OPENSSL_memcpy(merged_key + mac_key.size() + enc_key.size(), fixed_iv.data(), fixed_iv.size()); - enc_key = MakeConstSpan(merged_key, - enc_key.size() + mac_key.size() + fixed_iv.size()); + enc_key = + Span(merged_key, enc_key.size() + mac_key.size() + fixed_iv.size()); // The |EVP_AEAD|'s per-encryption nonce, if any, is actually the CBC IV. It // must be generated randomly and prepended to the record. @@ -226,7 +226,7 @@ Span SSLAEADContext::GetAdditionalData( storage[len++] = static_cast((plaintext_len >> 8)); storage[len++] = static_cast(plaintext_len); } - return MakeConstSpan(storage, len); + return Span(storage, len); } bool SSLAEADContext::Open(Span *out, uint8_t type, diff --git a/ssl/ssl_cipher.cc b/ssl/ssl_cipher.cc index 5007dfe557..99c7bc9773 100644 --- a/ssl/ssl_cipher.cc +++ b/ssl/ssl_cipher.cc @@ -334,9 +334,7 @@ static constexpr SSL_CIPHER kCiphers[] = { }; -Span AllCiphers() { - return MakeConstSpan(kCiphers, OPENSSL_ARRAY_SIZE(kCiphers)); -} +Span AllCiphers() { return kCiphers; } static constexpr size_t NumTLS13Ciphers() { size_t num = 0; @@ -1567,11 +1565,11 @@ int SSL_COMP_get_id(const SSL_COMP *comp) { return comp->id; } void SSL_COMP_free_compression_methods(void) {} size_t SSL_get_all_cipher_names(const char **out, size_t max_out) { - return GetAllNames(out, max_out, MakeConstSpan(&kUnknownCipher, 1), - &SSL_CIPHER::name, MakeConstSpan(kCiphers)); + return GetAllNames(out, max_out, Span(&kUnknownCipher, 1), &SSL_CIPHER::name, + Span(kCiphers)); } size_t SSL_get_all_standard_cipher_names(const char **out, size_t max_out) { return GetAllNames(out, max_out, Span(), - &SSL_CIPHER::standard_name, MakeConstSpan(kCiphers)); + &SSL_CIPHER::standard_name, Span(kCiphers)); } diff --git a/ssl/ssl_credential.cc b/ssl/ssl_credential.cc index 361dcd1659..184d15e540 100644 --- a/ssl/ssl_credential.cc +++ b/ssl/ssl_credential.cc @@ -67,8 +67,8 @@ bool ssl_credential_matches_requested_issuers(SSL_HANDSHAKE *hs, // credential matches it, it is good. if (hs->ca_names != nullptr) { for (const CRYPTO_BUFFER *ca_name : hs->ca_names.get()) { - if (cred->ChainContainsIssuer(MakeConstSpan( - CRYPTO_BUFFER_data(ca_name), CRYPTO_BUFFER_len(ca_name)))) { + if (cred->ChainContainsIssuer(Span(CRYPTO_BUFFER_data(ca_name), + CRYPTO_BUFFER_len(ca_name)))) { return true; } } @@ -382,7 +382,7 @@ int SSL_CREDENTIAL_set1_delegated_credential(SSL_CREDENTIAL *cred, return 0; } - if (!cred->sigalgs.CopyFrom(MakeConstSpan(&dc_cert_verify_algorithm, 1))) { + if (!cred->sigalgs.CopyFrom(Span(&dc_cert_verify_algorithm, 1))) { return 0; } diff --git a/ssl/ssl_internal_test.cc b/ssl/ssl_internal_test.cc index 2275c3e215..230018fe1c 100644 --- a/ssl/ssl_internal_test.cc +++ b/ssl/ssl_internal_test.cc @@ -166,18 +166,18 @@ TEST(InplaceVector, Basic) { EXPECT_EQ(3, *iter); iter++; EXPECT_EQ(iter, vec.end()); - EXPECT_EQ(MakeConstSpan(vec), MakeConstSpan(data3)); + EXPECT_EQ(Span(vec), Span(data3)); InplaceVector vec2 = vec; - EXPECT_EQ(MakeConstSpan(vec), MakeConstSpan(vec2)); + EXPECT_EQ(Span(vec), Span(vec2)); InplaceVector vec3; vec3 = vec; - EXPECT_EQ(MakeConstSpan(vec), MakeConstSpan(vec2)); + EXPECT_EQ(Span(vec), Span(vec2)); int data4[] = {1, 2, 3, 4}; ASSERT_TRUE(vec.TryCopyFrom(data4)); - EXPECT_EQ(MakeConstSpan(vec), MakeConstSpan(data4)); + EXPECT_EQ(Span(vec), Span(data4)); int data5[] = {1, 2, 3, 4, 5}; EXPECT_FALSE(vec.TryCopyFrom(data5)); @@ -185,7 +185,7 @@ TEST(InplaceVector, Basic) { // Shrink the vector. ASSERT_TRUE(vec.TryResize(3)); - EXPECT_EQ(MakeConstSpan(vec), MakeConstSpan(data3)); + EXPECT_EQ(Span(vec), Span(data3)); // Enlarge it again. The new value should have been value-initialized. ASSERT_TRUE(vec.TryResize(4)); @@ -196,17 +196,17 @@ TEST(InplaceVector, Basic) { vec.CopyFrom(data4); const auto *ptr = &vec; vec = *ptr; - EXPECT_EQ(MakeConstSpan(vec), MakeConstSpan(data4)); + EXPECT_EQ(Span(vec), Span(data4)); } TEST(InplaceVectorTest, ComplexType) { InplaceVector, 4> vec_of_vecs; const std::vector data[] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; vec_of_vecs.CopyFrom(data); - EXPECT_EQ(MakeConstSpan(vec_of_vecs), MakeConstSpan(data)); + EXPECT_EQ(Span(vec_of_vecs), Span(data)); vec_of_vecs.Resize(2); - EXPECT_EQ(MakeConstSpan(vec_of_vecs), MakeConstSpan(data, 2)); + EXPECT_EQ(Span(vec_of_vecs), Span(data, 2)); vec_of_vecs.Resize(4); EXPECT_EQ(4u, vec_of_vecs.size()); @@ -854,11 +854,11 @@ TEST(SSLAEADContextTest, Lengths) { SCOPED_TRACE(SSL_CIPHER_standard_name(cipher)); const uint8_t kZeros[EVP_AEAD_MAX_KEY_LENGTH] = {0}; - UniquePtr aead = SSLAEADContext::Create( - evp_aead_seal, cipher_test.version, cipher, - MakeConstSpan(kZeros).first(cipher_test.enc_key_len), - MakeConstSpan(kZeros).first(cipher_test.mac_key_len), - MakeConstSpan(kZeros).first(cipher_test.fixed_iv_len)); + UniquePtr aead = + SSLAEADContext::Create(evp_aead_seal, cipher_test.version, cipher, + Span(kZeros).first(cipher_test.enc_key_len), + Span(kZeros).first(cipher_test.mac_key_len), + Span(kZeros).first(cipher_test.fixed_iv_len)); ASSERT_TRUE(aead); for (const auto &t : cipher_test.length_tests) { diff --git a/ssl/ssl_key_share.cc b/ssl/ssl_key_share.cc index f836c23239..af68003ad6 100644 --- a/ssl/ssl_key_share.cc +++ b/ssl/ssl_key_share.cc @@ -388,9 +388,7 @@ constexpr NamedGroup kNamedGroups[] = { } // namespace -Span NamedGroups() { - return MakeConstSpan(kNamedGroups, OPENSSL_ARRAY_SIZE(kNamedGroups)); -} +Span NamedGroups() { return kNamedGroups; } UniquePtr SSLKeyShare::Create(uint16_t group_id) { switch (group_id) { @@ -464,5 +462,5 @@ const char *SSL_get_group_name(uint16_t group_id) { size_t SSL_get_all_group_names(const char **out, size_t max_out) { return GetAllNames(out, max_out, Span(), &NamedGroup::name, - MakeConstSpan(kNamedGroups)); + Span(kNamedGroups)); } diff --git a/ssl/ssl_lib.cc b/ssl/ssl_lib.cc index 56fafde23b..41d071caa3 100644 --- a/ssl/ssl_lib.cc +++ b/ssl/ssl_lib.cc @@ -377,7 +377,7 @@ static uint32_t ssl_session_hash(const SSL_SESSION *sess) { } static int ssl_session_cmp(const SSL_SESSION *a, const SSL_SESSION *b) { - return MakeConstSpan(a->session_id) == b->session_id ? 0 : 1; + return Span(a->session_id) == b->session_id ? 0 : 1; } ssl_ctx_st::ssl_ctx_st(const SSL_METHOD *ssl_method) @@ -699,7 +699,7 @@ int SSL_provide_quic_data(SSL *ssl, enum ssl_encryption_level_t level, return 0; } - return tls_append_handshake_data(ssl, MakeConstSpan(data, len)); + return tls_append_handshake_data(ssl, Span(data, len)); } int SSL_do_handshake(SSL *ssl) { @@ -963,8 +963,7 @@ int SSL_write(SSL *ssl, const void *buf, int num) { } ret = ssl->method->write_app_data( ssl, &needs_handshake, &bytes_written, - MakeConstSpan(static_cast(buf), - static_cast(num))); + Span(static_cast(buf), static_cast(num))); } while (needs_handshake); return ret <= 0 ? ret : static_cast(bytes_written); } @@ -1075,8 +1074,8 @@ int SSL_send_fatal_alert(SSL *ssl, uint8_t alert) { int SSL_set_quic_transport_params(SSL *ssl, const uint8_t *params, size_t params_len) { - return ssl->config && ssl->config->quic_transport_params.CopyFrom( - MakeConstSpan(params, params_len)); + return ssl->config && + ssl->config->quic_transport_params.CopyFrom(Span(params, params_len)); } void SSL_get_peer_quic_transport_params(const SSL *ssl, @@ -1089,7 +1088,7 @@ void SSL_get_peer_quic_transport_params(const SSL *ssl, int SSL_set_quic_early_data_context(SSL *ssl, const uint8_t *context, size_t context_len) { return ssl->config && ssl->config->quic_early_data_context.CopyFrom( - MakeConstSpan(context, context_len)); + Span(context, context_len)); } void SSL_CTX_set_early_data_enabled(SSL_CTX *ctx, int enabled) { @@ -1393,7 +1392,7 @@ int SSL_get_tls_unique(const SSL *ssl, uint8_t *out, size_t *out_len, static int set_session_id_context(CERT *cert, const uint8_t *sid_ctx, size_t sid_ctx_len) { - if (!cert->sid_ctx.TryCopyFrom(MakeConstSpan(sid_ctx, sid_ctx_len))) { + if (!cert->sid_ctx.TryCopyFrom(Span(sid_ctx, sid_ctx_len))) { OPENSSL_PUT_ERROR(SSL, SSL_R_SSL_SESSION_ID_CONTEXT_TOO_LONG); return 0; } @@ -1814,7 +1813,7 @@ static bool check_group_ids(Span group_ids) { int SSL_CTX_set1_group_ids(SSL_CTX *ctx, const uint16_t *group_ids, size_t num_group_ids) { - auto span = MakeConstSpan(group_ids, num_group_ids); + auto span = Span(group_ids, num_group_ids); return check_group_ids(span) && ctx->supported_group_list.CopyFrom(span); } @@ -1823,7 +1822,7 @@ int SSL_set1_group_ids(SSL *ssl, const uint16_t *group_ids, if (!ssl->config) { return 0; } - auto span = MakeConstSpan(group_ids, num_group_ids); + auto span = Span(group_ids, num_group_ids); return check_group_ids(span) && ssl->config->supported_group_list.CopyFrom(span); } @@ -1848,7 +1847,7 @@ static bool ssl_nids_to_group_ids(Array *out_group_ids, int SSL_CTX_set1_groups(SSL_CTX *ctx, const int *groups, size_t num_groups) { return ssl_nids_to_group_ids(&ctx->supported_group_list, - MakeConstSpan(groups, num_groups)); + Span(groups, num_groups)); } int SSL_set1_groups(SSL *ssl, const int *groups, size_t num_groups) { @@ -1856,7 +1855,7 @@ int SSL_set1_groups(SSL *ssl, const int *groups, size_t num_groups) { return 0; } return ssl_nids_to_group_ids(&ssl->config->supported_group_list, - MakeConstSpan(groups, num_groups)); + Span(groups, num_groups)); } static bool ssl_str_to_group_ids(Array *out_group_ids, @@ -2129,8 +2128,8 @@ int SSL_select_next_proto(uint8_t **out, uint8_t *out_len, const uint8_t *peer, // Both |peer| and |supported| must be valid protocol lists, but |peer| may be // empty in NPN. - auto peer_span = MakeConstSpan(peer, peer_len); - auto supported_span = MakeConstSpan(supported, supported_len); + auto peer_span = Span(peer, peer_len); + auto supported_span = Span(supported, supported_len); if ((!peer_span.empty() && !ssl_is_valid_alpn_list(peer_span)) || !ssl_is_valid_alpn_list(supported_span)) { return OPENSSL_NPN_NO_OVERLAP; @@ -2143,7 +2142,7 @@ int SSL_select_next_proto(uint8_t **out, uint8_t *out_len, const uint8_t *peer, return OPENSSL_NPN_NO_OVERLAP; } - if (ssl_alpn_list_contains_protocol(MakeConstSpan(supported, supported_len), + if (ssl_alpn_list_contains_protocol(Span(supported, supported_len), proto)) { // This function is not const-correct for compatibility with existing // callers. @@ -2198,7 +2197,7 @@ void SSL_CTX_set_next_proto_select_cb(SSL_CTX *ctx, int SSL_CTX_set_alpn_protos(SSL_CTX *ctx, const uint8_t *protos, size_t protos_len) { // Note this function's return value is backwards. - auto span = MakeConstSpan(protos, protos_len); + auto span = Span(protos, protos_len); if (!span.empty() && !ssl_is_valid_alpn_list(span)) { OPENSSL_PUT_ERROR(SSL, SSL_R_INVALID_ALPN_PROTOCOL_LIST); return 1; @@ -2211,7 +2210,7 @@ int SSL_set_alpn_protos(SSL *ssl, const uint8_t *protos, size_t protos_len) { if (!ssl->config) { return 1; } - auto span = MakeConstSpan(protos, protos_len); + auto span = Span(protos, protos_len); if (!span.empty() && !ssl_is_valid_alpn_list(span)) { OPENSSL_PUT_ERROR(SSL, SSL_R_INVALID_ALPN_PROTOCOL_LIST); return 1; @@ -2253,8 +2252,8 @@ int SSL_add_application_settings(SSL *ssl, const uint8_t *proto, return 0; } ALPSConfig config; - if (!config.protocol.CopyFrom(MakeConstSpan(proto, proto_len)) || - !config.settings.CopyFrom(MakeConstSpan(settings, settings_len)) || + if (!config.protocol.CopyFrom(Span(proto, proto_len)) || + !config.settings.CopyFrom(Span(settings, settings_len)) || !ssl->config->alps_configs.Push(std::move(config))) { return 0; } diff --git a/ssl/ssl_privkey.cc b/ssl/ssl_privkey.cc index 8458d34cd3..7cc8d73a3e 100644 --- a/ssl/ssl_privkey.cc +++ b/ssl/ssl_privkey.cc @@ -208,9 +208,9 @@ enum ssl_private_key_result_t ssl_private_key_sign( // Replay the signature from handshake hints if available. if (hints && !hs->hints_requested && // sigalg == hints->signature_algorithm && // - in == hints->signature_input && - MakeConstSpan(spki) == hints->signature_spki && - !hints->signature.empty() && // + in == hints->signature_input && // + Span(spki) == hints->signature_spki && // + !hints->signature.empty() && // hints->signature.size() <= max_out) { // Signature algorithm and input both match. Reuse the signature from hints. *out_len = hints->signature.size(); @@ -251,7 +251,7 @@ enum ssl_private_key_result_t ssl_private_key_sign( hints->signature_algorithm = sigalg; hints->signature_spki = std::move(spki); if (!hints->signature_input.CopyFrom(in) || - !hints->signature.CopyFrom(MakeConstSpan(out, *out_len))) { + !hints->signature.CopyFrom(Span(out, *out_len))) { return ssl_private_key_failure; } } @@ -491,9 +491,9 @@ const char *SSL_get_signature_algorithm_name(uint16_t sigalg, size_t SSL_get_all_signature_algorithm_names(const char **out, size_t max_out) { const char *kPredefinedNames[] = {"ecdsa_sha256", "ecdsa_sha384", "ecdsa_sha512"}; - return GetAllNames(out, max_out, MakeConstSpan(kPredefinedNames), + return GetAllNames(out, max_out, kPredefinedNames, &SignatureAlgorithmName::name, - MakeConstSpan(kSignatureAlgorithmNames)); + Span(kSignatureAlgorithmNames)); } int SSL_get_signature_algorithm_key_type(uint16_t sigalg) { @@ -603,7 +603,7 @@ int SSL_CREDENTIAL_set1_signing_algorithm_prefs(SSL_CREDENTIAL *cred, return 0; } - return set_sigalg_prefs(&cred->sigalgs, MakeConstSpan(prefs, num_prefs)); + return set_sigalg_prefs(&cred->sigalgs, Span(prefs, num_prefs)); } int SSL_CTX_set_signing_algorithm_prefs(SSL_CTX *ctx, const uint16_t *prefs, @@ -899,8 +899,7 @@ int SSL_set1_sigalgs_list(SSL *ssl, const char *str) { int SSL_CTX_set_verify_algorithm_prefs(SSL_CTX *ctx, const uint16_t *prefs, size_t num_prefs) { - return set_sigalg_prefs(&ctx->verify_sigalgs, - MakeConstSpan(prefs, num_prefs)); + return set_sigalg_prefs(&ctx->verify_sigalgs, Span(prefs, num_prefs)); } int SSL_set_verify_algorithm_prefs(SSL *ssl, const uint16_t *prefs, @@ -910,6 +909,5 @@ int SSL_set_verify_algorithm_prefs(SSL *ssl, const uint16_t *prefs, return 0; } - return set_sigalg_prefs(&ssl->config->verify_sigalgs, - MakeConstSpan(prefs, num_prefs)); + return set_sigalg_prefs(&ssl->config->verify_sigalgs, Span(prefs, num_prefs)); } diff --git a/ssl/ssl_session.cc b/ssl/ssl_session.cc index 52ce2d1e47..3956d064fb 100644 --- a/ssl/ssl_session.cc +++ b/ssl/ssl_session.cc @@ -457,7 +457,7 @@ SSLSessionType ssl_session_get_type(const SSL_SESSION *session) { bool ssl_session_is_context_valid(const SSL_HANDSHAKE *hs, const SSL_SESSION *session) { return session != nullptr && - MakeConstSpan(session->sid_ctx) == hs->config->cert->sid_ctx; + Span(session->sid_ctx) == hs->config->cert->sid_ctx; } bool ssl_session_is_time_valid(const SSL *ssl, const SSL_SESSION *session) { @@ -590,9 +590,9 @@ enum ssl_hs_wait_t ssl_get_prev_session(SSL_HANDSHAKE *hs, ssl_client_hello_get_extension(client_hello, &ticket, TLSEXT_TYPE_session_ticket); if (tickets_supported && CBS_len(&ticket) != 0) { - switch (ssl_process_ticket(hs, &session, &renew_ticket, ticket, - MakeConstSpan(client_hello->session_id, - client_hello->session_id_len))) { + switch (ssl_process_ticket( + hs, &session, &renew_ticket, ticket, + Span(client_hello->session_id, client_hello->session_id_len))) { case ssl_ticket_aead_success: break; case ssl_ticket_aead_ignore_ticket: @@ -607,7 +607,7 @@ enum ssl_hs_wait_t ssl_get_prev_session(SSL_HANDSHAKE *hs, // The client didn't send a ticket, so the session ID is a real ID. enum ssl_hs_wait_t lookup_ret = ssl_lookup_session( hs, &session, - MakeConstSpan(client_hello->session_id, client_hello->session_id_len)); + Span(client_hello->session_id, client_hello->session_id_len)); if (lookup_ret != ssl_hs_ok) { return lookup_ret; } @@ -846,7 +846,7 @@ const uint8_t *SSL_SESSION_get_id(const SSL_SESSION *session, int SSL_SESSION_set1_id(SSL_SESSION *session, const uint8_t *sid, size_t sid_len) { - if (!session->session_id.TryCopyFrom(MakeConstSpan(sid, sid_len))) { + if (!session->session_id.TryCopyFrom(Span(sid, sid_len))) { OPENSSL_PUT_ERROR(SSL, SSL_R_SSL_SESSION_ID_TOO_LONG); return 0; } @@ -939,7 +939,7 @@ const uint8_t *SSL_SESSION_get0_id_context(const SSL_SESSION *session, int SSL_SESSION_set1_id_context(SSL_SESSION *session, const uint8_t *sid_ctx, size_t sid_ctx_len) { - if (!session->sid_ctx.TryCopyFrom(MakeConstSpan(sid_ctx, sid_ctx_len))) { + if (!session->sid_ctx.TryCopyFrom(Span(sid_ctx, sid_ctx_len))) { OPENSSL_PUT_ERROR(SSL, SSL_R_SSL_SESSION_ID_CONTEXT_TOO_LONG); return 0; } @@ -969,7 +969,7 @@ void SSL_SESSION_get0_ticket(const SSL_SESSION *session, int SSL_SESSION_set_ticket(SSL_SESSION *session, const uint8_t *ticket, size_t ticket_len) { - return session->ticket.CopyFrom(MakeConstSpan(ticket, ticket_len)); + return session->ticket.CopyFrom(Span(ticket, ticket_len)); } uint32_t SSL_SESSION_get_ticket_lifetime_hint(const SSL_SESSION *session) { diff --git a/ssl/ssl_test.cc b/ssl/ssl_test.cc index cf072a78fb..7bbdb13369 100644 --- a/ssl/ssl_test.cc +++ b/ssl/ssl_test.cc @@ -2194,7 +2194,7 @@ static bool GetECHLength(SSL_CTX *ctx, size_t *out_client_hello_len, ssl.get(), &parsed, // Skip record and handshake headers. This assumes the ClientHello // fits in one record. - MakeConstSpan(client_hello) + Span(client_hello) .subspan(SSL3_RT_HEADER_LENGTH + SSL3_HM_HEADER_LENGTH)) || !SSL_early_callback_ctx_extension_get( &parsed, TLSEXT_TYPE_encrypted_client_hello, &unused, out_ech_len)) { @@ -2254,64 +2254,61 @@ TEST(SSLTest, ECHPadding) { } TEST(SSLTest, ECHPublicName) { - auto str_to_span = [](const char *str) -> Span { - return MakeConstSpan(reinterpret_cast(str), strlen(str)); - }; - - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span(""))); - EXPECT_TRUE(ssl_is_valid_ech_public_name(str_to_span("example.com"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span(".example.com"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("example.com."))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("example..com"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("www.-example.com"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("www.example-.com"))); - EXPECT_FALSE( - ssl_is_valid_ech_public_name(str_to_span("no_underscores.example"))); - EXPECT_FALSE( - ssl_is_valid_ech_public_name(str_to_span("invalid_chars.\x01.example"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes(""))); + EXPECT_TRUE(ssl_is_valid_ech_public_name(StringAsBytes("example.com"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes(".example.com"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("example.com."))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("example..com"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("www.-example.com"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("www.example-.com"))); EXPECT_FALSE( - ssl_is_valid_ech_public_name(str_to_span("invalid_chars.\xff.example"))); + ssl_is_valid_ech_public_name(StringAsBytes("no_underscores.example"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name( + StringAsBytes("invalid_chars.\x01.example"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name( + StringAsBytes("invalid_chars.\xff.example"))); static const uint8_t kWithNUL[] = {'t', 'e', 's', 't', 0}; EXPECT_FALSE(ssl_is_valid_ech_public_name(kWithNUL)); // Test an LDH label with every character and the maximum length. - EXPECT_TRUE(ssl_is_valid_ech_public_name(str_to_span( + EXPECT_TRUE(ssl_is_valid_ech_public_name(StringAsBytes( "abcdefhijklmnopqrstuvwxyz-ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span( + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes( "abcdefhijklmnopqrstuvwxyz-ABCDEFGHIJKLMNOPQRSTUVWXYZ-01234567899"))); // Inputs with trailing numeric components are rejected. - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("127.0.0.1"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("example.1"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("example.01"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("example.0x01"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("example.0X01"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("127.0.0.1"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("example.1"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("example.01"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("example.0x01"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("example.0X01"))); // Leading zeros and values that overflow |uint32_t| are still rejected. EXPECT_FALSE(ssl_is_valid_ech_public_name( - str_to_span("example.123456789000000000000000"))); + StringAsBytes("example.123456789000000000000000"))); EXPECT_FALSE(ssl_is_valid_ech_public_name( - str_to_span("example.012345678900000000000000"))); + StringAsBytes("example.012345678900000000000000"))); EXPECT_FALSE(ssl_is_valid_ech_public_name( - str_to_span("example.0x123456789abcdefABCDEF0"))); + StringAsBytes("example.0x123456789abcdefABCDEF0"))); EXPECT_FALSE(ssl_is_valid_ech_public_name( - str_to_span("example.0x0123456789abcdefABCDEF"))); + StringAsBytes("example.0x0123456789abcdefABCDEF"))); // Adding a non-digit or non-hex character makes it a valid DNS name again. // Single-component numbers are rejected. - EXPECT_TRUE(ssl_is_valid_ech_public_name(str_to_span("example.1234567890a"))); EXPECT_TRUE( - ssl_is_valid_ech_public_name(str_to_span("example.01234567890a"))); + ssl_is_valid_ech_public_name(StringAsBytes("example.1234567890a"))); EXPECT_TRUE( - ssl_is_valid_ech_public_name(str_to_span("example.0x123456789abcdefg"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("1"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("01"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("0x01"))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("0X01"))); + ssl_is_valid_ech_public_name(StringAsBytes("example.01234567890a"))); + EXPECT_TRUE(ssl_is_valid_ech_public_name( + StringAsBytes("example.0x123456789abcdefg"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("1"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("01"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("0x01"))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("0X01"))); // Numbers with trailing dots are rejected. (They are already rejected by the // LDH label rules, but the WHATWG URL parser additionally rejects them.) - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("1."))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("01."))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("0x01."))); - EXPECT_FALSE(ssl_is_valid_ech_public_name(str_to_span("0X01."))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("1."))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("01."))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("0x01."))); + EXPECT_FALSE(ssl_is_valid_ech_public_name(StringAsBytes("0X01."))); } // When using the built-in verifier, test that |SSL_get0_ech_name_override| is @@ -4844,18 +4841,18 @@ TEST(SSLTest, CredentialChains) { Bytes(CRYPTO_BUFFER_data(subject_buf.get()), CRYPTO_BUFFER_len(subject_buf.get()))); #if !defined(BORINGSSL_SHARED_LIBRARY) - ASSERT_FALSE(cred->ChainContainsIssuer( - MakeConstSpan(CRYPTO_BUFFER_data(subject_buf.get()), - CRYPTO_BUFFER_len(subject_buf.get())))); + ASSERT_FALSE( + cred->ChainContainsIssuer(Span(CRYPTO_BUFFER_data(subject_buf.get()), + CRYPTO_BUFFER_len(subject_buf.get())))); #endif ASSERT_TRUE( SSL_CREDENTIAL_set1_cert_chain(cred.get(), chain.data(), chain.size())); #if !defined(BORINGSSL_SHARED_LIBRARY) - ASSERT_TRUE(cred->ChainContainsIssuer( - MakeConstSpan(CRYPTO_BUFFER_data(subject_buf.get()), - CRYPTO_BUFFER_len(subject_buf.get())))); + ASSERT_TRUE( + cred->ChainContainsIssuer(Span(CRYPTO_BUFFER_data(subject_buf.get()), + CRYPTO_BUFFER_len(subject_buf.get())))); #endif ASSERT_TRUE(SSL_CREDENTIAL_set1_cert_chain(cred2.get(), test_chain.data(), @@ -6947,23 +6944,22 @@ class QUICMethodTest : public testing::Test { static int SetReadSecretCallback(SSL *ssl, ssl_encryption_level_t level, const SSL_CIPHER *cipher, const uint8_t *secret, size_t secret_len) { - return TransportFromSSL(ssl)->SetReadSecret( - level, cipher, MakeConstSpan(secret, secret_len)); + return TransportFromSSL(ssl)->SetReadSecret(level, cipher, + Span(secret, secret_len)); } static int SetWriteSecretCallback(SSL *ssl, ssl_encryption_level_t level, const SSL_CIPHER *cipher, const uint8_t *secret, size_t secret_len) { - return TransportFromSSL(ssl)->SetWriteSecret( - level, cipher, MakeConstSpan(secret, secret_len)); + return TransportFromSSL(ssl)->SetWriteSecret(level, cipher, + Span(secret, secret_len)); } static int AddHandshakeDataCallback(SSL *ssl, enum ssl_encryption_level_t level, const uint8_t *data, size_t len) { EXPECT_EQ(level, SSL_quic_write_level(ssl)); - return TransportFromSSL(ssl)->WriteHandshakeData(level, - MakeConstSpan(data, len)); + return TransportFromSSL(ssl)->WriteHandshakeData(level, Span(data, len)); } static int FlushFlightCallback(SSL *ssl) { return 1; } @@ -7492,7 +7488,7 @@ TEST_F(QUICMethodTest, ExcessProvidedData) { const uint8_t *data, size_t len) -> int { // Switch everything to the initial level. return TransportFromSSL(ssl)->WriteHandshakeData(ssl_encryption_initial, - MakeConstSpan(data, len)); + Span(data, len)); }; SSL_QUIC_METHOD quic_method = DefaultQUICMethod(); @@ -8094,7 +8090,7 @@ Span SessionIDOf(const SSL *ssl) { const SSL_SESSION *session = SSL_get_session(ssl); unsigned len; const uint8_t *data = SSL_SESSION_get_id(session, &len); - return MakeConstSpan(data, len); + return Span(data, len); } TEST_P(SSLVersionTest, TicketSessionIDsMatch) { @@ -8142,9 +8138,9 @@ static void WriteHelloRequest(SSL *server) { ASSERT_EQ(2u * (kKeyLen + kNonceLen), SSL_get_key_block_len(server)); uint8_t key_block[2u * (kKeyLen + kNonceLen)]; ASSERT_TRUE(SSL_generate_key_block(server, key_block, sizeof(key_block))); - Span key = MakeSpan(key_block + kKeyLen, kKeyLen); + Span key = Span(key_block).subspan(kKeyLen, kKeyLen); Span nonce = - MakeSpan(key_block + kKeyLen + kKeyLen + kNonceLen, kNonceLen); + Span(key_block).subspan(kKeyLen + kKeyLen + kNonceLen, kNonceLen); uint8_t ad[13]; uint64_t seq = SSL_get_write_sequence(server); diff --git a/ssl/ssl_transcript.cc b/ssl/ssl_transcript.cc index c8bee47786..223839515b 100644 --- a/ssl/ssl_transcript.cc +++ b/ssl/ssl_transcript.cc @@ -127,7 +127,7 @@ bool SSLTranscript::UpdateForHelloRetryRequest() { static_cast(hash_len)}; if (!EVP_DigestInit_ex(hash_.get(), Digest(), nullptr) || !AddToBufferOrHash(header) || - !AddToBufferOrHash(MakeConstSpan(old_hash, hash_len))) { + !AddToBufferOrHash(Span(old_hash, hash_len))) { return false; } return true; @@ -207,8 +207,8 @@ bool SSLTranscript::GetFinishedMAC(uint8_t *out, size_t *out_len, std::string_view label = from_server ? "server finished" : "client finished"; static const size_t kFinishedLen = 12; - if (!tls1_prf(Digest(), MakeSpan(out, kFinishedLen), session->secret, label, - MakeConstSpan(digest, digest_len), {})) { + if (!tls1_prf(Digest(), Span(out, kFinishedLen), session->secret, label, + Span(digest, digest_len), {})) { return false; } diff --git a/ssl/ssl_versions.cc b/ssl/ssl_versions.cc index 0d9b0c0889..1b8031114e 100644 --- a/ssl/ssl_versions.cc +++ b/ssl/ssl_versions.cc @@ -407,8 +407,8 @@ const char *SSL_get_version(const SSL *ssl) { } size_t SSL_get_all_version_names(const char **out, size_t max_out) { - return GetAllNames(out, max_out, MakeConstSpan(&kUnknownVersion, 1), - &VersionInfo::name, MakeConstSpan(kVersionNames)); + return GetAllNames(out, max_out, Span(&kUnknownVersion, 1), + &VersionInfo::name, Span(kVersionNames)); } const char *SSL_SESSION_get_version(const SSL_SESSION *session) { diff --git a/ssl/t1_enc.cc b/ssl/t1_enc.cc index 31a2423aad..148fca7d98 100644 --- a/ssl/t1_enc.cc +++ b/ssl/t1_enc.cc @@ -88,7 +88,7 @@ bool tls1_configure_aead(SSL *ssl, evp_aead_direction_t direction, const size_t key_block_size = 2 * (mac_secret_len + key_len + iv_len); if (key_block_cache->empty()) { if (!key_block_cache->InitForOverwrite(key_block_size) || - !generate_key_block(ssl, MakeSpan(*key_block_cache), session)) { + !generate_key_block(ssl, Span(*key_block_cache), session)) { return false; } } @@ -148,8 +148,7 @@ bool tls1_generate_master_secret(SSL_HANDSHAKE *hs, Span out, size_t digests_len; if (!hs->transcript.GetHash(digests, &digests_len) || !tls1_prf(hs->transcript.Digest(), out, premaster, - "extended master secret", MakeConstSpan(digests, digests_len), - {})) { + "extended master secret", Span(digests, digests_len), {})) { return false; } } else { @@ -192,7 +191,7 @@ int SSL_generate_key_block(const SSL *ssl, uint8_t *out, size_t out_len) { return 0; } - return generate_key_block(ssl, MakeSpan(out, out_len), SSL_get_session(ssl)); + return generate_key_block(ssl, Span(out, out_len), SSL_get_session(ssl)); } int SSL_export_keying_material(SSL *ssl, uint8_t *out, size_t out_len, @@ -212,8 +211,7 @@ int SSL_export_keying_material(SSL *ssl, uint8_t *out, size_t out_len, context_len = 0; } return tls13_export_keying_material(ssl, out_span, ssl->s3->exporter_secret, - label_sv, - MakeConstSpan(context, context_len)); + label_sv, Span(context, context_len)); } // Exporters may be used in False Start, where the handshake has progressed diff --git a/ssl/test/bssl_shim.cc b/ssl/test/bssl_shim.cc index ac79979e9f..968b95cabf 100644 --- a/ssl/test/bssl_shim.cc +++ b/ssl/test/bssl_shim.cc @@ -927,9 +927,7 @@ static bool DoConnection(bssl::UniquePtr *out_session, bssl::Span expected = config->expect_no_ech_retry_configs ? bssl::Span() - : bssl::MakeConstSpan(reinterpret_cast( - config->expect_ech_retry_configs.data()), - config->expect_ech_retry_configs.size()); + : bssl::StringAsBytes(config->expect_ech_retry_configs); if (ret) { fprintf(stderr, "Expected ECH rejection, but connection succeeded.\n"); return false; @@ -944,7 +942,7 @@ static bool DoConnection(bssl::UniquePtr *out_session, const uint8_t *retry_configs; size_t retry_configs_len; SSL_get0_ech_retry_configs(ssl.get(), &retry_configs, &retry_configs_len); - if (bssl::MakeConstSpan(retry_configs, retry_configs_len) != expected) { + if (bssl::Span(retry_configs, retry_configs_len) != expected) { fprintf(stderr, "ECH retry configs did not match expectations.\n"); // Clear the error queue. Otherwise |SSL_R_ECH_REJECTED| will be printed // to stderr and the test framework will think the test had the expected diff --git a/ssl/test/handshake_util.cc b/ssl/test/handshake_util.cc index cff6a6f5f0..038ba4049c 100644 --- a/ssl/test/handshake_util.cc +++ b/ssl/test/handshake_util.cc @@ -720,10 +720,9 @@ bool GetHandshakeHint(SSL *ssl, SettingsWriter *writer, bool is_resume, bool has_hints; std::vector hints; - if (!RequestHandshakeHint( - GetTestConfig(ssl), is_resume, - MakeConstSpan(CBB_data(input.get()), CBB_len(input.get())), - &has_hints, &hints)) { + if (!RequestHandshakeHint(GetTestConfig(ssl), is_resume, + Span(CBB_data(input.get()), CBB_len(input.get())), + &has_hints, &hints)) { return false; } if (has_hints && diff --git a/ssl/test/mock_quic_transport.cc b/ssl/test/mock_quic_transport.cc index ea278ed172..68ff2cc37b 100644 --- a/ssl/test/mock_quic_transport.cc +++ b/ssl/test/mock_quic_transport.cc @@ -112,7 +112,7 @@ bool MockQuicTransport::ReadHeader(uint8_t *out_type, // If we receive early data records without any early data keys, skip // the record. This means early data was rejected. std::vector discard(remaining_bytes); - if (!ReadAll(bio_.get(), bssl::MakeSpan(discard))) { + if (!ReadAll(bio_.get(), bssl::Span(discard))) { return false; } continue; @@ -134,7 +134,7 @@ bool MockQuicTransport::ReadHeader(uint8_t *out_type, return false; } remaining_bytes -= secret.size(); - if (!ReadAll(bio_.get(), bssl::MakeSpan(read_secret))) { + if (!ReadAll(bio_.get(), bssl::Span(read_secret))) { fprintf(stderr, "Error reading record secret.\n"); return false; } @@ -161,7 +161,7 @@ bool MockQuicTransport::ReadHandshake() { } std::vector buf(len); - if (!ReadAll(bio_.get(), bssl::MakeSpan(buf))) { + if (!ReadAll(bio_.get(), bssl::Span(buf))) { return false; } return SSL_provide_quic_data(ssl_, level, buf.data(), buf.size()); @@ -199,7 +199,7 @@ int MockQuicTransport::ReadApplicationData(uint8_t *out, size_t max_out) { } std::vector buf(len); - if (!ReadAll(bio_.get(), bssl::MakeSpan(buf))) { + if (!ReadAll(bio_.get(), bssl::Span(buf))) { return -1; } if (SSL_provide_quic_data(ssl_, level, buf.data(), buf.size()) != 1) { @@ -225,7 +225,7 @@ int MockQuicTransport::ReadApplicationData(uint8_t *out, size_t max_out) { buf = pending_app_data_.data(); } app_data_offset_ = 0; - if (!ReadAll(bio_.get(), bssl::MakeSpan(buf, len))) { + if (!ReadAll(bio_.get(), bssl::Span(buf, len))) { return -1; } if (len > max_out) { diff --git a/ssl/test/test_config.cc b/ssl/test/test_config.cc index 9d37bd16b8..1396b2cc30 100644 --- a/ssl/test/test_config.cc +++ b/ssl/test/test_config.cc @@ -1239,7 +1239,7 @@ static int AsyncTicketSeal(SSL *ssl, uint8_t *out, size_t *out_len, return 1; } - auto out_span = bssl::MakeSpan(out, max_out_len); + auto out_span = bssl::Span(out, max_out_len); // Encrypt the ticket with the all zero key and a random nonce. static const uint8_t kKey[16] = {0}; const EVP_AEAD *aead = EVP_aead_aes_128_gcm_siv(); @@ -1268,7 +1268,7 @@ static ssl_ticket_aead_result_t AsyncTicketOpen(SSL *ssl, uint8_t *out, size_t max_out_len, const uint8_t *in, size_t in_len) { - auto in_span = bssl::MakeSpan(in, in_len); + auto in_span = bssl::Span(in, in_len); const TestConfig *test_config = GetTestConfig(ssl); TestState *test_state = GetTestState(ssl); if (test_state->ticket_decrypt_done) { diff --git a/ssl/tls13_both.cc b/ssl/tls13_both.cc index 5594a65d3e..f547c21995 100644 --- a/ssl/tls13_both.cc +++ b/ssl/tls13_both.cc @@ -373,7 +373,7 @@ bool tls13_process_finished(SSL_HANDSHAKE *hs, const SSLMessage &msg, if (!tls13_finished_mac(hs, verify_data_buf, &len, !ssl->server)) { return false; } - verify_data = MakeConstSpan(verify_data_buf, len); + verify_data = Span(verify_data_buf, len); } bool finished_ok = @@ -522,7 +522,7 @@ bool tls13_add_certificate(SSL_HANDSHAKE *hs) { SSL_HANDSHAKE_HINTS *const hints = hs->hints.get(); if (hints && !hs->hints_requested && hints->cert_compression_alg_id == hs->cert_compression_alg_id && - hints->cert_compression_input == MakeConstSpan(msg) && + hints->cert_compression_input == Span(msg) && !hints->cert_compression_output.empty()) { if (!CBB_add_bytes(&compressed, hints->cert_compression_output.data(), hints->cert_compression_output.size())) { @@ -538,7 +538,7 @@ bool tls13_add_certificate(SSL_HANDSHAKE *hs) { hints->cert_compression_alg_id = hs->cert_compression_alg_id; if (!hints->cert_compression_input.CopyFrom(msg) || !hints->cert_compression_output.CopyFrom( - MakeConstSpan(CBB_data(&compressed), CBB_len(&compressed)))) { + Span(CBB_data(&compressed), CBB_len(&compressed)))) { return false; } } diff --git a/ssl/tls13_client.cc b/ssl/tls13_client.cc index f8f2250baf..35b3109c0f 100644 --- a/ssl/tls13_client.cc +++ b/ssl/tls13_client.cc @@ -117,9 +117,8 @@ static bool parse_server_hello_tls13(const SSL_HANDSHAKE *hs, // 5). The client could have sent a session ID indicating its willingness to // resume a DTLS 1.2 session, so just checking that the session IDs match is // incorrect. - Span expected_session_id = SSL_is_dtls(hs->ssl) - ? Span() - : MakeConstSpan(hs->session_id); + Span expected_session_id = + SSL_is_dtls(hs->ssl) ? Span() : Span(hs->session_id); // RFC 8446 fixes some legacy values. Check them. if (out->legacy_version != expected_version || // @@ -496,8 +495,8 @@ static enum ssl_hs_wait_t do_read_server_hello(SSL_HANDSHAKE *hs) { size_t hash_len = EVP_MD_size( ssl_get_handshake_digest(ssl_protocol_version(ssl), hs->new_cipher)); if (!tls13_init_key_schedule(hs, ssl->s3->session_reused - ? MakeConstSpan(hs->new_session->secret) - : MakeConstSpan(kZeroes, hash_len))) { + ? Span(hs->new_session->secret) + : Span(kZeroes, hash_len))) { return ssl_hs_error; } @@ -582,8 +581,7 @@ static enum ssl_hs_wait_t do_read_encrypted_extensions(SSL_HANDSHAKE *hs) { ssl_send_alert(ssl, SSL3_AL_FATAL, SSL_AD_ILLEGAL_PARAMETER); return ssl_hs_error; } - if (MakeConstSpan(hs->early_session->early_alpn) != - ssl->s3->alpn_selected) { + if (Span(hs->early_session->early_alpn) != ssl->s3->alpn_selected) { OPENSSL_PUT_ERROR(SSL, SSL_R_ALPN_MISMATCH_ON_EARLY_DATA); ssl_send_alert(ssl, SSL3_AL_FATAL, SSL_AD_ILLEGAL_PARAMETER); return ssl_hs_error; @@ -771,8 +769,8 @@ static enum ssl_hs_wait_t do_read_server_finished(SSL_HANDSHAKE *hs) { !tls13_process_finished(hs, msg, false /* don't use saved value */) || !ssl_hash_message(hs, msg) || // Update the secret to the master secret and derive traffic keys. - !tls13_advance_key_schedule( - hs, MakeConstSpan(kZeroes, hs->transcript.DigestLen())) || + !tls13_advance_key_schedule(hs, + Span(kZeroes, hs->transcript.DigestLen())) || !tls13_derive_application_secrets(hs)) { return ssl_hs_error; } diff --git a/ssl/tls13_enc.cc b/ssl/tls13_enc.cc index 7f1ba57b70..601bb11bac 100644 --- a/ssl/tls13_enc.cc +++ b/ssl/tls13_enc.cc @@ -144,9 +144,9 @@ bool tls13_advance_key_schedule(SSL_HANDSHAKE *hs, Span in) { unsigned derive_context_len; return EVP_Digest(nullptr, 0, derive_context, &derive_context_len, hs->transcript.Digest(), nullptr) && - hkdf_expand_label(MakeSpan(hs->secret), hs->transcript.Digest(), + hkdf_expand_label(Span(hs->secret), hs->transcript.Digest(), hs->secret, kTLS13LabelDerived, - MakeConstSpan(derive_context, derive_context_len), + Span(derive_context, derive_context_len), SSL_is_dtls(hs->ssl)) && hkdf_extract_to_secret(hs, hs->transcript, in); } @@ -165,8 +165,8 @@ static bool derive_secret_with_transcript( } out->ResizeForOverwrite(transcript.DigestLen()); - return hkdf_expand_label(MakeSpan(*out), transcript.Digest(), hs->secret, - label, MakeConstSpan(context_hash, context_hash_len), + return hkdf_expand_label(Span(*out), transcript.Digest(), hs->secret, label, + Span(context_hash, context_hash_len), SSL_is_dtls(hs->ssl)); } @@ -199,8 +199,8 @@ bool tls13_set_traffic_key(SSL *ssl, enum ssl_encryption_level_t level, // Derive the key and IV. uint8_t key_buf[EVP_AEAD_MAX_KEY_LENGTH], iv_buf[EVP_AEAD_MAX_NONCE_LENGTH]; - auto key = MakeSpan(key_buf).first(EVP_AEAD_key_length(aead)); - auto iv = MakeSpan(iv_buf).first(EVP_AEAD_nonce_length(aead)); + auto key = Span(key_buf).first(EVP_AEAD_key_length(aead)); + auto iv = Span(iv_buf).first(EVP_AEAD_nonce_length(aead)); if (!hkdf_expand_label(key, digest, traffic_secret, "key", {}, is_dtls) || !hkdf_expand_label(iv, digest, traffic_secret, "iv", {}, is_dtls)) { return false; @@ -332,7 +332,7 @@ UniquePtr RecordNumberEncrypter::Create( } uint8_t rne_key_buf[RecordNumberEncrypter::kMaxKeySize]; - auto rne_key = MakeSpan(rne_key_buf).first(ret->KeySize()); + auto rne_key = Span(rne_key_buf).first(ret->KeySize()); if (!hkdf_expand_label(rne_key, digest, traffic_secret, "sn", {}, /*is_dtls=*/true) || !ret->SetKey(rne_key)) { @@ -403,8 +403,8 @@ static const char kTLS13LabelApplicationTraffic[] = "traffic upd"; bool tls13_rotate_traffic_key(SSL *ssl, enum evp_aead_direction_t direction) { Span secret = direction == evp_aead_open - ? MakeSpan(ssl->s3->read_traffic_secret) - : MakeSpan(ssl->s3->write_traffic_secret); + ? Span(ssl->s3->read_traffic_secret) + : Span(ssl->s3->write_traffic_secret); const SSL_SESSION *session = SSL_get_session(ssl); const EVP_MD *digest = ssl_session_get_digest(session); @@ -431,7 +431,7 @@ static bool tls13_verify_data(uint8_t *out, size_t *out_len, Span secret, Span context, bool is_dtls) { uint8_t key_buf[EVP_MAX_MD_SIZE]; - auto key = MakeSpan(key_buf, EVP_MD_size(digest)); + auto key = Span(key_buf, EVP_MD_size(digest)); unsigned len; if (!hkdf_expand_label(key, digest, secret, kTLS13LabelFinished, {}, is_dtls) || @@ -453,7 +453,7 @@ bool tls13_finished_mac(SSL_HANDSHAKE *hs, uint8_t *out, size_t *out_len, if (!hs->transcript.GetHash(context_hash, &context_hash_len) || !tls13_verify_data(out, out_len, hs->transcript.Digest(), hs->ssl->s3->version, traffic_secret, - MakeConstSpan(context_hash, context_hash_len), + Span(context_hash, context_hash_len), SSL_is_dtls(hs->ssl))) { return false; } @@ -468,7 +468,7 @@ bool tls13_derive_session_psk(SSL_SESSION *session, Span nonce, // The session initially stores the resumption_master_secret, which we // override with the PSK. assert(session->secret.size() == EVP_MD_size(digest)); - return hkdf_expand_label(MakeSpan(session->secret), digest, session->secret, + return hkdf_expand_label(Span(session->secret), digest, session->secret, kTLS13LabelResumptionPSK, nonce, is_dtls); } @@ -497,10 +497,10 @@ bool tls13_export_keying_material(SSL *ssl, Span out, return false; } - auto hash = MakeConstSpan(hash_buf, hash_len); - auto export_context = MakeConstSpan(export_context_buf, export_context_len); + auto hash = Span(hash_buf, hash_len); + auto export_context = Span(export_context_buf, export_context_len); uint8_t derived_secret_buf[EVP_MAX_MD_SIZE]; - auto derived_secret = MakeSpan(derived_secret_buf, EVP_MD_size(digest)); + auto derived_secret = Span(derived_secret_buf, EVP_MD_size(digest)); return hkdf_expand_label(derived_secret, digest, secret, label, export_context, SSL_is_dtls(ssl)) && hkdf_expand_label(out, digest, derived_secret, kTLS13LabelExportKeying, @@ -525,16 +525,16 @@ static bool tls13_psk_binder(uint8_t *out, size_t *out_len, uint8_t early_secret[EVP_MAX_MD_SIZE] = {0}; size_t early_secret_len; uint8_t binder_key_buf[EVP_MAX_MD_SIZE] = {0}; - auto binder_key = MakeSpan(binder_key_buf, EVP_MD_size(digest)); + auto binder_key = Span(binder_key_buf, EVP_MD_size(digest)); if (!EVP_Digest(nullptr, 0, binder_context, &binder_context_len, digest, nullptr) || !HKDF_extract(early_secret, &early_secret_len, digest, session->secret.data(), session->secret.size(), nullptr, 0) || - !hkdf_expand_label( - binder_key, digest, MakeConstSpan(early_secret, early_secret_len), - kTLS13LabelPSKBinder, - MakeConstSpan(binder_context, binder_context_len), is_dtls)) { + !hkdf_expand_label(binder_key, digest, + Span(early_secret, early_secret_len), + kTLS13LabelPSKBinder, + Span(binder_context, binder_context_len), is_dtls)) { return false; } @@ -573,7 +573,7 @@ static bool tls13_psk_binder(uint8_t *out, size_t *out_len, } if (!tls13_verify_data(out, out_len, digest, session->ssl_version, binder_key, - MakeConstSpan(context, context_len), is_dtls)) { + Span(context, context_len), is_dtls)) { return false; } @@ -691,9 +691,9 @@ bool ssl_ech_accept_confirmation(const SSL_HANDSHAKE *hs, Span out, assert(out.size() == ECH_CONFIRMATION_SIGNAL_LEN); return hkdf_expand_label( - out, transcript.Digest(), MakeConstSpan(secret, secret_len), + out, transcript.Digest(), Span(secret, secret_len), is_hrr ? "hrr ech accept confirmation" : "ech accept confirmation", - MakeConstSpan(context, context_len), SSL_is_dtls(hs->ssl)); + Span(context, context_len), SSL_is_dtls(hs->ssl)); } BSSL_NAMESPACE_END diff --git a/ssl/tls13_server.cc b/ssl/tls13_server.cc index afc75d8b0f..c59477e188 100644 --- a/ssl/tls13_server.cc +++ b/ssl/tls13_server.cc @@ -268,7 +268,7 @@ static enum ssl_hs_wait_t do_select_parameters(SSL_HANDSHAKE *hs) { // would in a TLS 1.3 handshake. if (!SSL_is_dtls(ssl)) { hs->session_id.CopyFrom( - MakeConstSpan(client_hello.session_id, client_hello.session_id_len)); + Span(client_hello.session_id, client_hello.session_id_len)); } Array creds; @@ -513,12 +513,12 @@ static enum ssl_hs_wait_t do_select_session(SSL_HANDSHAKE *hs) { } else if (hs->channel_id_negotiated) { // Channel ID is incompatible with 0-RTT. ssl->s3->early_data_reason = ssl_early_data_channel_id; - } else if (MakeConstSpan(ssl->s3->alpn_selected) != session->early_alpn) { + } else if (Span(ssl->s3->alpn_selected) != session->early_alpn) { // The negotiated ALPN must match the one in the ticket. ssl->s3->early_data_reason = ssl_early_data_alpn_mismatch; } else if (hs->new_session->has_application_settings != session->has_application_settings || - MakeConstSpan(hs->new_session->local_application_settings) != + Span(hs->new_session->local_application_settings) != session->local_application_settings) { ssl->s3->early_data_reason = ssl_early_data_alps_mismatch; } else if (ssl->s3->ticket_age_skew < -kMaxTicketAgeSkewSeconds || @@ -578,8 +578,8 @@ static enum ssl_hs_wait_t do_select_session(SSL_HANDSHAKE *hs) { // Set up the key schedule and incorporate the PSK into the running secret. if (!tls13_init_key_schedule(hs, ssl->s3->session_reused - ? MakeConstSpan(hs->new_session->secret) - : MakeConstSpan(kZeroes, hash_len)) || + ? Span(hs->new_session->secret) + : Span(kZeroes, hash_len)) || !ssl_hash_message(hs, msg)) { return ssl_hs_error; } @@ -652,7 +652,7 @@ static enum ssl_hs_wait_t do_send_hello_retry_request(SSL_HANDSHAKE *hs) { // Now that the message is encoded, fill in the whole value. size_t offset = hrr.size() - ECH_CONFIRMATION_SIGNAL_LEN; if (!ssl_ech_accept_confirmation( - hs, MakeSpan(hrr).last(ECH_CONFIRMATION_SIGNAL_LEN), + hs, Span(hrr).last(ECH_CONFIRMATION_SIGNAL_LEN), ssl->s3->client_random, hs->transcript, /*is_hrr=*/true, hrr, offset)) { return ssl_hs_error; @@ -850,7 +850,7 @@ static enum ssl_hs_wait_t do_send_server_hello(SSL_HANDSHAKE *hs) { // Update |server_hello|. Span server_hello_out = - MakeSpan(server_hello).subspan(offset, ECH_CONFIRMATION_SIGNAL_LEN); + Span(server_hello).subspan(offset, ECH_CONFIRMATION_SIGNAL_LEN); OPENSSL_memcpy(server_hello_out.data(), random_suffix.data(), ECH_CONFIRMATION_SIGNAL_LEN); } @@ -965,8 +965,8 @@ static enum ssl_hs_wait_t do_send_server_finished(SSL_HANDSHAKE *hs) { hs->can_release_private_key = true; if (!tls13_add_finished(hs) || // Update the secret to the master secret and derive traffic keys. - !tls13_advance_key_schedule( - hs, MakeConstSpan(kZeroes, hs->transcript.DigestLen())) || + !tls13_advance_key_schedule(hs, + Span(kZeroes, hs->transcript.DigestLen())) || !tls13_derive_application_secrets(hs) || !tls13_set_traffic_key(ssl, ssl_encryption_application, evp_aead_seal, hs->new_session.get(), diff --git a/ssl/tls_record.cc b/ssl/tls_record.cc index bccaaf3678..32034fcdcb 100644 --- a/ssl/tls_record.cc +++ b/ssl/tls_record.cc @@ -179,7 +179,7 @@ ssl_open_record_t tls_open_record(SSL *ssl, uint8_t *out_type, // Decrypt the body in-place. if (!ssl->s3->aead_read_ctx->Open( out, type, version, ssl->s3->read_sequence, header, - MakeSpan(const_cast(CBS_data(&body)), CBS_len(&body)))) { + Span(const_cast(CBS_data(&body)), CBS_len(&body)))) { if (ssl->s3->skip_early_data && !ssl->s3->aead_read_ctx->is_null_cipher()) { ERR_clear_error(); return skip_early_data(ssl, out_alert, *out_consumed); @@ -292,7 +292,7 @@ static bool do_seal_record(SSL *ssl, uint8_t *out_prefix, uint8_t *out, out_prefix[2] = record_version & 0xff; out_prefix[3] = ciphertext_len >> 8; out_prefix[4] = ciphertext_len & 0xff; - Span header = MakeSpan(out_prefix, SSL3_RT_HEADER_LENGTH); + Span header = Span(out_prefix, SSL3_RT_HEADER_LENGTH); // Ensure the sequence number update does not overflow. if (ssl->s3->write_sequence + 1 == 0) { diff --git a/tool/generate_ech.cc b/tool/generate_ech.cc index b0d4a5b9a0..f32ad03631 100644 --- a/tool/generate_ech.cc +++ b/tool/generate_ech.cc @@ -119,13 +119,12 @@ bool GenerateECH(const std::vector &args) { fprintf(stderr, "Failed to serialize the ECHConfigList\n"); return false; } - if (!WriteToFile( - args_map["-out-ech-config-list"], - bssl::MakeConstSpan(CBB_data(cbb.get()), CBB_len(cbb.get()))) || + if (!WriteToFile(args_map["-out-ech-config-list"], + bssl::Span(CBB_data(cbb.get()), CBB_len(cbb.get()))) || !WriteToFile(args_map["-out-ech-config"], - bssl::MakeConstSpan(ech_config, ech_config_len)) || + bssl::Span(ech_config, ech_config_len)) || !WriteToFile(args_map["-out-private-key"], - bssl::MakeConstSpan(private_key, private_key_len))) { + bssl::Span(private_key, private_key_len))) { fprintf(stderr, "Failed to write ECHConfig or private key to file\n"); return false; } diff --git a/util/fipstools/acvp/modulewrapper/modulewrapper.cc b/util/fipstools/acvp/modulewrapper/modulewrapper.cc index 7d4a0fc1ca..92f7fa9c05 100644 --- a/util/fipstools/acvp/modulewrapper/modulewrapper.cc +++ b/util/fipstools/acvp/modulewrapper/modulewrapper.cc @@ -2264,7 +2264,7 @@ static bool MLDSAKeyGen(const Span args[], } return write_reply( - {pub_key_bytes, MakeConstSpan(CBB_data(cbb.get()), CBB_len(cbb.get()))}); + {pub_key_bytes, Span(CBB_data(cbb.get()), CBB_len(cbb.get()))}); } template static bool MLDSASigGen(const Span args[], ReplyCallback write_reply) { - CBS cbs = bssl::MakeConstSpan(args[0]); + CBS cbs = args[0]; auto priv = std::make_unique(); if (ParsePrivateKey(priv.get(), &cbs) != bcm_status::approved) { LOG_ERROR("Failed to parse ML-DSA private key.\n"); @@ -2314,7 +2314,7 @@ static bool MLDSASigVer(const Span args[], const Span msg = args[1]; const Span signature = args[2]; - CBS cbs = bssl::MakeConstSpan(pub_key_bytes); + CBS cbs = pub_key_bytes; auto pub = std::make_unique(); if (ParsePublicKey(pub.get(), &cbs) != bcm_status::approved) { LOG_ERROR("Failed to parse ML-DSA public key.\n"); @@ -2358,7 +2358,7 @@ static bool MLKEMKeyGen(const Span args[], } return write_reply( - {pub_key_bytes, MakeConstSpan(CBB_data(cbb.get()), CBB_len(cbb.get()))}); + {pub_key_bytes, Span(CBB_data(cbb.get()), CBB_len(cbb.get()))}); } template args[], } auto pub = std::make_unique(); - CBS cbs = bssl::MakeConstSpan(pub_key_bytes); + CBS cbs = pub_key_bytes; if (!bcm_success(ParsePublic(pub.get(), &cbs)) || CBS_len(&cbs) != 0) { LOG_ERROR("Failed to parse public key.\n"); return false; @@ -2398,7 +2398,7 @@ static bool MLKEMDecap(const Span args[], const Span ciphertext = args[1]; auto priv = std::make_unique(); - CBS cbs = bssl::MakeConstSpan(priv_key_bytes); + CBS cbs = priv_key_bytes; if (!bcm_success(ParsePrivate(priv.get(), &cbs))) { LOG_ERROR("Failed to parse private key.\n"); return false; From 435e87ba469520c7378dfe6c4551a8028670584b Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sat, 11 Jan 2025 11:07:01 -0500 Subject: [PATCH 44/64] Use more span patterns for strings vs bytes There's certainly lots more to rework over time, but here are some easy ones. Bug: 42290600 Change-Id: I378cc58d716a3178dbcc3f2a7272ff13f37814ff Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75209 Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- crypto/bio/bio_test.cc | 3 +- crypto/pkcs8/pkcs12_test.cc | 13 ++++---- crypto/test/test_util.h | 10 ++---- crypto/x509/x509_test.cc | 5 ++- fuzz/ssl_ctx_api.cc | 2 +- pki/encode_values_unittest.cc | 29 ++++++---------- pki/input_unittest.cc | 4 +-- ssl/handshake.cc | 6 ++-- ssl/s3_both.cc | 12 +++---- ssl/ssl_lib.cc | 4 +-- ssl/test/bssl_shim.cc | 33 ++++++++----------- ssl/test/test_config.cc | 11 +++---- util/fipstools/acvp/modulewrapper/main.cc | 15 +++------ .../acvp/modulewrapper/modulewrapper.cc | 25 ++++++-------- 14 files changed, 66 insertions(+), 106 deletions(-) diff --git a/crypto/bio/bio_test.cc b/crypto/bio/bio_test.cc index 96d2191602..4a7f337232 100644 --- a/crypto/bio/bio_test.cc +++ b/crypto/bio/bio_test.cc @@ -356,8 +356,7 @@ TEST(BIOTest, Printf) { const uint8_t *contents; size_t len; ASSERT_TRUE(BIO_mem_contents(bio.get(), &contents, &len)); - EXPECT_EQ("test " + in, - std::string(reinterpret_cast(contents), len)); + EXPECT_EQ("test " + in, bssl::BytesAsStringView(bssl::Span(contents, len))); ASSERT_TRUE(BIO_reset(bio.get())); } diff --git a/crypto/pkcs8/pkcs12_test.cc b/crypto/pkcs8/pkcs12_test.cc index fd80607c0f..14d608c19e 100644 --- a/crypto/pkcs8/pkcs12_test.cc +++ b/crypto/pkcs8/pkcs12_test.cc @@ -56,9 +56,8 @@ static void TestImpl(const char *name, bssl::Span der, if (friendly_name == nullptr) { EXPECT_EQ(nullptr, actual_name); } else { - EXPECT_EQ(friendly_name, - std::string(reinterpret_cast(actual_name), - static_cast(actual_name_len))); + EXPECT_EQ(friendly_name, bssl::BytesAsStringView( + bssl::Span(actual_name, actual_name_len))); } } @@ -381,8 +380,8 @@ static void TestRoundTrip(const char *password, const char *name, if (name == NULL) { EXPECT_EQ(nullptr, actual_name); } else { - EXPECT_EQ(name, std::string(reinterpret_cast(actual_name), - static_cast(actual_name_len))); + EXPECT_EQ(name, bssl::BytesAsStringView( + bssl::Span(actual_name, actual_name_len))); } } @@ -650,8 +649,8 @@ TEST(PKCS12Test, CreateWithAlias) { const unsigned char *parsed_alias = X509_alias_get0(sk_X509_value(ca_certs, 0), &alias_len); ASSERT_TRUE(parsed_alias); - ASSERT_EQ(alias, std::string(reinterpret_cast(parsed_alias), - static_cast(alias_len))); + ASSERT_EQ(alias, + bssl::BytesAsStringView(bssl::Span(parsed_alias, alias_len))); } // PKCS#12 is built on top of PKCS#7, a misdesigned, overgeneralized combinator diff --git a/crypto/test/test_util.h b/crypto/test/test_util.h index 7815093a6d..b9d4b92173 100644 --- a/crypto/test/test_util.h +++ b/crypto/test/test_util.h @@ -21,7 +21,7 @@ #include #include -#include +#include #include #include @@ -43,12 +43,8 @@ struct Bytes { Bytes(const char *data_arg, size_t len_arg) : span_(reinterpret_cast(data_arg), len_arg) {} - explicit Bytes(const char *str) - : span_(reinterpret_cast(str), strlen(str)) {} - explicit Bytes(const std::string &str) - : span_(reinterpret_cast(str.data()), str.size()) {} - explicit Bytes(bssl::Span span) - : span_(span) {} + explicit Bytes(std::string_view str) : span_(bssl::StringAsBytes(str)) {} + explicit Bytes(bssl::Span span) : span_(span) {} bssl::Span span_; }; diff --git a/crypto/x509/x509_test.cc b/crypto/x509/x509_test.cc index 589d395ae0..ad1297af4f 100644 --- a/crypto/x509/x509_test.cc +++ b/crypto/x509/x509_test.cc @@ -2774,8 +2774,7 @@ TEST(X509Test, TestPrintUTCTIME) { size_t len; ASSERT_TRUE(BIO_mem_contents(bio.get(), &contents, &len)); EXPECT_EQ(ok, (strcmp(t.want, "Bad time value") != 0) ? 1 : 0); - EXPECT_EQ(t.want, - std::string(reinterpret_cast(contents), len)); + EXPECT_EQ(t.want, bssl::BytesAsStringView(bssl::Span(contents, len))); } } @@ -5440,7 +5439,7 @@ TEST(X509Test, Print) { const uint8_t *data; size_t data_len; ASSERT_TRUE(BIO_mem_contents(bio.get(), &data, &data_len)); - std::string print(reinterpret_cast(data), data_len); + auto print = bssl::BytesAsStringView(bssl::Span(data, data_len)); EXPECT_EQ(print, R"(Certificate: Data: Version: 3 (0x2) diff --git a/fuzz/ssl_ctx_api.cc b/fuzz/ssl_ctx_api.cc index 93e1363c65..e9aa8e8559 100644 --- a/fuzz/ssl_ctx_api.cc +++ b/fuzz/ssl_ctx_api.cc @@ -231,7 +231,7 @@ static bool GetString(std::string *out, CBS *cbs) { return false; } - out->assign(reinterpret_cast(CBS_data(&str)), CBS_len(&str)); + *out = bssl::BytesAsStringView(str); return true; } diff --git a/pki/encode_values_unittest.cc b/pki/encode_values_unittest.cc index 2e60a43102..9c6509de68 100644 --- a/pki/encode_values_unittest.cc +++ b/pki/encode_values_unittest.cc @@ -12,15 +12,6 @@ BSSL_NAMESPACE_BEGIN namespace der::test { -namespace { - -template -std::string_view ToStringView(const uint8_t (&data)[N]) { - return std::string_view(reinterpret_cast(data), N); -} - -} // namespace - TEST(EncodeValuesTest, EncodePosixTimeAsGeneralizedTime) { // Fri, 24 Jun 2016 17:04:54 GMT int64_t time = 1466787894; @@ -76,7 +67,7 @@ TEST(EncodeValuesTest, EncodeGeneralizedTime) { // Encode a time where no components have leading zeros. uint8_t out[kGeneralizedTimeLength]; ASSERT_TRUE(EncodeGeneralizedTime(time, out)); - EXPECT_EQ("20141218161259Z", ToStringView(out)); + EXPECT_EQ("20141218161259Z", bssl::BytesAsStringView(out)); // Test bounds on all components. Note the encoding function does not validate // the input is a valid time, only that it is encodable. @@ -87,7 +78,7 @@ TEST(EncodeValuesTest, EncodeGeneralizedTime) { time.minutes = 0; time.seconds = 0; ASSERT_TRUE(EncodeGeneralizedTime(time, out)); - EXPECT_EQ("00000000000000Z", ToStringView(out)); + EXPECT_EQ("00000000000000Z", bssl::BytesAsStringView(out)); time.year = 9999; time.month = 99; @@ -96,7 +87,7 @@ TEST(EncodeValuesTest, EncodeGeneralizedTime) { time.minutes = 99; time.seconds = 99; ASSERT_TRUE(EncodeGeneralizedTime(time, out)); - EXPECT_EQ("99999999999999Z", ToStringView(out)); + EXPECT_EQ("99999999999999Z", bssl::BytesAsStringView(out)); time.year = 10000; EXPECT_FALSE(EncodeGeneralizedTime(time, out)); @@ -118,23 +109,23 @@ TEST(EncodeValuesTest, EncodeUTCTime) { // Encode a time where no components have leading zeros. uint8_t out[kUTCTimeLength]; ASSERT_TRUE(EncodeUTCTime(time, out)); - EXPECT_EQ("141218161259Z", ToStringView(out)); + EXPECT_EQ("141218161259Z", bssl::BytesAsStringView(out)); time.year = 2049; ASSERT_TRUE(EncodeUTCTime(time, out)); - EXPECT_EQ("491218161259Z", ToStringView(out)); + EXPECT_EQ("491218161259Z", bssl::BytesAsStringView(out)); time.year = 2000; ASSERT_TRUE(EncodeUTCTime(time, out)); - EXPECT_EQ("001218161259Z", ToStringView(out)); + EXPECT_EQ("001218161259Z", bssl::BytesAsStringView(out)); time.year = 1999; ASSERT_TRUE(EncodeUTCTime(time, out)); - EXPECT_EQ("991218161259Z", ToStringView(out)); + EXPECT_EQ("991218161259Z", bssl::BytesAsStringView(out)); time.year = 1950; ASSERT_TRUE(EncodeUTCTime(time, out)); - EXPECT_EQ("501218161259Z", ToStringView(out)); + EXPECT_EQ("501218161259Z", bssl::BytesAsStringView(out)); time.year = 2050; EXPECT_FALSE(EncodeUTCTime(time, out)); @@ -151,7 +142,7 @@ TEST(EncodeValuesTest, EncodeUTCTime) { time.minutes = 0; time.seconds = 0; ASSERT_TRUE(EncodeUTCTime(time, out)); - EXPECT_EQ("000000000000Z", ToStringView(out)); + EXPECT_EQ("000000000000Z", bssl::BytesAsStringView(out)); time.year = 1999; time.month = 99; @@ -160,7 +151,7 @@ TEST(EncodeValuesTest, EncodeUTCTime) { time.minutes = 99; time.seconds = 99; ASSERT_TRUE(EncodeUTCTime(time, out)); - EXPECT_EQ("999999999999Z", ToStringView(out)); + EXPECT_EQ("999999999999Z", bssl::BytesAsStringView(out)); time.year = 2000; time.month = 100; diff --git a/pki/input_unittest.cc b/pki/input_unittest.cc index 6aa009d7ff..80d8a7f6f1 100644 --- a/pki/input_unittest.cc +++ b/pki/input_unittest.cc @@ -42,9 +42,7 @@ TEST(InputTest, LessThan) { TEST(InputTest, AsString) { Input input(kInput); - std::string expected_string(reinterpret_cast(kInput), - std::size(kInput)); - EXPECT_EQ(expected_string, input.AsString()); + EXPECT_EQ(bssl::BytesAsStringView(kInput), input.AsString()); } TEST(InputTest, StaticArray) { diff --git a/ssl/handshake.cc b/ssl/handshake.cc index 4ecb5fbdcb..84df6f0523 100644 --- a/ssl/handshake.cc +++ b/ssl/handshake.cc @@ -238,10 +238,8 @@ enum ssl_verify_result_t ssl_verify_peer_cert(SSL_HANDSHAKE *hs) { sk_CRYPTO_BUFFER_value(prev_session->certs.get(), i); const CRYPTO_BUFFER *new_cert = sk_CRYPTO_BUFFER_value(hs->new_session->certs.get(), i); - if (CRYPTO_BUFFER_len(old_cert) != CRYPTO_BUFFER_len(new_cert) || - OPENSSL_memcmp(CRYPTO_BUFFER_data(old_cert), - CRYPTO_BUFFER_data(new_cert), - CRYPTO_BUFFER_len(old_cert)) != 0) { + if (Span(CRYPTO_BUFFER_data(old_cert), CRYPTO_BUFFER_len(old_cert)) != + Span(CRYPTO_BUFFER_data(new_cert), CRYPTO_BUFFER_len(new_cert))) { OPENSSL_PUT_ERROR(SSL, SSL_R_SERVER_CERT_CHANGED); ssl_send_alert(ssl, SSL3_AL_FATAL, SSL_AD_ILLEGAL_PARAMETER); return ssl_verify_invalid; diff --git a/ssl/s3_both.cc b/ssl/s3_both.cc index 8b7e4ec261..772a1b6f6a 100644 --- a/ssl/s3_both.cc +++ b/ssl/s3_both.cc @@ -468,16 +468,16 @@ ssl_open_record_t tls_open_handshake(SSL *ssl, size_t *out_consumed, // Some dedicated error codes for protocol mixups should the application // wish to interpret them differently. (These do not overlap with // ClientHello or V2ClientHello.) - const char *str = reinterpret_cast(in.data()); - if (strncmp("GET ", str, 4) == 0 || // - strncmp("POST ", str, 5) == 0 || // - strncmp("HEAD ", str, 5) == 0 || // - strncmp("PUT ", str, 4) == 0) { + auto str = bssl::BytesAsStringView(in); + if (str.substr(0, 4) == "GET " || // + str.substr(0, 5) == "POST " || // + str.substr(0, 5) == "HEAD " || // + str.substr(0, 4) == "PUT ") { OPENSSL_PUT_ERROR(SSL, SSL_R_HTTP_REQUEST); *out_alert = 0; return ssl_open_record_error; } - if (strncmp("CONNE", str, 5) == 0) { + if (str.substr(0, 5) == "CONNE") { OPENSSL_PUT_ERROR(SSL, SSL_R_HTTPS_PROXY_REQUEST); *out_alert = 0; return ssl_open_record_error; diff --git a/ssl/ssl_lib.cc b/ssl/ssl_lib.cc index 41d071caa3..a77b50b0f7 100644 --- a/ssl/ssl_lib.cc +++ b/ssl/ssl_lib.cc @@ -178,10 +178,10 @@ bool ssl_log_secret(const SSL *ssl, const char *label, ScopedCBB cbb; Array line; + auto label_bytes = bssl::StringAsBytes(label); if (!CBB_init(cbb.get(), strlen(label) + 1 + SSL3_RANDOM_SIZE * 2 + 1 + secret.size() * 2 + 1) || - !CBB_add_bytes(cbb.get(), reinterpret_cast(label), - strlen(label)) || + !CBB_add_bytes(cbb.get(), label_bytes.data(), label_bytes.size()) || !CBB_add_u8(cbb.get(), ' ') || !cbb_add_hex_consttime(cbb.get(), ssl->s3->client_random) || !CBB_add_u8(cbb.get(), ' ') || diff --git a/ssl/test/bssl_shim.cc b/ssl/test/bssl_shim.cc index 968b95cabf..5079f7eed4 100644 --- a/ssl/test/bssl_shim.cc +++ b/ssl/test/bssl_shim.cc @@ -332,8 +332,8 @@ static bool CheckAuthProperties(SSL *ssl, bool is_resume, const uint8_t *data; size_t len; SSL_get0_ocsp_response(ssl, &data, &len); - if (config->expect_ocsp_response.size() != len || - OPENSSL_memcmp(config->expect_ocsp_response.data(), data, len) != 0) { + if (bssl::StringAsBytes(config->expect_ocsp_response) != + bssl::Span(data, len)) { fprintf(stderr, "OCSP response mismatch\n"); return false; } @@ -343,9 +343,8 @@ static bool CheckAuthProperties(SSL *ssl, bool is_resume, const uint8_t *data; size_t len; SSL_get0_signed_cert_timestamp_list(ssl, &data, &len); - if (config->expect_signed_cert_timestamps.size() != len || - OPENSSL_memcmp(config->expect_signed_cert_timestamps.data(), data, - len) != 0) { + if (bssl::StringAsBytes(config->expect_signed_cert_timestamps) != + bssl::Span(data, len)) { fprintf(stderr, "SCT list mismatch\n"); return false; } @@ -523,9 +522,8 @@ static bool CheckHandshakeProperties(SSL *ssl, bool is_resume, const uint8_t *next_proto; unsigned next_proto_len; SSL_get0_next_proto_negotiated(ssl, &next_proto, &next_proto_len); - if (next_proto_len != config->expect_next_proto.size() || - OPENSSL_memcmp(next_proto, config->expect_next_proto.data(), - next_proto_len) != 0) { + if (bssl::StringAsBytes(config->expect_next_proto) != + bssl::Span(next_proto, next_proto_len)) { fprintf(stderr, "negotiated next proto mismatch\n"); return false; } @@ -539,8 +537,8 @@ static bool CheckHandshakeProperties(SSL *ssl, bool is_resume, const uint8_t *alpn_proto; unsigned alpn_proto_len; SSL_get0_alpn_selected(ssl, &alpn_proto, &alpn_proto_len); - if (alpn_proto_len != expect_alpn.size() || - OPENSSL_memcmp(alpn_proto, expect_alpn.data(), alpn_proto_len) != 0) { + if (bssl::StringAsBytes(expect_alpn) != + bssl::Span(alpn_proto, alpn_proto_len)) { fprintf(stderr, "negotiated alpn proto mismatch\n"); return false; } @@ -558,9 +556,8 @@ static bool CheckHandshakeProperties(SSL *ssl, bool is_resume, const uint8_t *peer_settings; size_t peer_settings_len; SSL_get0_peer_application_settings(ssl, &peer_settings, &peer_settings_len); - if (expect_settings != - std::string(reinterpret_cast(peer_settings), - peer_settings_len)) { + if (bssl::StringAsBytes(expect_settings) != + bssl::Span(peer_settings, peer_settings_len)) { fprintf(stderr, "peer application settings mismatch\n"); return false; } @@ -569,10 +566,8 @@ static bool CheckHandshakeProperties(SSL *ssl, bool is_resume, const uint8_t *peer_params; size_t peer_params_len; SSL_get_peer_quic_transport_params(ssl, &peer_params, &peer_params_len); - if (peer_params_len != config->expect_quic_transport_params.size() || - OPENSSL_memcmp(peer_params, - config->expect_quic_transport_params.data(), - peer_params_len) != 0) { + if (bssl::StringAsBytes(config->expect_quic_transport_params) != + bssl::Span(peer_params, peer_params_len)) { fprintf(stderr, "QUIC transport params mismatch\n"); return false; } @@ -584,9 +579,7 @@ static bool CheckHandshakeProperties(SSL *ssl, bool is_resume, fprintf(stderr, "no channel id negotiated\n"); return false; } - if (config->expect_channel_id.size() != 64 || - OPENSSL_memcmp(config->expect_channel_id.data(), channel_id, 64) != - 0) { + if (bssl::StringAsBytes(config->expect_channel_id) != channel_id) { fprintf(stderr, "channel id mismatch\n"); return false; } diff --git a/ssl/test/test_config.cc b/ssl/test/test_config.cc index 1396b2cc30..fbe3bbfd7d 100644 --- a/ssl/test/test_config.cc +++ b/ssl/test/test_config.cc @@ -961,9 +961,8 @@ static int AlpnSelectCallback(SSL *ssl, const uint8_t **out, uint8_t *outlen, } if (!config->expect_advertised_alpn.empty() && - (config->expect_advertised_alpn.size() != inlen || - OPENSSL_memcmp(config->expect_advertised_alpn.data(), in, inlen) != - 0)) { + bssl::StringAsBytes(config->expect_advertised_alpn) != + bssl::Span(in, inlen)) { fprintf(stderr, "bad ALPN select callback inputs.\n"); exit(1); } @@ -1577,10 +1576,8 @@ static bool CheckCertificateRequest(SSL *ssl) { const uint8_t *certificate_types; size_t certificate_types_len = SSL_get0_certificate_types(ssl, &certificate_types); - if (certificate_types_len != config->expect_certificate_types.size() || - OPENSSL_memcmp(certificate_types, - config->expect_certificate_types.data(), - certificate_types_len) != 0) { + if (bssl::StringAsBytes(config->expect_certificate_types) != + bssl::Span(certificate_types, certificate_types_len)) { fprintf(stderr, "certificate types mismatch.\n"); return false; } diff --git a/util/fipstools/acvp/modulewrapper/main.cc b/util/fipstools/acvp/modulewrapper/main.cc index 6e4bd49e48..b5461e6da4 100644 --- a/util/fipstools/acvp/modulewrapper/main.cc +++ b/util/fipstools/acvp/modulewrapper/main.cc @@ -17,6 +17,7 @@ #include #include #include +#include #include #include @@ -24,10 +25,6 @@ #include "modulewrapper.h" -static bool EqString(bssl::Span cmd, const char *str) { - return cmd.size() == strlen(str) && memcmp(str, cmd.data(), cmd.size()) == 0; -} - int main(int argc, char **argv) { if (argc == 2 && strcmp(argv[1], "--version") == 0) { printf("Built for architecture: "); @@ -95,7 +92,8 @@ int main(int argc, char **argv) { return 1; } - if (EqString(args[0], "flush")) { + auto name = bssl::BytesAsStringView(args[0]); + if (name == "flush") { if (!bssl::acvp::FlushBuffer(STDOUT_FILENO)) { abort(); } @@ -107,12 +105,9 @@ int main(int argc, char **argv) { return 2; } - auto &reply_callback = - EqString(args[0], "getConfig") ? write_reply : buffer_reply; + auto &reply_callback = name == "getConfig" ? write_reply : buffer_reply; if (!handler(args.subspan(1).data(), reply_callback)) { - const std::string name(reinterpret_cast(args[0].data()), - args[0].size()); - fprintf(stderr, "\'%s\' operation failed.\n", name.c_str()); + fprintf(stderr, "\'%s\' operation failed.\n", std::string(name).c_str()); return 3; } } diff --git a/util/fipstools/acvp/modulewrapper/modulewrapper.cc b/util/fipstools/acvp/modulewrapper/modulewrapper.cc index 92f7fa9c05..af5d37c7c1 100644 --- a/util/fipstools/acvp/modulewrapper/modulewrapper.cc +++ b/util/fipstools/acvp/modulewrapper/modulewrapper.cc @@ -15,6 +15,7 @@ #include #include #include +#include #include #include @@ -1060,8 +1061,7 @@ static bool GetConfig(const Span args[], ] } ])"; - return write_reply({Span( - reinterpret_cast(kConfig), sizeof(kConfig) - 1)}); + return write_reply({bssl::StringAsBytes(kConfig)}); } static bool Flush(const Span args[], ReplyCallback write_reply) { @@ -1100,8 +1100,7 @@ static bool HashMCT(const Span args[], memcpy(buf + DigestLength * 2, digest, DigestLength); } - return write_reply( - {Span(buf + 2 * DigestLength, DigestLength)}); + return write_reply({Span(buf).subspan(2 * DigestLength, DigestLength)}); } static uint32_t GetIterations(const Span iterations_bytes) { @@ -2106,7 +2105,7 @@ static bool TLSKDF(const Span args[], ReplyCallback write_reply) { const Span out_len_bytes = args[0]; const Span secret = args[1]; - const Span label = args[2]; + const std::string_view label = bssl::BytesAsStringView(args[2]); const Span seed1 = args[3]; const Span seed2 = args[4]; const EVP_MD *md = MDFunc(); @@ -2117,11 +2116,10 @@ static bool TLSKDF(const Span args[], } memcpy(&out_len, out_len_bytes.data(), sizeof(out_len)); - std::vector out(static_cast(out_len)); + std::vector out(size_t{out_len}); if (!CRYPTO_tls1_prf(md, out.data(), out.size(), secret.data(), secret.size(), - reinterpret_cast(label.data()), - label.size(), seed1.data(), seed1.size(), seed2.data(), - seed2.size())) { + label.data(), label.size(), seed1.data(), seed1.size(), + seed2.data(), seed2.size())) { return 0; } @@ -2621,10 +2619,9 @@ static constexpr struct { }; Handler FindHandler(Span> args) { - const bssl::Span algorithm = args[0]; + auto algorithm = bssl::BytesAsStringView(args[0]); for (const auto &func : kFunctions) { - if (algorithm.size() == strlen(func.name) && - memcmp(algorithm.data(), func.name, algorithm.size()) == 0) { + if (algorithm == func.name) { if (args.size() - 1 != func.num_expected_args) { LOG_ERROR("\'%s\' operation received %zu arguments but expected %u.\n", func.name, args.size() - 1, func.num_expected_args); @@ -2635,9 +2632,7 @@ Handler FindHandler(Span> args) { } } - const std::string name(reinterpret_cast(algorithm.data()), - algorithm.size()); - LOG_ERROR("Unknown operation: %s\n", name.c_str()); + LOG_ERROR("Unknown operation: %s\n", std::string(algorithm).c_str()); return nullptr; } From 477691cafb15b267d1d6e40f28b02e2e06da1ec8 Mon Sep 17 00:00:00 2001 From: Bob Beck Date: Fri, 10 Jan 2025 22:33:31 +0000 Subject: [PATCH 45/64] Add tests for TIME functions that accept offsets To consciously change them in the future without accidental breakage. Change-Id: Id5d073f8781e63cbf6dbb20cc2615e6655b28222 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75129 Reviewed-by: David Benjamin Auto-Submit: Bob Beck Commit-Queue: David Benjamin --- crypto/asn1/asn1_test.cc | 45 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/crypto/asn1/asn1_test.cc b/crypto/asn1/asn1_test.cc index 7ac9d0e1f8..c54ed29d5e 100644 --- a/crypto/asn1/asn1_test.cc +++ b/crypto/asn1/asn1_test.cc @@ -1159,6 +1159,51 @@ TEST(ASN1Test, TimeSetString) { EXPECT_FALSE(ASN1_TIME_set_string_X509(nullptr, "19700101000000-0400")); } +TEST(ASN1Test, UTCTimeZoneOffsets) { + bssl::UniquePtr s(ASN1_STRING_new()); + ASSERT_TRUE(s); + + ASSERT_TRUE(ASN1_UTCTIME_set_string(s.get(), "700101000000Z")); + EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(s.get())); + EXPECT_EQ("700101000000Z", ASN1StringToStdString(s.get())); + + // UTCTIME_set_string should not allow a timezeone offset + EXPECT_FALSE(ASN1_UTCTIME_set_string(s.get(), "700101000000-0400")); + + // Forcibly construct a utc time with a timezone offset. + ASSERT_TRUE(ASN1_STRING_set(s.get(), "700101000000-0400", + strlen("700101000000-0400"))); + EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(s.get())); + EXPECT_EQ("700101000000-0400", ASN1StringToStdString(s.get())); + + // check is expected to be valid with timezeone offsets + ASSERT_TRUE(ASN1_UTCTIME_check(s.get())); + + // cmp_time_t allows timezeone offset, and we are expected to be 4 hours + // behind the epoch. + EXPECT_EQ(ASN1_UTCTIME_cmp_time_t(s.get(), (4 * 60 * 60 * -1)), 0); + + // Conscrypt expects a utc time with an arbitrary offset to be + // accepted by ASN1_TIME_to_generalizedtime. + bssl::UniquePtr g( + ASN1_TIME_to_generalizedtime(s.get(), nullptr)); + ASSERT_TRUE(g); + EXPECT_EQ(V_ASN1_GENERALIZEDTIME, ASN1_STRING_type(g.get())); + // crbug.com/389147378 + // This should be the correct value + // EXPECT_EQ("19691231200000Z", ASN1StringToStdString(g.get())); + // But this function currently generates invalid times. + EXPECT_EQ("19700101000000-0400", ASN1StringToStdString(g.get())); + // Force this to be a generalized time the same as our utc time + EXPECT_TRUE(ASN1_GENERALIZEDTIME_set_string(g.get(), "19691231200000Z")); + + // ASN1_TIME_diff is expected to accept timezone offsets + int days, secs; + EXPECT_TRUE(ASN1_TIME_diff(&days, &secs, s.get(), g.get())); + EXPECT_EQ(days, 0); + EXPECT_EQ(secs, 0); +} + TEST(ASN1Test, AdjTime) { struct tm tm1, tm2; int days, secs; From 628b161fc2836b5d5605f073703819b3829d32c6 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Fri, 10 Jan 2025 16:27:26 -0500 Subject: [PATCH 46/64] Remove a redundant call to freeze_private_key While I'm here, rename mod_exp to rsa_mod_exp_crt. It is specifically the CRT implementation. Bug: 42290186 Change-Id: Ie80831f3e1114ba446f73e448e158602abada8be Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75149 Reviewed-by: Bob Beck Commit-Queue: David Benjamin --- crypto/fipsmodule/rsa/rsa_impl.cc.inc | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/crypto/fipsmodule/rsa/rsa_impl.cc.inc b/crypto/fipsmodule/rsa/rsa_impl.cc.inc index 2773636769..0b931e90b3 100644 --- a/crypto/fipsmodule/rsa/rsa_impl.cc.inc +++ b/crypto/fipsmodule/rsa/rsa_impl.cc.inc @@ -433,7 +433,7 @@ err: } -static int mod_exp(BIGNUM *r0, const BIGNUM *I, RSA *rsa, BN_CTX *ctx); +static int rsa_mod_exp_crt(BIGNUM *r0, const BIGNUM *I, RSA *rsa, BN_CTX *ctx); int rsa_verify_raw_no_self_test(RSA *rsa, size_t *out_len, uint8_t *out, size_t max_out, const uint8_t *in, @@ -618,7 +618,7 @@ int rsa_default_private_transform(RSA *rsa, uint8_t *out, const uint8_t *in, // but it is true for keys generated by us and all common implementations. bn_less_than_montgomery_R(rsa->q, rsa->mont_p) && bn_less_than_montgomery_R(rsa->p, rsa->mont_q)) { - if (!mod_exp(result, f, rsa, ctx)) { + if (!rsa_mod_exp_crt(result, f, rsa, ctx)) { goto err; } } else if (!BN_mod_exp_mont_consttime(result, f, rsa->d_fixed, rsa->n, ctx, @@ -707,7 +707,7 @@ static int mod_montgomery(BIGNUM *r, const BIGNUM *I, const BIGNUM *p, return 1; } -static int mod_exp(BIGNUM *r0, const BIGNUM *I, RSA *rsa, BN_CTX *ctx) { +static int rsa_mod_exp_crt(BIGNUM *r0, const BIGNUM *I, RSA *rsa, BN_CTX *ctx) { assert(ctx != NULL); assert(rsa->n != NULL); @@ -730,10 +730,6 @@ static int mod_exp(BIGNUM *r0, const BIGNUM *I, RSA *rsa, BN_CTX *ctx) { goto err; } - if (!freeze_private_key(rsa, ctx)) { - goto err; - } - // Use the minimal-width versions of |n|, |p|, and |q|. Either works, but if // someone gives us non-minimal values, these will be slightly more efficient // on the non-Montgomery operations. From 4bc7c0f06085051e5625b519b32060a77fb15b54 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Fri, 10 Jan 2025 16:27:34 -0500 Subject: [PATCH 47/64] Initialize iqmp during keygen directly freeze_private_key mostly existed to fill in cached values, but it also would compute iqmp for keygen. Instead, just compute iqmp in keygen. This does mean we have two places where we might construct mont_p, but this should make moving the initialization process around a bit cleaner. This does mean we'll no longer silently fill in a missing iqmp, but I don't believe this is an externally-visible behavior change. RSA_set0_crt_params won't let you set iqmp without also setting dmp1 and dmq1. Bug: 42290186 Change-Id: Ib625d41e665efaf3b6a068fe9b6eb40b9da8ee29 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75150 Commit-Queue: David Benjamin Reviewed-by: Bob Beck --- crypto/fipsmodule/rsa/rsa_impl.cc.inc | 48 ++++++++++++--------------- 1 file changed, 22 insertions(+), 26 deletions(-) diff --git a/crypto/fipsmodule/rsa/rsa_impl.cc.inc b/crypto/fipsmodule/rsa/rsa_impl.cc.inc index 0b931e90b3..5c124d3817 100644 --- a/crypto/fipsmodule/rsa/rsa_impl.cc.inc +++ b/crypto/fipsmodule/rsa/rsa_impl.cc.inc @@ -170,7 +170,6 @@ static int freeze_private_key(RSA *rsa, BN_CTX *ctx) { goto err; } } - const BIGNUM *p_fixed = &rsa->mont_p->N; if (rsa->mont_q == NULL) { rsa->mont_q = BN_MONT_CTX_new_consttime(rsa->q, ctx); @@ -178,22 +177,12 @@ static int freeze_private_key(RSA *rsa, BN_CTX *ctx) { goto err; } } - const BIGNUM *q_fixed = &rsa->mont_q->N; - - if (rsa->dmp1 != NULL && rsa->dmq1 != NULL) { - // Key generation relies on this function to compute |iqmp|. - if (rsa->iqmp == NULL) { - BIGNUM *iqmp = BN_new(); - if (iqmp == NULL || !bn_mod_inverse_secret_prime(iqmp, rsa->q, rsa->p, - ctx, rsa->mont_p)) { - BN_free(iqmp); - goto err; - } - rsa->iqmp = iqmp; - } + if (rsa->dmp1 != NULL && rsa->dmq1 != NULL && rsa->iqmp != NULL) { // CRT components are only publicly bounded by their corresponding // moduli's bit lengths. + const BIGNUM *p_fixed = &rsa->mont_p->N; + const BIGNUM *q_fixed = &rsa->mont_q->N; if (!ensure_fixed_copy(&rsa->dmp1_fixed, rsa->dmp1, p_fixed->width) || !ensure_fixed_copy(&rsa->dmq1_fixed, rsa->dmq1, q_fixed->width)) { goto err; @@ -1054,10 +1043,14 @@ static int rsa_generate_key_impl(RSA *rsa, int bits, const BIGNUM *e_value, } // We need the RSA components non-NULL. - if (!ensure_bignum(&rsa->n) || !ensure_bignum(&rsa->d) || - !ensure_bignum(&rsa->e) || !ensure_bignum(&rsa->p) || - !ensure_bignum(&rsa->q) || !ensure_bignum(&rsa->dmp1) || - !ensure_bignum(&rsa->dmq1)) { + if (!ensure_bignum(&rsa->n) || // + !ensure_bignum(&rsa->d) || // + !ensure_bignum(&rsa->e) || // + !ensure_bignum(&rsa->p) || // + !ensure_bignum(&rsa->q) || // + !ensure_bignum(&rsa->dmp1) || // + !ensure_bignum(&rsa->dmq1) || // + !ensure_bignum(&rsa->iqmp)) { goto bn_err; } @@ -1143,6 +1136,14 @@ static int rsa_generate_key_impl(RSA *rsa, int bits, const BIGNUM *e_value, // |rsa->n| is computed from the private key, but is public. bn_declassify(rsa->n); + // Calculate q^-1 mod p. + rsa->mont_p = BN_MONT_CTX_new_consttime(rsa->p, ctx); + if (rsa->mont_p == NULL || // + !bn_mod_inverse_secret_prime(rsa->iqmp, rsa->q, rsa->p, ctx, + rsa->mont_p)) { + goto bn_err; + } + // Sanity-check that |rsa->n| has the specified size. This is implied by // |generate_prime|'s bounds. if (BN_num_bits(rsa->n) != (unsigned)bits) { @@ -1150,16 +1151,11 @@ static int rsa_generate_key_impl(RSA *rsa, int bits, const BIGNUM *e_value, goto err; } - // Call |freeze_private_key| to compute the inverse of q mod p, by way of - // |rsa->mont_p|. - if (!freeze_private_key(rsa, ctx)) { - goto bn_err; - } - // The key generation process is complex and thus error-prone. It could be // disastrous to generate and then use a bad key so double-check that the key - // makes sense. - if (!RSA_check_key(rsa)) { + // makes sense. Also, while |rsa| is mutable, fill in the cached components. + if (!RSA_check_key(rsa) || + !freeze_private_key(rsa, ctx)) { OPENSSL_PUT_ERROR(RSA, RSA_R_INTERNAL_ERROR); goto err; } From 7db3433bd4466b20ade77494cd3bb03396441aef Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Fri, 10 Jan 2025 17:39:28 -0500 Subject: [PATCH 48/64] Switch some tests to std::string_view Noticed this as I was looking over the CL. May as well. Bug: 42290600 Change-Id: I9b32829077745ce98beb6f7a77b9d78548500a79 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75152 Reviewed-by: Bob Beck Commit-Queue: David Benjamin --- crypto/asn1/asn1_test.cc | 44 +++++++++++++++++++++------------------- 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/crypto/asn1/asn1_test.cc b/crypto/asn1/asn1_test.cc index c54ed29d5e..79cbeadcb2 100644 --- a/crypto/asn1/asn1_test.cc +++ b/crypto/asn1/asn1_test.cc @@ -17,6 +17,7 @@ #include #include +#include #include #include @@ -949,9 +950,10 @@ TEST(ASN1Test, StringToUTF8) { } } -static std::string ASN1StringToStdString(const ASN1_STRING *str) { - return std::string(ASN1_STRING_get0_data(str), - ASN1_STRING_get0_data(str) + ASN1_STRING_length(str)); +static std::string_view ASN1StringToStringView(const ASN1_STRING *str) { + return std::string_view( + reinterpret_cast(ASN1_STRING_get0_data(str)), + ASN1_STRING_length(str)); } static bool ASN1Time_check_posix(const ASN1_TIME *s, int64_t t) { @@ -1031,7 +1033,7 @@ TEST(ASN1Test, SetTime) { if (t.utc) { ASSERT_TRUE(utc); EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(utc.get())); - EXPECT_EQ(t.utc, ASN1StringToStdString(utc.get())); + EXPECT_EQ(t.utc, ASN1StringToStringView(utc.get())); EXPECT_TRUE(ASN1Time_check_posix(utc.get(), t.time)); EXPECT_EQ(ASN1_TIME_to_posix(utc.get(), &tt), 1); EXPECT_EQ(tt, t.time); @@ -1046,7 +1048,7 @@ TEST(ASN1Test, SetTime) { if (t.generalized) { ASSERT_TRUE(generalized); EXPECT_EQ(V_ASN1_GENERALIZEDTIME, ASN1_STRING_type(generalized.get())); - EXPECT_EQ(t.generalized, ASN1StringToStdString(generalized.get())); + EXPECT_EQ(t.generalized, ASN1StringToStringView(generalized.get())); EXPECT_TRUE(ASN1Time_check_posix(generalized.get(), t.time)); EXPECT_EQ(ASN1_TIME_to_posix(generalized.get(), &tt), 1); EXPECT_EQ(tt, t.time); @@ -1064,10 +1066,10 @@ TEST(ASN1Test, SetTime) { ASSERT_TRUE(choice); if (t.utc) { EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(choice.get())); - EXPECT_EQ(t.utc, ASN1StringToStdString(choice.get())); + EXPECT_EQ(t.utc, ASN1StringToStringView(choice.get())); } else { EXPECT_EQ(V_ASN1_GENERALIZEDTIME, ASN1_STRING_type(choice.get())); - EXPECT_EQ(t.generalized, ASN1StringToStdString(choice.get())); + EXPECT_EQ(t.generalized, ASN1StringToStringView(choice.get())); } EXPECT_TRUE(ASN1Time_check_posix(choice.get(), t.time)); EXPECT_EQ(ASN1_TIME_to_posix(choice.get(), &tt), 1); @@ -1084,47 +1086,47 @@ TEST(ASN1Test, TimeSetString) { ASSERT_TRUE(ASN1_UTCTIME_set_string(s.get(), "700101000000Z")); EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("700101000000Z", ASN1StringToStdString(s.get())); + EXPECT_EQ("700101000000Z", ASN1StringToStringView(s.get())); ASSERT_TRUE(ASN1_GENERALIZEDTIME_set_string(s.get(), "19700101000000Z")); EXPECT_EQ(V_ASN1_GENERALIZEDTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("19700101000000Z", ASN1StringToStdString(s.get())); + EXPECT_EQ("19700101000000Z", ASN1StringToStringView(s.get())); // |ASN1_TIME_set_string| accepts either format. It relies on there being no // overlap between the two. ASSERT_TRUE(ASN1_TIME_set_string(s.get(), "700101000000Z")); EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("700101000000Z", ASN1StringToStdString(s.get())); + EXPECT_EQ("700101000000Z", ASN1StringToStringView(s.get())); ASSERT_TRUE(ASN1_TIME_set_string(s.get(), "19700101000000Z")); EXPECT_EQ(V_ASN1_GENERALIZEDTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("19700101000000Z", ASN1StringToStdString(s.get())); + EXPECT_EQ("19700101000000Z", ASN1StringToStringView(s.get())); // |ASN1_TIME_set_string_X509| behaves similarly except it additionally // converts GeneralizedTime to UTCTime if it fits. ASSERT_TRUE(ASN1_TIME_set_string_X509(s.get(), "700101000000Z")); EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("700101000000Z", ASN1StringToStdString(s.get())); + EXPECT_EQ("700101000000Z", ASN1StringToStringView(s.get())); ASSERT_TRUE(ASN1_TIME_set_string_X509(s.get(), "19700101000000Z")); EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("700101000000Z", ASN1StringToStdString(s.get())); + EXPECT_EQ("700101000000Z", ASN1StringToStringView(s.get())); ASSERT_TRUE(ASN1_TIME_set_string_X509(s.get(), "19500101000000Z")); EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("500101000000Z", ASN1StringToStdString(s.get())); + EXPECT_EQ("500101000000Z", ASN1StringToStringView(s.get())); ASSERT_TRUE(ASN1_TIME_set_string_X509(s.get(), "19491231235959Z")); EXPECT_EQ(V_ASN1_GENERALIZEDTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("19491231235959Z", ASN1StringToStdString(s.get())); + EXPECT_EQ("19491231235959Z", ASN1StringToStringView(s.get())); ASSERT_TRUE(ASN1_TIME_set_string_X509(s.get(), "20491231235959Z")); EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("491231235959Z", ASN1StringToStdString(s.get())); + EXPECT_EQ("491231235959Z", ASN1StringToStringView(s.get())); ASSERT_TRUE(ASN1_TIME_set_string_X509(s.get(), "20500101000000Z")); EXPECT_EQ(V_ASN1_GENERALIZEDTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("20500101000000Z", ASN1StringToStdString(s.get())); + EXPECT_EQ("20500101000000Z", ASN1StringToStringView(s.get())); // Invalid inputs are rejected. EXPECT_FALSE(ASN1_UTCTIME_set_string(s.get(), "nope")); @@ -1165,7 +1167,7 @@ TEST(ASN1Test, UTCTimeZoneOffsets) { ASSERT_TRUE(ASN1_UTCTIME_set_string(s.get(), "700101000000Z")); EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("700101000000Z", ASN1StringToStdString(s.get())); + EXPECT_EQ("700101000000Z", ASN1StringToStringView(s.get())); // UTCTIME_set_string should not allow a timezeone offset EXPECT_FALSE(ASN1_UTCTIME_set_string(s.get(), "700101000000-0400")); @@ -1174,7 +1176,7 @@ TEST(ASN1Test, UTCTimeZoneOffsets) { ASSERT_TRUE(ASN1_STRING_set(s.get(), "700101000000-0400", strlen("700101000000-0400"))); EXPECT_EQ(V_ASN1_UTCTIME, ASN1_STRING_type(s.get())); - EXPECT_EQ("700101000000-0400", ASN1StringToStdString(s.get())); + EXPECT_EQ("700101000000-0400", ASN1StringToStringView(s.get())); // check is expected to be valid with timezeone offsets ASSERT_TRUE(ASN1_UTCTIME_check(s.get())); @@ -1191,9 +1193,9 @@ TEST(ASN1Test, UTCTimeZoneOffsets) { EXPECT_EQ(V_ASN1_GENERALIZEDTIME, ASN1_STRING_type(g.get())); // crbug.com/389147378 // This should be the correct value - // EXPECT_EQ("19691231200000Z", ASN1StringToStdString(g.get())); + // EXPECT_EQ("19691231200000Z", ASN1StringToStringView(g.get())); // But this function currently generates invalid times. - EXPECT_EQ("19700101000000-0400", ASN1StringToStdString(g.get())); + EXPECT_EQ("19700101000000-0400", ASN1StringToStringView(g.get())); // Force this to be a generalized time the same as our utc time EXPECT_TRUE(ASN1_GENERALIZEDTIME_set_string(g.get(), "19691231200000Z")); From e822de3aeb51d7c2ab17bea73ab3306b95254209 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Mon, 13 Jan 2025 15:24:42 -0500 Subject: [PATCH 49/64] Move RSA_blinding_on out of BCM May as well get this one out of the way. Bug: 42290606 Change-Id: Ia67d5fecbdecc458b2c016c7a6563530bf21811a Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75247 Commit-Queue: Bob Beck Auto-Submit: David Benjamin Reviewed-by: Bob Beck --- crypto/fipsmodule/rsa/rsa.cc.inc | 2 -- crypto/rsa_extra/rsa_extra.cc | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/crypto/fipsmodule/rsa/rsa.cc.inc b/crypto/fipsmodule/rsa/rsa.cc.inc index 1b1ebd1c2e..4e599646da 100644 --- a/crypto/fipsmodule/rsa/rsa.cc.inc +++ b/crypto/fipsmodule/rsa/rsa.cc.inc @@ -976,5 +976,3 @@ int rsa_private_transform(RSA *rsa, uint8_t *out, const uint8_t *in, int RSA_flags(const RSA *rsa) { return rsa->flags; } int RSA_test_flags(const RSA *rsa, int flags) { return rsa->flags & flags; } - -int RSA_blinding_on(RSA *rsa, BN_CTX *ctx) { return 1; } diff --git a/crypto/rsa_extra/rsa_extra.cc b/crypto/rsa_extra/rsa_extra.cc index a76db3f148..ecf4122056 100644 --- a/crypto/rsa_extra/rsa_extra.cc +++ b/crypto/rsa_extra/rsa_extra.cc @@ -14,4 +14,6 @@ #include +int RSA_blinding_on(RSA *rsa, BN_CTX *ctx) { return 1; } + void RSA_blinding_off(RSA *rsa) {} From bf4cf6938a77f1aca83ef529dce96681efd1e6c5 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Tue, 17 Dec 2024 10:52:31 -0500 Subject: [PATCH 50/64] Start using bssl::UniquePtr in libcrypto No types with destructors or anything yet, but let's start getting rid of the 'goto err's everywhere. I've opportunistically replaced NULL with nullptr while I'm here, though we should probably just replace that en masse in the library since even libssl is still a mix. (For some reason I thought unique_ptr != NULL didn't work because NULL was the zero literal, but actually unique_ptr != 0 works just fine.) Change-Id: I8d749b2ef42cc76e0a66a25033ce880be80d2693 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75227 Reviewed-by: Bob Beck Auto-Submit: David Benjamin Commit-Queue: Bob Beck --- crypto/evp/evp.cc | 40 +++---- crypto/evp/evp_asn1.cc | 252 +++++++++++++++++---------------------- crypto/evp/p_dsa_asn1.cc | 99 +++++++-------- crypto/evp/p_ec_asn1.cc | 19 ++- crypto/evp/pbkdf.cc | 39 +++--- 5 files changed, 191 insertions(+), 258 deletions(-) diff --git a/crypto/evp/evp.cc b/crypto/evp/evp.cc index d25325e223..54667e16fa 100644 --- a/crypto/evp/evp.cc +++ b/crypto/evp/evp.cc @@ -240,24 +240,20 @@ EVP_PKEY *EVP_PKEY_new_raw_private_key(int type, ENGINE *unused, break; default: OPENSSL_PUT_ERROR(EVP, EVP_R_UNSUPPORTED_ALGORITHM); - return 0; + return nullptr; } - EVP_PKEY *ret = EVP_PKEY_new(); - if (ret == NULL) { - goto err; + bssl::UniquePtr ret(EVP_PKEY_new()); + if (ret == nullptr) { + return nullptr; } - evp_pkey_set_method(ret, method); + evp_pkey_set_method(ret.get(), method); - if (!ret->ameth->set_priv_raw(ret, in, len)) { - goto err; + if (!ret->ameth->set_priv_raw(ret.get(), in, len)) { + return nullptr; } - return ret; - -err: - EVP_PKEY_free(ret); - return NULL; + return ret.release(); } EVP_PKEY *EVP_PKEY_new_raw_public_key(int type, ENGINE *unused, @@ -274,24 +270,20 @@ EVP_PKEY *EVP_PKEY_new_raw_public_key(int type, ENGINE *unused, break; default: OPENSSL_PUT_ERROR(EVP, EVP_R_UNSUPPORTED_ALGORITHM); - return 0; + return nullptr; } - EVP_PKEY *ret = EVP_PKEY_new(); - if (ret == NULL) { - goto err; + bssl::UniquePtr ret(EVP_PKEY_new()); + if (ret == nullptr) { + return nullptr; } - evp_pkey_set_method(ret, method); + evp_pkey_set_method(ret.get(), method); - if (!ret->ameth->set_pub_raw(ret, in, len)) { - goto err; + if (!ret->ameth->set_pub_raw(ret.get(), in, len)) { + return nullptr; } - return ret; - -err: - EVP_PKEY_free(ret); - return NULL; + return ret.release(); } int EVP_PKEY_get_raw_private_key(const EVP_PKEY *pkey, uint8_t *out, diff --git a/crypto/evp/evp_asn1.cc b/crypto/evp/evp_asn1.cc index c4ae5a3cf5..eacd8df6d5 100644 --- a/crypto/evp/evp_asn1.cc +++ b/crypto/evp/evp_asn1.cc @@ -57,42 +57,38 @@ EVP_PKEY *EVP_parse_public_key(CBS *cbs) { !CBS_get_asn1(&spki, &key, CBS_ASN1_BITSTRING) || CBS_len(&spki) != 0) { OPENSSL_PUT_ERROR(EVP, EVP_R_DECODE_ERROR); - return NULL; + return nullptr; } const EVP_PKEY_ASN1_METHOD *method = parse_key_type(&algorithm); - if (method == NULL) { + if (method == nullptr) { OPENSSL_PUT_ERROR(EVP, EVP_R_UNSUPPORTED_ALGORITHM); - return NULL; + return nullptr; } if (// Every key type defined encodes the key as a byte string with the same // conversion to BIT STRING. !CBS_get_u8(&key, &padding) || padding != 0) { OPENSSL_PUT_ERROR(EVP, EVP_R_DECODE_ERROR); - return NULL; + return nullptr; } // Set up an |EVP_PKEY| of the appropriate type. - EVP_PKEY *ret = EVP_PKEY_new(); - if (ret == NULL) { - goto err; + bssl::UniquePtr ret(EVP_PKEY_new()); + if (ret == nullptr) { + return nullptr; } - evp_pkey_set_method(ret, method); + evp_pkey_set_method(ret.get(), method); // Call into the type-specific SPKI decoding function. - if (ret->ameth->pub_decode == NULL) { + if (ret->ameth->pub_decode == nullptr) { OPENSSL_PUT_ERROR(EVP, EVP_R_UNSUPPORTED_ALGORITHM); - goto err; + return nullptr; } - if (!ret->ameth->pub_decode(ret, &algorithm, &key)) { - goto err; + if (!ret->ameth->pub_decode(ret.get(), &algorithm, &key)) { + return nullptr; } - return ret; - -err: - EVP_PKEY_free(ret); - return NULL; + return ret.release(); } int EVP_marshal_public_key(CBB *cbb, const EVP_PKEY *key) { @@ -114,37 +110,33 @@ EVP_PKEY *EVP_parse_private_key(CBS *cbs) { !CBS_get_asn1(&pkcs8, &algorithm, CBS_ASN1_SEQUENCE) || !CBS_get_asn1(&pkcs8, &key, CBS_ASN1_OCTETSTRING)) { OPENSSL_PUT_ERROR(EVP, EVP_R_DECODE_ERROR); - return NULL; + return nullptr; } const EVP_PKEY_ASN1_METHOD *method = parse_key_type(&algorithm); - if (method == NULL) { + if (method == nullptr) { OPENSSL_PUT_ERROR(EVP, EVP_R_UNSUPPORTED_ALGORITHM); - return NULL; + return nullptr; } // A PrivateKeyInfo ends with a SET of Attributes which we ignore. // Set up an |EVP_PKEY| of the appropriate type. - EVP_PKEY *ret = EVP_PKEY_new(); - if (ret == NULL) { - goto err; + bssl::UniquePtr ret(EVP_PKEY_new()); + if (ret == nullptr) { + return nullptr; } - evp_pkey_set_method(ret, method); + evp_pkey_set_method(ret.get(), method); // Call into the type-specific PrivateKeyInfo decoding function. - if (ret->ameth->priv_decode == NULL) { + if (ret->ameth->priv_decode == nullptr) { OPENSSL_PUT_ERROR(EVP, EVP_R_UNSUPPORTED_ALGORITHM); - goto err; + return nullptr; } - if (!ret->ameth->priv_decode(ret, &algorithm, &key)) { - goto err; + if (!ret->ameth->priv_decode(ret.get(), &algorithm, &key)) { + return nullptr; } - return ret; - -err: - EVP_PKEY_free(ret); - return NULL; + return ret.release(); } int EVP_marshal_private_key(CBB *cbb, const EVP_PKEY *key) { @@ -156,79 +148,74 @@ int EVP_marshal_private_key(CBB *cbb, const EVP_PKEY *key) { return key->ameth->priv_encode(cbb, key); } -static EVP_PKEY *old_priv_decode(CBS *cbs, int type) { - EVP_PKEY *ret = EVP_PKEY_new(); - if (ret == NULL) { - return NULL; +static bssl::UniquePtr old_priv_decode(CBS *cbs, int type) { + bssl::UniquePtr ret(EVP_PKEY_new()); + if (ret == nullptr) { + return nullptr; } switch (type) { case EVP_PKEY_EC: { - EC_KEY *ec_key = EC_KEY_parse_private_key(cbs, NULL); - if (ec_key == NULL || !EVP_PKEY_assign_EC_KEY(ret, ec_key)) { - EC_KEY_free(ec_key); - goto err; + bssl::UniquePtr ec_key(EC_KEY_parse_private_key(cbs, nullptr)); + if (ec_key == nullptr) { + return nullptr; } + EVP_PKEY_assign_EC_KEY(ret.get(), ec_key.release()); return ret; } case EVP_PKEY_DSA: { - DSA *dsa = DSA_parse_private_key(cbs); - if (dsa == NULL || !EVP_PKEY_assign_DSA(ret, dsa)) { - DSA_free(dsa); - goto err; + bssl::UniquePtr dsa(DSA_parse_private_key(cbs)); + if (dsa == nullptr) { + return nullptr; } + EVP_PKEY_assign_DSA(ret.get(), dsa.release()); return ret; } case EVP_PKEY_RSA: { - RSA *rsa = RSA_parse_private_key(cbs); - if (rsa == NULL || !EVP_PKEY_assign_RSA(ret, rsa)) { - RSA_free(rsa); - goto err; + bssl::UniquePtr rsa(RSA_parse_private_key(cbs)); + if (rsa == nullptr) { + return nullptr; } + EVP_PKEY_assign_RSA(ret.get(), rsa.release()); return ret; } default: OPENSSL_PUT_ERROR(EVP, EVP_R_UNKNOWN_PUBLIC_KEY_TYPE); - goto err; + return nullptr; } - -err: - EVP_PKEY_free(ret); - return NULL; } EVP_PKEY *d2i_PrivateKey(int type, EVP_PKEY **out, const uint8_t **inp, long len) { if (len < 0) { OPENSSL_PUT_ERROR(EVP, EVP_R_DECODE_ERROR); - return NULL; + return nullptr; } // Parse with the legacy format. CBS cbs; CBS_init(&cbs, *inp, (size_t)len); - EVP_PKEY *ret = old_priv_decode(&cbs, type); - if (ret == NULL) { + bssl::UniquePtr ret = old_priv_decode(&cbs, type); + if (ret == nullptr) { // Try again with PKCS#8. ERR_clear_error(); CBS_init(&cbs, *inp, (size_t)len); - ret = EVP_parse_private_key(&cbs); - if (ret == NULL) { - return NULL; + ret.reset(EVP_parse_private_key(&cbs)); + if (ret == nullptr) { + return nullptr; } if (ret->type != type) { OPENSSL_PUT_ERROR(EVP, EVP_R_DIFFERENT_KEY_TYPES); - EVP_PKEY_free(ret); - return NULL; + return nullptr; } } - if (out != NULL) { + if (out != nullptr) { EVP_PKEY_free(*out); - *out = ret; + *out = ret.get(); } *inp = CBS_data(&cbs); - return ret; + return ret.release(); } // num_elements parses one SEQUENCE from |in| and returns the number of elements @@ -302,61 +289,57 @@ int i2d_PublicKey(const EVP_PKEY *key, uint8_t **outp) { EVP_PKEY *d2i_PublicKey(int type, EVP_PKEY **out, const uint8_t **inp, long len) { - EVP_PKEY *ret = EVP_PKEY_new(); - if (ret == NULL) { - return NULL; + bssl::UniquePtr ret(EVP_PKEY_new()); + if (ret == nullptr) { + return nullptr; } CBS cbs; CBS_init(&cbs, *inp, len < 0 ? 0 : (size_t)len); switch (type) { case EVP_PKEY_RSA: { - RSA *rsa = RSA_parse_public_key(&cbs); - if (rsa == NULL || !EVP_PKEY_assign_RSA(ret, rsa)) { - RSA_free(rsa); - goto err; + bssl::UniquePtr rsa(RSA_parse_public_key(&cbs)); + if (rsa == nullptr) { + return nullptr; } + EVP_PKEY_assign_RSA(ret.get(), rsa.release()); break; } // Unlike OpenSSL, we do not support EC keys with this API. The raw EC // public key serialization requires knowing the group. In OpenSSL, calling - // this function with |EVP_PKEY_EC| and setting |out| to NULL does not work. - // It requires |*out| to include a partially-initialized |EVP_PKEY| to + // this function with |EVP_PKEY_EC| and setting |out| to nullptr does not + // work. It requires |*out| to include a partially-initialized |EVP_PKEY| to // extract the group. default: OPENSSL_PUT_ERROR(EVP, EVP_R_UNSUPPORTED_PUBLIC_KEY_TYPE); - goto err; + return nullptr; } *inp = CBS_data(&cbs); - if (out != NULL) { + if (out != nullptr) { EVP_PKEY_free(*out); - *out = ret; + *out = ret.get(); } - return ret; - -err: - EVP_PKEY_free(ret); - return NULL; + return ret.release(); } EVP_PKEY *d2i_PUBKEY(EVP_PKEY **out, const uint8_t **inp, long len) { if (len < 0) { - return NULL; + return nullptr; } CBS cbs; CBS_init(&cbs, *inp, (size_t)len); - EVP_PKEY *ret = EVP_parse_public_key(&cbs); - if (ret == NULL) { - return NULL; + bssl::UniquePtr ret(EVP_parse_public_key(&cbs)); + if (ret == nullptr) { + return nullptr; } - if (out != NULL) { + if (out != nullptr) { EVP_PKEY_free(*out); - *out = ret; + *out = ret.get(); } *inp = CBS_data(&cbs); - return ret; + return ret.release(); } int i2d_PUBKEY(const EVP_PKEY *pkey, uint8_t **outp) { @@ -375,86 +358,74 @@ int i2d_PUBKEY(const EVP_PKEY *pkey, uint8_t **outp) { RSA *d2i_RSA_PUBKEY(RSA **out, const uint8_t **inp, long len) { if (len < 0) { - return NULL; + return nullptr; } CBS cbs; CBS_init(&cbs, *inp, (size_t)len); - EVP_PKEY *pkey = EVP_parse_public_key(&cbs); - if (pkey == NULL) { - return NULL; + bssl::UniquePtr pkey(EVP_parse_public_key(&cbs)); + if (pkey == nullptr) { + return nullptr; } - RSA *rsa = EVP_PKEY_get1_RSA(pkey); - EVP_PKEY_free(pkey); - if (rsa == NULL) { - return NULL; + bssl::UniquePtr rsa(EVP_PKEY_get1_RSA(pkey.get())); + if (rsa == nullptr) { + return nullptr; } - if (out != NULL) { + if (out != nullptr) { RSA_free(*out); - *out = rsa; + *out = rsa.get(); } *inp = CBS_data(&cbs); - return rsa; + return rsa.release(); } int i2d_RSA_PUBKEY(const RSA *rsa, uint8_t **outp) { - if (rsa == NULL) { + if (rsa == nullptr) { return 0; } - int ret = -1; - EVP_PKEY *pkey = EVP_PKEY_new(); - if (pkey == NULL || - !EVP_PKEY_set1_RSA(pkey, (RSA *)rsa)) { - goto err; + bssl::UniquePtr pkey(EVP_PKEY_new()); + if (pkey == nullptr || + !EVP_PKEY_set1_RSA(pkey.get(), const_cast(rsa))) { + return -1; } - ret = i2d_PUBKEY(pkey, outp); - -err: - EVP_PKEY_free(pkey); - return ret; + return i2d_PUBKEY(pkey.get(), outp); } DSA *d2i_DSA_PUBKEY(DSA **out, const uint8_t **inp, long len) { if (len < 0) { - return NULL; + return nullptr; } CBS cbs; CBS_init(&cbs, *inp, (size_t)len); - EVP_PKEY *pkey = EVP_parse_public_key(&cbs); - if (pkey == NULL) { - return NULL; + bssl::UniquePtr pkey(EVP_parse_public_key(&cbs)); + if (pkey == nullptr) { + return nullptr; } - DSA *dsa = EVP_PKEY_get1_DSA(pkey); - EVP_PKEY_free(pkey); - if (dsa == NULL) { - return NULL; + bssl::UniquePtr dsa(EVP_PKEY_get1_DSA(pkey.get())); + if (dsa == nullptr) { + return nullptr; } - if (out != NULL) { + if (out != nullptr) { DSA_free(*out); - *out = dsa; + *out = dsa.get(); } *inp = CBS_data(&cbs); - return dsa; + return dsa.release(); } int i2d_DSA_PUBKEY(const DSA *dsa, uint8_t **outp) { - if (dsa == NULL) { + if (dsa == nullptr) { return 0; } - int ret = -1; - EVP_PKEY *pkey = EVP_PKEY_new(); - if (pkey == NULL || - !EVP_PKEY_set1_DSA(pkey, (DSA *)dsa)) { - goto err; + bssl::UniquePtr pkey(EVP_PKEY_new()); + if (pkey == nullptr || + !EVP_PKEY_set1_DSA(pkey.get(), const_cast(dsa))) { + return -1; } - ret = i2d_PUBKEY(pkey, outp); - -err: - EVP_PKEY_free(pkey); - return ret; + return i2d_PUBKEY(pkey.get(), outp); } EC_KEY *d2i_EC_PUBKEY(EC_KEY **out, const uint8_t **inp, long len) { @@ -485,16 +456,11 @@ int i2d_EC_PUBKEY(const EC_KEY *ec_key, uint8_t **outp) { return 0; } - int ret = -1; - EVP_PKEY *pkey = EVP_PKEY_new(); - if (pkey == NULL || - !EVP_PKEY_set1_EC_KEY(pkey, (EC_KEY *)ec_key)) { - goto err; + bssl::UniquePtr pkey(EVP_PKEY_new()); + if (pkey == nullptr || + !EVP_PKEY_set1_EC_KEY(pkey.get(), const_cast(ec_key))) { + return -1; } - ret = i2d_PUBKEY(pkey, outp); - -err: - EVP_PKEY_free(pkey); - return ret; + return i2d_PUBKEY(pkey.get(), outp); } diff --git a/crypto/evp/p_dsa_asn1.cc b/crypto/evp/p_dsa_asn1.cc index c04853bc49..f2e2a57d21 100644 --- a/crypto/evp/p_dsa_asn1.cc +++ b/crypto/evp/p_dsa_asn1.cc @@ -23,41 +23,38 @@ static int dsa_pub_decode(EVP_PKEY *out, CBS *params, CBS *key) { // See RFC 3279, section 2.3.2. // Parameters may or may not be present. - DSA *dsa; + bssl::UniquePtr dsa; if (CBS_len(params) == 0) { - dsa = DSA_new(); - if (dsa == NULL) { + dsa.reset(DSA_new()); + if (dsa == nullptr) { return 0; } } else { - dsa = DSA_parse_parameters(params); - if (dsa == NULL || CBS_len(params) != 0) { + dsa.reset(DSA_parse_parameters(params)); + if (dsa == nullptr || CBS_len(params) != 0) { OPENSSL_PUT_ERROR(EVP, EVP_R_DECODE_ERROR); - goto err; + return 0; } } dsa->pub_key = BN_new(); - if (dsa->pub_key == NULL) { - goto err; + if (dsa->pub_key == nullptr) { + return 0; } if (!BN_parse_asn1_unsigned(key, dsa->pub_key) || CBS_len(key) != 0) { OPENSSL_PUT_ERROR(EVP, EVP_R_DECODE_ERROR); - goto err; + return 0; } - EVP_PKEY_assign_DSA(out, dsa); + EVP_PKEY_assign_DSA(out, dsa.release()); return 1; - -err: - DSA_free(dsa); - return 0; } static int dsa_pub_encode(CBB *out, const EVP_PKEY *key) { const DSA *dsa = reinterpret_cast(key->pkey); - const int has_params = dsa->p != NULL && dsa->q != NULL && dsa->g != NULL; + const int has_params = + dsa->p != nullptr && dsa->q != nullptr && dsa->g != nullptr; // See RFC 5480, section 2. CBB spki, algorithm, oid, key_bitstring; @@ -80,52 +77,45 @@ static int dsa_priv_decode(EVP_PKEY *out, CBS *params, CBS *key) { // See PKCS#11, v2.40, section 2.5. // Decode parameters. - BN_CTX *ctx = NULL; - DSA *dsa = DSA_parse_parameters(params); - if (dsa == NULL || CBS_len(params) != 0) { + bssl::UniquePtr dsa(DSA_parse_parameters(params)); + if (dsa == nullptr || CBS_len(params) != 0) { OPENSSL_PUT_ERROR(EVP, EVP_R_DECODE_ERROR); - goto err; + return 0; } dsa->priv_key = BN_new(); - if (dsa->priv_key == NULL) { - goto err; + if (dsa->priv_key == nullptr) { + return 0; } if (!BN_parse_asn1_unsigned(key, dsa->priv_key) || CBS_len(key) != 0) { OPENSSL_PUT_ERROR(EVP, EVP_R_DECODE_ERROR); - goto err; + return 0; } // To avoid DoS attacks when importing private keys, check bounds on |dsa|. // This bounds |dsa->priv_key| against |dsa->q| and bounds |dsa->q|'s bit // width. - if (!dsa_check_key(dsa)) { + if (!dsa_check_key(dsa.get())) { OPENSSL_PUT_ERROR(EVP, EVP_R_DECODE_ERROR); - goto err; + return 0; } // Calculate the public key. - ctx = BN_CTX_new(); + bssl::UniquePtr ctx(BN_CTX_new()); dsa->pub_key = BN_new(); - if (ctx == NULL || dsa->pub_key == NULL || + if (ctx == nullptr || dsa->pub_key == nullptr || !BN_mod_exp_mont_consttime(dsa->pub_key, dsa->g, dsa->priv_key, dsa->p, - ctx, NULL)) { - goto err; + ctx.get(), nullptr)) { + return 0; } - BN_CTX_free(ctx); - EVP_PKEY_assign_DSA(out, dsa); + EVP_PKEY_assign_DSA(out, dsa.release()); return 1; - -err: - BN_CTX_free(ctx); - DSA_free(dsa); - return 0; } static int dsa_priv_encode(CBB *out, const EVP_PKEY *key) { const DSA *dsa = reinterpret_cast(key->pkey); - if (dsa == NULL || dsa->priv_key == NULL) { + if (dsa == nullptr || dsa->priv_key == nullptr) { OPENSSL_PUT_ERROR(EVP, EVP_R_MISSING_PARAMETERS); return 0; } @@ -159,23 +149,20 @@ static int dsa_bits(const EVP_PKEY *pkey) { static int dsa_missing_parameters(const EVP_PKEY *pkey) { const DSA *dsa = reinterpret_cast(pkey->pkey); - if (DSA_get0_p(dsa) == NULL || DSA_get0_q(dsa) == NULL || - DSA_get0_g(dsa) == NULL) { + if (DSA_get0_p(dsa) == nullptr || DSA_get0_q(dsa) == nullptr || + DSA_get0_g(dsa) == nullptr) { return 1; } return 0; } static int dup_bn_into(BIGNUM **out, BIGNUM *src) { - BIGNUM *a; - - a = BN_dup(src); - if (a == NULL) { + bssl::UniquePtr a(BN_dup(src)); + if (a == nullptr) { return 0; } BN_free(*out); - *out = a; - + *out = a.release(); return 1; } @@ -207,7 +194,7 @@ static int dsa_pub_cmp(const EVP_PKEY *a, const EVP_PKEY *b) { static void int_dsa_free(EVP_PKEY *pkey) { DSA_free(reinterpret_cast(pkey->pkey)); - pkey->pkey = NULL; + pkey->pkey = nullptr; } const EVP_PKEY_ASN1_METHOD dsa_asn1_meth = { @@ -216,7 +203,7 @@ const EVP_PKEY_ASN1_METHOD dsa_asn1_meth = { {0x2a, 0x86, 0x48, 0xce, 0x38, 0x04, 0x01}, 7, - /*pkey_method=*/NULL, + /*pkey_method=*/nullptr, dsa_pub_decode, dsa_pub_encode, @@ -225,14 +212,14 @@ const EVP_PKEY_ASN1_METHOD dsa_asn1_meth = { dsa_priv_decode, dsa_priv_encode, - /*set_priv_raw=*/NULL, - /*set_pub_raw=*/NULL, - /*get_priv_raw=*/NULL, - /*get_pub_raw=*/NULL, - /*set1_tls_encodedpoint=*/NULL, - /*get1_tls_encodedpoint=*/NULL, + /*set_priv_raw=*/nullptr, + /*set_pub_raw=*/nullptr, + /*get_priv_raw=*/nullptr, + /*get_pub_raw=*/nullptr, + /*set1_tls_encodedpoint=*/nullptr, + /*get1_tls_encodedpoint=*/nullptr, - /*pkey_opaque=*/NULL, + /*pkey_opaque=*/nullptr, int_dsa_size, dsa_bits, @@ -267,20 +254,20 @@ int EVP_PKEY_set1_DSA(EVP_PKEY *pkey, DSA *key) { int EVP_PKEY_assign_DSA(EVP_PKEY *pkey, DSA *key) { evp_pkey_set_method(pkey, &dsa_asn1_meth); pkey->pkey = key; - return key != NULL; + return key != nullptr; } DSA *EVP_PKEY_get0_DSA(const EVP_PKEY *pkey) { if (pkey->type != EVP_PKEY_DSA) { OPENSSL_PUT_ERROR(EVP, EVP_R_EXPECTING_A_DSA_KEY); - return NULL; + return nullptr; } return reinterpret_cast(pkey->pkey); } DSA *EVP_PKEY_get1_DSA(const EVP_PKEY *pkey) { DSA *dsa = EVP_PKEY_get0_DSA(pkey); - if (dsa != NULL) { + if (dsa != nullptr) { DSA_up_ref(dsa); } return dsa; diff --git a/crypto/evp/p_ec_asn1.cc b/crypto/evp/p_ec_asn1.cc index 8a4981c539..cb2893885a 100644 --- a/crypto/evp/p_ec_asn1.cc +++ b/crypto/evp/p_ec_asn1.cc @@ -47,26 +47,21 @@ static int eckey_pub_decode(EVP_PKEY *out, CBS *params, CBS *key) { // See RFC 5480, section 2. // The parameters are a named curve. - EC_KEY *eckey = NULL; const EC_GROUP *group = EC_KEY_parse_curve_name(params); if (group == NULL || CBS_len(params) != 0) { OPENSSL_PUT_ERROR(EVP, EVP_R_DECODE_ERROR); - goto err; + return 0; } - eckey = EC_KEY_new(); - if (eckey == NULL || // - !EC_KEY_set_group(eckey, group) || - !EC_KEY_oct2key(eckey, CBS_data(key), CBS_len(key), NULL)) { - goto err; + bssl::UniquePtr eckey(EC_KEY_new()); + if (eckey == nullptr || // + !EC_KEY_set_group(eckey.get(), group) || + !EC_KEY_oct2key(eckey.get(), CBS_data(key), CBS_len(key), nullptr)) { + return 0; } - EVP_PKEY_assign_EC_KEY(out, eckey); + EVP_PKEY_assign_EC_KEY(out, eckey.release()); return 1; - -err: - EC_KEY_free(eckey); - return 0; } static int eckey_pub_cmp(const EVP_PKEY *a, const EVP_PKEY *b) { diff --git a/crypto/evp/pbkdf.cc b/crypto/evp/pbkdf.cc index 3dca7da243..f08ab924ad 100644 --- a/crypto/evp/pbkdf.cc +++ b/crypto/evp/pbkdf.cc @@ -20,16 +20,13 @@ int PKCS5_PBKDF2_HMAC(const char *password, size_t password_len, const uint8_t *salt, size_t salt_len, uint32_t iterations, const EVP_MD *digest, size_t key_len, uint8_t *out_key) { // See RFC 8018, section 5.2. - int ret = 0; - size_t md_len = EVP_MD_size(digest); - uint32_t i = 1; - HMAC_CTX hctx; - HMAC_CTX_init(&hctx); - - if (!HMAC_Init_ex(&hctx, password, password_len, digest, NULL)) { - goto err; + bssl::ScopedHMAC_CTX hctx; + if (!HMAC_Init_ex(hctx.get(), password, password_len, digest, NULL)) { + return 0; } + uint32_t i = 1; + size_t md_len = EVP_MD_size(digest); while (key_len > 0) { size_t todo = md_len; if (todo > key_len) { @@ -44,20 +41,20 @@ int PKCS5_PBKDF2_HMAC(const char *password, size_t password_len, // Compute U_1. uint8_t digest_tmp[EVP_MAX_MD_SIZE]; - if (!HMAC_Init_ex(&hctx, NULL, 0, NULL, NULL) || - !HMAC_Update(&hctx, salt, salt_len) || - !HMAC_Update(&hctx, i_buf, 4) || - !HMAC_Final(&hctx, digest_tmp, NULL)) { - goto err; + if (!HMAC_Init_ex(hctx.get(), NULL, 0, NULL, NULL) || + !HMAC_Update(hctx.get(), salt, salt_len) || + !HMAC_Update(hctx.get(), i_buf, 4) || + !HMAC_Final(hctx.get(), digest_tmp, NULL)) { + return 0; } OPENSSL_memcpy(out_key, digest_tmp, todo); for (uint32_t j = 1; j < iterations; j++) { // Compute the remaining U_* values and XOR. - if (!HMAC_Init_ex(&hctx, NULL, 0, NULL, NULL) || - !HMAC_Update(&hctx, digest_tmp, md_len) || - !HMAC_Final(&hctx, digest_tmp, NULL)) { - goto err; + if (!HMAC_Init_ex(hctx.get(), NULL, 0, NULL, NULL) || + !HMAC_Update(hctx.get(), digest_tmp, md_len) || + !HMAC_Final(hctx.get(), digest_tmp, NULL)) { + return 0; } for (size_t k = 0; k < todo; k++) { out_key[k] ^= digest_tmp[k]; @@ -81,14 +78,10 @@ int PKCS5_PBKDF2_HMAC(const char *password, size_t password_len, // TODO(eroman): Figure out how to remove this compatibility hack, or change // the default to something more sensible like 2048. if (iterations == 0) { - goto err; + return 0; } - ret = 1; - -err: - HMAC_CTX_cleanup(&hctx); - return ret; + return 1; } int PKCS5_PBKDF2_HMAC_SHA1(const char *password, size_t password_len, From acab24e696df4cdec5146290c5aac3ba97a16256 Mon Sep 17 00:00:00 2001 From: Adam Langley Date: Sat, 11 Jan 2025 06:19:22 -0800 Subject: [PATCH 51/64] Mark fallible container operations as `nodiscard` It's evidently too easy to ignore the return values of these operations. After all, ignoring allocation failures is the normal pattern in most C++ code. Thus this change marks these functions as `nodiscard`. This does require a few CHECKs in test code, but it also catches one real instance of a problem. Change-Id: I24432506283145fc2f459336fe1035cbca27bd4f Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75187 Commit-Queue: Adam Langley Auto-Submit: Adam Langley Reviewed-by: David Benjamin --- ssl/handoff.cc | 6 ++++-- ssl/internal.h | 18 +++++++++--------- ssl/ssl_internal_test.cc | 10 +++++----- 3 files changed, 18 insertions(+), 16 deletions(-) diff --git a/ssl/handoff.cc b/ssl/handoff.cc index bd409f2406..610ad6fe83 100644 --- a/ssl/handoff.cc +++ b/ssl/handoff.cc @@ -668,8 +668,10 @@ bool SSL_apply_handback(SSL *ssl, Span handback) { } s3->session_reused = session_reused; hs->channel_id_negotiated = channel_id_negotiated; - s3->next_proto_negotiated.CopyFrom(next_proto); - s3->alpn_selected.CopyFrom(alpn); + if (!s3->next_proto_negotiated.CopyFrom(next_proto) || + !s3->alpn_selected.CopyFrom(alpn)) { + return false; + } const size_t hostname_len = CBS_len(&hostname); if (hostname_len == 0) { diff --git a/ssl/internal.h b/ssl/internal.h index 0f3da92b68..bf8bf36021 100644 --- a/ssl/internal.h +++ b/ssl/internal.h @@ -161,7 +161,7 @@ class Array { // value-constructed copies of |T|. It returns true on success and false on // error. If |T| is a primitive type like |uint8_t|, value-construction means // it will be zero-initialized. - bool Init(size_t new_size) { + [[nodiscard]] bool Init(size_t new_size) { if (!InitUninitialized(new_size)) { return false; } @@ -172,7 +172,7 @@ class Array { // InitForOverwrite behaves like |Init| but it default-constructs each element // instead. This means that, if |T| is a primitive type, the array will be // uninitialized and thus must be filled in by the caller. - bool InitForOverwrite(size_t new_size) { + [[nodiscard]] bool InitForOverwrite(size_t new_size) { if (!InitUninitialized(new_size)) { return false; } @@ -182,7 +182,7 @@ class Array { // CopyFrom replaces the array with a newly-allocated copy of |in|. It returns // true on success and false on error. - bool CopyFrom(Span in) { + [[nodiscard]] bool CopyFrom(Span in) { if (!InitUninitialized(in.size())) { return false; } @@ -273,7 +273,7 @@ class Vector { // Push adds |elem| at the end of the internal array, growing if necessary. It // returns false when allocation fails. - bool Push(T elem) { + [[nodiscard]] bool Push(T elem) { if (!MaybeGrow()) { return false; } @@ -284,7 +284,7 @@ class Vector { // CopyFrom replaces the contents of the array with a copy of |in|. It returns // true on success and false on allocation error. - bool CopyFrom(Span in) { + [[nodiscard]] bool CopyFrom(Span in) { Array copy; if (!copy.CopyFrom(in)) { return false; @@ -406,7 +406,7 @@ class InplaceVector { // TryResize resizes the vector to |new_size| and returns true, or returns // false if |new_size| is too large. Any newly-added elements are // value-initialized. - bool TryResize(size_t new_size) { + [[nodiscard]] bool TryResize(size_t new_size) { if (new_size <= size_) { Shrink(new_size); return true; @@ -422,7 +422,7 @@ class InplaceVector { // TryResizeForOverwrite behaves like |TryResize|, but newly-added elements // are default-initialized, so POD types may contain uninitialized values that // the caller is responsible for filling in. - bool TryResizeForOverwrite(size_t new_size) { + [[nodiscard]] bool TryResizeForOverwrite(size_t new_size) { if (new_size <= size_) { Shrink(new_size); return true; @@ -437,7 +437,7 @@ class InplaceVector { // TryCopyFrom sets the vector to a copy of |in| and returns true, or returns // false if |in| is too large. - bool TryCopyFrom(Span in) { + [[nodiscard]] bool TryCopyFrom(Span in) { if (in.size() > capacity()) { return false; } @@ -449,7 +449,7 @@ class InplaceVector { // TryPushBack appends |val| to the vector and returns a pointer to the // newly-inserted value, or nullptr if the vector is at capacity. - T *TryPushBack(T val) { + [[nodiscard]] T *TryPushBack(T val) { if (size() >= capacity()) { return nullptr; } diff --git a/ssl/ssl_internal_test.cc b/ssl/ssl_internal_test.cc index 230018fe1c..ae251dc1b1 100644 --- a/ssl/ssl_internal_test.cc +++ b/ssl/ssl_internal_test.cc @@ -120,15 +120,15 @@ TEST(VectorTest, VectorContainingVectors) { TEST(VectorTest, NotDefaultConstructible) { struct NotDefaultConstructible { - explicit NotDefaultConstructible(size_t n) { array.Init(n); } + explicit NotDefaultConstructible(size_t n) { BSSL_CHECK(array.Init(n)); } Array array; }; Vector vec; - vec.Push(NotDefaultConstructible(0)); - vec.Push(NotDefaultConstructible(1)); - vec.Push(NotDefaultConstructible(2)); - vec.Push(NotDefaultConstructible(3)); + ASSERT_TRUE(vec.Push(NotDefaultConstructible(0))); + ASSERT_TRUE(vec.Push(NotDefaultConstructible(1))); + ASSERT_TRUE(vec.Push(NotDefaultConstructible(2))); + ASSERT_TRUE(vec.Push(NotDefaultConstructible(3))); EXPECT_EQ(vec.size(), 4u); EXPECT_EQ(0u, vec[0].array.size()); EXPECT_EQ(1u, vec[1].array.size()); From 06410babf542327d0b80b3a23e0dd51a8b3fd57c Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Tue, 7 Jan 2025 02:34:29 -0500 Subject: [PATCH 52/64] Remove embed_test_data.go I believe nothing uses this anymore. Bug: 42290412 Change-Id: I8c736570d89393b37efe8d53cef29f887a8762fa Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74927 Commit-Queue: David Benjamin Auto-Submit: David Benjamin Reviewed-by: Bob Beck --- util/embed_test_data.go | 174 ----------------------------------- util/generate_build_files.py | 14 --- 2 files changed, 188 deletions(-) delete mode 100644 util/embed_test_data.go diff --git a/util/embed_test_data.go b/util/embed_test_data.go deleted file mode 100644 index da66694e63..0000000000 --- a/util/embed_test_data.go +++ /dev/null @@ -1,174 +0,0 @@ -// Copyright 2017 The BoringSSL Authors -// -// Permission to use, copy, modify, and/or distribute this software for any -// purpose with or without fee is hereby granted, provided that the above -// copyright notice and this permission notice appear in all copies. -// -// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY -// SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION -// OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN -// CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -//go:build ignore - -// embed_test_data generates a C++ source file which exports a function, -// GetTestData, which looks up the specified data files. -package main - -import ( - "bytes" - "flag" - "fmt" - "os" - "strings" -) - -var fileList = flag.String("file-list", "", "if not empty, the path to a file containing a newline-separated list of files, to work around Windows command-line limits") - -func quote(in []byte) string { - var lastWasHex bool - var buf bytes.Buffer - buf.WriteByte('"') - for _, b := range in { - var wasHex bool - switch b { - case '\a': - buf.WriteString(`\a`) - case '\b': - buf.WriteString(`\b`) - case '\f': - buf.WriteString(`\f`) - case '\n': - buf.WriteString(`\n`) - case '\r': - buf.WriteString(`\r`) - case '\t': - buf.WriteString(`\t`) - case '\v': - buf.WriteString(`\v`) - case '"': - buf.WriteString(`\"`) - case '\\': - buf.WriteString(`\\`) - default: - // Emit printable ASCII characters, [32, 126], as-is to minimize - // file size. However, if the previous character used a hex escape - // sequence, do not emit 0-9 and a-f as-is. C++ interprets "\x123" - // as a single (overflowing) escape sequence, rather than '\x12' - // followed by '3'. - isHexDigit := ('0' <= b && b <= '9') || ('a' <= b && b <= 'f') || ('A' <= b && b <= 'F') - if 32 <= b && b <= 126 && !(lastWasHex && isHexDigit) { - buf.WriteByte(b) - } else { - fmt.Fprintf(&buf, "\\x%02x", b) - wasHex = true - } - } - lastWasHex = wasHex - } - buf.WriteByte('"') - return buf.String() -} - -func main() { - flag.Parse() - - var files []string - if len(*fileList) != 0 { - data, err := os.ReadFile(*fileList) - if err != nil { - fmt.Fprintf(os.Stderr, "Error reading %s: %s.\n", *fileList, err) - os.Exit(1) - } - files = strings.FieldsFunc(string(data), func(r rune) bool { return r == '\r' || r == '\n' }) - } - - files = append(files, flag.Args()...) - - fmt.Printf(`/* Copyright 2017 The BoringSSL Authors - * - * Permission to use, copy, modify, and/or distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY - * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION - * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN - * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ - -/* This file is generated by: -`) - fmt.Printf(" * go run util/embed_test_data.go") - for _, arg := range files { - fmt.Printf(" \\\n * %s", arg) - } - fmt.Printf(" */\n") - - fmt.Printf(` -/* clang-format off */ - -#include -#include - -#include -#include - - -`) - - // MSVC limits the length of string constants, so we emit an array of - // them and concatenate at runtime. We could also use a single array - // literal, but this is less compact. - const chunkSize = 8192 - - for i, arg := range files { - data, err := os.ReadFile(arg) - if err != nil { - fmt.Fprintf(os.Stderr, "Error reading %s: %s.\n", arg, err) - os.Exit(1) - } - fmt.Printf("static const size_t kLen%d = %d;\n\n", i, len(data)) - - fmt.Printf("static const char *kData%d[] = {\n", i) - for len(data) > 0 { - chunk := chunkSize - if chunk > len(data) { - chunk = len(data) - } - fmt.Printf(" %s,\n", quote(data[:chunk])) - data = data[chunk:] - } - fmt.Printf("};\n") - } - - fmt.Printf(`static std::string AssembleString(const char **data, size_t len) { - std::string ret; - for (size_t i = 0; i < len; i += %d) { - size_t chunk = std::min(static_cast(%d), len - i); - ret.append(data[i / %d], chunk); - } - return ret; -} - -/* Silence -Wmissing-declarations. */ -std::string GetTestData(const char *path); - -std::string GetTestData(const char *path) { -`, chunkSize, chunkSize, chunkSize) - for i, arg := range files { - fmt.Printf(" if (strcmp(path, %s) == 0) {\n", quote([]byte(arg))) - fmt.Printf(" return AssembleString(kData%d, kLen%d);\n", i, i) - fmt.Printf(" }\n") - } - fmt.Printf(` fprintf(stderr, "File not embedded: %%s.\n", path); - abort(); -} -`) - -} diff --git a/util/generate_build_files.py b/util/generate_build_files.py index 30c5833540..8152ec45e2 100644 --- a/util/generate_build_files.py +++ b/util/generate_build_files.py @@ -24,7 +24,6 @@ PREFIX = None -EMBED_TEST_DATA = False def PathOf(x): @@ -620,13 +619,6 @@ def main(platforms): crypto_nasm = sorted(sources['bcm']['nasm'] + sources['crypto']['nasm'] + sources['test_support']['nasm']) - if EMBED_TEST_DATA: - with open('crypto_test_data.cc', 'w+') as out: - subprocess.check_call( - ['go', 'run', 'util/embed_test_data.go'] + sources['crypto_test']['data'], - cwd='src', - stdout=out) - files = { 'bcm_crypto': PrefixWithSrc(sources['bcm']['srcs']), 'crypto': PrefixWithSrc(crypto), @@ -680,14 +672,8 @@ def main(platforms): '|'.join(sorted(ALL_PLATFORMS.keys()))) parser.add_option('--prefix', dest='prefix', help='For Bazel, prepend argument to all source files') - parser.add_option( - '--embed_test_data', dest='embed_test_data', action='store_true', - help='Generates the legacy crypto_test_data.cc file. To use, build with' + - ' -DBORINGSSL_CUSTOM_GET_TEST_DATA and add this file to ' + - 'crypto_test.') options, args = parser.parse_args(sys.argv[1:]) PREFIX = options.prefix - EMBED_TEST_DATA = options.embed_test_data if not args: parser.print_help() From 305e5c570be4b142e8590d37dd9136b60f12b9bc Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Tue, 7 Jan 2025 01:52:59 -0500 Subject: [PATCH 53/64] Unfork Chromium's Clang update script We can DEPS in individual directories and just run the actual script. This avoids needing to maintain our own copy, and also means we can potentially use Chromium's Rust build later. (The Rust update script pulls in the Clang one.) We should also be able to unfork vs_toolchain.py, but there's a minor headache around it ending up in the LUCI copy of depot_tools and not being cached. Avoiding that seems to require enough fuss that it might be easier to switch to the windows_sdk recipe module, even if that VS toolchain isn't updated as frequently. Change-Id: Icc4ca117d0187b616747711cb563f766cd3f9aba Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74889 Commit-Queue: David Benjamin Reviewed-by: Bob Beck --- .gitignore | 1 + util/bot/DEPS | 14 ++- util/bot/UPDATING | 4 - util/bot/update_clang.py | 178 --------------------------------------- 4 files changed, 13 insertions(+), 184 deletions(-) delete mode 100644 util/bot/update_clang.py diff --git a/.gitignore b/.gitignore index b087ff51ff..f19d1c8ae0 100644 --- a/.gitignore +++ b/.gitignore @@ -33,6 +33,7 @@ /util/bot/sde-linux64.tar.xz /util/bot/sde-win32 /util/bot/sde-win32.tar.xz +/util/bot/tools /util/bot/win_toolchain /util/bot/win_toolchain.json diff --git a/util/bot/DEPS b/util/bot/DEPS index f17ed25a39..f79ba47de5 100644 --- a/util/bot/DEPS +++ b/util/bot/DEPS @@ -50,6 +50,10 @@ vars = { 'llvm_libc_revision': '17e581644f9a71be3eb30f468722ce866058f93a', 'ninja_version': 'version:2@1.12.1.chromium.4', + # Update to the latest revision of + # https://chromium.googlesource.com/chromium/src/tools/clang + 'tools_clang_revision': 'bf9a3411372f2d5eed8b3d27ee8bd8cf6c17135f', + # The Android NDK cannot be updated until https://crbug.com/boringssl/454 is fixed. # We rely on an older NDK to test building without NEON instructions as the baseline. 'android_ndk_revision': 'U0e8L6l52ySjBrUBB82Vdyhsg60vVMqH0ItTW3TRHAQC', @@ -145,7 +149,12 @@ deps = { }], 'condition': 'checkout_riscv64', 'dep_type': 'cipd', - } + }, + + 'boringssl/util/bot/tools/clang': { + 'url': Var('chromium_git') + '/chromium/src/tools/clang.git' + '@' + Var('tools_clang_revision'), + 'condition': 'checkout_clang', + }, } recursedeps = [ @@ -181,7 +190,8 @@ hooks = [ 'pattern': '.', 'condition': 'checkout_clang', 'action': [ 'python3', - 'boringssl/util/bot/update_clang.py', + 'boringssl/util/bot/tools/clang/scripts/update.py', + '--output-dir', 'boringssl/util/bot/llvm-build', ], }, { diff --git a/util/bot/UPDATING b/util/bot/UPDATING index 8fc0faf763..5a97e488e7 100644 --- a/util/bot/UPDATING +++ b/util/bot/UPDATING @@ -10,10 +10,6 @@ To update to newer revisions, follow these instructions: DEPS: Update the variables as described in the comments. -update_clang.py: Set CLANG_REVISION and CLANG_SUB_REVISION to the values used in - Chromium, found at - https://chromium.googlesource.com/chromium/src/+/main/tools/clang/scripts/update.py - vs_toolchain.py: Update _GetDesiredVsToolchainHashes from Chromium, found at https://chromium.googlesource.com/chromium/src/+/main/build/vs_toolchain.py This may require taking other updates to that file. (Don't remove MSVC diff --git a/util/bot/update_clang.py b/util/bot/update_clang.py deleted file mode 100644 index b8bb0f33cf..0000000000 --- a/util/bot/update_clang.py +++ /dev/null @@ -1,178 +0,0 @@ -#!/usr/bin/env python3 -# Copyright (c) 2012 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -"""This script is used to download prebuilt clang binaries.""" - -from __future__ import division -from __future__ import print_function - -import os -import platform -import shutil -import subprocess -import stat -import sys -import tarfile -import tempfile -import time - -try: - # Python 3.0 or later - from urllib.error import HTTPError, URLError - from urllib.request import urlopen -except ImportError: - from urllib2 import urlopen, HTTPError, URLError - - -# CLANG_REVISION and CLANG_SUB_REVISION determine the build of clang -# to use. These should be synced with tools/clang/scripts/update.py in -# Chromium. -CLANG_REVISION = 'llvmorg-20-init-9764-gb81d8e90' -CLANG_SUB_REVISION = 7 - -PACKAGE_VERSION = '%s-%s' % (CLANG_REVISION, CLANG_SUB_REVISION) - -# Path constants. (All of these should be absolute paths.) -THIS_DIR = os.path.abspath(os.path.dirname(__file__)) -LLVM_BUILD_DIR = os.path.join(THIS_DIR, 'llvm-build') -STAMP_FILE = os.path.join(LLVM_BUILD_DIR, 'cr_build_revision') - -# URL for pre-built binaries. -CDS_URL = os.environ.get('CDS_CLANG_BUCKET_OVERRIDE', - 'https://commondatastorage.googleapis.com/chromium-browser-clang') - - -def DownloadUrl(url, output_file): - """Download url into output_file.""" - CHUNK_SIZE = 4096 - TOTAL_DOTS = 10 - num_retries = 3 - retry_wait_s = 5 # Doubled at each retry. - - while True: - try: - sys.stdout.write('Downloading %s ' % url) - sys.stdout.flush() - response = urlopen(url) - total_size = int(response.headers.get('Content-Length').strip()) - bytes_done = 0 - dots_printed = 0 - while True: - chunk = response.read(CHUNK_SIZE) - if not chunk: - break - output_file.write(chunk) - bytes_done += len(chunk) - num_dots = TOTAL_DOTS * bytes_done // total_size - sys.stdout.write('.' * (num_dots - dots_printed)) - sys.stdout.flush() - dots_printed = num_dots - if bytes_done != total_size: - raise URLError("only got %d of %d bytes" % (bytes_done, total_size)) - print(' Done.') - return - except URLError as e: - sys.stdout.write('\n') - print(e) - if num_retries == 0 or isinstance(e, HTTPError) and e.code == 404: - raise e - num_retries -= 1 - print('Retrying in %d s ...' % retry_wait_s) - time.sleep(retry_wait_s) - retry_wait_s *= 2 - - -def EnsureDirExists(path): - if not os.path.exists(path): - print("Creating directory %s" % path) - os.makedirs(path) - - -def DownloadAndUnpack(url, output_dir): - with tempfile.TemporaryFile() as f: - DownloadUrl(url, f) - f.seek(0) - EnsureDirExists(output_dir) - tarfile.open(mode='r:*', fileobj=f).extractall(path=output_dir) - - -def ReadStampFile(path=STAMP_FILE): - """Return the contents of the stamp file, or '' if it doesn't exist.""" - try: - with open(path, 'r') as f: - return f.read().rstrip() - except IOError: - return '' - - -def WriteStampFile(s, path=STAMP_FILE): - """Write s to the stamp file.""" - EnsureDirExists(os.path.dirname(path)) - with open(path, 'w') as f: - f.write(s) - f.write('\n') - - -def RmTree(dir): - """Delete dir.""" - def ChmodAndRetry(func, path, _): - # Subversion can leave read-only files around. - if not os.access(path, os.W_OK): - os.chmod(path, stat.S_IWUSR) - return func(path) - raise - - shutil.rmtree(dir, onerror=ChmodAndRetry) - - -def CopyFile(src, dst): - """Copy a file from src to dst.""" - print("Copying %s to %s" % (src, dst)) - shutil.copy(src, dst) - - -def UpdateClang(): - cds_file = "clang-%s.tar.xz" % PACKAGE_VERSION - if sys.platform == 'win32' or sys.platform == 'cygwin': - cds_full_url = CDS_URL + '/Win/' + cds_file - elif sys.platform.startswith('linux'): - cds_full_url = CDS_URL + '/Linux_x64/' + cds_file - elif sys.platform == 'darwin': - if platform.machine() == 'arm64': - cds_full_url = CDS_URL + '/Mac_arm64/' + cds_file - else: - cds_full_url = CDS_URL + '/Mac/' + cds_file - else: - return 0 - - print('Updating Clang to %s...' % PACKAGE_VERSION) - - if ReadStampFile() == PACKAGE_VERSION: - print('Clang is already up to date.') - return 0 - - # Reset the stamp file in case the build is unsuccessful. - WriteStampFile('') - - print('Downloading prebuilt clang') - if os.path.exists(LLVM_BUILD_DIR): - RmTree(LLVM_BUILD_DIR) - try: - DownloadAndUnpack(cds_full_url, LLVM_BUILD_DIR) - print('clang %s unpacked' % PACKAGE_VERSION) - WriteStampFile(PACKAGE_VERSION) - return 0 - except URLError: - print('Failed to download prebuilt clang %s' % cds_file) - print('Exiting.') - return 1 - - -def main(): - return UpdateClang() - - -if __name__ == '__main__': - sys.exit(main()) From 571a7432a19592c620fa316abde47770dad4f82b Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Tue, 14 Jan 2025 12:29:12 -0500 Subject: [PATCH 54/64] Bump MODULE.bazel for another snapshot Also update deps from BCR while I'm here. Change-Id: I7afe58655e966ab9e7d1c99d13a9c9f7594af51c Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75229 Auto-Submit: David Benjamin Reviewed-by: Bob Beck Commit-Queue: David Benjamin --- MODULE.bazel | 4 ++-- MODULE.bazel.lock | 20 ++------------------ 2 files changed, 4 insertions(+), 20 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index ec88786709..d065fcaa8c 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -16,7 +16,7 @@ # the revision where we bump the version. module( name = "boringssl", - version = "0.20241209.0", + version = "0.20250114.0", compatibility_level = 2, ) @@ -32,6 +32,6 @@ module( # this. bazel_dep(name = "googletest", version = "1.15.2") -bazel_dep(name = "platforms", version = "0.0.10") +bazel_dep(name = "platforms", version = "0.0.11") bazel_dep(name = "rules_cc", version = "0.1.0") bazel_dep(name = "rules_license", version = "1.0.0") diff --git a/MODULE.bazel.lock b/MODULE.bazel.lock index 2c2a121dcf..76cf420c9f 100644 --- a/MODULE.bazel.lock +++ b/MODULE.bazel.lock @@ -35,7 +35,8 @@ "https://bcr.bazel.build/modules/googletest/1.15.2/source.json": "dbdda654dcb3a0d7a8bc5d0ac5fc7e150b58c2a986025ae5bc634bb2cb61f470", "https://bcr.bazel.build/modules/libpfm/4.11.0/MODULE.bazel": "45061ff025b301940f1e30d2c16bea596c25b176c8b6b3087e92615adbd52902", "https://bcr.bazel.build/modules/platforms/0.0.10/MODULE.bazel": "8cb8efaf200bdeb2150d93e162c40f388529a25852b332cec879373771e48ed5", - "https://bcr.bazel.build/modules/platforms/0.0.10/source.json": "f22828ff4cf021a6b577f1bf6341cb9dcd7965092a439f64fc1bb3b7a5ae4bd5", + "https://bcr.bazel.build/modules/platforms/0.0.11/MODULE.bazel": "0daefc49732e227caa8bfa834d65dc52e8cc18a2faf80df25e8caea151a9413f", + "https://bcr.bazel.build/modules/platforms/0.0.11/source.json": "f7e188b79ebedebfe75e9e1d098b8845226c7992b307e28e1496f23112e8fc29", "https://bcr.bazel.build/modules/platforms/0.0.4/MODULE.bazel": "9b328e31ee156f53f3c416a64f8491f7eb731742655a47c9eec4703a71644aee", "https://bcr.bazel.build/modules/platforms/0.0.5/MODULE.bazel": "5733b54ea419d5eaf7997054bb55f6a1d0b5ff8aedf0176fef9eea44f3acda37", "https://bcr.bazel.build/modules/platforms/0.0.6/MODULE.bazel": "ad6eeef431dc52aefd2d77ed20a4b353f8ebf0f4ecdd26a807d2da5aa8cd0615", @@ -120,23 +121,6 @@ ] ] } - }, - "@@platforms//host:extension.bzl%host_platform": { - "general": { - "bzlTransitiveDigest": "xelQcPZH8+tmuOHVjL9vDxMnnQNMlwj0SlvgoqBkm4U=", - "usagesDigest": "hgylFkgWSg0ulUwWZzEM1aIftlUnbmw2ynWLdEfHnZc=", - "recordedFileInputs": {}, - "recordedDirentsInputs": {}, - "envVariables": {}, - "generatedRepoSpecs": { - "host_platform": { - "bzlFile": "@@platforms//host:extension.bzl", - "ruleClassName": "host_platform_repo", - "attributes": {} - } - }, - "recordedRepoMappingEntries": [] - } } } } From a8a4fce24dee0c6f4a41326338309c20af77acaf Mon Sep 17 00:00:00 2001 From: Joe Gardner Date: Mon, 6 Jan 2025 14:51:32 -0800 Subject: [PATCH 55/64] Add ability to upload a directory of vector test results. Change-Id: I11469dc8b987d12f737e51f092ff36f30ee74cd8 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/73847 Commit-Queue: Adam Langley Reviewed-by: Adam Langley --- util/fipstools/acvp/acvptool/acvp.go | 209 +++++++++++++++++++++++---- 1 file changed, 178 insertions(+), 31 deletions(-) diff --git a/util/fipstools/acvp/acvptool/acvp.go b/util/fipstools/acvp/acvptool/acvp.go index fec4b4db6b..2be9ba8971 100644 --- a/util/fipstools/acvp/acvptool/acvp.go +++ b/util/fipstools/acvp/acvptool/acvp.go @@ -29,11 +29,13 @@ import ( "flag" "fmt" "io" + "io/ioutil" "log" "net/http" neturl "net/url" "os" "path/filepath" + "strconv" "strings" "time" @@ -46,6 +48,7 @@ var ( configFilename = flag.String("config", "config.json", "Location of the configuration JSON file") jsonInputFile = flag.String("json", "", "Location of a vector-set input file") uploadInputFile = flag.String("upload", "", "Location of a JSON results file to upload") + uploadDirectory = flag.String("directory", "", "Path to folder where result files to be uploaded are") runFlag = flag.String("run", "", "Name of primitive to run tests for") fetchFlag = flag.String("fetch", "", "Name of primitive to fetch vectors for") expectedOutFlag = flag.String("expected-out", "", "Name of a file to write the expected results to") @@ -386,7 +389,7 @@ func connect(config *Config, sessionTokensCacheDir string) (*acvp.Server, error) return nil, errors.New("config file missing PrivateKeyDERFile and PrivateKeyFile") } if len(config.PrivateKeyDERFile) != 0 && len(config.PrivateKeyFile) != 0 { - return nil, errors.New("config file has both PrivateKeyDERFile and PrivateKeyFile. Can only have one.") + return nil, errors.New("config file has both PrivateKeyDERFile and PrivateKeyFile - can only have one") } privateKeyFile := config.PrivateKeyDERFile if len(config.PrivateKeyFile) > 0 { @@ -456,6 +459,141 @@ FetchResults: } } +func getLastDigitDir(path string) (string, error) { + parts := strings.Split(filepath.Clean(path), string(filepath.Separator)) + + for i := len(parts) - 1; i >= 0; i-- { + part := parts[i] + if _, err := strconv.Atoi(part); err == nil { + return part, nil + } + } + return "", errors.New("no directory consisting of only digits found") +} + +func uploadResults(results []nistUploadResult, sessionID string, config *Config, sessionTokensCacheDir string) { + server, err := connect(config, sessionTokensCacheDir) + if err != nil { + log.Fatal(err) + } + + for _, result := range results { + url := result.URLPath + payload := result.JSONResult + log.Printf("Uploading result for %q", url) + if err := uploadResult(server, url, payload); err != nil { + log.Fatalf("Failed to upload: %s", err) + } + } + + if ok, err := getResultsWithRetry(server, fmt.Sprintf("/acvp/v1/testSessions/%s", sessionID)); err != nil { + log.Fatal(err) + } else if !ok { + os.Exit(1) + } +} + +// Vector Test Result files are JSON formatted with various objects and keys. +// Define structs to read and process the files. +type vectorResult struct { + Version string `json:"acvVersion,omitempty"` + Algorithm string `json:"algorithm,omitempty"` + ID int `json:"vsId,omitempty"` + // Objects under testGroups can have various keys so use an empty interface. + Tests []map[string]interface{} `json:"testGroups,omitempty"` +} + +func getVectorSetID(jsonData []vectorResult) (int, error) { + vsId := 0 + for _, item := range jsonData { + if item.ID > 0 && vsId == 0 { + vsId = item.ID + } else if item.ID > 0 && vsId != 0 { + return 0, errors.New("found multiple vsId values") + } + } + if vsId != 0 { + return vsId, nil + } + return 0, errors.New("could not find vsId") +} + +func getVectorResult(jsonData []vectorResult) ([]byte, error) { + for _, item := range jsonData { + if item.ID > 0 { + out, err := json.Marshal(item) + if err != nil { + return nil, fmt.Errorf("unable to marshal JSON due to %s", err) + } + return out, nil + } + } + return nil, errors.New("could not find vsId necessary to identify vector result") +} + +// Results to be uploaded have a specific URL path to POST/PUT to, along with +// the test results. +// Define a struct and store this data for processing. +type nistUploadResult struct { + URLPath string + JSONResult []byte +} + +// Uploads a results directory based on the directory name being the session id. +// Non-JSON files are ignored and JSON files are assumed to be test results. +// The vectorSetId is retrieved from the test result file. +func uploadResultsDirectory(directory string, config *Config, sessionTokensCacheDir string) { + directory = filepath.Clean(directory) + sessionID, err := getLastDigitDir(directory) + if err != nil { + log.Fatal(err) + } + + var results []nistUploadResult + // Read directory, identify, and process all files. + files, err := ioutil.ReadDir(directory) + if err != nil { + log.Fatalf("Unable to read directory: %s", err) + } + + for _, file := range files { + // Add contents of the result file to results. + filePath := filepath.Join(directory, file.Name()) + in, err := ioutil.ReadFile(filePath) + if err != nil { + log.Fatalf("Cannot open input: %s", err) + } + + var data []vectorResult + if err := json.Unmarshal(in, &data); err != nil { + // Assume file is not JSON. Log and continue to next file. + log.Printf("Failed to parse %q: %s", filePath, err) + continue + } + + vectorSetID, err := getVectorSetID(data) + if err != nil { + log.Fatalf("Failed to get VectorSetId: %s", err) + } + // uploadResult() uses acvp.Server whose write() function takes the + // JSON *object* payload and turns it into a JSON *array* adding + // {"acvVersion":"1.0"} as a top-level object. Since the result file is + // already in this format, the JSON provided to uploadResult() must be + // modified to have those aspects removed. In other words, only store only + // the vector test result JSON object (do not store a JSON array or + // acvVersion object). + vectorTestResult, err := getVectorResult(data) + if err != nil { + log.Fatalf("Failed to get VectorResult: %s", err) + } + requestPath := fmt.Sprintf("/acvp/v1/testSessions/%s/vectorSets/%d", sessionID, vectorSetID) + newResult := nistUploadResult{URLPath: requestPath, JSONResult: vectorTestResult} + results = append(results, newResult) + } + + uploadResults(results, sessionID, config, sessionTokensCacheDir) +} + // vectorSetHeader is the first element in the array of JSON elements that makes // up the on-disk format for a vector set. type vectorSetHeader struct { @@ -465,22 +603,6 @@ type vectorSetHeader struct { } func uploadFromFile(file string, config *Config, sessionTokensCacheDir string) { - if len(*jsonInputFile) > 0 { - log.Fatalf("-upload cannot be used with -json") - } - if len(*runFlag) > 0 { - log.Fatalf("-upload cannot be used with -run") - } - if len(*fetchFlag) > 0 { - log.Fatalf("-upload cannot be used with -fetch") - } - if len(*expectedOutFlag) > 0 { - log.Fatalf("-upload cannot be used with -expected-out") - } - if *dumpRegcap { - log.Fatalf("-upload cannot be used with -regcap") - } - in, err := os.Open(file) if err != nil { log.Fatalf("Cannot open input: %s", err) @@ -507,27 +629,47 @@ func uploadFromFile(file string, config *Config, sessionTokensCacheDir string) { log.Fatalf("have %d URLs from header, but only %d result groups", len(header.VectorSetURLs), numGroups) } - server, err := connect(config, sessionTokensCacheDir) - if err != nil { - log.Fatal(err) - } - + // Process input and header data to nistUploadResult struct to simplify uploads. + var results []nistUploadResult for i, url := range header.VectorSetURLs { - log.Printf("Uploading result for %q", url) - if err := uploadResult(server, url, input[i+1]); err != nil { - log.Fatalf("Failed to upload: %s", err) - } + newResult := nistUploadResult{URLPath: url, JSONResult: input[i+1]} + results = append(results, newResult) } - - if ok, err := getResultsWithRetry(server, header.URL); err != nil { - log.Fatal(err) - } else if !ok { - os.Exit(1) + sessionID, err := getLastDigitDir(header.URL) + if err != nil { + log.Fatalf("Cannot get session id: %s", err) } + + uploadResults(results, sessionID, config, sessionTokensCacheDir) } func main() { flag.Parse() + // Check for various flags that are exclusive of each other. + // The flags that are available to upload results depend on the result format and storage. + // Only one result flag can be used at a time. + resultFlags := []bool{len(*uploadInputFile) > 0, len(*uploadDirectory) > 0} + resultFlagCount := 0 + for _, f := range resultFlags { + if f { + resultFlagCount++ + } + } + if resultFlagCount > 1 { + log.Fatalf("only one submit result action (-upload, -directory) is allowed at a time") + } else if resultFlagCount == 1 { + if len(*jsonInputFile) > 0 { + log.Fatalf("submit result action (-upload, -directory) cannot be used with -json") + } else if len(*runFlag) > 0 { + log.Fatalf("submit result action (-upload, -directory) cannot be used with -run") + } else if len(*fetchFlag) > 0 { + log.Fatalf("submit result action (-upload, -directory) cannot be used with -fetch") + } else if len(*expectedOutFlag) > 0 { + log.Fatalf("submit result action (-upload, -directory) cannot be used with -expected-out") + } else if *dumpRegcap { + log.Fatalf("submit result action (-upload, -directory) cannot be used with -regcap") + } + } middle, err := subprocess.New(*wrapperPath) if err != nil { @@ -667,6 +809,11 @@ func main() { return } + if len(*uploadDirectory) > 0 { + uploadResultsDirectory(*uploadDirectory, &config, sessionTokensCacheDir) + return + } + server, err := connect(&config, sessionTokensCacheDir) if err != nil { log.Fatal(err) From 21f54b2730ee307bf492b9fc9de69e50663cc283 Mon Sep 17 00:00:00 2001 From: Adam Langley Date: Wed, 8 Jan 2025 13:43:12 -0800 Subject: [PATCH 56/64] Add SPAKE2+. This is an internal-only primitive, at least for now. Change-Id: I365d42c9df59894ed131fba139efc7c9bbe0ed35 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75107 Commit-Queue: Adam Langley Reviewed-by: David Benjamin --- AUTHORS | 1 + build.json | 3 + crypto/fipsmodule/ec/internal.h | 5 + crypto/fipsmodule/ec/scalar.cc.inc | 10 +- crypto/spake2plus/internal.h | 204 +++++++++++ crypto/spake2plus/spake2plus.cc | 501 +++++++++++++++++++++++++++ crypto/spake2plus/spake2plus_test.cc | 342 ++++++++++++++++++ gen/sources.bzl | 3 + gen/sources.cmake | 3 + gen/sources.gni | 3 + gen/sources.json | 3 + 11 files changed, 1076 insertions(+), 2 deletions(-) create mode 100644 crypto/spake2plus/internal.h create mode 100644 crypto/spake2plus/spake2plus.cc create mode 100644 crypto/spake2plus/spake2plus_test.cc diff --git a/AUTHORS b/AUTHORS index 78c3a2a0c1..f3e85c03ad 100644 --- a/AUTHORS +++ b/AUTHORS @@ -6,6 +6,7 @@ # source control. Google LLC Brian Smith +Apple Inc # Additionally, much of the code in BoringSSL is derived from code in the # OpenSSL project. We thank the OpenSSL projectโ€™s contributors for their diff --git a/build.json b/build.json index 71489c9dfa..c9d17780b6 100644 --- a/build.json +++ b/build.json @@ -316,6 +316,7 @@ "crypto/sha/sha256.cc", "crypto/sha/sha512.cc", "crypto/siphash/siphash.cc", + "crypto/spake2plus/spake2plus.cc", "crypto/stack/stack.cc", "crypto/thread.cc", "crypto/thread_none.cc", @@ -542,6 +543,7 @@ "crypto/rand_extra/getrandom_fillin.h", "crypto/rand_extra/sysrand_internal.h", "crypto/rsa_extra/internal.h", + "crypto/spake2plus/internal.h", "crypto/trust_token/internal.h", "crypto/x509/ext_dat.h", "crypto/x509/internal.h", @@ -859,6 +861,7 @@ "crypto/self_test.cc", "crypto/siphash/siphash_test.cc", "crypto/slhdsa/slhdsa_test.cc", + "crypto/spake2plus/spake2plus_test.cc", "crypto/stack/stack_test.cc", "crypto/test/gtest_main.cc", "crypto/thread_test.cc", diff --git a/crypto/fipsmodule/ec/internal.h b/crypto/fipsmodule/ec/internal.h index 5c37605506..1f3d06eb37 100644 --- a/crypto/fipsmodule/ec/internal.h +++ b/crypto/fipsmodule/ec/internal.h @@ -73,6 +73,11 @@ OPENSSL_EXPORT int ec_scalar_from_bytes(const EC_GROUP *group, EC_SCALAR *out, void ec_scalar_reduce(const EC_GROUP *group, EC_SCALAR *out, const BN_ULONG *words, size_t num); +// ec_random_nonzero_scalar sets |out| to a uniformly selected random value from +// zero to |group->order| - 1. It returns one on success and zero on error. +int ec_random_scalar(const EC_GROUP *group, EC_SCALAR *out, + const uint8_t additional_data[32]); + // ec_random_nonzero_scalar sets |out| to a uniformly selected random value from // 1 to |group->order| - 1. It returns one on success and zero on error. int ec_random_nonzero_scalar(const EC_GROUP *group, EC_SCALAR *out, diff --git a/crypto/fipsmodule/ec/scalar.cc.inc b/crypto/fipsmodule/ec/scalar.cc.inc index 4cf6d1fe5d..d5d9d62243 100644 --- a/crypto/fipsmodule/ec/scalar.cc.inc +++ b/crypto/fipsmodule/ec/scalar.cc.inc @@ -16,9 +16,9 @@ #include #include -#include "internal.h" -#include "../bn/internal.h" #include "../../internal.h" +#include "../bn/internal.h" +#include "internal.h" int ec_bignum_to_scalar(const EC_GROUP *group, EC_SCALAR *out, @@ -49,6 +49,12 @@ int ec_scalar_is_zero(const EC_GROUP *group, const EC_SCALAR *a) { return mask == 0; } +int ec_random_scalar(const EC_GROUP *group, EC_SCALAR *out, + const uint8_t additional_data[32]) { + return bn_rand_range_words(out->words, 0, group->order.N.d, + group->order.N.width, additional_data); +} + int ec_random_nonzero_scalar(const EC_GROUP *group, EC_SCALAR *out, const uint8_t additional_data[32]) { return bn_rand_range_words(out->words, 1, group->order.N.d, diff --git a/crypto/spake2plus/internal.h b/crypto/spake2plus/internal.h new file mode 100644 index 0000000000..d90e3b31b7 --- /dev/null +++ b/crypto/spake2plus/internal.h @@ -0,0 +1,204 @@ +/* Copyright 2024 The BoringSSL Authors + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#ifndef OPENSSL_HEADER_SPAKE2PLUS_INTERNAL_H +#define OPENSSL_HEADER_SPAKE2PLUS_INTERNAL_H + +#include + +#include + +#include +#include + +#include "../fipsmodule/ec/internal.h" + + +BSSL_NAMESPACE_BEGIN + +// SPAKE2+. +// +// SPAKE2+ is an augmented password-authenticated key-exchange. It allows +// two parties, a prover and verifier, to derive a strong shared key with no +// risk of disclosing the password, known only to the prover, to the verifier. +// (But note that the verifier can still attempt an offline, brute-force attack +// to recover the password.) +// +// This is an implementation of SPAKE2+ using P-256 as the group, SHA-256 as +// the hash function, HKDF-SHA256 as the key derivation function, and +// HMAC-SHA256 as the message authentication code. +// +// See https://www.rfc-editor.org/rfc/rfc9383.html + +namespace spake2plus { + +// kShareSize is the size of a SPAKE2+ key share. +constexpr size_t kShareSize = 65; + +// kConfirmSize is the size of a SPAKE2+ key confirmation message. +constexpr size_t kConfirmSize = 32; + +// kVerifierSize is the size of the w0 and w1 values in the SPAKE2+ protocol. +constexpr size_t kVerifierSize = 32; + +// kRegistrationRecordSize is the number of bytes in a registration record, +// which is provided to the verifier. +constexpr size_t kRegistrationRecordSize = 65; + +// kSecretSize is the number of bytes of shared secret that the SPAKE2+ protocol +// generates. +constexpr size_t kSecretSize = 32; + +// Register computes the values needed in the offline registration +// step of the SPAKE2+ protocol. See the following for more details: +// https://www.rfc-editor.org/rfc/rfc9383.html#section-3.2 +// +// The |password| argument is the mandatory prover password. The |out_w0|, +// |out_w1|, and |out_registration_record| arguments are where the password +// verifiers (w0 and w1) and registration record (L) are stored, respectively. +// The prover is given |out_w0| and |out_w1| while the verifier is given +// |out_w0| and |out_registration_record|. +// +// To ensure success, |out_w0| and |out_w1| must be of length |kVerifierSize|, +// and |out_registration_record| of size |kRegistrationRecordSize|. +[[nodiscard]] OPENSSL_EXPORT bool Register( + Span out_w0, Span out_w1, + Span out_registration_record, Span password, + Span id_prover, Span id_verifier); + +class OPENSSL_EXPORT Prover { + public: + static constexpr bool kAllowUniquePtr = true; + + Prover(); + ~Prover(); + + // Init creates a new prover, which can only be used for a single execution of + // the protocol. + // + // The |context| argument is an application-specific value meant to constrain + // the protocol execution. The |w0| and |w1| arguments are password verifier + // values computed during the offline registration phase of the protocol. The + // |id_prover| and |id_verifier| arguments allow optional, opaque names to be + // bound into the protocol. See the following for more information about how + // these identities may be chosen: + // https://www.rfc-editor.org/rfc/rfc9383.html#name-definition-of-spake2 + [[nodiscard]] bool Init(Span context, + Span id_prover, + Span id_verifier, + Span w0, Span w1, + Span x = Span()); + + // GenerateShare computes a SPAKE2+ share and writes it to |out_share|. + // + // This function can only be called once for a given |Prover|. To ensure + // success, |out_share| must be |kShareSize| bytes. + [[nodiscard]] bool GenerateShare(Span out_share); + + // ComputeConfirmation computes a SPAKE2+ key confirmation + // message and writes it to |out_confirm|. It also computes the shared secret + // and writes it to |out_secret|. + // + // This function can only be called once for a given |Prover|. + // + // To ensure success, |out_confirm| must be |kConfirmSize| bytes + // and |out_secret| must be |kSecretSize| bytes. + [[nodiscard]] bool ComputeConfirmation(Span out_confirm, + Span out_secret, + Span peer_share, + Span peer_confirm); + + private: + enum class State { + kInit, + kShareGenerated, + kConfirmGenerated, + kDone, + }; + + State state_ = State::kInit; + SHA256_CTX transcript_hash_; + EC_SCALAR w0_; + EC_SCALAR w1_; + EC_SCALAR x_; + EC_AFFINE X_; + uint8_t share_[kShareSize]; +}; + +class OPENSSL_EXPORT Verifier { + public: + static constexpr bool kAllowUniquePtr = true; + + Verifier(); + ~Verifier(); + + // Init creates a new verifier, which can only be used for a single execution + // of the protocol. + // + // The |context| argument is an application-specific value meant to constrain + // the protocol execution. The |w0| and |registration_record| arguments are + // required, and are computed by the prover via |Register|. Only the prover + // can produce |w0| and |registration_record|, as they require + // knowledge of the password. The prover must securely transmit this to the + // verifier out-of-band. The |id_prover| and |id_verifier| arguments allow + // optional, opaque names to be bound into the protocol. See the following for + // more information about how these identities may be chosen: + // https://www.rfc-editor.org/rfc/rfc9383.html#name-definition-of-spake2 + [[nodiscard]] bool Init(Span context, + Span id_prover, + Span id_verifier, + Span w0, + Span registration_record, + Span y = Span()); + + // ProcessProverShare computes a SPAKE2+ share from an input share, + // |prover_share|, and writes it to |out_share|. It also computes the key + // confirmation message and writes it to |out_confirm|. Finally, it computes + // the shared secret and writes it to |out_secret|. + // + // This function can only be called once for a given |Verifier|. + // + // To ensure success, |out_share| must be |kShareSize| bytes, |out_confirm| + // must be |kConfirmSize| bytes, and |out_secret| must be |kSecretSize| bytes. + [[nodiscard]] bool ProcessProverShare(Span out_share, + Span out_confirm, + Span out_secret, + Span prover_share); + + // VerifyProverConfirmation verifies a SPAKE2+ key confirmation message, + // |prover_confirm|. + // + // This function can only be called once for a given |Verifier|. + [[nodiscard]] bool VerifyProverConfirmation(Span peer_confirm); + + private: + enum class State { + kInit, + kProverShareSeen, + kDone, + }; + + State state_ = State::kInit; + SHA256_CTX transcript_hash_; + EC_SCALAR w0_; + EC_AFFINE L_; + EC_SCALAR y_; + uint8_t confirm_[kConfirmSize]; +}; + +} // namespace spake2plus + +BSSL_NAMESPACE_END + +#endif // OPENSSL_HEADER_SPAKE2PLUS_INTERNAL_H diff --git a/crypto/spake2plus/spake2plus.cc b/crypto/spake2plus/spake2plus.cc new file mode 100644 index 0000000000..c19185509f --- /dev/null +++ b/crypto/spake2plus/spake2plus.cc @@ -0,0 +1,501 @@ +/* Copyright 2024 The BoringSSL Authors + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#include + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "../fipsmodule/bn/internal.h" +#include "../fipsmodule/ec/internal.h" +#include "../internal.h" +#include "./internal.h" +#include "openssl/err.h" + +BSSL_NAMESPACE_BEGIN +namespace spake2plus { +namespace { + +const uint8_t kDefaultAdditionalData[32] = {0}; + +// https://www.rfc-editor.org/rfc/rfc9383.html#appendix-B +// seed: 1.2.840.10045.3.1.7 point generation seed (M) +// M = +// 02886e2f97ace46e55ba9dd7242579f2993b64e16ef3dcab95afd497333d8fa12f +// +// `M` is interpreted as a X9.62-format compressed point. This is then the +// uncompressed form: +const uint8_t kM_bytes[] = { + 0x04, 0x88, 0x6e, 0x2f, 0x97, 0xac, 0xe4, 0x6e, 0x55, 0xba, 0x9d, + 0xd7, 0x24, 0x25, 0x79, 0xf2, 0x99, 0x3b, 0x64, 0xe1, 0x6e, 0xf3, + 0xdc, 0xab, 0x95, 0xaf, 0xd4, 0x97, 0x33, 0x3d, 0x8f, 0xa1, 0x2f, + 0x5f, 0xf3, 0x55, 0x16, 0x3e, 0x43, 0xce, 0x22, 0x4e, 0x0b, 0x0e, + 0x65, 0xff, 0x02, 0xac, 0x8e, 0x5c, 0x7b, 0xe0, 0x94, 0x19, 0xc7, + 0x85, 0xe0, 0xca, 0x54, 0x7d, 0x55, 0xa1, 0x2e, 0x2d, 0x20}; + +// https://www.rfc-editor.org/rfc/rfc9383.html#appendix-B +// seed: 1.2.840.10045.3.1.7 point generation seed (N) +// N = +// 03d8bbd6c639c62937b04d997f38c3770719c629d7014d49a24b4f98baa1292b49 +// +// `N` is interpreted as a X9.62-format compressed point. This is then the +// uncompressed form: +const uint8_t kN_bytes[] = { + 0x04, 0xd8, 0xbb, 0xd6, 0xc6, 0x39, 0xc6, 0x29, 0x37, 0xb0, 0x4d, + 0x99, 0x7f, 0x38, 0xc3, 0x77, 0x07, 0x19, 0xc6, 0x29, 0xd7, 0x01, + 0x4d, 0x49, 0xa2, 0x4b, 0x4f, 0x98, 0xba, 0xa1, 0x29, 0x2b, 0x49, + 0x07, 0xd6, 0x0a, 0xa6, 0xbf, 0xad, 0xe4, 0x50, 0x08, 0xa6, 0x36, + 0x33, 0x7f, 0x51, 0x68, 0xc6, 0x4d, 0x9b, 0xd3, 0x60, 0x34, 0x80, + 0x8c, 0xd5, 0x64, 0x49, 0x0b, 0x1e, 0x65, 0x6e, 0xdb, 0xe7}; + +void UpdateWithLengthPrefix(SHA256_CTX *sha, Span data) { + uint8_t len_le[8]; + CRYPTO_store_u64_le(len_le, data.size()); + SHA256_Update(sha, len_le, sizeof(len_le)); + SHA256_Update(sha, data.data(), data.size()); +} + +void ConstantToJacobian(const EC_GROUP *group, EC_JACOBIAN *out, + bssl::Span in) { + EC_AFFINE point; + BSSL_CHECK(ec_point_from_uncompressed(group, &point, in.data(), in.size())); + ec_affine_to_jacobian(group, out, &point); +} + +void ScalarToSizedBuffer(const EC_GROUP *group, const EC_SCALAR *s, + Span out_buf) { + size_t out_bytes; + ec_scalar_to_bytes(group, out_buf.data(), &out_bytes, s); + BSSL_CHECK(out_bytes == out_buf.size()); +} + +bool AddLengthPrefixed(CBB *cbb, Span bytes) { + return CBB_add_u64le(cbb, bytes.size()) && + CBB_add_bytes(cbb, bytes.data(), bytes.size()); +} + +void InitTranscriptHash(SHA256_CTX *sha, Span context, + Span id_prover, + Span id_verifier) { + SHA256_Init(sha); + UpdateWithLengthPrefix(sha, context); + UpdateWithLengthPrefix(sha, id_prover); + UpdateWithLengthPrefix(sha, id_verifier); + UpdateWithLengthPrefix(sha, kM_bytes); + UpdateWithLengthPrefix(sha, kN_bytes); +} + +bool ComputeTranscript(uint8_t out_prover_confirm[kConfirmSize], + uint8_t out_verifier_confirm[kConfirmSize], + uint8_t out_secret[kSecretSize], + const uint8_t prover_share[kShareSize], + const uint8_t verifier_share[kShareSize], + SHA256_CTX *sha, const EC_AFFINE *Z, const EC_AFFINE *V, + const EC_SCALAR *w0) { + const EC_GROUP *group = EC_group_p256(); + + uint8_t Z_enc[kShareSize]; + size_t Z_enc_len = ec_point_to_bytes(group, Z, POINT_CONVERSION_UNCOMPRESSED, + Z_enc, sizeof(Z_enc)); + BSSL_CHECK(Z_enc_len == sizeof(Z_enc)); + + uint8_t V_enc[kShareSize]; + size_t V_enc_len = ec_point_to_bytes(group, V, POINT_CONVERSION_UNCOMPRESSED, + V_enc, sizeof(V_enc)); + BSSL_CHECK(V_enc_len == sizeof(V_enc)); + + uint8_t w0_enc[kVerifierSize]; + ScalarToSizedBuffer(group, w0, w0_enc); + + uint8_t K_main[SHA256_DIGEST_LENGTH]; + UpdateWithLengthPrefix(sha, Span(prover_share, kShareSize)); + UpdateWithLengthPrefix(sha, Span(verifier_share, kShareSize)); + UpdateWithLengthPrefix(sha, Z_enc); + UpdateWithLengthPrefix(sha, V_enc); + UpdateWithLengthPrefix(sha, w0_enc); + SHA256_Final(K_main, sha); + + auto confirmation_str = StringAsBytes("ConfirmationKeys"); + uint8_t keys[kSecretSize * 2]; + if (!HKDF(keys, sizeof(keys), EVP_sha256(), K_main, sizeof(K_main), nullptr, + 0, confirmation_str.data(), confirmation_str.size())) { + return false; + } + + auto secret_info_str = StringAsBytes("SharedKey"); + if (!HKDF(out_secret, kSecretSize, EVP_sha256(), K_main, sizeof(K_main), + nullptr, 0, secret_info_str.data(), secret_info_str.size())) { + return false; + } + + unsigned prover_confirm_len; + if (HMAC(EVP_sha256(), keys, kSecretSize, verifier_share, kShareSize, + out_prover_confirm, &prover_confirm_len) == nullptr) { + return false; + } + BSSL_CHECK(prover_confirm_len == kConfirmSize); + + unsigned verifier_confirm_len; + if (HMAC(EVP_sha256(), keys + kSecretSize, kSecretSize, prover_share, + kShareSize, out_verifier_confirm, + &verifier_confirm_len) == nullptr) { + return false; + } + BSSL_CHECK(verifier_confirm_len == kConfirmSize); + + return true; +} + +} // namespace + +bool Register(Span out_w0, Span out_w1, + Span out_registration_record, + Span password, Span id_prover, + Span id_verifier) { + if (out_w0.size() != kVerifierSize || out_w1.size() != kVerifierSize || + out_registration_record.size() != kRegistrationRecordSize) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + // Offline registration format from: + // https://www.rfc-editor.org/rfc/rfc9383.html#section-3.2 + ScopedCBB mhf_input; + if (!CBB_init(mhf_input.get(), password.size() + id_prover.size() + + id_verifier.size() + + 3 * sizeof(uint64_t)) || // + !AddLengthPrefixed(mhf_input.get(), password) || + !AddLengthPrefixed(mhf_input.get(), id_prover) || + !AddLengthPrefixed(mhf_input.get(), id_verifier) || + !CBB_flush(mhf_input.get())) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + // https://neuromancer.sk/std/nist/P-256 + // sage: p = + // 0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff + // ....: K = GF(p) + // ....: a = + // K(0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc) + // ....: b = + // K(0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b) + // ....: E = EllipticCurve(K, (a, b)) + // ....: G = + // E(0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296, + // ....: 0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5) + // ....: + // E.set_order(0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63 + // ....: 2551 * 0x1) + // sage: k = 64 + // sage: L = (2 * (ceil(log(p)/log(2)) + k)) / 8 + + // RFC 9383 Section 3.2 + constexpr size_t kKDFOutputSize = 80; + constexpr size_t kKDFOutputWords = kKDFOutputSize / BN_BYTES; + + uint8_t key[kKDFOutputSize]; + if (!EVP_PBE_scrypt((const char *)CBB_data(mhf_input.get()), + CBB_len(mhf_input.get()), nullptr, 0, + /*N=*/32768, /*r=*/8, /*p=*/1, + /*max_mem=*/1024 * 1024 * 33, key, kKDFOutputSize)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + const EC_GROUP *group = EC_group_p256(); + BN_ULONG w0_words[kKDFOutputWords / 2]; + bn_big_endian_to_words(w0_words, kKDFOutputWords / 2, key, + kKDFOutputSize / 2); + EC_SCALAR w0; + ec_scalar_reduce(group, &w0, w0_words, kKDFOutputWords / 2); + ScalarToSizedBuffer(group, &w0, out_w0); + + BN_ULONG w1_words[kKDFOutputWords / 2]; + bn_big_endian_to_words(w1_words, kKDFOutputWords / 2, + key + kKDFOutputSize / 2, kKDFOutputSize / 2); + EC_SCALAR w1; + ec_scalar_reduce(group, &w1, w1_words, kKDFOutputWords / 2); + ScalarToSizedBuffer(group, &w1, out_w1); + + EC_JACOBIAN L_j; + EC_AFFINE L; + if (!ec_point_mul_scalar_base(group, &L_j, &w1) || // + !ec_jacobian_to_affine(group, &L, &L_j) || // + !ec_point_to_bytes(group, &L, POINT_CONVERSION_UNCOMPRESSED, + out_registration_record.data(), + kRegistrationRecordSize)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + return true; +} + +Prover::Prover() = default; +Prover::~Prover() = default; + +bool Prover::Init(Span context, Span id_prover, + Span id_verifier, Span w0, + Span w1, Span x) { + const EC_GROUP *group = EC_group_p256(); + + if (!ec_scalar_from_bytes(group, &w0_, w0.data(), w0.size()) || + !ec_scalar_from_bytes(group, &w1_, w1.data(), w1.size()) || + (!x.empty() && + !ec_scalar_from_bytes(group, &x_, x.data(), x.size())) || // + (x.empty() && !ec_random_scalar(group, &x_, kDefaultAdditionalData))) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + InitTranscriptHash(&transcript_hash_, context, id_prover, id_verifier); + + return true; +} + +bool Prover::GenerateShare(Span out_share) { + if (state_ != State::kInit || out_share.size() != kShareSize) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + // Compute X = xร—P + w0ร—M. + // TODO(crbug.com/383778231): This could be sped up with a constant-time, + // two-point multiplication. + const EC_GROUP *group = EC_group_p256(); + EC_JACOBIAN l; + if (!ec_point_mul_scalar_base(group, &l, &x_)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + EC_JACOBIAN M_j; + ConstantToJacobian(group, &M_j, kM_bytes); + + EC_JACOBIAN r; + if (!ec_point_mul_scalar(group, &r, &M_j, &w0_)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + EC_JACOBIAN X_j; + group->meth->add(group, &X_j, &l, &r); + if (!ec_jacobian_to_affine(group, &X_, &X_j)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + size_t written = ec_point_to_bytes(group, &X_, POINT_CONVERSION_UNCOMPRESSED, + out_share.data(), kShareSize); + BSSL_CHECK(written == kShareSize); + + memcpy(share_, out_share.data(), kShareSize); + state_ = State::kShareGenerated; + return true; +} + +bool Prover::ComputeConfirmation(Span out_confirm, + Span out_secret, + Span peer_share, + Span peer_confirm) { + if (state_ != State::kShareGenerated || out_confirm.size() != kConfirmSize || + out_secret.size() != kSecretSize || peer_share.size() != kShareSize || + peer_confirm.size() != kConfirmSize) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + const EC_GROUP *group = EC_group_p256(); + EC_AFFINE Y; + if (!ec_point_from_uncompressed(group, &Y, peer_share.data(), + peer_share.size())) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + EC_JACOBIAN N_j; + ConstantToJacobian(group, &N_j, kN_bytes); + + EC_JACOBIAN r; + if (!ec_point_mul_scalar(group, &r, &N_j, &w0_)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + ec_felem_neg(group, &r.Y, &r.Y); + + EC_JACOBIAN Y_j; + ec_affine_to_jacobian(group, &Y_j, &Y); + + EC_JACOBIAN t; + group->meth->add(group, &t, &Y_j, &r); + + EC_JACOBIAN tmp; + EC_AFFINE Z, V; + // TODO(crbug.com/383778231): The two affine conversions could be batched + // together. + if (!ec_point_mul_scalar(group, &tmp, &t, &x_) || // + !ec_jacobian_to_affine(group, &Z, &tmp) || // + !ec_point_mul_scalar(group, &tmp, &t, &w1_) || // + !ec_jacobian_to_affine(group, &V, &tmp)) { + return 0; + } + + uint8_t verifier_confirm[kConfirmSize]; + if (!ComputeTranscript(out_confirm.data(), verifier_confirm, + out_secret.data(), share_, peer_share.data(), + &transcript_hash_, &Z, &V, &w0_) || + CRYPTO_memcmp(verifier_confirm, peer_confirm.data(), + sizeof(verifier_confirm)) != 0) { + return 0; + } + + state_ = State::kDone; + return true; +} + +Verifier::Verifier() = default; +Verifier::~Verifier() = default; + +bool Verifier::Init(Span context, Span id_prover, + Span id_verifier, Span w0, + Span registration_record, + Span y) { + const EC_GROUP *group = EC_group_p256(); + + if (!ec_scalar_from_bytes(group, &w0_, w0.data(), w0.size()) || + !ec_point_from_uncompressed(group, &L_, registration_record.data(), + registration_record.size()) || // + (!y.empty() && + !ec_scalar_from_bytes(group, &y_, y.data(), y.size())) || // + (y.empty() && !ec_random_scalar(group, &y_, kDefaultAdditionalData))) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + InitTranscriptHash(&transcript_hash_, context, id_prover, id_verifier); + + return true; +} + + +bool Verifier::ProcessProverShare(Span out_share, + Span out_confirm, + Span out_secret, + Span prover_share) { + if (state_ != State::kInit || // + out_share.size() != kShareSize || out_confirm.size() != kConfirmSize || + out_secret.size() != kSecretSize || prover_share.size() != kShareSize) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + const EC_GROUP *group = EC_group_p256(); + EC_JACOBIAN l, r, M_j, N_j; + ConstantToJacobian(group, &M_j, kM_bytes); + ConstantToJacobian(group, &N_j, kN_bytes); + + // Compute Y = yร—P + w0ร—M. + // TODO(crbug.com/383778231): This could be sped up with a constant-time, + // two-point multiplication. + if (!ec_point_mul_scalar_base(group, &l, &y_) || + !ec_point_mul_scalar(group, &r, &N_j, &w0_)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + EC_JACOBIAN Y_j; + EC_AFFINE Y; + group->meth->add(group, &Y_j, &l, &r); + if (!ec_jacobian_to_affine(group, &Y, &Y_j)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + const size_t written = ec_point_to_bytes( + group, &Y, POINT_CONVERSION_UNCOMPRESSED, out_share.data(), kShareSize); + BSSL_CHECK(written == kShareSize); + + EC_JACOBIAN r2; + EC_AFFINE X; + if (!ec_point_from_uncompressed(group, &X, prover_share.data(), + prover_share.size()) || + !ec_point_mul_scalar(group, &r2, &M_j, &w0_)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + ec_felem_neg(group, &r2.Y, &r2.Y); + + EC_JACOBIAN X_j, T; + ec_affine_to_jacobian(group, &X_j, &X); + group->meth->add(group, &T, &X_j, &r2); + + // TODO(crbug.com/383778231): The two affine conversions could be batched + // together. + EC_JACOBIAN tmp; + EC_AFFINE Z; + if (!ec_point_mul_scalar(group, &tmp, &T, &y_) || // + !ec_jacobian_to_affine(group, &Z, &tmp)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + EC_JACOBIAN L_j; + EC_AFFINE V; + ec_affine_to_jacobian(group, &L_j, &L_); + if (!ec_point_mul_scalar(group, &tmp, &L_j, &y_) || // + !ec_jacobian_to_affine(group, &V, &tmp)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + if (!ComputeTranscript(confirm_, out_confirm.data(), out_secret.data(), + prover_share.data(), out_share.data(), + &transcript_hash_, &Z, &V, &w0_)) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + state_ = State::kProverShareSeen; + return true; +} + +bool Verifier::VerifyProverConfirmation(Span peer_confirm) { + if (state_ != State::kProverShareSeen || // + peer_confirm.size() != kConfirmSize || // + CRYPTO_memcmp(confirm_, peer_confirm.data(), sizeof(confirm_)) != 0) { + OPENSSL_PUT_ERROR(CRYPTO, ERR_R_INTERNAL_ERROR); + return false; + } + + state_ = State::kDone; + return true; +} + +} // namespace spake2plus + +BSSL_NAMESPACE_END diff --git a/crypto/spake2plus/spake2plus_test.cc b/crypto/spake2plus/spake2plus_test.cc new file mode 100644 index 0000000000..35ad18e0e5 --- /dev/null +++ b/crypto/spake2plus/spake2plus_test.cc @@ -0,0 +1,342 @@ +/* Copyright 2024 The BoringSSL Authors + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#include + +#include +#include +#include +#include + +#include +#include +#include + +#include +#include + +#include + +#include "../internal.h" +#include "../test/test_util.h" +#include "./internal.h" + + +BSSL_NAMESPACE_BEGIN + +namespace { + +using namespace spake2plus; + +std::vector HexToBytes(const char *str) { + std::vector ret; + if (!DecodeHex(&ret, str)) { + abort(); + } + return ret; +} + +class RegistrationCache { + public: + struct Result { + std::vector w0, w1, record; + }; + + const Result &Get(const std::pair &names, + const std::string &pw) { + CacheKey key{names.first, names.second, pw}; + + auto it = cache.find(key); + if (it != cache.end()) { + return it->second; + } + + Result output; + output.w0.resize(kVerifierSize); + output.w1.resize(kVerifierSize); + output.record.resize(kRegistrationRecordSize); + + if (!Register(Span(output.w0), Span(output.w1), Span(output.record), + StringAsBytes(pw), StringAsBytes(names.first), + StringAsBytes(names.second))) { + abort(); + } + + return cache.emplace(std::move(key), std::move(output)).first->second; + } + + private: + struct CacheKey { + std::string id_prover, id_verifier, password; + + bool operator==(const CacheKey &other) const { + return std::tie(id_prover, id_verifier, password) == + std::tie(other.id_prover, other.id_verifier, other.password); + } + }; + + struct KeyHash { + std::size_t operator()(const CacheKey &k) const { + return std::hash()(k.id_prover) ^ + std::hash()(k.id_verifier) ^ + std::hash()(k.password); + } + }; + + std::unordered_map cache; +}; + +RegistrationCache &GlobalRegistrationCache() { + static RegistrationCache cache; + return cache; +} + +struct SPAKEPLUSRun { + bool Run() { + const RegistrationCache::Result ®istration = + GlobalRegistrationCache().Get(prover_names, pw); + + Prover prover; + if (!prover.Init(StringAsBytes(context), StringAsBytes(prover_names.first), + StringAsBytes(prover_names.second), registration.w0, + registration.w1)) { + return false; + } + + std::vector verifier_registration_record = registration.record; + if (verifier_corrupt_record) { + verifier_registration_record[verifier_registration_record.size() - 1] ^= + 0xFF; + } + + Verifier verifier; + if (!verifier.Init(StringAsBytes(context), + StringAsBytes(verifier_names.first), + StringAsBytes(verifier_names.second), registration.w0, + verifier_registration_record)) { + return false; + } + + uint8_t prover_share[kShareSize]; + if (!prover.GenerateShare(prover_share)) { + return false; + } + + if (repeat_invocations && prover.GenerateShare(prover_share)) { + return false; + } + + if (prover_corrupt_msg_bit && + *prover_corrupt_msg_bit < 8 * sizeof(prover_share)) { + prover_share[*prover_corrupt_msg_bit / 8] ^= + 1 << (*prover_corrupt_msg_bit & 7); + } + + uint8_t verifier_share[kShareSize]; + uint8_t verifier_confirm[kConfirmSize]; + uint8_t verifier_secret[kSecretSize]; + if (!verifier.ProcessProverShare(verifier_share, verifier_confirm, + verifier_secret, prover_share)) { + return false; + } + + if (repeat_invocations && + verifier.ProcessProverShare(verifier_share, verifier_confirm, + verifier_secret, prover_share)) { + return false; + } + + uint8_t prover_confirm[kConfirmSize]; + uint8_t prover_secret[kSecretSize]; + if (!prover.ComputeConfirmation(prover_confirm, prover_secret, + verifier_share, verifier_confirm)) { + return false; + } + + if (repeat_invocations && // + prover.ComputeConfirmation(prover_confirm, prover_secret, + verifier_share, verifier_confirm)) { + return false; + } + + if (prover_corrupt_confirm_bit && + *prover_corrupt_confirm_bit < 8 * sizeof(prover_confirm)) { + prover_confirm[*prover_corrupt_confirm_bit / 8] ^= + 1 << (*prover_corrupt_confirm_bit & 7); + } + + if (!verifier.VerifyProverConfirmation(prover_confirm)) { + return false; + } + + if (repeat_invocations && + verifier.VerifyProverConfirmation(prover_confirm)) { + return false; + } + + key_matches_ = Span(prover_secret) == Span(verifier_secret); + return true; + } + + bool key_matches() const { return key_matches_; } + + std::string context = + "SPAKE2+-P256-SHA256-HKDF-SHA256-HMAC-SHA256 Test Vectors"; + std::string pw = "password"; + std::pair prover_names = {"client", "server"}; + std::pair verifier_names = {"client", "server"}; + bool verifier_corrupt_record = false; + bool repeat_invocations = false; + std::optional prover_corrupt_msg_bit; + std::optional prover_corrupt_confirm_bit; + + private: + bool key_matches_ = false; +}; + +TEST(SPAKEPLUSTest, TestVectors) { + // https://datatracker.ietf.org/doc/html/rfc9383#appendix-C + // SPAKE2+-P256-SHA256-HKDF-SHA256-HMAC-SHA256 Test Vectors + const char w0_str[] = + "bb8e1bbcf3c48f62c08db243652ae55d3e5586053fca77102994f23ad95491b3"; + const char w1_str[] = + "7e945f34d78785b8a3ef44d0df5a1a97d6b3b460409a345ca7830387a74b1dba"; + const char L_str[] = + "04eb7c9db3d9a9eb1f8adab81b5794c1f13ae3e225efbe91ea487425854c7fc00f00bfed" + "cbd09b2400142d40a14f2064ef31dfaa903b91d1faea7093d835966efd"; + const char x_str[] = + "d1232c8e8693d02368976c174e2088851b8365d0d79a9eee709c6a05a2fad539"; + const char share_p_str[] = + "04ef3bd051bf78a2234ec0df197f7828060fe9856503579bb1733009042c15c0c1de1277" + "27f418b5966afadfdd95a6e4591d171056b333dab97a79c7193e341727"; + const char y_str[] = + "717a72348a182085109c8d3917d6c43d59b224dc6a7fc4f0483232fa6516d8b3"; + const char share_v_str[] = + "04c0f65da0d11927bdf5d560c69e1d7d939a05b0e88291887d679fcadea75810fb5cc1ca" + "7494db39e82ff2f50665255d76173e09986ab46742c798a9a68437b048"; + const char confirm_p_str[] = + "926cc713504b9b4d76c9162ded04b5493e89109f6d89462cd33adc46fda27527"; + const char confirm_v_str[] = + "9747bcc4f8fe9f63defee53ac9b07876d907d55047e6ff2def2e7529089d3e68"; + const char secret_str[] = + "0c5f8ccd1413423a54f6c1fb26ff01534a87f893779c6e68666d772bfd91f3e7"; + const std::string context = + "SPAKE2+-P256-SHA256-HKDF-SHA256-HMAC-SHA256 Test Vectors"; + const std::pair prover_names = {"client", "server"}; + const std::pair verifier_names = {"client", + "server"}; + + std::vector w0 = HexToBytes(w0_str); + std::vector w1 = HexToBytes(w1_str); + std::vector registration_record = HexToBytes(L_str); + std::vector x = HexToBytes(x_str); + std::vector y = HexToBytes(y_str); + + Prover prover; + ASSERT_TRUE(prover.Init(StringAsBytes(context), + StringAsBytes(prover_names.first), + StringAsBytes(prover_names.second), MakeConstSpan(w0), + MakeConstSpan(w1), x)); + + Verifier verifier; + ASSERT_TRUE( + verifier.Init(StringAsBytes(context), StringAsBytes(prover_names.first), + StringAsBytes(prover_names.second), MakeConstSpan(w0), + MakeConstSpan(registration_record), y)); + + uint8_t prover_share[kShareSize]; + ASSERT_TRUE(prover.GenerateShare(prover_share)); + + std::vector share_p = HexToBytes(share_p_str); + ASSERT_TRUE( + OPENSSL_memcmp(share_p.data(), prover_share, sizeof(prover_share)) == 0); + + uint8_t verifier_share[kShareSize]; + uint8_t verifier_confirm[kConfirmSize]; + uint8_t verifier_secret[kSecretSize]; + ASSERT_TRUE(verifier.ProcessProverShare(verifier_share, verifier_confirm, + verifier_secret, prover_share)); + + std::vector share_v = HexToBytes(share_v_str); + ASSERT_TRUE(OPENSSL_memcmp(share_v.data(), verifier_share, + sizeof(verifier_share)) == 0); + std::vector confirm_v = HexToBytes(confirm_v_str); + ASSERT_TRUE(OPENSSL_memcmp(confirm_v.data(), verifier_confirm, + sizeof(verifier_confirm)) == 0); + + uint8_t prover_confirm[kConfirmSize]; + uint8_t prover_secret[kSecretSize]; + ASSERT_TRUE(prover.ComputeConfirmation(prover_confirm, prover_secret, + verifier_share, verifier_confirm)); + + std::vector confirm_p = HexToBytes(confirm_p_str); + ASSERT_TRUE(OPENSSL_memcmp(confirm_p.data(), prover_confirm, + sizeof(prover_confirm)) == 0); + + ASSERT_TRUE(verifier.VerifyProverConfirmation(prover_confirm)); + + std::vector expected_secret = HexToBytes(secret_str); + static_assert(sizeof(verifier_secret) == sizeof(prover_secret)); + ASSERT_TRUE(OPENSSL_memcmp(prover_secret, verifier_secret, + sizeof(prover_secret)) == 0); + ASSERT_TRUE(OPENSSL_memcmp(expected_secret.data(), verifier_secret, + sizeof(verifier_secret)) == 0); +} + +TEST(SPAKEPLUSTest, SPAKEPLUS) { + for (unsigned i = 0; i < 20; i++) { + SPAKEPLUSRun spake2; + ASSERT_TRUE(spake2.Run()); + EXPECT_TRUE(spake2.key_matches()); + } +} + +TEST(SPAKEPLUSTest, WrongPassword) { + SPAKEPLUSRun spake2; + spake2.verifier_corrupt_record = true; + ASSERT_FALSE(spake2.Run()); +} + +TEST(SPAKEPLUSTest, WrongNames) { + SPAKEPLUSRun spake2; + spake2.prover_names.second = "alice"; + spake2.verifier_names.second = "bob"; + ASSERT_FALSE(spake2.Run()); +} + +TEST(SPAKEPLUSTest, CorruptMessages) { + for (size_t i = 0; i < 8 * kShareSize; i++) { + SPAKEPLUSRun spake2; + spake2.prover_corrupt_msg_bit = i; + EXPECT_FALSE(spake2.Run()) + << "Passed after corrupting Prover's key share message, bit " << i; + } + + for (size_t i = 0; i < 8 * kConfirmSize; i++) { + SPAKEPLUSRun spake2; + spake2.prover_corrupt_confirm_bit = i; + EXPECT_FALSE(spake2.Run()) + << "Passed after corrupting Verifier's confirmation message, bit " << i; + } +} + +TEST(SPAKEPLUSTest, StateMachine) { + SPAKEPLUSRun spake2; + spake2.repeat_invocations = true; + ASSERT_TRUE(spake2.Run()); +} + +} // namespace + +BSSL_NAMESPACE_END diff --git a/gen/sources.bzl b/gen/sources.bzl index 5af0dd23f5..35f3af6929 100644 --- a/gen/sources.bzl +++ b/gen/sources.bzl @@ -415,6 +415,7 @@ crypto_sources = [ "crypto/sha/sha512.cc", "crypto/siphash/siphash.cc", "crypto/slhdsa/slhdsa.cc", + "crypto/spake2plus/spake2plus.cc", "crypto/stack/stack.cc", "crypto/thread.cc", "crypto/thread_none.cc", @@ -644,6 +645,7 @@ crypto_internal_headers = [ "crypto/rand_extra/getrandom_fillin.h", "crypto/rand_extra/sysrand_internal.h", "crypto/rsa_extra/internal.h", + "crypto/spake2plus/internal.h", "crypto/trust_token/internal.h", "crypto/x509/ext_dat.h", "crypto/x509/internal.h", @@ -757,6 +759,7 @@ crypto_test_sources = [ "crypto/self_test.cc", "crypto/siphash/siphash_test.cc", "crypto/slhdsa/slhdsa_test.cc", + "crypto/spake2plus/spake2plus_test.cc", "crypto/stack/stack_test.cc", "crypto/test/gtest_main.cc", "crypto/thread_test.cc", diff --git a/gen/sources.cmake b/gen/sources.cmake index bbbb9c2449..6979e47666 100644 --- a/gen/sources.cmake +++ b/gen/sources.cmake @@ -429,6 +429,7 @@ set( crypto/sha/sha512.cc crypto/siphash/siphash.cc crypto/slhdsa/slhdsa.cc + crypto/spake2plus/spake2plus.cc crypto/stack/stack.cc crypto/thread.cc crypto/thread_none.cc @@ -662,6 +663,7 @@ set( crypto/rand_extra/getrandom_fillin.h crypto/rand_extra/sysrand_internal.h crypto/rsa_extra/internal.h + crypto/spake2plus/internal.h crypto/trust_token/internal.h crypto/x509/ext_dat.h crypto/x509/internal.h @@ -781,6 +783,7 @@ set( crypto/self_test.cc crypto/siphash/siphash_test.cc crypto/slhdsa/slhdsa_test.cc + crypto/spake2plus/spake2plus_test.cc crypto/stack/stack_test.cc crypto/test/gtest_main.cc crypto/thread_test.cc diff --git a/gen/sources.gni b/gen/sources.gni index b5c3d54223..1b40795eb6 100644 --- a/gen/sources.gni +++ b/gen/sources.gni @@ -415,6 +415,7 @@ crypto_sources = [ "crypto/sha/sha512.cc", "crypto/siphash/siphash.cc", "crypto/slhdsa/slhdsa.cc", + "crypto/spake2plus/spake2plus.cc", "crypto/stack/stack.cc", "crypto/thread.cc", "crypto/thread_none.cc", @@ -644,6 +645,7 @@ crypto_internal_headers = [ "crypto/rand_extra/getrandom_fillin.h", "crypto/rand_extra/sysrand_internal.h", "crypto/rsa_extra/internal.h", + "crypto/spake2plus/internal.h", "crypto/trust_token/internal.h", "crypto/x509/ext_dat.h", "crypto/x509/internal.h", @@ -757,6 +759,7 @@ crypto_test_sources = [ "crypto/self_test.cc", "crypto/siphash/siphash_test.cc", "crypto/slhdsa/slhdsa_test.cc", + "crypto/spake2plus/spake2plus_test.cc", "crypto/stack/stack_test.cc", "crypto/test/gtest_main.cc", "crypto/thread_test.cc", diff --git a/gen/sources.json b/gen/sources.json index c4604c8365..b2e6b523d7 100644 --- a/gen/sources.json +++ b/gen/sources.json @@ -399,6 +399,7 @@ "crypto/sha/sha512.cc", "crypto/siphash/siphash.cc", "crypto/slhdsa/slhdsa.cc", + "crypto/spake2plus/spake2plus.cc", "crypto/stack/stack.cc", "crypto/thread.cc", "crypto/thread_none.cc", @@ -626,6 +627,7 @@ "crypto/rand_extra/getrandom_fillin.h", "crypto/rand_extra/sysrand_internal.h", "crypto/rsa_extra/internal.h", + "crypto/spake2plus/internal.h", "crypto/trust_token/internal.h", "crypto/x509/ext_dat.h", "crypto/x509/internal.h", @@ -738,6 +740,7 @@ "crypto/self_test.cc", "crypto/siphash/siphash_test.cc", "crypto/slhdsa/slhdsa_test.cc", + "crypto/spake2plus/spake2plus_test.cc", "crypto/stack/stack_test.cc", "crypto/test/gtest_main.cc", "crypto/thread_test.cc", From 13840dd094f9e9c1b00a7368aa25e656554221f1 Mon Sep 17 00:00:00 2001 From: Eric Biggers Date: Tue, 14 Jan 2025 20:47:08 +0000 Subject: [PATCH 57/64] Add explicit prefetching to the new AES-GCM code Add explicit prefetching to the main loop of the new AES-GCM code, following the same rationale as change I6312e01ff0da70cc52f09194846b82cc6b69d37a. For now the same prefetch distance of 512 bytes is used. Change-Id: Ib57affb414e88675f3a4c8e124728a0cf412bc0a Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75267 Reviewed-by: David Benjamin Commit-Queue: David Benjamin --- crypto/fipsmodule/modes/asm/aes-gcm-avx10-x86_64.pl | 7 +++++++ crypto/fipsmodule/modes/asm/aes-gcm-avx2-x86_64.pl | 6 ++++++ gen/bcm/aes-gcm-avx10-x86_64-apple.S | 8 ++++++++ gen/bcm/aes-gcm-avx10-x86_64-linux.S | 8 ++++++++ gen/bcm/aes-gcm-avx10-x86_64-win.asm | 8 ++++++++ gen/bcm/aes-gcm-avx2-x86_64-apple.S | 4 ++++ gen/bcm/aes-gcm-avx2-x86_64-linux.S | 4 ++++ gen/bcm/aes-gcm-avx2-x86_64-win.asm | 4 ++++ 8 files changed, 49 insertions(+) diff --git a/crypto/fipsmodule/modes/asm/aes-gcm-avx10-x86_64.pl b/crypto/fipsmodule/modes/asm/aes-gcm-avx10-x86_64.pl index 06ea7e6179..eab607178e 100644 --- a/crypto/fipsmodule/modes/asm/aes-gcm-avx10-x86_64.pl +++ b/crypto/fipsmodule/modes/asm/aes-gcm-avx10-x86_64.pl @@ -1118,6 +1118,13 @@ sub _aes_gcm_update { .Laes128$local_label_suffix: ___ + # Prefetch the source data 512 bytes ahead into the L1 data cache, to + # improve performance when the hardware prefetcher is disabled. Assumes the + # L1 data cache line size is 64 bytes (de facto standard on x86_64). + for ( my $i = 0 ; $i < 4 * $VL ; $i += 64 ) { + $code .= "prefetcht0 512+$i($SRC)\n"; + } + # Finish the AES encryption of the counter blocks in V0-V3, interleaved # with the GHASH update of the ciphertext blocks in GHASHDATA[0-3]. for my $i ( reverse 1 .. 9 ) { diff --git a/crypto/fipsmodule/modes/asm/aes-gcm-avx2-x86_64.pl b/crypto/fipsmodule/modes/asm/aes-gcm-avx2-x86_64.pl index 6ea956bc8e..c8294b10d8 100644 --- a/crypto/fipsmodule/modes/asm/aes-gcm-avx2-x86_64.pl +++ b/crypto/fipsmodule/modes/asm/aes-gcm-avx2-x86_64.pl @@ -805,6 +805,12 @@ sub _aes_gcm_update { .Laes128$local_label_suffix: ___ + # Prefetch the source data 512 bytes ahead into the L1 data cache, to + # improve performance when the hardware prefetcher is disabled. Assumes the + # L1 data cache line size is 64 bytes (de facto standard on x86_64). + $code .= "prefetcht0 512($SRC)\n"; + $code .= "prefetcht0 512+64($SRC)\n"; + # Finish the AES encryption of the counter blocks in AESDATA[0-3], # interleaved with the GHASH update of the ciphertext blocks. for my $i ( reverse 1 .. 9 ) { diff --git a/gen/bcm/aes-gcm-avx10-x86_64-apple.S b/gen/bcm/aes-gcm-avx10-x86_64-apple.S index 54fcde0485..be666051f0 100644 --- a/gen/bcm/aes-gcm-avx10-x86_64-apple.S +++ b/gen/bcm/aes-gcm-avx10-x86_64-apple.S @@ -512,6 +512,10 @@ L$aes192__func1: vaesenc %zmm9,%zmm3,%zmm3 L$aes128__func1: + prefetcht0 512+0(%rdi) + prefetcht0 512+64(%rdi) + prefetcht0 512+128(%rdi) + prefetcht0 512+192(%rdi) vpshufb %zmm8,%zmm4,%zmm4 vpxord %zmm10,%zmm4,%zmm4 vpshufb %zmm8,%zmm5,%zmm5 @@ -953,6 +957,10 @@ L$aes192__func2: vaesenc %zmm9,%zmm3,%zmm3 L$aes128__func2: + prefetcht0 512+0(%rdi) + prefetcht0 512+64(%rdi) + prefetcht0 512+128(%rdi) + prefetcht0 512+192(%rdi) vpshufb %zmm8,%zmm4,%zmm4 vpxord %zmm10,%zmm4,%zmm4 vpshufb %zmm8,%zmm5,%zmm5 diff --git a/gen/bcm/aes-gcm-avx10-x86_64-linux.S b/gen/bcm/aes-gcm-avx10-x86_64-linux.S index 2be6a8cb7b..b52562302a 100644 --- a/gen/bcm/aes-gcm-avx10-x86_64-linux.S +++ b/gen/bcm/aes-gcm-avx10-x86_64-linux.S @@ -514,6 +514,10 @@ _CET_ENDBR vaesenc %zmm9,%zmm3,%zmm3 .Laes128__func1: + prefetcht0 512+0(%rdi) + prefetcht0 512+64(%rdi) + prefetcht0 512+128(%rdi) + prefetcht0 512+192(%rdi) vpshufb %zmm8,%zmm4,%zmm4 vpxord %zmm10,%zmm4,%zmm4 vpshufb %zmm8,%zmm5,%zmm5 @@ -957,6 +961,10 @@ _CET_ENDBR vaesenc %zmm9,%zmm3,%zmm3 .Laes128__func2: + prefetcht0 512+0(%rdi) + prefetcht0 512+64(%rdi) + prefetcht0 512+128(%rdi) + prefetcht0 512+192(%rdi) vpshufb %zmm8,%zmm4,%zmm4 vpxord %zmm10,%zmm4,%zmm4 vpshufb %zmm8,%zmm5,%zmm5 diff --git a/gen/bcm/aes-gcm-avx10-x86_64-win.asm b/gen/bcm/aes-gcm-avx10-x86_64-win.asm index fb9f896a97..733ae72172 100644 --- a/gen/bcm/aes-gcm-avx10-x86_64-win.asm +++ b/gen/bcm/aes-gcm-avx10-x86_64-win.asm @@ -579,6 +579,10 @@ $L$aes192__func1: vaesenc zmm3,zmm3,zmm9 $L$aes128__func1: + prefetcht0 [((512+0))+rcx] + prefetcht0 [((512+64))+rcx] + prefetcht0 [((512+128))+rcx] + prefetcht0 [((512+192))+rcx] vpshufb zmm4,zmm4,zmm8 vpxord zmm4,zmm4,zmm10 vpshufb zmm5,zmm5,zmm8 @@ -1061,6 +1065,10 @@ $L$aes192__func2: vaesenc zmm3,zmm3,zmm9 $L$aes128__func2: + prefetcht0 [((512+0))+rcx] + prefetcht0 [((512+64))+rcx] + prefetcht0 [((512+128))+rcx] + prefetcht0 [((512+192))+rcx] vpshufb zmm4,zmm4,zmm8 vpxord zmm4,zmm4,zmm10 vpshufb zmm5,zmm5,zmm8 diff --git a/gen/bcm/aes-gcm-avx2-x86_64-apple.S b/gen/bcm/aes-gcm-avx2-x86_64-apple.S index e401e66042..d896f2a6e6 100644 --- a/gen/bcm/aes-gcm-avx2-x86_64-apple.S +++ b/gen/bcm/aes-gcm-avx2-x86_64-apple.S @@ -498,6 +498,8 @@ L$aes192__func1: vaesenc %ymm2,%ymm15,%ymm15 L$aes128__func1: + prefetcht0 512(%rdi) + prefetcht0 512+64(%rdi) vmovdqu 0(%rsi),%ymm3 vpshufb %ymm0,%ymm3,%ymm3 @@ -983,6 +985,8 @@ L$aes192__func2: vaesenc %ymm2,%ymm15,%ymm15 L$aes128__func2: + prefetcht0 512(%rdi) + prefetcht0 512+64(%rdi) vmovdqu 0(%rdi),%ymm3 vpshufb %ymm0,%ymm3,%ymm3 diff --git a/gen/bcm/aes-gcm-avx2-x86_64-linux.S b/gen/bcm/aes-gcm-avx2-x86_64-linux.S index b7816cfc5a..583f02fc52 100644 --- a/gen/bcm/aes-gcm-avx2-x86_64-linux.S +++ b/gen/bcm/aes-gcm-avx2-x86_64-linux.S @@ -500,6 +500,8 @@ _CET_ENDBR vaesenc %ymm2,%ymm15,%ymm15 .Laes128__func1: + prefetcht0 512(%rdi) + prefetcht0 512+64(%rdi) vmovdqu 0(%rsi),%ymm3 vpshufb %ymm0,%ymm3,%ymm3 @@ -987,6 +989,8 @@ _CET_ENDBR vaesenc %ymm2,%ymm15,%ymm15 .Laes128__func2: + prefetcht0 512(%rdi) + prefetcht0 512+64(%rdi) vmovdqu 0(%rdi),%ymm3 vpshufb %ymm0,%ymm3,%ymm3 diff --git a/gen/bcm/aes-gcm-avx2-x86_64-win.asm b/gen/bcm/aes-gcm-avx2-x86_64-win.asm index 92015534ba..00e2a2bf82 100644 --- a/gen/bcm/aes-gcm-avx2-x86_64-win.asm +++ b/gen/bcm/aes-gcm-avx2-x86_64-win.asm @@ -559,6 +559,8 @@ $L$aes192__func1: vaesenc ymm15,ymm15,ymm2 $L$aes128__func1: + prefetcht0 [512+rcx] + prefetcht0 [((512+64))+rcx] vmovdqu ymm3,YMMWORD[rdx] vpshufb ymm3,ymm3,ymm0 @@ -1085,6 +1087,8 @@ $L$aes192__func2: vaesenc ymm15,ymm15,ymm2 $L$aes128__func2: + prefetcht0 [512+rcx] + prefetcht0 [((512+64))+rcx] vmovdqu ymm3,YMMWORD[rcx] vpshufb ymm3,ymm3,ymm0 From a85ef9aa6c6538e5ae014a408e9d69870bc4f404 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Fri, 10 Jan 2025 16:54:26 -0500 Subject: [PATCH 58/64] Rename foo_extra to foo The foo / foo_extra split will make increasingly less sense as we stop putting public APIs in crypto/fipsmodule. Just call it crypto/foo and crypto/fipsmodule/foo. Bug: 42290602 Change-Id: I5143d3edfb768ed7a1aa288ff606f6f13faa9278 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75151 Commit-Queue: David Benjamin Reviewed-by: Bob Beck Auto-Submit: David Benjamin --- build.json | 116 ++++++------ crypto/{bn_extra => bn}/bn_asn1.cc | 0 crypto/{bn_extra => bn}/convert.cc | 0 crypto/{cipher_extra => cipher}/aead_test.cc | 6 +- .../asm/aes128gcmsiv-x86_64.pl | 0 .../asm/chacha20_poly1305_armv8.pl | 0 .../asm/chacha20_poly1305_x86_64.pl | 0 .../{cipher_extra => cipher}/cipher_test.cc | 26 +-- crypto/{cipher_extra => cipher}/derive_key.cc | 0 .../{cipher_extra => cipher}/e_aesctrhmac.cc | 0 .../{cipher_extra => cipher}/e_aesgcmsiv.cc | 0 .../e_chacha20poly1305.cc | 0 crypto/{cipher_extra => cipher}/e_des.cc | 0 crypto/{cipher_extra => cipher}/e_null.cc | 0 crypto/{cipher_extra => cipher}/e_rc2.cc | 0 crypto/{cipher_extra => cipher}/e_rc4.cc | 0 crypto/{cipher_extra => cipher}/e_tls.cc | 0 .../cipher_extra.cc => cipher/get_cipher.cc} | 0 crypto/{cipher_extra => cipher}/internal.h | 0 ...aes_128_cbc_sha1_tls_implicit_iv_tests.txt | 0 .../test/aes_128_cbc_sha1_tls_tests.txt | 0 .../test/aes_128_ccm_bluetooth_8_tests.txt | 0 .../test/aes_128_ccm_bluetooth_tests.txt | 0 .../test/aes_128_ccm_matter_tests.txt | 0 .../test/aes_128_ctr_hmac_sha256.txt | 0 .../test/aes_128_gcm_randnonce_tests.txt | 0 .../test/aes_128_gcm_siv_tests.txt | 0 .../test/aes_128_gcm_tests.txt | 0 .../test/aes_192_gcm_tests.txt | 0 ...aes_256_cbc_sha1_tls_implicit_iv_tests.txt | 0 .../test/aes_256_cbc_sha1_tls_tests.txt | 0 .../test/aes_256_ctr_hmac_sha256.txt | 0 .../test/aes_256_gcm_randnonce_tests.txt | 0 .../test/aes_256_gcm_siv_tests.txt | 0 .../test/aes_256_gcm_tests.txt | 0 .../test/chacha20_poly1305_tests.txt | 0 .../test/cipher_tests.txt | 0 ...es_ede3_cbc_sha1_tls_implicit_iv_tests.txt | 0 .../test/des_ede3_cbc_sha1_tls_tests.txt | 0 .../test/make_all_legacy_aead_tests.sh | 0 .../test/make_legacy_aead_tests.go | 0 .../test/nist_cavp/aes_128_cbc.txt | 0 .../test/nist_cavp/aes_128_ctr.txt | 0 .../test/nist_cavp/aes_128_gcm.txt | 0 .../test/nist_cavp/aes_192_cbc.txt | 0 .../test/nist_cavp/aes_192_ctr.txt | 0 .../test/nist_cavp/aes_256_cbc.txt | 0 .../test/nist_cavp/aes_256_ctr.txt | 0 .../test/nist_cavp/aes_256_gcm.txt | 0 .../test/nist_cavp/make_cavp.go | 0 .../test/nist_cavp/tdes_cbc.txt | 0 .../test/nist_cavp/tdes_ecb.txt | 0 .../test/xchacha20_poly1305_tests.txt | 0 crypto/{cipher_extra => cipher}/tls_cbc.cc | 0 crypto/{dh_extra => dh}/dh_asn1.cc | 0 crypto/{dh_extra => dh}/dh_test.cc | 0 crypto/{dh_extra => dh}/params.cc | 0 .../{digest_extra => digest}/digest_extra.cc | 0 .../{digest_extra => digest}/digest_test.cc | 0 crypto/{ec_extra => ec}/ec_asn1.cc | 0 crypto/{ec_extra => ec}/ec_derive.cc | 0 crypto/{ec_extra => ec}/hash_to_curve.cc | 0 crypto/{ec_extra => ec}/internal.h | 0 .../ecdh_extra.cc => ecdh/ecdh.cc} | 0 crypto/{ecdh_extra => ecdh}/ecdh_test.cc | 2 +- crypto/{ecdh_extra => ecdh}/ecdh_tests.txt | 0 crypto/{ecdsa_extra => ecdsa}/ecdsa_asn1.cc | 0 crypto/evp/p_rsa.cc | 2 +- crypto/fipsmodule/ec/ec_test.cc | 2 +- crypto/{hmac_extra => hmac}/hmac_test.cc | 2 +- crypto/{hmac_extra => hmac}/hmac_tests.txt | 0 crypto/{rand_extra => rand}/deterministic.cc | 0 crypto/{rand_extra => rand}/fork_detect.cc | 0 .../{rand_extra => rand}/fork_detect_test.cc | 0 crypto/{rand_extra => rand}/forkunsafe.cc | 0 crypto/{rand_extra => rand}/getentropy.cc | 0 .../{rand_extra => rand}/getentropy_test.cc | 0 .../{rand_extra => rand}/getrandom_fillin.h | 0 crypto/{rand_extra => rand}/ios.cc | 0 crypto/{rand_extra => rand}/passive.cc | 0 .../rand_extra.cc => rand/rand.cc} | 0 crypto/{rand_extra => rand}/rand_test.cc | 0 .../{rand_extra => rand}/sysrand_internal.h | 0 crypto/{rand_extra => rand}/trusty.cc | 0 crypto/{rand_extra => rand}/urandom.cc | 0 crypto/{rand_extra => rand}/urandom_test.cc | 0 crypto/{rand_extra => rand}/windows.cc | 0 crypto/{rsa_extra => rsa}/internal.h | 0 crypto/{rsa_extra => rsa}/rsa_asn1.cc | 0 crypto/{rsa_extra => rsa}/rsa_crypt.cc | 0 crypto/{rsa_extra => rsa}/rsa_extra.cc | 0 crypto/{rsa_extra => rsa}/rsa_print.cc | 0 crypto/{rsa_extra => rsa}/rsa_test.cc | 0 crypto/trust_token/pmbtoken.cc | 2 +- crypto/trust_token/trust_token_test.cc | 2 +- crypto/trust_token/voprf.cc | 2 +- gen/sources.bzl | 168 +++++++++--------- gen/sources.cmake | 168 +++++++++--------- gen/sources.gni | 168 +++++++++--------- gen/sources.json | 168 +++++++++--------- rust/bssl-crypto/src/aead.rs | 4 +- tool/speed.cc | 2 +- util/diff_asm.go | 6 +- 103 files changed, 419 insertions(+), 427 deletions(-) rename crypto/{bn_extra => bn}/bn_asn1.cc (100%) rename crypto/{bn_extra => bn}/convert.cc (100%) rename crypto/{cipher_extra => cipher}/aead_test.cc (99%) rename crypto/{cipher_extra => cipher}/asm/aes128gcmsiv-x86_64.pl (100%) rename crypto/{cipher_extra => cipher}/asm/chacha20_poly1305_armv8.pl (100%) rename crypto/{cipher_extra => cipher}/asm/chacha20_poly1305_x86_64.pl (100%) rename crypto/{cipher_extra => cipher}/cipher_test.cc (97%) rename crypto/{cipher_extra => cipher}/derive_key.cc (100%) rename crypto/{cipher_extra => cipher}/e_aesctrhmac.cc (100%) rename crypto/{cipher_extra => cipher}/e_aesgcmsiv.cc (100%) rename crypto/{cipher_extra => cipher}/e_chacha20poly1305.cc (100%) rename crypto/{cipher_extra => cipher}/e_des.cc (100%) rename crypto/{cipher_extra => cipher}/e_null.cc (100%) rename crypto/{cipher_extra => cipher}/e_rc2.cc (100%) rename crypto/{cipher_extra => cipher}/e_rc4.cc (100%) rename crypto/{cipher_extra => cipher}/e_tls.cc (100%) rename crypto/{cipher_extra/cipher_extra.cc => cipher/get_cipher.cc} (100%) rename crypto/{cipher_extra => cipher}/internal.h (100%) rename crypto/{cipher_extra => cipher}/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_128_cbc_sha1_tls_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_128_ccm_bluetooth_8_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_128_ccm_bluetooth_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_128_ccm_matter_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_128_ctr_hmac_sha256.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_128_gcm_randnonce_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_128_gcm_siv_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_128_gcm_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_192_gcm_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_256_cbc_sha1_tls_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_256_ctr_hmac_sha256.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_256_gcm_randnonce_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_256_gcm_siv_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/aes_256_gcm_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/chacha20_poly1305_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/cipher_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/des_ede3_cbc_sha1_tls_tests.txt (100%) rename crypto/{cipher_extra => cipher}/test/make_all_legacy_aead_tests.sh (100%) rename crypto/{cipher_extra => cipher}/test/make_legacy_aead_tests.go (100%) rename crypto/{cipher_extra => cipher}/test/nist_cavp/aes_128_cbc.txt (100%) rename crypto/{cipher_extra => cipher}/test/nist_cavp/aes_128_ctr.txt (100%) rename crypto/{cipher_extra => cipher}/test/nist_cavp/aes_128_gcm.txt (100%) rename crypto/{cipher_extra => cipher}/test/nist_cavp/aes_192_cbc.txt (100%) rename crypto/{cipher_extra => cipher}/test/nist_cavp/aes_192_ctr.txt (100%) rename crypto/{cipher_extra => cipher}/test/nist_cavp/aes_256_cbc.txt (100%) rename crypto/{cipher_extra => cipher}/test/nist_cavp/aes_256_ctr.txt (100%) rename crypto/{cipher_extra => cipher}/test/nist_cavp/aes_256_gcm.txt (100%) rename crypto/{cipher_extra => cipher}/test/nist_cavp/make_cavp.go (100%) rename crypto/{cipher_extra => cipher}/test/nist_cavp/tdes_cbc.txt (100%) rename crypto/{cipher_extra => cipher}/test/nist_cavp/tdes_ecb.txt (100%) rename crypto/{cipher_extra => cipher}/test/xchacha20_poly1305_tests.txt (100%) rename crypto/{cipher_extra => cipher}/tls_cbc.cc (100%) rename crypto/{dh_extra => dh}/dh_asn1.cc (100%) rename crypto/{dh_extra => dh}/dh_test.cc (100%) rename crypto/{dh_extra => dh}/params.cc (100%) rename crypto/{digest_extra => digest}/digest_extra.cc (100%) rename crypto/{digest_extra => digest}/digest_test.cc (100%) rename crypto/{ec_extra => ec}/ec_asn1.cc (100%) rename crypto/{ec_extra => ec}/ec_derive.cc (100%) rename crypto/{ec_extra => ec}/hash_to_curve.cc (100%) rename crypto/{ec_extra => ec}/internal.h (100%) rename crypto/{ecdh_extra/ecdh_extra.cc => ecdh/ecdh.cc} (100%) rename crypto/{ecdh_extra => ecdh}/ecdh_test.cc (99%) rename crypto/{ecdh_extra => ecdh}/ecdh_tests.txt (100%) rename crypto/{ecdsa_extra => ecdsa}/ecdsa_asn1.cc (100%) rename crypto/{hmac_extra => hmac}/hmac_test.cc (98%) rename crypto/{hmac_extra => hmac}/hmac_tests.txt (100%) rename crypto/{rand_extra => rand}/deterministic.cc (100%) rename crypto/{rand_extra => rand}/fork_detect.cc (100%) rename crypto/{rand_extra => rand}/fork_detect_test.cc (100%) rename crypto/{rand_extra => rand}/forkunsafe.cc (100%) rename crypto/{rand_extra => rand}/getentropy.cc (100%) rename crypto/{rand_extra => rand}/getentropy_test.cc (100%) rename crypto/{rand_extra => rand}/getrandom_fillin.h (100%) rename crypto/{rand_extra => rand}/ios.cc (100%) rename crypto/{rand_extra => rand}/passive.cc (100%) rename crypto/{rand_extra/rand_extra.cc => rand/rand.cc} (100%) rename crypto/{rand_extra => rand}/rand_test.cc (100%) rename crypto/{rand_extra => rand}/sysrand_internal.h (100%) rename crypto/{rand_extra => rand}/trusty.cc (100%) rename crypto/{rand_extra => rand}/urandom.cc (100%) rename crypto/{rand_extra => rand}/urandom_test.cc (100%) rename crypto/{rand_extra => rand}/windows.cc (100%) rename crypto/{rsa_extra => rsa}/internal.h (100%) rename crypto/{rsa_extra => rsa}/rsa_asn1.cc (100%) rename crypto/{rsa_extra => rsa}/rsa_crypt.cc (100%) rename crypto/{rsa_extra => rsa}/rsa_extra.cc (100%) rename crypto/{rsa_extra => rsa}/rsa_print.cc (100%) rename crypto/{rsa_extra => rsa}/rsa_test.cc (100%) diff --git a/build.json b/build.json index c9d17780b6..8daf6a9d1b 100644 --- a/build.json +++ b/build.json @@ -199,8 +199,8 @@ "crypto/bio/socket.cc", "crypto/bio/socket_helper.cc", "crypto/blake2/blake2.cc", - "crypto/bn_extra/bn_asn1.cc", - "crypto/bn_extra/convert.cc", + "crypto/bn/bn_asn1.cc", + "crypto/bn/convert.cc", "crypto/buf/buf.cc", "crypto/bytestring/asn1_compat.cc", "crypto/bytestring/ber.cc", @@ -208,17 +208,17 @@ "crypto/bytestring/cbs.cc", "crypto/bytestring/unicode.cc", "crypto/chacha/chacha.cc", - "crypto/cipher_extra/cipher_extra.cc", - "crypto/cipher_extra/derive_key.cc", - "crypto/cipher_extra/e_aesctrhmac.cc", - "crypto/cipher_extra/e_aesgcmsiv.cc", - "crypto/cipher_extra/e_chacha20poly1305.cc", - "crypto/cipher_extra/e_des.cc", - "crypto/cipher_extra/e_null.cc", - "crypto/cipher_extra/e_rc2.cc", - "crypto/cipher_extra/e_rc4.cc", - "crypto/cipher_extra/e_tls.cc", - "crypto/cipher_extra/tls_cbc.cc", + "crypto/cipher/derive_key.cc", + "crypto/cipher/get_cipher.cc", + "crypto/cipher/e_aesctrhmac.cc", + "crypto/cipher/e_aesgcmsiv.cc", + "crypto/cipher/e_chacha20poly1305.cc", + "crypto/cipher/e_des.cc", + "crypto/cipher/e_null.cc", + "crypto/cipher/e_rc2.cc", + "crypto/cipher/e_rc4.cc", + "crypto/cipher/e_tls.cc", + "crypto/cipher/tls_cbc.cc", "crypto/conf/conf.cc", "crypto/cpu_aarch64_apple.cc", "crypto/cpu_aarch64_fuchsia.cc", @@ -234,16 +234,16 @@ "crypto/curve25519/curve25519_64_adx.cc", "crypto/curve25519/spake25519.cc", "crypto/des/des.cc", - "crypto/dh_extra/dh_asn1.cc", - "crypto/dh_extra/params.cc", - "crypto/digest_extra/digest_extra.cc", + "crypto/dh/dh_asn1.cc", + "crypto/dh/params.cc", + "crypto/digest/digest_extra.cc", "crypto/dsa/dsa.cc", "crypto/dsa/dsa_asn1.cc", - "crypto/ec_extra/ec_asn1.cc", - "crypto/ec_extra/ec_derive.cc", - "crypto/ec_extra/hash_to_curve.cc", - "crypto/ecdh_extra/ecdh_extra.cc", - "crypto/ecdsa_extra/ecdsa_asn1.cc", + "crypto/ec/ec_asn1.cc", + "crypto/ec/ec_derive.cc", + "crypto/ec/hash_to_curve.cc", + "crypto/ecdh/ecdh.cc", + "crypto/ecdsa/ecdsa_asn1.cc", "crypto/engine/engine.cc", "crypto/err/err.cc", "crypto/evp/evp.cc", @@ -295,22 +295,22 @@ "crypto/poly1305/poly1305_arm.cc", "crypto/poly1305/poly1305_vec.cc", "crypto/pool/pool.cc", - "crypto/rand_extra/deterministic.cc", - "crypto/rand_extra/fork_detect.cc", - "crypto/rand_extra/forkunsafe.cc", - "crypto/rand_extra/getentropy.cc", - "crypto/rand_extra/ios.cc", - "crypto/rand_extra/passive.cc", - "crypto/rand_extra/rand_extra.cc", - "crypto/rand_extra/trusty.cc", - "crypto/rand_extra/urandom.cc", - "crypto/rand_extra/windows.cc", + "crypto/rand/deterministic.cc", + "crypto/rand/fork_detect.cc", + "crypto/rand/forkunsafe.cc", + "crypto/rand/getentropy.cc", + "crypto/rand/ios.cc", + "crypto/rand/passive.cc", + "crypto/rand/rand.cc", + "crypto/rand/trusty.cc", + "crypto/rand/urandom.cc", + "crypto/rand/windows.cc", "crypto/rc4/rc4.cc", "crypto/refcount.cc", - "crypto/rsa_extra/rsa_asn1.cc", - "crypto/rsa_extra/rsa_crypt.cc", - "crypto/rsa_extra/rsa_extra.cc", - "crypto/rsa_extra/rsa_print.cc", + "crypto/rsa/rsa_asn1.cc", + "crypto/rsa/rsa_crypt.cc", + "crypto/rsa/rsa_extra.cc", + "crypto/rsa/rsa_print.cc", "crypto/slhdsa/slhdsa.cc", "crypto/sha/sha1.cc", "crypto/sha/sha256.cc", @@ -490,14 +490,14 @@ "crypto/bio/internal.h", "crypto/bytestring/internal.h", "crypto/chacha/internal.h", - "crypto/cipher_extra/internal.h", + "crypto/cipher/internal.h", "crypto/conf/internal.h", "crypto/cpu_arm_linux.h", "crypto/curve25519/curve25519_tables.h", "crypto/curve25519/internal.h", "crypto/des/internal.h", "crypto/dsa/internal.h", - "crypto/ec_extra/internal.h", + "crypto/ec/internal.h", "crypto/err/internal.h", "crypto/evp/internal.h", "crypto/fipsmodule/aes/internal.h", @@ -540,9 +540,9 @@ "crypto/pkcs8/internal.h", "crypto/poly1305/internal.h", "crypto/pool/internal.h", - "crypto/rand_extra/getrandom_fillin.h", - "crypto/rand_extra/sysrand_internal.h", - "crypto/rsa_extra/internal.h", + "crypto/rand/getrandom_fillin.h", + "crypto/rand/sysrand_internal.h", + "crypto/rsa/internal.h", "crypto/spake2plus/internal.h", "crypto/trust_token/internal.h", "crypto/x509/ext_dat.h", @@ -567,7 +567,7 @@ ], "perlasm_aarch64": [ {"src": "crypto/chacha/asm/chacha-armv8.pl"}, - {"src": "crypto/cipher_extra/asm/chacha20_poly1305_armv8.pl"} + {"src": "crypto/cipher/asm/chacha20_poly1305_armv8.pl"} ], "perlasm_arm": [ {"src": "crypto/chacha/asm/chacha-armv4.pl"} @@ -578,8 +578,8 @@ ], "perlasm_x86_64": [ {"src": "crypto/chacha/asm/chacha-x86_64.pl"}, - {"src": "crypto/cipher_extra/asm/aes128gcmsiv-x86_64.pl"}, - {"src": "crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl"}, + {"src": "crypto/cipher/asm/aes128gcmsiv-x86_64.pl"}, + {"src": "crypto/cipher/asm/chacha20_poly1305_x86_64.pl"}, {"src": "crypto/md5/asm/md5-x86_64.pl"} ] }, @@ -805,8 +805,8 @@ "crypto/buf/buf_test.cc", "crypto/bytestring/bytestring_test.cc", "crypto/chacha/chacha_test.cc", - "crypto/cipher_extra/aead_test.cc", - "crypto/cipher_extra/cipher_test.cc", + "crypto/cipher/aead_test.cc", + "crypto/cipher/cipher_test.cc", "crypto/compiler_test.cc", "crypto/conf/conf_test.cc", "crypto/constant_time_test.cc", @@ -815,10 +815,10 @@ "crypto/curve25519/ed25519_test.cc", "crypto/curve25519/spake25519_test.cc", "crypto/curve25519/x25519_test.cc", - "crypto/dh_extra/dh_test.cc", - "crypto/digest_extra/digest_test.cc", + "crypto/dh/dh_test.cc", + "crypto/digest/digest_test.cc", "crypto/dsa/dsa_test.cc", - "crypto/ecdh_extra/ecdh_test.cc", + "crypto/ecdh/ecdh_test.cc", "crypto/err/err_test.cc", "crypto/evp/evp_extra_test.cc", "crypto/evp/evp_test.cc", @@ -837,7 +837,7 @@ "crypto/fipsmodule/rand/ctrdrbg_test.cc", "crypto/fipsmodule/service_indicator/service_indicator_test.cc", "crypto/fipsmodule/sha/sha_test.cc", - "crypto/hmac_extra/hmac_test.cc", + "crypto/hmac/hmac_test.cc", "crypto/hpke/hpke_test.cc", "crypto/hrss/hrss_test.cc", "crypto/impl_dispatch_test.cc", @@ -853,11 +853,11 @@ "crypto/pkcs8/pkcs8_test.cc", "crypto/poly1305/poly1305_test.cc", "crypto/pool/pool_test.cc", - "crypto/rand_extra/fork_detect_test.cc", - "crypto/rand_extra/getentropy_test.cc", - "crypto/rand_extra/rand_test.cc", + "crypto/rand/fork_detect_test.cc", + "crypto/rand/getentropy_test.cc", + "crypto/rand/rand_test.cc", "crypto/refcount_test.cc", - "crypto/rsa_extra/rsa_test.cc", + "crypto/rsa/rsa_test.cc", "crypto/self_test.cc", "crypto/siphash/siphash_test.cc", "crypto/slhdsa/slhdsa_test.cc", @@ -872,10 +872,10 @@ ], "data": [ "crypto/blake2/blake2b256_tests.txt", - "crypto/cipher_extra/test/*.txt", - "crypto/cipher_extra/test/nist_cavp/*.txt", + "crypto/cipher/test/*.txt", + "crypto/cipher/test/nist_cavp/*.txt", "crypto/curve25519/ed25519_tests.txt", - "crypto/ecdh_extra/ecdh_tests.txt", + "crypto/ecdh/ecdh_tests.txt", "crypto/evp/evp_tests.txt", "crypto/evp/scrypt_tests.txt", "crypto/fipsmodule/aes/aes_tests.txt", @@ -890,7 +890,7 @@ "crypto/fipsmodule/ecdsa/ecdsa_verify_tests.txt", "crypto/fipsmodule/keccak/keccak_tests.txt", "crypto/fipsmodule/rand/ctrdrbg_vectors.txt", - "crypto/hmac_extra/hmac_tests.txt", + "crypto/hmac/hmac_tests.txt", "crypto/hpke/hpke_test_vectors.txt", "crypto/kyber/kyber_tests.txt", "crypto/mldsa/mldsa_nist_keygen_65_tests.txt", @@ -920,7 +920,7 @@ }, "urandom_test": { "srcs": [ - "crypto/rand_extra/urandom_test.cc" + "crypto/rand/urandom_test.cc" ] }, "pki_test": { diff --git a/crypto/bn_extra/bn_asn1.cc b/crypto/bn/bn_asn1.cc similarity index 100% rename from crypto/bn_extra/bn_asn1.cc rename to crypto/bn/bn_asn1.cc diff --git a/crypto/bn_extra/convert.cc b/crypto/bn/convert.cc similarity index 100% rename from crypto/bn_extra/convert.cc rename to crypto/bn/convert.cc diff --git a/crypto/cipher_extra/aead_test.cc b/crypto/cipher/aead_test.cc similarity index 99% rename from crypto/cipher_extra/aead_test.cc rename to crypto/cipher/aead_test.cc index cff70897ae..a68bf5329b 100644 --- a/crypto/cipher_extra/aead_test.cc +++ b/crypto/cipher/aead_test.cc @@ -173,7 +173,7 @@ INSTANTIATE_TEST_SUITE_P(All, PerAEADTest, testing::ValuesIn(kAEADs), // CT: 5294265a60 // TAG: 1d45758621762e061368e68868e2f929 TEST_P(PerAEADTest, TestVector) { - std::string test_vectors = "crypto/cipher_extra/test/"; + std::string test_vectors = "crypto/cipher/test/"; test_vectors += GetParam().test_vectors; FileTestGTest(test_vectors.c_str(), [&](FileTest *t) { std::vector key, nonce, in, ad, ct, tag; @@ -276,7 +276,7 @@ TEST_P(PerAEADTest, TestExtraInput) { } const std::string test_vectors = - "crypto/cipher_extra/test/" + std::string(aead_config.test_vectors); + "crypto/cipher/test/" + std::string(aead_config.test_vectors); FileTestGTest(test_vectors.c_str(), [&](FileTest *t) { if (t->HasAttribute("NO_SEAL") || // t->HasAttribute("FAILS") || // @@ -321,7 +321,7 @@ TEST_P(PerAEADTest, TestExtraInput) { } TEST_P(PerAEADTest, TestVectorScatterGather) { - std::string test_vectors = "crypto/cipher_extra/test/"; + std::string test_vectors = "crypto/cipher/test/"; const KnownAEAD &aead_config = GetParam(); test_vectors += aead_config.test_vectors; FileTestGTest(test_vectors.c_str(), [&](FileTest *t) { diff --git a/crypto/cipher_extra/asm/aes128gcmsiv-x86_64.pl b/crypto/cipher/asm/aes128gcmsiv-x86_64.pl similarity index 100% rename from crypto/cipher_extra/asm/aes128gcmsiv-x86_64.pl rename to crypto/cipher/asm/aes128gcmsiv-x86_64.pl diff --git a/crypto/cipher_extra/asm/chacha20_poly1305_armv8.pl b/crypto/cipher/asm/chacha20_poly1305_armv8.pl similarity index 100% rename from crypto/cipher_extra/asm/chacha20_poly1305_armv8.pl rename to crypto/cipher/asm/chacha20_poly1305_armv8.pl diff --git a/crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl b/crypto/cipher/asm/chacha20_poly1305_x86_64.pl similarity index 100% rename from crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl rename to crypto/cipher/asm/chacha20_poly1305_x86_64.pl diff --git a/crypto/cipher_extra/cipher_test.cc b/crypto/cipher/cipher_test.cc similarity index 97% rename from crypto/cipher_extra/cipher_test.cc rename to crypto/cipher/cipher_test.cc index b86803a426..a73c5fded2 100644 --- a/crypto/cipher_extra/cipher_test.cc +++ b/crypto/cipher/cipher_test.cc @@ -453,47 +453,39 @@ static void CipherFileTest(FileTest *t) { } TEST(CipherTest, TestVectors) { - FileTestGTest("crypto/cipher_extra/test/cipher_tests.txt", CipherFileTest); + FileTestGTest("crypto/cipher/test/cipher_tests.txt", CipherFileTest); } TEST(CipherTest, CAVP_AES_128_CBC) { - FileTestGTest("crypto/cipher_extra/test/nist_cavp/aes_128_cbc.txt", - CipherFileTest); + FileTestGTest("crypto/cipher/test/nist_cavp/aes_128_cbc.txt", CipherFileTest); } TEST(CipherTest, CAVP_AES_128_CTR) { - FileTestGTest("crypto/cipher_extra/test/nist_cavp/aes_128_ctr.txt", - CipherFileTest); + FileTestGTest("crypto/cipher/test/nist_cavp/aes_128_ctr.txt", CipherFileTest); } TEST(CipherTest, CAVP_AES_192_CBC) { - FileTestGTest("crypto/cipher_extra/test/nist_cavp/aes_192_cbc.txt", - CipherFileTest); + FileTestGTest("crypto/cipher/test/nist_cavp/aes_192_cbc.txt", CipherFileTest); } TEST(CipherTest, CAVP_AES_192_CTR) { - FileTestGTest("crypto/cipher_extra/test/nist_cavp/aes_192_ctr.txt", - CipherFileTest); + FileTestGTest("crypto/cipher/test/nist_cavp/aes_192_ctr.txt", CipherFileTest); } TEST(CipherTest, CAVP_AES_256_CBC) { - FileTestGTest("crypto/cipher_extra/test/nist_cavp/aes_256_cbc.txt", - CipherFileTest); + FileTestGTest("crypto/cipher/test/nist_cavp/aes_256_cbc.txt", CipherFileTest); } TEST(CipherTest, CAVP_AES_256_CTR) { - FileTestGTest("crypto/cipher_extra/test/nist_cavp/aes_256_ctr.txt", - CipherFileTest); + FileTestGTest("crypto/cipher/test/nist_cavp/aes_256_ctr.txt", CipherFileTest); } TEST(CipherTest, CAVP_TDES_CBC) { - FileTestGTest("crypto/cipher_extra/test/nist_cavp/tdes_cbc.txt", - CipherFileTest); + FileTestGTest("crypto/cipher/test/nist_cavp/tdes_cbc.txt", CipherFileTest); } TEST(CipherTest, CAVP_TDES_ECB) { - FileTestGTest("crypto/cipher_extra/test/nist_cavp/tdes_ecb.txt", - CipherFileTest); + FileTestGTest("crypto/cipher/test/nist_cavp/tdes_ecb.txt", CipherFileTest); } TEST(CipherTest, WycheproofAESCBC) { diff --git a/crypto/cipher_extra/derive_key.cc b/crypto/cipher/derive_key.cc similarity index 100% rename from crypto/cipher_extra/derive_key.cc rename to crypto/cipher/derive_key.cc diff --git a/crypto/cipher_extra/e_aesctrhmac.cc b/crypto/cipher/e_aesctrhmac.cc similarity index 100% rename from crypto/cipher_extra/e_aesctrhmac.cc rename to crypto/cipher/e_aesctrhmac.cc diff --git a/crypto/cipher_extra/e_aesgcmsiv.cc b/crypto/cipher/e_aesgcmsiv.cc similarity index 100% rename from crypto/cipher_extra/e_aesgcmsiv.cc rename to crypto/cipher/e_aesgcmsiv.cc diff --git a/crypto/cipher_extra/e_chacha20poly1305.cc b/crypto/cipher/e_chacha20poly1305.cc similarity index 100% rename from crypto/cipher_extra/e_chacha20poly1305.cc rename to crypto/cipher/e_chacha20poly1305.cc diff --git a/crypto/cipher_extra/e_des.cc b/crypto/cipher/e_des.cc similarity index 100% rename from crypto/cipher_extra/e_des.cc rename to crypto/cipher/e_des.cc diff --git a/crypto/cipher_extra/e_null.cc b/crypto/cipher/e_null.cc similarity index 100% rename from crypto/cipher_extra/e_null.cc rename to crypto/cipher/e_null.cc diff --git a/crypto/cipher_extra/e_rc2.cc b/crypto/cipher/e_rc2.cc similarity index 100% rename from crypto/cipher_extra/e_rc2.cc rename to crypto/cipher/e_rc2.cc diff --git a/crypto/cipher_extra/e_rc4.cc b/crypto/cipher/e_rc4.cc similarity index 100% rename from crypto/cipher_extra/e_rc4.cc rename to crypto/cipher/e_rc4.cc diff --git a/crypto/cipher_extra/e_tls.cc b/crypto/cipher/e_tls.cc similarity index 100% rename from crypto/cipher_extra/e_tls.cc rename to crypto/cipher/e_tls.cc diff --git a/crypto/cipher_extra/cipher_extra.cc b/crypto/cipher/get_cipher.cc similarity index 100% rename from crypto/cipher_extra/cipher_extra.cc rename to crypto/cipher/get_cipher.cc diff --git a/crypto/cipher_extra/internal.h b/crypto/cipher/internal.h similarity index 100% rename from crypto/cipher_extra/internal.h rename to crypto/cipher/internal.h diff --git a/crypto/cipher_extra/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt b/crypto/cipher/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt rename to crypto/cipher/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt diff --git a/crypto/cipher_extra/test/aes_128_cbc_sha1_tls_tests.txt b/crypto/cipher/test/aes_128_cbc_sha1_tls_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_128_cbc_sha1_tls_tests.txt rename to crypto/cipher/test/aes_128_cbc_sha1_tls_tests.txt diff --git a/crypto/cipher_extra/test/aes_128_ccm_bluetooth_8_tests.txt b/crypto/cipher/test/aes_128_ccm_bluetooth_8_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_128_ccm_bluetooth_8_tests.txt rename to crypto/cipher/test/aes_128_ccm_bluetooth_8_tests.txt diff --git a/crypto/cipher_extra/test/aes_128_ccm_bluetooth_tests.txt b/crypto/cipher/test/aes_128_ccm_bluetooth_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_128_ccm_bluetooth_tests.txt rename to crypto/cipher/test/aes_128_ccm_bluetooth_tests.txt diff --git a/crypto/cipher_extra/test/aes_128_ccm_matter_tests.txt b/crypto/cipher/test/aes_128_ccm_matter_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_128_ccm_matter_tests.txt rename to crypto/cipher/test/aes_128_ccm_matter_tests.txt diff --git a/crypto/cipher_extra/test/aes_128_ctr_hmac_sha256.txt b/crypto/cipher/test/aes_128_ctr_hmac_sha256.txt similarity index 100% rename from crypto/cipher_extra/test/aes_128_ctr_hmac_sha256.txt rename to crypto/cipher/test/aes_128_ctr_hmac_sha256.txt diff --git a/crypto/cipher_extra/test/aes_128_gcm_randnonce_tests.txt b/crypto/cipher/test/aes_128_gcm_randnonce_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_128_gcm_randnonce_tests.txt rename to crypto/cipher/test/aes_128_gcm_randnonce_tests.txt diff --git a/crypto/cipher_extra/test/aes_128_gcm_siv_tests.txt b/crypto/cipher/test/aes_128_gcm_siv_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_128_gcm_siv_tests.txt rename to crypto/cipher/test/aes_128_gcm_siv_tests.txt diff --git a/crypto/cipher_extra/test/aes_128_gcm_tests.txt b/crypto/cipher/test/aes_128_gcm_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_128_gcm_tests.txt rename to crypto/cipher/test/aes_128_gcm_tests.txt diff --git a/crypto/cipher_extra/test/aes_192_gcm_tests.txt b/crypto/cipher/test/aes_192_gcm_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_192_gcm_tests.txt rename to crypto/cipher/test/aes_192_gcm_tests.txt diff --git a/crypto/cipher_extra/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt b/crypto/cipher/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt rename to crypto/cipher/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt diff --git a/crypto/cipher_extra/test/aes_256_cbc_sha1_tls_tests.txt b/crypto/cipher/test/aes_256_cbc_sha1_tls_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_256_cbc_sha1_tls_tests.txt rename to crypto/cipher/test/aes_256_cbc_sha1_tls_tests.txt diff --git a/crypto/cipher_extra/test/aes_256_ctr_hmac_sha256.txt b/crypto/cipher/test/aes_256_ctr_hmac_sha256.txt similarity index 100% rename from crypto/cipher_extra/test/aes_256_ctr_hmac_sha256.txt rename to crypto/cipher/test/aes_256_ctr_hmac_sha256.txt diff --git a/crypto/cipher_extra/test/aes_256_gcm_randnonce_tests.txt b/crypto/cipher/test/aes_256_gcm_randnonce_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_256_gcm_randnonce_tests.txt rename to crypto/cipher/test/aes_256_gcm_randnonce_tests.txt diff --git a/crypto/cipher_extra/test/aes_256_gcm_siv_tests.txt b/crypto/cipher/test/aes_256_gcm_siv_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_256_gcm_siv_tests.txt rename to crypto/cipher/test/aes_256_gcm_siv_tests.txt diff --git a/crypto/cipher_extra/test/aes_256_gcm_tests.txt b/crypto/cipher/test/aes_256_gcm_tests.txt similarity index 100% rename from crypto/cipher_extra/test/aes_256_gcm_tests.txt rename to crypto/cipher/test/aes_256_gcm_tests.txt diff --git a/crypto/cipher_extra/test/chacha20_poly1305_tests.txt b/crypto/cipher/test/chacha20_poly1305_tests.txt similarity index 100% rename from crypto/cipher_extra/test/chacha20_poly1305_tests.txt rename to crypto/cipher/test/chacha20_poly1305_tests.txt diff --git a/crypto/cipher_extra/test/cipher_tests.txt b/crypto/cipher/test/cipher_tests.txt similarity index 100% rename from crypto/cipher_extra/test/cipher_tests.txt rename to crypto/cipher/test/cipher_tests.txt diff --git a/crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt b/crypto/cipher/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt similarity index 100% rename from crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt rename to crypto/cipher/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt diff --git a/crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_tests.txt b/crypto/cipher/test/des_ede3_cbc_sha1_tls_tests.txt similarity index 100% rename from crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_tests.txt rename to crypto/cipher/test/des_ede3_cbc_sha1_tls_tests.txt diff --git a/crypto/cipher_extra/test/make_all_legacy_aead_tests.sh b/crypto/cipher/test/make_all_legacy_aead_tests.sh similarity index 100% rename from crypto/cipher_extra/test/make_all_legacy_aead_tests.sh rename to crypto/cipher/test/make_all_legacy_aead_tests.sh diff --git a/crypto/cipher_extra/test/make_legacy_aead_tests.go b/crypto/cipher/test/make_legacy_aead_tests.go similarity index 100% rename from crypto/cipher_extra/test/make_legacy_aead_tests.go rename to crypto/cipher/test/make_legacy_aead_tests.go diff --git a/crypto/cipher_extra/test/nist_cavp/aes_128_cbc.txt b/crypto/cipher/test/nist_cavp/aes_128_cbc.txt similarity index 100% rename from crypto/cipher_extra/test/nist_cavp/aes_128_cbc.txt rename to crypto/cipher/test/nist_cavp/aes_128_cbc.txt diff --git a/crypto/cipher_extra/test/nist_cavp/aes_128_ctr.txt b/crypto/cipher/test/nist_cavp/aes_128_ctr.txt similarity index 100% rename from crypto/cipher_extra/test/nist_cavp/aes_128_ctr.txt rename to crypto/cipher/test/nist_cavp/aes_128_ctr.txt diff --git a/crypto/cipher_extra/test/nist_cavp/aes_128_gcm.txt b/crypto/cipher/test/nist_cavp/aes_128_gcm.txt similarity index 100% rename from crypto/cipher_extra/test/nist_cavp/aes_128_gcm.txt rename to crypto/cipher/test/nist_cavp/aes_128_gcm.txt diff --git a/crypto/cipher_extra/test/nist_cavp/aes_192_cbc.txt b/crypto/cipher/test/nist_cavp/aes_192_cbc.txt similarity index 100% rename from crypto/cipher_extra/test/nist_cavp/aes_192_cbc.txt rename to crypto/cipher/test/nist_cavp/aes_192_cbc.txt diff --git a/crypto/cipher_extra/test/nist_cavp/aes_192_ctr.txt b/crypto/cipher/test/nist_cavp/aes_192_ctr.txt similarity index 100% rename from crypto/cipher_extra/test/nist_cavp/aes_192_ctr.txt rename to crypto/cipher/test/nist_cavp/aes_192_ctr.txt diff --git a/crypto/cipher_extra/test/nist_cavp/aes_256_cbc.txt b/crypto/cipher/test/nist_cavp/aes_256_cbc.txt similarity index 100% rename from crypto/cipher_extra/test/nist_cavp/aes_256_cbc.txt rename to crypto/cipher/test/nist_cavp/aes_256_cbc.txt diff --git a/crypto/cipher_extra/test/nist_cavp/aes_256_ctr.txt b/crypto/cipher/test/nist_cavp/aes_256_ctr.txt similarity index 100% rename from crypto/cipher_extra/test/nist_cavp/aes_256_ctr.txt rename to crypto/cipher/test/nist_cavp/aes_256_ctr.txt diff --git a/crypto/cipher_extra/test/nist_cavp/aes_256_gcm.txt b/crypto/cipher/test/nist_cavp/aes_256_gcm.txt similarity index 100% rename from crypto/cipher_extra/test/nist_cavp/aes_256_gcm.txt rename to crypto/cipher/test/nist_cavp/aes_256_gcm.txt diff --git a/crypto/cipher_extra/test/nist_cavp/make_cavp.go b/crypto/cipher/test/nist_cavp/make_cavp.go similarity index 100% rename from crypto/cipher_extra/test/nist_cavp/make_cavp.go rename to crypto/cipher/test/nist_cavp/make_cavp.go diff --git a/crypto/cipher_extra/test/nist_cavp/tdes_cbc.txt b/crypto/cipher/test/nist_cavp/tdes_cbc.txt similarity index 100% rename from crypto/cipher_extra/test/nist_cavp/tdes_cbc.txt rename to crypto/cipher/test/nist_cavp/tdes_cbc.txt diff --git a/crypto/cipher_extra/test/nist_cavp/tdes_ecb.txt b/crypto/cipher/test/nist_cavp/tdes_ecb.txt similarity index 100% rename from crypto/cipher_extra/test/nist_cavp/tdes_ecb.txt rename to crypto/cipher/test/nist_cavp/tdes_ecb.txt diff --git a/crypto/cipher_extra/test/xchacha20_poly1305_tests.txt b/crypto/cipher/test/xchacha20_poly1305_tests.txt similarity index 100% rename from crypto/cipher_extra/test/xchacha20_poly1305_tests.txt rename to crypto/cipher/test/xchacha20_poly1305_tests.txt diff --git a/crypto/cipher_extra/tls_cbc.cc b/crypto/cipher/tls_cbc.cc similarity index 100% rename from crypto/cipher_extra/tls_cbc.cc rename to crypto/cipher/tls_cbc.cc diff --git a/crypto/dh_extra/dh_asn1.cc b/crypto/dh/dh_asn1.cc similarity index 100% rename from crypto/dh_extra/dh_asn1.cc rename to crypto/dh/dh_asn1.cc diff --git a/crypto/dh_extra/dh_test.cc b/crypto/dh/dh_test.cc similarity index 100% rename from crypto/dh_extra/dh_test.cc rename to crypto/dh/dh_test.cc diff --git a/crypto/dh_extra/params.cc b/crypto/dh/params.cc similarity index 100% rename from crypto/dh_extra/params.cc rename to crypto/dh/params.cc diff --git a/crypto/digest_extra/digest_extra.cc b/crypto/digest/digest_extra.cc similarity index 100% rename from crypto/digest_extra/digest_extra.cc rename to crypto/digest/digest_extra.cc diff --git a/crypto/digest_extra/digest_test.cc b/crypto/digest/digest_test.cc similarity index 100% rename from crypto/digest_extra/digest_test.cc rename to crypto/digest/digest_test.cc diff --git a/crypto/ec_extra/ec_asn1.cc b/crypto/ec/ec_asn1.cc similarity index 100% rename from crypto/ec_extra/ec_asn1.cc rename to crypto/ec/ec_asn1.cc diff --git a/crypto/ec_extra/ec_derive.cc b/crypto/ec/ec_derive.cc similarity index 100% rename from crypto/ec_extra/ec_derive.cc rename to crypto/ec/ec_derive.cc diff --git a/crypto/ec_extra/hash_to_curve.cc b/crypto/ec/hash_to_curve.cc similarity index 100% rename from crypto/ec_extra/hash_to_curve.cc rename to crypto/ec/hash_to_curve.cc diff --git a/crypto/ec_extra/internal.h b/crypto/ec/internal.h similarity index 100% rename from crypto/ec_extra/internal.h rename to crypto/ec/internal.h diff --git a/crypto/ecdh_extra/ecdh_extra.cc b/crypto/ecdh/ecdh.cc similarity index 100% rename from crypto/ecdh_extra/ecdh_extra.cc rename to crypto/ecdh/ecdh.cc diff --git a/crypto/ecdh_extra/ecdh_test.cc b/crypto/ecdh/ecdh_test.cc similarity index 99% rename from crypto/ecdh_extra/ecdh_test.cc rename to crypto/ecdh/ecdh_test.cc index 716dd0b46f..d7df96a5d2 100644 --- a/crypto/ecdh_extra/ecdh_test.cc +++ b/crypto/ecdh/ecdh_test.cc @@ -68,7 +68,7 @@ static bssl::UniquePtr GetBIGNUM(FileTest *t, const char *key) { } TEST(ECDHTest, TestVectors) { - FileTestGTest("crypto/ecdh_extra/ecdh_tests.txt", [](FileTest *t) { + FileTestGTest("crypto/ecdh/ecdh_tests.txt", [](FileTest *t) { const EC_GROUP *group = GetCurve(t, "Curve"); ASSERT_TRUE(group); bssl::UniquePtr priv_key = GetBIGNUM(t, "Private"); diff --git a/crypto/ecdh_extra/ecdh_tests.txt b/crypto/ecdh/ecdh_tests.txt similarity index 100% rename from crypto/ecdh_extra/ecdh_tests.txt rename to crypto/ecdh/ecdh_tests.txt diff --git a/crypto/ecdsa_extra/ecdsa_asn1.cc b/crypto/ecdsa/ecdsa_asn1.cc similarity index 100% rename from crypto/ecdsa_extra/ecdsa_asn1.cc rename to crypto/ecdsa/ecdsa_asn1.cc diff --git a/crypto/evp/p_rsa.cc b/crypto/evp/p_rsa.cc index 570fdad350..d7504f3034 100644 --- a/crypto/evp/p_rsa.cc +++ b/crypto/evp/p_rsa.cc @@ -21,7 +21,7 @@ #include #include "../internal.h" -#include "../rsa_extra/internal.h" +#include "../rsa/internal.h" #include "internal.h" diff --git a/crypto/fipsmodule/ec/ec_test.cc b/crypto/fipsmodule/ec/ec_test.cc index 5d088296c2..3eb18b2e86 100644 --- a/crypto/fipsmodule/ec/ec_test.cc +++ b/crypto/fipsmodule/ec/ec_test.cc @@ -30,7 +30,7 @@ #include #include -#include "../../ec_extra/internal.h" +#include "../../ec/internal.h" #include "../../test/file_test.h" #include "../../test/test_util.h" #include "../bn/internal.h" diff --git a/crypto/hmac_extra/hmac_test.cc b/crypto/hmac/hmac_test.cc similarity index 98% rename from crypto/hmac_extra/hmac_test.cc rename to crypto/hmac/hmac_test.cc index 697601e155..193376bb4a 100644 --- a/crypto/hmac_extra/hmac_test.cc +++ b/crypto/hmac/hmac_test.cc @@ -39,7 +39,7 @@ static const EVP_MD *GetDigest(const std::string &name) { } TEST(HMACTest, TestVectors) { - FileTestGTest("crypto/hmac_extra/hmac_tests.txt", [](FileTest *t) { + FileTestGTest("crypto/hmac/hmac_tests.txt", [](FileTest *t) { std::string digest_str; ASSERT_TRUE(t->GetAttribute(&digest_str, "HMAC")); const EVP_MD *digest = GetDigest(digest_str); diff --git a/crypto/hmac_extra/hmac_tests.txt b/crypto/hmac/hmac_tests.txt similarity index 100% rename from crypto/hmac_extra/hmac_tests.txt rename to crypto/hmac/hmac_tests.txt diff --git a/crypto/rand_extra/deterministic.cc b/crypto/rand/deterministic.cc similarity index 100% rename from crypto/rand_extra/deterministic.cc rename to crypto/rand/deterministic.cc diff --git a/crypto/rand_extra/fork_detect.cc b/crypto/rand/fork_detect.cc similarity index 100% rename from crypto/rand_extra/fork_detect.cc rename to crypto/rand/fork_detect.cc diff --git a/crypto/rand_extra/fork_detect_test.cc b/crypto/rand/fork_detect_test.cc similarity index 100% rename from crypto/rand_extra/fork_detect_test.cc rename to crypto/rand/fork_detect_test.cc diff --git a/crypto/rand_extra/forkunsafe.cc b/crypto/rand/forkunsafe.cc similarity index 100% rename from crypto/rand_extra/forkunsafe.cc rename to crypto/rand/forkunsafe.cc diff --git a/crypto/rand_extra/getentropy.cc b/crypto/rand/getentropy.cc similarity index 100% rename from crypto/rand_extra/getentropy.cc rename to crypto/rand/getentropy.cc diff --git a/crypto/rand_extra/getentropy_test.cc b/crypto/rand/getentropy_test.cc similarity index 100% rename from crypto/rand_extra/getentropy_test.cc rename to crypto/rand/getentropy_test.cc diff --git a/crypto/rand_extra/getrandom_fillin.h b/crypto/rand/getrandom_fillin.h similarity index 100% rename from crypto/rand_extra/getrandom_fillin.h rename to crypto/rand/getrandom_fillin.h diff --git a/crypto/rand_extra/ios.cc b/crypto/rand/ios.cc similarity index 100% rename from crypto/rand_extra/ios.cc rename to crypto/rand/ios.cc diff --git a/crypto/rand_extra/passive.cc b/crypto/rand/passive.cc similarity index 100% rename from crypto/rand_extra/passive.cc rename to crypto/rand/passive.cc diff --git a/crypto/rand_extra/rand_extra.cc b/crypto/rand/rand.cc similarity index 100% rename from crypto/rand_extra/rand_extra.cc rename to crypto/rand/rand.cc diff --git a/crypto/rand_extra/rand_test.cc b/crypto/rand/rand_test.cc similarity index 100% rename from crypto/rand_extra/rand_test.cc rename to crypto/rand/rand_test.cc diff --git a/crypto/rand_extra/sysrand_internal.h b/crypto/rand/sysrand_internal.h similarity index 100% rename from crypto/rand_extra/sysrand_internal.h rename to crypto/rand/sysrand_internal.h diff --git a/crypto/rand_extra/trusty.cc b/crypto/rand/trusty.cc similarity index 100% rename from crypto/rand_extra/trusty.cc rename to crypto/rand/trusty.cc diff --git a/crypto/rand_extra/urandom.cc b/crypto/rand/urandom.cc similarity index 100% rename from crypto/rand_extra/urandom.cc rename to crypto/rand/urandom.cc diff --git a/crypto/rand_extra/urandom_test.cc b/crypto/rand/urandom_test.cc similarity index 100% rename from crypto/rand_extra/urandom_test.cc rename to crypto/rand/urandom_test.cc diff --git a/crypto/rand_extra/windows.cc b/crypto/rand/windows.cc similarity index 100% rename from crypto/rand_extra/windows.cc rename to crypto/rand/windows.cc diff --git a/crypto/rsa_extra/internal.h b/crypto/rsa/internal.h similarity index 100% rename from crypto/rsa_extra/internal.h rename to crypto/rsa/internal.h diff --git a/crypto/rsa_extra/rsa_asn1.cc b/crypto/rsa/rsa_asn1.cc similarity index 100% rename from crypto/rsa_extra/rsa_asn1.cc rename to crypto/rsa/rsa_asn1.cc diff --git a/crypto/rsa_extra/rsa_crypt.cc b/crypto/rsa/rsa_crypt.cc similarity index 100% rename from crypto/rsa_extra/rsa_crypt.cc rename to crypto/rsa/rsa_crypt.cc diff --git a/crypto/rsa_extra/rsa_extra.cc b/crypto/rsa/rsa_extra.cc similarity index 100% rename from crypto/rsa_extra/rsa_extra.cc rename to crypto/rsa/rsa_extra.cc diff --git a/crypto/rsa_extra/rsa_print.cc b/crypto/rsa/rsa_print.cc similarity index 100% rename from crypto/rsa_extra/rsa_print.cc rename to crypto/rsa/rsa_print.cc diff --git a/crypto/rsa_extra/rsa_test.cc b/crypto/rsa/rsa_test.cc similarity index 100% rename from crypto/rsa_extra/rsa_test.cc rename to crypto/rsa/rsa_test.cc diff --git a/crypto/trust_token/pmbtoken.cc b/crypto/trust_token/pmbtoken.cc index b2a138c7cb..8030b23cd7 100644 --- a/crypto/trust_token/pmbtoken.cc +++ b/crypto/trust_token/pmbtoken.cc @@ -23,7 +23,7 @@ #include #include -#include "../ec_extra/internal.h" +#include "../ec/internal.h" #include "../fipsmodule/bn/internal.h" #include "../fipsmodule/ec/internal.h" diff --git a/crypto/trust_token/trust_token_test.cc b/crypto/trust_token/trust_token_test.cc index 17e75ac436..51ae679831 100644 --- a/crypto/trust_token/trust_token_test.cc +++ b/crypto/trust_token/trust_token_test.cc @@ -34,7 +34,7 @@ #include #include -#include "../ec_extra/internal.h" +#include "../ec/internal.h" #include "../fipsmodule/ec/internal.h" #include "../internal.h" #include "../test/test_util.h" diff --git a/crypto/trust_token/voprf.cc b/crypto/trust_token/voprf.cc index baf89cd08c..5d5e4b9afc 100644 --- a/crypto/trust_token/voprf.cc +++ b/crypto/trust_token/voprf.cc @@ -23,7 +23,7 @@ #include #include -#include "../ec_extra/internal.h" +#include "../ec/internal.h" #include "../fipsmodule/ec/internal.h" #include "internal.h" diff --git a/gen/sources.bzl b/gen/sources.bzl index 35f3af6929..45f41dd6e1 100644 --- a/gen/sources.bzl +++ b/gen/sources.bzl @@ -298,8 +298,8 @@ crypto_sources = [ "crypto/bio/socket.cc", "crypto/bio/socket_helper.cc", "crypto/blake2/blake2.cc", - "crypto/bn_extra/bn_asn1.cc", - "crypto/bn_extra/convert.cc", + "crypto/bn/bn_asn1.cc", + "crypto/bn/convert.cc", "crypto/buf/buf.cc", "crypto/bytestring/asn1_compat.cc", "crypto/bytestring/ber.cc", @@ -307,17 +307,17 @@ crypto_sources = [ "crypto/bytestring/cbs.cc", "crypto/bytestring/unicode.cc", "crypto/chacha/chacha.cc", - "crypto/cipher_extra/cipher_extra.cc", - "crypto/cipher_extra/derive_key.cc", - "crypto/cipher_extra/e_aesctrhmac.cc", - "crypto/cipher_extra/e_aesgcmsiv.cc", - "crypto/cipher_extra/e_chacha20poly1305.cc", - "crypto/cipher_extra/e_des.cc", - "crypto/cipher_extra/e_null.cc", - "crypto/cipher_extra/e_rc2.cc", - "crypto/cipher_extra/e_rc4.cc", - "crypto/cipher_extra/e_tls.cc", - "crypto/cipher_extra/tls_cbc.cc", + "crypto/cipher/derive_key.cc", + "crypto/cipher/e_aesctrhmac.cc", + "crypto/cipher/e_aesgcmsiv.cc", + "crypto/cipher/e_chacha20poly1305.cc", + "crypto/cipher/e_des.cc", + "crypto/cipher/e_null.cc", + "crypto/cipher/e_rc2.cc", + "crypto/cipher/e_rc4.cc", + "crypto/cipher/e_tls.cc", + "crypto/cipher/get_cipher.cc", + "crypto/cipher/tls_cbc.cc", "crypto/conf/conf.cc", "crypto/cpu_aarch64_apple.cc", "crypto/cpu_aarch64_fuchsia.cc", @@ -333,16 +333,16 @@ crypto_sources = [ "crypto/curve25519/curve25519_64_adx.cc", "crypto/curve25519/spake25519.cc", "crypto/des/des.cc", - "crypto/dh_extra/dh_asn1.cc", - "crypto/dh_extra/params.cc", - "crypto/digest_extra/digest_extra.cc", + "crypto/dh/dh_asn1.cc", + "crypto/dh/params.cc", + "crypto/digest/digest_extra.cc", "crypto/dsa/dsa.cc", "crypto/dsa/dsa_asn1.cc", - "crypto/ec_extra/ec_asn1.cc", - "crypto/ec_extra/ec_derive.cc", - "crypto/ec_extra/hash_to_curve.cc", - "crypto/ecdh_extra/ecdh_extra.cc", - "crypto/ecdsa_extra/ecdsa_asn1.cc", + "crypto/ec/ec_asn1.cc", + "crypto/ec/ec_derive.cc", + "crypto/ec/hash_to_curve.cc", + "crypto/ecdh/ecdh.cc", + "crypto/ecdsa/ecdsa_asn1.cc", "crypto/engine/engine.cc", "crypto/err/err.cc", "crypto/evp/evp.cc", @@ -394,22 +394,22 @@ crypto_sources = [ "crypto/poly1305/poly1305_arm.cc", "crypto/poly1305/poly1305_vec.cc", "crypto/pool/pool.cc", - "crypto/rand_extra/deterministic.cc", - "crypto/rand_extra/fork_detect.cc", - "crypto/rand_extra/forkunsafe.cc", - "crypto/rand_extra/getentropy.cc", - "crypto/rand_extra/ios.cc", - "crypto/rand_extra/passive.cc", - "crypto/rand_extra/rand_extra.cc", - "crypto/rand_extra/trusty.cc", - "crypto/rand_extra/urandom.cc", - "crypto/rand_extra/windows.cc", + "crypto/rand/deterministic.cc", + "crypto/rand/fork_detect.cc", + "crypto/rand/forkunsafe.cc", + "crypto/rand/getentropy.cc", + "crypto/rand/ios.cc", + "crypto/rand/passive.cc", + "crypto/rand/rand.cc", + "crypto/rand/trusty.cc", + "crypto/rand/urandom.cc", + "crypto/rand/windows.cc", "crypto/rc4/rc4.cc", "crypto/refcount.cc", - "crypto/rsa_extra/rsa_asn1.cc", - "crypto/rsa_extra/rsa_crypt.cc", - "crypto/rsa_extra/rsa_extra.cc", - "crypto/rsa_extra/rsa_print.cc", + "crypto/rsa/rsa_asn1.cc", + "crypto/rsa/rsa_crypt.cc", + "crypto/rsa/rsa_extra.cc", + "crypto/rsa/rsa_print.cc", "crypto/sha/sha1.cc", "crypto/sha/sha256.cc", "crypto/sha/sha512.cc", @@ -593,14 +593,14 @@ crypto_internal_headers = [ "crypto/bio/internal.h", "crypto/bytestring/internal.h", "crypto/chacha/internal.h", - "crypto/cipher_extra/internal.h", + "crypto/cipher/internal.h", "crypto/conf/internal.h", "crypto/cpu_arm_linux.h", "crypto/curve25519/curve25519_tables.h", "crypto/curve25519/internal.h", "crypto/des/internal.h", "crypto/dsa/internal.h", - "crypto/ec_extra/internal.h", + "crypto/ec/internal.h", "crypto/err/internal.h", "crypto/evp/internal.h", "crypto/fipsmodule/aes/internal.h", @@ -642,9 +642,9 @@ crypto_internal_headers = [ "crypto/pkcs8/internal.h", "crypto/poly1305/internal.h", "crypto/pool/internal.h", - "crypto/rand_extra/getrandom_fillin.h", - "crypto/rand_extra/sysrand_internal.h", - "crypto/rsa_extra/internal.h", + "crypto/rand/getrandom_fillin.h", + "crypto/rand/sysrand_internal.h", + "crypto/rsa/internal.h", "crypto/spake2plus/internal.h", "crypto/trust_token/internal.h", "crypto/x509/ext_dat.h", @@ -703,8 +703,8 @@ crypto_test_sources = [ "crypto/buf/buf_test.cc", "crypto/bytestring/bytestring_test.cc", "crypto/chacha/chacha_test.cc", - "crypto/cipher_extra/aead_test.cc", - "crypto/cipher_extra/cipher_test.cc", + "crypto/cipher/aead_test.cc", + "crypto/cipher/cipher_test.cc", "crypto/compiler_test.cc", "crypto/conf/conf_test.cc", "crypto/constant_time_test.cc", @@ -713,10 +713,10 @@ crypto_test_sources = [ "crypto/curve25519/ed25519_test.cc", "crypto/curve25519/spake25519_test.cc", "crypto/curve25519/x25519_test.cc", - "crypto/dh_extra/dh_test.cc", - "crypto/digest_extra/digest_test.cc", + "crypto/dh/dh_test.cc", + "crypto/digest/digest_test.cc", "crypto/dsa/dsa_test.cc", - "crypto/ecdh_extra/ecdh_test.cc", + "crypto/ecdh/ecdh_test.cc", "crypto/err/err_test.cc", "crypto/evp/evp_extra_test.cc", "crypto/evp/evp_test.cc", @@ -735,7 +735,7 @@ crypto_test_sources = [ "crypto/fipsmodule/rand/ctrdrbg_test.cc", "crypto/fipsmodule/service_indicator/service_indicator_test.cc", "crypto/fipsmodule/sha/sha_test.cc", - "crypto/hmac_extra/hmac_test.cc", + "crypto/hmac/hmac_test.cc", "crypto/hpke/hpke_test.cc", "crypto/hrss/hrss_test.cc", "crypto/impl_dispatch_test.cc", @@ -751,11 +751,11 @@ crypto_test_sources = [ "crypto/pkcs8/pkcs8_test.cc", "crypto/poly1305/poly1305_test.cc", "crypto/pool/pool_test.cc", - "crypto/rand_extra/fork_detect_test.cc", - "crypto/rand_extra/getentropy_test.cc", - "crypto/rand_extra/rand_test.cc", + "crypto/rand/fork_detect_test.cc", + "crypto/rand/getentropy_test.cc", + "crypto/rand/rand_test.cc", "crypto/refcount_test.cc", - "crypto/rsa_extra/rsa_test.cc", + "crypto/rsa/rsa_test.cc", "crypto/self_test.cc", "crypto/siphash/siphash_test.cc", "crypto/slhdsa/slhdsa_test.cc", @@ -771,39 +771,39 @@ crypto_test_sources = [ crypto_test_data = [ "crypto/blake2/blake2b256_tests.txt", - "crypto/cipher_extra/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt", - "crypto/cipher_extra/test/aes_128_cbc_sha1_tls_tests.txt", - "crypto/cipher_extra/test/aes_128_ccm_bluetooth_8_tests.txt", - "crypto/cipher_extra/test/aes_128_ccm_bluetooth_tests.txt", - "crypto/cipher_extra/test/aes_128_ccm_matter_tests.txt", - "crypto/cipher_extra/test/aes_128_ctr_hmac_sha256.txt", - "crypto/cipher_extra/test/aes_128_gcm_randnonce_tests.txt", - "crypto/cipher_extra/test/aes_128_gcm_siv_tests.txt", - "crypto/cipher_extra/test/aes_128_gcm_tests.txt", - "crypto/cipher_extra/test/aes_192_gcm_tests.txt", - "crypto/cipher_extra/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt", - "crypto/cipher_extra/test/aes_256_cbc_sha1_tls_tests.txt", - "crypto/cipher_extra/test/aes_256_ctr_hmac_sha256.txt", - "crypto/cipher_extra/test/aes_256_gcm_randnonce_tests.txt", - "crypto/cipher_extra/test/aes_256_gcm_siv_tests.txt", - "crypto/cipher_extra/test/aes_256_gcm_tests.txt", - "crypto/cipher_extra/test/chacha20_poly1305_tests.txt", - "crypto/cipher_extra/test/cipher_tests.txt", - "crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt", - "crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_tests.txt", - "crypto/cipher_extra/test/nist_cavp/aes_128_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/aes_128_ctr.txt", - "crypto/cipher_extra/test/nist_cavp/aes_128_gcm.txt", - "crypto/cipher_extra/test/nist_cavp/aes_192_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/aes_192_ctr.txt", - "crypto/cipher_extra/test/nist_cavp/aes_256_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/aes_256_ctr.txt", - "crypto/cipher_extra/test/nist_cavp/aes_256_gcm.txt", - "crypto/cipher_extra/test/nist_cavp/tdes_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/tdes_ecb.txt", - "crypto/cipher_extra/test/xchacha20_poly1305_tests.txt", + "crypto/cipher/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt", + "crypto/cipher/test/aes_128_cbc_sha1_tls_tests.txt", + "crypto/cipher/test/aes_128_ccm_bluetooth_8_tests.txt", + "crypto/cipher/test/aes_128_ccm_bluetooth_tests.txt", + "crypto/cipher/test/aes_128_ccm_matter_tests.txt", + "crypto/cipher/test/aes_128_ctr_hmac_sha256.txt", + "crypto/cipher/test/aes_128_gcm_randnonce_tests.txt", + "crypto/cipher/test/aes_128_gcm_siv_tests.txt", + "crypto/cipher/test/aes_128_gcm_tests.txt", + "crypto/cipher/test/aes_192_gcm_tests.txt", + "crypto/cipher/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt", + "crypto/cipher/test/aes_256_cbc_sha1_tls_tests.txt", + "crypto/cipher/test/aes_256_ctr_hmac_sha256.txt", + "crypto/cipher/test/aes_256_gcm_randnonce_tests.txt", + "crypto/cipher/test/aes_256_gcm_siv_tests.txt", + "crypto/cipher/test/aes_256_gcm_tests.txt", + "crypto/cipher/test/chacha20_poly1305_tests.txt", + "crypto/cipher/test/cipher_tests.txt", + "crypto/cipher/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt", + "crypto/cipher/test/des_ede3_cbc_sha1_tls_tests.txt", + "crypto/cipher/test/nist_cavp/aes_128_cbc.txt", + "crypto/cipher/test/nist_cavp/aes_128_ctr.txt", + "crypto/cipher/test/nist_cavp/aes_128_gcm.txt", + "crypto/cipher/test/nist_cavp/aes_192_cbc.txt", + "crypto/cipher/test/nist_cavp/aes_192_ctr.txt", + "crypto/cipher/test/nist_cavp/aes_256_cbc.txt", + "crypto/cipher/test/nist_cavp/aes_256_ctr.txt", + "crypto/cipher/test/nist_cavp/aes_256_gcm.txt", + "crypto/cipher/test/nist_cavp/tdes_cbc.txt", + "crypto/cipher/test/nist_cavp/tdes_ecb.txt", + "crypto/cipher/test/xchacha20_poly1305_tests.txt", "crypto/curve25519/ed25519_tests.txt", - "crypto/ecdh_extra/ecdh_tests.txt", + "crypto/ecdh/ecdh_tests.txt", "crypto/evp/evp_tests.txt", "crypto/evp/scrypt_tests.txt", "crypto/fipsmodule/aes/aes_tests.txt", @@ -828,7 +828,7 @@ crypto_test_data = [ "crypto/fipsmodule/ecdsa/ecdsa_verify_tests.txt", "crypto/fipsmodule/keccak/keccak_tests.txt", "crypto/fipsmodule/rand/ctrdrbg_vectors.txt", - "crypto/hmac_extra/hmac_tests.txt", + "crypto/hmac/hmac_tests.txt", "crypto/hpke/hpke_test_vectors.txt", "crypto/kyber/kyber_tests.txt", "crypto/mldsa/mldsa_nist_keygen_65_tests.txt", @@ -2783,5 +2783,5 @@ test_support_sources_nasm = [ ] urandom_test_sources = [ - "crypto/rand_extra/urandom_test.cc", + "crypto/rand/urandom_test.cc", ] diff --git a/gen/sources.cmake b/gen/sources.cmake index 6979e47666..dec16ac6c9 100644 --- a/gen/sources.cmake +++ b/gen/sources.cmake @@ -312,8 +312,8 @@ set( crypto/bio/socket.cc crypto/bio/socket_helper.cc crypto/blake2/blake2.cc - crypto/bn_extra/bn_asn1.cc - crypto/bn_extra/convert.cc + crypto/bn/bn_asn1.cc + crypto/bn/convert.cc crypto/buf/buf.cc crypto/bytestring/asn1_compat.cc crypto/bytestring/ber.cc @@ -321,17 +321,17 @@ set( crypto/bytestring/cbs.cc crypto/bytestring/unicode.cc crypto/chacha/chacha.cc - crypto/cipher_extra/cipher_extra.cc - crypto/cipher_extra/derive_key.cc - crypto/cipher_extra/e_aesctrhmac.cc - crypto/cipher_extra/e_aesgcmsiv.cc - crypto/cipher_extra/e_chacha20poly1305.cc - crypto/cipher_extra/e_des.cc - crypto/cipher_extra/e_null.cc - crypto/cipher_extra/e_rc2.cc - crypto/cipher_extra/e_rc4.cc - crypto/cipher_extra/e_tls.cc - crypto/cipher_extra/tls_cbc.cc + crypto/cipher/derive_key.cc + crypto/cipher/e_aesctrhmac.cc + crypto/cipher/e_aesgcmsiv.cc + crypto/cipher/e_chacha20poly1305.cc + crypto/cipher/e_des.cc + crypto/cipher/e_null.cc + crypto/cipher/e_rc2.cc + crypto/cipher/e_rc4.cc + crypto/cipher/e_tls.cc + crypto/cipher/get_cipher.cc + crypto/cipher/tls_cbc.cc crypto/conf/conf.cc crypto/cpu_aarch64_apple.cc crypto/cpu_aarch64_fuchsia.cc @@ -347,16 +347,16 @@ set( crypto/curve25519/curve25519_64_adx.cc crypto/curve25519/spake25519.cc crypto/des/des.cc - crypto/dh_extra/dh_asn1.cc - crypto/dh_extra/params.cc - crypto/digest_extra/digest_extra.cc + crypto/dh/dh_asn1.cc + crypto/dh/params.cc + crypto/digest/digest_extra.cc crypto/dsa/dsa.cc crypto/dsa/dsa_asn1.cc - crypto/ec_extra/ec_asn1.cc - crypto/ec_extra/ec_derive.cc - crypto/ec_extra/hash_to_curve.cc - crypto/ecdh_extra/ecdh_extra.cc - crypto/ecdsa_extra/ecdsa_asn1.cc + crypto/ec/ec_asn1.cc + crypto/ec/ec_derive.cc + crypto/ec/hash_to_curve.cc + crypto/ecdh/ecdh.cc + crypto/ecdsa/ecdsa_asn1.cc crypto/engine/engine.cc crypto/err/err.cc crypto/evp/evp.cc @@ -408,22 +408,22 @@ set( crypto/poly1305/poly1305_arm.cc crypto/poly1305/poly1305_vec.cc crypto/pool/pool.cc - crypto/rand_extra/deterministic.cc - crypto/rand_extra/fork_detect.cc - crypto/rand_extra/forkunsafe.cc - crypto/rand_extra/getentropy.cc - crypto/rand_extra/ios.cc - crypto/rand_extra/passive.cc - crypto/rand_extra/rand_extra.cc - crypto/rand_extra/trusty.cc - crypto/rand_extra/urandom.cc - crypto/rand_extra/windows.cc + crypto/rand/deterministic.cc + crypto/rand/fork_detect.cc + crypto/rand/forkunsafe.cc + crypto/rand/getentropy.cc + crypto/rand/ios.cc + crypto/rand/passive.cc + crypto/rand/rand.cc + crypto/rand/trusty.cc + crypto/rand/urandom.cc + crypto/rand/windows.cc crypto/rc4/rc4.cc crypto/refcount.cc - crypto/rsa_extra/rsa_asn1.cc - crypto/rsa_extra/rsa_crypt.cc - crypto/rsa_extra/rsa_extra.cc - crypto/rsa_extra/rsa_print.cc + crypto/rsa/rsa_asn1.cc + crypto/rsa/rsa_crypt.cc + crypto/rsa/rsa_extra.cc + crypto/rsa/rsa_print.cc crypto/sha/sha1.cc crypto/sha/sha256.cc crypto/sha/sha512.cc @@ -611,14 +611,14 @@ set( crypto/bio/internal.h crypto/bytestring/internal.h crypto/chacha/internal.h - crypto/cipher_extra/internal.h + crypto/cipher/internal.h crypto/conf/internal.h crypto/cpu_arm_linux.h crypto/curve25519/curve25519_tables.h crypto/curve25519/internal.h crypto/des/internal.h crypto/dsa/internal.h - crypto/ec_extra/internal.h + crypto/ec/internal.h crypto/err/internal.h crypto/evp/internal.h crypto/fipsmodule/aes/internal.h @@ -660,9 +660,9 @@ set( crypto/pkcs8/internal.h crypto/poly1305/internal.h crypto/pool/internal.h - crypto/rand_extra/getrandom_fillin.h - crypto/rand_extra/sysrand_internal.h - crypto/rsa_extra/internal.h + crypto/rand/getrandom_fillin.h + crypto/rand/sysrand_internal.h + crypto/rsa/internal.h crypto/spake2plus/internal.h crypto/trust_token/internal.h crypto/x509/ext_dat.h @@ -727,8 +727,8 @@ set( crypto/buf/buf_test.cc crypto/bytestring/bytestring_test.cc crypto/chacha/chacha_test.cc - crypto/cipher_extra/aead_test.cc - crypto/cipher_extra/cipher_test.cc + crypto/cipher/aead_test.cc + crypto/cipher/cipher_test.cc crypto/compiler_test.cc crypto/conf/conf_test.cc crypto/constant_time_test.cc @@ -737,10 +737,10 @@ set( crypto/curve25519/ed25519_test.cc crypto/curve25519/spake25519_test.cc crypto/curve25519/x25519_test.cc - crypto/dh_extra/dh_test.cc - crypto/digest_extra/digest_test.cc + crypto/dh/dh_test.cc + crypto/digest/digest_test.cc crypto/dsa/dsa_test.cc - crypto/ecdh_extra/ecdh_test.cc + crypto/ecdh/ecdh_test.cc crypto/err/err_test.cc crypto/evp/evp_extra_test.cc crypto/evp/evp_test.cc @@ -759,7 +759,7 @@ set( crypto/fipsmodule/rand/ctrdrbg_test.cc crypto/fipsmodule/service_indicator/service_indicator_test.cc crypto/fipsmodule/sha/sha_test.cc - crypto/hmac_extra/hmac_test.cc + crypto/hmac/hmac_test.cc crypto/hpke/hpke_test.cc crypto/hrss/hrss_test.cc crypto/impl_dispatch_test.cc @@ -775,11 +775,11 @@ set( crypto/pkcs8/pkcs8_test.cc crypto/poly1305/poly1305_test.cc crypto/pool/pool_test.cc - crypto/rand_extra/fork_detect_test.cc - crypto/rand_extra/getentropy_test.cc - crypto/rand_extra/rand_test.cc + crypto/rand/fork_detect_test.cc + crypto/rand/getentropy_test.cc + crypto/rand/rand_test.cc crypto/refcount_test.cc - crypto/rsa_extra/rsa_test.cc + crypto/rsa/rsa_test.cc crypto/self_test.cc crypto/siphash/siphash_test.cc crypto/slhdsa/slhdsa_test.cc @@ -797,39 +797,39 @@ set( CRYPTO_TEST_DATA crypto/blake2/blake2b256_tests.txt - crypto/cipher_extra/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt - crypto/cipher_extra/test/aes_128_cbc_sha1_tls_tests.txt - crypto/cipher_extra/test/aes_128_ccm_bluetooth_8_tests.txt - crypto/cipher_extra/test/aes_128_ccm_bluetooth_tests.txt - crypto/cipher_extra/test/aes_128_ccm_matter_tests.txt - crypto/cipher_extra/test/aes_128_ctr_hmac_sha256.txt - crypto/cipher_extra/test/aes_128_gcm_randnonce_tests.txt - crypto/cipher_extra/test/aes_128_gcm_siv_tests.txt - crypto/cipher_extra/test/aes_128_gcm_tests.txt - crypto/cipher_extra/test/aes_192_gcm_tests.txt - crypto/cipher_extra/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt - crypto/cipher_extra/test/aes_256_cbc_sha1_tls_tests.txt - crypto/cipher_extra/test/aes_256_ctr_hmac_sha256.txt - crypto/cipher_extra/test/aes_256_gcm_randnonce_tests.txt - crypto/cipher_extra/test/aes_256_gcm_siv_tests.txt - crypto/cipher_extra/test/aes_256_gcm_tests.txt - crypto/cipher_extra/test/chacha20_poly1305_tests.txt - crypto/cipher_extra/test/cipher_tests.txt - crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt - crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_tests.txt - crypto/cipher_extra/test/nist_cavp/aes_128_cbc.txt - crypto/cipher_extra/test/nist_cavp/aes_128_ctr.txt - crypto/cipher_extra/test/nist_cavp/aes_128_gcm.txt - crypto/cipher_extra/test/nist_cavp/aes_192_cbc.txt - crypto/cipher_extra/test/nist_cavp/aes_192_ctr.txt - crypto/cipher_extra/test/nist_cavp/aes_256_cbc.txt - crypto/cipher_extra/test/nist_cavp/aes_256_ctr.txt - crypto/cipher_extra/test/nist_cavp/aes_256_gcm.txt - crypto/cipher_extra/test/nist_cavp/tdes_cbc.txt - crypto/cipher_extra/test/nist_cavp/tdes_ecb.txt - crypto/cipher_extra/test/xchacha20_poly1305_tests.txt + crypto/cipher/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt + crypto/cipher/test/aes_128_cbc_sha1_tls_tests.txt + crypto/cipher/test/aes_128_ccm_bluetooth_8_tests.txt + crypto/cipher/test/aes_128_ccm_bluetooth_tests.txt + crypto/cipher/test/aes_128_ccm_matter_tests.txt + crypto/cipher/test/aes_128_ctr_hmac_sha256.txt + crypto/cipher/test/aes_128_gcm_randnonce_tests.txt + crypto/cipher/test/aes_128_gcm_siv_tests.txt + crypto/cipher/test/aes_128_gcm_tests.txt + crypto/cipher/test/aes_192_gcm_tests.txt + crypto/cipher/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt + crypto/cipher/test/aes_256_cbc_sha1_tls_tests.txt + crypto/cipher/test/aes_256_ctr_hmac_sha256.txt + crypto/cipher/test/aes_256_gcm_randnonce_tests.txt + crypto/cipher/test/aes_256_gcm_siv_tests.txt + crypto/cipher/test/aes_256_gcm_tests.txt + crypto/cipher/test/chacha20_poly1305_tests.txt + crypto/cipher/test/cipher_tests.txt + crypto/cipher/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt + crypto/cipher/test/des_ede3_cbc_sha1_tls_tests.txt + crypto/cipher/test/nist_cavp/aes_128_cbc.txt + crypto/cipher/test/nist_cavp/aes_128_ctr.txt + crypto/cipher/test/nist_cavp/aes_128_gcm.txt + crypto/cipher/test/nist_cavp/aes_192_cbc.txt + crypto/cipher/test/nist_cavp/aes_192_ctr.txt + crypto/cipher/test/nist_cavp/aes_256_cbc.txt + crypto/cipher/test/nist_cavp/aes_256_ctr.txt + crypto/cipher/test/nist_cavp/aes_256_gcm.txt + crypto/cipher/test/nist_cavp/tdes_cbc.txt + crypto/cipher/test/nist_cavp/tdes_ecb.txt + crypto/cipher/test/xchacha20_poly1305_tests.txt crypto/curve25519/ed25519_tests.txt - crypto/ecdh_extra/ecdh_tests.txt + crypto/ecdh/ecdh_tests.txt crypto/evp/evp_tests.txt crypto/evp/scrypt_tests.txt crypto/fipsmodule/aes/aes_tests.txt @@ -854,7 +854,7 @@ set( crypto/fipsmodule/ecdsa/ecdsa_verify_tests.txt crypto/fipsmodule/keccak/keccak_tests.txt crypto/fipsmodule/rand/ctrdrbg_vectors.txt - crypto/hmac_extra/hmac_tests.txt + crypto/hmac/hmac_tests.txt crypto/hpke/hpke_test_vectors.txt crypto/kyber/kyber_tests.txt crypto/mldsa/mldsa_nist_keygen_65_tests.txt @@ -2849,5 +2849,5 @@ set( set( URANDOM_TEST_SOURCES - crypto/rand_extra/urandom_test.cc + crypto/rand/urandom_test.cc ) diff --git a/gen/sources.gni b/gen/sources.gni index 1b40795eb6..946123790a 100644 --- a/gen/sources.gni +++ b/gen/sources.gni @@ -298,8 +298,8 @@ crypto_sources = [ "crypto/bio/socket.cc", "crypto/bio/socket_helper.cc", "crypto/blake2/blake2.cc", - "crypto/bn_extra/bn_asn1.cc", - "crypto/bn_extra/convert.cc", + "crypto/bn/bn_asn1.cc", + "crypto/bn/convert.cc", "crypto/buf/buf.cc", "crypto/bytestring/asn1_compat.cc", "crypto/bytestring/ber.cc", @@ -307,17 +307,17 @@ crypto_sources = [ "crypto/bytestring/cbs.cc", "crypto/bytestring/unicode.cc", "crypto/chacha/chacha.cc", - "crypto/cipher_extra/cipher_extra.cc", - "crypto/cipher_extra/derive_key.cc", - "crypto/cipher_extra/e_aesctrhmac.cc", - "crypto/cipher_extra/e_aesgcmsiv.cc", - "crypto/cipher_extra/e_chacha20poly1305.cc", - "crypto/cipher_extra/e_des.cc", - "crypto/cipher_extra/e_null.cc", - "crypto/cipher_extra/e_rc2.cc", - "crypto/cipher_extra/e_rc4.cc", - "crypto/cipher_extra/e_tls.cc", - "crypto/cipher_extra/tls_cbc.cc", + "crypto/cipher/derive_key.cc", + "crypto/cipher/e_aesctrhmac.cc", + "crypto/cipher/e_aesgcmsiv.cc", + "crypto/cipher/e_chacha20poly1305.cc", + "crypto/cipher/e_des.cc", + "crypto/cipher/e_null.cc", + "crypto/cipher/e_rc2.cc", + "crypto/cipher/e_rc4.cc", + "crypto/cipher/e_tls.cc", + "crypto/cipher/get_cipher.cc", + "crypto/cipher/tls_cbc.cc", "crypto/conf/conf.cc", "crypto/cpu_aarch64_apple.cc", "crypto/cpu_aarch64_fuchsia.cc", @@ -333,16 +333,16 @@ crypto_sources = [ "crypto/curve25519/curve25519_64_adx.cc", "crypto/curve25519/spake25519.cc", "crypto/des/des.cc", - "crypto/dh_extra/dh_asn1.cc", - "crypto/dh_extra/params.cc", - "crypto/digest_extra/digest_extra.cc", + "crypto/dh/dh_asn1.cc", + "crypto/dh/params.cc", + "crypto/digest/digest_extra.cc", "crypto/dsa/dsa.cc", "crypto/dsa/dsa_asn1.cc", - "crypto/ec_extra/ec_asn1.cc", - "crypto/ec_extra/ec_derive.cc", - "crypto/ec_extra/hash_to_curve.cc", - "crypto/ecdh_extra/ecdh_extra.cc", - "crypto/ecdsa_extra/ecdsa_asn1.cc", + "crypto/ec/ec_asn1.cc", + "crypto/ec/ec_derive.cc", + "crypto/ec/hash_to_curve.cc", + "crypto/ecdh/ecdh.cc", + "crypto/ecdsa/ecdsa_asn1.cc", "crypto/engine/engine.cc", "crypto/err/err.cc", "crypto/evp/evp.cc", @@ -394,22 +394,22 @@ crypto_sources = [ "crypto/poly1305/poly1305_arm.cc", "crypto/poly1305/poly1305_vec.cc", "crypto/pool/pool.cc", - "crypto/rand_extra/deterministic.cc", - "crypto/rand_extra/fork_detect.cc", - "crypto/rand_extra/forkunsafe.cc", - "crypto/rand_extra/getentropy.cc", - "crypto/rand_extra/ios.cc", - "crypto/rand_extra/passive.cc", - "crypto/rand_extra/rand_extra.cc", - "crypto/rand_extra/trusty.cc", - "crypto/rand_extra/urandom.cc", - "crypto/rand_extra/windows.cc", + "crypto/rand/deterministic.cc", + "crypto/rand/fork_detect.cc", + "crypto/rand/forkunsafe.cc", + "crypto/rand/getentropy.cc", + "crypto/rand/ios.cc", + "crypto/rand/passive.cc", + "crypto/rand/rand.cc", + "crypto/rand/trusty.cc", + "crypto/rand/urandom.cc", + "crypto/rand/windows.cc", "crypto/rc4/rc4.cc", "crypto/refcount.cc", - "crypto/rsa_extra/rsa_asn1.cc", - "crypto/rsa_extra/rsa_crypt.cc", - "crypto/rsa_extra/rsa_extra.cc", - "crypto/rsa_extra/rsa_print.cc", + "crypto/rsa/rsa_asn1.cc", + "crypto/rsa/rsa_crypt.cc", + "crypto/rsa/rsa_extra.cc", + "crypto/rsa/rsa_print.cc", "crypto/sha/sha1.cc", "crypto/sha/sha256.cc", "crypto/sha/sha512.cc", @@ -593,14 +593,14 @@ crypto_internal_headers = [ "crypto/bio/internal.h", "crypto/bytestring/internal.h", "crypto/chacha/internal.h", - "crypto/cipher_extra/internal.h", + "crypto/cipher/internal.h", "crypto/conf/internal.h", "crypto/cpu_arm_linux.h", "crypto/curve25519/curve25519_tables.h", "crypto/curve25519/internal.h", "crypto/des/internal.h", "crypto/dsa/internal.h", - "crypto/ec_extra/internal.h", + "crypto/ec/internal.h", "crypto/err/internal.h", "crypto/evp/internal.h", "crypto/fipsmodule/aes/internal.h", @@ -642,9 +642,9 @@ crypto_internal_headers = [ "crypto/pkcs8/internal.h", "crypto/poly1305/internal.h", "crypto/pool/internal.h", - "crypto/rand_extra/getrandom_fillin.h", - "crypto/rand_extra/sysrand_internal.h", - "crypto/rsa_extra/internal.h", + "crypto/rand/getrandom_fillin.h", + "crypto/rand/sysrand_internal.h", + "crypto/rsa/internal.h", "crypto/spake2plus/internal.h", "crypto/trust_token/internal.h", "crypto/x509/ext_dat.h", @@ -703,8 +703,8 @@ crypto_test_sources = [ "crypto/buf/buf_test.cc", "crypto/bytestring/bytestring_test.cc", "crypto/chacha/chacha_test.cc", - "crypto/cipher_extra/aead_test.cc", - "crypto/cipher_extra/cipher_test.cc", + "crypto/cipher/aead_test.cc", + "crypto/cipher/cipher_test.cc", "crypto/compiler_test.cc", "crypto/conf/conf_test.cc", "crypto/constant_time_test.cc", @@ -713,10 +713,10 @@ crypto_test_sources = [ "crypto/curve25519/ed25519_test.cc", "crypto/curve25519/spake25519_test.cc", "crypto/curve25519/x25519_test.cc", - "crypto/dh_extra/dh_test.cc", - "crypto/digest_extra/digest_test.cc", + "crypto/dh/dh_test.cc", + "crypto/digest/digest_test.cc", "crypto/dsa/dsa_test.cc", - "crypto/ecdh_extra/ecdh_test.cc", + "crypto/ecdh/ecdh_test.cc", "crypto/err/err_test.cc", "crypto/evp/evp_extra_test.cc", "crypto/evp/evp_test.cc", @@ -735,7 +735,7 @@ crypto_test_sources = [ "crypto/fipsmodule/rand/ctrdrbg_test.cc", "crypto/fipsmodule/service_indicator/service_indicator_test.cc", "crypto/fipsmodule/sha/sha_test.cc", - "crypto/hmac_extra/hmac_test.cc", + "crypto/hmac/hmac_test.cc", "crypto/hpke/hpke_test.cc", "crypto/hrss/hrss_test.cc", "crypto/impl_dispatch_test.cc", @@ -751,11 +751,11 @@ crypto_test_sources = [ "crypto/pkcs8/pkcs8_test.cc", "crypto/poly1305/poly1305_test.cc", "crypto/pool/pool_test.cc", - "crypto/rand_extra/fork_detect_test.cc", - "crypto/rand_extra/getentropy_test.cc", - "crypto/rand_extra/rand_test.cc", + "crypto/rand/fork_detect_test.cc", + "crypto/rand/getentropy_test.cc", + "crypto/rand/rand_test.cc", "crypto/refcount_test.cc", - "crypto/rsa_extra/rsa_test.cc", + "crypto/rsa/rsa_test.cc", "crypto/self_test.cc", "crypto/siphash/siphash_test.cc", "crypto/slhdsa/slhdsa_test.cc", @@ -771,39 +771,39 @@ crypto_test_sources = [ crypto_test_data = [ "crypto/blake2/blake2b256_tests.txt", - "crypto/cipher_extra/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt", - "crypto/cipher_extra/test/aes_128_cbc_sha1_tls_tests.txt", - "crypto/cipher_extra/test/aes_128_ccm_bluetooth_8_tests.txt", - "crypto/cipher_extra/test/aes_128_ccm_bluetooth_tests.txt", - "crypto/cipher_extra/test/aes_128_ccm_matter_tests.txt", - "crypto/cipher_extra/test/aes_128_ctr_hmac_sha256.txt", - "crypto/cipher_extra/test/aes_128_gcm_randnonce_tests.txt", - "crypto/cipher_extra/test/aes_128_gcm_siv_tests.txt", - "crypto/cipher_extra/test/aes_128_gcm_tests.txt", - "crypto/cipher_extra/test/aes_192_gcm_tests.txt", - "crypto/cipher_extra/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt", - "crypto/cipher_extra/test/aes_256_cbc_sha1_tls_tests.txt", - "crypto/cipher_extra/test/aes_256_ctr_hmac_sha256.txt", - "crypto/cipher_extra/test/aes_256_gcm_randnonce_tests.txt", - "crypto/cipher_extra/test/aes_256_gcm_siv_tests.txt", - "crypto/cipher_extra/test/aes_256_gcm_tests.txt", - "crypto/cipher_extra/test/chacha20_poly1305_tests.txt", - "crypto/cipher_extra/test/cipher_tests.txt", - "crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt", - "crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_tests.txt", - "crypto/cipher_extra/test/nist_cavp/aes_128_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/aes_128_ctr.txt", - "crypto/cipher_extra/test/nist_cavp/aes_128_gcm.txt", - "crypto/cipher_extra/test/nist_cavp/aes_192_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/aes_192_ctr.txt", - "crypto/cipher_extra/test/nist_cavp/aes_256_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/aes_256_ctr.txt", - "crypto/cipher_extra/test/nist_cavp/aes_256_gcm.txt", - "crypto/cipher_extra/test/nist_cavp/tdes_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/tdes_ecb.txt", - "crypto/cipher_extra/test/xchacha20_poly1305_tests.txt", + "crypto/cipher/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt", + "crypto/cipher/test/aes_128_cbc_sha1_tls_tests.txt", + "crypto/cipher/test/aes_128_ccm_bluetooth_8_tests.txt", + "crypto/cipher/test/aes_128_ccm_bluetooth_tests.txt", + "crypto/cipher/test/aes_128_ccm_matter_tests.txt", + "crypto/cipher/test/aes_128_ctr_hmac_sha256.txt", + "crypto/cipher/test/aes_128_gcm_randnonce_tests.txt", + "crypto/cipher/test/aes_128_gcm_siv_tests.txt", + "crypto/cipher/test/aes_128_gcm_tests.txt", + "crypto/cipher/test/aes_192_gcm_tests.txt", + "crypto/cipher/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt", + "crypto/cipher/test/aes_256_cbc_sha1_tls_tests.txt", + "crypto/cipher/test/aes_256_ctr_hmac_sha256.txt", + "crypto/cipher/test/aes_256_gcm_randnonce_tests.txt", + "crypto/cipher/test/aes_256_gcm_siv_tests.txt", + "crypto/cipher/test/aes_256_gcm_tests.txt", + "crypto/cipher/test/chacha20_poly1305_tests.txt", + "crypto/cipher/test/cipher_tests.txt", + "crypto/cipher/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt", + "crypto/cipher/test/des_ede3_cbc_sha1_tls_tests.txt", + "crypto/cipher/test/nist_cavp/aes_128_cbc.txt", + "crypto/cipher/test/nist_cavp/aes_128_ctr.txt", + "crypto/cipher/test/nist_cavp/aes_128_gcm.txt", + "crypto/cipher/test/nist_cavp/aes_192_cbc.txt", + "crypto/cipher/test/nist_cavp/aes_192_ctr.txt", + "crypto/cipher/test/nist_cavp/aes_256_cbc.txt", + "crypto/cipher/test/nist_cavp/aes_256_ctr.txt", + "crypto/cipher/test/nist_cavp/aes_256_gcm.txt", + "crypto/cipher/test/nist_cavp/tdes_cbc.txt", + "crypto/cipher/test/nist_cavp/tdes_ecb.txt", + "crypto/cipher/test/xchacha20_poly1305_tests.txt", "crypto/curve25519/ed25519_tests.txt", - "crypto/ecdh_extra/ecdh_tests.txt", + "crypto/ecdh/ecdh_tests.txt", "crypto/evp/evp_tests.txt", "crypto/evp/scrypt_tests.txt", "crypto/fipsmodule/aes/aes_tests.txt", @@ -828,7 +828,7 @@ crypto_test_data = [ "crypto/fipsmodule/ecdsa/ecdsa_verify_tests.txt", "crypto/fipsmodule/keccak/keccak_tests.txt", "crypto/fipsmodule/rand/ctrdrbg_vectors.txt", - "crypto/hmac_extra/hmac_tests.txt", + "crypto/hmac/hmac_tests.txt", "crypto/hpke/hpke_test_vectors.txt", "crypto/kyber/kyber_tests.txt", "crypto/mldsa/mldsa_nist_keygen_65_tests.txt", @@ -2783,5 +2783,5 @@ test_support_sources_nasm = [ ] urandom_test_sources = [ - "crypto/rand_extra/urandom_test.cc", + "crypto/rand/urandom_test.cc", ] diff --git a/gen/sources.json b/gen/sources.json index b2e6b523d7..a37daf119f 100644 --- a/gen/sources.json +++ b/gen/sources.json @@ -282,8 +282,8 @@ "crypto/bio/socket.cc", "crypto/bio/socket_helper.cc", "crypto/blake2/blake2.cc", - "crypto/bn_extra/bn_asn1.cc", - "crypto/bn_extra/convert.cc", + "crypto/bn/bn_asn1.cc", + "crypto/bn/convert.cc", "crypto/buf/buf.cc", "crypto/bytestring/asn1_compat.cc", "crypto/bytestring/ber.cc", @@ -291,17 +291,17 @@ "crypto/bytestring/cbs.cc", "crypto/bytestring/unicode.cc", "crypto/chacha/chacha.cc", - "crypto/cipher_extra/cipher_extra.cc", - "crypto/cipher_extra/derive_key.cc", - "crypto/cipher_extra/e_aesctrhmac.cc", - "crypto/cipher_extra/e_aesgcmsiv.cc", - "crypto/cipher_extra/e_chacha20poly1305.cc", - "crypto/cipher_extra/e_des.cc", - "crypto/cipher_extra/e_null.cc", - "crypto/cipher_extra/e_rc2.cc", - "crypto/cipher_extra/e_rc4.cc", - "crypto/cipher_extra/e_tls.cc", - "crypto/cipher_extra/tls_cbc.cc", + "crypto/cipher/derive_key.cc", + "crypto/cipher/e_aesctrhmac.cc", + "crypto/cipher/e_aesgcmsiv.cc", + "crypto/cipher/e_chacha20poly1305.cc", + "crypto/cipher/e_des.cc", + "crypto/cipher/e_null.cc", + "crypto/cipher/e_rc2.cc", + "crypto/cipher/e_rc4.cc", + "crypto/cipher/e_tls.cc", + "crypto/cipher/get_cipher.cc", + "crypto/cipher/tls_cbc.cc", "crypto/conf/conf.cc", "crypto/cpu_aarch64_apple.cc", "crypto/cpu_aarch64_fuchsia.cc", @@ -317,16 +317,16 @@ "crypto/curve25519/curve25519_64_adx.cc", "crypto/curve25519/spake25519.cc", "crypto/des/des.cc", - "crypto/dh_extra/dh_asn1.cc", - "crypto/dh_extra/params.cc", - "crypto/digest_extra/digest_extra.cc", + "crypto/dh/dh_asn1.cc", + "crypto/dh/params.cc", + "crypto/digest/digest_extra.cc", "crypto/dsa/dsa.cc", "crypto/dsa/dsa_asn1.cc", - "crypto/ec_extra/ec_asn1.cc", - "crypto/ec_extra/ec_derive.cc", - "crypto/ec_extra/hash_to_curve.cc", - "crypto/ecdh_extra/ecdh_extra.cc", - "crypto/ecdsa_extra/ecdsa_asn1.cc", + "crypto/ec/ec_asn1.cc", + "crypto/ec/ec_derive.cc", + "crypto/ec/hash_to_curve.cc", + "crypto/ecdh/ecdh.cc", + "crypto/ecdsa/ecdsa_asn1.cc", "crypto/engine/engine.cc", "crypto/err/err.cc", "crypto/evp/evp.cc", @@ -378,22 +378,22 @@ "crypto/poly1305/poly1305_arm.cc", "crypto/poly1305/poly1305_vec.cc", "crypto/pool/pool.cc", - "crypto/rand_extra/deterministic.cc", - "crypto/rand_extra/fork_detect.cc", - "crypto/rand_extra/forkunsafe.cc", - "crypto/rand_extra/getentropy.cc", - "crypto/rand_extra/ios.cc", - "crypto/rand_extra/passive.cc", - "crypto/rand_extra/rand_extra.cc", - "crypto/rand_extra/trusty.cc", - "crypto/rand_extra/urandom.cc", - "crypto/rand_extra/windows.cc", + "crypto/rand/deterministic.cc", + "crypto/rand/fork_detect.cc", + "crypto/rand/forkunsafe.cc", + "crypto/rand/getentropy.cc", + "crypto/rand/ios.cc", + "crypto/rand/passive.cc", + "crypto/rand/rand.cc", + "crypto/rand/trusty.cc", + "crypto/rand/urandom.cc", + "crypto/rand/windows.cc", "crypto/rc4/rc4.cc", "crypto/refcount.cc", - "crypto/rsa_extra/rsa_asn1.cc", - "crypto/rsa_extra/rsa_crypt.cc", - "crypto/rsa_extra/rsa_extra.cc", - "crypto/rsa_extra/rsa_print.cc", + "crypto/rsa/rsa_asn1.cc", + "crypto/rsa/rsa_crypt.cc", + "crypto/rsa/rsa_extra.cc", + "crypto/rsa/rsa_print.cc", "crypto/sha/sha1.cc", "crypto/sha/sha256.cc", "crypto/sha/sha512.cc", @@ -575,14 +575,14 @@ "crypto/bio/internal.h", "crypto/bytestring/internal.h", "crypto/chacha/internal.h", - "crypto/cipher_extra/internal.h", + "crypto/cipher/internal.h", "crypto/conf/internal.h", "crypto/cpu_arm_linux.h", "crypto/curve25519/curve25519_tables.h", "crypto/curve25519/internal.h", "crypto/des/internal.h", "crypto/dsa/internal.h", - "crypto/ec_extra/internal.h", + "crypto/ec/internal.h", "crypto/err/internal.h", "crypto/evp/internal.h", "crypto/fipsmodule/aes/internal.h", @@ -624,9 +624,9 @@ "crypto/pkcs8/internal.h", "crypto/poly1305/internal.h", "crypto/pool/internal.h", - "crypto/rand_extra/getrandom_fillin.h", - "crypto/rand_extra/sysrand_internal.h", - "crypto/rsa_extra/internal.h", + "crypto/rand/getrandom_fillin.h", + "crypto/rand/sysrand_internal.h", + "crypto/rsa/internal.h", "crypto/spake2plus/internal.h", "crypto/trust_token/internal.h", "crypto/x509/ext_dat.h", @@ -684,8 +684,8 @@ "crypto/buf/buf_test.cc", "crypto/bytestring/bytestring_test.cc", "crypto/chacha/chacha_test.cc", - "crypto/cipher_extra/aead_test.cc", - "crypto/cipher_extra/cipher_test.cc", + "crypto/cipher/aead_test.cc", + "crypto/cipher/cipher_test.cc", "crypto/compiler_test.cc", "crypto/conf/conf_test.cc", "crypto/constant_time_test.cc", @@ -694,10 +694,10 @@ "crypto/curve25519/ed25519_test.cc", "crypto/curve25519/spake25519_test.cc", "crypto/curve25519/x25519_test.cc", - "crypto/dh_extra/dh_test.cc", - "crypto/digest_extra/digest_test.cc", + "crypto/dh/dh_test.cc", + "crypto/digest/digest_test.cc", "crypto/dsa/dsa_test.cc", - "crypto/ecdh_extra/ecdh_test.cc", + "crypto/ecdh/ecdh_test.cc", "crypto/err/err_test.cc", "crypto/evp/evp_extra_test.cc", "crypto/evp/evp_test.cc", @@ -716,7 +716,7 @@ "crypto/fipsmodule/rand/ctrdrbg_test.cc", "crypto/fipsmodule/service_indicator/service_indicator_test.cc", "crypto/fipsmodule/sha/sha_test.cc", - "crypto/hmac_extra/hmac_test.cc", + "crypto/hmac/hmac_test.cc", "crypto/hpke/hpke_test.cc", "crypto/hrss/hrss_test.cc", "crypto/impl_dispatch_test.cc", @@ -732,11 +732,11 @@ "crypto/pkcs8/pkcs8_test.cc", "crypto/poly1305/poly1305_test.cc", "crypto/pool/pool_test.cc", - "crypto/rand_extra/fork_detect_test.cc", - "crypto/rand_extra/getentropy_test.cc", - "crypto/rand_extra/rand_test.cc", + "crypto/rand/fork_detect_test.cc", + "crypto/rand/getentropy_test.cc", + "crypto/rand/rand_test.cc", "crypto/refcount_test.cc", - "crypto/rsa_extra/rsa_test.cc", + "crypto/rsa/rsa_test.cc", "crypto/self_test.cc", "crypto/siphash/siphash_test.cc", "crypto/slhdsa/slhdsa_test.cc", @@ -751,39 +751,39 @@ ], "data": [ "crypto/blake2/blake2b256_tests.txt", - "crypto/cipher_extra/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt", - "crypto/cipher_extra/test/aes_128_cbc_sha1_tls_tests.txt", - "crypto/cipher_extra/test/aes_128_ccm_bluetooth_8_tests.txt", - "crypto/cipher_extra/test/aes_128_ccm_bluetooth_tests.txt", - "crypto/cipher_extra/test/aes_128_ccm_matter_tests.txt", - "crypto/cipher_extra/test/aes_128_ctr_hmac_sha256.txt", - "crypto/cipher_extra/test/aes_128_gcm_randnonce_tests.txt", - "crypto/cipher_extra/test/aes_128_gcm_siv_tests.txt", - "crypto/cipher_extra/test/aes_128_gcm_tests.txt", - "crypto/cipher_extra/test/aes_192_gcm_tests.txt", - "crypto/cipher_extra/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt", - "crypto/cipher_extra/test/aes_256_cbc_sha1_tls_tests.txt", - "crypto/cipher_extra/test/aes_256_ctr_hmac_sha256.txt", - "crypto/cipher_extra/test/aes_256_gcm_randnonce_tests.txt", - "crypto/cipher_extra/test/aes_256_gcm_siv_tests.txt", - "crypto/cipher_extra/test/aes_256_gcm_tests.txt", - "crypto/cipher_extra/test/chacha20_poly1305_tests.txt", - "crypto/cipher_extra/test/cipher_tests.txt", - "crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt", - "crypto/cipher_extra/test/des_ede3_cbc_sha1_tls_tests.txt", - "crypto/cipher_extra/test/nist_cavp/aes_128_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/aes_128_ctr.txt", - "crypto/cipher_extra/test/nist_cavp/aes_128_gcm.txt", - "crypto/cipher_extra/test/nist_cavp/aes_192_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/aes_192_ctr.txt", - "crypto/cipher_extra/test/nist_cavp/aes_256_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/aes_256_ctr.txt", - "crypto/cipher_extra/test/nist_cavp/aes_256_gcm.txt", - "crypto/cipher_extra/test/nist_cavp/tdes_cbc.txt", - "crypto/cipher_extra/test/nist_cavp/tdes_ecb.txt", - "crypto/cipher_extra/test/xchacha20_poly1305_tests.txt", + "crypto/cipher/test/aes_128_cbc_sha1_tls_implicit_iv_tests.txt", + "crypto/cipher/test/aes_128_cbc_sha1_tls_tests.txt", + "crypto/cipher/test/aes_128_ccm_bluetooth_8_tests.txt", + "crypto/cipher/test/aes_128_ccm_bluetooth_tests.txt", + "crypto/cipher/test/aes_128_ccm_matter_tests.txt", + "crypto/cipher/test/aes_128_ctr_hmac_sha256.txt", + "crypto/cipher/test/aes_128_gcm_randnonce_tests.txt", + "crypto/cipher/test/aes_128_gcm_siv_tests.txt", + "crypto/cipher/test/aes_128_gcm_tests.txt", + "crypto/cipher/test/aes_192_gcm_tests.txt", + "crypto/cipher/test/aes_256_cbc_sha1_tls_implicit_iv_tests.txt", + "crypto/cipher/test/aes_256_cbc_sha1_tls_tests.txt", + "crypto/cipher/test/aes_256_ctr_hmac_sha256.txt", + "crypto/cipher/test/aes_256_gcm_randnonce_tests.txt", + "crypto/cipher/test/aes_256_gcm_siv_tests.txt", + "crypto/cipher/test/aes_256_gcm_tests.txt", + "crypto/cipher/test/chacha20_poly1305_tests.txt", + "crypto/cipher/test/cipher_tests.txt", + "crypto/cipher/test/des_ede3_cbc_sha1_tls_implicit_iv_tests.txt", + "crypto/cipher/test/des_ede3_cbc_sha1_tls_tests.txt", + "crypto/cipher/test/nist_cavp/aes_128_cbc.txt", + "crypto/cipher/test/nist_cavp/aes_128_ctr.txt", + "crypto/cipher/test/nist_cavp/aes_128_gcm.txt", + "crypto/cipher/test/nist_cavp/aes_192_cbc.txt", + "crypto/cipher/test/nist_cavp/aes_192_ctr.txt", + "crypto/cipher/test/nist_cavp/aes_256_cbc.txt", + "crypto/cipher/test/nist_cavp/aes_256_ctr.txt", + "crypto/cipher/test/nist_cavp/aes_256_gcm.txt", + "crypto/cipher/test/nist_cavp/tdes_cbc.txt", + "crypto/cipher/test/nist_cavp/tdes_ecb.txt", + "crypto/cipher/test/xchacha20_poly1305_tests.txt", "crypto/curve25519/ed25519_tests.txt", - "crypto/ecdh_extra/ecdh_tests.txt", + "crypto/ecdh/ecdh_tests.txt", "crypto/evp/evp_tests.txt", "crypto/evp/scrypt_tests.txt", "crypto/fipsmodule/aes/aes_tests.txt", @@ -808,7 +808,7 @@ "crypto/fipsmodule/ecdsa/ecdsa_verify_tests.txt", "crypto/fipsmodule/keccak/keccak_tests.txt", "crypto/fipsmodule/rand/ctrdrbg_vectors.txt", - "crypto/hmac_extra/hmac_tests.txt", + "crypto/hmac/hmac_tests.txt", "crypto/hpke/hpke_test_vectors.txt", "crypto/kyber/kyber_tests.txt", "crypto/mldsa/mldsa_nist_keygen_65_tests.txt", @@ -2765,7 +2765,7 @@ }, "urandom_test": { "srcs": [ - "crypto/rand_extra/urandom_test.cc" + "crypto/rand/urandom_test.cc" ] } } \ No newline at end of file diff --git a/rust/bssl-crypto/src/aead.rs b/rust/bssl-crypto/src/aead.rs index 2b7a9ac7e4..9d72f7c833 100644 --- a/rust/bssl-crypto/src/aead.rs +++ b/rust/bssl-crypto/src/aead.rs @@ -451,7 +451,7 @@ mod test { fn aes_128_gcm() { let test_cases: &[TestCase<16, 12>] = &[ TestCase { - // TC 1 from crypto/cipher_extra/test/aes_128_gcm_tests.txt + // TC 1 from crypto/cipher/test/aes_128_gcm_tests.txt key: decode_hex("d480429666d48b400633921c5407d1d1"), nonce: decode_hex("3388c676dc754acfa66e172a"), msg: Vec::new(), @@ -475,7 +475,7 @@ mod test { fn aes_256_gcm() { let test_cases: &[TestCase<32, 12>] = &[ TestCase { - // TC 1 from crypto/cipher_extra/test/aes_128_gcm_tests.txt + // TC 1 from crypto/cipher/test/aes_128_gcm_tests.txt key: decode_hex("e5ac4a32c67e425ac4b143c83c6f161312a97d88d634afdf9f4da5bd35223f01"), nonce: decode_hex("5bf11a0951f0bfc7ea5c9e58"), msg: Vec::new(), diff --git a/tool/speed.cc b/tool/speed.cc index ae665a7d1b..7a7c406135 100644 --- a/tool/speed.cc +++ b/tool/speed.cc @@ -67,7 +67,7 @@ OPENSSL_MSVC_PRAGMA(warning(pop)) #include #endif -#include "../crypto/ec_extra/internal.h" +#include "../crypto/ec/internal.h" #include "../crypto/fipsmodule/ec/internal.h" #include "../crypto/internal.h" #include "../crypto/trust_token/internal.h" diff --git a/util/diff_asm.go b/util/diff_asm.go index 8f531093b3..7112f75216 100644 --- a/util/diff_asm.go +++ b/util/diff_asm.go @@ -40,9 +40,9 @@ func mapName(path string) string { switch pathSlash { case "crypto/aes/asm/vpaes-armv7.pl", "crypto/bn/asm/bn-armv8.pl", - "crypto/cipher_extra/asm/aes128gcmsiv-x86_64.pl", - "crypto/cipher_extra/asm/chacha20_poly1305_armv8.pl", - "crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl", + "crypto/cipher/asm/aes128gcmsiv-x86_64.pl", + "crypto/cipher/asm/chacha20_poly1305_armv8.pl", + "crypto/cipher/asm/chacha20_poly1305_x86_64.pl", "crypto/ec/asm/p256_beeu-armv8-asm.pl", "crypto/ec/asm/p256_beeu-x86_64-asm.pl", "crypto/modes/asm/aesv8-gcm-armv8.pl", From 06ec1ed75e36c1484475a34f287433919f160cf9 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Thu, 16 Jan 2025 16:37:52 -0500 Subject: [PATCH 59/64] clang-format bssl_shim.cc Get this diff out of the way of other changes. Change-Id: I0f92f99ae6f2cadd70a86a8bc18a5757ab0a7ba0 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75287 Commit-Queue: Bob Beck Commit-Queue: David Benjamin Reviewed-by: Bob Beck Auto-Submit: David Benjamin --- ssl/test/bssl_shim.cc | 51 +++++++++++++++---------------------------- 1 file changed, 18 insertions(+), 33 deletions(-) diff --git a/ssl/test/bssl_shim.cc b/ssl/test/bssl_shim.cc index 5079f7eed4..414b4be80d 100644 --- a/ssl/test/bssl_shim.cc +++ b/ssl/test/bssl_shim.cc @@ -154,11 +154,9 @@ static int Usage(const char *program) { return 1; } -template +template struct Free { - void operator()(T *buf) { - free(buf); - } + void operator()(T *buf) { free(buf); } }; // Connect returns a new socket connected to the runner, or -1 on error. @@ -242,16 +240,14 @@ static int DoRead(SSL *ssl, uint8_t *out, size_t max_out) { // SSL_peek should synchronously return the same data. int ret2 = SSL_peek(ssl, buf.get(), ret); - if (ret2 != ret || - OPENSSL_memcmp(buf.get(), out, ret) != 0) { + if (ret2 != ret || OPENSSL_memcmp(buf.get(), out, ret) != 0) { fprintf(stderr, "First and second SSL_peek did not match.\n"); return -1; } // SSL_read should synchronously return the same data and consume it. ret2 = SSL_read(ssl, buf.get(), ret); - if (ret2 != ret || - OPENSSL_memcmp(buf.get(), out, ret) != 0) { + if (ret2 != ret || OPENSSL_memcmp(buf.get(), out, ret) != 0) { fprintf(stderr, "SSL_peek and SSL_read did not match.\n"); return -1; } @@ -351,9 +347,8 @@ static bool CheckAuthProperties(SSL *ssl, bool is_resume, } if (config->expect_verify_result) { - int expected_verify_result = config->verify_fail ? - X509_V_ERR_APPLICATION_VERIFICATION : - X509_V_OK; + int expected_verify_result = + config->verify_fail ? X509_V_ERR_APPLICATION_VERIFICATION : X509_V_OK; if (SSL_get_verify_result(ssl) != expected_verify_result) { fprintf(stderr, "Wrong certificate verification result\n"); @@ -394,8 +389,7 @@ static bool CheckAuthProperties(SSL *ssl, bool is_resume, for (size_t i = 0; i < sk_X509_num(chain); i++) { if (X509_cmp(sk_X509_value(chain, i), sk_X509_value(expect_chain.get(), i)) != 0) { - fprintf(stderr, "Chain certificate %zu did not match.\n", - i + 1); + fprintf(stderr, "Chain certificate %zu did not match.\n", i + 1); return false; } } @@ -510,10 +504,9 @@ static bool CheckHandshakeProperties(SSL *ssl, bool is_resume, if (!config->expect_server_name.empty()) { const char *server_name = SSL_get_servername(ssl, TLSEXT_NAMETYPE_host_name); - if (server_name == nullptr || - server_name != config->expect_server_name) { - fprintf(stderr, "servername mismatch (got %s; want %s)\n", - server_name, config->expect_server_name.c_str()); + if (server_name == nullptr || server_name != config->expect_server_name) { + fprintf(stderr, "servername mismatch (got %s; want %s)\n", server_name, + config->expect_server_name.c_str()); return false; } } @@ -636,8 +629,7 @@ static bool CheckHandshakeProperties(SSL *ssl, bool is_resume, return false; } - if (config->expect_cipher != 0 && - config->expect_cipher != cipher_id) { + if (config->expect_cipher != 0 && config->expect_cipher != cipher_id) { fprintf(stderr, "Cipher ID was %04x, wanted %04x\n", cipher_id, config->expect_cipher); return false; @@ -1029,8 +1021,7 @@ static bool DoExchange(bssl::UniquePtr *out_session, } // Skip the |config->async| logic as this should be a no-op. - if (config->no_op_extra_handshake && - SSL_do_handshake(ssl) != 1) { + if (config->no_op_extra_handshake && SSL_do_handshake(ssl) != 1) { fprintf(stderr, "Extra SSL_do_handshake was not a no-op.\n"); return false; } @@ -1173,8 +1164,7 @@ static bool DoExchange(bssl::UniquePtr *out_session, // Let only one byte of the record through. AsyncBioAllowWrite(test_state->async_bio, 1); - int write_ret = - SSL_write(ssl, kInitialWrite, strlen(kInitialWrite)); + int write_ret = SSL_write(ssl, kInitialWrite, strlen(kInitialWrite)); if (SSL_get_error(ssl, write_ret) != SSL_ERROR_WANT_WRITE) { fprintf(stderr, "Failed to leave unfinished write.\n"); return false; @@ -1233,8 +1223,7 @@ static bool DoExchange(bssl::UniquePtr *out_session, // After a successful read, with or without False Start, the handshake // must be complete unless we are doing early data. - if (!test_state->handshake_done && - !SSL_early_data_accepted(ssl)) { + if (!test_state->handshake_done && !SSL_early_data_accepted(ssl)) { fprintf(stderr, "handshake was not completed after SSL_read\n"); return false; } @@ -1266,8 +1255,7 @@ static bool DoExchange(bssl::UniquePtr *out_session, if (!config->is_server && !config->false_start && !config->implicit_handshake && // Session tickets are sent post-handshake in TLS 1.3. - GetProtocolVersion(ssl) < TLS1_3_VERSION && - test_state->got_new_session) { + GetProtocolVersion(ssl) < TLS1_3_VERSION && test_state->got_new_session) { fprintf(stderr, "new session was established after the handshake\n"); return false; } @@ -1283,8 +1271,7 @@ static bool DoExchange(bssl::UniquePtr *out_session, } if (expect_new_session) { - bool got_early_data = - test_state->new_session->ticket_max_early_data != 0; + bool got_early_data = test_state->new_session->ticket_max_early_data != 0; if (config->expect_ticket_supports_early_data != got_early_data) { fprintf(stderr, "new session did%s support early data, but we expected the " @@ -1344,11 +1331,9 @@ static bool DoExchange(bssl::UniquePtr *out_session, } if (config->renegotiate_explicit && - SSL_total_renegotiations(ssl) != - test_state->explicit_renegotiates) { + SSL_total_renegotiations(ssl) != test_state->explicit_renegotiates) { fprintf(stderr, "Performed %d renegotiations, but triggered %d of them\n", - SSL_total_renegotiations(ssl), - test_state->explicit_renegotiates); + SSL_total_renegotiations(ssl), test_state->explicit_renegotiates); return false; } From 16c79a2aee9ba8a5888ef3375ca02060bcede875 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Thu, 16 Jan 2025 16:39:14 -0500 Subject: [PATCH 60/64] Remove some dead code in bssl_shim Change-Id: I752be9b328cd6a444029f6640a2d7feca0e00206 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75307 Reviewed-by: Bob Beck Commit-Queue: Bob Beck --- ssl/test/bssl_shim.cc | 5 ----- 1 file changed, 5 deletions(-) diff --git a/ssl/test/bssl_shim.cc b/ssl/test/bssl_shim.cc index 414b4be80d..78ecc6888e 100644 --- a/ssl/test/bssl_shim.cc +++ b/ssl/test/bssl_shim.cc @@ -154,11 +154,6 @@ static int Usage(const char *program) { return 1; } -template -struct Free { - void operator()(T *buf) { free(buf); } -}; - // Connect returns a new socket connected to the runner, or -1 on error. static OwnedSocket Connect(const TestConfig *config) { sockaddr_storage addr; From bca2d72c5e3174f0e1b541fb0a3d6bdf31c23825 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Mon, 13 Jan 2025 16:57:53 -0500 Subject: [PATCH 61/64] Test some obscure modes of EVP sign/verify with RSA keys When the digest is unset, padding may be either RSA_PADDING_NONE or RSA_PADDING_PKCS1. If RSA_PADDING_NONE, this becomes raw RSA public and private key operations, with signature verify comparing the "digest" against the output of the raw public key operation. If RSA_PADDING_PKCS1, this treats the "digest" as the raw DigestInfo structure. Test both of these, so we don't break them as we move code around. In doing so, this revealed that verify in these modes, when the "digest" doesn't match, forgot to add to the error queue. Fix that up. Bug: 42290606 Change-Id: I3412a633124a12bda6dfebc08896f616b2d268aa Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75228 Reviewed-by: Bob Beck Auto-Submit: David Benjamin Commit-Queue: David Benjamin --- crypto/evp/evp_tests.txt | 56 ++++++++++++++++++++++++++++++++++++++++ crypto/evp/p_rsa.cc | 7 +++-- 2 files changed, 61 insertions(+), 2 deletions(-) diff --git a/crypto/evp/evp_tests.txt b/crypto/evp/evp_tests.txt index e8e9f27a89..e1ec21d1c7 100644 --- a/crypto/evp/evp_tests.txt +++ b/crypto/evp/evp_tests.txt @@ -1551,6 +1551,62 @@ Input = 2d207a73432a8fb4c03051b3f73b28a61764098dfa34c47a20995f8115aa6816679b557e Output = eaf1a73a1b0c4609537de69cd9228bbcfb9a8ca8c6c3efaf056fe4a7f4634ed00b7c39ec6922d7b8ea2c04ebac +# RSA with no padding implements raw public and private transforms. This is not +# a real signature scheme, but might be used to construct one. + +Sign = RSA-2048 +RSAPadding = None +Input = 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002 +Output = 93d0bae8ad0d94de400eb078dd10edd7418ef1bf11b8e8b5d2b86b142e77d603e108fbcca2b976aa7b5326e5369db3bb73bf74f8d47c36a6318e913888c873502a561fc69329e7c24a0a016d81310449a52b29e49a6a41bdfe6c10a8d90072d64b4486756fd007c0071da2a8c7107a904621c11f0d81aa80b655a713c28170594ece28133dfbfddd61d4e4dad0d6781f6145a351a994054993fd57cd1330966ce97d7ac259b15616fd7235e2cac29fdc1c05f1612c61785614b80e7b650c03ef77d64163d75fa637cc2a9a7e570b3176fdcfb6ad6d25e8515f6ced02cfb3a441c87220044110fd27dcb53888f0377e1797bf297b7da27d3f033cd8b5d60ececc + +Verify = RSA-2048 +RSAPadding = None +Input = 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002 +Output = 93d0bae8ad0d94de400eb078dd10edd7418ef1bf11b8e8b5d2b86b142e77d603e108fbcca2b976aa7b5326e5369db3bb73bf74f8d47c36a6318e913888c873502a561fc69329e7c24a0a016d81310449a52b29e49a6a41bdfe6c10a8d90072d64b4486756fd007c0071da2a8c7107a904621c11f0d81aa80b655a713c28170594ece28133dfbfddd61d4e4dad0d6781f6145a351a994054993fd57cd1330966ce97d7ac259b15616fd7235e2cac29fdc1c05f1612c61785614b80e7b650c03ef77d64163d75fa637cc2a9a7e570b3176fdcfb6ad6d25e8515f6ced02cfb3a441c87220044110fd27dcb53888f0377e1797bf297b7da27d3f033cd8b5d60ececc + +Verify = RSA-2048 +RSAPadding = None +Input = 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004 +Output = 93d0bae8ad0d94de400eb078dd10edd7418ef1bf11b8e8b5d2b86b142e77d603e108fbcca2b976aa7b5326e5369db3bb73bf74f8d47c36a6318e913888c873502a561fc69329e7c24a0a016d81310449a52b29e49a6a41bdfe6c10a8d90072d64b4486756fd007c0071da2a8c7107a904621c11f0d81aa80b655a713c28170594ece28133dfbfddd61d4e4dad0d6781f6145a351a994054993fd57cd1330966ce97d7ac259b15616fd7235e2cac29fdc1c05f1612c61785614b80e7b650c03ef77d64163d75fa637cc2a9a7e570b3176fdcfb6ad6d25e8515f6ced02cfb3a441c87220044110fd27dcb53888f0377e1797bf297b7da27d3f033cd8b5d60ececc +Error = BAD_SIGNATURE + +Sign = RSA-2048 +RSAPadding = None +Input = "Too short" +Error = DATA_TOO_SMALL + +Verify = RSA-2048 +RSAPadding = None +Input = "Too short" +Output = 93d0bae8ad0d94de400eb078dd10edd7418ef1bf11b8e8b5d2b86b142e77d603e108fbcca2b976aa7b5326e5369db3bb73bf74f8d47c36a6318e913888c873502a561fc69329e7c24a0a016d81310449a52b29e49a6a41bdfe6c10a8d90072d64b4486756fd007c0071da2a8c7107a904621c11f0d81aa80b655a713c28170594ece28133dfbfddd61d4e4dad0d6781f6145a351a994054993fd57cd1330966ce97d7ac259b15616fd7235e2cac29fdc1c05f1612c61785614b80e7b650c03ef77d64163d75fa637cc2a9a7e570b3176fdcfb6ad6d25e8515f6ced02cfb3a441c87220044110fd27dcb53888f0377e1797bf297b7da27d3f033cd8b5d60ececc +Error = BAD_SIGNATURE + +Sign = RSA-2048 +Digest = SHA256 +RSAPadding = None +Input = 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002 +Error = INVALID_PADDING_MODE + + +# RSASSA-PKCS1-v1_5 with no digest. This is not actually a defined mode in +# PKCS #1, but OpenSSL's API interprets this to mean accepting an arbitrary +# string instead of the serialized DigestInfo. This is not a real signature +# scheme, but might be used to construct one. + +Sign = RSA-2048 +Input = 01234567 +Output = 9925a048eb9e225819dea311be206ea1287ad90bdf77218bb1348829ef7072e7b4a772b6cb1df1480d4ede4140feb84e03c4c99c851f91cf293ed3259a6ef8f567130164465a39e83306b69a22b74ec26adca77da8e1cc625c3721269b410819298f1c6399eb8c68bcc8df16ab149eae0959947a5918b4fd49396af80b557124712f27f760cc69d09d6d1db0883decf05ee072e98f15b153bd74e2ec98a00ea514a4c9c2a98a0813cb5b53381e030779612e3de972f8029cf363bec7098ecda568eee6371ecb10f6448e707e08b47f557a9f7e87024a2a1249d1f8dc540b35a79f9e6c0188cbc406cc434cefd83538c3cffb7663f9e46a7787a6a630c5a1c675 + +Verify = RSA-2048 +Input = 01234567 +Output = 9925a048eb9e225819dea311be206ea1287ad90bdf77218bb1348829ef7072e7b4a772b6cb1df1480d4ede4140feb84e03c4c99c851f91cf293ed3259a6ef8f567130164465a39e83306b69a22b74ec26adca77da8e1cc625c3721269b410819298f1c6399eb8c68bcc8df16ab149eae0959947a5918b4fd49396af80b557124712f27f760cc69d09d6d1db0883decf05ee072e98f15b153bd74e2ec98a00ea514a4c9c2a98a0813cb5b53381e030779612e3de972f8029cf363bec7098ecda568eee6371ecb10f6448e707e08b47f557a9f7e87024a2a1249d1f8dc540b35a79f9e6c0188cbc406cc434cefd83538c3cffb7663f9e46a7787a6a630c5a1c675 + +Verify = RSA-2048 +Input = 01234568 +Output = 9925a048eb9e225819dea311be206ea1287ad90bdf77218bb1348829ef7072e7b4a772b6cb1df1480d4ede4140feb84e03c4c99c851f91cf293ed3259a6ef8f567130164465a39e83306b69a22b74ec26adca77da8e1cc625c3721269b410819298f1c6399eb8c68bcc8df16ab149eae0959947a5918b4fd49396af80b557124712f27f760cc69d09d6d1db0883decf05ee072e98f15b153bd74e2ec98a00ea514a4c9c2a98a0813cb5b53381e030779612e3de972f8029cf363bec7098ecda568eee6371ecb10f6448e707e08b47f557a9f7e87024a2a1249d1f8dc540b35a79f9e6c0188cbc406cc434cefd83538c3cffb7663f9e46a7787a6a630c5a1c675 +Error = BAD_SIGNATURE + + # Single-shot signing tests. SignMessage = RSA-2048 diff --git a/crypto/evp/p_rsa.cc b/crypto/evp/p_rsa.cc index d7504f3034..c4b0fbb164 100644 --- a/crypto/evp/p_rsa.cc +++ b/crypto/evp/p_rsa.cc @@ -184,8 +184,11 @@ static int pkey_rsa_verify(EVP_PKEY_CTX *ctx, const uint8_t *sig, size_t siglen, const size_t key_len = EVP_PKEY_size(ctx->pkey); if (!setup_tbuf(rctx, ctx) || !RSA_verify_raw(rsa, &rslen, rctx->tbuf, key_len, sig, siglen, - rctx->pad_mode) || - rslen != tbslen || CRYPTO_memcmp(tbs, rctx->tbuf, rslen) != 0) { + rctx->pad_mode)) { + return 0; + } + if (rslen != tbslen || CRYPTO_memcmp(tbs, rctx->tbuf, rslen) != 0) { + OPENSSL_PUT_ERROR(RSA, RSA_R_BAD_SIGNATURE); return 0; } From 66120783125830884db6730ee22715e85f73a0c9 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Sun, 5 Jan 2025 11:59:58 -0500 Subject: [PATCH 62/64] Document and test PEM_X509_INFO_read_bio's odd decryption behavior PEM_X509_INFO_read_bio is weird. It decrypts certificates and CRLs, but not private keys. We had some comments just saying we were trying to preserve historical (untested) behavior, but I think I've figured out why. It's so you can inspect a bundle of certs + encrypted keys without knowing the password. Attempting but failing to decrypt is fatal. On the flip side, this means that you cannot use this to decrypt the private key even if you wanted to! This was probably a mistake in SSLeay, but probably not worth fixing since this function's grouping behavior doesn't handle certificate chains right anyway. But we should at least document and test the intended behavior. This tests that encrypted private keys are left as placeholders, though I haven't filled in an encrypted certificate or CRL. (The main nuisance there is assembling a test input because OpenSSL's APIs don't even let you make them.) Bug: 387737061 Change-Id: Iebcafdba4924bbcb6298bde24013a508aecc716a Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/74810 Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- crypto/pem/pem_info.cc | 5 +++-- crypto/x509/x509_test.cc | 34 +++++++++++++++++++++++++++++++--- include/openssl/pem.h | 8 ++++++++ 3 files changed, 42 insertions(+), 5 deletions(-) diff --git a/crypto/pem/pem_info.cc b/crypto/pem/pem_info.cc index 27d4edc501..873c21ba14 100644 --- a/crypto/pem/pem_info.cc +++ b/crypto/pem/pem_info.cc @@ -168,7 +168,8 @@ STACK_OF(X509_INFO) *PEM_X509_INFO_read_bio(BIO *bp, STACK_OF(X509_INFO) *sk, key_type = EVP_PKEY_EC; } - // If a private key has a header, assume it is encrypted. + // If a private key has a header, assume it is encrypted. This function does + // not decrypt private keys. if (key_type != EVP_PKEY_NONE && strlen(header) > 10) { if (info->x_pkey != NULL) { if (!sk_X509_INFO_push(ret, info)) { @@ -179,7 +180,7 @@ STACK_OF(X509_INFO) *PEM_X509_INFO_read_bio(BIO *bp, STACK_OF(X509_INFO) *sk, goto err; } } - // Historically, raw entries pushed an empty key. + // Use an empty key as a placeholder. info->x_pkey = X509_PKEY_new(); if (info->x_pkey == NULL || !PEM_get_EVP_CIPHER_INFO(header, &info->enc_cipher)) { diff --git a/crypto/x509/x509_test.cc b/crypto/x509/x509_test.cc index ad1297af4f..27facf0325 100644 --- a/crypto/x509/x509_test.cc +++ b/crypto/x509/x509_test.cc @@ -2974,6 +2974,8 @@ TEST(X509Test, MismatchAlgorithms) { X509_R_SIGNATURE_ALGORITHM_MISMATCH)); } +// TODO(crbug.com/387737061): Test that this function can decrypt certificates +// and CRLs, even though it leaves encrypted private keys alone. TEST(X509Test, PEMX509Info) { std::string cert = kRootCAPEM; auto cert_obj = CertFromPEM(kRootCAPEM); @@ -2987,6 +2989,9 @@ TEST(X509Test, PEMX509Info) { auto crl_obj = CRLFromPEM(kBasicCRL); ASSERT_TRUE(crl_obj); + bssl::UniquePtr placeholder_key(EVP_PKEY_new()); + ASSERT_TRUE(placeholder_key); + std::string unknown = "-----BEGIN UNKNOWN-----\n" "AAAA\n" @@ -2997,6 +3002,16 @@ TEST(X509Test, PEMX509Info) { "AAAA\n" "-----END CERTIFICATE-----\n"; + std::string encrypted_key = R"(-----BEGIN EC PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED +DEK-Info: AES-128-CBC,B3B2988AECAE6EAB0D043105994C1123 + +RK7DUIGDHWTFh2rpTX+dR88hUyC1PyDlIULiNCkuWFwHrJbc1gM6hMVOKmU196XC +iITrIKmilFm9CPD6Tpfk/NhI/QPxyJlk1geIkxpvUZ2FCeMuYI1To14oYOUKv14q +wr6JtaX2G+pOmwcSPymZC4u2TncAP7KHgS8UGcMw8CE= +-----END EC PRIVATE KEY----- +)"; + // Each X509_INFO contains at most one certificate, CRL, etc. The format // creates a new X509_INFO when a repeated type is seen. std::string pem = @@ -3012,7 +3027,12 @@ TEST(X509Test, PEMX509Info) { // Doubled keys also start new entries. rsa + rsa + rsa + rsa + crl + // As do CRLs. - crl + crl; + crl + crl + + // Encrypted private keys are not decrypted (decryption failures would be + // fatal) and just returned as placeholder. + crl + cert + encrypted_key + + // Placeholder keys are still keys, so a new key starts a new entry. + rsa; const struct ExpectedInfo { const X509 *cert; @@ -3032,6 +3052,8 @@ TEST(X509Test, PEMX509Info) { {nullptr, rsa_obj.get(), crl_obj.get()}, {nullptr, nullptr, crl_obj.get()}, {nullptr, nullptr, crl_obj.get()}, + {cert_obj.get(), placeholder_key.get(), crl_obj.get()}, + {nullptr, rsa_obj.get(), nullptr}, }; auto check_info = [](const ExpectedInfo *expected, const X509_INFO *info) { @@ -3047,8 +3069,14 @@ TEST(X509Test, PEMX509Info) { } if (expected->key != nullptr) { ASSERT_NE(nullptr, info->x_pkey); - // EVP_PKEY_cmp returns one if the keys are equal. - EXPECT_EQ(1, EVP_PKEY_cmp(expected->key, info->x_pkey->dec_pkey)); + if (EVP_PKEY_id(expected->key) == EVP_PKEY_NONE) { + // Expect a placeholder key. + EXPECT_FALSE(info->x_pkey->dec_pkey); + } else { + // EVP_PKEY_cmp returns one if the keys are equal. + ASSERT_TRUE(info->x_pkey->dec_pkey); + EXPECT_EQ(1, EVP_PKEY_cmp(expected->key, info->x_pkey->dec_pkey)); + } } else { EXPECT_EQ(nullptr, info->x_pkey); } diff --git a/include/openssl/pem.h b/include/openssl/pem.h index 28bf3f286c..3711d8a0ec 100644 --- a/include/openssl/pem.h +++ b/include/openssl/pem.h @@ -307,6 +307,14 @@ OPENSSL_EXPORT int PEM_ASN1_write_bio(i2d_of_void *i2d, const char *name, // on success. In this case, the caller retains ownership of |sk| in both // success and failure. // +// This function will decrypt any encrypted certificates in |bp|, using |cb|, +// but it will not decrypt encrypted private keys. Encrypted private keys are +// instead represented as placeholder |X509_INFO| objects with an empty |x_pkey| +// field. This allows this function to be used with inputs with unencrypted +// certificates, but encrypted passwords, without knowing the password. However, +// it also means that this function cannot be used to decrypt the private key +// when the password is known. +// // WARNING: If the input contains "TRUSTED CERTIFICATE" PEM blocks, this // function parses auxiliary properties as in |d2i_X509_AUX|. Passing untrusted // input to this function allows an attacker to influence those properties. See From d4b6eb542d4fd109baacd550935efd00c521e674 Mon Sep 17 00:00:00 2001 From: David Benjamin Date: Tue, 7 Jan 2025 13:42:37 -0500 Subject: [PATCH 63/64] Fix unwrap comment for CBB_init_fixed Change-Id: I893930a8d23f49968883e4c9b8425ebcc5a2d23b Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75007 Auto-Submit: David Benjamin Reviewed-by: Adam Langley Commit-Queue: David Benjamin --- rust/bssl-crypto/src/lib.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/rust/bssl-crypto/src/lib.rs b/rust/bssl-crypto/src/lib.rs index d1abb93da6..db03b55995 100644 --- a/rust/bssl-crypto/src/lib.rs +++ b/rust/bssl-crypto/src/lib.rs @@ -476,8 +476,7 @@ fn cbb_to_vec(len: usize, func: F) -> Vec { bssl_sys::CBB_init_fixed(cbb, boxed.as_mut_ptr() as *mut u8, len) == 1 }) } - // `CBB_init` only fails if out of memory, which isn't something that this - // crate handles. + // `CBB_init_fixed` never fails and does not allocate. .unwrap(); func(&mut cbb); From d3f26f8af0853b4d337d2405281f91fdfbe64465 Mon Sep 17 00:00:00 2001 From: Bob Beck Date: Fri, 10 Jan 2025 22:54:41 +0000 Subject: [PATCH 64/64] Add a function for Conscrypt to use That will convert nonstandard times to posix times. Change-Id: I7c09a8d4175ee372ab9f3453e02628c303686888 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75167 Commit-Queue: Bob Beck Auto-Submit: Bob Beck Reviewed-by: David Benjamin --- crypto/asn1/a_time.cc | 8 ++++++++ crypto/asn1/asn1_test.cc | 5 +++++ include/openssl/asn1.h | 12 ++++++++++-- 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/crypto/asn1/a_time.cc b/crypto/asn1/a_time.cc index 6ab5d93dae..563bf228b3 100644 --- a/crypto/asn1/a_time.cc +++ b/crypto/asn1/a_time.cc @@ -186,6 +186,14 @@ int ASN1_TIME_diff(int *out_days, int *out_seconds, const ASN1_TIME *from, return OPENSSL_gmtime_diff(out_days, out_seconds, &tm_from, &tm_to); } +int ASN1_TIME_to_posix_nonstandard(const ASN1_TIME *t, int64_t *out_time) { + struct tm tm; + if (!asn1_time_to_tm(&tm, t, /*allow_timezone_offset=*/1)) { + return 0; + } + return OPENSSL_tm_to_posix(&tm, out_time); +} + // The functions below do *not* permissively allow the use of four digit // timezone offsets in UTC times, as is done elsewhere in the code. They are // both new API, and used internally to X509_cmp_time. This is to discourage the diff --git a/crypto/asn1/asn1_test.cc b/crypto/asn1/asn1_test.cc index 79cbeadcb2..870de3850d 100644 --- a/crypto/asn1/asn1_test.cc +++ b/crypto/asn1/asn1_test.cc @@ -1185,6 +1185,11 @@ TEST(ASN1Test, UTCTimeZoneOffsets) { // behind the epoch. EXPECT_EQ(ASN1_UTCTIME_cmp_time_t(s.get(), (4 * 60 * 60 * -1)), 0); + int64_t posix_time; + EXPECT_FALSE(ASN1_TIME_to_posix(s.get(), &posix_time)); + ASSERT_TRUE(ASN1_TIME_to_posix_nonstandard(s.get(), &posix_time)); + EXPECT_EQ(posix_time, (4 * 60 * 60 * -1)); + // Conscrypt expects a utc time with an arbitrary offset to be // accepted by ASN1_TIME_to_generalizedtime. bssl::UniquePtr g( diff --git a/include/openssl/asn1.h b/include/openssl/asn1.h index 0abef05e56..57cdf6c06d 100644 --- a/include/openssl/asn1.h +++ b/include/openssl/asn1.h @@ -1326,14 +1326,22 @@ OPENSSL_EXPORT int ASN1_TIME_set_string(ASN1_TIME *s, const char *str); OPENSSL_EXPORT int ASN1_TIME_set_string_X509(ASN1_TIME *s, const char *str); // ASN1_TIME_to_time_t converts |t| to a time_t value in |out|. On -// success, one is returned. On failure zero is returned. This function +// success, one is returned. On failure, zero is returned. This function // will fail if the time can not be represented in a time_t. OPENSSL_EXPORT int ASN1_TIME_to_time_t(const ASN1_TIME *t, time_t *out); // ASN1_TIME_to_posix converts |t| to a POSIX time value in |out|. On -// success, one is returned. On failure zero is returned. +// success, one is returned. On failure, zero is returned. OPENSSL_EXPORT int ASN1_TIME_to_posix(const ASN1_TIME *t, int64_t *out); +// ASN1_TIME_to_posix_nonstandard converts |t| to a POSIX time value in +// |out|. It is exactly the same as |ASN1_TIME_to_posix| but allows for +// non-standard four-digit timezone offsets on UTC times. On success, one is +// returned. On failure, zero is returned. |ASN1_TIME_to_posix| should normally +// be used instead of this function. +OPENSSL_EXPORT int ASN1_TIME_to_posix_nonstandard( + const ASN1_TIME *t, int64_t *out); + // TODO(davidben): Expand and document function prototypes generated in macros.