relaton 1.11.2 → 1.11.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rake.yml +1 -5
  3. data/.rubocop.yml +1 -1
  4. data/lib/relaton/db.rb +7 -19
  5. data/lib/relaton/registry.rb +28 -0
  6. data/lib/relaton/version.rb +1 -1
  7. data/relaton.gemspec +1 -1
  8. data/spec/relaton/registry_spec.rb +1 -0
  9. data/spec/relaton_spec.rb +2 -2
  10. data/spec/vcr_cassetes/3gpp_tr_00_01u_umts_3_0_0.yml +8 -9
  11. data/spec/vcr_cassetes/async_fetch.yml +1351 -1438
  12. data/spec/vcr_cassetes/bsi_bs_en_iso_8848.yml +11 -13
  13. data/spec/vcr_cassetes/cc_dir_10005_2019.yml +9 -11
  14. data/spec/vcr_cassetes/cie_001_1980.yml +8 -9
  15. data/spec/vcr_cassetes/ecma_6.yml +8 -9
  16. data/spec/vcr_cassetes/en_10160_1999.yml +29 -33
  17. data/spec/vcr_cassetes/fisp_140.yml +7 -8
  18. data/spec/vcr_cassetes/gb_t_20223_2006.yml +7 -9
  19. data/spec/vcr_cassetes/iana_service_names_port_numbers.yml +11 -12
  20. data/spec/vcr_cassetes/iec_60050_102_2007.yml +29 -34
  21. data/spec/vcr_cassetes/iec_combined_included.yml +99 -116
  22. data/spec/vcr_cassetes/ieee_528_2019.yml +620 -618
  23. data/spec/vcr_cassetes/iho_b_11.yml +8 -9
  24. data/spec/vcr_cassetes/iso_111111119115_1.yml +3 -4
  25. data/spec/vcr_cassetes/iso_19115_1.yml +16 -20
  26. data/spec/vcr_cassetes/iso_19115_1_2.yml +32 -40
  27. data/spec/vcr_cassetes/iso_19115_all_parts.yml +17 -21
  28. data/spec/vcr_cassetes/iso_19133_2005.yml +16 -20
  29. data/spec/vcr_cassetes/iso_combined_applied.yml +29 -37
  30. data/spec/vcr_cassetes/iso_combined_included.yml +29 -37
  31. data/spec/vcr_cassetes/iso_dis_14093.yml +14 -18
  32. data/spec/vcr_cassetes/itu_combined_included.yml +189 -315
  33. data/spec/vcr_cassetes/oasis_amqp_core_types_v1_0_pt1.yml +10 -11
  34. data/spec/vcr_cassetes/ogc_19_025r1.yml +11 -12
  35. data/spec/vcr_cassetes/omg_ami4ccm_1_0.yml +3 -4
  36. data/spec/vcr_cassetes/rfc_8341.yml +8 -9
  37. data/spec/vcr_cassetes/sp_800_38b.yml +7 -8
  38. data/spec/vcr_cassetes/threads_from_env.yml +61 -69
  39. data/spec/vcr_cassetes/un_rtade_cefact_2004_32.yml +30 -35
  40. data/spec/vcr_cassetes/w3c_json_ld11.yml +21 -23
  41. metadata +3 -3
@@ -21,7 +21,7 @@ http_interactions:
21
21
  message: OK
22
22
  headers:
23
23
  Date:
24
- - Mon, 09 May 2022 10:28:56 GMT
24
+ - Fri, 27 May 2022 11:48:31 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
- - 7089c0461884788e-VIE
54
+ - 711e859ba80e77f7-VIE
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":"\/NP1woowxuIBCtRG\/g==","time-ms":6},"hits":{"found":24,"start":0,"hit":[{"id":"c1dc1ae6ae407ec0a8a761c1e4e0832655dda6ed376d509c9f6f5cd99767c79abf416c615774db732cc8100d9c5a2eb0cfa7709ce0d82b88b603bbaba6278fd0","fields":{"meta_keywords_la":["Aerospace
59
+ string: '{"status":"ok","total_pages":3,"results":{"status":{"rid":"xf7iqpAwzusECtRG\/g==","time-ms":4},"hits":{"found":24,"start":0,"hit":[{"id":"c1dc1ae6ae407ec0a8a761c1e4e0832655dda6ed376d509c9f6f5cd99767c79abf416c615774db732cc8100d9c5a2eb0cfa7709ce0d82b88b603bbaba6278fd0","fields":{"meta_keywords_la":["Aerospace
60
60
  Electronics"],"doc_type_l":"text\/html","meta_title_t":"IEEE SA - IEEE Standard
61
61
  for Inertial Sensor Terminology","meta_type_la":["Standard"],"meta_description_l":"Terms
62
62
  and definitions relating to inertial sensors are presented in this standard.
@@ -299,6 +299,128 @@ http_interactions:
299
299
  IEEE is the world\u2019s largest technical professional organization dedicated
300
300
  to advancing technology for the benefit of humanity. Subscribe Newswire Sign
301
301
  up for our monthly newsletter to learn about new developments, including resources,
302
+ insights and more. "}},{"id":"6273bb5f6a6de25ca6fe5bb05a87adb3725e7c8f4c1661cda39f22e1f34267fae5504e0f050b949e7386975ba076329cbb467dd8a78da5224cb7e56f69948373","fields":{"meta_keywords_la":["Aerospace
303
+ Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"Letter
304
+ terms in common usage are related to the frequency ranges that they represent
305
+ in this standard.","meta_topic_la":["Aerospace Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/tag\/aerospace-electronics\/","doc_title_t":"IEEE
306
+ SA - Tag: Aerospace-electronics","doc_text_t":"IEEE SA - Tag: Aerospace-electronics
307
+ IEEE.org IEEE Xplore Digital Library IEEE Standards IEEE Spectrum More Sites
308
+ eTools Standards Access Standards Search Standards Standards Development Standards
309
+ Adoption Choose from the many ways to access IEEE SA Standards. Choose from
310
+ individual or organizational access options to get the standards you need.
311
+ Find the standards you\u2019re looking for. Get involved in the development
312
+ of market-driven technology standards with proven expertise and dedicated
313
+ support. Learn more about how to adopt IEEE standards. Products & Programs
314
+ Alliance Management Services Conformity Assessment & Certification IEEE SA
315
+ Open Source Industry Affiliate Network (IAN) Industry Connections The National
316
+ Electrical Safety Code\u00ae (NESC\u00ae) Registration Authority Government
317
+ Engagement Program on Standards (GEPS) Standards Fellowship All Products &
318
+ Programs Full ecosystem of standards-related solutions to help drive awareness,
319
+ activation, and adoption. Providing support services to help manage the day-to-day
320
+ operations of industry groups, allowing key stakeholders to focus on the work
321
+ at hand. Focused on development and implementation of rigorous conformity
322
+ assessment programs designed to help accelerate market adoption, reduce costs
323
+ and more. A vendor-neutral, inclusive, open source platform\u2014for all,
324
+ from independent software developers and start ups to industry, academic and
325
+ research institutions. Open to consortia, industry alliance or other industry
326
+ organizations, looking to bring forward specifications for standards development
327
+ and market adoption. Facilitating collaboration among organizations and individuals
328
+ as they hone and refine their thinking on rapidly changing technologies. Guidelines
329
+ for practical safeguarding during the installation, operation, and maintenance
330
+ of electric supply, communication lines and associated equipment. Assigns
331
+ and maintains unique identifiers and unambiguous names to objects for those
332
+ wishing to register them. Program for policymakers providing tailored standards
333
+ information, access to the IEEE SA standardization ecosystem, and standardization
334
+ resources. Providing global standards professionals the opportunity to observe
335
+ the IEEE standards development process and learn about technical areas of
336
+ interest. See all the programs, products, and services that IEEE SA has to
337
+ offer. Focuses Artificial Intelligence Systems (AIS) Connectivity & Telecom
338
+ Energy Foundational Technologies Healthcare and Life Sciences Mobility Government
339
+ Engagement Strategic focuses and industries where IEEE SA is raising the world\u2019s
340
+ standards. Developing accessible and sustainable approaches and solutions
341
+ for practical application of AIS principles and frameworks. Advancing robust,
342
+ responsible, and affordable connectivity. Enabling sustainable, efficient,
343
+ and accessible energy through technological advances on a global scale. Working
344
+ to standardize seamless and ubiquitous connectivity across all applications
345
+ of connected technologies. Focused on enabling affordable healthcare, access
346
+ to medicine, and innovation to improve overall global wellness. Working to
347
+ help the evolving mobility ecosystem address some of its greatest business
348
+ opportunities that have the potential to solve major societal challenges.
349
+ Building bridges between the worlds of technology, standards, and policy making.
350
+ Get Involved Events IEEE SA Membership How to Get Involved Learn about opportunities
351
+ to engage with IEEE SA. Join us at upcoming virtual or in-person events. Flexible
352
+ membership options that offer enhanced participation in IEEE SA activities,
353
+ standards development, and governance. There are many opportunities for participation,
354
+ find the right one for you. Resources Training & Development News IEEE SA
355
+ Newsletter Standards Store Training and communication resources to stay connected.
356
+ Individual and organizational effectiveness program to enable the success
357
+ of our vital volunteers. Read the latest news on IEEE SA. Subscribe to our
358
+ newsletter and keep up to date on the latest standards, event, and activities.
359
+ Get the standards you need. Select from individual standards or standards
360
+ bundles. MAC Address Tag: Aerospace-electronics Home Tag: aerospace-electronics
361
+ IEEE 521-2019 Letter terms in common usage are related to the frequency ranges
362
+ that they represent in this standard. Read more IEEE 1939.1-2021 A structure
363
+ of low-altitude airspace for efficient unmanned aerial vehicle (UAV) traffic
364
+ management is defined in this standard. The standard elaborates the structural
365
+ low altitude based on UAV low-altitude public air routes from five parts:
366
+ grid technology, remote sensing data, communication and networking, route
367
+ planning, operation, and management. Read more IEEE 952-2020 Specification
368
+ and test procedures for a single-axis interferometric fiber optic gyro (IFOG)
369
+ for use as a sensor in attitude control systems, angular displacement measuring
370
+ systems, and angular rate measuring systems are defined. The test procedures
371
+ are derived from those presently used in the industry. Read more IEEE 528-2019
372
+ Terms and definitions relating to inertial sensors are presented in this standard.
373
+ Usage as understood by the inertial sensor community is given preference over
374
+ general technical usage of the terms herein. The criterion for inclusion of
375
+ a term and its definition in this standard is usefulness as related to inertial
376
+ sensor technology. Read more IEEE 952-1997\/Cor 1-2016 Errors identified in
377
+ IEEE Std 952-1997 are corrected in this corrigendum. Corrections are made
378
+ to Figure 1 and in subclauses 5.3.4, 8.3, 12.11.4.3.2, 12.11.4.3.3, 12.11.4.3.4,
379
+ 12.12.3.1, and 12.12.4.1. Read more IEEE\/AIEE 700-1953 Aircraft Direct-Current
380
+ Apparatus Voltage Ratings Read more IEEE\/AIEE 750.11-1960 This pamphlet is
381
+ one of a series comprising the Report on Aircraft and Missiles Electric Systems
382
+ Guide, and has been so printed in order to allow for more convenient revision
383
+ and addition of Sections as available without necessitating a reprint of the
384
+ entire Guide. As of the time of printing this pamphlet the available Sections
385
+ are: No. 750.1-Sections 000- Introduction, 100- Criteria for the Electric
386
+ System, 200- Principal Subdivisions of Electric System, 300- Selection of
387
+ the System, No. 750.4-Section 400- Installation Practices, No. 750.5-Sections
388
+ 500-Equipment Characteristics, 800- Electric System Design Procedures,No.
389
+ 750.11-Appendices I- Characteristics of Alternating-Current Generators Affecting
390
+ Their Application\u2026 Read more IEEE\/AIEE 750.1-1960 Material comprising
391
+ this report is directed primarily at the attainment of improved application
392
+ technique--the attainment of the highest possible quality of performance from
393
+ a combination of particular devices to perform a given function. The performance
394
+ qualities exhibited by a composite system composed of numerous devices will
395
+ be influenced by the character of devices which are selected to work together
396
+ and the manner in which they are interconnected or correlated. The extent
397
+ to which such composite systems may be benefited by proper application technique
398
+ is great. Realization of the stated objective involves comprehensive treatment
399
+ of the following character expressed quantitatively in\u2026 Read more IEEE\/AIEE
400
+ 750.5-1960 Read more 1 2 3 \u2026 9 Next Tag Cloud Aerospace Electronics AI
401
+ AIS Artificial Intelligence Systems AudCom autonomy batteries blockchain committees
402
+ communications Computer Technology digital twins Electromagnetic Compatibility
403
+ Ethics In Action Event Green and Clean Technology Healthcare IT ic IEEE ieee-sa
404
+ IEEESA ieee sa ieee standards association IEEE Standards Association (IEEE
405
+ SA) Industry Applications industry connections Instrumentation and Measurement
406
+ Nuclear Power policies Power and Energy Practice Area registration authority
407
+ RevCom SASB smart-x smart cities smart grid smart houses smart transportation
408
+ Software and Systems Engineering standards standards board transportation
409
+ trustworthy autonomy Wired and Wireless Communications Facebook Twitter LinkedIn
410
+ Instagram YouTube IEEE SA About Us IEEE SA Membership Corporate Program Distributor
411
+ Program Training & Development Policies & Procedures Contact Us Board of Governors
412
+ About Board of Governors Awards Committee Corporate Advisory Group Industry
413
+ Connections Committee Registration Authority Committee Strategic Planning
414
+ Coordination Committee Standards Board About Standards Board Board Approvals
415
+ Audit Committee New Standards Committee Patent Committee Procedures Committee
416
+ Standards Review Committee News & Events News IEEE SA Newsletter Events Home
417
+ Sitemap Contact & Support Accessibility Nondiscrimination Policy IEEE Ethics
418
+ Reporting IEEE Privacy Policy IEEE SA Copyright Policy \u00a9 Copyright 2021
419
+ IEEE \u2013 All rights reserved. Use of this website signifies your agreement
420
+ to the IEEE Terms and Conditions . A not-for-profit organization, IEEE is
421
+ the world\u2019s largest technical professional organization dedicated to
422
+ advancing technology for the benefit of humanity. Subscribe Newswire Sign
423
+ up for our monthly newsletter to learn about new developments, including resources,
302
424
  insights and more. "}},{"id":"9cbcfe1a1a10411b11c4725a58de46093d36dbb24df9cf54f22fc40c487274be111ebd55c6bbfdced6a400f258cc88df638efa40720209c344f3f919968e9a7b","fields":{"meta_keywords_la":["Aerospace
303
425
  Electronics,Power and Energy"],"doc_type_l":"text\/html","meta_title_t":"IEEE
304
426
  SA - IEEE Standard for Inertial Sensor Terminology","meta_type_la":["Standard"],"meta_description_l":"Terms
@@ -543,128 +665,6 @@ http_interactions:
543
665
  IEEE is the world\u2019s largest technical professional organization dedicated
544
666
  to advancing technology for the benefit of humanity. Subscribe Newswire Sign
545
667
  up for our monthly newsletter to learn about new developments, including resources,
546
- insights and more. "}},{"id":"6273bb5f6a6de25ca6fe5bb05a87adb3725e7c8f4c1661cda39f22e1f34267fae5504e0f050b949e7386975ba076329cbb467dd8a78da5224cb7e56f69948373","fields":{"meta_keywords_la":["Aerospace
547
- Electronics"],"doc_type_l":"text\/html","meta_type_la":["Standard"],"meta_description_l":"Letter
548
- terms in common usage are related to the frequency ranges that they represent
549
- in this standard.","meta_topic_la":["Aerospace Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/tag\/aerospace-electronics\/","doc_title_t":"IEEE
550
- SA - Tag: Aerospace-electronics","doc_text_t":"IEEE SA - Tag: Aerospace-electronics
551
- IEEE.org IEEE Xplore Digital Library IEEE Standards IEEE Spectrum More Sites
552
- eTools Standards Access Standards Search Standards Standards Development Standards
553
- Adoption Choose from the many ways to access IEEE SA Standards. Choose from
554
- individual or organizational access options to get the standards you need.
555
- Find the standards you\u2019re looking for. Get involved in the development
556
- of market-driven technology standards with proven expertise and dedicated
557
- support. Learn more about how to adopt IEEE standards. Products & Programs
558
- Alliance Management Services Conformity Assessment & Certification IEEE SA
559
- Open Source Industry Affiliate Network (IAN) Industry Connections The National
560
- Electrical Safety Code\u00ae (NESC\u00ae) Registration Authority Government
561
- Engagement Program on Standards (GEPS) Standards Fellowship All Products &
562
- Programs Full ecosystem of standards-related solutions to help drive awareness,
563
- activation, and adoption. Providing support services to help manage the day-to-day
564
- operations of industry groups, allowing key stakeholders to focus on the work
565
- at hand. Focused on development and implementation of rigorous conformity
566
- assessment programs designed to help accelerate market adoption, reduce costs
567
- and more. A vendor-neutral, inclusive, open source platform\u2014for all,
568
- from independent software developers and start ups to industry, academic and
569
- research institutions. Open to consortia, industry alliance or other industry
570
- organizations, looking to bring forward specifications for standards development
571
- and market adoption. Facilitating collaboration among organizations and individuals
572
- as they hone and refine their thinking on rapidly changing technologies. Guidelines
573
- for practical safeguarding during the installation, operation, and maintenance
574
- of electric supply, communication lines and associated equipment. Assigns
575
- and maintains unique identifiers and unambiguous names to objects for those
576
- wishing to register them. Program for policymakers providing tailored standards
577
- information, access to the IEEE SA standardization ecosystem, and standardization
578
- resources. Providing global standards professionals the opportunity to observe
579
- the IEEE standards development process and learn about technical areas of
580
- interest. See all the programs, products, and services that IEEE SA has to
581
- offer. Focuses Artificial Intelligence Systems (AIS) Connectivity & Telecom
582
- Energy Foundational Technologies Healthcare and Life Sciences Mobility Government
583
- Engagement Strategic focuses and industries where IEEE SA is raising the world\u2019s
584
- standards. Developing accessible and sustainable approaches and solutions
585
- for practical application of AIS principles and frameworks. Advancing robust,
586
- responsible, and affordable connectivity. Enabling sustainable, efficient,
587
- and accessible energy through technological advances on a global scale. Working
588
- to standardize seamless and ubiquitous connectivity across all applications
589
- of connected technologies. Focused on enabling affordable healthcare, access
590
- to medicine, and innovation to improve overall global wellness. Working to
591
- help the evolving mobility ecosystem address some of its greatest business
592
- opportunities that have the potential to solve major societal challenges.
593
- Building bridges between the worlds of technology, standards, and policy making.
594
- Get Involved Events IEEE SA Membership How to Get Involved Learn about opportunities
595
- to engage with IEEE SA. Join us at upcoming virtual or in-person events. Flexible
596
- membership options that offer enhanced participation in IEEE SA activities,
597
- standards development, and governance. There are many opportunities for participation,
598
- find the right one for you. Resources Training & Development News IEEE SA
599
- Newsletter Standards Store Training and communication resources to stay connected.
600
- Individual and organizational effectiveness program to enable the success
601
- of our vital volunteers. Read the latest news on IEEE SA. Subscribe to our
602
- newsletter and keep up to date on the latest standards, event, and activities.
603
- Get the standards you need. Select from individual standards or standards
604
- bundles. MAC Address Tag: Aerospace-electronics Home Tag: aerospace-electronics
605
- IEEE 521-2019 Letter terms in common usage are related to the frequency ranges
606
- that they represent in this standard. Read more IEEE 1939.1-2021 A structure
607
- of low-altitude airspace for efficient unmanned aerial vehicle (UAV) traffic
608
- management is defined in this standard. The standard elaborates the structural
609
- low altitude based on UAV low-altitude public air routes from five parts:
610
- grid technology, remote sensing data, communication and networking, route
611
- planning, operation, and management. Read more IEEE 952-2020 Specification
612
- and test procedures for a single-axis interferometric fiber optic gyro (IFOG)
613
- for use as a sensor in attitude control systems, angular displacement measuring
614
- systems, and angular rate measuring systems are defined. The test procedures
615
- are derived from those presently used in the industry. Read more IEEE 528-2019
616
- Terms and definitions relating to inertial sensors are presented in this standard.
617
- Usage as understood by the inertial sensor community is given preference over
618
- general technical usage of the terms herein. The criterion for inclusion of
619
- a term and its definition in this standard is usefulness as related to inertial
620
- sensor technology. Read more IEEE 952-1997\/Cor 1-2016 Errors identified in
621
- IEEE Std 952-1997 are corrected in this corrigendum. Corrections are made
622
- to Figure 1 and in subclauses 5.3.4, 8.3, 12.11.4.3.2, 12.11.4.3.3, 12.11.4.3.4,
623
- 12.12.3.1, and 12.12.4.1. Read more IEEE\/AIEE 700-1953 Aircraft Direct-Current
624
- Apparatus Voltage Ratings Read more IEEE\/AIEE 750.11-1960 This pamphlet is
625
- one of a series comprising the Report on Aircraft and Missiles Electric Systems
626
- Guide, and has been so printed in order to allow for more convenient revision
627
- and addition of Sections as available without necessitating a reprint of the
628
- entire Guide. As of the time of printing this pamphlet the available Sections
629
- are: No. 750.1-Sections 000- Introduction, 100- Criteria for the Electric
630
- System, 200- Principal Subdivisions of Electric System, 300- Selection of
631
- the System, No. 750.4-Section 400- Installation Practices, No. 750.5-Sections
632
- 500-Equipment Characteristics, 800- Electric System Design Procedures,No.
633
- 750.11-Appendices I- Characteristics of Alternating-Current Generators Affecting
634
- Their Application\u2026 Read more IEEE\/AIEE 750.1-1960 Material comprising
635
- this report is directed primarily at the attainment of improved application
636
- technique--the attainment of the highest possible quality of performance from
637
- a combination of particular devices to perform a given function. The performance
638
- qualities exhibited by a composite system composed of numerous devices will
639
- be influenced by the character of devices which are selected to work together
640
- and the manner in which they are interconnected or correlated. The extent
641
- to which such composite systems may be benefited by proper application technique
642
- is great. Realization of the stated objective involves comprehensive treatment
643
- of the following character expressed quantitatively in\u2026 Read more IEEE\/AIEE
644
- 750.5-1960 Read more 1 2 3 \u2026 9 Next Tag Cloud Aerospace Electronics AI
645
- AIS Artificial Intelligence Systems AudCom autonomy batteries blockchain committees
646
- communications Computer Technology digital twins Electromagnetic Compatibility
647
- Ethics In Action Event Green and Clean Technology Healthcare IT ic IEEE ieee-sa
648
- IEEESA ieee sa ieee standards association IEEE Standards Association (IEEE
649
- SA) Industry Applications industry connections Instrumentation and Measurement
650
- Nuclear Power policies Power and Energy Practice Area registration authority
651
- RevCom SASB smart-x smart cities smart grid smart houses smart transportation
652
- Software and Systems Engineering standards standards board transportation
653
- trustworthy autonomy Wired and Wireless Communications Facebook Twitter LinkedIn
654
- Instagram YouTube IEEE SA About Us IEEE SA Membership Corporate Program Distributor
655
- Program Training & Development Policies & Procedures Contact Us Board of Governors
656
- About Board of Governors Awards Committee Corporate Advisory Group Industry
657
- Connections Committee Registration Authority Committee Strategic Planning
658
- Coordination Committee Standards Board About Standards Board Board Approvals
659
- Audit Committee New Standards Committee Patent Committee Procedures Committee
660
- Standards Review Committee News & Events News IEEE SA Newsletter Events Home
661
- Sitemap Contact & Support Accessibility Nondiscrimination Policy IEEE Ethics
662
- Reporting IEEE Privacy Policy IEEE SA Copyright Policy \u00a9 Copyright 2021
663
- IEEE \u2013 All rights reserved. Use of this website signifies your agreement
664
- to the IEEE Terms and Conditions . A not-for-profit organization, IEEE is
665
- the world\u2019s largest technical professional organization dedicated to
666
- advancing technology for the benefit of humanity. Subscribe Newswire Sign
667
- up for our monthly newsletter to learn about new developments, including resources,
668
668
  insights and more. "}},{"id":"078cadb336c908939e58048dc80abc0e41d35a0b3fe16dd00a123a693916293353a5cbc79f3993b1f71bfe11e1d790d46b887a980a03ef635f23e8ac89da4925","fields":{"meta_keywords_la":["Aerospace
669
669
  Electronics"],"doc_type_l":"text\/html","meta_title_t":"IEEE SA - IEEE Recommended
670
670
  Practice for Precision Centrifuge Testing of Linear Accelerometers","meta_type_la":["Standard"],"meta_description_l":"This
@@ -914,24 +914,17 @@ http_interactions:
914
914
  IEEE is the world\u2019s largest technical professional organization dedicated
915
915
  to advancing technology for the benefit of humanity. Subscribe Newswire Sign
916
916
  up for our monthly newsletter to learn about new developments, including resources,
917
- insights and more. "}},{"id":"a987f234b815c04d51196a5861dce1ab4f2a67a7df6f37238f67bb5387af80050e142c401c7c38a091478a9f9de39f5bb24d00c179180953adc632f16a51cd68","fields":{"meta_keywords_la":["Aerospace
918
- Electronics"],"doc_type_l":"text\/html","meta_title_t":"IEEE SA - IEEE Specification
919
- Format Guide and Test Procedure for Two-Degree-of-Freedom Dynamically Tuned
920
- Gyros","meta_type_la":["Standard"],"meta_description_l":"A format guide for
921
- the preparation of a two-degree-of-freedom dynamically tuned gyro (DTG) specification
922
- is given that provides a common ground of terminology and practice for manufacturers
923
- and users. A compilation of recommended procedures for testing a DTG is also
924
- given. The requirements and test procedures are defined in terms unique to
925
- the DTG. They cover applications of the gyro as an angular motion sensor in
926
- navigation and control systems. They apply to two modes of use: (1) as a strap-down
927
- sensor in operating environments typical of aircraft and missile applications,
928
- and (2) as a sensor in gimballed platform applications in which the dynamic
929
- angular inputs to which the gyro is subjected are benign relative to the accuracy
930
- required. In the case of the strap-down DTG, the characteristics of the external
931
- capture loops are considered to the extent necessary to define the gyro performance.","meta_topic_la":["Aerospace
932
- Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/813\/1200\/","meta_designation_l":"IEEE
933
- 813-1988","doc_title_t":"IEEE SA - IEEE 813-1988","doc_text_t":"IEEE SA -
934
- IEEE 813-1988 IEEE.org IEEE Xplore Digital Library IEEE Standards IEEE Spectrum
917
+ insights and more. "}},{"id":"3fc0c715deec41762b0998457967e6feb2e27945928e2467bfb2f2923a4976a89ba4567595790403dcd8f650e2906a80c9826aa4cd52d5af78f7195707928ce0","fields":{"meta_keywords_la":["Aerospace
918
+ Electronics"],"doc_type_l":"text\/html","meta_title_t":"IEEE SA - IEEE Standard
919
+ Specification Format Guide and Test Procedure for Single-Degree-of-Freedom
920
+ Rate-Integrating Gyros","meta_type_la":["Standard"],"meta_description_l":"A
921
+ specification format guide for the preparation of a rate-integrating gyro
922
+ specification that provides a common meeting ground of terminology and practice
923
+ for manufacturers and users is presented. A compilation of recommended procedures
924
+ for testing a rate-integrating gyro is given.","meta_topic_la":["Aerospace
925
+ Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/517\/760\/","meta_designation_l":"IEEE
926
+ 517-1974","doc_title_t":"IEEE SA - IEEE 517-1974","doc_text_t":"IEEE SA -
927
+ IEEE 517-1974 IEEE.org IEEE Xplore Digital Library IEEE Standards IEEE Spectrum
935
928
  More Sites eTools Standards Access Standards Search Standards Standards Development
936
929
  Standards Adoption Choose from the many ways to access IEEE SA Standards.
937
930
  Choose from individual or organizational access options to get the standards
@@ -985,28 +978,20 @@ http_interactions:
985
978
  the latest news on IEEE SA. Subscribe to our newsletter and keep up to date
986
979
  on the latest standards, event, and activities. Get the standards you need.
987
980
  Select from individual standards or standards bundles. MAC Address Inactive-Reserved
988
- Standard IEEE 813-1988 IEEE Specification Format Guide and Test Procedure
989
- for Two-Degree-of-Freedom Dynamically Tuned Gyros Purchase Access via Subscription
990
- Home Standards IEEE 813-1988 A format guide for the preparation of a two-degree-of-freedom
991
- dynamically tuned gyro (DTG) specification is given that provides a common
992
- ground of terminology and practice for manufacturers and users. A compilation
993
- of recommended procedures for testing a DTG is also given. The requirements
994
- and test procedures are defined in terms unique to the DTG. They cover applications
995
- of the gyro as an angular motion sensor in navigation and control systems.
996
- They apply to two modes of use: (1) as a strap-down sensor in operating environments
997
- typical of aircraft and missile applications, and (2) as a sensor in gimballed
998
- platform applications in which the dynamic angular inputs to which the gyro
999
- is subjected are benign relative to the accuracy required. In the case of
1000
- the strap-down DTG, the characteristics of the external capture loops are
1001
- considered to the extent necessary to define the gyro performance. Sponsor
981
+ Standard IEEE 517-1974 IEEE Standard Specification Format Guide and Test Procedure
982
+ for Single-Degree-of-Freedom Rate-Integrating Gyros Purchase Access via Subscription
983
+ Home Standards IEEE 517-1974 A specification format guide for the preparation
984
+ of a rate-integrating gyro specification that provides a common meeting ground
985
+ of terminology and practice for manufacturers and users is presented. A compilation
986
+ of recommended procedures for testing a rate-integrating gyro is given. Sponsor
1002
987
  Committee AES\/GA - Gyro Accelerometer Panel Learn More Status Inactive-Reserved
1003
- Standard PAR Approval 1979-12-28 Board Approval 1988-08-17 History ANSI Approved:
1004
- 1989-05-04 ANSI Withdrawn Date: 2016-08-19 Published: 1989-06-05 Reaffirmed:
1005
- 2011-12-07 Inactivated Date: 2022-03-24 Working Group Details Society IEEE
1006
- Aerospace and Electronic Systems Society Learn More Sponsor Committee AES\/GA
1007
- - Gyro Accelerometer Panel Learn More Working Group SENSR_WG - Sensors Working
1008
- Group Learn More IEEE Program Manager Soo Kim Contact Working Group Chair
1009
- Harry Davis Active Projects Active Standards Superseded Standards Inactive-Withdrawn
988
+ Standard Board Approval 1973-12-13 History ANSI Approved: 1983-05-30 Published:
989
+ 1974-10-17 Reaffirmed: 2010-09-30 Inactivated Date: 2021-03-25 Additional
990
+ Resources Errata 517-1974_errata.pdf Working Group Details Society IEEE Aerospace
991
+ and Electronic Systems Society Learn More Sponsor Committee AES\/GA - Gyro
992
+ Accelerometer Panel Learn More Working Group SENSR_WG - Sensors Working Group
993
+ Learn More IEEE Program Manager Soo Kim Contact Working Group Chair Harry
994
+ Davis Active Projects Active Standards Superseded Standards Inactive-Withdrawn
1010
995
  Standards Inactive-Reserved Standards P1431 Standard for Specifying and Testing
1011
996
  Coriolis Vibratory Gyros This standard defines requirements and test procedures
1012
997
  for a single-axis Coriolis vibratory gyro (CVG) for use as a sensor in attitude
@@ -1091,103 +1076,105 @@ http_interactions:
1091
1076
  Format for Single-Degree-of-Freedom Spring-Restrained Rate Gyros. Learn More
1092
1077
  293-1969\/Cor 1-2014 IEEE Standard for IEEE Test Procedure for Single-Degree-of-Freedom
1093
1078
  Spring-Restrained Rate Gyros -- Corrigendum 1: Table 1 Heading Correction
1094
- to Table 1 on page 14 of IEEE Std 293-1969 Learn More 517-1974 IEEE Standard
1095
- Specification Format Guide and Test Procedure for Single-Degree-of-Freedom
1096
- Rate-Integrating Gyros A specification format guide for the preparation of
1097
- a rate-integrating gyro specification that provides a common meeting ground
1098
- of terminology and practice for manufacturers and users is presented. A compilation
1099
- of recommended procedures for testing a rate-integrating gyro is given. Learn
1100
- More 529-1980 Supplement for Strapdown Applications to IEEE Standard Specification
1101
- Format Guide and Test Procedure for Single-Degree-of-Freedom Rate-Integrating
1102
- Gyros A specification format guide for the preparation of a rate-integrating
1103
- gyroscope specification is presented. Recommended procedures for testing a
1104
- rate-integrating gyroscope are compiled. This standard, when combined with
1105
- IEEE Std 517-1974 (R1980), defines the requirements and test procedures in
1106
- terms of characteristics unique to the gyroscope or those applications in
1107
- which the dynamic angular inputs are significantly greater than the limitations
1108
- identified in IEEE Std 517. Learn More 529-1980\/Cor 1-2017 IEEE Standard
1109
- Supplement for Strapdown Applications to IEEE Standard Specification Format
1110
- Guide and Test Procedure for Single-Degree-of-Freedom Rate-Integrating Gyros
1111
- - 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
1112
- are made by this corrigendum to material already published in IEEE Std 529-1980.
1113
- Learn More 647-2006 IEEE Standard Specification Format Guide and Test Procedure
1114
- for Single-Axis Laser Gyros Specification and test requirements for a single-axis
1115
- ring laser gyro (RLG) for use as a sensor in attitude control systems, angular
1116
- displacement measuring systems, and angular rate measuring systems are defined.
1117
- A standard specification format guide for the preparation of a single-axis
1118
- RLG is provided. A compilation of recommended procedures for testing an RLG,
1119
- derived from those presently used in the industry, is also provided. Learn
1120
- More 671-1985 IEEE Standard Specification Format Guide and Test Procedure
1121
- for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
1122
- and Displacement A guide is presented for the preparation of a specification
1123
- and test procedure for an inertial angular sensor that provides a common meeting
1124
- ground of terminology and practice for manufacturers and users of an array
1125
- of sensors that have been developed to meet needs not easily met by traditional
1126
- spinning-rotor gyroscopes. A test procedure for verifying that the specifications
1127
- have been met is given. The standard is not intended to compete with existing
1128
- standards for specific devices with highly specific models and error sources,
1129
- such as spring-restrained rate gyros, but to provide a uniform guide for those
1130
- inertial angular sensors that have not been covered elsewhere. Learn More
1131
- 671-1985\/Cor 1-2010 IEEE Standard Specification Format Guide and Test Procedure
1132
- for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
1133
- and Displacement Corrigendum 1: 4.7.2.6 Short-Term Stability and Annex A Sensor
1134
- Dynamic Block Diagrams IEEE Std 671-1985 provides specifications and test
1135
- requirements for a non-gyroscopic inertial angular sensor that may measure
1136
- angular jerk, acceleration, rate, or displacement with or without response
1137
- down to zero frequency. A standard specification format is provided. A compilation
1138
- of recommended test procedures, derived from those presently used in the industry,
1139
- is also provided. Informative annexes cover design features and theoretical
1140
- principles of operation. This corrigendum makes changes to 4.7.2.6 to delete
1141
- a sentence that does not belong there, to add a subclause that was inadvertently
1142
- left out, and to renumber the existing subclauses. Changes are also being
1143
- made to fix the block diagrams in Annex A, to correct a misspelling of inertia,
1144
- and to add a missing symbol. Learn More 836-2009 IEEE Recommended Practice
1145
- for Precision Centrifuge Testing of Linear Accelerometers This recommended
1146
- practice describes the conduct and analysis of precision tests that are to
1147
- be performed on linear accelerometers using centrifuge techniques. The term
1148
- u201cprecision,u201d in this context, refers to tests that are conducted to
1149
- evaluate accelerometer parameters, as opposed to those conducted to establish
1150
- environmental survivability only. Evaluation may take the form of determining
1151
- the coefficients of the accelerometer''s model equation, except for bias and
1152
- scale factor, which are most accurately determined by static multi-position
1153
- tests. Alternatively, evaluation may only establish that the accelerometer
1154
- output complies with specific error limit criteria. Learn More Facebook Twitter
1155
- LinkedIn Instagram YouTube IEEE SA About Us IEEE SA Membership Corporate Program
1156
- Distributor Program Training & Development Policies & Procedures Contact Us
1157
- Board of Governors About Board of Governors Awards Committee Corporate Advisory
1158
- Group Industry Connections Committee Registration Authority Committee Strategic
1159
- Planning Coordination Committee Standards Board About Standards Board Board
1160
- Approvals Audit Committee New Standards Committee Patent Committee Procedures
1161
- Committee Standards Review Committee News & Events News IEEE SA Newsletter
1162
- Events Home Sitemap Contact & Support Accessibility Nondiscrimination Policy
1163
- IEEE Ethics Reporting IEEE Privacy Policy IEEE SA Copyright Policy \u00a9
1164
- Copyright 2021 IEEE \u2013 All rights reserved. Use of this website signifies
1165
- your agreement to the IEEE Terms and Conditions . A not-for-profit organization,
1166
- IEEE is the world\u2019s largest technical professional organization dedicated
1167
- to advancing technology for the benefit of humanity. Subscribe Newswire Sign
1168
- up for our monthly newsletter to learn about new developments, including resources,
1169
- insights and more. "}},{"id":"1f454c3c1d1b8225381c03b93f6289bb9a62e4db6b8208aa0e9403d764b40eaf5545f19a40f487252dbd1c193775b8f344b93ef95bb161c8996090a798bf7ef3","fields":{"meta_keywords_la":["Aerospace
1079
+ to Table 1 on page 14 of IEEE Std 293-1969 Learn More 529-1980 Supplement
1080
+ for Strapdown Applications to IEEE Standard Specification Format Guide and
1081
+ Test Procedure for Single-Degree-of-Freedom Rate-Integrating Gyros A specification
1082
+ format guide for the preparation of a rate-integrating gyroscope specification
1083
+ is presented. Recommended procedures for testing a rate-integrating gyroscope
1084
+ are compiled. This standard, when combined with IEEE Std 517-1974 (R1980),
1085
+ defines the requirements and test procedures in terms of characteristics unique
1086
+ to the gyroscope or those applications in which the dynamic angular inputs
1087
+ are significantly greater than the limitations identified in IEEE Std 517.
1088
+ Learn More 529-1980\/Cor 1-2017 IEEE Standard Supplement for Strapdown Applications
1089
+ to IEEE Standard Specification Format Guide and Test Procedure for Single-Degree-of-Freedom
1090
+ Rate-Integrating Gyros - Corrigendum 1: 3.3.9.2.2, 3.6.4.1.1, 3.6.4.1.2, 6.3,
1091
+ and 10.10.4.1 Corrections are made by this corrigendum to material already
1092
+ published in IEEE Std 529-1980. Learn More 647-2006 IEEE Standard Specification
1093
+ Format Guide and Test Procedure for Single-Axis Laser Gyros Specification
1094
+ and test requirements for a single-axis ring laser gyro (RLG) for use as a
1095
+ sensor in attitude control systems, angular displacement measuring systems,
1096
+ and angular rate measuring systems are defined. A standard specification format
1097
+ guide for the preparation of a single-axis RLG is provided. A compilation
1098
+ of recommended procedures for testing an RLG, derived from those presently
1099
+ used in the industry, is also provided. Learn More 671-1985 IEEE Standard
1100
+ Specification Format Guide and Test Procedure for Nongyroscopic Inertial Angular
1101
+ Sensors: Jerk, Acceleration, Velocity, and Displacement A guide is presented
1102
+ for the preparation of a specification and test procedure for an inertial
1103
+ angular sensor that provides a common meeting ground of terminology and practice
1104
+ for manufacturers and users of an array of sensors that have been developed
1105
+ to meet needs not easily met by traditional spinning-rotor gyroscopes. A test
1106
+ procedure for verifying that the specifications have been met is given. The
1107
+ standard is not intended to compete with existing standards for specific devices
1108
+ with highly specific models and error sources, such as spring-restrained rate
1109
+ gyros, but to provide a uniform guide for those inertial angular sensors that
1110
+ have not been covered elsewhere. Learn More 671-1985\/Cor 1-2010 IEEE Standard
1111
+ Specification Format Guide and Test Procedure for Nongyroscopic Inertial Angular
1112
+ Sensors: Jerk, Acceleration, Velocity, and Displacement Corrigendum 1: 4.7.2.6
1113
+ Short-Term Stability and Annex A Sensor Dynamic Block Diagrams IEEE Std 671-1985
1114
+ provides specifications and test requirements for a non-gyroscopic inertial
1115
+ angular sensor that may measure angular jerk, acceleration, rate, or displacement
1116
+ with or without response down to zero frequency. A standard specification
1117
+ format is provided. A compilation of recommended test procedures, derived
1118
+ from those presently used in the industry, is also provided. Informative annexes
1119
+ cover design features and theoretical principles of operation. This corrigendum
1120
+ makes changes to 4.7.2.6 to delete a sentence that does not belong there,
1121
+ to add a subclause that was inadvertently left out, and to renumber the existing
1122
+ subclauses. Changes are also being made to fix the block diagrams in Annex
1123
+ A, to correct a misspelling of inertia, and to add a missing symbol. Learn
1124
+ More 813-1988 IEEE Specification Format Guide and Test Procedure for Two-Degree-of-Freedom
1125
+ Dynamically Tuned Gyros A format guide for the preparation of a two-degree-of-freedom
1126
+ dynamically tuned gyro (DTG) specification is given that provides a common
1127
+ ground of terminology and practice for manufacturers and users. A compilation
1128
+ of recommended procedures for testing a DTG is also given. The requirements
1129
+ and test procedures are defined in terms unique to the DTG. They cover applications
1130
+ of the gyro as an angular motion sensor in navigation and control systems.
1131
+ They apply to two modes of use: (1) as a strap-down sensor in operating environments
1132
+ typical of aircraft and missile applications, and (2) as a sensor in gimballed
1133
+ platform applications in which the dynamic angular inputs to which the gyro
1134
+ is subjected are benign relative to the accuracy required. In the case of
1135
+ the strap-down DTG, the characteristics of the external capture loops are
1136
+ considered to the extent necessary to define the gyro performance. Learn More
1137
+ 836-2009 IEEE Recommended Practice for Precision Centrifuge Testing of Linear
1138
+ Accelerometers This recommended practice describes the conduct and analysis
1139
+ of precision tests that are to be performed on linear accelerometers using
1140
+ centrifuge techniques. The term u201cprecision,u201d in this context, refers
1141
+ to tests that are conducted to evaluate accelerometer parameters, as opposed
1142
+ to those conducted to establish environmental survivability only. Evaluation
1143
+ may take the form of determining the coefficients of the accelerometer''s
1144
+ model equation, except for bias and scale factor, which are most accurately
1145
+ determined by static multi-position tests. Alternatively, evaluation may only
1146
+ establish that the accelerometer output complies with specific error limit
1147
+ criteria. Learn More Facebook Twitter LinkedIn Instagram YouTube IEEE SA About
1148
+ Us IEEE SA Membership Corporate Program Distributor Program Training & Development
1149
+ Policies & Procedures Contact Us Board of Governors About Board of Governors
1150
+ Awards Committee Corporate Advisory Group Industry Connections Committee Registration
1151
+ Authority Committee Strategic Planning Coordination Committee Standards Board
1152
+ About Standards Board Board Approvals Audit Committee New Standards Committee
1153
+ Patent Committee Procedures Committee Standards Review Committee News & Events
1154
+ News IEEE SA Newsletter Events Home Sitemap Contact & Support Accessibility
1155
+ Nondiscrimination Policy IEEE Ethics Reporting IEEE Privacy Policy IEEE SA
1156
+ Copyright Policy \u00a9 Copyright 2021 IEEE \u2013 All rights reserved. Use
1157
+ of this website signifies your agreement to the IEEE Terms and Conditions
1158
+ . A not-for-profit organization, IEEE is the world\u2019s largest technical
1159
+ professional organization dedicated to advancing technology for the benefit
1160
+ of humanity. Subscribe Newswire Sign up for our monthly newsletter to learn
1161
+ about new developments, including resources, insights and more. "}},{"id":"5aeb29f1e173895ec06817ac31c30346a78b19bac25d687dbdf0076af571b3da207db66e51b3210131b259579c184141df47fc570ecdb419cc84500bdcf99b6a","fields":{"meta_keywords_la":["Aerospace
1170
1162
  Electronics"],"doc_type_l":"text\/html","meta_title_t":"IEEE SA - IEEE Standard
1171
- Specification Format Guide and Test Procedure for Linear Single-Axis, Nongyroscopic
1172
- Accelerometers","meta_type_la":["Standard"],"meta_description_l":"The specification
1173
- and test requirements for a linear, single-axis, nongyroscopic accelerometer
1174
- for use in inertial navigation, guidance, and leveling systems are defined.
1175
- A standard specification guide and a compilation of recommended test procedures
1176
- for such accelerometers are provided. Informative annexes are given on the
1177
- various types of such accelerometers (force or pendulous torque rebalance
1178
- with analog or digital output, vibrating beam, and micromechanical) and error
1179
- effects, on filtering, noise, and transient analysis techniques, and on calibration
1180
- and modeling techniques (multipoint tumble analysis, vibration and shock
1181
- test analyses, and geophysical effects in inertial instrument testing).","meta_topic_la":["Aerospace
1182
- Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/1293\/5590\/","meta_designation_l":"IEEE
1183
- 1293-2018","doc_title_t":"IEEE SA - IEEE 1293-2018","doc_text_t":"IEEE SA
1184
- - IEEE 1293-2018 IEEE.org IEEE Xplore Digital Library IEEE Standards IEEE
1185
- Spectrum More Sites eTools Standards Access Standards Search Standards Standards
1186
- Development Standards Adoption Choose from the many ways to access IEEE SA
1187
- Standards. Choose from individual or organizational access options to get
1188
- the standards you need. Find the standards you\u2019re looking for. Get involved
1189
- in the development of market-driven technology standards with proven expertise
1190
- and dedicated support. Learn more about how to adopt IEEE standards. Products
1163
+ Specification Format Guide and Test Procedure for Single-Axis Laser Gyros","meta_type_la":["Standard"],"meta_description_l":"Specification
1164
+ and test requirements for a single-axis ring laser gyro (RLG) for use as a sensor
1165
+ in attitude control systems, angular displacement measuring systems, and angular
1166
+ rate measuring systems are defined. A standard specification format guide
1167
+ for the preparation of a single-axis RLG is provided. A compilation of recommended
1168
+ procedures for testing an RLG, derived from those presently used in the industry,
1169
+ is also provided.","meta_topic_la":["Aerospace Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/647\/3134\/","meta_designation_l":"IEEE
1170
+ 647-2006","doc_title_t":"IEEE SA - IEEE 647-2006","doc_text_t":"IEEE SA -
1171
+ IEEE 647-2006 IEEE.org IEEE Xplore Digital Library IEEE Standards IEEE Spectrum
1172
+ More Sites eTools Standards Access Standards Search Standards Standards Development
1173
+ Standards Adoption Choose from the many ways to access IEEE SA Standards.
1174
+ Choose from individual or organizational access options to get the standards
1175
+ you need. Find the standards you\u2019re looking for. Get involved in the
1176
+ development of market-driven technology standards with proven expertise and
1177
+ dedicated support. Learn more about how to adopt IEEE standards. Products
1191
1178
  & Programs Alliance Management Services Conformity Assessment & Certification
1192
1179
  IEEE SA Open Source Industry Affiliate Network (IAN) Industry Connections
1193
1180
  The National Electrical Safety Code\u00ae (NESC\u00ae) Registration Authority
@@ -1234,22 +1221,20 @@ http_interactions:
1234
1221
  effectiveness program to enable the success of our vital volunteers. Read
1235
1222
  the latest news on IEEE SA. Subscribe to our newsletter and keep up to date
1236
1223
  on the latest standards, event, and activities. Get the standards you need.
1237
- Select from individual standards or standards bundles. MAC Address Active
1238
- Standard IEEE 1293-2018 IEEE Standard Specification Format Guide and Test
1239
- Procedure for Linear Single-Axis, Nongyroscopic Accelerometers Purchase Access
1240
- via Subscription Home Standards IEEE 1293-2018 The specification and test
1241
- requirements for a linear, single-axis, nongyroscopic accelerometer for use
1242
- in inertial navigation, guidance, and leveling systems are defined. A standard
1243
- specification guide and a compilation of recommended test procedures for such
1244
- accelerometers are provided. Informative annexes are given on the various
1245
- types of such accelerometers (force or pendulous torque rebalance with analog
1246
- or digital output, vibrating beam, and micromechanical) and error effects,
1247
- on filtering, noise, and transient analysis techniques, and on calibration
1248
- and modeling techniques (multipoint tumble analysis, vibration and shock test
1249
- analyses, and geophysical effects in inertial instrument testing). Sponsor
1250
- Committee AES\/GA - Gyro Accelerometer Panel Learn More Status Active Standard
1251
- PAR Approval 2012-11-02 Superseding 1293-1998 Board Approval 2018-10-23 History
1252
- Published: 2019-02-28 Working Group Details Society IEEE Aerospace and Electronic
1224
+ Select from individual standards or standards bundles. MAC Address Inactive-Reserved
1225
+ Standard IEEE 647-2006 IEEE Standard Specification Format Guide and Test Procedure
1226
+ for Single-Axis Laser Gyros Purchase Access via Subscription Home Standards
1227
+ IEEE 647-2006 Specification and test requirements for a single-axis ring laser
1228
+ gyro (RLG) for use as a sensor in attitude control systems, angular displacement
1229
+ measuring systems, and angular rate measuring systems are defined. A standard
1230
+ specification format guide for the preparation of a single-axis RLG is provided.
1231
+ A compilation of recommended procedures for testing an RLG, derived from those
1232
+ presently used in the industry, is also provided. Sponsor Committee AES\/GA
1233
+ - Gyro Accelerometer Panel Learn More Status Inactive-Reserved Standard PAR
1234
+ Approval 2001-05-30 Superseding 647-1995 Board Approval 2006-03-30 History
1235
+ ANSI Approved: 2006-08-08 ANSI Withdrawn Date: 2016-08-19 Published: 2006-09-18
1236
+ Reaffirmed: 2011-12-07 Inactivated Date: 2022-03-24 Additional Resources Errata
1237
+ 647-2006_errata.pdf Working Group Details Society IEEE Aerospace and Electronic
1253
1238
  Systems Society Learn More Sponsor Committee AES\/GA - Gyro Accelerometer
1254
1239
  Panel Learn More Working Group SENSR_WG - Sensors Working Group Learn More
1255
1240
  IEEE Program Manager Soo Kim Contact Working Group Chair Harry Davis Active
@@ -1259,41 +1244,52 @@ http_interactions:
1259
1244
  a single-axis Coriolis vibratory gyro (CVG) for use as a sensor in attitude
1260
1245
  control systems, angular displacement measuring systems, and angular rate
1261
1246
  measuring systems. Informative annexes cover CVG design features and theoretical
1262
- principles of operation. Learn More 528-2019 IEEE Standard for Inertial Sensor
1263
- Terminology Terms and definitions relating to inertial sensors are presented
1264
- in this standard. Usage as understood by the inertial sensor community is
1265
- given preference over general technical usage of the terms herein. The criterion
1266
- for inclusion of a term and its definition in this standard is usefulness
1267
- as related to inertial sensor technology. Learn More 952-2020 IEEE Standard
1268
- for Specifying and Testing Single-Axis Interferometric Fiber Optic Gyros Specification
1269
- and test procedures for a single-axis interferometric fiber optic gyro (IFOG)
1270
- for use as a sensor in attitude control systems, angular displacement measuring
1271
- systems, and angular rate measuring systems are defined. The test procedures
1272
- are derived from those presently used in the industry. Learn More 1293-1998\/Cor
1273
- 1-2008 IEEE Standard Specification Format Guide and Test Procedure for Linear,Single-Axis,
1274
- Nongyroscopic Accelerometers Corrigendum 1: Changes to Annex K and Annex L
1275
- Corrigendum to IEEE Std 1293-1998. Specification and test requirements for
1276
- linear, single-axis, nongyroscopic accelerometers for use as a sensor in attitude
1277
- control systems, linear displacement measuring systems, and linear rate measuring
1278
- systems are defined. The specification format guide and test procedure standard
1279
- applies to force-rebalance accelerometers (pendulous or translational proof
1280
- mass), vibrating beam accelerometers (VBAs), and micromechanical accelerometers
1281
- that range from lesser accuracy to high accuracy devices. Learn More 528-2001
1282
- IEEE Standard for Inertial Sensor Terminology Terms and definitions relating
1283
- to inertial senors are presented in this standard. Usage as understood by
1284
- the inertial sensor community is given preference over general technical usage
1285
- of the terms herein. The criterion for inclusion of a term and its definition
1286
- in this standard is usefulness as related to inertial sensor technology. Learn
1287
- More 952-1997 IEEE Standard Specification Format Guide and Test Procedure
1288
- for Single-Axis Interferometric Fiber Optic Gyros Specification and test requirements
1289
- for a single-axis interferometric fiber optic gyro (IFOG) for use as a sensor
1290
- in attitude control systems, angular displacement measuring systems, and angular
1291
- rate measuring systems are defined. A standard specification format guide
1292
- for the preparation of a single-axis IFOG is provided. A compilation of recommended
1293
- procedures for testing a fiber optic gyro, derived from those presently used
1294
- in the industry, is also provided. Learn More 952-1997\/Cor 1-2016 IEEE Standard
1295
- Specification Format Guide and Test Procedure for Single-Axis Interferometric
1296
- Fiber Optic Gyros -- Corrigendum 1: Figure 1 and Subclauses 5.3.4, 8.3, 12.11.4.3.2,
1247
+ principles of operation. Learn More 1293-2018 IEEE Standard Specification
1248
+ Format Guide and Test Procedure for Linear Single-Axis, Nongyroscopic Accelerometers
1249
+ The specification and test requirements for a linear, single-axis, nongyroscopic
1250
+ accelerometer for use in inertial navigation, guidance, and leveling systems
1251
+ are defined. A standard specification guide and a compilation of recommended
1252
+ test procedures for such accelerometers are provided. Informative annexes
1253
+ are given on the various types of such accelerometers (force or pendulous
1254
+ torque rebalance with analog or digital output, vibrating beam, and micromechanical)
1255
+ and error effects, on filtering, noise, and transient analysis techniques,
1256
+ and on calibration and modeling techniques (multipoint tumble analysis, vibration
1257
+ and shock test analyses, and geophysical effects in inertial instrument testing).
1258
+ Learn More 528-2019 IEEE Standard for Inertial Sensor Terminology Terms and
1259
+ definitions relating to inertial sensors are presented in this standard. Usage
1260
+ as understood by the inertial sensor community is given preference over general
1261
+ technical usage of the terms herein. The criterion for inclusion of a term
1262
+ and its definition in this standard is usefulness as related to inertial sensor
1263
+ technology. Learn More 952-2020 IEEE Standard for Specifying and Testing Single-Axis
1264
+ Interferometric Fiber Optic Gyros Specification and test procedures for a
1265
+ single-axis interferometric fiber optic gyro (IFOG) for use as a sensor in
1266
+ attitude control systems, angular displacement measuring systems, and angular
1267
+ rate measuring systems are defined. The test procedures are derived from those
1268
+ presently used in the industry. Learn More 1293-1998\/Cor 1-2008 IEEE Standard
1269
+ Specification Format Guide and Test Procedure for Linear,Single-Axis, Nongyroscopic
1270
+ Accelerometers Corrigendum 1: Changes to Annex K and Annex L Corrigendum to
1271
+ IEEE Std 1293-1998. Specification and test requirements for linear, single-axis,
1272
+ nongyroscopic accelerometers for use as a sensor in attitude control systems,
1273
+ linear displacement measuring systems, and linear rate measuring systems are
1274
+ defined. The specification format guide and test procedure standard applies
1275
+ to force-rebalance accelerometers (pendulous or translational proof mass),
1276
+ vibrating beam accelerometers (VBAs), and micromechanical accelerometers that
1277
+ range from lesser accuracy to high accuracy devices. Learn More 528-2001 IEEE
1278
+ Standard for Inertial Sensor Terminology Terms and definitions relating to
1279
+ inertial senors are presented in this standard. Usage as understood by the
1280
+ inertial sensor community is given preference over general technical usage
1281
+ of the terms herein. The criterion for inclusion of a term and its definition
1282
+ in this standard is usefulness as related to inertial sensor technology. Learn
1283
+ More 952-1997 IEEE Standard Specification Format Guide and Test Procedure
1284
+ for Single-Axis Interferometric Fiber Optic Gyros Specification and test requirements
1285
+ for a single-axis interferometric fiber optic gyro (IFOG) for use as a sensor
1286
+ in attitude control systems, angular displacement measuring systems, and angular
1287
+ rate measuring systems are defined. A standard specification format guide
1288
+ for the preparation of a single-axis IFOG is provided. A compilation of recommended
1289
+ procedures for testing a fiber optic gyro, derived from those presently used
1290
+ in the industry, is also provided. Learn More 952-1997\/Cor 1-2016 IEEE Standard
1291
+ Specification Format Guide and Test Procedure for Single-Axis Interferometric
1292
+ Fiber Optic Gyros -- Corrigendum 1: Figure 1 and Subclauses 5.3.4, 8.3, 12.11.4.3.2,
1297
1293
  12.11.4.3.3, 12.11.4.3.4, 12.12.3.1, and 12.12.4.1 Errors identified in IEEE
1298
1294
  Std 952-1997 are corrected in this corrigendum. Corrections are made to Figure
1299
1295
  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,
@@ -1346,14 +1342,7 @@ http_interactions:
1346
1342
  Guide and Test Procedure for Single-Degree-of-Freedom Rate-Integrating Gyros
1347
1343
  - 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
1348
1344
  are made by this corrigendum to material already published in IEEE Std 529-1980.
1349
- Learn More 647-2006 IEEE Standard Specification Format Guide and Test Procedure
1350
- for Single-Axis Laser Gyros Specification and test requirements for a single-axis
1351
- ring laser gyro (RLG) for use as a sensor in attitude control systems, angular
1352
- displacement measuring systems, and angular rate measuring systems are defined.
1353
- A standard specification format guide for the preparation of a single-axis
1354
- RLG is provided. A compilation of recommended procedures for testing an RLG,
1355
- derived from those presently used in the industry, is also provided. Learn
1356
- More 671-1985 IEEE Standard Specification Format Guide and Test Procedure
1345
+ Learn More 671-1985 IEEE Standard Specification Format Guide and Test Procedure
1357
1346
  for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
1358
1347
  and Displacement A guide is presented for the preparation of a specification
1359
1348
  and test procedure for an inertial angular sensor that provides a common meeting
@@ -1415,21 +1404,22 @@ http_interactions:
1415
1404
  IEEE is the world\u2019s largest technical professional organization dedicated
1416
1405
  to advancing technology for the benefit of humanity. Subscribe Newswire Sign
1417
1406
  up for our monthly newsletter to learn about new developments, including resources,
1418
- insights and more. "}},{"id":"52eae60b2e77539af2d00032c19addb836f63a63838a98a1e1415ce8b7dc2251a177a0b3bc0831e7f951dfebfee24916a61d3623dbfda9f11f2e8eea97d28e2f","fields":{"meta_keywords_la":["Aerospace
1419
- Electronics"],"doc_type_l":"text\/html","meta_title_t":"IEEE SA - IEEE Recommended
1420
- Practice for Inertial Sensor Test Equipment, Instrumentation, Data Acquisition,
1421
- and Analysis","meta_type_la":["Standard"],"meta_description_l":"Test equipment,
1422
- data acquisition equipment, instrumentation, test facilities, and data analysis
1423
- techniques used in inertial sensor testing are described in this recommended
1424
- practice.","meta_topic_la":["Aerospace Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/1554\/2292\/","meta_designation_l":"IEEE
1425
- 1554-2005","doc_title_t":"IEEE SA - IEEE 1554-2005","doc_text_t":"IEEE SA
1426
- - IEEE 1554-2005 IEEE.org IEEE Xplore Digital Library IEEE Standards IEEE
1427
- Spectrum More Sites eTools Standards Access Standards Search Standards Standards
1428
- Development Standards Adoption Choose from the many ways to access IEEE SA
1429
- Standards. Choose from individual or organizational access options to get
1430
- the standards you need. Find the standards you\u2019re looking for. Get involved
1431
- in the development of market-driven technology standards with proven expertise
1432
- and dedicated support. Learn more about how to adopt IEEE standards. Products
1407
+ insights and more. "}},{"id":"1e7fa450951b3af061c01809cb2a2b51676250c0d1331c7347e03c5433bf478168f717fe2f8de898a11955cc575ef729baee3a2c2e1be936f000d19dcd689a81","fields":{"meta_keywords_la":["Aerospace
1408
+ Electronics"],"doc_type_l":"text\/html","meta_title_t":"IEEE SA - IEEE Standard
1409
+ for Specifying and Testing Single-Axis Interferometric Fiber Optic Gyros","meta_type_la":["Standard"],"meta_description_l":"Specification
1410
+ and test procedures for a single-axis interferometric fiber optic gyro (IFOG)
1411
+ for use as a sensor in attitude control systems, angular displacement measuring
1412
+ systems, and angular rate measuring systems are defined. The test procedures
1413
+ are derived from those presently used in the industry.","meta_topic_la":["Aerospace
1414
+ Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/952\/7496\/","meta_designation_l":"IEEE
1415
+ 952-2020","doc_title_t":"IEEE SA - IEEE 952-2020","doc_text_t":"IEEE SA -
1416
+ IEEE 952-2020 IEEE.org IEEE Xplore Digital Library IEEE Standards IEEE Spectrum
1417
+ More Sites eTools Standards Access Standards Search Standards Standards Development
1418
+ Standards Adoption Choose from the many ways to access IEEE SA Standards.
1419
+ Choose from individual or organizational access options to get the standards
1420
+ you need. Find the standards you\u2019re looking for. Get involved in the
1421
+ development of market-driven technology standards with proven expertise and
1422
+ dedicated support. Learn more about how to adopt IEEE standards. Products
1433
1423
  & Programs Alliance Management Services Conformity Assessment & Certification
1434
1424
  IEEE SA Open Source Industry Affiliate Network (IAN) Industry Connections
1435
1425
  The National Electrical Safety Code\u00ae (NESC\u00ae) Registration Authority
@@ -1476,32 +1466,32 @@ http_interactions:
1476
1466
  effectiveness program to enable the success of our vital volunteers. Read
1477
1467
  the latest news on IEEE SA. Subscribe to our newsletter and keep up to date
1478
1468
  on the latest standards, event, and activities. Get the standards you need.
1479
- Select from individual standards or standards bundles. MAC Address Inactive-Reserved
1480
- Standard IEEE 1554-2005 IEEE Recommended Practice for Inertial Sensor Test
1481
- Equipment, Instrumentation, Data Acquisition, and Analysis Purchase Access
1482
- via Subscription Home Standards IEEE 1554-2005 Test equipment, data acquisition
1483
- equipment, instrumentation, test facilities, and data analysis techniques
1484
- used in inertial sensor testing are described in this recommended practice.
1485
- Sponsor Committee AES\/GA - Gyro Accelerometer Panel Learn More Status Inactive-Reserved
1486
- Standard PAR Approval 1999-09-16 Board Approval 2005-06-09 History ANSI Approved:
1487
- 2005-10-05 Published: 2005-11-28 Reaffirmed: 2011-03-31 Inactivated Date:
1488
- 2022-03-24 Additional Resources Errata 1554-2005_errata.pdf Working Group
1489
- Details Society IEEE Aerospace and Electronic Systems Society Learn More Sponsor
1490
- Committee AES\/GA - Gyro Accelerometer Panel Learn More Working Group SENSR_WG
1491
- - Sensors Working Group Learn More IEEE Program Manager Soo Kim Contact Working
1492
- Group Chair Harry Davis Active Projects Active Standards Superseded Standards
1493
- Inactive-Withdrawn Standards Inactive-Reserved Standards P1431 Standard for
1494
- Specifying and Testing Coriolis Vibratory Gyros This standard defines requirements
1495
- and test procedures for a single-axis Coriolis vibratory gyro (CVG) for use
1496
- as a sensor in attitude control systems, angular displacement measuring systems,
1497
- and angular rate measuring systems. Informative annexes cover CVG design features
1498
- and theoretical principles of operation. Learn More 1293-2018 IEEE Standard
1499
- Specification Format Guide and Test Procedure for Linear Single-Axis, Nongyroscopic
1500
- Accelerometers The specification and test requirements for a linear, single-axis,
1501
- nongyroscopic accelerometer for use in inertial navigation, guidance, and
1502
- leveling systems are defined. A standard specification guide and a compilation
1503
- of recommended test procedures for such accelerometers are provided. Informative
1504
- annexes are given on the various types of such accelerometers (force or pendulous
1469
+ Select from individual standards or standards bundles. MAC Address Active
1470
+ Standard IEEE 952-2020 IEEE Standard for Specifying and Testing Single-Axis
1471
+ Interferometric Fiber Optic Gyros Purchase Access via Subscription Home Standards
1472
+ IEEE 952-2020 Specification and test procedures for a single-axis interferometric
1473
+ fiber optic gyro (IFOG) for use as a sensor in attitude control systems, angular
1474
+ displacement measuring systems, and angular rate measuring systems are defined.
1475
+ The test procedures are derived from those presently used in the industry.
1476
+ Sponsor Committee AES\/GA - Gyro Accelerometer Panel Learn More Status Active
1477
+ Standard PAR Approval 2019-02-08 Superseding 952-1997 Board Approval 2020-09-24
1478
+ History Published: 2021-02-12 Working Group Details Society IEEE Aerospace
1479
+ and Electronic Systems Society Learn More Sponsor Committee AES\/GA - Gyro
1480
+ Accelerometer Panel Learn More Working Group SENSR_WG - Sensors Working Group
1481
+ Learn More IEEE Program Manager Soo Kim Contact Working Group Chair Harry
1482
+ Davis Active Projects Active Standards Superseded Standards Inactive-Withdrawn
1483
+ Standards Inactive-Reserved Standards P1431 Standard for Specifying and Testing
1484
+ Coriolis Vibratory Gyros This standard defines requirements and test procedures
1485
+ for a single-axis Coriolis vibratory gyro (CVG) for use as a sensor in attitude
1486
+ control systems, angular displacement measuring systems, and angular rate
1487
+ measuring systems. Informative annexes cover CVG design features and theoretical
1488
+ principles of operation. Learn More 1293-2018 IEEE Standard Specification
1489
+ Format Guide and Test Procedure for Linear Single-Axis, Nongyroscopic Accelerometers
1490
+ The specification and test requirements for a linear, single-axis, nongyroscopic
1491
+ accelerometer for use in inertial navigation, guidance, and leveling systems
1492
+ are defined. A standard specification guide and a compilation of recommended
1493
+ test procedures for such accelerometers are provided. Informative annexes
1494
+ are given on the various types of such accelerometers (force or pendulous
1505
1495
  torque rebalance with analog or digital output, vibrating beam, and micromechanical)
1506
1496
  and error effects, on filtering, noise, and transient analysis techniques,
1507
1497
  and on calibration and modeling techniques (multipoint tumble analysis, vibration
@@ -1511,52 +1501,51 @@ http_interactions:
1511
1501
  as understood by the inertial sensor community is given preference over general
1512
1502
  technical usage of the terms herein. The criterion for inclusion of a term
1513
1503
  and its definition in this standard is usefulness as related to inertial sensor
1514
- technology. Learn More 952-2020 IEEE Standard for Specifying and Testing Single-Axis
1515
- Interferometric Fiber Optic Gyros Specification and test procedures for a
1516
- single-axis interferometric fiber optic gyro (IFOG) for use as a sensor in
1517
- attitude control systems, angular displacement measuring systems, and angular
1518
- rate measuring systems are defined. The test procedures are derived from those
1519
- presently used in the industry. Learn More 1293-1998\/Cor 1-2008 IEEE Standard
1520
- Specification Format Guide and Test Procedure for Linear,Single-Axis, Nongyroscopic
1521
- Accelerometers Corrigendum 1: Changes to Annex K and Annex L Corrigendum to
1522
- IEEE Std 1293-1998. Specification and test requirements for linear, single-axis,
1523
- nongyroscopic accelerometers for use as a sensor in attitude control systems,
1524
- linear displacement measuring systems, and linear rate measuring systems are
1525
- defined. The specification format guide and test procedure standard applies
1526
- to force-rebalance accelerometers (pendulous or translational proof mass),
1527
- vibrating beam accelerometers (VBAs), and micromechanical accelerometers that
1528
- range from lesser accuracy to high accuracy devices. Learn More 528-2001 IEEE
1529
- Standard for Inertial Sensor Terminology Terms and definitions relating to
1530
- inertial senors are presented in this standard. Usage as understood by the
1531
- inertial sensor community is given preference over general technical usage
1532
- of the terms herein. The criterion for inclusion of a term and its definition
1533
- in this standard is usefulness as related to inertial sensor technology. Learn
1534
- More 952-1997 IEEE Standard Specification Format Guide and Test Procedure
1535
- for Single-Axis Interferometric Fiber Optic Gyros Specification and test requirements
1536
- for a single-axis interferometric fiber optic gyro (IFOG) for use as a sensor
1537
- in attitude control systems, angular displacement measuring systems, and angular
1538
- rate measuring systems are defined. A standard specification format guide
1539
- for the preparation of a single-axis IFOG is provided. A compilation of recommended
1540
- procedures for testing a fiber optic gyro, derived from those presently used
1541
- in the industry, is also provided. Learn More 952-1997\/Cor 1-2016 IEEE Standard
1542
- Specification Format Guide and Test Procedure for Single-Axis Interferometric
1543
- Fiber Optic Gyros -- Corrigendum 1: Figure 1 and Subclauses 5.3.4, 8.3, 12.11.4.3.2,
1544
- 12.11.4.3.3, 12.11.4.3.4, 12.12.3.1, and 12.12.4.1 Errors identified in IEEE
1545
- Std 952-1997 are corrected in this corrigendum. Corrections are made to Figure
1546
- 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,
1547
- and 12.12.4.1. Learn More No Inactive-Withdrawn Standards 1431-2004 IEEE Standard
1548
- Specification Format Guide and Test Procedure for Coriolis Vibratory Gyros
1549
- Specification and test requirements for a single-axis Coriolis vibratory gyro
1550
- (CVG) for use as a sensor in attitude control systems, angular displacement
1551
- measuring systems, and angular rate measuring systems are defined. A stadard
1552
- specification format guide for the preparation of a single-axis CVG is provided.
1553
- A complilation of recommended procedures for testing a CVG, derived from those
1554
- presently used in the industry, is also provided. Informative annexes cover
1555
- CVG design features and theoretical principles of operation. Learn More 1431-2004\/Cor
1504
+ technology. Learn More 1293-1998\/Cor 1-2008 IEEE Standard Specification Format
1505
+ Guide and Test Procedure for Linear,Single-Axis, Nongyroscopic Accelerometers
1506
+ Corrigendum 1: Changes to Annex K and Annex L Corrigendum to IEEE Std 1293-1998.
1507
+ Specification and test requirements for linear, single-axis, nongyroscopic
1508
+ accelerometers for use as a sensor in attitude control systems, linear displacement
1509
+ measuring systems, and linear rate measuring systems are defined. The specification
1510
+ format guide and test procedure standard applies to force-rebalance accelerometers
1511
+ (pendulous or translational proof mass), vibrating beam accelerometers (VBAs),
1512
+ and micromechanical accelerometers that range from lesser accuracy to high
1513
+ accuracy devices. Learn More 528-2001 IEEE Standard for Inertial Sensor Terminology
1514
+ Terms and definitions relating to inertial senors are presented in this standard.
1515
+ Usage as understood by the inertial sensor community is given preference over
1516
+ general technical usage of the terms herein. The criterion for inclusion of
1517
+ a term and its definition in this standard is usefulness as related to inertial
1518
+ sensor technology. Learn More 952-1997 IEEE Standard Specification Format
1519
+ Guide and Test Procedure for Single-Axis Interferometric Fiber Optic Gyros
1520
+ Specification and test requirements for a single-axis interferometric fiber
1521
+ optic gyro (IFOG) for use as a sensor in attitude control systems, angular
1522
+ displacement measuring systems, and angular rate measuring systems are defined.
1523
+ A standard specification format guide for the preparation of a single-axis
1524
+ IFOG is provided. A compilation of recommended procedures for testing a fiber
1525
+ optic gyro, derived from those presently used in the industry, is also provided.
1526
+ Learn More 952-1997\/Cor 1-2016 IEEE Standard Specification Format Guide and
1527
+ Test Procedure for Single-Axis Interferometric Fiber Optic Gyros -- Corrigendum
1528
+ 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,
1529
+ 12.12.3.1, and 12.12.4.1 Errors identified in IEEE Std 952-1997 are corrected
1530
+ in this corrigendum. Corrections are made to Figure 1 and in subclauses 5.3.4,
1531
+ 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
1532
+ More No Inactive-Withdrawn Standards 1431-2004 IEEE Standard Specification
1533
+ Format Guide and Test Procedure for Coriolis Vibratory Gyros Specification
1534
+ and test requirements for a single-axis Coriolis vibratory gyro (CVG) for
1535
+ use as a sensor in attitude control systems, angular displacement measuring
1536
+ systems, and angular rate measuring systems are defined. A stadard specification
1537
+ format guide for the preparation of a single-axis CVG is provided. A complilation
1538
+ of recommended procedures for testing a CVG, derived from those presently
1539
+ used in the industry, is also provided. Informative annexes cover CVG design
1540
+ features and theoretical principles of operation. Learn More 1431-2004\/Cor
1556
1541
  1-2008 IEEE Standard Specification Format Guide and Test Procedure for Coriolis
1557
1542
  Vibratory Gyros - Corrigendum 1 Corrigendum to IEEE Std 1431-2004. Learn More
1558
- 292-1969 IEEE Specification Format for Single-Degree-of-Freedom Spring-Restrained
1559
- Rate Gyros This specification defines the requirements for a single-degree-of-freedom
1543
+ 1554-2005 IEEE Recommended Practice for Inertial Sensor Test Equipment, Instrumentation,
1544
+ Data Acquisition, and Analysis Test equipment, data acquisition equipment,
1545
+ instrumentation, test facilities, and data analysis techniques used in inertial
1546
+ sensor testing are described in this recommended practice. Learn More 292-1969
1547
+ IEEE Specification Format for Single-Degree-of-Freedom Spring-Restrained Rate
1548
+ Gyros This specification defines the requirements for a single-degree-of-freedom
1560
1549
  spring-restrained rate gyro for [aircraft, missile, spacecraft,______] applications.
1561
1550
  The rate gyro shall be capable of providing [(dc, ac) voltage outputs proportional
1562
1551
  to angular rate inputs up to______ degrees per second, a switch closure(s)
@@ -2146,23 +2135,28 @@ http_interactions:
2146
2135
  . A not-for-profit organization, IEEE is the world\u2019s largest technical
2147
2136
  professional organization dedicated to advancing technology for the benefit
2148
2137
  of humanity. Subscribe Newswire Sign up for our monthly newsletter to learn
2149
- about new developments, including resources, insights and more. "}},{"id":"3fc0c715deec41762b0998457967e6feb2e27945928e2467bfb2f2923a4976a89ba4567595790403dcd8f650e2906a80c9826aa4cd52d5af78f7195707928ce0","fields":{"meta_keywords_la":["Aerospace
2138
+ about new developments, including resources, insights and more. "}},{"id":"1f454c3c1d1b8225381c03b93f6289bb9a62e4db6b8208aa0e9403d764b40eaf5545f19a40f487252dbd1c193775b8f344b93ef95bb161c8996090a798bf7ef3","fields":{"meta_keywords_la":["Aerospace
2150
2139
  Electronics"],"doc_type_l":"text\/html","meta_title_t":"IEEE SA - IEEE Standard
2151
- Specification Format Guide and Test Procedure for Single-Degree-of-Freedom
2152
- Rate-Integrating Gyros","meta_type_la":["Standard"],"meta_description_l":"A
2153
- specification format guide for the preparation of a rate-integrating gyro
2154
- specification that provides a common meeting ground of terminology and practice
2155
- for manufacturers and users is presented. A compilation of recommended procedures
2156
- for testing a rate-integrating gyro is given.","meta_topic_la":["Aerospace
2157
- Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/517\/760\/","meta_designation_l":"IEEE
2158
- 517-1974","doc_title_t":"IEEE SA - IEEE 517-1974","doc_text_t":"IEEE SA -
2159
- IEEE 517-1974 IEEE.org IEEE Xplore Digital Library IEEE Standards IEEE Spectrum
2160
- More Sites eTools Standards Access Standards Search Standards Standards Development
2161
- Standards Adoption Choose from the many ways to access IEEE SA Standards.
2162
- Choose from individual or organizational access options to get the standards
2163
- you need. Find the standards you\u2019re looking for. Get involved in the
2164
- development of market-driven technology standards with proven expertise and
2165
- dedicated support. Learn more about how to adopt IEEE standards. Products
2140
+ Specification Format Guide and Test Procedure for Linear Single-Axis, Nongyroscopic
2141
+ Accelerometers","meta_type_la":["Standard"],"meta_description_l":"The specification
2142
+ and test requirements for a linear, single-axis, nongyroscopic accelerometer
2143
+ for use in inertial navigation, guidance, and leveling systems are defined.
2144
+ A standard specification guide and a compilation of recommended test procedures
2145
+ for such accelerometers are provided. Informative annexes are given on the
2146
+ various types of such accelerometers (force or pendulous torque rebalance
2147
+ with analog or digital output, vibrating beam, and micromechanical) and error
2148
+ effects, on filtering, noise, and transient analysis techniques, and on calibration
2149
+ and modeling techniques (multipoint tumble analysis, vibration and shock
2150
+ test analyses, and geophysical effects in inertial instrument testing).","meta_topic_la":["Aerospace
2151
+ Electronics"],"doc_id_l":"https:\/\/standards.ieee.org\/ieee\/1293\/5590\/","meta_designation_l":"IEEE
2152
+ 1293-2018","doc_title_t":"IEEE SA - IEEE 1293-2018","doc_text_t":"IEEE SA
2153
+ - IEEE 1293-2018 IEEE.org IEEE Xplore Digital Library IEEE Standards IEEE
2154
+ Spectrum More Sites eTools Standards Access Standards Search Standards Standards
2155
+ Development Standards Adoption Choose from the many ways to access IEEE SA
2156
+ Standards. Choose from individual or organizational access options to get
2157
+ the standards you need. Find the standards you\u2019re looking for. Get involved
2158
+ in the development of market-driven technology standards with proven expertise
2159
+ and dedicated support. Learn more about how to adopt IEEE standards. Products
2166
2160
  & Programs Alliance Management Services Conformity Assessment & Certification
2167
2161
  IEEE SA Open Source Industry Affiliate Network (IAN) Industry Connections
2168
2162
  The National Electrical Safety Code\u00ae (NESC\u00ae) Registration Authority
@@ -2209,60 +2203,54 @@ http_interactions:
2209
2203
  effectiveness program to enable the success of our vital volunteers. Read
2210
2204
  the latest news on IEEE SA. Subscribe to our newsletter and keep up to date
2211
2205
  on the latest standards, event, and activities. Get the standards you need.
2212
- Select from individual standards or standards bundles. MAC Address Inactive-Reserved
2213
- Standard IEEE 517-1974 IEEE Standard Specification Format Guide and Test Procedure
2214
- for Single-Degree-of-Freedom Rate-Integrating Gyros Purchase Access via Subscription
2215
- Home Standards IEEE 517-1974 A specification format guide for the preparation
2216
- of a rate-integrating gyro specification that provides a common meeting ground
2217
- of terminology and practice for manufacturers and users is presented. A compilation
2218
- of recommended procedures for testing a rate-integrating gyro is given. Sponsor
2219
- Committee AES\/GA - Gyro Accelerometer Panel Learn More Status Inactive-Reserved
2220
- Standard Board Approval 1973-12-13 History ANSI Approved: 1983-05-30 Published:
2221
- 1974-10-17 Reaffirmed: 2010-09-30 Inactivated Date: 2021-03-25 Additional
2222
- Resources Errata 517-1974_errata.pdf Working Group Details Society IEEE Aerospace
2223
- and Electronic Systems Society Learn More Sponsor Committee AES\/GA - Gyro
2224
- Accelerometer Panel Learn More Working Group SENSR_WG - Sensors Working Group
2225
- Learn More IEEE Program Manager Soo Kim Contact Working Group Chair Harry
2226
- Davis Active Projects Active Standards Superseded Standards Inactive-Withdrawn
2227
- Standards Inactive-Reserved Standards P1431 Standard for Specifying and Testing
2228
- Coriolis Vibratory Gyros This standard defines requirements and test procedures
2229
- for a single-axis Coriolis vibratory gyro (CVG) for use as a sensor in attitude
2206
+ Select from individual standards or standards bundles. MAC Address Active
2207
+ Standard IEEE 1293-2018 IEEE Standard Specification Format Guide and Test
2208
+ Procedure for Linear Single-Axis, Nongyroscopic Accelerometers Purchase Access
2209
+ via Subscription Home Standards IEEE 1293-2018 The specification and test
2210
+ requirements for a linear, single-axis, nongyroscopic accelerometer for use
2211
+ in inertial navigation, guidance, and leveling systems are defined. A standard
2212
+ specification guide and a compilation of recommended test procedures for such
2213
+ accelerometers are provided. Informative annexes are given on the various
2214
+ types of such accelerometers (force or pendulous torque rebalance with analog
2215
+ or digital output, vibrating beam, and micromechanical) and error effects,
2216
+ on filtering, noise, and transient analysis techniques, and on calibration
2217
+ and modeling techniques (multipoint tumble analysis, vibration and shock test
2218
+ analyses, and geophysical effects in inertial instrument testing). Sponsor
2219
+ Committee AES\/GA - Gyro Accelerometer Panel Learn More Status Active Standard
2220
+ PAR Approval 2012-11-02 Superseding 1293-1998 Board Approval 2018-10-23 History
2221
+ Published: 2019-02-28 Working Group Details Society IEEE Aerospace and Electronic
2222
+ Systems Society Learn More Sponsor Committee AES\/GA - Gyro Accelerometer
2223
+ Panel Learn More Working Group SENSR_WG - Sensors Working Group Learn More
2224
+ IEEE Program Manager Soo Kim Contact Working Group Chair Harry Davis Active
2225
+ Projects Active Standards Superseded Standards Inactive-Withdrawn Standards
2226
+ Inactive-Reserved Standards P1431 Standard for Specifying and Testing Coriolis
2227
+ Vibratory Gyros This standard defines requirements and test procedures for
2228
+ a single-axis Coriolis vibratory gyro (CVG) for use as a sensor in attitude
2230
2229
  control systems, angular displacement measuring systems, and angular rate
2231
2230
  measuring systems. Informative annexes cover CVG design features and theoretical
2232
- principles of operation. Learn More 1293-2018 IEEE Standard Specification
2233
- Format Guide and Test Procedure for Linear Single-Axis, Nongyroscopic Accelerometers
2234
- The specification and test requirements for a linear, single-axis, nongyroscopic
2235
- accelerometer for use in inertial navigation, guidance, and leveling systems
2236
- are defined. A standard specification guide and a compilation of recommended
2237
- test procedures for such accelerometers are provided. Informative annexes
2238
- are given on the various types of such accelerometers (force or pendulous
2239
- torque rebalance with analog or digital output, vibrating beam, and micromechanical)
2240
- and error effects, on filtering, noise, and transient analysis techniques,
2241
- and on calibration and modeling techniques (multipoint tumble analysis, vibration
2242
- and shock test analyses, and geophysical effects in inertial instrument testing).
2243
- Learn More 528-2019 IEEE Standard for Inertial Sensor Terminology Terms and
2244
- definitions relating to inertial sensors are presented in this standard. Usage
2245
- as understood by the inertial sensor community is given preference over general
2246
- technical usage of the terms herein. The criterion for inclusion of a term
2247
- and its definition in this standard is usefulness as related to inertial sensor
2248
- technology. Learn More 952-2020 IEEE Standard for Specifying and Testing Single-Axis
2249
- Interferometric Fiber Optic Gyros Specification and test procedures for a
2250
- single-axis interferometric fiber optic gyro (IFOG) for use as a sensor in
2251
- attitude control systems, angular displacement measuring systems, and angular
2252
- rate measuring systems are defined. The test procedures are derived from those
2253
- presently used in the industry. Learn More 1293-1998\/Cor 1-2008 IEEE Standard
2254
- Specification Format Guide and Test Procedure for Linear,Single-Axis, Nongyroscopic
2255
- Accelerometers Corrigendum 1: Changes to Annex K and Annex L Corrigendum to
2256
- IEEE Std 1293-1998. Specification and test requirements for linear, single-axis,
2257
- nongyroscopic accelerometers for use as a sensor in attitude control systems,
2258
- linear displacement measuring systems, and linear rate measuring systems are
2259
- defined. The specification format guide and test procedure standard applies
2260
- to force-rebalance accelerometers (pendulous or translational proof mass),
2261
- vibrating beam accelerometers (VBAs), and micromechanical accelerometers that
2262
- range from lesser accuracy to high accuracy devices. Learn More 528-2001 IEEE
2263
- Standard for Inertial Sensor Terminology Terms and definitions relating to
2264
- inertial senors are presented in this standard. Usage as understood by the
2265
- inertial sensor community is given preference over general technical usage
2231
+ principles of operation. Learn More 528-2019 IEEE Standard for Inertial Sensor
2232
+ Terminology Terms and definitions relating to inertial sensors are presented
2233
+ in this standard. Usage as understood by the inertial sensor community is
2234
+ given preference over general technical usage of the terms herein. The criterion
2235
+ for inclusion of a term and its definition in this standard is usefulness
2236
+ as related to inertial sensor technology. Learn More 952-2020 IEEE Standard
2237
+ for Specifying and Testing Single-Axis Interferometric Fiber Optic Gyros Specification
2238
+ and test procedures for a single-axis interferometric fiber optic gyro (IFOG)
2239
+ for use as a sensor in attitude control systems, angular displacement measuring
2240
+ systems, and angular rate measuring systems are defined. The test procedures
2241
+ are derived from those presently used in the industry. Learn More 1293-1998\/Cor
2242
+ 1-2008 IEEE Standard Specification Format Guide and Test Procedure for Linear,Single-Axis,
2243
+ Nongyroscopic Accelerometers Corrigendum 1: Changes to Annex K and Annex L
2244
+ Corrigendum to IEEE Std 1293-1998. Specification and test requirements for
2245
+ linear, single-axis, nongyroscopic accelerometers for use as a sensor in attitude
2246
+ control systems, linear displacement measuring systems, and linear rate measuring
2247
+ systems are defined. The specification format guide and test procedure standard
2248
+ applies to force-rebalance accelerometers (pendulous or translational proof
2249
+ mass), vibrating beam accelerometers (VBAs), and micromechanical accelerometers
2250
+ that range from lesser accuracy to high accuracy devices. Learn More 528-2001
2251
+ IEEE Standard for Inertial Sensor Terminology Terms and definitions relating
2252
+ to inertial senors are presented in this standard. Usage as understood by
2253
+ the inertial sensor community is given preference over general technical usage
2266
2254
  of the terms herein. The criterion for inclusion of a term and its definition
2267
2255
  in this standard is usefulness as related to inertial sensor technology. Learn
2268
2256
  More 952-1997 IEEE Standard Specification Format Guide and Test Procedure
@@ -2308,146 +2296,162 @@ http_interactions:
2308
2296
  Format for Single-Degree-of-Freedom Spring-Restrained Rate Gyros. Learn More
2309
2297
  293-1969\/Cor 1-2014 IEEE Standard for IEEE Test Procedure for Single-Degree-of-Freedom
2310
2298
  Spring-Restrained Rate Gyros -- Corrigendum 1: Table 1 Heading Correction
2311
- to Table 1 on page 14 of IEEE Std 293-1969 Learn More 529-1980 Supplement
2312
- for Strapdown Applications to IEEE Standard Specification Format Guide and
2313
- Test Procedure for Single-Degree-of-Freedom Rate-Integrating Gyros A specification
2314
- format guide for the preparation of a rate-integrating gyroscope specification
2315
- is presented. Recommended procedures for testing a rate-integrating gyroscope
2316
- are compiled. This standard, when combined with IEEE Std 517-1974 (R1980),
2317
- defines the requirements and test procedures in terms of characteristics unique
2318
- to the gyroscope or those applications in which the dynamic angular inputs
2319
- are significantly greater than the limitations identified in IEEE Std 517.
2320
- Learn More 529-1980\/Cor 1-2017 IEEE Standard Supplement for Strapdown Applications
2321
- to IEEE Standard Specification Format Guide and Test Procedure for Single-Degree-of-Freedom
2322
- Rate-Integrating Gyros - Corrigendum 1: 3.3.9.2.2, 3.6.4.1.1, 3.6.4.1.2, 6.3,
2323
- and 10.10.4.1 Corrections are made by this corrigendum to material already
2324
- published in IEEE Std 529-1980. Learn More 647-2006 IEEE Standard Specification
2325
- Format Guide and Test Procedure for Single-Axis Laser Gyros Specification
2326
- and test requirements for a single-axis ring laser gyro (RLG) for use as a
2327
- sensor in attitude control systems, angular displacement measuring systems,
2328
- and angular rate measuring systems are defined. A standard specification format
2329
- guide for the preparation of a single-axis RLG is provided. A compilation
2330
- of recommended procedures for testing an RLG, derived from those presently
2331
- used in the industry, is also provided. Learn More 671-1985 IEEE Standard
2332
- Specification Format Guide and Test Procedure for Nongyroscopic Inertial Angular
2333
- Sensors: Jerk, Acceleration, Velocity, and Displacement A guide is presented
2334
- for the preparation of a specification and test procedure for an inertial
2335
- angular sensor that provides a common meeting ground of terminology and practice
2336
- for manufacturers and users of an array of sensors that have been developed
2337
- to meet needs not easily met by traditional spinning-rotor gyroscopes. A test
2338
- procedure for verifying that the specifications have been met is given. The
2339
- standard is not intended to compete with existing standards for specific devices
2340
- with highly specific models and error sources, such as spring-restrained rate
2341
- gyros, but to provide a uniform guide for those inertial angular sensors that
2342
- have not been covered elsewhere. Learn More 671-1985\/Cor 1-2010 IEEE Standard
2343
- Specification Format Guide and Test Procedure for Nongyroscopic Inertial Angular
2344
- Sensors: Jerk, Acceleration, Velocity, and Displacement Corrigendum 1: 4.7.2.6
2345
- Short-Term Stability and Annex A Sensor Dynamic Block Diagrams IEEE Std 671-1985
2346
- provides specifications and test requirements for a non-gyroscopic inertial
2347
- angular sensor that may measure angular jerk, acceleration, rate, or displacement
2348
- with or without response down to zero frequency. A standard specification
2349
- format is provided. A compilation of recommended test procedures, derived
2350
- from those presently used in the industry, is also provided. Informative annexes
2351
- cover design features and theoretical principles of operation. This corrigendum
2352
- makes changes to 4.7.2.6 to delete a sentence that does not belong there,
2353
- to add a subclause that was inadvertently left out, and to renumber the existing
2354
- subclauses. Changes are also being made to fix the block diagrams in Annex
2355
- A, to correct a misspelling of inertia, and to add a missing symbol. Learn
2356
- More 813-1988 IEEE Specification Format Guide and Test Procedure for Two-Degree-of-Freedom
2357
- Dynamically Tuned Gyros A format guide for the preparation of a two-degree-of-freedom
2358
- dynamically tuned gyro (DTG) specification is given that provides a common
2359
- ground of terminology and practice for manufacturers and users. A compilation
2360
- of recommended procedures for testing a DTG is also given. The requirements
2361
- and test procedures are defined in terms unique to the DTG. They cover applications
2362
- of the gyro as an angular motion sensor in navigation and control systems.
2363
- They apply to two modes of use: (1) as a strap-down sensor in operating environments
2364
- typical of aircraft and missile applications, and (2) as a sensor in gimballed
2365
- platform applications in which the dynamic angular inputs to which the gyro
2366
- is subjected are benign relative to the accuracy required. In the case of
2367
- the strap-down DTG, the characteristics of the external capture loops are
2368
- considered to the extent necessary to define the gyro performance. Learn More
2369
- 836-2009 IEEE Recommended Practice for Precision Centrifuge Testing of Linear
2370
- Accelerometers This recommended practice describes the conduct and analysis
2371
- of precision tests that are to be performed on linear accelerometers using
2372
- centrifuge techniques. The term u201cprecision,u201d in this context, refers
2373
- to tests that are conducted to evaluate accelerometer parameters, as opposed
2374
- to those conducted to establish environmental survivability only. Evaluation
2375
- may take the form of determining the coefficients of the accelerometer''s
2376
- model equation, except for bias and scale factor, which are most accurately
2377
- determined by static multi-position tests. Alternatively, evaluation may only
2378
- establish that the accelerometer output complies with specific error limit
2379
- criteria. Learn More Facebook Twitter LinkedIn Instagram YouTube IEEE SA About
2380
- Us IEEE SA Membership Corporate Program Distributor Program Training & Development
2381
- Policies & Procedures Contact Us Board of Governors About Board of Governors
2382
- Awards Committee Corporate Advisory Group Industry Connections Committee Registration
2383
- Authority Committee Strategic Planning Coordination Committee Standards Board
2384
- About Standards Board Board Approvals Audit Committee New Standards Committee
2385
- Patent Committee Procedures Committee Standards Review Committee News & Events
2386
- News IEEE SA Newsletter Events Home Sitemap Contact & Support Accessibility
2387
- Nondiscrimination Policy IEEE Ethics Reporting IEEE Privacy Policy IEEE SA
2388
- Copyright Policy \u00a9 Copyright 2021 IEEE \u2013 All rights reserved. Use
2389
- of this website signifies your agreement to the IEEE Terms and Conditions
2390
- . A not-for-profit organization, IEEE is the world\u2019s largest technical
2391
- professional organization dedicated to advancing technology for the benefit
2392
- of humanity. Subscribe Newswire Sign up for our monthly newsletter to learn
2393
- about new developments, including resources, insights and more. "}}]},"facets":{"meta_categories_la":{"buckets":[]},"meta_topic_la":{"buckets":[{"value":"Aerospace
2299
+ to Table 1 on page 14 of IEEE Std 293-1969 Learn More 517-1974 IEEE Standard
2300
+ Specification Format Guide and Test Procedure for Single-Degree-of-Freedom
2301
+ Rate-Integrating Gyros A specification format guide for the preparation of
2302
+ a rate-integrating gyro specification that provides a common meeting ground
2303
+ of terminology and practice for manufacturers and users is presented. A compilation
2304
+ of recommended procedures for testing a rate-integrating gyro is given. Learn
2305
+ More 529-1980 Supplement for Strapdown Applications to IEEE Standard Specification
2306
+ Format Guide and Test Procedure for Single-Degree-of-Freedom Rate-Integrating
2307
+ Gyros A specification format guide for the preparation of a rate-integrating
2308
+ gyroscope specification is presented. Recommended procedures for testing a
2309
+ rate-integrating gyroscope are compiled. This standard, when combined with
2310
+ IEEE Std 517-1974 (R1980), defines the requirements and test procedures in
2311
+ terms of characteristics unique to the gyroscope or those applications in
2312
+ which the dynamic angular inputs are significantly greater than the limitations
2313
+ identified in IEEE Std 517. Learn More 529-1980\/Cor 1-2017 IEEE Standard
2314
+ Supplement for Strapdown Applications to IEEE Standard Specification Format
2315
+ Guide and Test Procedure for Single-Degree-of-Freedom Rate-Integrating Gyros
2316
+ - 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
2317
+ are made by this corrigendum to material already published in IEEE Std 529-1980.
2318
+ Learn More 647-2006 IEEE Standard Specification Format Guide and Test Procedure
2319
+ for Single-Axis Laser Gyros Specification and test requirements for a single-axis
2320
+ ring laser gyro (RLG) for use as a sensor in attitude control systems, angular
2321
+ displacement measuring systems, and angular rate measuring systems are defined.
2322
+ A standard specification format guide for the preparation of a single-axis
2323
+ RLG is provided. A compilation of recommended procedures for testing an RLG,
2324
+ derived from those presently used in the industry, is also provided. Learn
2325
+ More 671-1985 IEEE Standard Specification Format Guide and Test Procedure
2326
+ for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
2327
+ and Displacement A guide is presented for the preparation of a specification
2328
+ and test procedure for an inertial angular sensor that provides a common meeting
2329
+ ground of terminology and practice for manufacturers and users of an array
2330
+ of sensors that have been developed to meet needs not easily met by traditional
2331
+ spinning-rotor gyroscopes. A test procedure for verifying that the specifications
2332
+ have been met is given. The standard is not intended to compete with existing
2333
+ standards for specific devices with highly specific models and error sources,
2334
+ such as spring-restrained rate gyros, but to provide a uniform guide for those
2335
+ inertial angular sensors that have not been covered elsewhere. Learn More
2336
+ 671-1985\/Cor 1-2010 IEEE Standard Specification Format Guide and Test Procedure
2337
+ for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
2338
+ and Displacement Corrigendum 1: 4.7.2.6 Short-Term Stability and Annex A Sensor
2339
+ Dynamic Block Diagrams IEEE Std 671-1985 provides specifications and test
2340
+ requirements for a non-gyroscopic inertial angular sensor that may measure
2341
+ angular jerk, acceleration, rate, or displacement with or without response
2342
+ down to zero frequency. A standard specification format is provided. A compilation
2343
+ of recommended test procedures, derived from those presently used in the industry,
2344
+ is also provided. Informative annexes cover design features and theoretical
2345
+ principles of operation. This corrigendum makes changes to 4.7.2.6 to delete
2346
+ a sentence that does not belong there, to add a subclause that was inadvertently
2347
+ left out, and to renumber the existing subclauses. Changes are also being
2348
+ made to fix the block diagrams in Annex A, to correct a misspelling of inertia,
2349
+ and to add a missing symbol. Learn More 813-1988 IEEE Specification Format
2350
+ Guide and Test Procedure for Two-Degree-of-Freedom Dynamically Tuned Gyros
2351
+ A format guide for the preparation of a two-degree-of-freedom dynamically
2352
+ tuned gyro (DTG) specification is given that provides a common ground of terminology
2353
+ and practice for manufacturers and users. A compilation of recommended procedures
2354
+ for testing a DTG is also given. The requirements and test procedures are
2355
+ defined in terms unique to the DTG. They cover applications of the gyro as
2356
+ an angular motion sensor in navigation and control systems. They apply to
2357
+ two modes of use: (1) as a strap-down sensor in operating environments typical
2358
+ of aircraft and missile applications, and (2) as a sensor in gimballed platform
2359
+ applications in which the dynamic angular inputs to which the gyro is subjected
2360
+ are benign relative to the accuracy required. In the case of the strap-down
2361
+ DTG, the characteristics of the external capture loops are considered to the
2362
+ extent necessary to define the gyro performance. Learn More 836-2009 IEEE
2363
+ Recommended Practice for Precision Centrifuge Testing of Linear Accelerometers
2364
+ This recommended practice describes the conduct and analysis of precision
2365
+ tests that are to be performed on linear accelerometers using centrifuge techniques.
2366
+ The term u201cprecision,u201d in this context, refers to tests that are conducted
2367
+ to evaluate accelerometer parameters, as opposed to those conducted to establish
2368
+ environmental survivability only. Evaluation may take the form of determining
2369
+ the coefficients of the accelerometer''s model equation, except for bias and
2370
+ scale factor, which are most accurately determined by static multi-position
2371
+ tests. Alternatively, evaluation may only establish that the accelerometer
2372
+ output complies with specific error limit criteria. Learn More Facebook Twitter
2373
+ LinkedIn Instagram YouTube IEEE SA About Us IEEE SA Membership Corporate Program
2374
+ Distributor Program Training & Development Policies & Procedures Contact Us
2375
+ Board of Governors About Board of Governors Awards Committee Corporate Advisory
2376
+ Group Industry Connections Committee Registration Authority Committee Strategic
2377
+ Planning Coordination Committee Standards Board About Standards Board Board
2378
+ Approvals Audit Committee New Standards Committee Patent Committee Procedures
2379
+ Committee Standards Review Committee News & Events News IEEE SA Newsletter
2380
+ Events Home Sitemap Contact & Support Accessibility Nondiscrimination Policy
2381
+ IEEE Ethics Reporting IEEE Privacy Policy IEEE SA Copyright Policy \u00a9
2382
+ Copyright 2021 IEEE \u2013 All rights reserved. Use of this website signifies
2383
+ your agreement to the IEEE Terms and Conditions . A not-for-profit organization,
2384
+ IEEE is the world\u2019s largest technical professional organization dedicated
2385
+ to advancing technology for the benefit of humanity. Subscribe Newswire Sign
2386
+ up for our monthly newsletter to learn about new developments, including resources,
2387
+ insights and more. "}}]},"facets":{"meta_categories_la":{"buckets":[]},"meta_topic_la":{"buckets":[{"value":"Aerospace
2394
2388
  Electronics","count":19},{"value":"Aerospace Electronics,Power and Energy","count":3},{"value":"Nuclear
2395
2389
  Power","count":1}]},"meta_type_la":{"buckets":[{"value":"Standard","count":22},{"value":"Page","count":1},{"value":"Project","count":1}]}}},"html":"<h3
2396
2390
  class=\"h6 results-found\"><strong>24<\/strong> results found. Results are
2397
- sorted by relevance.<\/h3><div class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/528\/7292\/\">
2398
- IEEE 528-2019<\/a><\/h4><div class=\"content\">Terms and definitions relating
2399
- to inertial sensors are presented in this standard. Usage as understood by
2400
- the inertial sensor community is given preference over general technical usage
2401
- of the terms herein. The criterion for inclusion of a term and its&hellip;<\/div><\/div><div
2402
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/528\/780\/\">
2403
- IEEE 528-2001<\/a><\/h4><div class=\"content\">Terms and definitions relating
2404
- to inertial senors are presented in this standard. Usage as understood by
2405
- the inertial sensor community is given preference over general technical usage
2406
- of the terms herein. The criterion for inclusion of a term and its&hellip;<\/div><\/div><div
2407
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/tag\/aerospace-electronics\/\">
2408
- Tag: Aerospace-electronics<\/a><\/h4><div class=\"content\">Letter terms in
2409
- common usage are related to the frequency ranges that they represent in this
2410
- standard.<\/div><\/div><div class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/836\/3449\/\">
2411
- IEEE 836-2009<\/a><\/h4><div class=\"content\">This recommended practice describes
2412
- the conduct and analysis of precision tests that are to be performed on linear
2413
- accelerometers using centrifuge techniques. The term \u201cprecision,\u201d
2414
- in this context, refers to tests that are conducted to evaluate accelerometer
2415
- parameters, as opposed&hellip;<\/div><\/div><div class=\"hit\"><h4 class=\"title\"><a
2416
- href=\"https:\/\/standards.ieee.org\/ieee\/813\/1200\/\"> IEEE 813-1988<\/a><\/h4><div
2417
- class=\"content\">A format guide for the preparation of a two-degree-of-freedom
2418
- dynamically tuned gyro (DTG) specification is given that provides a common
2419
- ground of terminology and practice for manufacturers and users. A compilation
2420
- of recommended procedures for testing a DTG is also&hellip;<\/div><\/div><div
2421
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/1293\/5590\/\">
2422
- IEEE 1293-2018<\/a><\/h4><div class=\"content\">The specification and test
2423
- requirements for a linear, single-axis, nongyroscopic accelerometer for use
2424
- in inertial navigation, guidance, and leveling systems are defined. A standard
2425
- specification guide and a compilation of recommended test procedures for such
2426
- accelerometers are provided. Informative annexes&hellip;<\/div><\/div><div
2427
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/1554\/2292\/\">
2428
- IEEE 1554-2005<\/a><\/h4><div class=\"content\">Test equipment, data acquisition
2429
- equipment, instrumentation, test facilities, and data analysis techniques
2430
- used in inertial sensor testing are described in this recommended practice.<\/div><\/div><div
2431
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/292\/485\/\">
2432
- IEEE 292-1969<\/a><\/h4><div class=\"content\">This specification defines
2433
- the requirements for a single-degree-of-freedom spring-restrained rate gyro
2434
- for [aircraft, missile, spacecraft,______] applications. The rate gyro shall
2435
- be capable of providing [(dc, ac) voltage outputs proportional to angular
2436
- rate inputs up to______ degrees per second, a switch&hellip;<\/div><\/div><div
2437
- class=\"hit\"><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/293\/486\/\">
2438
- IEEE 293-1969<\/a><\/h4><div class=\"content\">Recommended rate gyro test
2439
- procedures derived from those currently in use, including test conditions
2440
- to be considered, are compiled. In some cases alternate methods for measuring
2441
- a performance characteristic have been included. This standard is intended
2442
- to be a guide&hellip;<\/div><\/div><div class=\"hit\"><h4 class=\"title\"><a
2443
- href=\"https:\/\/standards.ieee.org\/ieee\/517\/760\/\"> IEEE 517-1974<\/a><\/h4><div
2444
- class=\"content\">A specification format guide for the preparation of a rate-integrating
2445
- gyro specification that provides a common meeting ground of terminology and
2446
- practice for manufacturers and users is presented. A compilation of recommended
2447
- procedures for testing a rate-integrating gyro is given.<\/div><\/div><div
2448
- class=\"pagination\"><nav aria-label=\"Search results page navigation\">\n<ul
2449
- class=\"pagination justify-content-center\">\n<li class=\"page-item active\"
2450
- aria-current=\"page\"><a class=\"page-link\" href=\"#1\">1<\/a><\/li>\n<li
2391
+ sorted by relevance.<\/h3><div class=\"hit\"><div class=\"designation\">IEEE
2392
+ 528-2019<\/div><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/528\/7292\/\">
2393
+ IEEE Standard for Inertial Sensor Terminology<\/a><\/h4><div class=\"content\">Terms
2394
+ and definitions relating to inertial sensors are presented in this standard.
2395
+ Usage as understood by the inertial sensor community is given preference over
2396
+ general technical usage of the terms herein. The criterion for inclusion of
2397
+ a term and its&hellip;<\/div><\/div><div class=\"hit\"><div class=\"designation\">IEEE
2398
+ 528-2001<\/div><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/528\/780\/\">
2399
+ IEEE Standard for Inertial Sensor Terminology<\/a><\/h4><div class=\"content\">Terms
2400
+ and definitions relating to inertial senors are presented in this standard.
2401
+ Usage as understood by the inertial sensor community is given preference over
2402
+ general technical usage of the terms herein. The criterion for inclusion of
2403
+ a term and its&hellip;<\/div><\/div><div class=\"hit\"><div class=\"designation\">IEEE
2404
+ 836-2009<\/div><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/836\/3449\/\">
2405
+ IEEE Recommended Practice for Precision Centrifuge Testing of Linear Accelerometers<\/a><\/h4><div
2406
+ class=\"content\">This recommended practice describes the conduct and analysis
2407
+ of precision tests that are to be performed on linear accelerometers using
2408
+ centrifuge techniques. The term \u201cprecision,\u201d in this context, refers
2409
+ to tests that are conducted to evaluate accelerometer parameters, as opposed&hellip;<\/div><\/div><div
2410
+ class=\"hit\"><div class=\"designation\">IEEE 517-1974<\/div><h4 class=\"title\"><a
2411
+ href=\"https:\/\/standards.ieee.org\/ieee\/517\/760\/\"> IEEE Standard Specification
2412
+ Format Guide and Test Procedure for Single-Degree-of-Freedom Rate-Integrating
2413
+ Gyros<\/a><\/h4><div class=\"content\">A specification format guide for the
2414
+ preparation of a rate-integrating gyro specification that provides a common
2415
+ meeting ground of terminology and practice for manufacturers and users is
2416
+ presented. A compilation of recommended procedures for testing a rate-integrating
2417
+ gyro is given.<\/div><\/div><div class=\"hit\"><div class=\"designation\">IEEE
2418
+ 647-2006<\/div><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/647\/3134\/\">
2419
+ IEEE Standard Specification Format Guide and Test Procedure for Single-Axis
2420
+ Laser Gyros<\/a><\/h4><div class=\"content\">Specification and test requirements
2421
+ for a single-axis ring laser gyro (RLG) for use as a sensor in attitude control
2422
+ systems, angular displacement measuring systems, and angular rate measuring
2423
+ systems are defined. A standard specification format guide for the preparation
2424
+ of&hellip;<\/div><\/div><div class=\"hit\"><div class=\"designation\">IEEE
2425
+ 952-2020<\/div><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/952\/7496\/\">
2426
+ IEEE Standard for Specifying and Testing Single-Axis Interferometric Fiber
2427
+ Optic Gyros<\/a><\/h4><div class=\"content\">Specification and test procedures
2428
+ for a single-axis interferometric fiber optic gyro (IFOG) for use as a sensor
2429
+ in attitude control systems, angular displacement measuring systems, and angular
2430
+ rate measuring systems are defined. The test procedures are derived from those
2431
+ presently&hellip;<\/div><\/div><div class=\"hit\"><div class=\"designation\">IEEE
2432
+ 292-1969<\/div><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/292\/485\/\">
2433
+ IEEE Specification Format for Single-Degree-of-Freedom Spring-Restrained Rate
2434
+ Gyros<\/a><\/h4><div class=\"content\">This specification defines the requirements
2435
+ for a single-degree-of-freedom spring-restrained rate gyro for [aircraft,
2436
+ missile, spacecraft,______] applications. The rate gyro shall be capable of
2437
+ providing [(dc, ac) voltage outputs proportional to angular rate inputs up
2438
+ to______ degrees per second, a switch&hellip;<\/div><\/div><div class=\"hit\"><div
2439
+ class=\"designation\">IEEE 293-1969<\/div><h4 class=\"title\"><a href=\"https:\/\/standards.ieee.org\/ieee\/293\/486\/\">
2440
+ IEEE Test Procedure for Single-Degree-of-Freedom Spring-Restrained Rate Gyros<\/a><\/h4><div
2441
+ class=\"content\">Recommended rate gyro test procedures derived from those
2442
+ currently in use, including test conditions to be considered, are compiled.
2443
+ In some cases alternate methods for measuring a performance characteristic
2444
+ have been included. This standard is intended to be a guide&hellip;<\/div><\/div><div
2445
+ class=\"hit\"><div class=\"designation\">IEEE 1293-2018<\/div><h4 class=\"title\"><a
2446
+ href=\"https:\/\/standards.ieee.org\/ieee\/1293\/5590\/\"> IEEE Standard Specification
2447
+ Format Guide and Test Procedure for Linear Single-Axis, Nongyroscopic Accelerometers<\/a><\/h4><div
2448
+ class=\"content\">The specification and test requirements for a linear, single-axis,
2449
+ nongyroscopic accelerometer for use in inertial navigation, guidance, and
2450
+ leveling systems are defined. A standard specification guide and a compilation
2451
+ of recommended test procedures for such accelerometers are provided. Informative
2452
+ annexes&hellip;<\/div><\/div><div class=\"pagination\"><nav aria-label=\"Search
2453
+ results page navigation\">\n<ul class=\"pagination justify-content-center\">\n<li
2454
+ class=\"page-item active\" aria-current=\"page\"><a class=\"page-link\" href=\"#1\">1<\/a><\/li>\n<li
2451
2455
  class=\"page-item \" ><a class=\"page-link\" href=\"#2\">2<\/a><\/li>\n<li
2452
2456
  class=\"page-item \" ><a class=\"page-link\" href=\"#3\">3<\/a><\/li>\n<li
2453
2457
  class=\"page-item\">\n<a class=\"next page-link\" href=\"#2\"><span class=\"sr-only\">Next<\/span><i
@@ -2470,8 +2474,7 @@ http_interactions:
2470
2474
  data-value=\"Nuclear Power\">Nuclear Power<\/a><\/li><\/ul><div class=\"reset\"><a
2471
2475
  href=\"#\" class=\"filter-reset\" data-filter=\"topic\" data-value=\"all\">Reset<\/a><\/div><\/div><!--
2472
2476
  end filter -->"}'
2473
- http_version:
2474
- recorded_at: Mon, 09 May 2022 10:28:56 GMT
2477
+ recorded_at: Fri, 27 May 2022 11:48:31 GMT
2475
2478
  - request:
2476
2479
  method: get
2477
2480
  uri: https://standards.ieee.org/ieee/528/7292/
@@ -2491,7 +2494,7 @@ http_interactions:
2491
2494
  message: OK
2492
2495
  headers:
2493
2496
  Date:
2494
- - Mon, 09 May 2022 10:28:56 GMT
2497
+ - Fri, 27 May 2022 11:48:32 GMT
2495
2498
  Content-Type:
2496
2499
  - text/html; charset=UTF-8
2497
2500
  Transfer-Encoding:
@@ -2517,7 +2520,7 @@ http_interactions:
2517
2520
  Cache-Control:
2518
2521
  - max-age=600, must-revalidate
2519
2522
  X-Cache:
2520
- - 'HIT: 1'
2523
+ - MISS
2521
2524
  X-Cache-Group:
2522
2525
  - normal
2523
2526
  Cf-Cache-Status:
@@ -2527,13 +2530,12 @@ http_interactions:
2527
2530
  Server:
2528
2531
  - cloudflare
2529
2532
  Cf-Ray:
2530
- - 7089c04bfecc77ef-VIE
2533
+ - 711e85a1d8fb38bd-VIE
2531
2534
  Alt-Svc:
2532
2535
  - h3=":443"; ma=86400, h3-29=":443"; ma=86400
2533
2536
  body:
2534
2537
  encoding: ASCII-8BIT
2535
2538
  string: !binary |-
2536
- CjwhZG9jdHlwZSBodG1sPgo8aHRtbCBsYW5nPSJlbiI+CjxoZWFkPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSIiPgoKICAgIDwhLS0gZmllbGRzIGZvciBDbG91ZHNlYXJjaCAtLT4KPG1ldGEgbmFtZT0idGl0bGUiIGNvbnRlbnQ9IklFRUUgU0EgLSBJRUVFIFN0YW5kYXJkIGZvciBJbmVydGlhbCBTZW5zb3IgVGVybWlub2xvZ3kiLz4KPG1ldGEgbmFtZT0idHlwZSIgY29udGVudD0iU3RhbmRhcmQiLz4KPG1ldGEgbmFtZT0idG9waWMiIGNvbnRlbnQ9IkFlcm9zcGFjZSBFbGVjdHJvbmljcyIvPgo8bWV0YSBuYW1lPSJjYXRlZ29yeSIgY29udGVudD0iIi8+CjxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXJtcyBhbmQgZGVmaW5pdGlvbnMgcmVsYXRpbmcgdG8gaW5lcnRpYWwgc2Vuc29ycyBhcmUgcHJlc2VudGVkIGluIHRoaXMgc3RhbmRhcmQuIFVzYWdlIGFzIHVuZGVyc3Rvb2QgYnkgdGhlIGluZXJ0aWFsIHNlbnNvciBjb21tdW5pdHkgaXMgZ2l2ZW4gcHJlZmVyZW5jZSBvdmVyIGdlbmVyYWwgdGVjaG5pY2FsIHVzYWdlIG9mIHRoZSB0ZXJtcyBoZXJlaW4uIFRoZSBjcml0ZXJpb24gZm9yIGluY2x1c2lvbiBvZiBhIHRlcm0gYW5kIGl0cyBkZWZpbml0aW9uIGluIHRoaXMgc3RhbmRhcmQgaXMgdXNlZnVsbmVzcyBhcyByZWxhdGVkIHRvIGluZXJ0aWFsIHNlbnNvciB0ZWNobm9sb2d5LiIvPgo8bWV0YSBuYW1lPSJrZXl3b3JkcyIgY29udGVudD0iQWVyb3NwYWNlIEVsZWN0cm9uaWNzIi8+CjwhLS0gUHJvamVjdHMvU3RhbmRhcmRzIC0tPgo8bWV0YSBuYW1lPSJTb2NpZXR5IiBjb250ZW50PSJJRUVFIEFlcm9zcGFjZSBhbmQgRWxlY3Ryb25pYyBTeXN0ZW1zIFNvY2lldHkiLz4KPG1ldGEgbmFtZT0iU3RkUmVjTm8iIGNvbnRlbnQ9IjcyOTIiLz4KPG1ldGEgbmFtZT0iU3RhdHVzIiBjb250ZW50PSJBY3RpdmUgU3RhbmRhcmQiLz4KPG1ldGEgbmFtZT0iZGVzaWduYXRpb24iIGNvbnRlbnQ9IklFRUUgNTI4LTIwMTkiLz4KCiAgICAKICAgIDx0aXRsZT5JRUVFIFNBIC0gSUVFRSA1MjgtMjAxOTwvdGl0bGU+CgogICAgPGxpbmsgcmVsPSJpY29uIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWVfZmF2aWNvbi5pY28iPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWVfYXBwbGVfdG91Y2hfaWNvbi5wbmciPgoKICAgIDxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbSI+CiAgICA8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20iIGNyb3Nzb3JpZ2luPgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1PcGVuK1NhbnM6aXRhbCx3Z2h0QDAsNDAwOzAsNTAwOzAsNjAwOzAsNzAwOzAsODAwOzEsNDAwOzEsNjAwOzEsNzAwJmRpc3BsYXk9c3dhcCIKICAgICAgICAgIHJlbD0ic3R5bGVzaGVldCI+CgogICAgPCEtLSBHb29nbGUgVGFnIE1hbmFnZXIgLS0+CiAgICA8c2NyaXB0PihmdW5jdGlvbih3LGQscyxsLGkpe3dbbF09d1tsXXx8W107d1tsXS5wdXNoKHsnZ3RtLnN0YXJ0JzoKICAgICAgICAgICAgICAgIG5ldyBEYXRlKCkuZ2V0VGltZSgpLGV2ZW50OidndG0uanMnfSk7dmFyIGY9ZC5nZXRFbGVtZW50c0J5VGFnTmFtZShzKVswXSwKICAgICAgICAgICAgaj1kLmNyZWF0ZUVsZW1lbnQocyksZGw9bCE9J2RhdGFMYXllcic/JyZsPScrbDonJztqLmFzeW5jPXRydWU7ai5zcmM9CiAgICAgICAgICAgICdodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JytpK2RsO2YucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoaixmKTsKICAgICAgICB9KSh3aW5kb3csZG9jdW1lbnQsJ3NjcmlwdCcsJ2RhdGFMYXllcicsJ0dUTS1NUjhUODQzJyk7PC9zY3JpcHQ+CiAgICA8IS0tIEVuZCBHb29nbGUgVGFnIE1hbmFnZXIgLS0+CgogICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8va2l0LmZvbnRhd2Vzb21lLmNvbS8yZDc0ZjI4MmY2LmpzIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj48L3NjcmlwdD4KCiAgICA8bGluayBocmVmPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjEuMy9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0IgogICAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtMUJtRTRrV0JxNzhpWWhGbGR2S3VoZlRBVTZhdVU4dFQ5NFdySGZ0akRickNFWFNVMW9Cb3F5bDJRdlo2aklXMyIgY3Jvc3NvcmlnaW49ImFub255bW91cyI+CiAgICA8bGluayBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL3N0eWxlLmNzcz90aW1lPTIwMjIwNDI5IiByZWw9InN0eWxlc2hlZXQiPgoKICAgIDxzY3JpcHQgc3JjPSJodHRwczovL3MzLXVzLXdlc3QtMi5hbWF6b25hd3MuY29tL2llZWVzaHV0cGFnZXMvZ2Rwci9zZXR0aW5ncy5qcyI+PC9zY3JpcHQ+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIgogICAgICAgICAgaHJlZj0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvY29va2llY29uc2VudDIvMy4wLjMvY29va2llY29uc2VudC5taW4uY3NzIi8+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvY29va2llY29uc2VudDIvMy4wLjMvY29va2llY29uc2VudC5taW4uanMiPjwvc2NyaXB0PgoKICAgIDxzY3JpcHQ+CiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIHdpbmRvdy5jb29raWVjb25zZW50LmluaXRpYWxpc2UoanNvbikKICAgICAgICB9KTsKICAgIDwvc2NyaXB0PgoKICAgIDxtZXRhIG5hbWU9J3JvYm90cycgY29udGVudD0naW5kZXgsIGZvbGxvdywgbWF4LWltYWdlLXByZXZpZXc6bGFyZ2UsIG1heC1zbmlwcGV0Oi0xLCBtYXgtdmlkZW8tcHJldmlldzotMScgLz4KCgk8IS0tIFRoaXMgc2l0ZSBpcyBvcHRpbWl6ZWQgd2l0aCB0aGUgWW9hc3QgU0VPIHBsdWdpbiB2MTguOCAtIGh0dHBzOi8veW9hc3QuY29tL3dvcmRwcmVzcy9wbHVnaW5zL3Nlby8gLS0+Cgk8bWV0YSBwcm9wZXJ0eT0ib2c6bG9jYWxlIiBjb250ZW50PSJlbl9VUyIgLz4KCTxtZXRhIHByb3BlcnR5PSJvZzp0eXBlIiBjb250ZW50PSJ3ZWJzaXRlIiAvPgoJPG1ldGEgcHJvcGVydHk9Im9nOnNpdGVfbmFtZSIgY29udGVudD0iU0EgTWFpbiBTaXRlIiAvPgoJPG1ldGEgbmFtZT0idHdpdHRlcjpjYXJkIiBjb250ZW50PSJzdW1tYXJ5X2xhcmdlX2ltYWdlIiAvPgoJPG1ldGEgbmFtZT0idHdpdHRlcjpzaXRlIiBjb250ZW50PSJASUVFRVNBIiAvPgoJPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIiBjbGFzcz0ieW9hc3Qtc2NoZW1hLWdyYXBoIj57IkBjb250ZXh0IjoiaHR0cHM6Ly9zY2hlbWEub3JnIiwiQGdyYXBoIjpbeyJAdHlwZSI6Ik9yZ2FuaXphdGlvbiIsIkBpZCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyNvcmdhbml6YXRpb24iLCJuYW1lIjoiSUVFRSBTQSIsInVybCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyIsInNhbWVBcyI6WyJodHRwczovL3R3aXR0ZXIuY29tL0lFRUVTQSJdLCJsb2dvIjp7IkB0eXBlIjoiSW1hZ2VPYmplY3QiLCJpbkxhbmd1YWdlIjoiZW4tVVMiLCJAaWQiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8jL3NjaGVtYS9sb2dvL2ltYWdlLyIsInVybCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy9pbXBvcnQvaWVlZXNhLWxvZ28ucG5nIiwiY29udGVudFVybCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy9pbXBvcnQvaWVlZXNhLWxvZ28ucG5nIiwid2lkdGgiOjcyMCwiaGVpZ2h0Ijo0MzIsImNhcHRpb24iOiJJRUVFIFNBIn0sImltYWdlIjp7IkBpZCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyMvc2NoZW1hL2xvZ28vaW1hZ2UvIn19LHsiQHR5cGUiOiJXZWJTaXRlIiwiQGlkIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvI3dlYnNpdGUiLCJ1cmwiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8iLCJuYW1lIjoiU0EgTWFpbiBTaXRlIiwiZGVzY3JpcHRpb24iOiIiLCJwdWJsaXNoZXIiOnsiQGlkIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvI29yZ2FuaXphdGlvbiJ9LCJwb3RlbnRpYWxBY3Rpb24iOlt7IkB0eXBlIjoiU2VhcmNoQWN0aW9uIiwidGFyZ2V0Ijp7IkB0eXBlIjoiRW50cnlQb2ludCIsInVybFRlbXBsYXRlIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvP3M9e3NlYXJjaF90ZXJtX3N0cmluZ30ifSwicXVlcnktaW5wdXQiOiJyZXF1aXJlZCBuYW1lPXNlYXJjaF90ZXJtX3N0cmluZyJ9XSwiaW5MYW5ndWFnZSI6ImVuLVVTIn0seyJAdHlwZSI6IldlYlBhZ2UiLCJAaWQiOiIjd2VicGFnZSIsInVybCI6IiIsIm5hbWUiOiIiLCJpc1BhcnRPZiI6eyJAaWQiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8jd2Vic2l0ZSJ9LCJicmVhZGNydW1iIjp7IkBpZCI6IiNicmVhZGNydW1iIn0sImluTGFuZ3VhZ2UiOiJlbi1VUyIsInBvdGVudGlhbEFjdGlvbiI6W3siQHR5cGUiOiJSZWFkQWN0aW9uIiwidGFyZ2V0IjpbIiJdfV19LHsiQHR5cGUiOiJCcmVhZGNydW1iTGlzdCIsIkBpZCI6IiNicmVhZGNydW1iIiwiaXRlbUxpc3RFbGVtZW50IjpbeyJAdHlwZSI6Ikxpc3RJdGVtIiwicG9zaXRpb24iOjEsIm5hbWUiOiJIb21lIiwiaXRlbSI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyJ9LHsiQHR5cGUiOiJMaXN0SXRlbSIsInBvc2l0aW9uIjoyLCJuYW1lIjoiIn1dfV19PC9zY3JpcHQ+Cgk8IS0tIC8gWW9hc3QgU0VPIHBsdWdpbi4gLS0+CgoKPGxpbmsgcmVsPSdkbnMtcHJlZmV0Y2gnIGhyZWY9Jy8vcy53Lm9yZycgLz4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgp3aW5kb3cuX3dwZW1vamlTZXR0aW5ncyA9IHsiYmFzZVVybCI6Imh0dHBzOlwvXC9zLncub3JnXC9pbWFnZXNcL2NvcmVcL2Vtb2ppXC8xMy4xLjBcLzcyeDcyXC8iLCJleHQiOiIucG5nIiwic3ZnVXJsIjoiaHR0cHM6XC9cL3Mudy5vcmdcL2ltYWdlc1wvY29yZVwvZW1vamlcLzEzLjEuMFwvc3ZnXC8iLCJzdmdFeHQiOiIuc3ZnIiwic291cmNlIjp7ImNvbmNhdGVtb2ppIjoiaHR0cHM6XC9cL3N0YW5kYXJkcy5pZWVlLm9yZ1wvd3AtaW5jbHVkZXNcL2pzXC93cC1lbW9qaS1yZWxlYXNlLm1pbi5qcz92ZXI9NS45LjMifX07Ci8qISBUaGlzIGZpbGUgaXMgYXV0by1nZW5lcmF0ZWQgKi8KIWZ1bmN0aW9uKGUsYSx0KXt2YXIgbixyLG8saT1hLmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpLHA9aS5nZXRDb250ZXh0JiZpLmdldENvbnRleHQoIjJkIik7ZnVuY3Rpb24gcyhlLHQpe3ZhciBhPVN0cmluZy5mcm9tQ2hhckNvZGU7cC5jbGVhclJlY3QoMCwwLGkud2lkdGgsaS5oZWlnaHQpLHAuZmlsbFRleHQoYS5hcHBseSh0aGlzLGUpLDAsMCk7ZT1pLnRvRGF0YVVSTCgpO3JldHVybiBwLmNsZWFyUmVjdCgwLDAsaS53aWR0aCxpLmhlaWdodCkscC5maWxsVGV4dChhLmFwcGx5KHRoaXMsdCksMCwwKSxlPT09aS50b0RhdGFVUkwoKX1mdW5jdGlvbiBjKGUpe3ZhciB0PWEuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7dC5zcmM9ZSx0LmRlZmVyPXQudHlwZT0idGV4dC9qYXZhc2NyaXB0IixhLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF0uYXBwZW5kQ2hpbGQodCl9Zm9yKG89QXJyYXkoImZsYWciLCJlbW9qaSIpLHQuc3VwcG9ydHM9e2V2ZXJ5dGhpbmc6ITAsZXZlcnl0aGluZ0V4Y2VwdEZsYWc6ITB9LHI9MDtyPG8ubGVuZ3RoO3IrKyl0LnN1cHBvcnRzW29bcl1dPWZ1bmN0aW9uKGUpe2lmKCFwfHwhcC5maWxsVGV4dClyZXR1cm4hMTtzd2l0Y2gocC50ZXh0QmFzZWxpbmU9InRvcCIscC5mb250PSI2MDAgMzJweCBBcmlhbCIsZSl7Y2FzZSJmbGFnIjpyZXR1cm4gcyhbMTI3OTg3LDY1MDM5LDgyMDUsOTg5NSw2NTAzOV0sWzEyNzk4Nyw2NTAzOSw4MjAzLDk4OTUsNjUwMzldKT8hMTohcyhbNTUzNTYsNTY4MjYsNTUzNTYsNTY4MTldLFs1NTM1Niw1NjgyNiw4MjAzLDU1MzU2LDU2ODE5XSkmJiFzKFs1NTM1Niw1NzMzMiw1NjEyOCw1NjQyMyw1NjEyOCw1NjQxOCw1NjEyOCw1NjQyMSw1NjEyOCw1NjQzMCw1NjEyOCw1NjQyMyw1NjEyOCw1NjQ0N10sWzU1MzU2LDU3MzMyLDgyMDMsNTYxMjgsNTY0MjMsODIwMyw1NjEyOCw1NjQxOCw4MjAzLDU2MTI4LDU2NDIxLDgyMDMsNTYxMjgsNTY0MzAsODIwMyw1NjEyOCw1NjQyMyw4MjAzLDU2MTI4LDU2NDQ3XSk7Y2FzZSJlbW9qaSI6cmV0dXJuIXMoWzEwMDg0LDY1MDM5LDgyMDUsNTUzNTcsNTY2MTNdLFsxMDA4NCw2NTAzOSw4MjAzLDU1MzU3LDU2NjEzXSl9cmV0dXJuITF9KG9bcl0pLHQuc3VwcG9ydHMuZXZlcnl0aGluZz10LnN1cHBvcnRzLmV2ZXJ5dGhpbmcmJnQuc3VwcG9ydHNbb1tyXV0sImZsYWciIT09b1tyXSYmKHQuc3VwcG9ydHMuZXZlcnl0aGluZ0V4Y2VwdEZsYWc9dC5zdXBwb3J0cy5ldmVyeXRoaW5nRXhjZXB0RmxhZyYmdC5zdXBwb3J0c1tvW3JdXSk7dC5zdXBwb3J0cy5ldmVyeXRoaW5nRXhjZXB0RmxhZz10LnN1cHBvcnRzLmV2ZXJ5dGhpbmdFeGNlcHRGbGFnJiYhdC5zdXBwb3J0cy5mbGFnLHQuRE9NUmVhZHk9ITEsdC5yZWFkeUNhbGxiYWNrPWZ1bmN0aW9uKCl7dC5ET01SZWFkeT0hMH0sdC5zdXBwb3J0cy5ldmVyeXRoaW5nfHwobj1mdW5jdGlvbigpe3QucmVhZHlDYWxsYmFjaygpfSxhLmFkZEV2ZW50TGlzdGVuZXI/KGEuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbiwhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6KGUuYXR0YWNoRXZlbnQoIm9ubG9hZCIsbiksYS5hdHRhY2hFdmVudCgib25yZWFkeXN0YXRlY2hhbmdlIixmdW5jdGlvbigpeyJjb21wbGV0ZSI9PT1hLnJlYWR5U3RhdGUmJnQucmVhZHlDYWxsYmFjaygpfSkpLChuPXQuc291cmNlfHx7fSkuY29uY2F0ZW1vamk/YyhuLmNvbmNhdGVtb2ppKTpuLndwZW1vamkmJm4udHdlbW9qaSYmKGMobi50d2Vtb2ppKSxjKG4ud3BlbW9qaSkpKX0od2luZG93LGRvY3VtZW50LHdpbmRvdy5fd3BlbW9qaVNldHRpbmdzKTsKPC9zY3JpcHQ+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CmltZy53cC1zbWlsZXksCmltZy5lbW9qaSB7CglkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsKCWJvcmRlcjogbm9uZSAhaW1wb3J0YW50OwoJYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OwoJaGVpZ2h0OiAxZW0gIWltcG9ydGFudDsKCXdpZHRoOiAxZW0gIWltcG9ydGFudDsKCW1hcmdpbjogMCAwLjA3ZW0gIWltcG9ydGFudDsKCXZlcnRpY2FsLWFsaWduOiAtMC4xZW0gIWltcG9ydGFudDsKCWJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsKCXBhZGRpbmc6IDAgIWltcG9ydGFudDsKfQo8L3N0eWxlPgoJPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0ndHJpYmUtZXZlbnRzLXByby1taW5pLWNhbGVuZGFyLWJsb2NrLXN0eWxlcy1jc3MnICBocmVmPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3BsdWdpbnMvZXZlbnRzLWNhbGVuZGFyLXByby9zcmMvcmVzb3VyY2VzL2Nzcy90cmliZS1ldmVudHMtcHJvLW1pbmktY2FsZW5kYXItYmxvY2subWluLmNzcz92ZXI9NS4xMy4xJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0nd3AtYmxvY2stbGlicmFyeS1jc3MnICBocmVmPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1pbmNsdWRlcy9jc3MvZGlzdC9ibG9jay1saWJyYXJ5L3N0eWxlLm1pbi5jc3M/dmVyPTUuOS4zJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPHN0eWxlIGlkPSdnbG9iYWwtc3R5bGVzLWlubGluZS1jc3MnIHR5cGU9J3RleHQvY3NzJz4KYm9keXstLXdwLS1wcmVzZXQtLWNvbG9yLS1ibGFjazogIzAwMDAwMDstLXdwLS1wcmVzZXQtLWNvbG9yLS1jeWFuLWJsdWlzaC1ncmF5OiAjYWJiOGMzOy0td3AtLXByZXNldC0tY29sb3ItLXdoaXRlOiAjZmZmZmZmOy0td3AtLXByZXNldC0tY29sb3ItLXBhbGUtcGluazogI2Y3OGRhNzstLXdwLS1wcmVzZXQtLWNvbG9yLS12aXZpZC1yZWQ6ICNjZjJlMmU7LS13cC0tcHJlc2V0LS1jb2xvci0tbHVtaW5vdXMtdml2aWQtb3JhbmdlOiAjZmY2OTAwOy0td3AtLXByZXNldC0tY29sb3ItLWx1bWlub3VzLXZpdmlkLWFtYmVyOiAjZmNiOTAwOy0td3AtLXByZXNldC0tY29sb3ItLWxpZ2h0LWdyZWVuLWN5YW46ICM3YmRjYjU7LS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtZ3JlZW4tY3lhbjogIzAwZDA4NDstLXdwLS1wcmVzZXQtLWNvbG9yLS1wYWxlLWN5YW4tYmx1ZTogIzhlZDFmYzstLXdwLS1wcmVzZXQtLWNvbG9yLS12aXZpZC1jeWFuLWJsdWU6ICMwNjkzZTM7LS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcHVycGxlOiAjOWI1MWUwOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLXZpdmlkLWN5YW4tYmx1ZS10by12aXZpZC1wdXJwbGU6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiYSg2LDE0NywyMjcsMSkgMCUscmdiKDE1NSw4MSwyMjQpIDEwMCUpOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLWxpZ2h0LWdyZWVuLWN5YW4tdG8tdml2aWQtZ3JlZW4tY3lhbjogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMTIyLDIyMCwxODApIDAlLHJnYigwLDIwOCwxMzApIDEwMCUpOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLWx1bWlub3VzLXZpdmlkLWFtYmVyLXRvLWx1bWlub3VzLXZpdmlkLW9yYW5nZTogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2JhKDI1MiwxODUsMCwxKSAwJSxyZ2JhKDI1NSwxMDUsMCwxKSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1sdW1pbm91cy12aXZpZC1vcmFuZ2UtdG8tdml2aWQtcmVkOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYmEoMjU1LDEwNSwwLDEpIDAlLHJnYigyMDcsNDYsNDYpIDEwMCUpOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLXZlcnktbGlnaHQtZ3JheS10by1jeWFuLWJsdWlzaC1ncmF5OiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyMzgsMjM4LDIzOCkgMCUscmdiKDE2OSwxODQsMTk1KSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1jb29sLXRvLXdhcm0tc3BlY3RydW06IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDc0LDIzNCwyMjApIDAlLHJnYigxNTEsMTIwLDIwOSkgMjAlLHJnYigyMDcsNDIsMTg2KSA0MCUscmdiKDIzOCw0NCwxMzApIDYwJSxyZ2IoMjUxLDEwNSw5OCkgODAlLHJnYigyNTQsMjQ4LDc2KSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1ibHVzaC1saWdodC1wdXJwbGU6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDI1NSwyMDYsMjM2KSAwJSxyZ2IoMTUyLDE1MCwyNDApIDEwMCUpOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLWJsdXNoLWJvcmRlYXV4OiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyNTQsMjA1LDE2NSkgMCUscmdiKDI1NCw0NSw0NSkgNTAlLHJnYigxMDcsMCw2MikgMTAwJSk7LS13cC0tcHJlc2V0LS1ncmFkaWVudC0tbHVtaW5vdXMtZHVzazogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMjU1LDIwMywxMTIpIDAlLHJnYigxOTksODEsMTkyKSA1MCUscmdiKDY1LDg4LDIwOCkgMTAwJSk7LS13cC0tcHJlc2V0LS1ncmFkaWVudC0tcGFsZS1vY2VhbjogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMjU1LDI0NSwyMDMpIDAlLHJnYigxODIsMjI3LDIxMikgNTAlLHJnYig1MSwxNjcsMTgxKSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1lbGVjdHJpYy1ncmFzczogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMjAyLDI0OCwxMjgpIDAlLHJnYigxMTMsMjA2LDEyNikgMTAwJSk7LS13cC0tcHJlc2V0LS1ncmFkaWVudC0tbWlkbmlnaHQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDIsMywxMjkpIDAlLHJnYig0MCwxMTYsMjUyKSAxMDAlKTstLXdwLS1wcmVzZXQtLWR1b3RvbmUtLWRhcmstZ3JheXNjYWxlOiB1cmwoJyN3cC1kdW90b25lLWRhcmstZ3JheXNjYWxlJyk7LS13cC0tcHJlc2V0LS1kdW90b25lLS1ncmF5c2NhbGU6IHVybCgnI3dwLWR1b3RvbmUtZ3JheXNjYWxlJyk7LS13cC0tcHJlc2V0LS1kdW90b25lLS1wdXJwbGUteWVsbG93OiB1cmwoJyN3cC1kdW90b25lLXB1cnBsZS15ZWxsb3cnKTstLXdwLS1wcmVzZXQtLWR1b3RvbmUtLWJsdWUtcmVkOiB1cmwoJyN3cC1kdW90b25lLWJsdWUtcmVkJyk7LS13cC0tcHJlc2V0LS1kdW90b25lLS1taWRuaWdodDogdXJsKCcjd3AtZHVvdG9uZS1taWRuaWdodCcpOy0td3AtLXByZXNldC0tZHVvdG9uZS0tbWFnZW50YS15ZWxsb3c6IHVybCgnI3dwLWR1b3RvbmUtbWFnZW50YS15ZWxsb3cnKTstLXdwLS1wcmVzZXQtLWR1b3RvbmUtLXB1cnBsZS1ncmVlbjogdXJsKCcjd3AtZHVvdG9uZS1wdXJwbGUtZ3JlZW4nKTstLXdwLS1wcmVzZXQtLWR1b3RvbmUtLWJsdWUtb3JhbmdlOiB1cmwoJyN3cC1kdW90b25lLWJsdWUtb3JhbmdlJyk7LS13cC0tcHJlc2V0LS1mb250LXNpemUtLXNtYWxsOiAxM3B4Oy0td3AtLXByZXNldC0tZm9udC1zaXplLS1tZWRpdW06IDIwcHg7LS13cC0tcHJlc2V0LS1mb250LXNpemUtLWxhcmdlOiAzNnB4Oy0td3AtLXByZXNldC0tZm9udC1zaXplLS14LWxhcmdlOiA0MnB4O30uaGFzLWJsYWNrLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tYmxhY2spICFpbXBvcnRhbnQ7fS5oYXMtY3lhbi1ibHVpc2gtZ3JheS1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWN5YW4tYmx1aXNoLWdyYXkpICFpbXBvcnRhbnQ7fS5oYXMtd2hpdGUtY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS13aGl0ZSkgIWltcG9ydGFudDt9Lmhhcy1wYWxlLXBpbmstY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1wYWxlLXBpbmspICFpbXBvcnRhbnQ7fS5oYXMtdml2aWQtcmVkLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcmVkKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLW9yYW5nZS1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWx1bWlub3VzLXZpdmlkLW9yYW5nZSkgIWltcG9ydGFudDt9Lmhhcy1sdW1pbm91cy12aXZpZC1hbWJlci1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWx1bWlub3VzLXZpdmlkLWFtYmVyKSAhaW1wb3J0YW50O30uaGFzLWxpZ2h0LWdyZWVuLWN5YW4tY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1saWdodC1ncmVlbi1jeWFuKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLWdyZWVuLWN5YW4tY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS12aXZpZC1ncmVlbi1jeWFuKSAhaW1wb3J0YW50O30uaGFzLXBhbGUtY3lhbi1ibHVlLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tcGFsZS1jeWFuLWJsdWUpICFpbXBvcnRhbnQ7fS5oYXMtdml2aWQtY3lhbi1ibHVlLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtY3lhbi1ibHVlKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLXB1cnBsZS1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLXB1cnBsZSkgIWltcG9ydGFudDt9Lmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1ibGFjaykgIWltcG9ydGFudDt9Lmhhcy1jeWFuLWJsdWlzaC1ncmF5LWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZC1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWN5YW4tYmx1aXNoLWdyYXkpICFpbXBvcnRhbnQ7fS5oYXMtd2hpdGUtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0td2hpdGUpICFpbXBvcnRhbnQ7fS5oYXMtcGFsZS1waW5rLWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZC1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXBhbGUtcGluaykgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1yZWQtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcmVkKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLW9yYW5nZS1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1sdW1pbm91cy12aXZpZC1vcmFuZ2UpICFpbXBvcnRhbnQ7fS5oYXMtbHVtaW5vdXMtdml2aWQtYW1iZXItYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tbHVtaW5vdXMtdml2aWQtYW1iZXIpICFpbXBvcnRhbnQ7fS5oYXMtbGlnaHQtZ3JlZW4tY3lhbi1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1saWdodC1ncmVlbi1jeWFuKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLWdyZWVuLWN5YW4tYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtZ3JlZW4tY3lhbikgIWltcG9ydGFudDt9Lmhhcy1wYWxlLWN5YW4tYmx1ZS1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1wYWxlLWN5YW4tYmx1ZSkgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1jeWFuLWJsdWUtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtY3lhbi1ibHVlKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLXB1cnBsZS1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS12aXZpZC1wdXJwbGUpICFpbXBvcnRhbnQ7fS5oYXMtYmxhY2stYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWJsYWNrKSAhaW1wb3J0YW50O30uaGFzLWN5YW4tYmx1aXNoLWdyYXktYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWN5YW4tYmx1aXNoLWdyYXkpICFpbXBvcnRhbnQ7fS5oYXMtd2hpdGUtYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXdoaXRlKSAhaW1wb3J0YW50O30uaGFzLXBhbGUtcGluay1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tcGFsZS1waW5rKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLXJlZC1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcmVkKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLW9yYW5nZS1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tbHVtaW5vdXMtdml2aWQtb3JhbmdlKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLWFtYmVyLWJvcmRlci1jb2xvcntib3JkZXItY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1sdW1pbm91cy12aXZpZC1hbWJlcikgIWltcG9ydGFudDt9Lmhhcy1saWdodC1ncmVlbi1jeWFuLWJvcmRlci1jb2xvcntib3JkZXItY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1saWdodC1ncmVlbi1jeWFuKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLWdyZWVuLWN5YW4tYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLWdyZWVuLWN5YW4pICFpbXBvcnRhbnQ7fS5oYXMtcGFsZS1jeWFuLWJsdWUtYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXBhbGUtY3lhbi1ibHVlKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLWN5YW4tYmx1ZS1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtY3lhbi1ibHVlKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLXB1cnBsZS1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcHVycGxlKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLWN5YW4tYmx1ZS10by12aXZpZC1wdXJwbGUtZ3JhZGllbnQtYmFja2dyb3VuZHtiYWNrZ3JvdW5kOiB2YXIoLS13cC0tcHJlc2V0LS1ncmFkaWVudC0tdml2aWQtY3lhbi1ibHVlLXRvLXZpdmlkLXB1cnBsZSkgIWltcG9ydGFudDt9Lmhhcy1saWdodC1ncmVlbi1jeWFuLXRvLXZpdmlkLWdyZWVuLWN5YW4tZ3JhZGllbnQtYmFja2dyb3VuZHtiYWNrZ3JvdW5kOiB2YXIoLS13cC0tcHJlc2V0LS1ncmFkaWVudC0tbGlnaHQtZ3JlZW4tY3lhbi10by12aXZpZC1ncmVlbi1jeWFuKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLWFtYmVyLXRvLWx1bWlub3VzLXZpdmlkLW9yYW5nZS1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1sdW1pbm91cy12aXZpZC1hbWJlci10by1sdW1pbm91cy12aXZpZC1vcmFuZ2UpICFpbXBvcnRhbnQ7fS5oYXMtbHVtaW5vdXMtdml2aWQtb3JhbmdlLXRvLXZpdmlkLXJlZC1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1sdW1pbm91cy12aXZpZC1vcmFuZ2UtdG8tdml2aWQtcmVkKSAhaW1wb3J0YW50O30uaGFzLXZlcnktbGlnaHQtZ3JheS10by1jeWFuLWJsdWlzaC1ncmF5LWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLXZlcnktbGlnaHQtZ3JheS10by1jeWFuLWJsdWlzaC1ncmF5KSAhaW1wb3J0YW50O30uaGFzLWNvb2wtdG8td2FybS1zcGVjdHJ1bS1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1jb29sLXRvLXdhcm0tc3BlY3RydW0pICFpbXBvcnRhbnQ7fS5oYXMtYmx1c2gtbGlnaHQtcHVycGxlLWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLWJsdXNoLWxpZ2h0LXB1cnBsZSkgIWltcG9ydGFudDt9Lmhhcy1ibHVzaC1ib3JkZWF1eC1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1ibHVzaC1ib3JkZWF1eCkgIWltcG9ydGFudDt9Lmhhcy1sdW1pbm91cy1kdXNrLWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLWx1bWlub3VzLWR1c2spICFpbXBvcnRhbnQ7fS5oYXMtcGFsZS1vY2Vhbi1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1wYWxlLW9jZWFuKSAhaW1wb3J0YW50O30uaGFzLWVsZWN0cmljLWdyYXNzLWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLWVsZWN0cmljLWdyYXNzKSAhaW1wb3J0YW50O30uaGFzLW1pZG5pZ2h0LWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLW1pZG5pZ2h0KSAhaW1wb3J0YW50O30uaGFzLXNtYWxsLWZvbnQtc2l6ZXtmb250LXNpemU6IHZhcigtLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tc21hbGwpICFpbXBvcnRhbnQ7fS5oYXMtbWVkaXVtLWZvbnQtc2l6ZXtmb250LXNpemU6IHZhcigtLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tbWVkaXVtKSAhaW1wb3J0YW50O30uaGFzLWxhcmdlLWZvbnQtc2l6ZXtmb250LXNpemU6IHZhcigtLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tbGFyZ2UpICFpbXBvcnRhbnQ7fS5oYXMteC1sYXJnZS1mb250LXNpemV7Zm9udC1zaXplOiB2YXIoLS13cC0tcHJlc2V0LS1mb250LXNpemUtLXgtbGFyZ2UpICFpbXBvcnRhbnQ7fQo8L3N0eWxlPgo8bGluayByZWw9J3N0eWxlc2hlZXQnIGlkPSdpZWVlLWNsb3Vkc2VhcmNoLWNzcy1jc3MnICBocmVmPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWUtc2EvY2xvdWRzZWFyY2gvY3NzL2llZWUtY2xvdWRzZWFyY2guY3NzP3RpbWU9MjAyMjAxMjYmIzAzODt2ZXI9NS45LjMnIHR5cGU9J3RleHQvY3NzJyBtZWRpYT0nYWxsJyAvPgo8bGluayByZWw9J3N0eWxlc2hlZXQnIGlkPSdpZWVlLXdpZGdldC1jc3MtY3NzJyAgaHJlZj0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlLXNhL3dpZGdldHMvY3NzL3dpZGdldHMuY3NzP3RpbWU9MjAyMjAxMjYmIzAzODt2ZXI9NS45LjMnIHR5cGU9J3RleHQvY3NzJyBtZWRpYT0nYWxsJyAvPgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1pbmNsdWRlcy9qcy9qcXVlcnkvanF1ZXJ5Lm1pbi5qcz92ZXI9My42LjAnIGlkPSdqcXVlcnktY29yZS1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWluY2x1ZGVzL2pzL2pxdWVyeS9qcXVlcnktbWlncmF0ZS5taW4uanM/dmVyPTMuMy4yJyBpZD0nanF1ZXJ5LW1pZ3JhdGUtanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgaWQ9J2llZWUtY2xvdWRzZWFyY2gtanMtanMtZXh0cmEnPgovKiA8IVtDREFUQVsgKi8KdmFyIGllZWVfYWpheF9vYmplY3QgPSB7ImFqYXhfdXJsIjoiaHR0cHM6XC9cL3N0YW5kYXJkcy5pZWVlLm9yZ1wvd3AtYWRtaW5cL2FkbWluLWFqYXgucGhwIn07Ci8qIF1dPiAqLwo8L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlLXNhL2Nsb3Vkc2VhcmNoL2pzL2llZWUtY2xvdWRzZWFyY2guanM/dGltZT0yMDIyMDEyNiYjMDM4O3Zlcj01LjkuMycgaWQ9J2llZWUtY2xvdWRzZWFyY2gtanMtanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWUtc2Evd2lkZ2V0cy9qcy9pZWVlLXdpZGdldHMuanM/dGltZT0yMDIyMDIwMzUmIzAzODt2ZXI9NS45LjMnIGlkPSdpZWVlLXdpZGdldC1qcy1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBpZD0naWVlZS1zYS1zY3JpcHRzLWpzLWV4dHJhJz4KLyogPCFbQ0RBVEFbICovCnZhciBpZWVlX2FqYXhfb2JqZWN0ID0geyJhamF4X3VybCI6Imh0dHBzOlwvXC9zdGFuZGFyZHMuaWVlZS5vcmdcL3dwLWFkbWluXC9hZG1pbi1hamF4LnBocCJ9OwovKiBdXT4gKi8KPC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvdGhlbWVzL2llZWUtc2EtdGhlbWUvaWVlZS1zYS9qcy9pZWVlLXNhLmpzP3RpbWU9MjAyMjAzMTImIzAzODt2ZXI9NS45LjMnIGlkPSdpZWVlLXNhLXNjcmlwdHMtanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWUtc2EvanMvbWFya2V0by5qcz92ZXI9NS45LjMnIGlkPSdpZWVlLW1hcmtldG8tanMnPjwvc2NyaXB0Pgo8bGluayByZWw9Imh0dHBzOi8vYXBpLncub3JnLyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtanNvbi8iIC8+PGxpbmsgcmVsPSJFZGl0VVJJIiB0eXBlPSJhcHBsaWNhdGlvbi9yc2QreG1sIiB0aXRsZT0iUlNEIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy94bWxycGMucGhwP3JzZCIgLz4KPGxpbmsgcmVsPSJ3bHdtYW5pZmVzdCIgdHlwZT0iYXBwbGljYXRpb24vd2x3bWFuaWZlc3QreG1sIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1pbmNsdWRlcy93bHdtYW5pZmVzdC54bWwiIC8+IAo8bWV0YSBuYW1lPSJ0ZWMtYXBpLXZlcnNpb24iIGNvbnRlbnQ9InYxIj48bWV0YSBuYW1lPSJ0ZWMtYXBpLW9yaWdpbiIgY29udGVudD0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmciPjxsaW5rIHJlbD0iYWx0ZXJuYXRlIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1qc29uL3RyaWJlL2V2ZW50cy92MS8iIC8+CgkJPHNjcmlwdD4KCQkoZnVuY3Rpb24oaCxvLHQsaixhLHIpewoJCQloLmhqPWguaGp8fGZ1bmN0aW9uKCl7KGguaGoucT1oLmhqLnF8fFtdKS5wdXNoKGFyZ3VtZW50cyl9OwoJCQloLl9oalNldHRpbmdzPXtoamlkOjI5MTY3NzIsaGpzdjo1fTsKCQkJYT1vLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF07CgkJCXI9by5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtyLmFzeW5jPTE7CgkJCXIuc3JjPXQraC5faGpTZXR0aW5ncy5oamlkK2oraC5faGpTZXR0aW5ncy5oanN2OwoJCQlhLmFwcGVuZENoaWxkKHIpOwoJCX0pKHdpbmRvdyxkb2N1bWVudCwnLy9zdGF0aWMuaG90amFyLmNvbS9jL2hvdGphci0nLCcuanM/c3Y9Jyk7CgkJPC9zY3JpcHQ+CgkJPG1ldGEgbmFtZT0iZ2VuZXJhdG9yIiBjb250ZW50PSJQb3dlcmVkIGJ5IFdQQmFrZXJ5IFBhZ2UgQnVpbGRlciAtIGRyYWcgYW5kIGRyb3AgcGFnZSBidWlsZGVyIGZvciBXb3JkUHJlc3MuIi8+Cjxub3NjcmlwdD48c3R5bGU+IC53cGJfYW5pbWF0ZV93aGVuX2FsbW9zdF92aXNpYmxlIHsgb3BhY2l0eTogMTsgfTwvc3R5bGU+PC9ub3NjcmlwdD4KCjwvaGVhZD4KPGJvZHkgY2xhc3M9ImJsb2cgdHJpYmUtbm8tanMgd3BiLWpzLWNvbXBvc2VyIGpzLWNvbXAtdmVyLTYuOS4wIHZjX3Jlc3BvbnNpdmUiID4KPCEtLSBHb29nbGUgVGFnIE1hbmFnZXIgKG5vc2NyaXB0KSAtLT4KPG5vc2NyaXB0PjxpZnJhbWUgc3JjPSJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ucy5odG1sP2lkPUdUTS1NUjhUODQzIiBoZWlnaHQ9IjAiIHdpZHRoPSIwIiBzdHlsZT0iZGlzcGxheTpub25lO3Zpc2liaWxpdHk6aGlkZGVuIj48L2lmcmFtZT48L25vc2NyaXB0Pgo8IS0tIEVuZCBHb29nbGUgVGFnIE1hbmFnZXIgKG5vc2NyaXB0KSAtLT4KPGhlYWRlcj4KICAgIDxzZWN0aW9uIGlkPSJ0b3AtYmFyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTEwIGQtbm9uZSBkLW1kLWJsb2NrIiByb2xlPSJuYXZpZ2F0aW9uIj4KICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiB0b3AtYmFyIHRvcC1iYXItbGVmdCIgYXJpYS1sYWJlbD0iR2xvYmFsIGxlZnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnLyIgdGFyZ2V0PSJfYmxhbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJJRUVFLm9yZyI+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+U3RhbmRhcmRzIERldmVsb3BtZW50PC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM4OCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04Mzg4IiBkYXRhLWl0ZW0taWQ9IjgzODgiPgoJCQkJCQkJPGEgdGl0bGU9IlN0YW5kYXJkcyBBZG9wdGlvbiIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvZGV2ZWxvcC9kZXZlbG9wLXN0YW5kYXJkcy9zdGFuZGFyZHMtYWRvcHRpb24vIiBkYXRhLWl0ZW0taWQ9IjgzODgiIGNsYXNzPSJuYXYtbGluayAiPlN0YW5kYXJkcyBBZG9wdGlvbjwvYT4KCQkJCQkJPC9saT4KCQkJCQk8L3VsPgoJCQkJCTx1bCBjbGFzcz0ic3ViLW1lbnUtZGVzY3JpcHRpb24iPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzg1IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkNob29zZSBmcm9tIHRoZSBtYW55IHdheXMgdG8gYWNjZXNzIElFRUUgU0EgU3RhbmRhcmRzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MjkiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+Q2hvb3NlIGZyb20gaW5kaXZpZHVhbCBvciBvcmdhbml6YXRpb25hbCBhY2Nlc3Mgb3B0aW9ucyB0byBnZXQgdGhlIHN0YW5kYXJkcyB5b3UgbmVlZC48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzg2IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkZpbmQgdGhlIHN0YW5kYXJkcyB5b3XigJlyZSBsb29raW5nIGZvci48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzg3IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkdldCBpbnZvbHZlZCBpbiB0aGUgZGV2ZWxvcG1lbnQgb2YgbWFya2V0LWRyaXZlbiB0ZWNobm9sb2d5IHN0YW5kYXJkcyB3aXRoIHByb3ZlbiBleHBlcnRpc2UgYW5kIGRlZGljYXRlZCBzdXBwb3J0LjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9IjgzODgiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+TGVhcm4gbW9yZSBhYm91dCBob3cgdG8gYWRvcHQgSUVFRSBzdGFuZGFyZHMuPC9saT4KCQkJCQk8L3VsPgoJCQkJPC9kaXY+IDwhLS0gLy5yb3cgLS0+CgkJCTwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgoJCTwvZGl2PiA8IS0tIC8uZHJvcGRvd24tbWVudSBtZWdhLW1lbnUgLS0+Cgk8L2xpPgoJPGxpICBpZD0ibWVudS1pdGVtLTgzODkiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtY3VzdG9tIG1lbnUtaXRlbS1vYmplY3QtY3VzdG9tIG1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gZHJvcGRvd24gbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzODkiIGRhdGEtaXRlbS1pZD0iODM4OSI+CgkJPGEgdGl0bGU9IlByb2R1Y3RzICZhbXA7IFByb2dyYW1zIiBkYXRhLWl0ZW0taWQ9IjgzODkiIGNsYXNzPSJuYXYtbGluayAgZHJvcGRvd24tdG9nZ2xlIiBkYXRhLWJzLXRvZ2dsZT0iZHJvcGRvd24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5Qcm9kdWN0cyAmIzAzODsgUHJvZ3JhbXM8L2E+CgkJPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSBtZWdhLW1lbnUiPgoJCQk8ZGl2IGNsYXNzPSJjb250YWluZXIiPgoJCQkJPGRpdiBjbGFzcz0icm93Ij4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51ICBkZXB0aF8wIj4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzOTAiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM5MCIgZGF0YS1pdGVtLWlkPSI4MzkwIj4KCQkJCQkJCTxhIHRpdGxlPSJBbGxpYW5jZSBNYW5hZ2VtZW50IFNlcnZpY2VzIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1wcm9ncmFtcy9hbXMvIiBkYXRhLWl0ZW0taWQ9IjgzOTAiIGNsYXNzPSJuYXYtbGluayAiPkFsbGlhbmNlIE1hbmFnZW1lbnQgU2VydmljZXM8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04MzkxIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzOTEiIGRhdGEtaXRlbS1pZD0iODM5MSI+CgkJCQkJCQk8YSB0aXRsZT0iQ29uZm9ybWl0eSBBc3Nlc3NtZW50ICZhbXA7IENlcnRpZmljYXRpb24iIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3Byb2R1Y3RzLXByb2dyYW1zL2ljYXAvIiBkYXRhLWl0ZW0taWQ9IjgzOTEiIGNsYXNzPSJuYXYtbGluayAiPkNvbmZvcm1pdHkgQXNzZXNzbWVudCAmIzAzODsgQ2VydGlmaWNhdGlvbjwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzOTIiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM5MiIgZGF0YS1pdGVtLWlkPSI4MzkyIj4KCQkJCQkJCTxhIHRpdGxlPSJJRUVFIFNBIE9wZW4gU291cmNlIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pbml0aWF0aXZlcy9vcGVuc291cmNlLyIgZGF0YS1pdGVtLWlkPSI4MzkyIiBjbGFzcz0ibmF2LWxpbmsgIj5JRUVFIFNBIE9wZW4gU291cmNlPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM5MyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04MzkzIiBkYXRhLWl0ZW0taWQ9IjgzOTMiPgoJCQkJCQkJPGEgdGl0bGU9IkluZHVzdHJ5IEFmZmlsaWF0ZSBOZXR3b3JrIChJQU4pIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1wcm9ncmFtcy9pbmR1c3RyeS1hZmZpbGlhdGUtbmV0d29yay8iIGRhdGEtaXRlbS1pZD0iODM5MyIgY2xhc3M9Im5hdi1saW5rICI+SW5kdXN0cnkgQWZmaWxpYXRlIE5ldHdvcmsgKElBTik8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDMxIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MzEiIGRhdGEtaXRlbS1pZD0iODQzMSI+CgkJCQkJCQk8YSB0aXRsZT0iSW5kdXN0cnkgQ29ubmVjdGlvbnMiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2luZHVzdHJ5LWNvbm5lY3Rpb25zLyIgZGF0YS1pdGVtLWlkPSI4NDMxIiBjbGFzcz0ibmF2LWxpbmsgIj5JbmR1c3RyeSBDb25uZWN0aW9uczwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MzAiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQzMCIgZGF0YS1pdGVtLWlkPSI4NDMwIj4KCQkJCQkJCTxhIHRpdGxlPSJUaGUgTmF0aW9uYWwgRWxlY3RyaWNhbCBTYWZldHkgQ29kZcKuIChORVNDwq4pIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1wcm9ncmFtcy9uZXNjLyIgZGF0YS1pdGVtLWlkPSI4NDMwIiBjbGFzcz0ibmF2LWxpbmsgIj5UaGUgTmF0aW9uYWwgRWxlY3RyaWNhbCBTYWZldHkgQ29kZcKuIChORVNDwq4pPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM5NiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04Mzk2IiBkYXRhLWl0ZW0taWQ9IjgzOTYiPgoJCQkJCQkJPGEgdGl0bGU9IlJlZ2lzdHJhdGlvbiBBdXRob3JpdHkiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3Byb2R1Y3RzLXByb2dyYW1zL3JlZ2F1dGgvIiBkYXRhLWl0ZW0taWQ9IjgzOTYiIGNsYXNzPSJuYXYtbGluayAiPlJlZ2lzdHJhdGlvbiBBdXRob3JpdHk8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04Mzk3IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzOTciIGRhdGEtaXRlbS1pZD0iODM5NyI+CgkJCQkJCQk8YSB0aXRsZT0iR292ZXJubWVudCBFbmdhZ2VtZW50IFByb2dyYW0gb24gU3RhbmRhcmRzIChHRVBTKSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvaW50bC9nb3Zlcm5tZW50LWVuZ2FnZW1lbnQtcHJvZ3JhbS8iIGRhdGEtaXRlbS1pZD0iODM5NyIgY2xhc3M9Im5hdi1saW5rICI+R292ZXJubWVudCBFbmdhZ2VtZW50IFByb2dyYW0gb24gU3RhbmRhcmRzIChHRVBTKTwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzOTgiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM5OCIgZGF0YS1pdGVtLWlkPSI4Mzk4Ij4KCQkJCQkJCTxhIHRpdGxlPSJTdGFuZGFyZHMgRmVsbG93c2hpcCIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvaW50bC9zdGFuZGFyZHMtZmVsbG93c2hpcC1wcm9ncmFtLyIgZGF0YS1pdGVtLWlkPSI4Mzk4IiBjbGFzcz0ibmF2LWxpbmsgIj5TdGFuZGFyZHMgRmVsbG93c2hpcDwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MzIiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQzMiIgZGF0YS1pdGVtLWlkPSI4NDMyIj4KCQkJCQkJCTxhIHRpdGxlPSJBbGwgUHJvZHVjdHMgJmFtcDsgUHJvZ3JhbXMiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3Byb2R1Y3RzLXByb2dyYW1zLyIgZGF0YS1pdGVtLWlkPSI4NDMyIiBjbGFzcz0ibmF2LWxpbmsgIj5BbGwgUHJvZHVjdHMgJiMwMzg7IFByb2dyYW1zPC9hPgoJCQkJCQk8L2xpPgoJCQkJCTwvdWw+CgkJCQkJPHVsIGNsYXNzPSJzdWItbWVudS1kZXNjcmlwdGlvbiI+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9IjgzODkiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+RnVsbCBlY29zeXN0ZW0gb2Ygc3RhbmRhcmRzLXJlbGF0ZWQgc29sdXRpb25zIHRvIGhlbHAgZHJpdmUgYXdhcmVuZXNzLCBhY3RpdmF0aW9uLCBhbmQgYWRvcHRpb24uPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM5MCIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5Qcm92aWRpbmcgc3VwcG9ydCBzZXJ2aWNlcyB0byBoZWxwIG1hbmFnZSB0aGUgZGF5LXRvLWRheSBvcGVyYXRpb25zIG9mIGluZHVzdHJ5IGdyb3VwcywgYWxsb3dpbmcga2V5IHN0YWtlaG9sZGVycyB0byBmb2N1cyBvbiB0aGUgd29yayBhdCBoYW5kLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9IjgzOTEiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+Rm9jdXNlZCBvbiBkZXZlbG9wbWVudCBhbmQgaW1wbGVtZW50YXRpb24gb2Ygcmlnb3JvdXMgY29uZm9ybWl0eSBhc3Nlc3NtZW50IHByb2dyYW1zIGRlc2lnbmVkIHRvIGhlbHAgYWNjZWxlcmF0ZSBtYXJrZXQgYWRvcHRpb24sIHJlZHVjZSBjb3N0cyBhbmQgbW9yZS48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4MzkyIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkEgdmVuZG9yLW5ldXRyYWwsIGluY2x1c2l2ZSwgb3BlbiBzb3VyY2UgcGxhdGZvcm3igJRmb3IgYWxsLCBmcm9tIGluZGVwZW5kZW50IHNvZnR3YXJlIGRldmVsb3BlcnMgYW5kIHN0YXJ0IHVwcyB0byBpbmR1c3RyeSwgYWNhZGVtaWMgYW5kIHJlc2VhcmNoIGluc3RpdHV0aW9ucy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4MzkzIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPk9wZW4gdG8gY29uc29ydGlhLCBpbmR1c3RyeSBhbGxpYW5jZSBvciBvdGhlciBpbmR1c3RyeSBvcmdhbml6YXRpb25zLCBsb29raW5nIHRvIGJyaW5nIGZvcndhcmQgc3BlY2lmaWNhdGlvbnMgZm9yIHN0YW5kYXJkcyBkZXZlbG9wbWVudCBhbmQgbWFya2V0IGFkb3B0aW9uLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MzEiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+RmFjaWxpdGF0aW5nIGNvbGxhYm9yYXRpb24gYW1vbmcgb3JnYW5pemF0aW9ucyBhbmQgaW5kaXZpZHVhbHMgYXMgdGhleSBob25lIGFuZCByZWZpbmUgdGhlaXIgdGhpbmtpbmcgb24gcmFwaWRseSBjaGFuZ2luZyB0ZWNobm9sb2dpZXMuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQzMCIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5HdWlkZWxpbmVzIGZvciBwcmFjdGljYWwgc2FmZWd1YXJkaW5nIGR1cmluZyB0aGUgaW5zdGFsbGF0aW9uLCBvcGVyYXRpb24sIGFuZCBtYWludGVuYW5jZSBvZiBlbGVjdHJpYyBzdXBwbHksIGNvbW11bmljYXRpb24gbGluZXMgYW5kIGFzc29jaWF0ZWQgZXF1aXBtZW50LjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9IjgzOTYiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+QXNzaWducyBhbmQgbWFpbnRhaW5zIHVuaXF1ZSBpZGVudGlmaWVycyBhbmQgdW5hbWJpZ3VvdXMgbmFtZXMgdG8gb2JqZWN0cyBmb3IgdGhvc2Ugd2lzaGluZyB0byByZWdpc3RlciB0aGVtLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9IjgzOTciIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+UHJvZ3JhbSBmb3IgcG9saWN5bWFrZXJzIHByb3ZpZGluZyB0YWlsb3JlZCBzdGFuZGFyZHMgaW5mb3JtYXRpb24sIGFjY2VzcyB0byB0aGUgSUVFRSBTQSBzdGFuZGFyZGl6YXRpb24gZWNvc3lzdGVtLCBhbmQgc3RhbmRhcmRpemF0aW9uIHJlc291cmNlcy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzk4IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPlByb3ZpZGluZyBnbG9iYWwgc3RhbmRhcmRzIHByb2Zlc3Npb25hbHMgdGhlIG9wcG9ydHVuaXR5IHRvIG9ic2VydmUgdGhlIElFRUUgc3RhbmRhcmRzIGRldmVsb3BtZW50IHByb2Nlc3MgYW5kIGxlYXJuIGFib3V0IHRlY2huaWNhbCBhcmVhcyBvZiBpbnRlcmVzdC48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDMyIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPlNlZSBhbGwgdGhlIHByb2dyYW1zLCBwcm9kdWN0cywgYW5kIHNlcnZpY2VzIHRoYXQgSUVFRSBTQSBoYXMgdG8gb2ZmZXIuPC9saT4KCQkJCQk8L3VsPgoJCQkJPC9kaXY+IDwhLS0gLy5yb3cgLS0+CgkJCTwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgoJCTwvZGl2PiA8IS0tIC8uZHJvcGRvd24tbWVudSBtZWdhLW1lbnUgLS0+Cgk8L2xpPgoJPGxpICBpZD0ibWVudS1pdGVtLTg0MDAiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtY3VzdG9tIG1lbnUtaXRlbS1vYmplY3QtY3VzdG9tIG1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gZHJvcGRvd24gbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MDAiIGRhdGEtaXRlbS1pZD0iODQwMCI+CgkJPGEgdGl0bGU9IkZvY3VzZXMiIGRhdGEtaXRlbS1pZD0iODQwMCIgY2xhc3M9Im5hdi1saW5rICBkcm9wZG93bi10b2dnbGUiIGRhdGEtYnMtdG9nZ2xlPSJkcm9wZG93biIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPkZvY3VzZXM8L2E+CgkJPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSBtZWdhLW1lbnUiPgoJCQk8ZGl2IGNsYXNzPSJjb250YWluZXIiPgoJCQkJPGRpdiBjbGFzcz0icm93Ij4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51ICBkZXB0aF8wIj4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MDEiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQwMSIgZGF0YS1pdGVtLWlkPSI4NDAxIj4KCQkJCQkJCTxhIHRpdGxlPSJBcnRpZmljaWFsIEludGVsbGlnZW5jZSBTeXN0ZW1zIChBSVMpIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pbml0aWF0aXZlcy9hcnRpZmljaWFsLWludGVsbGlnZW5jZS1zeXN0ZW1zLyIgZGF0YS1pdGVtLWlkPSI4NDAxIiBjbGFzcz0ibmF2LWxpbmsgIj5BcnRpZmljaWFsIEludGVsbGlnZW5jZSBTeXN0ZW1zIChBSVMpPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQwMiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDAyIiBkYXRhLWl0ZW0taWQ9Ijg0MDIiPgoJCQkJCQkJPGEgdGl0bGU9IkNvbm5lY3Rpdml0eSAmYW1wOyBUZWxlY29tIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcmFjdGljZXMvY29ubmVjdGl2aXR5LXRlbGVjb20vIiBkYXRhLWl0ZW0taWQ9Ijg0MDIiIGNsYXNzPSJuYXYtbGluayAiPkNvbm5lY3Rpdml0eSAmYW1wOyBUZWxlY29tPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQwMyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDAzIiBkYXRhLWl0ZW0taWQ9Ijg0MDMiPgoJCQkJCQkJPGEgdGl0bGU9IkVuZXJneSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJhY3RpY2VzL2VuZXJneS8iIGRhdGEtaXRlbS1pZD0iODQwMyIgY2xhc3M9Im5hdi1saW5rICI+RW5lcmd5PC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQwNCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDA0IiBkYXRhLWl0ZW0taWQ9Ijg0MDQiPgoJCQkJCQkJPGEgdGl0bGU9IkZvdW5kYXRpb25hbCBUZWNobm9sb2dpZXMiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3ByYWN0aWNlcy9mb3VuZGF0aW9uYWwvIiBkYXRhLWl0ZW0taWQ9Ijg0MDQiIGNsYXNzPSJuYXYtbGluayAiPkZvdW5kYXRpb25hbCBUZWNobm9sb2dpZXM8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDA1IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MDUiIGRhdGEtaXRlbS1pZD0iODQwNSI+CgkJCQkJCQk8YSB0aXRsZT0iSGVhbHRoY2FyZSBhbmQgTGlmZSBTY2llbmNlcyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJhY3RpY2VzL2hlYWx0aGNhcmUtbGlmZS1zY2llbmNlcy8iIGRhdGEtaXRlbS1pZD0iODQwNSIgY2xhc3M9Im5hdi1saW5rICI+SGVhbHRoY2FyZSBhbmQgTGlmZSBTY2llbmNlczwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MDYiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQwNiIgZGF0YS1pdGVtLWlkPSI4NDA2Ij4KCQkJCQkJCTxhIHRpdGxlPSJNb2JpbGl0eSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJhY3RpY2VzL21vYmlsaXR5LyIgZGF0YS1pdGVtLWlkPSI4NDA2IiBjbGFzcz0ibmF2LWxpbmsgIj5Nb2JpbGl0eTwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MzMiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQzMyIgZGF0YS1pdGVtLWlkPSI4NDMzIj4KCQkJCQkJCTxhIHRpdGxlPSJHb3Zlcm5tZW50IEVuZ2FnZW1lbnQiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2ludGwvIiBkYXRhLWl0ZW0taWQ9Ijg0MzMiIGNsYXNzPSJuYXYtbGluayAiPkdvdmVybm1lbnQgRW5nYWdlbWVudDwvYT4KCQkJCQkJPC9saT4KCQkJCQk8L3VsPgoJCQkJCTx1bCBjbGFzcz0ic3ViLW1lbnUtZGVzY3JpcHRpb24iPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDAwIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPlN0cmF0ZWdpYyBmb2N1c2VzIGFuZCBpbmR1c3RyaWVzIHdoZXJlIElFRUUgU0EgaXMgcmFpc2luZyB0aGUgd29ybGTigJlzIHN0YW5kYXJkcy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDAxIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkRldmVsb3BpbmcgYWNjZXNzaWJsZSBhbmQgc3VzdGFpbmFibGUgYXBwcm9hY2hlcyBhbmQgc29sdXRpb25zIGZvciBwcmFjdGljYWwgYXBwbGljYXRpb24gb2YgQUlTIHByaW5jaXBsZXMgYW5kIGZyYW1ld29ya3MuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQwMiIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5BZHZhbmNpbmcgcm9idXN0LCByZXNwb25zaWJsZSwgYW5kIGFmZm9yZGFibGUgY29ubmVjdGl2aXR5LjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MDMiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+RW5hYmxpbmcgc3VzdGFpbmFibGUsIGVmZmljaWVudCwgYW5kIGFjY2Vzc2libGUgZW5lcmd5IHRocm91Z2ggdGVjaG5vbG9naWNhbCBhZHZhbmNlcyBvbiBhIGdsb2JhbCBzY2FsZS48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDA0IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPldvcmtpbmcgdG8gc3RhbmRhcmRpemUgc2VhbWxlc3MgYW5kIHViaXF1aXRvdXMgY29ubmVjdGl2aXR5IGFjcm9zcyBhbGwgYXBwbGljYXRpb25zIG9mIGNvbm5lY3RlZCB0ZWNobm9sb2dpZXMuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQwNSIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5Gb2N1c2VkIG9uIGVuYWJsaW5nIGFmZm9yZGFibGUgaGVhbHRoY2FyZSwgYWNjZXNzIHRvIG1lZGljaW5lLCBhbmQgaW5ub3ZhdGlvbiB0byBpbXByb3ZlIG92ZXJhbGwgZ2xvYmFsIHdlbGxuZXNzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MDYiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+V29ya2luZyB0byBoZWxwIHRoZSBldm9sdmluZyBtb2JpbGl0eSBlY29zeXN0ZW0gYWRkcmVzcyBzb21lIG9mIGl0cyBncmVhdGVzdCBidXNpbmVzcyBvcHBvcnR1bml0aWVzIHRoYXQgaGF2ZSB0aGUgcG90ZW50aWFsIHRvIHNvbHZlIG1ham9yIHNvY2lldGFsIGNoYWxsZW5nZXMuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQzMyIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5CdWlsZGluZyBicmlkZ2VzIGJldHdlZW4gdGhlIHdvcmxkcyBvZiB0ZWNobm9sb2d5LCBzdGFuZGFyZHMsIGFuZCBwb2xpY3kgbWFraW5nLjwvbGk+CgkJCQkJPC91bD4KCQkJCTwvZGl2PiA8IS0tIC8ucm93IC0tPgoJCQk8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KCQk8L2Rpdj4gPCEtLSAvLmRyb3Bkb3duLW1lbnUgbWVnYS1tZW51IC0tPgoJPC9saT4KCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDA4IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLWN1c3RvbSBtZW51LWl0ZW0tb2JqZWN0LWN1c3RvbSBtZW51LWl0ZW0taGFzLWNoaWxkcmVuIGRyb3Bkb3duIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDA4IiBkYXRhLWl0ZW0taWQ9Ijg0MDgiPgoJCTxhIHRpdGxlPSJHZXQgSW52b2x2ZWQiIGRhdGEtaXRlbS1pZD0iODQwOCIgY2xhc3M9Im5hdi1saW5rICBkcm9wZG93bi10b2dnbGUiIGRhdGEtYnMtdG9nZ2xlPSJkcm9wZG93biIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPkdldCBJbnZvbHZlZDwvYT4KCQk8ZGl2IGNsYXNzPSJkcm9wZG93bi1tZW51IG1lZ2EtbWVudSI+CgkJCTxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CgkJCQk8ZGl2IGNsYXNzPSJyb3ciPgoJCQkJCTx1bCBjbGFzcz0ic3ViLW1lbnUgIGRlcHRoXzAiPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQzNCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDM0IiBkYXRhLWl0ZW0taWQ9Ijg0MzQiPgoJCQkJCQkJPGEgdGl0bGU9IkV2ZW50cyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvZXZlbnRzLyIgZGF0YS1pdGVtLWlkPSI4NDM0IiBjbGFzcz0ibmF2LWxpbmsgIj5FdmVudHM8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDEwIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MTAiIGRhdGEtaXRlbS1pZD0iODQxMCI+CgkJCQkJCQk8YSB0aXRsZT0iSUVFRSBTQSBNZW1iZXJzaGlwIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9tZW1iZXJzaGlwLyIgZGF0YS1pdGVtLWlkPSI4NDEwIiBjbGFzcz0ibmF2LWxpbmsgIj5JRUVFIFNBIE1lbWJlcnNoaXA8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDM1IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MzUiIGRhdGEtaXRlbS1pZD0iODQzNSI+CgkJCQkJCQk8YSB0aXRsZT0iSG93IHRvIEdldCBJbnZvbHZlZCIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcGFydGljaXBhdGUvIiBkYXRhLWl0ZW0taWQ9Ijg0MzUiIGNsYXNzPSJuYXYtbGluayAiPkhvdyB0byBHZXQgSW52b2x2ZWQ8L2E+CgkJCQkJCTwvbGk+CgkJCQkJPC91bD4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51LWRlc2NyaXB0aW9uIj4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQwOCIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5MZWFybiBhYm91dCBvcHBvcnR1bml0aWVzIHRvIGVuZ2FnZSB3aXRoIElFRUUgU0EuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQzNCIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5Kb2luIHVzIGF0IHVwY29taW5nIHZpcnR1YWwgb3IgaW4tcGVyc29uIGV2ZW50cy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDEwIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkZsZXhpYmxlIG1lbWJlcnNoaXAgb3B0aW9ucyB0aGF0IG9mZmVyIGVuaGFuY2VkIHBhcnRpY2lwYXRpb24gaW4gSUVFRSBTQSBhY3Rpdml0aWVzLCBzdGFuZGFyZHMgZGV2ZWxvcG1lbnQsIGFuZCBnb3Zlcm5hbmNlLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MzUiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+VGhlcmUgYXJlIG1hbnkgb3Bwb3J0dW5pdGllcyBmb3IgcGFydGljaXBhdGlvbiwgZmluZCB0aGUgcmlnaHQgb25lIGZvciB5b3UuPC9saT4KCQkJCQk8L3VsPgoJCQkJPC9kaXY+IDwhLS0gLy5yb3cgLS0+CgkJCTwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgoJCTwvZGl2PiA8IS0tIC8uZHJvcGRvd24tbWVudSBtZWdhLW1lbnUgLS0+Cgk8L2xpPgoJPGxpICBpZD0ibWVudS1pdGVtLTg0MTIiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtY3VzdG9tIG1lbnUtaXRlbS1vYmplY3QtY3VzdG9tIG1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gZHJvcGRvd24gbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MTIiIGRhdGEtaXRlbS1pZD0iODQxMiI+CgkJPGEgdGl0bGU9IlJlc291cmNlcyIgZGF0YS1pdGVtLWlkPSI4NDEyIiBjbGFzcz0ibmF2LWxpbmsgIGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+UmVzb3VyY2VzPC9hPgoJCTxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgbWVnYS1tZW51Ij4KCQkJPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KCQkJCTxkaXYgY2xhc3M9InJvdyI+CgkJCQkJPHVsIGNsYXNzPSJzdWItbWVudSAgZGVwdGhfMCI+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDEzIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MTMiIGRhdGEtaXRlbS1pZD0iODQxMyI+CgkJCQkJCQk8YSB0aXRsZT0iVHJhaW5pbmcgJmFtcDsgRGV2ZWxvcG1lbnQiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L3RyYWluaW5nLyIgZGF0YS1pdGVtLWlkPSI4NDEzIiBjbGFzcz0ibmF2LWxpbmsgIj5UcmFpbmluZyAmIzAzODsgRGV2ZWxvcG1lbnQ8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDM2IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MzYiIGRhdGEtaXRlbS1pZD0iODQzNiI+CgkJCQkJCQk8YSB0aXRsZT0iTmV3cyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvbmV3cy8iIGRhdGEtaXRlbS1pZD0iODQzNiIgY2xhc3M9Im5hdi1saW5rICI+TmV3czwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTg0MTUiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQxNSIgZGF0YS1pdGVtLWlkPSI4NDE1Ij4KCQkJCQkJCTxhIHRpdGxlPSJJRUVFIFNBIE5ld3NsZXR0ZXIiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL25ld3Mvc3dpcmUvIiBkYXRhLWl0ZW0taWQ9Ijg0MTUiIGNsYXNzPSJuYXYtbGluayAiPklFRUUgU0EgTmV3c2xldHRlcjwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTk1NTQiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtY3VzdG9tIG1lbnUtaXRlbS1vYmplY3QtY3VzdG9tIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS05NTU0IiBkYXRhLWl0ZW0taWQ9Ijk1NTQiPgoJCQkJCQkJPGEgdGl0bGU9IlN0YW5kYXJkcyBTdG9yZSIgaHJlZj0iaHR0cHM6Ly93d3cudGVjaHN0cmVldC5jb20vaWVlZT91dG1fc291cmNlPXN0YW5kYXJkcyZhbXA7dXRtX21lZGl1bT13ZWImYW1wO3V0bV9jYW1wYWlnbj1zdGFuZGFyZHMtcmVmZXJyYWwiIGRhdGEtaXRlbS1pZD0iOTU1NCIgY2xhc3M9Im5hdi1saW5rICI+U3RhbmRhcmRzIFN0b3JlPC9hPgoJCQkJCQk8L2xpPgoJCQkJCTwvdWw+CgkJCQkJPHVsIGNsYXNzPSJzdWItbWVudS1kZXNjcmlwdGlvbiI+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MTIiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+VHJhaW5pbmcgYW5kIGNvbW11bmljYXRpb24gcmVzb3VyY2VzIHRvIHN0YXkgY29ubmVjdGVkLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MTMiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+SW5kaXZpZHVhbCBhbmQgb3JnYW5pemF0aW9uYWwgZWZmZWN0aXZlbmVzcyBwcm9ncmFtIHRvIGVuYWJsZSB0aGUgc3VjY2VzcyBvZiBvdXIgdml0YWwgdm9sdW50ZWVycy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDM2IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPlJlYWQgdGhlIGxhdGVzdCBuZXdzIG9uIElFRUUgU0EuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQxNSIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5TdWJzY3JpYmUgdG8gb3VyIG5ld3NsZXR0ZXIgYW5kIGtlZXAgdXAgdG8gZGF0ZSBvbiB0aGUgbGF0ZXN0IHN0YW5kYXJkcywgZXZlbnQsIGFuZCBhY3Rpdml0aWVzLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijk1NTQiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+R2V0IHRoZSBzdGFuZGFyZHMgeW91IG5lZWQuIFNlbGVjdCBmcm9tIGluZGl2aWR1YWwgc3RhbmRhcmRzIG9yIHN0YW5kYXJkcyBidW5kbGVzLjwvbGk+CgkJCQkJPC91bD4KCQkJCTwvZGl2PiA8IS0tIC8ucm93IC0tPgoJCQk8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KCQk8L2Rpdj4gPCEtLSAvLmRyb3Bkb3duLW1lbnUgbWVnYS1tZW51IC0tPgoJPC9saT4KCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDE2IiBjbGFzcz0ibmF2LXR5cGUtYnV0dG9uIG1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDE2IiBkYXRhLWl0ZW0taWQ9Ijg0MTYiPgoJCTxhIHRpdGxlPSJNQUMgQWRkcmVzcyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtcHJvZ3JhbXMvcmVnYXV0aC8iIGRhdGEtaXRlbS1pZD0iODQxNiIgY2xhc3M9Im5hdi1saW5rICI+TUFDIEFkZHJlc3M8L2E+Cgk8L2xpPgo8L3VsPiAgICAgICAgICAgIDwhLS0gZW5kIHdvcmRwcmVzcyBtZW51IC0tPgogICAgICAgIDwvZGl2PiA8IS0tIC8jbW9iaWxlLW1lbnUgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0iYnRuLWdyb3VwIHNlYXJjaCI+CiAgICAgICAgICAgIDxkaXYgaWQ9InNlYXJjaC1pbnB1dC13cmFwcGVyIiBjbGFzcz0iY29sbGFwc2UgY29sbGFwc2UtaG9yaXpvbnRhbCI+CiAgICAgICAgICAgICAgICA8Zm9ybSBpZD0ic2VhcmNoIiBjbGFzcz0iZm9ybS1pbmxpbmUiIGFjdGlvbj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvc2VhcmNoLyIgbWV0aG9kPSJnZXQiPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz0iZm9ybS1jb250cm9sIiB0eXBlPSJ0ZXh0IiBwbGFjZWhvbGRlcj0iU2VhcmNoIElFRUUgU0EuLi4iIGF1dG9mb2N1cz0iYXV0b2ZvY3VzIiBuYW1lPSJxIiBpZD0icSI+CiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIiB0eXBlPSJzdWJtaXQiIGFyaWEtbGFiZWw9InNlYXJjaCI+PGkgY2xhc3M9ImZhIGZhLXNlYXJjaCI+PC9pPjwvYnV0dG9uPgogICAgICAgICAgICAgICAgPC9mb3JtPiA8IS0tIC8jc2VhcmNoIC0tPgogICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3NlYXJjaC1pbnB1dC13cmFwcGVyIC0tPgogICAgICAgICAgICA8YnV0dG9uIGlkPSJtYWluLXNlYXJjaC1idXR0b24iIGNsYXNzPSJidG4gYnRuLW1kIiB0eXBlPSJidXR0b24iIGRhdGEtYnMtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS1icy10YXJnZXQ9IiNzZWFyY2gtaW5wdXQtd3JhcHBlciIKICAgICAgICAgICAgICAgICAgICBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1jb250cm9scz0ic2VhcmNoLWlucHV0LXdyYXBwZXIiIGFyaWEtbGFiZWw9InNlYXJjaCI+PGkgY2xhc3M9ImZhIGZhLXNlYXJjaCI+PC9pPjwvYnV0dG9uPgogICAgICAgIDwvZGl2PiA8IS0tIC8uYnRuLWdyb3VwIC5zZWFyY2ggLS0+CiAgICA8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lci1mbHVpZCAtLT4KPC9uYXY+IDwhLS0gLyNtYWluLW5hdiAubmF2YmFyIC0tPgogICAgPC9zZWN0aW9uPiA8IS0tIC8jbWFzdGhlYWQgLS0+CjwvaGVhZGVyPgoKCjxtYWluPgogICAgPHNlY3Rpb24gaWQ9InBhZ2UtdGl0bGUiIGNsYXNzPSJzdGFuZGFyZCI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMiBjb2wtbGctMyBvcmRlci1sZy1sYXN0IGFsaWduLXNlbGYtbGctZW5kIHRleHQtbGctZW5kIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJzdG5kLXN0YXR1cyI+QWN0aXZlIFN0YW5kYXJkPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbC0xMiBjb2wtbGctMyAtLT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMiBjb2wtbGctMTEiPgogICAgICAgICAgICAgICAgICAgIDxoMSBpZD0ic3RuZC1kZXNpZ25hdGlvbiIKICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img1Ij5JRUVFIDUyOC0yMDE5PC9oMT4KICAgICAgICAgICAgICAgICAgICA8aDIgaWQ9InN0bmQtdGl0bGUiPklFRUUgU3RhbmRhcmQgZm9yIEluZXJ0aWFsIFNlbnNvciBUZXJtaW5vbG9neTwvaDI+CiAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbC0xMiAuY29sLWxnLTExIC0tPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLTEyIGNvbC1sZy04Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwdXJjaGFzZS1vcHRpb25zIiBjbGFzcz0iZC1ncmlkIGdhcC00IGQtbWQtYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaWQ9InN0bmQtYnV5LXVybCIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly93d3cudGVjaHN0cmVldC5jb20vaWVlZS9wcm9kdWN0cy92ZW5kb3JfaWQvNzI5MiIgdGFyZ2V0PSJfYmxhbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb2xlPSJidXR0b24iPlB1cmNoYXNlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaWQ9InN0bmQtc3Vic2NyaXB0aW9uLXVybCIgY2xhc3M9ImJ0biBidG4tb3V0bGluZS1wcmltYXJ5IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2llZWV4cGxvcmUuaWVlZS5vcmcvc2VydmxldC9vcGFjP3B1bnVtYmVyPTg4NjM3OTciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9Il9ibGFuayIgcm9sZT0iYnV0dG9uIj5BY2Nlc3MgdmlhIFN1YnNjcmlwdGlvbjwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyNwdXJjaGFzZS1vcHRpb25zIC0tPgogICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb2wtMTIgLmNvbC1sZy04IC0tPgogICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLnJvdyAtLT4KICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KICAgIDwvc2VjdGlvbj4gPCEtLSAvI3BhZ2UtdGl0bGUgLS0+CgogICAgCiAgICA8c2VjdGlvbiBpZD0iYnJlYWRjcnVtYnMiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtMTIiPgogICAgICAgICAgICAgICAgICAgIDxuYXYgaWQ9ImJyZWFkY3J1bWItbmF2IiBhcmlhLWxhYmVsPSJicmVhZGNydW1iIj4KICAgICAgICAgICAgICAgICAgICAgICAgPG9sIGNsYXNzPSJicmVhZGNydW1iIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iYnJlYWRjcnVtYi1pdGVtIj48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZyIgdGl0bGU9IkhvbWUiPkhvbWU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJicmVhZGNydW1iLWl0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3NlYXJjaC8/cT1TdGFuZGFyZCIgdGl0bGU9IlN0YW5kYXJkcyI+U3RhbmRhcmRzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iYnJlYWRjcnVtYi1pdGVtIGFjdGl2ZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1jdXJyZW50PSJwYWdlIj5JRUVFIDUyOC0yMDE5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDwvb2w+IDwhLS0gLy5icmVhZGNydW1iIC0tPgogICAgICAgICAgICAgICAgICAgIDwvbmF2PiA8IS0tIC8jYnJlYWRjcnVtYi1uYXYgLS0+CiAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbC0xMiAtLT4KICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5yb3cgLS0+CiAgICAgICAgPC9kaXY+IDwhLS0gLy5jb250YWluZXIgLS0+CiAgICA8L3NlY3Rpb24+IDwhLS0gLyNicmVhZGNydW1icyAtLT4KICAgIAogICAgPHNlY3Rpb24gaWQ9ImNvbnRlbnQiIGNsYXNzPSJzdGFuZGFyZCI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgIDxkaXYgaWQ9Im1haW4tY29udGVudCIgY2xhc3M9ImNvbC0xMiBjb2wtbGctMTAgb2Zmc2V0LWxnLTEgY29sLXhsLTggb2Zmc2V0LXhsLTIiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InN0bmQtZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICA8cD5UZXJtcyBhbmQgZGVmaW5pdGlvbnMgcmVsYXRpbmcgdG8gaW5lcnRpYWwgc2Vuc29ycyBhcmUgcHJlc2VudGVkIGluIHRoaXMgc3RhbmRhcmQuIFVzYWdlIGFzIHVuZGVyc3Rvb2QgYnkgdGhlIGluZXJ0aWFsIHNlbnNvciBjb21tdW5pdHkgaXMgZ2l2ZW4gcHJlZmVyZW5jZSBvdmVyIGdlbmVyYWwgdGVjaG5pY2FsIHVzYWdlIG9mIHRoZSB0ZXJtcyBoZXJlaW4uIFRoZSBjcml0ZXJpb24gZm9yIGluY2x1c2lvbiBvZiBhIHRlcm0gYW5kIGl0cyBkZWZpbml0aW9uIGluIHRoaXMgc3RhbmRhcmQgaXMgdXNlZnVsbmVzcyBhcyByZWxhdGVkIHRvIGluZXJ0aWFsIHNlbnNvciB0ZWNobm9sb2d5LjwvcD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3N0bmQtZGVzY3JpcHRpb24gLS0+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ic3RhbmRhcmQtZGV0YWlscyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbCBjbGFzcz0icm93Ij4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdCBjbGFzcz0iY29sLXNtLTQgY29sLW1kLTMiPlNwb25zb3IgQ29tbWl0dGVlPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgaWQ9InN0bmQtY29tbWl0dGVlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij5BRVMvR0EgLSBHeXJvIEFjY2VsZXJvbWV0ZXIgUGFuZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyPjxhIGlkPSJzdG5kLWNvbW1pdHRlZS11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly9pZWVlLWFlc3Mub3JnL3RlY2gtb3BzL2d5cm8tYW5kLWFjY2VsZXJvbWV0ZXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiIHRhcmdldD0iX2JsYW5rIj5MZWFybiBNb3JlPC9hPjwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC1zbS00IGNvbC1tZC0zIj5TdGF0dXM8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGlkPSJzdG5kLXN0YXR1cyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPkFjdGl2ZSBTdGFuZGFyZDwvZGQ+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC1zbS00IGNvbC1tZC0zIj5QQVIgQXBwcm92YWw8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC1wYXItYXBwcm92YWwtZGF0ZSIgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij48YSBpZD0ic3RuZC1wYXItbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldD0iX2JsYW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL2RldmVsb3BtZW50LnN0YW5kYXJkcy5pZWVlLm9yZy9teXByb2plY3Qtd2ViL3B1YmxpYy92aWV3Lmh0bWwjcGFyZGV0YWlsLzY0NjMiPjIwMTgtMDUtMTQ8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdCBjbGFzcz0iY29sLXNtLTQgY29sLW1kLTMiPlN1cGVyc2VkaW5nPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgaWQ9InN0bmQtc3VwZXJzZWRpbmciIGNsYXNzPSJjb2wtc20tOCBjb2wtbWQtOSI+PGEgaWQ9InN0bmQtc3VwZXJzZWRpbmctdXJsIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS81MjgvNzgwIj41MjgtMjAwMTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdCBjbGFzcz0iY29sLXNtLTQgY29sLW1kLTMiPkJvYXJkIEFwcHJvdmFsPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgaWQ9InN0bmQtYXBwcm92YWwtZGF0ZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij4yMDE5LTA2LTEzPC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC1zbS00IGNvbC1tZC0zIj5IaXN0b3J5PC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsIGNsYXNzPSJyb3ciPgoKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdCBjbGFzcz0iY29sLTcgY29sLW1kLTQiPlB1Ymxpc2hlZDo8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC1wdWJsaXNoZWQtZGF0ZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImNvbC01IGNvbC1tZC04Ij4yMDE5LTEwLTA4PC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4gPCEtLSAvLnJvdyAtLT4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3N0YW5kYXJkLWRldGFpbHMgLS0+CgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IndvcmtpbmctZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9ImgyIHNlY3Rpb24tdGl0bGUiPldvcmtpbmcgR3JvdXAgRGV0YWlsczwvaDM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IndvcmtpbmctZ3JvdXAtZGV0YWlscyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGwgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+U29jaWV0eTwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC1zb2NpZXR5IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij5JRUVFIEFlcm9zcGFjZSBhbmQgRWxlY3Ryb25pYyBTeXN0ZW1zIFNvY2lldHkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnI+PGEgaWQ9InN0bmQtc29jaWV0eS11cmwiIGNsYXNzPSJhcnJvdy1saW5rIiBocmVmPSJodHRwOi8vd3d3LmllZWUtYWVzcy5vcmcvIiB0aXRsZT0iTGVhcm4gTW9yZSIgdGFyZ2V0PSJfYmxhbmsiPkxlYXJuIE1vcmU8L2E+PC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC1zbS00IGNvbC1tZC0zIj5TcG9uc29yIENvbW1pdHRlZTwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgaWQ9InN0bmQtd29ya2luZy1ncm91cC1jb21taXR0ZWUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij5BRVMvR0EgLSBHeXJvIEFjY2VsZXJvbWV0ZXIgUGFuZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxicj48YSBpZD0ic3RuZC13b3JraW5nLWdyb3VwLWNvbW1pdHRlZS11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9Il9ibGFuayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cDovL2llZWUtYWVzcy5vcmcvdGVjaC1vcHMvZ3lyby1hbmQtYWNjZWxlcm9tZXRlciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+PC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9ImNvbC1zbS00IGNvbC1tZC0zIj5Xb3JraW5nIEdyb3VwPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGlkPSJzdG5kLXdvcmtpbmctZ3JvdXAiIGNsYXNzPSJjb2wtc20tOCBjb2wtbWQtOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNFTlNSX1dHIC0gU2Vuc29ycyBXb3JraW5nIEdyb3VwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnI+PGEgaWQ9InN0bmQtd29ya2luZy1ncm91cC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIiB0YXJnZXQ9Il9ibGFuayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9kZXZlbG9wbWVudC5zdGFuZGFyZHMuaWVlZS5vcmcvbXlwcm9qZWN0LXdlYi9wdWJsaWMvdmlldy5odG1sIy9pbnRlcmVzdC8zNTQ2IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+SUVFRSBQcm9ncmFtIE1hbmFnZXI8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQgaWQ9InN0bmQtc3RhZmYtbGlhaXNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJjb2wtc20tOCBjb2wtbWQtOSI+U29vIEtpbSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnI+PGEgaWQ9InN0bmQtc3RhZmYtbGlhaXNvbi1lbWFpbCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0ibWFpbFRPOnMuaC5raW1AaWVlZS5vcmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkNvbnRhY3QiPkNvbnRhY3Q8L2E+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+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+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1pbmFjdGl2ZS1yZXNlcnZlZCBzdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctaW5hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj4xNTU0LTIwMDU8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFJlY29tbWVuZGVkIFByYWN0aWNlIGZvciBJbmVydGlhbCBTZW5zb3IgVGVzdCBFcXVpcG1lbnQsIEluc3RydW1lbnRhdGlvbiwgRGF0YSBBY3F1aXNpdGlvbiwgYW5kIEFuYWx5c2lzPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5UZXN0IGVxdWlwbWVudCwgZGF0YSBhY3F1aXNpdGlvbiBlcXVpcG1lbnQsIGluc3RydW1lbnRhdGlvbiwgdGVzdCBmYWNpbGl0aWVzLCBhbmQgZGF0YSBhbmFseXNpcyB0ZWNobmlxdWVzIHVzZWQgaW4gaW5lcnRpYWwgc2Vuc29yIHRlc3RpbmcgYXJlIGRlc2NyaWJlZCBpbiB0aGlzIHJlY29tbWVuZGVkIHByYWN0aWNlLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvMTU1NC8yMjkyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+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+NjQ3LTIwMDY8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgU2luZ2xlLUF4aXMgTGFzZXIgR3lyb3M8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPlNwZWNpZmljYXRpb24gYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBhIHNpbmdsZS1heGlzIHJpbmcgbGFzZXIgZ3lybyAoUkxHKSBmb3IgdXNlIGFzIGEgIHNlbnNvciBpbiBhdHRpdHVkZSBjb250cm9sIHN5c3RlbXMsIGFuZ3VsYXIgZGlzcGxhY2VtZW50IG1lYXN1cmluZyBzeXN0ZW1zLCBhbmQgYW5ndWxhciByYXRlICBtZWFzdXJpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gQSBzdGFuZGFyZCBzcGVjaWZpY2F0aW9uIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgIHNpbmdsZS1heGlzIFJMRyBpcyBwcm92aWRlZC4gQSBjb21waWxhdGlvbiBvZiByZWNvbW1lbmRlZCBwcm9jZWR1cmVzIGZvciB0ZXN0aW5nIGFuIFJMRywgIGRlcml2ZWQgZnJvbSB0aG9zZSBwcmVzZW50bHkgdXNlZCBpbiB0aGUgaW5kdXN0cnksIGlzIGFsc28gcHJvdmlkZWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS82NDcvMzEzNCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctaW5hY3RpdmUtcmVzZXJ2ZWQgc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLWluYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+NjcxLTE5ODU8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgTm9uZ3lyb3Njb3BpYyBJbmVydGlhbCBBbmd1bGFyIFNlbnNvcnM6IEplcmssIEFjY2VsZXJhdGlvbiwgVmVsb2NpdHksIGFuZCBEaXNwbGFjZW1lbnQ8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPkEgZ3VpZGUgaXMgcHJlc2VudGVkIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYSBzcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHByb2NlZHVyZSBmb3IgYW4gaW5lcnRpYWwgYW5ndWxhciBzZW5zb3IgdGhhdCBwcm92aWRlcyBhIGNvbW1vbiBtZWV0aW5nIGdyb3VuZCBvZiB0ZXJtaW5vbG9neSBhbmQgcHJhY3RpY2UgZm9yIG1hbnVmYWN0dXJlcnMgYW5kIHVzZXJzIG9mIGFuIGFycmF5IG9mIHNlbnNvcnMgdGhhdCBoYXZlIGJlZW4gZGV2ZWxvcGVkIHRvIG1lZXQgbmVlZHMgbm90IGVhc2lseSBtZXQgYnkgdHJhZGl0aW9uYWwgc3Bpbm5pbmctcm90b3IgZ3lyb3Njb3Blcy4gQSB0ZXN0IHByb2NlZHVyZSBmb3IgdmVyaWZ5aW5nIHRoYXQgdGhlIHNwZWNpZmljYXRpb25zIGhhdmUgYmVlbiBtZXQgaXMgZ2l2ZW4uIFRoZSBzdGFuZGFyZCBpcyBub3QgaW50ZW5kZWQgdG8gY29tcGV0ZSB3aXRoIGV4aXN0aW5nIHN0YW5kYXJkcyBmb3Igc3BlY2lmaWMgZGV2aWNlcyB3aXRoIGhpZ2hseSBzcGVjaWZpYyBtb2RlbHMgYW5kIGVycm9yIHNvdXJjZXMsIHN1Y2ggYXMgc3ByaW5nLXJlc3RyYWluZWQgcmF0ZSBneXJvcywgYnV0IHRvIHByb3ZpZGUgYSB1bmlmb3JtIGd1aWRlIGZvciB0aG9zZSBpbmVydGlhbCBhbmd1bGFyIHNlbnNvcnMgdGhhdCBoYXZlIG5vdCBiZWVuIGNvdmVyZWQgZWxzZXdoZXJlLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvNjcxLzkyNiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctaW5hY3RpdmUtcmVzZXJ2ZWQgc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLWluYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+NjcxLTE5ODUvQ29yIDEtMjAxMDwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBOb25neXJvc2NvcGljIEluZXJ0aWFsIEFuZ3VsYXIgU2Vuc29yczogSmVyaywgQWNjZWxlcmF0aW9uLCBWZWxvY2l0eSwgYW5kIERpc3BsYWNlbWVudCBDb3JyaWdlbmR1bSAxOiA0LjcuMi42IFNob3J0LVRlcm0gU3RhYmlsaXR5IGFuZCBBbm5leCBBIFNlbnNvciBEeW5hbWljIEJsb2NrIERpYWdyYW1zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5JRUVFIFN0ZCA2NzEtMTk4NSBwcm92aWRlcyBzcGVjaWZpY2F0aW9ucyBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGEgbm9uLWd5cm9zY29waWMgaW5lcnRpYWwgYW5ndWxhciBzZW5zb3IgdGhhdCBtYXkgbWVhc3VyZSBhbmd1bGFyIGplcmssIGFjY2VsZXJhdGlvbiwgcmF0ZSwgb3IgZGlzcGxhY2VtZW50IHdpdGggb3Igd2l0aG91dCByZXNwb25zZSBkb3duIHRvIHplcm8gZnJlcXVlbmN5LiBBIHN0YW5kYXJkIHNwZWNpZmljYXRpb24gZm9ybWF0IGlzIHByb3ZpZGVkLiBBIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHRlc3QgcHJvY2VkdXJlcywgZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeSwgaXMgYWxzbyBwcm92aWRlZC4gSW5mb3JtYXRpdmUgYW5uZXhlcyBjb3ZlciBkZXNpZ24gZmVhdHVyZXMgYW5kIHRoZW9yZXRpY2FsIHByaW5jaXBsZXMgb2Ygb3BlcmF0aW9uLiAgVGhpcyBjb3JyaWdlbmR1bSBtYWtlcyBjaGFuZ2VzIHRvIDQuNy4yLjYgdG8gZGVsZXRlIGEgc2VudGVuY2UgdGhhdCBkb2VzIG5vdCBiZWxvbmcgdGhlcmUsIHRvIGFkZCBhIHN1YmNsYXVzZSB0aGF0IHdhcyBpbmFkdmVydGVudGx5IGxlZnQgb3V0LCBhbmQgdG8gcmVudW1iZXIgdGhlIGV4aXN0aW5nIHN1YmNsYXVzZXMuIENoYW5nZXMgYXJlIGFsc28gYmVpbmcgbWFkZSB0byBmaXggdGhlIGJsb2NrIGRpYWdyYW1zIGluIEFubmV4IEEsIHRvIGNvcnJlY3QgYSBtaXNzcGVsbGluZyBvZiBpbmVydGlhLCBhbmQgdG8gYWRkIGEgbWlzc2luZyBzeW1ib2wuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS82NzEtMTk4NV9Db3JfMS80NjgzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+TGVhcm4gTW9yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLndnLXN0YW5kYXJkIC53Zy1pbmFjdGl2ZS1yZXNlcnZlZCBzdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctaW5hY3RpdmUtc3RhbmRhcmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2lnbmF0aW9uIj44MTMtMTk4ODwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBUd28tRGVncmVlLW9mLUZyZWVkb20gRHluYW1pY2FsbHkgVHVuZWQgR3lyb3M8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzY3JpcHRpb24iPkEgZm9ybWF0IGd1aWRlIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYSB0d28tZGVncmVlLW9mLWZyZWVkb20gZHluYW1pY2FsbHkgdHVuZWQgZ3lybyAoRFRHKSBzcGVjaWZpY2F0aW9uIGlzIGdpdmVuIHRoYXQgcHJvdmlkZXMgYSBjb21tb24gZ3JvdW5kIG9mIHRlcm1pbm9sb2d5IGFuZCBwcmFjdGljZSBmb3IgbWFudWZhY3R1cmVycyBhbmQgdXNlcnMuIEEgY29tcGlsYXRpb24gb2YgcmVjb21tZW5kZWQgcHJvY2VkdXJlcyBmb3IgdGVzdGluZyBhIERURyBpcyBhbHNvIGdpdmVuLiBUaGUgcmVxdWlyZW1lbnRzIGFuZCB0ZXN0IHByb2NlZHVyZXMgYXJlIGRlZmluZWQgaW4gdGVybXMgdW5pcXVlIHRvIHRoZSBEVEcuIFRoZXkgY292ZXIgYXBwbGljYXRpb25zIG9mIHRoZSBneXJvIGFzIGFuIGFuZ3VsYXIgbW90aW9uIHNlbnNvciBpbiBuYXZpZ2F0aW9uIGFuZCBjb250cm9sIHN5c3RlbXMuIFRoZXkgYXBwbHkgdG8gdHdvIG1vZGVzIG9mIHVzZTogKDEpIGFzIGEgc3RyYXAtZG93biBzZW5zb3IgaW4gb3BlcmF0aW5nIGVudmlyb25tZW50cyB0eXBpY2FsIG9mIGFpcmNyYWZ0IGFuZCBtaXNzaWxlIGFwcGxpY2F0aW9ucywgYW5kICgyKSBhcyBhIHNlbnNvciBpbiBnaW1iYWxsZWQgcGxhdGZvcm0gYXBwbGljYXRpb25zIGluIHdoaWNoIHRoZSBkeW5hbWljIGFuZ3VsYXIgaW5wdXRzIHRvIHdoaWNoIHRoZSBneXJvIGlzIHN1YmplY3RlZCBhcmUgYmVuaWduIHJlbGF0aXZlIHRvIHRoZSBhY2N1cmFjeSByZXF1aXJlZC4gSW4gdGhlIGNhc2Ugb2YgdGhlIHN0cmFwLWRvd24gRFRHLCB0aGUgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSBleHRlcm5hbCBjYXB0dXJlIGxvb3BzIGFyZSBjb25zaWRlcmVkIHRvIHRoZSBleHRlbnQgbmVjZXNzYXJ5IHRvIGRlZmluZSB0aGUgZ3lybyBwZXJmb3JtYW5jZS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzgxMy8xMjAwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT0iTGVhcm4gTW9yZSI+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+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tOTQxOCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS05NDE4Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9kaXN0cmliLyI+RGlzdHJpYnV0b3IgUHJvZ3JhbTwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzcyIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNzIiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L3RyYWluaW5nLyI+VHJhaW5pbmcgJiMwMzg7IERldmVsb3BtZW50PC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTg0MzgiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODQzOCI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvcG9saWNpZXMvIj5Qb2xpY2llcyAmIzAzODsgUHJvY2VkdXJlczwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04NDM5IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTg0MzkiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2NvbnRhY3QvIj5Db250YWN0IFVzPC9hPjwvbGk+CjwvdWw+PC9kaXY+PC9kaXY+CjwhLS0gZW5kIHdpZGdldCAtLT4KPC9kaXY+PCEtLSBlbmQgY29sdW1uIC0tPgo8ZGl2IGNsYXNzPSJjb2wtMTIgY29sLXNtLTYgY29sLW1kLTMiPjwhLS0gYmVnaW4gY29sdW1uIC0tPgo8ZGl2IGNsYXNzPSJ3aWRnZXQiPjwhLS0gYmVnaW4gd2lkZ2V0IC0tPgo8ZGl2IGNsYXNzPSJ3aWRnZXQtdGl0bGUiPkJvYXJkIG9mIEdvdmVybm9yczwvZGl2Pgo8ZGl2IGNsYXNzPSJtZW51LWZvb3Rlci1tZW51LWJvYXJkLW9mLWdvdmVybm9ycy1jb250YWluZXIiPjx1bCBpZD0ibWVudS1mb290ZXItbWVudS1ib2FyZC1vZi1nb3Zlcm5vcnMiIGNsYXNzPSJtZW51Ij48bGkgaWQ9Im1lbnUtaXRlbS04MzYzIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNjMiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2JvZy8iPkFib3V0IEJvYXJkIG9mIEdvdmVybm9yczwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzY0IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzNjQiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2JvZy9hcmNvbS8iPkF3YXJkcyBDb21taXR0ZWU8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM2NSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzY1Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9ib2cvY2FnLyI+Q29ycG9yYXRlIEFkdmlzb3J5IEdyb3VwPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzNjYiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM2NiI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvYm9nL2ljY29tLyI+SW5kdXN0cnkgQ29ubmVjdGlvbnMgQ29tbWl0dGVlPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzNjciIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM2NyI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvYm9nL3JhYy8iPlJlZ2lzdHJhdGlvbiBBdXRob3JpdHkgQ29tbWl0dGVlPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzNjgiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM2OCI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvYm9nL3NwY2MvIj5TdHJhdGVnaWMgUGxhbm5pbmcgQ29vcmRpbmF0aW9uIENvbW1pdHRlZTwvYT48L2xpPgo8L3VsPjwvZGl2PjwvZGl2Pgo8IS0tIGVuZCB3aWRnZXQgLS0+CjwvZGl2PjwhLS0gZW5kIGNvbHVtbiAtLT4KPGRpdiBjbGFzcz0iY29sLTEyIGNvbC1zbS02IGNvbC1tZC0zIj48IS0tIGJlZ2luIGNvbHVtbiAtLT4KPGRpdiBjbGFzcz0id2lkZ2V0Ij48IS0tIGJlZ2luIHdpZGdldCAtLT4KPGRpdiBjbGFzcz0id2lkZ2V0LXRpdGxlIj5TdGFuZGFyZHMgQm9hcmQ8L2Rpdj4KPGRpdiBjbGFzcz0ibWVudS1mb290ZXItbWVudS1zdGFuZGFyZHMtYm9hcmQtY29udGFpbmVyIj48dWwgaWQ9Im1lbnUtZm9vdGVyLW1lbnUtc3RhbmRhcmRzLWJvYXJkIiBjbGFzcz0ibWVudSI+PGxpIGlkPSJtZW51LWl0ZW0tODM3OCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04Mzc4Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9zYXNiLyI+QWJvdXQgU3RhbmRhcmRzIEJvYXJkPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzNzkiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM3OSI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvc2FzYi9zYmEvIj5Cb2FyZCBBcHByb3ZhbHM8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM4MCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzgwIj48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9zYXNiL2F1ZGNvbS8iPkF1ZGl0IENvbW1pdHRlZTwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MzgxIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgzODEiPjxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L3Nhc2IvbmVzY29tLyI+TmV3IFN0YW5kYXJkcyBDb21taXR0ZWU8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM4MiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzgyIj48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9zYXNiL3BhdGNvbS8iPlBhdGVudCBDb21taXR0ZWU8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM4MyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MzgzIj48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9zYXNiL3Byb2NvbS8iPlByb2NlZHVyZXMgQ29tbWl0dGVlPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgzODQiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODM4NCI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvc2FzYi9yZXZjb20vIj5TdGFuZGFyZHMgUmV2aWV3IENvbW1pdHRlZTwvYT48L2xpPgo8L3VsPjwvZGl2PjwvZGl2Pgo8IS0tIGVuZCB3aWRnZXQgLS0+CjwvZGl2PjwhLS0gZW5kIGNvbHVtbiAtLT4KPGRpdiBjbGFzcz0iY29sLTEyIGNvbC1zbS02IGNvbC1tZC0zIj48IS0tIGJlZ2luIGNvbHVtbiAtLT4KPGRpdiBjbGFzcz0id2lkZ2V0Ij48IS0tIGJlZ2luIHdpZGdldCAtLT4KPGRpdiBjbGFzcz0id2lkZ2V0LXRpdGxlIj5OZXdzICYjMDM4OyBFdmVudHM8L2Rpdj4KPGRpdiBjbGFzcz0ibWVudS1mb290ZXItbWVudS1uZXdzLWV2ZW50cy1jb250YWluZXIiPjx1bCBpZD0ibWVudS1mb290ZXItbWVudS1uZXdzLWV2ZW50cyIgY2xhc3M9Im1lbnUiPjxsaSBpZD0ibWVudS1pdGVtLTg0NDAiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODQ0MCI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvbmV3cy8iPk5ld3M8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODM3NiIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04Mzc2Ij48YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9uZXdzL3N3aXJlLyI+SUVFRSBTQSBOZXdzbGV0dGVyPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTg0NDEiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODQ0MSI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvZXZlbnRzLyI+RXZlbnRzPC9hPjwvbGk+CjwvdWw+PC9kaXY+PC9kaXY+CjwhLS0gZW5kIHdpZGdldCAtLT4KPC9kaXY+PCEtLSBlbmQgY29sdW1uIC0tPgogICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5yb3cgLS0+CiAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8uY29udGFpbmVyIC0tPgogICAgICAgIDwvc2VjdGlvbj4gPCEtLSAvI2Zvb3Rlci13aWRnZXRzIC0tPgoKICAgICAgICA8c2VjdGlvbiBpZD0iZm9vdGVyLWJhciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IGZvb3Rlci1iYXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSIvIiB0aXRsZT0iSG9tZSI+SG9tZTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSIvc2l0ZW1hcC8iIHRpdGxlPSJTaXRlbWFwIj5TaXRlbWFwPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnL2Fib3V0L2NvbnRhY3QuaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJDb250YWN0ICZhbXA7IFN1cHBvcnQiPkNvbnRhY3QgJmFtcDsgU3VwcG9ydDwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy9hY2Nlc3NpYmlsaXR5LXN0YXRlbWVudC5odG1sIiB0YXJnZXQ9Il9ibGFuayIgdGl0bGU9IkFjY2Vzc2liaWxpdHkiPkFjY2Vzc2liaWxpdHk8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvYWJvdXQvY29ycG9yYXRlL2dvdmVybmFuY2UvcDktMjYuaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJOb25kaXNjcmltaW5hdGlvbiBQb2xpY3kiPk5vbmRpc2NyaW1pbmF0aW9uIFBvbGljeTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+PGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJodHRwczovL3NlY3VyZS5ldGhpY3Nwb2ludC5jb20vZG9tYWluL21lZGlhL2VuL2d1aS8yMDQxMC9pbmRleC5odG1sIiB0YXJnZXQ9Il9ibGFuayIgdGl0bGU9IklFRUUgRXRoaWNzIFJlcG9ydGluZyI+SUVFRSBFdGhpY3MgUmVwb3J0aW5nPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnL3NlY3VyaXR5LXByaXZhY3kuaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJJRUVFIFByaXZhY3kgUG9saWN5Ij5JRUVFIFByaXZhY3kgUG9saWN5PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj48YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Ii9pcHIvIiB0aXRsZT0iSUVFRSBTQSBDb3B5cmlnaHQgUG9saWN5Ij5JRUVFIFNBIENvcHlyaWdodCBQb2xpY3k8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4gPCEtLSAvLm5hdiAuZm9vdGVyIC0tPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJjb3B5cmlnaHQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+JmNvcHk7IENvcHlyaWdodCA8c3BhbiBpZD0iY29weXJpZ2h0LXllYXIiPjIwMjE8L3NwYW4+IElFRUUgJm5kYXNoOyBBbGwgcmlnaHRzIHJlc2VydmVkLiBVc2Ugb2YgdGhpcyB3ZWJzaXRlIHNpZ25pZmllcyB5b3VyIGFncmVlbWVudCB0byB0aGUgPGEgY2xhc3M9ImZvb3Rlci1saW5rIiBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy9hYm91dC9oZWxwL3NpdGUtdGVybXMtY29uZGl0aW9ucy5odG1sIiB0YXJnZXQ9Il9ibGFuayIgdGl0bGU9IklFRUUgVGVybXMgYW5kIENvbmRpdGlvbnMiPklFRUUgVGVybXMgYW5kIENvbmRpdGlvbnM8L2E+Ljxicj5BIG5vdC1mb3ItcHJvZml0IG9yZ2FuaXphdGlvbiwgSUVFRSBpcyB0aGUgd29ybGQmcnNxdW87cyBsYXJnZXN0IHRlY2huaWNhbCBwcm9mZXNzaW9uYWwgb3JnYW5pemF0aW9uIGRlZGljYXRlZCB0byBhZHZhbmNpbmcgdGVjaG5vbG9neSBmb3IgdGhlIGJlbmVmaXQgb2YgaHVtYW5pdHkuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI2NvcHlyaWdodCAtLT4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbC0xMiAtLT4KICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ucm93IC0tPgogICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KICAgICAgICA8L3NlY3Rpb24+IDwhLS0gLyNmb290ZXItYmFyIC0tPgogICAgPC9mb290ZXI+CgogICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1zdWJzY3JpYmUiIHR5cGU9ImJ1dHRvbiIgZGF0YS1icy10b2dnbGU9Im9mZmNhbnZhcyIgZGF0YS1icy10YXJnZXQ9IiNuZXdzbGV0dGVyLXN1YnNjcmliZSIgYXJpYS1jb250cm9scz0ibmV3c2xldHRlci1zdWJzY3JpYmUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLWxhYmVsPSJUb2dnbGUgbmV3c2xldHRlciBzdWJzY3JpYmUgZm9ybSI+U3Vic2NyaWJlPC9idXR0b24+IDwhLS0gLy5idG4gLmJ0bi1zdWJzY3JpYmUgLS0+CgogICAgPGRpdiBpZD0ibmV3c2xldHRlci1zdWJzY3JpYmUiIGNsYXNzPSJvZmZjYW52YXMgb2ZmY2FudmFzLWVuZCIgZGF0YS1icy1zY3JvbGw9InRydWUiIGRhdGEtYnMtYmFja2Ryb3A9InRydWUiIHRhYmluZGV4PSItMSIgYXJpYS1sYWJlbGxlZGJ5PSJuZXdzbGV0dGVyLXN1YnNjcmliZS10aXRsZSI+CiAgICAgICAgPGRpdiBjbGFzcz0ib2ZmY2FudmFzLWhlYWRlciI+CiAgICAgICAgICAgIDxoNSBjbGFzcz0iaDIgb2ZmY2FudmFzLXRpdGxlIiBpZD0ibmV3c2xldHRlci1zdWJzY3JpYmUtdGl0bGUiPk5ld3N3aXJlPC9oNT4KICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4tY2xvc2UgdGV4dC1yZXNldCIgZGF0YS1icy1kaXNtaXNzPSJvZmZjYW52YXMiIGFyaWEtbGFiZWw9IkNsb3NlIj48L2J1dHRvbj4KICAgICAgICA8L2Rpdj4gPCEtLSAvLm9mZmNhdmFzLWhlYWRlciAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJvZmZjYW52YXMtYm9keSI+CiAgICAgICAgICAgIDxwPlNpZ24gdXAgZm9yIG91ciBtb250aGx5IG5ld3NsZXR0ZXIgdG8gbGVhcm4gYWJvdXQgbmV3IGRldmVsb3BtZW50cywgaW5jbHVkaW5nIHJlc291cmNlcywgaW5zaWdodHMgYW5kIG1vcmUuPC9wPgogICAgICAgICAgICA8IS0tIE1hcmtldG8gRm9ybSAtLT4KICAgICAgICAgICAgPHNjcmlwdCBzcmM9Ii8vYXBwLWFiMjgubWFya2V0by5jb20vanMvZm9ybXMyL2pzL2Zvcm1zMi5taW4uanMiPjwvc2NyaXB0PgogICAgICAgICAgICA8Zm9ybSBpZD0ibWt0b0Zvcm1fMTAyMiIgY2xhc3M9Im1hcmtldG9Gb3JtIj48L2Zvcm0+CiAgICAgICAgICAgIDxzY3JpcHQ+TWt0b0Zvcm1zMi5sb2FkRm9ybSgiLy9hcHAtYWIyOC5tYXJrZXRvLmNvbSIsICIyMTEtRllMLTk1NSIsIDEwMjIpOzwvc2NyaXB0PgogICAgICAgIDwvZGl2PiA8IS0tIC8ub2ZmY2F2YXMtYm9keSAtLT4KICAgIDwvZGl2PiA8IS0tIC8jbmV3c2xldHRlci1zdWJzY3JpYmUgLm9mZmNhbnZhcyAtLT4KCgogICAgPGRpdiBjbGFzcz0ic2NyZWVuLWRhcmtlbiI+PC9kaXY+IDwhLS0gLy5zY3JlZW4tZGFya2VuIC0tPgoKICAgPCEtLSA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuNi4wLnNsaW0ubWluLmpzIiBpbnRlZ3JpdHk9InNoYTI1Ni11N2U1a2h5aXRobElkVHB1MjJQSGhFTm1QY1JkRmlIUmpoQXVIY3MwNVJJPSIgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+LS0+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9ib290c3RyYXBANS4xLjMvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyIgaW50ZWdyaXR5PSJzaGEzODQta2E3U2swR2xuNGdtdHoyTWxRbmlrVDF3WGdZc09nK09NaHVQK0lsUkg5c0VOQk8wTFJuNXErOG5iVG92NCsxcCIgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+CgogICAgPHNjcmlwdD4KICAgICAgICAvLyBvZmZjYW52YXMgbW9iaWxlIG1lbnUKICAgICAgICBmdW5jdGlvbiBkYXJrZW5fc2NyZWVuKHllc25vKSB7CiAgICAgICAgICAgIGlmKCB5ZXNubyA9PSB0cnVlICkgewogICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLnNjcmVlbi1kYXJrZW4nKS5jbGFzc0xpc3QuYWRkKCdhY3RpdmUnKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmKHllc25vID09IGZhbHNlKSB7CiAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc2NyZWVuLWRhcmtlbicpLmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBjbG9zZV9vZmZjYW52YXMoKSB7CiAgICAgICAgICAgIGRhcmtlbl9zY3JlZW4oZmFsc2UpOwogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjbW9iaWxlLW1lbnUuc2hvdycpLmNsYXNzTGlzdC5yZW1vdmUoJ3Nob3cnKTsKICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCdvZmZjYW52YXMtYWN0aXZlJyk7CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBzaG93X29mZmNhbnZhcyhvZmZjYW52YXNfaWQpIHsKICAgICAgICAgICAgZGFya2VuX3NjcmVlbih0cnVlKTsKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQob2ZmY2FudmFzX2lkKS5jbGFzc0xpc3QuYWRkKCdzaG93Jyk7CiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgnb2ZmY2FudmFzLWFjdGl2ZScpOwogICAgICAgIH0KCgogICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRlbnRMb2FkZWQnLCBmdW5jdGlvbigpIHsKCiAgICAgICAgICAgIC8vIGFmZml4IGhlYWRlciB0byB0b3Agb24gc2Nyb2xsCiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBmdW5jdGlvbigpIHsKCiAgICAgICAgICAgICAgICBpZiAod2luZG93LnNjcm9sbFkgPiA1MCkgewoKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndG9wLWJhcicpLmNsYXNzTGlzdC5hZGQoJ2Qtbm9uZScpOwogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtYXN0aGVhZCcpLmNsYXNzTGlzdC5hZGQoJ2ZpeGVkLXRvcCcpOwoKICAgICAgICAgICAgICAgICAgICAvLyBhZGQgcGFkZGluZyB0b3AgdG8gc2hvdyBjb250ZW50IGJlaGluZCBuYXZiYXIKICAgICAgICAgICAgICAgICAgICBtYXN0aGVhZEhlaWdodCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNtYXN0aGVhZCcpLm9mZnNldEhlaWdodDsKCiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nVG9wID0gbWFzdGhlYWRIZWlnaHQgKyAncHgnOwoKICAgICAgICAgICAgICAgIH0gZWxzZSB7CgogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b3AtYmFyJykuY2xhc3NMaXN0LnJlbW92ZSgnZC1ub25lJyk7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ21hc3RoZWFkJykuY2xhc3NMaXN0LnJlbW92ZSgnZml4ZWQtdG9wJyk7CgogICAgICAgICAgICAgICAgICAgIC8vIHJlbW92ZSBwYWRkaW5nIHRvcCBmcm9tIGJvZHkKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdUb3AgPSAnMCc7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwoKCgogICAgICAgICAgICAvLyBvZmZjYW52YXMgbW9iaWxlIG1lbnUKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtdHJpZ2dlcl0nKS5mb3JFYWNoKGZ1bmN0aW9uKGV2ZXJ5ZWxlbWVudCkgewogICAgICAgICAgICAgICAgbGV0IG9mZmNhbnZhc19pZCA9IGV2ZXJ5ZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2RhdGEtdHJpZ2dlcicpOwogICAgICAgICAgICAgICAgZXZlcnllbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICAgICAgICAgICAgc2hvd19vZmZjYW52YXMob2ZmY2FudmFzX2lkKTsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5idG4tY2xvc2UnKS5mb3JFYWNoKGZ1bmN0aW9uKGV2ZXJ5YnV0dG9uKSB7CiAgICAgICAgICAgICAgICBldmVyeWJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICAgICAgICAgICAgY2xvc2Vfb2ZmY2FudmFzKCk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfSk7CgogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc2NyZWVuLWRhcmtlbicpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24oZXZlbnQpIHsKICAgICAgICAgICAgICAgIGNsb3NlX29mZmNhbnZhcygpOwogICAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgICAvLyBET01Db250ZW50TG9hZGVkIGVuZAoKCgogICAgICAgIC8vIGRpc3BsYXkgY3VycmVudCB5ZWFyCiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2NvcHlyaWdodC15ZWFyJykuaW5uZXJUZXh0ID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpOwogICAgPC9zY3JpcHQ+CgogICAgCQk8c2NyaXB0PgoJCSggZnVuY3Rpb24gKCBib2R5ICkgewoJCQkndXNlIHN0cmljdCc7CgkJCWJvZHkuY2xhc3NOYW1lID0gYm9keS5jbGFzc05hbWUucmVwbGFjZSggL1xidHJpYmUtbm8tanNcYi8sICd0cmliZS1qcycgKTsKCQl9ICkoIGRvY3VtZW50LmJvZHkgKTsKCQk8L3NjcmlwdD4KCQk8c2NyaXB0PiAvKiA8IVtDREFUQVsgKi92YXIgdHJpYmVfbDEwbl9kYXRhdGFibGVzID0geyJhcmlhIjp7InNvcnRfYXNjZW5kaW5nIjoiOiBhY3RpdmF0ZSB0byBzb3J0IGNvbHVtbiBhc2NlbmRpbmciLCJzb3J0X2Rlc2NlbmRpbmciOiI6IGFjdGl2YXRlIHRvIHNvcnQgY29sdW1uIGRlc2NlbmRpbmcifSwibGVuZ3RoX21lbnUiOiJTaG93IF9NRU5VXyBlbnRyaWVzIiwiZW1wdHlfdGFibGUiOiJObyBkYXRhIGF2YWlsYWJsZSBpbiB0YWJsZSIsImluZm8iOiJTaG93aW5nIF9TVEFSVF8gdG8gX0VORF8gb2YgX1RPVEFMXyBlbnRyaWVzIiwiaW5mb19lbXB0eSI6IlNob3dpbmcgMCB0byAwIG9mIDAgZW50cmllcyIsImluZm9fZmlsdGVyZWQiOiIoZmlsdGVyZWQgZnJvbSBfTUFYXyB0b3RhbCBlbnRyaWVzKSIsInplcm9fcmVjb3JkcyI6Ik5vIG1hdGNoaW5nIHJlY29yZHMgZm91bmQiLCJzZWFyY2giOiJTZWFyY2g6IiwiYWxsX3NlbGVjdGVkX3RleHQiOiJBbGwgaXRlbXMgb24gdGhpcyBwYWdlIHdlcmUgc2VsZWN0ZWQuICIsInNlbGVjdF9hbGxfbGluayI6IlNlbGVjdCBhbGwgcGFnZXMiLCJjbGVhcl9zZWxlY3Rpb24iOiJDbGVhciBTZWxlY3Rpb24uIiwicGFnaW5hdGlvbiI6eyJhbGwiOiJBbGwiLCJuZXh0IjoiTmV4dCIsInByZXZpb3VzIjoiUHJldmlvdXMifSwic2VsZWN0Ijp7InJvd3MiOnsiMCI6IiIsIl8iOiI6IFNlbGVjdGVkICVkIHJvd3MiLCIxIjoiOiBTZWxlY3RlZCAxIHJvdyJ9fSwiZGF0ZXBpY2tlciI6eyJkYXlOYW1lcyI6WyJTdW5kYXkiLCJNb25kYXkiLCJUdWVzZGF5IiwiV2VkbmVzZGF5IiwiVGh1cnNkYXkiLCJGcmlkYXkiLCJTYXR1cmRheSJdLCJkYXlOYW1lc1Nob3J0IjpbIlN1biIsIk1vbiIsIlR1ZSIsIldlZCIsIlRodSIsIkZyaSIsIlNhdCJdLCJkYXlOYW1lc01pbiI6WyJTIiwiTSIsIlQiLCJXIiwiVCIsIkYiLCJTIl0sIm1vbnRoTmFtZXMiOlsiSmFudWFyeSIsIkZlYnJ1YXJ5IiwiTWFyY2giLCJBcHJpbCIsIk1heSIsIkp1bmUiLCJKdWx5IiwiQXVndXN0IiwiU2VwdGVtYmVyIiwiT2N0b2JlciIsIk5vdmVtYmVyIiwiRGVjZW1iZXIiXSwibW9udGhOYW1lc1Nob3J0IjpbIkphbnVhcnkiLCJGZWJydWFyeSIsIk1hcmNoIiwiQXByaWwiLCJNYXkiLCJKdW5lIiwiSnVseSIsIkF1Z3VzdCIsIlNlcHRlbWJlciIsIk9jdG9iZXIiLCJOb3ZlbWJlciIsIkRlY2VtYmVyIl0sIm1vbnRoTmFtZXNNaW4iOlsiSmFuIiwiRmViIiwiTWFyIiwiQXByIiwiTWF5IiwiSnVuIiwiSnVsIiwiQXVnIiwiU2VwIiwiT2N0IiwiTm92IiwiRGVjIl0sIm5leHRUZXh0IjoiTmV4dCIsInByZXZUZXh0IjoiUHJldiIsImN1cnJlbnRUZXh0IjoiVG9kYXkiLCJjbG9zZVRleHQiOiJEb25lIiwidG9kYXkiOiJUb2RheSIsImNsZWFyIjoiQ2xlYXIifX07LyogXV0+ICovIDwvc2NyaXB0PjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWNvbnRlbnQvcGx1Z2lucy9wYWdlLWxpbmtzLXRvL2Rpc3QvbmV3LXRhYi5qcz92ZXI9My4zLjYnIGlkPSdwYWdlLWxpbmtzLXRvLWpzJz48L3NjcmlwdD4KCiAgICA8L2JvZHk+CjwvaHRtbD4K
2537
- http_version:
2538
- recorded_at: Mon, 09 May 2022 10:28:56 GMT
2539
- recorded_with: VCR 5.1.0
2539
+ CjwhZG9jdHlwZSBodG1sPgo8aHRtbCBsYW5nPSJlbiI+CjxoZWFkPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSIiPgoKICAgIDwhLS0gZmllbGRzIGZvciBDbG91ZHNlYXJjaCAtLT4KPG1ldGEgbmFtZT0idGl0bGUiIGNvbnRlbnQ9IklFRUUgU0EgLSBJRUVFIFN0YW5kYXJkIGZvciBJbmVydGlhbCBTZW5zb3IgVGVybWlub2xvZ3kiLz4KPG1ldGEgbmFtZT0idHlwZSIgY29udGVudD0iU3RhbmRhcmQiLz4KPG1ldGEgbmFtZT0idG9waWMiIGNvbnRlbnQ9IkFlcm9zcGFjZSBFbGVjdHJvbmljcyIvPgo8bWV0YSBuYW1lPSJjYXRlZ29yeSIgY29udGVudD0iIi8+CjxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXJtcyBhbmQgZGVmaW5pdGlvbnMgcmVsYXRpbmcgdG8gaW5lcnRpYWwgc2Vuc29ycyBhcmUgcHJlc2VudGVkIGluIHRoaXMgc3RhbmRhcmQuIFVzYWdlIGFzIHVuZGVyc3Rvb2QgYnkgdGhlIGluZXJ0aWFsIHNlbnNvciBjb21tdW5pdHkgaXMgZ2l2ZW4gcHJlZmVyZW5jZSBvdmVyIGdlbmVyYWwgdGVjaG5pY2FsIHVzYWdlIG9mIHRoZSB0ZXJtcyBoZXJlaW4uIFRoZSBjcml0ZXJpb24gZm9yIGluY2x1c2lvbiBvZiBhIHRlcm0gYW5kIGl0cyBkZWZpbml0aW9uIGluIHRoaXMgc3RhbmRhcmQgaXMgdXNlZnVsbmVzcyBhcyByZWxhdGVkIHRvIGluZXJ0aWFsIHNlbnNvciB0ZWNobm9sb2d5LiIvPgo8bWV0YSBuYW1lPSJrZXl3b3JkcyIgY29udGVudD0iQWVyb3NwYWNlIEVsZWN0cm9uaWNzIi8+CjwhLS0gUHJvamVjdHMvU3RhbmRhcmRzIC0tPgo8bWV0YSBuYW1lPSJTb2NpZXR5IiBjb250ZW50PSJJRUVFIEFlcm9zcGFjZSBhbmQgRWxlY3Ryb25pYyBTeXN0ZW1zIFNvY2lldHkiLz4KPG1ldGEgbmFtZT0iU3RkUmVjTm8iIGNvbnRlbnQ9IjcyOTIiLz4KPG1ldGEgbmFtZT0iU3RhdHVzIiBjb250ZW50PSJBY3RpdmUgU3RhbmRhcmQiLz4KPG1ldGEgbmFtZT0iZGVzaWduYXRpb24iIGNvbnRlbnQ9IklFRUUgNTI4LTIwMTkiLz4KCiAgICAKICAgIDx0aXRsZT5JRUVFIFNBIC0gSUVFRSA1MjgtMjAxOTwvdGl0bGU+CgogICAgPGxpbmsgcmVsPSJpY29uIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWVfZmF2aWNvbi5pY28iPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWVfYXBwbGVfdG91Y2hfaWNvbi5wbmciPgoKICAgIDxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbSI+CiAgICA8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20iIGNyb3Nzb3JpZ2luPgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1PcGVuK1NhbnM6aXRhbCx3Z2h0QDAsNDAwOzAsNTAwOzAsNjAwOzAsNzAwOzAsODAwOzEsNDAwOzEsNjAwOzEsNzAwJmRpc3BsYXk9c3dhcCIKICAgICAgICAgIHJlbD0ic3R5bGVzaGVldCI+CgogICAgPCEtLSBHb29nbGUgVGFnIE1hbmFnZXIgLS0+CiAgICA8c2NyaXB0PihmdW5jdGlvbih3LGQscyxsLGkpe3dbbF09d1tsXXx8W107d1tsXS5wdXNoKHsnZ3RtLnN0YXJ0JzoKICAgICAgICAgICAgICAgIG5ldyBEYXRlKCkuZ2V0VGltZSgpLGV2ZW50OidndG0uanMnfSk7dmFyIGY9ZC5nZXRFbGVtZW50c0J5VGFnTmFtZShzKVswXSwKICAgICAgICAgICAgaj1kLmNyZWF0ZUVsZW1lbnQocyksZGw9bCE9J2RhdGFMYXllcic/JyZsPScrbDonJztqLmFzeW5jPXRydWU7ai5zcmM9CiAgICAgICAgICAgICdodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JytpK2RsO2YucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoaixmKTsKICAgICAgICB9KSh3aW5kb3csZG9jdW1lbnQsJ3NjcmlwdCcsJ2RhdGFMYXllcicsJ0dUTS1NUjhUODQzJyk7PC9zY3JpcHQ+CiAgICA8IS0tIEVuZCBHb29nbGUgVGFnIE1hbmFnZXIgLS0+CgogICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8va2l0LmZvbnRhd2Vzb21lLmNvbS8yZDc0ZjI4MmY2LmpzIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj48L3NjcmlwdD4KCiAgICA8bGluayBocmVmPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjEuMy9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0IgogICAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtMUJtRTRrV0JxNzhpWWhGbGR2S3VoZlRBVTZhdVU4dFQ5NFdySGZ0akRickNFWFNVMW9Cb3F5bDJRdlo2aklXMyIgY3Jvc3NvcmlnaW49ImFub255bW91cyI+CiAgICA8bGluayBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL3N0eWxlLmNzcz90aW1lPTIwMjIwNTE2IiByZWw9InN0eWxlc2hlZXQiPgoKICAgIDxzY3JpcHQgc3JjPSJodHRwczovL3MzLXVzLXdlc3QtMi5hbWF6b25hd3MuY29tL2llZWVzaHV0cGFnZXMvZ2Rwci9zZXR0aW5ncy5qcyI+PC9zY3JpcHQ+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIgogICAgICAgICAgaHJlZj0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvY29va2llY29uc2VudDIvMy4wLjMvY29va2llY29uc2VudC5taW4uY3NzIi8+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvY29va2llY29uc2VudDIvMy4wLjMvY29va2llY29uc2VudC5taW4uanMiPjwvc2NyaXB0PgoKICAgIDxzY3JpcHQ+CiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIHdpbmRvdy5jb29raWVjb25zZW50LmluaXRpYWxpc2UoanNvbikKICAgICAgICB9KTsKICAgIDwvc2NyaXB0PgoKICAgIDxtZXRhIG5hbWU9J3JvYm90cycgY29udGVudD0naW5kZXgsIGZvbGxvdywgbWF4LWltYWdlLXByZXZpZXc6bGFyZ2UsIG1heC1zbmlwcGV0Oi0xLCBtYXgtdmlkZW8tcHJldmlldzotMScgLz4KCgk8IS0tIFRoaXMgc2l0ZSBpcyBvcHRpbWl6ZWQgd2l0aCB0aGUgWW9hc3QgU0VPIHBsdWdpbiB2MTguOSAtIGh0dHBzOi8veW9hc3QuY29tL3dvcmRwcmVzcy9wbHVnaW5zL3Nlby8gLS0+Cgk8bWV0YSBwcm9wZXJ0eT0ib2c6bG9jYWxlIiBjb250ZW50PSJlbl9VUyIgLz4KCTxtZXRhIHByb3BlcnR5PSJvZzp0eXBlIiBjb250ZW50PSJ3ZWJzaXRlIiAvPgoJPG1ldGEgcHJvcGVydHk9Im9nOnNpdGVfbmFtZSIgY29udGVudD0iSUVFRSBTdGFuZGFyZHMgQXNzb2NpYXRpb24iIC8+Cgk8bWV0YSBuYW1lPSJ0d2l0dGVyOmNhcmQiIGNvbnRlbnQ9InN1bW1hcnlfbGFyZ2VfaW1hZ2UiIC8+Cgk8bWV0YSBuYW1lPSJ0d2l0dGVyOnNpdGUiIGNvbnRlbnQ9IkBJRUVFU0EiIC8+Cgk8c2NyaXB0IHR5cGU9ImFwcGxpY2F0aW9uL2xkK2pzb24iIGNsYXNzPSJ5b2FzdC1zY2hlbWEtZ3JhcGgiPnsiQGNvbnRleHQiOiJodHRwczovL3NjaGVtYS5vcmciLCJAZ3JhcGgiOlt7IkB0eXBlIjoiT3JnYW5pemF0aW9uIiwiQGlkIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvI29yZ2FuaXphdGlvbiIsIm5hbWUiOiJJRUVFIFNBIiwidXJsIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvIiwic2FtZUFzIjpbImh0dHBzOi8vdHdpdHRlci5jb20vSUVFRVNBIl0sImxvZ28iOnsiQHR5cGUiOiJJbWFnZU9iamVjdCIsImluTGFuZ3VhZ2UiOiJlbi1VUyIsIkBpZCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyMvc2NoZW1hL2xvZ28vaW1hZ2UvIiwidXJsIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC91cGxvYWRzL2ltcG9ydC9pZWVlc2EtbG9nby5wbmciLCJjb250ZW50VXJsIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC91cGxvYWRzL2ltcG9ydC9pZWVlc2EtbG9nby5wbmciLCJ3aWR0aCI6NzIwLCJoZWlnaHQiOjQzMiwiY2FwdGlvbiI6IklFRUUgU0EifSwiaW1hZ2UiOnsiQGlkIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvIy9zY2hlbWEvbG9nby9pbWFnZS8ifX0seyJAdHlwZSI6IldlYlNpdGUiLCJAaWQiOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8jd2Vic2l0ZSIsInVybCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyIsIm5hbWUiOiJJRUVFIFN0YW5kYXJkcyBBc3NvY2lhdGlvbiIsImRlc2NyaXB0aW9uIjoiIiwicHVibGlzaGVyIjp7IkBpZCI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyNvcmdhbml6YXRpb24ifSwicG90ZW50aWFsQWN0aW9uIjpbeyJAdHlwZSI6IlNlYXJjaEFjdGlvbiIsInRhcmdldCI6eyJAdHlwZSI6IkVudHJ5UG9pbnQiLCJ1cmxUZW1wbGF0ZSI6Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLz9zPXtzZWFyY2hfdGVybV9zdHJpbmd9In0sInF1ZXJ5LWlucHV0IjoicmVxdWlyZWQgbmFtZT1zZWFyY2hfdGVybV9zdHJpbmcifV0sImluTGFuZ3VhZ2UiOiJlbi1VUyJ9LHsiQHR5cGUiOiJXZWJQYWdlIiwiQGlkIjoiI3dlYnBhZ2UiLCJ1cmwiOiIiLCJuYW1lIjoiIiwiaXNQYXJ0T2YiOnsiQGlkIjoiaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvI3dlYnNpdGUifSwiYnJlYWRjcnVtYiI6eyJAaWQiOiIjYnJlYWRjcnVtYiJ9LCJpbkxhbmd1YWdlIjoiZW4tVVMiLCJwb3RlbnRpYWxBY3Rpb24iOlt7IkB0eXBlIjoiUmVhZEFjdGlvbiIsInRhcmdldCI6WyIiXX1dfSx7IkB0eXBlIjoiQnJlYWRjcnVtYkxpc3QiLCJAaWQiOiIjYnJlYWRjcnVtYiIsIml0ZW1MaXN0RWxlbWVudCI6W3siQHR5cGUiOiJMaXN0SXRlbSIsInBvc2l0aW9uIjoxLCJuYW1lIjoiSG9tZSIsIml0ZW0iOiJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy8ifSx7IkB0eXBlIjoiTGlzdEl0ZW0iLCJwb3NpdGlvbiI6MiwibmFtZSI6IiJ9XX1dfTwvc2NyaXB0PgoJPCEtLSAvIFlvYXN0IFNFTyBwbHVnaW4uIC0tPgoKCjxsaW5rIHJlbD0nZG5zLXByZWZldGNoJyBocmVmPScvL3Mudy5vcmcnIC8+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4Kd2luZG93Ll93cGVtb2ppU2V0dGluZ3MgPSB7ImJhc2VVcmwiOiJodHRwczpcL1wvcy53Lm9yZ1wvaW1hZ2VzXC9jb3JlXC9lbW9qaVwvMTMuMS4wXC83Mng3MlwvIiwiZXh0IjoiLnBuZyIsInN2Z1VybCI6Imh0dHBzOlwvXC9zLncub3JnXC9pbWFnZXNcL2NvcmVcL2Vtb2ppXC8xMy4xLjBcL3N2Z1wvIiwic3ZnRXh0IjoiLnN2ZyIsInNvdXJjZSI6eyJjb25jYXRlbW9qaSI6Imh0dHBzOlwvXC9zdGFuZGFyZHMuaWVlZS5vcmdcL3dwLWluY2x1ZGVzXC9qc1wvd3AtZW1vamktcmVsZWFzZS5taW4uanM/dmVyPTUuOS4zIn19OwovKiEgVGhpcyBmaWxlIGlzIGF1dG8tZ2VuZXJhdGVkICovCiFmdW5jdGlvbihlLGEsdCl7dmFyIG4scixvLGk9YS5jcmVhdGVFbGVtZW50KCJjYW52YXMiKSxwPWkuZ2V0Q29udGV4dCYmaS5nZXRDb250ZXh0KCIyZCIpO2Z1bmN0aW9uIHMoZSx0KXt2YXIgYT1TdHJpbmcuZnJvbUNoYXJDb2RlO3AuY2xlYXJSZWN0KDAsMCxpLndpZHRoLGkuaGVpZ2h0KSxwLmZpbGxUZXh0KGEuYXBwbHkodGhpcyxlKSwwLDApO2U9aS50b0RhdGFVUkwoKTtyZXR1cm4gcC5jbGVhclJlY3QoMCwwLGkud2lkdGgsaS5oZWlnaHQpLHAuZmlsbFRleHQoYS5hcHBseSh0aGlzLHQpLDAsMCksZT09PWkudG9EYXRhVVJMKCl9ZnVuY3Rpb24gYyhlKXt2YXIgdD1hLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO3Quc3JjPWUsdC5kZWZlcj10LnR5cGU9InRleHQvamF2YXNjcmlwdCIsYS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKHQpfWZvcihvPUFycmF5KCJmbGFnIiwiZW1vamkiKSx0LnN1cHBvcnRzPXtldmVyeXRoaW5nOiEwLGV2ZXJ5dGhpbmdFeGNlcHRGbGFnOiEwfSxyPTA7cjxvLmxlbmd0aDtyKyspdC5zdXBwb3J0c1tvW3JdXT1mdW5jdGlvbihlKXtpZighcHx8IXAuZmlsbFRleHQpcmV0dXJuITE7c3dpdGNoKHAudGV4dEJhc2VsaW5lPSJ0b3AiLHAuZm9udD0iNjAwIDMycHggQXJpYWwiLGUpe2Nhc2UiZmxhZyI6cmV0dXJuIHMoWzEyNzk4Nyw2NTAzOSw4MjA1LDk4OTUsNjUwMzldLFsxMjc5ODcsNjUwMzksODIwMyw5ODk1LDY1MDM5XSk/ITE6IXMoWzU1MzU2LDU2ODI2LDU1MzU2LDU2ODE5XSxbNTUzNTYsNTY4MjYsODIwMyw1NTM1Niw1NjgxOV0pJiYhcyhbNTUzNTYsNTczMzIsNTYxMjgsNTY0MjMsNTYxMjgsNTY0MTgsNTYxMjgsNTY0MjEsNTYxMjgsNTY0MzAsNTYxMjgsNTY0MjMsNTYxMjgsNTY0NDddLFs1NTM1Niw1NzMzMiw4MjAzLDU2MTI4LDU2NDIzLDgyMDMsNTYxMjgsNTY0MTgsODIwMyw1NjEyOCw1NjQyMSw4MjAzLDU2MTI4LDU2NDMwLDgyMDMsNTYxMjgsNTY0MjMsODIwMyw1NjEyOCw1NjQ0N10pO2Nhc2UiZW1vamkiOnJldHVybiFzKFsxMDA4NCw2NTAzOSw4MjA1LDU1MzU3LDU2NjEzXSxbMTAwODQsNjUwMzksODIwMyw1NTM1Nyw1NjYxM10pfXJldHVybiExfShvW3JdKSx0LnN1cHBvcnRzLmV2ZXJ5dGhpbmc9dC5zdXBwb3J0cy5ldmVyeXRoaW5nJiZ0LnN1cHBvcnRzW29bcl1dLCJmbGFnIiE9PW9bcl0mJih0LnN1cHBvcnRzLmV2ZXJ5dGhpbmdFeGNlcHRGbGFnPXQuc3VwcG9ydHMuZXZlcnl0aGluZ0V4Y2VwdEZsYWcmJnQuc3VwcG9ydHNbb1tyXV0pO3Quc3VwcG9ydHMuZXZlcnl0aGluZ0V4Y2VwdEZsYWc9dC5zdXBwb3J0cy5ldmVyeXRoaW5nRXhjZXB0RmxhZyYmIXQuc3VwcG9ydHMuZmxhZyx0LkRPTVJlYWR5PSExLHQucmVhZHlDYWxsYmFjaz1mdW5jdGlvbigpe3QuRE9NUmVhZHk9ITB9LHQuc3VwcG9ydHMuZXZlcnl0aGluZ3x8KG49ZnVuY3Rpb24oKXt0LnJlYWR5Q2FsbGJhY2soKX0sYS5hZGRFdmVudExpc3RlbmVyPyhhLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG4sITEpLGUuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOihlLmF0dGFjaEV2ZW50KCJvbmxvYWQiLG4pLGEuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsZnVuY3Rpb24oKXsiY29tcGxldGUiPT09YS5yZWFkeVN0YXRlJiZ0LnJlYWR5Q2FsbGJhY2soKX0pKSwobj10LnNvdXJjZXx8e30pLmNvbmNhdGVtb2ppP2Mobi5jb25jYXRlbW9qaSk6bi53cGVtb2ppJiZuLnR3ZW1vamkmJihjKG4udHdlbW9qaSksYyhuLndwZW1vamkpKSl9KHdpbmRvdyxkb2N1bWVudCx3aW5kb3cuX3dwZW1vamlTZXR0aW5ncyk7Cjwvc2NyaXB0Pgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgppbWcud3Atc21pbGV5LAppbWcuZW1vamkgewoJZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7Cglib3JkZXI6IG5vbmUgIWltcG9ydGFudDsKCWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsKCWhlaWdodDogMWVtICFpbXBvcnRhbnQ7Cgl3aWR0aDogMWVtICFpbXBvcnRhbnQ7CgltYXJnaW46IDAgMC4wN2VtICFpbXBvcnRhbnQ7Cgl2ZXJ0aWNhbC1hbGlnbjogLTAuMWVtICFpbXBvcnRhbnQ7CgliYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7CglwYWRkaW5nOiAwICFpbXBvcnRhbnQ7Cn0KPC9zdHlsZT4KCTxsaW5rIHJlbD0nc3R5bGVzaGVldCcgaWQ9J3RyaWJlLWV2ZW50cy1wcm8tbWluaS1jYWxlbmRhci1ibG9jay1zdHlsZXMtY3NzJyAgaHJlZj0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC9wbHVnaW5zL2V2ZW50cy1jYWxlbmRhci1wcm8vc3JjL3Jlc291cmNlcy9jc3MvdHJpYmUtZXZlbnRzLXByby1taW5pLWNhbGVuZGFyLWJsb2NrLm1pbi5jc3M/dmVyPTUuMTQuMC4xJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0nd3AtYmxvY2stbGlicmFyeS1jc3MnICBocmVmPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1pbmNsdWRlcy9jc3MvZGlzdC9ibG9jay1saWJyYXJ5L3N0eWxlLm1pbi5jc3M/dmVyPTUuOS4zJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPHN0eWxlIGlkPSdnbG9iYWwtc3R5bGVzLWlubGluZS1jc3MnIHR5cGU9J3RleHQvY3NzJz4KYm9keXstLXdwLS1wcmVzZXQtLWNvbG9yLS1ibGFjazogIzAwMDAwMDstLXdwLS1wcmVzZXQtLWNvbG9yLS1jeWFuLWJsdWlzaC1ncmF5OiAjYWJiOGMzOy0td3AtLXByZXNldC0tY29sb3ItLXdoaXRlOiAjZmZmZmZmOy0td3AtLXByZXNldC0tY29sb3ItLXBhbGUtcGluazogI2Y3OGRhNzstLXdwLS1wcmVzZXQtLWNvbG9yLS12aXZpZC1yZWQ6ICNjZjJlMmU7LS13cC0tcHJlc2V0LS1jb2xvci0tbHVtaW5vdXMtdml2aWQtb3JhbmdlOiAjZmY2OTAwOy0td3AtLXByZXNldC0tY29sb3ItLWx1bWlub3VzLXZpdmlkLWFtYmVyOiAjZmNiOTAwOy0td3AtLXByZXNldC0tY29sb3ItLWxpZ2h0LWdyZWVuLWN5YW46ICM3YmRjYjU7LS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtZ3JlZW4tY3lhbjogIzAwZDA4NDstLXdwLS1wcmVzZXQtLWNvbG9yLS1wYWxlLWN5YW4tYmx1ZTogIzhlZDFmYzstLXdwLS1wcmVzZXQtLWNvbG9yLS12aXZpZC1jeWFuLWJsdWU6ICMwNjkzZTM7LS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcHVycGxlOiAjOWI1MWUwOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLXZpdmlkLWN5YW4tYmx1ZS10by12aXZpZC1wdXJwbGU6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiYSg2LDE0NywyMjcsMSkgMCUscmdiKDE1NSw4MSwyMjQpIDEwMCUpOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLWxpZ2h0LWdyZWVuLWN5YW4tdG8tdml2aWQtZ3JlZW4tY3lhbjogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMTIyLDIyMCwxODApIDAlLHJnYigwLDIwOCwxMzApIDEwMCUpOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLWx1bWlub3VzLXZpdmlkLWFtYmVyLXRvLWx1bWlub3VzLXZpdmlkLW9yYW5nZTogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2JhKDI1MiwxODUsMCwxKSAwJSxyZ2JhKDI1NSwxMDUsMCwxKSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1sdW1pbm91cy12aXZpZC1vcmFuZ2UtdG8tdml2aWQtcmVkOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYmEoMjU1LDEwNSwwLDEpIDAlLHJnYigyMDcsNDYsNDYpIDEwMCUpOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLXZlcnktbGlnaHQtZ3JheS10by1jeWFuLWJsdWlzaC1ncmF5OiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyMzgsMjM4LDIzOCkgMCUscmdiKDE2OSwxODQsMTk1KSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1jb29sLXRvLXdhcm0tc3BlY3RydW06IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDc0LDIzNCwyMjApIDAlLHJnYigxNTEsMTIwLDIwOSkgMjAlLHJnYigyMDcsNDIsMTg2KSA0MCUscmdiKDIzOCw0NCwxMzApIDYwJSxyZ2IoMjUxLDEwNSw5OCkgODAlLHJnYigyNTQsMjQ4LDc2KSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1ibHVzaC1saWdodC1wdXJwbGU6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDI1NSwyMDYsMjM2KSAwJSxyZ2IoMTUyLDE1MCwyNDApIDEwMCUpOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLWJsdXNoLWJvcmRlYXV4OiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyNTQsMjA1LDE2NSkgMCUscmdiKDI1NCw0NSw0NSkgNTAlLHJnYigxMDcsMCw2MikgMTAwJSk7LS13cC0tcHJlc2V0LS1ncmFkaWVudC0tbHVtaW5vdXMtZHVzazogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMjU1LDIwMywxMTIpIDAlLHJnYigxOTksODEsMTkyKSA1MCUscmdiKDY1LDg4LDIwOCkgMTAwJSk7LS13cC0tcHJlc2V0LS1ncmFkaWVudC0tcGFsZS1vY2VhbjogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMjU1LDI0NSwyMDMpIDAlLHJnYigxODIsMjI3LDIxMikgNTAlLHJnYig1MSwxNjcsMTgxKSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1lbGVjdHJpYy1ncmFzczogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMjAyLDI0OCwxMjgpIDAlLHJnYigxMTMsMjA2LDEyNikgMTAwJSk7LS13cC0tcHJlc2V0LS1ncmFkaWVudC0tbWlkbmlnaHQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDIsMywxMjkpIDAlLHJnYig0MCwxMTYsMjUyKSAxMDAlKTstLXdwLS1wcmVzZXQtLWR1b3RvbmUtLWRhcmstZ3JheXNjYWxlOiB1cmwoJyN3cC1kdW90b25lLWRhcmstZ3JheXNjYWxlJyk7LS13cC0tcHJlc2V0LS1kdW90b25lLS1ncmF5c2NhbGU6IHVybCgnI3dwLWR1b3RvbmUtZ3JheXNjYWxlJyk7LS13cC0tcHJlc2V0LS1kdW90b25lLS1wdXJwbGUteWVsbG93OiB1cmwoJyN3cC1kdW90b25lLXB1cnBsZS15ZWxsb3cnKTstLXdwLS1wcmVzZXQtLWR1b3RvbmUtLWJsdWUtcmVkOiB1cmwoJyN3cC1kdW90b25lLWJsdWUtcmVkJyk7LS13cC0tcHJlc2V0LS1kdW90b25lLS1taWRuaWdodDogdXJsKCcjd3AtZHVvdG9uZS1taWRuaWdodCcpOy0td3AtLXByZXNldC0tZHVvdG9uZS0tbWFnZW50YS15ZWxsb3c6IHVybCgnI3dwLWR1b3RvbmUtbWFnZW50YS15ZWxsb3cnKTstLXdwLS1wcmVzZXQtLWR1b3RvbmUtLXB1cnBsZS1ncmVlbjogdXJsKCcjd3AtZHVvdG9uZS1wdXJwbGUtZ3JlZW4nKTstLXdwLS1wcmVzZXQtLWR1b3RvbmUtLWJsdWUtb3JhbmdlOiB1cmwoJyN3cC1kdW90b25lLWJsdWUtb3JhbmdlJyk7LS13cC0tcHJlc2V0LS1mb250LXNpemUtLXNtYWxsOiAxM3B4Oy0td3AtLXByZXNldC0tZm9udC1zaXplLS1tZWRpdW06IDIwcHg7LS13cC0tcHJlc2V0LS1mb250LXNpemUtLWxhcmdlOiAzNnB4Oy0td3AtLXByZXNldC0tZm9udC1zaXplLS14LWxhcmdlOiA0MnB4O30uaGFzLWJsYWNrLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tYmxhY2spICFpbXBvcnRhbnQ7fS5oYXMtY3lhbi1ibHVpc2gtZ3JheS1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWN5YW4tYmx1aXNoLWdyYXkpICFpbXBvcnRhbnQ7fS5oYXMtd2hpdGUtY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS13aGl0ZSkgIWltcG9ydGFudDt9Lmhhcy1wYWxlLXBpbmstY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1wYWxlLXBpbmspICFpbXBvcnRhbnQ7fS5oYXMtdml2aWQtcmVkLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcmVkKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLW9yYW5nZS1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWx1bWlub3VzLXZpdmlkLW9yYW5nZSkgIWltcG9ydGFudDt9Lmhhcy1sdW1pbm91cy12aXZpZC1hbWJlci1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWx1bWlub3VzLXZpdmlkLWFtYmVyKSAhaW1wb3J0YW50O30uaGFzLWxpZ2h0LWdyZWVuLWN5YW4tY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1saWdodC1ncmVlbi1jeWFuKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLWdyZWVuLWN5YW4tY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS12aXZpZC1ncmVlbi1jeWFuKSAhaW1wb3J0YW50O30uaGFzLXBhbGUtY3lhbi1ibHVlLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tcGFsZS1jeWFuLWJsdWUpICFpbXBvcnRhbnQ7fS5oYXMtdml2aWQtY3lhbi1ibHVlLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtY3lhbi1ibHVlKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLXB1cnBsZS1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLXB1cnBsZSkgIWltcG9ydGFudDt9Lmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1ibGFjaykgIWltcG9ydGFudDt9Lmhhcy1jeWFuLWJsdWlzaC1ncmF5LWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZC1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWN5YW4tYmx1aXNoLWdyYXkpICFpbXBvcnRhbnQ7fS5oYXMtd2hpdGUtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0td2hpdGUpICFpbXBvcnRhbnQ7fS5oYXMtcGFsZS1waW5rLWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZC1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXBhbGUtcGluaykgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1yZWQtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcmVkKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLW9yYW5nZS1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1sdW1pbm91cy12aXZpZC1vcmFuZ2UpICFpbXBvcnRhbnQ7fS5oYXMtbHVtaW5vdXMtdml2aWQtYW1iZXItYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tbHVtaW5vdXMtdml2aWQtYW1iZXIpICFpbXBvcnRhbnQ7fS5oYXMtbGlnaHQtZ3JlZW4tY3lhbi1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1saWdodC1ncmVlbi1jeWFuKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLWdyZWVuLWN5YW4tYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtZ3JlZW4tY3lhbikgIWltcG9ydGFudDt9Lmhhcy1wYWxlLWN5YW4tYmx1ZS1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1wYWxlLWN5YW4tYmx1ZSkgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1jeWFuLWJsdWUtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtY3lhbi1ibHVlKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLXB1cnBsZS1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS12aXZpZC1wdXJwbGUpICFpbXBvcnRhbnQ7fS5oYXMtYmxhY2stYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWJsYWNrKSAhaW1wb3J0YW50O30uaGFzLWN5YW4tYmx1aXNoLWdyYXktYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWN5YW4tYmx1aXNoLWdyYXkpICFpbXBvcnRhbnQ7fS5oYXMtd2hpdGUtYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXdoaXRlKSAhaW1wb3J0YW50O30uaGFzLXBhbGUtcGluay1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tcGFsZS1waW5rKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLXJlZC1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcmVkKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLW9yYW5nZS1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tbHVtaW5vdXMtdml2aWQtb3JhbmdlKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLWFtYmVyLWJvcmRlci1jb2xvcntib3JkZXItY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1sdW1pbm91cy12aXZpZC1hbWJlcikgIWltcG9ydGFudDt9Lmhhcy1saWdodC1ncmVlbi1jeWFuLWJvcmRlci1jb2xvcntib3JkZXItY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1saWdodC1ncmVlbi1jeWFuKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLWdyZWVuLWN5YW4tYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLWdyZWVuLWN5YW4pICFpbXBvcnRhbnQ7fS5oYXMtcGFsZS1jeWFuLWJsdWUtYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXBhbGUtY3lhbi1ibHVlKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLWN5YW4tYmx1ZS1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtY3lhbi1ibHVlKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLXB1cnBsZS1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcHVycGxlKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLWN5YW4tYmx1ZS10by12aXZpZC1wdXJwbGUtZ3JhZGllbnQtYmFja2dyb3VuZHtiYWNrZ3JvdW5kOiB2YXIoLS13cC0tcHJlc2V0LS1ncmFkaWVudC0tdml2aWQtY3lhbi1ibHVlLXRvLXZpdmlkLXB1cnBsZSkgIWltcG9ydGFudDt9Lmhhcy1saWdodC1ncmVlbi1jeWFuLXRvLXZpdmlkLWdyZWVuLWN5YW4tZ3JhZGllbnQtYmFja2dyb3VuZHtiYWNrZ3JvdW5kOiB2YXIoLS13cC0tcHJlc2V0LS1ncmFkaWVudC0tbGlnaHQtZ3JlZW4tY3lhbi10by12aXZpZC1ncmVlbi1jeWFuKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLWFtYmVyLXRvLWx1bWlub3VzLXZpdmlkLW9yYW5nZS1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1sdW1pbm91cy12aXZpZC1hbWJlci10by1sdW1pbm91cy12aXZpZC1vcmFuZ2UpICFpbXBvcnRhbnQ7fS5oYXMtbHVtaW5vdXMtdml2aWQtb3JhbmdlLXRvLXZpdmlkLXJlZC1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1sdW1pbm91cy12aXZpZC1vcmFuZ2UtdG8tdml2aWQtcmVkKSAhaW1wb3J0YW50O30uaGFzLXZlcnktbGlnaHQtZ3JheS10by1jeWFuLWJsdWlzaC1ncmF5LWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLXZlcnktbGlnaHQtZ3JheS10by1jeWFuLWJsdWlzaC1ncmF5KSAhaW1wb3J0YW50O30uaGFzLWNvb2wtdG8td2FybS1zcGVjdHJ1bS1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1jb29sLXRvLXdhcm0tc3BlY3RydW0pICFpbXBvcnRhbnQ7fS5oYXMtYmx1c2gtbGlnaHQtcHVycGxlLWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLWJsdXNoLWxpZ2h0LXB1cnBsZSkgIWltcG9ydGFudDt9Lmhhcy1ibHVzaC1ib3JkZWF1eC1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1ibHVzaC1ib3JkZWF1eCkgIWltcG9ydGFudDt9Lmhhcy1sdW1pbm91cy1kdXNrLWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLWx1bWlub3VzLWR1c2spICFpbXBvcnRhbnQ7fS5oYXMtcGFsZS1vY2Vhbi1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1wYWxlLW9jZWFuKSAhaW1wb3J0YW50O30uaGFzLWVsZWN0cmljLWdyYXNzLWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLWVsZWN0cmljLWdyYXNzKSAhaW1wb3J0YW50O30uaGFzLW1pZG5pZ2h0LWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLW1pZG5pZ2h0KSAhaW1wb3J0YW50O30uaGFzLXNtYWxsLWZvbnQtc2l6ZXtmb250LXNpemU6IHZhcigtLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tc21hbGwpICFpbXBvcnRhbnQ7fS5oYXMtbWVkaXVtLWZvbnQtc2l6ZXtmb250LXNpemU6IHZhcigtLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tbWVkaXVtKSAhaW1wb3J0YW50O30uaGFzLWxhcmdlLWZvbnQtc2l6ZXtmb250LXNpemU6IHZhcigtLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tbGFyZ2UpICFpbXBvcnRhbnQ7fS5oYXMteC1sYXJnZS1mb250LXNpemV7Zm9udC1zaXplOiB2YXIoLS13cC0tcHJlc2V0LS1mb250LXNpemUtLXgtbGFyZ2UpICFpbXBvcnRhbnQ7fQo8L3N0eWxlPgo8bGluayByZWw9J3N0eWxlc2hlZXQnIGlkPSdpZWVlLWNsb3Vkc2VhcmNoLWNzcy1jc3MnICBocmVmPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWUtc2EvY2xvdWRzZWFyY2gvY3NzL2llZWUtY2xvdWRzZWFyY2guY3NzP3RpbWU9MjAyMjAxMjYmIzAzODt2ZXI9NS45LjMnIHR5cGU9J3RleHQvY3NzJyBtZWRpYT0nYWxsJyAvPgo8bGluayByZWw9J3N0eWxlc2hlZXQnIGlkPSdpZWVlLXdpZGdldC1jc3MtY3NzJyAgaHJlZj0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlLXNhL3dpZGdldHMvY3NzL3dpZGdldHMuY3NzP3RpbWU9MjAyMjAxMjYmIzAzODt2ZXI9NS45LjMnIHR5cGU9J3RleHQvY3NzJyBtZWRpYT0nYWxsJyAvPgo8bGluayByZWw9J3N0eWxlc2hlZXQnIGlkPSdhdXJvcmEtaGVhdG1hcC1jc3MnICBocmVmPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3BsdWdpbnMvYXVyb3JhLWhlYXRtYXAvc3R5bGUuY3NzP3Zlcj0xLjUuNCcgdHlwZT0ndGV4dC9jc3MnIG1lZGlhPSdhbGwnIC8+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWluY2x1ZGVzL2pzL2pxdWVyeS9qcXVlcnkubWluLmpzP3Zlcj0zLjYuMCcgaWQ9J2pxdWVyeS1jb3JlLWpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtaW5jbHVkZXMvanMvanF1ZXJ5L2pxdWVyeS1taWdyYXRlLm1pbi5qcz92ZXI9My4zLjInIGlkPSdqcXVlcnktbWlncmF0ZS1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBpZD0naWVlZS1jbG91ZHNlYXJjaC1qcy1qcy1leHRyYSc+Ci8qIDwhW0NEQVRBWyAqLwp2YXIgaWVlZV9hamF4X29iamVjdCA9IHsiYWpheF91cmwiOiJodHRwczpcL1wvc3RhbmRhcmRzLmllZWUub3JnXC93cC1hZG1pblwvYWRtaW4tYWpheC5waHAifTsKLyogXV0+ICovCjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWUtc2EvY2xvdWRzZWFyY2gvanMvaWVlZS1jbG91ZHNlYXJjaC5qcz90aW1lPTE2NTM2NTIxMTEmIzAzODt2ZXI9NS45LjMnIGlkPSdpZWVlLWNsb3Vkc2VhcmNoLWpzLWpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlLXNhL3dpZGdldHMvanMvaWVlZS13aWRnZXRzLmpzP3RpbWU9MjAyMjAyMDM1JiMwMzg7dmVyPTUuOS4zJyBpZD0naWVlZS13aWRnZXQtanMtanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgaWQ9J2llZWUtc2Etc2NyaXB0cy1qcy1leHRyYSc+Ci8qIDwhW0NEQVRBWyAqLwp2YXIgaWVlZV9hamF4X29iamVjdCA9IHsiYWpheF91cmwiOiJodHRwczpcL1wvc3RhbmRhcmRzLmllZWUub3JnXC93cC1hZG1pblwvYWRtaW4tYWpheC5waHAifTsKLyogXV0+ICovCjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3RoZW1lcy9pZWVlLXNhLXRoZW1lL2llZWUtc2EvanMvaWVlZS1zYS5qcz90aW1lPTIwMjIwMzEyJiMwMzg7dmVyPTUuOS4zJyBpZD0naWVlZS1zYS1zY3JpcHRzLWpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC90aGVtZXMvaWVlZS1zYS10aGVtZS9pZWVlLXNhL2pzL21hcmtldG8uanM/dmVyPTUuOS4zJyBpZD0naWVlZS1tYXJrZXRvLWpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC9wbHVnaW5zL2F1cm9yYS1oZWF0bWFwL2pzL21vYmlsZS1kZXRlY3QubWluLmpzP3Zlcj0xLjQuNCcgaWQ9J21vYmlsZS1kZXRlY3QtanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgaWQ9J2F1cm9yYS1oZWF0bWFwLXJlcG9ydGVyLWpzLWV4dHJhJz4KLyogPCFbQ0RBVEFbICovCnZhciBhdXJvcmFfaGVhdG1hcF9yZXBvcnRlciA9IHsiYWpheF91cmwiOiJodHRwczpcL1wvc3RhbmRhcmRzLmllZWUub3JnXC93cC1hZG1pblwvYWRtaW4tYWpheC5waHAiLCJhY3Rpb24iOiJhdXJvcmFfaGVhdG1hcCIsImludGVydmFsIjoiMTAiLCJzdGFja3MiOiIxMCIsInJlcG9ydHMiOiJjbGlja19wYyxjbGlja19tb2JpbGUiLCJkZWJ1ZyI6IjAiLCJhamF4X2RlbGF5X3RpbWUiOiIzMDAwIn07Ci8qIF1dPiAqLwo8L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtY29udGVudC9wbHVnaW5zL2F1cm9yYS1oZWF0bWFwL2pzL3JlcG9ydGVyLmpzP3Zlcj0xLjUuNCcgaWQ9J2F1cm9yYS1oZWF0bWFwLXJlcG9ydGVyLWpzJz48L3NjcmlwdD4KPGxpbmsgcmVsPSJodHRwczovL2FwaS53Lm9yZy8iIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3dwLWpzb24vIiAvPjxsaW5rIHJlbD0iRWRpdFVSSSIgdHlwZT0iYXBwbGljYXRpb24vcnNkK3htbCIgdGl0bGU9IlJTRCIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcveG1scnBjLnBocD9yc2QiIC8+CjxsaW5rIHJlbD0id2x3bWFuaWZlc3QiIHR5cGU9ImFwcGxpY2F0aW9uL3dsd21hbmlmZXN0K3htbCIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtaW5jbHVkZXMvd2x3bWFuaWZlc3QueG1sIiAvPiAKPG1ldGEgbmFtZT0idGVjLWFwaS12ZXJzaW9uIiBjb250ZW50PSJ2MSI+PG1ldGEgbmFtZT0idGVjLWFwaS1vcmlnaW4iIGNvbnRlbnQ9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnIj48bGluayByZWw9ImFsdGVybmF0ZSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvd3AtanNvbi90cmliZS9ldmVudHMvdjEvIiAvPgoJCTxzY3JpcHQ+CgkJKGZ1bmN0aW9uKGgsbyx0LGosYSxyKXsKCQkJaC5oaj1oLmhqfHxmdW5jdGlvbigpeyhoLmhqLnE9aC5oai5xfHxbXSkucHVzaChhcmd1bWVudHMpfTsKCQkJaC5faGpTZXR0aW5ncz17aGppZDoyOTE2NzcyLGhqc3Y6NX07CgkJCWE9by5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdOwoJCQlyPW8uY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7ci5hc3luYz0xOwoJCQlyLnNyYz10K2guX2hqU2V0dGluZ3MuaGppZCtqK2guX2hqU2V0dGluZ3MuaGpzdjsKCQkJYS5hcHBlbmRDaGlsZChyKTsKCQl9KSh3aW5kb3csZG9jdW1lbnQsJy8vc3RhdGljLmhvdGphci5jb20vYy9ob3RqYXItJywnLmpzP3N2PScpOwoJCTwvc2NyaXB0PgoJCTxtZXRhIG5hbWU9ImdlbmVyYXRvciIgY29udGVudD0iUG93ZXJlZCBieSBXUEJha2VyeSBQYWdlIEJ1aWxkZXIgLSBkcmFnIGFuZCBkcm9wIHBhZ2UgYnVpbGRlciBmb3IgV29yZFByZXNzLiIvPgo8bm9zY3JpcHQ+PHN0eWxlPiAud3BiX2FuaW1hdGVfd2hlbl9hbG1vc3RfdmlzaWJsZSB7IG9wYWNpdHk6IDE7IH08L3N0eWxlPjwvbm9zY3JpcHQ+Cgo8L2hlYWQ+Cjxib2R5IGNsYXNzPSJibG9nIHRyaWJlLW5vLWpzIHdwYi1qcy1jb21wb3NlciBqcy1jb21wLXZlci02LjkuMCB2Y19yZXNwb25zaXZlIiA+CjwhLS0gR29vZ2xlIFRhZyBNYW5hZ2VyIChub3NjcmlwdCkgLS0+Cjxub3NjcmlwdD48aWZyYW1lIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vbnMuaHRtbD9pZD1HVE0tTVI4VDg0MyIgaGVpZ2h0PSIwIiB3aWR0aD0iMCIgc3R5bGU9ImRpc3BsYXk6bm9uZTt2aXNpYmlsaXR5OmhpZGRlbiI+PC9pZnJhbWU+PC9ub3NjcmlwdD4KPCEtLSBFbmQgR29vZ2xlIFRhZyBNYW5hZ2VyIChub3NjcmlwdCkgLS0+CjxoZWFkZXI+CiAgICA8c2VjdGlvbiBpZD0idG9wLWJhciI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMCBkLW5vbmUgZC1tZC1ibG9jayIgcm9sZT0ibmF2aWdhdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgdG9wLWJhciB0b3AtYmFyLWxlZnQiIGFyaWEtbGFiZWw9Ikdsb2JhbCBsZWZ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+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+U2VhcmNoIFN0YW5kYXJkczwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzODciIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM4NyIgZGF0YS1pdGVtLWlkPSI4Mzg3Ij4KCQkJCQkJCTxhIHRpdGxlPSJTdGFuZGFyZHMgRGV2ZWxvcG1lbnQiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2RldmVsb3AvIiBkYXRhLWl0ZW0taWQ9IjgzODciIGNsYXNzPSJuYXYtbGluayAiPlN0YW5kYXJkcyBEZXZlbG9wbWVudDwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzODgiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM4OCIgZGF0YS1pdGVtLWlkPSI4Mzg4Ij4KCQkJCQkJCTxhIHRpdGxlPSJTdGFuZGFyZHMgQWRvcHRpb24iIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2RldmVsb3AvZGV2ZWxvcC1zdGFuZGFyZHMvc3RhbmRhcmRzLWFkb3B0aW9uLyIgZGF0YS1pdGVtLWlkPSI4Mzg4IiBjbGFzcz0ibmF2LWxpbmsgIj5TdGFuZGFyZHMgQWRvcHRpb248L2E+CgkJCQkJCTwvbGk+CgkJCQkJPC91bD4KCQkJCQk8dWwgY2xhc3M9InN1Yi1tZW51LWRlc2NyaXB0aW9uIj4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM4NSIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5DaG9vc2UgZnJvbSB0aGUgbWFueSB3YXlzIHRvIGFjY2VzcyBJRUVFIFNBIFN0YW5kYXJkcy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDI5IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkNob29zZSBmcm9tIGluZGl2aWR1YWwgb3Igb3JnYW5pemF0aW9uYWwgYWNjZXNzIG9wdGlvbnMgdG8gZ2V0IHRoZSBzdGFuZGFyZHMgeW91IG5lZWQuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM4NiIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5GaW5kIHRoZSBzdGFuZGFyZHMgeW914oCZcmUgbG9va2luZyBmb3IuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODM4NyIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5HZXQgaW52b2x2ZWQgaW4gdGhlIGRldmVsb3BtZW50IG9mIG1hcmtldC1kcml2ZW4gdGVjaG5vbG9neSBzdGFuZGFyZHMgd2l0aCBwcm92ZW4gZXhwZXJ0aXNlIGFuZCBkZWRpY2F0ZWQgc3VwcG9ydC48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4Mzg4IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkxlYXJuIG1vcmUgYWJvdXQgaG93IHRvIGFkb3B0IElFRUUgc3RhbmRhcmRzLjwvbGk+CgkJCQkJPC91bD4KCQkJCTwvZGl2PiA8IS0tIC8ucm93IC0tPgoJCQk8L2Rpdj4gPCEtLSAvLmNvbnRhaW5lciAtLT4KCQk8L2Rpdj4gPCEtLSAvLmRyb3Bkb3duLW1lbnUgbWVnYS1tZW51IC0tPgoJPC9saT4KCTxsaSAgaWQ9Im1lbnUtaXRlbS04Mzg5IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLWN1c3RvbSBtZW51LWl0ZW0tb2JqZWN0LWN1c3RvbSBtZW51LWl0ZW0taGFzLWNoaWxkcmVuIGRyb3Bkb3duIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04Mzg5IiBkYXRhLWl0ZW0taWQ9IjgzODkiPgoJCTxhIHRpdGxlPSJQcm9kdWN0cyAmYW1wOyBQcm9ncmFtcyIgZGF0YS1pdGVtLWlkPSI4Mzg5IiBjbGFzcz0ibmF2LWxpbmsgIGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+UHJvZHVjdHMgJiMwMzg7IFByb2dyYW1zPC9hPgoJCTxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgbWVnYS1tZW51Ij4KCQkJPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KCQkJCTxkaXYgY2xhc3M9InJvdyI+CgkJCQkJPHVsIGNsYXNzPSJzdWItbWVudSAgZGVwdGhfMCI+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04MzkwIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzOTAiIGRhdGEtaXRlbS1pZD0iODM5MCI+CgkJCQkJCQk8YSB0aXRsZT0iQWxsaWFuY2UgTWFuYWdlbWVudCBTZXJ2aWNlcyIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtcHJvZ3JhbXMvYW1zLyIgZGF0YS1pdGVtLWlkPSI4MzkwIiBjbGFzcz0ibmF2LWxpbmsgIj5BbGxpYW5jZSBNYW5hZ2VtZW50IFNlcnZpY2VzPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM5MSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04MzkxIiBkYXRhLWl0ZW0taWQ9IjgzOTEiPgoJCQkJCQkJPGEgdGl0bGU9IkNvbmZvcm1pdHkgQXNzZXNzbWVudCAmYW1wOyBDZXJ0aWZpY2F0aW9uIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1wcm9ncmFtcy9pY2FwLyIgZGF0YS1pdGVtLWlkPSI4MzkxIiBjbGFzcz0ibmF2LWxpbmsgIj5Db25mb3JtaXR5IEFzc2Vzc21lbnQgJiMwMzg7IENlcnRpZmljYXRpb248L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04MzkyIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzOTIiIGRhdGEtaXRlbS1pZD0iODM5MiI+CgkJCQkJCQk8YSB0aXRsZT0iSUVFRSBTQSBPcGVuIFNvdXJjZSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaW5pdGlhdGl2ZXMvb3BlbnNvdXJjZS8iIGRhdGEtaXRlbS1pZD0iODM5MiIgY2xhc3M9Im5hdi1saW5rICI+SUVFRSBTQSBPcGVuIFNvdXJjZTwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzOTMiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM5MyIgZGF0YS1pdGVtLWlkPSI4MzkzIj4KCQkJCQkJCTxhIHRpdGxlPSJJbmR1c3RyeSBBZmZpbGlhdGUgTmV0d29yayAoSUFOKSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtcHJvZ3JhbXMvaW5kdXN0cnktYWZmaWxpYXRlLW5ldHdvcmsvIiBkYXRhLWl0ZW0taWQ9IjgzOTMiIGNsYXNzPSJuYXYtbGluayAiPkluZHVzdHJ5IEFmZmlsaWF0ZSBOZXR3b3JrIChJQU4pPC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODQzMSIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04NDMxIiBkYXRhLWl0ZW0taWQ9Ijg0MzEiPgoJCQkJCQkJPGEgdGl0bGU9IkluZHVzdHJ5IENvbm5lY3Rpb25zIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pbmR1c3RyeS1jb25uZWN0aW9ucy8iIGRhdGEtaXRlbS1pZD0iODQzMSIgY2xhc3M9Im5hdi1saW5rICI+SW5kdXN0cnkgQ29ubmVjdGlvbnM8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDMwIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MzAiIGRhdGEtaXRlbS1pZD0iODQzMCI+CgkJCQkJCQk8YSB0aXRsZT0iVGhlIE5hdGlvbmFsIEVsZWN0cmljYWwgU2FmZXR5IENvZGXCriAoTkVTQ8KuKSIgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtcHJvZ3JhbXMvbmVzYy8iIGRhdGEtaXRlbS1pZD0iODQzMCIgY2xhc3M9Im5hdi1saW5rICI+VGhlIE5hdGlvbmFsIEVsZWN0cmljYWwgU2FmZXR5IENvZGXCriAoTkVTQ8KuKTwvYT4KCQkJCQkJPC9saT4KCQkJCQkJPGxpICBpZD0ibWVudS1pdGVtLTgzOTYiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODM5NiIgZGF0YS1pdGVtLWlkPSI4Mzk2Ij4KCQkJCQkJCTxhIHRpdGxlPSJSZWdpc3RyYXRpb24gQXV0aG9yaXR5IiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1wcm9ncmFtcy9yZWdhdXRoLyIgZGF0YS1pdGVtLWlkPSI4Mzk2IiBjbGFzcz0ibmF2LWxpbmsgIj5SZWdpc3RyYXRpb24gQXV0aG9yaXR5PC9hPgoJCQkJCQk8L2xpPgoJCQkJCQk8bGkgIGlkPSJtZW51LWl0ZW0tODM5NyIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG5hdi1pdGVtIG5hdi10eXBlLW1lZ2EtbWVudSBuYXYtaXRlbS04Mzk3IiBkYXRhLWl0ZW0taWQ9IjgzOTciPgoJCQkJCQkJPGEgdGl0bGU9IkdvdmVybm1lbnQgRW5nYWdlbWVudCBQcm9ncmFtIG9uIFN0YW5kYXJkcyAoR0VQUykiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2ludGwvZ292ZXJubWVudC1lbmdhZ2VtZW50LXByb2dyYW0vIiBkYXRhLWl0ZW0taWQ9IjgzOTciIGNsYXNzPSJuYXYtbGluayAiPkdvdmVybm1lbnQgRW5nYWdlbWVudCBQcm9ncmFtIG9uIFN0YW5kYXJkcyAoR0VQUyk8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04Mzk4IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTgzOTgiIGRhdGEtaXRlbS1pZD0iODM5OCI+CgkJCQkJCQk8YSB0aXRsZT0iU3RhbmRhcmRzIEZlbGxvd3NoaXAiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2ludGwvc3RhbmRhcmRzLWZlbGxvd3NoaXAtcHJvZ3JhbS8iIGRhdGEtaXRlbS1pZD0iODM5OCIgY2xhc3M9Im5hdi1saW5rICI+U3RhbmRhcmRzIEZlbGxvd3NoaXA8L2E+CgkJCQkJCTwvbGk+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS04NDMyIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbmF2LWl0ZW0gbmF2LXR5cGUtbWVnYS1tZW51IG5hdi1pdGVtLTg0MzIiIGRhdGEtaXRlbS1pZD0iODQzMiI+CgkJCQkJCQk8YSB0aXRsZT0iQWxsIFByb2R1Y3RzICZhbXA7IFByb2dyYW1zIiBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1wcm9ncmFtcy8iIGRhdGEtaXRlbS1pZD0iODQzMiIgY2xhc3M9Im5hdi1saW5rICI+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+CgkJCQkJCTxsaSAgaWQ9Im1lbnUtaXRlbS05NTU0IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLWN1c3RvbSBtZW51LWl0ZW0tb2JqZWN0LWN1c3RvbSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tOTU1NCIgZGF0YS1pdGVtLWlkPSI5NTU0Ij4KCQkJCQkJCTxhIHRpdGxlPSJTdGFuZGFyZHMgU3RvcmUiIGhyZWY9Imh0dHBzOi8vd3d3LnRlY2hzdHJlZXQuY29tL2llZWU/dXRtX3NvdXJjZT1zdGFuZGFyZHMmYW1wO3V0bV9tZWRpdW09d2ViJmFtcDt1dG1fY2FtcGFpZ249c3RhbmRhcmRzLXJlZmVycmFsIiBkYXRhLWl0ZW0taWQ9Ijk1NTQiIGNsYXNzPSJuYXYtbGluayAiPlN0YW5kYXJkcyBTdG9yZTwvYT4KCQkJCQkJPC9saT4KCQkJCQk8L3VsPgoJCQkJCTx1bCBjbGFzcz0ic3ViLW1lbnUtZGVzY3JpcHRpb24iPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDEyIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPlRyYWluaW5nIGFuZCBjb21tdW5pY2F0aW9uIHJlc291cmNlcyB0byBzdGF5IGNvbm5lY3RlZC48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI4NDEzIiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkluZGl2aWR1YWwgYW5kIG9yZ2FuaXphdGlvbmFsIGVmZmVjdGl2ZW5lc3MgcHJvZ3JhbSB0byBlbmFibGUgdGhlIHN1Y2Nlc3Mgb2Ygb3VyIHZpdGFsIHZvbHVudGVlcnMuPC9saT4KCQkJCQkJPGxpIGRhdGEtaXRlbS1pZD0iODQzNiIgY2xhc3M9Im5hdi1pdGVtLWRlc2NyaXB0aW9uIj5SZWFkIHRoZSBsYXRlc3QgbmV3cyBvbiBJRUVFIFNBLjwvbGk+CgkJCQkJCTxsaSBkYXRhLWl0ZW0taWQ9Ijg0MTUiIGNsYXNzPSJuYXYtaXRlbS1kZXNjcmlwdGlvbiI+U3Vic2NyaWJlIHRvIG91ciBuZXdzbGV0dGVyIGFuZCBrZWVwIHVwIHRvIGRhdGUgb24gdGhlIGxhdGVzdCBzdGFuZGFyZHMsIGV2ZW50LCBhbmQgYWN0aXZpdGllcy48L2xpPgoJCQkJCQk8bGkgZGF0YS1pdGVtLWlkPSI5NTU0IiBjbGFzcz0ibmF2LWl0ZW0tZGVzY3JpcHRpb24iPkdldCB0aGUgc3RhbmRhcmRzIHlvdSBuZWVkLiBTZWxlY3QgZnJvbSBpbmRpdmlkdWFsIHN0YW5kYXJkcyBvciBzdGFuZGFyZHMgYnVuZGxlcy48L2xpPgoJCQkJCTwvdWw+CgkJCQk8L2Rpdj4gPCEtLSAvLnJvdyAtLT4KCQkJPC9kaXY+IDwhLS0gLy5jb250YWluZXIgLS0+CgkJPC9kaXY+IDwhLS0gLy5kcm9wZG93bi1tZW51IG1lZ2EtbWVudSAtLT4KCTwvbGk+Cgk8bGkgIGlkPSJtZW51LWl0ZW0tODQxNiIgY2xhc3M9Im5hdi10eXBlLWJ1dHRvbiBtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBuYXYtaXRlbSBuYXYtdHlwZS1tZWdhLW1lbnUgbmF2LWl0ZW0tODQxNiIgZGF0YS1pdGVtLWlkPSI4NDE2Ij4KCQk8YSB0aXRsZT0iTUFDIEFkZHJlc3MiIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3Byb2R1Y3RzLXByb2dyYW1zL3JlZ2F1dGgvIiBkYXRhLWl0ZW0taWQ9Ijg0MTYiIGNsYXNzPSJuYXYtbGluayAiPk1BQyBBZGRyZXNzPC9hPgoJPC9saT4KPC91bD4gICAgICAgICAgICA8IS0tIGVuZCB3b3JkcHJlc3MgbWVudSAtLT4KICAgICAgICA8L2Rpdj4gPCEtLSAvI21vYmlsZS1tZW51IC0tPgogICAgICAgIDxkaXYgY2xhc3M9ImJ0bi1ncm91cCBzZWFyY2giPgogICAgICAgICAgICA8ZGl2IGlkPSJzZWFyY2gtaW5wdXQtd3JhcHBlciIgY2xhc3M9ImNvbGxhcHNlIGNvbGxhcHNlLWhvcml6b250YWwiPgogICAgICAgICAgICAgICAgPGZvcm0gaWQ9InNlYXJjaCIgY2xhc3M9ImZvcm0taW5saW5lIiBhY3Rpb249Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3NlYXJjaC8iIG1ldGhvZD0iZ2V0Ij4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9ImZvcm0tY29udHJvbCIgdHlwZT0idGV4dCIgcGxhY2Vob2xkZXI9IlNlYXJjaCBJRUVFIFNBLi4uIiBhdXRvZm9jdXM9ImF1dG9mb2N1cyIgbmFtZT0icSIgaWQ9InEiPgogICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biIgdHlwZT0ic3VibWl0IiBhcmlhLWxhYmVsPSJzZWFyY2giPjxpIGNsYXNzPSJmYSBmYS1zZWFyY2giPjwvaT48L2J1dHRvbj4KICAgICAgICAgICAgICAgIDwvZm9ybT4gPCEtLSAvI3NlYXJjaCAtLT4KICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyNzZWFyY2gtaW5wdXQtd3JhcHBlciAtLT4KICAgICAgICAgICAgPGJ1dHRvbiBpZD0ibWFpbi1zZWFyY2gtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1tZCIgdHlwZT0iYnV0dG9uIiBkYXRhLWJzLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtYnMtdGFyZ2V0PSIjc2VhcmNoLWlucHV0LXdyYXBwZXIiCiAgICAgICAgICAgICAgICAgICAgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9InNlYXJjaC1pbnB1dC13cmFwcGVyIiBhcmlhLWxhYmVsPSJzZWFyY2giPjxpIGNsYXNzPSJmYSBmYS1zZWFyY2giPjwvaT48L2J1dHRvbj4KICAgICAgICA8L2Rpdj4gPCEtLSAvLmJ0bi1ncm91cCAuc2VhcmNoIC0tPgogICAgPC9kaXY+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+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC13b3JraW5nLWdyb3VwIiBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTRU5TUl9XRyAtIFNlbnNvcnMgV29ya2luZyBHcm91cCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyPjxhIGlkPSJzdG5kLXdvcmtpbmctZ3JvdXAtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIgdGFyZ2V0PSJfYmxhbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vZGV2ZWxvcG1lbnQuc3RhbmRhcmRzLmllZWUub3JnL215cHJvamVjdC13ZWIvcHVibGljL3ZpZXcuaHRtbCMvaW50ZXJlc3QvMzU0NiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdCBjbGFzcz0iY29sLXNtLTQgY29sLW1kLTMiPklFRUUgUHJvZ3JhbSBNYW5hZ2VyPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGlkPSJzdG5kLXN0YWZmLWxpYWlzb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iY29sLXNtLTggY29sLW1kLTkiPlNvbyBLaW0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyPjxhIGlkPSJzdG5kLXN0YWZmLWxpYWlzb24tZW1haWwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Im1haWxUTzpzLmgua2ltQGllZWUub3JnIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJDb250YWN0Ij5Db250YWN0PC9hPjwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzPSJjb2wtc20tNCBjb2wtbWQtMyI+V29ya2luZyBHcm91cCBDaGFpcjwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBpZD0ic3RuZC13b3JraW5nLWdyb3VwLWNoYWlyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImNvbC1zbS04IGNvbC1tZC05Ij5IYXJyeSBEYXZpczwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPiA8IS0tIC8ucm93IC0tPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3dvcmtpbmctZ3JvdXAtZGV0YWlscyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0id29ya2luZy1ncm91cC1wcm9qZWN0cy1zdGFuZGFyZHMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2LXRhYnMgbmF2LWp1c3RpZmllZCBmbGV4LWNvbHVtbiBmbGV4LXNtLXJvdyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSIgcm9sZT0icHJlc2VudGF0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ibmF2LWxpbmsgYWN0aXZlIiBpZD0id2ctYWN0aXZlLXByb2plY3RzLXRhYiIgZGF0YS1icy10b2dnbGU9InRhYiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWJzLXRhcmdldD0iI3dnLWFjdGl2ZS1wcm9qZWN0cyIgdHlwZT0iYnV0dG9uIiByb2xlPSJ0YWIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1jb250cm9scz0id2ctYWN0aXZlLXByb2plY3RzIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+QWN0aXZlIFByb2plY3RzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+IDwhLS0gLy5uYXYtaXRlbSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIiByb2xlPSJwcmVzZW50YXRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXYtbGluayIgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZHMtdGFiIiBkYXRhLWJzLXRvZ2dsZT0idGFiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYnMtdGFyZ2V0PSIjd2ctYWN0aXZlLXN0YW5kYXJkcyIgdHlwZT0iYnV0dG9uIiByb2xlPSJ0YWIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1jb250cm9scz0id2ctYWN0aXZlLXN0YW5kYXJkcyIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPkFjdGl2ZSBTdGFuZGFyZHMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4gPCEtLSAvLm5hdi1pdGVtIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iIHJvbGU9InByZXNlbnRhdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9Im5hdi1saW5rIiBpZD0id2ctc3VwZXJzZWRlZC1zdGFuZGFyZHMtdGFiIiBkYXRhLWJzLXRvZ2dsZT0idGFiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYnMtdGFyZ2V0PSIjd2ctc3VwZXJzZWRlZC1zdGFuZGFyZHMiIHR5cGU9ImJ1dHRvbiIgcm9sZT0idGFiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtY29udHJvbHM9IndnLXN1cGVyc2VkZWQtc3RhbmRhcmRzIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+U3VwZXJzZWRlZAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RhbmRhcmRzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+IDwhLS0gLy5uYXYtaXRlbSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIiByb2xlPSJwcmVzZW50YXRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXYtbGluayIgaWQ9IndnLWluYWN0aXZlLXdpdGhkcmF3bi1zdGFuZGFyZHMtdGFiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYnMtdG9nZ2xlPSJ0YWIiIGRhdGEtYnMtdGFyZ2V0PSIjd2ctaW5hY3RpdmUtd2l0aGRyYXduLXN0YW5kYXJkcyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPSJidXR0b24iIHJvbGU9InRhYiIgYXJpYS1jb250cm9scz0id2ctaW5hY3RpdmUtd2l0aGRyYXduLXN0YW5kYXJkcyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+SW5hY3RpdmUtV2l0aGRyYXduIFN0YW5kYXJkcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPiA8IS0tIC8ubmF2LWl0ZW0gLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSIgcm9sZT0icHJlc2VudGF0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ibmF2LWxpbmsiIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZHMtdGFiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYnMtdG9nZ2xlPSJ0YWIiIGRhdGEtYnMtdGFyZ2V0PSIjd2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmRzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9ImJ1dHRvbiIgcm9sZT0idGFiIiBhcmlhLWNvbnRyb2xzPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZHMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPkluYWN0aXZlLVJlc2VydmVkIFN0YW5kYXJkcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPiA8IS0tIC8ubmF2LWl0ZW0gLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPiA8IS0tIC8ubmF2IC5uYXYtdGFicyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IndnLXRhYi1jb250ZW50IiBjbGFzcz0idGFiLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IndnLWFjdGl2ZS1wcm9qZWN0cyIgY2xhc3M9InRhYi1wYW5lIGZhZGUgc2hvdyBhY3RpdmUiIHJvbGU9InRhYnBhbmVsIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PSJ3Zy1hY3RpdmUtcHJvamVjdHMtdGFiIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFiLXBhbmUtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1wcm9qZWN0IHdnLWFjdGl2ZS1wcm9qZWN0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1hY3RpdmUtcHJvamVjdC1kZXNpZ25hdGlvbiI+UDE0MzE8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWFjdGl2ZS1wcm9qZWN0LXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5TdGFuZGFyZCBmb3IgU3BlY2lmeWluZyBhbmQgVGVzdGluZyBDb3Jpb2xpcyBWaWJyYXRvcnkgR3lyb3M8L2g1PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD0id2ctYWN0aXZlLXByb2plY3QtZGVzY3JpcHRpb24iPlRoaXMgc3RhbmRhcmQgZGVmaW5lcyByZXF1aXJlbWVudHMgYW5kIHRlc3QgcHJvY2VkdXJlcyBmb3IgYSBzaW5nbGUtYXhpcyBDb3Jpb2xpcyB2aWJyYXRvcnkgZ3lybyAoQ1ZHKSBmb3IgdXNlIGFzIGEgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgYW5ndWxhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBhbmd1bGFyIHJhdGUgbWVhc3VyaW5nIHN5c3RlbXMuICBJbmZvcm1hdGl2ZSBhbm5leGVzIGNvdmVyIENWRyBkZXNpZ24gZmVhdHVyZXMgYW5kIHRoZW9yZXRpY2FsIHByaW5jaXBsZXMgb2Ygb3BlcmF0aW9uLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWFjdGl2ZS1wcm9qZWN0LXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvMTQzMS8xMDMyMiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1wcm9qZWN0IC53Zy1hY3RpdmUtcHJvamVjdCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8udGFiLXBhbmUtY29udGVudCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvI3dnLWFjdGl2ZS1wcm9qZWN0cyAudGFiLXBhbmUgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0id2ctYWN0aXZlLXN0YW5kYXJkcyIgY2xhc3M9InRhYi1wYW5lIGZhZGUiIHJvbGU9InRhYnBhbmVsIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PSJ3Zy1hY3RpdmUtc3RhbmRhcmRzLXRhYiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhYi1wYW5lLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtZGVzaWduYXRpb24iPjEyOTMtMjAxODwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBpZD0id2ctYWN0aXZlLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgTGluZWFyIFNpbmdsZS1BeGlzLCBOb25neXJvc2NvcGljIEFjY2VsZXJvbWV0ZXJzPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+VGhlIHNwZWNpZmljYXRpb24gYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBhIGxpbmVhciwgc2luZ2xlLWF4aXMsIG5vbmd5cm9zY29waWMgYWNjZWxlcm9tZXRlciBmb3IgdXNlIGluIGluZXJ0aWFsIG5hdmlnYXRpb24sIGd1aWRhbmNlLCBhbmQgbGV2ZWxpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gQSBzdGFuZGFyZCBzcGVjaWZpY2F0aW9uIGd1aWRlIGFuZCBhIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHRlc3QgcHJvY2VkdXJlcyBmb3Igc3VjaCBhY2NlbGVyb21ldGVycyBhcmUgcHJvdmlkZWQuIEluZm9ybWF0aXZlIGFubmV4ZXMgYXJlIGdpdmVuIG9uIHRoZSB2YXJpb3VzIHR5cGVzIG9mIHN1Y2ggYWNjZWxlcm9tZXRlcnMgKGZvcmNlIG9yIHBlbmR1bG91cyB0b3JxdWUgcmViYWxhbmNlIHdpdGggYW5hbG9nIG9yIGRpZ2l0YWwgb3V0cHV0LCB2aWJyYXRpbmcgYmVhbSwgYW5kIG1pY3JvbWVjaGFuaWNhbCkgYW5kIGVycm9yIGVmZmVjdHMsIG9uIGZpbHRlcmluZywgbm9pc2UsIGFuZCB0cmFuc2llbnQgYW5hbHlzaXMgdGVjaG5pcXVlcywgYW5kIG9uIGNhbGlicmF0aW9uIGFuZCBtb2RlbGluZyB0ZWNobmlxdWVzIChtdWx0aXBvaW50IHR1bWJsZSBhbmFseXNpcywgdmlicmF0aW9uIGFuZCAgc2hvY2sgdGVzdCBhbmFseXNlcywgYW5kIGdlb3BoeXNpY2FsIGVmZmVjdHMgaW4gaW5lcnRpYWwgaW5zdHJ1bWVudCB0ZXN0aW5nKS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS8xMjkzLzU1OTAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWFjdGl2ZS1zdGFuZGFyZCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2ctc3RhbmRhcmQgd2ctYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtZGVzaWduYXRpb24iPjk1Mi0yMDIwPC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1hY3RpdmUtc3RhbmRhcmQtdGl0bGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaDQiPklFRUUgU3RhbmRhcmQgZm9yIFNwZWNpZnlpbmcgYW5kIFRlc3RpbmcgU2luZ2xlLUF4aXMgSW50ZXJmZXJvbWV0cmljIEZpYmVyIE9wdGljIEd5cm9zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWFjdGl2ZS1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+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+MTU1NC0yMDA1PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBSZWNvbW1lbmRlZCBQcmFjdGljZSBmb3IgSW5lcnRpYWwgU2Vuc29yIFRlc3QgRXF1aXBtZW50LCBJbnN0cnVtZW50YXRpb24sIERhdGEgQWNxdWlzaXRpb24sIGFuZCBBbmFseXNpczwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+VGVzdCBlcXVpcG1lbnQsIGRhdGEgYWNxdWlzaXRpb24gZXF1aXBtZW50LCBpbnN0cnVtZW50YXRpb24sIHRlc3QgZmFjaWxpdGllcywgYW5kIGRhdGEgYW5hbHlzaXMgdGVjaG5pcXVlcyB1c2VkIGluIGluZXJ0aWFsIHNlbnNvciB0ZXN0aW5nIGFyZSBkZXNjcmliZWQgaW4gdGhpcyByZWNvbW1lbmRlZCBwcmFjdGljZS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzE1NTQvMjI5MiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+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+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjY0Ny0yMDA2PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1BeGlzIExhc2VyIEd5cm9zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5TcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHJlcXVpcmVtZW50cyBmb3IgYSBzaW5nbGUtYXhpcyByaW5nIGxhc2VyIGd5cm8gKFJMRykgZm9yIHVzZSBhcyBhICBzZW5zb3IgaW4gYXR0aXR1ZGUgY29udHJvbCBzeXN0ZW1zLCBhbmd1bGFyIGRpc3BsYWNlbWVudCBtZWFzdXJpbmcgc3lzdGVtcywgYW5kIGFuZ3VsYXIgcmF0ZSAgbWVhc3VyaW5nIHN5c3RlbXMgYXJlIGRlZmluZWQuIEEgc3RhbmRhcmQgc3BlY2lmaWNhdGlvbiBmb3JtYXQgZ3VpZGUgZm9yIHRoZSBwcmVwYXJhdGlvbiBvZiBhICBzaW5nbGUtYXhpcyBSTEcgaXMgcHJvdmlkZWQuIEEgY29tcGlsYXRpb24gb2YgcmVjb21tZW5kZWQgcHJvY2VkdXJlcyBmb3IgdGVzdGluZyBhbiBSTEcsICBkZXJpdmVkIGZyb20gdGhvc2UgcHJlc2VudGx5IHVzZWQgaW4gdGhlIGluZHVzdHJ5LCBpcyBhbHNvIHByb3ZpZGVkLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvNjQ3LzMxMzQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWluYWN0aXZlLXJlc2VydmVkIHN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1pbmFjdGl2ZS1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjY3MS0xOTg1PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC10aXRsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoNCI+SUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIE5vbmd5cm9zY29waWMgSW5lcnRpYWwgQW5ndWxhciBTZW5zb3JzOiBKZXJrLCBBY2NlbGVyYXRpb24sIFZlbG9jaXR5LCBhbmQgRGlzcGxhY2VtZW50PC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5BIGd1aWRlIGlzIHByZXNlbnRlZCBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgc3BlY2lmaWNhdGlvbiBhbmQgdGVzdCBwcm9jZWR1cmUgZm9yIGFuIGluZXJ0aWFsIGFuZ3VsYXIgc2Vuc29yIHRoYXQgcHJvdmlkZXMgYSBjb21tb24gbWVldGluZyBncm91bmQgb2YgdGVybWlub2xvZ3kgYW5kIHByYWN0aWNlIGZvciBtYW51ZmFjdHVyZXJzIGFuZCB1c2VycyBvZiBhbiBhcnJheSBvZiBzZW5zb3JzIHRoYXQgaGF2ZSBiZWVuIGRldmVsb3BlZCB0byBtZWV0IG5lZWRzIG5vdCBlYXNpbHkgbWV0IGJ5IHRyYWRpdGlvbmFsIHNwaW5uaW5nLXJvdG9yIGd5cm9zY29wZXMuIEEgdGVzdCBwcm9jZWR1cmUgZm9yIHZlcmlmeWluZyB0aGF0IHRoZSBzcGVjaWZpY2F0aW9ucyBoYXZlIGJlZW4gbWV0IGlzIGdpdmVuLiBUaGUgc3RhbmRhcmQgaXMgbm90IGludGVuZGVkIHRvIGNvbXBldGUgd2l0aCBleGlzdGluZyBzdGFuZGFyZHMgZm9yIHNwZWNpZmljIGRldmljZXMgd2l0aCBoaWdobHkgc3BlY2lmaWMgbW9kZWxzIGFuZCBlcnJvciBzb3VyY2VzLCBzdWNoIGFzIHNwcmluZy1yZXN0cmFpbmVkIHJhdGUgZ3lyb3MsIGJ1dCB0byBwcm92aWRlIGEgdW5pZm9ybSBndWlkZSBmb3IgdGhvc2UgaW5lcnRpYWwgYW5ndWxhciBzZW5zb3JzIHRoYXQgaGF2ZSBub3QgYmVlbiBjb3ZlcmVkIGVsc2V3aGVyZS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxhIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC11cmwiIGNsYXNzPSJhcnJvdy1saW5rIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pZWVlLzY3MS85MjYiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPSJMZWFybiBNb3JlIj5MZWFybiBNb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIC8ud2ctc3RhbmRhcmQgLndnLWluYWN0aXZlLXJlc2VydmVkIHN0YW5kYXJkIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3Zy1zdGFuZGFyZCB3Zy1pbmFjdGl2ZS1zdGFuZGFyZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtZGVzaWduYXRpb24iPjY3MS0xOTg1L0NvciAxLTIwMTA8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgTm9uZ3lyb3Njb3BpYyBJbmVydGlhbCBBbmd1bGFyIFNlbnNvcnM6IEplcmssIEFjY2VsZXJhdGlvbiwgVmVsb2NpdHksIGFuZCBEaXNwbGFjZW1lbnQgQ29ycmlnZW5kdW0gMTogNC43LjIuNiBTaG9ydC1UZXJtIFN0YWJpbGl0eSBhbmQgQW5uZXggQSBTZW5zb3IgRHluYW1pYyBCbG9jayBEaWFncmFtczwvaDU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNjcmlwdGlvbiI+SUVFRSBTdGQgNjcxLTE5ODUgcHJvdmlkZXMgc3BlY2lmaWNhdGlvbnMgYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBhIG5vbi1neXJvc2NvcGljIGluZXJ0aWFsIGFuZ3VsYXIgc2Vuc29yIHRoYXQgbWF5IG1lYXN1cmUgYW5ndWxhciBqZXJrLCBhY2NlbGVyYXRpb24sIHJhdGUsIG9yIGRpc3BsYWNlbWVudCB3aXRoIG9yIHdpdGhvdXQgcmVzcG9uc2UgZG93biB0byB6ZXJvIGZyZXF1ZW5jeS4gQSBzdGFuZGFyZCBzcGVjaWZpY2F0aW9uIGZvcm1hdCBpcyBwcm92aWRlZC4gQSBjb21waWxhdGlvbiBvZiByZWNvbW1lbmRlZCB0ZXN0IHByb2NlZHVyZXMsIGRlcml2ZWQgZnJvbSB0aG9zZSBwcmVzZW50bHkgdXNlZCBpbiB0aGUgaW5kdXN0cnksIGlzIGFsc28gcHJvdmlkZWQuIEluZm9ybWF0aXZlIGFubmV4ZXMgY292ZXIgZGVzaWduIGZlYXR1cmVzIGFuZCB0aGVvcmV0aWNhbCBwcmluY2lwbGVzIG9mIG9wZXJhdGlvbi4gIFRoaXMgY29ycmlnZW5kdW0gbWFrZXMgY2hhbmdlcyB0byA0LjcuMi42IHRvIGRlbGV0ZSBhIHNlbnRlbmNlIHRoYXQgZG9lcyBub3QgYmVsb25nIHRoZXJlLCB0byBhZGQgYSBzdWJjbGF1c2UgdGhhdCB3YXMgaW5hZHZlcnRlbnRseSBsZWZ0IG91dCwgYW5kIHRvIHJlbnVtYmVyIHRoZSBleGlzdGluZyBzdWJjbGF1c2VzLiBDaGFuZ2VzIGFyZSBhbHNvIGJlaW5nIG1hZGUgdG8gZml4IHRoZSBibG9jayBkaWFncmFtcyBpbiBBbm5leCBBLCB0byBjb3JyZWN0IGEgbWlzc3BlbGxpbmcgb2YgaW5lcnRpYSwgYW5kIHRvIGFkZCBhIG1pc3Npbmcgc3ltYm9sLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXVybCIgY2xhc3M9ImFycm93LWxpbmsiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2llZWUvNjcxLTE5ODVfQ29yXzEvNDY4MyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy53Zy1zdGFuZGFyZCAud2ctaW5hY3RpdmUtcmVzZXJ2ZWQgc3RhbmRhcmQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndnLXN0YW5kYXJkIHdnLWluYWN0aXZlLXN0YW5kYXJkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGlkPSJ3Zy1pbmFjdGl2ZS1yZXNlcnZlZC1zdGFuZGFyZC1kZXNpZ25hdGlvbiI+ODEzLTE5ODg8L2g0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLXRpdGxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Img0Ij5JRUVFIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgVHdvLURlZ3JlZS1vZi1GcmVlZG9tIER5bmFtaWNhbGx5IFR1bmVkIEd5cm9zPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9IndnLWluYWN0aXZlLXJlc2VydmVkLXN0YW5kYXJkLWRlc2NyaXB0aW9uIj5BIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgdHdvLWRlZ3JlZS1vZi1mcmVlZG9tIGR5bmFtaWNhbGx5IHR1bmVkIGd5cm8gKERURykgc3BlY2lmaWNhdGlvbiBpcyBnaXZlbiB0aGF0IHByb3ZpZGVzIGEgY29tbW9uIGdyb3VuZCBvZiB0ZXJtaW5vbG9neSBhbmQgcHJhY3RpY2UgZm9yIG1hbnVmYWN0dXJlcnMgYW5kIHVzZXJzLiBBIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHByb2NlZHVyZXMgZm9yIHRlc3RpbmcgYSBEVEcgaXMgYWxzbyBnaXZlbi4gVGhlIHJlcXVpcmVtZW50cyBhbmQgdGVzdCBwcm9jZWR1cmVzIGFyZSBkZWZpbmVkIGluIHRlcm1zIHVuaXF1ZSB0byB0aGUgRFRHLiBUaGV5IGNvdmVyIGFwcGxpY2F0aW9ucyBvZiB0aGUgZ3lybyBhcyBhbiBhbmd1bGFyIG1vdGlvbiBzZW5zb3IgaW4gbmF2aWdhdGlvbiBhbmQgY29udHJvbCBzeXN0ZW1zLiBUaGV5IGFwcGx5IHRvIHR3byBtb2RlcyBvZiB1c2U6ICgxKSBhcyBhIHN0cmFwLWRvd24gc2Vuc29yIGluIG9wZXJhdGluZyBlbnZpcm9ubWVudHMgdHlwaWNhbCBvZiBhaXJjcmFmdCBhbmQgbWlzc2lsZSBhcHBsaWNhdGlvbnMsIGFuZCAoMikgYXMgYSBzZW5zb3IgaW4gZ2ltYmFsbGVkIHBsYXRmb3JtIGFwcGxpY2F0aW9ucyBpbiB3aGljaCB0aGUgZHluYW1pYyBhbmd1bGFyIGlucHV0cyB0byB3aGljaCB0aGUgZ3lybyBpcyBzdWJqZWN0ZWQgYXJlIGJlbmlnbiByZWxhdGl2ZSB0byB0aGUgYWNjdXJhY3kgcmVxdWlyZWQuIEluIHRoZSBjYXNlIG9mIHRoZSBzdHJhcC1kb3duIERURywgdGhlIGNoYXJhY3RlcmlzdGljcyBvZiB0aGUgZXh0ZXJuYWwgY2FwdHVyZSBsb29wcyBhcmUgY29uc2lkZXJlZCB0byB0aGUgZXh0ZW50IG5lY2Vzc2FyeSB0byBkZWZpbmUgdGhlIGd5cm8gcGVyZm9ybWFuY2UuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBpZD0id2ctaW5hY3RpdmUtcmVzZXJ2ZWQtc3RhbmRhcmQtdXJsIiBjbGFzcz0iYXJyb3ctbGluayIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaWVlZS84MTMvMTIwMCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9IkxlYXJuIE1vcmUiPkxlYXJuIE1vcmU8L2E+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+CjxsaSBpZD0ibWVudS1pdGVtLTk0MTgiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tOTQxOCI+PGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvZGlzdHJpYi8iPkRpc3RyaWJ1dG9yIFByb2dyYW08L2E+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+IDwhLS0gLy5uYXYgLmZvb3RlciAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iY29weXJpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPiZjb3B5OyBDb3B5cmlnaHQgPHNwYW4gaWQ9ImNvcHlyaWdodC15ZWFyIj4yMDIxPC9zcGFuPiBJRUVFICZuZGFzaDsgQWxsIHJpZ2h0cyByZXNlcnZlZC4gVXNlIG9mIHRoaXMgd2Vic2l0ZSBzaWduaWZpZXMgeW91ciBhZ3JlZW1lbnQgdG8gdGhlIDxhIGNsYXNzPSJmb290ZXItbGluayIgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvYWJvdXQvaGVscC9zaXRlLXRlcm1zLWNvbmRpdGlvbnMuaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJJRUVFIFRlcm1zIGFuZCBDb25kaXRpb25zIj5JRUVFIFRlcm1zIGFuZCBDb25kaXRpb25zPC9hPi48YnI+QSBub3QtZm9yLXByb2ZpdCBvcmdhbml6YXRpb24sIElFRUUgaXMgdGhlIHdvcmxkJnJzcXVvO3MgbGFyZ2VzdCB0ZWNobmljYWwgcHJvZmVzc2lvbmFsIG9yZ2FuaXphdGlvbiBkZWRpY2F0ZWQgdG8gYWR2YW5jaW5nIHRlY2hub2xvZ3kgZm9yIHRoZSBiZW5lZml0IG9mIGh1bWFuaXR5LjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLyNjb3B5cmlnaHQgLS0+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb2wtMTIgLS0+CiAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSAvLnJvdyAtLT4KICAgICAgICAgICAgPC9kaXY+IDwhLS0gLy5jb250YWluZXIgLS0+CiAgICAgICAgPC9zZWN0aW9uPiA8IS0tIC8jZm9vdGVyLWJhciAtLT4KICAgIDwvZm9vdGVyPgoKICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tc3Vic2NyaWJlIiB0eXBlPSJidXR0b24iIGRhdGEtYnMtdG9nZ2xlPSJvZmZjYW52YXMiIGRhdGEtYnMtdGFyZ2V0PSIjbmV3c2xldHRlci1zdWJzY3JpYmUiIGFyaWEtY29udHJvbHM9Im5ld3NsZXR0ZXItc3Vic2NyaWJlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1sYWJlbD0iVG9nZ2xlIG5ld3NsZXR0ZXIgc3Vic2NyaWJlIGZvcm0iPlN1YnNjcmliZTwvYnV0dG9uPiA8IS0tIC8uYnRuIC5idG4tc3Vic2NyaWJlIC0tPgoKICAgIDxkaXYgaWQ9Im5ld3NsZXR0ZXItc3Vic2NyaWJlIiBjbGFzcz0ib2ZmY2FudmFzIG9mZmNhbnZhcy1lbmQiIGRhdGEtYnMtc2Nyb2xsPSJ0cnVlIiBkYXRhLWJzLWJhY2tkcm9wPSJ0cnVlIiB0YWJpbmRleD0iLTEiIGFyaWEtbGFiZWxsZWRieT0ibmV3c2xldHRlci1zdWJzY3JpYmUtdGl0bGUiPgogICAgICAgIDxkaXYgY2xhc3M9Im9mZmNhbnZhcy1oZWFkZXIiPgogICAgICAgICAgICA8aDUgY2xhc3M9ImgyIG9mZmNhbnZhcy10aXRsZSIgaWQ9Im5ld3NsZXR0ZXItc3Vic2NyaWJlLXRpdGxlIj5OZXdzd2lyZTwvaDU+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuLWNsb3NlIHRleHQtcmVzZXQiIGRhdGEtYnMtZGlzbWlzcz0ib2ZmY2FudmFzIiBhcmlhLWxhYmVsPSJDbG9zZSI+PC9idXR0b24+CiAgICAgICAgPC9kaXY+IDwhLS0gLy5vZmZjYXZhcy1oZWFkZXIgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0ib2ZmY2FudmFzLWJvZHkiPgogICAgICAgICAgICA8cD5TaWduIHVwIGZvciBvdXIgbW9udGhseSBuZXdzbGV0dGVyIHRvIGxlYXJuIGFib3V0IG5ldyBkZXZlbG9wbWVudHMsIGluY2x1ZGluZyByZXNvdXJjZXMsIGluc2lnaHRzIGFuZCBtb3JlLjwvcD4KICAgICAgICAgICAgPCEtLSBNYXJrZXRvIEZvcm0gLS0+CiAgICAgICAgICAgIDxzY3JpcHQgc3JjPSIvL2FwcC1hYjI4Lm1hcmtldG8uY29tL2pzL2Zvcm1zMi9qcy9mb3JtczIubWluLmpzIj48L3NjcmlwdD4KICAgICAgICAgICAgPGZvcm0gaWQ9Im1rdG9Gb3JtXzEwMjIiIGNsYXNzPSJtYXJrZXRvRm9ybSI+PC9mb3JtPgogICAgICAgICAgICA8c2NyaXB0Pk1rdG9Gb3JtczIubG9hZEZvcm0oIi8vYXBwLWFiMjgubWFya2V0by5jb20iLCAiMjExLUZZTC05NTUiLCAxMDIyKTs8L3NjcmlwdD4KICAgICAgICA8L2Rpdj4gPCEtLSAvLm9mZmNhdmFzLWJvZHkgLS0+CiAgICA8L2Rpdj4gPCEtLSAvI25ld3NsZXR0ZXItc3Vic2NyaWJlIC5vZmZjYW52YXMgLS0+CgoKICAgIDxkaXYgY2xhc3M9InNjcmVlbi1kYXJrZW4iPjwvZGl2PiA8IS0tIC8uc2NyZWVuLWRhcmtlbiAtLT4KCiAgIDwhLS0gPHNjcmlwdCBzcmM9Imh0dHBzOi8vY29kZS5qcXVlcnkuY29tL2pxdWVyeS0zLjYuMC5zbGltLm1pbi5qcyIgaW50ZWdyaXR5PSJzaGEyNTYtdTdlNWtoeWl0aGxJZFRwdTIyUEhoRU5tUGNSZEZpSFJqaEF1SGNzMDVSST0iIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiPjwvc2NyaXB0Pi0tPgogICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMS4zL2Rpc3QvanMvYm9vdHN0cmFwLmJ1bmRsZS5taW4uanMiIGludGVncml0eT0ic2hhMzg0LWthN1NrMEdsbjRnbXR6Mk1sUW5pa1Qxd1hnWXNPZytPTWh1UCtJbFJIOXNFTkJPMExSbjVxKzhuYlRvdjQrMXAiIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiPjwvc2NyaXB0PgoKICAgIDxzY3JpcHQ+CiAgICAgICAgLy8gb2ZmY2FudmFzIG1vYmlsZSBtZW51CiAgICAgICAgZnVuY3Rpb24gZGFya2VuX3NjcmVlbih5ZXNubykgewogICAgICAgICAgICBpZiggeWVzbm8gPT0gdHJ1ZSApIHsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5zY3JlZW4tZGFya2VuJykuY2xhc3NMaXN0LmFkZCgnYWN0aXZlJyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSBpZih5ZXNubyA9PSBmYWxzZSkgewogICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLnNjcmVlbi1kYXJrZW4nKS5jbGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUnKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgZnVuY3Rpb24gY2xvc2Vfb2ZmY2FudmFzKCkgewogICAgICAgICAgICBkYXJrZW5fc2NyZWVuKGZhbHNlKTsKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI21vYmlsZS1tZW51LnNob3cnKS5jbGFzc0xpc3QucmVtb3ZlKCdzaG93Jyk7CiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgnb2ZmY2FudmFzLWFjdGl2ZScpOwogICAgICAgIH0KCiAgICAgICAgZnVuY3Rpb24gc2hvd19vZmZjYW52YXMob2ZmY2FudmFzX2lkKSB7CiAgICAgICAgICAgIGRhcmtlbl9zY3JlZW4odHJ1ZSk7CiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG9mZmNhbnZhc19pZCkuY2xhc3NMaXN0LmFkZCgnc2hvdycpOwogICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ29mZmNhbnZhcy1hY3RpdmUnKTsKICAgICAgICB9CgoKICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgZnVuY3Rpb24oKSB7CgogICAgICAgICAgICAvLyBhZmZpeCBoZWFkZXIgdG8gdG9wIG9uIHNjcm9sbAogICAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgZnVuY3Rpb24oKSB7CgogICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5zY3JvbGxZID4gNTApIHsKCiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RvcC1iYXInKS5jbGFzc0xpc3QuYWRkKCdkLW5vbmUnKTsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbWFzdGhlYWQnKS5jbGFzc0xpc3QuYWRkKCdmaXhlZC10b3AnKTsKCiAgICAgICAgICAgICAgICAgICAgLy8gYWRkIHBhZGRpbmcgdG9wIHRvIHNob3cgY29udGVudCBiZWhpbmQgbmF2YmFyCiAgICAgICAgICAgICAgICAgICAgbWFzdGhlYWRIZWlnaHQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjbWFzdGhlYWQnKS5vZmZzZXRIZWlnaHQ7CgogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUucGFkZGluZ1RvcCA9IG1hc3RoZWFkSGVpZ2h0ICsgJ3B4JzsKCiAgICAgICAgICAgICAgICB9IGVsc2UgewoKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndG9wLWJhcicpLmNsYXNzTGlzdC5yZW1vdmUoJ2Qtbm9uZScpOwogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtYXN0aGVhZCcpLmNsYXNzTGlzdC5yZW1vdmUoJ2ZpeGVkLXRvcCcpOwoKICAgICAgICAgICAgICAgICAgICAvLyByZW1vdmUgcGFkZGluZyB0b3AgZnJvbSBib2R5CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nVG9wID0gJzAnOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKCgoKICAgICAgICAgICAgLy8gb2ZmY2FudmFzIG1vYmlsZSBtZW51CiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ1tkYXRhLXRyaWdnZXJdJykuZm9yRWFjaChmdW5jdGlvbihldmVyeWVsZW1lbnQpIHsKICAgICAgICAgICAgICAgIGxldCBvZmZjYW52YXNfaWQgPSBldmVyeWVsZW1lbnQuZ2V0QXR0cmlidXRlKCdkYXRhLXRyaWdnZXInKTsKICAgICAgICAgICAgICAgIGV2ZXJ5ZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgICAgICAgICAgIHNob3dfb2ZmY2FudmFzKG9mZmNhbnZhc19pZCk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfSk7CgogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuYnRuLWNsb3NlJykuZm9yRWFjaChmdW5jdGlvbihldmVyeWJ1dHRvbikgewogICAgICAgICAgICAgICAgZXZlcnlidXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbiAoZSkgewogICAgICAgICAgICAgICAgICAgIGNsb3NlX29mZmNhbnZhcygpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLnNjcmVlbi1kYXJrZW4nKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgICAgICAgICAgICBjbG9zZV9vZmZjYW52YXMoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgLy8gRE9NQ29udGVudExvYWRlZCBlbmQKCgoKICAgICAgICAvLyBkaXNwbGF5IGN1cnJlbnQgeWVhcgogICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNjb3B5cmlnaHQteWVhcicpLmlubmVyVGV4dCA9IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKTsKICAgIDwvc2NyaXB0PgoKICAgIAkJPHNjcmlwdD4KCQkoIGZ1bmN0aW9uICggYm9keSApIHsKCQkJJ3VzZSBzdHJpY3QnOwoJCQlib2R5LmNsYXNzTmFtZSA9IGJvZHkuY2xhc3NOYW1lLnJlcGxhY2UoIC9cYnRyaWJlLW5vLWpzXGIvLCAndHJpYmUtanMnICk7CgkJfSApKCBkb2N1bWVudC5ib2R5ICk7CgkJPC9zY3JpcHQ+CgkJPHNjcmlwdD4gLyogPCFbQ0RBVEFbICovdmFyIHRyaWJlX2wxMG5fZGF0YXRhYmxlcyA9IHsiYXJpYSI6eyJzb3J0X2FzY2VuZGluZyI6IjogYWN0aXZhdGUgdG8gc29ydCBjb2x1bW4gYXNjZW5kaW5nIiwic29ydF9kZXNjZW5kaW5nIjoiOiBhY3RpdmF0ZSB0byBzb3J0IGNvbHVtbiBkZXNjZW5kaW5nIn0sImxlbmd0aF9tZW51IjoiU2hvdyBfTUVOVV8gZW50cmllcyIsImVtcHR5X3RhYmxlIjoiTm8gZGF0YSBhdmFpbGFibGUgaW4gdGFibGUiLCJpbmZvIjoiU2hvd2luZyBfU1RBUlRfIHRvIF9FTkRfIG9mIF9UT1RBTF8gZW50cmllcyIsImluZm9fZW1wdHkiOiJTaG93aW5nIDAgdG8gMCBvZiAwIGVudHJpZXMiLCJpbmZvX2ZpbHRlcmVkIjoiKGZpbHRlcmVkIGZyb20gX01BWF8gdG90YWwgZW50cmllcykiLCJ6ZXJvX3JlY29yZHMiOiJObyBtYXRjaGluZyByZWNvcmRzIGZvdW5kIiwic2VhcmNoIjoiU2VhcmNoOiIsImFsbF9zZWxlY3RlZF90ZXh0IjoiQWxsIGl0ZW1zIG9uIHRoaXMgcGFnZSB3ZXJlIHNlbGVjdGVkLiAiLCJzZWxlY3RfYWxsX2xpbmsiOiJTZWxlY3QgYWxsIHBhZ2VzIiwiY2xlYXJfc2VsZWN0aW9uIjoiQ2xlYXIgU2VsZWN0aW9uLiIsInBhZ2luYXRpb24iOnsiYWxsIjoiQWxsIiwibmV4dCI6Ik5leHQiLCJwcmV2aW91cyI6IlByZXZpb3VzIn0sInNlbGVjdCI6eyJyb3dzIjp7IjAiOiIiLCJfIjoiOiBTZWxlY3RlZCAlZCByb3dzIiwiMSI6IjogU2VsZWN0ZWQgMSByb3cifX0sImRhdGVwaWNrZXIiOnsiZGF5TmFtZXMiOlsiU3VuZGF5IiwiTW9uZGF5IiwiVHVlc2RheSIsIldlZG5lc2RheSIsIlRodXJzZGF5IiwiRnJpZGF5IiwiU2F0dXJkYXkiXSwiZGF5TmFtZXNTaG9ydCI6WyJTdW4iLCJNb24iLCJUdWUiLCJXZWQiLCJUaHUiLCJGcmkiLCJTYXQiXSwiZGF5TmFtZXNNaW4iOlsiUyIsIk0iLCJUIiwiVyIsIlQiLCJGIiwiUyJdLCJtb250aE5hbWVzIjpbIkphbnVhcnkiLCJGZWJydWFyeSIsIk1hcmNoIiwiQXByaWwiLCJNYXkiLCJKdW5lIiwiSnVseSIsIkF1Z3VzdCIsIlNlcHRlbWJlciIsIk9jdG9iZXIiLCJOb3ZlbWJlciIsIkRlY2VtYmVyIl0sIm1vbnRoTmFtZXNTaG9ydCI6WyJKYW51YXJ5IiwiRmVicnVhcnkiLCJNYXJjaCIsIkFwcmlsIiwiTWF5IiwiSnVuZSIsIkp1bHkiLCJBdWd1c3QiLCJTZXB0ZW1iZXIiLCJPY3RvYmVyIiwiTm92ZW1iZXIiLCJEZWNlbWJlciJdLCJtb250aE5hbWVzTWluIjpbIkphbiIsIkZlYiIsIk1hciIsIkFwciIsIk1heSIsIkp1biIsIkp1bCIsIkF1ZyIsIlNlcCIsIk9jdCIsIk5vdiIsIkRlYyJdLCJuZXh0VGV4dCI6Ik5leHQiLCJwcmV2VGV4dCI6IlByZXYiLCJjdXJyZW50VGV4dCI6IlRvZGF5IiwiY2xvc2VUZXh0IjoiRG9uZSIsInRvZGF5IjoiVG9kYXkiLCJjbGVhciI6IkNsZWFyIn19Oy8qIF1dPiAqLyA8L3NjcmlwdD48c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy93cC1jb250ZW50L3BsdWdpbnMvcGFnZS1saW5rcy10by9kaXN0L25ldy10YWIuanM/dmVyPTMuMy42JyBpZD0ncGFnZS1saW5rcy10by1qcyc+PC9zY3JpcHQ+CgogICAgPC9ib2R5Pgo8L2h0bWw+Cg==
2540
+ recorded_at: Fri, 27 May 2022 11:48:32 GMT
2541
+ recorded_with: VCR 6.1.0