Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iW5Fw-0007v2-Gn for pgsql-docs@arkaria.postgresql.org; Sat, 16 Nov 2019 21:05:20 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1iW5Ft-0003Qu-8B for pgsql-docs@arkaria.postgresql.org; Sat, 16 Nov 2019 21:05:17 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iW5Fs-0003Qn-GX for pgsql-docs@lists.postgresql.org; Sat, 16 Nov 2019 21:05:17 +0000 Received: from mail-qk1-x743.google.com ([2607:f8b0:4864:20::743]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1iW5Fo-0006Wx-7x for pgsql-docs@lists.postgresql.org; Sat, 16 Nov 2019 21:05:15 +0000 Received: by mail-qk1-x743.google.com with SMTP id q70so11106114qke.12 for ; Sat, 16 Nov 2019 13:05:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=cxsLT2y5Yo6FzxpTG3l60v9fKumMS+bj31l34vjCKGY=; b=ul36tIFSqeUm2/L91+Xhj1Baxnl8MgJtBJz2MfYAmOhQDzyUsRwZKnqwJipnG1KPSU ecm2YJMQ1VLncLHkPjIdltomuglxgiEqvJJ9LF5oYUQr39SreJwq2aKPERpOoqf7vpQr 93UZ2SjTH8iiXQXSXHFwqeNoeBJe1RmRWw1yudvE7DfEaFUoPOi2+JxovICFkb60UWoQ RrieG1Yk4EFSohEVe3jlgx8OwEZOYPZGvI8VwLOZsNKvJejF46j7e7dxyhQ/gKvQh2da l7EOAb6r/w8Y6Sj9magU5BkWKx8HFaEWZiV6dQXijovbtoKl99L8z5IHK2VlIfS1eW8f +J2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=cxsLT2y5Yo6FzxpTG3l60v9fKumMS+bj31l34vjCKGY=; b=ArX/xqA+0bLQ/hAXux1PjLr6UDIcLdnSfRIuWbnwygQVRC5HiKoogGHqyt+2tcNvxj IukmVbHjLgrfgEVc55MlJFFmcCHBiKM9WIZYoX3ovH/VEazcbRb5JvUSzM9OF2Vt8JDe NZGnM3yhLyq1rg2hbj1DGis7sQLVy21rwO3+44WufPhkYnPxt9mql/c1fVUfnopYAQ4L L5mTXqWH53shINF8T41vFPNDSFPXA7ibTsl3bozEcWjYfVOFUd36ET9043XFpQOfJW9E jYGKUSztJt/URqafitUNJccmpJhZ942wgFZEVGhCkuYrfIMNt8SAcWCNTsSkAPb1nQ58 IUyA== X-Gm-Message-State: APjAAAXL8g7YBdW0Q2bn2Sqxq+eenWLGg4daQFhZ0zGSgLdaN+myt44y uNtyHRivW28sOWZV8hy79UlUIyw3V37F2v25/UTeraoWAtU= X-Google-Smtp-Source: APXvYqxVqOTvOxkBlSgsl2WKcII5TxePyRhEJwDUhXJc8uXDUPWPNsgqiicWVrFA7q17SOomVP462uZsYzUEUOKECJQ= X-Received: by 2002:a37:4f8a:: with SMTP id d132mr18834550qkb.185.1573938310715; Sat, 16 Nov 2019 13:05:10 -0800 (PST) MIME-Version: 1.0 From: Liudmila Mantrova Date: Sun, 17 Nov 2019 00:04:59 +0300 Message-ID: Subject: GSoD - a patch for Getting Started tutorial To: pgsql-docs@lists.postgresql.org, Stephen Frost , Sarah Conway Schnurr Content-Type: multipart/mixed; boundary="000000000000e8c7f705977d1100" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --000000000000e8c7f705977d1100 Content-Type: multipart/alternative; boundary="000000000000e8c7f305977d11fe" --000000000000e8c7f305977d11fe Content-Type: text/plain; charset="UTF-8" Hi everyone, Some time ago I was selected to participate in Google season of docs program to update the introductory tutorial. Please consider the attached patch for the Getting Started part. Keeping the original information, i tried to make it easy to follow, as well as added installation steps for binary packages. I'll be glad to hear your feedback. Many thanks to Alexander Lakhin for responding to my multiple questions and verifying technical correctness. -- Best regards, Liudmila Mantrova Technical writer at Postgres Professional: http://www.postgrespro.com --000000000000e8c7f305977d11fe Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi everyone,

Some time ago I was selected to p= articipate in Google season of docs program to update the introductory tuto= rial. Please consider the attached patch for the Getting Started part. Keep= ing the original information, i tried to make it easy to follow, as well as= added installation steps for binary packages. I'll be glad to hear you= r feedback.

Many thanks to Alexander Lakhin for re= sponding to my multiple questions and verifying technical correctness.
--
Best regards,
Liudmila Mantrova=C2=A0

Technical writer at Postgres Professional: http://www.postgrespro.co= m
--000000000000e8c7f305977d11fe-- --000000000000e8c7f705977d1100 Content-Type: text/x-patch; charset="US-ASCII"; name="start.patch" Content-Disposition: attachment; filename="start.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k321jivd0 ZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9zdGFydC5zZ21sIGIvZG9jL3NyYy9zZ21sL3N0YXJ0 LnNnbWwKaW5kZXggNWI3MzU1NzgzNS4uMDczMTNkYWM5NiAxMDA2NDQKLS0tIGEvZG9jL3NyYy9z Z21sL3N0YXJ0LnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL3N0YXJ0LnNnbWwKQEAgLTMsMTIxICsz LDY4MiBAQAogIDxjaGFwdGVyIGlkPSJ0dXRvcmlhbC1zdGFydCI+CiAgIDx0aXRsZT5HZXR0aW5n IFN0YXJ0ZWQ8L3RpdGxlPgogCi0gIDxzZWN0MSBpZD0idHV0b3JpYWwtaW5zdGFsbCI+Ci0gICA8 dGl0bGU+SW5zdGFsbGF0aW9uPC90aXRsZT4KKyAgPHNlY3QxIGlkPSJ0dXRvcmlhbC1zeXN0ZW0t c2V0dXAiPgorICAgPHRpdGxlPlNldHRpbmcgdXAgdGhlIFN5c3RlbTwvdGl0bGU+CiAKICAgIDxw YXJhPgotICAgIEJlZm9yZSB5b3UgY2FuIHVzZSA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJv ZHVjdG5hbWU+IHlvdSBuZWVkCi0gICAgdG8gaW5zdGFsbCBpdCwgb2YgY291cnNlLiAgSXQgaXMg cG9zc2libGUgdGhhdAotICAgIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4g aXMgYWxyZWFkeSBpbnN0YWxsZWQgYXQgeW91cgotICAgIHNpdGUsIGVpdGhlciBiZWNhdXNlIGl0 IHdhcyBpbmNsdWRlZCBpbiB5b3VyIG9wZXJhdGluZyBzeXN0ZW0KLSAgICBkaXN0cmlidXRpb24g b3IgYmVjYXVzZSB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgYWxyZWFkeSBpbnN0YWxsZWQKLSAg ICBpdC4gIElmIHRoYXQgaXMgdGhlIGNhc2UsIHlvdSBzaG91bGQgb2J0YWluIGluZm9ybWF0aW9u IGZyb20gdGhlCi0gICAgb3BlcmF0aW5nIHN5c3RlbSBkb2N1bWVudGF0aW9uIG9yIHlvdXIgc3lz dGVtIGFkbWluaXN0cmF0b3IgYWJvdXQKLSAgICBob3cgdG8gYWNjZXNzIDxwcm9kdWN0bmFtZT5Q b3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4uCi0gICA8L3BhcmE+CisgICAgVG8gZm9sbG93IHRoaXMg dHV0b3JpYWwsIHlvdSBuZWVkIHRvIGhhdmUKKyAgICA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwv cHJvZHVjdG5hbWU+IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZC4KKyAgICBZb3UgY2FuIGluc3Rh bGwgPHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiB1c2luZyBvbmUgb2YgdGhl CisgICAgZm9sbG93aW5nIHdheXM6CiAKLSAgIDxwYXJhPgotICAgIElmIHlvdSBhcmUgbm90IHN1 cmUgd2hldGhlciA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+Ci0gICAgaXMg YWxyZWFkeSBhdmFpbGFibGUgb3Igd2hldGhlciB5b3UgY2FuIHVzZSBpdCBmb3IgeW91cgotICAg IGV4cGVyaW1lbnRhdGlvbiB0aGVuIHlvdSBjYW4gaW5zdGFsbCBpdCB5b3Vyc2VsZi4gIERvaW5n IHNvIGlzIG5vdAotICAgIGhhcmQgYW5kIGl0IGNhbiBiZSBhIGdvb2QgZXhlcmNpc2UuCi0gICAg PHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiBjYW4gYmUgaW5zdGFsbGVkIGJ5 IGFueQotICAgIHVucHJpdmlsZWdlZCB1c2VyOyBubyBzdXBlcnVzZXIgKDxzeXN0ZW1pdGVtPnJv b3Q8L3N5c3RlbWl0ZW0+KQotICAgIGFjY2VzcyBpcyByZXF1aXJlZC4KLSAgIDwvcGFyYT4KKyAg ICA8aXRlbWl6ZWRsaXN0PgorICAgICA8bGlzdGl0ZW0+CisgICAgICA8cGFyYT4KKyAgICAgICA8 bGluayBsaW5rZW5kPSJ0dXRvcmlhbC1pbnN0YWxsLWJpbiI+SW5zdGFsbCBiaW5hcnkgcGFja2Fn ZXMgYnVpbHQgYnkKKyAgICAgICBQR0RHPC9saW5rPi4gUG9zdGdyZVNRTCBHbG9iYWwgRGV2ZWxv cG1lbnQgR3JvdXAgKFBHREcpIHByb3ZpZGVzIGJpbmFyeQorICAgICAgIHBhY2thZ2VzIGZvciBt b3N0IHBvcHVsYXIgb3BlcmF0aW5nIHN5c3RlbXMgb2YgdGhlIFJlZCBIYXQgZmFtaWx5LAorICAg ICAgIFNVU0UsIERlYmlhbiwgYW5kIFVidW50dS4gV2hlbiB5b3UgaW5zdGFsbCB0aGVzZSBwYWNr YWdlcywgc29tZQorICAgICAgIG9mIHRoZSBpbml0aWFsIHNlcnZlciBzZXR1cCBpcyBjb21wbGV0 ZWQgYXV0b21hdGljYWxseS4KKyAgICAgIDwvcGFyYT4KKyAgICAgPC9saXN0aXRlbT4KKyAgICAg PGxpc3RpdGVtPgorICAgICAgPHBhcmE+CisgICAgICAgVXNlIDxwcm9kdWN0bmFtZT5Qb3N0Z3Jl U1FMPC9wcm9kdWN0bmFtZT4gYmluYXJ5IHBhY2thZ2VzIHByb3ZpZGVkIGluCisgICAgICAgdGhl IG9wZXJhdGluZyBzeXN0ZW0gZGlzdHJpYnV0aW9ucy4gSWYgeW91IGNob29zZSBzdWNoIHBhY2th Z2VzLAorICAgICAgIGNvbnN1bHQgeW91ciBvcGVyYXRpbmcgc3lzdGVtIGRvY3VtZW50YXRpb24g b24gaG93IHRvIGFjY2VzcyB0aGVtCisgICAgICAgYW5kIGluaXRpYWxpemUgdGhlIGRhdGFiYXNl IGNsdXN0ZXIuCisgICAgICA8L3BhcmE+CisgICAgIDwvbGlzdGl0ZW0+CisgICAgIDxsaXN0aXRl bT4KKyAgICAgIDxwYXJhPgorICAgICAgIDxsaW5rIGxpbmtlbmQ9InR1dG9yaWFsLWluc3RhbGwt c3JjIj5CdWlsZCBQb3N0Z3JlU1FMIGZyb20gc291cmNlCisgICAgICAgY29kZTwvbGluaz4uIEl0 IHJlcXVpcmVzIG1vcmUgd29yaywgYnV0IGVuYWJsZXMgeW91IHRvIGluc3RhbGwKKyAgICAgICA8 cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+IG9uIHN1cHBvcnRlZCBwbGF0Zm9y bXMgZXZlbiBpZgorICAgICAgIGJpbmFyeSBwYWNrYWdlcyB0aGF0IHlvdSBuZWVkIGFyZSB1bmF2 YWlsYWJsZSwgcGVyZm9ybSB0aGUgaW5zdGFsbGF0aW9uCisgICAgICAgd2l0aG91dCBzdXBlcnVz ZXIgcmlnaHRzLCBhbmQgY3VzdG9taXplIHRoZSBpbnN0YWxsYXRpb24uCisgICAgICA8L3BhcmE+ CisgICAgIDwvbGlzdGl0ZW0+CisgICAgPC9pdGVtaXplZGxpc3Q+CiAKLSAgIDxwYXJhPgotICAg IElmIHlvdSBhcmUgaW5zdGFsbGluZyA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5h bWU+Ci0gICAgeW91cnNlbGYsIHRoZW4gcmVmZXIgdG8gPHhyZWYgbGlua2VuZD0iaW5zdGFsbGF0 aW9uIi8+Ci0gICAgZm9yIGluc3RydWN0aW9ucyBvbiBpbnN0YWxsYXRpb24sIGFuZCByZXR1cm4g dG8KLSAgICB0aGlzIGd1aWRlIHdoZW4gdGhlIGluc3RhbGxhdGlvbiBpcyBjb21wbGV0ZS4gIEJl IHN1cmUgdG8gZm9sbG93Ci0gICAgY2xvc2VseSB0aGUgc2VjdGlvbiBhYm91dCBzZXR0aW5nIHVw IHRoZSBhcHByb3ByaWF0ZSBlbnZpcm9ubWVudAotICAgIHZhcmlhYmxlcy4KICAgIDwvcGFyYT4K IAotICAgPHBhcmE+Ci0gICAgSWYgeW91ciBzaXRlIGFkbWluaXN0cmF0b3IgaGFzIG5vdCBzZXQg dGhpbmdzIHVwIGluIHRoZSBkZWZhdWx0Ci0gICAgd2F5LCB5b3UgbWlnaHQgaGF2ZSBzb21lIG1v cmUgd29yayB0byBkby4gIEZvciBleGFtcGxlLCBpZiB0aGUKLSAgICBkYXRhYmFzZSBzZXJ2ZXIg bWFjaGluZSBpcyBhIHJlbW90ZSBtYWNoaW5lLCB5b3Ugd2lsbCBuZWVkIHRvIHNldAotICAgIHRo ZSA8ZW52YXI+UEdIT1NUPC9lbnZhcj4gZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gdGhlIG5hbWUg b2YgdGhlCi0gICAgZGF0YWJhc2Ugc2VydmVyIG1hY2hpbmUuICBUaGUgZW52aXJvbm1lbnQgdmFy aWFibGUKLSAgICA8ZW52YXI+UEdQT1JUPC9lbnZhcj4gbWlnaHQgYWxzbyBoYXZlIHRvIGJlIHNl dC4gIFRoZSBib3R0b20gbGluZSBpcwotICAgIHRoaXM6IGlmIHlvdSB0cnkgdG8gc3RhcnQgYW4g YXBwbGljYXRpb24gcHJvZ3JhbSBhbmQgaXQgY29tcGxhaW5zCi0gICAgdGhhdCBpdCBjYW5ub3Qg Y29ubmVjdCB0byB0aGUgZGF0YWJhc2UsIHlvdSBzaG91bGQgY29uc3VsdCB5b3VyCi0gICAgc2l0 ZSBhZG1pbmlzdHJhdG9yIG9yLCBpZiB0aGF0IGlzIHlvdSwgdGhlIGRvY3VtZW50YXRpb24gdG8g bWFrZQotICAgIHN1cmUgdGhhdCB5b3VyIGVudmlyb25tZW50IGlzIHByb3Blcmx5IHNldCB1cC4g IElmIHlvdSBkaWQgbm90Ci0gICAgdW5kZXJzdGFuZCB0aGUgcHJlY2VkaW5nIHBhcmFncmFwaCB0 aGVuIHJlYWQgdGhlIG5leHQgc2VjdGlvbi4KLSAgIDwvcGFyYT4KKyAgIDxpbXBvcnRhbnQ+Cisg ICAgPHBhcmE+CisgICAgIEF2b2lkIGV4cGVyaW1lbnRpbmcgd2l0aCA8cHJvZHVjdG5hbWU+UG9z dGdyZVNRTDwvcHJvZHVjdG5hbWU+CisgICAgIGluc3RhbGxhdGlvbnMgb24gcHJvZHVjdGlvbiBz eXN0ZW1zLiBEZXBlbmRpbmcgb24gdGhlIHN5c3RlbQorICAgICBjb25maWd1cmF0aW9uLCByZS1p bnN0YWxsaW5nIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4KKyAgICAgY2Fu IGFmZmVjdCB0aGUgY3VycmVudCBkYXRhYmFzZSBjbHVzdGVyIGFuZCByZXN1bHQgaW4gZGF0YSBs b3NzLgorICAgIDwvcGFyYT4KKyAgIDwvaW1wb3J0YW50PgorCisgICA8c2VjdDIgaWQ9InR1dG9y aWFsLWluc3RhbGwtYmluIj4KKyAgICA8dGl0bGU+VXNpbmcgUEdERyBCaW5hcnkgUGFja2FnZXMg Zm9yIExpbnV4PC90aXRsZT4KKworICAgIDxwYXJhPgorICAgICBUbyBpbnN0YWxsIGFuZCBzZXQg dXAgPHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiBmcm9tIGJpbmFyeQorICAg ICBwYWNrYWdlcyBidWlsdCBieSBQR0RHLCBmb2xsb3cgdGhlIGluc3RydWN0aW9ucyBiZWxvdyBm b3IgeW91cgorICAgICBvcGVyYXRpbmcgc3lzdGVtOgorCisgICAgIDxpdGVtaXplZGxpc3Q+Cisg ICAgICA8bGlzdGl0ZW0+CisgICAgICAgPHBhcmE+CisgICAgICAgIDxsaW5rIGxpbmtlbmQ9InBn ZGctZGViaWFuIj5EZWJpYW4gYW5kIFVidW50dSBzeXN0ZW1zPC9saW5rPgorICAgICAgIDwvcGFy YT4KKyAgICAgIDwvbGlzdGl0ZW0+CisgICAgICA8bGlzdGl0ZW0+CisgICAgICAgPHBhcmE+Cisg ICAgICAgIDxsaW5rIGxpbmtlbmQ9InBnZGctcmhlbCI+UkhFTCBhbmQgU1VTRSBzeXN0ZW1zPC9s aW5rPgorICAgICAgIDwvcGFyYT4KKyAgICAgIDwvbGlzdGl0ZW0+CisgICAgIDwvaXRlbWl6ZWRs aXN0PgorCisgICAgPC9wYXJhPgorCisgICAgPHNlY3QzIGlkPSJwZ2RnLWRlYmlhbiI+CisgICAg PHRpdGxlPkRlYmlhbiBhbmQgVWJ1bnR1IFN5c3RlbXM8L3RpdGxlPgorCisgICAgIDxwYXJhPgor ICAgICAgVG8gc2V0IHVwIGEgPHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiBz ZXJ2ZXIgb24gRGViaWFuIG9yCisgICAgICBVYnVudHUsIHlvdSBvbmx5IG5lZWQgdG8gYWRkIHRo ZSBQR0RHIHBhY2thZ2UgcmVwb3NpdG9yeSBhbmQgaW5zdGFsbCB0aGUKKyAgICAgIHBhY2thZ2Vz OyB0aGUgcmVzdCBvZiB0aGUgc2V0dXAgaXMgY29tcGxldGVkIGF1dG9tYXRpY2FsbHkuCisgICAg ICBEZXBlbmRpbmcgb24gdGhlIG9wZXJhdGluZyBzeXN0ZW0sIHRoZSBjb21tYW5kcyB0byBhZGQg dGhlIHJlcG9zaXRvcnkKKyAgICAgIGFuZCBpbnN0YWxsIHRoZSBwYWNrYWdlcyBkaWZmZXIsIHNv IGZvbGxvdworICAgICAgdGhlIGluc3RydWN0aW9ucyBwcm92aWRlZCBmb3IgeW91ciBzeXN0ZW0g b24gdGhlCisgICAgICA8dWxpbmsgdXJsPSJodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9kb3du bG9hZC8iPmRvd25sb2FkIHBhZ2U8L3VsaW5rPi4KKyAgICAgPC9wYXJhPgorCisgICAgIDxwYXJh PgorICAgICAgRm9yIHRoZSBwdXJwb3NlcyBvZiB0aGlzIHR1dG9yaWFsLCBpdCBpcyBlbm91Z2gg dG8gaW5zdGFsbAorICAgICAgdGhlIDxmaWxlbmFtZT5wb3N0Z3Jlc3FsLTxyZXBsYWNlYWJsZT52 ZXJzaW9uPC9yZXBsYWNlYWJsZT48L2ZpbGVuYW1lPgorICAgICAgc2VydmVyIHBhY2thZ2UsIHdo ZXJlIDxyZXBsYWNlYWJsZT52ZXJzaW9uPC9yZXBsYWNlYWJsZT4gaXMgdGhlCisgICAgICA8cHJv ZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+IG1ham9yIHZlcnNpb24geW91IHdvdWxk IGxpa2UgdG8KKyAgICAgIHVzZS4gQWxsIHRoZSByZXF1aXJlZCBsaWJyYXJpZXMgYW5kIGNsaWVu dCB1dGlsaXRpZXMgYXJlIGF1dG9tYXRpY2FsbHkKKyAgICAgIGluc3RhbGxlZCBieSBkZXBlbmRl bmNpZXMuCisgICAgIDwvcGFyYT4KKworICAgICA8cGFyYT4KKyAgICAgIEFzIDxwcm9kdWN0bmFt ZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gZ2V0cyBpbnN0YWxsZWQsIGEgZGF0YWJhc2UKKyAg ICAgIGNsdXN0ZXIgaXMgaW5pdGlhbGl6ZWQgb24gYmVoYWxmIG9mIHRoZSA8bGl0ZXJhbD5wb3N0 Z3JlczwvbGl0ZXJhbD4KKyAgICAgIHN5c3RlbSB1c2VyLCBhbmQgdGhlIGZvbGxvd2luZyA8cHJv ZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+CisgICAgICBkaXJlY3RvcmllcyBhcmUg Y3JlYXRlZDoKKyAgICAgPC9wYXJhPgorCisgICAgIDxpdGVtaXplZGxpc3Q+CisgICAgICA8bGlz dGl0ZW0+CisgICAgICAgPHBhcmE+CisgICAgICAgIEluc3RhbGxhdGlvbiBkaXJlY3Rvcnk6Cisg ICAgICAgIDxmaWxlbmFtZT4vdXNyL2xpYi9wb3N0Z3Jlc3FsLzxyZXBsYWNlYWJsZT52ZXJzaW9u PC9yZXBsYWNlYWJsZT4vPC9maWxlbmFtZT4KKyAgICAgICA8L3BhcmE+CisgICAgICA8L2xpc3Rp dGVtPgorICAgICAgPGxpc3RpdGVtPgorICAgICAgIDxwYXJhPgorICAgICAgICBEYXRhIGRpcmVj dG9yeToKKyAgICAgICAgPGZpbGVuYW1lPi92YXIvbGliL3Bvc3RncmVzcWwvPHJlcGxhY2VhYmxl PnZlcnNpb248L3JlcGxhY2VhYmxlPi9tYWluLzwvZmlsZW5hbWU+CisgICAgICAgPC9wYXJhPgor ICAgICAgIDxwYXJhPgorICAgICAgICBOb3RlIHRoYXQgYWxsIGNvbmZpZ3VyYXRpb24gZmlsZXMg YXJlIGxvY2F0ZWQgdW5kZXIKKyAgICAgICAgPGZpbGVuYW1lPi9ldGMvcG9zdGdyZXNxbC88cmVw bGFjZWFibGU+dmVyc2lvbjwvcmVwbGFjZWFibGU+L21haW4vPC9maWxlbmFtZT4sCisgICAgICAg IGZvbGxvd2luZyB0aGUgRGViaWFuIGNvbnZlbnRpb25zLiBUaHVzLCB5b3Ugc2hvdWxkIHNwZWNp ZnkgdGhpcworICAgICAgICBkaXJlY3RvcnkgYXMgdGhlIGRhdGFiYXNlIGNsdXN0ZXIgY29uZmln dXJhdGlvbiBkaXJlY3Rvcnkgd2hlbiB1c2luZworICAgICAgICBzZXJ2ZXIgYXBwbGljYXRpb25z LCBzdWNoIGFzIDx4cmVmIGxpbmtlbmQ9ImFwcC1wZy1jdGwiLz4gb3IKKyAgICAgICAgPHhyZWYg bGlua2VuZD0icGd1cGdyYWRlIi8+LgorICAgICAgIDwvcGFyYT4KKyAgICAgIDwvbGlzdGl0ZW0+ CisgICAgICA8bGlzdGl0ZW0+CisgICAgICAgPHBhcmE+CisgICAgICAgIExvZyBkaXJlY3Rvcnk6 IDxmaWxlbmFtZT4vdmFyL2xvZy9wb3N0Z3Jlc3FsLzwvZmlsZW5hbWU+CisgICAgICAgPC9wYXJh PgorICAgICAgPC9saXN0aXRlbT4KKyAgICAgPC9pdGVtaXplZGxpc3Q+CisKKyAgICAgPHBhcmE+ CisgICAgICBPbmNlIHRoZSBjbHVzdGVyIGluaXRpYWxpemF0aW9uIGNvbXBsZXRlcywgdGhlIHNl cnZlciBpcyBzdGFydGVkCisgICAgICBhcyBhIHNlcnZpY2UsIGFuZCB0aGUgc2VydmVyIGF1dG9z dGFydCBpcyBlbmFibGVkLiBUbyBtYW5hZ2UgdGhlCisgICAgICA8cHJvZHVjdG5hbWU+UG9zdGdy ZVNRTDwvcHJvZHVjdG5hbWU+IHNlcnZpY2UsIHlvdSBjYW4gdXNlIHlvdXIKKyAgICAgIG9wZXJh dGluZyBzeXN0ZW0gZmFjaWxpdGllcyBvciB0aGUgPGxpdGVyYWw+cGdfY3RsY2x1c3RlcjwvbGl0 ZXJhbD4KKyAgICAgIHV0aWxpdHkgcHJvdmlkZWQgaW4gdGhlIHNlcnZlciBwYWNrYWdlLiBGb3Ig ZXhhbXBsZSwgdG8gY2hlY2sgdGhlCisgICAgICBzZXJ2ZXIgc3RhdHVzLCBydW46Cis8cHJvZ3Jh bWxpc3Rpbmc+CitwZ19jdGxjbHVzdGVyIDxyZXBsYWNlYWJsZT52ZXJzaW9uPC9yZXBsYWNlYWJs ZT4gbWFpbiBzdGF0dXMKKzwvcHJvZ3JhbWxpc3Rpbmc+CisgICAgIDwvcGFyYT4KKworICAgICA8 cGFyYT4KKyAgICAgIEZvciBkZXRhaWxlZCBpbmZvcm1hdGlvbiBvbiB0aGUgPGxpdGVyYWw+cGdf Y3RsY2x1c3RlcjwvbGl0ZXJhbD4KKyAgICAgIHN5bnRheCwgc2VlIHRoZSBjb3JyZXNwb25kaW5n IG1hbiBwYWdlOgorPHByb2dyYW1saXN0aW5nPgorbWFuIHBnX2N0bGNsdXN0ZXIKKzwvcHJvZ3Jh bWxpc3Rpbmc+CisgICAgIDwvcGFyYT4KKworICAgICA8cGFyYT4KKyAgICAgIFdoaWxlIDxwcm9k dWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gaXMgc3RhcnRlZCBhcyBhIHNlcnZpY2Us CisgICAgICBhdm9pZCBydW5uaW5nIDxsaXRlcmFsPnBnX2N0bDwvbGl0ZXJhbD4gdG8gbWFuYWdl IHRoZSBzZXJ2ZXIgYXMgaXQKKyAgICAgIGNhbiBsZWFkIHRvIHVuZXhwZWN0ZWQgcmVzdWx0cy4K KyAgICAgPC9wYXJhPgorICAgIDwvc2VjdDM+CisKKyAgICA8c2VjdDMgaWQ9InBnZGctcmhlbCI+ CisgICAgIDx0aXRsZT5SSEVMIGFuZCBTVVNFIFN5c3RlbXM8L3RpdGxlPgorICAgICA8cHJvY2Vk dXJlPgorICAgICAgPHN0ZXA+CisgICAgICAgPHRpdGxlPkFkZCB0aGUgUEdERyBwYWNrYWdlIHJl cG9zaXRvcnkgYW5kIGluc3RhbGwgdGhlIHBhY2thZ2VzPC90aXRsZT4KKyAgICAgICA8cGFyYT4K KyAgICAgICAgRGVwZW5kaW5nIG9uIHRoZSBvcGVyYXRpbmcgc3lzdGVtLCB0aGUgY29tbWFuZHMg dG8gYWRkIHRoZSByZXBvc2l0b3J5CisgICAgICAgIGFuZCBpbnN0YWxsIHRoZSBwYWNrYWdlcyB3 aWxsIGRpZmZlciwgc28gZm9sbG93CisgICAgICAgIHRoZSBpbnN0cnVjdGlvbnMgcHJvdmlkZWQg Zm9yIHlvdXIgc3lzdGVtIG9uIHRoZQorICAgICAgICA8dWxpbmsgdXJsPSJodHRwczovL3d3dy5w b3N0Z3Jlc3FsLm9yZy9kb3dubG9hZC8iPmRvd25sb2FkIHBhZ2U8L3VsaW5rPi4KKyAgICAgICA8 L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAgICAgIEZvciB0aGUgcHVycG9zZXMgb2YgdGhpcyB0 dXRvcmlhbCwgaXQgaXMgZW5vdWdoIHRvIGluc3RhbGwgdGhlCisgICAgICAgIDxmaWxlbmFtZT5w b3N0Z3Jlc3FsPHJlcGxhY2VhYmxlPnZlcnNpb248L3JlcGxhY2VhYmxlPi1zZXJ2ZXI8L2ZpbGVu YW1lPgorICAgICAgICBwYWNrYWdlLCB3aGVyZSA8cmVwbGFjZWFibGU+dmVyc2lvbjwvcmVwbGFj ZWFibGU+IGlzIHRoZQorICAgICAgICA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5h bWU+IG1ham9yIHZlcnNpb24uIEFsbCB0aGUgcmVxdWlyZWQKKyAgICAgICAgbGlicmFyaWVzIGFu ZCBjbGllbnQgdXRpbGl0aWVzIGFyZSBhdXRvbWF0aWNhbGx5IGluc3RhbGxlZCBieQorICAgICAg ICBkZXBlbmRlbmNpZXMuCisgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAgICBB cyA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+IGdldHMgaW5zdGFsbGVkLCB0 aGUKKyAgICAgICAgPGxpdGVyYWw+cG9zdGdyZXM8L2xpdGVyYWw+IHVzZXIgYW5kIHRoZQorICAg ICAgICA8bGl0ZXJhbD5wb3N0Z3Jlc3FsLTxyZXBsYWNlYWJsZT52ZXJzaW9uPC9yZXBsYWNlYWJs ZT48L2xpdGVyYWw+CisgICAgICAgIHNlcnZpY2UgYXJlIHNldCB1cC4gVGhlIGluc3RhbGxhdGlv biBkaXJlY3RvcnkgaXMKKyAgICAgICAgPGZpbGVuYW1lPi91c3IvcGdzcWwtPHJlcGxhY2VhYmxl PnZlcnNpb248L3JlcGxhY2VhYmxlPi88L2ZpbGVuYW1lPi4KKyAgICAgICA8L3BhcmE+CisgICAg ICA8L3N0ZXA+CisKKyAgICAgIDxzdGVwPgorICAgICAgIDx0aXRsZT5Jbml0aWFsaXplIHRoZSBk YXRhYmFzZSBjbHVzdGVyPC90aXRsZT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgT24gPGxpdGVy YWw+c3lzdGVtZDwvbGl0ZXJhbD4gc3lzdGVtcywKKyAgICAgICAgcnVuIHRoZSA8bGl0ZXJhbD5w b3N0Z3Jlc3FsLTxyZXBsYWNlYWJsZT52ZXJzaW9uPC9yZXBsYWNlYWJsZT4tc2V0dXA8L2xpdGVy YWw+CisgICAgICAgIHNjcmlwdCB0byBpbml0aWFsaXplIHRoZSBkYXRhYmFzZSBjbHVzdGVyOgor PHByb2dyYW1saXN0aW5nPgorPHJlcGxhY2VhYmxlPmluc3RhbGwtZGlyL2Jpbi88L3JlcGxhY2Vh YmxlPnBvc3RncmVzcWwtPHJlcGxhY2VhYmxlPnZlcnNpb248L3JlcGxhY2VhYmxlPi1zZXR1cCBp bml0ZGIKKzwvcHJvZ3JhbWxpc3Rpbmc+CisgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgor ICAgICAgICBPbiA8bGl0ZXJhbD5TeXNWPC9saXRlcmFsPi1zdHlsZSBzeXN0ZW1zLCBpbml0aWFs aXplIHRoZQorICAgICAgICBkYXRhYmFzZSBjbHVzdGVyIHVzaW5nIHRoZSBzeXN0ZW0gc2Vydmlj ZSBmYWNpbGl0aWVzLCBhcyBmb2xsb3dzOgorPHByb2dyYW1saXN0aW5nPgorc2VydmljZSBwb3N0 Z3Jlc3FsLTxyZXBsYWNlYWJsZT52ZXJzaW9uPC9yZXBsYWNlYWJsZT4gaW5pdGRiCis8L3Byb2dy YW1saXN0aW5nPgorICAgICAgIDwvcGFyYT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgVGhlIGRh dGFiYXNlIGNsdXN0ZXIgaXMgaW5pdGlhbGl6ZWQgb24gYmVoYWxmIG9mIHRoZQorICAgICAgICA8 bGl0ZXJhbD5wb3N0Z3JlczwvbGl0ZXJhbD4gdXNlciwgaW4gdGhlCisgICAgICAgIDxmaWxlbmFt ZT4vdmFyL2xpYi9wZ3NxbC88cmVwbGFjZWFibGU+dmVyc2lvbjwvcmVwbGFjZWFibGU+L2RhdGE8 L2ZpbGVuYW1lPgorICAgICAgICBkYXRhIGRpcmVjdG9yeS4gTG9nIGZpbGVzIGFyZSBsb2NhdGVk IGluCisgICAgICAgIDxmaWxlbmFtZT4vdmFyL2xpYi9wZ3NxbC88cmVwbGFjZWFibGU+dmVyc2lv bjwvcmVwbGFjZWFibGU+L2RhdGEvbG9nLzwvZmlsZW5hbWU+CisgICAgICAgIGJ5IGRlZmF1bHQu CisgICAgICAgPC9wYXJhPgorICAgICAgPC9zdGVwPgorCisgICAgICA8c3RlcD4KKyAgICAgICA8 dGl0bGU+U3RhcnQgdGhlIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gc2Vy dmVyPC90aXRsZT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgVXNlIHlvdXIgb3BlcmF0aW5nIHN5 c3RlbSBmYWNpbGl0aWVzIHRvIHN0YXJ0CisgICAgICAgIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FM PC9wcm9kdWN0bmFtZT4gYXMgYSBzZXJ2aWNlLiBUbyBhdm9pZCBzdGFydGluZworICAgICAgICB0 aGUgc2VydmVyIG1hbnVhbGx5IGVhY2ggdGltZSB5b3UgcmVib290IHRoZSBzeXN0ZW0sIHlvdSBh cmUgYWxzbworICAgICAgICByZWNvbW1lbmRlZCB0byBlbmFibGUgc2VydmVyIGF1dG9zdGFydC4K KyAgICAgICA8L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAgICAgIE9uIDxsaXRlcmFsPnN5c3Rl bWQ8L2xpdGVyYWw+IHN5c3RlbXM6Cis8cHJvZ3JhbWxpc3Rpbmc+CitzeXN0ZW1jdGwgZW5hYmxl IHBvc3RncmVzcWwtPHJlcGxhY2VhYmxlPnZlcnNpb248L3JlcGxhY2VhYmxlPgorc3lzdGVtY3Rs IHN0YXJ0IHBvc3RncmVzcWwtPHJlcGxhY2VhYmxlPnZlcnNpb248L3JlcGxhY2VhYmxlPgorPC9w cm9ncmFtbGlzdGluZz4KKyAgICAgICA8L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAgICAgIE9u IDxsaXRlcmFsPlN5c1Y8L2xpdGVyYWw+IHN5c3RlbXM6Cis8cHJvZ3JhbWxpc3Rpbmc+CitjaGtj b25maWcgcG9zdGdyZXNxbC08cmVwbGFjZWFibGU+dmVyc2lvbjwvcmVwbGFjZWFibGU+IG9uCitz ZXJ2aWNlIHBvc3RncmVzcWwtPHJlcGxhY2VhYmxlPnZlcnNpb248L3JlcGxhY2VhYmxlPiBzdGFy dAorPC9wcm9ncmFtbGlzdGluZz4KKyAgICAgICA8L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAg ICAgIFRoZSBzZXJ2ZXIgaXMgc3RhcnRlZCBvbiBiZWhhbGYgb2YgdGhlIDxsaXRlcmFsPnBvc3Rn cmVzPC9saXRlcmFsPgorICAgICAgICB1c2VyLgorICAgICAgIDwvcGFyYT4KKyAgICAgIDwvc3Rl cD4KKyAgICAgPC9wcm9jZWR1cmU+CisKKyAgICAgPHBhcmE+CisgICAgICBTaW5jZSB5b3UgaGF2 ZSBzdGFydGVkIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gYXMgYQorICAg ICAgc2VydmljZSwgeW91IHNob3VsZCBjb250aW51ZSB1c2luZyB0aGUgb3BlcmF0aW5nIHN5c3Rl bSBmYWNpbGl0aWVzIHRvCisgICAgICBtYW5hZ2UgdGhlIHNlcnZlci4gUnVubmluZyA8bGl0ZXJh bD5wZ19jdGw8L2xpdGVyYWw+IGZvciB0aGlzIHB1cnBvc2UKKyAgICAgIGNhbiBsZWFkIHRvIHVu ZXhwZWN0ZWQgcmVzdWx0cy4KKyAgICAgPC9wYXJhPgorCisgICAgPC9zZWN0Mz4KKyAgIDwvc2Vj dDI+CisKKyAgIDxzZWN0MiBpZD0idHV0b3JpYWwtaW5zdGFsbC1zcmMiPgorICAgIDx0aXRsZT5C dWlsZGluZyBQb3N0Z3JlU1FMIGZyb20gU291cmNlIENvZGU8L3RpdGxlPgorCisgICAgPHBhcmE+ CisgICAgIElmIGEgYmluYXJ5IHBhY2thZ2UgaXMgbm90IGF2YWlsYWJsZSBmb3IgeW91ciBzeXN0 ZW0sIG9yIHlvdSBwcmVmZXIKKyAgICAgYnVpbGRpbmcgPHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8 L3Byb2R1Y3RuYW1lPiB5b3Vyc2VsZiBpbiBhCisgICAgIFVuaXgtbGlrZSBlbnZpcm9ubWVudCwg Zm9sbG93IHRoZXNlIHN0ZXBzOgorICAgIDwvcGFyYT4KKworICAgIDxwcm9jZWR1cmU+CisgICAg IDxzdGVwPgorICAgICAgPHRpdGxlPkRvd25sb2FkIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9w cm9kdWN0bmFtZT4gc291cmNlIGNvZGU8L3RpdGxlPgorICAgICAgPHBhcmE+CisgICAgICAgR2V0 IDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gY29kZSBmcm9tIHRoZQorICAg ICAgIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gZG93bmxvYWQgcGFnZSBv ciBnaXQgcmVwb3NpdG9yeSwKKyAgICAgICBhcyBleHBsYWluZWQgaW4gPHhyZWYgbGlua2VuZD0i aW5zdGFsbC1nZXRzb3VyY2UiLz4uCisgICAgICA8L3BhcmE+CisgICAgIDwvc3RlcD4KKworICAg ICA8c3RlcD4KKyAgICAgIDx0aXRsZT5CdWlsZCBhbmQgaW5zdGFsbCA8cHJvZHVjdG5hbWU+UG9z dGdyZVNRTDwvcHJvZHVjdG5hbWU+PC90aXRsZT4KKyAgICAgIDxwYXJhPgorICAgICAgIENvbXBs ZXRlIHRoZSBpbnN0YWxsYXRpb24gZnJvbSBzb3VyY2UgY29kZSBhcyBleHBsYWluZWQgaW4KKyAg ICAgICA8eHJlZiBsaW5rZW5kPSJpbnN0YWxsLXByb2NlZHVyZSIvPi4gSWYgeW91IGRvIG5vdCBo YXZlIHN1cGVydXNlcgorICAgICAgICg8c3lzdGVtaXRlbT5yb290PC9zeXN0ZW1pdGVtPikgYWNj ZXNzIGFuZCB3b3VsZCBsaWtlIHRvIGluc3RhbGwKKyAgICAgICA8cHJvZHVjdG5hbWU+UG9zdGdy ZVNRTDwvcHJvZHVjdG5hbWU+IGFzIGFuIHVucHJpdmlsZWdlZCB1c2VyLCBtYWtlCisgICAgICAg c3VyZSB0byBzZXQgdGhlIDxsaXRlcmFsPi0tcHJlZml4PC9saXRlcmFsPiBvcHRpb24gdG8gcG9p bnQgdG8gYQorICAgICAgIGxvY2F0aW9uIGZvciB3aGljaCB0aGlzIHVzZXIgaGFzIHdyaXRlIHBl cm1pc3Npb25zLiBCeSBkZWZhdWx0LCB0aGUKKyAgICAgICBpbnN0YWxsYXRpb24gcGF0aCBpcyA8 ZmlsZW5hbWU+L3Vzci9sb2NhbC9wZ3NxbDwvZmlsZW5hbWU+LAorICAgICAgIHdoaWNoIHJlcXVp cmVzIHJvb3QgYWNjZXNzLgorICAgICAgPC9wYXJhPgorICAgICA8L3N0ZXA+CisKKyAgICAgPHN0 ZXA+CisgICAgICA8dGl0bGU+U2V0IHVwIHRoZSBhcHByb3ByaWF0ZSBlbnZpcm9ubWVudCB2YXJp YWJsZXM8L3RpdGxlPgorICAgICAgPHBhcmE+CisgICAgICAgSW4gcGFydGljdWxhciwgbWFrZSBz dXJlIHRoZSA8ZmlsZW5hbWU+YmluPC9maWxlbmFtZT4gc3ViZGlyZWN0b3J5CisgICAgICAgb2Yg eW91ciBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IGlzIGFkZGVkIHRvIHRoZSA8ZW52YXI+UEFUSDwv ZW52YXI+CisgICAgICAgZW52aXJvbm1lbnQgdmFyaWFibGUgZm9yIHRoZSB1c2VyIHRoYXQgcGVy Zm9ybXMgdGhlIGluc3RhbGxhdGlvbjoKKzxwcm9ncmFtbGlzdGluZz4KK1BBVEg9PHJlcGxhY2Vh YmxlPmluc3RhbGwtZGlyPC9yZXBsYWNlYWJsZT4vYmluOiRQQVRICitleHBvcnQgUEFUSAorPC9w cm9ncmFtbGlzdGluZz4KKyAgICAgICBUaGlzIHNldHRpbmcgYWxsb3dzIHRvIGF2b2lkIHNwZWNp ZnlpbmcgdGhlIGZ1bGwgaW5zdGFsbGF0aW9uCisgICAgICAgcGF0aCB3aGVuIHdvcmtpbmcgd2l0 aCB0aGUgc2VydmVyIGxhdGVyLgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAg SWYgeW91IGFyZSBpbnN0YWxsaW5nIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFt ZT4gb24gYSByZW1vdGUKKyAgICAgICBzeXN0ZW0sIHlvdSBhbHNvIG5lZWQgdG8gc2V0CisgICAg ICAgdGhlIDxlbnZhcj5QR0hPU1Q8L2VudmFyPiBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byB0aGUg bmFtZSBvZiB0aGUKKyAgICAgICBkYXRhYmFzZSBzZXJ2ZXIgc3lzdGVtLiBJZiB5b3UgaGF2ZSBj aGFuZ2VkIHRoZSBkZWZhdWx0IHBvcnQKKyAgICAgICB3aGVuIGNvbmZpZ3VyaW5nIHNvdXJjZXMs IHRoZSA8ZW52YXI+UEdQT1JUPC9lbnZhcj4gZW52aXJvbm1lbnQgdmFyaWFibGUKKyAgICAgICBz aG91bGQgYWxzbyBiZSBjaGFuZ2VkIGFjY29yZGluZ2x5LgorICAgICAgIFNlZSA8eHJlZiBsaW5r ZW5kPSJjb25maWd1cmUtZW52dmFycyIvPiBmb3IgZGV0YWlscy4KKyAgICAgIDwvcGFyYT4KKyAg ICAgPC9zdGVwPgorCisgICAgIDxzdGVwPgorICAgICAgPHRpdGxlPlNldCB1cCBhIHNlcGFyYXRl IE9TIHVzZXIgdGhhdCB3aWxsIG93biB0aGUgZGF0YWJhc2UgY2x1c3RlcjwvdGl0bGU+CisgICAg ICA8cGFyYT4KKyAgICAgICBUaGlzIHN0ZXAgcmVxdWlyZXMgcm9vdCBhY2Nlc3MuIElmIHlvdSBo YXZlIGluc3RhbGxlZCAKKyAgICAgICA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5h bWU+IGFzIGFuIHVucHJpdmlsZWdlZCB1c2VyLCB5b3UgY2FuCisgICAgICAgc2tpcCB0aGlzIHN0 ZXAgYW5kIGNvbXBsZXRlIHRoZSBzeXN0ZW0gc2V0dXAgb24gYmVoYWxmIG9mIHRoZSBzYW1lIHVz ZXIsCisgICAgICAgYnV0IGl0IGlzIG5vdCByZWNvbW1lbmRlZCBvbiBwcm9kdWN0aW9uIHN5c3Rl bXMgZm9yIHNlY3VyaXR5IHJlYXNvbnMuCisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAg ICAgICBNb3N0IGJpbmFyeSBwYWNrYWdlcyBhdXRvbWF0aWNhbGx5IGNyZWF0ZSBhIHNlcGFyYXRl CisgICAgICAgPGxpdGVyYWw+cG9zdGdyZXM8L2xpdGVyYWw+IE9TIHVzZXIgdGhhdCBvd25zIHRo ZSBzZXJ2ZXIgcHJvY2VzcworICAgICAgIGFuZCBhbGwgdGhlIGNsdXN0ZXIgZGF0YSwgc28gbGV0 J3MgY3JlYXRlIHN1Y2ggYSB1c2VyLCBzZXQgdXAKKyAgICAgICBhIGRpcmVjdG9yeSBmb3Igb3Vy IG5ldyBkYXRhYmFzZSBjbHVzdGVyIHRoYXQgdGhpcyB1c2VyIGNhbiBhY2Nlc3MsCisgICAgICAg YW5kIHRoZW4gc3dpdGNoIHRvIHRoaXMgdXNlcjoKKzxwcm9ncmFtbGlzdGluZz4KK2FkZHVzZXIg cG9zdGdyZXMKK21rZGlyIDxyZXBsYWNlYWJsZT5kYXRhZGlyPC9yZXBsYWNlYWJsZT4KK2Nob3du IHBvc3RncmVzIDxyZXBsYWNlYWJsZT5kYXRhZGlyPC9yZXBsYWNlYWJsZT4KK3N1IC0gcG9zdGdy ZXMKKzwvcHJvZ3JhbWxpc3Rpbmc+CisgICAgICA8L3BhcmE+CisgICAgIDwvc3RlcD4KKworICAg ICA8c3RlcD4KKyAgICAgIDx0aXRsZT5Jbml0aWFsaXplIHRoZSBkYXRhYmFzZSBjbHVzdGVyPC90 aXRsZT4KKyAgICAgIDxwYXJhPgorICAgICAgIE9uIGJlaGFsZiBvZiB0aGUgPGxpdGVyYWw+cG9z dGdyZXM8L2xpdGVyYWw+IHVzZXIsIHJ1bgorICAgICAgIDx4cmVmIGxpbmtlbmQ9ImFwcC1wZy1j dGwiLz4gd2l0aCB0aGUgPGxpdGVyYWw+aW5pdGRiPC9saXRlcmFsPiBjb21tYW5kLAorICAgICAg IHNwZWNpZnlpbmcgdGhlIGRhdGEgZGlyZWN0b3J5IGluIHRoZSA8bGl0ZXJhbD4tRDwvbGl0ZXJh bD4gb3B0aW9uOgorPHByb2dyYW1saXN0aW5nPgorPHJlcGxhY2VhYmxlPmluc3RhbGwtZGlyPC9y ZXBsYWNlYWJsZT4vYmluL3BnX2N0bCAtRCA8cmVwbGFjZWFibGU+ZGF0YWRpcjwvcmVwbGFjZWFi bGU+IGluaXRkYgorPC9wcm9ncmFtbGlzdGluZz4KKyAgICAgICBUaGlzIGNvbW1hbmQgY3JlYXRl cyBhIGRhdGFiYXNlIGNsdXN0ZXIgb3duZWQgYnkgdGhlCisgICAgICAgPGxpdGVyYWw+cG9zdGdy ZXM8L2xpdGVyYWw+IE9TIHVzZXIuCisgICAgICA8L3BhcmE+CisgICAgIDwvc3RlcD4KKworICAg ICA8c3RlcD4KKyAgICAgIDx0aXRsZT5TdGFydCB0aGUgPHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8 L3Byb2R1Y3RuYW1lPiBzZXJ2ZXI8L3RpdGxlPgorICAgICAgPHBhcmE+CisgICAgICAgVGhlIHNl cnZlciBtdXN0IGJlIHN0YXJ0ZWQgYnkgdGhlIGNsdXN0ZXIgb3duZXIsIHNvIHJ1biB0aGUgZm9s bG93aW5nCisgICAgICAgY29tbWFuZCBvbiBiZWhhbGYgb2YgdGhlIDxsaXRlcmFsPnBvc3RncmVz PC9saXRlcmFsPiB1c2VyOgorPHByb2dyYW1saXN0aW5nPgorPHJlcGxhY2VhYmxlPmluc3RhbGwt ZGlyPC9yZXBsYWNlYWJsZT4vYmluL3BnX2N0bCAtRCA8cmVwbGFjZWFibGU+ZGF0YWRpcjwvcmVw bGFjZWFibGU+IC1sIGxvZ2ZpbGUgc3RhcnQKKzwvcHJvZ3JhbWxpc3Rpbmc+CisgICAgICAgVG8g YXZvaWQgc3RhcnRpbmcgdGhlIHNlcnZlciBtYW51YWxseSBlYWNoIHRpbWUgeW91IHJlYm9vdAor ICAgICAgIHRoZSBzeXN0ZW0sIHlvdSBjYW4gZW5hYmxlIHNlcnZlciBhdXRvc3RhcnQgYXMgZXhw bGFpbmVkIGluCisgICAgICAgPHhyZWYgbGlua2VuZD0ic2VydmVyLXN0YXJ0Ii8+LgorICAgICAg PC9wYXJhPgorICAgICA8L3N0ZXA+CisgICAgPC9wcm9jZWR1cmU+CisKKyAgICA8cGFyYT4KKyAg ICAgVG8gY2hlY2sgdGhhdCB0aGUgc2VydmVyIGlzIHJ1bm5pbmcsIHlvdSBjYW4gcnVuIHRoZSBm b2xsb3dpbmcgY29tbWFuZDoKKzxwcm9ncmFtbGlzdGluZz4KKzxyZXBsYWNlYWJsZT5pbnN0YWxs LWRpcjwvcmVwbGFjZWFibGU+L2Jpbi9wZ19jdGwgLUQgPHJlcGxhY2VhYmxlPmRhdGFkaXI8L3Jl cGxhY2VhYmxlPiBzdGF0dXMKKzwvcHJvZ3JhbWxpc3Rpbmc+CisgICAgPC9wYXJhPgorCisgICA8 L3NlY3QyPgogICA8L3NlY3QxPgogCisgIDxzZWN0MSBpZD0idHV0b3JpYWwtYWNjZXNzLXNlcnZl ciI+CisgICA8dGl0bGU+QWNjZXNzaW5nIHRoZSBTZXJ2ZXI8L3RpdGxlPgogCi0gIDxzZWN0MSBp ZD0idHV0b3JpYWwtYXJjaCI+Ci0gICA8dGl0bGU+QXJjaGl0ZWN0dXJhbCBGdW5kYW1lbnRhbHM8 L3RpdGxlPgorICAgPGluZGV4dGVybSB6b25lPSJ0dXRvcmlhbC1hY2Nlc3Mtc2VydmVyIj4KKyAg ICA8cHJpbWFyeT5hY2Nlc3NpbmcgYSA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5h bWU+IHNlcnZlcjwvcHJpbWFyeT4KKyAgIDwvaW5kZXh0ZXJtPgogCiAgICA8cGFyYT4KLSAgICBC ZWZvcmUgd2UgcHJvY2VlZCwgeW91IHNob3VsZCB1bmRlcnN0YW5kIHRoZSBiYXNpYwotICAgIDxw cm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gc3lzdGVtIGFyY2hpdGVjdHVyZS4K LSAgICBVbmRlcnN0YW5kaW5nIGhvdyB0aGUgcGFydHMgb2YKLSAgICA8cHJvZHVjdG5hbWU+UG9z dGdyZVNRTDwvcHJvZHVjdG5hbWU+IGludGVyYWN0IHdpbGwgbWFrZSB0aGlzCi0gICAgY2hhcHRl ciBzb21ld2hhdCBjbGVhcmVyLgorICAgIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0 bmFtZT4gdXNlcyBhIGNsaWVudC9zZXJ2ZXIgbW9kZWwuCisgICAgVG8gY29ubmVjdCB0byBhIHNl cnZlciwgYSBjbGllbnQgYXBwbGljYXRpb24gaXMgcmVxdWlyZWQuCisgICAgPHByb2R1Y3RuYW1l PlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiBwcm92aWRlcyBzZXZlcmFsCisgICAgPGxpbmsgbGlu a2VuZD0icmVmZXJlbmNlLWNsaWVudCI+Y2xpZW50IHV0aWxpdGllczwvbGluaz4gdGhhdCB5b3UK KyAgICBjYW4gcnVuIGZyb20gdGhlIGNvbW1hbmQgbGluZSB0byBwZXJmb3JtIHNvbWUgY29tbW9u IG9wZXJhdGlvbnMuCisgICAgT24gdGhlIHNlcnZlciBzaWRlLCB5b3UgbXVzdCBoYXZlIGEgZGF0 YWJhc2UgdG8gY29ubmVjdCB0bywKKyAgICBhbmQgYSBkYXRhYmFzZSB1c2VyIHRoYXQgaGFzIHRo ZSByaWdodCB0byB3b3JrIHdpdGggdGhpcyBkYXRhYmFzZS4KICAgIDwvcGFyYT4KIAogICAgPHBh cmE+Ci0gICAgSW4gZGF0YWJhc2UgamFyZ29uLCA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJv ZHVjdG5hbWU+IHVzZXMgYQotICAgIGNsaWVudC9zZXJ2ZXIgbW9kZWwuICBBIDxwcm9kdWN0bmFt ZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4KLSAgICBzZXNzaW9uIGNvbnNpc3RzIG9mIHRoZSBm b2xsb3dpbmcgY29vcGVyYXRpbmcgcHJvY2Vzc2VzCi0gICAgKHByb2dyYW1zKToKKyAgICBEYXRh YmFzZSB1c2VycyBhcmUgc2VwYXJhdGUgZnJvbSBvcGVyYXRpbmcgc3lzdGVtIHVzZXIgYWNjb3Vu dHMuIFRoZXkKKyAgICBleGlzdCB3aXRoaW4gdGhlIHNlcnZlciBpbnN0YW5jZSwgYW5kIGNhbiBi ZSB1c2VkIHRvIHBlcmZvcm0gZGF0YWJhc2UKKyAgICBvcGVyYXRpb25zIG9ubHkuIFdoZW4gdGhl IGRhdGFiYXNlIGNsdXN0ZXIgaXMgaW5pdGlhbGl6ZWQsIHRoZSBpbml0aWFsCisgICAgdXNlciBh bmQgdGhlIGRlZmF1bHQgZGF0YWJhc2UgYXJlIGNyZWF0ZWQgYXV0b21hdGljYWxseS4gVGhlaXIg bmFtZXMKKyAgICBhcmUgdGhlIHNhbWUgYXMgdGhlIG5hbWUgb2YgdGhlIGN1cnJlbnQgT1MgdXNl ciBhY2NvdW50LiBUaHVzLCBpZiB0aGUKKyAgICBjbHVzdGVyIGlzIGluaXRpYWxpemVkIG9uIGJl aGFsZiBvZiB0aGUgPGxpdGVyYWw+cG9zdGdyZXM8L2xpdGVyYWw+IE9TCisgICAgdXNlciwgdGhl IDxsaXRlcmFsPnBvc3RncmVzPC9saXRlcmFsPiBkYXRhYmFzZSB1c2VyIGlzIHNldCB1cCwgYW5k IHRoZQorICAgIDxzdHJ1Y3RuYW1lPnBvc3RncmVzPC9zdHJ1Y3RuYW1lPiBkYXRhYmFzZSBpcyBj cmVhdGVkLgorICAgPC9wYXJhPgogCi0gICAgPGl0ZW1pemVkbGlzdD4KKyAgIDxzZWN0Mj4KKyAg ICA8dGl0bGU+SG93IEl0IFdvcmtzPC90aXRsZT4KKyAgICA8cGFyYT4KKyAgICAgV2hlbiBhIGNs aWVudCBjb25uZWN0cyB0byB0aGUgc2VydmVyLCBhCisgICAgIDxmaXJzdHRlcm0+PHByb2R1Y3Ru YW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPgorICAgICBzZXNzaW9uPC9maXJzdHRlcm0+IGlz IGVzdGFibGlzaGVkLCB3aGljaCBjb21wcmlzZXMgdGhlIGZvbGxvd2luZworICAgICBjb29wZXJh dGluZyBwcm9jZXNzZXMgKHByb2dyYW1zKToKKworICAgICA8aXRlbWl6ZWRsaXN0PgorICAgICAg PGxpc3RpdGVtPgorICAgICAgIDxwYXJhPgorICAgICAgICBBIHNlcnZlciBwcm9jZXNzLCB3aGlj aCBtYW5hZ2VzIGRhdGFiYXNlIGZpbGVzLCBhY2NlcHRzIGNvbm5lY3Rpb25zCisgICAgICAgIHRv IHRoZSBkYXRhYmFzZSBmcm9tIGNsaWVudCBhcHBsaWNhdGlvbnMsIGFuZCBwZXJmb3JtcyBkYXRh YmFzZQorICAgICAgICBhY3Rpb25zIG9uIGJlaGFsZiBvZiB0aGUgY2xpZW50cy4gVGhlIGRhdGFi YXNlIHNlcnZlciBwcm9ncmFtIGlzCisgICAgICAgIGNhbGxlZCA8ZmlsZW5hbWU+cG9zdGdyZXM8 L2ZpbGVuYW1lPi4KKyAgICAgICAgPGluZGV4dGVybT48cHJpbWFyeT5wb3N0Z3JlczwvcHJpbWFy eT48L2luZGV4dGVybT4KKyAgICAgICA8L3BhcmE+CisgICAgICA8L2xpc3RpdGVtPgorCisgICAg ICA8bGlzdGl0ZW0+CisgICAgICAgPHBhcmE+CisgICAgICAgIEEgY2xpZW50IGFwcGxpY2F0aW9u IHRvIHBlcmZvcm0gZGF0YWJhc2Ugb3BlcmF0aW9ucy4gSXQgY2FuCisgICAgICAgIGJlIGEgdGVy bWluYWwgcHJvZ3JhbSwgc3VjaCBhcyA8eHJlZiBsaW5rZW5kPSJhcHAtcHNxbCIvPiwgYQorICAg ICAgICBncmFwaGljYWwgZnJvbnRlbmQgdG9vbCBsaWtlIDxhcHBsaWNhdGlvbj5wZ0FkbWluPC9h cHBsaWNhdGlvbj4KKyAgICAgICBvciBhbiBvZmZpY2Ugc3VpdGUgd2l0aCA8YWNyb255bT5PREJD PC9hY3JvbnltPiBvcgorICAgICAgIDxhY3JvbnltPkpEQkM8L2Fjcm9ueW0+IHN1cHBvcnQgdG8g Y3JlYXRlIGFuZCBtYW5pcHVsYXRlIGEgZGF0YWJhc2UsCisgICAgICAgb3IgYSBjdXN0b20gYXBw bGljYXRpb24gdGhhdCB1c2VzIG9uZSBvZiB0aGUgc2V2ZXJhbAorICAgICAgIGF2YWlsYWJsZSBs YW5ndWFnZSBiaW5kaW5ncyBkaXNjdXNzZWQKKyAgICAgICBpbiA8eHJlZiBsaW5rZW5kPSJjbGll bnQtaW50ZXJmYWNlcyIvPi4KKyAgICAgICA8L3BhcmE+CisgICAgICA8L2xpc3RpdGVtPgorICAg ICA8L2l0ZW1pemVkbGlzdD4KKworICAgIDwvcGFyYT4KKworICAgIDxwYXJhPgorICAgICBBIDxw cm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gc2VydmVyIGNhbiBoYW5kbGUKKyAg ICAgbXVsdGlwbGUgY29uY3VycmVudCBjb25uZWN0aW9ucyBmcm9tIGNsaWVudHMuICBXaGVuIGEg Y2xpZW50IGdldHMKKyAgICAgY29ubmVjdGVkIHRvIHRoZSBzZXJ2ZXIsIDxwcm9kdWN0bmFtZT5Q b3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4KKyAgICAgc3RhcnRzICg8cXVvdGU+Zm9ya3M8L3F1b3Rl PikgYSBuZXcgcHJvY2VzcyBmb3IgdGhpcyBjbGllbnQuCisgICAgIEZyb20gdGhhdCBwb2ludCBv biwgdGhlIGNsaWVudCBhbmQgdGhlIG5ldyBzZXJ2ZXIgcHJvY2VzcworICAgICBjb21tdW5pY2F0 ZSB3aXRob3V0IGludGVydmVudGlvbiBieSB0aGUgb3JpZ2luYWwKKyAgICAgPGZpbGVuYW1lPnBv c3RncmVzPC9maWxlbmFtZT4gcHJvY2Vzcy4gIFRodXMsIHRoZQorICAgICBtYXN0ZXIgc2VydmVy IHByb2Nlc3MgaXMgYWx3YXlzIHJ1bm5pbmcsIHdhaXRpbmcgZm9yCisgICAgIGNsaWVudCBjb25u ZWN0aW9ucywgd2hlcmVhcyBjbGllbnQgYW5kIGFzc29jaWF0ZWQgc2VydmVyIHByb2Nlc3Nlcwor ICAgICBjb21lIGFuZCBnby4KKyAgICA8L3BhcmE+CisgICA8L3NlY3QyPgorCisgICA8c2VjdDI+ CisgICA8dGl0bGU+RXN0YWJsaXNoaW5nIHRoZSBGaXJzdCBDb25uZWN0aW9uPC90aXRsZT4KKwor ICAgIDxwYXJhPgorICAgICBJZiB5b3UgaGF2ZSBpbnN0YWxsZWQKKyAgICAgPHByb2R1Y3RuYW1l PlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiBmcm9tIFBHREcgYmluYXJ5IHBhY2thZ2VzIG9uIExp bnV4LAorICAgICB0aGUgaW5pdGlhbCB1c2VyIGlzIDxsaXRlcmFsPnBvc3RncmVzPC9saXRlcmFs Pi4gVGhpcyBpcyB0aGUgb25seQorICAgICBvbmx5IGRhdGFiYXNlIHVzZXIgdG8gY29ubmVjdCBh cyBvbmNlIHlvdSBoYXZlIGluaXRpYWxpemVkIHRoZSBjbHVzdGVyLgorICAgIDwvcGFyYT4KKwor ICAgIDxwYXJhPgorICAgICBCeSBkZWZhdWx0LCBjbGllbnQgdXRpbGl0aWVzIHVzZSBVbml4IGRv bWFpbiBzb2NrZXQgZm9yIGxvY2FsCisgICAgIGNvbm5lY3Rpb25zIHRvIHRoZSBzZXJ2ZXIsIGFu ZCB0aGUgc2VydmVyIHVzZXMgdGhlCisgICAgIDxsaW5rIGxpbmtlbmQ9ImF1dGgtcGVlciI+cGVl ciBhdXRoZW50aWNhdGlvbjwvbGluaz4gbWV0aG9kIGZvciBzdWNoCisgICAgIGNvbm5lY3Rpb25z LiBUbyBhdXRoZW50aWNhdGUgYSB1c2VyLCB0aGUgc2VydmVyIGNoZWNrcyB3aGljaCBPUyB1c2Vy CisgICAgIGhhcyBpbml0aWF0ZWQgdGhlIHByb2Nlc3MgdG8gY29ubmVjdCB0byB0aGUgc2VydmVy IGFuZCBvbmx5IGFsbG93cworICAgICBjb25uZWN0aW9ucyBvbiBiZWhhbGYgb2YgdGhlIGRhdGFi YXNlIHVzZXIgd2l0aCB0aGUgc2FtZSBuYW1lIGFzCisgICAgIHRoZSBjdXJyZW50IE9TIHVzZXIu IFRodXMsIHRvIGVzdGFibGlzaCB0aGUgZmlyc3QgY29ubmVjdGlvbiB0byB0aGUKKyAgICAgc2Vy dmVyLCB5b3UgaGF2ZSB0byBsb2cgaW4gYXMgdGhlIDxsaXRlcmFsPnBvc3RncmVzPC9saXRlcmFs PiBPUyB1c2VyLgorICAgICBFdmVuIHRob3VnaCB5b3UgZG8gbm90IGhhdmUgYW4gZXhwbGljaXQg cGFzc3dvcmQgZm9yIHRoaXMgdXNlciwgeW91CisgICAgIGNhbiBkbyBpdCB2aWEgdGhlIHN1cGVy dXNlciBhY2NvdW50OgorPHNjcmVlbj4KKzxwcm9tcHQ+JDwvcHJvbXB0PiA8dXNlcmlucHV0PnN1 ZG8gc3UgcG9zdGdyZXM8L3VzZXJpbnB1dD4KKzwvc2NyZWVuPgorICAgICBOb3cgeW91IGNhbiBy dW4gYSBjbGllbnQgYXBwbGljYXRpb24gZnJvbSB0aGUgY29tbWFuZCBsaW5lIHdpdGhvdXQKKyAg ICAgc3BlY2lmeWluZyBhbnkgY29ubmVjdGlvbiBwYXJhbWV0ZXJzLCBhbmQgaXQgd2lsbCBjb25u ZWN0IHRvIHRoZQorICAgICA8bGl0ZXJhbD5wb3N0Z3JlczwvbGl0ZXJhbD4gZGF0YWJhc2Ugb24g YmVoYWxmIG9mIHRoZQorICAgICA8bGl0ZXJhbD5wb3N0Z3JlczwvbGl0ZXJhbD4gZGF0YWJhc2Ug dXNlciBhdXRvbWF0aWNhbGx5LiBGb3IgZXhhbXBsZSwKKyAgICAgeW91IGNhbiBzdGFydCA8eHJl ZiBsaW5rZW5kPSJhcHAtcHNxbCIvPiBvciBydW4gdGhlCisgICAgIDx4cmVmIGxpbmtlbmQ9ImFw cC1jcmVhdGV1c2VyIi8+IGNsaWVudCB1dGlsaXR5IHRvIGNyZWF0ZSBhIG5ldworICAgICBkYXRh YmFzZSB1c2VyLgorICAgIDwvcGFyYT4KKworICAgIDxwYXJhPgorICAgICBTdXBwb3NlIHlvdSB3 b3VsZCBsaWtlIHRvIGFjY2VzcyB0aGUgc2VydmVyIGZyb20geW91cgorICAgICByZWd1bGFyIE9T IGFjY291bnQgPGxpdGVyYWw+am9lPC9saXRlcmFsPiB1c2luZyBwZWVyIGF1dGhlbnRpY2F0aW9u LgorICAgICBUbyBjcmVhdGUgYSBkYXRhYmFzZSB1c2VyIHdpdGggdGhlIHNhbWUgbmFtZSwgcnVu IHRoZSBmb2xsb3dpbmcgY29tbWFuZDoKKzxzY3JlZW4+Cis8cHJvbXB0PiQ8L3Byb21wdD4gPHVz ZXJpbnB1dD5jcmVhdGV1c2VyIGpvZSAtLWNyZWF0ZWRiPC91c2VyaW5wdXQ+Cis8L3NjcmVlbj4K KyAgICAgVGhpcyBjb21tYW5kIGNvbm5lY3RzIHRvIHRoZSA8bGl0ZXJhbD5wb3N0Z3JlczwvbGl0 ZXJhbD4gZGF0YWJhc2UgYXMgdGhlCisgICAgIDxsaXRlcmFsPnBvc3RncmVzPC9saXRlcmFsPiB1 c2VyIGFuZCBjcmVhdGVzIGEgbmV3IGRhdGFiYXNlIHVzZXIKKyAgICAgPGxpdGVyYWw+am9lPC9s aXRlcmFsPi4gVGhlIDxvcHRpb24+LS1jcmVhdGVkYjwvb3B0aW9uPiBncmFudHMgdGhpcyB1c2Vy CisgICAgIHRoZSByaWdodCB0byBjcmVhdGUgZGF0YWJhc2VzIGluIHRoZSBmdXR1cmUuIElmIHlv dSBkbyBub3Qgc2VlIGFueSBlcnJvcnMKKyAgICAgd2hlbiBydW5uaW5nIHRoaXMgY29tbWFuZCwg dGhlIG9wZXJhdGlvbiBoYXMgYmVlbiBzdWNjZXNzZnVsLiBPdGhlcndpc2UsCisgICAgIGNoZWNr b3V0IDx4cmVmIGxpbmtlbmQ9InR1dG9yaWFsLXRyb3VibGVzaG9vdGluZyIvPiB0byBmaWd1cmUg b3V0IHdoYXQKKyAgICAgY291bGQgaGF2ZSBnb25lIHdyb25nLgorICAgIDwvcGFyYT4KKworICAg PC9zZWN0Mj4KKworICAgPHNlY3QyPgorICAgIDx0aXRsZT5Vc2luZyBPdGhlciBDb25uZWN0aW9u IFR5cGVzPC90aXRsZT4KKworICAgIDxwYXJhPgorICAgICBBcGFydCBmcm9tIHBlZXIgYXV0aGVu dGljYXRpb24gZm9yIGxvY2FsIGNvbm5lY3Rpb25zLAorICAgICA8cHJvZHVjdG5hbWU+UG9zdGdy ZVNRTDwvcHJvZHVjdG5hbWU+IGFsc28gcHJvdmlkZXMgb3RoZXIKKyAgICAgYXV0aGVudGljYXRp b24gbWV0aG9kcyB0aGF0IGVuYWJsZSB5b3UgdG8gZXhwbGljaXRseSBzcGVjaWZ5IHRoZSBkYXRh YmFzZQorICAgICB1c2VyIHRvIGNvbm5lY3QgYXMsIHdpdGhvdXQgc3dpdGNoaW5nIHRvIHRoZSBj b3JyZXNwb25kaW5nCisgICAgIE9TIHVzZXIuIEF1dGhlbnRpY2F0aW9uIHNldHRpbmdzIGZvciBl YWNoIGNvbm5lY3Rpb24gdHlwZSBhcmUgZGVmaW5lZCBpbgorICAgICB0aGUgPGxpbmsgbGlua2Vu ZD0iYXV0aC1wZy1oYmEtY29uZiI+cGdfaGJhLmNvbmY8L2xpbms+IGZpbGUgbG9jYXRlZAorICAg ICBpbiB5b3VyIGNsdXN0ZXIgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkuIEVhY2ggbGluZSBpbiB0 aGlzIGZpbGUgcHJvdmlkZXMKKyAgICAgY29ubmVjdGlvbiBzZXR0aW5ncyBmb3IgYSBwYXJ0aWN1 bGFyIGNvbm5lY3Rpb24gdHlwZSwgZm9yIGV4YW1wbGU6Cis8c2NyZWVuPgorIyBUWVBFICBEQVRB QkFTRSAgICAgICAgVVNFUiAgICAgICAgICAgIEFERFJFU1MgICAgICAgICAgICAgICAgIE1FVEhP RAorIyAibG9jYWwiIGlzIGZvciBVbml4IGRvbWFpbiBzb2NrZXQgY29ubmVjdGlvbnMgb25seQor bG9jYWwgICBhbGwgICAgICAgICAgICAgYWxsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHBlZXIKKyMgSVB2NCBsb2NhbCBjb25uZWN0aW9uczoKK2hvc3QgICAgYWxsICAgICAg ICAgICAgIGFsbCAgICAgICAgICAgICAxMjcuMC4wLjEvMzIgICAgICAgICAgICBtZDUKKzwvc2Ny ZWVuPgorICAgIDwvcGFyYT4KKworICAgIDxwYXJhPgorICAgICBXaGVuIGEgY2xpZW50IHRyaWVz IHRvIGNvbm5lY3QgdG8gdGhlIHNlcnZlciwKKyAgICAgPGZpbGVuYW1lPnBnX2hiYS5jb25mPC9m aWxlbmFtZT4gaXMgcGFyc2VkIGZyb20gdG9wIHRvIGJvdHRvbSwKKyAgICAgYW5kIHRoZSBmaXJz dCBhdXRoZW50aWNhdGlvbiBtZXRob2QgdGhhdCBzYXRpc2ZpZXMgdGhlIHByb3ZpZGVkCisgICAg IGNvbm5lY3Rpb24gcGFyYW1ldGVycyBpcyB1c2VkLgorICAgIDwvcGFyYT4KKworICAgIDxwYXJh PgorICAgICBTdXBwb3NlIHlvdSB3b3VsZCBsaWtlIHRvIGVzdGFibGlzaCBhIGNvbm5lY3Rpb24g dmlhIFRDUC9JUC4gSW4gdGhpcyBjYXNlLAorICAgICB5b3UgbmVlZCB0byBwcm92aWRlIDxsaXRl cmFsPi1VPC9saXRlcmFsPiBhbmQgPGxpdGVyYWw+LWg8L2xpdGVyYWw+CisgICAgIG9wdGlvbnMg dG8gZXhwbGljaXRseSBzcGVjaWZ5IHRoZSBkYXRhYmFzZSB1c2VyIGFuZCBob3N0IGZvciBjb25u ZWN0aW9uLgorICAgICBZb3UgYWxzbyBoYXZlIHRvIGVuc3VyZSB0aGF0IGF1dGhlbnRpY2F0aW9u IHBhcmFtZXRlcnMgY29uZmlndXJlZCBmb3IgdGhlCisgICAgIHNlbGVjdGVkIGRhdGFiYXNlIHVz ZXIgY29ycmVzcG9uZCB0byB0aGUgYXV0aGVudGljYXRpb24gbWV0aG9kIGZvciB0aGlzCisgICAg IGNvbm5lY3Rpb24gdHlwZS4gRm9yIGV4YW1wbGUsIGZvciBwYXNzd29yZC1iYXNlZCBhdXRoZW50 aWNhdGlvbiBtZXRob2RzLAorICAgICBzdWNoIGFzIDxsaXRlcmFsPm1kNTwvbGl0ZXJhbD4sIHRo ZSBkYXRhYmFzZSB1c2VyIG11c3QgaGF2ZSBhIHBhc3N3b3JkCisgICAgIHNldC4gVGh1cywgdG8g dXNlIHRoaXMgYXV0aGVudGljYXRpb24gbWV0aG9kIGZvciB0aGUKKyAgICAgPGxpdGVyYWw+cG9z dGdyZXM8L2xpdGVyYWw+IHVzZXIsIHlvdSBtYXkgZmlyc3QgbmVlZCB0byBjb25uZWN0IHRvIHRo ZQorICAgICBzZXJ2ZXIgdXNpbmcgcGVlciBhdXRoZW50aWNhdGlvbiBhbmQgY2hhbmdlIHRoZSBw YXNzd29yZCB3aXRoIHRoZQorICAgICA8eHJlZiBsaW5rZW5kPSJzcWwtYWx0ZXJyb2xlIi8+IFNR TCBjb21tYW5kLgorICAgIDwvcGFyYT4KKworICAgIDxwYXJhPgorICAgICBGb3IgcmVtb3RlIGNv bm5lY3Rpb25zLCB5b3UgYWxzbyBoYXZlIHRvIGRlZmluZSB0aGUKKyAgICAgPHhyZWYgbGlua2Vu ZD0iZ3VjLWxpc3Rlbi1hZGRyZXNzZXMiLz4gcGFyYW1ldGVyIGluIHRoZQorICAgICA8ZmlsZW5h bWU+cG9zdGdyZXNxbC5jb25mPC9maWxlbmFtZT4gY29uZmlndXJhdGlvbiBmaWxlIHRvIGFsbG93 IGluY29taW5nCisgICAgIGNvbm5lY3Rpb25zIGZvciBhIHBhcnRpY3VsYXIgSVAgYWRkcmVzcyBv ZiB0aGUgc2VydmVyLgorICAgICA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+ IHNlcnZlciBjb25maWd1cmF0aW9uCisgICAgIGlzIG91dCBvZiBzY29wZSBvZiB0aGlzIHR1dG9y aWFsLCBidXQgeW91IGNhbiBsZWFybiBtb3JlIGluCisgICAgIDx4cmVmIGxpbmtlbmQ9ImNvbmZp Zy1zZXR0aW5nIi8+LiAKKyAgICA8L3BhcmE+CisKKyAgICA8cGFyYT4KKyAgICAgRm9yIGRldGFp bHMgYWJvdXQgdGhlIGF2YWlsYWJsZSBjb25uZWN0aW9uIHR5cGVzIGFuZCBhdXRoZW50aWNhdGlv bgorICAgICBtZXRob2RzLCBzZWUgPHhyZWYgbGlua2VuZD0iY2xpZW50LWF1dGhlbnRpY2F0aW9u Ii8+LgorICAgIDwvcGFyYT4KKyAgIDwvc2VjdDI+CisKKyAgPHNlY3QyIGlkPSJ0dXRvcmlhbC10 cm91Ymxlc2hvb3RpbmciPgorICAgPHRpdGxlPlRyb3VibGVzaG9vdGluZzwvdGl0bGU+CisKKyAg IDxwYXJhPgorICAgIElmIHRoZSBzeXN0ZW0gaGFzIG5vdCBiZWVuIHNldCB1cCBwcm9wZXJseSwg eW91IG1heSBlbmNvdW50ZXIKKyAgICBhbiBlcnJvciB3aGVuIHRyeWluZyB0byBhY2Nlc3MgdGhl IHNlcnZlci4gVGhpcyBzZWN0aW9uIGxpc3RzIHRoZQorICAgIG1vc3QgY29tbW9uIGVycm9yIG1l c3NhZ2VzIHlvdSBjYW4gc2VlIHdoZW4gc3RhcnRpbmcgYSBjbGllbnQgYXBwbGljYXRpb24uCisg ICAgRWFjaCBlcnJvciBtZXNzYWdlIHN0YXJ0cyB3aXRoIHRoZSBhcHBsaWNhdGlvbiBuYW1lIHRo YXQgcHJvZHVjZWQgaXQsIHN1Y2gKKyAgICBhcyA8YXBwbGljYXRpb24+Y3JlYXRlZGI8L2FwcGxp Y2F0aW9uPiBvciA8YXBwbGljYXRpb24+cHNxbDwvYXBwbGljYXRpb24+LgorICAgIEZvciBlcnJv cnMgdGhhdCBhcmUgc2ltaWxhciBmb3IgYWxsIGNsaWVudHMsIHRoZSBhcHBsaWNhdGlvbiBuYW1l IGlzCisgICAgcmVwbGFjZWQgd2l0aCB0aGUgPHJlcGxhY2VhYmxlPmNsaWVudC1hcHA8L3JlcGxh Y2VhYmxlPiBwbGFjZWhvbGRlci4KKyAgIDwvcGFyYT4KKworICAgPHZhcmlhYmxlbGlzdD4KKyAg ICA8dmFybGlzdGVudHJ5PgorICAgICA8dGVybT4KKyAgICAgIDxsaXRlcmFsPjxyZXBsYWNlYWJs ZT5jbGllbnQtYXBwPC9yZXBsYWNlYWJsZT46IGNvbW1hbmQgbm90IGZvdW5kPC9saXRlcmFsPgor ICAgICA8L3Rlcm0+CisgICAgIDxsaXN0aXRlbT4KKyAgICAgIDxwYXJhPgorICAgICAgIDxwcm9k dWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gaXMgbm90IGluc3RhbGxlZCBvbiB5b3Vy IHN5c3RlbSwKKyAgICAgICBvciB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBpcyBub3QgaW5j bHVkZWQgaW50byA8ZW52YXI+UEFUSDwvZW52YXI+LgorICAgICAgIElmIHRoZSBzZXJ2ZXIgaXMg cnVubmluZywgdHJ5IGNhbGxpbmcgdGhlIGNvbW1hbmQgd2l0aCBhbiBhYnNvbHV0ZSBwYXRoLAor ICAgICAgIGZvciBleGFtcGxlOgorPHNjcmVlbj4KKzxwcm9tcHQ+JDwvcHJvbXB0PiA8dXNlcmlu cHV0PjxyZXBsYWNlYWJsZT5pbnN0YWxsX2RpcjwvcmVwbGFjZWFibGU+L2NyZWF0ZXVzZXIgam9l PC91c2VyaW5wdXQ+Cis8L3NjcmVlbj4KKyA8L3BhcmE+CisgICAgIDwvbGlzdGl0ZW0+CisgICAg PC92YXJsaXN0ZW50cnk+CisKKyAgICA8dmFybGlzdGVudHJ5PgorICAgICA8dGVybT4KKyAgICAg IDxsaXRlcmFsPgorICAgICAgIDxyZXBsYWNlYWJsZT5jbGllbnQtYXBwPC9yZXBsYWNlYWJsZT46 IGNvdWxkIG5vdCBjb25uZWN0IHRvIGRhdGFiYXNlIHBvc3RncmVzOgorICAgICAgIGNvdWxkIG5v dCBjb25uZWN0IHRvIHNlcnZlcjogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQorICAgICAgIElz IHRoZSBzZXJ2ZXIgcnVubmluZyBsb2NhbGx5IGFuZCBhY2NlcHRpbmcKKyAgICAgICBjb25uZWN0 aW9ucyBvbiBVbml4IGRvbWFpbiBzb2NrZXQgIi90bXAvLnMuUEdTUUwuNTQzMiI/CisgICAgICA8 L2xpdGVyYWw+CisgICAgIDwvdGVybT4KKyAgICAgPGxpc3RpdGVtPgorICAgICAgPHBhcmE+Cisg ICAgICAgVGhlIGNsaWVudCBhcHBsaWNhdGlvbiBjYW5ub3QgZXN0YWJsaXNoIGEgVW5peC1kb21h aW4gc29ja2V0CisgICAgICAgY29ubmVjdGlvbiB0byBhIGxvY2FsIHNlcnZlci4gQ2hlY2sgdGhh dCB0aGUgc2VydmVyIGlzIHN0YXJ0ZWQuCisgICAgICAgSWYgeW91IGhhdmUgYnVpbHQgPHByb2R1 Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiBmcm9tIHNvdXJjZSBjb2RlCisgICAgICAg d2l0aCBhIG5vbi1kZWZhdWx0IHBvcnQsIHNwZWNpZnkgdGhpcyBwb3J0IGluIHRoZSA8bGl0ZXJh bD4tcDwvbGl0ZXJhbD4KKyAgICAgICBvcHRpb24uCisgICAgICA8L3BhcmE+CisgICAgIDwvbGlz dGl0ZW0+CisgICAgPC92YXJsaXN0ZW50cnk+CisKKyAgICA8dmFybGlzdGVudHJ5PgorICAgICA8 dGVybT4KKyAgICAgIDxsaXRlcmFsPgorICAgICAgIDxyZXBsYWNlYWJsZT5jbGllbnQtYXBwPC9y ZXBsYWNlYWJsZT46IEZBVEFMOiAgUGVlciBhdXRoZW50aWNhdGlvbiBmYWlsZWQgZm9yIHVzZXIg IjxyZXBsYWNlYWJsZT5qb2U8L3JlcGxhY2VhYmxlPiIKKyAgICAgIDwvbGl0ZXJhbD4KKyAgICAg PC90ZXJtPgogICAgICA8bGlzdGl0ZW0+CiAgICAgICA8cGFyYT4KLSAgICAgICBBIHNlcnZlciBw cm9jZXNzLCB3aGljaCBtYW5hZ2VzIHRoZSBkYXRhYmFzZSBmaWxlcywgYWNjZXB0cwotICAgICAg IGNvbm5lY3Rpb25zIHRvIHRoZSBkYXRhYmFzZSBmcm9tIGNsaWVudCBhcHBsaWNhdGlvbnMsIGFu ZAotICAgICAgIHBlcmZvcm1zIGRhdGFiYXNlIGFjdGlvbnMgb24gYmVoYWxmIG9mIHRoZSBjbGll bnRzLiAgVGhlCi0gICAgICAgZGF0YWJhc2Ugc2VydmVyIHByb2dyYW0gaXMgY2FsbGVkCi0gICAg ICAgPGZpbGVuYW1lPnBvc3RncmVzPC9maWxlbmFtZT4uCi0gICAgICAgPGluZGV4dGVybT48cHJp bWFyeT5wb3N0Z3JlczwvcHJpbWFyeT48L2luZGV4dGVybT4KKyAgICAgICBUaGUgY2xpZW50IHRy aWVzIHRvIGNvbm5lY3QgdG8gdGhlIHNlcnZlciBhcyBkYXRhYmFzZSB1c2VyCisgICAgICAgPGxp dGVyYWw+am9lPC9saXRlcmFsPiB1c2luZyBwZWVyIGF1dGhlbnRpY2F0aW9uLCBidXQgdGhlIGN1 cnJlbnQgT1MKKyAgICAgICB1c2VyIGlzIGRpZmZlcmVudC4gTG9nIGluIGFzIHRoZSBjb3JyZXNw b25kaW5nIE9TIHVzZXIgYW5kIHRyeSBhZ2Fpbiwgb3IKKyAgICAgICBzcGVjaWZ5IG90aGVyIGNv bm5lY3Rpb24gb3B0aW9ucyBmb3IgYSBkaWZmZXJlbnQgYXV0aGVudGljYXRpb24gbWV0aG9kLgog ICAgICAgPC9wYXJhPgogICAgICA8L2xpc3RpdGVtPgorICAgIDwvdmFybGlzdGVudHJ5PgorCisg ICAgPHZhcmxpc3RlbnRyeT4KKyAgICAgPHRlcm0+CisgICAgICA8bGl0ZXJhbD4KKyAgICAgICA8 cmVwbGFjZWFibGU+Y2xpZW50LWFwcDwvcmVwbGFjZWFibGU+OiBjb3VsZCBub3QgY29ubmVjdCB0 byBkYXRhYmFzZSBwb3N0Z3JlczoKKyAgICAgICBGQVRBTDogIHJvbGUgIjxyZXBsYWNlYWJsZT5q b2U8L3JlcGxhY2VhYmxlPiIgZG9lcyBub3QgZXhpc3QKKyAgICAgIDwvbGl0ZXJhbD4KKyAgICAg PC90ZXJtPgorICAgICA8bGlzdGl0ZW0+CisgICAgICA8cGFyYT4KKyAgICAgICA8cHJvZHVjdG5h bWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+IGNhbm5vdCBmaW5kIHRoZQorICAgICAgIDxyZXBs YWNlYWJsZT5qb2U8L3JlcGxhY2VhYmxlPiBkYXRhYmFzZSB1c2VyIGZvciBvbmUgb2YgdGhlCisg ICAgICAgZm9sbG93aW5nIHJlYXNvbnM6CisgICAgICA8L3BhcmE+CisgICAgICA8aXRlbWl6ZWRs aXN0PgorICAgICAgIDxsaXN0aXRlbT4KKyAgICAgICAgPHBhcmE+CisgICAgICAgICBQZWVyIGF1 dGhlbnRpY2F0aW9uIGlzIGF0dGVtcHRlZCwgYnV0IHRoZSBkYXRhYmFzZSB1c2VyIG5hbWUgaXMK KyAgICAgICAgIGRpZmZlcmVudCBmcm9tIHlvdXIgb3BlcmF0aW5nIHN5c3RlbSB1c2VyIG5hbWUu IExvZyBpbiBhcyB0aGUKKyAgICAgICAgIDxyZXBsYWNlYWJsZT5qb2U8L3JlcGxhY2VhYmxlPiBP UyB1c2VyIGFuZCB0cnkgYWdhaW4sIG9yIHNwZWNpZnkKKyAgICAgICAgIG90aGVyIGNvbm5lY3Rp b24gb3B0aW9ucyB0byB1c2UgYSBkaWZmZXJlbnQgYXV0aGVudGljYXRpb24gbWV0aG9kLgorICAg ICAgICA8L3BhcmE+CisgICAgICAgPC9saXN0aXRlbT4KKyAgICAgICA8bGlzdGl0ZW0+CisgICAg ICAgIDxwYXJhPgorICAgICAgICAgRGF0YWJhc2UgdXNlciA8cmVwbGFjZWFibGU+am9lPC9yZXBs YWNlYWJsZT4gaGFzIG5vdCBiZWVuIGNyZWF0ZWQuCisgICAgICAgICBZb3UgbmVlZCB0byBsb2cg aW4gYXMgdGhlIE9TIHVzZXIgdW5kZXIgd2hpY2gKKyAgICAgICAgIDxwcm9kdWN0bmFtZT5Qb3N0 Z3JlU1FMPC9wcm9kdWN0bmFtZT4gd2FzIGluc3RhbGxlZCAodXN1YWxseQorICAgICAgICAgPGxp dGVyYWw+cG9zdGdyZXM8L2xpdGVyYWw+KSB0byBjcmVhdGUgdGhlIGZpcnN0IGRhdGFiYXNlIHVz ZXIuCisgICAgICAgICBTZWUgPHhyZWYgbGlua2VuZD0idXNlci1tYW5hZyIvPiBmb3IgaGVscCBv biBjcmVhdGluZyBhY2NvdW50cy4KKyAgICAgICAgPC9wYXJhPgorICAgICAgIDwvbGlzdGl0ZW0+ CisgICAgICA8L2l0ZW1pemVkbGlzdD4KKyAgICAgPC9saXN0aXRlbT4KKyAgICA8L3Zhcmxpc3Rl bnRyeT4KIAorICAgIDx2YXJsaXN0ZW50cnk+CisgICAgIDx0ZXJtPgorICAgICAgPGxpdGVyYWw+ cHNxbDogRkFUQUw6ICBkYXRhYmFzZSAgIjxyZXBsYWNlYWJsZT5qb2U8L3JlcGxhY2VhYmxlPiIg IGRvZXMgbm90IGV4aXN0PC9saXRlcmFsPgorICAgICA8L3Rlcm0+CiAgICAgIDxsaXN0aXRlbT4K ICAgICAgIDxwYXJhPgotICAgICAgIFRoZSB1c2VyJ3MgY2xpZW50IChmcm9udGVuZCkgYXBwbGlj YXRpb24gdGhhdCB3YW50cyB0byBwZXJmb3JtCi0gICAgICAgZGF0YWJhc2Ugb3BlcmF0aW9ucy4g IENsaWVudCBhcHBsaWNhdGlvbnMgY2FuIGJlIHZlcnkgZGl2ZXJzZQotICAgICAgIGluIG5hdHVy ZTogIGEgY2xpZW50IGNvdWxkIGJlIGEgdGV4dC1vcmllbnRlZCB0b29sLCBhIGdyYXBoaWNhbAot ICAgICAgIGFwcGxpY2F0aW9uLCBhIHdlYiBzZXJ2ZXIgdGhhdCBhY2Nlc3NlcyB0aGUgZGF0YWJh c2UgdG8KLSAgICAgICBkaXNwbGF5IHdlYiBwYWdlcywgb3IgYSBzcGVjaWFsaXplZCBkYXRhYmFz ZSBtYWludGVuYW5jZSB0b29sLgotICAgICAgIFNvbWUgY2xpZW50IGFwcGxpY2F0aW9ucyBhcmUg c3VwcGxpZWQgd2l0aCB0aGUKLSAgICAgICA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVj dG5hbWU+IGRpc3RyaWJ1dGlvbjsgbW9zdCBhcmUKLSAgICAgICBkZXZlbG9wZWQgYnkgdXNlcnMu CisgICAgICAgUGVlciBhdXRoZW50aWNhdGlvbiBpcyBhdHRlbXB0ZWQgb24gYmVoYWxmIG9mIHRo ZQorICAgICAgIDxyZXBsYWNlYWJsZT5qb2U8L3JlcGxhY2VhYmxlPiB1c2VyLCBidXQgdGhlcmUg aXMgbm8gZGF0YWJhc2Ugd2l0aCB0aGUKKyAgICAgICBzYW1lIG5hbWUuIFJ1biA8eHJlZiBsaW5r ZW5kPSJhcHAtY3JlYXRlZGIiLz4gdG8gY3JlYXRlIHRoaXMgZGF0YWJhc2UsCisgICAgICAgb3Ig dXNlIHRoZSA8b3B0aW9uPi1kPC9vcHRpb24+IG9wdGlvbiB0byBzcGVjaWZ5IGEgZGlmZmVyZW50 IGRhdGFiYXNlCisgICAgICAgdG8gY29ubmVjdCB0by4KICAgICAgIDwvcGFyYT4KICAgICAgPC9s aXN0aXRlbT4KKyAgICA8L3Zhcmxpc3RlbnRyeT4KIAotICAgIDwvaXRlbWl6ZWRsaXN0PgotICAg PC9wYXJhPgorICAgPC92YXJpYWJsZWxpc3Q+CiAKLSAgIDxwYXJhPgotICAgIEFzIGlzIHR5cGlj YWwgb2YgY2xpZW50L3NlcnZlciBhcHBsaWNhdGlvbnMsIHRoZSBjbGllbnQgYW5kIHRoZQotICAg IHNlcnZlciBjYW4gYmUgb24gZGlmZmVyZW50IGhvc3RzLiAgSW4gdGhhdCBjYXNlIHRoZXkgY29t bXVuaWNhdGUKLSAgICBvdmVyIGEgVENQL0lQIG5ldHdvcmsgY29ubmVjdGlvbi4gIFlvdSBzaG91 bGQga2VlcCB0aGlzIGluIG1pbmQsCi0gICAgYmVjYXVzZSB0aGUgZmlsZXMgdGhhdCBjYW4gYmUg YWNjZXNzZWQgb24gYSBjbGllbnQgbWFjaGluZSBtaWdodAotICAgIG5vdCBiZSBhY2Nlc3NpYmxl IChvciBtaWdodCBvbmx5IGJlIGFjY2Vzc2libGUgdXNpbmcgYSBkaWZmZXJlbnQKLSAgICBmaWxl IG5hbWUpIG9uIHRoZSBkYXRhYmFzZSBzZXJ2ZXIgbWFjaGluZS4KLSAgIDwvcGFyYT4KKyAgPC9z ZWN0Mj4KIAotICAgPHBhcmE+Ci0gICAgVGhlIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9k dWN0bmFtZT4gc2VydmVyIGNhbiBoYW5kbGUKLSAgICBtdWx0aXBsZSBjb25jdXJyZW50IGNvbm5l Y3Rpb25zIGZyb20gY2xpZW50cy4gIFRvIGFjaGlldmUgdGhpcyBpdAotICAgIHN0YXJ0cyAoPHF1 b3RlPmZvcmtzPC9xdW90ZT4pIGEgbmV3IHByb2Nlc3MgZm9yIGVhY2ggY29ubmVjdGlvbi4KLSAg ICBGcm9tIHRoYXQgcG9pbnQgb24sIHRoZSBjbGllbnQgYW5kIHRoZSBuZXcgc2VydmVyIHByb2Nl c3MKLSAgICBjb21tdW5pY2F0ZSB3aXRob3V0IGludGVydmVudGlvbiBieSB0aGUgb3JpZ2luYWwK LSAgICA8ZmlsZW5hbWU+cG9zdGdyZXM8L2ZpbGVuYW1lPiBwcm9jZXNzLiAgVGh1cywgdGhlCi0g ICAgbWFzdGVyIHNlcnZlciBwcm9jZXNzIGlzIGFsd2F5cyBydW5uaW5nLCB3YWl0aW5nIGZvcgot ICAgIGNsaWVudCBjb25uZWN0aW9ucywgd2hlcmVhcyBjbGllbnQgYW5kIGFzc29jaWF0ZWQgc2Vy dmVyIHByb2Nlc3NlcwotICAgIGNvbWUgYW5kIGdvLiAgKEFsbCBvZiB0aGlzIGlzIG9mIGNvdXJz ZSBpbnZpc2libGUgdG8gdGhlIHVzZXIuICBXZQotICAgIG9ubHkgbWVudGlvbiBpdCBoZXJlIGZv ciBjb21wbGV0ZW5lc3MuKQotICAgPC9wYXJhPgogICA8L3NlY3QxPgogCiAKQEAgLTEzNCwyMzAg KzY5NSwxNDkgQEAKICAgIDwvaW5kZXh0ZXJtPgogCiAgICA8cGFyYT4KLSAgICBUaGUgZmlyc3Qg dGVzdCB0byBzZWUgd2hldGhlciB5b3UgY2FuIGFjY2VzcyB0aGUgZGF0YWJhc2Ugc2VydmVyCi0g ICAgaXMgdG8gdHJ5IHRvIGNyZWF0ZSBhIGRhdGFiYXNlLiAgQSBydW5uaW5nCi0gICAgPHByb2R1 Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiBzZXJ2ZXIgY2FuIG1hbmFnZSBtYW55Ci0g ICAgZGF0YWJhc2VzLiAgVHlwaWNhbGx5LCBhIHNlcGFyYXRlIGRhdGFiYXNlIGlzIHVzZWQgZm9y IGVhY2gKLSAgICBwcm9qZWN0IG9yIGZvciBlYWNoIHVzZXIuCisgICAgQSBydW5uaW5nIDxwcm9k dWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gc2VydmVyIGNhbiBtYW5hZ2UKKyAgICBt dWx0aXBsZSBkYXRhYmFzZXMuIFR5cGljYWxseSwgYSBzZXBhcmF0ZSBkYXRhYmFzZSBpcyB1c2Vk IGZvciBlYWNoCisgICAgcHJvamVjdCBvciBmb3IgZWFjaCB1c2VyLiBUaGUgZmlyc3QgZGF0YWJh c2UgaXMgY3JlYXRlZCBhdAorICAgIGNsdXN0ZXIgaW5pdGlhbGl6YXRpb24sIGFuZCBpdHMgbmFt ZSBhbHdheXMgY29pbmNpZGVzIHdpdGggdGhlCisgICAgbmFtZSBvZiB0aGUgaW5pdGlhbCB1c2Vy LgogICAgPC9wYXJhPgogCiAgICA8cGFyYT4KLSAgICBQb3NzaWJseSwgeW91ciBzaXRlIGFkbWlu aXN0cmF0b3IgaGFzIGFscmVhZHkgY3JlYXRlZCBhIGRhdGFiYXNlCi0gICAgZm9yIHlvdXIgdXNl LiAgSW4gdGhhdCBjYXNlIHlvdSBjYW4gb21pdCB0aGlzIHN0ZXAgYW5kIHNraXAgYWhlYWQKLSAg ICB0byB0aGUgbmV4dCBzZWN0aW9uLgotICAgPC9wYXJhPgotCi0gICA8cGFyYT4KLSAgICBUbyBj cmVhdGUgYSBuZXcgZGF0YWJhc2UsIGluIHRoaXMgZXhhbXBsZSBuYW1lZAotICAgIDxsaXRlcmFs Pm15ZGI8L2xpdGVyYWw+LCB5b3UgdXNlIHRoZSBmb2xsb3dpbmcgY29tbWFuZDoKKyAgICBGb3Ig dGhlIHB1cnBvc2VzIG9mIHRoaXMgdHV0b3JpYWwsIGxldCdzIGNyZWF0ZSBhIG5ldyBkYXRhYmFz ZSBjYWxsZWQKKyAgICA8c3RydWN0bmFtZT5teWRiPC9zdHJ1Y3RuYW1lPiBvbiBiZWhhbGYgb2Yg dGhlIDxsaXRlcmFsPnBvc3RncmVzPC9saXRlcmFsPgorICAgIHVzZXI6CiA8c2NyZWVuPgorPHBy b21wdD4kPC9wcm9tcHQ+IDx1c2VyaW5wdXQ+c3VkbyBzdSBwb3N0Z3JlczwvdXNlcmlucHV0Pgog PHByb21wdD4kPC9wcm9tcHQ+IDx1c2VyaW5wdXQ+Y3JlYXRlZGIgbXlkYjwvdXNlcmlucHV0Pgog PC9zY3JlZW4+Ci0gICAgSWYgdGhpcyBwcm9kdWNlcyBubyByZXNwb25zZSB0aGVuIHRoaXMgc3Rl cCB3YXMgc3VjY2Vzc2Z1bCBhbmQgeW91IGNhbiBza2lwIG92ZXIgdGhlCi0gICAgcmVtYWluZGVy IG9mIHRoaXMgc2VjdGlvbi4KKyAgICBUaGUgZGF0YWJhc2UgdXNlciB0aGF0IHJ1bnMgdGhpcyBj b21tYW5kIGJlY29tZXMgdGhlIG93bmVyIG9mIHRoZQorICAgIG5ld2x5IGNyZWF0ZWQgZGF0YWJh c2UgYW5kIGNhbiBsYXRlciBwZXJmb3JtIGFueSBvcGVyYXRpb25zIHdpdGggaXQuCiAgICA8L3Bh cmE+CiAKICAgIDxwYXJhPgotICAgIElmIHlvdSBzZWUgYSBtZXNzYWdlIHNpbWlsYXIgdG86Ci08 c2NyZWVuPgotY3JlYXRlZGI6IGNvbW1hbmQgbm90IGZvdW5kCi08L3NjcmVlbj4KLSAgICB0aGVu IDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gd2FzIG5vdCBpbnN0YWxsZWQg cHJvcGVybHkuICBFaXRoZXIgaXQgd2FzIG5vdAotICAgIGluc3RhbGxlZCBhdCBhbGwgb3IgeW91 ciBzaGVsbCdzIHNlYXJjaCBwYXRoIHdhcyBub3Qgc2V0IHRvIGluY2x1ZGUgaXQuCi0gICAgVHJ5 IGNhbGxpbmcgdGhlIGNvbW1hbmQgd2l0aCBhbiBhYnNvbHV0ZSBwYXRoIGluc3RlYWQ6Ci08c2Ny ZWVuPgotPHByb21wdD4kPC9wcm9tcHQ+IDx1c2VyaW5wdXQ+L3Vzci9sb2NhbC9wZ3NxbC9iaW4v Y3JlYXRlZGIgbXlkYjwvdXNlcmlucHV0PgotPC9zY3JlZW4+Ci0gICAgVGhlIHBhdGggYXQgeW91 ciBzaXRlIG1pZ2h0IGJlIGRpZmZlcmVudC4gIENvbnRhY3QgeW91ciBzaXRlCi0gICAgYWRtaW5p c3RyYXRvciBvciBjaGVjayB0aGUgaW5zdGFsbGF0aW9uIGluc3RydWN0aW9ucyB0bwotICAgIGNv cnJlY3QgdGhlIHNpdHVhdGlvbi4KLSAgIDwvcGFyYT4KLQotICAgPHBhcmE+Ci0gICAgQW5vdGhl ciByZXNwb25zZSBjb3VsZCBiZSB0aGlzOgotPHNjcmVlbj4KLWNyZWF0ZWRiOiBjb3VsZCBub3Qg Y29ubmVjdCB0byBkYXRhYmFzZSBwb3N0Z3JlczogY291bGQgbm90IGNvbm5lY3QgdG8gc2VydmVy OiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5Ci0gICAgICAgIElzIHRoZSBzZXJ2ZXIgcnVubmlu ZyBsb2NhbGx5IGFuZCBhY2NlcHRpbmcKLSAgICAgICAgY29ubmVjdGlvbnMgb24gVW5peCBkb21h aW4gc29ja2V0ICIvdG1wLy5zLlBHU1FMLjU0MzIiPwotPC9zY3JlZW4+Ci0gICAgVGhpcyBtZWFu cyB0aGF0IHRoZSBzZXJ2ZXIgd2FzIG5vdCBzdGFydGVkLCBvciBpdCB3YXMgbm90IHN0YXJ0ZWQK LSAgICB3aGVyZSA8Y29tbWFuZD5jcmVhdGVkYjwvY29tbWFuZD4gZXhwZWN0ZWQgaXQuICBBZ2Fp biwgY2hlY2sgdGhlCi0gICAgaW5zdGFsbGF0aW9uIGluc3RydWN0aW9ucyBvciBjb25zdWx0IHRo ZSBhZG1pbmlzdHJhdG9yLgorICAgIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFt ZT4gYWxsb3dzIHlvdSB0byBjcmVhdGUgYW55CisgICAgbnVtYmVyIG9mIGRhdGFiYXNlcyBmb3Ig dGhlIHNlcnZlciBpbnN0YW5jZS4gRGF0YWJhc2UgbmFtZXMgbXVzdCBoYXZlIGFuCisgICAgYWxw aGFiZXRpYyBmaXJzdCBjaGFyYWN0ZXIgYW5kIGFyZSBsaW1pdGVkIHRvIDYzIGJ5dGVzIGluCisg ICAgbGVuZ3RoLiBJdCBtYXkgYmUgY29udmVuaWVudCB0byBoYXZlIGEgZGF0YWJhc2Ugd2l0aCB0 aGUgc2FtZQorICAgIG5hbWUgYXMgeW91ciBjdXJyZW50IHVzZXIgbmFtZS4gTWFueSB0b29scyBh c3N1bWUgdGhhdCBkYXRhYmFzZQorICAgIG5hbWUgYXMgdGhlIGRlZmF1bHQsIHNvIHlvdSBjYW4g b21pdCB0aGUgZGF0YWJhc2UgbmFtZSB3aGVuCisgICAgY29ubmVjdGluZyB0byB0aGUgc2VydmVy IG9yIGNyZWF0aW5nIGEgZGF0YWJhc2UuCiAgICA8L3BhcmE+CiAKICAgIDxwYXJhPgotICAgIEFu b3RoZXIgcmVzcG9uc2UgY291bGQgYmUgdGhpczoKKyAgICBMZXQncyBzZWUgYW5vdGhlciBleGFt cGxlLiBJZiB5b3UgaGF2ZSBjcmVhdGVkIGEgZGF0YWJhc2UgdXNlcgorICAgIDxsaXRlcmFsPmpv ZTwvbGl0ZXJhbD4gYXMgZXhwbGFpbmVkIGluIHRoZSBwcmV2aW91cyBzZWN0aW9uLCB5b3UgY2Fu CisgICAgbG9nIGluIGFzIHRoZSA8bGl0ZXJhbD5qb2U8L2xpdGVyYWw+IE9TIHVzZXIgYW5kIGNy ZWF0ZSB0aGUKKyAgICBjb3JyZXNwb25kaW5nIGRhdGFiYXNlLCBhcyBmb2xsb3dzOgogPHNjcmVl bj4KLWNyZWF0ZWRiOiBjb3VsZCBub3QgY29ubmVjdCB0byBkYXRhYmFzZSBwb3N0Z3JlczogRkFU QUw6ICByb2xlICJqb2UiIGRvZXMgbm90IGV4aXN0Cis8cHJvbXB0PiQ8L3Byb21wdD4gPHVzZXJp bnB1dD5jcmVhdGVkYjwvdXNlcmlucHV0PgogPC9zY3JlZW4+Ci0gICAgd2hlcmUgeW91ciBvd24g bG9naW4gbmFtZSBpcyBtZW50aW9uZWQuICBUaGlzIHdpbGwgaGFwcGVuIGlmIHRoZQotICAgIGFk bWluaXN0cmF0b3IgaGFzIG5vdCBjcmVhdGVkIGEgPHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8L3By b2R1Y3RuYW1lPiB1c2VyIGFjY291bnQKLSAgICBmb3IgeW91LiAgKDxwcm9kdWN0bmFtZT5Qb3N0 Z3JlU1FMPC9wcm9kdWN0bmFtZT4gdXNlciBhY2NvdW50cyBhcmUgZGlzdGluY3QgZnJvbQotICAg IG9wZXJhdGluZyBzeXN0ZW0gdXNlciBhY2NvdW50cy4pICBJZiB5b3UgYXJlIHRoZSBhZG1pbmlz dHJhdG9yLCBzZWUKLSAgICA8eHJlZiBsaW5rZW5kPSJ1c2VyLW1hbmFnIi8+IGZvciBoZWxwIGNy ZWF0aW5nIGFjY291bnRzLiAgWW91IHdpbGwgbmVlZCB0bwotICAgIGJlY29tZSB0aGUgb3BlcmF0 aW5nIHN5c3RlbSB1c2VyIHVuZGVyIHdoaWNoIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9k dWN0bmFtZT4KLSAgICB3YXMgaW5zdGFsbGVkICh1c3VhbGx5IDxsaXRlcmFsPnBvc3RncmVzPC9s aXRlcmFsPikgdG8gY3JlYXRlIHRoZSBmaXJzdCB1c2VyCi0gICAgYWNjb3VudC4gIEl0IGNvdWxk IGFsc28gYmUgdGhhdCB5b3Ugd2VyZSBhc3NpZ25lZCBhCi0gICAgPHByb2R1Y3RuYW1lPlBvc3Rn cmVTUUw8L3Byb2R1Y3RuYW1lPiB1c2VyIG5hbWUgdGhhdCBpcyBkaWZmZXJlbnQgZnJvbSB5b3Vy Ci0gICAgb3BlcmF0aW5nIHN5c3RlbSB1c2VyIG5hbWU7IGluIHRoYXQgY2FzZSB5b3UgbmVlZCB0 byB1c2UgdGhlIDxvcHRpb24+LVU8L29wdGlvbj4KLSAgICBzd2l0Y2ggb3Igc2V0IHRoZSA8ZW52 YXI+UEdVU0VSPC9lbnZhcj4gZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gc3BlY2lmeSB5b3VyCi0g ICAgPHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiB1c2VyIG5hbWUuCisgICAg VGhlIDxhcHBsaWNhdGlvbj5jcmVhdGVkYjwvYXBwbGljYXRpb24+IHV0aWxpdHkgdXNlcyBwZWVy CisgICAgYXV0aGVudGljYXRpb24gdG8gY29ubmVjdCB0byB0aGUgc2VydmVyIGFzIHRoZSA8bGl0 ZXJhbD5qb2U8L2xpdGVyYWw+IHVzZXIKKyAgICBhbmQgY3JlYXRlcyB0aGUgPGxpdGVyYWw+am9l PC9saXRlcmFsPiBkYXRhYmFzZSBvd25lZCBieSB0aGUKKyAgICA8bGl0ZXJhbD5qb2U8L2xpdGVy YWw+IGRhdGFiYXNlIHVzZXIsIGFsdGhvdWdoIHlvdSBoYXZlIG5vdCBzcGVjaWZpZWQgdGhlCisg ICAgZGF0YWJhc2UgbmFtZSBleHBsaWNpdGx5LgogICAgPC9wYXJhPgogCiAgICA8cGFyYT4KLSAg ICBJZiB5b3UgaGF2ZSBhIHVzZXIgYWNjb3VudCBidXQgaXQgZG9lcyBub3QgaGF2ZSB0aGUgcHJp dmlsZWdlcyByZXF1aXJlZCB0bwotICAgIGNyZWF0ZSBhIGRhdGFiYXNlLCB5b3Ugd2lsbCBzZWUg dGhlIGZvbGxvd2luZzoKKyAgICBJZiB0aGUgZGF0YWJhc2UgdXNlciBkb2VzIG5vdCBoYXZlIHRo ZSBwcml2aWxlZ2VzIHJlcXVpcmVkIHRvCisgICAgY3JlYXRlIGEgZGF0YWJhc2UsIHlvdSBjYW4g c2VlIHRoZSBmb2xsb3dpbmcgZXJyb3IgbWVzc2FnZToKIDxzY3JlZW4+CiBjcmVhdGVkYjogZGF0 YWJhc2UgY3JlYXRpb24gZmFpbGVkOiBFUlJPUjogIHBlcm1pc3Npb24gZGVuaWVkIHRvIGNyZWF0 ZSBkYXRhYmFzZQogPC9zY3JlZW4+Ci0gICAgTm90IGV2ZXJ5IHVzZXIgaGFzIGF1dGhvcml6YXRp b24gdG8gY3JlYXRlIG5ldyBkYXRhYmFzZXMuICBJZgotICAgIDxwcm9kdWN0bmFtZT5Qb3N0Z3Jl U1FMPC9wcm9kdWN0bmFtZT4gcmVmdXNlcyB0byBjcmVhdGUgZGF0YWJhc2VzCi0gICAgZm9yIHlv dSB0aGVuIHRoZSBzaXRlIGFkbWluaXN0cmF0b3IgbmVlZHMgdG8gZ3JhbnQgeW91IHBlcm1pc3Np b24KLSAgICB0byBjcmVhdGUgZGF0YWJhc2VzLiAgQ29uc3VsdCB5b3VyIHNpdGUgYWRtaW5pc3Ry YXRvciBpZiB0aGlzCi0gICAgb2NjdXJzLiAgSWYgeW91IGluc3RhbGxlZCA8cHJvZHVjdG5hbWU+ UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+Ci0gICAgeW91cnNlbGYgdGhlbiB5b3Ugc2hvdWxkIGxv ZyBpbiBmb3IgdGhlIHB1cnBvc2VzIG9mIHRoaXMgdHV0b3JpYWwKLSAgICB1bmRlciB0aGUgdXNl ciBhY2NvdW50IHRoYXQgeW91IHN0YXJ0ZWQgdGhlIHNlcnZlciBhcy4KLQotICAgIDxmb290bm90 ZT4KLSAgICAgPHBhcmE+Ci0gICAgICBBcyBhbiBleHBsYW5hdGlvbiBmb3Igd2h5IHRoaXMgd29y a3M6Ci0gICAgICA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+IHVzZXIgbmFt ZXMgYXJlIHNlcGFyYXRlCi0gICAgICBmcm9tIG9wZXJhdGluZyBzeXN0ZW0gdXNlciBhY2NvdW50 cy4gIFdoZW4geW91IGNvbm5lY3QgdG8gYQotICAgICAgZGF0YWJhc2UsIHlvdSBjYW4gY2hvb3Nl IHdoYXQKLSAgICAgIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gdXNlciBu YW1lIHRvIGNvbm5lY3QgYXM7Ci0gICAgICBpZiB5b3UgZG9uJ3QsIGl0IHdpbGwgZGVmYXVsdCB0 byB0aGUgc2FtZSBuYW1lIGFzIHlvdXIgY3VycmVudAotICAgICAgb3BlcmF0aW5nIHN5c3RlbSBh Y2NvdW50LiAgQXMgaXQgaGFwcGVucywgdGhlcmUgd2lsbCBhbHdheXMgYmUgYQotICAgICAgPHBy b2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiB1c2VyIGFjY291bnQgdGhhdCBoYXMg dGhlCi0gICAgICBzYW1lIG5hbWUgYXMgdGhlIG9wZXJhdGluZyBzeXN0ZW0gdXNlciB0aGF0IHN0 YXJ0ZWQgdGhlIHNlcnZlciwKLSAgICAgIGFuZCBpdCBhbHNvIGhhcHBlbnMgdGhhdCB0aGF0IHVz ZXIgYWx3YXlzIGhhcyBwZXJtaXNzaW9uIHRvCi0gICAgICBjcmVhdGUgZGF0YWJhc2VzLiAgSW5z dGVhZCBvZiBsb2dnaW5nIGluIGFzIHRoYXQgdXNlciB5b3UgY2FuCi0gICAgICBhbHNvIHNwZWNp ZnkgdGhlIDxvcHRpb24+LVU8L29wdGlvbj4gb3B0aW9uIGV2ZXJ5d2hlcmUgdG8gc2VsZWN0Ci0g ICAgICBhIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gdXNlciBuYW1lIHRv IGNvbm5lY3QgYXMuCi0gICAgIDwvcGFyYT4KLSAgICA8L2Zvb3Rub3RlPgorICAgIEl0IG1heSBo YXBwZW4gaWYgeW91IGhhdmUgcnVuIDx4cmVmIGxpbmtlbmQ9ImFwcC1jcmVhdGV1c2VyIi8+IHdp dGhvdXQgdGhlCisgICAgPGxpdGVyYWw+LS1jcmVhdGVkYjwvbGl0ZXJhbD4gb3B0aW9uIHdoZW4g Y3JlYXRpbmcgYSBuZXcgZGF0YWJhc2UgdXNlci4KKyAgICBZb3UgY2FuIGxhdGVyIGdyYW50IHRo ZSBkYXRhYmFzZSB1c2VyIHRoZSA8bGl0ZXJhbD5DUkVBVEVEQjwvbGl0ZXJhbD4KKyAgICBwcml2 aWxlZ2UgdXNpbmcgdGhlIDx4cmVmIGxpbmtlbmQ9InNxbC1hbHRlcnJvbGUiLz4gU1FMIGNvbW1h bmQuCisgICAgQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb250aW51ZSB1c2luZyB0aGUgaW5pdGlh bCB1c2VyLCB3aGljaCBpcyBhCisgICAgc3VwZXJ1c2VyIGFuZCBoZW5jZSBhbHdheXMgaGFzIHRo ZSByaWdodHMgdG8gY3JlYXRlIGRhdGFiYXNlcy4KICAgIDwvcGFyYT4KIAogICAgPHBhcmE+Ci0g ICAgWW91IGNhbiBhbHNvIGNyZWF0ZSBkYXRhYmFzZXMgd2l0aCBvdGhlciBuYW1lcy4KLSAgICA8 cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+IGFsbG93cyB5b3UgdG8gY3JlYXRl IGFueQotICAgIG51bWJlciBvZiBkYXRhYmFzZXMgYXQgYSBnaXZlbiBzaXRlLiAgRGF0YWJhc2Ug bmFtZXMgbXVzdCBoYXZlIGFuCi0gICAgYWxwaGFiZXRpYyBmaXJzdCBjaGFyYWN0ZXIgYW5kIGFy ZSBsaW1pdGVkIHRvIDYzIGJ5dGVzIGluCi0gICAgbGVuZ3RoLiAgQSBjb252ZW5pZW50IGNob2lj ZSBpcyB0byBjcmVhdGUgYSBkYXRhYmFzZSB3aXRoIHRoZSBzYW1lCi0gICAgbmFtZSBhcyB5b3Vy IGN1cnJlbnQgdXNlciBuYW1lLiAgTWFueSB0b29scyBhc3N1bWUgdGhhdCBkYXRhYmFzZQotICAg IG5hbWUgYXMgdGhlIGRlZmF1bHQsIHNvIGl0IGNhbiBzYXZlIHlvdSBzb21lIHR5cGluZy4gIFRv IGNyZWF0ZQotICAgIHRoYXQgZGF0YWJhc2UsIHNpbXBseSB0eXBlOgotPHNjcmVlbj4KLTxwcm9t cHQ+JDwvcHJvbXB0PiA8dXNlcmlucHV0PmNyZWF0ZWRiPC91c2VyaW5wdXQ+Ci08L3NjcmVlbj4K LSAgIDwvcGFyYT4KLQotICAgPHBhcmE+Ci0gICAgSWYgeW91IGRvIG5vdCB3YW50IHRvIHVzZSB5 b3VyIGRhdGFiYXNlIGFueW1vcmUgeW91IGNhbiByZW1vdmUgaXQuCi0gICAgRm9yIGV4YW1wbGUs IGlmIHlvdSBhcmUgdGhlIG93bmVyIChjcmVhdG9yKSBvZiB0aGUgZGF0YWJhc2UKLSAgICA8bGl0 ZXJhbD5teWRiPC9saXRlcmFsPiwgeW91IGNhbiBkZXN0cm95IGl0IHVzaW5nIHRoZSBmb2xsb3dp bmcKLSAgICBjb21tYW5kOgorICAgIElmIHlvdSBkbyBub3Qgd2FudCB0byB1c2UgeW91ciBkYXRh YmFzZSBhbnltb3JlLCB5b3UgY2FuIHJlbW92ZSBpdC4KKyAgICBGb3IgZXhhbXBsZSwgaWYgeW91 IGFyZSB0aGUgb3duZXIgb2YgdGhlIGRhdGFiYXNlCisgICAgPGxpdGVyYWw+am9lPC9saXRlcmFs PiwgeW91IGNhbiBkZXN0cm95IGl0IHVzaW5nIHRoZQorICAgIDxhcHBsaWNhdGlvbj5kcm9wZGI8 L2FwcGxpY2F0aW9uPiB1dGlsaXR5LCBhcyBmb2xsb3dzOgogPHNjcmVlbj4KLTxwcm9tcHQ+JDwv cHJvbXB0PiA8dXNlcmlucHV0PmRyb3BkYiBteWRiPC91c2VyaW5wdXQ+Cis8cHJvbXB0PiQ8L3By b21wdD4gPHVzZXJpbnB1dD5kcm9wZGIgam9lPC91c2VyaW5wdXQ+CiA8L3NjcmVlbj4KLSAgICAo Rm9yIHRoaXMgY29tbWFuZCwgdGhlIGRhdGFiYXNlIG5hbWUgZG9lcyBub3QgZGVmYXVsdCB0byB0 aGUgdXNlcgotICAgIGFjY291bnQgbmFtZS4gIFlvdSBhbHdheXMgbmVlZCB0byBzcGVjaWZ5IGl0 LikgIFRoaXMgYWN0aW9uCisgICAgRm9yIHRoaXMgY29tbWFuZCwgdGhlIGRhdGFiYXNlIG5hbWUg ZG9lcyBub3QgZGVmYXVsdCB0byB0aGUgdXNlcgorICAgIGFjY291bnQgbmFtZTsgeW91IGFsd2F5 cyBuZWVkIHRvIHNwZWNpZnkgaXQuICBUaGlzIGFjdGlvbgogICAgIHBoeXNpY2FsbHkgcmVtb3Zl cyBhbGwgZmlsZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBkYXRhYmFzZSBhbmQKLSAgICBjYW5ub3Qg YmUgdW5kb25lLCBzbyB0aGlzIHNob3VsZCBvbmx5IGJlIGRvbmUgd2l0aCBhIGdyZWF0IGRlYWwg b2YKLSAgICBmb3JldGhvdWdodC4KKyAgICBjYW5ub3QgYmUgdW5kb25lLCBzbyBiZSBjYXJlZnVs IHdoZW4gdXNpbmcgdGhpcyBjb21tYW5kIGluIHRoZSBmdXR1cmUuCiAgICA8L3BhcmE+CiAKICAg IDxwYXJhPgotICAgIE1vcmUgYWJvdXQgPGNvbW1hbmQ+Y3JlYXRlZGI8L2NvbW1hbmQ+IGFuZCA8 Y29tbWFuZD5kcm9wZGI8L2NvbW1hbmQ+IGNhbgotICAgIGJlIGZvdW5kIGluIDx4cmVmIGxpbmtl bmQ9ImFwcC1jcmVhdGVkYiIvPiBhbmQgPHhyZWYgbGlua2VuZD0iYXBwLWRyb3BkYiIvPgotICAg IHJlc3BlY3RpdmVseS4KKyAgICBUbyBsZWFybiBtb3JlIGFib3V0IDxjb21tYW5kPmNyZWF0ZWRi PC9jb21tYW5kPiBhbmQKKyAgICA8Y29tbWFuZD5kcm9wZGI8L2NvbW1hbmQ+IGNvbW1hbmRzLCBz ZWUgPHhyZWYgbGlua2VuZD0iYXBwLWNyZWF0ZWRiIi8+CisgICAgYW5kIDx4cmVmIGxpbmtlbmQ9 ImFwcC1kcm9wZGIiLz4sIHJlc3BlY3RpdmVseS4KICAgIDwvcGFyYT4KICAgPC9zZWN0MT4KIAog Ci0gIDxzZWN0MSBpZD0idHV0b3JpYWwtYWNjZXNzZGIiPgotICAgPHRpdGxlPkFjY2Vzc2luZyBh IERhdGFiYXNlPC90aXRsZT4KKyAgPHNlY3QxIGlkPSJ0dXRvcmlhbC1wc3FsIj4KKyAgIDx0aXRs ZT5Vc2luZyBwc3FsPC90aXRsZT4KIAotICAgPGluZGV4dGVybSB6b25lPSJ0dXRvcmlhbC1hY2Nl c3NkYiI+CisgICA8aW5kZXh0ZXJtIHpvbmU9InR1dG9yaWFsLXBzcWwiPgogICAgIDxwcmltYXJ5 PnBzcWw8L3ByaW1hcnk+CiAgICA8L2luZGV4dGVybT4KIAogICAgPHBhcmE+Ci0gICAgT25jZSB5 b3UgaGF2ZSBjcmVhdGVkIGEgZGF0YWJhc2UsIHlvdSBjYW4gYWNjZXNzIGl0IGJ5OgotCi0gICAg PGl0ZW1pemVkbGlzdCBzcGFjaW5nPSJjb21wYWN0IiBtYXJrPSJidWxsZXQiPgotICAgICA8bGlz dGl0ZW0+Ci0gICAgICA8cGFyYT4KLSAgICAgICBSdW5uaW5nIHRoZSA8cHJvZHVjdG5hbWU+UG9z dGdyZVNRTDwvcHJvZHVjdG5hbWU+IGludGVyYWN0aXZlCi0gICAgICAgdGVybWluYWwgcHJvZ3Jh bSwgY2FsbGVkIDxhcHBsaWNhdGlvbj48Zmlyc3R0ZXJtPnBzcWw8L2ZpcnN0dGVybT48L2FwcGxp Y2F0aW9uPiwgd2hpY2ggYWxsb3dzIHlvdQotICAgICAgIHRvIGludGVyYWN0aXZlbHkgZW50ZXIs IGVkaXQsIGFuZCBleGVjdXRlCi0gICAgICAgPGFjcm9ueW0+U1FMPC9hY3JvbnltPiBjb21tYW5k cy4KLSAgICAgIDwvcGFyYT4KLSAgICAgPC9saXN0aXRlbT4KLQotICAgICA8bGlzdGl0ZW0+Ci0g ICAgICA8cGFyYT4KLSAgICAgICBVc2luZyBhbiBleGlzdGluZyBncmFwaGljYWwgZnJvbnRlbmQg dG9vbCBsaWtlCi0gICAgICAgPGFwcGxpY2F0aW9uPnBnQWRtaW48L2FwcGxpY2F0aW9uPiBvciBh biBvZmZpY2Ugc3VpdGUgd2l0aAotICAgICAgIDxhY3JvbnltPk9EQkM8L2Fjcm9ueW0+IG9yIDxh Y3JvbnltPkpEQkM8L2Fjcm9ueW0+IHN1cHBvcnQgdG8gY3JlYXRlIGFuZCBtYW5pcHVsYXRlIGEK LSAgICAgICBkYXRhYmFzZS4gIFRoZXNlIHBvc3NpYmlsaXRpZXMgYXJlIG5vdCBjb3ZlcmVkIGlu IHRoaXMKLSAgICAgICB0dXRvcmlhbC4KLSAgICAgIDwvcGFyYT4KLSAgICAgPC9saXN0aXRlbT4K LQotICAgICA8bGlzdGl0ZW0+Ci0gICAgICA8cGFyYT4KLSAgICAgICBXcml0aW5nIGEgY3VzdG9t IGFwcGxpY2F0aW9uLCB1c2luZyBvbmUgb2YgdGhlIHNldmVyYWwKLSAgICAgICBhdmFpbGFibGUg bGFuZ3VhZ2UgYmluZGluZ3MuICBUaGVzZSBwb3NzaWJpbGl0aWVzIGFyZSBkaXNjdXNzZWQKLSAg ICAgICBmdXJ0aGVyIGluIDx4cmVmIGxpbmtlbmQ9ImNsaWVudC1pbnRlcmZhY2VzIi8+LgotICAg ICAgPC9wYXJhPgotICAgICA8L2xpc3RpdGVtPgotICAgIDwvaXRlbWl6ZWRsaXN0PgorICAgIEFz IG1lbnRpb25lZCBiZWZvcmUsIHlvdSBuZWVkIHRvIHJ1biBhIGNsaWVudCBhcHBsaWNhdGlvbiB0 byBhY2Nlc3MgdGhlCisgICAgc2VydmVyLiBJbiB0aGUgcHJldmlvdXMgc3RlcHMsIHdlIGhhdmUg YWxyZWFkeSBydW4KKyAgICA8eHJlZiBsaW5rZW5kPSJhcHAtY3JlYXRldXNlciIvPiBhbmQgPHhy ZWYgbGlua2VuZD0iYXBwLWNyZWF0ZWRiIi8+CisgICAgdXRpbGl0aWVzIHRvIGNyZWF0ZSBhIG5l dyB1c2VyIGFuZCBkYXRhYmFzZSBmcm9tIHRoZSBjb21tYW5kIGxpbmUuCisgICAgVG8gcGVyZm9y bSBhIHdpZGVyIHJhbmdlIG9mIHRhc2tzLCB3ZSBhcmUgZ29pbmcgdG8gdXNlCisgICAgPHhyZWYg bGlua2VuZD0iYXBwLXBzcWwiLz4sIGEgdGVybWluYWwgcHJvZ3JhbSB0aGF0IGVuYWJsZXMgeW91 IHRvCisgICAgaW50ZXJhY3RpdmVseSBlbnRlciwgZWRpdCwgYW5kIGV4ZWN1dGUgPGFjcm9ueW0+ U1FMPC9hY3JvbnltPiBjb21tYW5kcy4KKyAgIDwvcGFyYT4KIAotICAgIFlvdSBwcm9iYWJseSB3 YW50IHRvIHN0YXJ0IHVwIDxjb21tYW5kPnBzcWw8L2NvbW1hbmQ+IHRvIHRyeQotICAgIHRoZSBl eGFtcGxlcyBpbiB0aGlzIHR1dG9yaWFsLiAgSXQgY2FuIGJlIGFjdGl2YXRlZCBmb3IgdGhlCi0g ICAgPGxpdGVyYWw+bXlkYjwvbGl0ZXJhbD4gZGF0YWJhc2UgYnkgdHlwaW5nIHRoZSBjb21tYW5k OgorICAgPHBhcmE+CisgICAgTGV0J3Mgc3RhcnQgPGFwcGxpY2F0aW9uPnBzcWw8L2FwcGxpY2F0 aW9uPiBhbmQgY29ubmVjdCB0byB0aGUKKyAgICA8bGl0ZXJhbD5teWRiPC9saXRlcmFsPiBkYXRh YmFzZSBvbiBiZWhhbGYgb2YgdGhlIDxsaXRlcmFsPnBvc3RncmVzPC9saXRlcmFsPiB1c2VyOgog PHNjcmVlbj4KKzxwcm9tcHQ+JDwvcHJvbXB0PiA8dXNlcmlucHV0PnN1ZG8gc3UgcG9zdGdyZXM8 L3VzZXJpbnB1dD4KIDxwcm9tcHQ+JDwvcHJvbXB0PiA8dXNlcmlucHV0PnBzcWwgbXlkYjwvdXNl cmlucHV0PgogPC9zY3JlZW4+Ci0gICAgSWYgeW91IGRvIG5vdCBzdXBwbHkgdGhlIGRhdGFiYXNl IG5hbWUgdGhlbiBpdCB3aWxsIGRlZmF1bHQgdG8geW91cgotICAgIHVzZXIgYWNjb3VudCBuYW1l LiAgWW91IGFscmVhZHkgZGlzY292ZXJlZCB0aGlzIHNjaGVtZSBpbiB0aGUKLSAgICBwcmV2aW91 cyBzZWN0aW9uIHVzaW5nIDxjb21tYW5kPmNyZWF0ZWRiPC9jb21tYW5kPi4KICAgIDwvcGFyYT4K IAogICAgPHBhcmE+Ci0gICAgSW4gPGNvbW1hbmQ+cHNxbDwvY29tbWFuZD4sIHlvdSB3aWxsIGJl IGdyZWV0ZWQgd2l0aCB0aGUgZm9sbG93aW5nCi0gICAgbWVzc2FnZToKKyAgICBUaGUgY29tbWFu ZCBwcm9tcHQgY2hhbmdlcyBhcyBmb2xsb3dzOgogPHNjcmVlbj4KIHBzcWwgKCZ2ZXJzaW9uOykK IFR5cGUgImhlbHAiIGZvciBoZWxwLgogCi1teWRiPSZndDsKK215ZGI9IwogPC9zY3JlZW4+Ci0g ICAgPGluZGV4dGVybT48cHJpbWFyeT5zdXBlcnVzZXI8L3ByaW1hcnk+PC9pbmRleHRlcm0+Ci0g ICAgVGhlIGxhc3QgbGluZSBjb3VsZCBhbHNvIGJlOgorICAgPC9wYXJhPgorCisgICA8cGFyYT4K KyAgICBUaGlzIHByb21wdCBpbmRpY2F0ZXMgdGhhdCB5b3UgaGF2ZSBlbnRlcmVkIGFuIGludGVy YWN0aXZlCisgICAgPGFwcGxpY2F0aW9uPnBzcWw8L2FwcGxpY2F0aW9uPiBzaGVsbCB3aGVyZSB5 b3UgY2FuIHJ1biBTUUwgcXVlcmllcworICAgIGZyb20gdGhlIGNvbW1hbmQgbGluZS4gVGhlIGhh c2ggc2lnbiBhdCB0aGUgZW5kIG9mIHRoZSBwcm9tcHQKKyAgICBzaG93cyB0aGF0IDxhcHBsaWNh dGlvbj5wc3FsPC9hcHBsaWNhdGlvbj4gY2xpZW50IGlzIGNvbm5lY3RlZAorICAgIHRvIHRoZSBz ZXJ2ZXIgYXMgYSBkYXRhYmFzZSBzdXBlcnVzZXIgdGhhdCBpcyBub3Qgc3ViamVjdCB0bworICAg IGFjY2VzcyBjb250cm9scy4gT3RoZXJ3aXNlLCB0aGUgbGFzdCBsaW5lIHdvdWxkIGJlIGFzIGZv bGxvd3M6CiA8c2NyZWVuPgotbXlkYj0jCitteWRiPSZndDsKIDwvc2NyZWVuPgotICAgIFRoYXQg d291bGQgbWVhbiB5b3UgYXJlIGEgZGF0YWJhc2Ugc3VwZXJ1c2VyLCB3aGljaCBpcyBtb3N0IGxp a2VseQotICAgIHRoZSBjYXNlIGlmIHlvdSBpbnN0YWxsZWQgdGhlIDxwcm9kdWN0bmFtZT5Qb3N0 Z3JlU1FMPC9wcm9kdWN0bmFtZT4gaW5zdGFuY2UKLSAgICB5b3Vyc2VsZi4gIEJlaW5nIGEgc3Vw ZXJ1c2VyIG1lYW5zIHRoYXQgeW91IGFyZSBub3Qgc3ViamVjdCB0bwotICAgIGFjY2VzcyBjb250 cm9scy4gIEZvciB0aGUgcHVycG9zZXMgb2YgdGhpcyB0dXRvcmlhbCB0aGF0IGlzIG5vdAotICAg IGltcG9ydGFudC4KICAgIDwvcGFyYT4KIAogICAgPHBhcmE+Ci0gICAgSWYgeW91IGVuY291bnRl ciBwcm9ibGVtcyBzdGFydGluZyA8Y29tbWFuZD5wc3FsPC9jb21tYW5kPgotICAgIHRoZW4gZ28g YmFjayB0byB0aGUgcHJldmlvdXMgc2VjdGlvbi4gIFRoZSBkaWFnbm9zdGljcyBvZgotICAgIDxj b21tYW5kPmNyZWF0ZWRiPC9jb21tYW5kPiBhbmQgPGNvbW1hbmQ+cHNxbDwvY29tbWFuZD4gYXJl Ci0gICAgc2ltaWxhciwgYW5kIGlmIHRoZSBmb3JtZXIgd29ya2VkIHRoZSBsYXR0ZXIgc2hvdWxk IHdvcmsgYXMgd2VsbC4KKyAgICBXaGVuIGluIHRoZSA8YXBwbGljYXRpb24+cHNxbDwvYXBwbGlj YXRpb24+IHNoZWxsLCB5b3UgY2Fubm90IHVzZQorICAgIHJlZ3VsYXIgVW5peCBjb21tYW5kcyBv ciBjYWxsIG90aGVyIGFwcGxpY2F0aW9ucy4gRm9yIGV4YW1wbGUsCisgICAgaWYgeW91IHdvdWxk IGxpa2UgdG8gY3JlYXRlIGEgbmV3IGRhdGFiYXNlLCB5b3UgaGF2ZSB0bworICAgIHJ1biB0aGUg PGNvbW1hbmQ+Q1JFQVRFIERBVEFCQVNFPC9jb21tYW5kPiBTUUwgY29tbWFuZCBkaXJlY3RseQor ICAgIGluc3RlYWQgb2YgdXNpbmcgPHhyZWYgbGlua2VuZD0iYXBwLWNyZWF0ZWRiIi8+OgorPHNj cmVlbj4KKzxwcm9tcHQ+bXlkYj0jPC9wcm9tcHQ+IDx1c2VyaW5wdXQ+Q1JFQVRFIERBVEFCQVNF IG5ld2RiOzwvdXNlcmlucHV0PgorQ1JFQVRFIERBVEFCQVNFCitteWRiPSMKKzwvc2NyZWVuPgog ICAgPC9wYXJhPgogCiAgICA8cGFyYT4KLSAgICBUaGUgbGFzdCBsaW5lIHByaW50ZWQgb3V0IGJ5 IDxjb21tYW5kPnBzcWw8L2NvbW1hbmQ+IGlzIHRoZQotICAgIHByb21wdCwgYW5kIGl0IGluZGlj YXRlcyB0aGF0IDxjb21tYW5kPnBzcWw8L2NvbW1hbmQ+IGlzIGxpc3RlbmluZwotICAgIHRvIHlv dSBhbmQgdGhhdCB5b3UgY2FuIHR5cGUgPGFjcm9ueW0+U1FMPC9hY3JvbnltPiBxdWVyaWVzIGlu dG8gYQotICAgIHdvcmsgc3BhY2UgbWFpbnRhaW5lZCBieSA8Y29tbWFuZD5wc3FsPC9jb21tYW5k Pi4gIFRyeSBvdXQgdGhlc2UKLSAgICBjb21tYW5kczoKKyAgICBMZXQncyB0cnkgb3V0IHNvbWUg b3RoZXIgY29tbWFuZHM6CiAgICAgPGluZGV4dGVybT48cHJpbWFyeT52ZXJzaW9uPC9wcmltYXJ5 PjwvaW5kZXh0ZXJtPgogPHNjcmVlbj4KIDxwcm9tcHQ+bXlkYj0mZ3Q7PC9wcm9tcHQ+IDx1c2Vy aW5wdXQ+U0VMRUNUIHZlcnNpb24oKTs8L3VzZXJpbnB1dD4KQEAgLTM4MSwzMCArODYxLDU1IEBA IG15ZGI9IwogICAgPC9wYXJhPgogCiAgICA8cGFyYT4KLSAgICBUaGUgPGNvbW1hbmQ+cHNxbDwv Y29tbWFuZD4gcHJvZ3JhbSBoYXMgYSBudW1iZXIgb2YgaW50ZXJuYWwKLSAgICBjb21tYW5kcyB0 aGF0IGFyZSBub3QgU1FMIGNvbW1hbmRzLiAgVGhleSBiZWdpbiB3aXRoIHRoZSBiYWNrc2xhc2gK KyAgICA8YXBwbGljYXRpb24+cHNxbDwvYXBwbGljYXRpb24+IGFsc28gcHJvdmlkZXMgaXRzIG93 biBzZXQgb2YgbWV0YS1jb21tYW5kcworICAgIHRvIG1hbmlwdWxhdGUgdGhlIHNlcnZlci4gVGhl eSBiZWdpbiB3aXRoIHRoZSBiYWNrc2xhc2gKICAgICBjaGFyYWN0ZXIsIDxxdW90ZT48bGl0ZXJh bD5cPC9saXRlcmFsPjwvcXVvdGU+LgotICAgIEZvciBleGFtcGxlLAotICAgIHlvdSBjYW4gZ2V0 IGhlbHAgb24gdGhlIHN5bnRheCBvZiB2YXJpb3VzCi0gICAgPHByb2R1Y3RuYW1lPlBvc3RncmVT UUw8L3Byb2R1Y3RuYW1lPiA8YWNyb255bT5TUUw8L2Fjcm9ueW0+Ci0gICAgY29tbWFuZHMgYnkg dHlwaW5nOgorICAgIEZvciBleGFtcGxlLCB5b3UgY2FuIGNoZWNrIHRoZSBwYXJhbWV0ZXJzIG9m IHlvdXIgY3VycmVudAorICAgIGNsaWVudC9zZXJ2ZXIgY29ubmVjdGlvbiB1c2luZyB0aGUgPGxp dGVyYWw+XGNvbm5pbmZvPC9saXRlcmFsPiBjb21tYW5kOgogPHNjcmVlbj4KLTxwcm9tcHQ+bXlk Yj0mZ3Q7PC9wcm9tcHQ+IDx1c2VyaW5wdXQ+XGg8L3VzZXJpbnB1dD4KKzxwcm9tcHQ+bXlkYj0m Z3Q7PC9wcm9tcHQ+IDx1c2VyaW5wdXQ+XGNvbm5pbmZvPC91c2VyaW5wdXQ+CitZb3UgYXJlIGNv bm5lY3RlZCB0byBkYXRhYmFzZSAibXlkYiIgYXMgdXNlciAicG9zdGdyZXMiIHZpYSBzb2NrZXQg aW4gIi92YXIvcnVuL3Bvc3RncmVzcWwiIGF0IHBvcnQgIjU0MzIiLgogPC9zY3JlZW4+CiAgICA8 L3BhcmE+CiAKICAgIDxwYXJhPgotICAgIFRvIGdldCBvdXQgb2YgPGNvbW1hbmQ+cHNxbDwvY29t bWFuZD4sIHR5cGU6CisgICAgQW5vdGhlciB1c2VmdWwgY29tbWFuZCBpcyA8Y29tbWFuZD5ccGFz c3dvcmQ8L2NvbW1hbmQ+LCB3aGljaCBlbmFibGVzIHlvdQorICAgIHRvIHJlc2V0IHRoZSBwYXNz d29yZCBmb3IgeW91ciBjdXJyZW50IGRhdGFiYXNlIHVzZXIgd2l0aG91dCBjYWxsaW5nCisgICAg PHhyZWYgbGlua2VuZD0ic3FsLWFsdGVycm9sZSIvPi4gSXQgY29tZXMgaW4gaGFuZHkgaWYgeW91 IHdvdWxkIGxpa2UKKyAgICB0byB1c2UgcGFzc3dvcmQtYmFzZWQgYXV0aGVudGljYXRpb24gZm9y IHRoZSA8bGl0ZXJhbD5wb3N0Z3JlczwvbGl0ZXJhbD4KKyAgICB1c2VyIGluIHRoZSBmdXR1cmU6 CiA8c2NyZWVuPgotPHByb21wdD5teWRiPSZndDs8L3Byb21wdD4gPHVzZXJpbnB1dD5ccTwvdXNl cmlucHV0PgorPHByb21wdD5teWRiPSZndDs8L3Byb21wdD4gPHVzZXJpbnB1dD5ccGFzc3dvcmQ8 L3VzZXJpbnB1dD4KKzwvc2NyZWVuPgorICAgPC9wYXJhPgorCisgICA8cGFyYT4KKyAgICBUaGUg PGxpdGVyYWw+XGg8L2xpdGVyYWw+IGNvbW1hbmQgZGlzcGxheXMgaGVscCBvbiB0aGUgc3ludGF4 IG9mIHZhcmlvdXMKKyAgICA8YWNyb255bT5TUUw8L2Fjcm9ueW0+IGNvbW1hbmRzIHN1cHBvcnRl ZCBieQorICAgIDxhcHBsaWNhdGlvbj5Qb3N0Z3JlU1FMPC9hcHBsaWNhdGlvbj46Cis8c2NyZWVu PgorPHByb21wdD5teWRiPSZndDs8L3Byb21wdD4gPHVzZXJpbnB1dD5caDwvdXNlcmlucHV0Pgog PC9zY3JlZW4+Ci0gICAgYW5kIDxjb21tYW5kPnBzcWw8L2NvbW1hbmQ+IHdpbGwgcXVpdCBhbmQg cmV0dXJuIHlvdSB0byB5b3VyCi0gICAgY29tbWFuZCBzaGVsbC4gKEZvciBtb3JlIGludGVybmFs IGNvbW1hbmRzLCB0eXBlCi0gICAgPGxpdGVyYWw+XD88L2xpdGVyYWw+IGF0IHRoZSA8Y29tbWFu ZD5wc3FsPC9jb21tYW5kPiBwcm9tcHQuKSAgVGhlCisgICA8L3BhcmE+CisKKyAgIDxwYXJhPgor ICAgIEZvciBtb3JlIGludGVybmFsIGNvbW1hbmRzLCB0eXBlCisgICAgPGxpdGVyYWw+XD88L2xp dGVyYWw+IGF0IHRoZSA8Y29tbWFuZD5wc3FsPC9jb21tYW5kPiBwcm9tcHQuICBUaGUKICAgICBm dWxsIGNhcGFiaWxpdGllcyBvZiA8Y29tbWFuZD5wc3FsPC9jb21tYW5kPiBhcmUgZG9jdW1lbnRl ZCBpbgogICAgIDx4cmVmIGxpbmtlbmQ9ImFwcC1wc3FsIi8+LiAgSW4gdGhpcyB0dXRvcmlhbCB3 ZSB3aWxsIG5vdCB1c2UgdGhlc2UKICAgICBmZWF0dXJlcyBleHBsaWNpdGx5LCBidXQgeW91IGNh biB1c2UgdGhlbSB5b3Vyc2VsZiB3aGVuIGl0IGlzIGhlbHBmdWwuCiAgICA8L3BhcmE+CiAKKyAg IDxwYXJhPgorICAgIFRvIGdldCBvdXQgb2YgPGNvbW1hbmQ+cHNxbDwvY29tbWFuZD4sIHVzZSB0 aGUgPGxpdGVyYWw+XHE8L2xpdGVyYWw+CisgICAgbWV0YS1jb21tYW5kOgorPHNjcmVlbj4KKzxw cm9tcHQ+bXlkYj0mZ3Q7PC9wcm9tcHQ+IDx1c2VyaW5wdXQ+XHE8L3VzZXJpbnB1dD4KKzwvc2Ny ZWVuPgorICAgIDxjb21tYW5kPnBzcWw8L2NvbW1hbmQ+IHdpbGwgcXVpdCBhbmQgcmV0dXJuIHlv dSB0byB5b3VyCisgICAgY29tbWFuZCBzaGVsbC4KKyAgIDwvcGFyYT4KKwogICA8L3NlY3QxPgor CiAgPC9jaGFwdGVyPgo= --000000000000e8c7f705977d1100--