Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Styleguide and theme code de-duplication #1651

Merged
merged 41 commits into from May 23, 2018

Conversation

DreaminDani
Copy link

@DreaminDani DreaminDani commented May 20, 2018

This is a massive PR but the goal is simple:

Create a consistent way to develop and use themes

This code introduces gulp as a build system for OpenEMR's core theme files and storybook as a documentation site. Files are now broken into their own SCSS files and share more code than ever before! More details on this can be found in the README.md in interface and on the styleguide website: http://openemr-interface.surge.sh/

Because all themes share the majority of their code now, the generated CSS has been rearranged quite a bit. This was done in order to take advantage of the cascading nature of CSS. In short, theme files import the core.scss (shared code) and then provide their overrides later on in the file (either through individual css rules or through another .scss import).

I was able to use a local docker container to test if I broke anything during my reorganization. I doubt I was able to catch everything so please do pull down the code and test it locally. npm run dev should let you change the base .scss files and see updates as things get saved and generated. More info on that in the README.

Once this is approved, additional work can be done to chop the differences between themes down even further. Most notably, font-sizes are declared in %, em, px and pt across multiple files. I've also left some todos in the README to note what other work hasn't been done from the original conversation: https://community.open-emr.org/t/user-interface-design-style-guide-the-beginnings/9634/24

Feel free to ping me if you have any questions!

below added by bradymiller:
Up For Grabs demo for this PR is here: https://www.open-emr.org/wiki/index.php/Development_Demo#Nu_-_Up_For_Grabs_Demo

Daniel Sandoval added 30 commits March 31, 2018 12:08
does not update base scss files for colors
@bradymiller
Copy link
Sponsor Member

Added an Up For Grabs demo for this PR here:
https://www.open-emr.org/wiki/index.php/Development_Demo#Nu_-_Up_For_Grabs_Demo

@DreaminDani
Copy link
Author

DreaminDani commented May 21, 2018

@bradymiller thanks for taking a look!

Is anything that you have tested breaking with this?

Nothing I can tell... But I don't know the system like y'all do. If I had a "golden path" to click through, I could check against an existing demo.

Is the node stuff required for production use or just for developers?

Just for developers as long as we're committing the CSS. In the future, i'd prefer if the CSS wasn't committed so devs only edited the SCSS. If we did that, we'd have to add a "build step" to our deploy and release strategies. I don't think we're there yet.

In the meantime, @robertdown and I were thinking that we could just minify all the theme CSS for now (e.g. run npm run build) and that would prevent contributors from reaching for the CSS when they want to make a style change. As you can tell in the commit history and readme, that's what I'm trying to push us towards.

cc @MatthewVita @zbig01

@bradymiller
Copy link
Sponsor Member

bradymiller commented May 21, 2018

hi,
I'd probably hold off on the minify stuff for now. It:

  1. Provides us a nice sanity check (via the git changes) as developers learn how to use this
  2. Provides a learning step (ie. developers will try to change the theme CSS and then we will show them how to make these changes instead in the right place)
  3. We will never let anybody change them (unless do it the right way, of course)

-brady


.select2-search, .select2-results{
direction: rtl !important;
}
Copy link
Sponsor Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just checking if the above 4 lines were missed (as I recall, this was recently added to codebase)

@zbig01
Copy link
Contributor

zbig01 commented May 21, 2018

Hi @d3sandoval

The demo looks great. Thanks for using a colored stylesheet :). It is amazing what you have been able to achieve.

On my quick perusal I did note a few things

  1. The Input and select boxes gets the color theme color when they receive focus, it does not appear to be happening in your demo

What it should be

03-stylesheet-openemr

What it is

04-stylesheet-openemr

Similarly the infamous help modal

What it should be

01-stylesheet-openemr

What it is

02-stylesheet-openemr

Tabs in Administration > Globals

What it should be

05-stylesheet-openemr

What it is

06-stylesheet-openemr

I am certain that a minor tweak on your part will fix these :))

@DreaminDani
Copy link
Author

All easy fixes, so far! I'll address these in a follow up commit.

@robertdown
Copy link
Member

Looking forward to reviewing all this, exciting stuff!

I think now is actually a good time to introduce minification. We should have done it a long time ago. We can add a comment to the top of the mini field style saying it’s been auto generated and a link to some documentation.

@bradymiller
Copy link
Sponsor Member

hi @robertdown ,
What benefits are we getting from minification?

@zbig01
Copy link
Contributor

zbig01 commented May 21, 2018

Considering there are many developers contributing to the codebase leaving it unminified but with adequate notification in the individual stylesheet indicating that it is a generated stylesheet would be helpful.

@robertdown
Copy link
Member

Minification prevents accidental edits of that file, which is a bit of a brutish way of doing that, but it’s a great way to really indicate CSS files can no longer be edited directly. An unminified CSS file is asking to be edited whereas a minified one scares people away (which is what we want in this case). There’s also the regular benefits of minification, speed enhancement, yada yada

@robertdown
Copy link
Member

We should be treating CSS essentially as compiled code, a black box not to be touched.

@bradymiller
Copy link
Sponsor Member

bradymiller commented May 22, 2018

hi @robertdown ,
We can ensure nobody edits those files.

Note as folks learn this, the likely workflow will happen:
A developer makes a simple edit in the wrong stylesheet in a PR. We then hold hands with the developer and show them how to use the correct method.

I am also a bit distrustful of black boxes in the codebase; shouldn't this need to earn our trust :) (ie. after seeing how it works when folks make changes etc., which is impossible to follow with minified files)?

@robertdown
Copy link
Member

You can follow changes, we'd generate a sourcemap for minified files. It's not really a black box, that was a bad example. If we don't minify now, we should set a timetable for when we will begin minifying, otherwise it'll get tossed in the back burner and forgotten about. I'd recommend 6 weeks from the date this PR is accepted.

@bradymiller bradymiller mentioned this pull request May 23, 2018
@DreaminDani
Copy link
Author

Pushed changes as requested by @bradymiller and @zbig01 . here's a video describing how that's possible without even spinning up an OpenEMR instance: https://drive.google.com/open?id=1nKXSVHFZhmZx0gNxsbpGQa-uof35dABC

Will have a commit that adds a note to the top of the generated css in a few minutes

@DreaminDani
Copy link
Author

Added the helper text at the top of the files to point to the README. If you're curious, here's what the style_light.css looks like minified:

/*! This style sheet was autogenerated using gulp + scss
 *  For usage instructions, see: https://github.com/openemr/openemr/blob/master/interface/README.md
 */
