relaton 1.10.0 → 1.10.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/lib/relaton/version.rb +1 -1
  3. data/relaton.gemspec +20 -20
  4. data/spec/vcr_cassetes/3gpp_tr_00_01u_umts_3_0_0.yml +7 -7
  5. data/spec/vcr_cassetes/async_fetch.yml +1458 -1458
  6. data/spec/vcr_cassetes/bsi_bs_en_iso_8848.yml +8 -8
  7. data/spec/vcr_cassetes/cc_dir_10005_2019.yml +14 -14
  8. data/spec/vcr_cassetes/cen_en_10160_1999.yml +30 -30
  9. data/spec/vcr_cassetes/cie_001_1980.yml +7 -7
  10. data/spec/vcr_cassetes/ecma_6.yml +55 -35
  11. data/spec/vcr_cassetes/fisp_140.yml +6 -6
  12. data/spec/vcr_cassetes/gb_t_20223_2006.yml +6 -6
  13. data/spec/vcr_cassetes/iana_service_names_port_numbers.yml +10 -10
  14. data/spec/vcr_cassetes/iec_60050_102_2007.yml +23 -23
  15. data/spec/vcr_cassetes/iec_combined_included.yml +83 -85
  16. data/spec/vcr_cassetes/ieee_528_2019.yml +555 -548
  17. data/spec/vcr_cassetes/iho_b_11.yml +10 -10
  18. data/spec/vcr_cassetes/iso_111111119115_1.yml +2 -2
  19. data/spec/vcr_cassetes/iso_19115_1.yml +15 -15
  20. data/spec/vcr_cassetes/iso_19115_1_2.yml +31 -31
  21. data/spec/vcr_cassetes/iso_19115_all_parts.yml +16 -16
  22. data/spec/vcr_cassetes/iso_19133_2005.yml +15 -15
  23. data/spec/vcr_cassetes/iso_combined_applied.yml +29 -29
  24. data/spec/vcr_cassetes/iso_combined_included.yml +30 -30
  25. data/spec/vcr_cassetes/iso_dis_14093.yml +15 -15
  26. data/spec/vcr_cassetes/itu_combined_included.yml +171 -171
  27. data/spec/vcr_cassetes/ogc_19_025r1.yml +10 -10
  28. data/spec/vcr_cassetes/omg_ami4ccm_1_0.yml +4 -4
  29. data/spec/vcr_cassetes/rfc_8341.yml +7 -7
  30. data/spec/vcr_cassetes/sp_800_38b.yml +6 -6
  31. data/spec/vcr_cassetes/threads_from_env.yml +59 -59
  32. data/spec/vcr_cassetes/un_rtade_cefact_2004_32.yml +29 -29
  33. data/spec/vcr_cassetes/w3c_json_ld11.yml +10 -10
  34. metadata +44 -44
@@ -21,7 +21,7 @@ http_interactions:
21
21
  message: OK
22
22
  headers:
23
23
  Date:
24
- - Sun, 30 Jan 2022 20:08:41 GMT
24
+ - Tue, 08 Feb 2022 16:57:38 GMT
25
25
  Content-Type:
26
26
  - text/html; charset=UTF-8
27
27
  Transfer-Encoding:
@@ -51,12 +51,12 @@ http_interactions:
51
51
  Server:
52
52
  - cloudflare
53
53
  Cf-Ray:
54
- - 6d5d5566dc198ef6-SOF
54
+ - 6da665eaabc98eec-SOF
55
55
  Alt-Svc:
56
56
  - h3=":443"; ma=86400, h3-29=":443"; ma=86400
57
57
  body:
58
58
  encoding: ASCII-8BIT
59
- string: '{"status":"ok","total_pages":3,"results":{"status":{"rid":"37zq5Oov2yYK1EES","time-ms":1},"hits":{"found":23,"start":0,"hit":[{"id":"c1dc1ae6ae407ec0a8a761c1e4e0832655dda6ed376d509c9f6f5cd99767c79abf416c615774db732cc8100d9c5a2eb0cfa7709ce0d82b88b603bbaba6278fd0","fields":{"meta_keywords_la":["Aerospace
59
+ string: '{"status":"ok","total_pages":3,"results":{"status":{"rid":"9d+T0u0v4NwBCtRBEg==","time-ms":1},"hits":{"found":23,"start":0,"hit":[{"id":"c1dc1ae6ae407ec0a8a761c1e4e0832655dda6ed376d509c9f6f5cd99767c79abf416c615774db732cc8100d9c5a2eb0cfa7709ce0d82b88b603bbaba6278fd0","fields":{"meta_keywords_la":["Aerospace
60
60
  Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"Terms
61
61
  and definitions relating to inertial sensors are presented in this standard.
62
62
  Usage as understood by the inertial sensor community is given preference over
@@ -537,19 +537,22 @@ http_interactions:
537
537
  the world\u2019s largest technical professional organization dedicated to
538
538
  advancing technology for the benefit of humanity. Subscribe Newswire Sign
539
539
  up for our monthly newsletter to learn about new developments, including resources,
540
- insights and more. "}},{"id":"417d99a37a89b4111b7bc1619f19726d1ab6a092235b6f3f68257dbfc26f55108f71965f44f58344641e674d518e15d40ca211830ab3c8a09cf3212772ab1c67","fields":{"meta_keywords_la":["Aerospace
540
+ insights and more. "}},{"id":"a987f234b815c04d51196a5861dce1ab4f2a67a7df6f37238f67bb5387af80050e142c401c7c38a091478a9f9de39f5bb24d00c179180953adc632f16a51cd68","fields":{"meta_keywords_la":["Aerospace
541
541
  Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"A
542
- guide is presented for the preparation of a specification and test procedure
543
- for an inertial angular sensor that provides a common meeting ground of terminology
544
- and practice for manufacturers and users of an array of sensors that have
545
- been developed to meet needs not easily met by traditional spinning-rotor
546
- gyroscopes. A test procedure for verifying that the specifications have been
547
- met is given. The standard is not intended to compete with existing standards
548
- for specific devices with highly specific models and error sources, such as
549
- spring-restrained rate gyros, but to provide a uniform guide for those inertial
550
- angular sensors that have not been covered elsewhere.","meta_topic_la":["Aerospace
551
- Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/671\/926\/","doc_title_t":"IEEE
552
- SA - IEEE 671-1985","doc_text_t":"IEEE SA - IEEE 671-1985 IEEE.org IEEE Xplore
542
+ format guide for the preparation of a two-degree-of-freedom dynamically tuned
543
+ gyro (DTG) specification is given that provides a common ground of terminology
544
+ and practice for manufacturers and users. A compilation of recommended procedures
545
+ for testing a DTG is also given. The requirements and test procedures are
546
+ defined in terms unique to the DTG. They cover applications of the gyro as
547
+ an angular motion sensor in navigation and control systems. They apply to
548
+ two modes of use: (1) as a strap-down sensor in operating environments typical
549
+ of aircraft and missile applications, and (2) as a sensor in gimballed platform
550
+ applications in which the dynamic angular inputs to which the gyro is subjected
551
+ are benign relative to the accuracy required. In the case of the strap-down
552
+ DTG, the characteristics of the external capture loops are considered to the
553
+ extent necessary to define the gyro performance.","meta_topic_la":["Aerospace
554
+ Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/813\/1200\/","doc_title_t":"IEEE
555
+ SA - IEEE 813-1988","doc_text_t":"IEEE SA - IEEE 813-1988 IEEE.org IEEE Xplore
553
556
  Digital Library IEEE Standards IEEE Spectrum More Sites eTools Standards Access
554
557
  Standards Search Standards Standards Development Standards Adoption Choose
555
558
  from the many ways to access IEEE SA Standards. Choose from individual or
@@ -602,29 +605,30 @@ http_interactions:
602
605
  and organizational effectiveness program to enable the success of our vital
603
606
  volunteers. Read the latest news on IEEE SA. Subscribe to our newsletter and
604
607
  keep up to date on the latest standards, event, and activities. MAC Address
605
- Inactive-Reserved Standard IEEE 671-1985 IEEE Standard Specification Format
606
- Guide and Test Procedure for Nongyroscopic Inertial Angular Sensors: Jerk,
607
- Acceleration, Velocity, and Displacement Purchase Access via Subscription
608
- Home Standards IEEE 671-1985 A guide is presented for the preparation of a
609
- specification and test procedure for an inertial angular sensor that provides
610
- a common meeting ground of terminology and practice for manufacturers and
611
- users of an array of sensors that have been developed to meet needs not easily
612
- met by traditional spinning-rotor gyroscopes. A test procedure for verifying
613
- that the specifications have been met is given. The standard is not intended
614
- to compete with existing standards for specific devices with highly specific
615
- models and error sources, such as spring-restrained rate gyros, but to provide
616
- a uniform guide for those inertial angular sensors that have not been covered
617
- elsewhere. Sponsor Committee AES\/GA - Gyro Accelerometer Panel Learn More
618
- Status Inactive-Reserved Standard Corrigendum 671-1985\/Cor 1-2010 Board Approval
619
- 1983-06-23 History ANSI Approved: 1992-05-06 Published: 1984-11-30 Reaffirmed:
620
- 2008-12-10 Inactivated Date: 2019-11-07 Working Group Details Society IEEE
621
- Aerospace and Electronic Systems Society Learn More Sponsor Committee AES\/GA
622
- - Gyro Accelerometer Panel Learn More Working Group SENSR_WG - Sensors Working
623
- Group IEEE Program Manager Dan Perez Contact Working Group Chair Harry Davis
624
- Active Projects Active Standards Superseded Standards Inactive-Withdrawn Standards
625
- Inactive-Reserved Standards P1431 Standard for Specifying and Testing Coriolis
626
- Vibratory Gyros This standard defines requirements and test procedures for
627
- a single-axis Coriolis vibratory gyro (CVG) for use as a sensor in attitude
608
+ Active Standard IEEE 813-1988 IEEE Specification Format Guide and Test Procedure
609
+ for Two-Degree-of-Freedom Dynamically Tuned Gyros Purchase Access via Subscription
610
+ Home Standards IEEE 813-1988 A format guide for the preparation of a two-degree-of-freedom
611
+ dynamically tuned gyro (DTG) specification is given that provides a common
612
+ ground of terminology and practice for manufacturers and users. A compilation
613
+ of recommended procedures for testing a DTG is also given. The requirements
614
+ and test procedures are defined in terms unique to the DTG. They cover applications
615
+ of the gyro as an angular motion sensor in navigation and control systems.
616
+ They apply to two modes of use: (1) as a strap-down sensor in operating environments
617
+ typical of aircraft and missile applications, and (2) as a sensor in gimballed
618
+ platform applications in which the dynamic angular inputs to which the gyro
619
+ is subjected are benign relative to the accuracy required. In the case of
620
+ the strap-down DTG, the characteristics of the external capture loops are
621
+ considered to the extent necessary to define the gyro performance. Sponsor
622
+ Committee AES\/GA - Gyro Accelerometer Panel Learn More Status Active Standard
623
+ Board Approval 1988-08-17 History ANSI Approved: 1989-05-04 ANSI Withdrawn
624
+ Date: 2016-08-19 Published: 1989-06-05 Reaffirmed: 2011-12-07 Working Group
625
+ Details Society IEEE Aerospace and Electronic Systems Society Learn More Sponsor
626
+ Committee AES\/GA - Gyro Accelerometer Panel Learn More Working Group SENSR_WG
627
+ - Sensors Working Group IEEE Program Manager Dan Perez Contact Working Group
628
+ Chair Harry Davis Active Projects Active Standards Superseded Standards Inactive-Withdrawn
629
+ Standards Inactive-Reserved Standards P1431 Standard for Specifying and Testing
630
+ Coriolis Vibratory Gyros This standard defines requirements and test procedures
631
+ for a single-axis Coriolis vibratory gyro (CVG) for use as a sensor in attitude
628
632
  control systems, angular displacement measuring systems, and angular rate
629
633
  measuring systems. Informative annexes cover CVG design features and theoretical
630
634
  principles of operation. Learn More 1293-2018 IEEE Standard Specification
@@ -654,37 +658,24 @@ http_interactions:
654
658
  systems are defined. A standard specification format guide for the preparation
655
659
  of a single-axis RLG is provided. A compilation of recommended procedures
656
660
  for testing an RLG, derived from those presently used in the industry, is
657
- also provided. Learn More 813-1988 IEEE Specification Format Guide and Test
658
- Procedure for Two-Degree-of-Freedom Dynamically Tuned Gyros A format guide
659
- for the preparation of a two-degree-of-freedom dynamically tuned gyro (DTG)
660
- specification is given that provides a common ground of terminology and practice
661
- for manufacturers and users. A compilation of recommended procedures for testing
662
- a DTG is also given. The requirements and test procedures are defined in terms
663
- unique to the DTG. They cover applications of the gyro as an angular motion
664
- sensor in navigation and control systems. They apply to two modes of use:
665
- (1) as a strap-down sensor in operating environments typical of aircraft and
666
- missile applications, and (2) as a sensor in gimballed platform applications
667
- in which the dynamic angular inputs to which the gyro is subjected are benign
668
- relative to the accuracy required. In the case of the strap-down DTG, the
669
- characteristics of the external capture loops are considered to the extent
670
- necessary to define the gyro performance. Learn More 952-2020 IEEE Standard
671
- for Specifying and Testing Single-Axis Interferometric Fiber Optic Gyros Specification
672
- and test procedures for a single-axis interferometric fiber optic gyro (IFOG)
673
- for use as a sensor in attitude control systems, angular displacement measuring
674
- systems, and angular rate measuring systems are defined. The test procedures
675
- are derived from those presently used in the industry. Learn More 1293-1998\/Cor
676
- 1-2008 IEEE Standard Specification Format Guide and Test Procedure for Linear,Single-Axis,
677
- Nongyroscopic Accelerometers Corrigendum 1: Changes to Annex K and Annex L
678
- Corrigendum to IEEE Std 1293-1998. Specification and test requirements for
679
- linear, single-axis, nongyroscopic accelerometers for use as a sensor in attitude
680
- control systems, linear displacement measuring systems, and linear rate measuring
681
- systems are defined. The specification format guide and test procedure standard
682
- applies to force-rebalance accelerometers (pendulous or translational proof
683
- mass), vibrating beam accelerometers (VBAs), and micromechanical accelerometers
684
- that range from lesser accuracy to high accuracy devices. Learn More 528-2001
685
- IEEE Standard for Inertial Sensor Terminology Terms and definitions relating
686
- to inertial senors are presented in this standard. Usage as understood by
687
- the inertial sensor community is given preference over general technical usage
661
+ also provided. Learn More 952-2020 IEEE Standard for Specifying and Testing
662
+ Single-Axis Interferometric Fiber Optic Gyros Specification and test procedures
663
+ for a single-axis interferometric fiber optic gyro (IFOG) for use as a sensor
664
+ in attitude control systems, angular displacement measuring systems, and angular
665
+ rate measuring systems are defined. The test procedures are derived from those
666
+ presently used in the industry. Learn More 1293-1998\/Cor 1-2008 IEEE Standard
667
+ Specification Format Guide and Test Procedure for Linear,Single-Axis, Nongyroscopic
668
+ Accelerometers Corrigendum 1: Changes to Annex K and Annex L Corrigendum to
669
+ IEEE Std 1293-1998. Specification and test requirements for linear, single-axis,
670
+ nongyroscopic accelerometers for use as a sensor in attitude control systems,
671
+ linear displacement measuring systems, and linear rate measuring systems are
672
+ defined. The specification format guide and test procedure standard applies
673
+ to force-rebalance accelerometers (pendulous or translational proof mass),
674
+ vibrating beam accelerometers (VBAs), and micromechanical accelerometers that
675
+ range from lesser accuracy to high accuracy devices. Learn More 528-2001 IEEE
676
+ Standard for Inertial Sensor Terminology Terms and definitions relating to
677
+ inertial senors are presented in this standard. Usage as understood by the
678
+ inertial sensor community is given preference over general technical usage
688
679
  of the terms herein. The criterion for inclusion of a term and its definition
689
680
  in this standard is usefulness as related to inertial sensor technology. Learn
690
681
  More 952-1997 IEEE Standard Specification Format Guide and Test Procedure
@@ -745,25 +736,36 @@ http_interactions:
745
736
  Guide and Test Procedure for Single-Degree-of-Freedom Rate-Integrating Gyros
746
737
  - Corrigendum 1: 3.3.9.2.2, 3.6.4.1.1, 3.6.4.1.2, 6.3, and 10.10.4.1 Corrections
747
738
  are made by this corrigendum to material already published in IEEE Std 529-1980.
748
- Learn More 671-1985\/Cor 1-2010 IEEE Standard Specification Format Guide and
749
- Test Procedure for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration,
750
- Velocity, and Displacement Corrigendum 1: 4.7.2.6 Short-Term Stability and
751
- Annex A Sensor Dynamic Block Diagrams IEEE Std 671-1985 provides specifications
752
- and test requirements for a non-gyroscopic inertial angular sensor that may
753
- measure angular jerk, acceleration, rate, or displacement with or without
754
- response down to zero frequency. A standard specification format is provided.
755
- A compilation of recommended test procedures, derived from those presently
756
- used in the industry, is also provided. Informative annexes cover design features
757
- and theoretical principles of operation. This corrigendum makes changes to
758
- 4.7.2.6 to delete a sentence that does not belong there, to add a subclause
759
- that was inadvertently left out, and to renumber the existing subclauses.
760
- Changes are also being made to fix the block diagrams in Annex A, to correct
761
- a misspelling of inertia, and to add a missing symbol. Learn More 836-2009
762
- IEEE Recommended Practice for Precision Centrifuge Testing of Linear Accelerometers
763
- This recommended practice describes the conduct and analysis of precision
764
- tests that are to be performed on linear accelerometers using centrifuge techniques.
765
- The term u201cprecision,u201d in this context, refers to tests that are conducted
766
- to evaluate accelerometer parameters, as opposed to those conducted to establish
739
+ Learn More 671-1985 IEEE Standard Specification Format Guide and Test Procedure
740
+ for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
741
+ and Displacement A guide is presented for the preparation of a specification
742
+ and test procedure for an inertial angular sensor that provides a common meeting
743
+ ground of terminology and practice for manufacturers and users of an array
744
+ of sensors that have been developed to meet needs not easily met by traditional
745
+ spinning-rotor gyroscopes. A test procedure for verifying that the specifications
746
+ have been met is given. The standard is not intended to compete with existing
747
+ standards for specific devices with highly specific models and error sources,
748
+ such as spring-restrained rate gyros, but to provide a uniform guide for those
749
+ inertial angular sensors that have not been covered elsewhere. Learn More
750
+ 671-1985\/Cor 1-2010 IEEE Standard Specification Format Guide and Test Procedure
751
+ for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
752
+ and Displacement Corrigendum 1: 4.7.2.6 Short-Term Stability and Annex A Sensor
753
+ Dynamic Block Diagrams IEEE Std 671-1985 provides specifications and test
754
+ requirements for a non-gyroscopic inertial angular sensor that may measure
755
+ angular jerk, acceleration, rate, or displacement with or without response
756
+ down to zero frequency. A standard specification format is provided. A compilation
757
+ of recommended test procedures, derived from those presently used in the industry,
758
+ is also provided. Informative annexes cover design features and theoretical
759
+ principles of operation. This corrigendum makes changes to 4.7.2.6 to delete
760
+ a sentence that does not belong there, to add a subclause that was inadvertently
761
+ left out, and to renumber the existing subclauses. Changes are also being
762
+ made to fix the block diagrams in Annex A, to correct a misspelling of inertia,
763
+ and to add a missing symbol. Learn More 836-2009 IEEE Recommended Practice
764
+ for Precision Centrifuge Testing of Linear Accelerometers This recommended
765
+ practice describes the conduct and analysis of precision tests that are to
766
+ be performed on linear accelerometers using centrifuge techniques. The term
767
+ u201cprecision,u201d in this context, refers to tests that are conducted to
768
+ evaluate accelerometer parameters, as opposed to those conducted to establish
767
769
  environmental survivability only. Evaluation may take the form of determining
768
770
  the coefficients of the accelerometer''s model equation, except for bias and
769
771
  scale factor, which are most accurately determined by static multi-position
@@ -783,23 +785,23 @@ http_interactions:
783
785
  the world\u2019s largest technical professional organization dedicated to
784
786
  advancing technology for the benefit of humanity. Subscribe Newswire Sign
785
787
  up for our monthly newsletter to learn about new developments, including resources,
786
- insights and more. "}},{"id":"1f454c3c1d1b8225381c03b93f6289bb9a62e4db6b8208aa0e9403d764b40eaf5545f19a40f487252dbd1c193775b8f344b93ef95bb161c8996090a798bf7ef3","fields":{"meta_keywords_la":["Aerospace
787
- Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"The
788
- specification and test requirements for a linear, single-axis, nongyroscopic
789
- accelerometer for use in inertial navigation, guidance, and leveling systems
790
- are defined. A standard specification guide and a compilation of recommended
791
- test procedures for such accelerometers are provided. Informative annexes
792
- are given on the various types of such accelerometers (force or pendulous
793
- torque rebalance with analog or digital output, vibrating beam, and micromechanical)
794
- and error effects, on filtering, noise, and transient analysis techniques,
795
- and on calibration and modeling techniques (multipoint tumble analysis, vibration
796
- and shock test analyses, and geophysical effects in inertial instrument testing).","meta_topic_la":["Aerospace
797
- Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/1293\/5590\/","doc_title_t":"IEEE
798
- SA - IEEE 1293-2018","doc_text_t":"IEEE SA - IEEE 1293-2018 IEEE.org IEEE
799
- Xplore Digital Library IEEE Standards IEEE Spectrum More Sites eTools Standards
800
- Access Standards Search Standards Standards Development Standards Adoption
801
- Choose from the many ways to access IEEE SA Standards. Choose from individual
802
- or organizational access options to get the standards you need. Find the standards
788
+ insights and more. "}},{"id":"078cadb336c908939e58048dc80abc0e41d35a0b3fe16dd00a123a693916293353a5cbc79f3993b1f71bfe11e1d790d46b887a980a03ef635f23e8ac89da4925","fields":{"meta_keywords_la":["Aerospace
789
+ Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"This
790
+ recommended practice describes the conduct and analysis of precision tests
791
+ that are to be performed on linear accelerometers using centrifuge techniques.
792
+ The term \u201cprecision,\u201d in this context, refers to tests that are
793
+ conducted to evaluate accelerometer parameters, as opposed to those conducted
794
+ to establish environmental survivability only. Evaluation may take the form
795
+ of determining the coefficients of the accelerometer''s model equation, except
796
+ for bias and scale factor, which are most accurately determined by static
797
+ multi-position tests. Alternatively, evaluation may only establish that the
798
+ accelerometer output complies with specific error limit criteria.","meta_topic_la":["Aerospace
799
+ Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/836\/3449\/","doc_title_t":"IEEE
800
+ SA - IEEE 836-2009","doc_text_t":"IEEE SA - IEEE 836-2009 IEEE.org IEEE Xplore
801
+ Digital Library IEEE Standards IEEE Spectrum More Sites eTools Standards Access
802
+ Standards Search Standards Standards Development Standards Adoption Choose
803
+ from the many ways to access IEEE SA Standards. Choose from individual or
804
+ organizational access options to get the standards you need. Find the standards
803
805
  you\u2019re looking for. Get involved in the development of market-driven
804
806
  technology standards with proven expertise and dedicated support. Learn more
805
807
  about how to adopt IEEE standards. Products & Programs Alliance Management
@@ -848,30 +850,41 @@ http_interactions:
848
850
  and organizational effectiveness program to enable the success of our vital
849
851
  volunteers. Read the latest news on IEEE SA. Subscribe to our newsletter and
850
852
  keep up to date on the latest standards, event, and activities. MAC Address
851
- Active Standard IEEE 1293-2018 IEEE Standard Specification Format Guide and
852
- Test Procedure for Linear Single-Axis, Nongyroscopic Accelerometers Purchase
853
- Access via Subscription Home Standards IEEE 1293-2018 The specification and
854
- test requirements for a linear, single-axis, nongyroscopic accelerometer for
855
- use in inertial navigation, guidance, and leveling systems are defined. A
856
- standard specification guide and a compilation of recommended test procedures
857
- for such accelerometers are provided. Informative annexes are given on the
858
- various types of such accelerometers (force or pendulous torque rebalance
859
- with analog or digital output, vibrating beam, and micromechanical) and error
860
- effects, on filtering, noise, and transient analysis techniques, and on calibration
861
- and modeling techniques (multipoint tumble analysis, vibration and shock test
862
- analyses, and geophysical effects in inertial instrument testing). Sponsor
863
- Committee AES\/GA - Gyro Accelerometer Panel Learn More Status Active Standard
864
- PAR Approval 2012-11-02 Superseding 1293-1998 Board Approval 2018-10-23 History
865
- Published: 2019-02-28 Working Group Details Society IEEE Aerospace and Electronic
866
- Systems Society Learn More Sponsor Committee AES\/GA - Gyro Accelerometer
867
- Panel Learn More Working Group SENSR_WG - Sensors Working Group IEEE Program
868
- Manager Dan Perez Contact Working Group Chair Harry Davis Active Projects
869
- Active Standards Superseded Standards Inactive-Withdrawn Standards Inactive-Reserved
870
- Standards P1431 Standard for Specifying and Testing Coriolis Vibratory Gyros
871
- This standard defines requirements and test procedures for a single-axis Coriolis
872
- vibratory gyro (CVG) for use as a sensor in attitude control systems, angular
873
- displacement measuring systems, and angular rate measuring systems. Informative
874
- annexes cover CVG design features and theoretical principles of operation.
853
+ Inactive-Reserved Standard IEEE 836-2009 IEEE Recommended Practice for Precision
854
+ Centrifuge Testing of Linear Accelerometers Purchase Access via Subscription
855
+ Home Standards IEEE 836-2009 This recommended practice describes the conduct
856
+ and analysis of precision tests that are to be performed on linear accelerometers
857
+ using centrifuge techniques. The term \u201cprecision,\u201d in this context,
858
+ refers to tests that are conducted to evaluate accelerometer parameters, as
859
+ opposed to those conducted to establish environmental survivability only.
860
+ Evaluation may take the form of determining the coefficients of the accelerometer''s
861
+ model equation, except for bias and scale factor, which are most accurately
862
+ determined by static multi-position tests. Alternatively, evaluation may only
863
+ establish that the accelerometer output complies with specific error limit
864
+ criteria. Sponsor Committee AES\/GA - Gyro Accelerometer Panel Learn More
865
+ Status Inactive-Reserved Standard PAR Approval 2003-03-20 Superseded by 836-2009
866
+ Superseding 836-2009 Board Approval 2009-06-17 History ANSI Approved: 2009-10-08
867
+ Published: 2009-09-17 Inactivated Date: 2020-03-05 Working Group Details Society
868
+ IEEE Aerospace and Electronic Systems Society Learn More Sponsor Committee
869
+ AES\/GA - Gyro Accelerometer Panel Learn More Working Group SENSR_WG - Sensors
870
+ Working Group IEEE Program Manager Dan Perez Contact Working Group Chair Harry
871
+ Davis Active Projects Active Standards Superseded Standards Inactive-Withdrawn
872
+ Standards Inactive-Reserved Standards P1431 Standard for Specifying and Testing
873
+ Coriolis Vibratory Gyros This standard defines requirements and test procedures
874
+ for a single-axis Coriolis vibratory gyro (CVG) for use as a sensor in attitude
875
+ control systems, angular displacement measuring systems, and angular rate
876
+ measuring systems. Informative annexes cover CVG design features and theoretical
877
+ principles of operation. Learn More 1293-2018 IEEE Standard Specification
878
+ Format Guide and Test Procedure for Linear Single-Axis, Nongyroscopic Accelerometers
879
+ The specification and test requirements for a linear, single-axis, nongyroscopic
880
+ accelerometer for use in inertial navigation, guidance, and leveling systems
881
+ are defined. A standard specification guide and a compilation of recommended
882
+ test procedures for such accelerometers are provided. Informative annexes
883
+ are given on the various types of such accelerometers (force or pendulous
884
+ torque rebalance with analog or digital output, vibrating beam, and micromechanical)
885
+ and error effects, on filtering, noise, and transient analysis techniques,
886
+ and on calibration and modeling techniques (multipoint tumble analysis, vibration
887
+ and shock test analyses, and geophysical effects in inertial instrument testing).
875
888
  Learn More 1554-2005 IEEE Recommended Practice for Inertial Sensor Test Equipment,
876
889
  Instrumentation, Data Acquisition, and Analysis Test equipment, data acquisition
877
890
  equipment, instrumentation, test facilities, and data analysis techniques
@@ -1003,41 +1016,37 @@ http_interactions:
1003
1016
  a sentence that does not belong there, to add a subclause that was inadvertently
1004
1017
  left out, and to renumber the existing subclauses. Changes are also being
1005
1018
  made to fix the block diagrams in Annex A, to correct a misspelling of inertia,
1006
- and to add a missing symbol. Learn More 836-2009 IEEE Recommended Practice
1007
- for Precision Centrifuge Testing of Linear Accelerometers This recommended
1008
- practice describes the conduct and analysis of precision tests that are to
1009
- be performed on linear accelerometers using centrifuge techniques. The term
1010
- u201cprecision,u201d in this context, refers to tests that are conducted to
1011
- evaluate accelerometer parameters, as opposed to those conducted to establish
1012
- environmental survivability only. Evaluation may take the form of determining
1013
- the coefficients of the accelerometer''s model equation, except for bias and
1014
- scale factor, which are most accurately determined by static multi-position
1015
- tests. Alternatively, evaluation may only establish that the accelerometer
1016
- output complies with specific error limit criteria. Learn More Facebook Twitter
1017
- LinkedIn Instagram YouTube IEEE SA About Us IEEE SA Membership Corporate Program
1018
- Training & Development Policies & Procedures Contact Us Board of Governors
1019
- About Board of Governors Awards Committee Corporate Advisory Group Industry
1020
- Connections Committee Registration Authority Committee Strategic Planning
1021
- Coordination Committee Standards Board About Standards Board Board Approvals
1022
- Audit Committee New Standards Committee Patent Committee Procedures Committee
1023
- Standards Review Committee News & Events News IEEE SA Newsletter Events Home
1024
- Sitemap Contact & Support Accessibility Nondiscrimination Policy IEEE Ethics
1025
- Reporting IEEE Privacy Policy IEEE SA Copyright Policy \u00a9 Copyright 2021
1026
- IEEE \u2013 All rights reserved. Use of this website signifies your agreement
1027
- to the IEEE Terms and Conditions . A not-for-profit organization, IEEE is
1028
- the world\u2019s largest technical professional organization dedicated to
1029
- advancing technology for the benefit of humanity. Subscribe Newswire Sign
1030
- up for our monthly newsletter to learn about new developments, including resources,
1031
- insights and more. "}},{"id":"52eae60b2e77539af2d00032c19addb836f63a63838a98a1e1415ce8b7dc2251a177a0b3bc0831e7f951dfebfee24916a61d3623dbfda9f11f2e8eea97d28e2f","fields":{"meta_keywords_la":["Aerospace
1032
- Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"Test
1033
- equipment, data acquisition equipment, instrumentation, test facilities, and
1034
- data analysis techniques used in inertial sensor testing are described in
1035
- this recommended practice.","meta_topic_la":["Aerospace Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/1554\/2292\/","doc_title_t":"IEEE
1036
- SA - IEEE 1554-2005","doc_text_t":"IEEE SA - IEEE 1554-2005 IEEE.org IEEE
1037
- Xplore Digital Library IEEE Standards IEEE Spectrum More Sites eTools Standards
1038
- Access Standards Search Standards Standards Development Standards Adoption
1039
- Choose from the many ways to access IEEE SA Standards. Choose from individual
1040
- or organizational access options to get the standards you need. Find the standards
1019
+ and to add a missing symbol. Learn More Facebook Twitter LinkedIn Instagram
1020
+ YouTube IEEE SA About Us IEEE SA Membership Corporate Program Training & Development
1021
+ Policies & Procedures Contact Us Board of Governors About Board of Governors
1022
+ Awards Committee Corporate Advisory Group Industry Connections Committee Registration
1023
+ Authority Committee Strategic Planning Coordination Committee Standards Board
1024
+ About Standards Board Board Approvals Audit Committee New Standards Committee
1025
+ Patent Committee Procedures Committee Standards Review Committee News & Events
1026
+ News IEEE SA Newsletter Events Home Sitemap Contact & Support Accessibility
1027
+ Nondiscrimination Policy IEEE Ethics Reporting IEEE Privacy Policy IEEE SA
1028
+ Copyright Policy \u00a9 Copyright 2021 IEEE \u2013 All rights reserved. Use
1029
+ of this website signifies your agreement to the IEEE Terms and Conditions
1030
+ . A not-for-profit organization, IEEE is the world\u2019s largest technical
1031
+ professional organization dedicated to advancing technology for the benefit
1032
+ of humanity. Subscribe Newswire Sign up for our monthly newsletter to learn
1033
+ about new developments, including resources, insights and more. "}},{"id":"417d99a37a89b4111b7bc1619f19726d1ab6a092235b6f3f68257dbfc26f55108f71965f44f58344641e674d518e15d40ca211830ab3c8a09cf3212772ab1c67","fields":{"meta_keywords_la":["Aerospace
1034
+ Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"A
1035
+ guide is presented for the preparation of a specification and test procedure
1036
+ for an inertial angular sensor that provides a common meeting ground of terminology
1037
+ and practice for manufacturers and users of an array of sensors that have
1038
+ been developed to meet needs not easily met by traditional spinning-rotor
1039
+ gyroscopes. A test procedure for verifying that the specifications have been
1040
+ met is given. The standard is not intended to compete with existing standards
1041
+ for specific devices with highly specific models and error sources, such as
1042
+ spring-restrained rate gyros, but to provide a uniform guide for those inertial
1043
+ angular sensors that have not been covered elsewhere.","meta_topic_la":["Aerospace
1044
+ Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/671\/926\/","doc_title_t":"IEEE
1045
+ SA - IEEE 671-1985","doc_text_t":"IEEE SA - IEEE 671-1985 IEEE.org IEEE Xplore
1046
+ Digital Library IEEE Standards IEEE Spectrum More Sites eTools Standards Access
1047
+ Standards Search Standards Standards Development Standards Adoption Choose
1048
+ from the many ways to access IEEE SA Standards. Choose from individual or
1049
+ organizational access options to get the standards you need. Find the standards
1041
1050
  you\u2019re looking for. Get involved in the development of market-driven
1042
1051
  technology standards with proven expertise and dedicated support. Learn more
1043
1052
  about how to adopt IEEE standards. Products & Programs Alliance Management
@@ -1086,19 +1095,26 @@ http_interactions:
1086
1095
  and organizational effectiveness program to enable the success of our vital
1087
1096
  volunteers. Read the latest news on IEEE SA. Subscribe to our newsletter and
1088
1097
  keep up to date on the latest standards, event, and activities. MAC Address
1089
- Active Standard IEEE 1554-2005 IEEE Recommended Practice for Inertial Sensor
1090
- Test Equipment, Instrumentation, Data Acquisition, and Analysis Purchase Access
1091
- via Subscription Home Standards IEEE 1554-2005 Test equipment, data acquisition
1092
- equipment, instrumentation, test facilities, and data analysis techniques
1093
- used in inertial sensor testing are described in this recommended practice.
1094
- Sponsor Committee AES\/GA - Gyro Accelerometer Panel Learn More Status Active
1095
- Standard PAR Approval 1999-09-16 Board Approval 2005-06-09 History ANSI Approved:
1096
- 2005-10-05 Published: 2005-11-28 Reaffirmed: 2011-03-31 Additional Resources
1097
- Erratas 1554-2005_errata.pdf Working Group Details Society IEEE Aerospace
1098
- and Electronic Systems Society Learn More Sponsor Committee AES\/GA - Gyro
1099
- Accelerometer Panel Learn More Working Group SENSR_WG - Sensors Working Group
1100
- IEEE Program Manager Dan Perez Contact Working Group Chair Harry Davis Active
1101
- Projects Active Standards Superseded Standards Inactive-Withdrawn Standards
1098
+ Inactive-Reserved Standard IEEE 671-1985 IEEE Standard Specification Format
1099
+ Guide and Test Procedure for Nongyroscopic Inertial Angular Sensors: Jerk,
1100
+ Acceleration, Velocity, and Displacement Purchase Access via Subscription
1101
+ Home Standards IEEE 671-1985 A guide is presented for the preparation of a
1102
+ specification and test procedure for an inertial angular sensor that provides
1103
+ a common meeting ground of terminology and practice for manufacturers and
1104
+ users of an array of sensors that have been developed to meet needs not easily
1105
+ met by traditional spinning-rotor gyroscopes. A test procedure for verifying
1106
+ that the specifications have been met is given. The standard is not intended
1107
+ to compete with existing standards for specific devices with highly specific
1108
+ models and error sources, such as spring-restrained rate gyros, but to provide
1109
+ a uniform guide for those inertial angular sensors that have not been covered
1110
+ elsewhere. Sponsor Committee AES\/GA - Gyro Accelerometer Panel Learn More
1111
+ Status Inactive-Reserved Standard Corrigendum 671-1985\/Cor 1-2010 Board Approval
1112
+ 1983-06-23 History ANSI Approved: 1992-05-06 Published: 1984-11-30 Reaffirmed:
1113
+ 2008-12-10 Inactivated Date: 2019-11-07 Working Group Details Society IEEE
1114
+ Aerospace and Electronic Systems Society Learn More Sponsor Committee AES\/GA
1115
+ - Gyro Accelerometer Panel Learn More Working Group SENSR_WG - Sensors Working
1116
+ Group IEEE Program Manager Dan Perez Contact Working Group Chair Harry Davis
1117
+ Active Projects Active Standards Superseded Standards Inactive-Withdrawn Standards
1102
1118
  Inactive-Reserved Standards P1431 Standard for Specifying and Testing Coriolis
1103
1119
  Vibratory Gyros This standard defines requirements and test procedures for
1104
1120
  a single-axis Coriolis vibratory gyro (CVG) for use as a sensor in attitude
@@ -1115,8 +1131,12 @@ http_interactions:
1115
1131
  and error effects, on filtering, noise, and transient analysis techniques,
1116
1132
  and on calibration and modeling techniques (multipoint tumble analysis, vibration
1117
1133
  and shock test analyses, and geophysical effects in inertial instrument testing).
1118
- Learn More 528-2019 IEEE Standard for Inertial Sensor Terminology Terms and
1119
- definitions relating to inertial sensors are presented in this standard. Usage
1134
+ Learn More 1554-2005 IEEE Recommended Practice for Inertial Sensor Test Equipment,
1135
+ Instrumentation, Data Acquisition, and Analysis Test equipment, data acquisition
1136
+ equipment, instrumentation, test facilities, and data analysis techniques
1137
+ used in inertial sensor testing are described in this recommended practice.
1138
+ Learn More 528-2019 IEEE Standard for Inertial Sensor Terminology Terms and
1139
+ definitions relating to inertial sensors are presented in this standard. Usage
1120
1140
  as understood by the inertial sensor community is given preference over general
1121
1141
  technical usage of the terms herein. The criterion for inclusion of a term
1122
1142
  and its definition in this standard is usefulness as related to inertial sensor
@@ -1218,36 +1238,25 @@ http_interactions:
1218
1238
  Guide and Test Procedure for Single-Degree-of-Freedom Rate-Integrating Gyros
1219
1239
  - Corrigendum 1: 3.3.9.2.2, 3.6.4.1.1, 3.6.4.1.2, 6.3, and 10.10.4.1 Corrections
1220
1240
  are made by this corrigendum to material already published in IEEE Std 529-1980.
1221
- Learn More 671-1985 IEEE Standard Specification Format Guide and Test Procedure
1222
- for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
1223
- and Displacement A guide is presented for the preparation of a specification
1224
- and test procedure for an inertial angular sensor that provides a common meeting
1225
- ground of terminology and practice for manufacturers and users of an array
1226
- of sensors that have been developed to meet needs not easily met by traditional
1227
- spinning-rotor gyroscopes. A test procedure for verifying that the specifications
1228
- have been met is given. The standard is not intended to compete with existing
1229
- standards for specific devices with highly specific models and error sources,
1230
- such as spring-restrained rate gyros, but to provide a uniform guide for those
1231
- inertial angular sensors that have not been covered elsewhere. Learn More
1232
- 671-1985\/Cor 1-2010 IEEE Standard Specification Format Guide and Test Procedure
1233
- for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
1234
- and Displacement Corrigendum 1: 4.7.2.6 Short-Term Stability and Annex A Sensor
1235
- Dynamic Block Diagrams IEEE Std 671-1985 provides specifications and test
1236
- requirements for a non-gyroscopic inertial angular sensor that may measure
1237
- angular jerk, acceleration, rate, or displacement with or without response
1238
- down to zero frequency. A standard specification format is provided. A compilation
1239
- of recommended test procedures, derived from those presently used in the industry,
1240
- is also provided. Informative annexes cover design features and theoretical
1241
- principles of operation. This corrigendum makes changes to 4.7.2.6 to delete
1242
- a sentence that does not belong there, to add a subclause that was inadvertently
1243
- left out, and to renumber the existing subclauses. Changes are also being
1244
- made to fix the block diagrams in Annex A, to correct a misspelling of inertia,
1245
- and to add a missing symbol. Learn More 836-2009 IEEE Recommended Practice
1246
- for Precision Centrifuge Testing of Linear Accelerometers This recommended
1247
- practice describes the conduct and analysis of precision tests that are to
1248
- be performed on linear accelerometers using centrifuge techniques. The term
1249
- u201cprecision,u201d in this context, refers to tests that are conducted to
1250
- evaluate accelerometer parameters, as opposed to those conducted to establish
1241
+ Learn More 671-1985\/Cor 1-2010 IEEE Standard Specification Format Guide and
1242
+ Test Procedure for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration,
1243
+ Velocity, and Displacement Corrigendum 1: 4.7.2.6 Short-Term Stability and
1244
+ Annex A Sensor Dynamic Block Diagrams IEEE Std 671-1985 provides specifications
1245
+ and test requirements for a non-gyroscopic inertial angular sensor that may
1246
+ measure angular jerk, acceleration, rate, or displacement with or without
1247
+ response down to zero frequency. A standard specification format is provided.
1248
+ A compilation of recommended test procedures, derived from those presently
1249
+ used in the industry, is also provided. Informative annexes cover design features
1250
+ and theoretical principles of operation. This corrigendum makes changes to
1251
+ 4.7.2.6 to delete a sentence that does not belong there, to add a subclause
1252
+ that was inadvertently left out, and to renumber the existing subclauses.
1253
+ Changes are also being made to fix the block diagrams in Annex A, to correct
1254
+ a misspelling of inertia, and to add a missing symbol. Learn More 836-2009
1255
+ IEEE Recommended Practice for Precision Centrifuge Testing of Linear Accelerometers
1256
+ This recommended practice describes the conduct and analysis of precision
1257
+ tests that are to be performed on linear accelerometers using centrifuge techniques.
1258
+ The term u201cprecision,u201d in this context, refers to tests that are conducted
1259
+ to evaluate accelerometer parameters, as opposed to those conducted to establish
1251
1260
  environmental survivability only. Evaluation may take the form of determining
1252
1261
  the coefficients of the accelerometer''s model equation, except for bias and
1253
1262
  scale factor, which are most accurately determined by static multi-position
@@ -1267,15 +1276,16 @@ http_interactions:
1267
1276
  the world\u2019s largest technical professional organization dedicated to
1268
1277
  advancing technology for the benefit of humanity. Subscribe Newswire Sign
1269
1278
  up for our monthly newsletter to learn about new developments, including resources,
1270
- insights and more. "}},{"id":"0e5f59ed4630b7396c4a857f43f6bb32af4c28844fefb77ff93fe62204b6b900a7db16a6b235b40889e7c1b34cbfd885f9f106827f93026cac353fc730a1df39","fields":{"meta_keywords_la":["Aerospace
1271
- Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"This
1272
- specification defines the requirements for a single-degree-of-freedom spring-restrained
1273
- rate gyro for [aircraft, missile, spacecraft,______] applications. The rate
1274
- gyro shall be capable of providing [(dc, ac) voltage outputs proportional
1275
- to angular rate inputs up to______ degrees per second, a switch closure(s)
1276
- at angular rates (exceeding,less than)______ (+,-,\u00b1)______ degrees per
1277
- second].","meta_topic_la":["Aerospace Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/292\/485\/","doc_title_t":"IEEE
1278
- SA - IEEE 292-1969","doc_text_t":"IEEE SA - IEEE 292-1969 IEEE.org IEEE Xplore
1279
+ insights and more. "}},{"id":"a4233cec81763a72f53f3f376a9cac2333baa31de6bf799bbe56bc8c375781aa4929717364a8b069c066efe949fdabf77f54fb3b44052711e1baa6a3c4670461","fields":{"meta_keywords_la":["Aerospace
1280
+ Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"Specification
1281
+ and test requirements for a single-axis interferometric fiber optic gyro (IFOG)
1282
+ for use as a sensor in attitude control systems, angular displacement measuring
1283
+ systems, and angular rate measuring systems are defined. A standard specification
1284
+ format guide for the preparation of a single-axis IFOG is provided. A compilation
1285
+ of recommended procedures for testing a fiber optic gyro, derived from those
1286
+ presently used in the industry, is also provided.","meta_topic_la":["Aerospace
1287
+ Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/952\/1320\/","doc_title_t":"IEEE
1288
+ SA - IEEE 952-1997","doc_text_t":"IEEE SA - IEEE 952-1997 IEEE.org IEEE Xplore
1279
1289
  Digital Library IEEE Standards IEEE Spectrum More Sites eTools Standards Access
1280
1290
  Standards Search Standards Standards Development Standards Adoption Choose
1281
1291
  from the many ways to access IEEE SA Standards. Choose from individual or
@@ -1328,17 +1338,19 @@ http_interactions:
1328
1338
  and organizational effectiveness program to enable the success of our vital
1329
1339
  volunteers. Read the latest news on IEEE SA. Subscribe to our newsletter and
1330
1340
  keep up to date on the latest standards, event, and activities. MAC Address
1331
- Inactive-Reserved Standard IEEE 292-1969 IEEE Specification Format for Single-Degree-of-Freedom
1332
- Spring-Restrained Rate Gyros Purchase Access via Subscription Home Standards
1333
- IEEE 292-1969 This specification defines the requirements for a single-degree-of-freedom
1334
- spring-restrained rate gyro for [aircraft, missile, spacecraft,______] applications.
1335
- The rate gyro shall be capable of providing [(dc, ac) voltage outputs proportional
1336
- to angular rate inputs up to______ degrees per second, a switch closure(s)
1337
- at angular rates (exceeding,less than)______ (+,-,\u00b1)______ degrees per
1338
- second]. Sponsor Committee AES\/GA - Gyro Accelerometer Panel Learn More Status
1339
- Inactive-Reserved Standard History ANSI Approved: 1986-11-17 Published: 1968-11-30
1340
- Reaffirmed: 2010-06-17 Inactivated Date: 2021-03-25 Additional Resources Erratas
1341
- 292-1969.pdf Working Group Details Society IEEE Aerospace and Electronic Systems
1341
+ Superseded Standard IEEE 952-1997 IEEE Standard Specification Format Guide
1342
+ and Test Procedure for Single-Axis Interferometric Fiber Optic Gyros Purchase
1343
+ Access via Subscription Home Standards IEEE 952-1997 Specification and test
1344
+ requirements for a single-axis interferometric fiber optic gyro (IFOG) for
1345
+ use as a sensor in attitude control systems, angular displacement measuring
1346
+ systems, and angular rate measuring systems are defined. A standard specification
1347
+ format guide for the preparation of a single-axis IFOG is provided. A compilation
1348
+ of recommended procedures for testing a fiber optic gyro, derived from those
1349
+ presently used in the industry, is also provided. Sponsor Committee AES\/GA
1350
+ - Gyro Accelerometer Panel Learn More Status Superseded Standard PAR Approval
1351
+ 1996-03-21 Superseded by 952-2020 Corrigendum 952-1997\/Cor 1-2016 Board Approval
1352
+ 1997-09-16 History ANSI Approved: 1998-04-27 Published: 1997-11-30 Reaffirmed:
1353
+ 2008-12-10 Working Group Details Society IEEE Aerospace and Electronic Systems
1342
1354
  Society Learn More Sponsor Committee AES\/GA - Gyro Accelerometer Panel Learn
1343
1355
  More Working Group SENSR_WG - Sensors Working Group IEEE Program Manager Dan
1344
1356
  Perez Contact Working Group Chair Harry Davis Active Projects Active Standards
@@ -1407,37 +1419,275 @@ http_interactions:
1407
1419
  Usage as understood by the inertial sensor community is given preference over
1408
1420
  general technical usage of the terms herein. The criterion for inclusion of
1409
1421
  a term and its definition in this standard is usefulness as related to inertial
1410
- sensor technology. Learn More 952-1997 IEEE Standard Specification Format
1411
- Guide and Test Procedure for Single-Axis Interferometric Fiber Optic Gyros
1412
- Specification and test requirements for a single-axis interferometric fiber
1413
- optic gyro (IFOG) for use as a sensor in attitude control systems, angular
1422
+ sensor technology. Learn More 952-1997\/Cor 1-2016 IEEE Standard Specification
1423
+ Format Guide and Test Procedure for Single-Axis Interferometric Fiber Optic
1424
+ Gyros -- Corrigendum 1: Figure 1 and Subclauses 5.3.4, 8.3, 12.11.4.3.2, 12.11.4.3.3,
1425
+ 12.11.4.3.4, 12.12.3.1, and 12.12.4.1 Errors identified in IEEE Std 952-1997
1426
+ are corrected in this corrigendum. Corrections are made to Figure 1 and in
1427
+ subclauses 5.3.4, 8.3, 12.11.4.3.2, 12.11.4.3.3, 12.11.4.3.4, 12.12.3.1, and
1428
+ 12.12.4.1. Learn More No Inactive-Withdrawn Standards 1431-2004 IEEE Standard
1429
+ Specification Format Guide and Test Procedure for Coriolis Vibratory Gyros
1430
+ Specification and test requirements for a single-axis Coriolis vibratory gyro
1431
+ (CVG) for use as a sensor in attitude control systems, angular displacement
1432
+ measuring systems, and angular rate measuring systems are defined. A stadard
1433
+ specification format guide for the preparation of a single-axis CVG is provided.
1434
+ A complilation of recommended procedures for testing a CVG, derived from those
1435
+ presently used in the industry, is also provided. Informative annexes cover
1436
+ CVG design features and theoretical principles of operation. Learn More 1431-2004\/Cor
1437
+ 1-2008 IEEE Standard Specification Format Guide and Test Procedure for Coriolis
1438
+ Vibratory Gyros - Corrigendum 1 Corrigendum to IEEE Std 1431-2004. Learn More
1439
+ 292-1969 IEEE Specification Format for Single-Degree-of-Freedom Spring-Restrained
1440
+ Rate Gyros This specification defines the requirements for a single-degree-of-freedom
1441
+ spring-restrained rate gyro for [aircraft, missile, spacecraft,______] applications.
1442
+ The rate gyro shall be capable of providing [(dc, ac) voltage outputs proportional
1443
+ to angular rate inputs up to______ degrees per second, a switch closure(s)
1444
+ at angular rates (exceeding,less than)______ (+,-,u00b1)______ degrees per
1445
+ second]. Learn More 293-1969 IEEE Test Procedure for Single-Degree-of-Freedom
1446
+ Spring-Restrained Rate Gyros Recommended rate gyro test procedures derived
1447
+ from those currently in use, including test conditions to be considered, are
1448
+ compiled. In some cases alternate methods for measuring a performance characteristic
1449
+ have been included. This standard is intended to be a guide in the preparation
1450
+ of Section 4 of a specification that follows the format of IEEE Std 292, Specification
1451
+ Format for Single-Degree-of-Freedom Spring-Restrained Rate Gyros. Learn More
1452
+ 293-1969\/Cor 1-2014 IEEE Standard for IEEE Test Procedure for Single-Degree-of-Freedom
1453
+ Spring-Restrained Rate Gyros -- Corrigendum 1: Table 1 Heading Correction
1454
+ to Table 1 on page 14 of IEEE Std 293-1969 Learn More 517-1974 IEEE Standard
1455
+ Specification Format Guide and Test Procedure for Single-Degree-of-Freedom
1456
+ Rate-Integrating Gyros A specification format guide for the preparation of
1457
+ a rate-integrating gyro specification that provides a common meeting ground
1458
+ of terminology and practice for manufacturers and users is presented. A compilation
1459
+ of recommended procedures for testing a rate-integrating gyro is given. Learn
1460
+ More 529-1980 Supplement for Strapdown Applications to IEEE Standard Specification
1461
+ Format Guide and Test Procedure for Single-Degree-of-Freedom Rate-Integrating
1462
+ Gyros A specification format guide for the preparation of a rate-integrating
1463
+ gyroscope specification is presented. Recommended procedures for testing a
1464
+ rate-integrating gyroscope are compiled. This standard, when combined with
1465
+ IEEE Std 517-1974 (R1980), defines the requirements and test procedures in
1466
+ terms of characteristics unique to the gyroscope or those applications in
1467
+ which the dynamic angular inputs are significantly greater than the limitations
1468
+ identified in IEEE Std 517. Learn More 529-1980\/Cor 1-2017 IEEE Standard
1469
+ Supplement for Strapdown Applications to IEEE Standard Specification Format
1470
+ Guide and Test Procedure for Single-Degree-of-Freedom Rate-Integrating Gyros
1471
+ - Corrigendum 1: 3.3.9.2.2, 3.6.4.1.1, 3.6.4.1.2, 6.3, and 10.10.4.1 Corrections
1472
+ are made by this corrigendum to material already published in IEEE Std 529-1980.
1473
+ Learn More 671-1985 IEEE Standard Specification Format Guide and Test Procedure
1474
+ for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
1475
+ and Displacement A guide is presented for the preparation of a specification
1476
+ and test procedure for an inertial angular sensor that provides a common meeting
1477
+ ground of terminology and practice for manufacturers and users of an array
1478
+ of sensors that have been developed to meet needs not easily met by traditional
1479
+ spinning-rotor gyroscopes. A test procedure for verifying that the specifications
1480
+ have been met is given. The standard is not intended to compete with existing
1481
+ standards for specific devices with highly specific models and error sources,
1482
+ such as spring-restrained rate gyros, but to provide a uniform guide for those
1483
+ inertial angular sensors that have not been covered elsewhere. Learn More
1484
+ 671-1985\/Cor 1-2010 IEEE Standard Specification Format Guide and Test Procedure
1485
+ for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
1486
+ and Displacement Corrigendum 1: 4.7.2.6 Short-Term Stability and Annex A Sensor
1487
+ Dynamic Block Diagrams IEEE Std 671-1985 provides specifications and test
1488
+ requirements for a non-gyroscopic inertial angular sensor that may measure
1489
+ angular jerk, acceleration, rate, or displacement with or without response
1490
+ down to zero frequency. A standard specification format is provided. A compilation
1491
+ of recommended test procedures, derived from those presently used in the industry,
1492
+ is also provided. Informative annexes cover design features and theoretical
1493
+ principles of operation. This corrigendum makes changes to 4.7.2.6 to delete
1494
+ a sentence that does not belong there, to add a subclause that was inadvertently
1495
+ left out, and to renumber the existing subclauses. Changes are also being
1496
+ made to fix the block diagrams in Annex A, to correct a misspelling of inertia,
1497
+ and to add a missing symbol. Learn More 836-2009 IEEE Recommended Practice
1498
+ for Precision Centrifuge Testing of Linear Accelerometers This recommended
1499
+ practice describes the conduct and analysis of precision tests that are to
1500
+ be performed on linear accelerometers using centrifuge techniques. The term
1501
+ u201cprecision,u201d in this context, refers to tests that are conducted to
1502
+ evaluate accelerometer parameters, as opposed to those conducted to establish
1503
+ environmental survivability only. Evaluation may take the form of determining
1504
+ the coefficients of the accelerometer''s model equation, except for bias and
1505
+ scale factor, which are most accurately determined by static multi-position
1506
+ tests. Alternatively, evaluation may only establish that the accelerometer
1507
+ output complies with specific error limit criteria. Learn More Facebook Twitter
1508
+ LinkedIn Instagram YouTube IEEE SA About Us IEEE SA Membership Corporate Program
1509
+ Training & Development Policies & Procedures Contact Us Board of Governors
1510
+ About Board of Governors Awards Committee Corporate Advisory Group Industry
1511
+ Connections Committee Registration Authority Committee Strategic Planning
1512
+ Coordination Committee Standards Board About Standards Board Board Approvals
1513
+ Audit Committee New Standards Committee Patent Committee Procedures Committee
1514
+ Standards Review Committee News & Events News IEEE SA Newsletter Events Home
1515
+ Sitemap Contact & Support Accessibility Nondiscrimination Policy IEEE Ethics
1516
+ Reporting IEEE Privacy Policy IEEE SA Copyright Policy \u00a9 Copyright 2021
1517
+ IEEE \u2013 All rights reserved. Use of this website signifies your agreement
1518
+ to the IEEE Terms and Conditions . A not-for-profit organization, IEEE is
1519
+ the world\u2019s largest technical professional organization dedicated to
1520
+ advancing technology for the benefit of humanity. Subscribe Newswire Sign
1521
+ up for our monthly newsletter to learn about new developments, including resources,
1522
+ insights and more. "}},{"id":"1e7fa450951b3af061c01809cb2a2b51676250c0d1331c7347e03c5433bf478168f717fe2f8de898a11955cc575ef729baee3a2c2e1be936f000d19dcd689a81","fields":{"meta_keywords_la":["Aerospace
1523
+ Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"Specification
1524
+ and test procedures for a single-axis interferometric fiber optic gyro (IFOG)
1525
+ for use as a sensor in attitude control systems, angular displacement measuring
1526
+ systems, and angular rate measuring systems are defined. The test procedures
1527
+ are derived from those presently used in the industry.","meta_topic_la":["Aerospace
1528
+ Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/952\/7496\/","doc_title_t":"IEEE
1529
+ SA - IEEE 952-2020","doc_text_t":"IEEE SA - IEEE 952-2020 IEEE.org IEEE Xplore
1530
+ Digital Library IEEE Standards IEEE Spectrum More Sites eTools Standards Access
1531
+ Standards Search Standards Standards Development Standards Adoption Choose
1532
+ from the many ways to access IEEE SA Standards. Choose from individual or
1533
+ organizational access options to get the standards you need. Find the standards
1534
+ you\u2019re looking for. Get involved in the development of market-driven
1535
+ technology standards with proven expertise and dedicated support. Learn more
1536
+ about how to adopt IEEE standards. Products & Programs Alliance Management
1537
+ Services Conformity Assessment & Certification IEEE SA Open Source Industry
1538
+ Affiliate Network (IAN) Industry Connections The National Electrical Safety
1539
+ Code\u00ae (NESC\u00ae) Registration Authority Government Engagement Program
1540
+ on Standards Standards Fellowship All Products & Programs Full ecosystem of
1541
+ standards-related solutions to help drive awareness, activation, and adoption.
1542
+ Providing support services to help manage the day-to-day operations of industry
1543
+ groups, allowing key stakeholders to focus on the work at hand. Focused on
1544
+ development and implementation of rigorous conformity assessment programs
1545
+ designed to help accelerate market adoption, reduce costs and more. A vendor-neutral,
1546
+ inclusive, open source platform\u2014for all, from independent software developers
1547
+ and start ups to industry, academic and research institutions. Open to consortia,
1548
+ industry alliance or other industry organizations, looking to bring forward
1549
+ specifications for standards development and market adoption. Facilitating
1550
+ collaboration among organizations and individuals as they hone and refine
1551
+ their thinking on rapidly changing technologies. Guidelines for practical
1552
+ safeguarding during the installation, operation, and maintenance of electric
1553
+ supply, communication lines and associated equipment. Assigns and maintains
1554
+ unique identifiers and unambiguous names to objects for those wishing to register
1555
+ them. Program for policymakers providing tailored standards information, access
1556
+ to the IEEE SA standardization ecosystem, and standardization resources. Providing
1557
+ global standards professionals the opportunity to observe the IEEE standards
1558
+ development process and learn about technical areas of interest. See all the
1559
+ programs, products, and services that IEEE SA has to offer. Focuses Artificial
1560
+ Intelligence Systems (AIS) Connectivity & Telecom Energy Foundational Technologies
1561
+ Healthcare and Life Sciences Mobility Government Engagement Strategic focuses
1562
+ and industries where IEEE SA is raising the world\u2019s standards. Developing
1563
+ accessible and sustainable approaches and solutions for practical application
1564
+ of AIS principles and frameworks. Advancing robust, responsible, and affordable
1565
+ connectivity. Enabling sustainable, efficient, and accessible energy through
1566
+ technological advances on a global scale. Working to standardize seamless
1567
+ and ubiquitous connectivity across all applications of connected technologies.
1568
+ Focused on enabling affordable healthcare, access to medicine, and innovation
1569
+ to improve overall global wellness. Working to help the evolving mobility
1570
+ ecosystem address some of its greatest business opportunities that have the
1571
+ potential to solve major societal challenges. Building bridges between the
1572
+ worlds of technology, standards, and policy making. Get Involved Events IEEE
1573
+ SA Membership How to Get Involved Learn about opportunities to engage with
1574
+ IEEE SA. Join us at upcoming virtual or in-person events. Flexible membership
1575
+ options that offer enhanced participation in IEEE SA activities, standards
1576
+ development, and governance. There are many opportunities for participation,
1577
+ find the right one for you. Resources Training & Development News IEEE SA
1578
+ Newsletter Training and communication resources to stay connected. Individual
1579
+ and organizational effectiveness program to enable the success of our vital
1580
+ volunteers. Read the latest news on IEEE SA. Subscribe to our newsletter and
1581
+ keep up to date on the latest standards, event, and activities. MAC Address
1582
+ Active Standard IEEE 952-2020 IEEE Standard for Specifying and Testing Single-Axis
1583
+ Interferometric Fiber Optic Gyros Purchase Access via Subscription Home Standards
1584
+ IEEE 952-2020 Specification and test procedures for a single-axis interferometric
1585
+ fiber optic gyro (IFOG) for use as a sensor in attitude control systems, angular
1414
1586
  displacement measuring systems, and angular rate measuring systems are defined.
1415
- A standard specification format guide for the preparation of a single-axis
1416
- IFOG is provided. A compilation of recommended procedures for testing a fiber
1417
- optic gyro, derived from those presently used in the industry, is also provided.
1418
- Learn More 952-1997\/Cor 1-2016 IEEE Standard Specification Format Guide and
1419
- Test Procedure for Single-Axis Interferometric Fiber Optic Gyros -- Corrigendum
1420
- 1: Figure 1 and Subclauses 5.3.4, 8.3, 12.11.4.3.2, 12.11.4.3.3, 12.11.4.3.4,
1421
- 12.12.3.1, and 12.12.4.1 Errors identified in IEEE Std 952-1997 are corrected
1422
- in this corrigendum. Corrections are made to Figure 1 and in subclauses 5.3.4,
1423
- 8.3, 12.11.4.3.2, 12.11.4.3.3, 12.11.4.3.4, 12.12.3.1, and 12.12.4.1. Learn
1424
- More No Inactive-Withdrawn Standards 1431-2004 IEEE Standard Specification
1425
- Format Guide and Test Procedure for Coriolis Vibratory Gyros Specification
1426
- and test requirements for a single-axis Coriolis vibratory gyro (CVG) for
1427
- use as a sensor in attitude control systems, angular displacement measuring
1428
- systems, and angular rate measuring systems are defined. A stadard specification
1429
- format guide for the preparation of a single-axis CVG is provided. A complilation
1430
- of recommended procedures for testing a CVG, derived from those presently
1431
- used in the industry, is also provided. Informative annexes cover CVG design
1432
- features and theoretical principles of operation. Learn More 1431-2004\/Cor
1587
+ The test procedures are derived from those presently used in the industry.
1588
+ Sponsor Committee AES\/GA - Gyro Accelerometer Panel Learn More Status Active
1589
+ Standard PAR Approval 2019-02-08 Superseding 952-1997 Board Approval 2020-09-24
1590
+ History Published: 2021-02-12 Working Group Details Society IEEE Aerospace
1591
+ and Electronic Systems Society Learn More Sponsor Committee AES\/GA - Gyro
1592
+ Accelerometer Panel Learn More Working Group SENSR_WG - Sensors Working Group
1593
+ IEEE Program Manager Dan Perez Contact Working Group Chair Harry Davis Active
1594
+ Projects Active Standards Superseded Standards Inactive-Withdrawn Standards
1595
+ Inactive-Reserved Standards P1431 Standard for Specifying and Testing Coriolis
1596
+ Vibratory Gyros This standard defines requirements and test procedures for
1597
+ a single-axis Coriolis vibratory gyro (CVG) for use as a sensor in attitude
1598
+ control systems, angular displacement measuring systems, and angular rate
1599
+ measuring systems. Informative annexes cover CVG design features and theoretical
1600
+ principles of operation. Learn More 1293-2018 IEEE Standard Specification
1601
+ Format Guide and Test Procedure for Linear Single-Axis, Nongyroscopic Accelerometers
1602
+ The specification and test requirements for a linear, single-axis, nongyroscopic
1603
+ accelerometer for use in inertial navigation, guidance, and leveling systems
1604
+ are defined. A standard specification guide and a compilation of recommended
1605
+ test procedures for such accelerometers are provided. Informative annexes
1606
+ are given on the various types of such accelerometers (force or pendulous
1607
+ torque rebalance with analog or digital output, vibrating beam, and micromechanical)
1608
+ and error effects, on filtering, noise, and transient analysis techniques,
1609
+ and on calibration and modeling techniques (multipoint tumble analysis, vibration
1610
+ and shock test analyses, and geophysical effects in inertial instrument testing).
1611
+ Learn More 1554-2005 IEEE Recommended Practice for Inertial Sensor Test Equipment,
1612
+ Instrumentation, Data Acquisition, and Analysis Test equipment, data acquisition
1613
+ equipment, instrumentation, test facilities, and data analysis techniques
1614
+ used in inertial sensor testing are described in this recommended practice.
1615
+ Learn More 528-2019 IEEE Standard for Inertial Sensor Terminology Terms and
1616
+ definitions relating to inertial sensors are presented in this standard. Usage
1617
+ as understood by the inertial sensor community is given preference over general
1618
+ technical usage of the terms herein. The criterion for inclusion of a term
1619
+ and its definition in this standard is usefulness as related to inertial sensor
1620
+ technology. Learn More 647-2006 IEEE Standard Specification Format Guide and
1621
+ Test Procedure for Single-Axis Laser Gyros Specification and test requirements
1622
+ for a single-axis ring laser gyro (RLG) for use as a sensor in attitude control
1623
+ systems, angular displacement measuring systems, and angular rate measuring
1624
+ systems are defined. A standard specification format guide for the preparation
1625
+ of a single-axis RLG is provided. A compilation of recommended procedures
1626
+ for testing an RLG, derived from those presently used in the industry, is
1627
+ also provided. Learn More 813-1988 IEEE Specification Format Guide and Test
1628
+ Procedure for Two-Degree-of-Freedom Dynamically Tuned Gyros A format guide
1629
+ for the preparation of a two-degree-of-freedom dynamically tuned gyro (DTG)
1630
+ specification is given that provides a common ground of terminology and practice
1631
+ for manufacturers and users. A compilation of recommended procedures for testing
1632
+ a DTG is also given. The requirements and test procedures are defined in terms
1633
+ unique to the DTG. They cover applications of the gyro as an angular motion
1634
+ sensor in navigation and control systems. They apply to two modes of use:
1635
+ (1) as a strap-down sensor in operating environments typical of aircraft and
1636
+ missile applications, and (2) as a sensor in gimballed platform applications
1637
+ in which the dynamic angular inputs to which the gyro is subjected are benign
1638
+ relative to the accuracy required. In the case of the strap-down DTG, the
1639
+ characteristics of the external capture loops are considered to the extent
1640
+ necessary to define the gyro performance. Learn More 1293-1998\/Cor 1-2008
1641
+ IEEE Standard Specification Format Guide and Test Procedure for Linear,Single-Axis,
1642
+ Nongyroscopic Accelerometers Corrigendum 1: Changes to Annex K and Annex L
1643
+ Corrigendum to IEEE Std 1293-1998. Specification and test requirements for
1644
+ linear, single-axis, nongyroscopic accelerometers for use as a sensor in attitude
1645
+ control systems, linear displacement measuring systems, and linear rate measuring
1646
+ systems are defined. The specification format guide and test procedure standard
1647
+ applies to force-rebalance accelerometers (pendulous or translational proof
1648
+ mass), vibrating beam accelerometers (VBAs), and micromechanical accelerometers
1649
+ that range from lesser accuracy to high accuracy devices. Learn More 528-2001
1650
+ IEEE Standard for Inertial Sensor Terminology Terms and definitions relating
1651
+ to inertial senors are presented in this standard. Usage as understood by
1652
+ the inertial sensor community is given preference over general technical usage
1653
+ of the terms herein. The criterion for inclusion of a term and its definition
1654
+ in this standard is usefulness as related to inertial sensor technology. Learn
1655
+ More 952-1997 IEEE Standard Specification Format Guide and Test Procedure
1656
+ for Single-Axis Interferometric Fiber Optic Gyros Specification and test requirements
1657
+ for a single-axis interferometric fiber optic gyro (IFOG) for use as a sensor
1658
+ in attitude control systems, angular displacement measuring systems, and angular
1659
+ rate measuring systems are defined. A standard specification format guide
1660
+ for the preparation of a single-axis IFOG is provided. A compilation of recommended
1661
+ procedures for testing a fiber optic gyro, derived from those presently used
1662
+ in the industry, is also provided. Learn More 952-1997\/Cor 1-2016 IEEE Standard
1663
+ Specification Format Guide and Test Procedure for Single-Axis Interferometric
1664
+ Fiber Optic Gyros -- Corrigendum 1: Figure 1 and Subclauses 5.3.4, 8.3, 12.11.4.3.2,
1665
+ 12.11.4.3.3, 12.11.4.3.4, 12.12.3.1, and 12.12.4.1 Errors identified in IEEE
1666
+ Std 952-1997 are corrected in this corrigendum. Corrections are made to Figure
1667
+ 1 and in subclauses 5.3.4, 8.3, 12.11.4.3.2, 12.11.4.3.3, 12.11.4.3.4, 12.12.3.1,
1668
+ and 12.12.4.1. Learn More No Inactive-Withdrawn Standards 1431-2004 IEEE Standard
1669
+ Specification Format Guide and Test Procedure for Coriolis Vibratory Gyros
1670
+ Specification and test requirements for a single-axis Coriolis vibratory gyro
1671
+ (CVG) for use as a sensor in attitude control systems, angular displacement
1672
+ measuring systems, and angular rate measuring systems are defined. A stadard
1673
+ specification format guide for the preparation of a single-axis CVG is provided.
1674
+ A complilation of recommended procedures for testing a CVG, derived from those
1675
+ presently used in the industry, is also provided. Informative annexes cover
1676
+ CVG design features and theoretical principles of operation. Learn More 1431-2004\/Cor
1433
1677
  1-2008 IEEE Standard Specification Format Guide and Test Procedure for Coriolis
1434
1678
  Vibratory Gyros - Corrigendum 1 Corrigendum to IEEE Std 1431-2004. Learn More
1435
- 293-1969 IEEE Test Procedure for Single-Degree-of-Freedom Spring-Restrained
1436
- Rate Gyros Recommended rate gyro test procedures derived from those currently
1437
- in use, including test conditions to be considered, are compiled. In some
1438
- cases alternate methods for measuring a performance characteristic have been
1439
- included. This standard is intended to be a guide in the preparation of Section
1440
- 4 of a specification that follows the format of IEEE Std 292, Specification
1679
+ 292-1969 IEEE Specification Format for Single-Degree-of-Freedom Spring-Restrained
1680
+ Rate Gyros This specification defines the requirements for a single-degree-of-freedom
1681
+ spring-restrained rate gyro for [aircraft, missile, spacecraft,______] applications.
1682
+ The rate gyro shall be capable of providing [(dc, ac) voltage outputs proportional
1683
+ to angular rate inputs up to______ degrees per second, a switch closure(s)
1684
+ at angular rates (exceeding,less than)______ (+,-,u00b1)______ degrees per
1685
+ second]. Learn More 293-1969 IEEE Test Procedure for Single-Degree-of-Freedom
1686
+ Spring-Restrained Rate Gyros Recommended rate gyro test procedures derived
1687
+ from those currently in use, including test conditions to be considered, are
1688
+ compiled. In some cases alternate methods for measuring a performance characteristic
1689
+ have been included. This standard is intended to be a guide in the preparation
1690
+ of Section 4 of a specification that follows the format of IEEE Std 292, Specification
1441
1691
  Format for Single-Degree-of-Freedom Spring-Restrained Rate Gyros. Learn More
1442
1692
  293-1969\/Cor 1-2014 IEEE Standard for IEEE Test Procedure for Single-Degree-of-Freedom
1443
1693
  Spring-Restrained Rate Gyros -- Corrigendum 1: Table 1 Heading Correction
@@ -1509,249 +1759,7 @@ http_interactions:
1509
1759
  the world\u2019s largest technical professional organization dedicated to
1510
1760
  advancing technology for the benefit of humanity. Subscribe Newswire Sign
1511
1761
  up for our monthly newsletter to learn about new developments, including resources,
1512
- insights and more. "}},{"id":"994a2773a3f87366d9e7596ae1a277954c2c4d5f654e59ddbb8d2e5c8d83027a101d36188dbe0e50e60d6d3cb6d58028038c31c169368300a82ade2d172ce459","fields":{"meta_keywords_la":["Aerospace
1513
- Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"Recommended
1514
- rate gyro test procedures derived from those currently in use, including test
1515
- conditions to be considered, are compiled. In some cases alternate methods
1516
- for measuring a performance characteristic have been included. This standard
1517
- is intended to be a guide in the preparation of Section 4 of a specification
1518
- that follows the format of IEEE Std 292, Specification Format for Single-Degree-of-Freedom
1519
- Spring-Restrained Rate Gyros.","meta_topic_la":["Aerospace Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/293\/486\/","doc_title_t":"IEEE
1520
- SA - IEEE 293-1969","doc_text_t":"IEEE SA - IEEE 293-1969 IEEE.org IEEE Xplore
1521
- Digital Library IEEE Standards IEEE Spectrum More Sites eTools Standards Access
1522
- Standards Search Standards Standards Development Standards Adoption Choose
1523
- from the many ways to access IEEE SA Standards. Choose from individual or
1524
- organizational access options to get the standards you need. Find the standards
1525
- you\u2019re looking for. Get involved in the development of market-driven
1526
- technology standards with proven expertise and dedicated support. Learn more
1527
- about how to adopt IEEE standards. Products & Programs Alliance Management
1528
- Services Conformity Assessment & Certification IEEE SA Open Source Industry
1529
- Affiliate Network (IAN) Industry Connections The National Electrical Safety
1530
- Code\u00ae (NESC\u00ae) Registration Authority Government Engagement Program
1531
- on Standards Standards Fellowship All Products & Programs Full ecosystem of
1532
- standards-related solutions to help drive awareness, activation, and adoption.
1533
- Providing support services to help manage the day-to-day operations of industry
1534
- groups, allowing key stakeholders to focus on the work at hand. Focused on
1535
- development and implementation of rigorous conformity assessment programs
1536
- designed to help accelerate market adoption, reduce costs and more. A vendor-neutral,
1537
- inclusive, open source platform\u2014for all, from independent software developers
1538
- and start ups to industry, academic and research institutions. Open to consortia,
1539
- industry alliance or other industry organizations, looking to bring forward
1540
- specifications for standards development and market adoption. Facilitating
1541
- collaboration among organizations and individuals as they hone and refine
1542
- their thinking on rapidly changing technologies. Guidelines for practical
1543
- safeguarding during the installation, operation, and maintenance of electric
1544
- supply, communication lines and associated equipment. Assigns and maintains
1545
- unique identifiers and unambiguous names to objects for those wishing to register
1546
- them. Program for policymakers providing tailored standards information, access
1547
- to the IEEE SA standardization ecosystem, and standardization resources. Providing
1548
- global standards professionals the opportunity to observe the IEEE standards
1549
- development process and learn about technical areas of interest. See all the
1550
- programs, products, and services that IEEE SA has to offer. Focuses Artificial
1551
- Intelligence Systems (AIS) Connectivity & Telecom Energy Foundational Technologies
1552
- Healthcare and Life Sciences Mobility Government Engagement Strategic focuses
1553
- and industries where IEEE SA is raising the world\u2019s standards. Developing
1554
- accessible and sustainable approaches and solutions for practical application
1555
- of AIS principles and frameworks. Advancing robust, responsible, and affordable
1556
- connectivity. Enabling sustainable, efficient, and accessible energy through
1557
- technological advances on a global scale. Working to standardize seamless
1558
- and ubiquitous connectivity across all applications of connected technologies.
1559
- Focused on enabling affordable healthcare, access to medicine, and innovation
1560
- to improve overall global wellness. Working to help the evolving mobility
1561
- ecosystem address some of its greatest business opportunities that have the
1562
- potential to solve major societal challenges. Building bridges between the
1563
- worlds of technology, standards, and policy making. Get Involved Events IEEE
1564
- SA Membership How to Get Involved Learn about opportunities to engage with
1565
- IEEE SA. Join us at upcoming virtual or in-person events. Flexible membership
1566
- options that offer enhanced participation in IEEE SA activities, standards
1567
- development, and governance. There are many opportunities for participation,
1568
- find the right one for you. Resources Training & Development News IEEE SA
1569
- Newsletter Training and communication resources to stay connected. Individual
1570
- and organizational effectiveness program to enable the success of our vital
1571
- volunteers. Read the latest news on IEEE SA. Subscribe to our newsletter and
1572
- keep up to date on the latest standards, event, and activities. MAC Address
1573
- Inactive-Reserved Standard IEEE 293-1969 IEEE Test Procedure for Single-Degree-of-Freedom
1574
- Spring-Restrained Rate Gyros Purchase Access via Subscription Home Standards
1575
- IEEE 293-1969 Recommended rate gyro test procedures derived from those currently
1576
- in use, including test conditions to be considered, are compiled. In some
1577
- cases alternate methods for measuring a performance characteristic have been
1578
- included. This standard is intended to be a guide in the preparation of Section
1579
- 4 of a specification that follows the format of IEEE Std 292, Specification
1580
- Format for Single-Degree-of-Freedom Spring-Restrained Rate Gyros. Sponsor
1581
- Committee AES\/GA - Gyro Accelerometer Panel Learn More Status Inactive-Reserved
1582
- Standard Corrigendum 293-1969\/Cor 1-2014 History ANSI Approved: 1986-11-17
1583
- Published: 1968-11-30 Reaffirmed: 2010-06-17 Inactivated Date: 2021-03-25
1584
- Working Group Details Society IEEE Aerospace and Electronic Systems Society
1585
- Learn More Sponsor Committee AES\/GA - Gyro Accelerometer Panel Learn More
1586
- Working Group SENSR_WG - Sensors Working Group IEEE Program Manager Dan Perez
1587
- Contact Working Group Chair Harry Davis Active Projects Active Standards Superseded
1588
- Standards Inactive-Withdrawn Standards Inactive-Reserved Standards P1431 Standard
1589
- for Specifying and Testing Coriolis Vibratory Gyros This standard defines
1590
- requirements and test procedures for a single-axis Coriolis vibratory gyro
1591
- (CVG) for use as a sensor in attitude control systems, angular displacement
1592
- measuring systems, and angular rate measuring systems. Informative annexes
1593
- cover CVG design features and theoretical principles of operation. Learn More
1594
- 1293-2018 IEEE Standard Specification Format Guide and Test Procedure for
1595
- Linear Single-Axis, Nongyroscopic Accelerometers The specification and test
1596
- requirements for a linear, single-axis, nongyroscopic accelerometer for use
1597
- in inertial navigation, guidance, and leveling systems are defined. A standard
1598
- specification guide and a compilation of recommended test procedures for such
1599
- accelerometers are provided. Informative annexes are given on the various
1600
- types of such accelerometers (force or pendulous torque rebalance with analog
1601
- or digital output, vibrating beam, and micromechanical) and error effects,
1602
- on filtering, noise, and transient analysis techniques, and on calibration
1603
- and modeling techniques (multipoint tumble analysis, vibration and shock test
1604
- analyses, and geophysical effects in inertial instrument testing). Learn More
1605
- 1554-2005 IEEE Recommended Practice for Inertial Sensor Test Equipment, Instrumentation,
1606
- Data Acquisition, and Analysis Test equipment, data acquisition equipment,
1607
- instrumentation, test facilities, and data analysis techniques used in inertial
1608
- sensor testing are described in this recommended practice. Learn More 528-2019
1609
- IEEE Standard for Inertial Sensor Terminology Terms and definitions relating
1610
- to inertial sensors are presented in this standard. Usage as understood by
1611
- the inertial sensor community is given preference over general technical usage
1612
- of the terms herein. The criterion for inclusion of a term and its definition
1613
- in this standard is usefulness as related to inertial sensor technology. Learn
1614
- More 647-2006 IEEE Standard Specification Format Guide and Test Procedure
1615
- for Single-Axis Laser Gyros Specification and test requirements for a single-axis
1616
- ring laser gyro (RLG) for use as a sensor in attitude control systems, angular
1617
- displacement measuring systems, and angular rate measuring systems are defined.
1618
- A standard specification format guide for the preparation of a single-axis
1619
- RLG is provided. A compilation of recommended procedures for testing an RLG,
1620
- derived from those presently used in the industry, is also provided. Learn
1621
- More 813-1988 IEEE Specification Format Guide and Test Procedure for Two-Degree-of-Freedom
1622
- Dynamically Tuned Gyros A format guide for the preparation of a two-degree-of-freedom
1623
- dynamically tuned gyro (DTG) specification is given that provides a common
1624
- ground of terminology and practice for manufacturers and users. A compilation
1625
- of recommended procedures for testing a DTG is also given. The requirements
1626
- and test procedures are defined in terms unique to the DTG. They cover applications
1627
- of the gyro as an angular motion sensor in navigation and control systems.
1628
- They apply to two modes of use: (1) as a strap-down sensor in operating environments
1629
- typical of aircraft and missile applications, and (2) as a sensor in gimballed
1630
- platform applications in which the dynamic angular inputs to which the gyro
1631
- is subjected are benign relative to the accuracy required. In the case of
1632
- the strap-down DTG, the characteristics of the external capture loops are
1633
- considered to the extent necessary to define the gyro performance. Learn More
1634
- 952-2020 IEEE Standard for Specifying and Testing Single-Axis Interferometric
1635
- Fiber Optic Gyros Specification and test procedures for a single-axis interferometric
1636
- fiber optic gyro (IFOG) for use as a sensor in attitude control systems, angular
1637
- displacement measuring systems, and angular rate measuring systems are defined.
1638
- The test procedures are derived from those presently used in the industry.
1639
- Learn More 1293-1998\/Cor 1-2008 IEEE Standard Specification Format Guide
1640
- and Test Procedure for Linear,Single-Axis, Nongyroscopic Accelerometers Corrigendum
1641
- 1: Changes to Annex K and Annex L Corrigendum to IEEE Std 1293-1998. Specification
1642
- and test requirements for linear, single-axis, nongyroscopic accelerometers
1643
- for use as a sensor in attitude control systems, linear displacement measuring
1644
- systems, and linear rate measuring systems are defined. The specification
1645
- format guide and test procedure standard applies to force-rebalance accelerometers
1646
- (pendulous or translational proof mass), vibrating beam accelerometers (VBAs),
1647
- and micromechanical accelerometers that range from lesser accuracy to high
1648
- accuracy devices. Learn More 528-2001 IEEE Standard for Inertial Sensor Terminology
1649
- Terms and definitions relating to inertial senors are presented in this standard.
1650
- Usage as understood by the inertial sensor community is given preference over
1651
- general technical usage of the terms herein. The criterion for inclusion of
1652
- a term and its definition in this standard is usefulness as related to inertial
1653
- sensor technology. Learn More 952-1997 IEEE Standard Specification Format
1654
- Guide and Test Procedure for Single-Axis Interferometric Fiber Optic Gyros
1655
- Specification and test requirements for a single-axis interferometric fiber
1656
- optic gyro (IFOG) for use as a sensor in attitude control systems, angular
1657
- displacement measuring systems, and angular rate measuring systems are defined.
1658
- A standard specification format guide for the preparation of a single-axis
1659
- IFOG is provided. A compilation of recommended procedures for testing a fiber
1660
- optic gyro, derived from those presently used in the industry, is also provided.
1661
- Learn More 952-1997\/Cor 1-2016 IEEE Standard Specification Format Guide and
1662
- Test Procedure for Single-Axis Interferometric Fiber Optic Gyros -- Corrigendum
1663
- 1: Figure 1 and Subclauses 5.3.4, 8.3, 12.11.4.3.2, 12.11.4.3.3, 12.11.4.3.4,
1664
- 12.12.3.1, and 12.12.4.1 Errors identified in IEEE Std 952-1997 are corrected
1665
- in this corrigendum. Corrections are made to Figure 1 and in subclauses 5.3.4,
1666
- 8.3, 12.11.4.3.2, 12.11.4.3.3, 12.11.4.3.4, 12.12.3.1, and 12.12.4.1. Learn
1667
- More No Inactive-Withdrawn Standards 1431-2004 IEEE Standard Specification
1668
- Format Guide and Test Procedure for Coriolis Vibratory Gyros Specification
1669
- and test requirements for a single-axis Coriolis vibratory gyro (CVG) for
1670
- use as a sensor in attitude control systems, angular displacement measuring
1671
- systems, and angular rate measuring systems are defined. A stadard specification
1672
- format guide for the preparation of a single-axis CVG is provided. A complilation
1673
- of recommended procedures for testing a CVG, derived from those presently
1674
- used in the industry, is also provided. Informative annexes cover CVG design
1675
- features and theoretical principles of operation. Learn More 1431-2004\/Cor
1676
- 1-2008 IEEE Standard Specification Format Guide and Test Procedure for Coriolis
1677
- Vibratory Gyros - Corrigendum 1 Corrigendum to IEEE Std 1431-2004. Learn More
1678
- 292-1969 IEEE Specification Format for Single-Degree-of-Freedom Spring-Restrained
1679
- Rate Gyros This specification defines the requirements for a single-degree-of-freedom
1680
- spring-restrained rate gyro for [aircraft, missile, spacecraft,______] applications.
1681
- The rate gyro shall be capable of providing [(dc, ac) voltage outputs proportional
1682
- to angular rate inputs up to______ degrees per second, a switch closure(s)
1683
- at angular rates (exceeding,less than)______ (+,-,u00b1)______ degrees per
1684
- second]. Learn More 293-1969\/Cor 1-2014 IEEE Standard for IEEE Test Procedure
1685
- for Single-Degree-of-Freedom Spring-Restrained Rate Gyros -- Corrigendum 1:
1686
- Table 1 Heading Correction to Table 1 on page 14 of IEEE Std 293-1969 Learn
1687
- More 517-1974 IEEE Standard Specification Format Guide and Test Procedure
1688
- for Single-Degree-of-Freedom Rate-Integrating Gyros A specification format
1689
- guide for the preparation of a rate-integrating gyro specification that provides
1690
- a common meeting ground of terminology and practice for manufacturers and
1691
- users is presented. A compilation of recommended procedures for testing a
1692
- rate-integrating gyro is given. Learn More 529-1980 Supplement for Strapdown
1693
- Applications to IEEE Standard Specification Format Guide and Test Procedure
1694
- for Single-Degree-of-Freedom Rate-Integrating Gyros A specification format
1695
- guide for the preparation of a rate-integrating gyroscope specification is
1696
- presented. Recommended procedures for testing a rate-integrating gyroscope
1697
- are compiled. This standard, when combined with IEEE Std 517-1974 (R1980),
1698
- defines the requirements and test procedures in terms of characteristics unique
1699
- to the gyroscope or those applications in which the dynamic angular inputs
1700
- are significantly greater than the limitations identified in IEEE Std 517.
1701
- Learn More 529-1980\/Cor 1-2017 IEEE Standard Supplement for Strapdown Applications
1702
- to IEEE Standard Specification Format Guide and Test Procedure for Single-Degree-of-Freedom
1703
- Rate-Integrating Gyros - Corrigendum 1: 3.3.9.2.2, 3.6.4.1.1, 3.6.4.1.2, 6.3,
1704
- and 10.10.4.1 Corrections are made by this corrigendum to material already
1705
- published in IEEE Std 529-1980. Learn More 671-1985 IEEE Standard Specification
1706
- Format Guide and Test Procedure for Nongyroscopic Inertial Angular Sensors:
1707
- Jerk, Acceleration, Velocity, and Displacement A guide is presented for the
1708
- preparation of a specification and test procedure for an inertial angular
1709
- sensor that provides a common meeting ground of terminology and practice for
1710
- manufacturers and users of an array of sensors that have been developed to
1711
- meet needs not easily met by traditional spinning-rotor gyroscopes. A test
1712
- procedure for verifying that the specifications have been met is given. The
1713
- standard is not intended to compete with existing standards for specific devices
1714
- with highly specific models and error sources, such as spring-restrained rate
1715
- gyros, but to provide a uniform guide for those inertial angular sensors that
1716
- have not been covered elsewhere. Learn More 671-1985\/Cor 1-2010 IEEE Standard
1717
- Specification Format Guide and Test Procedure for Nongyroscopic Inertial Angular
1718
- Sensors: Jerk, Acceleration, Velocity, and Displacement Corrigendum 1: 4.7.2.6
1719
- Short-Term Stability and Annex A Sensor Dynamic Block Diagrams IEEE Std 671-1985
1720
- provides specifications and test requirements for a non-gyroscopic inertial
1721
- angular sensor that may measure angular jerk, acceleration, rate, or displacement
1722
- with or without response down to zero frequency. A standard specification
1723
- format is provided. A compilation of recommended test procedures, derived
1724
- from those presently used in the industry, is also provided. Informative annexes
1725
- cover design features and theoretical principles of operation. This corrigendum
1726
- makes changes to 4.7.2.6 to delete a sentence that does not belong there,
1727
- to add a subclause that was inadvertently left out, and to renumber the existing
1728
- subclauses. Changes are also being made to fix the block diagrams in Annex
1729
- A, to correct a misspelling of inertia, and to add a missing symbol. Learn
1730
- More 836-2009 IEEE Recommended Practice for Precision Centrifuge Testing of
1731
- Linear Accelerometers This recommended practice describes the conduct and
1732
- analysis of precision tests that are to be performed on linear accelerometers
1733
- using centrifuge techniques. The term u201cprecision,u201d in this context,
1734
- refers to tests that are conducted to evaluate accelerometer parameters, as
1735
- opposed to those conducted to establish environmental survivability only.
1736
- Evaluation may take the form of determining the coefficients of the accelerometer''s
1737
- model equation, except for bias and scale factor, which are most accurately
1738
- determined by static multi-position tests. Alternatively, evaluation may only
1739
- establish that the accelerometer output complies with specific error limit
1740
- criteria. Learn More Facebook Twitter LinkedIn Instagram YouTube IEEE SA About
1741
- Us IEEE SA Membership Corporate Program Training & Development Policies &
1742
- Procedures Contact Us Board of Governors About Board of Governors Awards Committee
1743
- Corporate Advisory Group Industry Connections Committee Registration Authority
1744
- Committee Strategic Planning Coordination Committee Standards Board About
1745
- Standards Board Board Approvals Audit Committee New Standards Committee Patent
1746
- Committee Procedures Committee Standards Review Committee News & Events News
1747
- IEEE SA Newsletter Events Home Sitemap Contact & Support Accessibility Nondiscrimination
1748
- Policy IEEE Ethics Reporting IEEE Privacy Policy IEEE SA Copyright Policy
1749
- \u00a9 Copyright 2021 IEEE \u2013 All rights reserved. Use of this website
1750
- signifies your agreement to the IEEE Terms and Conditions . A not-for-profit
1751
- organization, IEEE is the world\u2019s largest technical professional organization
1752
- dedicated to advancing technology for the benefit of humanity. Subscribe Newswire
1753
- Sign up for our monthly newsletter to learn about new developments, including
1754
- resources, insights and more. "}},{"id":"bb9b1e609b978f144b76836e53e732b49a45ebab58d5564322993cdb4096ac01db83b21a950514ee32fbe4391f7bd60c8092709c5cf14768ddf1d12fce0d04a3","fields":{"meta_keywords_la":["Nuclear
1762
+ insights and more. "}},{"id":"bb9b1e609b978f144b76836e53e732b49a45ebab58d5564322993cdb4096ac01db83b21a950514ee32fbe4391f7bd60c8092709c5cf14768ddf1d12fce0d04a3","fields":{"meta_keywords_la":["Nuclear
1755
1763
  Power"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"Specification
1756
1764
  and test requirements for a single-axis Coriolis vibratory gyro (CVG) for
1757
1765
  use as a sensor in attitude control systems, angular displacement measuring
@@ -2494,51 +2502,50 @@ http_interactions:
2494
2502
  to inertial senors are presented in this standard. Usage as understood by
2495
2503
  the inertial sensor community is given preference over general technical usage
2496
2504
  of the terms herein. The criterion for inclusion of a term and its&hellip;<\/div><\/div><div
2497
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/671\/926\/\">
2498
- IEEE 671-1985<\/a><\/h4><div class=\"content\">A guide is presented for the
2499
- preparation of a specification and test procedure for an inertial angular
2500
- sensor that provides a common meeting ground of terminology and practice for
2501
- manufacturers and users of an array of sensors that have been&hellip;<\/div><\/div><div
2502
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/1293\/5590\/\">
2503
- IEEE 1293-2018<\/a><\/h4><div class=\"content\">The specification and test
2504
- requirements for a linear, single-axis, nongyroscopic accelerometer for use
2505
- in inertial navigation, guidance, and leveling systems are defined. A standard
2506
- specification guide and a compilation of recommended test procedures for such
2507
- accelerometers are provided. Informative annexes&hellip;<\/div><\/div><div
2508
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/1554\/2292\/\">
2509
- IEEE 1554-2005<\/a><\/h4><div class=\"content\">Test equipment, data acquisition
2510
- equipment, instrumentation, test facilities, and data analysis techniques
2511
- used in inertial sensor testing are described in this recommended practice.<\/div><\/div><div
2512
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/292\/485\/\">
2513
- IEEE 292-1969<\/a><\/h4><div class=\"content\">This specification defines
2514
- the requirements for a single-degree-of-freedom spring-restrained rate gyro
2515
- for [aircraft, missile, spacecraft,______] applications. The rate gyro shall
2516
- be capable of providing [(dc, ac) voltage outputs proportional to angular
2517
- rate inputs up to______ degrees per second, a switch&hellip;<\/div><\/div><div
2518
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/293\/486\/\">
2519
- IEEE 293-1969<\/a><\/h4><div class=\"content\">Recommended rate gyro test
2520
- procedures derived from those currently in use, including test conditions
2521
- to be considered, are compiled. In some cases alternate methods for measuring
2522
- a performance characteristic have been included. This standard is intended
2523
- to be a guide&hellip;<\/div><\/div><div class=\"hit\"><h4 class=\"title\"><a
2524
- href=\"https:\/\/standards.ieee.org\/ieee\/1431\/3519\/\"> IEEE 1431-2004<\/a><\/h4><div
2525
- class=\"content\">Specification and test requirements for a single-axis Coriolis
2526
- vibratory gyro (CVG) for use as a sensor in attitude control systems, angular
2505
+ class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/813\/1200\/\">
2506
+ IEEE 813-1988<\/a><\/h4><div class=\"content\">A format guide for the preparation
2507
+ of a two-degree-of-freedom dynamically tuned gyro (DTG) specification is given
2508
+ that provides a common ground of terminology and practice for manufacturers
2509
+ and users. A compilation of recommended procedures for testing a DTG is also&hellip;<\/div><\/div><div
2510
+ class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/836\/3449\/\">
2511
+ IEEE 836-2009<\/a><\/h4><div class=\"content\">This recommended practice describes
2512
+ the conduct and analysis of precision tests that are to be performed on linear
2513
+ accelerometers using centrifuge techniques. The term \u201cprecision,\u201d
2514
+ in this context, refers to tests that are conducted to evaluate accelerometer
2515
+ parameters, as opposed&hellip;<\/div><\/div><div class=\"hit\"><h4 class=\"title\"><a
2516
+ href=\"https:\/\/standards.ieee.org\/ieee\/671\/926\/\"> IEEE 671-1985<\/a><\/h4><div
2517
+ class=\"content\">A guide is presented for the preparation of a specification
2518
+ and test procedure for an inertial angular sensor that provides a common meeting
2519
+ ground of terminology and practice for manufacturers and users of an array
2520
+ of sensors that have been&hellip;<\/div><\/div><div class=\"hit\"><h4 class=\"title\"><a
2521
+ href=\"https:\/\/standards.ieee.org\/ieee\/952\/1320\/\"> IEEE 952-1997<\/a><\/h4><div
2522
+ class=\"content\">Specification and test requirements for a single-axis interferometric
2523
+ fiber optic gyro (IFOG) for use as a sensor in attitude control systems, angular
2527
2524
  displacement measuring systems, and angular rate measuring systems are defined.
2528
- A stadard specification format guide for the preparation of&hellip;<\/div><\/div><div
2529
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/517\/760\/\">
2530
- IEEE 517-1974<\/a><\/h4><div class=\"content\">A specification format guide
2531
- for the preparation of a rate-integrating gyro specification that provides
2532
- a common meeting ground of terminology and practice for manufacturers and
2533
- users is presented. A compilation of recommended procedures for testing a
2534
- rate-integrating gyro is given.<\/div><\/div><div class=\"hit\"><h4 class=\"title\"><a
2535
- href=\"https:\/\/standards.ieee.org\/ieee\/529\/781\/\"> IEEE 529-1980<\/a><\/h4><div
2525
+ A standard specification format guide for the preparation&hellip;<\/div><\/div><div
2526
+ class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/952\/7496\/\">
2527
+ IEEE 952-2020<\/a><\/h4><div class=\"content\">Specification and test procedures
2528
+ for a single-axis interferometric fiber optic gyro (IFOG) for use as a sensor
2529
+ in attitude control systems, angular displacement measuring systems, and angular
2530
+ rate measuring systems are defined. The test procedures are derived from those
2531
+ presently&hellip;<\/div><\/div><div class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/1431\/3519\/\">
2532
+ IEEE 1431-2004<\/a><\/h4><div class=\"content\">Specification and test requirements
2533
+ for a single-axis Coriolis vibratory gyro (CVG) for use as a sensor in attitude
2534
+ control systems, angular displacement measuring systems, and angular rate
2535
+ measuring systems are defined. A stadard specification format guide for the
2536
+ preparation of&hellip;<\/div><\/div><div class=\"hit\"><h4 class=\"title\"><a
2537
+ href=\"https:\/\/standards.ieee.org\/ieee\/517\/760\/\"> IEEE 517-1974<\/a><\/h4><div
2536
2538
  class=\"content\">A specification format guide for the preparation of a rate-integrating
2537
- gyroscope specification is presented. Recommended procedures for testing a
2538
- rate-integrating gyroscope are compiled. This standard, when combined with
2539
- IEEE Std 517-1974 (R1980), defines the requirements and test procedures in
2540
- terms&hellip;<\/div><\/div><div class=\"pagination\"><nav aria-label=\"Search
2541
- results page navigation\">\n<ul class=\"pagination justify-content-center\">\n<li
2539
+ gyro specification that provides a common meeting ground of terminology and
2540
+ practice for manufacturers and users is presented. A compilation of recommended
2541
+ procedures for testing a rate-integrating gyro is given.<\/div><\/div><div
2542
+ class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/529\/781\/\">
2543
+ IEEE 529-1980<\/a><\/h4><div class=\"content\">A specification format guide
2544
+ for the preparation of a rate-integrating gyroscope specification is presented.
2545
+ Recommended procedures for testing a rate-integrating gyroscope are compiled.
2546
+ This standard, when combined with IEEE Std 517-1974 (R1980), defines the requirements
2547
+ and test procedures in terms&hellip;<\/div><\/div><div class=\"pagination\"><nav
2548
+ aria-label=\"Search results page navigation\">\n<ul class=\"pagination justify-content-center\">\n<li
2542
2549
  class=\"page-item active\" aria-current=\"page\"><a class=\"page-link\" href=\"#1\">1<\/a><\/li>\n<li
2543
2550
  class=\"page-item \" ><a class=\"page-link\" href=\"#2\">2<\/a><\/li>\n<li
2544
2551
  class=\"page-item \" ><a class=\"page-link\" href=\"#3\">3<\/a><\/li>\n<li
@@ -2563,7 +2570,7 @@ http_interactions:
2563
2570
  href=\"#\" class=\"filter-reset\" data-filter=\"topic\" data-value=\"all\">Reset<\/a><\/div><\/div><!--
2564
2571
  end filter -->"}'
2565
2572
  http_version:
2566
- recorded_at: Sun, 30 Jan 2022 20:08:41 GMT
2573
+ recorded_at: Tue, 08 Feb 2022 16:57:38 GMT
2567
2574
  - request:
2568
2575
  method: get
2569
2576
  uri: https://standards.ieee.org/ieee/528/7292/
@@ -2583,7 +2590,7 @@ http_interactions:
2583
2590
  message: OK
2584
2591
  headers:
2585
2592
  Date:
2586
- - Sun, 30 Jan 2022 20:08:43 GMT
2593
+ - Tue, 08 Feb 2022 16:57:39 GMT
2587
2594
  Content-Type:
2588
2595
  - text/html; charset=UTF-8
2589
2596
  Transfer-Encoding:
@@ -2619,13 +2626,13 @@ http_interactions:
2619
2626
  Server:
2620
2627
  - cloudflare
2621
2628
  Cf-Ray:
2622
- - 6d5d556f9e791c33-SOF
2629
+ - 6da665effdb98eea-SOF
2623
2630
  Alt-Svc:
2624
2631
  - h3=":443"; ma=86400, h3-29=":443"; ma=86400
2625
2632
  body:
2626
2633
  encoding: ASCII-8BIT
2627
2634
  string: !binary |-
2628
- CjwhZG9jdHlwZSBodG1sPgo8aHRtbCBsYW5nPSJlbiI+CjxoZWFkPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSIiPgoKICAgIDwhLS0gZmllbGRzIGZvciBDbG91ZHNlYXJjaCAtLT4KPG1ldGEgbmFtZT0idGl0bGUiIGNvbnRlbnQ9IklFRUUgU0EgLSBJRUVFIDUyOC0yMDE5IC0gSUVFRSBTdGFuZGFyZCBmb3IgSW5lcnRpYWwgU2Vuc29yIFRlcm1pbm9sb2d5Ii8+CjxtZXRhIG5hbWU9InR5cGUiIGNvbnRlbnQ9IlN0YW5kYXJkIi8+CjxtZXRhIG5hbWU9InRvcGljIiBjb250ZW50PSJBZXJvc3BhY2UgRWxlY3Ryb25pY3MiLz4KPG1ldGEgbmFtZT0iY2F0ZWdvcnkiIGNvbnRlbnQ9IiIvPgo8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iVGVybXMgYW5kIGRlZmluaXRpb25zIHJlbGF0aW5nIHRvIGluZXJ0aWFsIHNlbnNvcnMgYXJlIHByZXNlbnRlZCBpbiB0aGlzIHN0YW5kYXJkLiBVc2FnZSBhcyB1bmRlcnN0b29kIGJ5IHRoZSBpbmVydGlhbCBzZW5zb3IgY29tbXVuaXR5IGlzIGdpdmVuIHByZWZlcmVuY2Ugb3ZlciBnZW5lcmFsIHRlY2huaWNhbCB1c2FnZSBvZiB0aGUgdGVybXMgaGVyZWluLiBUaGUgY3JpdGVyaW9uIGZvciBpbmNsdXNpb24gb2YgYSB0ZXJtIGFuZCBpdHMgZGVmaW5pdGlvbiBpbiB0aGlzIHN0YW5kYXJkIGlzIHVzZWZ1bG5lc3MgYXMgcmVsYXRlZCB0byBpbmVydGlhbCBzZW5zb3IgdGVjaG5vbG9neS4iLz4KPG1ldGEgbmFtZT0ia2V5d29yZHMiIGNvbnRlbnQ9IkFlcm9zcGFjZSBFbGVjdHJvbmljcyIvPgo8IS0tIFByb2plY3RzL1N0YW5kYXJkcyAtLT4KPG1ldGEgbmFtZT0iU29jaWV0eSIgY29udGVudD0iSUVFRSBBZXJvc3BhY2UgYW5kIEVsZWN0cm9uaWMgU3lzdGVtcyBTb2NpZXR5Ii8+CjxtZXRhIG5hbWU9IlN0ZFJlY05vIiBjb250ZW50PSI3MjkyIi8+CjxtZXRhIG5hbWU9IlN0YXR1cyIgY29udGVudD0iQWN0aXZlIFN0YW5kYXJkIi8+CgogICAgCiAgICA8dGl0bGU+SUVFRSBTQSAtIElFRUUgNTI4LTIwMTk8L3RpdGxlPgoKICAgIDxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlX2Zhdmljb24uaWNvIj4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlX2FwcGxlX3RvdWNoX2ljb24ucG5nIj4KCiAgICA8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20iPgogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tIiBjcm9zc29yaWdpbj4KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9T3BlbitTYW5zOml0YWwsd2dodEAwLDQwMDswLDUwMDswLDYwMDswLDcwMDswLDgwMDsxLDQwMDsxLDYwMDsxLDcwMCZkaXNwbGF5PXN3YXAiCiAgICAgICAgICByZWw9InN0eWxlc2hlZXQiPgoKICAgIDwhLS0gR29vZ2xlIFRhZyBNYW5hZ2VyIC0tPgogICAgPHNjcmlwdD4oZnVuY3Rpb24odyxkLHMsbCxpKXt3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFydCc6CiAgICAgICAgICAgICAgICBuZXcgRGF0ZSgpLmdldFRpbWUoKSxldmVudDonZ3RtLmpzJ30pO3ZhciBmPWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUocylbMF0sCiAgICAgICAgICAgIGo9ZC5jcmVhdGVFbGVtZW50KHMpLGRsPWwhPSdkYXRhTGF5ZXInPycmbD0nK2w6Jyc7ai5hc3luYz10cnVlO2ouc3JjPQogICAgICAgICAgICAnaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vZ3RtLmpzP2lkPScraStkbDtmLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGosZik7CiAgICAgICAgfSkod2luZG93LGRvY3VtZW50LCdzY3JpcHQnLCdkYXRhTGF5ZXInLCdHVE0tTVI4VDg0MycpOzwvc2NyaXB0PgogICAgPCEtLSBFbmQgR29vZ2xlIFRhZyBNYW5hZ2VyIC0tPgoKICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2tpdC5mb250YXdlc29tZS5jb20vMmQ3NGYyODJmNi5qcyIgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+CgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9ib290c3RyYXBANS4xLjMvZGlzdC9jc3MvYm9vdHN0cmFwLm1pbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIKICAgICAgICAgIGludGVncml0eT0ic2hhMzg0LTFCbUU0a1dCcTc4aVloRmxkdkt1aGZUQVU2YXVVOHRUOTRXckhmdGpEYnJDRVhTVTFvQm9xeWwyUXZaNmpJVzMiIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiPgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9zdHlsZS5jc3M/dGltZT0yMDIyMDEyNyIgcmVsPSJzdHlsZXNoZWV0Ij4KCiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9zMy11cy13ZXN0LTIuYW1hem9uYXdzLmNvbS9pZWVlc2h1dHBhZ2VzL2dkcHIvc2V0dGluZ3MuanMiPjwvc2NyaXB0PgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIKICAgICAgICAgIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2Nvb2tpZWNvbnNlbnQyLzMuMC4zL2Nvb2tpZWNvbnNlbnQubWluLmNzcyIvPgogICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2Nvb2tpZWNvbnNlbnQyLzMuMC4zL2Nvb2tpZWNvbnNlbnQubWluLmpzIj48L3NjcmlwdD4KCiAgICA8c2NyaXB0PgogICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24gKCkgewogICAgICAgICAgICB3aW5kb3cuY29va2llY29uc2VudC5pbml0aWFsaXNlKGpzb24pCiAgICAgICAgfSk7CiAgICA8L3NjcmlwdD4KCiAgICA8bWV0YSBuYW1lPSdyb2JvdHMnIGNvbnRlbnQ9J2luZGV4LCBmb2xsb3csIG1heC1pbWFnZS1wcmV2aWV3OmxhcmdlLCBtYXgtc25pcHBldDotMSwgbWF4LXZpZGVvLXByZXZpZXc6LTEnIC8+CgoJPCEtLSBUaGlzIHNpdGUgaXMgb3B0aW1pemVkIHdpdGggdGhlIFlvYXN0IFNFTyBwbHVnaW4gdjE4LjAgLSBodHRwczovL3lvYXN0LmNvbS93b3JkcHJlc3MvcGx1Z2lucy9zZW8vIC0tPgoJPG1ldGEgcHJvcGVydHk9Im9nOmxvY2FsZSIgY29udGVudD0iZW5fVVMiIC8+Cgk8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0id2Vic2l0ZSIgLz4KCTxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IlNBIE1haW4gU2l0ZSIgLz4KCTxtZXRhIG5hbWU9InR3aXR0ZXI6Y2FyZCIgY29udGVudD0ic3VtbWFyeV9sYXJnZV9pbWFnZSIgLz4KCTxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vbGQranNvbiIgY2xhc3M9InlvYXN0LXNjaGVtYS1ncmFwaCI+eyJAY29udGV4dCI6Imh0dHBzOi8vc2NoZW1hLm9yZyIsIkBncmFwaCI6W3siQHR5cGUiOiJPcmdhbml6YXRpb24iLCJAaWQiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8jb3JnYW5pemF0aW9uIiwibmFtZSI6IklFRUUgU0EiLCJ1cmwiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8iLCJzYW1lQXMiOltdLCJsb2dvIjp7IkB0eXBlIjoiSW1hZ2VPYmplY3QiLCJAaWQiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8jbG9nbyIsImluTGFuZ3VhZ2UiOiJlbi1VUyIsInVybCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy9pbXBvcnQvaWVlZXNhLWxvZ28ucG5nIiwiY29udGVudFVybCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy9pbXBvcnQvaWVlZXNhLWxvZ28ucG5nIiwid2lkdGgiOjcyMCwiaGVpZ2h0Ijo0MzIsImNhcHRpb24iOiJJRUVFIFNBIn0sImltYWdlIjp7IkBpZCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyNsb2dvIn19LHsiQHR5cGUiOiJXZWJTaXRlIiwiQGlkIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvI3dlYnNpdGUiLCJ1cmwiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8iLCJuYW1lIjoiU0EgTWFpbiBTaXRlIiwiZGVzY3JpcHRpb24iOiIiLCJwdWJsaXNoZXIiOnsiQGlkIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvI29yZ2FuaXphdGlvbiJ9LCJwb3RlbnRpYWxBY3Rpb24iOlt7IkB0eXBlIjoiU2VhcmNoQWN0aW9uIiwidGFyZ2V0Ijp7IkB0eXBlIjoiRW50cnlQb2ludCIsInVybFRlbXBsYXRlIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvP3M9e3NlYXJjaF90ZXJtX3N0cmluZ30ifSwicXVlcnktaW5wdXQiOiJyZXF1aXJlZCBuYW1lPXNlYXJjaF90ZXJtX3N0cmluZyJ9XSwiaW5MYW5ndWFnZSI6ImVuLVVTIn0seyJAdHlwZSI6IldlYlBhZ2UiLCJAaWQiOiIjd2VicGFnZSIsInVybCI6IiIsIm5hbWUiOiIiLCJpc1BhcnRPZiI6eyJAaWQiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8jd2Vic2l0ZSJ9LCJicmVhZGNydW1iIjp7IkBpZCI6IiNicmVhZGNydW1iIn0sImluTGFuZ3VhZ2UiOiJlbi1VUyIsInBvdGVudGlhbEFjdGlvbiI6W3siQHR5cGUiOiJSZWFkQWN0aW9uIiwidGFyZ2V0IjpbIiJdfV19LHsiQHR5cGUiOiJCcmVhZGNydW1iTGlzdCIsIkBpZCI6IiNicmVhZGNydW1iIiwiaXRlbUxpc3RFbGVtZW50IjpbeyJAdHlwZSI6Ikxpc3RJdGVtIiwicG9zaXRpb24iOjEsIm5hbWUiOiJIb21lIiwiaXRlbSI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyJ9LHsiQHR5cGUiOiJMaXN0SXRlbSIsInBvc2l0aW9uIjoyLCJuYW1lIjoiIn1dfV19PC9zY3JpcHQ+Cgk8IS0tIC8gWW9hc3QgU0VPIHBsdWdpbi4gLS0+CgoKPGxpbmsgcmVsPSdkbnMtcHJlZmV0Y2gnIGhyZWY9Jy8vcy53Lm9yZycgLz4KCQk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJCXdpbmRvdy5fd3BlbW9qaVNldHRpbmdzID0geyJiYXNlVXJsIjoiaHR0cHM6XC9cL3Mudy5vcmdcL2ltYWdlc1wvY29yZVwvZW1vamlcLzEzLjEuMFwvNzJ4NzJcLyIsImV4dCI6Ii5wbmciLCJzdmdVcmwiOiJodHRwczpcL1wvcy53Lm9yZ1wvaW1hZ2VzXC9jb3JlXC9lbW9qaVwvMTMuMS4wXC9zdmdcLyIsInN2Z0V4dCI6Ii5zdmciLCJzb3VyY2UiOnsiY29uY2F0ZW1vamkiOiJodHRwczpcL1wvc3RhbmRhcmRzLmllZWUub3JnXC93cC1pbmNsdWRlc1wvanNcL3dwLWVtb2ppLXJlbGVhc2UubWluLmpzP3Zlcj01LjguMyJ9fTsKCQkJIWZ1bmN0aW9uKGUsYSx0KXt2YXIgbixyLG8saT1hLmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpLHA9aS5nZXRDb250ZXh0JiZpLmdldENvbnRleHQoIjJkIik7ZnVuY3Rpb24gcyhlLHQpe3ZhciBhPVN0cmluZy5mcm9tQ2hhckNvZGU7cC5jbGVhclJlY3QoMCwwLGkud2lkdGgsaS5oZWlnaHQpLHAuZmlsbFRleHQoYS5hcHBseSh0aGlzLGUpLDAsMCk7ZT1pLnRvRGF0YVVSTCgpO3JldHVybiBwLmNsZWFyUmVjdCgwLDAsaS53aWR0aCxpLmhlaWdodCkscC5maWxsVGV4dChhLmFwcGx5KHRoaXMsdCksMCwwKSxlPT09aS50b0RhdGFVUkwoKX1mdW5jdGlvbiBjKGUpe3ZhciB0PWEuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7dC5zcmM9ZSx0LmRlZmVyPXQudHlwZT0idGV4dC9qYXZhc2NyaXB0IixhLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF0uYXBwZW5kQ2hpbGQodCl9Zm9yKG89QXJyYXkoImZsYWciLCJlbW9qaSIpLHQuc3VwcG9ydHM9e2V2ZXJ5dGhpbmc6ITAsZXZlcnl0aGluZ0V4Y2VwdEZsYWc6ITB9LHI9MDtyPG8ubGVuZ3RoO3IrKyl0LnN1cHBvcnRzW29bcl1dPWZ1bmN0aW9uKGUpe2lmKCFwfHwhcC5maWxsVGV4dClyZXR1cm4hMTtzd2l0Y2gocC50ZXh0QmFzZWxpbmU9InRvcCIscC5mb250PSI2MDAgMzJweCBBcmlhbCIsZSl7Y2FzZSJmbGFnIjpyZXR1cm4gcyhbMTI3OTg3LDY1MDM5LDgyMDUsOTg5NSw2NTAzOV0sWzEyNzk4Nyw2NTAzOSw4MjAzLDk4OTUsNjUwMzldKT8hMTohcyhbNTUzNTYsNTY4MjYsNTUzNTYsNTY4MTldLFs1NTM1Niw1NjgyNiw4MjAzLDU1MzU2LDU2ODE5XSkmJiFzKFs1NTM1Niw1NzMzMiw1NjEyOCw1NjQyMyw1NjEyOCw1NjQxOCw1NjEyOCw1NjQyMSw1NjEyOCw1NjQzMCw1NjEyOCw1NjQyMyw1NjEyOCw1NjQ0N10sWzU1MzU2LDU3MzMyLDgyMDMsNTYxMjgsNTY0MjMsODIwMyw1NjEyOCw1NjQxOCw4MjAzLDU2MTI4LDU2NDIxLDgyMDMsNTYxMjgsNTY0MzAsODIwMyw1NjEyOCw1NjQyMyw4MjAzLDU2MTI4LDU2NDQ3XSk7Y2FzZSJlbW9qaSI6cmV0dXJuIXMoWzEwMDg0LDY1MDM5LDgyMDUsNTUzNTcsNTY2MTNdLFsxMDA4NCw2NTAzOSw4MjAzLDU1MzU3LDU2NjEzXSl9cmV0dXJuITF9KG9bcl0pLHQuc3VwcG9ydHMuZXZlcnl0aGluZz10LnN1cHBvcnRzLmV2ZXJ5dGhpbmcmJnQuc3VwcG9ydHNbb1tyXV0sImZsYWciIT09b1tyXSYmKHQuc3VwcG9ydHMuZXZlcnl0aGluZ0V4Y2VwdEZsYWc9dC5zdXBwb3J0cy5ldmVyeXRoaW5nRXhjZXB0RmxhZyYmdC5zdXBwb3J0c1tvW3JdXSk7dC5zdXBwb3J0cy5ldmVyeXRoaW5nRXhjZXB0RmxhZz10LnN1cHBvcnRzLmV2ZXJ5dGhpbmdFeGNlcHRGbGFnJiYhdC5zdXBwb3J0cy5mbGFnLHQuRE9NUmVhZHk9ITEsdC5yZWFkeUNhbGxiYWNrPWZ1bmN0aW9uKCl7dC5ET01SZWFkeT0hMH0sdC5zdXBwb3J0cy5ldmVyeXRoaW5nfHwobj1mdW5jdGlvbigpe3QucmVhZHlDYWxsYmFjaygpfSxhLmFkZEV2ZW50TGlzdGVuZXI/KGEuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbiwhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6KGUuYXR0YWNoRXZlbnQoIm9ubG9hZCIsbiksYS5hdHRhY2hFdmVudCgib25yZWFkeXN0YXRlY2hhbmdlIixmdW5jdGlvbigpeyJjb21wbGV0ZSI9PT1hLnJlYWR5U3RhdGUmJnQucmVhZHlDYWxsYmFjaygpfSkpLChuPXQuc291cmNlfHx7fSkuY29uY2F0ZW1vamk/YyhuLmNvbmNhdGVtb2ppKTpuLndwZW1vamkmJm4udHdlbW9qaSYmKGMobi50d2Vtb2ppKSxjKG4ud3BlbW9qaSkpKX0od2luZG93LGRvY3VtZW50LHdpbmRvdy5fd3BlbW9qaVNldHRpbmdzKTsKCQk8L3NjcmlwdD4KCQk8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgppbWcud3Atc21pbGV5LAppbWcuZW1vamkgewoJZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7Cglib3JkZXI6IG5vbmUgIWltcG9ydGFudDsKCWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsKCWhlaWdodDogMWVtICFpbXBvcnRhbnQ7Cgl3aWR0aDogMWVtICFpbXBvcnRhbnQ7CgltYXJnaW46IDAgLjA3ZW0gIWltcG9ydGFudDsKCXZlcnRpY2FsLWFsaWduOiAtMC4xZW0gIWltcG9ydGFudDsKCWJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsKCXBhZGRpbmc6IDAgIWltcG9ydGFudDsKfQo8L3N0eWxlPgoJPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0ndHJpYmUtZXZlbnRzLXByby1taW5pLWNhbGVuZGFyLWJsb2NrLXN0eWxlcy1jc3MnICBocmVmPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3BsdWdpbnMvZXZlbnRzLWNhbGVuZGFyLXByby9zcmMvcmVzb3VyY2VzL2Nzcy90cmliZS1ldmVudHMtcHJvLW1pbmktY2FsZW5kYXItYmxvY2subWluLmNzcz92ZXI9NS4xMi4wJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0nd3AtYmxvY2stbGlicmFyeS1jc3MnICBocmVmPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1pbmNsdWRlcy9jc3MvZGlzdC9ibG9jay1saWJyYXJ5L3N0eWxlLm1pbi5jc3M/dmVyPTUuOC4zJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0naWVlZS1jbG91ZHNlYXJjaC1jc3MtY3NzJyAgaHJlZj0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlLXNhL2Nsb3Vkc2VhcmNoL2Nzcy9pZWVlLWNsb3Vkc2VhcmNoLmNzcz90aW1lPTIwMjIwMTI2JiMwMzg7dmVyPTUuOC4zJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0naWVlZS13aWRnZXQtY3NzLWNzcycgIGhyZWY9J2h0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdGhlbWVzL2llZWUtc2EtdGhlbWUvaWVlZS1zYS93aWRnZXRzL2Nzcy93aWRnZXRzLmNzcz90aW1lPTIwMjIwMTI2JiMwMzg7dmVyPTUuOC4zJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtaW5jbHVkZXMvanMvanF1ZXJ5L2pxdWVyeS5taW4uanM/dmVyPTMuNi4wJyBpZD0nanF1ZXJ5LWNvcmUtanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1pbmNsdWRlcy9qcy9qcXVlcnkvanF1ZXJ5LW1pZ3JhdGUubWluLmpzP3Zlcj0zLjMuMicgaWQ9J2pxdWVyeS1taWdyYXRlLWpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIGlkPSdpZWVlLWNsb3Vkc2VhcmNoLWpzLWpzLWV4dHJhJz4KLyogPCFbQ0RBVEFbICovCnZhciBpZWVlX2FqYXhfb2JqZWN0ID0geyJhamF4X3VybCI6Imh0dHBzOlwvXC9zdGFuZGFyZHMuaWVlZS5vcmdcL3dwLWFkbWluXC9hZG1pbi1hamF4LnBocCJ9OwovKiBdXT4gKi8KPC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdGhlbWVzL2llZWUtc2EtdGhlbWUvaWVlZS1zYS9jbG91ZHNlYXJjaC9qcy9pZWVlLWNsb3Vkc2VhcmNoLmpzP3RpbWU9MjAyMjAxMjYmIzAzODt2ZXI9NS44LjMnIGlkPSdpZWVlLWNsb3Vkc2VhcmNoLWpzLWpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlLXNhL3dpZGdldHMvanMvaWVlZS13aWRnZXRzLmpzP3RpbWU9MjAyMjAxMjYmIzAzODt2ZXI9NS44LjMnIGlkPSdpZWVlLXdpZGdldC1qcy1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBpZD0naWVlZS1zYS1zY3JpcHRzLWpzLWV4dHJhJz4KLyogPCFbQ0RBVEFbICovCnZhciBpZWVlX2FqYXhfb2JqZWN0ID0geyJhamF4X3VybCI6Imh0dHBzOlwvXC9zdGFuZGFyZHMuaWVlZS5vcmdcL3dwLWFkbWluXC9hZG1pbi1hamF4LnBocCJ9OwovKiBdXT4gKi8KPC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdGhlbWVzL2llZWUtc2EtdGhlbWUvaWVlZS1zYS9qcy9pZWVlLXNhLmpzP3RpbWU9MjAyMjAxMjYmIzAzODt2ZXI9NS44LjMnIGlkPSdpZWVlLXNhLXNjcmlwdHMtanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWUtc2EvanMvbWFya2V0by5qcz92ZXI9NS44LjMnIGlkPSdpZWVlLW1hcmtldG8tanMnPjwvc2NyaXB0Pgo8bGluayByZWw9Imh0dHBzOi8vYXBpLncub3JnLyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtanNvbi8iIC8+PGxpbmsgcmVsPSJFZGl0VVJJIiB0eXBlPSJhcHBsaWNhdGlvbi9yc2QreG1sIiB0aXRsZT0iUlNEIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy94bWxycGMucGhwP3JzZCIgLz4KPGxpbmsgcmVsPSJ3bHdtYW5pZmVzdCIgdHlwZT0iYXBwbGljYXRpb24vd2x3bWFuaWZlc3QreG1sIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1pbmNsdWRlcy93bHdtYW5pZmVzdC54bWwiIC8+IAo8bWV0YSBuYW1lPSJ0ZWMtYXBpLXZlcnNpb24iIGNvbnRlbnQ9InYxIj48bWV0YSBuYW1lPSJ0ZWMtYXBpLW9yaWdpbiIgY29udGVudD0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmciPjxsaW5rIHJlbD0iYWx0ZXJuYXRlIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1qc29uL3RyaWJlL2V2ZW50cy92MS8iIC8+PG1ldGEgbmFtZT0iZ2VuZXJhdG9yIiBjb250ZW50PSJQb3dlcmVkIGJ5IFdQQmFrZXJ5IFBhZ2UgQnVpbGRlciAtIGRyYWcgYW5kIGRyb3AgcGFnZSBidWlsZGVyIGZvciBXb3JkUHJlc3MuIi8+Cjxub3NjcmlwdD48c3R5bGU+IC53cGJfYW5pbWF0ZV93aGVuX2FsbW9zdF92aXNpYmxlIHsgb3BhY2l0eTogMTsgfTwvc3R5bGU+PC9ub3NjcmlwdD4KCjwvaGVhZD4KPGJvZHkgY2xhc3M9ImJsb2cgdHJpYmUtbm8tanMgd3BiLWpzLWNvbXBvc2VyIGpzLWNvbXAtdmVyLTYuNy4wIHZjX3Jlc3BvbnNpdmUiID4KPCEtLSBHb29nbGUgVGFnIE1hbmFnZXIgKG5vc2NyaXB0KSAtLT4KPG5vc2NyaXB0PjxpZnJhbWUgc3JjPSJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ucy5odG1sP2lkPUdUTS1NUjhUODQzIiBoZWlnaHQ9IjAiIHdpZHRoPSIwIiBzdHlsZT0iZGlzcGxheTpub25lO3Zpc2liaWxpdHk6aGlkZGVuIj48L2lmcmFtZT48L25vc2NyaXB0Pgo8IS0tIEVuZCBHb29nbGUgVGFnIE1hbmFnZXIgKG5vc2NyaXB0KSAtLT4KPGhlYWRlcj4KICAgIDxzZWN0aW9uIGlkPSJ0b3AtYmFyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTEwIGQtbm9uZSBkLW1kLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiB0b3AtYmFyIHRvcC1iYXItbGVmdCIgcm9sZT0ibmF2aWdhdGlvbiIgYXJpYS1sYWJlbD0iR2xvYmFsIGxlZnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnLyIgdGFyZ2V0PSJfYmxhbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJJRUVFLm9yZyI+PGkgY2xhc3M9Im5hdi1pY29uIGZhIGZhLWhvbWUiPjwvaT5JRUVFLm9yZzwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Imh0dHBzOi8vaWVlZXhwbG9yZS5pZWVlLm9yZy9YcGxvcmUvaG9tZS5qc3AiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldD0iX2JsYW5rIiB0aXRsZT0iSUVFRSBYcGxvcmUgRGlnaXRhbCBMaWJyYXJ5Ij5JRUVFIDxlbT5YcGxvcmU8L2VtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpZ2l0YWwgTGlicmFyeTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyIgdGFyZ2V0PSJfYmxhbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJJRUVFIFN0YW5kYXJkcyI+SUVFRSBTdGFuZGFyZHM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJodHRwczovL3NwZWN0cnVtLmllZWUub3JnLyIgdGFyZ2V0PSJfYmxhbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJJRUVFIFNwZWN0cnVtIj5JRUVFIFNwZWN0cnVtPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvc2l0ZW1hcC5odG1sIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9Il9ibGFuayIgdGl0bGU9Ik1vcmUgU2l0ZXMiPk1vcmUgU2l0ZXM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICA8L3VsPiA8IS0tIC8ubmF2IC50b3AtYmFyLWxlZnQgLS0+CiAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbC0xMCAuZC1ub25lIC5kLW1kLWJsb2NrIC0tPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTIgZC1ub25lIGQtbWQtYmxvY2siPgogICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IHRvcC1iYXIgdG9wLWJhci1yaWdodCIgcm9sZT0ibmF2aWdhdGlvbiIgYXJpYS1sYWJlbD0iR2xvYmFsIHJpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSIvZGV2ZWxvcC9ldG9vbHMvIiB0aXRsZT0iZVRvb2xzIj5lVG9vbHM8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgPC91bD4gPCEtLSAvLm5hdiAudG9wLWJhci1yaWdodCAtLT4KICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8uY29sLTIgLmQtbm9uZSAuZC1tZC1ibG9jayAtLT4KICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5yb3cgLS0+CiAgICAgICAgPC9kaXY+IDwhLS0gLy5jb250YWluZXIgLS0+CiAgICA8L3NlY3Rpb24+IDwhLS0gLyN0b3AtYmFyIC0tPgoKICAgIDxzZWN0aW9uIGlkPSJtYXN0aGVhZCI+CgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtMTIgY29sLXNtLTYiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InByaW1hcnktbG9nbyIgY2xhc3M9ImxvZ28iPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ibG9nby1saW5rIiBocmVmPSIvIiB0aXRsZT0iSUVFRSBTdGFuZGFyZHMgQXNzb2NpYXRpb24iPjxpbWcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2ltZy9pZWVlLXNhLWxvZ28yeC5wbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD0iSUVFRSBTdGFuZGFyZHMgQXNzb2NpYXRpb24gbG9nbyI+PC9hPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jcHJpbWFyeS1sb2dvIC5sb2dvIC0tPgogICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb2wtMTIgLmNvbC1zbS02IC0tPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTYgZC1ub25lIGQtc20tYmxvY2siPgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InNlY29uZGFyeS1sb2dvIiBjbGFzcz0ibG9nbyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJsb2dvLWxpbmsiIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnLyIgdGl0bGU9IlZpc2l0IElFRUUub3JnIj48aW1nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNyYz0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pbWcvaWVlZS1sb2dvMngucG5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHQ9IklFRUUgbG9nbyI+PC9hPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jc2Vjb25kYXJ5LWxvZ28gLmxvZ28gLS0+CiAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbC02IC5kLW5vbmUgLmQtbWQtYmxvY2sgLS0+CiAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ucm93IC0tPgogICAgICAgIDwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgoKICAgICAgICA8IS0tCgoKLS0+Cgo8bmF2IGlkPSJtYWluLW5hdiIgY2xhc3M9Im5hdmJhciBuYXZiYXItZXhwYW5kLWxnIG5hdmJhci1saWdodCIgYXJpYS1sYWJlbD0iTWFpbiI+CiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgIDxidXR0b24gY2xhc3M9Im5hdmJhci10b2dnbGVyIiB0eXBlPSJidXR0b24iIGRhdGEtdHJpZ2dlcj0ibW9iaWxlLW1lbnUiIGFyaWEtY29udHJvbHM9Im1vYmlsZS1tZW51IgogICAgICAgICAgICAgICAgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtbGFiZWw9IlRvZ2dsZSBuYXZpZ2F0aW9uIj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hdmJhci10b2dnbGVyLWljb24iPjxpIGNsYXNzPSJmYXMgZmEtYmFycyI+PC9pPjwvc3Bhbj4KICAgICAgICA8L2J1dHRvbj4KICAgICAgICA8ZGl2IGlkPSJtb2JpbGUtbWVudSIgY2xhc3M9ImNvbGxhcHNlIG5hdmJhci1jb2xsYXBzZSI+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuLWNsb3NlIG1vYmlsZS1tZW51IiBhcmlhLWxhYmVsPSJjbG9zZSI+PC9idXR0b24+CiAgICAgICAgICAgIDwhLS0gYmVnaW4gd29yZHByZXNzIG1lbnUgLS0+CiAgICAgICAgICAgIDx1bCBpZD0ibWVudS1tYWluLW5hdmlnYXRpb24iIGNsYXNzPSJuYXZiYXItbmF2IG1yLWF1dG8gbWFpbiB3LTEwMCAiPgk8bGkgIGlkPSJtZW51LWl0ZW0tODM4NSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1jdXN0b20gbWVudS1pdGVtLW9iamVjdC1jdXN0b20gbWVudS1pdGVtLWhhcy1jaGlsZHJlbiBkcm9wZG93biBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM4NSIgZGF0YS1pdGVtLWlkPSI4Mzg1Ij4KCQk8YSB0aXRsZT0iU3RhbmRhcmRzIiBkYXRhLWl0ZW0taWQ9IjgzODUiIGNsYXNzPSJuYXYtbGluayAgZHJvcGRvd24tdG9nZ2xlIiBkYXRhLWJzLXRvZ2dsZT0iZHJvcGRvd24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5TdGFuZGFyZHM8L2E+CgkJPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSBtZWdhLW1lbnUiPgoJCQk8ZGl2IGNsYXNzPSJjb250YWluZXIiPgoJCQkJPGRpdiBjbGFzcz0icm93Ij4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51ICBkZXB0aF8wIj4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MjkiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQyOSIgZGF0YS1pdGVtLWlkPSI4NDI5Ij4KCQkJCQkJCTxhIHRpdGxlPSJBY2Nlc3MgU3RhbmRhcmRzIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hY2Nlc3Mtc3RhbmRhcmRzLyIgZGF0YS1pdGVtLWlkPSI4NDI5IiBjbGFzcz0ibmF2LWxpbmsgIj5BY2Nlc3MgU3RhbmRhcmRzPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM4NiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04Mzg2IiBkYXRhLWl0ZW0taWQ9IjgzODYiPgoJCQkJCQkJPGEgdGl0bGU9IlNlYXJjaCBTdGFuZGFyZHMiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3N0YW5kYXJkLyIgZGF0YS1pdGVtLWlkPSI4Mzg2IiBjbGFzcz0ibmF2LWxpbmsgIj5TZWFyY2ggU3RhbmRhcmRzPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM4NyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04Mzg3IiBkYXRhLWl0ZW0taWQ9IjgzODciPgoJCQkJCQkJPGEgdGl0bGU9IlN0YW5kYXJkcyBEZXZlbG9wbWVudCIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvZGV2ZWxvcC8iIGRhdGEtaXRlbS1pZD0iODM4NyIgY2xhc3M9Im5hdi1saW5rICI+U3RhbmRhcmRzIERldmVsb3BtZW50PC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM4OCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04Mzg4IiBkYXRhLWl0ZW0taWQ9IjgzODgiPgoJCQkJCQkJPGEgdGl0bGU9IlN0YW5kYXJkcyBBZG9wdGlvbiIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvaW50bC9zdGFuZGFyZHMtYWRvcHRpb24vIiBkYXRhLWl0ZW0taWQ9IjgzODgiIGNsYXNzPSJuYXYtbGluayAiPlN0YW5kYXJkcyBBZG9wdGlvbjwvYT4KCQkJCQkJPC9saT4KCQkJCQk8L3VsPgoJCQkJCTx1bCBjbGFzcz0ic3ViLW1lbnUtZGVzY3JpcHRpb24iPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzg1IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkNob29zZSBmcm9tIHRoZSBtYW55IHdheXMgdG8gYWNjZXNzIElFRUUgU0EgU3RhbmRhcmRzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MjkiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+Q2hvb3NlIGZyb20gaW5kaXZpZHVhbCBvciBvcmdhbml6YXRpb25hbCBhY2Nlc3Mgb3B0aW9ucyB0byBnZXQgdGhlIHN0YW5kYXJkcyB5b3UgbmVlZC48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzg2IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkZpbmQgdGhlIHN0YW5kYXJkcyB5b3XigJlyZSBsb29raW5nIGZvci48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzg3IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkdldCBpbnZvbHZlZCBpbiB0aGUgZGV2ZWxvcG1lbnQgb2YgbWFya2V0LWRyaXZlbiB0ZWNobm9sb2d5IHN0YW5kYXJkcyB3aXRoIHByb3ZlbiBleHBlcnRpc2UgYW5kIGRlZGljYXRlZCBzdXBwb3J0LjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9IjgzODgiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+TGVhcm4gbW9yZSBhYm91dCBob3cgdG8gYWRvcHQgSUVFRSBzdGFuZGFyZHMuPC9saT4KCQkJCQk8L3VsPgoJCQkJPC9kaXY+IDwhLS0gLy5yb3cgLS0+CgkJCTwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgoJCTwvZGl2PiA8IS0tIC8uZHJvcGRvd24tbWVudSBtZWdhLW1lbnUgLS0+Cgk8L2xpPgoJPGxpICBpZD0ibWVudS1pdGVtLTgzODkiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtY3VzdG9tIG1lbnUtaXRlbS1vYmplY3QtY3VzdG9tIG1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gZHJvcGRvd24gbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzODkiIGRhdGEtaXRlbS1pZD0iODM4OSI+CgkJPGEgdGl0bGU9IlByb2R1Y3RzICZhbXA7IFByb2dyYW1zIiBkYXRhLWl0ZW0taWQ9IjgzODkiIGNsYXNzPSJuYXYtbGluayAgZHJvcGRvd24tdG9nZ2xlIiBkYXRhLWJzLXRvZ2dsZT0iZHJvcGRvd24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5Qcm9kdWN0cyAmIzAzODsgUHJvZ3JhbXM8L2E+CgkJPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSBtZWdhLW1lbnUiPgoJCQk8ZGl2IGNsYXNzPSJjb250YWluZXIiPgoJCQkJPGRpdiBjbGFzcz0icm93Ij4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51ICBkZXB0aF8wIj4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzOTAiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM5MCIgZGF0YS1pdGVtLWlkPSI4MzkwIj4KCQkJCQkJCTxhIHRpdGxlPSJBbGxpYW5jZSBNYW5hZ2VtZW50IFNlcnZpY2VzIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1zZXJ2aWNlcy9hbXMvIiBkYXRhLWl0ZW0taWQ9IjgzOTAiIGNsYXNzPSJuYXYtbGluayAiPkFsbGlhbmNlIE1hbmFnZW1lbnQgU2VydmljZXM8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04MzkxIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzOTEiIGRhdGEtaXRlbS1pZD0iODM5MSI+CgkJCQkJCQk8YSB0aXRsZT0iQ29uZm9ybWl0eSBBc3Nlc3NtZW50ICZhbXA7IENlcnRpZmljYXRpb24iIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3Byb2R1Y3RzLXNlcnZpY2VzL2ljYXAvIiBkYXRhLWl0ZW0taWQ9IjgzOTEiIGNsYXNzPSJuYXYtbGluayAiPkNvbmZvcm1pdHkgQXNzZXNzbWVudCAmIzAzODsgQ2VydGlmaWNhdGlvbjwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzOTIiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM5MiIgZGF0YS1pdGVtLWlkPSI4MzkyIj4KCQkJCQkJCTxhIHRpdGxlPSJJRUVFIFNBIE9wZW4gU291cmNlIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pbml0aWF0aXZlcy9vcGVuc291cmNlLyIgZGF0YS1pdGVtLWlkPSI4MzkyIiBjbGFzcz0ibmF2LWxpbmsgIj5JRUVFIFNBIE9wZW4gU291cmNlPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM5MyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04MzkzIiBkYXRhLWl0ZW0taWQ9IjgzOTMiPgoJCQkJCQkJPGEgdGl0bGU9IkluZHVzdHJ5IEFmZmlsaWF0ZSBOZXR3b3JrIChJQU4pIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1zZXJ2aWNlcy9pbmR1c3RyeS1hZmZpbGlhdGUtbmV0d29yay8iIGRhdGEtaXRlbS1pZD0iODM5MyIgY2xhc3M9Im5hdi1saW5rICI+SW5kdXN0cnkgQWZmaWxpYXRlIE5ldHdvcmsgKElBTik8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDMxIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MzEiIGRhdGEtaXRlbS1pZD0iODQzMSI+CgkJCQkJCQk8YSB0aXRsZT0iSW5kdXN0cnkgQ29ubmVjdGlvbnMiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2luZHVzdHJ5LWNvbm5lY3Rpb25zLyIgZGF0YS1pdGVtLWlkPSI4NDMxIiBjbGFzcz0ibmF2LWxpbmsgIj5JbmR1c3RyeSBDb25uZWN0aW9uczwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MzAiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQzMCIgZGF0YS1pdGVtLWlkPSI4NDMwIj4KCQkJCQkJCTxhIHRpdGxlPSJUaGUgTmF0aW9uYWwgRWxlY3RyaWNhbCBTYWZldHkgQ29kZcKuIChORVNDwq4pIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1zZXJ2aWNlcy9uZXNjLyIgZGF0YS1pdGVtLWlkPSI4NDMwIiBjbGFzcz0ibmF2LWxpbmsgIj5UaGUgTmF0aW9uYWwgRWxlY3RyaWNhbCBTYWZldHkgQ29kZcKuIChORVNDwq4pPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM5NiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04Mzk2IiBkYXRhLWl0ZW0taWQ9IjgzOTYiPgoJCQkJCQkJPGEgdGl0bGU9IlJlZ2lzdHJhdGlvbiBBdXRob3JpdHkiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3Byb2R1Y3RzLXNlcnZpY2VzL3JlZ2F1dGgvIiBkYXRhLWl0ZW0taWQ9IjgzOTYiIGNsYXNzPSJuYXYtbGluayAiPlJlZ2lzdHJhdGlvbiBBdXRob3JpdHk8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04Mzk3IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzOTciIGRhdGEtaXRlbS1pZD0iODM5NyI+CgkJCQkJCQk8YSB0aXRsZT0iR292ZXJubWVudCBFbmdhZ2VtZW50IFByb2dyYW0gb24gU3RhbmRhcmRzIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9pbnRsL2dvdmVybm1lbnQtZW5nYWdlbWVudC1wcm9ncmFtLyIgZGF0YS1pdGVtLWlkPSI4Mzk3IiBjbGFzcz0ibmF2LWxpbmsgIj5Hb3Zlcm5tZW50IEVuZ2FnZW1lbnQgUHJvZ3JhbSBvbiBTdGFuZGFyZHM8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04Mzk4IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzOTgiIGRhdGEtaXRlbS1pZD0iODM5OCI+CgkJCQkJCQk8YSB0aXRsZT0iU3RhbmRhcmRzIEZlbGxvd3NoaXAiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2ludGwvc3RhbmRhcmRzLWZlbGxvd3NoaXAtcHJvZ3JhbS8iIGRhdGEtaXRlbS1pZD0iODM5OCIgY2xhc3M9Im5hdi1saW5rICI+U3RhbmRhcmRzIEZlbGxvd3NoaXA8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDMyIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MzIiIGRhdGEtaXRlbS1pZD0iODQzMiI+CgkJCQkJCQk8YSB0aXRsZT0iQWxsIFByb2R1Y3RzICZhbXA7IFByb2dyYW1zIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1zZXJ2aWNlcy8iIGRhdGEtaXRlbS1pZD0iODQzMiIgY2xhc3M9Im5hdi1saW5rICI+QWxsIFByb2R1Y3RzICYjMDM4OyBQcm9ncmFtczwvYT4KCQkJCQkJPC9saT4KCQkJCQk8L3VsPgoJCQkJCTx1bCBjbGFzcz0ic3ViLW1lbnUtZGVzY3JpcHRpb24iPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzg5IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkZ1bGwgZWNvc3lzdGVtIG9mIHN0YW5kYXJkcy1yZWxhdGVkIHNvbHV0aW9ucyB0byBoZWxwIGRyaXZlIGF3YXJlbmVzcywgYWN0aXZhdGlvbiwgYW5kIGFkb3B0aW9uLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9IjgzOTAiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+UHJvdmlkaW5nIHN1cHBvcnQgc2VydmljZXMgdG8gaGVscCBtYW5hZ2UgdGhlIGRheS10by1kYXkgb3BlcmF0aW9ucyBvZiBpbmR1c3RyeSBncm91cHMsIGFsbG93aW5nIGtleSBzdGFrZWhvbGRlcnMgdG8gZm9jdXMgb24gdGhlIHdvcmsgYXQgaGFuZC48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4MzkxIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkZvY3VzZWQgb24gZGV2ZWxvcG1lbnQgYW5kIGltcGxlbWVudGF0aW9uIG9mIHJpZ29yb3VzIGNvbmZvcm1pdHkgYXNzZXNzbWVudCBwcm9ncmFtcyBkZXNpZ25lZCB0byBoZWxwIGFjY2VsZXJhdGUgbWFya2V0IGFkb3B0aW9uLCByZWR1Y2UgY29zdHMgYW5kIG1vcmUuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM5MiIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5BIHZlbmRvci1uZXV0cmFsLCBpbmNsdXNpdmUsIG9wZW4gc291cmNlIHBsYXRmb3Jt4oCUZm9yIGFsbCwgZnJvbSBpbmRlcGVuZGVudCBzb2Z0d2FyZSBkZXZlbG9wZXJzIGFuZCBzdGFydCB1cHMgdG8gaW5kdXN0cnksIGFjYWRlbWljIGFuZCByZXNlYXJjaCBpbnN0aXR1dGlvbnMuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM5MyIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5PcGVuIHRvIGNvbnNvcnRpYSwgaW5kdXN0cnkgYWxsaWFuY2Ugb3Igb3RoZXIgaW5kdXN0cnkgb3JnYW5pemF0aW9ucywgbG9va2luZyB0byBicmluZyBmb3J3YXJkIHNwZWNpZmljYXRpb25zIGZvciBzdGFuZGFyZHMgZGV2ZWxvcG1lbnQgYW5kIG1hcmtldCBhZG9wdGlvbi48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDMxIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkZhY2lsaXRhdGluZyBjb2xsYWJvcmF0aW9uIGFtb25nIG9yZ2FuaXphdGlvbnMgYW5kIGluZGl2aWR1YWxzIGFzIHRoZXkgaG9uZSBhbmQgcmVmaW5lIHRoZWlyIHRoaW5raW5nIG9uIHJhcGlkbHkgY2hhbmdpbmcgdGVjaG5vbG9naWVzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MzAiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+R3VpZGVsaW5lcyBmb3IgcHJhY3RpY2FsIHNhZmVndWFyZGluZyBkdXJpbmcgdGhlIGluc3RhbGxhdGlvbiwgb3BlcmF0aW9uLCBhbmQgbWFpbnRlbmFuY2Ugb2YgZWxlY3RyaWMgc3VwcGx5LCBjb21tdW5pY2F0aW9uIGxpbmVzIGFuZCBhc3NvY2lhdGVkIGVxdWlwbWVudC48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzk2IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkFzc2lnbnMgYW5kIG1haW50YWlucyB1bmlxdWUgaWRlbnRpZmllcnMgYW5kIHVuYW1iaWd1b3VzIG5hbWVzIHRvIG9iamVjdHMgZm9yIHRob3NlIHdpc2hpbmcgdG8gcmVnaXN0ZXIgdGhlbS48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzk3IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPlByb2dyYW0gZm9yIHBvbGljeW1ha2VycyBwcm92aWRpbmcgdGFpbG9yZWQgc3RhbmRhcmRzIGluZm9ybWF0aW9uLCBhY2Nlc3MgdG8gdGhlIElFRUUgU0Egc3RhbmRhcmRpemF0aW9uIGVjb3N5c3RlbSwgYW5kIHN0YW5kYXJkaXphdGlvbiByZXNvdXJjZXMuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM5OCIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5Qcm92aWRpbmcgZ2xvYmFsIHN0YW5kYXJkcyBwcm9mZXNzaW9uYWxzIHRoZSBvcHBvcnR1bml0eSB0byBvYnNlcnZlIHRoZSBJRUVFIHN0YW5kYXJkcyBkZXZlbG9wbWVudCBwcm9jZXNzIGFuZCBsZWFybiBhYm91dCB0ZWNobmljYWwgYXJlYXMgb2YgaW50ZXJlc3QuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQzMiIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5TZWUgYWxsIHRoZSBwcm9ncmFtcywgcHJvZHVjdHMsIGFuZCBzZXJ2aWNlcyB0aGF0IElFRUUgU0EgaGFzIHRvIG9mZmVyLjwvbGk+CgkJCQkJPC91bD4KCQkJCTwvZGl2PiA8IS0tIC8ucm93IC0tPgoJCQk8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KCQk8L2Rpdj4gPCEtLSAvLmRyb3Bkb3duLW1lbnUgbWVnYS1tZW51IC0tPgoJPC9saT4KCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDAwIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLWN1c3RvbSBtZW51LWl0ZW0tb2JqZWN0LWN1c3RvbSBtZW51LWl0ZW0taGFzLWNoaWxkcmVuIGRyb3Bkb3duIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDAwIiBkYXRhLWl0ZW0taWQ9Ijg0MDAiPgoJCTxhIHRpdGxlPSJGb2N1c2VzIiBkYXRhLWl0ZW0taWQ9Ijg0MDAiIGNsYXNzPSJuYXYtbGluayAgZHJvcGRvd24tdG9nZ2xlIiBkYXRhLWJzLXRvZ2dsZT0iZHJvcGRvd24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5Gb2N1c2VzPC9hPgoJCTxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgbWVnYS1tZW51Ij4KCQkJPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KCQkJCTxkaXYgY2xhc3M9InJvdyI+CgkJCQkJPHVsIGNsYXNzPSJzdWItbWVudSAgZGVwdGhfMCI+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDAxIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MDEiIGRhdGEtaXRlbS1pZD0iODQwMSI+CgkJCQkJCQk8YSB0aXRsZT0iQXJ0aWZpY2lhbCBJbnRlbGxpZ2VuY2UgU3lzdGVtcyAoQUlTKSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaW5pdGlhdGl2ZXMvYXJ0aWZpY2lhbC1pbnRlbGxpZ2VuY2Utc3lzdGVtcy8iIGRhdGEtaXRlbS1pZD0iODQwMSIgY2xhc3M9Im5hdi1saW5rICI+QXJ0aWZpY2lhbCBJbnRlbGxpZ2VuY2UgU3lzdGVtcyAoQUlTKTwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MDIiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQwMiIgZGF0YS1pdGVtLWlkPSI4NDAyIj4KCQkJCQkJCTxhIHRpdGxlPSJDb25uZWN0aXZpdHkgJmFtcDsgVGVsZWNvbSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJhY3RpY2VzL2Nvbm5lY3Rpdml0eS10ZWxlY29tLyIgZGF0YS1pdGVtLWlkPSI4NDAyIiBjbGFzcz0ibmF2LWxpbmsgIj5Db25uZWN0aXZpdHkgJmFtcDsgVGVsZWNvbTwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MDMiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQwMyIgZGF0YS1pdGVtLWlkPSI4NDAzIj4KCQkJCQkJCTxhIHRpdGxlPSJFbmVyZ3kiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3ByYWN0aWNlcy9lbmVyZ3kvIiBkYXRhLWl0ZW0taWQ9Ijg0MDMiIGNsYXNzPSJuYXYtbGluayAiPkVuZXJneTwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MDQiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQwNCIgZGF0YS1pdGVtLWlkPSI4NDA0Ij4KCQkJCQkJCTxhIHRpdGxlPSJGb3VuZGF0aW9uYWwgVGVjaG5vbG9naWVzIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcmFjdGljZXMvZm91bmRhdGlvbmFsLyIgZGF0YS1pdGVtLWlkPSI4NDA0IiBjbGFzcz0ibmF2LWxpbmsgIj5Gb3VuZGF0aW9uYWwgVGVjaG5vbG9naWVzPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQwNSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDA1IiBkYXRhLWl0ZW0taWQ9Ijg0MDUiPgoJCQkJCQkJPGEgdGl0bGU9IkhlYWx0aGNhcmUgYW5kIExpZmUgU2NpZW5jZXMiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3ByYWN0aWNlcy9oZWFsdGhjYXJlLWxpZmUtc2NpZW5jZXMvIiBkYXRhLWl0ZW0taWQ9Ijg0MDUiIGNsYXNzPSJuYXYtbGluayAiPkhlYWx0aGNhcmUgYW5kIExpZmUgU2NpZW5jZXM8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDA2IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MDYiIGRhdGEtaXRlbS1pZD0iODQwNiI+CgkJCQkJCQk8YSB0aXRsZT0iTW9iaWxpdHkiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3ByYWN0aWNlcy9tb2JpbGl0eS8iIGRhdGEtaXRlbS1pZD0iODQwNiIgY2xhc3M9Im5hdi1saW5rICI+TW9iaWxpdHk8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDMzIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MzMiIGRhdGEtaXRlbS1pZD0iODQzMyI+CgkJCQkJCQk8YSB0aXRsZT0iR292ZXJubWVudCBFbmdhZ2VtZW50IiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9pbnRsLyIgZGF0YS1pdGVtLWlkPSI4NDMzIiBjbGFzcz0ibmF2LWxpbmsgIj5Hb3Zlcm5tZW50IEVuZ2FnZW1lbnQ8L2E+CgkJCQkJCTwvbGk+CgkJCQkJPC91bD4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51LWRlc2NyaXB0aW9uIj4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQwMCIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5TdHJhdGVnaWMgZm9jdXNlcyBhbmQgaW5kdXN0cmllcyB3aGVyZSBJRUVFIFNBIGlzIHJhaXNpbmcgdGhlIHdvcmxk4oCZcyBzdGFuZGFyZHMuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQwMSIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5EZXZlbG9waW5nIGFjY2Vzc2libGUgYW5kIHN1c3RhaW5hYmxlIGFwcHJvYWNoZXMgYW5kIHNvbHV0aW9ucyBmb3IgcHJhY3RpY2FsIGFwcGxpY2F0aW9uIG9mIEFJUyBwcmluY2lwbGVzIGFuZCBmcmFtZXdvcmtzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MDIiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+QWR2YW5jaW5nIHJvYnVzdCwgcmVzcG9uc2libGUsIGFuZCBhZmZvcmRhYmxlIGNvbm5lY3Rpdml0eS48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDAzIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkVuYWJsaW5nIHN1c3RhaW5hYmxlLCBlZmZpY2llbnQsIGFuZCBhY2Nlc3NpYmxlIGVuZXJneSB0aHJvdWdoIHRlY2hub2xvZ2ljYWwgYWR2YW5jZXMgb24gYSBnbG9iYWwgc2NhbGUuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQwNCIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5Xb3JraW5nIHRvIHN0YW5kYXJkaXplIHNlYW1sZXNzIGFuZCB1YmlxdWl0b3VzIGNvbm5lY3Rpdml0eSBhY3Jvc3MgYWxsIGFwcGxpY2F0aW9ucyBvZiBjb25uZWN0ZWQgdGVjaG5vbG9naWVzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MDUiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+Rm9jdXNlZCBvbiBlbmFibGluZyBhZmZvcmRhYmxlIGhlYWx0aGNhcmUsIGFjY2VzcyB0byBtZWRpY2luZSwgYW5kIGlubm92YXRpb24gdG8gaW1wcm92ZSBvdmVyYWxsIGdsb2JhbCB3ZWxsbmVzcy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDA2IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPldvcmtpbmcgdG8gaGVscCB0aGUgZXZvbHZpbmcgbW9iaWxpdHkgZWNvc3lzdGVtIGFkZHJlc3Mgc29tZSBvZiBpdHMgZ3JlYXRlc3QgYnVzaW5lc3Mgb3Bwb3J0dW5pdGllcyB0aGF0IGhhdmUgdGhlIHBvdGVudGlhbCB0byBzb2x2ZSBtYWpvciBzb2NpZXRhbCBjaGFsbGVuZ2VzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MzMiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+QnVpbGRpbmcgYnJpZGdlcyBiZXR3ZWVuIHRoZSB3b3JsZHMgb2YgdGVjaG5vbG9neSwgc3RhbmRhcmRzLCBhbmQgcG9saWN5IG1ha2luZy48L2xpPgoJCQkJCTwvdWw+CgkJCQk8L2Rpdj4gPCEtLSAvLnJvdyAtLT4KCQkJPC9kaXY+IDwhLS0gLy5jb250YWluZXIgLS0+CgkJPC9kaXY+IDwhLS0gLy5kcm9wZG93bi1tZW51IG1lZ2EtbWVudSAtLT4KCTwvbGk+Cgk8bGkgIGlkPSJtZW51LWl0ZW0tODQwOCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1jdXN0b20gbWVudS1pdGVtLW9iamVjdC1jdXN0b20gbWVudS1pdGVtLWhhcy1jaGlsZHJlbiBkcm9wZG93biBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQwOCIgZGF0YS1pdGVtLWlkPSI4NDA4Ij4KCQk8YSB0aXRsZT0iR2V0IEludm9sdmVkIiBkYXRhLWl0ZW0taWQ9Ijg0MDgiIGNsYXNzPSJuYXYtbGluayAgZHJvcGRvd24tdG9nZ2xlIiBkYXRhLWJzLXRvZ2dsZT0iZHJvcGRvd24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5HZXQgSW52b2x2ZWQ8L2E+CgkJPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSBtZWdhLW1lbnUiPgoJCQk8ZGl2IGNsYXNzPSJjb250YWluZXIiPgoJCQkJPGRpdiBjbGFzcz0icm93Ij4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51ICBkZXB0aF8wIj4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MzQiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQzNCIgZGF0YS1pdGVtLWlkPSI4NDM0Ij4KCQkJCQkJCTxhIHRpdGxlPSJFdmVudHMiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2V2ZW50cy8iIGRhdGEtaXRlbS1pZD0iODQzNCIgY2xhc3M9Im5hdi1saW5rICI+RXZlbnRzPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQxMCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDEwIiBkYXRhLWl0ZW0taWQ9Ijg0MTAiPgoJCQkJCQkJPGEgdGl0bGU9IklFRUUgU0EgTWVtYmVyc2hpcCIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvbWVtYmVyc2hpcC8iIGRhdGEtaXRlbS1pZD0iODQxMCIgY2xhc3M9Im5hdi1saW5rICI+SUVFRSBTQSBNZW1iZXJzaGlwPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQzNSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDM1IiBkYXRhLWl0ZW0taWQ9Ijg0MzUiPgoJCQkJCQkJPGEgdGl0bGU9IkhvdyB0byBHZXQgSW52b2x2ZWQiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3BhcnRpY2lwYXRlLyIgZGF0YS1pdGVtLWlkPSI4NDM1IiBjbGFzcz0ibmF2LWxpbmsgIj5Ib3cgdG8gR2V0IEludm9sdmVkPC9hPgoJCQkJCQk8L2xpPgoJCQkJCTwvdWw+CgkJCQkJPHVsIGNsYXNzPSJzdWItbWVudS1kZXNjcmlwdGlvbiI+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MDgiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+TGVhcm4gYWJvdXQgb3Bwb3J0dW5pdGllcyB0byBlbmdhZ2Ugd2l0aCBJRUVFIFNBLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MzQiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+Sm9pbiB1cyBhdCB1cGNvbWluZyB2aXJ0dWFsIG9yIGluLXBlcnNvbiBldmVudHMuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQxMCIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5GbGV4aWJsZSBtZW1iZXJzaGlwIG9wdGlvbnMgdGhhdCBvZmZlciBlbmhhbmNlZCBwYXJ0aWNpcGF0aW9uIGluIElFRUUgU0EgYWN0aXZpdGllcywgc3RhbmRhcmRzIGRldmVsb3BtZW50LCBhbmQgZ292ZXJuYW5jZS48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDM1IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPlRoZXJlIGFyZSBtYW55IG9wcG9ydHVuaXRpZXMgZm9yIHBhcnRpY2lwYXRpb24sIGZpbmQgdGhlIHJpZ2h0IG9uZSBmb3IgeW91LjwvbGk+CgkJCQkJPC91bD4KCQkJCTwvZGl2PiA8IS0tIC8ucm93IC0tPgoJCQk8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KCQk8L2Rpdj4gPCEtLSAvLmRyb3Bkb3duLW1lbnUgbWVnYS1tZW51IC0tPgoJPC9saT4KCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDEyIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLWN1c3RvbSBtZW51LWl0ZW0tb2JqZWN0LWN1c3RvbSBtZW51LWl0ZW0taGFzLWNoaWxkcmVuIGRyb3Bkb3duIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDEyIiBkYXRhLWl0ZW0taWQ9Ijg0MTIiPgoJCTxhIHRpdGxlPSJSZXNvdXJjZXMiIGRhdGEtaXRlbS1pZD0iODQxMiIgY2xhc3M9Im5hdi1saW5rICBkcm9wZG93bi10b2dnbGUiIGRhdGEtYnMtdG9nZ2xlPSJkcm9wZG93biIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPlJlc291cmNlczwvYT4KCQk8ZGl2IGNsYXNzPSJkcm9wZG93bi1tZW51IG1lZ2EtbWVudSI+CgkJCTxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CgkJCQk8ZGl2IGNsYXNzPSJyb3ciPgoJCQkJCTx1bCBjbGFzcz0ic3ViLW1lbnUgIGRlcHRoXzAiPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQxMyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDEzIiBkYXRhLWl0ZW0taWQ9Ijg0MTMiPgoJCQkJCQkJPGEgdGl0bGU9IlRyYWluaW5nICZhbXA7IERldmVsb3BtZW50IiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC90cmFpbmluZy8iIGRhdGEtaXRlbS1pZD0iODQxMyIgY2xhc3M9Im5hdi1saW5rICI+VHJhaW5pbmcgJiMwMzg7IERldmVsb3BtZW50PC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQzNiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDM2IiBkYXRhLWl0ZW0taWQ9Ijg0MzYiPgoJCQkJCQkJPGEgdGl0bGU9Ik5ld3MiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL25ld3MvIiBkYXRhLWl0ZW0taWQ9Ijg0MzYiIGNsYXNzPSJuYXYtbGluayAiPk5ld3M8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDE1IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MTUiIGRhdGEtaXRlbS1pZD0iODQxNSI+CgkJCQkJCQk8YSB0aXRsZT0iSUVFRSBTQSBOZXdzbGV0dGVyIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9uZXdzL3N3aXJlLyIgZGF0YS1pdGVtLWlkPSI4NDE1IiBjbGFzcz0ibmF2LWxpbmsgIj5JRUVFIFNBIE5ld3NsZXR0ZXI8L2E+CgkJCQkJCTwvbGk+CgkJCQkJPC91bD4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51LWRlc2NyaXB0aW9uIj4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQxMiIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5UcmFpbmluZyBhbmQgY29tbXVuaWNhdGlvbiByZXNvdXJjZXMgdG8gc3RheSBjb25uZWN0ZWQuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQxMyIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5JbmRpdmlkdWFsIGFuZCBvcmdhbml6YXRpb25hbCBlZmZlY3RpdmVuZXNzIHByb2dyYW0gdG8gZW5hYmxlIHRoZSBzdWNjZXNzIG9mIG91ciB2aXRhbCB2b2x1bnRlZXJzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MzYiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+UmVhZCB0aGUgbGF0ZXN0IG5ld3Mgb24gSUVFRSBTQS48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDE1IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPlN1YnNjcmliZSB0byBvdXIgbmV3c2xldHRlciBhbmQga2VlcCB1cCB0byBkYXRlIG9uIHRoZSBsYXRlc3Qgc3RhbmRhcmRzLCBldmVudCwgYW5kIGFjdGl2aXRpZXMuPC9saT4KCQkJCQk8L3VsPgoJCQkJPC9kaXY+IDwhLS0gLy5yb3cgLS0+CgkJCTwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgoJCTwvZGl2PiA8IS0tIC8uZHJvcGRvd24tbWVudSBtZWdhLW1lbnUgLS0+Cgk8L2xpPgoJPGxpICBpZD0ibWVudS1pdGVtLTg0MTYiIGNsYXNzPSJuYXYtdHlwZS1idXR0b24gbWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MTYiIGRhdGEtaXRlbS1pZD0iODQxNiI+CgkJPGEgdGl0bGU9Ik1BQyBBZGRyZXNzIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1zZXJ2aWNlcy9yZWdhdXRoLyIgZGF0YS1pdGVtLWlkPSI4NDE2IiBjbGFzcz0ibmF2LWxpbmsgIj5NQUMgQWRkcmVzczwvYT4KCTwvbGk+CjwvdWw+ICAgICAgICAgICAgPCEtLSBlbmQgd29yZHByZXNzIG1lbnUgLS0+CiAgICAgICAgPC9kaXY+IDwhLS0gLyNtb2JpbGUtbWVudSAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJidG4tZ3JvdXAgc2VhcmNoIj4KICAgICAgICAgICAgPGRpdiBpZD0ic2VhcmNoLWlucHV0LXdyYXBwZXIiIGNsYXNzPSJjb2xsYXBzZSBjb2xsYXBzZS1ob3Jpem9udGFsIj4KICAgICAgICAgICAgICAgIDxmb3JtIGlkPSJzZWFyY2giIGNsYXNzPSJmb3JtLWlubGluZSIgYWN0aW9uPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9zZWFyY2gvIiBtZXRob2Q9ImdldCI+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPSJmb3JtLWNvbnRyb2wiIHR5cGU9InRleHQiIHBsYWNlaG9sZGVyPSJTZWFyY2ggSUVFRSBTQS4uLiIgYXV0b2ZvY3VzPSJhdXRvZm9jdXMiIG5hbWU9InEiIGlkPSJxIj4KICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4iIHR5cGU9InN1Ym1pdCI+PGkgY2xhc3M9ImZhIGZhLXNlYXJjaCI+PC9pPjwvYnV0dG9uPgogICAgICAgICAgICAgICAgPC9mb3JtPiA8IS0tIC8jc2VhcmNoIC0tPgogICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3NlYXJjaC1pbnB1dC13cmFwcGVyIC0tPgogICAgICAgICAgICA8YnV0dG9uIGlkPSJtYWluLXNlYXJjaC1idXR0b24iIGNsYXNzPSJidG4gYnRuLW1kIiB0eXBlPSJidXR0b24iIGRhdGEtYnMtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS1icy10YXJnZXQ9IiNzZWFyY2gtaW5wdXQtd3JhcHBlciIKICAgICAgICAgICAgICAgICAgICBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1jb250cm9scz0ic2VhcmNoLWlucHV0LXdyYXBwZXIiPjxpIGNsYXNzPSJmYSBmYS1zZWFyY2giPjwvaT48L2J1dHRvbj4KICAgICAgICA8L2Rpdj4gPCEtLSAvLmJ0bi1ncm91cCAuc2VhcmNoIC0tPgogICAgPC9kaXY+IDwhLS0gLy5jb250YWluZXItZmx1aWQgLS0+CjwvbmF2PiA8IS0tIC8jbWFpbi1uYXYgLm5hdmJhciAtLT4KICAgIDwvc2VjdGlvbj4gPCEtLSAvI21hc3RoZWFkIC0tPgo8L2hlYWRlcj4KCgo8bWFpbj4KICAgIDxzZWN0aW9uIGlkPSJwYWdlLXRpdGxlIiBjbGFzcz0ic3RhbmRhcmQiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtMTIgY29sLWxnLTMgb3JkZXItbGctbGFzdCBhbGlnbi1zZWxmLWxnLWVuZCB0ZXh0LWxnLWVuZCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ic3RuZC1zdGF0dXMiPkFjdGl2ZSBTdGFuZGFyZDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb2wtMTIgY29sLWxnLTMgLS0+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtMTIgY29sLWxnLTExIj4KICAgICAgICAgICAgICAgICAgICA8aDEgaWQ9InN0bmQtZGVzaWduYXRpb24iCiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNSI+SUVFRSA1MjgtMjAxOTwvaDE+CiAgICAgICAgICAgICAgICAgICAgPGgyIGlkPSJzdG5kLXRpdGxlIj5JRUVFIFN0YW5kYXJkIGZvciBJbmVydGlhbCBTZW5zb3IgVGVybWlub2xvZ3k8L2gyPgogICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb2wtMTIgLmNvbC1sZy0xMSAtLT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMiBjb2wtbGctOCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0icHVyY2hhc2Utb3B0aW9ucyIgY2xhc3M9ImQtZ3JpZCBnYXAtNCBkLW1kLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGlkPSJzdG5kLWJ1eS11cmwiIGNsYXNzPSJidG4gYnRuLXByaW1hcnkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vd3d3LnRlY2hzdHJlZXQuY29tL2llZWUvcHJvZHVjdHMvdmVuZG9yX2lkLzcyOTIiIHRhcmdldD0iX2JsYW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm9sZT0iYnV0dG9uIj5QdXJjaGFzZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGlkPSJzdG5kLXN1YnNjcmlwdGlvbi11cmwiIGNsYXNzPSJidG4gYnRuLW91dGxpbmUtcHJpbWFyeSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9pZWVleHBsb3JlLmllZWUub3JnL3NlcnZsZXQvb3BhYz9wdW51bWJlcj04ODYzNzk3IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PSJfYmxhbmsiIHJvbGU9ImJ1dHRvbiI+QWNjZXNzIHZpYSBTdWJzY3JpcHRpb248L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jcHVyY2hhc2Utb3B0aW9ucyAtLT4KICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8uY29sLTEyIC5jb2wtbGctOCAtLT4KICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5yb3cgLS0+CiAgICAgICAgPC9kaXY+IDwhLS0gLy5jb250YWluZXIgLS0+CiAgICA8L3NlY3Rpb24+IDwhLS0gLyNwYWdlLXRpdGxlIC0tPgoKICAgIAogICAgPHNlY3Rpb24gaWQ9ImJyZWFkY3J1bWJzIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTEyIj4KICAgICAgICAgICAgICAgICAgICA8bmF2IGlkPSJicmVhZGNydW1iLW5hdiIgYXJpYS1sYWJlbD0iYnJlYWRjcnVtYiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvbCBjbGFzcz0iYnJlYWRjcnVtYiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImJyZWFkY3J1bWItaXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmciIHRpdGxlPSJIb21lIj5Ib21lPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iYnJlYWRjcnVtYi1pdGVtIj48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9zZWFyY2gvP3E9U3RhbmRhcmQiIHRpdGxlPSJTdGFuZGFyZHMiPlN0YW5kYXJkczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImJyZWFkY3J1bWItaXRlbSBhY3RpdmUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtY3VycmVudD0icGFnZSI+SUVFRSA1MjgtMjAxOSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICA8L29sPiA8IS0tIC8uYnJlYWRjcnVtYiAtLT4KICAgICAgICAgICAgICAgICAgICA8L25hdj4gPCEtLSAvI2JyZWFkY3J1bWItbmF2IC0tPgogICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb2wtMTIgLS0+CiAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ucm93IC0tPgogICAgICAgIDwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgogICAgPC9zZWN0aW9uPiA8IS0tIC8jYnJlYWRjcnVtYnMgLS0+CiAgICAKICAgIDxzZWN0aW9uIGlkPSJjb250ZW50IiBjbGFzcz0ic3RhbmRhcmQiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICA8ZGl2IGlkPSJtYWluLWNvbnRlbnQiIGNsYXNzPSJjb2wtMTIgY29sLWxnLTEwIG9mZnNldC1sZy0xIGNvbC14bC04IG9mZnNldC14bC0yIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJzdG5kLWRlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGVybXMgYW5kIGRlZmluaXRpb25zIHJlbGF0aW5nIHRvIGluZXJ0aWFsIHNlbnNvcnMgYXJlIHByZXNlbnRlZCBpbiB0aGlzIHN0YW5kYXJkLiBVc2FnZSBhcyB1bmRlcnN0b29kIGJ5IHRoZSBpbmVydGlhbCBzZW5zb3IgY29tbXVuaXR5IGlzIGdpdmVuIHByZWZlcmVuY2Ugb3ZlciBnZW5lcmFsIHRlY2huaWNhbCB1c2FnZSBvZiB0aGUgdGVybXMgaGVyZWluLiBUaGUgY3JpdGVyaW9uIGZvciBpbmNsdXNpb24gb2YgYSB0ZXJtIGFuZCBpdHMgZGVmaW5pdGlvbiBpbiB0aGlzIHN0YW5kYXJkIGlzIHVzZWZ1bG5lc3MgYXMgcmVsYXRlZCB0byBpbmVydGlhbCBzZW5zb3IgdGVjaG5vbG9neS48L3A+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyNzdG5kLWRlc2NyaXB0aW9uIC0tPgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InN0YW5kYXJkLWRldGFpbHMiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGwgY2xhc3M9InJvdyI+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC1zbS00IGNvbC1tZC0zIj5TcG9uc29yIENvbW1pdHRlZTwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGlkPSJzdG5kLWNvbW1pdHRlZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJjb2wtc20tOCBjb2wtbWQtOSI+QUVTL0dBIC0gR3lybyBBY2NlbGVyb21ldGVyIFBhbmVsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxicj48YSBpZD0ic3RuZC1jb21taXR0ZWUtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaWVlZS1hZXNzLm9yZy90ZWNoLW9wcy9neXJvLWFuZC1hY2NlbGVyb21ldGVyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIiB0YXJnZXQ9Il9ibGFuayI+TGVhcm4gTW9yZTwvYT48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+U3RhdHVzPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC1zdGF0dXMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij5BY3RpdmUgU3RhbmRhcmQ8L2RkPgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+UEFSIEFwcHJvdmFsPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgaWQ9InN0bmQtcGFyLWFwcHJvdmFsLWRhdGUiIGNsYXNzPSJjb2wtc20tOCBjb2wtbWQtOSI+PGEgaWQ9InN0bmQtcGFyLWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9Il9ibGFuayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9kZXZlbG9wbWVudC5zdGFuZGFyZHMuaWVlZS5vcmcvbXlwcm9qZWN0LXdlYi9wdWJsaWMvdmlldy5odG1sI3BhcmRldGFpbC82NDYzIj4yMDE4LTA1LTE0PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC1zbS00IGNvbC1tZC0zIj5TdXBlcnNlZGluZzwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGlkPSJzdG5kLXN1cGVyc2VkaW5nIiBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPjxhIGlkPSJzdG5kLXN1cGVyc2VkaW5nLXVybCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvNTI4Lzc4MCI+NTI4LTIwMDE8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC1zbS00IGNvbC1tZC0zIj5Cb2FyZCBBcHByb3ZhbDwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGlkPSJzdG5kLWFwcHJvdmFsLWRhdGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJjb2wtc20tOCBjb2wtbWQtOSI+MjAxOS0wNi0xMzwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+SGlzdG9yeTwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGNsYXNzPSJjb2wtc20tOCBjb2wtbWQtOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbCBjbGFzcz0icm93Ij4KCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC03IGNvbC1tZC00Ij5QdWJsaXNoZWQ6PC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgaWQ9InN0bmQtcHVibGlzaGVkLWRhdGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJjb2wtNSBjb2wtbWQtOCI+MjAxOS0xMC0wODwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+IDwhLS0gLy5yb3cgLS0+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyNzdGFuZGFyZC1kZXRhaWxzIC0tPgoKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJ3b3JraW5nLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJoMiBzZWN0aW9uLXRpdGxlIj5Xb3JraW5nIEdyb3VwIERldGFpbHM8L2gzPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJ3b3JraW5nLWdyb3VwLWRldGFpbHMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsIGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdCBjbGFzcz0iY29sLXNtLTQgY29sLW1kLTMiPlNvY2lldHk8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgaWQ9InN0bmQtc29jaWV0eSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJjb2wtc20tOCBjb2wtbWQtOSI+SUVFRSBBZXJvc3BhY2UgYW5kIEVsZWN0cm9uaWMgU3lzdGVtcyBTb2NpZXR5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyPjxhIGlkPSJzdG5kLXNvY2lldHktdXJsIiBjbGFzcz0iYXJyb3ctbGluayIgaHJlZj0iaHR0cDovL3d3dy5pZWVlLWFlc3Mub3JnLyIgdGl0bGU9IkxlYXJuIE1vcmUiIHRhcmdldD0iX2JsYW5rIj5MZWFybiBNb3JlPC9hPjwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+U3BvbnNvciBDb21taXR0ZWU8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGlkPSJzdG5kLXdvcmtpbmctZ3JvdXAtY29tbWl0dGVlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJjb2wtc20tOCBjb2wtbWQtOSI+QUVTL0dBIC0gR3lybyBBY2NlbGVyb21ldGVyIFBhbmVsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnI+PGEgaWQ9InN0bmQtd29ya2luZy1ncm91cC1jb21taXR0ZWUtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PSJfYmxhbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9pZWVlLWFlc3Mub3JnL3RlY2gtb3BzL2d5cm8tYW5kLWFjY2VsZXJvbWV0ZXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPjwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+V29ya2luZyBHcm91cDwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC13b3JraW5nLWdyb3VwIiBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTRU5TUl9XRyAtIFNlbnNvcnMgV29ya2luZyBHcm91cCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC1zbS00IGNvbC1tZC0zIj5JRUVFIFByb2dyYW0gTWFuYWdlcjwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC1zdGFmZi1saWFpc29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij5EYW4gUGVyZXogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyPjxhIGlkPSJzdG5kLXN0YWZmLWxpYWlzb24tZW1haWwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Im1haWxUTzpkYW5pZWwucGVyZXpAaWVlZS5vcmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkNvbnRhY3QiPkNvbnRhY3Q8L2E+PC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC1zbS00IGNvbC1tZC0zIj5Xb3JraW5nIEdyb3VwIENoYWlyPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGlkPSJzdG5kLXdvcmtpbmctZ3JvdXAtY2hhaXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPkhhcnJ5IERhdmlzPC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+IDwhLS0gLy5yb3cgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jd29ya2luZy1ncm91cC1kZXRhaWxzIC0tPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJ3b3JraW5nLWdyb3VwLXByb2plY3RzLXN0YW5kYXJkcyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBuYXYtdGFicyBuYXYtanVzdGlmaWVkIGZsZXgtY29sdW1uIGZsZXgtc20tcm93Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIiByb2xlPSJwcmVzZW50YXRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXYtbGluayBhY3RpdmUiIGlkPSJ3Zy1hY3RpdmUtcHJvamVjdHMtdGFiIiBkYXRhLWJzLXRvZ2dsZT0idGFiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYnMtdGFyZ2V0PSIjd2ctYWN0aXZlLXByb2plY3RzIiB0eXBlPSJidXR0b24iIHJvbGU9InRhYiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWNvbnRyb2xzPSJ3Zy1hY3RpdmUtcHJvamVjdHMiIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIj5BY3RpdmUgUHJvamVjdHMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4gPCEtLSAvLm5hdi1pdGVtIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iIHJvbGU9InByZXNlbnRhdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9Im5hdi1saW5rIiBpZD0id2ctYWN0aXZlLXN0YW5kYXJkcy10YWIiIGRhdGEtYnMtdG9nZ2xlPSJ0YWIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1icy10YXJnZXQ9IiN3Zy1hY3RpdmUtc3RhbmRhcmRzIiB0eXBlPSJidXR0b24iIHJvbGU9InRhYiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWNvbnRyb2xzPSJ3Zy1hY3RpdmUtc3RhbmRhcmRzIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+QWN0aXZlIFN0YW5kYXJkcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPiA8IS0tIC8ubmF2LWl0ZW0gLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSIgcm9sZT0icHJlc2VudGF0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ibmF2LWxpbmsiIGlkPSJ3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkcy10YWIiIGRhdGEtYnMtdG9nZ2xlPSJ0YWIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1icy10YXJnZXQ9IiN3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkcyIgdHlwZT0iYnV0dG9uIiByb2xlPSJ0YWIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1jb250cm9scz0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZHMiIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIj5TdXBlcnNlZGVkCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGFuZGFyZHMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4gPCEtLSAvLm5hdi1pdGVtIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iIHJvbGU9InByZXNlbnRhdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9Im5hdi1saW5rIiBpZD0id2ctaW5hY3RpdmUtd2l0aGRyYXduLXN0YW5kYXJkcy10YWIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1icy10b2dnbGU9InRhYiIgZGF0YS1icy10YXJnZXQ9IiN3Zy1pbmFjdGl2ZS13aXRoZHJhd24tc3RhbmRhcmRzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9ImJ1dHRvbiIgcm9sZT0idGFiIiBhcmlhLWNvbnRyb2xzPSJ3Zy1pbmFjdGl2ZS13aXRoZHJhd24tc3RhbmRhcmRzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIj5JbmFjdGl2ZS1XaXRoZHJhd24gU3RhbmRhcmRzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+IDwhLS0gLy5uYXYtaXRlbSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIiByb2xlPSJwcmVzZW50YXRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXYtbGluayIgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkcy10YWIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1icy10b2dnbGU9InRhYiIgZGF0YS1icy10YXJnZXQ9IiN3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZHMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT0iYnV0dG9uIiByb2xlPSJ0YWIiIGFyaWEtY29udHJvbHM9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkcyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+SW5hY3RpdmUtUmVzZXJ2ZWQgU3RhbmRhcmRzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+IDwhLS0gLy5uYXYtaXRlbSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+IDwhLS0gLy5uYXYgLm5hdi10YWJzIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0id2ctdGFiLWNvbnRlbnQiIGNsYXNzPSJ0YWItY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0id2ctYWN0aXZlLXByb2plY3RzIiBjbGFzcz0idGFiLXBhbmUgZmFkZSBzaG93IGFjdGl2ZSIgcm9sZT0idGFicGFuZWwiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9IndnLWFjdGl2ZS1wcm9qZWN0cy10YWIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWItcGFuZS1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXByb2plY3Qgd2ctYWN0aXZlLXByb2plY3QiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWFjdGl2ZS1wcm9qZWN0LWRlc2lnbmF0aW9uIj5QMTQzMTwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctYWN0aXZlLXByb2plY3QtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPlN0YW5kYXJkIGZvciBTcGVjaWZ5aW5nIGFuZCBUZXN0aW5nIENvcmlvbGlzIFZpYnJhdG9yeSBHeXJvczwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1hY3RpdmUtcHJvamVjdC1kZXNjcmlwdGlvbiI+VGhpcyBzdGFuZGFyZCBkZWZpbmVzIHJlcXVpcmVtZW50cyBhbmQgdGVzdCBwcm9jZWR1cmVzIGZvciBhIHNpbmdsZS1heGlzIENvcmlvbGlzIHZpYnJhdG9yeSBneXJvIChDVkcpIGZvciB1c2UgYXMgYSBzZW5zb3IgaW4gYXR0aXR1ZGUgY29udHJvbCBzeXN0ZW1zLCBhbmd1bGFyIGRpc3BsYWNlbWVudCBtZWFzdXJpbmcgc3lzdGVtcywgYW5kIGFuZ3VsYXIgcmF0ZSBtZWFzdXJpbmcgc3lzdGVtcy4gIEluZm9ybWF0aXZlIGFubmV4ZXMgY292ZXIgQ1ZHIGRlc2lnbiBmZWF0dXJlcyBhbmQgdGhlb3JldGljYWwgcHJpbmNpcGxlcyBvZiBvcGVyYXRpb24uPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctYWN0aXZlLXByb2plY3QtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS8xNDMxLzEwMzIyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXByb2plY3QgLndnLWFjdGl2ZS1wcm9qZWN0IC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy50YWItcGFuZS1jb250ZW50IC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jd2ctYWN0aXZlLXByb2plY3RzIC50YWItcGFuZSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmRzIiBjbGFzcz0idGFiLXBhbmUgZmFkZSIgcm9sZT0idGFicGFuZWwiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9IndnLWFjdGl2ZS1zdGFuZGFyZHMtdGFiIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFiLXBhbmUtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+MTI5My0yMDE4PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBMaW5lYXIgU2luZ2xlLUF4aXMsIE5vbmd5cm9zY29waWMgQWNjZWxlcm9tZXRlcnM8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctYWN0aXZlLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5UaGUgc3BlY2lmaWNhdGlvbiBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGEgbGluZWFyLCBzaW5nbGUtYXhpcywgbm9uZ3lyb3Njb3BpYyBhY2NlbGVyb21ldGVyIGZvciB1c2UgaW4gaW5lcnRpYWwgbmF2aWdhdGlvbiwgZ3VpZGFuY2UsIGFuZCBsZXZlbGluZyBzeXN0ZW1zIGFyZSBkZWZpbmVkLiBBIHN0YW5kYXJkIHNwZWNpZmljYXRpb24gZ3VpZGUgYW5kIGEgY29tcGlsYXRpb24gb2YgcmVjb21tZW5kZWQgdGVzdCBwcm9jZWR1cmVzIGZvciBzdWNoIGFjY2VsZXJvbWV0ZXJzIGFyZSBwcm92aWRlZC4gSW5mb3JtYXRpdmUgYW5uZXhlcyBhcmUgZ2l2ZW4gb24gdGhlIHZhcmlvdXMgdHlwZXMgb2Ygc3VjaCBhY2NlbGVyb21ldGVycyAoZm9yY2Ugb3IgcGVuZHVsb3VzIHRvcnF1ZSByZWJhbGFuY2Ugd2l0aCBhbmFsb2cgb3IgZGlnaXRhbCBvdXRwdXQsIHZpYnJhdGluZyBiZWFtLCBhbmQgbWljcm9tZWNoYW5pY2FsKSBhbmQgZXJyb3IgZWZmZWN0cywgb24gZmlsdGVyaW5nLCBub2lzZSwgYW5kIHRyYW5zaWVudCBhbmFseXNpcyB0ZWNobmlxdWVzLCBhbmQgb24gY2FsaWJyYXRpb24gYW5kIG1vZGVsaW5nIHRlY2huaXF1ZXMgKG11bHRpcG9pbnQgdHVtYmxlIGFuYWx5c2lzLCB2aWJyYXRpb24gYW5kICBzaG9jayB0ZXN0IGFuYWx5c2VzLCBhbmQgZ2VvcGh5c2ljYWwgZWZmZWN0cyBpbiBpbmVydGlhbCBpbnN0cnVtZW50IHRlc3RpbmcpLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzEyOTMvNTU5MCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctYWN0aXZlLXN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+MTU1NC0yMDA1PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgUmVjb21tZW5kZWQgUHJhY3RpY2UgZm9yIEluZXJ0aWFsIFNlbnNvciBUZXN0IEVxdWlwbWVudCwgSW5zdHJ1bWVudGF0aW9uLCBEYXRhIEFjcXVpc2l0aW9uLCBhbmQgQW5hbHlzaXM8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctYWN0aXZlLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5UZXN0IGVxdWlwbWVudCwgZGF0YSBhY3F1aXNpdGlvbiBlcXVpcG1lbnQsIGluc3RydW1lbnRhdGlvbiwgdGVzdCBmYWNpbGl0aWVzLCBhbmQgZGF0YSBhbmFseXNpcyB0ZWNobmlxdWVzIHVzZWQgaW4gaW5lcnRpYWwgc2Vuc29yIHRlc3RpbmcgYXJlIGRlc2NyaWJlZCBpbiB0aGlzIHJlY29tbWVuZGVkIHByYWN0aWNlLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzE1NTQvMjI5MiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctYWN0aXZlLXN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+NjQ3LTIwMDY8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1BeGlzIExhc2VyIEd5cm9zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+U3BlY2lmaWNhdGlvbiBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGEgc2luZ2xlLWF4aXMgcmluZyBsYXNlciBneXJvIChSTEcpIGZvciB1c2UgYXMgYSAgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgYW5ndWxhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBhbmd1bGFyIHJhdGUgIG1lYXN1cmluZyBzeXN0ZW1zIGFyZSBkZWZpbmVkLiBBIHN0YW5kYXJkIHNwZWNpZmljYXRpb24gZm9ybWF0IGd1aWRlIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYSAgc2luZ2xlLWF4aXMgUkxHIGlzIHByb3ZpZGVkLiBBIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHByb2NlZHVyZXMgZm9yIHRlc3RpbmcgYW4gUkxHLCAgZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeSwgaXMgYWxzbyBwcm92aWRlZC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS82NDcvMzEzNCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctYWN0aXZlLXN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+ODEzLTE5ODg8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFR3by1EZWdyZWUtb2YtRnJlZWRvbSBEeW5hbWljYWxseSBUdW5lZCBHeXJvczwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtZGVzY3JpcHRpb24iPkEgZm9ybWF0IGd1aWRlIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYSB0d28tZGVncmVlLW9mLWZyZWVkb20gZHluYW1pY2FsbHkgdHVuZWQgZ3lybyAoRFRHKSBzcGVjaWZpY2F0aW9uIGlzIGdpdmVuIHRoYXQgcHJvdmlkZXMgYSBjb21tb24gZ3JvdW5kIG9mIHRlcm1pbm9sb2d5IGFuZCBwcmFjdGljZSBmb3IgbWFudWZhY3R1cmVycyBhbmQgdXNlcnMuIEEgY29tcGlsYXRpb24gb2YgcmVjb21tZW5kZWQgcHJvY2VkdXJlcyBmb3IgdGVzdGluZyBhIERURyBpcyBhbHNvIGdpdmVuLiBUaGUgcmVxdWlyZW1lbnRzIGFuZCB0ZXN0IHByb2NlZHVyZXMgYXJlIGRlZmluZWQgaW4gdGVybXMgdW5pcXVlIHRvIHRoZSBEVEcuIFRoZXkgY292ZXIgYXBwbGljYXRpb25zIG9mIHRoZSBneXJvIGFzIGFuIGFuZ3VsYXIgbW90aW9uIHNlbnNvciBpbiBuYXZpZ2F0aW9uIGFuZCBjb250cm9sIHN5c3RlbXMuIFRoZXkgYXBwbHkgdG8gdHdvIG1vZGVzIG9mIHVzZTogKDEpIGFzIGEgc3RyYXAtZG93biBzZW5zb3IgaW4gb3BlcmF0aW5nIGVudmlyb25tZW50cyB0eXBpY2FsIG9mIGFpcmNyYWZ0IGFuZCBtaXNzaWxlIGFwcGxpY2F0aW9ucywgYW5kICgyKSBhcyBhIHNlbnNvciBpbiBnaW1iYWxsZWQgcGxhdGZvcm0gYXBwbGljYXRpb25zIGluIHdoaWNoIHRoZSBkeW5hbWljIGFuZ3VsYXIgaW5wdXRzIHRvIHdoaWNoIHRoZSBneXJvIGlzIHN1YmplY3RlZCBhcmUgYmVuaWduIHJlbGF0aXZlIHRvIHRoZSBhY2N1cmFjeSByZXF1aXJlZC4gSW4gdGhlIGNhc2Ugb2YgdGhlIHN0cmFwLWRvd24gRFRHLCB0aGUgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSBleHRlcm5hbCBjYXB0dXJlIGxvb3BzIGFyZSBjb25zaWRlcmVkIHRvIHRoZSBleHRlbnQgbmVjZXNzYXJ5IHRvIGRlZmluZSB0aGUgZ3lybyBwZXJmb3JtYW5jZS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS84MTMvMTIwMCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctYWN0aXZlLXN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+OTUyLTIwMjA8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBTdGFuZGFyZCBmb3IgU3BlY2lmeWluZyBhbmQgVGVzdGluZyBTaW5nbGUtQXhpcyBJbnRlcmZlcm9tZXRyaWMgRmliZXIgT3B0aWMgR3lyb3M8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctYWN0aXZlLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5TcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHByb2NlZHVyZXMgZm9yIGEgc2luZ2xlLWF4aXMgaW50ZXJmZXJvbWV0cmljIGZpYmVyIG9wdGljIGd5cm8gKElGT0cpIGZvciB1c2UgYXMgYSBzZW5zb3IgaW4gYXR0aXR1ZGUgY29udHJvbCBzeXN0ZW1zLCBhbmd1bGFyIGRpc3BsYWNlbWVudCBtZWFzdXJpbmcgc3lzdGVtcywgYW5kIGFuZ3VsYXIgcmF0ZSBtZWFzdXJpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gVGhlIHRlc3QgcHJvY2VkdXJlcyBhcmUgZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS85NTIvNzQ5NiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctYWN0aXZlLXN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy50YWItcGFuZS1jb250ZW50IC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jd2ctYWN0aXZlLXN0YW5kYXJkcyAudGFiLXBhbmUgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZHMiIGNsYXNzPSJ0YWItcGFuZSBmYWRlIiByb2xlPSJ0YWJwYW5lbCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZHMtdGFiIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFiLXBhbmUtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj4xMjkzLTE5OTgvQ29yIDEtMjAwODwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIExpbmVhcixTaW5nbGUtQXhpcywgTm9uZ3lyb3Njb3BpYyBBY2NlbGVyb21ldGVycyBDb3JyaWdlbmR1bSAxOiBDaGFuZ2VzIHRvIEFubmV4IEsgYW5kIEFubmV4IEw8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+Q29ycmlnZW5kdW0gdG8gSUVFRSBTdGQgMTI5My0xOTk4LiBTcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHJlcXVpcmVtZW50cyBmb3IgbGluZWFyLCBzaW5nbGUtYXhpcywgbm9uZ3lyb3Njb3BpYyBhY2NlbGVyb21ldGVycyBmb3IgdXNlIGFzIGEgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgbGluZWFyIGRpc3BsYWNlbWVudCBtZWFzdXJpbmcgc3lzdGVtcywgYW5kIGxpbmVhciByYXRlIG1lYXN1cmluZyBzeXN0ZW1zIGFyZSBkZWZpbmVkLiBUaGUgc3BlY2lmaWNhdGlvbiBmb3JtYXQgZ3VpZGUgYW5kIHRlc3QgcHJvY2VkdXJlIHN0YW5kYXJkIGFwcGxpZXMgdG8gZm9yY2UtcmViYWxhbmNlIGFjY2VsZXJvbWV0ZXJzIChwZW5kdWxvdXMgb3IgdHJhbnNsYXRpb25hbCBwcm9vZiAgbWFzcyksIHZpYnJhdGluZyBiZWFtIGFjY2VsZXJvbWV0ZXJzIChWQkFzKSwgYW5kIG1pY3JvbWVjaGFuaWNhbCBhY2NlbGVyb21ldGVycyB0aGF0IHJhbmdlICBmcm9tIGxlc3NlciBhY2N1cmFjeSB0byBoaWdoIGFjY3VyYWN5IGRldmljZXMuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzEyOTMtMTk5OF9Db3JfMS80MTQyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1zdXBlcnNlZGVkLXN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj41MjgtMjAwMTwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBTdGFuZGFyZCBmb3IgSW5lcnRpYWwgU2Vuc29yIFRlcm1pbm9sb2d5PC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPlRlcm1zIGFuZCBkZWZpbml0aW9ucyByZWxhdGluZyB0byBpbmVydGlhbCBzZW5vcnMgYXJlIHByZXNlbnRlZCBpbiB0aGlzIHN0YW5kYXJkLiBVc2FnZSBhcyB1bmRlcnN0b29kIGJ5IHRoZSBpbmVydGlhbCBzZW5zb3IgY29tbXVuaXR5IGlzIGdpdmVuIHByZWZlcmVuY2Ugb3ZlciBnZW5lcmFsIHRlY2huaWNhbCB1c2FnZSBvZiB0aGUgdGVybXMgaGVyZWluLiBUaGUgY3JpdGVyaW9uIGZvciBpbmNsdXNpb24gb2YgYSB0ZXJtIGFuZCBpdHMgZGVmaW5pdGlvbiBpbiB0aGlzIHN0YW5kYXJkIGlzIHVzZWZ1bG5lc3MgYXMgcmVsYXRlZCB0byBpbmVydGlhbCBzZW5zb3IgdGVjaG5vbG9neS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvNTI4Lzc4MCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctc3VwZXJzZWRlZC1zdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctc3VwZXJzZWRlZC1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+OTUyLTE5OTc8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtQXhpcyBJbnRlcmZlcm9tZXRyaWMgRmliZXIgT3B0aWMgR3lyb3M8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+U3BlY2lmaWNhdGlvbiBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGEgc2luZ2xlLWF4aXMgaW50ZXJmZXJvbWV0cmljIGZpYmVyIG9wdGljIGd5cm8gKElGT0cpIGZvciB1c2UgYXMgYSBzZW5zb3IgaW4gYXR0aXR1ZGUgY29udHJvbCBzeXN0ZW1zLCBhbmd1bGFyIGRpc3BsYWNlbWVudCBtZWFzdXJpbmcgc3lzdGVtcywgYW5kIGFuZ3VsYXIgcmF0ZSBtZWFzdXJpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gQSBzdGFuZGFyZCBzcGVjaWZpY2F0aW9uIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgc2luZ2xlLWF4aXMgSUZPRyBpcyBwcm92aWRlZC4gQSBjb21waWxhdGlvbiBvZiByZWNvbW1lbmRlZCBwcm9jZWR1cmVzIGZvciB0ZXN0aW5nIGEgZmliZXIgb3B0aWMgZ3lybywgZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeSwgaXMgYWxzbyBwcm92aWRlZC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvOTUyLzEzMjAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLXN1cGVyc2VkZWQtc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLXN1cGVyc2VkZWQtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjk1Mi0xOTk3L0NvciAxLTIwMTY8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtQXhpcyBJbnRlcmZlcm9tZXRyaWMgRmliZXIgT3B0aWMgR3lyb3MgLS0gQ29ycmlnZW5kdW0gMTogRmlndXJlIDEgYW5kIFN1YmNsYXVzZXMgNS4zLjQsIDguMywgMTIuMTEuNC4zLjIsIDEyLjExLjQuMy4zLCAxMi4xMS40LjMuNCwgMTIuMTIuMy4xLCBhbmQgMTIuMTIuNC4xPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPkVycm9ycyBpZGVudGlmaWVkIGluIElFRUUgU3RkIDk1Mi0xOTk3IGFyZSBjb3JyZWN0ZWQgaW4gdGhpcyBjb3JyaWdlbmR1bS4gQ29ycmVjdGlvbnMgYXJlIG1hZGUgdG8gRmlndXJlIDEgYW5kIGluIHN1YmNsYXVzZXMgNS4zLjQsIDguMywgMTIuMTEuNC4zLjIsIDEyLjExLjQuMy4zLCAxMi4xMS40LjMuNCwgMTIuMTIuMy4xLCBhbmQgMTIuMTIuNC4xLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS85NTItMTk5N19Db3JfMS82NzgzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1zdXBlcnNlZGVkLXN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8udGFiLXBhbmUtY29udGVudCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3dnLXN1cGVyc2VkZWQtc3RhbmRhcmRzIC50YWItcGFuZSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJ3Zy1pbmFjdGl2ZS13aXRoZHJhd24tc3RhbmRhcmRzIiBjbGFzcz0idGFiLXBhbmUgZmFkZSIgcm9sZT0idGFicGFuZWwiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9IndnLWluYWN0aXZlLXdpdGhkcmF3bi1zdGFuZGFyZHMtdGFiIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFiLXBhbmUtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBObyBJbmFjdGl2ZS1XaXRoZHJhd24gU3RhbmRhcmRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLnRhYi1wYW5lLWNvbnRlbnQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyN3Zy1pbmFjdGl2ZS1zdGFuZGFyZHMgLnRhYi1wYW5lIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkcyIgY2xhc3M9InRhYi1wYW5lIGZhZGUiIHJvbGU9InRhYnBhbmVsIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZHMtdGFiIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFiLXBhbmUtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1pbmFjdGl2ZS1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjE0MzEtMjAwNDwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBDb3Jpb2xpcyBWaWJyYXRvcnkgR3lyb3M8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPlNwZWNpZmljYXRpb24gYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBhIHNpbmdsZS1heGlzIENvcmlvbGlzIHZpYnJhdG9yeSBneXJvIChDVkcpIGZvciB1c2UgYXMgYSBzZW5zb3IgaW4gYXR0aXR1ZGUgY29udHJvbCBzeXN0ZW1zLCBhbmd1bGFyIGRpc3BsYWNlbWVudCBtZWFzdXJpbmcgc3lzdGVtcywgYW5kIGFuZ3VsYXIgcmF0ZSBtZWFzdXJpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gIEEgc3RhZGFyZCBzcGVjaWZpY2F0aW9uIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgc2luZ2xlLWF4aXMgQ1ZHIGlzIHByb3ZpZGVkLiAgQSBjb21wbGlsYXRpb24gb2YgcmVjb21tZW5kZWQgcHJvY2VkdXJlcyBmb3IgdGVzdGluZyBhIENWRywgZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeSwgaXMgYWxzbyBwcm92aWRlZC4gIEluZm9ybWF0aXZlIGFubmV4ZXMgY292ZXIgQ1ZHIGRlc2lnbiBmZWF0dXJlcyBhbmQgdGhlb3JldGljYWwgcHJpbmNpcGxlcyBvZiBvcGVyYXRpb24uPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS8xNDMxLzM1MTkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWluYWN0aXZlLXJlc2VydmVkIHN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1pbmFjdGl2ZS1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjE0MzEtMjAwNC9Db3IgMS0yMDA4PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIENvcmlvbGlzIFZpYnJhdG9yeSBHeXJvcyAtIENvcnJpZ2VuZHVtIDE8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPkNvcnJpZ2VuZHVtIHRvIElFRUUgU3RkIDE0MzEtMjAwNC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzE0MzEtMjAwNF9Db3JfMS80MTQzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1pbmFjdGl2ZS1yZXNlcnZlZCBzdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctaW5hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj4yOTItMTk2OTwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3BlY2lmaWNhdGlvbiBGb3JtYXQgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBTcHJpbmctUmVzdHJhaW5lZCBSYXRlIEd5cm9zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5UaGlzIHNwZWNpZmljYXRpb24gZGVmaW5lcyB0aGUgcmVxdWlyZW1lbnRzIGZvciBhIHNpbmdsZS1kZWdyZWUtb2YtZnJlZWRvbSBzcHJpbmctcmVzdHJhaW5lZCByYXRlIGd5cm8gZm9yIFthaXJjcmFmdCwgbWlzc2lsZSwgc3BhY2VjcmFmdCxfX19fX19dIGFwcGxpY2F0aW9ucy4gVGhlIHJhdGUgZ3lybyBzaGFsbCBiZSBjYXBhYmxlIG9mIHByb3ZpZGluZyBbKGRjLCBhYykgdm9sdGFnZSBvdXRwdXRzIHByb3BvcnRpb25hbCB0byBhbmd1bGFyIHJhdGUgaW5wdXRzIHVwIHRvX19fX19fIGRlZ3JlZXMgcGVyIHNlY29uZCwgYSBzd2l0Y2ggY2xvc3VyZShzKSBhdCBhbmd1bGFyIHJhdGVzIChleGNlZWRpbmcsbGVzcyB0aGFuKV9fX19fXyAoKywtLHUwMGIxKV9fX19fXyBkZWdyZWVzIHBlciBzZWNvbmRdLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvMjkyLzQ4NSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctaW5hY3RpdmUtcmVzZXJ2ZWQgc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLWluYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+MjkzLTE5Njk8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtRGVncmVlLW9mLUZyZWVkb20gU3ByaW5nLVJlc3RyYWluZWQgUmF0ZSBHeXJvczwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+UmVjb21tZW5kZWQgcmF0ZSBneXJvIHRlc3QgcHJvY2VkdXJlcyBkZXJpdmVkIGZyb20gdGhvc2UgY3VycmVudGx5IGluIHVzZSwgaW5jbHVkaW5nIHRlc3QgY29uZGl0aW9ucyB0byBiZSBjb25zaWRlcmVkLCBhcmUgY29tcGlsZWQuIEluIHNvbWUgY2FzZXMgYWx0ZXJuYXRlIG1ldGhvZHMgZm9yIG1lYXN1cmluZyBhIHBlcmZvcm1hbmNlIGNoYXJhY3RlcmlzdGljIGhhdmUgYmVlbiBpbmNsdWRlZC4gVGhpcyBzdGFuZGFyZCBpcyBpbnRlbmRlZCB0byBiZSBhIGd1aWRlIGluIHRoZSBwcmVwYXJhdGlvbiBvZiBTZWN0aW9uIDQgb2YgYSBzcGVjaWZpY2F0aW9uIHRoYXQgZm9sbG93cyB0aGUgZm9ybWF0IG9mIElFRUUgU3RkIDI5MiwgU3BlY2lmaWNhdGlvbiBGb3JtYXQgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBTcHJpbmctUmVzdHJhaW5lZCBSYXRlIEd5cm9zLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvMjkzLzQ4NiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctaW5hY3RpdmUtcmVzZXJ2ZWQgc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLWluYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+MjkzLTE5NjkvQ29yIDEtMjAxNDwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgZm9yIElFRUUgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBTcHJpbmctUmVzdHJhaW5lZCBSYXRlIEd5cm9zIC0tIENvcnJpZ2VuZHVtIDE6IFRhYmxlIDEgSGVhZGluZzwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+Q29ycmVjdGlvbiB0byBUYWJsZSAxIG9uIHBhZ2UgMTQgb2YgSUVFRSBTdGQgMjkzLTE5Njk8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzI5My0xOTY5X0Nvcl8xLzU3NTAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWluYWN0aXZlLXJlc2VydmVkIHN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1pbmFjdGl2ZS1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjUxNy0xOTc0PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBSYXRlLUludGVncmF0aW5nIEd5cm9zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5BIHNwZWNpZmljYXRpb24gZm9ybWF0IGd1aWRlIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYSByYXRlLWludGVncmF0aW5nIGd5cm8gc3BlY2lmaWNhdGlvbiB0aGF0IHByb3ZpZGVzIGEgY29tbW9uIG1lZXRpbmcgZ3JvdW5kIG9mIHRlcm1pbm9sb2d5IGFuZCBwcmFjdGljZSBmb3IgbWFudWZhY3R1cmVycyBhbmQgdXNlcnMgaXMgcHJlc2VudGVkLiBBIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHByb2NlZHVyZXMgZm9yIHRlc3RpbmcgYSByYXRlLWludGVncmF0aW5nIGd5cm8gaXMgZ2l2ZW4uPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS81MTcvNzYwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1pbmFjdGl2ZS1yZXNlcnZlZCBzdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctaW5hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj41MjktMTk4MDwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPlN1cHBsZW1lbnQgZm9yIFN0cmFwZG93biBBcHBsaWNhdGlvbnMgdG8gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBSYXRlLUludGVncmF0aW5nIEd5cm9zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5BIHNwZWNpZmljYXRpb24gZm9ybWF0IGd1aWRlIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYSByYXRlLWludGVncmF0aW5nIGd5cm9zY29wZSBzcGVjaWZpY2F0aW9uIGlzIHByZXNlbnRlZC4gUmVjb21tZW5kZWQgcHJvY2VkdXJlcyBmb3IgdGVzdGluZyBhIHJhdGUtaW50ZWdyYXRpbmcgZ3lyb3Njb3BlIGFyZSBjb21waWxlZC4gVGhpcyBzdGFuZGFyZCwgd2hlbiBjb21iaW5lZCB3aXRoIElFRUUgU3RkIDUxNy0xOTc0IChSMTk4MCksIGRlZmluZXMgdGhlIHJlcXVpcmVtZW50cyBhbmQgdGVzdCBwcm9jZWR1cmVzIGluIHRlcm1zIG9mIGNoYXJhY3RlcmlzdGljcyB1bmlxdWUgdG8gdGhlIGd5cm9zY29wZSBvciB0aG9zZSBhcHBsaWNhdGlvbnMgaW4gd2hpY2ggdGhlIGR5bmFtaWMgYW5ndWxhciBpbnB1dHMgYXJlIHNpZ25pZmljYW50bHkgZ3JlYXRlciB0aGFuIHRoZSBsaW1pdGF0aW9ucyBpZGVudGlmaWVkIGluIElFRUUgU3RkIDUxNy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzUyOS83ODEiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWluYWN0aXZlLXJlc2VydmVkIHN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1pbmFjdGl2ZS1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjUyOS0xOTgwL0NvciAxLTIwMTc8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIFN1cHBsZW1lbnQgZm9yIFN0cmFwZG93biBBcHBsaWNhdGlvbnMgdG8gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBSYXRlLUludGVncmF0aW5nIEd5cm9zIC0gQ29ycmlnZW5kdW0gMTogMy4zLjkuMi4yLCAzLjYuNC4xLjEsIDMuNi40LjEuMiwgNi4zLCBhbmQgMTAuMTAuNC4xPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5Db3JyZWN0aW9ucyBhcmUgbWFkZSBieSB0aGlzIGNvcnJpZ2VuZHVtIHRvIG1hdGVyaWFsIGFscmVhZHkgcHVibGlzaGVkIGluIElFRUUgU3RkIDUyOS0xOTgwLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvNTI5LTE5ODBfQ29yXzEvNTc4MCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctaW5hY3RpdmUtcmVzZXJ2ZWQgc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLWluYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+NjcxLTE5ODU8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgTm9uZ3lyb3Njb3BpYyBJbmVydGlhbCBBbmd1bGFyIFNlbnNvcnM6IEplcmssIEFjY2VsZXJhdGlvbiwgVmVsb2NpdHksIGFuZCBEaXNwbGFjZW1lbnQ8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPkEgZ3VpZGUgaXMgcHJlc2VudGVkIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYSBzcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHByb2NlZHVyZSBmb3IgYW4gaW5lcnRpYWwgYW5ndWxhciBzZW5zb3IgdGhhdCBwcm92aWRlcyBhIGNvbW1vbiBtZWV0aW5nIGdyb3VuZCBvZiB0ZXJtaW5vbG9neSBhbmQgcHJhY3RpY2UgZm9yIG1hbnVmYWN0dXJlcnMgYW5kIHVzZXJzIG9mIGFuIGFycmF5IG9mIHNlbnNvcnMgdGhhdCBoYXZlIGJlZW4gZGV2ZWxvcGVkIHRvIG1lZXQgbmVlZHMgbm90IGVhc2lseSBtZXQgYnkgdHJhZGl0aW9uYWwgc3Bpbm5pbmctcm90b3IgZ3lyb3Njb3Blcy4gQSB0ZXN0IHByb2NlZHVyZSBmb3IgdmVyaWZ5aW5nIHRoYXQgdGhlIHNwZWNpZmljYXRpb25zIGhhdmUgYmVlbiBtZXQgaXMgZ2l2ZW4uIFRoZSBzdGFuZGFyZCBpcyBub3QgaW50ZW5kZWQgdG8gY29tcGV0ZSB3aXRoIGV4aXN0aW5nIHN0YW5kYXJkcyBmb3Igc3BlY2lmaWMgZGV2aWNlcyB3aXRoIGhpZ2hseSBzcGVjaWZpYyBtb2RlbHMgYW5kIGVycm9yIHNvdXJjZXMsIHN1Y2ggYXMgc3ByaW5nLXJlc3RyYWluZWQgcmF0ZSBneXJvcywgYnV0IHRvIHByb3ZpZGUgYSB1bmlmb3JtIGd1aWRlIGZvciB0aG9zZSBpbmVydGlhbCBhbmd1bGFyIHNlbnNvcnMgdGhhdCBoYXZlIG5vdCBiZWVuIGNvdmVyZWQgZWxzZXdoZXJlLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvNjcxLzkyNiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctaW5hY3RpdmUtcmVzZXJ2ZWQgc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLWluYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+NjcxLTE5ODUvQ29yIDEtMjAxMDwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBOb25neXJvc2NvcGljIEluZXJ0aWFsIEFuZ3VsYXIgU2Vuc29yczogSmVyaywgQWNjZWxlcmF0aW9uLCBWZWxvY2l0eSwgYW5kIERpc3BsYWNlbWVudCBDb3JyaWdlbmR1bSAxOiA0LjcuMi42IFNob3J0LVRlcm0gU3RhYmlsaXR5IGFuZCBBbm5leCBBIFNlbnNvciBEeW5hbWljIEJsb2NrIERpYWdyYW1zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5JRUVFIFN0ZCA2NzEtMTk4NSBwcm92aWRlcyBzcGVjaWZpY2F0aW9ucyBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGEgbm9uLWd5cm9zY29waWMgaW5lcnRpYWwgYW5ndWxhciBzZW5zb3IgdGhhdCBtYXkgbWVhc3VyZSBhbmd1bGFyIGplcmssIGFjY2VsZXJhdGlvbiwgcmF0ZSwgb3IgZGlzcGxhY2VtZW50IHdpdGggb3Igd2l0aG91dCByZXNwb25zZSBkb3duIHRvIHplcm8gZnJlcXVlbmN5LiBBIHN0YW5kYXJkIHNwZWNpZmljYXRpb24gZm9ybWF0IGlzIHByb3ZpZGVkLiBBIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHRlc3QgcHJvY2VkdXJlcywgZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeSwgaXMgYWxzbyBwcm92aWRlZC4gSW5mb3JtYXRpdmUgYW5uZXhlcyBjb3ZlciBkZXNpZ24gZmVhdHVyZXMgYW5kIHRoZW9yZXRpY2FsIHByaW5jaXBsZXMgb2Ygb3BlcmF0aW9uLiAgVGhpcyBjb3JyaWdlbmR1bSBtYWtlcyBjaGFuZ2VzIHRvIDQuNy4yLjYgdG8gZGVsZXRlIGEgc2VudGVuY2UgdGhhdCBkb2VzIG5vdCBiZWxvbmcgdGhlcmUsIHRvIGFkZCBhIHN1YmNsYXVzZSB0aGF0IHdhcyBpbmFkdmVydGVudGx5IGxlZnQgb3V0LCBhbmQgdG8gcmVudW1iZXIgdGhlIGV4aXN0aW5nIHN1YmNsYXVzZXMuIENoYW5nZXMgYXJlIGFsc28gYmVpbmcgbWFkZSB0byBmaXggdGhlIGJsb2NrIGRpYWdyYW1zIGluIEFubmV4IEEsIHRvIGNvcnJlY3QgYSBtaXNzcGVsbGluZyBvZiBpbmVydGlhLCBhbmQgdG8gYWRkIGEgbWlzc2luZyBzeW1ib2wuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS82NzEtMTk4NV9Db3JfMS80NjgzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1pbmFjdGl2ZS1yZXNlcnZlZCBzdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctaW5hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj44MzYtMjAwOTwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgUmVjb21tZW5kZWQgUHJhY3RpY2UgZm9yIFByZWNpc2lvbiBDZW50cmlmdWdlIFRlc3Rpbmcgb2YgTGluZWFyIEFjY2VsZXJvbWV0ZXJzPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5UaGlzIHJlY29tbWVuZGVkIHByYWN0aWNlIGRlc2NyaWJlcyB0aGUgY29uZHVjdCBhbmQgYW5hbHlzaXMgb2YgcHJlY2lzaW9uIHRlc3RzIHRoYXQgYXJlIHRvIGJlIHBlcmZvcm1lZCBvbiBsaW5lYXIgYWNjZWxlcm9tZXRlcnMgdXNpbmcgY2VudHJpZnVnZSB0ZWNobmlxdWVzLiBUaGUgdGVybSB1MjAxY3ByZWNpc2lvbix1MjAxZCBpbiB0aGlzIGNvbnRleHQsIHJlZmVycyB0byB0ZXN0cyB0aGF0IGFyZSBjb25kdWN0ZWQgdG8gZXZhbHVhdGUgYWNjZWxlcm9tZXRlciBwYXJhbWV0ZXJzLCBhcyBvcHBvc2VkIHRvIHRob3NlIGNvbmR1Y3RlZCB0byBlc3RhYmxpc2ggZW52aXJvbm1lbnRhbCBzdXJ2aXZhYmlsaXR5IG9ubHkuIEV2YWx1YXRpb24gbWF5IHRha2UgdGhlIGZvcm0gb2YgZGV0ZXJtaW5pbmcgdGhlIGNvZWZmaWNpZW50cyBvZiB0aGUgYWNjZWxlcm9tZXRlcidzIG1vZGVsIGVxdWF0aW9uLCBleGNlcHQgZm9yIGJpYXMgYW5kIHNjYWxlIGZhY3Rvciwgd2hpY2ggYXJlIG1vc3QgYWNjdXJhdGVseSBkZXRlcm1pbmVkIGJ5IHN0YXRpYyBtdWx0aS1wb3NpdGlvbiB0ZXN0cy4gQWx0ZXJuYXRpdmVseSwgZXZhbHVhdGlvbiBtYXkgb25seSBlc3RhYmxpc2ggdGhhdCB0aGUgYWNjZWxlcm9tZXRlciBvdXRwdXQgY29tcGxpZXMgd2l0aCBzcGVjaWZpYyBlcnJvciBsaW1pdCBjcml0ZXJpYS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzgzNi8zNDQ5IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1pbmFjdGl2ZS1yZXNlcnZlZCBzdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLnRhYi1wYW5lLWNvbnRlbnQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyN3Zy1pbmFjdGl2ZS1zdGFuZGFyZHMgLnRhYi1wYW5lIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyN3Zy10YWItY29udGVudCAudGFiLWNvbnRlbnQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jd29ya2luZy1ncm91cC1wcm9qZWN0cy1zdGFuZGFyZHMgLS0+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyN3b3JraW5nLWdyb3VwIC0tPgogICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyNtYWluLWNvbnRlbnQgLmNvbC0xMiAuY29sLWxnLTEwIC0tPgogICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLnJvdyAtLT4KICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KICAgIDwvc2VjdGlvbj4gPCEtLSAvI2NvbnRlbnQgLS0+CjwvbWFpbj4KCiAgICA8Zm9vdGVyPgogICAgICAgIDxzZWN0aW9uIGlkPSJmb290ZXItdG9wIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyBhbGlnbi1pdGVtcy1jZW50ZXIiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMiBjb2wtc20tNCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImZvb3Rlci1sb2dvIiBjbGFzcz0ibG9nbyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ibG9nby1saW5rIiBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy8iIHRpdGxlPSJWaXNpdCBJRUVFLm9yZyI+PGltZyBzcmM9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdGhlbWVzL2llZWUtc2EtdGhlbWUvaW1nL2llZWUtbG9nbzJ4LnBuZyIgYWx0PSJJRUVFIGxvZ28iPjwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyNmb290ZXItbG9nbyAubG9nbyAtLT4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbC0xMiAuY29sLXNtLTQgLS0+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTEyIGNvbC1zbS04Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ic29jaWFsLW1lZGlhIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IHNvY2lhbC1tZWRpYSBqdXN0aWZ5LWNvbnRlbnQtc20tZW5kIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsgc29jaWFsLWljb24gc29jaWFsLWZhY2Vib29rIiBocmVmPSJodHRwczovL3d3dy5mYWNlYm9vay5jb20vaWVlZXNhLyIgdGl0bGU9IkZhY2Vib29rIj48aSBjbGFzcz0iZmEgZmEtZmFjZWJvb2siPjwvaT4gPHNwYW4gY2xhc3M9InNyLW9ubHkiPkZhY2Vib29rPC9zcGFuPjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayBzb2NpYWwtaWNvbiBzb2NpYWwtdHdpdHRlciIgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9pZWVlc2EiIHRpdGxlPSJUd2l0dGVyIj48aSBjbGFzcz0iZmEgZmEtdHdpdHRlciI+PC9pPiA8c3BhbiBjbGFzcz0ic3Itb25seSI+VHdpdHRlcjwvc3Bhbj48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsgc29jaWFsLWljb24gc29jaWFsLWxpbmtlZGluIiBocmVmPSJodHRwczovL3d3dy5saW5rZWRpbi5jb20vY29tcGFueS9pZWVlLXNhLWllZWUtc3RhbmRhcmRzLWFzc29jaWF0aW9uLyIgdGl0bGU9IkxpbmtlZEluIj48aSBjbGFzcz0iZmEgZmEtbGlua2VkaW4iPjwvaT4gPHNwYW4gY2xhc3M9InNyLW9ubHkiPkxpbmtlZEluPC9zcGFuPjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayBzb2NpYWwtaWNvbiBzb2NpYWwtaW5zdGFncmFtIiBocmVmPSJodHRwczovL3d3dy5pbnN0YWdyYW0uY29tL2llZWVzYS8iIHRpdGxlPSJJbnN0YWdyYW0iPjxpIGNsYXNzPSJmYSBmYS1pbnN0YWdyYW0iPjwvaT4gPHNwYW4gY2xhc3M9InNyLW9ubHkiPkluc3RhZ3JhbTwvc3Bhbj48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsgc29jaWFsLWljb24gc29jaWFsLXlvdXR1YmUiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2llZWVzYSIgdGl0bGU9IllvdVR1YmUiPjxpIGNsYXNzPSJmYSBmYS15b3V0dWJlIj48L2k+IDxzcGFuIGNsYXNzPSJzci1vbmx5Ij5Zb3VUdWJlPC9zcGFuPjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4gPCEtLSAvLm5hdiAuc29jaWFsLW1lZGlhIC0tPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3NvY2lhbC1tZWRpYSAtLT4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbC0xMiAuY29sLXNtLTggLS0+CiAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLnJvdyAtLT4KICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb250YWluZXIgLS0+CiAgICAgICAgPC9zZWN0aW9uPiA8IS0tIC8jZm9vdGVyLXRvcCAtLT4KCiAgICAgICAgPHNlY3Rpb24gaWQ9ImZvb3Rlci13aWRnZXRzIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTEyIGNvbC1zbS02IGNvbC1tZC0zIj48IS0tIGJlZ2luIGNvbHVtbiAtLT4KPGRpdiBjbGFzcz0id2lkZ2V0Ij48IS0tIGJlZ2luIHdpZGdldCAtLT4KPGRpdiBjbGFzcz0id2lkZ2V0LXRpdGxlIj5JRUVFIFNBPC9kaXY+CjxkaXYgY2xhc3M9Im1lbnUtZm9vdGVyLW1lbnUtaWVlZS1zYS1jb250YWluZXIiPjx1bCBpZD0ibWVudS1mb290ZXItbWVudS1pZWVlLXNhIiBjbGFzcz0ibWVudSI+PGxpIGlkPSJtZW51LWl0ZW0tODQzNyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04NDM3Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC8iPkFib3V0IFVzPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzNzAiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM3MCI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvbWVtYmVyc2hpcC8iPklFRUUgU0EgTWVtYmVyc2hpcDwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzcxIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNzEiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2NvcnBjaGFuLyI+Q29ycG9yYXRlIFByb2dyYW08L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM3MiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzcyIj48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC90cmFpbmluZy8iPlRyYWluaW5nICYjMDM4OyBEZXZlbG9wbWVudDwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04NDM4IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTg0MzgiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L3BvbGljaWVzLyI+UG9saWNpZXMgJiMwMzg7IFByb2NlZHVyZXM8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODQzOSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04NDM5Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9jb250YWN0LyI+Q29udGFjdCBVczwvYT48L2xpPgo8L3VsPjwvZGl2PjwvZGl2Pgo8IS0tIGVuZCB3aWRnZXQgLS0+CjwvZGl2PjwhLS0gZW5kIGNvbHVtbiAtLT4KPGRpdiBjbGFzcz0iY29sLTEyIGNvbC1zbS02IGNvbC1tZC0zIj48IS0tIGJlZ2luIGNvbHVtbiAtLT4KPGRpdiBjbGFzcz0id2lkZ2V0Ij48IS0tIGJlZ2luIHdpZGdldCAtLT4KPGRpdiBjbGFzcz0id2lkZ2V0LXRpdGxlIj5Cb2FyZCBvZiBHb3Zlcm5vcnM8L2Rpdj4KPGRpdiBjbGFzcz0ibWVudS1mb290ZXItbWVudS1ib2FyZC1vZi1nb3Zlcm5vcnMtY29udGFpbmVyIj48dWwgaWQ9Im1lbnUtZm9vdGVyLW1lbnUtYm9hcmQtb2YtZ292ZXJub3JzIiBjbGFzcz0ibWVudSI+PGxpIGlkPSJtZW51LWl0ZW0tODM2MyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzYzIj48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9ib2cvIj5BYm91dCBCb2FyZCBvZiBHb3Zlcm5vcnM8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM2NCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzY0Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9ib2cvYXJjb20vIj5Bd2FyZHMgQ29tbWl0dGVlPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzNjUiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM2NSI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvYm9nL2NhZy8iPkNvcnBvcmF0ZSBBZHZpc29yeSBHcm91cDwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzY2IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNjYiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2JvZy9pY2NvbS8iPkluZHVzdHJ5IENvbm5lY3Rpb25zIENvbW1pdHRlZTwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzY3IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNjciPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2JvZy9yYWMvIj5SZWdpc3RyYXRpb24gQXV0aG9yaXR5IENvbW1pdHRlZTwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzY4IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNjgiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2JvZy9zcGNjLyI+U3RyYXRlZ2ljIFBsYW5uaW5nIENvb3JkaW5hdGlvbiBDb21taXR0ZWU8L2E+PC9saT4KPC91bD48L2Rpdj48L2Rpdj4KPCEtLSBlbmQgd2lkZ2V0IC0tPgo8L2Rpdj48IS0tIGVuZCBjb2x1bW4gLS0+CjxkaXYgY2xhc3M9ImNvbC0xMiBjb2wtc20tNiBjb2wtbWQtMyI+PCEtLSBiZWdpbiBjb2x1bW4gLS0+CjxkaXYgY2xhc3M9IndpZGdldCI+PCEtLSBiZWdpbiB3aWRnZXQgLS0+CjxkaXYgY2xhc3M9IndpZGdldC10aXRsZSI+U3RhbmRhcmRzIEJvYXJkPC9kaXY+CjxkaXYgY2xhc3M9Im1lbnUtZm9vdGVyLW1lbnUtc3RhbmRhcmRzLWJvYXJkLWNvbnRhaW5lciI+PHVsIGlkPSJtZW51LWZvb3Rlci1tZW51LXN0YW5kYXJkcy1ib2FyZCIgY2xhc3M9Im1lbnUiPjxsaSBpZD0ibWVudS1pdGVtLTgzNzgiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM3OCI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvc2FzYi8iPkFib3V0IFN0YW5kYXJkcyBCb2FyZDwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04Mzc5IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNzkiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L3Nhc2Ivc2JhLyI+Qm9hcmQgQXBwcm92YWxzPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzODAiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM4MCI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvc2FzYi9hdWRjb20vIj5BdWRpdCBDb21taXR0ZWU8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM4MSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzgxIj48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9zYXNiL25lc2NvbS8iPk5ldyBTdGFuZGFyZHMgQ29tbWl0dGVlPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzODIiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM4MiI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvc2FzYi9wYXRjb20vIj5QYXRlbnQgQ29tbWl0dGVlPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzODMiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM4MyI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvc2FzYi9wcm9jb20vIj5Qcm9jZWR1cmVzIENvbW1pdHRlZTwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04Mzg0IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzODQiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L3Nhc2IvcmV2Y29tLyI+U3RhbmRhcmRzIFJldmlldyBDb21taXR0ZWU8L2E+PC9saT4KPC91bD48L2Rpdj48L2Rpdj4KPCEtLSBlbmQgd2lkZ2V0IC0tPgo8L2Rpdj48IS0tIGVuZCBjb2x1bW4gLS0+CjxkaXYgY2xhc3M9ImNvbC0xMiBjb2wtc20tNiBjb2wtbWQtMyI+PCEtLSBiZWdpbiBjb2x1bW4gLS0+CjxkaXYgY2xhc3M9IndpZGdldCI+PCEtLSBiZWdpbiB3aWRnZXQgLS0+CjxkaXYgY2xhc3M9IndpZGdldC10aXRsZSI+TmV3cyAmIzAzODsgRXZlbnRzPC9kaXY+CjxkaXYgY2xhc3M9Im1lbnUtZm9vdGVyLW1lbnUtbmV3cy1ldmVudHMtY29udGFpbmVyIj48dWwgaWQ9Im1lbnUtZm9vdGVyLW1lbnUtbmV3cy1ldmVudHMiIGNsYXNzPSJtZW51Ij48bGkgaWQ9Im1lbnUtaXRlbS04NDQwIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTg0NDAiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL25ld3MvIj5OZXdzPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzNzYiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM3NiI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvbmV3cy9zd2lyZS8iPklFRUUgU0EgTmV3c2xldHRlcjwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04NDQxIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTg0NDEiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2V2ZW50cy8iPkV2ZW50czwvYT48L2xpPgo8L3VsPjwvZGl2PjwvZGl2Pgo8IS0tIGVuZCB3aWRnZXQgLS0+CjwvZGl2PjwhLS0gZW5kIGNvbHVtbiAtLT4KICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ucm93IC0tPgogICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KICAgICAgICA8L3NlY3Rpb24+IDwhLS0gLyNmb290ZXItd2lkZ2V0cyAtLT4KCiAgICAgICAgPHNlY3Rpb24gaWQ9ImZvb3Rlci1iYXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtMTIiPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBmb290ZXItYmFyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iLyIgdGl0bGU9IkhvbWUiPkhvbWU8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iL3NpdGVtYXAvIiB0aXRsZT0iU2l0ZW1hcCI+U2l0ZW1hcDwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy9hYm91dC9jb250YWN0Lmh0bWwiIHRhcmdldD0iX2JsYW5rIiB0aXRsZT0iQ29udGFjdCAmYW1wOyBTdXBwb3J0Ij5Db250YWN0ICZhbXA7IFN1cHBvcnQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvYWNjZXNzaWJpbGl0eS1zdGF0ZW1lbnQuaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJBY2Nlc3NpYmlsaXR5Ij5BY2Nlc3NpYmlsaXR5PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnL2Fib3V0L2NvcnBvcmF0ZS9nb3Zlcm5hbmNlL3A5LTI2Lmh0bWwiIHRhcmdldD0iX2JsYW5rIiB0aXRsZT0iTm9uZGlzY3JpbWluYXRpb24gUG9saWN5Ij5Ob25kaXNjcmltaW5hdGlvbiBQb2xpY3k8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iaHR0cHM6Ly9zZWN1cmUuZXRoaWNzcG9pbnQuY29tL2RvbWFpbi9tZWRpYS9lbi9ndWkvMjA0MTAvaW5kZXguaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJJRUVFIEV0aGljcyBSZXBvcnRpbmciPklFRUUgRXRoaWNzIFJlcG9ydGluZzwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy9zZWN1cml0eS1wcml2YWN5Lmh0bWwiIHRhcmdldD0iX2JsYW5rIiB0aXRsZT0iSUVFRSBQcml2YWN5IFBvbGljeSI+SUVFRSBQcml2YWN5IFBvbGljeTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSIvaXByLyIgdGl0bGU9IklFRUUgU0EgQ29weXJpZ2h0IFBvbGljeSI+SUVFRSBTQSBDb3B5cmlnaHQgUG9saWN5PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+IDwhLS0gLy5uYXYgLmZvb3RlciAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iY29weXJpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPiZjb3B5OyBDb3B5cmlnaHQgPHNwYW4gaWQ9ImNvcHlyaWdodC15ZWFyIj4yMDIxPC9zcGFuPiBJRUVFICZuZGFzaDsgQWxsIHJpZ2h0cyByZXNlcnZlZC4gVXNlIG9mIHRoaXMgd2Vic2l0ZSBzaWduaWZpZXMgeW91ciBhZ3JlZW1lbnQgdG8gdGhlIDxhIGNsYXNzPSJmb290ZXItbGluayIgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvc2l0ZS10ZXJtcy1jb25kaXRpb25zLmh0bWwiIHRhcmdldD0iX2JsYW5rIiB0aXRsZT0iSUVFRSBUZXJtcyBhbmQgQ29uZGl0aW9ucyI+SUVFRSBUZXJtcyBhbmQgQ29uZGl0aW9uczwvYT4uPGJyPkEgbm90LWZvci1wcm9maXQgb3JnYW5pemF0aW9uLCBJRUVFIGlzIHRoZSB3b3JsZCZyc3F1bztzIGxhcmdlc3QgdGVjaG5pY2FsIHByb2Zlc3Npb25hbCBvcmdhbml6YXRpb24gZGVkaWNhdGVkIHRvIGFkdmFuY2luZyB0ZWNobm9sb2d5IGZvciB0aGUgYmVuZWZpdCBvZiBodW1hbml0eS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jY29weXJpZ2h0IC0tPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8uY29sLTEyIC0tPgogICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5yb3cgLS0+CiAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgogICAgICAgIDwvc2VjdGlvbj4gPCEtLSAvI2Zvb3Rlci1iYXIgLS0+CiAgICA8L2Zvb3Rlcj4KCiAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLXN1YnNjcmliZSIgdHlwZT0iYnV0dG9uIiBkYXRhLWJzLXRvZ2dsZT0ib2ZmY2FudmFzIiBkYXRhLWJzLXRhcmdldD0iI25ld3NsZXR0ZXItc3Vic2NyaWJlIiBhcmlhLWNvbnRyb2xzPSJuZXdzbGV0dGVyLXN1YnNjcmliZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtbGFiZWw9IlRvZ2dsZSBuZXdzbGV0dGVyIHN1YnNjcmliZSBmb3JtIj5TdWJzY3JpYmU8L2J1dHRvbj4gPCEtLSAvLmJ0biAuYnRuLXN1YnNjcmliZSAtLT4KCiAgICA8ZGl2IGlkPSJuZXdzbGV0dGVyLXN1YnNjcmliZSIgY2xhc3M9Im9mZmNhbnZhcyBvZmZjYW52YXMtZW5kIiBkYXRhLWJzLXNjcm9sbD0idHJ1ZSIgZGF0YS1icy1iYWNrZHJvcD0idHJ1ZSIgdGFiaW5kZXg9Ii0xIiBhcmlhLWxhYmVsbGVkYnk9Im5ld3NsZXR0ZXItc3Vic2NyaWJlLXRpdGxlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJvZmZjYW52YXMtaGVhZGVyIj4KICAgICAgICAgICAgPGg1IGNsYXNzPSJoMiBvZmZjYW52YXMtdGl0bGUiIGlkPSJuZXdzbGV0dGVyLXN1YnNjcmliZS10aXRsZSI+TmV3c3dpcmU8L2g1PgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0bi1jbG9zZSB0ZXh0LXJlc2V0IiBkYXRhLWJzLWRpc21pc3M9Im9mZmNhbnZhcyIgYXJpYS1sYWJlbD0iQ2xvc2UiPjwvYnV0dG9uPgogICAgICAgIDwvZGl2PiA8IS0tIC8ub2ZmY2F2YXMtaGVhZGVyIC0tPgogICAgICAgIDxkaXYgY2xhc3M9Im9mZmNhbnZhcy1ib2R5Ij4KICAgICAgICAgICAgPHA+U2lnbiB1cCBmb3Igb3VyIG1vbnRobHkgbmV3c2xldHRlciB0byBsZWFybiBhYm91dCBuZXcgZGV2ZWxvcG1lbnRzLCBpbmNsdWRpbmcgcmVzb3VyY2VzLCBpbnNpZ2h0cyBhbmQgbW9yZS48L3A+CiAgICAgICAgICAgIDwhLS0gTWFya2V0byBGb3JtIC0tPgogICAgICAgICAgICA8c2NyaXB0IHNyYz0iLy9hcHAtYWIyOC5tYXJrZXRvLmNvbS9qcy9mb3JtczIvanMvZm9ybXMyLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICAgICAgICAgIDxmb3JtIGlkPSJta3RvRm9ybV8xMDIyIiBjbGFzcz0ibWFya2V0b0Zvcm0iPjwvZm9ybT4KICAgICAgICAgICAgPHNjcmlwdD5Na3RvRm9ybXMyLmxvYWRGb3JtKCIvL2FwcC1hYjI4Lm1hcmtldG8uY29tIiwgIjIxMS1GWUwtOTU1IiwgMTAyMik7PC9zY3JpcHQ+CiAgICAgICAgPC9kaXY+IDwhLS0gLy5vZmZjYXZhcy1ib2R5IC0tPgogICAgPC9kaXY+IDwhLS0gLyNuZXdzbGV0dGVyLXN1YnNjcmliZSAub2ZmY2FudmFzIC0tPgoKCiAgICA8ZGl2IGNsYXNzPSJzY3JlZW4tZGFya2VuIj48L2Rpdj4gPCEtLSAvLnNjcmVlbi1kYXJrZW4gLS0+CgogICA8IS0tIDxzY3JpcHQgc3JjPSJodHRwczovL2NvZGUuanF1ZXJ5LmNvbS9qcXVlcnktMy42LjAuc2xpbS5taW4uanMiIGludGVncml0eT0ic2hhMjU2LXU3ZTVraHlpdGhsSWRUcHUyMlBIaEVObVBjUmRGaUhSamhBdUhjczA1Ukk9IiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj48L3NjcmlwdD4tLT4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjEuMy9kaXN0L2pzL2Jvb3RzdHJhcC5idW5kbGUubWluLmpzIiBpbnRlZ3JpdHk9InNoYTM4NC1rYTdTazBHbG40Z210ejJNbFFuaWtUMXdYZ1lzT2crT01odVArSWxSSDlzRU5CTzBMUm41cSs4bmJUb3Y0KzFwIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj48L3NjcmlwdD4KCiAgICA8c2NyaXB0PgogICAgICAgIC8vIG9mZmNhbnZhcyBtb2JpbGUgbWVudQogICAgICAgIGZ1bmN0aW9uIGRhcmtlbl9zY3JlZW4oeWVzbm8pIHsKICAgICAgICAgICAgaWYoIHllc25vID09IHRydWUgKSB7CiAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc2NyZWVuLWRhcmtlbicpLmNsYXNzTGlzdC5hZGQoJ2FjdGl2ZScpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgaWYoeWVzbm8gPT0gZmFsc2UpIHsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5zY3JlZW4tZGFya2VuJykuY2xhc3NMaXN0LnJlbW92ZSgnYWN0aXZlJyk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIGNsb3NlX29mZmNhbnZhcygpIHsKICAgICAgICAgICAgZGFya2VuX3NjcmVlbihmYWxzZSk7CiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNtb2JpbGUtbWVudS5zaG93JykuY2xhc3NMaXN0LnJlbW92ZSgnc2hvdycpOwogICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoJ29mZmNhbnZhcy1hY3RpdmUnKTsKICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIHNob3dfb2ZmY2FudmFzKG9mZmNhbnZhc19pZCkgewogICAgICAgICAgICBkYXJrZW5fc2NyZWVuKHRydWUpOwogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChvZmZjYW52YXNfaWQpLmNsYXNzTGlzdC5hZGQoJ3Nob3cnKTsKICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKCdvZmZjYW52YXMtYWN0aXZlJyk7CiAgICAgICAgfQoKCiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignRE9NQ29udGVudExvYWRlZCcsIGZ1bmN0aW9uKCkgewoKICAgICAgICAgICAgLy8gYWZmaXggaGVhZGVyIHRvIHRvcCBvbiBzY3JvbGwKICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGZ1bmN0aW9uKCkgewoKICAgICAgICAgICAgICAgIGlmICh3aW5kb3cuc2Nyb2xsWSA+IDUwKSB7CgogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b3AtYmFyJykuY2xhc3NMaXN0LmFkZCgnZC1ub25lJyk7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ21hc3RoZWFkJykuY2xhc3NMaXN0LmFkZCgnZml4ZWQtdG9wJyk7CgogICAgICAgICAgICAgICAgICAgIC8vIGFkZCBwYWRkaW5nIHRvcCB0byBzaG93IGNvbnRlbnQgYmVoaW5kIG5hdmJhcgogICAgICAgICAgICAgICAgICAgIG1hc3RoZWFkSGVpZ2h0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI21hc3RoZWFkJykub2Zmc2V0SGVpZ2h0OwoKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdUb3AgPSBtYXN0aGVhZEhlaWdodCArICdweCc7CgogICAgICAgICAgICAgICAgfSBlbHNlIHsKCiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RvcC1iYXInKS5jbGFzc0xpc3QucmVtb3ZlKCdkLW5vbmUnKTsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbWFzdGhlYWQnKS5jbGFzc0xpc3QucmVtb3ZlKCdmaXhlZC10b3AnKTsKCiAgICAgICAgICAgICAgICAgICAgLy8gcmVtb3ZlIHBhZGRpbmcgdG9wIGZyb20gYm9keQogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUucGFkZGluZ1RvcCA9ICcwJzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CgoKCiAgICAgICAgICAgIC8vIG9mZmNhbnZhcyBtb2JpbGUgbWVudQogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS10cmlnZ2VyXScpLmZvckVhY2goZnVuY3Rpb24oZXZlcnllbGVtZW50KSB7CiAgICAgICAgICAgICAgICBsZXQgb2ZmY2FudmFzX2lkID0gZXZlcnllbGVtZW50LmdldEF0dHJpYnV0ZSgnZGF0YS10cmlnZ2VyJyk7CiAgICAgICAgICAgICAgICBldmVyeWVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbiAoZSkgewogICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTsKICAgICAgICAgICAgICAgICAgICBzaG93X29mZmNhbnZhcyhvZmZjYW52YXNfaWQpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmJ0bi1jbG9zZScpLmZvckVhY2goZnVuY3Rpb24oZXZlcnlidXR0b24pIHsKICAgICAgICAgICAgICAgIGV2ZXJ5YnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgICAgICBjbG9zZV9vZmZjYW52YXMoKTsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5zY3JlZW4tZGFya2VuJykuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbihldmVudCkgewogICAgICAgICAgICAgICAgY2xvc2Vfb2ZmY2FudmFzKCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIC8vIERPTUNvbnRlbnRMb2FkZWQgZW5kCgoKCiAgICAgICAgLy8gZGlzcGxheSBjdXJyZW50IHllYXIKICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjY29weXJpZ2h0LXllYXInKS5pbm5lclRleHQgPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7CiAgICA8L3NjcmlwdD4KCiAgICAJCTxzY3JpcHQ+CgkJKCBmdW5jdGlvbiAoIGJvZHkgKSB7CgkJCSd1c2Ugc3RyaWN0JzsKCQkJYm9keS5jbGFzc05hbWUgPSBib2R5LmNsYXNzTmFtZS5yZXBsYWNlKCAvXGJ0cmliZS1uby1qc1xiLywgJ3RyaWJlLWpzJyApOwoJCX0gKSggZG9jdW1lbnQuYm9keSApOwoJCTwvc2NyaXB0PgoJCTxzY3JpcHQ+IC8qIDwhW0NEQVRBWyAqL3ZhciB0cmliZV9sMTBuX2RhdGF0YWJsZXMgPSB7ImFyaWEiOnsic29ydF9hc2NlbmRpbmciOiI6IGFjdGl2YXRlIHRvIHNvcnQgY29sdW1uIGFzY2VuZGluZyIsInNvcnRfZGVzY2VuZGluZyI6IjogYWN0aXZhdGUgdG8gc29ydCBjb2x1bW4gZGVzY2VuZGluZyJ9LCJsZW5ndGhfbWVudSI6IlNob3cgX01FTlVfIGVudHJpZXMiLCJlbXB0eV90YWJsZSI6Ik5vIGRhdGEgYXZhaWxhYmxlIGluIHRhYmxlIiwiaW5mbyI6IlNob3dpbmcgX1NUQVJUXyB0byBfRU5EXyBvZiBfVE9UQUxfIGVudHJpZXMiLCJpbmZvX2VtcHR5IjoiU2hvd2luZyAwIHRvIDAgb2YgMCBlbnRyaWVzIiwiaW5mb19maWx0ZXJlZCI6IihmaWx0ZXJlZCBmcm9tIF9NQVhfIHRvdGFsIGVudHJpZXMpIiwiemVyb19yZWNvcmRzIjoiTm8gbWF0Y2hpbmcgcmVjb3JkcyBmb3VuZCIsInNlYXJjaCI6IlNlYXJjaDoiLCJhbGxfc2VsZWN0ZWRfdGV4dCI6IkFsbCBpdGVtcyBvbiB0aGlzIHBhZ2Ugd2VyZSBzZWxlY3RlZC4gIiwic2VsZWN0X2FsbF9saW5rIjoiU2VsZWN0IGFsbCBwYWdlcyIsImNsZWFyX3NlbGVjdGlvbiI6IkNsZWFyIFNlbGVjdGlvbi4iLCJwYWdpbmF0aW9uIjp7ImFsbCI6IkFsbCIsIm5leHQiOiJOZXh0IiwicHJldmlvdXMiOiJQcmV2aW91cyJ9LCJzZWxlY3QiOnsicm93cyI6eyIwIjoiIiwiXyI6IjogU2VsZWN0ZWQgJWQgcm93cyIsIjEiOiI6IFNlbGVjdGVkIDEgcm93In19LCJkYXRlcGlja2VyIjp7ImRheU5hbWVzIjpbIlN1bmRheSIsIk1vbmRheSIsIlR1ZXNkYXkiLCJXZWRuZXNkYXkiLCJUaHVyc2RheSIsIkZyaWRheSIsIlNhdHVyZGF5Il0sImRheU5hbWVzU2hvcnQiOlsiU3VuIiwiTW9uIiwiVHVlIiwiV2VkIiwiVGh1IiwiRnJpIiwiU2F0Il0sImRheU5hbWVzTWluIjpbIlMiLCJNIiwiVCIsIlciLCJUIiwiRiIsIlMiXSwibW9udGhOYW1lcyI6WyJKYW51YXJ5IiwiRmVicnVhcnkiLCJNYXJjaCIsIkFwcmlsIiwiTWF5IiwiSnVuZSIsIkp1bHkiLCJBdWd1c3QiLCJTZXB0ZW1iZXIiLCJPY3RvYmVyIiwiTm92ZW1iZXIiLCJEZWNlbWJlciJdLCJtb250aE5hbWVzU2hvcnQiOlsiSmFudWFyeSIsIkZlYnJ1YXJ5IiwiTWFyY2giLCJBcHJpbCIsIk1heSIsIkp1bmUiLCJKdWx5IiwiQXVndXN0IiwiU2VwdGVtYmVyIiwiT2N0b2JlciIsIk5vdmVtYmVyIiwiRGVjZW1iZXIiXSwibW9udGhOYW1lc01pbiI6WyJKYW4iLCJGZWIiLCJNYXIiLCJBcHIiLCJNYXkiLCJKdW4iLCJKdWwiLCJBdWciLCJTZXAiLCJPY3QiLCJOb3YiLCJEZWMiXSwibmV4dFRleHQiOiJOZXh0IiwicHJldlRleHQiOiJQcmV2IiwiY3VycmVudFRleHQiOiJUb2RheSIsImNsb3NlVGV4dCI6IkRvbmUiLCJ0b2RheSI6IlRvZGF5IiwiY2xlYXIiOiJDbGVhciJ9fTsvKiBdXT4gKi8gPC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtaW5jbHVkZXMvanMvd3AtZW1iZWQubWluLmpzP3Zlcj01LjguMycgaWQ9J3dwLWVtYmVkLWpzJz48L3NjcmlwdD4KCiAgICA8L2JvZHk+CjwvaHRtbD4K
2635
+ CjwhZG9jdHlwZSBodG1sPgo8aHRtbCBsYW5nPSJlbiI+CjxoZWFkPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSIiPgoKICAgIDwhLS0gZmllbGRzIGZvciBDbG91ZHNlYXJjaCAtLT4KPG1ldGEgbmFtZT0idGl0bGUiIGNvbnRlbnQ9IklFRUUgU0EgLSBJRUVFIDUyOC0yMDE5IC0gSUVFRSBTdGFuZGFyZCBmb3IgSW5lcnRpYWwgU2Vuc29yIFRlcm1pbm9sb2d5Ii8+CjxtZXRhIG5hbWU9InR5cGUiIGNvbnRlbnQ9IlN0YW5kYXJkIi8+CjxtZXRhIG5hbWU9InRvcGljIiBjb250ZW50PSJBZXJvc3BhY2UgRWxlY3Ryb25pY3MiLz4KPG1ldGEgbmFtZT0iY2F0ZWdvcnkiIGNvbnRlbnQ9IiIvPgo8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iVGVybXMgYW5kIGRlZmluaXRpb25zIHJlbGF0aW5nIHRvIGluZXJ0aWFsIHNlbnNvcnMgYXJlIHByZXNlbnRlZCBpbiB0aGlzIHN0YW5kYXJkLiBVc2FnZSBhcyB1bmRlcnN0b29kIGJ5IHRoZSBpbmVydGlhbCBzZW5zb3IgY29tbXVuaXR5IGlzIGdpdmVuIHByZWZlcmVuY2Ugb3ZlciBnZW5lcmFsIHRlY2huaWNhbCB1c2FnZSBvZiB0aGUgdGVybXMgaGVyZWluLiBUaGUgY3JpdGVyaW9uIGZvciBpbmNsdXNpb24gb2YgYSB0ZXJtIGFuZCBpdHMgZGVmaW5pdGlvbiBpbiB0aGlzIHN0YW5kYXJkIGlzIHVzZWZ1bG5lc3MgYXMgcmVsYXRlZCB0byBpbmVydGlhbCBzZW5zb3IgdGVjaG5vbG9neS4iLz4KPG1ldGEgbmFtZT0ia2V5d29yZHMiIGNvbnRlbnQ9IkFlcm9zcGFjZSBFbGVjdHJvbmljcyIvPgo8IS0tIFByb2plY3RzL1N0YW5kYXJkcyAtLT4KPG1ldGEgbmFtZT0iU29jaWV0eSIgY29udGVudD0iSUVFRSBBZXJvc3BhY2UgYW5kIEVsZWN0cm9uaWMgU3lzdGVtcyBTb2NpZXR5Ii8+CjxtZXRhIG5hbWU9IlN0ZFJlY05vIiBjb250ZW50PSI3MjkyIi8+CjxtZXRhIG5hbWU9IlN0YXR1cyIgY29udGVudD0iQWN0aXZlIFN0YW5kYXJkIi8+CgogICAgCiAgICA8dGl0bGU+SUVFRSBTQSAtIElFRUUgNTI4LTIwMTk8L3RpdGxlPgoKICAgIDxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlX2Zhdmljb24uaWNvIj4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlX2FwcGxlX3RvdWNoX2ljb24ucG5nIj4KCiAgICA8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20iPgogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tIiBjcm9zc29yaWdpbj4KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9T3BlbitTYW5zOml0YWwsd2dodEAwLDQwMDswLDUwMDswLDYwMDswLDcwMDswLDgwMDsxLDQwMDsxLDYwMDsxLDcwMCZkaXNwbGF5PXN3YXAiCiAgICAgICAgICByZWw9InN0eWxlc2hlZXQiPgoKICAgIDwhLS0gR29vZ2xlIFRhZyBNYW5hZ2VyIC0tPgogICAgPHNjcmlwdD4oZnVuY3Rpb24odyxkLHMsbCxpKXt3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFydCc6CiAgICAgICAgICAgICAgICBuZXcgRGF0ZSgpLmdldFRpbWUoKSxldmVudDonZ3RtLmpzJ30pO3ZhciBmPWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUocylbMF0sCiAgICAgICAgICAgIGo9ZC5jcmVhdGVFbGVtZW50KHMpLGRsPWwhPSdkYXRhTGF5ZXInPycmbD0nK2w6Jyc7ai5hc3luYz10cnVlO2ouc3JjPQogICAgICAgICAgICAnaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vZ3RtLmpzP2lkPScraStkbDtmLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGosZik7CiAgICAgICAgfSkod2luZG93LGRvY3VtZW50LCdzY3JpcHQnLCdkYXRhTGF5ZXInLCdHVE0tTVI4VDg0MycpOzwvc2NyaXB0PgogICAgPCEtLSBFbmQgR29vZ2xlIFRhZyBNYW5hZ2VyIC0tPgoKICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2tpdC5mb250YXdlc29tZS5jb20vMmQ3NGYyODJmNi5qcyIgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+CgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9ib290c3RyYXBANS4xLjMvZGlzdC9jc3MvYm9vdHN0cmFwLm1pbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIKICAgICAgICAgIGludGVncml0eT0ic2hhMzg0LTFCbUU0a1dCcTc4aVloRmxkdkt1aGZUQVU2YXVVOHRUOTRXckhmdGpEYnJDRVhTVTFvQm9xeWwyUXZaNmpJVzMiIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiPgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9zdHlsZS5jc3M/dGltZT0yMDIyMDIwMyIgcmVsPSJzdHlsZXNoZWV0Ij4KCiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9zMy11cy13ZXN0LTIuYW1hem9uYXdzLmNvbS9pZWVlc2h1dHBhZ2VzL2dkcHIvc2V0dGluZ3MuanMiPjwvc2NyaXB0PgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIKICAgICAgICAgIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2Nvb2tpZWNvbnNlbnQyLzMuMC4zL2Nvb2tpZWNvbnNlbnQubWluLmNzcyIvPgogICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2Nvb2tpZWNvbnNlbnQyLzMuMC4zL2Nvb2tpZWNvbnNlbnQubWluLmpzIj48L3NjcmlwdD4KCiAgICA8c2NyaXB0PgogICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24gKCkgewogICAgICAgICAgICB3aW5kb3cuY29va2llY29uc2VudC5pbml0aWFsaXNlKGpzb24pCiAgICAgICAgfSk7CiAgICA8L3NjcmlwdD4KCiAgICA8bWV0YSBuYW1lPSdyb2JvdHMnIGNvbnRlbnQ9J2luZGV4LCBmb2xsb3csIG1heC1pbWFnZS1wcmV2aWV3OmxhcmdlLCBtYXgtc25pcHBldDotMSwgbWF4LXZpZGVvLXByZXZpZXc6LTEnIC8+CgoJPCEtLSBUaGlzIHNpdGUgaXMgb3B0aW1pemVkIHdpdGggdGhlIFlvYXN0IFNFTyBwbHVnaW4gdjE4LjEgLSBodHRwczovL3lvYXN0LmNvbS93b3JkcHJlc3MvcGx1Z2lucy9zZW8vIC0tPgoJPG1ldGEgcHJvcGVydHk9Im9nOmxvY2FsZSIgY29udGVudD0iZW5fVVMiIC8+Cgk8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0id2Vic2l0ZSIgLz4KCTxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IlNBIE1haW4gU2l0ZSIgLz4KCTxtZXRhIG5hbWU9InR3aXR0ZXI6Y2FyZCIgY29udGVudD0ic3VtbWFyeV9sYXJnZV9pbWFnZSIgLz4KCTxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vbGQranNvbiIgY2xhc3M9InlvYXN0LXNjaGVtYS1ncmFwaCI+eyJAY29udGV4dCI6Imh0dHBzOi8vc2NoZW1hLm9yZyIsIkBncmFwaCI6W3siQHR5cGUiOiJPcmdhbml6YXRpb24iLCJAaWQiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8jb3JnYW5pemF0aW9uIiwibmFtZSI6IklFRUUgU0EiLCJ1cmwiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8iLCJzYW1lQXMiOltdLCJsb2dvIjp7IkB0eXBlIjoiSW1hZ2VPYmplY3QiLCJAaWQiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8jbG9nbyIsImluTGFuZ3VhZ2UiOiJlbi1VUyIsInVybCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy9pbXBvcnQvaWVlZXNhLWxvZ28ucG5nIiwiY29udGVudFVybCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy9pbXBvcnQvaWVlZXNhLWxvZ28ucG5nIiwid2lkdGgiOjcyMCwiaGVpZ2h0Ijo0MzIsImNhcHRpb24iOiJJRUVFIFNBIn0sImltYWdlIjp7IkBpZCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyNsb2dvIn19LHsiQHR5cGUiOiJXZWJTaXRlIiwiQGlkIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvI3dlYnNpdGUiLCJ1cmwiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8iLCJuYW1lIjoiU0EgTWFpbiBTaXRlIiwiZGVzY3JpcHRpb24iOiIiLCJwdWJsaXNoZXIiOnsiQGlkIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvI29yZ2FuaXphdGlvbiJ9LCJwb3RlbnRpYWxBY3Rpb24iOlt7IkB0eXBlIjoiU2VhcmNoQWN0aW9uIiwidGFyZ2V0Ijp7IkB0eXBlIjoiRW50cnlQb2ludCIsInVybFRlbXBsYXRlIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvP3M9e3NlYXJjaF90ZXJtX3N0cmluZ30ifSwicXVlcnktaW5wdXQiOiJyZXF1aXJlZCBuYW1lPXNlYXJjaF90ZXJtX3N0cmluZyJ9XSwiaW5MYW5ndWFnZSI6ImVuLVVTIn0seyJAdHlwZSI6IldlYlBhZ2UiLCJAaWQiOiIjd2VicGFnZSIsInVybCI6IiIsIm5hbWUiOiIiLCJpc1BhcnRPZiI6eyJAaWQiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8jd2Vic2l0ZSJ9LCJicmVhZGNydW1iIjp7IkBpZCI6IiNicmVhZGNydW1iIn0sImluTGFuZ3VhZ2UiOiJlbi1VUyIsInBvdGVudGlhbEFjdGlvbiI6W3siQHR5cGUiOiJSZWFkQWN0aW9uIiwidGFyZ2V0IjpbIiJdfV19LHsiQHR5cGUiOiJCcmVhZGNydW1iTGlzdCIsIkBpZCI6IiNicmVhZGNydW1iIiwiaXRlbUxpc3RFbGVtZW50IjpbeyJAdHlwZSI6Ikxpc3RJdGVtIiwicG9zaXRpb24iOjEsIm5hbWUiOiJIb21lIiwiaXRlbSI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyJ9LHsiQHR5cGUiOiJMaXN0SXRlbSIsInBvc2l0aW9uIjoyLCJuYW1lIjoiIn1dfV19PC9zY3JpcHQ+Cgk8IS0tIC8gWW9hc3QgU0VPIHBsdWdpbi4gLS0+CgoKPGxpbmsgcmVsPSdkbnMtcHJlZmV0Y2gnIGhyZWY9Jy8vcy53Lm9yZycgLz4KCQk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJCXdpbmRvdy5fd3BlbW9qaVNldHRpbmdzID0geyJiYXNlVXJsIjoiaHR0cHM6XC9cL3Mudy5vcmdcL2ltYWdlc1wvY29yZVwvZW1vamlcLzEzLjEuMFwvNzJ4NzJcLyIsImV4dCI6Ii5wbmciLCJzdmdVcmwiOiJodHRwczpcL1wvcy53Lm9yZ1wvaW1hZ2VzXC9jb3JlXC9lbW9qaVwvMTMuMS4wXC9zdmdcLyIsInN2Z0V4dCI6Ii5zdmciLCJzb3VyY2UiOnsiY29uY2F0ZW1vamkiOiJodHRwczpcL1wvc3RhbmRhcmRzLmllZWUub3JnXC93cC1pbmNsdWRlc1wvanNcL3dwLWVtb2ppLXJlbGVhc2UubWluLmpzP3Zlcj01LjguMyJ9fTsKCQkJIWZ1bmN0aW9uKGUsYSx0KXt2YXIgbixyLG8saT1hLmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpLHA9aS5nZXRDb250ZXh0JiZpLmdldENvbnRleHQoIjJkIik7ZnVuY3Rpb24gcyhlLHQpe3ZhciBhPVN0cmluZy5mcm9tQ2hhckNvZGU7cC5jbGVhclJlY3QoMCwwLGkud2lkdGgsaS5oZWlnaHQpLHAuZmlsbFRleHQoYS5hcHBseSh0aGlzLGUpLDAsMCk7ZT1pLnRvRGF0YVVSTCgpO3JldHVybiBwLmNsZWFyUmVjdCgwLDAsaS53aWR0aCxpLmhlaWdodCkscC5maWxsVGV4dChhLmFwcGx5KHRoaXMsdCksMCwwKSxlPT09aS50b0RhdGFVUkwoKX1mdW5jdGlvbiBjKGUpe3ZhciB0PWEuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7dC5zcmM9ZSx0LmRlZmVyPXQudHlwZT0idGV4dC9qYXZhc2NyaXB0IixhLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF0uYXBwZW5kQ2hpbGQodCl9Zm9yKG89QXJyYXkoImZsYWciLCJlbW9qaSIpLHQuc3VwcG9ydHM9e2V2ZXJ5dGhpbmc6ITAsZXZlcnl0aGluZ0V4Y2VwdEZsYWc6ITB9LHI9MDtyPG8ubGVuZ3RoO3IrKyl0LnN1cHBvcnRzW29bcl1dPWZ1bmN0aW9uKGUpe2lmKCFwfHwhcC5maWxsVGV4dClyZXR1cm4hMTtzd2l0Y2gocC50ZXh0QmFzZWxpbmU9InRvcCIscC5mb250PSI2MDAgMzJweCBBcmlhbCIsZSl7Y2FzZSJmbGFnIjpyZXR1cm4gcyhbMTI3OTg3LDY1MDM5LDgyMDUsOTg5NSw2NTAzOV0sWzEyNzk4Nyw2NTAzOSw4MjAzLDk4OTUsNjUwMzldKT8hMTohcyhbNTUzNTYsNTY4MjYsNTUzNTYsNTY4MTldLFs1NTM1Niw1NjgyNiw4MjAzLDU1MzU2LDU2ODE5XSkmJiFzKFs1NTM1Niw1NzMzMiw1NjEyOCw1NjQyMyw1NjEyOCw1NjQxOCw1NjEyOCw1NjQyMSw1NjEyOCw1NjQzMCw1NjEyOCw1NjQyMyw1NjEyOCw1NjQ0N10sWzU1MzU2LDU3MzMyLDgyMDMsNTYxMjgsNTY0MjMsODIwMyw1NjEyOCw1NjQxOCw4MjAzLDU2MTI4LDU2NDIxLDgyMDMsNTYxMjgsNTY0MzAsODIwMyw1NjEyOCw1NjQyMyw4MjAzLDU2MTI4LDU2NDQ3XSk7Y2FzZSJlbW9qaSI6cmV0dXJuIXMoWzEwMDg0LDY1MDM5LDgyMDUsNTUzNTcsNTY2MTNdLFsxMDA4NCw2NTAzOSw4MjAzLDU1MzU3LDU2NjEzXSl9cmV0dXJuITF9KG9bcl0pLHQuc3VwcG9ydHMuZXZlcnl0aGluZz10LnN1cHBvcnRzLmV2ZXJ5dGhpbmcmJnQuc3VwcG9ydHNbb1tyXV0sImZsYWciIT09b1tyXSYmKHQuc3VwcG9ydHMuZXZlcnl0aGluZ0V4Y2VwdEZsYWc9dC5zdXBwb3J0cy5ldmVyeXRoaW5nRXhjZXB0RmxhZyYmdC5zdXBwb3J0c1tvW3JdXSk7dC5zdXBwb3J0cy5ldmVyeXRoaW5nRXhjZXB0RmxhZz10LnN1cHBvcnRzLmV2ZXJ5dGhpbmdFeGNlcHRGbGFnJiYhdC5zdXBwb3J0cy5mbGFnLHQuRE9NUmVhZHk9ITEsdC5yZWFkeUNhbGxiYWNrPWZ1bmN0aW9uKCl7dC5ET01SZWFkeT0hMH0sdC5zdXBwb3J0cy5ldmVyeXRoaW5nfHwobj1mdW5jdGlvbigpe3QucmVhZHlDYWxsYmFjaygpfSxhLmFkZEV2ZW50TGlzdGVuZXI/KGEuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbiwhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6KGUuYXR0YWNoRXZlbnQoIm9ubG9hZCIsbiksYS5hdHRhY2hFdmVudCgib25yZWFkeXN0YXRlY2hhbmdlIixmdW5jdGlvbigpeyJjb21wbGV0ZSI9PT1hLnJlYWR5U3RhdGUmJnQucmVhZHlDYWxsYmFjaygpfSkpLChuPXQuc291cmNlfHx7fSkuY29uY2F0ZW1vamk/YyhuLmNvbmNhdGVtb2ppKTpuLndwZW1vamkmJm4udHdlbW9qaSYmKGMobi50d2Vtb2ppKSxjKG4ud3BlbW9qaSkpKX0od2luZG93LGRvY3VtZW50LHdpbmRvdy5fd3BlbW9qaVNldHRpbmdzKTsKCQk8L3NjcmlwdD4KCQk8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgppbWcud3Atc21pbGV5LAppbWcuZW1vamkgewoJZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7Cglib3JkZXI6IG5vbmUgIWltcG9ydGFudDsKCWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsKCWhlaWdodDogMWVtICFpbXBvcnRhbnQ7Cgl3aWR0aDogMWVtICFpbXBvcnRhbnQ7CgltYXJnaW46IDAgLjA3ZW0gIWltcG9ydGFudDsKCXZlcnRpY2FsLWFsaWduOiAtMC4xZW0gIWltcG9ydGFudDsKCWJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsKCXBhZGRpbmc6IDAgIWltcG9ydGFudDsKfQo8L3N0eWxlPgoJPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0ndHJpYmUtZXZlbnRzLXByby1taW5pLWNhbGVuZGFyLWJsb2NrLXN0eWxlcy1jc3MnICBocmVmPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3BsdWdpbnMvZXZlbnRzLWNhbGVuZGFyLXByby9zcmMvcmVzb3VyY2VzL2Nzcy90cmliZS1ldmVudHMtcHJvLW1pbmktY2FsZW5kYXItYmxvY2subWluLmNzcz92ZXI9NS4xMi4wJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0nd3AtYmxvY2stbGlicmFyeS1jc3MnICBocmVmPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1pbmNsdWRlcy9jc3MvZGlzdC9ibG9jay1saWJyYXJ5L3N0eWxlLm1pbi5jc3M/dmVyPTUuOC4zJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0naWVlZS1jbG91ZHNlYXJjaC1jc3MtY3NzJyAgaHJlZj0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlLXNhL2Nsb3Vkc2VhcmNoL2Nzcy9pZWVlLWNsb3Vkc2VhcmNoLmNzcz90aW1lPTIwMjIwMTI2JiMwMzg7dmVyPTUuOC4zJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0naWVlZS13aWRnZXQtY3NzLWNzcycgIGhyZWY9J2h0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdGhlbWVzL2llZWUtc2EtdGhlbWUvaWVlZS1zYS93aWRnZXRzL2Nzcy93aWRnZXRzLmNzcz90aW1lPTIwMjIwMTI2JiMwMzg7dmVyPTUuOC4zJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtaW5jbHVkZXMvanMvanF1ZXJ5L2pxdWVyeS5taW4uanM/dmVyPTMuNi4wJyBpZD0nanF1ZXJ5LWNvcmUtanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1pbmNsdWRlcy9qcy9qcXVlcnkvanF1ZXJ5LW1pZ3JhdGUubWluLmpzP3Zlcj0zLjMuMicgaWQ9J2pxdWVyeS1taWdyYXRlLWpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIGlkPSdpZWVlLWNsb3Vkc2VhcmNoLWpzLWpzLWV4dHJhJz4KLyogPCFbQ0RBVEFbICovCnZhciBpZWVlX2FqYXhfb2JqZWN0ID0geyJhamF4X3VybCI6Imh0dHBzOlwvXC9zdGFuZGFyZHMuaWVlZS5vcmdcL3dwLWFkbWluXC9hZG1pbi1hamF4LnBocCJ9OwovKiBdXT4gKi8KPC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdGhlbWVzL2llZWUtc2EtdGhlbWUvaWVlZS1zYS9jbG91ZHNlYXJjaC9qcy9pZWVlLWNsb3Vkc2VhcmNoLmpzP3RpbWU9MjAyMjAxMjYmIzAzODt2ZXI9NS44LjMnIGlkPSdpZWVlLWNsb3Vkc2VhcmNoLWpzLWpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlLXNhL3dpZGdldHMvanMvaWVlZS13aWRnZXRzLmpzP3RpbWU9MjAyMjAyMDM1JiMwMzg7dmVyPTUuOC4zJyBpZD0naWVlZS13aWRnZXQtanMtanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgaWQ9J2llZWUtc2Etc2NyaXB0cy1qcy1leHRyYSc+Ci8qIDwhW0NEQVRBWyAqLwp2YXIgaWVlZV9hamF4X29iamVjdCA9IHsiYWpheF91cmwiOiJodHRwczpcL1wvc3RhbmRhcmRzLmllZWUub3JnXC93cC1hZG1pblwvYWRtaW4tYWpheC5waHAifTsKLyogXV0+ICovCjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWUtc2EvanMvaWVlZS1zYS5qcz90aW1lPTIwMjIwMTI2JiMwMzg7dmVyPTUuOC4zJyBpZD0naWVlZS1zYS1zY3JpcHRzLWpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlLXNhL2pzL21hcmtldG8uanM/dmVyPTUuOC4zJyBpZD0naWVlZS1tYXJrZXRvLWpzJz48L3NjcmlwdD4KPGxpbmsgcmVsPSJodHRwczovL2FwaS53Lm9yZy8iIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWpzb24vIiAvPjxsaW5rIHJlbD0iRWRpdFVSSSIgdHlwZT0iYXBwbGljYXRpb24vcnNkK3htbCIgdGl0bGU9IlJTRCIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcveG1scnBjLnBocD9yc2QiIC8+CjxsaW5rIHJlbD0id2x3bWFuaWZlc3QiIHR5cGU9ImFwcGxpY2F0aW9uL3dsd21hbmlmZXN0K3htbCIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtaW5jbHVkZXMvd2x3bWFuaWZlc3QueG1sIiAvPiAKPG1ldGEgbmFtZT0idGVjLWFwaS12ZXJzaW9uIiBjb250ZW50PSJ2MSI+PG1ldGEgbmFtZT0idGVjLWFwaS1vcmlnaW4iIGNvbnRlbnQ9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnIj48bGluayByZWw9ImFsdGVybmF0ZSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtanNvbi90cmliZS9ldmVudHMvdjEvIiAvPjxtZXRhIG5hbWU9ImdlbmVyYXRvciIgY29udGVudD0iUG93ZXJlZCBieSBXUEJha2VyeSBQYWdlIEJ1aWxkZXIgLSBkcmFnIGFuZCBkcm9wIHBhZ2UgYnVpbGRlciBmb3IgV29yZFByZXNzLiIvPgo8bm9zY3JpcHQ+PHN0eWxlPiAud3BiX2FuaW1hdGVfd2hlbl9hbG1vc3RfdmlzaWJsZSB7IG9wYWNpdHk6IDE7IH08L3N0eWxlPjwvbm9zY3JpcHQ+Cgo8L2hlYWQ+Cjxib2R5IGNsYXNzPSJibG9nIHRyaWJlLW5vLWpzIHdwYi1qcy1jb21wb3NlciBqcy1jb21wLXZlci02LjcuMCB2Y19yZXNwb25zaXZlIiA+CjwhLS0gR29vZ2xlIFRhZyBNYW5hZ2VyIChub3NjcmlwdCkgLS0+Cjxub3NjcmlwdD48aWZyYW1lIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vbnMuaHRtbD9pZD1HVE0tTVI4VDg0MyIgaGVpZ2h0PSIwIiB3aWR0aD0iMCIgc3R5bGU9ImRpc3BsYXk6bm9uZTt2aXNpYmlsaXR5OmhpZGRlbiI+PC9pZnJhbWU+PC9ub3NjcmlwdD4KPCEtLSBFbmQgR29vZ2xlIFRhZyBNYW5hZ2VyIChub3NjcmlwdCkgLS0+CjxoZWFkZXI+CiAgICA8c2VjdGlvbiBpZD0idG9wLWJhciI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMCBkLW5vbmUgZC1tZC1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgdG9wLWJhciB0b3AtYmFyLWxlZnQiIHJvbGU9Im5hdmlnYXRpb24iIGFyaWEtbGFiZWw9Ikdsb2JhbCBsZWZ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy8iIHRhcmdldD0iX2JsYW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iSUVFRS5vcmciPjxpIGNsYXNzPSJuYXYtaWNvbiBmYSBmYS1ob21lIj48L2k+SUVFRS5vcmc8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJodHRwczovL2llZWV4cGxvcmUuaWVlZS5vcmcvWHBsb3JlL2hvbWUuanNwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9Il9ibGFuayIgdGl0bGU9IklFRUUgWHBsb3JlIERpZ2l0YWwgTGlicmFyeSI+SUVFRSA8ZW0+WHBsb3JlPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEaWdpdGFsIExpYnJhcnk8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8iIHRhcmdldD0iX2JsYW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iSUVFRSBTdGFuZGFyZHMiPklFRUUgU3RhbmRhcmRzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iaHR0cHM6Ly9zcGVjdHJ1bS5pZWVlLm9yZy8iIHRhcmdldD0iX2JsYW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iSUVFRSBTcGVjdHJ1bSI+SUVFRSBTcGVjdHJ1bTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnL3NpdGVtYXAuaHRtbCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJNb3JlIFNpdGVzIj5Nb3JlIFNpdGVzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgPC91bD4gPCEtLSAvLm5hdiAudG9wLWJhci1sZWZ0IC0tPgogICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb2wtMTAgLmQtbm9uZSAuZC1tZC1ibG9jayAtLT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0yIGQtbm9uZSBkLW1kLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiB0b3AtYmFyIHRvcC1iYXItcmlnaHQiIHJvbGU9Im5hdmlnYXRpb24iIGFyaWEtbGFiZWw9Ikdsb2JhbCByaWdodCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iL2RldmVsb3AvZXRvb2xzLyIgdGl0bGU9ImVUb29scyI+ZVRvb2xzPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgIDwvdWw+IDwhLS0gLy5uYXYgLnRvcC1iYXItcmlnaHQgLS0+CiAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbC0yIC5kLW5vbmUgLmQtbWQtYmxvY2sgLS0+CiAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ucm93IC0tPgogICAgICAgIDwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgogICAgPC9zZWN0aW9uPiA8IS0tIC8jdG9wLWJhciAtLT4KCiAgICA8c2VjdGlvbiBpZD0ibWFzdGhlYWQiPgoKICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTEyIGNvbC1zbS02Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwcmltYXJ5LWxvZ28iIGNsYXNzPSJsb2dvIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9ImxvZ28tbGluayIgaHJlZj0iLyIgdGl0bGU9IklFRUUgU3RhbmRhcmRzIEFzc29jaWF0aW9uIj48aW1nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNyYz0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pbWcvaWVlZS1zYS1sb2dvMngucG5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHQ9IklFRUUgU3RhbmRhcmRzIEFzc29jaWF0aW9uIGxvZ28iPjwvYT4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3ByaW1hcnktbG9nbyAubG9nbyAtLT4KICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8uY29sLTEyIC5jb2wtc20tNiAtLT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC02IGQtbm9uZSBkLXNtLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJzZWNvbmRhcnktbG9nbyIgY2xhc3M9ImxvZ28iPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ibG9nby1saW5rIiBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy8iIHRpdGxlPSJWaXNpdCBJRUVFLm9yZyI+PGltZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdGhlbWVzL2llZWUtc2EtdGhlbWUvaW1nL2llZWUtbG9nbzJ4LnBuZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PSJJRUVFIGxvZ28iPjwvYT4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3NlY29uZGFyeS1sb2dvIC5sb2dvIC0tPgogICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb2wtNiAuZC1ub25lIC5kLW1kLWJsb2NrIC0tPgogICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLnJvdyAtLT4KICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KCiAgICAgICAgPCEtLQoKCi0tPgoKPG5hdiBpZD0ibWFpbi1uYXYiIGNsYXNzPSJuYXZiYXIgbmF2YmFyLWV4cGFuZC1sZyBuYXZiYXItbGlnaHQiIGFyaWEtbGFiZWw9Ik1haW4iPgogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXZiYXItdG9nZ2xlciIgdHlwZT0iYnV0dG9uIiBkYXRhLXRyaWdnZXI9Im1vYmlsZS1tZW51IiBhcmlhLWNvbnRyb2xzPSJtb2JpbGUtbWVudSIKICAgICAgICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLWxhYmVsPSJUb2dnbGUgbmF2aWdhdGlvbiI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYXZiYXItdG9nZ2xlci1pY29uIj48aSBjbGFzcz0iZmFzIGZhLWJhcnMiPjwvaT48L3NwYW4+CiAgICAgICAgPC9idXR0b24+CiAgICAgICAgPGRpdiBpZD0ibW9iaWxlLW1lbnUiIGNsYXNzPSJjb2xsYXBzZSBuYXZiYXItY29sbGFwc2UiPgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0bi1jbG9zZSBtb2JpbGUtbWVudSIgYXJpYS1sYWJlbD0iY2xvc2UiPjwvYnV0dG9uPgogICAgICAgICAgICA8IS0tIGJlZ2luIHdvcmRwcmVzcyBtZW51IC0tPgogICAgICAgICAgICA8dWwgaWQ9Im1lbnUtbWFpbi1uYXZpZ2F0aW9uIiBjbGFzcz0ibmF2YmFyLW5hdiBtci1hdXRvIG1haW4gdy0xMDAgIj4JPGxpICBpZD0ibWVudS1pdGVtLTgzODUiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtY3VzdG9tIG1lbnUtaXRlbS1vYmplY3QtY3VzdG9tIG1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gZHJvcGRvd24gbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzODUiIGRhdGEtaXRlbS1pZD0iODM4NSI+CgkJPGEgdGl0bGU9IlN0YW5kYXJkcyIgZGF0YS1pdGVtLWlkPSI4Mzg1IiBjbGFzcz0ibmF2LWxpbmsgIGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+U3RhbmRhcmRzPC9hPgoJCTxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgbWVnYS1tZW51Ij4KCQkJPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KCQkJCTxkaXYgY2xhc3M9InJvdyI+CgkJCQkJPHVsIGNsYXNzPSJzdWItbWVudSAgZGVwdGhfMCI+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDI5IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MjkiIGRhdGEtaXRlbS1pZD0iODQyOSI+CgkJCQkJCQk8YSB0aXRsZT0iQWNjZXNzIFN0YW5kYXJkcyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWNjZXNzLXN0YW5kYXJkcy8iIGRhdGEtaXRlbS1pZD0iODQyOSIgY2xhc3M9Im5hdi1saW5rICI+QWNjZXNzIFN0YW5kYXJkczwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzODYiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM4NiIgZGF0YS1pdGVtLWlkPSI4Mzg2Ij4KCQkJCQkJCTxhIHRpdGxlPSJTZWFyY2ggU3RhbmRhcmRzIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9zdGFuZGFyZC8iIGRhdGEtaXRlbS1pZD0iODM4NiIgY2xhc3M9Im5hdi1saW5rICI+U2VhcmNoIFN0YW5kYXJkczwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzODciIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM4NyIgZGF0YS1pdGVtLWlkPSI4Mzg3Ij4KCQkJCQkJCTxhIHRpdGxlPSJTdGFuZGFyZHMgRGV2ZWxvcG1lbnQiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2RldmVsb3AvIiBkYXRhLWl0ZW0taWQ9IjgzODciIGNsYXNzPSJuYXYtbGluayAiPlN0YW5kYXJkcyBEZXZlbG9wbWVudDwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzODgiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM4OCIgZGF0YS1pdGVtLWlkPSI4Mzg4Ij4KCQkJCQkJCTxhIHRpdGxlPSJTdGFuZGFyZHMgQWRvcHRpb24iIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2ludGwvc3RhbmRhcmRzLWFkb3B0aW9uLyIgZGF0YS1pdGVtLWlkPSI4Mzg4IiBjbGFzcz0ibmF2LWxpbmsgIj5TdGFuZGFyZHMgQWRvcHRpb248L2E+CgkJCQkJCTwvbGk+CgkJCQkJPC91bD4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51LWRlc2NyaXB0aW9uIj4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM4NSIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5DaG9vc2UgZnJvbSB0aGUgbWFueSB3YXlzIHRvIGFjY2VzcyBJRUVFIFNBIFN0YW5kYXJkcy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDI5IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkNob29zZSBmcm9tIGluZGl2aWR1YWwgb3Igb3JnYW5pemF0aW9uYWwgYWNjZXNzIG9wdGlvbnMgdG8gZ2V0IHRoZSBzdGFuZGFyZHMgeW91IG5lZWQuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM4NiIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5GaW5kIHRoZSBzdGFuZGFyZHMgeW914oCZcmUgbG9va2luZyBmb3IuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM4NyIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5HZXQgaW52b2x2ZWQgaW4gdGhlIGRldmVsb3BtZW50IG9mIG1hcmtldC1kcml2ZW4gdGVjaG5vbG9neSBzdGFuZGFyZHMgd2l0aCBwcm92ZW4gZXhwZXJ0aXNlIGFuZCBkZWRpY2F0ZWQgc3VwcG9ydC48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzg4IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkxlYXJuIG1vcmUgYWJvdXQgaG93IHRvIGFkb3B0IElFRUUgc3RhbmRhcmRzLjwvbGk+CgkJCQkJPC91bD4KCQkJCTwvZGl2PiA8IS0tIC8ucm93IC0tPgoJCQk8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KCQk8L2Rpdj4gPCEtLSAvLmRyb3Bkb3duLW1lbnUgbWVnYS1tZW51IC0tPgoJPC9saT4KCTxsaSAgaWQ9Im1lbnUtaXRlbS04Mzg5IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLWN1c3RvbSBtZW51LWl0ZW0tb2JqZWN0LWN1c3RvbSBtZW51LWl0ZW0taGFzLWNoaWxkcmVuIGRyb3Bkb3duIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04Mzg5IiBkYXRhLWl0ZW0taWQ9IjgzODkiPgoJCTxhIHRpdGxlPSJQcm9kdWN0cyAmYW1wOyBQcm9ncmFtcyIgZGF0YS1pdGVtLWlkPSI4Mzg5IiBjbGFzcz0ibmF2LWxpbmsgIGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+UHJvZHVjdHMgJiMwMzg7IFByb2dyYW1zPC9hPgoJCTxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgbWVnYS1tZW51Ij4KCQkJPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KCQkJCTxkaXYgY2xhc3M9InJvdyI+CgkJCQkJPHVsIGNsYXNzPSJzdWItbWVudSAgZGVwdGhfMCI+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04MzkwIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzOTAiIGRhdGEtaXRlbS1pZD0iODM5MCI+CgkJCQkJCQk8YSB0aXRsZT0iQWxsaWFuY2UgTWFuYWdlbWVudCBTZXJ2aWNlcyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtc2VydmljZXMvYW1zLyIgZGF0YS1pdGVtLWlkPSI4MzkwIiBjbGFzcz0ibmF2LWxpbmsgIj5BbGxpYW5jZSBNYW5hZ2VtZW50IFNlcnZpY2VzPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM5MSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04MzkxIiBkYXRhLWl0ZW0taWQ9IjgzOTEiPgoJCQkJCQkJPGEgdGl0bGU9IkNvbmZvcm1pdHkgQXNzZXNzbWVudCAmYW1wOyBDZXJ0aWZpY2F0aW9uIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1zZXJ2aWNlcy9pY2FwLyIgZGF0YS1pdGVtLWlkPSI4MzkxIiBjbGFzcz0ibmF2LWxpbmsgIj5Db25mb3JtaXR5IEFzc2Vzc21lbnQgJiMwMzg7IENlcnRpZmljYXRpb248L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04MzkyIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzOTIiIGRhdGEtaXRlbS1pZD0iODM5MiI+CgkJCQkJCQk8YSB0aXRsZT0iSUVFRSBTQSBPcGVuIFNvdXJjZSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaW5pdGlhdGl2ZXMvb3BlbnNvdXJjZS8iIGRhdGEtaXRlbS1pZD0iODM5MiIgY2xhc3M9Im5hdi1saW5rICI+SUVFRSBTQSBPcGVuIFNvdXJjZTwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzOTMiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM5MyIgZGF0YS1pdGVtLWlkPSI4MzkzIj4KCQkJCQkJCTxhIHRpdGxlPSJJbmR1c3RyeSBBZmZpbGlhdGUgTmV0d29yayAoSUFOKSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtc2VydmljZXMvaW5kdXN0cnktYWZmaWxpYXRlLW5ldHdvcmsvIiBkYXRhLWl0ZW0taWQ9IjgzOTMiIGNsYXNzPSJuYXYtbGluayAiPkluZHVzdHJ5IEFmZmlsaWF0ZSBOZXR3b3JrIChJQU4pPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQzMSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDMxIiBkYXRhLWl0ZW0taWQ9Ijg0MzEiPgoJCQkJCQkJPGEgdGl0bGU9IkluZHVzdHJ5IENvbm5lY3Rpb25zIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pbmR1c3RyeS1jb25uZWN0aW9ucy8iIGRhdGEtaXRlbS1pZD0iODQzMSIgY2xhc3M9Im5hdi1saW5rICI+SW5kdXN0cnkgQ29ubmVjdGlvbnM8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDMwIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MzAiIGRhdGEtaXRlbS1pZD0iODQzMCI+CgkJCQkJCQk8YSB0aXRsZT0iVGhlIE5hdGlvbmFsIEVsZWN0cmljYWwgU2FmZXR5IENvZGXCriAoTkVTQ8KuKSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtc2VydmljZXMvbmVzYy8iIGRhdGEtaXRlbS1pZD0iODQzMCIgY2xhc3M9Im5hdi1saW5rICI+VGhlIE5hdGlvbmFsIEVsZWN0cmljYWwgU2FmZXR5IENvZGXCriAoTkVTQ8KuKTwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzOTYiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM5NiIgZGF0YS1pdGVtLWlkPSI4Mzk2Ij4KCQkJCQkJCTxhIHRpdGxlPSJSZWdpc3RyYXRpb24gQXV0aG9yaXR5IiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1zZXJ2aWNlcy9yZWdhdXRoLyIgZGF0YS1pdGVtLWlkPSI4Mzk2IiBjbGFzcz0ibmF2LWxpbmsgIj5SZWdpc3RyYXRpb24gQXV0aG9yaXR5PC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM5NyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04Mzk3IiBkYXRhLWl0ZW0taWQ9IjgzOTciPgoJCQkJCQkJPGEgdGl0bGU9IkdvdmVybm1lbnQgRW5nYWdlbWVudCBQcm9ncmFtIG9uIFN0YW5kYXJkcyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvaW50bC9nb3Zlcm5tZW50LWVuZ2FnZW1lbnQtcHJvZ3JhbS8iIGRhdGEtaXRlbS1pZD0iODM5NyIgY2xhc3M9Im5hdi1saW5rICI+R292ZXJubWVudCBFbmdhZ2VtZW50IFByb2dyYW0gb24gU3RhbmRhcmRzPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM5OCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04Mzk4IiBkYXRhLWl0ZW0taWQ9IjgzOTgiPgoJCQkJCQkJPGEgdGl0bGU9IlN0YW5kYXJkcyBGZWxsb3dzaGlwIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9pbnRsL3N0YW5kYXJkcy1mZWxsb3dzaGlwLXByb2dyYW0vIiBkYXRhLWl0ZW0taWQ9IjgzOTgiIGNsYXNzPSJuYXYtbGluayAiPlN0YW5kYXJkcyBGZWxsb3dzaGlwPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQzMiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDMyIiBkYXRhLWl0ZW0taWQ9Ijg0MzIiPgoJCQkJCQkJPGEgdGl0bGU9IkFsbCBQcm9kdWN0cyAmYW1wOyBQcm9ncmFtcyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtc2VydmljZXMvIiBkYXRhLWl0ZW0taWQ9Ijg0MzIiIGNsYXNzPSJuYXYtbGluayAiPkFsbCBQcm9kdWN0cyAmIzAzODsgUHJvZ3JhbXM8L2E+CgkJCQkJCTwvbGk+CgkJCQkJPC91bD4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51LWRlc2NyaXB0aW9uIj4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM4OSIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5GdWxsIGVjb3N5c3RlbSBvZiBzdGFuZGFyZHMtcmVsYXRlZCBzb2x1dGlvbnMgdG8gaGVscCBkcml2ZSBhd2FyZW5lc3MsIGFjdGl2YXRpb24sIGFuZCBhZG9wdGlvbi48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4MzkwIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPlByb3ZpZGluZyBzdXBwb3J0IHNlcnZpY2VzIHRvIGhlbHAgbWFuYWdlIHRoZSBkYXktdG8tZGF5IG9wZXJhdGlvbnMgb2YgaW5kdXN0cnkgZ3JvdXBzLCBhbGxvd2luZyBrZXkgc3Rha2Vob2xkZXJzIHRvIGZvY3VzIG9uIHRoZSB3b3JrIGF0IGhhbmQuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM5MSIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5Gb2N1c2VkIG9uIGRldmVsb3BtZW50IGFuZCBpbXBsZW1lbnRhdGlvbiBvZiByaWdvcm91cyBjb25mb3JtaXR5IGFzc2Vzc21lbnQgcHJvZ3JhbXMgZGVzaWduZWQgdG8gaGVscCBhY2NlbGVyYXRlIG1hcmtldCBhZG9wdGlvbiwgcmVkdWNlIGNvc3RzIGFuZCBtb3JlLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9IjgzOTIiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+QSB2ZW5kb3ItbmV1dHJhbCwgaW5jbHVzaXZlLCBvcGVuIHNvdXJjZSBwbGF0Zm9ybeKAlGZvciBhbGwsIGZyb20gaW5kZXBlbmRlbnQgc29mdHdhcmUgZGV2ZWxvcGVycyBhbmQgc3RhcnQgdXBzIHRvIGluZHVzdHJ5LCBhY2FkZW1pYyBhbmQgcmVzZWFyY2ggaW5zdGl0dXRpb25zLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9IjgzOTMiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+T3BlbiB0byBjb25zb3J0aWEsIGluZHVzdHJ5IGFsbGlhbmNlIG9yIG90aGVyIGluZHVzdHJ5IG9yZ2FuaXphdGlvbnMsIGxvb2tpbmcgdG8gYnJpbmcgZm9yd2FyZCBzcGVjaWZpY2F0aW9ucyBmb3Igc3RhbmRhcmRzIGRldmVsb3BtZW50IGFuZCBtYXJrZXQgYWRvcHRpb24uPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQzMSIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5GYWNpbGl0YXRpbmcgY29sbGFib3JhdGlvbiBhbW9uZyBvcmdhbml6YXRpb25zIGFuZCBpbmRpdmlkdWFscyBhcyB0aGV5IGhvbmUgYW5kIHJlZmluZSB0aGVpciB0aGlua2luZyBvbiByYXBpZGx5IGNoYW5naW5nIHRlY2hub2xvZ2llcy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDMwIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkd1aWRlbGluZXMgZm9yIHByYWN0aWNhbCBzYWZlZ3VhcmRpbmcgZHVyaW5nIHRoZSBpbnN0YWxsYXRpb24sIG9wZXJhdGlvbiwgYW5kIG1haW50ZW5hbmNlIG9mIGVsZWN0cmljIHN1cHBseSwgY29tbXVuaWNhdGlvbiBsaW5lcyBhbmQgYXNzb2NpYXRlZCBlcXVpcG1lbnQuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM5NiIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5Bc3NpZ25zIGFuZCBtYWludGFpbnMgdW5pcXVlIGlkZW50aWZpZXJzIGFuZCB1bmFtYmlndW91cyBuYW1lcyB0byBvYmplY3RzIGZvciB0aG9zZSB3aXNoaW5nIHRvIHJlZ2lzdGVyIHRoZW0uPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM5NyIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5Qcm9ncmFtIGZvciBwb2xpY3ltYWtlcnMgcHJvdmlkaW5nIHRhaWxvcmVkIHN0YW5kYXJkcyBpbmZvcm1hdGlvbiwgYWNjZXNzIHRvIHRoZSBJRUVFIFNBIHN0YW5kYXJkaXphdGlvbiBlY29zeXN0ZW0sIGFuZCBzdGFuZGFyZGl6YXRpb24gcmVzb3VyY2VzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9IjgzOTgiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+UHJvdmlkaW5nIGdsb2JhbCBzdGFuZGFyZHMgcHJvZmVzc2lvbmFscyB0aGUgb3Bwb3J0dW5pdHkgdG8gb2JzZXJ2ZSB0aGUgSUVFRSBzdGFuZGFyZHMgZGV2ZWxvcG1lbnQgcHJvY2VzcyBhbmQgbGVhcm4gYWJvdXQgdGVjaG5pY2FsIGFyZWFzIG9mIGludGVyZXN0LjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MzIiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+U2VlIGFsbCB0aGUgcHJvZ3JhbXMsIHByb2R1Y3RzLCBhbmQgc2VydmljZXMgdGhhdCBJRUVFIFNBIGhhcyB0byBvZmZlci48L2xpPgoJCQkJCTwvdWw+CgkJCQk8L2Rpdj4gPCEtLSAvLnJvdyAtLT4KCQkJPC9kaXY+IDwhLS0gLy5jb250YWluZXIgLS0+CgkJPC9kaXY+IDwhLS0gLy5kcm9wZG93bi1tZW51IG1lZ2EtbWVudSAtLT4KCTwvbGk+Cgk8bGkgIGlkPSJtZW51LWl0ZW0tODQwMCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1jdXN0b20gbWVudS1pdGVtLW9iamVjdC1jdXN0b20gbWVudS1pdGVtLWhhcy1jaGlsZHJlbiBkcm9wZG93biBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQwMCIgZGF0YS1pdGVtLWlkPSI4NDAwIj4KCQk8YSB0aXRsZT0iRm9jdXNlcyIgZGF0YS1pdGVtLWlkPSI4NDAwIiBjbGFzcz0ibmF2LWxpbmsgIGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+Rm9jdXNlczwvYT4KCQk8ZGl2IGNsYXNzPSJkcm9wZG93bi1tZW51IG1lZ2EtbWVudSI+CgkJCTxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CgkJCQk8ZGl2IGNsYXNzPSJyb3ciPgoJCQkJCTx1bCBjbGFzcz0ic3ViLW1lbnUgIGRlcHRoXzAiPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQwMSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDAxIiBkYXRhLWl0ZW0taWQ9Ijg0MDEiPgoJCQkJCQkJPGEgdGl0bGU9IkFydGlmaWNpYWwgSW50ZWxsaWdlbmNlIFN5c3RlbXMgKEFJUykiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2luaXRpYXRpdmVzL2FydGlmaWNpYWwtaW50ZWxsaWdlbmNlLXN5c3RlbXMvIiBkYXRhLWl0ZW0taWQ9Ijg0MDEiIGNsYXNzPSJuYXYtbGluayAiPkFydGlmaWNpYWwgSW50ZWxsaWdlbmNlIFN5c3RlbXMgKEFJUyk8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDAyIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MDIiIGRhdGEtaXRlbS1pZD0iODQwMiI+CgkJCQkJCQk8YSB0aXRsZT0iQ29ubmVjdGl2aXR5ICZhbXA7IFRlbGVjb20iIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3ByYWN0aWNlcy9jb25uZWN0aXZpdHktdGVsZWNvbS8iIGRhdGEtaXRlbS1pZD0iODQwMiIgY2xhc3M9Im5hdi1saW5rICI+Q29ubmVjdGl2aXR5ICZhbXA7IFRlbGVjb208L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDAzIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MDMiIGRhdGEtaXRlbS1pZD0iODQwMyI+CgkJCQkJCQk8YSB0aXRsZT0iRW5lcmd5IiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcmFjdGljZXMvZW5lcmd5LyIgZGF0YS1pdGVtLWlkPSI4NDAzIiBjbGFzcz0ibmF2LWxpbmsgIj5FbmVyZ3k8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDA0IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MDQiIGRhdGEtaXRlbS1pZD0iODQwNCI+CgkJCQkJCQk8YSB0aXRsZT0iRm91bmRhdGlvbmFsIFRlY2hub2xvZ2llcyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJhY3RpY2VzL2ZvdW5kYXRpb25hbC8iIGRhdGEtaXRlbS1pZD0iODQwNCIgY2xhc3M9Im5hdi1saW5rICI+Rm91bmRhdGlvbmFsIFRlY2hub2xvZ2llczwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MDUiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQwNSIgZGF0YS1pdGVtLWlkPSI4NDA1Ij4KCQkJCQkJCTxhIHRpdGxlPSJIZWFsdGhjYXJlIGFuZCBMaWZlIFNjaWVuY2VzIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcmFjdGljZXMvaGVhbHRoY2FyZS1saWZlLXNjaWVuY2VzLyIgZGF0YS1pdGVtLWlkPSI4NDA1IiBjbGFzcz0ibmF2LWxpbmsgIj5IZWFsdGhjYXJlIGFuZCBMaWZlIFNjaWVuY2VzPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQwNiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDA2IiBkYXRhLWl0ZW0taWQ9Ijg0MDYiPgoJCQkJCQkJPGEgdGl0bGU9Ik1vYmlsaXR5IiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcmFjdGljZXMvbW9iaWxpdHkvIiBkYXRhLWl0ZW0taWQ9Ijg0MDYiIGNsYXNzPSJuYXYtbGluayAiPk1vYmlsaXR5PC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQzMyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDMzIiBkYXRhLWl0ZW0taWQ9Ijg0MzMiPgoJCQkJCQkJPGEgdGl0bGU9IkdvdmVybm1lbnQgRW5nYWdlbWVudCIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvaW50bC8iIGRhdGEtaXRlbS1pZD0iODQzMyIgY2xhc3M9Im5hdi1saW5rICI+R292ZXJubWVudCBFbmdhZ2VtZW50PC9hPgoJCQkJCQk8L2xpPgoJCQkJCTwvdWw+CgkJCQkJPHVsIGNsYXNzPSJzdWItbWVudS1kZXNjcmlwdGlvbiI+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MDAiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+U3RyYXRlZ2ljIGZvY3VzZXMgYW5kIGluZHVzdHJpZXMgd2hlcmUgSUVFRSBTQSBpcyByYWlzaW5nIHRoZSB3b3JsZOKAmXMgc3RhbmRhcmRzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MDEiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+RGV2ZWxvcGluZyBhY2Nlc3NpYmxlIGFuZCBzdXN0YWluYWJsZSBhcHByb2FjaGVzIGFuZCBzb2x1dGlvbnMgZm9yIHByYWN0aWNhbCBhcHBsaWNhdGlvbiBvZiBBSVMgcHJpbmNpcGxlcyBhbmQgZnJhbWV3b3Jrcy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDAyIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkFkdmFuY2luZyByb2J1c3QsIHJlc3BvbnNpYmxlLCBhbmQgYWZmb3JkYWJsZSBjb25uZWN0aXZpdHkuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQwMyIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5FbmFibGluZyBzdXN0YWluYWJsZSwgZWZmaWNpZW50LCBhbmQgYWNjZXNzaWJsZSBlbmVyZ3kgdGhyb3VnaCB0ZWNobm9sb2dpY2FsIGFkdmFuY2VzIG9uIGEgZ2xvYmFsIHNjYWxlLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MDQiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+V29ya2luZyB0byBzdGFuZGFyZGl6ZSBzZWFtbGVzcyBhbmQgdWJpcXVpdG91cyBjb25uZWN0aXZpdHkgYWNyb3NzIGFsbCBhcHBsaWNhdGlvbnMgb2YgY29ubmVjdGVkIHRlY2hub2xvZ2llcy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDA1IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkZvY3VzZWQgb24gZW5hYmxpbmcgYWZmb3JkYWJsZSBoZWFsdGhjYXJlLCBhY2Nlc3MgdG8gbWVkaWNpbmUsIGFuZCBpbm5vdmF0aW9uIHRvIGltcHJvdmUgb3ZlcmFsbCBnbG9iYWwgd2VsbG5lc3MuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQwNiIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5Xb3JraW5nIHRvIGhlbHAgdGhlIGV2b2x2aW5nIG1vYmlsaXR5IGVjb3N5c3RlbSBhZGRyZXNzIHNvbWUgb2YgaXRzIGdyZWF0ZXN0IGJ1c2luZXNzIG9wcG9ydHVuaXRpZXMgdGhhdCBoYXZlIHRoZSBwb3RlbnRpYWwgdG8gc29sdmUgbWFqb3Igc29jaWV0YWwgY2hhbGxlbmdlcy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDMzIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkJ1aWxkaW5nIGJyaWRnZXMgYmV0d2VlbiB0aGUgd29ybGRzIG9mIHRlY2hub2xvZ3ksIHN0YW5kYXJkcywgYW5kIHBvbGljeSBtYWtpbmcuPC9saT4KCQkJCQk8L3VsPgoJCQkJPC9kaXY+IDwhLS0gLy5yb3cgLS0+CgkJCTwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgoJCTwvZGl2PiA8IS0tIC8uZHJvcGRvd24tbWVudSBtZWdhLW1lbnUgLS0+Cgk8L2xpPgoJPGxpICBpZD0ibWVudS1pdGVtLTg0MDgiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtY3VzdG9tIG1lbnUtaXRlbS1vYmplY3QtY3VzdG9tIG1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gZHJvcGRvd24gbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MDgiIGRhdGEtaXRlbS1pZD0iODQwOCI+CgkJPGEgdGl0bGU9IkdldCBJbnZvbHZlZCIgZGF0YS1pdGVtLWlkPSI4NDA4IiBjbGFzcz0ibmF2LWxpbmsgIGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+R2V0IEludm9sdmVkPC9hPgoJCTxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgbWVnYS1tZW51Ij4KCQkJPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KCQkJCTxkaXYgY2xhc3M9InJvdyI+CgkJCQkJPHVsIGNsYXNzPSJzdWItbWVudSAgZGVwdGhfMCI+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDM0IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MzQiIGRhdGEtaXRlbS1pZD0iODQzNCI+CgkJCQkJCQk8YSB0aXRsZT0iRXZlbnRzIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9ldmVudHMvIiBkYXRhLWl0ZW0taWQ9Ijg0MzQiIGNsYXNzPSJuYXYtbGluayAiPkV2ZW50czwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MTAiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQxMCIgZGF0YS1pdGVtLWlkPSI4NDEwIj4KCQkJCQkJCTxhIHRpdGxlPSJJRUVFIFNBIE1lbWJlcnNoaXAiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L21lbWJlcnNoaXAvIiBkYXRhLWl0ZW0taWQ9Ijg0MTAiIGNsYXNzPSJuYXYtbGluayAiPklFRUUgU0EgTWVtYmVyc2hpcDwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MzUiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQzNSIgZGF0YS1pdGVtLWlkPSI4NDM1Ij4KCQkJCQkJCTxhIHRpdGxlPSJIb3cgdG8gR2V0IEludm9sdmVkIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wYXJ0aWNpcGF0ZS8iIGRhdGEtaXRlbS1pZD0iODQzNSIgY2xhc3M9Im5hdi1saW5rICI+SG93IHRvIEdldCBJbnZvbHZlZDwvYT4KCQkJCQkJPC9saT4KCQkJCQk8L3VsPgoJCQkJCTx1bCBjbGFzcz0ic3ViLW1lbnUtZGVzY3JpcHRpb24iPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDA4IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkxlYXJuIGFib3V0IG9wcG9ydHVuaXRpZXMgdG8gZW5nYWdlIHdpdGggSUVFRSBTQS48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDM0IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkpvaW4gdXMgYXQgdXBjb21pbmcgdmlydHVhbCBvciBpbi1wZXJzb24gZXZlbnRzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MTAiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+RmxleGlibGUgbWVtYmVyc2hpcCBvcHRpb25zIHRoYXQgb2ZmZXIgZW5oYW5jZWQgcGFydGljaXBhdGlvbiBpbiBJRUVFIFNBIGFjdGl2aXRpZXMsIHN0YW5kYXJkcyBkZXZlbG9wbWVudCwgYW5kIGdvdmVybmFuY2UuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQzNSIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5UaGVyZSBhcmUgbWFueSBvcHBvcnR1bml0aWVzIGZvciBwYXJ0aWNpcGF0aW9uLCBmaW5kIHRoZSByaWdodCBvbmUgZm9yIHlvdS48L2xpPgoJCQkJCTwvdWw+CgkJCQk8L2Rpdj4gPCEtLSAvLnJvdyAtLT4KCQkJPC9kaXY+IDwhLS0gLy5jb250YWluZXIgLS0+CgkJPC9kaXY+IDwhLS0gLy5kcm9wZG93bi1tZW51IG1lZ2EtbWVudSAtLT4KCTwvbGk+Cgk8bGkgIGlkPSJtZW51LWl0ZW0tODQxMiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1jdXN0b20gbWVudS1pdGVtLW9iamVjdC1jdXN0b20gbWVudS1pdGVtLWhhcy1jaGlsZHJlbiBkcm9wZG93biBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQxMiIgZGF0YS1pdGVtLWlkPSI4NDEyIj4KCQk8YSB0aXRsZT0iUmVzb3VyY2VzIiBkYXRhLWl0ZW0taWQ9Ijg0MTIiIGNsYXNzPSJuYXYtbGluayAgZHJvcGRvd24tdG9nZ2xlIiBkYXRhLWJzLXRvZ2dsZT0iZHJvcGRvd24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5SZXNvdXJjZXM8L2E+CgkJPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSBtZWdhLW1lbnUiPgoJCQk8ZGl2IGNsYXNzPSJjb250YWluZXIiPgoJCQkJPGRpdiBjbGFzcz0icm93Ij4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51ICBkZXB0aF8wIj4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MTMiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQxMyIgZGF0YS1pdGVtLWlkPSI4NDEzIj4KCQkJCQkJCTxhIHRpdGxlPSJUcmFpbmluZyAmYW1wOyBEZXZlbG9wbWVudCIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvdHJhaW5pbmcvIiBkYXRhLWl0ZW0taWQ9Ijg0MTMiIGNsYXNzPSJuYXYtbGluayAiPlRyYWluaW5nICYjMDM4OyBEZXZlbG9wbWVudDwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MzYiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQzNiIgZGF0YS1pdGVtLWlkPSI4NDM2Ij4KCQkJCQkJCTxhIHRpdGxlPSJOZXdzIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9uZXdzLyIgZGF0YS1pdGVtLWlkPSI4NDM2IiBjbGFzcz0ibmF2LWxpbmsgIj5OZXdzPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQxNSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDE1IiBkYXRhLWl0ZW0taWQ9Ijg0MTUiPgoJCQkJCQkJPGEgdGl0bGU9IklFRUUgU0EgTmV3c2xldHRlciIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvbmV3cy9zd2lyZS8iIGRhdGEtaXRlbS1pZD0iODQxNSIgY2xhc3M9Im5hdi1saW5rICI+SUVFRSBTQSBOZXdzbGV0dGVyPC9hPgoJCQkJCQk8L2xpPgoJCQkJCTwvdWw+CgkJCQkJPHVsIGNsYXNzPSJzdWItbWVudS1kZXNjcmlwdGlvbiI+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MTIiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+VHJhaW5pbmcgYW5kIGNvbW11bmljYXRpb24gcmVzb3VyY2VzIHRvIHN0YXkgY29ubmVjdGVkLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MTMiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+SW5kaXZpZHVhbCBhbmQgb3JnYW5pemF0aW9uYWwgZWZmZWN0aXZlbmVzcyBwcm9ncmFtIHRvIGVuYWJsZSB0aGUgc3VjY2VzcyBvZiBvdXIgdml0YWwgdm9sdW50ZWVycy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDM2IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPlJlYWQgdGhlIGxhdGVzdCBuZXdzIG9uIElFRUUgU0EuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQxNSIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5TdWJzY3JpYmUgdG8gb3VyIG5ld3NsZXR0ZXIgYW5kIGtlZXAgdXAgdG8gZGF0ZSBvbiB0aGUgbGF0ZXN0IHN0YW5kYXJkcywgZXZlbnQsIGFuZCBhY3Rpdml0aWVzLjwvbGk+CgkJCQkJPC91bD4KCQkJCTwvZGl2PiA8IS0tIC8ucm93IC0tPgoJCQk8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KCQk8L2Rpdj4gPCEtLSAvLmRyb3Bkb3duLW1lbnUgbWVnYS1tZW51IC0tPgoJPC9saT4KCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDE2IiBjbGFzcz0ibmF2LXR5cGUtYnV0dG9uIG1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDE2IiBkYXRhLWl0ZW0taWQ9Ijg0MTYiPgoJCTxhIHRpdGxlPSJNQUMgQWRkcmVzcyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtc2VydmljZXMvcmVnYXV0aC8iIGRhdGEtaXRlbS1pZD0iODQxNiIgY2xhc3M9Im5hdi1saW5rICI+TUFDIEFkZHJlc3M8L2E+Cgk8L2xpPgo8L3VsPiAgICAgICAgICAgIDwhLS0gZW5kIHdvcmRwcmVzcyBtZW51IC0tPgogICAgICAgIDwvZGl2PiA8IS0tIC8jbW9iaWxlLW1lbnUgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0iYnRuLWdyb3VwIHNlYXJjaCI+CiAgICAgICAgICAgIDxkaXYgaWQ9InNlYXJjaC1pbnB1dC13cmFwcGVyIiBjbGFzcz0iY29sbGFwc2UgY29sbGFwc2UtaG9yaXpvbnRhbCI+CiAgICAgICAgICAgICAgICA8Zm9ybSBpZD0ic2VhcmNoIiBjbGFzcz0iZm9ybS1pbmxpbmUiIGFjdGlvbj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvc2VhcmNoLyIgbWV0aG9kPSJnZXQiPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz0iZm9ybS1jb250cm9sIiB0eXBlPSJ0ZXh0IiBwbGFjZWhvbGRlcj0iU2VhcmNoIElFRUUgU0EuLi4iIGF1dG9mb2N1cz0iYXV0b2ZvY3VzIiBuYW1lPSJxIiBpZD0icSI+CiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIiB0eXBlPSJzdWJtaXQiPjxpIGNsYXNzPSJmYSBmYS1zZWFyY2giPjwvaT48L2J1dHRvbj4KICAgICAgICAgICAgICAgIDwvZm9ybT4gPCEtLSAvI3NlYXJjaCAtLT4KICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyNzZWFyY2gtaW5wdXQtd3JhcHBlciAtLT4KICAgICAgICAgICAgPGJ1dHRvbiBpZD0ibWFpbi1zZWFyY2gtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1tZCIgdHlwZT0iYnV0dG9uIiBkYXRhLWJzLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtYnMtdGFyZ2V0PSIjc2VhcmNoLWlucHV0LXdyYXBwZXIiCiAgICAgICAgICAgICAgICAgICAgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9InNlYXJjaC1pbnB1dC13cmFwcGVyIj48aSBjbGFzcz0iZmEgZmEtc2VhcmNoIj48L2k+PC9idXR0b24+CiAgICAgICAgPC9kaXY+IDwhLS0gLy5idG4tZ3JvdXAgLnNlYXJjaCAtLT4KICAgIDwvZGl2PiA8IS0tIC8uY29udGFpbmVyLWZsdWlkIC0tPgo8L25hdj4gPCEtLSAvI21haW4tbmF2IC5uYXZiYXIgLS0+CiAgICA8L3NlY3Rpb24+IDwhLS0gLyNtYXN0aGVhZCAtLT4KPC9oZWFkZXI+CgoKPG1haW4+CiAgICA8c2VjdGlvbiBpZD0icGFnZS10aXRsZSIgY2xhc3M9InN0YW5kYXJkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTEyIGNvbC1sZy0zIG9yZGVyLWxnLWxhc3QgYWxpZ24tc2VsZi1sZy1lbmQgdGV4dC1sZy1lbmQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InN0bmQtc3RhdHVzIj5BY3RpdmUgU3RhbmRhcmQ8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8uY29sLTEyIGNvbC1sZy0zIC0tPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTEyIGNvbC1sZy0xMSI+CiAgICAgICAgICAgICAgICAgICAgPGgxIGlkPSJzdG5kLWRlc2lnbmF0aW9uIgogICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDUiPklFRUUgNTI4LTIwMTk8L2gxPgogICAgICAgICAgICAgICAgICAgIDxoMiBpZD0ic3RuZC10aXRsZSI+SUVFRSBTdGFuZGFyZCBmb3IgSW5lcnRpYWwgU2Vuc29yIFRlcm1pbm9sb2d5PC9oMj4KICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8uY29sLTEyIC5jb2wtbGctMTEgLS0+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtMTIgY29sLWxnLTgiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InB1cmNoYXNlLW9wdGlvbnMiIGNsYXNzPSJkLWdyaWQgZ2FwLTQgZC1tZC1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0ic3RuZC1idXktdXJsIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL3d3dy50ZWNoc3RyZWV0LmNvbS9pZWVlL3Byb2R1Y3RzL3ZlbmRvcl9pZC83MjkyIiB0YXJnZXQ9Il9ibGFuayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9ImJ1dHRvbiI+UHVyY2hhc2U8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0ic3RuZC1zdWJzY3JpcHRpb24tdXJsIiBjbGFzcz0iYnRuIGJ0bi1vdXRsaW5lLXByaW1hcnkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaWVlZXhwbG9yZS5pZWVlLm9yZy9zZXJ2bGV0L29wYWM/cHVudW1iZXI9ODg2Mzc5NyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldD0iX2JsYW5rIiByb2xlPSJidXR0b24iPkFjY2VzcyB2aWEgU3Vic2NyaXB0aW9uPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3B1cmNoYXNlLW9wdGlvbnMgLS0+CiAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbC0xMiAuY29sLWxnLTggLS0+CiAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ucm93IC0tPgogICAgICAgIDwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgogICAgPC9zZWN0aW9uPiA8IS0tIC8jcGFnZS10aXRsZSAtLT4KCiAgICAKICAgIDxzZWN0aW9uIGlkPSJicmVhZGNydW1icyI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMiI+CiAgICAgICAgICAgICAgICAgICAgPG5hdiBpZD0iYnJlYWRjcnVtYi1uYXYiIGFyaWEtbGFiZWw9ImJyZWFkY3J1bWIiPgogICAgICAgICAgICAgICAgICAgICAgICA8b2wgY2xhc3M9ImJyZWFkY3J1bWIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJicmVhZGNydW1iLWl0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnIiB0aXRsZT0iSG9tZSI+SG9tZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImJyZWFkY3J1bWItaXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvc2VhcmNoLz9xPVN0YW5kYXJkIiB0aXRsZT0iU3RhbmRhcmRzIj5TdGFuZGFyZHM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJicmVhZGNydW1iLWl0ZW0gYWN0aXZlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWN1cnJlbnQ9InBhZ2UiPklFRUUgNTI4LTIwMTkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgPC9vbD4gPCEtLSAvLmJyZWFkY3J1bWIgLS0+CiAgICAgICAgICAgICAgICAgICAgPC9uYXY+IDwhLS0gLyNicmVhZGNydW1iLW5hdiAtLT4KICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8uY29sLTEyIC0tPgogICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLnJvdyAtLT4KICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KICAgIDwvc2VjdGlvbj4gPCEtLSAvI2JyZWFkY3J1bWJzIC0tPgogICAgCiAgICA8c2VjdGlvbiBpZD0iY29udGVudCIgY2xhc3M9InN0YW5kYXJkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgPGRpdiBpZD0ibWFpbi1jb250ZW50IiBjbGFzcz0iY29sLTEyIGNvbC1sZy0xMCBvZmZzZXQtbGctMSBjb2wteGwtOCBvZmZzZXQteGwtMiI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ic3RuZC1kZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRlcm1zIGFuZCBkZWZpbml0aW9ucyByZWxhdGluZyB0byBpbmVydGlhbCBzZW5zb3JzIGFyZSBwcmVzZW50ZWQgaW4gdGhpcyBzdGFuZGFyZC4gVXNhZ2UgYXMgdW5kZXJzdG9vZCBieSB0aGUgaW5lcnRpYWwgc2Vuc29yIGNvbW11bml0eSBpcyBnaXZlbiBwcmVmZXJlbmNlIG92ZXIgZ2VuZXJhbCB0ZWNobmljYWwgdXNhZ2Ugb2YgdGhlIHRlcm1zIGhlcmVpbi4gVGhlIGNyaXRlcmlvbiBmb3IgaW5jbHVzaW9uIG9mIGEgdGVybSBhbmQgaXRzIGRlZmluaXRpb24gaW4gdGhpcyBzdGFuZGFyZCBpcyB1c2VmdWxuZXNzIGFzIHJlbGF0ZWQgdG8gaW5lcnRpYWwgc2Vuc29yIHRlY2hub2xvZ3kuPC9wPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jc3RuZC1kZXNjcmlwdGlvbiAtLT4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJzdGFuZGFyZC1kZXRhaWxzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsIGNsYXNzPSJyb3ciPgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+U3BvbnNvciBDb21taXR0ZWU8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC1jb21taXR0ZWUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPkFFUy9HQSAtIEd5cm8gQWNjZWxlcm9tZXRlciBQYW5lbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnI+PGEgaWQ9InN0bmQtY29tbWl0dGVlLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2llZWUtYWVzcy5vcmcvdGVjaC1vcHMvZ3lyby1hbmQtYWNjZWxlcm9tZXRlciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSIgdGFyZ2V0PSJfYmxhbmsiPkxlYXJuIE1vcmU8L2E+PC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdCBjbGFzcz0iY29sLXNtLTQgY29sLW1kLTMiPlN0YXR1czwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgaWQ9InN0bmQtc3RhdHVzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJjb2wtc20tOCBjb2wtbWQtOSI+QWN0aXZlIFN0YW5kYXJkPC9kZD4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdCBjbGFzcz0iY29sLXNtLTQgY29sLW1kLTMiPlBBUiBBcHByb3ZhbDwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGlkPSJzdG5kLXBhci1hcHByb3ZhbC1kYXRlIiBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPjxhIGlkPSJzdG5kLXBhci1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PSJfYmxhbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vZGV2ZWxvcG1lbnQuc3RhbmRhcmRzLmllZWUub3JnL215cHJvamVjdC13ZWIvcHVibGljL3ZpZXcuaHRtbCNwYXJkZXRhaWwvNjQ2MyI+MjAxOC0wNS0xNDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+U3VwZXJzZWRpbmc8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC1zdXBlcnNlZGluZyIgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij48YSBpZD0ic3RuZC1zdXBlcnNlZGluZy11cmwiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzUyOC83ODAiPjUyOC0yMDAxPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+Qm9hcmQgQXBwcm92YWw8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC1hcHByb3ZhbC1kYXRlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPjIwMTktMDYtMTM8L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdCBjbGFzcz0iY29sLXNtLTQgY29sLW1kLTMiPkhpc3Rvcnk8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGwgY2xhc3M9InJvdyI+CgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtNyBjb2wtbWQtNCI+UHVibGlzaGVkOjwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGlkPSJzdG5kLXB1Ymxpc2hlZC1kYXRlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iY29sLTUgY29sLW1kLTgiPjIwMTktMTAtMDg8L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICA8L2RsPiA8IS0tIC8ucm93IC0tPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jc3RhbmRhcmQtZGV0YWlscyAtLT4KCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0id29ya2luZy1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iaDIgc2VjdGlvbi10aXRsZSI+V29ya2luZyBHcm91cCBEZXRhaWxzPC9oMz4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0id29ya2luZy1ncm91cC1kZXRhaWxzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbCBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC1zbS00IGNvbC1tZC0zIj5Tb2NpZXR5PC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGlkPSJzdG5kLXNvY2lldHkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPklFRUUgQWVyb3NwYWNlIGFuZCBFbGVjdHJvbmljIFN5c3RlbXMgU29jaWV0eSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxicj48YSBpZD0ic3RuZC1zb2NpZXR5LXVybCIgY2xhc3M9ImFycm93LWxpbmsiIGhyZWY9Imh0dHA6Ly93d3cuaWVlZS1hZXNzLm9yZy8iIHRpdGxlPSJMZWFybiBNb3JlIiB0YXJnZXQ9Il9ibGFuayI+TGVhcm4gTW9yZTwvYT48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdCBjbGFzcz0iY29sLXNtLTQgY29sLW1kLTMiPlNwb25zb3IgQ29tbWl0dGVlPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC13b3JraW5nLWdyb3VwLWNvbW1pdHRlZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPkFFUy9HQSAtIEd5cm8gQWNjZWxlcm9tZXRlciBQYW5lbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyPjxhIGlkPSJzdG5kLXdvcmtpbmctZ3JvdXAtY29tbWl0dGVlLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldD0iX2JsYW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vaWVlZS1hZXNzLm9yZy90ZWNoLW9wcy9neXJvLWFuZC1hY2NlbGVyb21ldGVyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdCBjbGFzcz0iY29sLXNtLTQgY29sLW1kLTMiPldvcmtpbmcgR3JvdXA8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgaWQ9InN0bmQtd29ya2luZy1ncm91cCIgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU0VOU1JfV0cgLSBTZW5zb3JzIFdvcmtpbmcgR3JvdXAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxicj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+SUVFRSBQcm9ncmFtIE1hbmFnZXI8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgaWQ9InN0bmQtc3RhZmYtbGlhaXNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJjb2wtc20tOCBjb2wtbWQtOSI+RGFuIFBlcmV6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxicj48YSBpZD0ic3RuZC1zdGFmZi1saWFpc29uLWVtYWlsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJtYWlsVE86ZGFuaWVsLnBlcmV6QGllZWUub3JnIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJDb250YWN0Ij5Db250YWN0PC9hPjwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+V29ya2luZyBHcm91cCBDaGFpcjwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC13b3JraW5nLWdyb3VwLWNoYWlyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij5IYXJyeSBEYXZpczwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPiA8IS0tIC8ucm93IC0tPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3dvcmtpbmctZ3JvdXAtZGV0YWlscyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0id29ya2luZy1ncm91cC1wcm9qZWN0cy1zdGFuZGFyZHMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2LXRhYnMgbmF2LWp1c3RpZmllZCBmbGV4LWNvbHVtbiBmbGV4LXNtLXJvdyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSIgcm9sZT0icHJlc2VudGF0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ibmF2LWxpbmsgYWN0aXZlIiBpZD0id2ctYWN0aXZlLXByb2plY3RzLXRhYiIgZGF0YS1icy10b2dnbGU9InRhYiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWJzLXRhcmdldD0iI3dnLWFjdGl2ZS1wcm9qZWN0cyIgdHlwZT0iYnV0dG9uIiByb2xlPSJ0YWIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1jb250cm9scz0id2ctYWN0aXZlLXByb2plY3RzIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+QWN0aXZlIFByb2plY3RzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+IDwhLS0gLy5uYXYtaXRlbSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIiByb2xlPSJwcmVzZW50YXRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXYtbGluayIgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZHMtdGFiIiBkYXRhLWJzLXRvZ2dsZT0idGFiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYnMtdGFyZ2V0PSIjd2ctYWN0aXZlLXN0YW5kYXJkcyIgdHlwZT0iYnV0dG9uIiByb2xlPSJ0YWIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1jb250cm9scz0id2ctYWN0aXZlLXN0YW5kYXJkcyIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPkFjdGl2ZSBTdGFuZGFyZHMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4gPCEtLSAvLm5hdi1pdGVtIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iIHJvbGU9InByZXNlbnRhdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9Im5hdi1saW5rIiBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZHMtdGFiIiBkYXRhLWJzLXRvZ2dsZT0idGFiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYnMtdGFyZ2V0PSIjd2ctc3VwZXJzZWRlZC1zdGFuZGFyZHMiIHR5cGU9ImJ1dHRvbiIgcm9sZT0idGFiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtY29udHJvbHM9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmRzIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+U3VwZXJzZWRlZAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RhbmRhcmRzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+IDwhLS0gLy5uYXYtaXRlbSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIiByb2xlPSJwcmVzZW50YXRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXYtbGluayIgaWQ9IndnLWluYWN0aXZlLXdpdGhkcmF3bi1zdGFuZGFyZHMtdGFiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYnMtdG9nZ2xlPSJ0YWIiIGRhdGEtYnMtdGFyZ2V0PSIjd2ctaW5hY3RpdmUtd2l0aGRyYXduLXN0YW5kYXJkcyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPSJidXR0b24iIHJvbGU9InRhYiIgYXJpYS1jb250cm9scz0id2ctaW5hY3RpdmUtd2l0aGRyYXduLXN0YW5kYXJkcyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+SW5hY3RpdmUtV2l0aGRyYXduIFN0YW5kYXJkcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPiA8IS0tIC8ubmF2LWl0ZW0gLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSIgcm9sZT0icHJlc2VudGF0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ibmF2LWxpbmsiIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZHMtdGFiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYnMtdG9nZ2xlPSJ0YWIiIGRhdGEtYnMtdGFyZ2V0PSIjd2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmRzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9ImJ1dHRvbiIgcm9sZT0idGFiIiBhcmlhLWNvbnRyb2xzPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZHMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPkluYWN0aXZlLVJlc2VydmVkIFN0YW5kYXJkcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPiA8IS0tIC8ubmF2LWl0ZW0gLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPiA8IS0tIC8ubmF2IC5uYXYtdGFicyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IndnLXRhYi1jb250ZW50IiBjbGFzcz0idGFiLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IndnLWFjdGl2ZS1wcm9qZWN0cyIgY2xhc3M9InRhYi1wYW5lIGZhZGUgc2hvdyBhY3RpdmUiIHJvbGU9InRhYnBhbmVsIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PSJ3Zy1hY3RpdmUtcHJvamVjdHMtdGFiIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFiLXBhbmUtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1wcm9qZWN0IHdnLWFjdGl2ZS1wcm9qZWN0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1hY3RpdmUtcHJvamVjdC1kZXNpZ25hdGlvbiI+UDE0MzE8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWFjdGl2ZS1wcm9qZWN0LXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5TdGFuZGFyZCBmb3IgU3BlY2lmeWluZyBhbmQgVGVzdGluZyBDb3Jpb2xpcyBWaWJyYXRvcnkgR3lyb3M8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctYWN0aXZlLXByb2plY3QtZGVzY3JpcHRpb24iPlRoaXMgc3RhbmRhcmQgZGVmaW5lcyByZXF1aXJlbWVudHMgYW5kIHRlc3QgcHJvY2VkdXJlcyBmb3IgYSBzaW5nbGUtYXhpcyBDb3Jpb2xpcyB2aWJyYXRvcnkgZ3lybyAoQ1ZHKSBmb3IgdXNlIGFzIGEgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgYW5ndWxhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBhbmd1bGFyIHJhdGUgbWVhc3VyaW5nIHN5c3RlbXMuICBJbmZvcm1hdGl2ZSBhbm5leGVzIGNvdmVyIENWRyBkZXNpZ24gZmVhdHVyZXMgYW5kIHRoZW9yZXRpY2FsIHByaW5jaXBsZXMgb2Ygb3BlcmF0aW9uLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWFjdGl2ZS1wcm9qZWN0LXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvMTQzMS8xMDMyMiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1wcm9qZWN0IC53Zy1hY3RpdmUtcHJvamVjdCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8udGFiLXBhbmUtY29udGVudCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3dnLWFjdGl2ZS1wcm9qZWN0cyAudGFiLXBhbmUgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0id2ctYWN0aXZlLXN0YW5kYXJkcyIgY2xhc3M9InRhYi1wYW5lIGZhZGUiIHJvbGU9InRhYnBhbmVsIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PSJ3Zy1hY3RpdmUtc3RhbmRhcmRzLXRhYiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhYi1wYW5lLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtZGVzaWduYXRpb24iPjEyOTMtMjAxODwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctYWN0aXZlLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgTGluZWFyIFNpbmdsZS1BeGlzLCBOb25neXJvc2NvcGljIEFjY2VsZXJvbWV0ZXJzPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+VGhlIHNwZWNpZmljYXRpb24gYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBhIGxpbmVhciwgc2luZ2xlLWF4aXMsIG5vbmd5cm9zY29waWMgYWNjZWxlcm9tZXRlciBmb3IgdXNlIGluIGluZXJ0aWFsIG5hdmlnYXRpb24sIGd1aWRhbmNlLCBhbmQgbGV2ZWxpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gQSBzdGFuZGFyZCBzcGVjaWZpY2F0aW9uIGd1aWRlIGFuZCBhIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHRlc3QgcHJvY2VkdXJlcyBmb3Igc3VjaCBhY2NlbGVyb21ldGVycyBhcmUgcHJvdmlkZWQuIEluZm9ybWF0aXZlIGFubmV4ZXMgYXJlIGdpdmVuIG9uIHRoZSB2YXJpb3VzIHR5cGVzIG9mIHN1Y2ggYWNjZWxlcm9tZXRlcnMgKGZvcmNlIG9yIHBlbmR1bG91cyB0b3JxdWUgcmViYWxhbmNlIHdpdGggYW5hbG9nIG9yIGRpZ2l0YWwgb3V0cHV0LCB2aWJyYXRpbmcgYmVhbSwgYW5kIG1pY3JvbWVjaGFuaWNhbCkgYW5kIGVycm9yIGVmZmVjdHMsIG9uIGZpbHRlcmluZywgbm9pc2UsIGFuZCB0cmFuc2llbnQgYW5hbHlzaXMgdGVjaG5pcXVlcywgYW5kIG9uIGNhbGlicmF0aW9uIGFuZCBtb2RlbGluZyB0ZWNobmlxdWVzIChtdWx0aXBvaW50IHR1bWJsZSBhbmFseXNpcywgdmlicmF0aW9uIGFuZCAgc2hvY2sgdGVzdCBhbmFseXNlcywgYW5kIGdlb3BoeXNpY2FsIGVmZmVjdHMgaW4gaW5lcnRpYWwgaW5zdHJ1bWVudCB0ZXN0aW5nKS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS8xMjkzLzU1OTAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWFjdGl2ZS1zdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtZGVzaWduYXRpb24iPjE1NTQtMjAwNTwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctYWN0aXZlLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFJlY29tbWVuZGVkIFByYWN0aWNlIGZvciBJbmVydGlhbCBTZW5zb3IgVGVzdCBFcXVpcG1lbnQsIEluc3RydW1lbnRhdGlvbiwgRGF0YSBBY3F1aXNpdGlvbiwgYW5kIEFuYWx5c2lzPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+VGVzdCBlcXVpcG1lbnQsIGRhdGEgYWNxdWlzaXRpb24gZXF1aXBtZW50LCBpbnN0cnVtZW50YXRpb24sIHRlc3QgZmFjaWxpdGllcywgYW5kIGRhdGEgYW5hbHlzaXMgdGVjaG5pcXVlcyB1c2VkIGluIGluZXJ0aWFsIHNlbnNvciB0ZXN0aW5nIGFyZSBkZXNjcmliZWQgaW4gdGhpcyByZWNvbW1lbmRlZCBwcmFjdGljZS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS8xNTU0LzIyOTIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWFjdGl2ZS1zdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtZGVzaWduYXRpb24iPjY0Ny0yMDA2PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtQXhpcyBMYXNlciBHeXJvczwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtZGVzY3JpcHRpb24iPlNwZWNpZmljYXRpb24gYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBhIHNpbmdsZS1heGlzIHJpbmcgbGFzZXIgZ3lybyAoUkxHKSBmb3IgdXNlIGFzIGEgIHNlbnNvciBpbiBhdHRpdHVkZSBjb250cm9sIHN5c3RlbXMsIGFuZ3VsYXIgZGlzcGxhY2VtZW50IG1lYXN1cmluZyBzeXN0ZW1zLCBhbmQgYW5ndWxhciByYXRlICBtZWFzdXJpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gQSBzdGFuZGFyZCBzcGVjaWZpY2F0aW9uIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgIHNpbmdsZS1heGlzIFJMRyBpcyBwcm92aWRlZC4gQSBjb21waWxhdGlvbiBvZiByZWNvbW1lbmRlZCBwcm9jZWR1cmVzIGZvciB0ZXN0aW5nIGFuIFJMRywgIGRlcml2ZWQgZnJvbSB0aG9zZSBwcmVzZW50bHkgdXNlZCBpbiB0aGUgaW5kdXN0cnksIGlzIGFsc28gcHJvdmlkZWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctYWN0aXZlLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvNjQ3LzMxMzQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWFjdGl2ZS1zdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtZGVzaWduYXRpb24iPjgxMy0xOTg4PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBUd28tRGVncmVlLW9mLUZyZWVkb20gRHluYW1pY2FsbHkgVHVuZWQgR3lyb3M8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctYWN0aXZlLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5BIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgdHdvLWRlZ3JlZS1vZi1mcmVlZG9tIGR5bmFtaWNhbGx5IHR1bmVkIGd5cm8gKERURykgc3BlY2lmaWNhdGlvbiBpcyBnaXZlbiB0aGF0IHByb3ZpZGVzIGEgY29tbW9uIGdyb3VuZCBvZiB0ZXJtaW5vbG9neSBhbmQgcHJhY3RpY2UgZm9yIG1hbnVmYWN0dXJlcnMgYW5kIHVzZXJzLiBBIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHByb2NlZHVyZXMgZm9yIHRlc3RpbmcgYSBEVEcgaXMgYWxzbyBnaXZlbi4gVGhlIHJlcXVpcmVtZW50cyBhbmQgdGVzdCBwcm9jZWR1cmVzIGFyZSBkZWZpbmVkIGluIHRlcm1zIHVuaXF1ZSB0byB0aGUgRFRHLiBUaGV5IGNvdmVyIGFwcGxpY2F0aW9ucyBvZiB0aGUgZ3lybyBhcyBhbiBhbmd1bGFyIG1vdGlvbiBzZW5zb3IgaW4gbmF2aWdhdGlvbiBhbmQgY29udHJvbCBzeXN0ZW1zLiBUaGV5IGFwcGx5IHRvIHR3byBtb2RlcyBvZiB1c2U6ICgxKSBhcyBhIHN0cmFwLWRvd24gc2Vuc29yIGluIG9wZXJhdGluZyBlbnZpcm9ubWVudHMgdHlwaWNhbCBvZiBhaXJjcmFmdCBhbmQgbWlzc2lsZSBhcHBsaWNhdGlvbnMsIGFuZCAoMikgYXMgYSBzZW5zb3IgaW4gZ2ltYmFsbGVkIHBsYXRmb3JtIGFwcGxpY2F0aW9ucyBpbiB3aGljaCB0aGUgZHluYW1pYyBhbmd1bGFyIGlucHV0cyB0byB3aGljaCB0aGUgZ3lybyBpcyBzdWJqZWN0ZWQgYXJlIGJlbmlnbiByZWxhdGl2ZSB0byB0aGUgYWNjdXJhY3kgcmVxdWlyZWQuIEluIHRoZSBjYXNlIG9mIHRoZSBzdHJhcC1kb3duIERURywgdGhlIGNoYXJhY3RlcmlzdGljcyBvZiB0aGUgZXh0ZXJuYWwgY2FwdHVyZSBsb29wcyBhcmUgY29uc2lkZXJlZCB0byB0aGUgZXh0ZW50IG5lY2Vzc2FyeSB0byBkZWZpbmUgdGhlIGd5cm8gcGVyZm9ybWFuY2UuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctYWN0aXZlLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvODEzLzEyMDAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWFjdGl2ZS1zdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtZGVzaWduYXRpb24iPjk1Mi0yMDIwPC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgZm9yIFNwZWNpZnlpbmcgYW5kIFRlc3RpbmcgU2luZ2xlLUF4aXMgSW50ZXJmZXJvbWV0cmljIEZpYmVyIE9wdGljIEd5cm9zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+U3BlY2lmaWNhdGlvbiBhbmQgdGVzdCBwcm9jZWR1cmVzIGZvciBhIHNpbmdsZS1heGlzIGludGVyZmVyb21ldHJpYyBmaWJlciBvcHRpYyBneXJvIChJRk9HKSBmb3IgdXNlIGFzIGEgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgYW5ndWxhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBhbmd1bGFyIHJhdGUgbWVhc3VyaW5nIHN5c3RlbXMgYXJlIGRlZmluZWQuIFRoZSB0ZXN0IHByb2NlZHVyZXMgYXJlIGRlcml2ZWQgZnJvbSB0aG9zZSBwcmVzZW50bHkgdXNlZCBpbiB0aGUgaW5kdXN0cnkuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctYWN0aXZlLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvOTUyLzc0OTYiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWFjdGl2ZS1zdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8udGFiLXBhbmUtY29udGVudCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3dnLWFjdGl2ZS1zdGFuZGFyZHMgLnRhYi1wYW5lIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmRzIiBjbGFzcz0idGFiLXBhbmUgZmFkZSIgcm9sZT0idGFicGFuZWwiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmRzLXRhYiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhYi1wYW5lLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctc3VwZXJzZWRlZC1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+MTI5My0xOTk4L0NvciAxLTIwMDg8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBMaW5lYXIsU2luZ2xlLUF4aXMsIE5vbmd5cm9zY29waWMgQWNjZWxlcm9tZXRlcnMgQ29ycmlnZW5kdW0gMTogQ2hhbmdlcyB0byBBbm5leCBLIGFuZCBBbm5leCBMPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPkNvcnJpZ2VuZHVtIHRvIElFRUUgU3RkIDEyOTMtMTk5OC4gU3BlY2lmaWNhdGlvbiBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGxpbmVhciwgc2luZ2xlLWF4aXMsIG5vbmd5cm9zY29waWMgYWNjZWxlcm9tZXRlcnMgZm9yIHVzZSBhcyBhIHNlbnNvciBpbiBhdHRpdHVkZSBjb250cm9sIHN5c3RlbXMsIGxpbmVhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBsaW5lYXIgcmF0ZSBtZWFzdXJpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gVGhlIHNwZWNpZmljYXRpb24gZm9ybWF0IGd1aWRlIGFuZCB0ZXN0IHByb2NlZHVyZSBzdGFuZGFyZCBhcHBsaWVzIHRvIGZvcmNlLXJlYmFsYW5jZSBhY2NlbGVyb21ldGVycyAocGVuZHVsb3VzIG9yIHRyYW5zbGF0aW9uYWwgcHJvb2YgIG1hc3MpLCB2aWJyYXRpbmcgYmVhbSBhY2NlbGVyb21ldGVycyAoVkJBcyksIGFuZCBtaWNyb21lY2hhbmljYWwgYWNjZWxlcm9tZXRlcnMgdGhhdCByYW5nZSAgZnJvbSBsZXNzZXIgYWNjdXJhY3kgdG8gaGlnaCBhY2N1cmFjeSBkZXZpY2VzLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS8xMjkzLTE5OThfQ29yXzEvNDE0MiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctc3VwZXJzZWRlZC1zdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctc3VwZXJzZWRlZC1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+NTI4LTIwMDE8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgZm9yIEluZXJ0aWFsIFNlbnNvciBUZXJtaW5vbG9neTwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5UZXJtcyBhbmQgZGVmaW5pdGlvbnMgcmVsYXRpbmcgdG8gaW5lcnRpYWwgc2Vub3JzIGFyZSBwcmVzZW50ZWQgaW4gdGhpcyBzdGFuZGFyZC4gVXNhZ2UgYXMgdW5kZXJzdG9vZCBieSB0aGUgaW5lcnRpYWwgc2Vuc29yIGNvbW11bml0eSBpcyBnaXZlbiBwcmVmZXJlbmNlIG92ZXIgZ2VuZXJhbCB0ZWNobmljYWwgdXNhZ2Ugb2YgdGhlIHRlcm1zIGhlcmVpbi4gVGhlIGNyaXRlcmlvbiBmb3IgaW5jbHVzaW9uIG9mIGEgdGVybSBhbmQgaXRzIGRlZmluaXRpb24gaW4gdGhpcyBzdGFuZGFyZCBpcyB1c2VmdWxuZXNzIGFzIHJlbGF0ZWQgdG8gaW5lcnRpYWwgc2Vuc29yIHRlY2hub2xvZ3kuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzUyOC83ODAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLXN1cGVyc2VkZWQtc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLXN1cGVyc2VkZWQtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjk1Mi0xOTk3PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgU2luZ2xlLUF4aXMgSW50ZXJmZXJvbWV0cmljIEZpYmVyIE9wdGljIEd5cm9zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPlNwZWNpZmljYXRpb24gYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBhIHNpbmdsZS1heGlzIGludGVyZmVyb21ldHJpYyBmaWJlciBvcHRpYyBneXJvIChJRk9HKSBmb3IgdXNlIGFzIGEgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgYW5ndWxhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBhbmd1bGFyIHJhdGUgbWVhc3VyaW5nIHN5c3RlbXMgYXJlIGRlZmluZWQuIEEgc3RhbmRhcmQgc3BlY2lmaWNhdGlvbiBmb3JtYXQgZ3VpZGUgZm9yIHRoZSBwcmVwYXJhdGlvbiBvZiBhIHNpbmdsZS1heGlzIElGT0cgaXMgcHJvdmlkZWQuIEEgY29tcGlsYXRpb24gb2YgcmVjb21tZW5kZWQgcHJvY2VkdXJlcyBmb3IgdGVzdGluZyBhIGZpYmVyIG9wdGljIGd5cm8sIGRlcml2ZWQgZnJvbSB0aG9zZSBwcmVzZW50bHkgdXNlZCBpbiB0aGUgaW5kdXN0cnksIGlzIGFsc28gcHJvdmlkZWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzk1Mi8xMzIwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1zdXBlcnNlZGVkLXN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj45NTItMTk5Ny9Db3IgMS0yMDE2PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgU2luZ2xlLUF4aXMgSW50ZXJmZXJvbWV0cmljIEZpYmVyIE9wdGljIEd5cm9zIC0tIENvcnJpZ2VuZHVtIDE6IEZpZ3VyZSAxIGFuZCBTdWJjbGF1c2VzIDUuMy40LCA4LjMsIDEyLjExLjQuMy4yLCAxMi4xMS40LjMuMywgMTIuMTEuNC4zLjQsIDEyLjEyLjMuMSwgYW5kIDEyLjEyLjQuMTwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5FcnJvcnMgaWRlbnRpZmllZCBpbiBJRUVFIFN0ZCA5NTItMTk5NyBhcmUgY29ycmVjdGVkIGluIHRoaXMgY29ycmlnZW5kdW0uIENvcnJlY3Rpb25zIGFyZSBtYWRlIHRvIEZpZ3VyZSAxIGFuZCBpbiBzdWJjbGF1c2VzIDUuMy40LCA4LjMsIDEyLjExLjQuMy4yLCAxMi4xMS40LjMuMywgMTIuMTEuNC4zLjQsIDEyLjEyLjMuMSwgYW5kIDEyLjEyLjQuMS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvOTUyLTE5OTdfQ29yXzEvNjc4MyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctc3VwZXJzZWRlZC1zdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLnRhYi1wYW5lLWNvbnRlbnQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyN3Zy1zdXBlcnNlZGVkLXN0YW5kYXJkcyAudGFiLXBhbmUgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0id2ctaW5hY3RpdmUtd2l0aGRyYXduLXN0YW5kYXJkcyIgY2xhc3M9InRhYi1wYW5lIGZhZGUiIHJvbGU9InRhYnBhbmVsIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PSJ3Zy1pbmFjdGl2ZS13aXRoZHJhd24tc3RhbmRhcmRzLXRhYiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhYi1wYW5lLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm8gSW5hY3RpdmUtV2l0aGRyYXduIFN0YW5kYXJkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy50YWItcGFuZS1jb250ZW50IC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jd2ctaW5hY3RpdmUtc3RhbmRhcmRzIC50YWItcGFuZSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZHMiIGNsYXNzPSJ0YWItcGFuZSBmYWRlIiByb2xlPSJ0YWJwYW5lbCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmRzLXRhYiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhYi1wYW5lLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctaW5hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj4xNDMxLTIwMDQ8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgQ29yaW9saXMgVmlicmF0b3J5IEd5cm9zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5TcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHJlcXVpcmVtZW50cyBmb3IgYSBzaW5nbGUtYXhpcyBDb3Jpb2xpcyB2aWJyYXRvcnkgZ3lybyAoQ1ZHKSBmb3IgdXNlIGFzIGEgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgYW5ndWxhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBhbmd1bGFyIHJhdGUgbWVhc3VyaW5nIHN5c3RlbXMgYXJlIGRlZmluZWQuICBBIHN0YWRhcmQgc3BlY2lmaWNhdGlvbiBmb3JtYXQgZ3VpZGUgZm9yIHRoZSBwcmVwYXJhdGlvbiBvZiBhIHNpbmdsZS1heGlzIENWRyBpcyBwcm92aWRlZC4gIEEgY29tcGxpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHByb2NlZHVyZXMgZm9yIHRlc3RpbmcgYSBDVkcsIGRlcml2ZWQgZnJvbSB0aG9zZSBwcmVzZW50bHkgdXNlZCBpbiB0aGUgaW5kdXN0cnksIGlzIGFsc28gcHJvdmlkZWQuICBJbmZvcm1hdGl2ZSBhbm5leGVzIGNvdmVyIENWRyBkZXNpZ24gZmVhdHVyZXMgYW5kIHRoZW9yZXRpY2FsIHByaW5jaXBsZXMgb2Ygb3BlcmF0aW9uLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvMTQzMS8zNTE5IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1pbmFjdGl2ZS1yZXNlcnZlZCBzdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctaW5hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj4xNDMxLTIwMDQvQ29yIDEtMjAwODwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBDb3Jpb2xpcyBWaWJyYXRvcnkgR3lyb3MgLSBDb3JyaWdlbmR1bSAxPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5Db3JyaWdlbmR1bSB0byBJRUVFIFN0ZCAxNDMxLTIwMDQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS8xNDMxLTIwMDRfQ29yXzEvNDE0MyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctaW5hY3RpdmUtcmVzZXJ2ZWQgc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLWluYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+MjkyLTE5Njk8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFNwZWNpZmljYXRpb24gRm9ybWF0IGZvciBTaW5nbGUtRGVncmVlLW9mLUZyZWVkb20gU3ByaW5nLVJlc3RyYWluZWQgUmF0ZSBHeXJvczwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+VGhpcyBzcGVjaWZpY2F0aW9uIGRlZmluZXMgdGhlIHJlcXVpcmVtZW50cyBmb3IgYSBzaW5nbGUtZGVncmVlLW9mLWZyZWVkb20gc3ByaW5nLXJlc3RyYWluZWQgcmF0ZSBneXJvIGZvciBbYWlyY3JhZnQsIG1pc3NpbGUsIHNwYWNlY3JhZnQsX19fX19fXSBhcHBsaWNhdGlvbnMuIFRoZSByYXRlIGd5cm8gc2hhbGwgYmUgY2FwYWJsZSBvZiBwcm92aWRpbmcgWyhkYywgYWMpIHZvbHRhZ2Ugb3V0cHV0cyBwcm9wb3J0aW9uYWwgdG8gYW5ndWxhciByYXRlIGlucHV0cyB1cCB0b19fX19fXyBkZWdyZWVzIHBlciBzZWNvbmQsIGEgc3dpdGNoIGNsb3N1cmUocykgYXQgYW5ndWxhciByYXRlcyAoZXhjZWVkaW5nLGxlc3MgdGhhbilfX19fX18gKCssLSx1MDBiMSlfX19fX18gZGVncmVlcyBwZXIgc2Vjb25kXS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzI5Mi80ODUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWluYWN0aXZlLXJlc2VydmVkIHN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1pbmFjdGl2ZS1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjI5My0xOTY5PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBUZXN0IFByb2NlZHVyZSBmb3IgU2luZ2xlLURlZ3JlZS1vZi1GcmVlZG9tIFNwcmluZy1SZXN0cmFpbmVkIFJhdGUgR3lyb3M8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPlJlY29tbWVuZGVkIHJhdGUgZ3lybyB0ZXN0IHByb2NlZHVyZXMgZGVyaXZlZCBmcm9tIHRob3NlIGN1cnJlbnRseSBpbiB1c2UsIGluY2x1ZGluZyB0ZXN0IGNvbmRpdGlvbnMgdG8gYmUgY29uc2lkZXJlZCwgYXJlIGNvbXBpbGVkLiBJbiBzb21lIGNhc2VzIGFsdGVybmF0ZSBtZXRob2RzIGZvciBtZWFzdXJpbmcgYSBwZXJmb3JtYW5jZSBjaGFyYWN0ZXJpc3RpYyBoYXZlIGJlZW4gaW5jbHVkZWQuIFRoaXMgc3RhbmRhcmQgaXMgaW50ZW5kZWQgdG8gYmUgYSBndWlkZSBpbiB0aGUgcHJlcGFyYXRpb24gb2YgU2VjdGlvbiA0IG9mIGEgc3BlY2lmaWNhdGlvbiB0aGF0IGZvbGxvd3MgdGhlIGZvcm1hdCBvZiBJRUVFIFN0ZCAyOTIsIFNwZWNpZmljYXRpb24gRm9ybWF0IGZvciBTaW5nbGUtRGVncmVlLW9mLUZyZWVkb20gU3ByaW5nLVJlc3RyYWluZWQgUmF0ZSBHeXJvcy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzI5My80ODYiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWluYWN0aXZlLXJlc2VydmVkIHN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1pbmFjdGl2ZS1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjI5My0xOTY5L0NvciAxLTIwMTQ8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIGZvciBJRUVFIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtRGVncmVlLW9mLUZyZWVkb20gU3ByaW5nLVJlc3RyYWluZWQgUmF0ZSBHeXJvcyAtLSBDb3JyaWdlbmR1bSAxOiBUYWJsZSAxIEhlYWRpbmc8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPkNvcnJlY3Rpb24gdG8gVGFibGUgMSBvbiBwYWdlIDE0IG9mIElFRUUgU3RkIDI5My0xOTY5PC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS8yOTMtMTk2OV9Db3JfMS81NzUwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1pbmFjdGl2ZS1yZXNlcnZlZCBzdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctaW5hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj41MTctMTk3NDwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtRGVncmVlLW9mLUZyZWVkb20gUmF0ZS1JbnRlZ3JhdGluZyBHeXJvczwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+QSBzcGVjaWZpY2F0aW9uIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgcmF0ZS1pbnRlZ3JhdGluZyBneXJvIHNwZWNpZmljYXRpb24gdGhhdCBwcm92aWRlcyBhIGNvbW1vbiBtZWV0aW5nIGdyb3VuZCBvZiB0ZXJtaW5vbG9neSBhbmQgcHJhY3RpY2UgZm9yIG1hbnVmYWN0dXJlcnMgYW5kIHVzZXJzIGlzIHByZXNlbnRlZC4gQSBjb21waWxhdGlvbiBvZiByZWNvbW1lbmRlZCBwcm9jZWR1cmVzIGZvciB0ZXN0aW5nIGEgcmF0ZS1pbnRlZ3JhdGluZyBneXJvIGlzIGdpdmVuLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvNTE3Lzc2MCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctaW5hY3RpdmUtcmVzZXJ2ZWQgc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLWluYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+NTI5LTE5ODA8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5TdXBwbGVtZW50IGZvciBTdHJhcGRvd24gQXBwbGljYXRpb25zIHRvIElFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtRGVncmVlLW9mLUZyZWVkb20gUmF0ZS1JbnRlZ3JhdGluZyBHeXJvczwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+QSBzcGVjaWZpY2F0aW9uIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgcmF0ZS1pbnRlZ3JhdGluZyBneXJvc2NvcGUgc3BlY2lmaWNhdGlvbiBpcyBwcmVzZW50ZWQuIFJlY29tbWVuZGVkIHByb2NlZHVyZXMgZm9yIHRlc3RpbmcgYSByYXRlLWludGVncmF0aW5nIGd5cm9zY29wZSBhcmUgY29tcGlsZWQuIFRoaXMgc3RhbmRhcmQsIHdoZW4gY29tYmluZWQgd2l0aCBJRUVFIFN0ZCA1MTctMTk3NCAoUjE5ODApLCBkZWZpbmVzIHRoZSByZXF1aXJlbWVudHMgYW5kIHRlc3QgcHJvY2VkdXJlcyBpbiB0ZXJtcyBvZiBjaGFyYWN0ZXJpc3RpY3MgdW5pcXVlIHRvIHRoZSBneXJvc2NvcGUgb3IgdGhvc2UgYXBwbGljYXRpb25zIGluIHdoaWNoIHRoZSBkeW5hbWljIGFuZ3VsYXIgaW5wdXRzIGFyZSBzaWduaWZpY2FudGx5IGdyZWF0ZXIgdGhhbiB0aGUgbGltaXRhdGlvbnMgaWRlbnRpZmllZCBpbiBJRUVFIFN0ZCA1MTcuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS81MjkvNzgxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1pbmFjdGl2ZS1yZXNlcnZlZCBzdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctaW5hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj41MjktMTk4MC9Db3IgMS0yMDE3PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBTdGFuZGFyZCBTdXBwbGVtZW50IGZvciBTdHJhcGRvd24gQXBwbGljYXRpb25zIHRvIElFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtRGVncmVlLW9mLUZyZWVkb20gUmF0ZS1JbnRlZ3JhdGluZyBHeXJvcyAtIENvcnJpZ2VuZHVtIDE6IDMuMy45LjIuMiwgMy42LjQuMS4xLCAzLjYuNC4xLjIsIDYuMywgYW5kIDEwLjEwLjQuMTwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+Q29ycmVjdGlvbnMgYXJlIG1hZGUgYnkgdGhpcyBjb3JyaWdlbmR1bSB0byBtYXRlcmlhbCBhbHJlYWR5IHB1Ymxpc2hlZCBpbiBJRUVFIFN0ZCA1MjktMTk4MC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzUyOS0xOTgwX0Nvcl8xLzU3ODAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWluYWN0aXZlLXJlc2VydmVkIHN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1pbmFjdGl2ZS1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjY3MS0xOTg1PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIE5vbmd5cm9zY29waWMgSW5lcnRpYWwgQW5ndWxhciBTZW5zb3JzOiBKZXJrLCBBY2NlbGVyYXRpb24sIFZlbG9jaXR5LCBhbmQgRGlzcGxhY2VtZW50PC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5BIGd1aWRlIGlzIHByZXNlbnRlZCBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgc3BlY2lmaWNhdGlvbiBhbmQgdGVzdCBwcm9jZWR1cmUgZm9yIGFuIGluZXJ0aWFsIGFuZ3VsYXIgc2Vuc29yIHRoYXQgcHJvdmlkZXMgYSBjb21tb24gbWVldGluZyBncm91bmQgb2YgdGVybWlub2xvZ3kgYW5kIHByYWN0aWNlIGZvciBtYW51ZmFjdHVyZXJzIGFuZCB1c2VycyBvZiBhbiBhcnJheSBvZiBzZW5zb3JzIHRoYXQgaGF2ZSBiZWVuIGRldmVsb3BlZCB0byBtZWV0IG5lZWRzIG5vdCBlYXNpbHkgbWV0IGJ5IHRyYWRpdGlvbmFsIHNwaW5uaW5nLXJvdG9yIGd5cm9zY29wZXMuIEEgdGVzdCBwcm9jZWR1cmUgZm9yIHZlcmlmeWluZyB0aGF0IHRoZSBzcGVjaWZpY2F0aW9ucyBoYXZlIGJlZW4gbWV0IGlzIGdpdmVuLiBUaGUgc3RhbmRhcmQgaXMgbm90IGludGVuZGVkIHRvIGNvbXBldGUgd2l0aCBleGlzdGluZyBzdGFuZGFyZHMgZm9yIHNwZWNpZmljIGRldmljZXMgd2l0aCBoaWdobHkgc3BlY2lmaWMgbW9kZWxzIGFuZCBlcnJvciBzb3VyY2VzLCBzdWNoIGFzIHNwcmluZy1yZXN0cmFpbmVkIHJhdGUgZ3lyb3MsIGJ1dCB0byBwcm92aWRlIGEgdW5pZm9ybSBndWlkZSBmb3IgdGhvc2UgaW5lcnRpYWwgYW5ndWxhciBzZW5zb3JzIHRoYXQgaGF2ZSBub3QgYmVlbiBjb3ZlcmVkIGVsc2V3aGVyZS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzY3MS85MjYiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWluYWN0aXZlLXJlc2VydmVkIHN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1pbmFjdGl2ZS1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjY3MS0xOTg1L0NvciAxLTIwMTA8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgTm9uZ3lyb3Njb3BpYyBJbmVydGlhbCBBbmd1bGFyIFNlbnNvcnM6IEplcmssIEFjY2VsZXJhdGlvbiwgVmVsb2NpdHksIGFuZCBEaXNwbGFjZW1lbnQgQ29ycmlnZW5kdW0gMTogNC43LjIuNiBTaG9ydC1UZXJtIFN0YWJpbGl0eSBhbmQgQW5uZXggQSBTZW5zb3IgRHluYW1pYyBCbG9jayBEaWFncmFtczwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+SUVFRSBTdGQgNjcxLTE5ODUgcHJvdmlkZXMgc3BlY2lmaWNhdGlvbnMgYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBhIG5vbi1neXJvc2NvcGljIGluZXJ0aWFsIGFuZ3VsYXIgc2Vuc29yIHRoYXQgbWF5IG1lYXN1cmUgYW5ndWxhciBqZXJrLCBhY2NlbGVyYXRpb24sIHJhdGUsIG9yIGRpc3BsYWNlbWVudCB3aXRoIG9yIHdpdGhvdXQgcmVzcG9uc2UgZG93biB0byB6ZXJvIGZyZXF1ZW5jeS4gQSBzdGFuZGFyZCBzcGVjaWZpY2F0aW9uIGZvcm1hdCBpcyBwcm92aWRlZC4gQSBjb21waWxhdGlvbiBvZiByZWNvbW1lbmRlZCB0ZXN0IHByb2NlZHVyZXMsIGRlcml2ZWQgZnJvbSB0aG9zZSBwcmVzZW50bHkgdXNlZCBpbiB0aGUgaW5kdXN0cnksIGlzIGFsc28gcHJvdmlkZWQuIEluZm9ybWF0aXZlIGFubmV4ZXMgY292ZXIgZGVzaWduIGZlYXR1cmVzIGFuZCB0aGVvcmV0aWNhbCBwcmluY2lwbGVzIG9mIG9wZXJhdGlvbi4gIFRoaXMgY29ycmlnZW5kdW0gbWFrZXMgY2hhbmdlcyB0byA0LjcuMi42IHRvIGRlbGV0ZSBhIHNlbnRlbmNlIHRoYXQgZG9lcyBub3QgYmVsb25nIHRoZXJlLCB0byBhZGQgYSBzdWJjbGF1c2UgdGhhdCB3YXMgaW5hZHZlcnRlbnRseSBsZWZ0IG91dCwgYW5kIHRvIHJlbnVtYmVyIHRoZSBleGlzdGluZyBzdWJjbGF1c2VzLiBDaGFuZ2VzIGFyZSBhbHNvIGJlaW5nIG1hZGUgdG8gZml4IHRoZSBibG9jayBkaWFncmFtcyBpbiBBbm5leCBBLCB0byBjb3JyZWN0IGEgbWlzc3BlbGxpbmcgb2YgaW5lcnRpYSwgYW5kIHRvIGFkZCBhIG1pc3Npbmcgc3ltYm9sLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvNjcxLTE5ODVfQ29yXzEvNDY4MyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctaW5hY3RpdmUtcmVzZXJ2ZWQgc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLWluYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+ODM2LTIwMDk8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFJlY29tbWVuZGVkIFByYWN0aWNlIGZvciBQcmVjaXNpb24gQ2VudHJpZnVnZSBUZXN0aW5nIG9mIExpbmVhciBBY2NlbGVyb21ldGVyczwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+VGhpcyByZWNvbW1lbmRlZCBwcmFjdGljZSBkZXNjcmliZXMgdGhlIGNvbmR1Y3QgYW5kIGFuYWx5c2lzIG9mIHByZWNpc2lvbiB0ZXN0cyB0aGF0IGFyZSB0byBiZSBwZXJmb3JtZWQgb24gbGluZWFyIGFjY2VsZXJvbWV0ZXJzIHVzaW5nIGNlbnRyaWZ1Z2UgdGVjaG5pcXVlcy4gVGhlIHRlcm0gdTIwMWNwcmVjaXNpb24sdTIwMWQgaW4gdGhpcyBjb250ZXh0LCByZWZlcnMgdG8gdGVzdHMgdGhhdCBhcmUgY29uZHVjdGVkIHRvIGV2YWx1YXRlIGFjY2VsZXJvbWV0ZXIgcGFyYW1ldGVycywgYXMgb3Bwb3NlZCB0byB0aG9zZSBjb25kdWN0ZWQgdG8gZXN0YWJsaXNoIGVudmlyb25tZW50YWwgc3Vydml2YWJpbGl0eSBvbmx5LiBFdmFsdWF0aW9uIG1heSB0YWtlIHRoZSBmb3JtIG9mIGRldGVybWluaW5nIHRoZSBjb2VmZmljaWVudHMgb2YgdGhlIGFjY2VsZXJvbWV0ZXIncyBtb2RlbCBlcXVhdGlvbiwgZXhjZXB0IGZvciBiaWFzIGFuZCBzY2FsZSBmYWN0b3IsIHdoaWNoIGFyZSBtb3N0IGFjY3VyYXRlbHkgZGV0ZXJtaW5lZCBieSBzdGF0aWMgbXVsdGktcG9zaXRpb24gdGVzdHMuIEFsdGVybmF0aXZlbHksIGV2YWx1YXRpb24gbWF5IG9ubHkgZXN0YWJsaXNoIHRoYXQgdGhlIGFjY2VsZXJvbWV0ZXIgb3V0cHV0IGNvbXBsaWVzIHdpdGggc3BlY2lmaWMgZXJyb3IgbGltaXQgY3JpdGVyaWEuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS84MzYvMzQ0OSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctaW5hY3RpdmUtcmVzZXJ2ZWQgc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy50YWItcGFuZS1jb250ZW50IC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jd2ctaW5hY3RpdmUtc3RhbmRhcmRzIC50YWItcGFuZSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jd2ctdGFiLWNvbnRlbnQgLnRhYi1jb250ZW50IC0tPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3dvcmtpbmctZ3JvdXAtcHJvamVjdHMtc3RhbmRhcmRzIC0tPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jd29ya2luZy1ncm91cCAtLT4KICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jbWFpbi1jb250ZW50IC5jb2wtMTIgLmNvbC1sZy0xMCAtLT4KICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5yb3cgLS0+CiAgICAgICAgPC9kaXY+IDwhLS0gLy5jb250YWluZXIgLS0+CiAgICA8L3NlY3Rpb24+IDwhLS0gLyNjb250ZW50IC0tPgo8L21haW4+CgogICAgPGZvb3Rlcj4KICAgICAgICA8c2VjdGlvbiBpZD0iZm9vdGVyLXRvcCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3cgYWxpZ24taXRlbXMtY2VudGVyIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtMTIgY29sLXNtLTQiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJmb290ZXItbG9nbyIgY2xhc3M9ImxvZ28iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9ImxvZ28tbGluayIgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvIiB0aXRsZT0iVmlzaXQgSUVFRS5vcmciPjxpbWcgc3JjPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2ltZy9pZWVlLWxvZ28yeC5wbmciIGFsdD0iSUVFRSBsb2dvIj48L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8jZm9vdGVyLWxvZ28gLmxvZ28gLS0+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb2wtMTIgLmNvbC1zbS00IC0tPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMiBjb2wtc20tOCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InNvY2lhbC1tZWRpYSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBzb2NpYWwtbWVkaWEganVzdGlmeS1jb250ZW50LXNtLWVuZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIHNvY2lhbC1pY29uIHNvY2lhbC1mYWNlYm9vayIgaHJlZj0iaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tL2llZWVzYS8iIHRpdGxlPSJGYWNlYm9vayI+PGkgY2xhc3M9ImZhIGZhLWZhY2Vib29rIj48L2k+IDxzcGFuIGNsYXNzPSJzci1vbmx5Ij5GYWNlYm9vazwvc3Bhbj48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsgc29jaWFsLWljb24gc29jaWFsLXR3aXR0ZXIiIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vaWVlZXNhIiB0aXRsZT0iVHdpdHRlciI+PGkgY2xhc3M9ImZhIGZhLXR3aXR0ZXIiPjwvaT4gPHNwYW4gY2xhc3M9InNyLW9ubHkiPlR3aXR0ZXI8L3NwYW4+PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIHNvY2lhbC1pY29uIHNvY2lhbC1saW5rZWRpbiIgaHJlZj0iaHR0cHM6Ly93d3cubGlua2VkaW4uY29tL2NvbXBhbnkvaWVlZS1zYS1pZWVlLXN0YW5kYXJkcy1hc3NvY2lhdGlvbi8iIHRpdGxlPSJMaW5rZWRJbiI+PGkgY2xhc3M9ImZhIGZhLWxpbmtlZGluIj48L2k+IDxzcGFuIGNsYXNzPSJzci1vbmx5Ij5MaW5rZWRJbjwvc3Bhbj48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsgc29jaWFsLWljb24gc29jaWFsLWluc3RhZ3JhbSIgaHJlZj0iaHR0cHM6Ly93d3cuaW5zdGFncmFtLmNvbS9pZWVlc2EvIiB0aXRsZT0iSW5zdGFncmFtIj48aSBjbGFzcz0iZmEgZmEtaW5zdGFncmFtIj48L2k+IDxzcGFuIGNsYXNzPSJzci1vbmx5Ij5JbnN0YWdyYW08L3NwYW4+PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIHNvY2lhbC1pY29uIHNvY2lhbC15b3V0dWJlIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9pZWVlc2EiIHRpdGxlPSJZb3VUdWJlIj48aSBjbGFzcz0iZmEgZmEteW91dHViZSI+PC9pPiA8c3BhbiBjbGFzcz0ic3Itb25seSI+WW91VHViZTwvc3Bhbj48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+IDwhLS0gLy5uYXYgLnNvY2lhbC1tZWRpYSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyNzb2NpYWwtbWVkaWEgLS0+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb2wtMTIgLmNvbC1zbS04IC0tPgogICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5yb3cgLS0+CiAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgogICAgICAgIDwvc2VjdGlvbj4gPCEtLSAvI2Zvb3Rlci10b3AgLS0+CgogICAgICAgIDxzZWN0aW9uIGlkPSJmb290ZXItd2lkZ2V0cyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMiBjb2wtc20tNiBjb2wtbWQtMyI+PCEtLSBiZWdpbiBjb2x1bW4gLS0+CjxkaXYgY2xhc3M9IndpZGdldCI+PCEtLSBiZWdpbiB3aWRnZXQgLS0+CjxkaXYgY2xhc3M9IndpZGdldC10aXRsZSI+SUVFRSBTQTwvZGl2Pgo8ZGl2IGNsYXNzPSJtZW51LWZvb3Rlci1tZW51LWllZWUtc2EtY29udGFpbmVyIj48dWwgaWQ9Im1lbnUtZm9vdGVyLW1lbnUtaWVlZS1zYSIgY2xhc3M9Im1lbnUiPjxsaSBpZD0ibWVudS1pdGVtLTg0MzciIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODQzNyI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvIj5BYm91dCBVczwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzcwIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNzAiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L21lbWJlcnNoaXAvIj5JRUVFIFNBIE1lbWJlcnNoaXA8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM3MSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzcxIj48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9jb3JwY2hhbi8iPkNvcnBvcmF0ZSBQcm9ncmFtPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzNzIiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM3MiI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvdHJhaW5pbmcvIj5UcmFpbmluZyAmIzAzODsgRGV2ZWxvcG1lbnQ8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODQzOCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04NDM4Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9wb2xpY2llcy8iPlBvbGljaWVzICYjMDM4OyBQcm9jZWR1cmVzPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTg0MzkiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODQzOSI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvY29udGFjdC8iPkNvbnRhY3QgVXM8L2E+PC9saT4KPC91bD48L2Rpdj48L2Rpdj4KPCEtLSBlbmQgd2lkZ2V0IC0tPgo8L2Rpdj48IS0tIGVuZCBjb2x1bW4gLS0+CjxkaXYgY2xhc3M9ImNvbC0xMiBjb2wtc20tNiBjb2wtbWQtMyI+PCEtLSBiZWdpbiBjb2x1bW4gLS0+CjxkaXYgY2xhc3M9IndpZGdldCI+PCEtLSBiZWdpbiB3aWRnZXQgLS0+CjxkaXYgY2xhc3M9IndpZGdldC10aXRsZSI+Qm9hcmQgb2YgR292ZXJub3JzPC9kaXY+CjxkaXYgY2xhc3M9Im1lbnUtZm9vdGVyLW1lbnUtYm9hcmQtb2YtZ292ZXJub3JzLWNvbnRhaW5lciI+PHVsIGlkPSJtZW51LWZvb3Rlci1tZW51LWJvYXJkLW9mLWdvdmVybm9ycyIgY2xhc3M9Im1lbnUiPjxsaSBpZD0ibWVudS1pdGVtLTgzNjMiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM2MyI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvYm9nLyI+QWJvdXQgQm9hcmQgb2YgR292ZXJub3JzPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzNjQiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM2NCI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvYm9nL2FyY29tLyI+QXdhcmRzIENvbW1pdHRlZTwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzY1IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNjUiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2JvZy9jYWcvIj5Db3Jwb3JhdGUgQWR2aXNvcnkgR3JvdXA8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM2NiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzY2Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9ib2cvaWNjb20vIj5JbmR1c3RyeSBDb25uZWN0aW9ucyBDb21taXR0ZWU8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM2NyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzY3Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9ib2cvcmFjLyI+UmVnaXN0cmF0aW9uIEF1dGhvcml0eSBDb21taXR0ZWU8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM2OCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzY4Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9ib2cvc3BjYy8iPlN0cmF0ZWdpYyBQbGFubmluZyBDb29yZGluYXRpb24gQ29tbWl0dGVlPC9hPjwvbGk+CjwvdWw+PC9kaXY+PC9kaXY+CjwhLS0gZW5kIHdpZGdldCAtLT4KPC9kaXY+PCEtLSBlbmQgY29sdW1uIC0tPgo8ZGl2IGNsYXNzPSJjb2wtMTIgY29sLXNtLTYgY29sLW1kLTMiPjwhLS0gYmVnaW4gY29sdW1uIC0tPgo8ZGl2IGNsYXNzPSJ3aWRnZXQiPjwhLS0gYmVnaW4gd2lkZ2V0IC0tPgo8ZGl2IGNsYXNzPSJ3aWRnZXQtdGl0bGUiPlN0YW5kYXJkcyBCb2FyZDwvZGl2Pgo8ZGl2IGNsYXNzPSJtZW51LWZvb3Rlci1tZW51LXN0YW5kYXJkcy1ib2FyZC1jb250YWluZXIiPjx1bCBpZD0ibWVudS1mb290ZXItbWVudS1zdGFuZGFyZHMtYm9hcmQiIGNsYXNzPSJtZW51Ij48bGkgaWQ9Im1lbnUtaXRlbS04Mzc4IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNzgiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L3Nhc2IvIj5BYm91dCBTdGFuZGFyZHMgQm9hcmQ8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM3OSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04Mzc5Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9zYXNiL3NiYS8iPkJvYXJkIEFwcHJvdmFsczwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzgwIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzODAiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L3Nhc2IvYXVkY29tLyI+QXVkaXQgQ29tbWl0dGVlPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzODEiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM4MSI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvc2FzYi9uZXNjb20vIj5OZXcgU3RhbmRhcmRzIENvbW1pdHRlZTwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzgyIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzODIiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L3Nhc2IvcGF0Y29tLyI+UGF0ZW50IENvbW1pdHRlZTwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzgzIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzODMiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L3Nhc2IvcHJvY29tLyI+UHJvY2VkdXJlcyBDb21taXR0ZWU8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM4NCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04Mzg0Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9zYXNiL3JldmNvbS8iPlN0YW5kYXJkcyBSZXZpZXcgQ29tbWl0dGVlPC9hPjwvbGk+CjwvdWw+PC9kaXY+PC9kaXY+CjwhLS0gZW5kIHdpZGdldCAtLT4KPC9kaXY+PCEtLSBlbmQgY29sdW1uIC0tPgo8ZGl2IGNsYXNzPSJjb2wtMTIgY29sLXNtLTYgY29sLW1kLTMiPjwhLS0gYmVnaW4gY29sdW1uIC0tPgo8ZGl2IGNsYXNzPSJ3aWRnZXQiPjwhLS0gYmVnaW4gd2lkZ2V0IC0tPgo8ZGl2IGNsYXNzPSJ3aWRnZXQtdGl0bGUiPk5ld3MgJiMwMzg7IEV2ZW50czwvZGl2Pgo8ZGl2IGNsYXNzPSJtZW51LWZvb3Rlci1tZW51LW5ld3MtZXZlbnRzLWNvbnRhaW5lciI+PHVsIGlkPSJtZW51LWZvb3Rlci1tZW51LW5ld3MtZXZlbnRzIiBjbGFzcz0ibWVudSI+PGxpIGlkPSJtZW51LWl0ZW0tODQ0MCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04NDQwIj48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9uZXdzLyI+TmV3czwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04Mzc2IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNzYiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL25ld3Mvc3dpcmUvIj5JRUVFIFNBIE5ld3NsZXR0ZXI8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODQ0MSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04NDQxIj48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9ldmVudHMvIj5FdmVudHM8L2E+PC9saT4KPC91bD48L2Rpdj48L2Rpdj4KPCEtLSBlbmQgd2lkZ2V0IC0tPgo8L2Rpdj48IS0tIGVuZCBjb2x1bW4gLS0+CiAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLnJvdyAtLT4KICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb250YWluZXIgLS0+CiAgICAgICAgPC9zZWN0aW9uPiA8IS0tIC8jZm9vdGVyLXdpZGdldHMgLS0+CgogICAgICAgIDxzZWN0aW9uIGlkPSJmb290ZXItYmFyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTEyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgZm9vdGVyLWJhciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Ii8iIHRpdGxlPSJIb21lIj5Ib21lPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Ii9zaXRlbWFwLyIgdGl0bGU9IlNpdGVtYXAiPlNpdGVtYXA8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvYWJvdXQvY29udGFjdC5odG1sIiB0YXJnZXQ9Il9ibGFuayIgdGl0bGU9IkNvbnRhY3QgJmFtcDsgU3VwcG9ydCI+Q29udGFjdCAmYW1wOyBTdXBwb3J0PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnL2FjY2Vzc2liaWxpdHktc3RhdGVtZW50Lmh0bWwiIHRhcmdldD0iX2JsYW5rIiB0aXRsZT0iQWNjZXNzaWJpbGl0eSI+QWNjZXNzaWJpbGl0eTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy9hYm91dC9jb3Jwb3JhdGUvZ292ZXJuYW5jZS9wOS0yNi5odG1sIiB0YXJnZXQ9Il9ibGFuayIgdGl0bGU9Ik5vbmRpc2NyaW1pbmF0aW9uIFBvbGljeSI+Tm9uZGlzY3JpbWluYXRpb24gUG9saWN5PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Imh0dHBzOi8vc2VjdXJlLmV0aGljc3BvaW50LmNvbS9kb21haW4vbWVkaWEvZW4vZ3VpLzIwNDEwL2luZGV4Lmh0bWwiIHRhcmdldD0iX2JsYW5rIiB0aXRsZT0iSUVFRSBFdGhpY3MgUmVwb3J0aW5nIj5JRUVFIEV0aGljcyBSZXBvcnRpbmc8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvc2VjdXJpdHktcHJpdmFjeS5odG1sIiB0YXJnZXQ9Il9ibGFuayIgdGl0bGU9IklFRUUgUHJpdmFjeSBQb2xpY3kiPklFRUUgUHJpdmFjeSBQb2xpY3k8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iL2lwci8iIHRpdGxlPSJJRUVFIFNBIENvcHlyaWdodCBQb2xpY3kiPklFRUUgU0EgQ29weXJpZ2h0IFBvbGljeTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPiA8IS0tIC8ubmF2IC5mb290ZXIgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImNvcHlyaWdodCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD4mY29weTsgQ29weXJpZ2h0IDxzcGFuIGlkPSJjb3B5cmlnaHQteWVhciI+MjAyMTwvc3Bhbj4gSUVFRSAmbmRhc2g7IEFsbCByaWdodHMgcmVzZXJ2ZWQuIFVzZSBvZiB0aGlzIHdlYnNpdGUgc2lnbmlmaWVzIHlvdXIgYWdyZWVtZW50IHRvIHRoZSA8YSBjbGFzcz0iZm9vdGVyLWxpbmsiIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnL3NpdGUtdGVybXMtY29uZGl0aW9ucy5odG1sIiB0YXJnZXQ9Il9ibGFuayIgdGl0bGU9IklFRUUgVGVybXMgYW5kIENvbmRpdGlvbnMiPklFRUUgVGVybXMgYW5kIENvbmRpdGlvbnM8L2E+Ljxicj5BIG5vdC1mb3ItcHJvZml0IG9yZ2FuaXphdGlvbiwgSUVFRSBpcyB0aGUgd29ybGQmcnNxdW87cyBsYXJnZXN0IHRlY2huaWNhbCBwcm9mZXNzaW9uYWwgb3JnYW5pemF0aW9uIGRlZGljYXRlZCB0byBhZHZhbmNpbmcgdGVjaG5vbG9neSBmb3IgdGhlIGJlbmVmaXQgb2YgaHVtYW5pdHkuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI2NvcHlyaWdodCAtLT4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbC0xMiAtLT4KICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ucm93IC0tPgogICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KICAgICAgICA8L3NlY3Rpb24+IDwhLS0gLyNmb290ZXItYmFyIC0tPgogICAgPC9mb290ZXI+CgogICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1zdWJzY3JpYmUiIHR5cGU9ImJ1dHRvbiIgZGF0YS1icy10b2dnbGU9Im9mZmNhbnZhcyIgZGF0YS1icy10YXJnZXQ9IiNuZXdzbGV0dGVyLXN1YnNjcmliZSIgYXJpYS1jb250cm9scz0ibmV3c2xldHRlci1zdWJzY3JpYmUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLWxhYmVsPSJUb2dnbGUgbmV3c2xldHRlciBzdWJzY3JpYmUgZm9ybSI+U3Vic2NyaWJlPC9idXR0b24+IDwhLS0gLy5idG4gLmJ0bi1zdWJzY3JpYmUgLS0+CgogICAgPGRpdiBpZD0ibmV3c2xldHRlci1zdWJzY3JpYmUiIGNsYXNzPSJvZmZjYW52YXMgb2ZmY2FudmFzLWVuZCIgZGF0YS1icy1zY3JvbGw9InRydWUiIGRhdGEtYnMtYmFja2Ryb3A9InRydWUiIHRhYmluZGV4PSItMSIgYXJpYS1sYWJlbGxlZGJ5PSJuZXdzbGV0dGVyLXN1YnNjcmliZS10aXRsZSI+CiAgICAgICAgPGRpdiBjbGFzcz0ib2ZmY2FudmFzLWhlYWRlciI+CiAgICAgICAgICAgIDxoNSBjbGFzcz0iaDIgb2ZmY2FudmFzLXRpdGxlIiBpZD0ibmV3c2xldHRlci1zdWJzY3JpYmUtdGl0bGUiPk5ld3N3aXJlPC9oNT4KICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4tY2xvc2UgdGV4dC1yZXNldCIgZGF0YS1icy1kaXNtaXNzPSJvZmZjYW52YXMiIGFyaWEtbGFiZWw9IkNsb3NlIj48L2J1dHRvbj4KICAgICAgICA8L2Rpdj4gPCEtLSAvLm9mZmNhdmFzLWhlYWRlciAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJvZmZjYW52YXMtYm9keSI+CiAgICAgICAgICAgIDxwPlNpZ24gdXAgZm9yIG91ciBtb250aGx5IG5ld3NsZXR0ZXIgdG8gbGVhcm4gYWJvdXQgbmV3IGRldmVsb3BtZW50cywgaW5jbHVkaW5nIHJlc291cmNlcywgaW5zaWdodHMgYW5kIG1vcmUuPC9wPgogICAgICAgICAgICA8IS0tIE1hcmtldG8gRm9ybSAtLT4KICAgICAgICAgICAgPHNjcmlwdCBzcmM9Ii8vYXBwLWFiMjgubWFya2V0by5jb20vanMvZm9ybXMyL2pzL2Zvcm1zMi5taW4uanMiPjwvc2NyaXB0PgogICAgICAgICAgICA8Zm9ybSBpZD0ibWt0b0Zvcm1fMTAyMiIgY2xhc3M9Im1hcmtldG9Gb3JtIj48L2Zvcm0+CiAgICAgICAgICAgIDxzY3JpcHQ+TWt0b0Zvcm1zMi5sb2FkRm9ybSgiLy9hcHAtYWIyOC5tYXJrZXRvLmNvbSIsICIyMTEtRllMLTk1NSIsIDEwMjIpOzwvc2NyaXB0PgogICAgICAgIDwvZGl2PiA8IS0tIC8ub2ZmY2F2YXMtYm9keSAtLT4KICAgIDwvZGl2PiA8IS0tIC8jbmV3c2xldHRlci1zdWJzY3JpYmUgLm9mZmNhbnZhcyAtLT4KCgogICAgPGRpdiBjbGFzcz0ic2NyZWVuLWRhcmtlbiI+PC9kaXY+IDwhLS0gLy5zY3JlZW4tZGFya2VuIC0tPgoKICAgPCEtLSA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuNi4wLnNsaW0ubWluLmpzIiBpbnRlZ3JpdHk9InNoYTI1Ni11N2U1a2h5aXRobElkVHB1MjJQSGhFTm1QY1JkRmlIUmpoQXVIY3MwNVJJPSIgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+LS0+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9ib290c3RyYXBANS4xLjMvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyIgaW50ZWdyaXR5PSJzaGEzODQta2E3U2swR2xuNGdtdHoyTWxRbmlrVDF3WGdZc09nK09NaHVQK0lsUkg5c0VOQk8wTFJuNXErOG5iVG92NCsxcCIgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+CgogICAgPHNjcmlwdD4KICAgICAgICAvLyBvZmZjYW52YXMgbW9iaWxlIG1lbnUKICAgICAgICBmdW5jdGlvbiBkYXJrZW5fc2NyZWVuKHllc25vKSB7CiAgICAgICAgICAgIGlmKCB5ZXNubyA9PSB0cnVlICkgewogICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLnNjcmVlbi1kYXJrZW4nKS5jbGFzc0xpc3QuYWRkKCdhY3RpdmUnKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmKHllc25vID09IGZhbHNlKSB7CiAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc2NyZWVuLWRhcmtlbicpLmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBjbG9zZV9vZmZjYW52YXMoKSB7CiAgICAgICAgICAgIGRhcmtlbl9zY3JlZW4oZmFsc2UpOwogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjbW9iaWxlLW1lbnUuc2hvdycpLmNsYXNzTGlzdC5yZW1vdmUoJ3Nob3cnKTsKICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCdvZmZjYW52YXMtYWN0aXZlJyk7CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBzaG93X29mZmNhbnZhcyhvZmZjYW52YXNfaWQpIHsKICAgICAgICAgICAgZGFya2VuX3NjcmVlbih0cnVlKTsKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQob2ZmY2FudmFzX2lkKS5jbGFzc0xpc3QuYWRkKCdzaG93Jyk7CiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgnb2ZmY2FudmFzLWFjdGl2ZScpOwogICAgICAgIH0KCgogICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRlbnRMb2FkZWQnLCBmdW5jdGlvbigpIHsKCiAgICAgICAgICAgIC8vIGFmZml4IGhlYWRlciB0byB0b3Agb24gc2Nyb2xsCiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBmdW5jdGlvbigpIHsKCiAgICAgICAgICAgICAgICBpZiAod2luZG93LnNjcm9sbFkgPiA1MCkgewoKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndG9wLWJhcicpLmNsYXNzTGlzdC5hZGQoJ2Qtbm9uZScpOwogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtYXN0aGVhZCcpLmNsYXNzTGlzdC5hZGQoJ2ZpeGVkLXRvcCcpOwoKICAgICAgICAgICAgICAgICAgICAvLyBhZGQgcGFkZGluZyB0b3AgdG8gc2hvdyBjb250ZW50IGJlaGluZCBuYXZiYXIKICAgICAgICAgICAgICAgICAgICBtYXN0aGVhZEhlaWdodCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNtYXN0aGVhZCcpLm9mZnNldEhlaWdodDsKCiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nVG9wID0gbWFzdGhlYWRIZWlnaHQgKyAncHgnOwoKICAgICAgICAgICAgICAgIH0gZWxzZSB7CgogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b3AtYmFyJykuY2xhc3NMaXN0LnJlbW92ZSgnZC1ub25lJyk7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ21hc3RoZWFkJykuY2xhc3NMaXN0LnJlbW92ZSgnZml4ZWQtdG9wJyk7CgogICAgICAgICAgICAgICAgICAgIC8vIHJlbW92ZSBwYWRkaW5nIHRvcCBmcm9tIGJvZHkKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdUb3AgPSAnMCc7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwoKCgogICAgICAgICAgICAvLyBvZmZjYW52YXMgbW9iaWxlIG1lbnUKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtdHJpZ2dlcl0nKS5mb3JFYWNoKGZ1bmN0aW9uKGV2ZXJ5ZWxlbWVudCkgewogICAgICAgICAgICAgICAgbGV0IG9mZmNhbnZhc19pZCA9IGV2ZXJ5ZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2RhdGEtdHJpZ2dlcicpOwogICAgICAgICAgICAgICAgZXZlcnllbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICAgICAgICAgICAgc2hvd19vZmZjYW52YXMob2ZmY2FudmFzX2lkKTsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5idG4tY2xvc2UnKS5mb3JFYWNoKGZ1bmN0aW9uKGV2ZXJ5YnV0dG9uKSB7CiAgICAgICAgICAgICAgICBldmVyeWJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICAgICAgICAgICAgY2xvc2Vfb2ZmY2FudmFzKCk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfSk7CgogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc2NyZWVuLWRhcmtlbicpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24oZXZlbnQpIHsKICAgICAgICAgICAgICAgIGNsb3NlX29mZmNhbnZhcygpOwogICAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgICAvLyBET01Db250ZW50TG9hZGVkIGVuZAoKCgogICAgICAgIC8vIGRpc3BsYXkgY3VycmVudCB5ZWFyCiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2NvcHlyaWdodC15ZWFyJykuaW5uZXJUZXh0ID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpOwogICAgPC9zY3JpcHQ+CgogICAgCQk8c2NyaXB0PgoJCSggZnVuY3Rpb24gKCBib2R5ICkgewoJCQkndXNlIHN0cmljdCc7CgkJCWJvZHkuY2xhc3NOYW1lID0gYm9keS5jbGFzc05hbWUucmVwbGFjZSggL1xidHJpYmUtbm8tanNcYi8sICd0cmliZS1qcycgKTsKCQl9ICkoIGRvY3VtZW50LmJvZHkgKTsKCQk8L3NjcmlwdD4KCQk8c2NyaXB0PiAvKiA8IVtDREFUQVsgKi92YXIgdHJpYmVfbDEwbl9kYXRhdGFibGVzID0geyJhcmlhIjp7InNvcnRfYXNjZW5kaW5nIjoiOiBhY3RpdmF0ZSB0byBzb3J0IGNvbHVtbiBhc2NlbmRpbmciLCJzb3J0X2Rlc2NlbmRpbmciOiI6IGFjdGl2YXRlIHRvIHNvcnQgY29sdW1uIGRlc2NlbmRpbmcifSwibGVuZ3RoX21lbnUiOiJTaG93IF9NRU5VXyBlbnRyaWVzIiwiZW1wdHlfdGFibGUiOiJObyBkYXRhIGF2YWlsYWJsZSBpbiB0YWJsZSIsImluZm8iOiJTaG93aW5nIF9TVEFSVF8gdG8gX0VORF8gb2YgX1RPVEFMXyBlbnRyaWVzIiwiaW5mb19lbXB0eSI6IlNob3dpbmcgMCB0byAwIG9mIDAgZW50cmllcyIsImluZm9fZmlsdGVyZWQiOiIoZmlsdGVyZWQgZnJvbSBfTUFYXyB0b3RhbCBlbnRyaWVzKSIsInplcm9fcmVjb3JkcyI6Ik5vIG1hdGNoaW5nIHJlY29yZHMgZm91bmQiLCJzZWFyY2giOiJTZWFyY2g6IiwiYWxsX3NlbGVjdGVkX3RleHQiOiJBbGwgaXRlbXMgb24gdGhpcyBwYWdlIHdlcmUgc2VsZWN0ZWQuICIsInNlbGVjdF9hbGxfbGluayI6IlNlbGVjdCBhbGwgcGFnZXMiLCJjbGVhcl9zZWxlY3Rpb24iOiJDbGVhciBTZWxlY3Rpb24uIiwicGFnaW5hdGlvbiI6eyJhbGwiOiJBbGwiLCJuZXh0IjoiTmV4dCIsInByZXZpb3VzIjoiUHJldmlvdXMifSwic2VsZWN0Ijp7InJvd3MiOnsiMCI6IiIsIl8iOiI6IFNlbGVjdGVkICVkIHJvd3MiLCIxIjoiOiBTZWxlY3RlZCAxIHJvdyJ9fSwiZGF0ZXBpY2tlciI6eyJkYXlOYW1lcyI6WyJTdW5kYXkiLCJNb25kYXkiLCJUdWVzZGF5IiwiV2VkbmVzZGF5IiwiVGh1cnNkYXkiLCJGcmlkYXkiLCJTYXR1cmRheSJdLCJkYXlOYW1lc1Nob3J0IjpbIlN1biIsIk1vbiIsIlR1ZSIsIldlZCIsIlRodSIsIkZyaSIsIlNhdCJdLCJkYXlOYW1lc01pbiI6WyJTIiwiTSIsIlQiLCJXIiwiVCIsIkYiLCJTIl0sIm1vbnRoTmFtZXMiOlsiSmFudWFyeSIsIkZlYnJ1YXJ5IiwiTWFyY2giLCJBcHJpbCIsIk1heSIsIkp1bmUiLCJKdWx5IiwiQXVndXN0IiwiU2VwdGVtYmVyIiwiT2N0b2JlciIsIk5vdmVtYmVyIiwiRGVjZW1iZXIiXSwibW9udGhOYW1lc1Nob3J0IjpbIkphbnVhcnkiLCJGZWJydWFyeSIsIk1hcmNoIiwiQXByaWwiLCJNYXkiLCJKdW5lIiwiSnVseSIsIkF1Z3VzdCIsIlNlcHRlbWJlciIsIk9jdG9iZXIiLCJOb3ZlbWJlciIsIkRlY2VtYmVyIl0sIm1vbnRoTmFtZXNNaW4iOlsiSmFuIiwiRmViIiwiTWFyIiwiQXByIiwiTWF5IiwiSnVuIiwiSnVsIiwiQXVnIiwiU2VwIiwiT2N0IiwiTm92IiwiRGVjIl0sIm5leHRUZXh0IjoiTmV4dCIsInByZXZUZXh0IjoiUHJldiIsImN1cnJlbnRUZXh0IjoiVG9kYXkiLCJjbG9zZVRleHQiOiJEb25lIiwidG9kYXkiOiJUb2RheSIsImNsZWFyIjoiQ2xlYXIifX07LyogXV0+ICovIDwvc2NyaXB0PjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWluY2x1ZGVzL2pzL3dwLWVtYmVkLm1pbi5qcz92ZXI9NS44LjMnIGlkPSd3cC1lbWJlZC1qcyc+PC9zY3JpcHQ+CgogICAgPC9ib2R5Pgo8L2h0bWw+Cg==
2629
2636
  http_version:
2630
- recorded_at: Sun, 30 Jan 2022 20:08:43 GMT
2637
+ recorded_at: Tue, 08 Feb 2022 16:57:39 GMT
2631
2638
  recorded_with: VCR 5.1.0