@import url(themeBuilder.php);.form-group{margin-bottom:5px!important}legend{border-bottom:2px solid #e5e5e5!important;background:#e5e5e5!important;padding-left:10px!important}.form-horizontal .control-label{padding-top:2px}fieldset{background-color:#f2f2f2!important;margin-bottom:10px!important;padding:0 0 15px!important}.oe-custom-line{padding-bottom:5px}.oe-large{display:inline-block}#logout_link span,#navigation-slide * li a img,#navigation-slide li a img,.example_menu .footer span,.oe-show-hide,.oe-small{display:none}.oe-legend-radio{font-size:12px;padding:5px 5px 0 0}.oe-bold-black{font-weight:700;color:#000}.oe-payment-select{width:80px!important;text-align:right;font-size:12px}.oe-ckbox-label{padding-left:30px;font-weight:500}.oe-file-div{padding:10px 15px}.oe-modal-dialog{width:65%!important}.oe-btn-circle{width:30px;height:30px;text-align:center;padding:6px 0;font-size:12px;line-height:1.428571429;border-radius:15px}body{font-family:lato,Helvetica,Sans-Serif;font-size:14px}@font-face{font-family:"FontAwesome";src:url(/public/assets/font-awesome-4-6-3/fonts/fontawesome-webfont.ttf) format("truetype")}.css_button[href*=deleter]:before,button[href*=deleter]:before,div.closeDlgIframe:before,input[type=button][href*=deleter] [type=submit]:before{font-family:"FontAwesome";content:"\f014";display:inline-block}.btn::before{font-family:"FontAwesome";display:inline}.btn-save::before{content:"\f00c\00a0\00a0"}.btn-cancel::before{content:"\f00d\00a0\00a0"}.btn-add::before{content:'\f067\00a0\00a0'}.btn-search::before{content:'\f002\00a0\00a0'}.btn-delete::before{content:'\f014\00a0\00a0'}.btn-duplicate::before{content:'\f0c5\00a0\00a0'}.btn-refresh::before{content:'\f021\00a0\00a0'}.btn-edit::before{content:'\f040\00a0\00a0'}.btn-transmit::before{content:'\f061\00a0\00a0'}.btn-receive::before{content:'\f060\00a0\00a0'}.btn-print::before{content:'\f02f\00a0\00a0'}.btn-back::before{content:'\f053\00a0\00a0'}.btn-show::before{content:'\f06e\00a0\00a0'}.btn-hide::before{content:'\f070\00a0\00a0'}.btn-undo::before{content:'\f0e2\00a0\00a0'}.btn-update::before{content:'\f01e\00a0\00a0'}.btn-download::before{content:'\f019\00a0\00a0'}.btn-mail::before{content:'\f0e0\00a0\00a0'}.btn-calendar::before{content:'\f073\00a0\00a0'}.btn-graph::before{content:'\f201\00a0\00a0'}.btn-filter::before{content:'\f0b0\00a0\00a0'}.chart-dygraphs{direction:ltr}.drug_lookup{border:2px outset #666;background-color:#eae6ff;padding:5px;position:absolute;display:block}.formtable,.formtable tr td{line-height:24px}.report_search_bar{background-color:#eaddb4}#flow_board_parameters{margin:25px auto;background-color:#ececec}#flow_board_parameters td{padding:10px}#flow_board_parameters table{border:solid 1px;width:100%;border-collapse:collapse}div.closeDlgIframe{background:#ff5d5a;position:absolute;top:-12px;right:-12px;height:25px;width:25px;cursor:pointer;z-index:10010}div.closeDlgIframe:before{color:#fff;content:"\f00d";font-weight:700;width:100%;text-align:center;margin:auto;line-height:25px;height:25px}.ui-draggable:hover{cursor:move;cursor:grab;cursor:-webkit-grab}.ui-draggable:active{cursor:move;cursor:grabbing;cursor:-webkit-grabbing}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon,.ui-widget-content .ui-icon{background-image:url(/public/assets/jquery-ui-1-12-1/themes/sunny/images/ui-icons_d19405_256x240.png)}.ui-icon{width:16px;height:16px;display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-resizable-handle{position:absolute;font-size:.1px;display:block;touch-action:none}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}#addressbook_list a,#addressbook_list a:hover,#addressbook_list a:visited,a,a:visited{color:#00c}a:hover{color:#f55}.back,.more,a{text-decoration:none}.link_selected,.link_selected:visited,.link_submit{text-decoration:none;color:#00f}.link_submit{color:#007}.link_submit a:visited{color:#007}.link_submit a:hover{color:#f55}.menu,.menu_selected{color:#00c;text-decoration:none;text-align:left}.menu_selected{color:#000}.title_bar,.title_bar_top{font-weight:700;text-decoration:none;color:#000}.sidebar{background:#fffbeb;padding-left:0!important;padding-right:0!important}.sidebar .submenu{padding-left:15px}.sidebar ul.mainmenu{padding-bottom:55px}.body_bottom,.body_top{margin:8px}.body_bottom,.body_login{background:url(../pic/aquabg.gif)}.bgcolor1,.table_bg{background-color:#ccc}.textcolor11{background-color:#222}.highlightcolor{background-color:#ddd}.bottom_line{background:url(../pic/aquabg.gif)}.logobar{background-color:#24262c;height:110px}.navbar{height:22px}.titlebar{height:20px}.top-nav-icons{margin-right:15px;margin-top:5px}.example_menu{list-style:none;margin:0;padding:0;vertical-align:top;width:136px}.collapse_all,.expand_all{cursor:pointer}.example_menu ul{display:none;list-style:none;margin:0;padding:0}#menu1 li,#menu2 li,#menu3 li,#menu4 li,#menu5 li,.example_menu li{background-image:none;margin:0;padding:0;border-bottom:1px solid #fff}.example_menu ul ul,ul.tabNav a{display:block}.example_menu a{color:#000;cursor:pointer;display:block;font-weight:700;margin-left:0;padding:2px 2px 2px 17px;width:160px}.example_menu a.expanded{background:#bbb url(collapse.gif) no-repeat 3px 50%}.example_menu a.collapsed{background:#bbb url(expand.gif) no-repeat 3px 50%}.example_menu a:hover{text-decoration:none}.example_menu ul li span{background:#d9d1a4;color:#000;display:block;font-weight:400;width:100%}.example_menu ul a:Subjective{font-weight:400}.example_menu li.active a{background:#fff}.example_menu li.active li a{background:#e8e8e8}#menu1 li.footer,#menu2 li.footer,#menu3 li.footer,#menu4 li.footer,#menu5 li.footer,.example_menu .footer{background:url(footer.jpg) no-repeat 0 0;border-top:2px solid #fff;height:9px;line-height:15px;margin:0 0 10px;width:131px}.cke_contents{height:300px!important}.required,.text{color:#000;text-decoration:none;font-size:.9em}.required{color:#800;font-weight:700}.bold,.small{text-decoration:none;color:#000}.bold{font-weight:700;font-size:.9em}.small{font-size:.8em}.rtl .float-right,.sellistclass{float:left}.disabled_button,a.disabled_button:hover{color:gray}.pwdalert{display:block;width:390pt;margin-left:100px;padding:10px 10px 10px 15px;color:#000}.alertmsg1{border:3px solid #fe7b7a;background-color:#ffd6d6}.alertmsg2{border:3px solid #f56fff;background-color:#fabfff}.alertmsg3{border:3px solid #9acc2e;background-color:#eef7dd}.redtext{text-decoration:none;color:red}.de_identification_status_message{width:50%;border:1px solid #00f}.de_identification_input_controls_box{width:100%;border:1px solid #00f}.de_id_upgrade_login{width:40%;border:1px solid #000;background-color:#fff}body.admin-layout input[type=button]{display:inline-block;float:none}.error-message{color:red;display:block;white-space:nowrap;font-weight:400}.error-border{border:1px solid red!important}.tinylogocontainer{display:inline-block;border:0}.tinylogopng{display:inline-block;width:44px;height:22px}#addressbook_list td{padding-left:4px;padding-right:4px}#addressbook_list tr.search{font-weight:700}#addressbook_list tr.head{background-color:#ccc;font-weight:700}#addressbook_list .inputtext{font-weight:400;border-style:solid;border-width:1px;border-color:#000;background-color:transparent}#addressbook_list .button{font-size:.8em;font-weight:700}#documents_list .treeMenuDefault{font-style:italic}#documents_list .treeMenuBold{font-style:italic;font-weight:700}#documents_actions{padding-top:10px;width:70%;height:95%;float:right;overflow:auto}#documents_actions iframe{display:inline;border:0;width:100%;height:600px;overflow:auto}#documents_actions form{margin:0;padding:0}#documents_actions table{width:100%;height:95%}#DEM .groupname{font-weight:700;color:#080;padding-right:5px}#DEM .data,#DEM .groupname,#DEM .label_custom{font-size:.8em;vertical-align:top}#DEM .label_custom{font-weight:700;text-align:right}#DEM .data{text-align:left;padding-right:6px}#HIS .groupname{color:#080;padding-right:1px;height:2em}#HIS .groupname,#HIS .label_custom{font-weight:700;vertical-align:top}#HIS .data{vertical-align:top;text-align:left;padding-right:10px}#pnotes .billing{background-color:#dfd}#pnotes .highlight{background-color:#fff}#pnotes table{border-collapse:collapse}#patient_pastenc tr,#patient_stats .statrow,#pnotes .noterow{cursor:pointer}#pnotes .noterow td{border-bottom:1px dashed #000;vertical-align:top;padding:5px;margin:5px}#pnotes_ps_expand div.tab table td{padding-right:10px}#patient_stats{padding:10px}#patient_stats table{width:100%}#patient_stats td{padding:3px}#patient_stats .head{background-color:#ccc;text-align:center}#patient_stats .detail{vertical-align:top}#patient_stats .btn{background-color:transparent}#patient_stats .bg1{background-color:#ddf}#patient_stats .bg2{background-color:#fdd}#patient_stats .center{text-align:center}#patient_pastenc table,#patient_stats table,#patient_stats_summary table{border-collapse:collapse}#patient_stats_summary .noend_noreturn{color:#e00}#patient_stats_summary .noend{color:#d50}#patient_stats_summary .noreturn{color:#00f}#patient_stats_summary .title{font-size:1.1em}#patient_pastenc,#patient_reports,#patient_stats_imm,#patient_stats_issues,#patient_stats_prescriptions,#patient_stats_spreadsheets,#report_custom{width:100%}#patient_pastenc .billing_note{width:25%}#patient_pastenc .billing_note_text{padding:5px;border:2px outset #000;background-color:#d3d3d3}#patient_pastenc .billing_note_text_highlight{background-color:#f7f5d1}#patient_pastenc table{width:100%}#patient_pastenc td{border-top:1px solid #000;vertical-align:top}#patient_pastenc th,ul.tabNav li{text-align:left}#patient_pastenc #tooltipdiv{position:absolute;width:500px;border:1px solid #000;padding:2px;background-color:#ffa;visibility:hidden;z-index:1000}#patient_pastenc .highlight{background-color:#fff}#patient_pastenc .tooltip{position:absolute;border:1px solid #333;background:#f7f5d1;padding:2px 5px;color:#333;display:none}#patient_reports .issues{padding-right:30px}#patient_reports .issues table{margin:10px 0}#patient_reports .encounters td,#patient_reports .issues td{padding:2px}#patient_reports .encounter_forms{margin:5px 15px}#patient_reports td{vertical-align:top}#patient_reports ul,ul.tabNav{list-style:none}#report_custom hr{border:2px dotted #000}#report_custom .billing,#report_custom .communications,#report_custom .demographics,#report_custom .documents,#report_custom .history,#report_custom .immunizations,#report_custom .insurance,#report_custom .notes,#report_custom .transactions{margin:5px;padding:5px}#report_custom h1{margin:0 0 5px;padding:0;font-size:1.2em}#report_custom .issue{margin-left:20px}#report_custom .issue_type{font-weight:700;padding:5px 0}#report_custom .issue_diag{margin:0 20px}#report_custom .encounter{width:100%;border-top:2px dotted #000;padding:10px 5px;margin-top:10px}#report_custom .encounter h1{margin:0;padding:0;font-size:1.4em}#report_custom .encounter_form{border-top:1px solid gray}ul.tabNav{float:left;width:100%;margin:0;padding:4px 0 0;background:#2672ec}ul.tabNav li{float:left;vertical-align:bottom;padding:0 4px}div.tabContainer{clear:both;float:left;width:100%}div.tabContainer div.tab{border:1px solid #fff;color:#000;display:none;padding:10px}div.tabContainer div.current{display:block}div.tab,div.tab_long{min-height:180px;background:#fff 0 0;margin-bottom:10px;width:665px}div.tab_long{width:100%}div.tab p:last-child{margin-bottom:0}div.tab table td{padding-right:1px;padding-bottom:0}div.tab table td.label_custom{min-width:80px}div.tab table td.data{min-width:120px}div.notab,div.notab-right{background:#fff 0 0;margin-bottom:10px;width:100%}.section-header{width:685px}.section-header,.section-header-dynamic{margin-bottom:5px;border-bottom:1px solid}.summary_item{background:#fff;padding:8px}#sddm li{margin:0;list-style:none;float:left}#sddm div a,#sddm li a{display:block;margin:0 1px 0 0;text-align:left;text-decoration:none}#sddm div{position:absolute;visibility:hidden;display:none;margin:0;padding:0;background:#f0f0f0}#sddm div a{position:relative;margin:0;padding:5px 10px;width:170px;white-space:normal;font-weight:400}#sddm div a:hover{color:#fff}#documents_list a,#documents_list td,#reports_list a,#reports_list td,#sddm div a{font-size:.8em}#report_parameters{background-color:#ececec;margin-top:10px}#report_parameters table{border:solid 1px;width:100%;border-collapse:collapse}#report_parameters table td{padding:5px}#report_parameters table table{border:0;border-collapse:collapse;font-size:.8em}#report_parameters table table td.label_custom{text-align:right}#report_results table{border-top:1px solid #000;border-bottom:1px solid #000;border-left:1px solid #000;border-right:1px solid #000;width:100%;border-collapse:collapse;margin-top:1px}#report_results table thead{padding:5px;display:table-header-group;background-color:#ddd;text-align:left;font-weight:700;font-size:.7em}#report_results table th{border-bottom:1px solid #000;padding:5px}#report_results table td{padding:5px;border-bottom:1px dashed;font-size:.8em}.report_totals td{background-color:#7f7;font-weight:700}.showborder{width:650px}.showborder td,.showborder_long tr td{border-bottom:1px dashed #000;text-align:left}.showborder_head th{border-bottom:1px solid #000;text-align:left}.shownoborder td{text-align:left}.showborder_long{width:100%}.group-row{margin-top:15px}.container-group{margin-top:auto}.group-error-msg{color:#ff6643}.group-success-msg{color:#4c8029}#component-border{margin-bottom:20px;border:1px solid #2672ec;width:100%;min-height:150px;padding:10px}.float-right{float:right}table.dataTable#therapy_groups_list tbody td{padding-left:20px;padding-right:20px;font-size:15px}.therapy_group #therapy_groups_list_container{margin-top:initial;width:initial}.therapy_group #therapy_groups_list_container input[type=text]{border-color:#ccc}.therapy_group #therapy_groups_list_container input[type=number]{-moz-appearance:textfield}.therapy_group #therapy_groups_list_container input[type=number]::-webkit-inner-spin-button,.therapy_group #therapy_groups_list_container input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.therapy_group .delete_btn button,.therapy_group .delete_btn span{background-color:#ef3935;font-size:15px;padding:2px 10px}.therapy_group .delete_btn a{text-decoration:none;color:#fff}.therapy_group #therapy_groups_list_container .failed_message{font-size:15px}#updateParticipants{position:relative}#addParticipant{position:absolute;right:0;z-index:100}#add-participant-form{transition:max-height 1s ease-out;max-height:0;overflow:hidden}.showAddForm{max-height:250px!important}.groups-error-msg{color:#ff542d;font-size:1.3em;padding:8px;text-align:center}.therapy_group .event_details{font-size:14px}#add_participant{margin-bottom:20px;margin-left:10px}#add_participant .button_wrap,#add_participant .comment_wrap,#add_participant .patient_wrap{margin-top:7px}#add_participant .comment_wrap,#add_participant .patient_wrap,#file_type_whitelist #add-manually{display:inline-block}#add_participant .button_wrap input{float:none;display:inline-block}#add_participant_element .input_label,.menuBar{display:block}#add_participant_element .error_wrap .error{color:red}#group_attendance_form_table tbody td{text-align:center}#file_type_whitelist .subject-black-list,#file_type_whitelist .subject-white-list{display:inline-block;width:420px;float:left}#file_type_whitelist{height:400px;padding:10px}#black-list,#white-list{margin:10px;padding:10px;width:400px}#file_type_whitelist select{height:250px;padding:0}#file_type_whitelist option{padding:4px 10px}#file_type_whitelist option:hover{background:#eee}#file_type_whitelist .subject-info-arrows{display:inline-block;width:58px;margin:130px 30px 30px;float:left}#file_type_whitelist .subject-info-save{width:60px;margin:170px 30px 30px;float:left}#file_type_whitelist input[type=button]{float:none!important;width:63px}#file_type_whitelist #add-manually-input{width:190px}#file_type_whitelist .top-list{margin:20px 20px 2px}.menuBar{width:100%;height:auto;position:fixed;top:0;background-color:#fff!important;z-index:100}.menuBar~.container{margin-top:95px}.logout{color:#000;text-decoration:none;text-align:right}.alert-custom{background-color:red!important;color:#fff!important}.small span.text,span.bold,span.required{font-size:1em}.back,.items,.link,.link_selected,.link_selected:visited,.more{font-size:.7em}.title{font-size:1.5em}.title_bar{font-size:1.13em}.bgcolor2,.body_top{background-color:#fff}.body_title{background-color:#f4f4f4}.body_nav{background-color:#f0f0f0}.body_filler{background-color:#f7f0d5}#HIS .data,#HIS .groupname,#HIS .label_custom,#addressbook_list .inputtext,#addressbook_list tr.search,#patient_pastenc #tooltipdiv{font-size:.9em}[href~=deleter],[onclick~=delete]{background:#ff5d5a!important}.section{background:#f0f0f0;border-color:#d7d7d7!important}#documents_list{width:29%;height:95%;overflow:auto;float:left;border-right:dashed 1px}.body_title table tr td{padding:0!important}#addressbook_list tr.evenrow{background-color:#ddf}#addressbook_list tr.oddrow{background-color:#fff}td.even,tr.odd{background-color:#fff!important}.css_button_small{background:#2672ec;color:#fff!important;display:block;float:left;font-weight:400;margin-right:3px;text-decoration:none;padding:5px 12px;border:0;font-size:.7em}.css_button_small span{display:block}.css_button_small:hover{background:#1050b6;text-decoration:none}.css_button .css_button_small,button .css_button_small,input[type=button] .css_button_small,input[type=submit] .css_button_small{font-size:.7em}.css_button span,button span,input[type=button] span{display:inline}.css_button[href*=deleter],button[href*=deleter],input[type=button][href*=deleter]{background:red!important}.css_button:hover,button:hover,input[type=button]:hover,input[type=submit]:hover{background:#1050b6;text-decoration:none}.css_btn,.css_button,button,input[type=button],input[type=submit]{background:#2672ec;color:#fff!important;display:block;float:left;font-weight:400;margin-right:3px;text-decoration:none;padding:5px 12px;border:0}.css_btn:hover{color:#ff4500}.modal-footer>button{float:none!important}.btn-default{background:rgba(0,0,0,.05)!important;color:rgba(0,0,0,.87)!important}.btn-link{color:#444!important}input[type=button][style="background-color:#ffff55"]{background:#2672ec!important}input[type=text]{background:#fff;border:1px solid #444;padding:3px;margin:3px}ul.tabNav li.current a{background:#fff;color:#2672ec}ul.tabNav a{color:#fff;padding:8px 17px}ul.tabNav a:focus{outline:0}.showborder td,.showborder_head th,.showborder_long tr td,.shownoborder td,.sidebar .submenu{font-size:.9em}.drug_lookup{font-size:.8em}#navigation-slide,#navigation-slide *{padding-left:0;margin-left:0;font-size:.75rem!important}#navigation-slide * li,#navigation-slide li{list-style:none}#navigation-slide * li a,#navigation-slide li a{background-color:none;color:#000;display:block;font-size:1.13em;padding:8px 0;width:100%}#navigation-slide * li a:hover,#navigation-slide li a:hover{background-color:#d7d7d7}#navigation-slide * li a.collapsed_lv2:before,#navigation-slide * li a.collapsed_lv3:before,#navigation-slide li a.collapsed_lv2:before,#navigation-slide li a.collapsed_lv3:before{content:" ";width:0;height:0;border-bottom:5px solid transparent;border-top:5px solid transparent;border-left:5px solid #2f2f2f;font-size:0;line-height:10px}#navigation-slide * li a.expanded,#navigation-slide li a.expanded{background:#cbe6f7}#navigation-slide * li a.expanded_lv2:before,#navigation-slide * li a.expanded_lv3:before,#navigation-slide li a.expanded_lv2:before,#navigation-slide li a.expanded_lv3:before{content:" ";width:0;height:0;border-right:5px solid transparent;border-top:5px solid transparent;border-left:5px solid #2f2f2f;font-size:0;line-height:0}#navigation-slide * li ul li,#navigation-slide li ul li{padding-left:14px}#sddm li{background:#f0f0f0}#sddm li a{padding:12px;color:#2672ec}#sddm li a:hover{background:#d7d7d7}#sddm div a{color:#2875de}#sddm div a:hover{background:#2672ec}#sddm li.encounter-form-category-li{position:relative;z-index:1}.text-area{background-color:#fff;border:1px solid #000;width:100%;height:100px;overflow:auto;text-align:left}.example_menu{font-size:.7em}.example_menu ul a:hover{background:#f5f5f5;text-decoration:underline}.error-message{font-size:.8em}.attach-input{text-align:right}.full-width{width:100%}.radio-pos{margin-left:10px}.sidebar{background-color:#f8f8f8;font-size:.95em}.alert-danger-custom{background-color:red!important;color:#fff!important}div.category-display{margin-left:25px!important}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlX2xpZ2h0LmNzcyIsIm9lLWJvb3RzdHJhcC5zY3NzIiwic3R5bGVfbGlnaHQuc2NzcyIsIm5hdmlnYXRpb24tc2xpZGUvX2xpZ2h0LnNjc3MiLCJjb3JlL25hdm1lbnUuc2NzcyIsImNvcmUuc2NzcyIsImNvcmUvRm9udEF3ZXNvbWUuc2NzcyIsImNvcmUvZm9ybXMuc2NzcyIsImNvcmUvY2xvc2VEbGdJZnJhbWUuc2NzcyIsImNvcmUvY3Vyc29yLnNjc3MiLCJjb3JlL2xpbmtzLnNjc3MiLCJjb3JlL2FkZHJlc3Nib29rLnNjc3MiLCJjb3JlL3RhYnMuc2NzcyIsImNvcmUvdGV4dC5zY3NzIiwiY29yZS90aGVyYXB5LWdyb3Vwcy5zY3NzIiwiY29yZS9kb2N1bWVudHMuc2NzcyIsImNvcmUvcGF0aWVudC9kZW1vZ3JhcGhpY3Muc2NzcyIsImNvcmUvcGF0aWVudC9oaXN0b3J5LnNjc3MiLCJjb3JlL3BhdGllbnQvbm90ZXMuc2NzcyIsImNvcmUvcGF0aWVudC9wYXN0X2VuY291bnRlcnMuc2NzcyIsImNvcmUvcGF0aWVudC9zdGF0cy5zY3NzIiwiY29yZS9wYXRpZW50L3N0YXRzX3N1bW1hcnkuc2NzcyIsImNvcmUvcGF0aWVudC9yZXBvcnRzLnNjc3MiLCJjb3JlL3BhdGllbnQvcmVwb3J0X2N1c3RvbS5zY3NzIiwiY29yZS9zZGRtLnNjc3MiLCJjb3JlL3JlcG9ydHMuc2NzcyIsImNvcmUvbGlzdC10YWJsZS5zY3NzIiwiYnV0dG9ucy9fbGlnaHQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSw4QkNBQSxXLENBQ0MsMkIsQ0RHRCxNLENBQ0UseUMsQ0NBRiw0QixDQUNDLDJCLENBRUQsK0IsQ0FDQyxlLENER0QsUSxDQUNFLGtDLENDb0JGLDRCLENBQ0MsMEIsQ0FFRCxlLENBQ0Msa0IsQ0FFRCxTLENBQ0Msb0IsQ0N1SUQsaUIsQ0NwSEEsNEIsQ0h3aURBLDBCLENJaDlDQSwwQixDSHRHQSxhLENBSEEsUyxDQUNDLFksQ0RkRCxnQixDQ29CQSxjLENBQ0MsbUIsQ0RqQkQsYyxDQ29CQSxlLENBQ0MsVSxDRGpCRCxrQixDQUNFLG9CLENDb0JGLGdCLENBQ0MsYyxDRGpCRCxlLENDb0JBLGlCLENBQ0MsZSxDQUVELFksQ0FDQyxpQixDQUVELGdCLENBQ0MsbUIsQ0RqQkQsYyxDQ29CQyxVLENBQ0EsVyxDQUNBLGlCLENBQ0EsYSxDRGxCQyxjLENDb0JGLHVCLENDL0VBLGtCLENGZ0VBLEksQ0tsRUEscUMsQ0xvRUUsYyxDQWVGLFdNMUVBLHlCLENONEVFLDRGQUVGLGlDLENBRUEsNEIsQ0E0SEEseUIsQ0E3SEEsc0QsQ0FFRSx5QixDTXpFRixlLENBQ0Msb0IsQ040RUQsWSxDTXhFQSx5QixDQUNDLGMsQ0FHRCxpQixDQUNDLHlCLENBR0QsbUIsQ0FDQyx5QixDQUdELGdCLENBQ0MseUIsQ0FHRCxtQixDQUNDLHlCLENBR0QsbUIsQ0FDQyx5QixDQUdELHNCLENBQ0MseUIsQ0FHRCxvQixDQUNDLHlCLENBR0QsaUIsQ0FDQyx5QixDQUdELHFCLENBQ0MseUIsQ0FHRCxvQixDQUNDLHlCLENBR0Qsa0IsQ0FDQyx5QixDQUdELGlCLENBQ0MseUIsQ0FHRCxpQixDQUNDLHlCLENBR0QsaUIsQ0FDQyx5QixDQUdELGlCLENBQ0MseUIsQ0FHRCxtQixDQUNDLHlCLENBR0QscUIsQ0FDQyx5QixDQUdELGlCLENBQ0MseUIsQ0FHRCxxQixDQUNDLHlCLENBR0Qsa0IsQ0FDQyx5QixDQ3ZHRCxtQixDUCtKRSx5QixDT3RKRixlLENQNEpFLGEsQ0FLRixZLENPMUpDLHNCLENBQ0Esd0IsQ1A0SkMsVyxDT3pKRixpQixDQUNBLGEsQ0FHQSxVLENBSUEsZ0IsQ0FIQyxnQixDQU9ELGtCLENBQ0Esd0IsQ1AySkEsc0IsQ092SkEsZ0IsQ0FDQyx3QixDQUVELHlCLENBQ0MsWSxDUDBKRCw0QixDQUNFLGdCLENRcE1GLFUsQ1JzTUUsd0IsQ0FLRixrQixDUW5NQyxrQixDQUNBLGlCLENBQ0EsUyxDQUNBLFcsQ0FDQSxXLENScU1DLFUsQ1FsTUYsYyxDQUNDLGEsQ1JxTUQseUIsQ1FsTUMsVSxDQUNBLGUsQ0FFQSxlLENBRUEsVSxDQUNBLGlCLENSb01DLFcsQ1M3TkYsZ0IsQ1QrTkUsVyxDQUtGLG1CLENBQ0UsVyxDUzFORixXLENBQ0MsbUIsQ1Q2TkQsb0IsQ0FDRSxXLENTeE5GLGUsQ0FDQyx1QixDQUdELDhCLENBQ0MsZ0MsQ0FHRCxRLENBQUEsMkIsQ0FDQyxxRyxDVHlORCxRLENTck5BLFUsQ0FDQyxXLENBR0Esb0IsQ0FDQSxxQixDQUNBLGlCLENBQ0EsaUIsQ1R1TkMsb0IsQ1NwTkYsZSxDQUNDLDJCLENUdU5ELG9CLENTbk5DLGlCLENUcU5DLGMsQ1NsTkYsYSxDQUNDLGlCLENUcU5ELGdCLENTbE5DLGdCLENBQ0EsVSxDVG9OQyxXLENTak5GLFMsQ0FDQyxVLENUb05ELGUsQ1NqTkMsZSxDQUNBLFUsQ1RtTkMsVSxDU2hORixXLENBQ0MsTSxDVG1ORCxlLENTaE5DLGUsQ0FDQSxTLENUa05DLFUsQ1V4UkYsSyxDQUNDLFcsQ0NBRCxtQixDQUFBLHlCLENBQUEsMkIsQ1gyUkEsQyxDVXJSQSxTLENBQ0MsVSxDQUdELE8sQ0FDQyxVLENBYUQsSyxDQUpBLEssQ1Z1UUEsQyxDVXRRQyxvQixDVjJSRCxjLENBSUEsc0IsQ0FJQSxZLENVM1JBLG9CLENBQ0MsVSxDVjBSRCxZLENVdlJBLFUsQ1YwUkUsc0IsQ0FDRSxVLENJN1RKLG9CLENBQ0MsVSxDSmdVRCxLLENBS0EsYyxDQUpFLFUsQ0k1VEYsb0IsQ0FDQyxlLENKK1RELGMsQ0FDRSxVLENBS0YsVSxDQU1BLGMsQ0FKRSxlLENJMVRGLG9CLENBQ0MsVSxDSmtVRCxRLENJelRDLGtCLENKNFRDLHdCLENJaFVGLHlCLENKa1VFLGlCLENBQ0UsaUIsQ0lwVEosb0IsQ0pzVEksbUIsQ0FlSixZLENBVEEsUyxDSXJUQSxVLENKOFRBLFksQ0kzVDZELFcsQ0FDN0QsaUMsQ0FDNEMsUyxDQURJLFMsQ0FDaEQscUIsQ0FDNEMsWSxDQUM1QyxxQixDQUE0QyxlLENBQzVDLHFCLENBQWlFLFksQ0FDakUsaUMsQ0o4VkEsUSxDSTlWdUUsd0IsQ0FDdkUsWSxDQUE0QyxPLENBQzVDLFcsQ0FBNEMsUyxDQUU1QyxXLENKd1dBLGMsQ0lqV0EsaUIsQ0FDQyxjLENKNFdELGEsQ0lqV0MsZSxDQUNBLFEsQ0ptV0MsUyxDSWpXRixrQixDSm1XRSxXLENJL1ZGLGEsQ0ppV0EsVyxDSWhXQyxjLENKb1dELGdCLENJaldDLFksQ0ptV0MsZSxDSWpXRixRLENBQ0MsUyxDSm9XRCxTLENJbFdDLFMsQ0FBVSxTLENBQUEsUyxDQUFBLFMsQ0FBQSxnQixDQUNWLHFCLENKbVdDLFEsQ0lqV0YsUyxDQUNDLDRCLENBRUQsbUIsQ1FsRkEsVyxDUm1GQyxhLENKb1dELGUsQ0lqV0MsVSxDQUNBLGMsQ0FDQSxhLENBQ0EsZSxDSm1XQyxhLENJaldGLHdCLENBQ0MsVyxDQUVELHdCLENBQ0MsbUQsQ0FFRCx5QixDQUNDLGlELENBRUQscUIsQ0FDQyxvQixDSm9XRCx3QixDSWpXQyxrQixDQUNBLFUsQ0ptV0MsYSxDSWpXRixlLENBQ0MsVSxDQUVELDZCLENBQ0MsZSxDQU1ELHlCLENBQ0MsZSxDQUVELDRCLENBQ0Msa0IsQ0pvV0QsZ0IsQ0lsV1ksZ0IsQ0FBQSxnQixDQUFBLGdCLENBQUEsZ0IsQ0FBQSxxQixDQUNYLHdDLENBQ0EseUIsQ0FDQSxVLENKbVdDLGdCLENJaldGLGUsQ0FDQyxXLENTckpELGEsQ0FDQyxzQixDYm1nQkQsUyxDQUxBLEssQ0FDRSxVLENhMWZGLG9CLENBQ0MsYyxDYjZmRCxTLENhdmZBLFUsQ0FDQyxlLENiNGZELEssQ0FNQSxNLENBQ0Usb0IsQ2F4ZkYsVSxDYmlmQSxLLENhcmZDLGUsQ2J1ZkMsYyxDQUlGLE0sQ2F0ZkMsYyxDQ0VELGlCLENEQUEsYSxDQUNDLFUsQ0FFRCxnQixDQUlBLHVCLENBSEMsVSxDYitmRCxTLENhdmZDLGEsQ0FDQSxXLENieWZDLGlCLENhdGZGLDJCLENBQ0MsVSxDYnlmRCxVLENhcmZBLHdCLENBQ0Msd0IsQ2J3ZkQsVSxDYXBmQSx3QixDQUNDLHdCLENidWZELFUsQ2FwZkEsd0IsQ0FFQSx3QixDYndmQSxRLENhbmZBLG9CLENBR0EsUyxDYnFmQSxpQyxDYWhmQSxTLENBQ0MscUIsQ2JtZkQscUMsQ2EvZUEsVSxDQUNDLHFCLENia2ZELG9CLENBQ0UsUyxDYTllRixxQixDQUNDLHFCLENiaWZELG9DLENhOWVBLG9CLENBRUEsVSxDYmlmQSxjLENhN2VDLFMsQ2IrZUMsYSxDYTdlRixrQixDQUNDLGUsQ0FFRCxhLENBQ0MsOEIsQ2JnZkQsa0IsQ2E3ZUEsb0IsQ0FDQyxRLENiZ2ZELFksQ0FDRSxvQixDV3psQkYsVSxDQUNBLFcsQ1g2bEJBLG9CLENXN2xCQSxnQixDQU1FLGlCLENBTkYsMkIsQ0FZRSxlLENYMmxCRix5QixDV3ZtQkEscUIsQ0FnQkUsZSxDWGltQkYsNEIsQ1d4bEJFLGUsQ0FDQSxrQixDWDBsQkEsZ0IsQ1dwbkJGLGlCLENBNkJFLDRCLENYMmxCRix5QixDZXpuQkEsYyxDQUVBLGUsQ2Zzb0JFLGdDLENlbm5CQSxpQixDZnFuQkEsNkIsQ2VqbkJGLGlCLENBQ0MsZSxDZm9uQkQsa0IsQ2VqbkJDLGdCLENBQ0EsUyxDQUxELFUsQ2Z5bkJFLFcsQ0FDQSxhLENBQ0EseUIsQ2VobkJBLGMsQ0FDQSxRLENBWkYsVSxDQWVFLFksQ0FDQSxhLENBaEJGLHVCLENBbUJFLFEsQ0FDQSxTLENmZ25CQSx3QixDZ0I3cEJGLFUsQ2hCK3BCSSxVLENBT0osZSxDZ0I1cEJDLGUsQ0FDQSxVLENBRUQsaUIsQ2hCc3FCQSxVLENBYkEsZSxDQU9BLGtCLENnQnRwQkMsYyxDQUNBLGtCLENoQnFwQkQsa0IsQ2dCNXBCQyxlLENBR0EsZ0IsQ2hCK3BCRCxVLENBR0UsZSxDaUJ0ckJGLGlCLENqQjJyQkEsZSxDaUJyckJDLFUsQ2pCeXJCQyxpQixDaUJyckJELFUsQ2pCaXJCRCxlLENBUUEsa0IsQ0FDRSxlLENpQnJyQkQsa0IsQ2pCeXJCRCxVLENBRUUsa0IsQ2tCMXNCRixlLENsQjRzQkUsa0IsQ2tCcnNCRixnQixDQUNDLHFCLENBRUQsa0IsQ0FDQyxxQixDQUVELGEsQ0FDQyx3QixDQ1dELG1CLENDUkEsdUIsQ0ZEQSxnQixDQUNDLGMsQ2xCNnNCRCxtQixDa0Ixc0JDLDZCLENsQjRzQkMsa0IsQ2tCMXNCRixXLENBQ0MsVSxDRXZCRCxrQyxDcEJxdUJFLGtCLENvQjl0QkYsYyxDQUNDLFksQ3BCc3VCRCxvQixDb0JudUJBLFUsQ0FHQSxpQixDQUNDLFcsQ3BCeXVCRCxvQixDb0JudUJBLHFCLENBQ0MsaUIsQ0FFRCxzQixDQUNDLGtCLENBRUQsbUIsQ0FDQyw0QixDQUVELG1CLENBQ0MscUIsQ0FFRCxtQixDQUNDLHFCLENDbENELHNCLENyQnl3QkUsaUIsQ0FtREYsc0IsQ0E5RUEsb0IsQ3FCdHVCQSw0QixDQUNDLHdCLENBRUQsc0MsQ0FDQyxVLENBRUQsNkIsQ0FDQyxVLENBRUQsZ0MsQ0FDQyxVLENBRUQsNkIsQ0FDQyxlLENGZEQsZ0IsQ0dBQSxnQixDRHNCQSxrQixDQU5BLHFCLENGdkJBLDRCLENFMEJBLDJCLENFbEJBLGMsQ0ZnQkMsVSxDRmRELDhCLENBQ0MsUyxDbkJ5eUJELG1DLENBQ0UsVyxDbUJ0eUJGLHNCLENBQ0Msd0IsQ0FFRCw2QyxDQUNDLHdCLENuQnl5QkQsc0IsQ21CcnlCQyxVLENuQjR5QkQsbUIsQ21CdHlCQSx5QixDQUNDLGtCLENBRUQsbUIsQ25CNjZCQSxZLENtQjU2QkMsZSxDbkJ5eUJELDRCLENtQnR5QkMsaUIsQ0FDQSxXLENBQ0EscUIsQ0FDQSxXLENuQnd5QkMscUIsQ21CdHlCRixpQixDQUNDLFksQ0FFRCwyQixDQUNDLHFCLENuQnl5QkQseUIsQ21CdHlCQyxpQixDQUNBLHFCLENBQ0Esa0IsQ25Cd3lCQyxlLENzQjExQkYsVSxDdEI0MUJFLFksQ3NCbDFCRix3QixDQUNDLGtCLENBRUQsOEIsQ0FDQyxhLENBS0QsK0IsQ0FIQSwyQixDQUNDLFcsQ0FLRCxpQyxDQUNDLGUsQ0FFRCxtQixDQUNDLGtCLENDekJELG1CLEN2QnU4QkEsUyxDQWhGRSxlLEN1QjcyQkYsaUIsQ0FDQyxzQixDdkJ3M0JELHVCLENBcUJBLDhCLENBUUEsNEIsQ0FKQSx5QixDQVlBLHVCLENBNUJBLDZCLENBd0JBLHlCLENBcEJBLHFCLENBSUEsNEIsQ3VCdDRCQSxVLENBQ0MsVyxDdkJ3M0JELGlCLEN1QnAzQkEsYyxDQUNDLFMsQ3JCeUlBLGUsQ3FCdkdELHFCLENBQ0MsZ0IsQ3ZCdzNCRCwwQixDdUJyM0JBLGUsQ0FDQyxhLENBRUQsMEIsQ0FDQyxhLEN2QnczQkQseUIsQ3VCcjNCQyxVLEN2QnUzQkMsMEIsQ3VCcjNCRixnQixDQUNDLGUsQ3ZCdzNCRCw0QixDdUJwM0JBLFEsQ0FDQyxTLENyQndGQSxlLENVbEtELDhCLENabThCRSx5QixDQUtGLFMsQ0FDRSxVLENZLzdCRCxVLENWZ0xBLFEsQ0FFRCxlLENBQ0Msa0IsQ0ZneEJELFksQ0FDRSxVLENZLzdCRixxQixDVmlMQyxhLENGcXhCRCxnQixDQUNFLFUsQ1k1N0JGLFUsQ0FDQyxVLENaKzdCRCx3QixDWTU3QkMscUIsQ1o4N0JDLFUsQ1kzN0JGLFksQ0FDQyxZLENBR0QsNEIsQ0FDQyxhLENaNjdCRCxPLENBTUEsWSxDWWg4QkMsZ0IsQ1o0N0JDLG1CLENZejdCRixrQixDQUNDLFcsQ1o0N0JELFksQ1lyN0JDLFUsQ0FHRCxvQixDQUNDLGUsQ1owN0JELGdCLENZdDdCQSxpQixDQUNDLGdCLENBR0QsNkIsQ0FDQyxjLENBR0QscUIsQ0FDQyxlLENadTdCRCxTLENBS0EsZSxDQUpFLG1CLENZbjdCRixrQixDQUNDLFUsQ1oyN0JELGUsQ1loN0JBLFcsQ1pnN0JBLGUsQ0FLQSx1QixDWWg3QkEsaUIsQ0FDQyx1QixDWm03QkQsYSxDd0IvZ0NBLGUsQ0FDQyxXLEN4QmtoQ0QsUSxDd0IvZ0NDLFEsQ3hCaWhDQyxlLEN3Qi9nQ0YsVSxDeEJnaUNBLFcsQ0FiQSxVLEN3Qi9nQ0MsYSxDeEJpaENDLGdCLEN3Qi9nQ0YsZSxDQUNDLG9CLEN4QnFoQ0QsUyxDd0IvZ0NBLGlCLENBQ0MsaUIsQ3RCa09BLFksQ0ZxNENDLFEsQ0VuNENGLFMsQ0FDQyxrQixDRjZ5QkQsVyxDd0IvZ0NDLGlCLENBRUEsUSxDQUNBLGdCLENBQ0EsVyxDQUNBLGtCLENBSUEsZSxDQ2hDRCxpQixDQUNBLFUsQ3ZCOEhBLGlCLENBSkEsa0IsQ3VCbkhBLGUsQ0FKQSxnQixDekJraUNBLFcsQ3lCamlDQyxjLEN6QjBqQ0Qsa0IsQ3lCOWlDQSx3QixDQUNDLGUsQ3pCaWpDRCx3QixDQUNFLGdCLEN5QjlpQ0YsVSxDQUNDLHdCLENBR0QsMkIsQ0FDQyxXLEN6QmdqQ0QsOEIsQ0FDRSxRLEN5QjVpQ0Ysd0IsQ0FDQyxjLENBR0QsOEMsQ0FDQyxnQixDekI4aUNELHFCLEN5QjNpQ0MseUIsQ0FDQSw0QixDQUNBLDBCLENBQ0EsMkIsQ3pCNmlDQyxVLEN5QjNpQ0Ysd0IsQ0FDQyxjLEN6QjhpQ0QsMkIsQ3lCM2lDQyxXLENBQ0EsMEIsQ0FDQSxxQixDekI2aUNDLGUsQ3lCM2lDRixlLENBQ0MsYyxDekI4aUNELHdCLEN5QjNpQ0EsNEIsQ0FDQyxXLEN6QjhpQ0Qsd0IsQ0FDRSxXLEN5QjNpQ0Ysd0IsQ0FDQyxjLEN6QjhpQ0QsaUIsQzBCN21DQSxxQixDMUIrbUNFLGUsQzBCeG1DRixXLENBQ0MsVyxDMUIrbUNELGMsQ0FjQSxzQixDMEJ6bkNBLDZCLENBQ0MsZSxDMUI4bUNELG1CLEMwQjFtQ0EsNEIsQ0FDQyxlLENBR0QsZ0IsQ0FDQyxlLENBR0QsZ0IsQ0FDQyxVLENackJELFUsQ0FDQyxlLENBRUQsZ0IsQ0FDQyxlLENBRUQsZ0IsQ0FDQyxhLENBRUQsa0IsQ0FDQyxhLENkdW9DRCxpQixDY3BvQ0Msa0IsQ0FDQSx3QixDZHNvQ0MsVSxDY25vQ0YsZ0IsQ0FDQyxZLENBRUQsWSxDQUNDLFcsQ2R5b0NELDRDLENBQ0UsaUIsQ2Nub0NGLGtCLENBQ0MsYyxDZHNvQ0QsNkMsQ2Nub0NBLGtCLENBQ0MsYSxDQUVELDhELENBQ0MsaUIsQ0FFRCxnRSxDQUNDLHlCLENkc29DRCwyRixDQUE2RiwyRixDY25vQzdGLHVCLENBQ0MsUSxDZHNvQ0QsaUMsQ2Nub0NDLCtCLENkb29DQyx3QixDY25vQ0YsYyxDQUNDLGdCLENkc29DRCw0QixDY25vQ0Esb0IsQ0FDQyxVLENBRUQsNkQsQ0FDQyxjLENBRUQsbUIsQ0FDQyxpQixDZHNvQ0QsZSxDQUNFLGlCLENjbm9DRixPLENBQ0MsVyxDZHNvQ0QscUIsQ0FDRSxpQyxDY25vQ0YsWSxDQUNDLGUsQ0FFRCxZLENBQ0MsMEIsQ2Rzb0NELGlCLENjbm9DQyxhLENkcW9DQyxlLENjbm9DRixXLENBQ0MsaUIsQ0FFRCw2QixDQUNDLGMsQ2Rzb0NELGdCLENjbm9DQSxrQixDQUNDLGdCLENBRUQsNkIsQ0FBQSw4QixDQUFBLDhCLENBQ0MsYyxDQUVELDhCLENBQUEsOEIsQ0F1REEsa0MsQ0F0REMsb0IsQ2Rzb0NELG1DLENjbm9DQSxVLENBQ0Msb0IsQ0FFRCxxQyxDZDZyQ0EsUSxDYzVyQ0MsYSxDQUVELDJDLENBQ0MsUyxDQUVELHFDLENBQ0MsaUIsQ2Rzb0NELHdDLENjbm9DQyx3QyxDZG9vQ0Msb0IsQ2Nub0NGLFcsQ0FDQyxVLENkc29DRCxvQixDY25vQ0EsWSxDQUNDLFksQ0FFQSxXLENkb29DRCxXLENBQ0UsVyxDY25vQ0YsWSxDQUNDLFcsQ2Rzb0NELDJCLENjbm9DQSxZLENBQ0MsUyxDQUVELDJCLENBQ0MsZ0IsQ0FFRCxpQyxDQUNDLGUsQ2Rzb0NELHlDLENjbm9DQyxvQixDZHFvQ0MsVSxDY25vQ0Ysc0IsQ0FDQyxVLENkc29DRCx1QyxDQUNFLFUsQ2Nub0NGLHNCLENBQ0MsVSxDZHNvQ0QsdUMsQ2Nub0NBLG9CLENBQ0MsVSxDQUtELHdDLENBQ0MsVyxDWmhKRCw4QixDQUNDLG9CLENGd3hDRCxRLENFcnhDQyxVLENBQ0EsVyxDQUVBLGMsQ0Z1eENDLEssQ0VweENGLCtCLENBQ0MsVyxDQUlELG1CLENBQ0MsZSxDRnF4Q0QsTyxDQUNFLFUsQ0VqeENGLG9CLENBQ0MsZ0IsQ0ZveENELGEsQ0VoeENBLDhCLENBQ0Msb0IsQ0FHRCxnQixDQUFBLFMsQ0FBQSxhLENBQ0MsYSxDQVdELEssQ0FXQSxNLENBbkJBLEssQ0FXQSxjLENBSUEsc0IsQ0FYQSxLLENBSEMsYyxDQXNCRCxNLENBQ0MsZSxDQUdELFUsQ0FDQyxnQixDQU9ELFMsQ0FMQSxTLENBRUEscUIsQ0FRQSxXLENBRUEsd0IsQ0FHQSxTLENBRUEsd0IsQ0FHQSxZLENBRUEsd0IsQ0ErQ0EsVSxDQVBBLGUsQ0FHQSxrQixDRmt1Q0EsNEIsQ0Uxd0NBLDJCLENBb0RBLDRCLENBbkRDLGMsQ0Z5d0NELGUsQ0Vqd0NBLGlCLENBQ0MsNEIsQ0Zvd0NELFEsQ0Vod0NBLGtCLENBQ0EsOEIsQ0Zvd0NBLGUsQ0Vod0NDLFMsQ0FDQSxVLENGa3dDQyxhLENFaHdDRixVLENBQ0MsdUIsQ0FVRCx1QixDQUNBLG1CLENBaUNBLDRCLENBQ0MscUIsQ0FHRCwyQixDQUNDLHFCLEN5QjFLRCxPLENBQUEsTSxDM0J1NkNFLCtCLENBS0YsaUIsQzJCcjZDSSxrQixDQUNBLG9CLENBQ0EsYSxDQUNBLFUsQ0FDQSxlLENBQ0EsZ0IsQ0FHQSxvQixDM0J1NkNGLGdCLEMyQnI2Q0YsUSxDQUNJLGMsQ0FFSixzQixDQUNJLGEsQzNCdzZDSix1QixDMkJwNkNBLGtCLENBQ0Msb0IsQ0FnQkQsNkIsQ0FBQSx3QixDQUFBLG9DLENBQUEsb0MsQ0FDQyxjLENBRUQsZ0IsQ0FBQSxXLENBQUEsdUIsQ0FDQyxjLENBRUQsMEIsQ0FBQSxxQixDQUFBLGlDLENBQ0Msd0IsQzNCcTZDRCxpQixDQUEyRSxZLENBQXhELHdCLENBQTRCLHdCLEMyQmw2Qy9DLGtCLENBQ0Msb0IsQzNCcTZDRCxRLENBekJBLFcsQzJCcjZDZSxNLENBQWQsa0IsQ0FBYyxrQixDQTRCZCxrQixDQUNBLG9CLENBQ0EsYSxDQUNBLFUsQ0FDQSxlLENBQ0EsZ0IsQzNCczZDQyxvQixDMkJsNkNGLGdCLENBQ0MsUSxDQUdELGMsQ0FDQyxhLENBR0Qsb0IsQ0FDQyxvQixDM0JtNkNELFksQzJCLzVDQSxvQyxDQUNDLCtCLENBR0QsUyxDQUNDLG9CLENBR0Qsb0QsQ0FDQyw0QixDM0JnNkNELGdCLEMyQjc1Q0MsZSxDM0IrNUNDLHFCLENFMTBDRixXLENBQ0MsVSxDRjQxQ0Qsc0IsQ0V6MENBLGUsQ0FDQyxhLENGNDBDRCxXLENFejBDQSxVLENBQ0MsZ0IsQ0FHRCxpQixDRjAwQ0UsUyxDRWwwQ0YsYyxDQUlBLG1CLENBUUEsc0IsQ0FKQSxnQixDQWtGQSxpQixDQXpGQyxjLENDcE5ELFksQ0gwaURFLGMsQ0FFRixpQixDQUNBLG1CLENBQ0UsYyxDR3hpREYsYSxDSDBpREUsMEIsQ0d0aURGLHNCLENId2lEQSxvQixDQUVFLGUsQ0FHRix3QixDQURBLHNCLENHdmlEQyxxQixDQUNBLFUsQ0FDQSxhLENIMGlEQyxnQixDR3hpREYsYSxDSDBpREUsVSxDR3RpREYsOEIsQ0h3aURBLDRCLENBRUUsd0IsQ0FHRiw2QyxDQUVBLDZDLENBSEEsMkMsQ0FFQSwyQyxDR3ZpREMsZ0IsQ0FDQSxPLENBQ0EsUSxDQUNBLG1DLENBRUEsZ0MsQ0FFQSw2QixDQUVELFcsQ0gwaURFLGdCLENHdGlERixpQyxDSHdpREEsK0IsQ0FFRSxrQixDQUdGLDRDLENBRUEsNEMsQ0FIQSwwQyxDQUVBLDBDLENHdmlEQyxnQixDQUNBLE8sQ0FDQSxRLENBQ0Esa0MsQ0FFQSxnQyxDQUVBLDZCLENBRUQsVyxDSDBpREUsYSxDRTczQ0YsNEIsQ0ZtNENBLDBCLENFbDRDQyxpQixDQUVELFEsQ0FDQyxrQixDRnM0Q0QsVSxDRW40Q0EsWSxDQUNDLGEsQ0FFRCxnQixDQUNDLGtCLENBUUQsVyxDQUNDLGEsQ0FHRCxpQixDQUNDLGtCLENGcTRDRCxtQyxDRWo0Q0EsaUIsQ0FDQyxTLENGbzRDRCxVLENFajRDQyxxQixDQUNBLHFCLENBQ0EsVSxDRm00Q0MsWSxDRWg0Q0YsYSxDQUNDLGUsQ0FFRCxhLENBQ0MsYyxDRm00Q0Qsd0IsQ0UvM0NBLGtCLENBQ0MseUIsQ0FJRCxjLENBQ0MsYyxDQUVELGEsQ0FDQyxnQixDQUVELFcsQ0FDQyxVLENBR0QsVSxDQUNDLGdCLENGKzNDRCxRLENFMzNDQSx3QixDQUNDLGUsQ0ZpNENELG9CLENFMTNDQSw4QixDQUNBLG9CLENGODNDQSxvQixDQUNFLDBCIiwiZmlsZSI6InN0eWxlX2xpZ2h0LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qYmVsb3cgc2VjdGlvbiBpcyBvdmVycmlkZSBib290c3RyYXAgMyBmb3Igb3BlbmVtciBhbmQgc29tZSBuZXcgY2xhc3NlcyBhbGwgcHJlZml4ZWQgd2l0aCBvZS0qL1xuQGltcG9ydCB1cmwoXCJ0aGVtZUJ1aWxkZXIucGhwXCIpO1xuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiA1cHggIWltcG9ydGFudDsgfVxuXG5sZWdlbmQge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0U1RTVFNSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiAjRTVFNUU1ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMTBweCAhaW1wb3J0YW50OyB9XG5cbi5mb3JtLWhvcml6b250YWwgLmNvbnRyb2wtbGFiZWwge1xuICBwYWRkaW5nLXRvcDogMnB4OyB9XG5cbmZpZWxkc2V0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMiAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDBweCAwcHggMTVweCAwcHggIWltcG9ydGFudDsgfVxuXG4ub2UtY3VzdG9tLWxpbmUge1xuICBwYWRkaW5nLWJvdHRvbTogNXB4OyB9XG5cbi5vZS1sYXJnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ub2Utc21hbGwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5vZS1zaG93LWhpZGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5vZS1sZWdlbmQtcmFkaW8ge1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmc6IDVweCA1cHggMHB4IDBweDsgfVxuXG4ub2UtYm9sZC1ibGFjayB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiBibGFjazsgfVxuXG4ub2UtcGF5bWVudC1zZWxlY3Qge1xuICB3aWR0aDogODBweCAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZm9udC1zaXplOiAxMnB4OyB9XG5cbi5vZS1ja2JveC1sYWJlbCB7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4ub2UtZmlsZS1kaXYge1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7IH1cblxuLm9lLW1vZGFsLWRpYWxvZyB7XG4gIHdpZHRoOiA2NSUgIWltcG9ydGFudDsgfVxuXG4ub2UtYnRuLWNpcmNsZSB7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNnB4IDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDI5O1xuICBib3JkZXItcmFkaXVzOiAxNXB4OyB9XG5cbi8qYWJvdmUgc2VjdGlvbiBpcyBvdmVycmlkZSBib290c3RyYXAgMyBmb3Igb3BlbmVtciBhbmQgc29tZSBuZXcgY2xhc3NlcyBhbGwgcHJlZml4ZWQgd2l0aCBvZS0qL1xuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiBsYXRvLCBIZWx2ZXRpY2EsIFNhbnMtU2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4vKipcbiAqIENvcmUgT3BlbkVNUiBzdHlsZXMuXG4gKlxuICogVGhlc2UgaGVscGVycyBhcmUgdXNlZCByZWdhcmRsZXNzIG9mIHRoZSB0aGVtZSBiZWluZyB1c2VkXG4gKlxuICogQGF1dGhvciBSb2JlcnQgRG93biA8cm9iZXJ0ZG93bkBsaXZlLmNvbT5cbiAqIEBjb3B5cmlnaHQgQ29weXJpZ2h0IChjKSAyMDE3IFJvYmVydCBEb3duXG4gKiBAbGljZW5zZSBodHRwczovL2dpdGh1Yi5jb20vb3BlbmVtci9vcGVuZW1yL2Jsb2IvbWFzdGVyL0xJQ0VOU0UgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAzXG4gKi9cbi8qKlxuICogR2xvYmFsIHVzZXMgb2YgdGhlIGZvbnQgYXdlc29tZSBsaWJyYXJ5XG4gKiBUT0RPIGZpeCBwYXRoaW5nIGZvciBhbGwgdXNlc1xuICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgc3JjOiB1cmwoXCIvcHVibGljL2Fzc2V0cy9mb250LWF3ZXNvbWUtNC02LTMvZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuLmNzc19idXR0b25baHJlZio9XCJkZWxldGVyXCJdOmJlZm9yZSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl1baHJlZio9XCJkZWxldGVyXCJdIFt0eXBlPVwic3VibWl0XCJdOmJlZm9yZSxcbmJ1dHRvbltocmVmKj1cImRlbGV0ZXJcIl06YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgY29udGVudDogXCJcXGYwMTRcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5idG46OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG4gIGRpc3BsYXk6IGlubGluZTsgfVxuXG4uYnRuLXNhdmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBjXFwwMGEwXFwwMGEwXCI7IH1cblxuLmJ0bi1jYW5jZWw6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXFwwMGEwXFwwMGEwXCI7IH1cblxuLmJ0bi1hZGQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwNjdcXDAwYTBcXDAwYTAnOyB9XG5cbi5idG4tc2VhcmNoOjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDAyXFwwMGEwXFwwMGEwJzsgfVxuXG4uYnRuLWRlbGV0ZTo6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjAxNFxcMDBhMFxcMDBhMCc7IH1cblxuLmJ0bi1kdXBsaWNhdGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwYzVcXDAwYTBcXDAwYTAnOyB9XG5cbi5idG4tcmVmcmVzaDo6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjAyMVxcMDBhMFxcMDBhMCc7IH1cblxuLmJ0bi1lZGl0OjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDQwXFwwMGEwXFwwMGEwJzsgfVxuXG4uYnRuLXRyYW5zbWl0OjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDYxXFwwMGEwXFwwMGEwJzsgfVxuXG4uYnRuLXJlY2VpdmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwNjBcXDAwYTBcXDAwYTAnOyB9XG5cbi5idG4tcHJpbnQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwMmZcXDAwYTBcXDAwYTAnOyB9XG5cbi5idG4tYmFjazo6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjA1M1xcMDBhMFxcMDBhMCc7IH1cblxuLmJ0bi1zaG93OjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDZlXFwwMGEwXFwwMGEwJzsgfVxuXG4uYnRuLWhpZGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwNzBcXDAwYTBcXDAwYTAnOyB9XG5cbi5idG4tdW5kbzo6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjBlMlxcMDBhMFxcMDBhMCc7IH1cblxuLmJ0bi11cGRhdGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwMWVcXDAwYTBcXDAwYTAnOyB9XG5cbi5idG4tZG93bmxvYWQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwMTlcXDAwYTBcXDAwYTAnOyB9XG5cbi5idG4tbWFpbDo6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjBlMFxcMDBhMFxcMDBhMCc7IH1cblxuLmJ0bi1jYWxlbmRhcjo6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjA3M1xcMDBhMFxcMDBhMCc7IH1cblxuLmJ0bi1ncmFwaDo6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjIwMVxcMDBhMFxcMDBhMCc7IH1cblxuLmJ0bi1maWx0ZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwYjBcXDAwYTBcXDAwYTAnOyB9XG5cbi8qXG4gKiBDb21tb24gZm9ybXMgc3R5bGVzXG4gKi9cbi5jaGFydC1keWdyYXBocyB7XG4gIGRpcmVjdGlvbjogbHRyOyB9XG5cbi8qKlxuKiBEcnVnIGxvb2t1cFxuKiovXG4uZHJ1Z19sb29rdXAge1xuICBib3JkZXI6IDJweCBvdXRzZXQgIzY2NjY2NjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZTZmZjtcbiAgcGFkZGluZzogNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIEZvcm0gc3R5bGVzICovXG4uZm9ybXRhYmxlIHtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7IH1cblxuLmZvcm10YWJsZSB0ciB0ZCB7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4OyB9XG5cbi5yZXBvcnRfc2VhcmNoX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQUREQjQ7IH1cblxuLyogZmxvdyBib2FyZCBmaWx0ZXJzKi9cbiNmbG93X2JvYXJkX3BhcmFtZXRlcnMge1xuICBtYXJnaW46IDI1cHggYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYzsgfVxuXG4jZmxvd19ib2FyZF9wYXJhbWV0ZXJzIHRkIHtcbiAgcGFkZGluZzogMTBweDsgfVxuXG4jZmxvd19ib2FyZF9wYXJhbWV0ZXJzIHRhYmxlIHtcbiAgYm9yZGVyOiBzb2xpZCAxcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyB9XG5cbi8qXG4gKiBjbG9zZURsZ0lmcmFtZSBjb21tb24gc3R5bGVzXG4gKi9cbmRpdi5jbG9zZURsZ0lmcmFtZSB7XG4gIGJhY2tncm91bmQ6ICNmZjVkNWE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMTJweDtcbiAgcmlnaHQ6IC0xMnB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIHdpZHRoOiAyNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDEwMDEwOyB9XG5cbmRpdi5jbG9zZURsZ0lmcmFtZTpiZWZvcmUge1xuICBjb2xvcjogI2ZmZjtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiBhdXRvO1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4OyB9XG5cbi8qKlxuICogQ29yZSBPcGVuRU1SIHN0eWxlcy5cbiAqL1xuLnVpLWRyYWdnYWJsZTpob3ZlciB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiBncmFiO1xuICBjdXJzb3I6IC1tb3otZ3JhYjtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7IH1cblxuLnVpLWRyYWdnYWJsZTphY3RpdmUge1xuICBjdXJzb3I6IG1vdmU7XG4gIGN1cnNvcjogZ3JhYmJpbmc7XG4gIGN1cnNvcjogLW1vei1ncmFiYmluZztcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nOyB9XG5cbi51aS1pY29uLWdyaXBzbWFsbC1kaWFnb25hbC1zZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0yMjRweDsgfVxuXG4udWktaWNvbiwgLnVpLXdpZGdldC1jb250ZW50IC51aS1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3B1YmxpYy9hc3NldHMvanF1ZXJ5LXVpLTEtMTItMS90aGVtZXMvc3VubnkvaW1hZ2VzL3VpLWljb25zX2QxOTQwNV8yNTZ4MjQwLnBuZ1wiKTsgfVxuXG4udWktaWNvbiB7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7IH1cblxuLnVpLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi10b3A6IC0uMjVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWluZGVudDogLTk5OTk5cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLnVpLXJlc2l6YWJsZS1oYW5kbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMC4xcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7IH1cblxuLnVpLXJlc2l6YWJsZS1zZSB7XG4gIGN1cnNvcjogc2UtcmVzaXplO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICByaWdodDogMXB4O1xuICBib3R0b206IDFweDsgfVxuXG4udWktcmVzaXphYmxlLXMge1xuICBjdXJzb3I6IHMtcmVzaXplO1xuICBoZWlnaHQ6IDdweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogLTVweDtcbiAgbGVmdDogMDsgfVxuXG4udWktcmVzaXphYmxlLWUge1xuICBjdXJzb3I6IGUtcmVzaXplO1xuICB3aWR0aDogN3B4O1xuICByaWdodDogLTVweDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuYSB7XG4gIGNvbG9yOiAjMDAwMGNjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuYTp2aXNpdGVkIHtcbiAgY29sb3I6ICMwMDAwY2M7IH1cblxuYTpob3ZlciB7XG4gIGNvbG9yOiAjZmY1NTU1OyB9XG5cbi5sb2dvdXQge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4ubW9yZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uYmFjayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ubGlua19zZWxlY3RlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwMDAwRkY7IH1cblxuLmxpbmtfc2VsZWN0ZWQ6dmlzaXRlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwMDAwRkY7IH1cblxuLmxpbmtfc3VibWl0IHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzAwMDA3NzsgfVxuICAubGlua19zdWJtaXQgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogIzAwMDA3NzsgfVxuICAubGlua19zdWJtaXQgYTpob3ZlciB7XG4gICAgY29sb3I6ICNmZjU1NTU7IH1cblxuLm1lbnUge1xuICBjb2xvcjogIzAwMDBjYztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5tZW51X3NlbGVjdGVkIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4vKiBzZWUgLnRpdGxlYmFyIGJlbG93ICovXG4udGl0bGVfYmFyIHtcbiAgZm9udC1zaXplOiAxLjBlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLnRpdGxlX2Jhcl90b3Age1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4uc2lkZWJhciB7XG4gIGJhY2tncm91bmQ6ICNmZmZiZWI7XG4gIGZvbnQtc2l6ZTogOTUlO1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5zaWRlYmFyIC5zdWJtZW51IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH1cbiAgLnNpZGViYXIgdWwubWFpbm1lbnUge1xuICAgIHBhZGRpbmctYm90dG9tOiA1NXB4OyB9XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogSGVyZSB3ZSBoYXZlIHRha2VuIHZhcmlhYmxlcyBmcm9tIGdsb2JhbHMucGhwIGFuZCB0dXJuZWQgdGhlbSBpbnRvIENTUyBjbGFzc2VzXG4gKiB0aGVzZSBzaG91bGQgYmUgdXNlZCBpbiBwbGFjZSBvZiB0aGUgR0xPQkFMIHZhcmlhYmxlcyAtLSBKUk0gTWFyY2ggMjAwOFxuICo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5ib2R5X3RvcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZiZWI7XG4gIG1hcmdpbjogOHB4OyB9XG5cbi8qICR0b3BfYmdfbGluZSAqL1xuLmJnY29sb3IyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmJlYjsgfVxuXG4vKiAkR0xPQkFMU1snc3R5bGUnXVsnQkdDT0xPUjInXSAqL1xuLmJvZHlfYm90dG9tIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vcGljL2FxdWFiZy5naWZcIikgcmVwZWF0O1xuICBtYXJnaW46IDhweDsgfVxuXG4vKiAkYm90dG9tX2JnX2xpbmUgKi9cbi5ib2R5X3RpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZGY5ODsgfVxuXG4vKiAkdGl0bGVfYmdfbGluZSAqL1xuLmJvZHlfbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmRjZjsgfVxuXG4vKiAkbmF2X2JnX2xpbmUgKi9cbi5ib2R5X2ZpbGxlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2YwZDU7IH1cblxuLyogJGxvZ2luX2ZpbGxlcl9saW5lICovXG4uYm9keV9sb2dpbiB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL3BpYy9hcXVhYmcuZ2lmXCIpIHJlcGVhdDsgfVxuXG4vKiAkbG9naW5fYm9keV9saW5lICovXG4udGFibGVfYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjOyB9XG5cbi8qICR0YWJsZV9iZyAqL1xuLmJnY29sb3IxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjYzsgfVxuXG4vKiAkR0xPQkFMU1snc3R5bGUnXVsnQkdDT0xPUjEnXSAqL1xuLnRleHRjb2xvcjExIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjsgfVxuXG4vKiAkR0xPQkFMU1snc3R5bGUnXVsnVEVYVENPTE9SMTEnXSAqL1xuLmhpZ2hsaWdodGNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsgfVxuXG4vKiAkR0xPQkFMU1snc3R5bGUnXVsnSElHSExJR0hUQ09MT1InXSAqL1xuLmJvdHRvbV9saW5lIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vcGljL2FxdWFiZy5naWZcIikgcmVwZWF0OyB9XG5cbi8qICRHTE9CQUxTWydzdHlsZSddWydCT1RUT01fQkdfTElORSddICovXG4ubG9nb2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNDI2MmM7XG4gIGhlaWdodDogMTEwcHg7IH1cblxuLyogJEdMT0JBTFNbJ2xvZ29CYXJIZWlnaHQnXSAqL1xuLm5hdmJhciB7XG4gIGhlaWdodDogMjJweDsgfVxuXG4vKiAkR0xPQkFMU1snbmF2QmFySGVpZ2h0J10gKi9cbi50aXRsZWJhciB7XG4gIGhlaWdodDogMjBweDsgfVxuXG4vKiAkR0xPQkFMU1sndGl0bGVCYXJIZWlnaHQnXSAqL1xuLyogVGhlIHRvcCBuYXZpZ2F0aW9uIGljb24gc3R5bGluZyovXG4udG9wLW5hdi1pY29ucyB7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgbWFyZ2luLXRvcDogNXB4OyB9XG5cbi50ZXh0LWFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwcHg7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5leGFtcGxlX21lbnUge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiAxMzZweDsgfVxuXG4uZXhwYW5kX2FsbCxcbi5jb2xsYXBzZV9hbGwge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmV4YW1wbGVfbWVudSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4jbWVudTEgbGksICNtZW51MiBsaSwgI21lbnUzIGxpLCAjbWVudTQgbGksICNtZW51NSBsaSwgLmV4YW1wbGVfbWVudSBsaSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHdoaXRlOyB9XG5cbi5leGFtcGxlX21lbnUgdWwgdWwge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZXhhbXBsZV9tZW51IGEge1xuICBjb2xvcjogIzAwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiAycHggMnB4IDJweCAxN3B4O1xuICB3aWR0aDogMTYwcHg7IH1cblxuLmV4YW1wbGVfbWVudSBhLmV4cGFuZGVkIHtcbiAgYmFja2dyb3VuZDogI2JiYiB1cmwoXCJjb2xsYXBzZS5naWZcIikgbm8tcmVwZWF0IDNweCA1MCU7IH1cblxuLmV4YW1wbGVfbWVudSBhLmNvbGxhcHNlZCB7XG4gIGJhY2tncm91bmQ6ICNiYmIgdXJsKFwiZXhwYW5kLmdpZlwiKSBuby1yZXBlYXQgM3B4IDUwJTsgfVxuXG4uZXhhbXBsZV9tZW51IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmV4YW1wbGVfbWVudSB1bCBsaSBzcGFuIHtcbiAgYmFja2dyb3VuZDogI2Q5ZDFhNDtcbiAgY29sb3I6ICMwMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZXhhbXBsZV9tZW51IHVsIGE6U3ViamVjdGl2ZSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuLmV4YW1wbGVfbWVudSB1bCBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmV4YW1wbGVfbWVudSBsaS5hY3RpdmUgYSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLmV4YW1wbGVfbWVudSBsaS5hY3RpdmUgbGkgYSB7XG4gIGJhY2tncm91bmQ6ICNlOGU4ZTg7IH1cblxuI21lbnUxIGxpLmZvb3RlciwgI21lbnUyIGxpLmZvb3RlciwgI21lbnUzIGxpLmZvb3RlciwgI21lbnU0IGxpLmZvb3RlciwgI21lbnU1IGxpLmZvb3RlciwgLmV4YW1wbGVfbWVudSAuZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiZm9vdGVyLmpwZ1wiKSBuby1yZXBlYXQgMCAwO1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2ZmZjtcbiAgaGVpZ2h0OiA5cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gIHdpZHRoOiAxMzFweDsgfVxuXG4uZXhhbXBsZV9tZW51IC5mb290ZXIgc3BhbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNrZV9jb250ZW50cyB7XG4gIGhlaWdodDogMzAwcHggIWltcG9ydGFudDsgfVxuXG4udGV4dCB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC45ZW07IH1cblxuLnJlcXVpcmVkIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDAuOWVtO1xuICBjb2xvcjogIzg4MDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmJvbGQge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uc21hbGwge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDAuOGVtOyB9XG5cbi5zZWxsaXN0Y2xhc3Mge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uZGlzYWJsZWRfYnV0dG9uIHtcbiAgY29sb3I6IGdyZXk7IH1cblxuYS5kaXNhYmxlZF9idXR0b246aG92ZXIge1xuICBjb2xvcjogZ3JleTsgfVxuXG4vKiBQYXNzd29yZCBhbGVydCBzdHlsZXMgKi9cbi5wd2RhbGVydCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMzkwcHQ7XG4gIG1hcmdpbi1sZWZ0OiAxMDBweDtcbiAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMTVweDtcbiAgY29sb3I6IGJsYWNrOyB9XG5cbi5hbGVydG1zZzEge1xuICBib3JkZXI6IDNweCBzb2xpZCAjZmU3YjdhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkNmQ2OyB9XG5cbi5hbGVydG1zZzIge1xuICBib3JkZXI6IDNweCBzb2xpZCAjZjU2ZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFiZmZmOyB9XG5cbi5hbGVydG1zZzMge1xuICBib3JkZXI6IDNweCBzb2xpZCAjOWFjYzJlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmN2RkOyB9XG5cbi8qIFBhc3N3b3JkIGFsZXJ0IHN0eWxlcyAqL1xuLyogU3R5bGUgZm9yIHJlZCBmb250ICovXG4ucmVkdGV4dCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNGRjAwMDA7IH1cblxuLyogU3R5bGUgZm9yIHJlZCBmb250ICovXG4uZGVfaWRlbnRpZmljYXRpb25fc3RhdHVzX21lc3NhZ2Uge1xuICB3aWR0aDogNTAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMEZGOyB9XG5cbi5kZV9pZGVudGlmaWNhdGlvbl9pbnB1dF9jb250cm9sc19ib3gge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDBGRjsgfVxuXG4uZGVfaWRfdXBncmFkZV9sb2dpbiB7XG4gIHdpZHRoOiA0MCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEJsYWNrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbmJvZHkuYWRtaW4tbGF5b3V0IGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lOyB9XG5cbi8qIGVycm9yIG1lc3NhZ2UgPSBuZXcgdmFsaWRhdGlvbiAqL1xuLmVycm9yLW1lc3NhZ2Uge1xuICBjb2xvcjogcmVkO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4uZXJyb3ItYm9yZGVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmVkICFpbXBvcnRhbnQ7IH1cblxuLnRpbnlsb2dvY29udGFpbmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IG5vbmU7IH1cblxuLnRpbnlsb2dvcG5nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiAyMnB4OyB9XG5cbi8qIHN0eWxlIHRha2VuIG91dCBvZiB0aGUgYWRkcmVzc2Jvb2sgY29kZSBhbmQgcHV0IGhlcmUgaW5zdGVhZCAqL1xuI2FkZHJlc3Nib29rX2xpc3QgdGQge1xuICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgcGFkZGluZy1yaWdodDogNHB4OyB9XG5cbiNhZGRyZXNzYm9va19saXN0IGEsICNhZGRyZXNzYm9va19saXN0IGE6dmlzaXRlZCwgI2FkZHJlc3Nib29rX2xpc3QgYTpob3ZlciB7XG4gIGNvbG9yOiAjMDAwMGNjOyB9XG5cbiNhZGRyZXNzYm9va19saXN0IHRyLnNlYXJjaCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbiNhZGRyZXNzYm9va19saXN0IHRyLmhlYWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4jYWRkcmVzc2Jvb2tfbGlzdCB0ci5ldmVucm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZGRmZjsgfVxuXG4jYWRkcmVzc2Jvb2tfbGlzdCB0ci5vZGRyb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbiNhZGRyZXNzYm9va19saXN0IC5pbnB1dHRleHQge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4jYWRkcmVzc2Jvb2tfbGlzdCAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLyogc3R5bGVzIHRha2VuIG91dCBvZiB0ZW1wbGF0ZXMvZG9jdW1lbnRzL2dlbmVyYWxfbGlzdC5odG1sICovXG4jZG9jdW1lbnRzX2xpc3Qge1xuICB3aWR0aDogMjklO1xuICBoZWlnaHQ6IDk1JTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGZsb2F0OiBsZWZ0O1xuICBib3JkZXItcmlnaHQ6IGRhc2hlZCAxcHg7IH1cbiAgI2RvY3VtZW50c19saXN0IHRkIHtcbiAgICBmb250LXNpemU6IDhwdDsgfVxuICAjZG9jdW1lbnRzX2xpc3QgYSB7XG4gICAgZm9udC1zaXplOiA4cHQ7IH1cbiAgI2RvY3VtZW50c19saXN0IC50cmVlTWVudURlZmF1bHQge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuICAjZG9jdW1lbnRzX2xpc3QgLnRyZWVNZW51Qm9sZCB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbiNkb2N1bWVudHNfYWN0aW9ucyB7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICB3aWR0aDogNzAlO1xuICBoZWlnaHQ6IDk1JTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBvdmVyZmxvdzogYXV0bzsgfVxuICAjZG9jdW1lbnRzX2FjdGlvbnMgaWZyYW1lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNjAwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87IH1cbiAgI2RvY3VtZW50c19hY3Rpb25zIGZvcm0ge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIHBhZGRpbmc6IDBweDsgfVxuICAjZG9jdW1lbnRzX2FjdGlvbnMgdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogOTUlOyB9XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVGhpcyBzZWN0aW9uIHJlbGF0ZXMgdG8gdGhlIGN1c3RvbSBsYXlvdXRzIHRoYXQgY2FuIGJlIG1hZGVcbiAqIHVzaW5nIHRoZSBPRU1SIHRvb2wgaW4gdGhlIEFkbWluIHNlY3Rpb24uIEZvciBleGFtcGxlLCB0aGVcbiAqIFBhdGllbnQgRGVtb2dyYXBoaWNzIGFyZSBhIGN1c3RvbSBsYXlvdXQuXG4gKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jREVNIC5ncm91cG5hbWUge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICMwODA7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG4jREVNIC5sYWJlbF9jdXN0b20ge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuI0RFTSAuZGF0YSB7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDZweDtcbiAgLyozMHB4IC0gaWUgNiBmaXgqLyB9XG5cbi8qIFBhdGllbnQgSGlzdG9yeSAqL1xuI0hJUyAuZ3JvdXBuYW1lIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMDgwO1xuICBmb250LXNpemU6IDlwdDtcbiAgcGFkZGluZy1yaWdodDogMXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBoZWlnaHQ6IDJlbTsgfVxuXG4jSElTIC5sYWJlbF9jdXN0b20ge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiA5cHQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuI0hJUyAuZGF0YSB7XG4gIGZvbnQtc2l6ZTogOXB0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogUGF0aWVudCBOb3Rlc1xuICogc2VlbiBpbiB0aGUgcGF0aWVudCBzdW1tYXJ5IGFuZCBub3RlcyBzY3JlZW5zXG4gKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jcG5vdGVzIC5iaWxsaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RmZDsgfVxuXG4jcG5vdGVzIC5oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbiNwbm90ZXMgdGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyB9XG5cbiNwbm90ZXMgLm5vdGVyb3cge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuI3Bub3RlcyAubm90ZXJvdyB0ZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgYmxhY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHBhZGRpbmc6IDVweDtcbiAgbWFyZ2luOiA1cHg7IH1cblxuI3Bub3Rlc19wc19leHBhbmQgZGl2LnRhYiB0YWJsZSB0ZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBQYXRpZW50IFN0YXRzXG4gKiBzZWVuIGluIHRoZSBwYXRpZW50IHN0YXRzIHNjcmVlbnNcbiAqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiNwYXRpZW50X3N0YXRzIHtcbiAgcGFkZGluZzogMTBweDsgfVxuXG4jcGF0aWVudF9zdGF0cyB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyB9XG5cbiNwYXRpZW50X3N0YXRzIHRkIHtcbiAgcGFkZGluZzogM3B4OyB9XG5cbiNwYXRpZW50X3N0YXRzIC5zdGF0cm93IHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbiNwYXRpZW50X3N0YXRzIC5oZWFkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiNwYXRpZW50X3N0YXRzIC5kZXRhaWwge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbiNwYXRpZW50X3N0YXRzIC5idG4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4jcGF0aWVudF9zdGF0cyAuYmcxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZGRmZjsgfVxuXG4jcGF0aWVudF9zdGF0cyAuYmcyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGRkZDsgfVxuXG4jcGF0aWVudF9zdGF0cyAuY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogUGF0aWVudCBTdGF0cyBTdW1tYXJ5XG4gKiBzZWVuIGluIHRoZSBwYXRpZW50IHN1bW1hcnkgc2NyZWVuXG4gKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jcGF0aWVudF9zdGF0c19zdW1tYXJ5IHRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgfVxuXG4jcGF0aWVudF9zdGF0c19zdW1tYXJ5IC5ub2VuZF9ub3JldHVybiB7XG4gIGNvbG9yOiAjZWUwMDAwOyB9XG5cbiNwYXRpZW50X3N0YXRzX3N1bW1hcnkgLm5vZW5kIHtcbiAgY29sb3I6ICNkZDU1MDA7IH1cblxuI3BhdGllbnRfc3RhdHNfc3VtbWFyeSAubm9yZXR1cm4ge1xuICBjb2xvcjogIzAwMDBmZjsgfVxuXG4jcGF0aWVudF9zdGF0c19zdW1tYXJ5IC50aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xZW07IH1cblxuI3BhdGllbnRfc3RhdHNfaXNzdWVzIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuI3BhdGllbnRfc3RhdHNfc3ByZWFkc2hlZXRzIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuI3BhdGllbnRfc3RhdHNfaW1tIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuI3BhdGllbnRfc3RhdHNfcHJlc2NyaXB0aW9ucyB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogUGF0aWVudCBQYXN0IEVuY291bnRlcnMgYW5kIERvY3VtZW50c1xuICogc2VlbiBpbiB0aGUgcGF0aWVudCBlbmNvdW50ZXIgc2NyZWVuXG4gKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jcGF0aWVudF9wYXN0ZW5jIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuI3BhdGllbnRfcGFzdGVuYyAuYmlsbGluZ19ub3RlIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4jcGF0aWVudF9wYXN0ZW5jIC5iaWxsaW5nX25vdGVfdGV4dCB7XG4gIHBhZGRpbmc6IDVweDtcbiAgYm9yZGVyOiAycHggb3V0c2V0IGJsYWNrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyZXk7IH1cblxuI3BhdGllbnRfcGFzdGVuYyAuYmlsbGluZ19ub3RlX3RleHRfaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjVkMTsgfVxuXG4jcGF0aWVudF9wYXN0ZW5jIHRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuI3BhdGllbnRfcGFzdGVuYyB0ciB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4jcGF0aWVudF9wYXN0ZW5jIHRkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGJsYWNrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbiNwYXRpZW50X3Bhc3RlbmMgdGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbiNwYXRpZW50X3Bhc3RlbmMgI3Rvb2x0aXBkaXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA1MDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gIHBhZGRpbmc6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZhYTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAxMDAwOyB9XG5cbiNwYXRpZW50X3Bhc3RlbmMgLmhpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuI3BhdGllbnRfcGFzdGVuYyAudG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcbiAgYmFja2dyb3VuZDogI2Y3ZjVkMTtcbiAgcGFkZGluZzogMnB4IDVweDtcbiAgY29sb3I6ICMzMzM7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBQYXRpZW50IFJlcG9ydHNcbiAqIHNlZW4gaW4gdGhlIHBhdGllbnQgcmVwb3J0cyBzY3JlZW5zXG4gKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jcGF0aWVudF9yZXBvcnRzIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuI3BhdGllbnRfcmVwb3J0cyAuaXNzdWVzIHtcbiAgcGFkZGluZy1yaWdodDogMzBweDsgfVxuXG4jcGF0aWVudF9yZXBvcnRzIC5pc3N1ZXMgdGFibGUge1xuICBtYXJnaW46IDEwcHggMHB4IDEwcHggMHB4OyB9XG5cbiNwYXRpZW50X3JlcG9ydHMgLmlzc3VlcyB0ZCB7XG4gIHBhZGRpbmc6IDJweDsgfVxuXG4jcGF0aWVudF9yZXBvcnRzIC5lbmNvdW50ZXJzIHRkIHtcbiAgcGFkZGluZzogMnB4OyB9XG5cbiNwYXRpZW50X3JlcG9ydHMgLmVuY291bnRlcl9mb3JtcyB7XG4gIG1hcmdpbjogNXB4IDE1cHggNXB4IDE1cHg7IH1cblxuI3BhdGllbnRfcmVwb3J0cyB0ZCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuI3BhdGllbnRfcmVwb3J0cyB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBSZXBvcnQgLSBDdXN0b21cbiAqIHNlZW4gYXMgdGhlIHBhdGllbnQgcmVwb3J0IChjdXN0b21fcmVwb3J0LnBocClcbiAqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiNyZXBvcnRfY3VzdG9tIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuI3JlcG9ydF9jdXN0b20gaHIge1xuICBib3JkZXI6IDJweCBkb3R0ZWQgYmxhY2s7IH1cblxuI3JlcG9ydF9jdXN0b20gLmJpbGxpbmcge1xuICBtYXJnaW46IDVweDtcbiAgcGFkZGluZzogNXB4OyB9XG5cbiNyZXBvcnRfY3VzdG9tIGgxIHtcbiAgZm9udC1zaXplOiAxMjAlO1xuICBtYXJnaW46IDBweCAwcHggNXB4IDBweDtcbiAgcGFkZGluZzogMHB4OyB9XG5cbiNyZXBvcnRfY3VzdG9tIC5pbW11bml6YXRpb25zIHtcbiAgbWFyZ2luOiA1cHg7XG4gIHBhZGRpbmc6IDVweDsgfVxuXG4jcmVwb3J0X2N1c3RvbSAubm90ZXMge1xuICBtYXJnaW46IDVweDtcbiAgcGFkZGluZzogNXB4OyB9XG5cbiNyZXBvcnRfY3VzdG9tIC50cmFuc2FjdGlvbnMge1xuICBtYXJnaW46IDVweDtcbiAgcGFkZGluZzogNXB4OyB9XG5cbiNyZXBvcnRfY3VzdG9tIC5jb21tdW5pY2F0aW9ucyB7XG4gIG1hcmdpbjogNXB4O1xuICBwYWRkaW5nOiA1cHg7IH1cblxuI3JlcG9ydF9jdXN0b20gLmRvY3VtZW50cyB7XG4gIG1hcmdpbjogNXB4O1xuICBwYWRkaW5nOiA1cHg7IH1cblxuI3JlcG9ydF9jdXN0b20gLmRlbW9ncmFwaGljcyB7XG4gIG1hcmdpbjogNXB4O1xuICBwYWRkaW5nOiA1cHg7IH1cblxuI3JlcG9ydF9jdXN0b20gLmluc3VyYW5jZSB7XG4gIG1hcmdpbjogNXB4O1xuICBwYWRkaW5nOiA1cHg7IH1cblxuI3JlcG9ydF9jdXN0b20gLmhpc3Rvcnkge1xuICBtYXJnaW46IDVweDtcbiAgcGFkZGluZzogNXB4OyB9XG5cbiNyZXBvcnRfY3VzdG9tIC5pc3N1ZSB7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG5cbiNyZXBvcnRfY3VzdG9tIC5pc3N1ZV90eXBlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDVweCAwcHggNXB4IDBweDsgfVxuXG4jcmVwb3J0X2N1c3RvbSAuaXNzdWVfZGlhZyB7XG4gIG1hcmdpbjogMHB4IDIwcHggMHB4IDIwcHg7IH1cblxuI3JlcG9ydF9jdXN0b20gLmVuY291bnRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItdG9wOiAycHggZG90dGVkIGJsYWNrO1xuICBwYWRkaW5nOiAxMHB4IDVweCAxMHB4IDVweDtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4jcmVwb3J0X2N1c3RvbSAuZW5jb3VudGVyIGgxIHtcbiAgZm9udC1zaXplOiAxNDAlO1xuICBtYXJnaW46IDBweDtcbiAgcGFkZGluZzogMHB4OyB9XG5cbiNyZXBvcnRfY3VzdG9tIC5lbmNvdW50ZXJfZm9ybSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBncmF5OyB9XG5cbi8qXG4gKiBUQUJTXG4qL1xudWwudGFiTmF2IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbnVsLnRhYk5hdiBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbnVsLnRhYk5hdiBhIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuZGl2LnRhYkNvbnRhaW5lciB7XG4gIGNsZWFyOiBib3RoO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuZGl2LnRhYkNvbnRhaW5lciBkaXYudGFiIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgY29sb3I6ICMwMDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDEwcHg7IH1cblxuZGl2LnRhYkNvbnRhaW5lciBkaXYuY3VycmVudCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmRpdi50YWIge1xuICBtaW4taGVpZ2h0OiAxODBweDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZiBub25lIHJlcGVhdCBzY3JvbGwgMCAwO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB3aWR0aDogNjY1cHg7IH1cblxuZGl2LnRhYl9sb25nIHtcbiAgbWluLWhlaWdodDogMTgwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmYgbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuZGl2LnRhYiBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmRpdi50YWIgdGFibGUgdGQge1xuICBwYWRkaW5nLXJpZ2h0OiAxcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwcHg7IH1cblxuZGl2LnRhYiB0YWJsZSB0ZC5sYWJlbF9jdXN0b20ge1xuICBtaW4td2lkdGg6IDgwcHg7IH1cblxuZGl2LnRhYiB0YWJsZSB0ZC5kYXRhIHtcbiAgbWluLXdpZHRoOiAxMjBweDsgfVxuXG5kaXYubm90YWIge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbmRpdi5ub3RhYi1yaWdodCB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNlY3Rpb24taGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB3aWR0aDogNjg1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDsgfVxuXG4uc2VjdGlvbi1oZWFkZXItZHluYW1pYyB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkOyB9XG5cbi5zdW1tYXJ5X2l0ZW0ge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBwYWRkaW5nOiA4cHg7IH1cblxuI3NkZG0gbGkge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICBiYWNrZ3JvdW5kOiAjZjBmMGYwOyB9XG5cbiNzZGRtIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDFweCAwIDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4jc2RkbSBsaSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2Q3ZDdkNzsgfVxuXG4jc2RkbSBkaXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4jc2RkbSBkaXYgYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIHdpZHRoOiAxNzBweDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDAuOGVtO1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbiNzZGRtIGRpdiBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLyogc3R5bGVzIHRha2VuIG91dCBvZiB0ZW1wbGF0ZXMvcmVwb3J0L2dlbmVyYWxfZGVmYXVsdC5odG1sICovXG4jcmVwb3J0c19saXN0IHRkIHtcbiAgZm9udC1zaXplOiAwLjhlbTsgfVxuXG4jcmVwb3J0c19saXN0IGEge1xuICBmb250LXNpemU6IDAuOGVtOyB9XG5cbi8qXG4qIFJFUE9SVFNcbiovXG4jcmVwb3J0X3BhcmFtZXRlcnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbiNyZXBvcnRfcGFyYW1ldGVycyB0YWJsZSB7XG4gIGJvcmRlcjogc29saWQgMXB4O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgfVxuXG4jcmVwb3J0X3BhcmFtZXRlcnMgdGFibGUgdGQge1xuICBwYWRkaW5nOiA1cHg7IH1cblxuI3JlcG9ydF9wYXJhbWV0ZXJzIHRhYmxlIHRhYmxlIHtcbiAgYm9yZGVyOiAwcHg7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGZvbnQtc2l6ZTogMC44ZW07IH1cblxuI3JlcG9ydF9wYXJhbWV0ZXJzIHRhYmxlIHRhYmxlIHRkLmxhYmVsX2N1c3RvbSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbiNyZXBvcnRfcmVzdWx0cyB0YWJsZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBibGFjaztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsYWNrO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGJsYWNrO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBibGFjaztcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIG1hcmdpbi10b3A6IDFweDsgfVxuXG4jcmVwb3J0X3Jlc3VsdHMgdGFibGUgdGhlYWQge1xuICBwYWRkaW5nOiA1cHg7XG4gIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMC43ZW07IH1cblxuI3JlcG9ydF9yZXN1bHRzIHRhYmxlIHRoIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsYWNrO1xuICBwYWRkaW5nOiA1cHg7IH1cblxuI3JlcG9ydF9yZXN1bHRzIHRhYmxlIHRkIHtcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkO1xuICBmb250LXNpemU6IDAuOGVtOyB9XG5cbi5yZXBvcnRfdG90YWxzIHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc3ZmY3NztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLyoqXG4qIExpc3QtdGFibGUgZm9ybWF0dGluZ1xuKiovXG4uc2hvd2JvcmRlciB7XG4gIHdpZHRoOiA2NTBweDsgfVxuXG4uc2hvd2JvcmRlciB0ZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzAwMDAwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4uc2hvd2JvcmRlcl9oZWFkIHRoIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDAwMDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnNob3dub2JvcmRlciB0ZCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnNob3dib3JkZXJfbG9uZyB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zaG93Ym9yZGVyX2xvbmcgdHIgdGQge1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICMwMDAwMDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLyogLS0tLS0tLSBUaGVyYXB5IGdyb3VwcyBzdHlsaW5nIC0tLS0tLS0tLSAqL1xuLmdyb3VwLXJvdyB7XG4gIG1hcmdpbi10b3A6IDE1cHg7IH1cblxuLmNvbnRhaW5lci1ncm91cCB7XG4gIG1hcmdpbi10b3A6IGF1dG87IH1cblxuLmdyb3VwLWVycm9yLW1zZyB7XG4gIGNvbG9yOiAjZmY2NjQzOyB9XG5cbi5ncm91cC1zdWNjZXNzLW1zZyB7XG4gIGNvbG9yOiAjNGM4MDI5OyB9XG5cbiNjb21wb25lbnQtYm9yZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzI2NzJlYztcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDE1MHB4O1xuICBwYWRkaW5nOiAxMHB4OyB9XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4ucnRsIC5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbnRhYmxlLmRhdGFUYWJsZSN0aGVyYXB5X2dyb3Vwc19saXN0IHRib2R5IHRkIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBmb250LXNpemU6IDE1cHg7IH1cblxuLnRoZXJhcHlfZ3JvdXAgI3RoZXJhcHlfZ3JvdXBzX2xpc3RfY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogaW5pdGlhbDtcbiAgd2lkdGg6IGluaXRpYWw7IH1cblxuLnRoZXJhcHlfZ3JvdXAgI3RoZXJhcHlfZ3JvdXBzX2xpc3RfY29udGFpbmVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjOyB9XG5cbi50aGVyYXB5X2dyb3VwICN0aGVyYXB5X2dyb3Vwc19saXN0X2NvbnRhaW5lciBpbnB1dFt0eXBlPW51bWJlcl0ge1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgfVxuXG4udGhlcmFweV9ncm91cCAjdGhlcmFweV9ncm91cHNfbGlzdF9jb250YWluZXIgaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLCAudGhlcmFweV9ncm91cCAjdGhlcmFweV9ncm91cHNfbGlzdF9jb250YWluZXIgaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBtYXJnaW46IDA7IH1cblxuLnRoZXJhcHlfZ3JvdXAgLmRlbGV0ZV9idG4gYnV0dG9uLCAudGhlcmFweV9ncm91cCAuZGVsZXRlX2J0biBzcGFuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmMzkzNTtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBwYWRkaW5nOiAycHggMTBweDsgfVxuXG4udGhlcmFweV9ncm91cCAuZGVsZXRlX2J0biBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogd2hpdGU7IH1cblxuLnRoZXJhcHlfZ3JvdXAgI3RoZXJhcHlfZ3JvdXBzX2xpc3RfY29udGFpbmVyIC5mYWlsZWRfbWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogMTVweDsgfVxuXG4jdXBkYXRlUGFydGljaXBhbnRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiNhZGRQYXJ0aWNpcGFudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDBweDtcbiAgei1pbmRleDogMTAwOyB9XG5cbiNhZGQtcGFydGljaXBhbnQtZm9ybSB7XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMXMgZWFzZS1vdXQ7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnNob3dBZGRGb3JtIHtcbiAgbWF4LWhlaWdodDogMjUwcHggIWltcG9ydGFudDsgfVxuXG4uZ3JvdXBzLWVycm9yLW1zZyB7XG4gIGNvbG9yOiAjZmY1NDJkO1xuICBmb250LXNpemU6IDEuM2VtO1xuICBwYWRkaW5nOiA4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGhlcmFweV9ncm91cCAuZXZlbnRfZGV0YWlscyB7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4jYWRkX3BhcnRpY2lwYW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuI2FkZF9wYXJ0aWNpcGFudCAucGF0aWVudF93cmFwLCAjYWRkX3BhcnRpY2lwYW50IC5jb21tZW50X3dyYXAsICNhZGRfcGFydGljaXBhbnQgLmJ1dHRvbl93cmFwIHtcbiAgbWFyZ2luLXRvcDogN3B4OyB9XG5cbiNhZGRfcGFydGljaXBhbnQgLnBhdGllbnRfd3JhcCwgI2FkZF9wYXJ0aWNpcGFudCAuY29tbWVudF93cmFwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbiNhZGRfcGFydGljaXBhbnQgLmJ1dHRvbl93cmFwIGlucHV0IHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4jYWRkX3BhcnRpY2lwYW50X2VsZW1lbnQgLmlucHV0X2xhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuI2FkZF9wYXJ0aWNpcGFudF9lbGVtZW50IC5lcnJvcl93cmFwIC5lcnJvciB7XG4gIGNvbG9yOiByZWQ7IH1cblxuI2dyb3VwX2F0dGVuZGFuY2VfZm9ybV90YWJsZSB0Ym9keSB0ZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4jZmlsZV90eXBlX3doaXRlbGlzdCAuc3ViamVjdC1ibGFjay1saXN0LCAjZmlsZV90eXBlX3doaXRlbGlzdCAuc3ViamVjdC13aGl0ZS1saXN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDIwcHg7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbiNmaWxlX3R5cGVfd2hpdGVsaXN0IHtcbiAgaGVpZ2h0OiA0MDBweDtcbiAgcGFkZGluZzogMTBweDsgfVxuXG4jd2hpdGUtbGlzdCwgI2JsYWNrLWxpc3Qge1xuICBtYXJnaW46IDEwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHdpZHRoOiA0MDBweDsgfVxuXG4jZmlsZV90eXBlX3doaXRlbGlzdCBzZWxlY3Qge1xuICBoZWlnaHQ6IDI1MHB4O1xuICBwYWRkaW5nOiAwOyB9XG5cbiNmaWxlX3R5cGVfd2hpdGVsaXN0IG9wdGlvbiB7XG4gIHBhZGRpbmc6IDRweCAxMHB4IDRweCAxMHB4OyB9XG5cbiNmaWxlX3R5cGVfd2hpdGVsaXN0IG9wdGlvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNFRUVFRUU7IH1cblxuI2ZpbGVfdHlwZV93aGl0ZWxpc3QgLnN1YmplY3QtaW5mby1hcnJvd3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA1OHB4O1xuICBtYXJnaW46IDEzMHB4IDMwcHggMzBweCAzMHB4O1xuICBmbG9hdDogbGVmdDsgfVxuXG4jZmlsZV90eXBlX3doaXRlbGlzdCAuc3ViamVjdC1pbmZvLXNhdmUge1xuICB3aWR0aDogNjBweDtcbiAgbWFyZ2luOiAxNzBweCAzMHB4IDMwcHggMzBweDtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuI2ZpbGVfdHlwZV93aGl0ZWxpc3QgaW5wdXRbdHlwZT1idXR0b25dIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDYzcHg7IH1cblxuI2ZpbGVfdHlwZV93aGl0ZWxpc3QgI2FkZC1tYW51YWxseSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4jZmlsZV90eXBlX3doaXRlbGlzdCAjYWRkLW1hbnVhbGx5LWlucHV0IHtcbiAgd2lkdGg6IDE5MHB4OyB9XG5cbiNmaWxlX3R5cGVfd2hpdGVsaXN0IC50b3AtbGlzdCB7XG4gIG1hcmdpbjogMjBweCAyMHB4IDJweCAyMHB4OyB9XG5cbi5tZW51QmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDEwMDsgfVxuXG4ubWVudUJhciB+IC5jb250YWluZXIge1xuICBtYXJnaW4tdG9wOiA5NXB4OyB9XG5cbi5sb2dvdXQge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4uYWxlcnQtY3VzdG9tIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGMDAwMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG5cbi5zbWFsbCBzcGFuLnRleHQsIHNwYW4ucmVxdWlyZWQsIHNwYW4uYm9sZCB7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbi5saW5rIHtcbiAgZm9udC1zaXplOiAwLjdlbTsgfVxuXG4ubW9yZSB7XG4gIGZvbnQtc2l6ZTogMC43ZW07IH1cblxuLmJhY2sge1xuICBmb250LXNpemU6IDAuN2VtOyB9XG5cbi5saW5rX3NlbGVjdGVkIHtcbiAgZm9udC1zaXplOiAwLjdlbTsgfVxuXG4ubGlua19zZWxlY3RlZDp2aXNpdGVkIHtcbiAgZm9udC1zaXplOiAwLjdlbTsgfVxuXG4uaXRlbXMge1xuICBmb250LXNpemU6IDAuN2VtOyB9XG5cbi50aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41ZW07IH1cblxuLnRpdGxlX2JhciB7XG4gIGZvbnQtc2l6ZTogMS4xM2VtOyB9XG5cbi5ib2R5X3RvcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuLyogJHRvcF9iZ19saW5lICovXG4uYmdjb2xvcjIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbi8qICRHTE9CQUxTWydzdHlsZSddWydCR0NPTE9SMiddICovXG4uYm9keV90aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7IH1cblxuLyogJHRpdGxlX2JnX2xpbmUgKi9cbi5ib2R5X25hdiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cblxuLyogJG5hdl9iZ19saW5lICovXG4uYm9keV9maWxsZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmMGQ1OyB9XG5cbi8qICRsb2dpbl9ib2R5X2xpbmUgKi9cbiNhZGRyZXNzYm9va19saXN0IHRyLnNlYXJjaCB7XG4gIGZvbnQtc2l6ZTogMC45ZW07IH1cblxuI2FkZHJlc3Nib29rX2xpc3QgLmlucHV0dGV4dCB7XG4gIGZvbnQtc2l6ZTogMC45ZW07IH1cblxuW2hyZWZ+PVwiZGVsZXRlclwiXSxcbltvbmNsaWNrfj1cImRlbGV0ZVwiXSB7XG4gIGJhY2tncm91bmQ6ICNmZjVkNWEgIWltcG9ydGFudDsgfVxuXG4uc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNmMGYwZjA7XG4gIGJvcmRlci1jb2xvcjogI2Q3ZDdkNyAhaW1wb3J0YW50OyB9XG5cbi8qIHN0eWxlcyB0YWtlbiBvdXQgb2YgdGVtcGxhdGVzL2RvY3VtZW50cy9nZW5lcmFsX2xpc3QuaHRtbCAqL1xuI2RvY3VtZW50c19saXN0IHtcbiAgd2lkdGg6IDI5JTtcbiAgaGVpZ2h0OiA5NSU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBmbG9hdDogbGVmdDtcbiAgYm9yZGVyLXJpZ2h0OiBkYXNoZWQgMXB4OyB9XG5cbiNkb2N1bWVudHNfbGlzdCB0ZCB7XG4gIGZvbnQtc2l6ZTogMC44ZW07IH1cblxuI2RvY3VtZW50c19saXN0IGEge1xuICBmb250LXNpemU6IDAuOGVtOyB9XG5cbi5ib2R5X3RpdGxlIHRhYmxlIHRyIHRkIHtcbiAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7IH1cblxuLyogUGF0aWVudCBIaXN0b3J5ICovXG4jSElTIC5ncm91cG5hbWUge1xuICBmb250LXNpemU6IDAuOWVtOyB9XG5cbiNISVMgLmxhYmVsX2N1c3RvbSB7XG4gIGZvbnQtc2l6ZTogMC45ZW07IH1cblxuI0hJUyAuZGF0YSB7XG4gIGZvbnQtc2l6ZTogMC45ZW07IH1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBQYXRpZW50IFBhc3QgRW5jb3VudGVycyBhbmQgRG9jdW1lbnRzXG4gKiBzZWVuIGluIHRoZSBwYXRpZW50IGVuY291bnRlciBzY3JlZW5cbiAqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiNwYXRpZW50X3Bhc3RlbmMgI3Rvb2x0aXBkaXYge1xuICBmb250LXNpemU6IDAuOWVtOyB9XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogUmVwb3J0IC0gQ3VzdG9tXG4gKiBzZWVuIGFzIHRoZSBwYXRpZW50IHJlcG9ydCAoY3VzdG9tX3JlcG9ydC5waHApXG4gKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jcmVwb3J0X2N1c3RvbSBoMSB7XG4gIGZvbnQtc2l6ZTogMS4yZW07IH1cblxuI3JlcG9ydF9jdXN0b20gLmVuY291bnRlciBoMSB7XG4gIGZvbnQtc2l6ZTogMS40ZW07IH1cblxuI2FkZHJlc3Nib29rX2xpc3QgdHIuZXZlbnJvdyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGRkZmY7IH1cblxuI2FkZHJlc3Nib29rX2xpc3QgdHIub2Rkcm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuXG50ci5vZGQsIHRkLmV2ZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7IH1cblxuLypcbiAqIENTUyBCVVRUT05TXG4gKi9cbi5jc3NfYnV0dG9uX3NtYWxsIHtcbiAgYmFja2dyb3VuZDogIzI2NzJlYztcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgLyogc2xpZGluZyBkb29ycyBwYWRkaW5nICovXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogNXB4IDEycHggNXB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC43ZW07IH1cblxuLmNzc19idXR0b25fc21hbGwgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jc3NfYnV0dG9uX3NtYWxsOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzEwNTBiNjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jc3NfYnV0dG9uLCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLCBidXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjMjY3MmVjO1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAvKiBzbGlkaW5nIGRvb3JzIHBhZGRpbmcgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiA1cHggMTJweCA1cHg7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAuY3NzX2J1dHRvbiAuY3NzX2J1dHRvbl9zbWFsbCwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSAuY3NzX2J1dHRvbl9zbWFsbCwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSAuY3NzX2J1dHRvbl9zbWFsbCwgYnV0dG9uIC5jc3NfYnV0dG9uX3NtYWxsIHtcbiAgICBmb250LXNpemU6IDAuN2VtOyB9XG5cbi5jc3NfYnV0dG9uIHNwYW4sIGlucHV0W3R5cGU9XCJidXR0b25cIl0gc3BhbiwgYnV0dG9uIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmU7IH1cblxuLmNzc19idXR0b25baHJlZio9XCJkZWxldGVyXCJdLCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdW2hyZWYqPVwiZGVsZXRlclwiXSwgYnV0dG9uW2hyZWYqPVwiZGVsZXRlclwiXSB7XG4gIGJhY2tncm91bmQ6IHJlZCAhaW1wb3J0YW50OyB9XG5cbi5jc3NfYnV0dG9uOmhvdmVyLCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmhvdmVyLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLCBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMTA1MGI2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNzc19idG4ge1xuICBiYWNrZ3JvdW5kOiAjMjY3MmVjO1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAvKiBzbGlkaW5nIGRvb3JzIHBhZGRpbmcgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiA1cHggMTJweCA1cHg7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG4uY3NzX2J0bjpob3ZlciB7XG4gIGNvbG9yOiBvcmFuZ2VyZWQ7IH1cblxuLm1vZGFsLWZvb3RlciA+IGJ1dHRvbiB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmJ0bi1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KSAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KSAhaW1wb3J0YW50OyB9XG5cbi5idG4tbGluayB7XG4gIGNvbG9yOiAjNDQ0ICFpbXBvcnRhbnQ7IH1cblxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXVtzdHlsZT1cImJhY2tncm91bmQtY29sb3I6I2ZmZmY1NVwiXSB7XG4gIGJhY2tncm91bmQ6ICMyNjcyZWMgIWltcG9ydGFudDsgfVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0NDQ0NDQ7XG4gIHBhZGRpbmc6IDNweDtcbiAgbWFyZ2luOiAzcHg7IH1cblxuI2xvZ291dF9saW5rIHNwYW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qXG4gKiBUQUJTXG4qL1xudWwudGFiTmF2IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLXRvcDogNHB4O1xuICBiYWNrZ3JvdW5kOiAjMjY3MmVjOyB9XG5cbnVsLnRhYk5hdiBsaSB7XG4gIHBhZGRpbmc6IDBweCA0cHg7IH1cblxudWwudGFiTmF2IGxpLmN1cnJlbnQgYSB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGNvbG9yOiAjMjY3MmVjOyB9XG5cbnVsLnRhYk5hdiBhIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDhweCAxN3B4OyB9XG5cbnVsLnRhYk5hdiBhOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4vKipcbiogTGlzdC10YWJsZSBmb3JtYXR0aW5nXG4qKi9cbi5zaG93Ym9yZGVyIHRkIHtcbiAgZm9udC1zaXplOiAwLjllbTsgfVxuXG4uc2hvd2JvcmRlcl9oZWFkIHRoIHtcbiAgZm9udC1zaXplOiAwLjllbTsgfVxuXG4uc2hvd25vYm9yZGVyIHRkIHtcbiAgZm9udC1zaXplOiAwLjllbTsgfVxuXG4uc2hvd2JvcmRlcl9sb25nIHRyIHRkIHtcbiAgZm9udC1zaXplOiAwLjllbTsgfVxuXG4vKipcbiogRHJ1ZyBsb29rdXBcbioqL1xuLmRydWdfbG9va3VwIHtcbiAgZm9udC1zaXplOiAwLjhlbTsgfVxuXG4jbmF2aWdhdGlvbi1zbGlkZSxcbiNuYXZpZ2F0aW9uLXNsaWRlICoge1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgZm9udC1zaXplOiAwLjc1cmVtICFpbXBvcnRhbnQ7IH1cblxuI25hdmlnYXRpb24tc2xpZGUgbGksXG4jbmF2aWdhdGlvbi1zbGlkZSAqIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4jbmF2aWdhdGlvbi1zbGlkZSBsaSBhLFxuI25hdmlnYXRpb24tc2xpZGUgKiBsaSBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbm9uZTtcbiAgY29sb3I6ICMwMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuMTNlbTtcbiAgcGFkZGluZzogOHB4IDBweCA4cHggMHB4O1xuICB3aWR0aDogMTAwJTsgfVxuXG4jbmF2aWdhdGlvbi1zbGlkZSBsaSBhOmhvdmVyLFxuI25hdmlnYXRpb24tc2xpZGUgKiBsaSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q3ZDdkNzsgfVxuXG4jbmF2aWdhdGlvbi1zbGlkZSBsaSBhLmNvbGxhcHNlZF9sdjI6YmVmb3JlLFxuI25hdmlnYXRpb24tc2xpZGUgKiBsaSBhLmNvbGxhcHNlZF9sdjI6YmVmb3JlLFxuI25hdmlnYXRpb24tc2xpZGUgbGkgYS5jb2xsYXBzZWRfbHYzOmJlZm9yZSxcbiNuYXZpZ2F0aW9uLXNsaWRlICogbGkgYS5jb2xsYXBzZWRfbHYzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiJm5ic3A7XCI7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgLyogbGVmdCBhcnJvdyBzbGFudCAqL1xuICBib3JkZXItdG9wOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIC8qIHJpZ2h0IGFycm93IHNsYW50ICovXG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgIzJmMmYyZjtcbiAgLyogYm90dG9tLCBhZGQgYmFja2dyb3VuZCBjb2xvciBoZXJlICovXG4gIGZvbnQtc2l6ZTogMDtcbiAgbGluZS1oZWlnaHQ6IDEwcHg7IH1cblxuI25hdmlnYXRpb24tc2xpZGUgbGkgYS5leHBhbmRlZCxcbiNuYXZpZ2F0aW9uLXNsaWRlICogbGkgYS5leHBhbmRlZCB7XG4gIGJhY2tncm91bmQ6ICNjYmU2Zjc7IH1cblxuI25hdmlnYXRpb24tc2xpZGUgbGkgYS5leHBhbmRlZF9sdjI6YmVmb3JlLFxuI25hdmlnYXRpb24tc2xpZGUgKiBsaSBhLmV4cGFuZGVkX2x2MjpiZWZvcmUsXG4jbmF2aWdhdGlvbi1zbGlkZSBsaSBhLmV4cGFuZGVkX2x2MzpiZWZvcmUsXG4jbmF2aWdhdGlvbi1zbGlkZSAqIGxpIGEuZXhwYW5kZWRfbHYzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiJm5ic3A7XCI7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1yaWdodDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAvKiBsZWZ0IGFycm93IHNsYW50ICovXG4gIGJvcmRlci10b3A6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgLyogcmlnaHQgYXJyb3cgc2xhbnQgKi9cbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjMmYyZjJmO1xuICAvKiBib3R0b20sIGFkZCBiYWNrZ3JvdW5kIGNvbG9yIGhlcmUgKi9cbiAgZm9udC1zaXplOiAwO1xuICBsaW5lLWhlaWdodDogMHB4OyB9XG5cbiNuYXZpZ2F0aW9uLXNsaWRlIGxpIGEgaW1nLFxuI25hdmlnYXRpb24tc2xpZGUgKiBsaSBhIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuI25hdmlnYXRpb24tc2xpZGUgbGkgdWwgbGksXG4jbmF2aWdhdGlvbi1zbGlkZSAqIGxpIHVsIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAxNHB4OyB9XG5cbiNzZGRtIGxpIHtcbiAgYmFja2dyb3VuZDogI2YwZjBmMDsgfVxuXG4jc2RkbSBsaSBhIHtcbiAgcGFkZGluZzogMTJweDtcbiAgY29sb3I6ICMyNjcyZWM7IH1cblxuI3NkZG0gbGkgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNkN2Q3ZDc7IH1cblxuI3NkZG0gZGl2IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZjBmMGYwOyB9XG5cbiNzZGRtIGRpdiBhIHtcbiAgY29sb3I6ICMyODc1REU7IH1cblxuI3NkZG0gZGl2IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMjY3MmVjOyB9XG5cbiNzZGRtIGxpLmVuY291bnRlci1mb3JtLWNhdGVnb3J5LWxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG5cbi50ZXh0LWFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwcHg7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5leGFtcGxlX21lbnUge1xuICBmb250LXNpemU6IDAuN2VtOyB9XG5cbi5leGFtcGxlX21lbnUgdWwgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5lcnJvci1tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAwLjhlbTsgfVxuXG4uYXR0YWNoLWlucHV0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLmZ1bGwtd2lkdGgge1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucmFkaW8tcG9zIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLnNpZGViYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICBmb250LXNpemU6IDAuOTVlbTsgfVxuXG4uc2lkZWJhciAuc3VibWVudSB7XG4gIGZvbnQtc2l6ZTogMC45ZW07IH1cblxuLmFsZXJ0LWRhbmdlci1jdXN0b20ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkYwMDAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH1cblxuLyogdG8gYWxpZ24gZmVlc2hlZXQgYnV0dG9ucyovXG5kaXYuY2F0ZWdvcnktZGlzcGxheSB7XG4gIG1hcmdpbi1sZWZ0OiAyNXB4ICFpbXBvcnRhbnQ7IH1cbiIsIi8qYmVsb3cgc2VjdGlvbiBpcyBvdmVycmlkZSBib290c3RyYXAgMyBmb3Igb3BlbmVtciBhbmQgc29tZSBuZXcgY2xhc3NlcyBhbGwgcHJlZml4ZWQgd2l0aCBvZS0qL1xuLmZvcm0tZ3JvdXAge1xuXHRtYXJnaW4tYm90dG9tOiA1cHggIWltcG9ydGFudDtcbn1cbmxlZ2VuZCB7XG5cdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRTVFNUU1ICFpbXBvcnRhbnQ7XG5cdGJhY2tncm91bmQ6ICNFNUU1RTUgIWltcG9ydGFudDtcblx0cGFkZGluZy1sZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7XG59XG4uZm9ybS1ob3Jpem9udGFsIC5jb250cm9sLWxhYmVsIHtcblx0cGFkZGluZy10b3A6IDJweDtcbn1cbmZpZWxkc2V0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMiFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1ib3R0b206IDEwcHghaW1wb3J0YW50O1xuXHRwYWRkaW5nOiAwcHggMHB4IDE1cHggMHB4IWltcG9ydGFudDtcbn1cbi5idG4tbGluay5idG4tY2FuY2VsOmZvY3VzLCAuYnRuLWxpbmsuYnRuLWNhbmNlbDpob3ZlciB7XG5cbn1cbi5idG4tbGluay5idG4tY2FuY2VsIHtcblxufVxuLmJ0bi1saW5rLmJ0bi1jYW5jZWwuYWN0aXZlLCAuYnRuLWxpbmsuYnRuLWNhbmNlbC5mb2N1cyxcbi5idG4tbGluay5idG4tY2FuY2VsOmFjdGl2ZSwgLmJ0bi1saW5rLmJ0bi1jYW5jZWw6Zm9jdXMsXG4uYnRuLWxpbmsuYnRuLWNhbmNlbDpob3ZlciwgLm9wZW4+LmRyb3Bkb3duLXRvZ2dsZS5idG4tbGluay5idG4tY2FuY2VsIHtcblxufVxuLmJ0bi1zZXBhcmF0ZS1sZWZ0LCAgLm9lLW9wdC1idG4tc2VwYXJhdGUtbGVmdHtcblxufVxuLmJ0bi1ncm91cD4uYnRuOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcblxufVxuLmJ0bi1ncm91cC1waW5jaD4uYnRuOm50aC1sYXN0LWNoaWxkKDIpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSwgLm9lLW9wdC1idG4tZ3JvdXAtcGluY2g+LmJ0bjpudGgtbGFzdC1jaGlsZCgyKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xuXG59XG4ub2UtY3VzdG9tLWxpbmV7XG5cdHBhZGRpbmctYm90dG9tOjVweDtcbn1cbi5vZS1sYXJnZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5vZS1zbWFsbCB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4ub2Utc2hvdy1oaWRlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi5vZS1sZWdlbmQtcmFkaW97XG5cdGZvbnQtc2l6ZToxMnB4O1xuXHRwYWRkaW5nOjVweCA1cHggMHB4IDBweDtcbn1cbi5vZS1ib2xkLWJsYWNrIHtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0Y29sb3I6IGJsYWNrO1xufVxuLm9lLXBheW1lbnQtc2VsZWN0IHtcblx0d2lkdGg6IDgwcHggIWltcG9ydGFudDtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdGZvbnQtc2l6ZTogMTJweDtcbn1cbi5vZS1ja2JveC1sYWJlbHtcblx0cGFkZGluZy1sZWZ0OiAzMHB4O1xuXHRmb250LXdlaWdodDogNTAwO1xufVxuLm9lLWZpbGUtZGl2e1xuXHRwYWRkaW5nOjEwcHggMTVweDtcbn1cbi5vZS1tb2RhbC1kaWFsb2d7XG5cdHdpZHRoOjY1JSAhaW1wb3J0YW50O1xufVxuLm9lLWJ0bi1jaXJjbGUge1xuXHR3aWR0aDogMzBweDtcblx0aGVpZ2h0OiAzMHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDZweCAwO1xuXHRmb250LXNpemU6IDEycHg7XG5cdGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQyOTtcblx0Ym9yZGVyLXJhZGl1czogMTVweDtcbn1cbi8qYWJvdmUgc2VjdGlvbiBpcyBvdmVycmlkZSBib290c3RyYXAgMyBmb3Igb3BlbmVtciBhbmQgc29tZSBuZXcgY2xhc3NlcyBhbGwgcHJlZml4ZWQgd2l0aCBvZS0qL1xuIiwiQGltcG9ydCBcIm9lLWJvb3RzdHJhcFwiO1xuXG5ib2R5IHtcblx0Zm9udC1mYW1pbHk6IGxhdG8sIEhlbHZldGljYSwgU2Fucy1TZXJpZjtcblx0Zm9udC1zaXplOiAxNHB4O1xufVxuXG5AaW1wb3J0IFwiY29yZVwiO1xuXG4ubWVudUJhcntcblx0d2lkdGg6MTAwJTtcblx0aGVpZ2h0OmF1dG87XG5cdGRpc3BsYXk6YmxvY2s7XG5cdHBvc2l0aW9uOmZpeGVkO1xuXHR0b3A6MDtcblx0YmFja2dyb3VuZC1jb2xvcjojRkZGRkZGICFpbXBvcnRhbnQ7XG5cdHotaW5kZXg6MTAwO1xufVxuXG4ubWVudUJhciB+IC5jb250YWluZXJ7XG5cdG1hcmdpbi10b3A6OTVweDtcbn1cblxuXG4ubG9nb3V0IHtcblx0Y29sb3I6ICMwMDAwMDA7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5hbGVydC1jdXN0b20ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkYwMDAwICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5zbWFsbCBzcGFuLnRleHQsIHNwYW4ucmVxdWlyZWQsIHNwYW4uYm9sZCB7XG5cdGZvbnQtc2l6ZTogMWVtO1xufVxuXG4ubGluayB7XG5cdGZvbnQtc2l6ZTogMC43ZW07XG59XG5cbi5tb3JlIHtcblx0Zm9udC1zaXplOiAwLjdlbTtcbn1cblxuLmJhY2sge1xuXHRmb250LXNpemU6IDAuN2VtO1xufVxuXG4ubGlua19zZWxlY3RlZCB7XG5cdGZvbnQtc2l6ZTogMC43ZW07XG59XG4ubGlua19zZWxlY3RlZDp2aXNpdGVkIHtcblx0Zm9udC1zaXplOiAwLjdlbTtcbn1cblxuLml0ZW1zIHtcblx0Zm9udC1zaXplOiAwLjdlbTtcbn1cblxuLnRpdGxlIHtcblx0Zm9udC1zaXplOiAxLjVlbTtcbn1cblxuLnRpdGxlX2JhciB7XG5cdGZvbnQtc2l6ZTogMS4xM2VtO1xufVxuXG4uYm9keV90b3Age1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuLyogJHRvcF9iZ19saW5lICovXG5cbi5iZ2NvbG9yMiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG4vKiAkR0xPQkFMU1snc3R5bGUnXVsnQkdDT0xPUjInXSAqL1xuXG4uYm9keV90aXRsZSB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG59XG4vKiAkdGl0bGVfYmdfbGluZSAqL1xuXG4uYm9keV9uYXYge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xufVxuLyogJG5hdl9iZ19saW5lICovXG5cbi5ib2R5X2ZpbGxlciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmN2YwZDU7XG59XG4vKiAkbG9naW5fYm9keV9saW5lICovXG5cbiNhZGRyZXNzYm9va19saXN0IHRyLnNlYXJjaCB7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG59XG4jYWRkcmVzc2Jvb2tfbGlzdCAuaW5wdXR0ZXh0IHtcblx0Zm9udC1zaXplOiAwLjllbTtcbn1cblxuW2hyZWZ+PVwiZGVsZXRlclwiXSxcbltvbmNsaWNrfj1cImRlbGV0ZVwiXSB7XG5cdGJhY2tncm91bmQ6ICNmZjVkNWEgIWltcG9ydGFudDtcbn1cblxuLnNlY3Rpb24ge1xuXHRiYWNrZ3JvdW5kOiAjZjBmMGYwO1xuXHRib3JkZXItY29sb3I6ICNkN2Q3ZDcgIWltcG9ydGFudDtcbn1cblxuLyogc3R5bGVzIHRha2VuIG91dCBvZiB0ZW1wbGF0ZXMvZG9jdW1lbnRzL2dlbmVyYWxfbGlzdC5odG1sICovXG4jZG9jdW1lbnRzX2xpc3Qge1xuXHR3aWR0aDogMjklO1xuXHRoZWlnaHQ6IDk1JTtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdGZsb2F0OiBsZWZ0O1xuXHRib3JkZXItcmlnaHQ6IGRhc2hlZCAxcHg7XG59XG4jZG9jdW1lbnRzX2xpc3QgdGQge1xuXHRmb250LXNpemU6IDAuOGVtO1xufVxuI2RvY3VtZW50c19saXN0IGEge1xuXHRmb250LXNpemU6IDAuOGVtO1xufVxuXG4uYm9keV90aXRsZSB0YWJsZSB0ciB0ZCB7XG5cdHBhZGRpbmc6IDBweCAhaW1wb3J0YW50O1xufVxuXG4vKiBQYXRpZW50IEhpc3RvcnkgKi9cbiNISVMgLmdyb3VwbmFtZSB7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG59XG4jSElTIC5sYWJlbF9jdXN0b20ge1xuXHRmb250LXNpemU6IDAuOWVtO1xufVxuI0hJUyAuZGF0YSB7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogUGF0aWVudCBQYXN0IEVuY291bnRlcnMgYW5kIERvY3VtZW50c1xuICogc2VlbiBpbiB0aGUgcGF0aWVudCBlbmNvdW50ZXIgc2NyZWVuXG4gKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jcGF0aWVudF9wYXN0ZW5jICN0b29sdGlwZGl2IHtcblx0Zm9udC1zaXplOiAwLjllbTtcbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBSZXBvcnQgLSBDdXN0b21cbiAqIHNlZW4gYXMgdGhlIHBhdGllbnQgcmVwb3J0IChjdXN0b21fcmVwb3J0LnBocClcbiAqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiNyZXBvcnRfY3VzdG9tIGgxIHtcblx0Zm9udC1zaXplOiAxLjJlbTtcbn1cbiNyZXBvcnRfY3VzdG9tIC5lbmNvdW50ZXIgaDEge1xuXHRmb250LXNpemU6IDEuNGVtO1xufVxuXG4jYWRkcmVzc2Jvb2tfbGlzdCB0ci5ldmVucm93IHtcblx0YmFja2dyb3VuZC1jb2xvcjogI2RkZGRmZjtcbn1cblxuI2FkZHJlc3Nib29rX2xpc3QgdHIub2Rkcm93IHtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cblxudHIub2RkLCB0ZC5ldmVuIHtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG5AaW1wb3J0IFwiYnV0dG9ucy9fbGlnaHRcIjtcblxuI2xvZ291dF9saW5rIHNwYW4ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4vKlxuICogVEFCU1xuKi9cbnVsLnRhYk5hdiB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0cGFkZGluZy10b3A6IDRweDtcblx0YmFja2dyb3VuZDogIzI2NzJlYztcbn1cbnVsLnRhYk5hdiBsaSB7XG5cdHBhZGRpbmc6IDBweCA0cHg7XG59XG51bC50YWJOYXYgbGkuY3VycmVudCBhIHtcblx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0Y29sb3I6ICMyNjcyZWM7XG59XG51bC50YWJOYXYgYSB7XG5cdGNvbG9yOiAjZmZmZmZmO1xuXHRwYWRkaW5nOiA4cHggMTdweDtcbn1cbnVsLnRhYk5hdiBhOmZvY3VzIHtcblx0b3V0bGluZTogbm9uZTtcbn1cblxuLyoqXG4qIExpc3QtdGFibGUgZm9ybWF0dGluZ1xuKiovXG5cbi5zaG93Ym9yZGVyIHRkIHtcblx0Zm9udC1zaXplOiAwLjllbTtcbn1cblxuLnNob3dib3JkZXJfaGVhZCB0aCB7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi5zaG93bm9ib3JkZXIgdGQge1xuXHRmb250LXNpemU6IDAuOWVtO1xufVxuXG4uc2hvd2JvcmRlcl9sb25nIHRyIHRkIHtcblx0Zm9udC1zaXplOiAwLjllbTtcbn1cblxuLyoqXG4qIERydWcgbG9va3VwXG4qKi9cbi5kcnVnX2xvb2t1cCB7XG5cdGZvbnQtc2l6ZTogMC44ZW07XG59XG5cbkBpbXBvcnQgXCJuYXZpZ2F0aW9uLXNsaWRlL19saWdodFwiO1xuXG4jc2RkbSBsaSB7XG5cdGJhY2tncm91bmQ6ICNmMGYwZjA7XG59XG4jc2RkbSBsaSBhIHtcblx0cGFkZGluZzogMTJweDtcblx0Y29sb3I6ICMyNjcyZWM7XG59XG4jc2RkbSBsaSBhOmhvdmVyIHtcblx0YmFja2dyb3VuZDogI2Q3ZDdkNztcbn1cbiNzZGRtIGRpdiB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0YmFja2dyb3VuZDogI2YwZjBmMDtcbn1cbiNzZGRtIGRpdiBhIHtcblx0Y29sb3I6ICMyODc1REU7XG59XG4jc2RkbSBkaXYgYTpob3ZlciB7XG5cdGJhY2tncm91bmQ6ICMyNjcyZWM7XG59XG5cbiNzZGRtIGxpLmVuY291bnRlci1mb3JtLWNhdGVnb3J5LWxpe1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDE7XG59XG5cbi50ZXh0LWFyZWEge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuXHRib3JkZXI6IDFweCBzb2xpZCBibGFjaztcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwcHg7XG5cdG92ZXJmbG93OiBhdXRvO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZXhhbXBsZV9tZW51IHtcblx0Zm9udC1zaXplOiAwLjdlbTtcbn1cbi5leGFtcGxlX21lbnUgdWwgYTpob3ZlciB7XG5cdGJhY2tncm91bmQ6ICNmNWY1ZjU7XG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uZXJyb3ItbWVzc2FnZXtcblx0Zm9udC1zaXplOiAwLjhlbTtcbn1cblxuXG4uYXR0YWNoLWlucHV0e1xuXHR0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5mdWxsLXdpZHRoe1xuXHR3aWR0aDogMTAwJTtcbn1cbi5yYWRpby1wb3N7XG5cdG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG4uc2lkZWJhciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG5cdGZvbnQtc2l6ZTogMC45NWVtO1xufVxuXG4uc2lkZWJhciAuc3VibWVudSB7XG5cdGZvbnQtc2l6ZTowLjllbTtcbn1cblxuLmFsZXJ0LWRhbmdlci1jdXN0b20ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkYwMDAwICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG4vKiB0byBhbGlnbiBmZWVzaGVldCBidXR0b25zKi9cbmRpdi5jYXRlZ29yeS1kaXNwbGF5IHtcblx0bWFyZ2luLWxlZnQ6IDI1cHggIWltcG9ydGFudDtcbn1cbiIsIiNuYXZpZ2F0aW9uLXNsaWRlLFxuI25hdmlnYXRpb24tc2xpZGUgKiB7XG5cdHBhZGRpbmctbGVmdDogMHB4O1xuXHRtYXJnaW4tbGVmdDogMHB4O1xuXHRmb250LXNpemU6IDAuNzVyZW0gIWltcG9ydGFudDtcbn1cbiNuYXZpZ2F0aW9uLXNsaWRlIGxpLFxuI25hdmlnYXRpb24tc2xpZGUgKiBsaSB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4jbmF2aWdhdGlvbi1zbGlkZSBsaSBhLFxuI25hdmlnYXRpb24tc2xpZGUgKiBsaSBhIHtcblx0YmFja2dyb3VuZC1jb2xvcjogbm9uZTtcblx0Y29sb3I6ICMwMDA7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmb250LXNpemU6IDEuMTNlbTtcblx0cGFkZGluZzogOHB4IDBweCA4cHggMHB4O1xuXHR3aWR0aDogMTAwJTtcbn1cbiNuYXZpZ2F0aW9uLXNsaWRlIGxpIGE6aG92ZXIsXG4jbmF2aWdhdGlvbi1zbGlkZSAqIGxpIGE6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZDdkN2Q3O1xufVxuI25hdmlnYXRpb24tc2xpZGUgbGkgYS5jb2xsYXBzZWRfbHYyOmJlZm9yZSxcbiNuYXZpZ2F0aW9uLXNsaWRlICogbGkgYS5jb2xsYXBzZWRfbHYyOmJlZm9yZSxcbiNuYXZpZ2F0aW9uLXNsaWRlIGxpIGEuY29sbGFwc2VkX2x2MzpiZWZvcmUsXG4jbmF2aWdhdGlvbi1zbGlkZSAqIGxpIGEuY29sbGFwc2VkX2x2MzpiZWZvcmUge1xuXHRjb250ZW50OiBcIiZuYnNwO1wiO1xuXHR3aWR0aDogMDtcblx0aGVpZ2h0OiAwO1xuXHRib3JkZXItYm90dG9tOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdC8qIGxlZnQgYXJyb3cgc2xhbnQgKi9cblx0Ym9yZGVyLXRvcDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHQvKiByaWdodCBhcnJvdyBzbGFudCAqL1xuXHRib3JkZXItbGVmdDogNXB4IHNvbGlkICMyZjJmMmY7XG5cdC8qIGJvdHRvbSwgYWRkIGJhY2tncm91bmQgY29sb3IgaGVyZSAqL1xuXHRmb250LXNpemU6IDA7XG5cdGxpbmUtaGVpZ2h0OiAxMHB4O1xufVxuI25hdmlnYXRpb24tc2xpZGUgbGkgYS5leHBhbmRlZCxcbiNuYXZpZ2F0aW9uLXNsaWRlICogbGkgYS5leHBhbmRlZCB7XG5cdGJhY2tncm91bmQ6ICNjYmU2Zjc7XG59XG4jbmF2aWdhdGlvbi1zbGlkZSBsaSBhLmV4cGFuZGVkX2x2MjpiZWZvcmUsXG4jbmF2aWdhdGlvbi1zbGlkZSAqIGxpIGEuZXhwYW5kZWRfbHYyOmJlZm9yZSxcbiNuYXZpZ2F0aW9uLXNsaWRlIGxpIGEuZXhwYW5kZWRfbHYzOmJlZm9yZSxcbiNuYXZpZ2F0aW9uLXNsaWRlICogbGkgYS5leHBhbmRlZF9sdjM6YmVmb3JlIHtcblx0Y29udGVudDogXCImbmJzcDtcIjtcblx0d2lkdGg6IDA7XG5cdGhlaWdodDogMDtcblx0Ym9yZGVyLXJpZ2h0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdC8qIGxlZnQgYXJyb3cgc2xhbnQgKi9cblx0Ym9yZGVyLXRvcDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHQvKiByaWdodCBhcnJvdyBzbGFudCAqL1xuXHRib3JkZXItbGVmdDogNXB4IHNvbGlkICMyZjJmMmY7XG5cdC8qIGJvdHRvbSwgYWRkIGJhY2tncm91bmQgY29sb3IgaGVyZSAqL1xuXHRmb250LXNpemU6IDA7XG5cdGxpbmUtaGVpZ2h0OiAwcHg7XG59XG4jbmF2aWdhdGlvbi1zbGlkZSBsaSBhIGltZyxcbiNuYXZpZ2F0aW9uLXNsaWRlICogbGkgYSBpbWcge1xuXHRkaXNwbGF5OiBub25lO1xufVxuI25hdmlnYXRpb24tc2xpZGUgbGkgdWwgbGksXG4jbmF2aWdhdGlvbi1zbGlkZSAqIGxpIHVsIGxpIHtcblx0cGFkZGluZy1sZWZ0OiAxNHB4O1xufVxuIiwiLm1lbnUge1xuXHRjb2xvcjogIzAwMDBjYztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ubWVudV9zZWxlY3RlZCB7XG5cdGNvbG9yOiAjMDAwMDAwO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8qIHNlZSAudGl0bGViYXIgYmVsb3cgKi9cbi50aXRsZV9iYXIge1xuXHRmb250LXNpemU6IDEuMGVtO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjb2xvcjogIzAwMDAwMDtcbn1cblxuLnRpdGxlX2Jhcl90b3Age1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjb2xvcjogIzAwMDAwMDtcbn1cblxuLnNpZGViYXIge1xuXHRiYWNrZ3JvdW5kOiAjZmZmYmViO1xuXHRmb250LXNpemU6IDk1JTtcblx0cGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcblxuXHQuc3VibWVudSB7XG5cdFx0cGFkZGluZy1sZWZ0OjE1cHg7XG5cdH1cblxuXHR1bC5tYWlubWVudSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDU1cHg7XG5cdH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBIZXJlIHdlIGhhdmUgdGFrZW4gdmFyaWFibGVzIGZyb20gZ2xvYmFscy5waHAgYW5kIHR1cm5lZCB0aGVtIGludG8gQ1NTIGNsYXNzZXNcbiAqIHRoZXNlIHNob3VsZCBiZSB1c2VkIGluIHBsYWNlIG9mIHRoZSBHTE9CQUwgdmFyaWFibGVzIC0tIEpSTSBNYXJjaCAyMDA4XG4gKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmJvZHlfdG9wIHsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmJlYjsgbWFyZ2luOiA4cHggfSAgICAvKiAkdG9wX2JnX2xpbmUgKi9cbi5iZ2NvbG9yMiB7IGJhY2tncm91bmQtY29sb3I6ICNmZmZiZWI7IH0gICAgLyogJEdMT0JBTFNbJ3N0eWxlJ11bJ0JHQ09MT1IyJ10gKi9cbi5ib2R5X2JvdHRvbSB7IGJhY2tncm91bmQ6IHVybCgnLi4vcGljL2FxdWFiZy5naWYnKSByZXBlYXQ7IG1hcmdpbjogOHB4IH0gIC8qICRib3R0b21fYmdfbGluZSAqL1xuLmJvZHlfdGl0bGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVkZjk4OyB9ICAvKiAkdGl0bGVfYmdfbGluZSAqL1xuLmJvZHlfbmF2IHsgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmRjZjsgfSAgICAvKiAkbmF2X2JnX2xpbmUgKi9cbi5ib2R5X2ZpbGxlciB7IGJhY2tncm91bmQtY29sb3I6ICNmN2YwZDU7IH0gLyogJGxvZ2luX2ZpbGxlcl9saW5lICovXG4uYm9keV9sb2dpbiB7IGJhY2tncm91bmQ6IHVybCgnLi4vcGljL2FxdWFiZy5naWYnKSByZXBlYXQ7IH0gLyogJGxvZ2luX2JvZHlfbGluZSAqL1xuLnRhYmxlX2JnIHsgYmFja2dyb3VuZC1jb2xvcjogI2NjYzsgfSAgICAgICAgICAgLyogJHRhYmxlX2JnICovXG4uYmdjb2xvcjEgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjOyB9ICAgICAgIC8qICRHTE9CQUxTWydzdHlsZSddWydCR0NPTE9SMSddICovXG4udGV4dGNvbG9yMTEgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyOyB9ICAgIC8qICRHTE9CQUxTWydzdHlsZSddWydURVhUQ09MT1IxMSddICovXG4uaGlnaGxpZ2h0Y29sb3IgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOyB9IC8qICRHTE9CQUxTWydzdHlsZSddWydISUdITElHSFRDT0xPUiddICovXG4uYm90dG9tX2xpbmUgeyBiYWNrZ3JvdW5kOiB1cmwoJy4uL3BpYy9hcXVhYmcuZ2lmJykgcmVwZWF0OyB9ICAgIC8qICRHTE9CQUxTWydzdHlsZSddWydCT1RUT01fQkdfTElORSddICovXG4ubG9nb2JhciB7IGJhY2tncm91bmQtY29sb3I6ICMyNDI2MmM7IGhlaWdodDogMTEwcHg7IH0gICAgICAgICAgICAgICAgIC8qICRHTE9CQUxTWydsb2dvQmFySGVpZ2h0J10gKi9cbi5uYXZiYXIgeyBoZWlnaHQ6IDIycHg7IH0gICAgICAgICAgICAgICAgICAgLyogJEdMT0JBTFNbJ25hdkJhckhlaWdodCddICovXG4udGl0bGViYXIgeyBoZWlnaHQ6IDIwcHg7IH0gICAgICAgICAgICAgICAgIC8qICRHTE9CQUxTWyd0aXRsZUJhckhlaWdodCddICovXG5cbi8qIFRoZSB0b3AgbmF2aWdhdGlvbiBpY29uIHN0eWxpbmcqL1xuLnRvcC1uYXYtaWNvbnMge1xuXHRtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cdG1hcmdpbi10b3A6IDVweFxufVxuXG5cbi50ZXh0LWFyZWF7XG5cdGJhY2tncm91bmQtY29sb3I6I0ZGRkZGRjtcblx0Ym9yZGVyOjFweCBzb2xpZCBibGFjaztcblx0d2lkdGg6MTAwJTtcblx0aGVpZ2h0OjEwMHB4O1xuXHRvdmVyZmxvdzphdXRvO1xuXHR0ZXh0LWFsaWduOmxlZnQ7XG59XG4uZXhhbXBsZV9tZW51IHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHR3aWR0aDogMTM2cHg7XG59XG4uZXhwYW5kX2FsbCxcbi5jb2xsYXBzZV9hbGwge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG4uZXhhbXBsZV9tZW51IHVsIHtcblx0ZGlzcGxheTogbm9uZTtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuI21lbnUxIGxpLCAjbWVudTIgbGksICNtZW51MyBsaSwgI21lbnU0IGxpLCAjbWVudTUgbGksIC5leGFtcGxlX21lbnUgbGkge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHdoaXRlO1xufVxuLmV4YW1wbGVfbWVudSB1bCB1bCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuLmV4YW1wbGVfbWVudSBhIHtcblx0Y29sb3I6ICMwMDA7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRtYXJnaW4tbGVmdDogMDtcblx0cGFkZGluZzogMnB4IDJweCAycHggMTdweDtcblx0d2lkdGg6IDE2MHB4O1xufVxuLmV4YW1wbGVfbWVudSBhLmV4cGFuZGVkIHtcblx0YmFja2dyb3VuZDogI2JiYiB1cmwoJ2NvbGxhcHNlLmdpZicpIG5vLXJlcGVhdCAzcHggNTAlO1xufVxuLmV4YW1wbGVfbWVudSBhLmNvbGxhcHNlZCB7XG5cdGJhY2tncm91bmQ6ICNiYmIgdXJsKCdleHBhbmQuZ2lmJykgbm8tcmVwZWF0IDNweCA1MCU7XG59XG4uZXhhbXBsZV9tZW51IGE6aG92ZXIge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZXhhbXBsZV9tZW51IHVsIGxpIHNwYW4ge1xuXHRiYWNrZ3JvdW5kOiAjZDlkMWE0O1xuXHRjb2xvcjogIzAwMDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdHdpZHRoOjEwMCU7XG59XG4uZXhhbXBsZV9tZW51IHVsIGE6U3ViamVjdGl2ZSB7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4uZXhhbXBsZV9tZW51IHVsIGE6aG92ZXIge1xuXHRiYWNrZ3JvdW5kIDogI2Y1ZjVmNTtcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uZXhhbXBsZV9tZW51IGxpLmFjdGl2ZSBhIHtcblx0YmFja2dyb3VuZDogI2ZmZjtcbn1cbi5leGFtcGxlX21lbnUgbGkuYWN0aXZlIGxpIGEge1xuXHRiYWNrZ3JvdW5kOiAjZThlOGU4O1xufVxuI21lbnUxIGxpLmZvb3RlciwgI21lbnUyIGxpLmZvb3RlciwgI21lbnUzIGxpLmZvb3RlciwgI21lbnU0IGxpLmZvb3RlciwgI21lbnU1IGxpLmZvb3RlciwgLmV4YW1wbGVfbWVudSAuZm9vdGVyIHtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCdmb290ZXIuanBnJykgbm8tcmVwZWF0IDAgMDtcblx0Ym9yZGVyLXRvcDogMnB4IHNvbGlkICNmZmY7XG5cdGhlaWdodDogOXB4O1xuXHRsaW5lLWhlaWdodDogMTVweDtcblx0bWFyZ2luOiAwIDAgMTBweCAwO1xuXHR3aWR0aDogMTMxcHg7XG59XG4uZXhhbXBsZV9tZW51IC5mb290ZXIgc3BhbiB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4uY2tlX2NvbnRlbnRzIHtcblx0aGVpZ2h0OiAzMDBweCAhaW1wb3J0YW50O1xufVxuIiwiLyoqXG4gKiBDb3JlIE9wZW5FTVIgc3R5bGVzLlxuICpcbiAqIFRoZXNlIGhlbHBlcnMgYXJlIHVzZWQgcmVnYXJkbGVzcyBvZiB0aGUgdGhlbWUgYmVpbmcgdXNlZFxuICpcbiAqIEBhdXRob3IgUm9iZXJ0IERvd24gPHJvYmVydGRvd25AbGl2ZS5jb20+XG4gKiBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgMjAxNyBSb2JlcnQgRG93blxuICogQGxpY2Vuc2UgaHR0cHM6Ly9naXRodWIuY29tL29wZW5lbXIvb3BlbmVtci9ibG9iL21hc3Rlci9MSUNFTlNFIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgM1xuICovXG5cbkBpbXBvcnQgdXJsKFwidGhlbWVCdWlsZGVyLnBocFwiKTsgLy8gcmVhZHMgZnJvbSB1c2VyIHByZWZlcmVuY2VzIGFuZCBvdmVycmlkZXMgZm9udHNcblxuQGltcG9ydCBcImNvcmUvRm9udEF3ZXNvbWVcIjtcbkBpbXBvcnQgXCJjb3JlL2Zvcm1zXCI7XG5AaW1wb3J0IFwiY29yZS9jbG9zZURsZ0lmcmFtZVwiO1xuQGltcG9ydCBcImNvcmUvY3Vyc29yXCI7XG5AaW1wb3J0IFwiY29yZS9saW5rc1wiO1xuQGltcG9ydCBcImNvcmUvbmF2bWVudVwiO1xuQGltcG9ydCBcImNvcmUvdGV4dFwiO1xuQGltcG9ydCBcImNvcmUvYWRkcmVzc2Jvb2tcIjtcbkBpbXBvcnQgXCJjb3JlL2RvY3VtZW50c1wiO1xuXG5AaW1wb3J0IFwiY29yZS9wYXRpZW50L2RlbW9ncmFwaGljc1wiO1xuQGltcG9ydCBcImNvcmUvcGF0aWVudC9oaXN0b3J5XCI7XG5AaW1wb3J0IFwiY29yZS9wYXRpZW50L25vdGVzXCI7XG5AaW1wb3J0IFwiY29yZS9wYXRpZW50L3N0YXRzXCI7XG5AaW1wb3J0IFwiY29yZS9wYXRpZW50L3N0YXRzX3N1bW1hcnlcIjtcbkBpbXBvcnQgXCJjb3JlL3BhdGllbnQvcGFzdF9lbmNvdW50ZXJzXCI7XG5AaW1wb3J0IFwiY29yZS9wYXRpZW50L3JlcG9ydHNcIjtcbkBpbXBvcnQgXCJjb3JlL3BhdGllbnQvcmVwb3J0X2N1c3RvbVwiO1xuXG5AaW1wb3J0IFwiY29yZS90YWJzXCI7XG5AaW1wb3J0IFwiY29yZS9zZGRtXCI7XG5AaW1wb3J0IFwiY29yZS9yZXBvcnRzXCI7XG5AaW1wb3J0IFwiY29yZS9saXN0LXRhYmxlXCI7XG5AaW1wb3J0IFwiY29yZS90aGVyYXB5LWdyb3Vwc1wiO1xuIiwiLyoqXG4gKiBHbG9iYWwgdXNlcyBvZiB0aGUgZm9udCBhd2Vzb21lIGxpYnJhcnlcbiAqIFRPRE8gZml4IHBhdGhpbmcgZm9yIGFsbCB1c2VzXG4gKi9cbkBmb250LWZhY2Uge1xuXHRmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuXHRzcmM6IHVybChcIi9wdWJsaWMvYXNzZXRzL2ZvbnQtYXdlc29tZS00LTYtMy9mb250cy9mb250YXdlc29tZS13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cblxuLmNzc19idXR0b25baHJlZio9XCJkZWxldGVyXCJdOmJlZm9yZSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl1baHJlZio9XCJkZWxldGVyXCJdIFt0eXBlPVwic3VibWl0XCJdOmJlZm9yZSxcbmJ1dHRvbltocmVmKj1cImRlbGV0ZXJcIl06YmVmb3JlIHtcblx0Zm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcblx0Y29udGVudDogXCJcXGYwMTRcIjtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYnRuOjpiZWZvcmUge1xuXHRmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuXHRkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5idG4tc2F2ZTo6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGYwMGNcXDAwYTBcXDAwYTBcIjtcbn1cblxuLmJ0bi1jYW5jZWw6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXFxmMDBkXFwwMGEwXFwwMGEwXCI7XG59XG5cbi5idG4tYWRkOjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmMDY3XFwwMGEwXFwwMGEwJztcbn1cblxuLmJ0bi1zZWFyY2g6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYwMDJcXDAwYTBcXDAwYTAnO1xufVxuXG4uYnRuLWRlbGV0ZTo6YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjAxNFxcMDBhMFxcMDBhMCc7XG59XG5cbi5idG4tZHVwbGljYXRlOjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmMGM1XFwwMGEwXFwwMGEwJztcbn1cblxuLmJ0bi1yZWZyZXNoOjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmMDIxXFwwMGEwXFwwMGEwJztcbn1cblxuLmJ0bi1lZGl0OjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmMDQwXFwwMGEwXFwwMGEwJztcbn1cblxuLmJ0bi10cmFuc21pdDo6YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjA2MVxcMDBhMFxcMDBhMCc7XG59XG5cbi5idG4tcmVjZWl2ZTo6YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjA2MFxcMDBhMFxcMDBhMCc7XG59XG5cbi5idG4tcHJpbnQ6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYwMmZcXDAwYTBcXDAwYTAnO1xufVxuXG4uYnRuLWJhY2s6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYwNTNcXDAwYTBcXDAwYTAnO1xufVxuXG4uYnRuLXNob3c6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYwNmVcXDAwYTBcXDAwYTAnO1xufVxuXG4uYnRuLWhpZGU6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYwNzBcXDAwYTBcXDAwYTAnO1xufVxuXG4uYnRuLXVuZG86OmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYwZTJcXDAwYTBcXDAwYTAnO1xufVxuXG4uYnRuLXVwZGF0ZTo6YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjAxZVxcMDBhMFxcMDBhMCc7XG59XG5cbi5idG4tZG93bmxvYWQ6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYwMTlcXDAwYTBcXDAwYTAnO1xufVxuXG4uYnRuLW1haWw6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXGYwZTBcXDAwYTBcXDAwYTAnO1xufVxuXG4uYnRuLWNhbGVuZGFyOjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmMDczXFwwMGEwXFwwMGEwJztcbn1cblxuLmJ0bi1ncmFwaDo6YmVmb3JlIHtcblx0Y29udGVudDogJ1xcZjIwMVxcMDBhMFxcMDBhMCc7XG59XG5cbi5idG4tZmlsdGVyOjpiZWZvcmUge1xuXHRjb250ZW50OiAnXFxmMGIwXFwwMGEwXFwwMGEwJztcbn1cbiIsIi8qXG4gKiBDb21tb24gZm9ybXMgc3R5bGVzXG4gKi9cblxuLmNoYXJ0LWR5Z3JhcGhzIHtcblx0ZGlyZWN0aW9uOmx0cjtcbn1cblxuXG4vKipcbiogRHJ1ZyBsb29rdXBcbioqL1xuLmRydWdfbG9va3VwIHtcblx0Ym9yZGVyOiAycHggb3V0c2V0ICM2NjY2NjY7XG5cdGJhY2tncm91bmQtY29sb3I6ICNlYWU2ZmY7XG5cdHBhZGRpbmc6IDVweDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLyogRm9ybSBzdHlsZXMgKi9cbi5mb3JtdGFibGUge1xuXHRsaW5lLWhlaWdodDogMjRweDtcbn1cbi5mb3JtdGFibGUgdHIgdGQge1xuXHRsaW5lLWhlaWdodDogMjRweDtcbn1cblxuLnJlcG9ydF9zZWFyY2hfYmFyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogI0VBRERCNDtcbn1cblxuLyogZmxvdyBib2FyZCBmaWx0ZXJzKi9cbiNmbG93X2JvYXJkX3BhcmFtZXRlcnN7XG5cdG1hcmdpbjogMjVweCBhdXRvO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xufVxuI2Zsb3dfYm9hcmRfcGFyYW1ldGVycyB0ZHtcblx0cGFkZGluZzogMTBweDtcbn1cbiNmbG93X2JvYXJkX3BhcmFtZXRlcnMgdGFibGUge1xuXHRib3JkZXI6IHNvbGlkIDFweDtcblx0d2lkdGg6IDEwMCU7XG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG4iLCIvKlxuICogY2xvc2VEbGdJZnJhbWUgY29tbW9uIHN0eWxlc1xuICovXG5cbmRpdi5jbG9zZURsZ0lmcmFtZSB7XG5cdGJhY2tncm91bmQ6ICNmZjVkNWE7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtMTJweDtcblx0cmlnaHQ6IC0xMnB4O1xuXHRoZWlnaHQ6IDI1cHg7XG5cdHdpZHRoOiAyNXB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHotaW5kZXg6IDEwMDEwO1xufVxuXG5kaXYuY2xvc2VEbGdJZnJhbWU6YmVmb3JlIHtcblx0Y29sb3I6ICNmZmY7XG5cdGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG5cdGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdG1hcmdpbjogYXV0bztcblx0bGluZS1oZWlnaHQ6IDI1cHg7XG5cdGhlaWdodDogMjVweDtcbn1cbiIsIi8qKlxuICogQ29yZSBPcGVuRU1SIHN0eWxlcy5cbiAqL1xuXG4udWktZHJhZ2dhYmxlOmhvdmVyIHtcblx0Y3Vyc29yOiBtb3ZlO1xuXHRjdXJzb3I6IGdyYWI7XG5cdGN1cnNvcjogLW1vei1ncmFiO1xuXHRjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbn1cblxuLnVpLWRyYWdnYWJsZTphY3RpdmUge1xuXHRjdXJzb3I6IG1vdmU7XG5cdGN1cnNvcjogZ3JhYmJpbmc7XG5cdGN1cnNvcjogLW1vei1ncmFiYmluZztcblx0Y3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xufVxuXG4udWktaWNvbi1ncmlwc21hbGwtZGlhZ29uYWwtc2Uge1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMjI0cHg7XG59XG5cbi51aS1pY29uLCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWljb24ge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvcHVibGljL2Fzc2V0cy9qcXVlcnktdWktMS0xMi0xL3RoZW1lcy9zdW5ueS9pbWFnZXMvdWktaWNvbnNfZDE5NDA1XzI1NngyNDAucG5nXCIpO1xufVxuXG4udWktaWNvbiB7XG5cdHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDE2cHg7XG59XG5cbi51aS1pY29uIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRtYXJnaW4tdG9wOiAtLjI1ZW07XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dGV4dC1pbmRlbnQ6IC05OTk5OXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4udWktcmVzaXphYmxlLWhhbmRsZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Zm9udC1zaXplOiAwLjFweDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLnVpLXJlc2l6YWJsZS1zZSB7XG5cdGN1cnNvcjogc2UtcmVzaXplO1xuXHR3aWR0aDogMTJweDtcblx0aGVpZ2h0OiAxMnB4O1xuXHRyaWdodDogMXB4O1xuXHRib3R0b206IDFweDtcbn1cblxuLnVpLXJlc2l6YWJsZS1zIHtcblx0Y3Vyc29yOiBzLXJlc2l6ZTtcblx0aGVpZ2h0OiA3cHg7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3R0b206IC01cHg7XG5cdGxlZnQ6IDA7XG59XG5cbi51aS1yZXNpemFibGUtZSB7XG5cdGN1cnNvcjogZS1yZXNpemU7XG5cdHdpZHRoOiA3cHg7XG5cdHJpZ2h0OiAtNXB4O1xuXHR0b3A6IDA7XG5cdGhlaWdodDogMTAwJTtcbn1cbiIsImEge1xuXHRjb2xvcjogIzAwMDBjYztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuYTp2aXNpdGVkIHtcblx0Y29sb3I6ICMwMDAwY2M7XG59XG5hOmhvdmVyIHtcblx0Y29sb3I6ICNmZjU1NTU7XG59XG5cbi5sb2dvdXQge1xuXHRjb2xvcjogIzAwMDAwMDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLm1vcmUge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5iYWNrIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ubGlua19zZWxlY3RlZCB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Y29sb3I6ICMwMDAwRkY7XG59XG5cbi5saW5rX3NlbGVjdGVkOnZpc2l0ZWQge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGNvbG9yOiAjMDAwMEZGO1xufVxuLmxpbmtfc3VibWl0IHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjb2xvcjogIzAwMDA3NztcblxuXHRhOnZpc2l0ZWQge1xuXHRcdGNvbG9yOiAjMDAwMDc3O1xuXHR9XG5cdGE6aG92ZXIge1xuXHRcdGNvbG9yOiAjZmY1NTU1O1xuXHR9XG59XG4iLCIvKiBzdHlsZSB0YWtlbiBvdXQgb2YgdGhlIGFkZHJlc3Nib29rIGNvZGUgYW5kIHB1dCBoZXJlIGluc3RlYWQgKi9cbiNhZGRyZXNzYm9va19saXN0IHtcblx0dGQge1xuXHRcdHBhZGRpbmctbGVmdDogNHB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDRweDtcblx0fVxuXHRhLCBhOnZpc2l0ZWQsIGE6aG92ZXIge1xuXHRcdGNvbG9yOiAjMDAwMGNjO1xuXHR9XG5cdHRyLnNlYXJjaCB7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdH1cblx0dHIuaGVhZCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxuXHR0ci5ldmVucm93IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNkZGRkZmY7XG5cdH1cblx0dHIub2Rkcm93IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmY7XG5cdH1cblx0LmlucHV0dGV4dCB7XG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xuXHRcdGJvcmRlci13aWR0aDogMXB4O1xuXHRcdGJvcmRlci1jb2xvcjogIzAwMDAwMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0fVxuXHQuYnV0dG9uIHtcblx0XHRmb250LXNpemU6IDAuOGVtO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR9XG59XG4iLCIvKlxuICogVEFCU1xuKi9cblxudWwudGFiTmF2IHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdHdpZHRoOiAxMDAlO1xufVxudWwudGFiTmF2IGxpIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHZlcnRpY2FsLWFsaWduOiBib3R0b207XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnVsLnRhYk5hdiBhIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cblxuZGl2LnRhYkNvbnRhaW5lciB7XG5cdGNsZWFyOiBib3RoO1xuXHRmbG9hdDogbGVmdDtcblx0d2lkdGg6IDEwMCU7XG59XG5cbmRpdi50YWJDb250YWluZXIgZGl2LnRhYiB7XG5cdGJvcmRlcjogMXB4IHNvbGlkICNmZmZmZmY7XG5cdGNvbG9yOiAjMDAwO1xuXHRkaXNwbGF5OiBub25lO1xuXHRwYWRkaW5nOiAxMHB4O1xufVxuXG5kaXYudGFiQ29udGFpbmVyIGRpdi5jdXJyZW50IHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbmRpdi50YWIge1xuXHRtaW4taGVpZ2h0OiAxODBweDtcblx0YmFja2dyb3VuZDogI2ZmZmZmZiBub25lIHJlcGVhdCBzY3JvbGwgMCAwO1xuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHR3aWR0aDogNjY1cHg7XG59XG5cbmRpdi50YWJfbG9uZyB7XG5cdG1pbi1oZWlnaHQ6IDE4MHB4O1xuXHRiYWNrZ3JvdW5kOiAjZmZmZmZmIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG5kaXYudGFiIHA6bGFzdC1jaGlsZCB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmRpdi50YWIgdGFibGUgdGQge1xuXHRwYWRkaW5nLXJpZ2h0OiAxcHg7XG5cdHBhZGRpbmctYm90dG9tOiAwcHg7XG59XG5cbmRpdi50YWIgdGFibGUgdGQubGFiZWxfY3VzdG9tIHtcblx0bWluLXdpZHRoOiA4MHB4O1xufVxuXG5kaXYudGFiIHRhYmxlIHRkLmRhdGEge1xuXHRtaW4td2lkdGg6IDEyMHB4O1xufVxuXG5kaXYubm90YWIge1xuXHRiYWNrZ3JvdW5kOiAjRkZGRkZGIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG5kaXYubm90YWItcmlnaHQge1xuXHRiYWNrZ3JvdW5kOiAjRkZGRkZGIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uc2VjdGlvbi1oZWFkZXIge1xuXHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdHdpZHRoOiA2ODVweDtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xufVxuXG4uc2VjdGlvbi1oZWFkZXItZHluYW1pYyB7XG5cdG1hcmdpbi1ib3R0b206IDVweDtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xufVxuXG4uc3VtbWFyeV9pdGVtIHtcblx0YmFja2dyb3VuZDogI0ZGRkZGRjtcblx0cGFkZGluZzogOHB4O1xufVxuIiwiLnRleHQge1xuXHRjb2xvcjogIzAwMDAwMDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRmb250LXNpemU6IDAuOWVtO1xufVxuXG4ucmVxdWlyZWQge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG5cdGNvbG9yOiAjODgwMDAwO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmJvbGQge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG5cdGNvbG9yOiAjMDAwMDAwO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNtYWxsIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjb2xvcjogIzAwMDAwMDtcblx0Zm9udC1zaXplOiAwLjhlbTtcbn1cbi5zZWxsaXN0Y2xhc3Mge1xuXHRmbG9hdDogbGVmdDtcbn1cbi5kaXNhYmxlZF9idXR0b24ge1xuXHRjb2xvcjogZ3JleTtcbn1cbmEuZGlzYWJsZWRfYnV0dG9uOmhvdmVyIHtcblx0Y29sb3I6IGdyZXk7XG59XG5cbi8qIFBhc3N3b3JkIGFsZXJ0IHN0eWxlcyAqL1xuLnB3ZGFsZXJ0IHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAzOTBwdDtcblx0bWFyZ2luLWxlZnQ6IDEwMHB4O1xuXHRwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAxNXB4O1xuXHRjb2xvcjogYmxhY2s7XG59XG5cbi5hbGVydG1zZzEge1xuXHRib3JkZXI6IDNweCBzb2xpZCAjZmU3YjdhO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkNmQ2O1xufVxuXG4uYWxlcnRtc2cyIHtcblx0Ym9yZGVyOiAzcHggc29saWQgI2Y1NmZmZjtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZhYmZmZjtcbn1cblxuLmFsZXJ0bXNnMyB7XG5cdGJvcmRlcjogM3B4IHNvbGlkICM5YWNjMmU7XG5cdGJhY2tncm91bmQtY29sb3I6ICNlZWY3ZGQ7XG59XG4vKiBQYXNzd29yZCBhbGVydCBzdHlsZXMgKi9cblxuLyogU3R5bGUgZm9yIHJlZCBmb250ICovXG4ucmVkdGV4dCB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Y29sb3I6ICNGRjAwMDA7XG59XG4vKiBTdHlsZSBmb3IgcmVkIGZvbnQgKi9cblxuXG4uZGVfaWRlbnRpZmljYXRpb25fc3RhdHVzX21lc3NhZ2Uge1xuXHR3aWR0aDogNTAlO1xuXHRib3JkZXI6IDFweCBzb2xpZCAjMDAwMEZGO1xufVxuXG4uZGVfaWRlbnRpZmljYXRpb25faW5wdXRfY29udHJvbHNfYm94IHtcblx0d2lkdGg6IDEwMCU7XG5cdGJvcmRlcjogMXB4IHNvbGlkICMwMDAwRkY7XG59XG5cbi5kZV9pZF91cGdyYWRlX2xvZ2luIHtcblx0d2lkdGg6IDQwJTtcblx0Ym9yZGVyOiAxcHggc29saWQgQmxhY2s7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbmJvZHkuYWRtaW4tbGF5b3V0IGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGZsb2F0OiBub25lO1xufVxuLyogZXJyb3IgbWVzc2FnZSA9IG5ldyB2YWxpZGF0aW9uICovXG5cbi5lcnJvci1tZXNzYWdlIHtcblx0Y29sb3I6IHJlZDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4uZXJyb3ItYm9yZGVyIHtcblx0Ym9yZGVyOiAxcHggc29saWQgcmVkICFpbXBvcnRhbnQ7XG59XG4udGlueWxvZ29jb250YWluZXIge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJvcmRlcjogbm9uZTtcbn1cbi50aW55bG9nb3BuZyB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0d2lkdGg6IDQ0cHg7XG5cdGhlaWdodDogMjJweDtcbn1cbiIsIi8qIC0tLS0tLS0gVGhlcmFweSBncm91cHMgc3R5bGluZyAtLS0tLS0tLS0gKi9cblxuLmdyb3VwLXJvdyB7XG5cdG1hcmdpbi10b3A6IDE1cHg7XG59XG4uY29udGFpbmVyLWdyb3VwIHtcblx0bWFyZ2luLXRvcDogYXV0bztcbn1cbi5ncm91cC1lcnJvci1tc2cge1xuXHRjb2xvcjogI2ZmNjY0Mztcbn1cbi5ncm91cC1zdWNjZXNzLW1zZyB7XG5cdGNvbG9yOiAjNGM4MDI5O1xufVxuI2NvbXBvbmVudC1ib3JkZXIge1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCAjMjY3MmVjO1xuXHR3aWR0aDogMTAwJTtcblx0bWluLWhlaWdodDogMTUwcHg7XG5cdHBhZGRpbmc6IDEwcHg7XG59XG4jbWFpbi1jb21wb25lbnQgdWwge31cbi5mbG9hdC1yaWdodCB7XG5cdGZsb2F0OiByaWdodDtcbn1cbi5ydGwgLmZsb2F0LXJpZ2h0IHtcblx0ZmxvYXQ6IGxlZnQ7XG59XG50YWJsZS5kYXRhVGFibGUjdGhlcmFweV9ncm91cHNfbGlzdCB0Ym9keSB0ZCB7XG5cdHBhZGRpbmctbGVmdDogMjBweDtcblx0cGFkZGluZy1yaWdodDogMjBweDtcblx0Zm9udC1zaXplOiAxNXB4O1xufVxuLnRoZXJhcHlfZ3JvdXAgI3RoZXJhcHlfZ3JvdXBzX2xpc3RfY29udGFpbmVyIHtcblx0bWFyZ2luLXRvcDogaW5pdGlhbDtcblx0d2lkdGg6IGluaXRpYWw7XG59XG4udGhlcmFweV9ncm91cCAjdGhlcmFweV9ncm91cHNfbGlzdF9jb250YWluZXIgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuXHRib3JkZXItY29sb3I6ICNjY2M7XG59XG4udGhlcmFweV9ncm91cCAjdGhlcmFweV9ncm91cHNfbGlzdF9jb250YWluZXIgaW5wdXRbdHlwZT1udW1iZXJdIHtcblx0LW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG4udGhlcmFweV9ncm91cCAjdGhlcmFweV9ncm91cHNfbGlzdF9jb250YWluZXIgaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLCAudGhlcmFweV9ncm91cCAjdGhlcmFweV9ncm91cHNfbGlzdF9jb250YWluZXIgaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHRtYXJnaW46IDA7XG59XG4udGhlcmFweV9ncm91cCAuZGVsZXRlX2J0biBidXR0b24sIC50aGVyYXB5X2dyb3VwIC5kZWxldGVfYnRuIHNwYW4ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZWYzOTM1O1xuXHRmb250LXNpemU6IDE1cHg7XG5cdHBhZGRpbmc6IDJweCAxMHB4O1xufVxuLnRoZXJhcHlfZ3JvdXAgLmRlbGV0ZV9idG4gYSB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Y29sb3I6IHdoaXRlO1xufVxuLnRoZXJhcHlfZ3JvdXAgI3RoZXJhcHlfZ3JvdXBzX2xpc3RfY29udGFpbmVyIC5mYWlsZWRfbWVzc2FnZSB7XG5cdGZvbnQtc2l6ZTogMTVweDtcbn1cbiN1cGRhdGVQYXJ0aWNpcGFudHMge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4jYWRkUGFydGljaXBhbnQge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwcHg7XG5cdHotaW5kZXg6IDEwMDtcbn1cbiNhZGQtcGFydGljaXBhbnQtZm9ybSB7XG5cdHRyYW5zaXRpb246IG1heC1oZWlnaHQgMXMgZWFzZS1vdXQ7XG5cdG1heC1oZWlnaHQ6IDA7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG4uc2hvd0FkZEZvcm0ge1xuXHRtYXgtaGVpZ2h0OiAyNTBweCAhaW1wb3J0YW50O1xufVxuLmdyb3Vwcy1lcnJvci1tc2cge1xuXHRjb2xvcjogI2ZmNTQyZDtcblx0Zm9udC1zaXplOiAxLjNlbTtcblx0cGFkZGluZzogOHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udGhlcmFweV9ncm91cCAuZXZlbnRfZGV0YWlscyB7XG5cdGZvbnQtc2l6ZTogMTRweDtcbn1cbiNhZGRfcGFydGljaXBhbnQge1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRtYXJnaW4tbGVmdDogMTBweDtcbn1cbiNhZGRfcGFydGljaXBhbnQgLnBhdGllbnRfd3JhcCwgI2FkZF9wYXJ0aWNpcGFudCAuY29tbWVudF93cmFwLCAjYWRkX3BhcnRpY2lwYW50IC5idXR0b25fd3JhcCB7XG5cdG1hcmdpbi10b3A6IDdweDtcbn1cbiNhZGRfcGFydGljaXBhbnQgLnBhdGllbnRfd3JhcCwgI2FkZF9wYXJ0aWNpcGFudCAuY29tbWVudF93cmFwIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuI2FkZF9wYXJ0aWNpcGFudCAuYnV0dG9uX3dyYXAgaW5wdXQge1xuXHRmbG9hdDogbm9uZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuI2FkZF9wYXJ0aWNpcGFudF9lbGVtZW50IC5pbnB1dF9sYWJlbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuI2FkZF9wYXJ0aWNpcGFudF9lbGVtZW50IC5lcnJvcl93cmFwIC5lcnJvciB7XG5cdGNvbG9yOiByZWQ7XG59XG4jZ3JvdXBfYXR0ZW5kYW5jZV9mb3JtX3RhYmxlIHRib2R5IHRkIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuI2ZpbGVfdHlwZV93aGl0ZWxpc3QgLnN1YmplY3QtYmxhY2stbGlzdCwgI2ZpbGVfdHlwZV93aGl0ZWxpc3QgLnN1YmplY3Qtd2hpdGUtbGlzdCB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0d2lkdGg6IDQyMHB4O1xuXHRmbG9hdDogbGVmdDtcbn1cbiNmaWxlX3R5cGVfd2hpdGVsaXN0IHtcblx0aGVpZ2h0OiA0MDBweDtcblx0cGFkZGluZzogMTBweDtcbn1cbiN3aGl0ZS1saXN0LCAjYmxhY2stbGlzdCB7XG5cdG1hcmdpbjogMTBweDtcblx0cGFkZGluZzogMTBweDtcblx0d2lkdGg6IDQwMHB4O1xufVxuI2ZpbGVfdHlwZV93aGl0ZWxpc3Qgc2VsZWN0IHtcblx0aGVpZ2h0OiAyNTBweDtcblx0cGFkZGluZzogMDtcbn1cbiNmaWxlX3R5cGVfd2hpdGVsaXN0IG9wdGlvbiB7XG5cdHBhZGRpbmc6IDRweCAxMHB4IDRweCAxMHB4O1xufVxuI2ZpbGVfdHlwZV93aGl0ZWxpc3Qgb3B0aW9uOmhvdmVyIHtcblx0YmFja2dyb3VuZDogI0VFRUVFRTtcbn1cbiNmaWxlX3R5cGVfd2hpdGVsaXN0IC5zdWJqZWN0LWluZm8tYXJyb3dzIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR3aWR0aDogNThweDtcblx0bWFyZ2luOiAxMzBweCAzMHB4IDMwcHggMzBweDtcblx0ZmxvYXQ6IGxlZnQ7XG59XG4jZmlsZV90eXBlX3doaXRlbGlzdCAuc3ViamVjdC1pbmZvLXNhdmUge1xuXHR3aWR0aDogNjBweDtcblx0bWFyZ2luOiAxNzBweCAzMHB4IDMwcHggMzBweDtcblx0ZmxvYXQ6IGxlZnQ7XG59XG4jZmlsZV90eXBlX3doaXRlbGlzdCBpbnB1dFt0eXBlPWJ1dHRvbl0ge1xuXHRmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuXHR3aWR0aDogNjNweDtcbn1cbiNmaWxlX3R5cGVfd2hpdGVsaXN0ICNhZGQtbWFudWFsbHkge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2tcbn1cbiNmaWxlX3R5cGVfd2hpdGVsaXN0ICNhZGQtbWFudWFsbHktaW5wdXQge1xuXHR3aWR0aDogMTkwcHg7XG59XG4jZmlsZV90eXBlX3doaXRlbGlzdCAudG9wLWxpc3Qge1xuXHRtYXJnaW46IDIwcHggMjBweCAycHggMjBweDtcbn1cbiIsIi8qIHN0eWxlcyB0YWtlbiBvdXQgb2YgdGVtcGxhdGVzL2RvY3VtZW50cy9nZW5lcmFsX2xpc3QuaHRtbCAqL1xuXG4jZG9jdW1lbnRzX2xpc3Qge1xuXHR3aWR0aDogMjklO1xuXHRoZWlnaHQ6IDk1JTtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdGZsb2F0OiBsZWZ0O1xuXHRib3JkZXItcmlnaHQ6IGRhc2hlZCAxcHg7XG5cblx0dGQge1xuXHRcdGZvbnQtc2l6ZTogOHB0O1xuXHR9XG5cblx0YSB7XG5cdFx0Zm9udC1zaXplOiA4cHQ7XG5cdH1cblx0LnRyZWVNZW51RGVmYXVsdCB7XG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHR9XG5cdC50cmVlTWVudUJvbGQge1xuXHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxufVxuXG4jZG9jdW1lbnRzX2FjdGlvbnMge1xuXHRwYWRkaW5nLXRvcDogMTBweDtcblx0d2lkdGg6IDcwJTtcblx0aGVpZ2h0OiA5NSU7XG5cdGZsb2F0OiByaWdodDtcblx0b3ZlcmZsb3c6IGF1dG87XG5cblx0aWZyYW1lIHtcblx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogNjAwcHg7XG5cdFx0b3ZlcmZsb3c6IGF1dG87XG5cdH1cblx0Zm9ybSB7XG5cdFx0bWFyZ2luOiAwcHg7XG5cdFx0cGFkZGluZzogMHB4O1xuXHR9XG5cdHRhYmxlIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDk1JTtcblx0fVxufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUaGlzIHNlY3Rpb24gcmVsYXRlcyB0byB0aGUgY3VzdG9tIGxheW91dHMgdGhhdCBjYW4gYmUgbWFkZVxuICogdXNpbmcgdGhlIE9FTVIgdG9vbCBpbiB0aGUgQWRtaW4gc2VjdGlvbi4gRm9yIGV4YW1wbGUsIHRoZVxuICogUGF0aWVudCBEZW1vZ3JhcGhpY3MgYXJlIGEgY3VzdG9tIGxheW91dC5cbiAqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuI0RFTSAuZ3JvdXBuYW1lIHtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGNvbG9yOiAjMDgwO1xuXHRmb250LXNpemU6IDAuOGVtO1xuXHRwYWRkaW5nLXJpZ2h0OiA1cHg7XG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4jREVNIC5sYWJlbF9jdXN0b20ge1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Zm9udC1zaXplOiAwLjhlbTtcblx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG59XG4jREVNIC5kYXRhIHtcblx0Zm9udC1zaXplOiAwLjhlbTtcblx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0cGFkZGluZy1yaWdodDogNnB4O1xuXHQvKjMwcHggLSBpZSA2IGZpeCovXG59XG4iLCIvKiBQYXRpZW50IEhpc3RvcnkgKi9cbiNISVMgLmdyb3VwbmFtZSB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRjb2xvcjogIzA4MDtcblx0Zm9udC1zaXplOiA5cHQ7XG5cdHBhZGRpbmctcmlnaHQ6IDFweDtcblx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0aGVpZ2h0OiAyZW07XG59XG4jSElTIC5sYWJlbF9jdXN0b20ge1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Zm9udC1zaXplOiA5cHQ7XG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4jSElTIC5kYXRhIHtcblx0Zm9udC1zaXplOiA5cHQ7XG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFBhdGllbnQgTm90ZXNcbiAqIHNlZW4gaW4gdGhlIHBhdGllbnQgc3VtbWFyeSBhbmQgbm90ZXMgc2NyZWVuc1xuICo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuI3Bub3RlcyAuYmlsbGluZyB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNkZmQ7XG59XG4jcG5vdGVzIC5oaWdobGlnaHQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuI3Bub3RlcyB0YWJsZSB7XG5cdGJvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtcbn1cbiNwbm90ZXMgLm5vdGVyb3cge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG4jcG5vdGVzIC5ub3Rlcm93IHRkIHtcblx0Ym9yZGVyLWJvdHRvbToxcHggZGFzaGVkIGJsYWNrO1xuXHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRwYWRkaW5nOiA1cHg7XG5cdG1hcmdpbjogNXB4O1xufVxuI3Bub3Rlc19wc19leHBhbmQgIGRpdi50YWIgdGFibGUgdGQge1xuXHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBQYXRpZW50IFBhc3QgRW5jb3VudGVycyBhbmQgRG9jdW1lbnRzXG4gKiBzZWVuIGluIHRoZSBwYXRpZW50IGVuY291bnRlciBzY3JlZW5cbiAqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiNwYXRpZW50X3Bhc3RlbmMge1xuXHR3aWR0aDogMTAwJTtcbn1cbiNwYXRpZW50X3Bhc3RlbmMgLmJpbGxpbmdfbm90ZSB7XG5cdHdpZHRoOiAyNSU7XG59XG4jcGF0aWVudF9wYXN0ZW5jIC5iaWxsaW5nX25vdGVfdGV4dCB7XG5cdHBhZGRpbmc6IDVweDtcblx0Ym9yZGVyOiAycHggb3V0c2V0IGJsYWNrO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyZXk7XG59XG4jcGF0aWVudF9wYXN0ZW5jIC5iaWxsaW5nX25vdGVfdGV4dF9oaWdobGlnaHQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmNWQxO1xufVxuI3BhdGllbnRfcGFzdGVuYyB0YWJsZSB7XG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cdHdpZHRoOiAxMDAlO1xufVxuI3BhdGllbnRfcGFzdGVuYyB0ciB7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cbiNwYXRpZW50X3Bhc3RlbmMgdGQge1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgYmxhY2s7XG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4jcGF0aWVudF9wYXN0ZW5jIHRoIHtcblx0dGV4dC1hbGlnbjogbGVmdDtcbn1cbiNwYXRpZW50X3Bhc3RlbmMgI3Rvb2x0aXBkaXYge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdpZHRoOiA1MDBweDtcblx0Ym9yZGVyOiAxcHggc29saWQgYmxhY2s7XG5cdHBhZGRpbmc6IDJweDtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZmZhYTtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHR6LWluZGV4OiAxMDAwO1xufVxuI3BhdGllbnRfcGFzdGVuYyAuaGlnaGxpZ2h0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbiNwYXRpZW50X3Bhc3RlbmMgLnRvb2x0aXAge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XG5cdGJhY2tncm91bmQ6ICNmN2Y1ZDE7XG5cdHBhZGRpbmc6IDJweCA1cHg7XG5cdGNvbG9yOiAjMzMzO1xuXHRkaXNwbGF5OiBub25lO1xufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBQYXRpZW50IFN0YXRzXG4gKiBzZWVuIGluIHRoZSBwYXRpZW50IHN0YXRzIHNjcmVlbnNcbiAqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiNwYXRpZW50X3N0YXRzIHtcblx0cGFkZGluZzogMTBweDtcbn1cbiNwYXRpZW50X3N0YXRzIHRhYmxlIHtcblx0d2lkdGg6IDEwMCU7XG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG4jcGF0aWVudF9zdGF0cyB0ZCB7XG5cdHBhZGRpbmc6IDNweDtcbn1cbiNwYXRpZW50X3N0YXRzIC5zdGF0cm93IHtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuI3BhdGllbnRfc3RhdHMgLmhlYWQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiNjY2NjY2M7XG5cdHRleHQtYWxpZ246Y2VudGVyO1xufVxuI3BhdGllbnRfc3RhdHMgLmRldGFpbCB7XG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4jcGF0aWVudF9zdGF0cyAuYnRuIHtcblx0YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbn1cbiNwYXRpZW50X3N0YXRzIC5iZzEge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkZGZmO1xufVxuI3BhdGllbnRfc3RhdHMgLmJnMiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmRkZGQ7XG59XG4jcGF0aWVudF9zdGF0cyAuY2VudGVyIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBQYXRpZW50IFN0YXRzIFN1bW1hcnlcbiAqIHNlZW4gaW4gdGhlIHBhdGllbnQgc3VtbWFyeSBzY3JlZW5cbiAqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuI3BhdGllbnRfc3RhdHNfc3VtbWFyeSB0YWJsZSB7XG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG4jcGF0aWVudF9zdGF0c19zdW1tYXJ5IC5ub2VuZF9ub3JldHVybiB7XG5cdGNvbG9yOiAjZWUwMDAwO1xufVxuI3BhdGllbnRfc3RhdHNfc3VtbWFyeSAubm9lbmQge1xuXHRjb2xvcjogI2RkNTUwMDtcbn1cbiNwYXRpZW50X3N0YXRzX3N1bW1hcnkgLm5vcmV0dXJuIHtcblx0Y29sb3I6ICMwMDAwZmY7XG59XG4jcGF0aWVudF9zdGF0c19zdW1tYXJ5IC50aXRsZSB7XG5cdGZvbnQtc2l6ZTogMS4xZW07XG59XG4jcGF0aWVudF9zdGF0c19pc3N1ZXMge1xuXHR3aWR0aDogMTAwJTtcbn1cbiNwYXRpZW50X3N0YXRzX3NwcmVhZHNoZWV0cyB7XG5cdHdpZHRoOiAxMDAlO1xufVxuI3BhdGllbnRfc3RhdHNfaW1tIHtcblx0d2lkdGg6IDEwMCU7XG59XG4jcGF0aWVudF9zdGF0c19wcmVzY3JpcHRpb25zIHtcblx0d2lkdGg6IDEwMCU7XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFBhdGllbnQgUmVwb3J0c1xuICogc2VlbiBpbiB0aGUgcGF0aWVudCByZXBvcnRzIHNjcmVlbnNcbiAqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiNwYXRpZW50X3JlcG9ydHMge1xuXHR3aWR0aDogMTAwJTtcbn1cbiNwYXRpZW50X3JlcG9ydHMgLmlzc3VlcyB7XG5cdHBhZGRpbmctcmlnaHQ6IDMwcHg7XG59XG4jcGF0aWVudF9yZXBvcnRzIC5pc3N1ZXMgdGFibGUge1xuXHRtYXJnaW46IDEwcHggMHB4IDEwcHggMHB4O1xufVxuI3BhdGllbnRfcmVwb3J0cyAuaXNzdWVzIHRkIHtcblx0cGFkZGluZzogMnB4O1xufVxuI3BhdGllbnRfcmVwb3J0cyAuZW5jb3VudGVycyB0ZCB7XG5cdHBhZGRpbmc6IDJweDtcbn1cbiNwYXRpZW50X3JlcG9ydHMgLmVuY291bnRlcl9mb3JtcyB7XG5cdG1hcmdpbjogNXB4IDE1cHggNXB4IDE1cHg7XG59XG4jcGF0aWVudF9yZXBvcnRzIHRkIHtcblx0dmVydGljYWwtYWxpZ246IHRvcDtcbn1cbiNwYXRpZW50X3JlcG9ydHMgdWwge1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFJlcG9ydCAtIEN1c3RvbVxuICogc2VlbiBhcyB0aGUgcGF0aWVudCByZXBvcnQgKGN1c3RvbV9yZXBvcnQucGhwKVxuICo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuI3JlcG9ydF9jdXN0b20ge1xuXHR3aWR0aDoxMDAlO1xufVxuI3JlcG9ydF9jdXN0b20gaHIge1xuXHRib3JkZXI6IDJweCBkb3R0ZWQgYmxhY2s7XG59XG4jcmVwb3J0X2N1c3RvbSAuYmlsbGluZyB7XG5cdG1hcmdpbjogNXB4O1xuXHRwYWRkaW5nOiA1cHg7XG59XG4jcmVwb3J0X2N1c3RvbSBoMSB7XG5cdGZvbnQtc2l6ZTogMTIwJTtcblx0bWFyZ2luOiAgMHB4IDBweCA1cHggMHB4O1xuXHRwYWRkaW5nOiAwcHg7XG59XG4jcmVwb3J0X2N1c3RvbSAuaW1tdW5pemF0aW9ucyB7XG5cdG1hcmdpbjogNXB4O1xuXHRwYWRkaW5nOiA1cHg7XG59XG4jcmVwb3J0X2N1c3RvbSAubm90ZXMge1xuXHRtYXJnaW46IDVweDtcblx0cGFkZGluZzogNXB4O1xufVxuI3JlcG9ydF9jdXN0b20gLnRyYW5zYWN0aW9ucyB7XG5cdG1hcmdpbjogNXB4O1xuXHRwYWRkaW5nOiA1cHg7XG59XG4jcmVwb3J0X2N1c3RvbSAuY29tbXVuaWNhdGlvbnMge1xuXHRtYXJnaW46IDVweDtcblx0cGFkZGluZzogNXB4O1xufVxuI3JlcG9ydF9jdXN0b20gLmRvY3VtZW50cyB7XG5cdG1hcmdpbjogNXB4O1xuXHRwYWRkaW5nOiA1cHg7XG59XG4jcmVwb3J0X2N1c3RvbSAuZGVtb2dyYXBoaWNzIHtcblx0bWFyZ2luOiA1cHg7XG5cdHBhZGRpbmc6IDVweDtcbn1cbiNyZXBvcnRfY3VzdG9tIC5pbnN1cmFuY2Uge1xuXHRtYXJnaW46IDVweDtcblx0cGFkZGluZzogNXB4O1xufVxuI3JlcG9ydF9jdXN0b20gLmhpc3Rvcnkge1xuXHRtYXJnaW46IDVweDtcblx0cGFkZGluZzogNXB4O1xufVxuI3JlcG9ydF9jdXN0b20gLmlzc3VlIHtcblx0bWFyZ2luLWxlZnQ6IDIwcHg7XG59XG4jcmVwb3J0X2N1c3RvbSAuaXNzdWVfdHlwZSB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRwYWRkaW5nOiA1cHggMHB4IDVweCAwcHg7XG59XG4jcmVwb3J0X2N1c3RvbSAuaXNzdWVfZGlhZyB7XG5cdG1hcmdpbjogMHB4IDIwcHggMHB4IDIwcHg7XG59XG4jcmVwb3J0X2N1c3RvbSAuZW5jb3VudGVyIHtcblx0d2lkdGg6IDEwMCU7XG5cdGJvcmRlci10b3A6MnB4IGRvdHRlZCBibGFjaztcblx0cGFkZGluZzogMTBweCA1cHggMTBweCA1cHg7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG59XG4jcmVwb3J0X2N1c3RvbSAuZW5jb3VudGVyIGgxIHtcblx0Zm9udC1zaXplOiAxNDAlO1xuXHRtYXJnaW46IDBweDtcblx0cGFkZGluZzogMHB4O1xufVxuI3JlcG9ydF9jdXN0b20gLmVuY291bnRlcl9mb3JtIHtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIGdyYXk7XG59XG4iLCIjc2RkbSBsaSB7XG5cdG1hcmdpbjogMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0ZmxvYXQ6IGxlZnQ7XG5cdGJhY2tncm91bmQ6ICNmMGYwZjA7XG59XG4jc2RkbSBsaSBhIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbjogMCAxcHggMCAwO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4jc2RkbSBsaSBhOmhvdmVyIHtcblx0YmFja2dyb3VuZDogI2Q3ZDdkNztcbn1cbiNzZGRtIGRpdiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xufVxuI3NkZG0gZGl2IGEge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDVweCAxMHB4O1xuXHR3aWR0aDogMTcwcHg7XG5cdHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Zm9udC1zaXplOiAwLjhlbTtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbiNzZGRtIGRpdiBhOmhvdmVyIHtcblx0Y29sb3I6ICNmZmZmZmY7XG59XG4iLCIvKiBzdHlsZXMgdGFrZW4gb3V0IG9mIHRlbXBsYXRlcy9yZXBvcnQvZ2VuZXJhbF9kZWZhdWx0Lmh0bWwgKi9cbiNyZXBvcnRzX2xpc3QgdGQge1xuXHRmb250LXNpemU6MC44ZW07XG59XG4jcmVwb3J0c19saXN0IGEge1xuXHRmb250LXNpemU6MC44ZW07XG59XG5cbi8qXG4qIFJFUE9SVFNcbiovXG5cbiNyZXBvcnRfcGFyYW1ldGVycyB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7XG5cdG1hcmdpbi10b3A6MTBweDtcbn1cblxuI3JlcG9ydF9wYXJhbWV0ZXJzIHRhYmxlIHtcblx0Ym9yZGVyOiBzb2xpZCAxcHg7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuI3JlcG9ydF9wYXJhbWV0ZXJzIHRhYmxlIHRkIHtcblx0cGFkZGluZzogNXB4O1xufVxuXG4jcmVwb3J0X3BhcmFtZXRlcnMgdGFibGUgdGFibGUge1xuXHRib3JkZXI6IDBweDtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblx0Zm9udC1zaXplOiAwLjhlbTtcbn1cblxuI3JlcG9ydF9wYXJhbWV0ZXJzIHRhYmxlIHRhYmxlIHRkLmxhYmVsX2N1c3RvbSB7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4jcmVwb3J0X3Jlc3VsdHMgdGFibGUge1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgYmxhY2s7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBibGFjaztcblx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCBibGFjaztcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgYmxhY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRtYXJnaW4tdG9wOiAxcHg7XG59XG4jcmVwb3J0X3Jlc3VsdHMgdGFibGUgdGhlYWQge1xuXHRwYWRkaW5nOiA1cHg7XG5cdGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcblx0YmFja2dyb3VuZC1jb2xvcjogI2RkZDtcblx0dGV4dC1hbGlnbjpsZWZ0O1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Zm9udC1zaXplOiAwLjdlbTtcbn1cbiNyZXBvcnRfcmVzdWx0cyB0YWJsZSB0aCB7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBibGFjaztcblx0cGFkZGluZzogNXB4O1xufVxuI3JlcG9ydF9yZXN1bHRzIHRhYmxlIHRkIHtcblx0cGFkZGluZzogNXB4O1xuXHRib3JkZXItYm90dG9tOiAxcHggZGFzaGVkO1xuXHRmb250LXNpemU6IDAuOGVtO1xufVxuLnJlcG9ydF90b3RhbHMgdGQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjNzdmZjc3O1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cbiIsIi8qKlxuKiBMaXN0LXRhYmxlIGZvcm1hdHRpbmdcbioqL1xuLnNob3dib3JkZXIge1xuXHR3aWR0aDogNjUwcHg7XG59XG5cbi5zaG93Ym9yZGVyIHRkIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjMDAwMDAwO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uc2hvd2JvcmRlcl9oZWFkIHRoIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDAwMDA7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5zaG93bm9ib3JkZXIgdGQge1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uc2hvd2JvcmRlcl9sb25nIHtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi5zaG93Ym9yZGVyX2xvbmcgdHIgdGQge1xuXHRib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICMwMDAwMDA7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG4iLCIvKlxuICogQ1NTIEJVVFRPTlNcbiAqL1xuLmNzc19idXR0b25fc21hbGwge1xuICAgIGJhY2tncm91bmQ6ICMyNjcyZWM7XG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgLyogc2xpZGluZyBkb29ycyBwYWRkaW5nICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHBhZGRpbmc6IDVweCAxMnB4IDVweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC1zaXplOiAwLjdlbTtcbn1cbi5jc3NfYnV0dG9uX3NtYWxsIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLmNzc19idXR0b25fc21hbGw6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICMxMDUwYjY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY3NzX2J1dHRvbiwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxpbnB1dFt0eXBlPVwic3VibWl0XCJdLCBidXR0b24ge1xuXHRiYWNrZ3JvdW5kOiAjMjY3MmVjO1xuXHRjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuXHRkaXNwbGF5OiBibG9jaztcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1hcmdpbi1yaWdodDogM3B4O1xuXHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHQvKiBzbGlkaW5nIGRvb3JzIHBhZGRpbmcgKi9cblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRwYWRkaW5nOiA1cHggMTJweCA1cHg7XG5cdGJvcmRlcjogbm9uZTtcblxuXHQuY3NzX2J1dHRvbl9zbWFsbCB7XG5cdFx0Zm9udC1zaXplOiAwLjdlbTtcblx0fVxufVxuLmNzc19idXR0b24gc3BhbiwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSBzcGFuLCBidXR0b24gc3BhbiB7XG5cdGRpc3BsYXk6IGlubGluZTtcbn1cbi5jc3NfYnV0dG9uW2hyZWYqPVwiZGVsZXRlclwiXSwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXVtocmVmKj1cImRlbGV0ZXJcIl0sIGJ1dHRvbltocmVmKj1cImRlbGV0ZXJcIl0ge1xuXHRiYWNrZ3JvdW5kOiByZWQgIWltcG9ydGFudDtcbn1cbi5jc3NfYnV0dG9uOmhvdmVyLCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmhvdmVyLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLCBidXR0b246aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiAjMTA1MGI2O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uY3NzX2J0biB7XG5cdGJhY2tncm91bmQ6ICMyNjcyZWM7XG5cdGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmbG9hdDogbGVmdDtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0bWFyZ2luLXJpZ2h0OiAzcHg7XG5cdHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdC8qIHNsaWRpbmcgZG9vcnMgcGFkZGluZyAqL1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHBhZGRpbmc6IDVweCAxMnB4IDVweDtcblx0Ym9yZGVyOiBub25lO1xufVxuLmNzc19idG46aG92ZXJ7XG5cdGNvbG9yOiBvcmFuZ2VyZWQ7XG59XG5cbi5tb2RhbC1mb290ZXIgPiBidXR0b24ge1xuXHRmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uYnRuLWRlZmF1bHQge1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMDUpICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiByZ2JhKDAsMCwwLDAuODcpICFpbXBvcnRhbnQ7XG59XG5cbi5idG4tbGluayB7XG5cdGNvbG9yOiAjNDQ0ICFpbXBvcnRhbnQ7XG59XG5cbmlucHV0W3R5cGU9XCJidXR0b25cIl1bc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmNTVcIl0ge1xuXHRiYWNrZ3JvdW5kOiAjMjY3MmVjICFpbXBvcnRhbnQ7XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcblx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0Ym9yZGVyOiAxcHggc29saWQgIzQ0NDQ0NDtcblx0cGFkZGluZzogM3B4O1xuXHRtYXJnaW46IDNweDtcbn1cbiJdfQ== */

@DreaminDani
Copy link
Author

@bradymiller i think this is ready to merge, unless you'd like me to commit the minified css?

@bradymiller
Copy link
Sponsor Member

@d3sandoval , ask and you shall receive :)
Thanks for this awesome piece of work!
Looking forward to trying it out.
We will revisit the minification in 6 weeks; can further discuss this on the forum thread.
-brady

@bradymiller bradymiller merged commit 6ee0a15 into openemr:master May 23, 2018
@DreaminDani
Copy link
Author

@bradymiller great! Feel free to reach out if you need any help working with the new SCSS

@DreaminDani DreaminDani deleted the styleguide branch May 28, 2018 16:31
sloboy pushed a commit to sloboy/openemr that referenced this pull request Sep 2, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants