www.pepperl-fuchs.com Open in urlscan Pro
217.151.151.26  Public Scan

Submitted URL: http://www.pepperl-fuchs.us/opt-out
Effective URL: https://www.pepperl-fuchs.com/usa/en/26486.htm?utm_source=Landing_Page&utm_medium=direct&utm_term=opt-out&utm_campaign=Landing...
Submission: On March 11 via api from US — Scanned from US

Form analysis 3 forms found in the DOM

Name: searchGET /usa/en/4507.htm

<form id="search" name="search" action="/usa/en/4507.htm" method="GET">
  <!-- START INPUT / BUTTON -->
  <label for="open-search" style="right: 139px;"></label>
  <input type="checkbox" id="open-search">
  <span class="search-icon" style="right: 147px;"><i class="fal fa-search"></i></span>
  <label for="open-search" id="close-search" style="right: 139px;"></label>
  <span class="search-icon-close"><i class="fas fa-times"></i></span>
  <div class="search-dropdown">
    <input type="search" name="searchterm" id="search-field" class="scrollFix" autofocus="" onfocus="if(this.value == 'value') { this.value = ''; }" value="" placeholder="Your Keyword">
    <input type="hidden" name="start" value="0">
    <input type="hidden" name="rows" value="10">
    <button type="submit" value="">
      <i class="fal fa-search"></i>
    </button>
  </div>
  <!-- ENDE INPUT / BUTTON -->
  <div class="ce-search-popup">
    <div class="item"><input type="radio" name="modifier" value="beginswith" id="beginswith" checked="checked"> <label for="beginswith">Begins with ...</label></div>
    <div class="item"><input type="radio" name="modifier" value="contains" id="contains"> <label for="contains">Contains ...</label></div>
  </div>
</form>

Name: searchGET /usa/en/4507.htm

<form id="search" name="search" action="/usa/en/4507.htm" method="GET">
  <!-- START INPUT / BUTTON -->
  <label></label>
  <input type="checkbox" id="open-search">
  <label id="close-search"></label>
  <span class="search-icon-close"><i class="fas fa-times"></i></span>
  <div class="search-dropdown">
    <input type="search" name="searchterm" id="search-field" class="scrollFix" autofocus="" onfocus="if(this.value == 'value') { this.value = ''; }" value="" placeholder="Your Keyword">
    <input type="hidden" name="start" value="0">
    <input type="hidden" name="rows" value="10">
    <button type="submit" value="">
      <i class="fal fa-search"></i>
    </button>
  </div>
  <!-- ENDE INPUT / BUTTON -->
  <div class="ce-search-popup">
    <div class="item"><input type="radio" name="modifier" value="beginswith" id="beginswith" checked="checked"> <label>Begins with ...</label></div>
    <div class="item"><input type="radio" name="modifier" value="contains" id="contains"> <label>Contains ...</label></div>
  </div>
</form>

POST https://pfdcp.pepperl-fuchs.com/frontend-server/form/process/1850/current/?lang=en&frid=6c044f34-d524-4c73-a438-b89319b13da2&sid=R1xNMC99wkvdKs%2BP%2BTY9vV21mCoxPWuMQhB995iWUjHtF3rSrZn%2B%2BjO7473SozskoOzikZPBfl4EtRDXq1GbXA%3D%3D

<form
  action="https://pfdcp.pepperl-fuchs.com/frontend-server/form/process/1850/current/?lang=en&amp;frid=6c044f34-d524-4c73-a438-b89319b13da2&amp;sid=R1xNMC99wkvdKs%2BP%2BTY9vV21mCoxPWuMQhB995iWUjHtF3rSrZn%2B%2BjO7473SozskoOzikZPBfl4EtRDXq1GbXA%3D%3D"
  style="max-width:550px;min-width:100px;" method="post" enctype="multipart/form-data" class="xm-form modern">
  <div class="loading" style="display: none;">
    <div class="animation"></div>
  </div><noscript>
    <div class="jsinfo"> Zur optimalen Darstellung des Formulars ist aktiviertes JavaScript erforderlich! <br> For an optimal representation of the form activated JavaScript is required! </div>
  </noscript><noscript>
    <style type="text/css">
      INPUT[TYPE=BUTTON],
      BUTTON:not([TYPE=submit]) {
        display: none !important;
      }

      .jsinfo {
        border: 1px solid red;
        text-align: center;
        font-family: Arial;
        padding: 4px;
        margin: 0 10px;
        background-color: #efefef;
        font-weight: bold;
      }

      .XPage {
        display: block;
      }

      form.xm-loading .loading {
        display: none !important;
      }
    </style>
  </noscript>
  <div class="xm-content error-dynamic-view">
    <div class="xm-item-div  label-none CXHeader" style="" cn="XHeader" xi="xi-header-1" xn="header1">
      <div id="xi-header-1" name="header1" style="max-width:550px; min-width:300px; " class="XItem XHeader" data-xm-appendable="xi-header-1"></div>
      <div class="xm-error-container label-none">
        <div class="xm-error-icon label-none">
          <div class="xm-error-text label-none xm-text"></div>
        </div>
      </div>
    </div>
    <div class="xm-item-div  label-none CXPage" style="display: inline-table;" cn="XPage" xi="xm-item-XPage-1" xn="p1">
      <div class="header" style="max-width:550px;"></div>
      <div id="xm-item-XPage-1" name="p1" style="max-width:550px; min-width:100px; " class="XItem XPage" data-xm-appendable="xm-item-XPage-1">
        <div class="xm-item-div  label-none CXContainer" style=" width:100%; " cn="XContainer" xi="xi-div-2" xn="div2">
          <div id="xi-div-2" name="div2" class="XItem XContainer" style="min-height:25px; " data-xm-appendable="xi-div-2">
            <div class="xm-item-div  label-none CXSpan" style=" width:100%; " cn="XSpan" xi="xi-XSpan-4" xn="txt"><span id="xi-XSpan-4" class="XItem XSpan" name="txt"><span>Enter your information below and we'll ensure you are unsubscribed from our
                  messages.</span><b><span><br></span></b></span>
              <div class="xm-error-container label-none">
                <div class="xm-error-icon label-none">
                  <div class="xm-error-text label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div  label-none CXSpacer" style=" width:100%; " cn="XSpacer" xi="xi-sp-1" xn="sp1">
              <div id="xi-sp-1" name="sp1" style="min-height:25px; " class="XItem XSpacer"></div>
              <div class="xm-error-container label-none">
                <div class="xm-error-icon label-none">
                  <div class="xm-error-text label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div label-followup CXTextField" style=" width:100%; " cn="XTextField" xi="xi-XTextField-9" xn="tf_firstname"><input id="xi-XTextField-9" name="tf_firstname" class="XItem XTextField left-followup empty" vr="true"
                aria-required="true" vmxl="255" type="text" style="" maxlength="255"><label id="xi-XTextField-9-label" class="label-followup required" style="" for="xi-XTextField-9">
                <p>First Name<span class="required-star">*</span></p>
              </label>
              <div class="xm-error-container label-followup label-none">
                <div class="xm-error-icon label-followup label-none">
                  <div class="xm-error-text label-followup label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div label-followup CXTextField" style=" width:100%; " cn="XTextField" xi="xi-XTextField-10" xn="tf_lastname"><input id="xi-XTextField-10" name="tf_lastname" class="XItem XTextField left-followup empty" vr="true"
                aria-required="true" vmxl="255" type="text" style="" maxlength="255"><label id="xi-XTextField-10-label" class="label-followup required" style="" for="xi-XTextField-10">
                <p>Last Name<span class="required-star">*</span></p>
              </label>
              <div class="xm-error-container label-followup label-none">
                <div class="xm-error-icon label-followup label-none">
                  <div class="xm-error-text label-followup label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div label-followup CXTextField" style=" width:100%; " cn="XTextField" xi="xi-XTextField-11" xn="tf_email"><input id="xi-XTextField-11" name="tf_email" class="XItem XTextField left-followup empty" vr="true"
                aria-required="true" vmxl="255" type="text" style="" maxlength="255"><label id="xi-XTextField-11-label" class="label-followup required" style="" for="xi-XTextField-11">
                <p>Email Address<span class="required-star">*</span></p>
              </label>
              <div class="xm-error-container label-followup label-none">
                <div class="xm-error-icon label-followup label-none">
                  <div class="xm-error-text label-followup label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div label-followup CXTextField" style=" width:100%; " cn="XTextField" xi="xi-XTextField-20" xn="tf_zip"><input id="xi-XTextField-20" name="tf_zip" class="XItem XTextField left-followup empty" vr="true"
                aria-required="true" vmxl="255" type="text" style="" maxlength="255"><label id="xi-XTextField-20-label" class="label-followup required" style="" for="xi-XTextField-20">
                <p>Zip/Postal Code<span class="required-star">*</span></p>
              </label>
              <div class="xm-error-container label-followup label-none">
                <div class="xm-error-icon label-followup label-none">
                  <div class="xm-error-text label-followup label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div label-followup CXTextField" style=" width:100%; " cn="XTextField" xi="xi-XTextField-12" xn="tf_company"><input id="xi-XTextField-12" name="tf_company" class="XItem XTextField left-followup empty" vmxl="255"
                type="text" style="" maxlength="255"><label id="xi-XTextField-12-label" class="label-followup " style="" for="xi-XTextField-12">
                <p>Company</p>
              </label>
              <div class="xm-error-container label-followup label-none">
                <div class="xm-error-icon label-followup label-none">
                  <div class="xm-error-text label-followup label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div label-followup CXTextField" style=" width:100%; " cn="XTextField" xi="xi-XTextField-22" xn="tf_contact"><input id="xi-XTextField-22" name="tf_contact" class="XItem XTextField left-followup empty" vmxl="255"
                type="text" style="" maxlength="255"><label id="xi-XTextField-22-label" class="label-followup " style="" for="xi-XTextField-22">Your Pepperl+Fuchs Contact Person?</label>
              <div class="xm-error-container label-followup label-none">
                <div class="xm-error-icon label-followup label-none">
                  <div class="xm-error-text label-followup label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div  label-none CXSpan" style=" width:100%; " cn="XSpan" xi="xi-XSpan-5" xn="txt5"><span id="xi-XSpan-5" class="XItem XSpan" name="txt5"><b>I would like to unsubscribe from receiving:</b><br></span>
              <div class="xm-error-container label-none">
                <div class="xm-error-icon label-none">
                  <div class="xm-error-text label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div label-right  label-none CXSelect" style=" width:100%; " cn="XSelect" xi="xi-XSelect-1" xn="sel_messages">
              <div type="radio" class="XItem XSelect left-right XRadio" id="xi-XSelect-1" xn="sel_messages">
                <div class=" opt-div opt-layout-radio1" style="margin-right:10px; float:none;"><input idx="1" value="Customer will continue to receive factual information about his/her account and purchases" title="" name="sel_messages"
                    id="xi-XSelect-1_1" type="radio" aria-labelledby="xi-XSelect-1_1-opt-label"><label for="xi-XSelect-1_1" class="label-icon-radio opt-right" title="" aria-hidden="true"></label><label for="xi-XSelect-1_1"
                    id="xi-XSelect-1_1-opt-label" class=" opt-label-right">All promotional messages from Pepperl+Fuchs, Inc. I will continue to receive factual information about my account and purchases.</label></div>
                <div class=" opt-div opt-layout-radio1" style="margin-right:10px; float:none;"><input idx="2" value="All messages from Pepperl+Fuchs, Inc." title="" name="sel_messages" id="xi-XSelect-1_2" type="radio"
                    aria-labelledby="xi-XSelect-1_2-opt-label"><label for="xi-XSelect-1_2" class="label-icon-radio opt-right" title="" aria-hidden="true"></label><label for="xi-XSelect-1_2" id="xi-XSelect-1_2-opt-label" class=" opt-label-right">All
                    messages from Pepperl+Fuchs, Inc.</label></div>
                <div style="clear: both; float: none;"></div>
              </div>
              <div class="xm-error-container label-right label-none">
                <div class="xm-error-icon label-right label-none">
                  <div class="xm-error-text label-right label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div  label-none CXSpan" style=" width:100%; " cn="XSpan" xi="xi-txt-1" xn="txt6" hif="xi-tf-38" hif_c="1" hif_v="br"><span id="xi-txt-1" class="XItem XSpan" name="txt6">
                <p><strong>For California residents only:</strong></p>
              </span>
              <div class="xm-error-container label-none">
                <div class="xm-error-icon label-none">
                  <div class="xm-error-text label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div label-right CXCheckbox" style=" width:100%; " cn="XCheckbox" xi="xi-cb-2" xn="cb_ca_delete_personal_data" hif="xi-tf-38" hif_c="1" hif_v="br" hif_cl="1"><input id="xi-cb-2" name="cb_ca_delete_personal_data"
                class="XItem XCheckbox left-right" type="checkbox" title="" aria-labelledby="xi-cb-2-label" style="" value="delete"><label for="xi-cb-2" class="label-icon-checkbox" title="" aria-hidden="true"></label><label id="xi-cb-2-label"
                class="label-right " style="width:120px; " for="xi-cb-2">
                <p>Delete my personal data</p>
              </label>
              <div class="xm-error-container label-right label-none">
                <div class="xm-error-icon label-right label-none">
                  <div class="xm-error-text label-right label-none xm-text"></div>
                </div>
              </div>
            </div>
          </div>
          <div class="xm-error-container label-none">
            <div class="xm-error-icon label-none">
              <div class="xm-error-text label-none xm-text"></div>
            </div>
          </div>
        </div>
        <div class="xm-item-div  label-none CXContainer" style=" width:100%; " cn="XContainer" xi="xi-div-3" xn="div_button">
          <div id="xi-div-3" name="div_button" class="XItem XContainer" style="min-height:25px; " data-xm-appendable="xi-div-3">
            <div class="xm-item-div label-right CXCheckbox" style=" width:100%; " cn="XCheckbox" xi="xi-cb-1" xn="cb_consent" hif="xi-cb-2" hif_c="0" hif_cl="1"><input id="xi-cb-1" name="cb_consent" class="XItem XCheckbox left-right" type="checkbox"
                title="" aria-labelledby="xi-cb-1-label" vr="true" aria-required="true" style="" value="on"><label for="xi-cb-1" class="label-icon-checkbox" title="" aria-hidden="true"></label><label id="xi-cb-1-label" class="label-right required"
                style="width:120px; " for="xi-cb-1">
                <p>I consent to having my personal data (email address, gender, first and last name) stored and processed according to the <a href="34254.htm">data protection notice</a> .<span class="required-star">*</span></p>
              </label>
              <div class="xm-error-container label-right label-none">
                <div class="xm-error-icon label-right label-none">
                  <div class="xm-error-text label-right label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div  label-none CXButtonList xm-t-left" style=" width:100%; " cn="XButtonList" xi="xi-btn-3" xn="btn_submit"><button id="xi-btn-3_btn0" name="btnSubmit" class="XItem XButtonList XSubmit submit" style="" title=""
                type="submit" value="Unsubscribe me!" check-page="true" onclick="$.xutil.submit(this)">Unsubscribe me!</button>
              <div class="xm-error-container label-none">
                <div class="xm-error-icon label-none">
                  <div class="xm-error-text label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div  label-none CXSpan" style=" width:100%; " cn="XSpan" xi="xi-txt-9" xn="txt_mandatory"><span id="xi-txt-9" class="XItem XSpan" name="txt_mandatory">
                <p><span style="color:#ff0000">* </span>mandatory fields</p>
              </span>
              <div class="xm-error-container label-none">
                <div class="xm-error-icon label-none">
                  <div class="xm-error-text label-none xm-text"></div>
                </div>
              </div>
            </div>
          </div>
          <div class="xm-error-container label-none">
            <div class="xm-error-icon label-none">
              <div class="xm-error-text label-none xm-text"></div>
            </div>
          </div>
        </div>
      </div>
      <div class="footer"></div>
      <div class="xm-error-container label-none">
        <div class="xm-error-icon label-none">
          <div class="xm-error-text label-none xm-text"></div>
        </div>
      </div>
    </div>
    <div class="xm-item-div  label-none CXPage" style="display: none;" cn="XPage" xi="xm-item-XPage-2" xn="p2">
      <div class="header" style="max-width:550px;"></div>
      <div id="xm-item-XPage-2" name="p2" style="max-width:550px; min-width:100px; " class="XItem XPage" data-xm-appendable="xm-item-XPage-2">
        <div class="xm-item-div  label-none CXContainer" style="width: 100%; display: none;" cn="XContainer" xi="xi-div-4" xn="div_hidden_page" data-initial-hidden="1">
          <div id="xi-div-4" name="div_hidden_page" class="XItem XContainer" style="min-height:25px; " data-xm-appendable="xi-div-4">
            <div class="xm-item-div  label-none CXSpan" style=" width:100%; " cn="XSpan" xi="xi-txt-10" xn="txt_params_ot"><span id="xi-txt-10" class="XItem XSpan" name="txt_params_ot">
                <p><strong>Parameter from Open Text:</strong></p>
              </span>
              <div class="xm-error-container label-none">
                <div class="xm-error-icon label-none">
                  <div class="xm-error-text label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-form-row">
              <div class="xm-item-div label-top CXTextField" style=" width:50%;  display:inline-table; " cn="XTextField" xi="xi-tf-36" xn="salutshow"><label id="xi-tf-36-label" class="label-top " style="" for="xi-tf-36">
                  <p>salutshow (Show Salutation true/false)</p>
                </label><input id="xi-tf-36" name="salutshow" class="XItem XTextField left-top" vmxl="255" type="text" style="" value="false" maxlength="255">
                <div class="xm-error-container label-top label-none">
                  <div class="xm-error-icon label-top label-none">
                    <div class="xm-error-text label-top label-none xm-text"></div>
                  </div>
                </div>
              </div>
              <div class="xm-item-div label-top CXTextField" style=" width:50%;  display:inline-table; " cn="XTextField" xi="xi-tf-37" xn="division"><label id="xi-tf-37-label" class="label-top " style="" for="xi-tf-37">
                  <p>division (Division FA/PA)</p>
                </label><input id="xi-tf-37" name="division" class="XItem XTextField left-top empty" vmxl="255" type="text" style="" maxlength="255">
                <div class="xm-error-container label-top label-none">
                  <div class="xm-error-icon label-top label-none">
                    <div class="xm-error-text label-top label-none xm-text"></div>
                  </div>
                </div>
              </div>
            </div>
            <div class="xm-form-row">
              <div class="xm-item-div label-top CXTextField" style=" width:50%;  display:inline-table; " cn="XTextField" xi="xi-tf-38" xn="xcntry"><label id="xi-tf-38-label" class="label-top " style="" for="xi-tf-38">
                  <p>xcntry (Couuntry identifier)</p>
                </label><input id="xi-tf-38" name="xcntry" class="XItem XTextField left-top" vmxl="255" type="text" style="" value="us" maxlength="255">
                <div class="xm-error-container label-top label-none">
                  <div class="xm-error-icon label-top label-none">
                    <div class="xm-error-text label-top label-none xm-text"></div>
                  </div>
                </div>
              </div>
              <div class="xm-item-div label-top CXTextField" style=" width:50%;  display:inline-table; " cn="XTextField" xi="xi-tf-39" xn="last"><label id="xi-tf-39-label" class="label-top " style="" for="xi-tf-39">
                  <p>last (ID of last page)</p>
                </label><input id="xi-tf-39" name="last" class="XItem XTextField left-top" vmxl="255" type="text" style="" value="26491" maxlength="255">
                <div class="xm-error-container label-top label-none">
                  <div class="xm-error-icon label-top label-none">
                    <div class="xm-error-text label-top label-none xm-text"></div>
                  </div>
                </div>
              </div>
            </div>
            <div class="xm-item-div  label-none CXSpan" style=" width:100%; " cn="XSpan" xi="xi-txt-11" xn="txt_further_infos"><span id="xi-txt-11" class="XItem XSpan" name="txt_further_infos">
                <p><strong>Further necessary information</strong></p>
              </span>
              <div class="xm-error-container label-none">
                <div class="xm-error-icon label-none">
                  <div class="xm-error-text label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-form-row">
              <div class="xm-item-div label-top CXTextField" style=" width:50%;  display:inline-table; " cn="XTextField" xi="xi-tf-40" xn="country_name"><label id="xi-tf-40-label" class="label-top " style="" for="xi-tf-40">
                  <p>country_name<br> (from datasource)</p>
                </label><input id="xi-tf-40" name="country_name" class="XItem XTextField left-top empty" vmxl="255" type="text" style="" maxlength="255">
                <div class="xm-error-container label-top label-none">
                  <div class="xm-error-icon label-top label-none">
                    <div class="xm-error-text label-top label-none xm-text"></div>
                  </div>
                </div>
              </div>
              <div class="xm-item-div label-top CXTextField" style=" width:50%;  display:inline-table; " cn="XTextField" xi="xi-tf-41" xn="lastpage"><label id="xi-tf-41-label" class="label-top " style="" for="xi-tf-41">
                  <p>lastpage<br> (Complete URL of lastpage)</p>
                </label><input id="xi-tf-41" name="lastpage" class="XItem XTextField left-top" vmxl="255" type="text" style="" maxlength="255">
                <div class="xm-error-container label-top label-none">
                  <div class="xm-error-icon label-top label-none">
                    <div class="xm-error-text label-top label-none xm-text"></div>
                  </div>
                </div>
              </div>
            </div>
            <div class="xm-form-row">
              <div class="xm-item-div label-top CXTextField" style=" width:50%;  display:inline-table; " cn="XTextField" xi="xi-tf-42" xn="tf_int_dialing_code"><label id="xi-tf-42-label" class="label-top " style="" for="xi-tf-42">
                  <p>tf_int_dialing_code</p>
                  <p>(International Dialing Code)</p>
                </label><input id="xi-tf-42" name="tf_int_dialing_code" class="XItem XTextField left-top empty" vmxl="255" type="text" style="" maxlength="255">
                <div class="xm-error-container label-top label-none">
                  <div class="xm-error-icon label-top label-none">
                    <div class="xm-error-text label-top label-none xm-text"></div>
                  </div>
                </div>
              </div>
              <div class="xm-item-div label-top CXTextField" style=" width:50%;  display:inline-table; " cn="XTextField" xi="xi-tf-43" xn="formpage"><label id="xi-tf-43-label" class="label-top " style="" for="xi-tf-43">
                  <p>formpage<br> (Complete URL of the form)</p>
                </label><input id="xi-tf-43" name="formpage" class="XItem XTextField left-top" vmxl="255" type="text" style="" maxlength="255">
                <div class="xm-error-container label-top label-none">
                  <div class="xm-error-icon label-top label-none">
                    <div class="xm-error-text label-top label-none xm-text"></div>
                  </div>
                </div>
              </div>
            </div>
            <div class="xm-item-div label-top CXTextField" style=" width:100%; " cn="XTextField" xi="xi-tf-44" xn="tf_salut_email"><label id="xi-tf-44-label" class="label-top " style="" for="xi-tf-44">
                <p>tf_salut_email</p>
                <p>(necessary for salut Mr./Mrs.)</p>
              </label><input id="xi-tf-44" name="tf_salut_email" class="XItem XTextField left-top empty" vmxl="255" type="text" style="" maxlength="255">
              <div class="xm-error-container label-top label-none">
                <div class="xm-error-icon label-top label-none">
                  <div class="xm-error-text label-top label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-item-div  label-none CXSpan" style=" width:100%; " cn="XSpan" xi="xi-txt-12" xn="txt_params_ga"><span id="xi-txt-12" class="XItem XSpan" name="txt_params_ga">
                <p><strong>Google Parameter (from Adwords Campaigns)</strong></p>
              </span>
              <div class="xm-error-container label-none">
                <div class="xm-error-icon label-none">
                  <div class="xm-error-text label-none xm-text"></div>
                </div>
              </div>
            </div>
            <div class="xm-form-row">
              <div class="xm-item-div label-top CXTextField" style=" width:33.333333333333336%;  display:inline-table; " cn="XTextField" xi="xi-tf-45" xn="campaign"><label id="xi-tf-45-label" class="label-top " style="" for="xi-tf-45">
                  <p>campaign <em>(without utm_)</em></p>
                </label><input id="xi-tf-45" name="campaign" class="XItem XTextField left-top" vmxl="255" type="text" style="" value="Landing_Page_Corp" maxlength="255">
                <div class="xm-error-container label-top label-none">
                  <div class="xm-error-icon label-top label-none">
                    <div class="xm-error-text label-top label-none xm-text"></div>
                  </div>
                </div>
              </div>
              <div class="xm-item-div label-top CXTextField" style=" width:33.333333333333336%;  display:inline-table; " cn="XTextField" xi="xi-tf-46" xn="utm_source"><label id="xi-tf-46-label" class="label-top " style="" for="xi-tf-46">
                  <p>utm_source</p>
                </label><input id="xi-tf-46" name="utm_source" class="XItem XTextField left-top" vmxl="255" type="text" style="" value="Landing_Page" maxlength="255">
                <div class="xm-error-container label-top label-none">
                  <div class="xm-error-icon label-top label-none">
                    <div class="xm-error-text label-top label-none xm-text"></div>
                  </div>
                </div>
              </div>
              <div class="xm-item-div label-top CXTextField" style=" width:33.333333333333336%;  display:inline-table; " cn="XTextField" xi="xi-tf-47" xn="utm_term"><label id="xi-tf-47-label" class="label-top " style="" for="xi-tf-47">
                  <p>utm_term</p>
                </label><input id="xi-tf-47" name="utm_term" class="XItem XTextField left-top" vmxl="255" type="text" style="" value="opt-out" maxlength="255">
                <div class="xm-error-container label-top label-none">
                  <div class="xm-error-icon label-top label-none">
                    <div class="xm-error-text label-top label-none xm-text"></div>
                  </div>
                </div>
              </div>
            </div>
          </div>
          <div class="xm-error-container label-none">
            <div class="xm-error-icon label-none">
              <div class="xm-error-text label-none xm-text"></div>
            </div>
          </div>
        </div>
      </div>
      <div class="footer"></div>
      <div class="xm-error-container label-none">
        <div class="xm-error-icon label-none">
          <div class="xm-error-text label-none xm-text"></div>
        </div>
      </div>
    </div>
    <div class="xm-item-div  label-none CXFooter" style="" cn="XFooter" xi="xi-footer-1" xn="footer1">
      <div id="xi-footer-1" name="footer1" style="max-width:550px; min-width:300px; " class="XItem XFooter" data-xm-appendable="xi-footer-1"></div>
      <div style="max-width:550px; min-width:300px; " class="xm-form-footer-static"></div>
      <div class="xm-error-container label-none">
        <div class="xm-error-icon label-none">
          <div class="xm-error-text label-none xm-text"></div>
        </div>
      </div>
    </div>
  </div>
  <script type="text/javascript">
    this.XFC_METADATA = {
      "currentSessionID": "49FB2D13791B1B71B0FCE7F88C619C24",
      "attachments": [],
      "requestType": "provide",
      "renderStatus": "",
      "urlParams": {
        "xfc-rp-inline": "true",
        "xfc-rp-login-fallback": "\"false\"",
        "auto": "1",
        "last": "26491",
        "xfc-rp-useui": "true",
        "form_id": "1850",
        "xfc-rp-keepalive": "false",
        "salutshow": "false",
        "form_container_id": "xima-fc-integration",
        "xfc-pp-external": "true",
        "utm_term": "opt-out",
        "xfc-rp-usejq": "false",
        "xcntry": "us",
        "xfc-rp-form-only": "true",
        "campaign": "Landing_Page_Corp",
        "form_base": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server",
        "lang": "en",
        "xfc-rp-usecss": "true",
        "utm_source": "Landing_Page",
        "_": "1647023545696"
      },
      "currentSessionFRID": "6c044f34-d524-4c73-a438-b89319b13da2",
      "currentProject": {
        "currentForm": {
          "id": 1950,
          "isActive": true,
          "versionNumber": 0
        },
        "description": "https:\/\/www.pepperl-fuchs.com\/usa\/en\/26486.htm https:\/\/www.pepperl-fuchs.com\/canada\/en\/26486.htm",
        "id": 1850,
        "title": "PFusaOptOut",
        "status": ""
      },
      "pluginResults": {},
      "urls": {
        "template": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/form\/template\/",
        "appointment_freeslots": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/appointment\/freeslots\/",
        "keepalive": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/form\/includes\/extra\/keep-alive.json",
        "dataquery_db": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/datenabfragedb\/",
        "datasource_xml": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/datenquellexml\/",
        "dataquery_ldap": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/datenabfrageldap\/",
        "datasource_db": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/datenabfragedb\/",
        "attachment": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/attachment\/form\/",
        "plugin": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/plugin\/",
        "context": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/",
        "submitAction": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/form\/process\/1850\/current\/?lang=en&frid=6c044f34-d524-4c73-a438-b89319b13da2&sid=tWNVq389vPSsCpFEJLCj9qq7KZy2hnSUvcuMpSsHjgUxMCvkK6AiBPklrCE%2B9lQZiNabhcUH29KWmMRR%2BGn6SQ%3D%3D",
        "datasource_csv": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/datenquellecsv\/",
        "previewAction": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/form\/preview\/1850\/0\/?lang=en&frid=6c044f34-d524-4c73-a438-b89319b13da2",
        "datasource_json": "https:\/\/pfdcp.pepperl-fuchs.com\/frontend-server\/datenquellejson\/"
      },
      "currentUser": {
        "forename": null,
        "WARNING!": "Deprecated! Use XFC_METADATA.user!",
        "role": null,
        "ldap": {},
        "usergroups": [],
        "mandant": null,
        "phonenumber": null,
        "active": "ACTIVE",
        "surename": "[Anonymous]",
        "title": "KEINE_ANGABE",
        "email": null,
        "username": "[Anonymous]"
      },
      "currentLanguage": "en",
      "currentClient": {
        "name": "pf-cms.global",
        "id": 1
      },
      "serverValidationErrors": {},
      "user": {
        "profileUrl": null,
        "linkedId": null,
        "authTypeId": null,
        "typedId": "org.pac4j.core.profile.AnonymousProfile#anonymous",
        "role": null,
        "gender": "UNSPECIFIED",
        "mail": null,
        "displayName": null,
        "pictureUrl": null,
        "groups": [],
        "rawData": {},
        "userName": "[Anonymous]",
        "locale": null,
        "title": "KEINE_ANGABE",
        "firstName": null,
        "phone": null,
        "familyName": null,
        "location": null,
        "id": "anonymous"
      },
      "currentProcess": {},
      "currentLanguageTag": "en"
    };
    this.XFC_METADATA.serverTime = new Date(1647023546352);
  </script><input name="x-i-m-a-fa5a0f17-required" aria-hidden="true" tabindex="-1" style="position:absolute; left:-1000px; width:0px; height:0px;"><input name="xfc-pp-external" value="true"
    style="position:absolute; left:-1000px; width:0px; height:0px;">
  <style type="text/css" data-name="000-load-min.css">
    .loading {
      display: none;
      position: fixed;
      z-index: 1000;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      background-color: #fff;
      background-position: 50% 50%;
      background-repeat: no-repeat
    }

    form.xm-loading {
      overflow: hidden
    }

    form.xm-loading .loading {
      display: block
    }

    .loading .animation {
      background-image: url("data:image/png;base64,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");
      width: 100%;
      height: 100%;
      background-repeat: no-repeat;
      background-position: center;
      -webkit-animation: scale-up-center 1000ms infinite alternate-reverse both;
      animation: scale-up-center 1000ms infinite alternate-reverse both
    }

    @-webkit-keyframes scale-up-center {
      0 {
        -webkit-transform: scale(0.5);
        transform: scale(0.5)
      }

      100% {
        -webkit-transform: scale(1);
        transform: scale(1)
      }
    }

    @keyframes scale-up-center {
      0 {
        -webkit-transform: scale(0.5);
        transform: scale(0.5)
      }

      100% {
        -webkit-transform: scale(1);
        transform: scale(1)
      }
    }
  </style>
  <style type="text/css" data-name="020-jquery-ui-min.css">
    /*! jQuery UI - v1.12.1 - 2017-07-17
* http://jqueryui.com
* Includes: draggable.css, core.css, resizable.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?scope=&folderName=base&cornerRadiusShadow=8px&offsetLeftShadow=0px&offsetTopShadow=0px&thicknessShadow=5px&opacityShadow=30&bgImgOpacityShadow=0&bgTextureShadow=flat&bgColorShadow=666666&opacityOverlay=30&bgImgOpacityOverlay=0&bgTextureOverlay=flat&bgColorOverlay=aaaaaa&iconColorError=cc0000&fcError=5f3f3f&borderColorError=f1a899&bgTextureError=flat&bgColorError=fddfdf&iconColorHighlight=777620&fcHighlight=777620&borderColorHighlight=dad55e&bgTextureHighlight=flat&bgColorHighlight=fffa90&iconColorActive=ffffff&fcActive=ffffff&borderColorActive=003eff&bgTextureActive=flat&bgColorActive=007fff&iconColorHover=555555&fcHover=2b2b2b&borderColorHover=cccccc&bgTextureHover=flat&bgColorHover=ededed&iconColorDefault=777777&fcDefault=454545&borderColorDefault=c5c5c5&bgTextureDefault=flat&bgColorDefault=f6f6f6&iconColorContent=444444&fcContent=333333&borderColorContent=dddddd&bgTextureContent=flat&bgColorContent=ffffff&iconColorHeader=444444&fcHeader=333333&borderColorHeader=dddddd&bgTextureHeader=flat&bgColorHeader=e9e9e9&cornerRadius=3px&fwDefault=normal&fsDefault=1em&ffDefault=Arial%2CHelvetica%2Csans-serif
* Copyright jQuery Foundation and other contributors; Licensed MIT */
    .ui-draggable-handle {
      -ms-touch-action: none;
      touch-action: none
    }

    .ui-helper-hidden {
      display: none
    }

    .ui-helper-hidden-accessible {
      border: 0;
      clip: rect(0 0 0 0);
      height: 1px;
      margin: -1px;
      overflow: hidden;
      padding: 0;
      position: absolute;
      width: 1px
    }

    .ui-helper-reset {
      margin: 0;
      padding: 0;
      border: 0;
      outline: 0;
      line-height: 1.3;
      text-decoration: none;
      font-size: 100%;
      list-style: none
    }

    .ui-helper-clearfix:before,
    .ui-helper-clearfix:after {
      content: "";
      display: table;
      border-collapse: collapse
    }

    .ui-helper-clearfix:after {
      clear: both
    }

    .ui-helper-zfix {
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      position: absolute;
      opacity: 0;
      filter: Alpha(Opacity=0)
    }

    .ui-front {
      z-index: 100
    }

    .ui-state-disabled {
      cursor: default !important;
      pointer-events: none
    }

    .ui-icon {
      display: inline-block;
      vertical-align: middle;
      margin-top: -.25em;
      position: relative;
      text-indent: -99999px;
      overflow: hidden;
      background-repeat: no-repeat
    }

    .ui-widget-icon-block {
      left: 50%;
      margin-left: -8px;
      display: block
    }

    .ui-widget-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%
    }

    .ui-resizable {
      position: relative
    }

    .ui-resizable-handle {
      position: absolute;
      font-size: .1px;
      display: block;
      -ms-touch-action: none;
      touch-action: none
    }

    .ui-resizable-disabled .ui-resizable-handle,
    .ui-resizable-autohide .ui-resizable-handle {
      display: none
    }

    .ui-resizable-n {
      cursor: n-resize;
      height: 7px;
      width: 100%;
      top: -5px;
      left: 0
    }

    .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%
    }

    .ui-resizable-w {
      cursor: w-resize;
      width: 7px;
      left: -5px;
      top: 0;
      height: 100%
    }

    .ui-resizable-se {
      cursor: se-resize;
      width: 12px;
      height: 12px;
      right: 1px;
      bottom: 1px
    }

    .ui-resizable-sw {
      cursor: sw-resize;
      width: 9px;
      height: 9px;
      left: -5px;
      bottom: -5px
    }

    .ui-resizable-nw {
      cursor: nw-resize;
      width: 9px;
      height: 9px;
      left: -5px;
      top: -5px
    }

    .ui-resizable-ne {
      cursor: ne-resize;
      width: 9px;
      height: 9px;
      right: -5px;
      top: -5px
    }

    .ui-autocomplete {
      position: absolute;
      top: 0;
      left: 0;
      cursor: default
    }

    .ui-menu {
      list-style: none;
      padding: 0;
      margin: 0;
      display: block;
      outline: 0
    }

    .ui-menu .ui-menu {
      position: absolute
    }

    .ui-menu .ui-menu-item {
      margin: 0;
      cursor: pointer;
      list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")
    }

    .ui-menu .ui-menu-item-wrapper {
      position: relative;
      padding: 3px 1em 3px .4em
    }

    .ui-menu .ui-menu-divider {
      margin: 5px 0;
      height: 0;
      font-size: 0;
      line-height: 0;
      border-width: 1px 0 0 0
    }

    .ui-menu .ui-state-focus,
    .ui-menu .ui-state-active {
      margin: -1px
    }

    .ui-menu-icons {
      position: relative
    }

    .ui-menu-icons .ui-menu-item-wrapper {
      padding-left: 2em
    }

    .ui-menu .ui-icon {
      position: absolute;
      top: 0;
      bottom: 0;
      left: .2em;
      margin: auto 0
    }

    .ui-menu .ui-menu-icon {
      left: auto;
      right: 0
    }

    .ui-button {
      padding: .4em 1em;
      display: inline-block;
      position: relative;
      line-height: normal;
      margin-right: .1em;
      cursor: pointer;
      vertical-align: middle;
      text-align: center;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      overflow: visible
    }

    .ui-button,
    .ui-button:link,
    .ui-button:visited,
    .ui-button:hover,
    .ui-button:active {
      text-decoration: none
    }

    .ui-button-icon-only {
      width: 2em;
      box-sizing: border-box;
      text-indent: -9999px;
      white-space: nowrap
    }

    input.ui-button.ui-button-icon-only {
      text-indent: 0
    }

    .ui-button-icon-only .ui-icon {
      position: absolute;
      top: 50%;
      left: 50%;
      margin-top: -8px;
      margin-left: -8px
    }

    .ui-button.ui-icon-notext .ui-icon {
      padding: 0;
      width: 2.1em;
      height: 2.1em;
      text-indent: -9999px;
      white-space: nowrap
    }

    input.ui-button.ui-icon-notext .ui-icon {
      width: auto;
      height: auto;
      text-indent: 0;
      white-space: normal;
      padding: .4em 1em
    }

    input.ui-button::-moz-focus-inner,
    button.ui-button::-moz-focus-inner {
      border: 0;
      padding: 0
    }

    .ui-controlgroup {
      vertical-align: middle;
      display: inline-block
    }

    .ui-controlgroup>.ui-controlgroup-item {
      float: left;
      margin-left: 0;
      margin-right: 0
    }

    .ui-controlgroup>.ui-controlgroup-item:focus,
    .ui-controlgroup>.ui-controlgroup-item.ui-visual-focus {
      z-index: 9999
    }

    .ui-controlgroup-vertical>.ui-controlgroup-item {
      display: block;
      float: none;
      width: 100%;
      margin-top: 0;
      margin-bottom: 0;
      text-align: left
    }

    .ui-controlgroup-vertical .ui-controlgroup-item {
      box-sizing: border-box
    }

    .ui-controlgroup .ui-controlgroup-label {
      padding: .4em 1em
    }

    .ui-controlgroup .ui-controlgroup-label span {
      font-size: 80%
    }

    .ui-controlgroup-horizontal .ui-controlgroup-label+.ui-controlgroup-item {
      border-left: 0
    }

    .ui-controlgroup-vertical .ui-controlgroup-label+.ui-controlgroup-item {
      border-top: 0
    }

    .ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content {
      border-right: 0
    }

    .ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content {
      border-bottom: 0
    }

    .ui-controlgroup-vertical .ui-spinner-input {
      width: 75%;
      width: calc(100% - 2.4em)
    }

    .ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
      border-top-style: solid
    }

    .ui-checkboxradio-label .ui-icon-background {
      box-shadow: inset 1px 1px 1px #ccc;
      border-radius: .12em;
      border: 0
    }

    .ui-checkboxradio-radio-label .ui-icon-background {
      width: 16px;
      height: 16px;
      border-radius: 1em;
      overflow: visible;
      border: 0
    }

    .ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,
    .ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon {
      background-image: none;
      width: 8px;
      height: 8px;
      border-width: 4px;
      border-style: solid
    }

    .ui-checkboxradio-disabled {
      pointer-events: none
    }

    .ui-datepicker {
      width: 17em;
      padding: .2em .2em 0;
      display: none
    }

    .ui-datepicker .ui-datepicker-header {
      position: relative;
      padding: .2em 0
    }

    .ui-datepicker .ui-datepicker-prev,
    .ui-datepicker .ui-datepicker-next {
      position: absolute;
      top: 2px;
      width: 1.8em;
      height: 1.8em
    }

    .ui-datepicker .ui-datepicker-prev-hover,
    .ui-datepicker .ui-datepicker-next-hover {
      top: 1px
    }

    .ui-datepicker .ui-datepicker-prev {
      left: 2px
    }

    .ui-datepicker .ui-datepicker-next {
      right: 2px
    }

    .ui-datepicker .ui-datepicker-prev-hover {
      left: 1px
    }

    .ui-datepicker .ui-datepicker-next-hover {
      right: 1px
    }

    .ui-datepicker .ui-datepicker-prev span,
    .ui-datepicker .ui-datepicker-next span {
      display: block;
      position: absolute;
      left: 50%;
      margin-left: -8px;
      top: 50%;
      margin-top: -8px
    }

    .ui-datepicker .ui-datepicker-title {
      margin: 0 2.3em;
      line-height: 1.8em;
      text-align: center
    }

    .ui-datepicker .ui-datepicker-title select {
      font-size: 1em;
      margin: 1px 0
    }

    .ui-datepicker select.ui-datepicker-month,
    .ui-datepicker select.ui-datepicker-year {
      width: 45%
    }

    .ui-datepicker table {
      width: 100%;
      font-size: .9em;
      border-collapse: collapse;
      margin: 0 0 .4em
    }

    .ui-datepicker th {
      padding: .7em .3em;
      text-align: center;
      font-weight: bold;
      border: 0
    }

    .ui-datepicker td {
      border: 0;
      padding: 1px
    }

    .ui-datepicker td span,
    .ui-datepicker td a {
      display: block;
      padding: .2em;
      text-align: right;
      text-decoration: none
    }

    .ui-datepicker .ui-datepicker-buttonpane {
      background-image: none;
      margin: .7em 0 0 0;
      padding: 0 .2em;
      border-left: 0;
      border-right: 0;
      border-bottom: 0
    }

    .ui-datepicker .ui-datepicker-buttonpane button {
      float: right;
      margin: .5em .2em .4em;
      cursor: pointer;
      padding: .2em .6em .3em .6em;
      width: auto;
      overflow: visible
    }

    .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
      float: left
    }

    .ui-datepicker.ui-datepicker-multi {
      width: auto
    }

    .ui-datepicker-multi .ui-datepicker-group {
      float: left
    }

    .ui-datepicker-multi .ui-datepicker-group table {
      width: 95%;
      margin: 0 auto .4em
    }

    .ui-datepicker-multi-2 .ui-datepicker-group {
      width: 50%
    }

    .ui-datepicker-multi-3 .ui-datepicker-group {
      width: 33.3%
    }

    .ui-datepicker-multi-4 .ui-datepicker-group {
      width: 25%
    }

    .ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
    .ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
      border-left-width: 0
    }

    .ui-datepicker-multi .ui-datepicker-buttonpane {
      clear: left
    }

    .ui-datepicker-row-break {
      clear: both;
      width: 100%;
      font-size: 0
    }

    .ui-datepicker-rtl {
      direction: rtl
    }

    .ui-datepicker-rtl .ui-datepicker-prev {
      right: 2px;
      left: auto
    }

    .ui-datepicker-rtl .ui-datepicker-next {
      left: 2px;
      right: auto
    }

    .ui-datepicker-rtl .ui-datepicker-prev:hover {
      right: 1px;
      left: auto
    }

    .ui-datepicker-rtl .ui-datepicker-next:hover {
      left: 1px;
      right: auto
    }

    .ui-datepicker-rtl .ui-datepicker-buttonpane {
      clear: right
    }

    .ui-datepicker-rtl .ui-datepicker-buttonpane button {
      float: left
    }

    .ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
    .ui-datepicker-rtl .ui-datepicker-group {
      float: right
    }

    .ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
    .ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
      border-right-width: 0;
      border-left-width: 1px
    }

    .ui-datepicker .ui-icon {
      display: block;
      text-indent: -99999px;
      overflow: hidden;
      background-repeat: no-repeat;
      left: .5em;
      top: .3em
    }

    .ui-dialog {
      position: absolute;
      top: 0;
      left: 0;
      padding: .2em;
      outline: 0
    }

    .ui-dialog .ui-dialog-titlebar {
      padding: .4em 1em;
      position: relative
    }

    .ui-dialog .ui-dialog-title {
      float: left;
      margin: .1em 0;
      white-space: nowrap;
      width: 90%;
      overflow: hidden;
      text-overflow: ellipsis
    }

    .ui-dialog .ui-dialog-titlebar-close {
      position: absolute;
      right: .3em;
      top: 50%;
      width: 20px;
      margin: -10px 0 0 0;
      padding: 1px;
      height: 20px
    }

    .ui-dialog .ui-dialog-content {
      position: relative;
      border: 0;
      padding: .5em 1em;
      background: 0;
      overflow: auto
    }

    .ui-dialog .ui-dialog-buttonpane {
      text-align: left;
      border-width: 1px 0 0 0;
      background-image: none;
      margin-top: .5em;
      padding: .3em 1em .5em .4em
    }

    .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
      float: right
    }

    .ui-dialog .ui-dialog-buttonpane button {
      margin: .5em .4em .5em 0;
      cursor: pointer
    }

    .ui-dialog .ui-resizable-n {
      height: 2px;
      top: 0
    }

    .ui-dialog .ui-resizable-e {
      width: 2px;
      right: 0
    }

    .ui-dialog .ui-resizable-s {
      height: 2px;
      bottom: 0
    }

    .ui-dialog .ui-resizable-w {
      width: 2px;
      left: 0
    }

    .ui-dialog .ui-resizable-se,
    .ui-dialog .ui-resizable-sw,
    .ui-dialog .ui-resizable-ne,
    .ui-dialog .ui-resizable-nw {
      width: 7px;
      height: 7px
    }

    .ui-dialog .ui-resizable-se {
      right: 0;
      bottom: 0
    }

    .ui-dialog .ui-resizable-sw {
      left: 0;
      bottom: 0
    }

    .ui-dialog .ui-resizable-ne {
      right: 0;
      top: 0
    }

    .ui-dialog .ui-resizable-nw {
      left: 0;
      top: 0
    }

    .ui-draggable .ui-dialog-titlebar {
      cursor: move
    }

    .ui-widget {
      font-family: Arial, Helvetica, sans-serif;
      font-size: 1em
    }

    .ui-widget .ui-widget {
      font-size: 1em
    }

    .ui-widget input,
    .ui-widget select,
    .ui-widget textarea,
    .ui-widget button {
      font-family: Arial, Helvetica, sans-serif;
      font-size: 1em
    }

    .ui-widget.ui-widget-content {
      border: 1px solid #c5c5c5
    }

    .ui-widget-content {
      border: 1px solid #ddd;
      background: #fff;
      color: #333
    }

    .ui-widget-content a {
      color: #333
    }

    .ui-widget-header {
      border: 1px solid #ddd;
      background: #e9e9e9;
      color: #333;
      font-weight: bold
    }

    .ui-widget-header a {
      color: #333
    }

    .ui-state-default,
    .ui-widget-content .ui-state-default,
    .ui-widget-header .ui-state-default,
    .ui-button,
    html .ui-button.ui-state-disabled:hover,
    html .ui-button.ui-state-disabled:active {
      border: 1px solid #c5c5c5;
      background: #f6f6f6;
      font-weight: normal;
      color: #454545
    }

    .ui-state-default a,
    .ui-state-default a:link,
    .ui-state-default a:visited,
    a.ui-button,
    a:link.ui-button,
    a:visited.ui-button,
    .ui-button {
      color: #454545;
      text-decoration: none
    }

    .ui-state-hover,
    .ui-widget-content .ui-state-hover,
    .ui-widget-header .ui-state-hover,
    .ui-state-focus,
    .ui-widget-content .ui-state-focus,
    .ui-widget-header .ui-state-focus,
    .ui-button:hover,
    .ui-button:focus {
      border: 1px solid #ccc;
      background: #ededed;
      font-weight: normal;
      color: #2b2b2b
    }

    .ui-state-hover a,
    .ui-state-hover a:hover,
    .ui-state-hover a:link,
    .ui-state-hover a:visited,
    .ui-state-focus a,
    .ui-state-focus a:hover,
    .ui-state-focus a:link,
    .ui-state-focus a:visited,
    a.ui-button:hover,
    a.ui-button:focus {
      color: #2b2b2b;
      text-decoration: none
    }

    .ui-visual-focus {
      box-shadow: 0 0 3px 1px #5e9ed6
    }

    .ui-state-active,
    .ui-widget-content .ui-state-active,
    .ui-widget-header .ui-state-active,
    a.ui-button:active,
    .ui-button:active,
    .ui-button.ui-state-active:hover {
      border: 1px solid #003eff;
      background: #007fff;
      font-weight: normal;
      color: #fff
    }

    .ui-icon-background,
    .ui-state-active .ui-icon-background {
      border: #003eff;
      background-color: #fff
    }

    .ui-state-active a,
    .ui-state-active a:link,
    .ui-state-active a:visited {
      color: #fff;
      text-decoration: none
    }

    .ui-state-highlight,
    .ui-widget-content .ui-state-highlight,
    .ui-widget-header .ui-state-highlight {
      border: 1px solid #dad55e;
      background: #fffa90;
      color: #777620
    }

    .ui-state-checked {
      border: 1px solid #dad55e;
      background: #fffa90
    }

    .ui-state-highlight a,
    .ui-widget-content .ui-state-highlight a,
    .ui-widget-header .ui-state-highlight a {
      color: #777620
    }

    .ui-state-error,
    .ui-widget-content .ui-state-error,
    .ui-widget-header .ui-state-error {
      border: 1px solid #f1a899;
      background: #fddfdf;
      color: #5f3f3f
    }

    .ui-state-error a,
    .ui-widget-content .ui-state-error a,
    .ui-widget-header .ui-state-error a {
      color: #5f3f3f
    }

    .ui-state-error-text,
    .ui-widget-content .ui-state-error-text,
    .ui-widget-header .ui-state-error-text {
      color: #5f3f3f
    }

    .ui-priority-primary,
    .ui-widget-content .ui-priority-primary,
    .ui-widget-header .ui-priority-primary {
      font-weight: bold
    }

    .ui-priority-secondary,
    .ui-widget-content .ui-priority-secondary,
    .ui-widget-header .ui-priority-secondary {
      opacity: .7;
      filter: Alpha(Opacity=70);
      font-weight: normal
    }

    .ui-state-disabled,
    .ui-widget-content .ui-state-disabled,
    .ui-widget-header .ui-state-disabled {
      opacity: .35;
      filter: Alpha(Opacity=35);
      background-image: none
    }

    .ui-state-disabled .ui-icon {
      filter: Alpha(Opacity=35)
    }

    .ui-icon {
      width: 16px;
      height: 16px
    }

    .ui-icon,
    .ui-widget-content .ui-icon {
      background-image: url('data:image/png;base64,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')
    }

    .ui-widget-header .ui-icon {
      background-image: url('data:image/png;base64,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')
    }

    .ui-state-hover .ui-icon,
    .ui-state-focus .ui-icon,
    .ui-button:hover .ui-icon,
    .ui-button:focus .ui-icon {
      background-image: url('data:image/png;base64,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')
    }

    .ui-state-active .ui-icon,
    .ui-button:active .ui-icon {
      background-image: url('data:image/png;base64,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')
    }

    .ui-state-highlight .ui-icon,
    .ui-button .ui-state-highlight.ui-icon {
      background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAADwCAMAAADYSUr5AAABDlBMVEV3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diB3diBVLkeJAAAAWXRSTlMAGRAzBAhQv4KZLyJVcUBmYBoTMswNITwWQkhLIB5aIycxUyyFNIeAw2rIz8Y4RRy8uL58q7WljKqorR+yKf0BnlEk7woGAgOPomKUSqCvbd+cR2M/b3+RaPlAXvEAAAABYktHRACIBR1IAAAACXBIWXMAAABIAAAASABGyWs+AAAPZElEQVR42u1dC2PbthEGyUiq6ZiSXblLE6ex1mTO5iXZq+u6ro3abG26pOkSd13v//+RAXzhcIeHWMoUbeOTLesIEMB9PIB3ACgLERERMQIkkOy6CTvWH0bOQO/mJeDXP8EMqMzDEkIsEBRMAmh7jHSVmuAjAKwC8FRAzi8/DmoS1AI5AQltj5FOryAjgJ7OK2CZkwEZYO23q+BJ5wwKkttfui1z4s20VTAL5k2kF5hbiPcKcwvwNGB4C7CTwproI4CdDcxEPKUTExx+DNiAj0u9C9AuNPxdYOe46Y5QRERERERExIhx6Z7gjv2ghEVrQJ33hJ5BsxsBfsIq8M0HsAkhWfqglFgawAhgGWh2M1xMWAWUAE90qUofMhhi7be32JNsmVFJPKeLwBQglAQMNh3ALVjYbNaI1jaYD0jM0nw9atcWYEXiaXH/+QDeQ3Y6BoRx3e8CERERERERERG7Qz/HP+iaBsvvHXj0LAD4cip0yN27fXw7AGtQoDTwH+HqkWTgWczTwZVmr8DbAEuqv35bCT6CWDorjGnAqwOSCI7EhlFWHjkBXIkb1M/DZQgRwCeAwK9B+HRPFlPBOjeZ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')
    }

    .ui-state-error .ui-icon,
    .ui-state-error-text .ui-icon {
      background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAADwCAMAAADYSUr5AAABDlBMVEXMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADMAADP1XLPAAAAWXRSTlMAGRAzBAhQv4KZLyJVcUBmYBoTMswNITwWQkhLIB5aIycxUyyFNIeAw2rIz8Y4RRy8uL58q7WljKqorR+yKf0BnlEk7woGAgOPomKUSqCvbd+cR2M/b3+RaPlAXvEAAAABYktHRACIBR1IAAAACXBIWXMAAABIAAAASABGyWs+AAAPZElEQVR42u1dC2PbthEGyUiq6ZiSXblLE6ex1mTO5iXZq+u6ro3abG26pOkSd13v//+RAXzhcIeHWMoUbeOTLesIEMB9PIB3ACgLERERMQIkkOy6CTvWH0bOQO/mJeDXP8EMqMzDEkIsEBRMAmh7jHSVmuAjAKwC8FRAzi8/DmoS1AI5AQltj5FOryAjgJ7OK2CZkwEZYO23q+BJ5wwKkttfui1z4s20VTAL5k2kF5hbiPcKcwvwNGB4C7CTwproI4CdDcxEPKUTExx+DNiAj0u9C9AuNPxdYOe46Y5QRERERERExIhx6Z7gjv2ghEVrQJ33hJ5BsxsBfsIq8M0HsAkhWfqglFgawAhgGWh2M1xMWAWUAE90qUofMhhi7be32JNsmVFJPKeLwBQglAQMNh3ALVjYbNaI1jaYD0jM0nw9atcWYEXiaXH/+QDeQ3Y6BoRx3e8CERERERERERG7Qz/HP+iaBsvvHXj0LAD4cip0yN27fXw7AGtQoDTwH+HqkWTgWczTwZVmr8DbAEuqv35bCT6CWDorjGnAqwOSCI7EhlFWHjkBXIkb1M/DZQgRwCeAwK9B+HRPFlPBOjeZ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')
    }

    .ui-button .ui-icon {
      background-image: url('data:image/png;base64,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')
    }

    .ui-icon-blank {
      background-position: 16px 16px
    }

    .ui-icon-caret-1-n {
      background-position: 0 0
    }

    .ui-icon-caret-1-ne {
      background-position: -16px 0
    }

    .ui-icon-caret-1-e {
      background-position: -32px 0
    }

    .ui-icon-caret-1-se {
      background-position: -48px 0
    }

    .ui-icon-caret-1-s {
      background-position: -65px 0
    }

    .ui-icon-caret-1-sw {
      background-position: -80px 0
    }

    .ui-icon-caret-1-w {
      background-position: -96px 0
    }

    .ui-icon-caret-1-nw {
      background-position: -112px 0
    }

    .ui-icon-caret-2-n-s {
      background-position: -128px 0
    }

    .ui-icon-caret-2-e-w {
      background-position: -144px 0
    }

    .ui-icon-triangle-1-n {
      background-position: 0 -16px
    }

    .ui-icon-triangle-1-ne {
      background-position: -16px -16px
    }

    .ui-icon-triangle-1-e {
      background-position: -32px -16px
    }

    .ui-icon-triangle-1-se {
      background-position: -48px -16px
    }

    .ui-icon-triangle-1-s {
      background-position: -65px -16px
    }

    .ui-icon-triangle-1-sw {
      background-position: -80px -16px
    }

    .ui-icon-triangle-1-w {
      background-position: -96px -16px
    }

    .ui-icon-triangle-1-nw {
      background-position: -112px -16px
    }

    .ui-icon-triangle-2-n-s {
      background-position: -128px -16px
    }

    .ui-icon-triangle-2-e-w {
      background-position: -144px -16px
    }

    .ui-icon-arrow-1-n {
      background-position: 0 -32px
    }

    .ui-icon-arrow-1-ne {
      background-position: -16px -32px
    }

    .ui-icon-arrow-1-e {
      background-position: -32px -32px
    }

    .ui-icon-arrow-1-se {
      background-position: -48px -32px
    }

    .ui-icon-arrow-1-s {
      background-position: -65px -32px
    }

    .ui-icon-arrow-1-sw {
      background-position: -80px -32px
    }

    .ui-icon-arrow-1-w {
      background-position: -96px -32px
    }

    .ui-icon-arrow-1-nw {
      background-position: -112px -32px
    }

    .ui-icon-arrow-2-n-s {
      background-position: -128px -32px
    }

    .ui-icon-arrow-2-ne-sw {
      background-position: -144px -32px
    }

    .ui-icon-arrow-2-e-w {
      background-position: -160px -32px
    }

    .ui-icon-arrow-2-se-nw {
      background-position: -176px -32px
    }

    .ui-icon-arrowstop-1-n {
      background-position: -192px -32px
    }

    .ui-icon-arrowstop-1-e {
      background-position: -208px -32px
    }

    .ui-icon-arrowstop-1-s {
      background-position: -224px -32px
    }

    .ui-icon-arrowstop-1-w {
      background-position: -240px -32px
    }

    .ui-icon-arrowthick-1-n {
      background-position: 1px -48px
    }

    .ui-icon-arrowthick-1-ne {
      background-position: -16px -48px
    }

    .ui-icon-arrowthick-1-e {
      background-position: -32px -48px
    }

    .ui-icon-arrowthick-1-se {
      background-position: -48px -48px
    }

    .ui-icon-arrowthick-1-s {
      background-position: -64px -48px
    }

    .ui-icon-arrowthick-1-sw {
      background-position: -80px -48px
    }

    .ui-icon-arrowthick-1-w {
      background-position: -96px -48px
    }

    .ui-icon-arrowthick-1-nw {
      background-position: -112px -48px
    }

    .ui-icon-arrowthick-2-n-s {
      background-position: -128px -48px
    }

    .ui-icon-arrowthick-2-ne-sw {
      background-position: -144px -48px
    }

    .ui-icon-arrowthick-2-e-w {
      background-position: -160px -48px
    }

    .ui-icon-arrowthick-2-se-nw {
      background-position: -176px -48px
    }

    .ui-icon-arrowthickstop-1-n {
      background-position: -192px -48px
    }

    .ui-icon-arrowthickstop-1-e {
      background-position: -208px -48px
    }

    .ui-icon-arrowthickstop-1-s {
      background-position: -224px -48px
    }

    .ui-icon-arrowthickstop-1-w {
      background-position: -240px -48px
    }

    .ui-icon-arrowreturnthick-1-w {
      background-position: 0 -64px
    }

    .ui-icon-arrowreturnthick-1-n {
      background-position: -16px -64px
    }

    .ui-icon-arrowreturnthick-1-e {
      background-position: -32px -64px
    }

    .ui-icon-arrowreturnthick-1-s {
      background-position: -48px -64px
    }

    .ui-icon-arrowreturn-1-w {
      background-position: -64px -64px
    }

    .ui-icon-arrowreturn-1-n {
      background-position: -80px -64px
    }

    .ui-icon-arrowreturn-1-e {
      background-position: -96px -64px
    }

    .ui-icon-arrowreturn-1-s {
      background-position: -112px -64px
    }

    .ui-icon-arrowrefresh-1-w {
      background-position: -128px -64px
    }

    .ui-icon-arrowrefresh-1-n {
      background-position: -144px -64px
    }

    .ui-icon-arrowrefresh-1-e {
      background-position: -160px -64px
    }

    .ui-icon-arrowrefresh-1-s {
      background-position: -176px -64px
    }

    .ui-icon-arrow-4 {
      background-position: 0 -80px
    }

    .ui-icon-arrow-4-diag {
      background-position: -16px -80px
    }

    .ui-icon-extlink {
      background-position: -32px -80px
    }

    .ui-icon-newwin {
      background-position: -48px -80px
    }

    .ui-icon-refresh {
      background-position: -64px -80px
    }

    .ui-icon-shuffle {
      background-position: -80px -80px
    }

    .ui-icon-transfer-e-w {
      background-position: -96px -80px
    }

    .ui-icon-transferthick-e-w {
      background-position: -112px -80px
    }

    .ui-icon-folder-collapsed {
      background-position: 0 -96px
    }

    .ui-icon-folder-open {
      background-position: -16px -96px
    }

    .ui-icon-document {
      background-position: -32px -96px
    }

    .ui-icon-document-b {
      background-position: -48px -96px
    }

    .ui-icon-note {
      background-position: -64px -96px
    }

    .ui-icon-mail-closed {
      background-position: -80px -96px
    }

    .ui-icon-mail-open {
      background-position: -96px -96px
    }

    .ui-icon-suitcase {
      background-position: -112px -96px
    }

    .ui-icon-comment {
      background-position: -128px -96px
    }

    .ui-icon-person {
      background-position: -144px -96px
    }

    .ui-icon-print {
      background-position: -160px -96px
    }

    .ui-icon-trash {
      background-position: -176px -96px
    }

    .ui-icon-locked {
      background-position: -192px -96px
    }

    .ui-icon-unlocked {
      background-position: -208px -96px
    }

    .ui-icon-bookmark {
      background-position: -224px -96px
    }

    .ui-icon-tag {
      background-position: -240px -96px
    }

    .ui-icon-home {
      background-position: 0 -112px
    }

    .ui-icon-flag {
      background-position: -16px -112px
    }

    .ui-icon-calendar {
      background-position: -32px -112px
    }

    .ui-icon-cart {
      background-position: -48px -112px
    }

    .ui-icon-pencil {
      background-position: -64px -112px
    }

    .ui-icon-clock {
      background-position: -80px -112px
    }

    .ui-icon-disk {
      background-position: -96px -112px
    }

    .ui-icon-calculator {
      background-position: -112px -112px
    }

    .ui-icon-zoomin {
      background-position: -128px -112px
    }

    .ui-icon-zoomout {
      background-position: -144px -112px
    }

    .ui-icon-search {
      background-position: -160px -112px
    }

    .ui-icon-wrench {
      background-position: -176px -112px
    }

    .ui-icon-gear {
      background-position: -192px -112px
    }

    .ui-icon-heart {
      background-position: -208px -112px
    }

    .ui-icon-star {
      background-position: -224px -112px
    }

    .ui-icon-link {
      background-position: -240px -112px
    }

    .ui-icon-cancel {
      background-position: 0 -128px
    }

    .ui-icon-plus {
      background-position: -16px -128px
    }

    .ui-icon-plusthick {
      background-position: -32px -128px
    }

    .ui-icon-minus {
      background-position: -48px -128px
    }

    .ui-icon-minusthick {
      background-position: -64px -128px
    }

    .ui-icon-close {
      background-position: -80px -128px
    }

    .ui-icon-closethick {
      background-position: -96px -128px
    }

    .ui-icon-key {
      background-position: -112px -128px
    }

    .ui-icon-lightbulb {
      background-position: -128px -128px
    }

    .ui-icon-scissors {
      background-position: -144px -128px
    }

    .ui-icon-clipboard {
      background-position: -160px -128px
    }

    .ui-icon-copy {
      background-position: -176px -128px
    }

    .ui-icon-contact {
      background-position: -192px -128px
    }

    .ui-icon-image {
      background-position: -208px -128px
    }

    .ui-icon-video {
      background-position: -224px -128px
    }

    .ui-icon-script {
      background-position: -240px -128px
    }

    .ui-icon-alert {
      background-position: 0 -144px
    }

    .ui-icon-info {
      background-position: -16px -144px
    }

    .ui-icon-notice {
      background-position: -32px -144px
    }

    .ui-icon-help {
      background-position: -48px -144px
    }

    .ui-icon-check {
      background-position: -64px -144px
    }

    .ui-icon-bullet {
      background-position: -80px -144px
    }

    .ui-icon-radio-on {
      background-position: -96px -144px
    }

    .ui-icon-radio-off {
      background-position: -112px -144px
    }

    .ui-icon-pin-w {
      background-position: -128px -144px
    }

    .ui-icon-pin-s {
      background-position: -144px -144px
    }

    .ui-icon-play {
      background-position: 0 -160px
    }

    .ui-icon-pause {
      background-position: -16px -160px
    }

    .ui-icon-seek-next {
      background-position: -32px -160px
    }

    .ui-icon-seek-prev {
      background-position: -48px -160px
    }

    .ui-icon-seek-end {
      background-position: -64px -160px
    }

    .ui-icon-seek-start {
      background-position: -80px -160px
    }

    .ui-icon-seek-first {
      background-position: -80px -160px
    }

    .ui-icon-stop {
      background-position: -96px -160px
    }

    .ui-icon-eject {
      background-position: -112px -160px
    }

    .ui-icon-volume-off {
      background-position: -128px -160px
    }

    .ui-icon-volume-on {
      background-position: -144px -160px
    }

    .ui-icon-power {
      background-position: 0 -176px
    }

    .ui-icon-signal-diag {
      background-position: -16px -176px
    }

    .ui-icon-signal {
      background-position: -32px -176px
    }

    .ui-icon-battery-0 {
      background-position: -48px -176px
    }

    .ui-icon-battery-1 {
      background-position: -64px -176px
    }

    .ui-icon-battery-2 {
      background-position: -80px -176px
    }

    .ui-icon-battery-3 {
      background-position: -96px -176px
    }

    .ui-icon-circle-plus {
      background-position: 0 -192px
    }

    .ui-icon-circle-minus {
      background-position: -16px -192px
    }

    .ui-icon-circle-close {
      background-position: -32px -192px
    }

    .ui-icon-circle-triangle-e {
      background-position: -48px -192px
    }

    .ui-icon-circle-triangle-s {
      background-position: -64px -192px
    }

    .ui-icon-circle-triangle-w {
      background-position: -80px -192px
    }

    .ui-icon-circle-triangle-n {
      background-position: -96px -192px
    }

    .ui-icon-circle-arrow-e {
      background-position: -112px -192px
    }

    .ui-icon-circle-arrow-s {
      background-position: -128px -192px
    }

    .ui-icon-circle-arrow-w {
      background-position: -144px -192px
    }

    .ui-icon-circle-arrow-n {
      background-position: -160px -192px
    }

    .ui-icon-circle-zoomin {
      background-position: -176px -192px
    }

    .ui-icon-circle-zoomout {
      background-position: -192px -192px
    }

    .ui-icon-circle-check {
      background-position: -208px -192px
    }

    .ui-icon-circlesmall-plus {
      background-position: 0 -208px
    }

    .ui-icon-circlesmall-minus {
      background-position: -16px -208px
    }

    .ui-icon-circlesmall-close {
      background-position: -32px -208px
    }

    .ui-icon-squaresmall-plus {
      background-position: -48px -208px
    }

    .ui-icon-squaresmall-minus {
      background-position: -64px -208px
    }

    .ui-icon-squaresmall-close {
      background-position: -80px -208px
    }

    .ui-icon-grip-dotted-vertical {
      background-position: 0 -224px
    }

    .ui-icon-grip-dotted-horizontal {
      background-position: -16px -224px
    }

    .ui-icon-grip-solid-vertical {
      background-position: -32px -224px
    }

    .ui-icon-grip-solid-horizontal {
      background-position: -48px -224px
    }

    .ui-icon-gripsmall-diagonal-se {
      background-position: -64px -224px
    }

    .ui-icon-grip-diagonal-se {
      background-position: -80px -224px
    }

    .ui-corner-all,
    .ui-corner-top,
    .ui-corner-left,
    .ui-corner-tl {
      border-top-left-radius: 3px
    }

    .ui-corner-all,
    .ui-corner-top,
    .ui-corner-right,
    .ui-corner-tr {
      border-top-right-radius: 3px
    }

    .ui-corner-all,
    .ui-corner-bottom,
    .ui-corner-left,
    .ui-corner-bl {
      border-bottom-left-radius: 3px
    }

    .ui-corner-all,
    .ui-corner-bottom,
    .ui-corner-right,
    .ui-corner-br {
      border-bottom-right-radius: 3px
    }

    .ui-widget-overlay {
      background: #aaa;
      opacity: .3;
      filter: Alpha(Opacity=30)
    }

    .ui-widget-shadow {
      -webkit-box-shadow: 0 0 5px #666;
      box-shadow: 0 0 5px #666
    }

    .ui-state-default,
    .ui-widget-content .ui-state-default,
    .ui-widget-header .ui-state-default {
      background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAGQEAAAAAAao4lEAAAAAmJLR0T//xSrMc0AAAAJcEhZcwAAAEgAAABIAEbJaz4AAABISURBVDjLY3j6n2EUjSKqo1u3GG57MdxxY7gby3BvIsP9PwwPMxgefWB4Us7w9DHDcz+GF/MYXl5ieHWW4XUpw+uJo2gUEYMAvlejJVIWsXwAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTMtMDUtMDNUMDk6MjE6MDMtMDc6MDAeHtLpAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDEzLTA1LTAzVDA5OjIxOjAzLTA3OjAwb0NqVQAAAABJRU5ErkJggg==) repeat-x scroll 50% 50% #e6e6e6
    }

    .ui-widget-header .ui-icon {
      background-image: url(data:image/png;base64,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)
    }

    .ui-state-hover,
    .ui-widget-content .ui-state-hover,
    .ui-widget-header .ui-state-hover,
    .ui-state-focus,
    .ui-widget-content .ui-state-focus,
    .ui-widget-header .ui-state-focus {
      background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAGQEAAAAAAao4lEAAAAAmJLR0T//xSrMc0AAAAJcEhZcwAAAEgAAABIAEbJaz4AAABISURBVDjLY3j6n2EUjSKqo1u3GG57MdxxY7gby3BvIsP9PwwPMxgefWB4Us7w9DHDcz+GF/MYXl5ieHWW4XUpw+uJo2gUEYMAvlejJVIWsXwAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTMtMDUtMDNUMDk6MjE6MDMtMDc6MDAeHtLpAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDEzLTA1LTAzVDA5OjIxOjAzLTA3OjAwb0NqVQAAAABJRU5ErkJggg==) repeat-x scroll 50% 50% #e6e6e6
    }

    .ui-widget-content {
      background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAABkAQAAAADcH0/XAAAAAmJLR0QAAd2KE6QAAAAJcEhZcwAAAEgAAABIAEbJaz4AAAASSURBVCjPY/gPAgyj5ChJVRIAypHyHLPbLnsAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTMtMDUtMDNUMDk6MjE6MDMtMDc6MDAeHtLpAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDEzLTA1LTAzVDA5OjIxOjAzLTA3OjAwb0NqVQAAAABJRU5ErkJggg==) repeat-x scroll 50% 50% #fff
    }

    .ui-widget-header {
      background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAABkEAAAAAAy19n/AAAAAmJLR0T//xSrMc0AAAAJcEhZcwAAAEgAAABIAEbJaz4AAABaSURBVBjTY3h8jYFOaAPDo/cMj/QYHuYyPGhjuF/BcC+L4W4swx0NhltfGG7uZ7jRzXA9nOGaEsOV4wyXdzJcamW4WM5wYQLD+SaGcwcZzt5iOOvAcObMACIAsZae6pVZewYAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTMtMDUtMDNUMDk6MjE6MDMtMDc6MDAeHtLpAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDEzLTA1LTAzVDA5OjIxOjAzLTA3OjAwb0NqVQAAAABJRU5ErkJggg==) repeat-x scroll 50% 50% #ccc
    }

    .ui-datepicker {
      font: 9pt Arial, sans-serif
    }
  </style>
  <style type="text/css" data-name="030-default-min.css">
    #jr_overlay {
      top: 0;
      left: 0;
      padding: 0;
      margin: 0;
      z-index: 2147483646;
      position: absolute
    }

    #jr_wrap {
      position: absolute;
      width: 100%;
      z-index: 2147483647;
      padding: 0;
      margin: 0
    }

    #jr_inner {
      font-family: "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
      font-size: 12px;
      background: #FFF;
      border: 1px solid #CCC;
      color: #4f4f4f;
      margin: 0 auto;
      height: auto;
      padding: 20px;
      position: relative;
      box-sizing: content-box
    }

    #jr_header {
      display: block;
      color: #333;
      padding: 5px;
      padding-bottom: 0;
      margin: 0;
      font-family: Helvetica, Arial, sans-serif;
      font-weight: bold;
      font-size: 1.3em;
      margin-bottom: .5em
    }

    #jr_inner p {
      padding: 5px;
      margin: 0
    }

    #jr_inner ul {
      list-style-image: none;
      list-style-position: outside;
      list-style-type: none;
      margin: 0;
      padding: 0
    }

    #jr_inner ul li {
      cursor: pointer;
      float: left;
      width: 120px;
      height: 122px;
      margin: 0 10px 10px 10px;
      padding: 0;
      text-align: center
    }

    #jr_inner li a {
      color: #333;
      font-size: .8em;
      text-decoration: none;
      padding: 0;
      margin: 0
    }

    #jr_inner li a:hover {
      text-decoration: underline
    }

    #jr_inner .jr_icon {
      width: 100px;
      height: 100px;
      margin: 1px auto;
      padding: 0;
      background: transparent no-repeat scroll left top;
      cursor: pointer
    }

    #jr_close {
      clear: both;
      padding: 0;
      margin: 0
    }

    #jr_close a {
      color: #000;
      display: block;
      width: auto;
      margin: 0;
      padding: 0;
      text-decoration: underline
    }

    #jr_close p {
      padding: 10px 0 0 0;
      margin: 0
    }

    BODY.xm-body {
      margin: 0;
      padding: 0
    }

    FORM.xm-form * {
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      vertical-align: top;
      font-family: "Lucida Grande", tahoma, arial, sans-serif
    }

    FORM.xm-form {
      font-size: 12px;
      padding: 10px
    }

    DIV.xm-item-div.CXTextArea,
    DIV.xm-item-div.CXTextField,
    DIV.xm-item-div.CXUpload,
    DIV.xm-item-div.CXSelect,
    DIV.xm-item-div.CXCheckbox {
      display: inline-table;
      width: 100%
    }

    DIV.xm-item-div.CXTextArea,
    DIV.xm-item-div.CXTextField,
    DIV.xm-item-div.CXUpload,
    DIV.xm-item-div.CXSelect {
      table-layout: fixed
    }

    DIV.xm-item-div.CXCheckbox LABEL,
    DIV.xm-item-div.CXCheckbox INPUT {
      text-align: left !important;
      display: table-cell
    }

    DIV.xm-item-div.CXCheckbox LABEL.label-right {
      width: 100% !important
    }

    DIV.xm-item-div.CXCheckbox.label-top LABEL,
    DIV.xm-item-div.CXCheckbox.label-top INPUT,
    DIV.xm-item-div.CXCheckbox.label-bottom LABEL,
    DIV.xm-item-div.CXCheckbox.label-bottom INPUT {
      float: none;
      display: block
    }

    .error-static-view DIV.xm-item-div.CXCheckbox .xm-error-container.label-left .tc {
      display: none
    }

    DIV.xm-item-div {
      line-height: 18px;
      padding: 10px
    }

    DIV.xm-item-div .XSpan {
      line-height: initial
    }

    DIV.xm-form-row>DIV.xm-item-div {
      padding-right: 0;
      padding-bottom: 0
    }

    DIV.XPage LABEL {
      display: inline-block
    }

    .XItem>DIV.xm-item-div {
      display: inline-table;
      padding-bottom: 0
    }

    .XItem P {
      margin-top: 0;
      margin-bottom: 0;
      margin-left: 0;
      margin-right: 0
    }

    .XItem:focus:not(:disabled),
    border:1px solid #3455db
    }

    .xm-item-div.label-followup .XTextField:focus {
      border: 1px solid #3455db
    }

    .xm-counter {
      display: table-row;
      color: gray
    }

    .xm-counter:hover {
      color: black
    }

    .xm-form-row {
      padding-right: 10px
    }

    DIV.xm-item-div,
    .XTextArea {
      font-size: 12px
    }

    DIV.xm-item-div {
      color: #525252
    }

    .XPage {
      background-color: #fff;
      display: inline-table;
      width: 100%;
      color: #525252;
      padding-bottom: 10px
    }

    .CXPage .header,
    .CXPage .footer {
      padding: 1px 10px;
      background-color: #FFF
    }

    .xm-item-div.CXPage {
      display: inline-table
    }

    .xm-item-div.CXPage {
      padding: 0;
      width: 100%
    }

    .XContainer {
      background-color: #eee;
      border: 1px solid #525252;
      min-height: 25px;
      padding-bottom: 10px
    }

    .XFieldSet {
      margin: 0;
      padding: 0;
      padding-bottom: 10px
    }

    .XFieldSet>LEGEND {
      margin-left: 10px
    }

    .XSpan {
      display: block;
      width: 100%
    }

    .XTextArea {
      width: 100%;
      height: 0;
      display: block
    }

    .XTextField {
      width: 100%;
      display: block
    }

    .XUpload {
      width: 100%
    }

    .XSelect {
      width: 100%;
      display: block
    }

    .XLine {
      width: 100%;
      background-color: gray
    }

    .XSpacer {
      width: 100%;
      min-height: 25px
    }

    .required-star {
      color: #e00000
    }

    .required-group-star {
      color: orange
    }

    .dyn-icon {
      width: 20px;
      height: 16px;
      background-repeat: no-repeat
    }

    .delete-button.label-top {
      background-position: right 20px
    }

    .delete-button.label-left,
    .delete-button.label-right,
    .delete-button.label-bottom {
      background-position: right 2px
    }

    .XPage LABEL.unit {
      display: table-cell;
      vertical-align: top;
      padding-left: 4px
    }

    .XPage LABEL.unit.top {
      padding-top: 20px
    }

    .dyn-del-button:disabled {
      opacity: .5
    }

    .XPage LABEL SUP,
    .XPage SPAN SUP {
      vertical-align: super
    }

    .XPage LABEL SUB,
    .XPage SPAN SUB {
      vertical-align: sub
    }

    .dyn-add-button:disabled {
      opacity: .5
    }

    .emote {
      display: inline-block;
      width: 18px;
      height: 18px;
      background-size: 18px 18px
    }

    .add-button {
      float: right;
      background-position: right center
    }

    .dynamic-row {
      margin-bottom: 5px;
      display: inline-table;
      width: 100%
    }

    .xm-help-container {
      display: table-cell;
      width: 21px;
      vertical-align: top
    }

    .xm-help-icon {
      position: relative;
      width: 16px;
      height: 16px;
      margin-left: 5px;
      background-position: right top;
      background-repeat: no-repeat
    }

    DIV.xm-item-div.ld-top .icon {
      margin-top: 18px
    }

    .xm-help-icon .xm-help-text {
      display: none
    }

    .xm-del-button-container {
      display: table-cell;
      width: 21px;
      vertical-align: top
    }

    .xm-del-button-icon {
      position: relative;
      width: 16px;
      height: 16px;
      margin-left: 5px;
      background-position: right top;
      background-repeat: no-repeat
    }

    .xm-del-button-icon.label-top {
      margin-top: 18px
    }

    DIV.xm-item-div.CXFooter {
      padding: 0
    }

    .xm-form-footer {
      padding-left: 13px;
      width: auto
    }

    .xm-form-footer:not(:empty) {
      padding-bottom: 10px
    }

    .xm-footer-hint,
    .xm-header-hint {
      font-size: 10px;
      padding: 10px
    }

    .xm-logo {
      color: #696969;
      font-family: Arial, Helvetica, sans-serif;
      font-size: 11px !important;
      padding: 0 10px 10px 10px
    }

    .xm-logo a {
      text-decoration: none;
      color: #696969
    }

    .xm-logo a img {
      border: 0
    }

    .xm-logo a:visited {
      color: #696969;
      text-decoration: none
    }

    .xm-t-right {
      text-align: right
    }

    .xm-t-left {
      text-align: left
    }

    .xm-t-center {
      text-align: center
    }

    DIV.xm-item-div.error>.XItem,
    .dynamic-row.error>.XItem {
      box-shadow: 0 0 2px #e00000
    }

    .xm-error-container UL {
      padding-left: 20px;
      margin: 0
    }

    .error>.xm-error-container,
    .xm-help-container {
      display: table-cell;
      width: 21px;
      vertical-align: top
    }

    .error-static-view .xm-error-container.label-left .tc {
      display: table-cell
    }

    .xm-error-container {
      display: none
    }

    .xm-error-icon,
    .xm-help-icon {
      position: relative;
      width: 16px;
      height: 16px;
      margin-left: 5px;
      background-position: right top;
      background-repeat: no-repeat
    }

    .xm-error-icon.label-top,
    .xm-help-icon.label-top {
      margin-top: 18px
    }

    .xm-error-icon .xm-error-text,
    .xm-help-icon .xm-help-text {
      display: none
    }

    .error-dynamic-view .xm-error-icon:hover .xm-error-text,
    .xm-help-container:focus .xm-help-icon .xm-help-text,
    .xm-help-icon:hover .xm-help-text,
    .error-dynamic-view .xm-error-text.toggled,
    .xm-help-text.toggled {
      display: block;
      top: 0;
      margin-left: -204px;
      position: absolute;
      width: 200px;
      border: 1px solid #ebebeb;
      z-index: 9000;
      background-color: #ffffb4;
      box-shadow: 3px 3px 3px #7b7b7b;
      min-height: 40px;
      padding: 10px;
      color: black
    }

    .error-static-view .error>.xm-error-container {
      display: table-row;
      width: 100%
    }

    .error-static-view .xm-error-icon {
      width: 100%;
      background-position: left top;
      height: auto;
      margin-left: 0;
      margin-top: 0;
      background-image: none;
      color: #e00000
    }

    .error-static-view .xm-error-text {
      display: block
    }

    .error-static-view .xm-error-container UL {
      padding-left: 15px;
      margin: 0
    }

    .xm-hidden {
      display: none !important
    }

    .error-static-view.error-static-view-bubble .xm-error-icon {
      display: table;
      width: auto
    }

    .error-static-view.error-static-view-bubble .xm-error-icon {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAGCAYAAAD37n+BAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3wYJCAAdsOGDEQAAAEpJREFUGNNj/P//PwM6mMXIX8DAwMCQ9v/jBHQ5FmyKZXR1+qFsDE1MuBQzMDAwyOjq9MNsw9CArhiXJiZ8irFpYtyqa/WfgQQAANlQG4dRAZ34AAAAAElFTkSuQmCC");
      background-position: 8px 1px;
      background-repeat: no-repeat;
      pointer-events: none
    }

    .error-static-view.error-static-view-bubble .error .xm-error-icon .xm-error-text {
      padding: 2px 8px;
      border-radius: 4px;
      margin-top: 6px;
      background-color: #b52d3a;
      color: #fff
    }

    .error-static-view.error-static-view-bubble .xm-error-container UL {
      padding-left: 0;
      list-style-type: none
    }

    .error-static-view.error-static-view-bubble .xm-item-div.error>.XItem,
    .error-static-view.error-static-view-bubble .dynamic-row.error>.XItem {
      border: 1px solid #e00000;
      box-shadow: none
    }

    .xfc-preview-tools {
      padding: 0;
      font-size: 12px;
      text-align: left;
      box-shadow: 0 3px 6px #333
    }

    .xfc-preview-tools SELECT {
      margin-bottom: 5px
    }

    .xfc-preview-tools.ui-dialog .ui-dialog-titlebar {
      padding: 4px;
      border: 0 none;
      border-radius: 0
    }

    .xm-tools-button {
      float: right;
      height: 18px;
      margin-right: 4px;
      margin-top: 2px;
      width: 18px;
      cursor: pointer;
      background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIEFCAt5EYGbgAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAAEQSURBVDjLpVNbbcQwEJxEBWAIByH1EkgglMFBSBGcg8BlUggxAUtlcGWQYzD30XW6cd1TpY60cjSafW867z0Kcs4OwDuAEcAiIkH5AOACIAF4EZFb8XnCEYM6A8Al55zKt76jagqPzlag2YgHEJHuQJB0JEfvPUgO/MaVZFS7Gn5Q7UjSdSRXU3bBq4i8VZXNAGKlS+BPzJrhRDKonZSbazFUsJdtnDfDbyaIbSf0uqpJS/rU9wzAAXhWc8pZzSQiof9l2Lc/cqhb2HQrrtFCiw+tIUbt1enQziSdcrE1xLUVpDiZYLGhWx8dEjV4neB4SP895b5yri9yMituauo1fpg/bRGRJCIJwLKf7pdmxx0EA69nB/h9TAAAAABJRU5ErkJggg==');
      background-position: center center
    }

    .xm-review-toolbar-wrapper,
    .xm-review-toolbar {
      height: 28px;
      padding-bottom: 16px
    }

    .xm-review-tb-button {
      margin-right: 5px;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ececec), color-stop(1, #dfdfdf));
      background: -moz-linear-gradient(top, #ececec 5%, #dfdfdf 100%);
      background: -webkit-linear-gradient(top, #ececec 5%, #dfdfdf 100%);
      background: -o-linear-gradient(top, #ececec 5%, #dfdfdf 100%);
      background: -ms-linear-gradient(top, #ececec 5%, #dfdfdf 100%);
      background: linear-gradient(to bottom, #ececec 5%, #dfdfdf 100%);
      background-color: #ececec;
      -moz-border-radius: 4px;
      -webkit-border-radius: 4px;
      border-radius: 4px;
      border: 1px solid #bfbfbf;
      display: inline-block;
      cursor: pointer;
      color: #555;
      font-family: Arial;
      font-size: 12px;
      font-weight: bold;
      padding: 4px 8px;
      text-decoration: none;
      text-shadow: 0 1px 0 #b8b8b8
    }

    .xm-review-tb-button:hover {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #dfdfdf), color-stop(1, #ececec));
      background: -moz-linear-gradient(top, #dfdfdf 5%, #ececec 100%);
      background: -webkit-linear-gradient(top, #dfdfdf 5%, #ececec 100%);
      background: -o-linear-gradient(top, #dfdfdf 5%, #ececec 100%);
      background: -ms-linear-gradient(top, #dfdfdf 5%, #ececec 100%);
      background: linear-gradient(to bottom, #dfdfdf 5%, #ececec 100%);
      background-color: #dfdfdf
    }

    .xm-review-tb-button:active {
      position: relative;
      top: 1px
    }

    .xm-review-tb-button.clicked {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #aaa), color-stop(1, #ececec));
      background: -moz-linear-gradient(top, #aaa 5%, #ececec 100%);
      background: -webkit-linear-gradient(top, #aaa 5%, #ececec 100%);
      background: -o-linear-gradient(top, #aaa 5%, #ececec 100%);
      background: -ms-linear-gradient(top, #aaa 5%, #ececec 100%);
      background: linear-gradient(to bottom, #aaa 5%, #ececec 100%);
      background-color: #aaa
    }

    .xm-review-toolbar {
      position: fixed;
      z-index: 1000;
      background-color: #fff;
      padding: 2px 0 0 2px;
      width: 100%;
      overflow: hidden;
      text-align: left;
      background-image: linear-gradient(#ececec, #dfdfdf);
      border-radius: 6px 6px 0 0;
      color: #555;
      text-overflow: ellipsis;
      box-shadow: 0 3px 10px #a9a9a9
    }

    .xm-help-icon {
      cursor: help
    }

    .xm-help-container {
      outline: 0
    }

    .xm-help-container:focus .xm-help-icon .xm-help-text,
    .xm-help-icon:hover .xm-help-text {
      color: #fff;
      top: 22px;
      right: -3px;
      background-color: #737373;
      background-color: rgba(102, 102, 102, 0.9);
      border: 1px solid #666;
      border-radius: 4px;
      box-shadow: 0 0 6px rgba(0, 0, 0, 0.4);
      padding: 5px 9px;
      text-align: left;
      min-height: 0;
      word-wrap: break-word;
      width: auto;
      max-width: 200px
    }

    .ui-autocomplete {
      text-align: left
    }

    .xm-help-text:before {
      content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAGCAYAAAA2aTUtAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAMBJREFUeNqUkLEKgzAQho3kwJpZCsEn6JBF8JHMG3TO3NHNh+rSIU/gA0hcDDHYS8EiFKO96XIH3/dfyLIsyV4RQr590zTAOa+yLLvP8/woiuIppXTrPso5IwmCPM8FvpX3/sYY05RSVZblaxXFOGlyUKsAWzVNk7DWXowxAq9Rfd+LruvgiJGeFSBc4BUQEqMA/hFFJQBQbQXb/w+icRw/Iq11FePQ2NI51yLkitCfpEGEexiGIQRocVTvcd4CDAAB/3ejFkfC2QAAAABJRU5ErkJggg==");
      position: absolute;
      right: -2px;
      top: -13px
    }

    .XItem.label-left,
    .XItem.label-right {
      vertical-align: top
    }

    .XItem LABEL.label-left {
      padding-right: 5px;
      display: table-cell;
      vertical-align: top
    }

    .XItem LABEL.label-right {
      display: table-cell;
      vertical-align: top
    }

    .label-icon-radio {
      display: none
    }

    .label-icon-checkbox {
      display: none
    }

    .xm-w100 {
      width: 100% !important
    }

    .CXUpload .XImagePreview {
      max-width: 100%
    }

    .img-upload-preview,
    .img-uploaded-preview {
      margin-right: -60px
    }

    .img-upload-preview {
      padding-top: 3px
    }

    .img-uploaded-preview {
      padding-bottom: 5px
    }

    .img-upload-preview-none SPAN {
      display: block;
      margin-bottom: -18px;
      position: relative;
      text-align: center;
      width: 100%
    }

    .img-upload-preview-del:after {
      content: "\f056";
      font-family: 'FontAwesomeFile';
      font-size: 21px;
      position: relative;
      color: #ff031a;
      cursor: pointer
    }

    .img-upload-preview-none {
      border-style: solid;
      border-width: 1px;
      display: inline-block;
      height: 150px;
      max-width: 250px;
      width: 100%
    }

    .img-upload-preview-none:after {
      content: "\f0c7";
      font-family: 'FontAwesomeFile';
      font-size: 80px;
      position: relative;
      color: #515151;
      right: -90px;
      top: 65px
    }

    @media \0creen {
      .img-upload-preview-none:after {
        content: "-" !important;
        font-family: Arial !important
      }
    }

    .img-upload-preview-del {
      display: inline-block;
      margin-left: -30px;
      position: relative;
      top: 10px;
      width: 30px
    }

    .img-upload-preview-del:hover {
      text-shadow: 0 0 3px #333
    }

    @font-face {
      font-family: 'FontAwesomeFile';
      src: url(data:application/font-ttf;charset=utf-8;base64,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) format('truetype');
      font-weight: normal;
      font-style: normal
    }

    .CXTable table {
      border-collapse: collapse;
      text-align: left;
      width: 100%
    }

    .CXTable table {
      font: normal 12px/150% Arial, Helvetica, sans-serif;
      background: #fff;
      overflow: hidden;
      border: 1px solid #8c8c8c
    }

    .CXTable table td,
    .CXTable table th {
      padding: 3px 10px;
      vertical-align: middle
    }

    .CXTable table thead th {
      background-color: #696969;
      color: #fff;
      font-size: 12px;
      font-weight: bold;
      border-left: 1px solid #a3a3a3
    }

    .CXTable table thead th {
      text-align: center
    }

    .CXTable table thead th:first-child {
      border: 0;
      padding: 4px;
      text-align: left
    }

    .CXTable table tbody td {
      border-left: 1px solid #dbdbdb;
      font-size: 12px;
      font-weight: normal;
      padding: 5px 8px 4px 4px
    }

    .CXTable table tbody .alt td {
      background: #ebebeb
    }

    .CXTable table tbody td.odd {
      background: #ebebeb
    }

    .CXTable table tbody td {
      text-align: center;
      min-width: 55px
    }

    .CXTable table tbody td:first-child {
      border-left: 0;
      text-align: left;
      width: 100%
    }

    .CXTable table tbody tr:last-child td {
      border-bottom: 0
    }

    .modern .CXTable .xm-help-icon.label-top {
      margin-top: 0
    }

    .xm-design-panel .CXTable .xm-help-icon.label-top {
      margin-top: 0
    }

    .opt-div {
      display: table
    }

    .opt-div Input {
      display: table-cell
    }

    DIV.XPage LABEL.opt-label-right,
    DIV.XPage LABEL.opt-label-left {
      display: table-cell
    }

    DIV.XPage LABEL.label-icon-checkbox,
    DIV.XPage LABEL.label-icon-radio {
      display: none;
      min-width: 30px
    }

    DIV.XPage .CXTable LABEL.opt-label-right,
    DIV.XPage .CXTable LABEL.opt-label-left {
      display: inline
    }

    DIV.XPage .opt-fixed-width LABEL.opt-label-left,
    DIV.XPage .opt-fixed-width LABEL.opt-label-right {
      width: 100%
    }

    DIV.XPage LABEL.opt-label-top,
    DIV.XPage LABEL.opt-label-bottom,
    DIV.XPage LABEL.label-icon-checkbox.opt-top,
    DIV.XPage LABEL.label-icon-checkbox.opt-bottom,
    DIV.XPage LABEL.label-icon-radio.opt-bottom,
    DIV.XPage LABEL.label-icon-radio.opt-top {
      display: block
    }

    .xm-footer-links {
      font-size: 12px;
      padding: 10px 60px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap
    }

    .xm-footer-link-wrapper {
      padding: 0 8px
    }

    .xm-footer-privacy-inline,
    .xm-footer-imprint-inline {
      width: 100%;
      padding: 8px 0
    }

    .xm-footer-links-separator-vertical {
      border-right: 1px solid #ddd
    }

    .xm-dialog {
      -webkit-box-shadow: rgba(0, 0, 0, 0.4) 0 10px 26px;
      -moz-box-shadow: rgba(0, 0, 0, 0.4) 0 10px 26px;
      box-shadow: rgba(0, 0, 0, 0.4) 0 10px 26px;
      border: 0;
      padding: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      max-width: 90vw
    }

    .xm-dialog-titlebar {
      background: #f2f2f2;
      border: 0;
      border: 1px solid #ddd
    }

    .xm-body .xm-template-dialog-content {
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      padding: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column
    }

    .xm-template-dialog-iframe {
      border: 0;
      height: 90vh;
      width: 100%;
      min-height: 300px;
      max-height: 90vh
    }

    .add-button {
      background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAcJJREFUeNqkU01L40AYfmKbaMRuMQcR7OKhXpSV7rns9rJID8Ie9y8I/pf9Af0LexcURcSDLPuN7LEtupSFSNWUpE4zSWZ2ZmK+2sMKZniTd2ae55k37/uOxjnHc56yfGmfVpagYU+4bWHWfzh3wo7A0eEfbjwlAM73Nlbr+6/XGzVTXzDy6OkISUDor6vLes/uy+nHWCBCu/Fyu0YffIPCT8Gj0Uh9q9VqXsN4tbZV6/3tt3MC3CqhZLgTN0W5rouL1oHym+e7qFQq6Z5pmobkpDlAyOH7PgghKYhSWvDze5qmKU5BQILyItIfDodqfv3nGoyxmFAuw7KsWYEgCDAej/F95wS2bcPzPCWg6zq+vTtWRGmbh024vjsrEEURSEjQ7XZV5iVYkhNiYhA1CvVwSiDguKf3cHQHb3+/j39UYH6+OVWk7bNWggReiJxrkeIUInBKDviiWFxMCo7s1GWZ+qyOTIyZCKjoAMwhj8oE5pEJy+YSoxiBz+4CJspgIutCceLmj2bsrxV7mRFGJUf68ZlOeOR+vh1woYIFMU+s/mi5NRZEdPLFGUhOFgFhnclXB8Kefpnm5zqqqZ57nf8JMACMJuWZdL+VLAAAAABJRU5ErkJggg==)
    }

    .add-button[disabled] {
      background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAAAXNSR0IArs4c6QAAAAJiS0dEAP+Hj8y/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3AsXCBwVlo/AzQAAAQhJREFUKM+F0TFKA2EQBeBv47+7KNoEGzGF6GFyEUXUI1hbWlhJwMLaG+QcglhYqQiCBBIjSf7NbiyyqyCiMzDMm3m8gXnJwt8ROF1PDnW1f2wG+ove2TjgcPt4r5Nly3mjGOPD3gvnLcrubmeSDQ0NPXoyMjIyzXY6ZZdA1ZZNwbt9XNkAq1nVJlCamSxl67pEiVJNiDVl5s3EowpB+5tQ+HDi1dib1JEguDBtCJVS4cFCkApf2aqVzE0s3KB0ILi0gjWJeXOikssRBcGG+iXNibkVef2kIEhrpFEoBmXMM8hdY7Nez2IxoMW4f/s8j6lUasuWZVfEu+dxn0Ds3bv/1ay0R/Kf3Z/fyGc+N8Zo5QAAAABJRU5ErkJggg==)
    }

    .xm-del-button-icon {
      background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAWVJREFUeNqkU0FqwkAU/YnJtE2yEtxJF5VCcelCcNGFK2/QKwi9Sw/QK3TbVQ8gll4gWRYqrkRCEuNkJmb6Rm2oDdWAH94wf5j3/vufGUMpReeEoQVeDMMziMbIR0DzBGcJvKHs84NSiaVPkIyvu93Hu8GgzRyH/cfUxUSaCn867Xz5vj562gpsUPm2328nnDPi/JRrdtPrtT99f/RboFmYJkuSpFbfruuyzb7VrUAOcFSO47iWgG4l3+9LgTRNabValZeklJQi1xBCUJ7vKJZlUavVqgr8XLqfTGg+n1MYhtRoNLRd8jyPGNvN9rXToXUUVQU0WaCFIAi2e9u2K2QdV5oEdwcCEsiWS1KLBQXD4dH+PcBEAfnXgQEBB8Nx6kyxKKoOGGZQO1DowEGG57nBFNEfq8NfF4XIdk+aTL2EeNvvUTSTSolL5McgQf7gfKY5pYM1PgYOCaj9mS7AKX/jOfEtwABLp7brtg4M2QAAAABJRU5ErkJggg==)
    }

    .xm-del-button-icon[disabled] {
      background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAAAXNSR0IArs4c6QAAAAJiS0dEAP+Hj8y/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3AsXCB0k3krxtgAAAN1JREFUKM+FkT1uwkAQRt8uy0oRVJbo3KEoZQqkHCCNz0GFlLtwAN+AK/gKnAAlLUqRYrHABrRZe6iM+bFgpnxPmm/0KeHxGHgdMiMhuiGOjPSnMMDs7esjfrGXVDj45fgb5hokmcQH67jcDUf7HksCBiRStui4PrASgQE4susQpAkp7CkB+KekxBMAwwhpBE9gwS85PQYMscAnu1YIFKwI9M8YNFUr5ORMbxL0qFthi0bfhVStUHXg5g8D4rzX9h4HLw40hOxvXXvN9VZ+sw4ZGKhTh+ssS6WgntV9AvQwXBjKSL7xAAAAAElFTkSuQmCC)
    }

    .xm-error-icon {
      background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAjRJREFUeNqkU81u2kAQHmxjvEagxC1VhVQOQFQ5qpA4VWpVyScuUS/03JfgCfIEnPoGvaNKkZJrL/05pKccrChBRC0kgAwY29jG+KezJiCHqqdY+uzZmf2+mdkdp6Iogsc8HH19TqWAxS9FCqCIaKL5BlG63/cb8R1TdRC3AS4oPmJybkfwfZqQVrlWqxYPDiSSzwu0Qscw6rdXV+96FxcfPMdp476TBxVsyGRv7/j10ZEccRxZ+j7c9XpxQJIk8bksi4Vy+cn52dnxYj6HjQhDX1hWkRWEVr3RkOe2TXRdh8FgALXT0xjUpj7LdckrRZGZTKZFOVsB7KdZOjyszkyTzFHdNE2wbXtbGrWpzzAMMFHkWaVSDdbntG7BB3ibKxQkbTrdkizLgtFoFJNusJUwCNY9cxw83d+XKAeXnzYCL0KGEXzsO1itwJzNwF4soN/vQzqdBgb97EYZ465tC5STrAB8DHi0dKwiwmxp9FFyNpsFfue0WdzrJ29hBfDHHI/rkaaJJDFYqqLE3/zOXa88z6Wc7SGi2rfxcDjJYX8irsX1QIGiqtDodmNbTMBwnCnlJAU6N5NJFxjGEXEq6aYMguf5OGMmQQ7D0Bkul9eUsxUIcTwXQdD+oWkqBhyCIgX0/6xUYlCbIDwkn1uWaodhm3IeTCI6Tu7wtL/oekvm+epLnpdKLCvQmB4E7qXnTVXPu14hOf+fUY5FtDD89dV1m4h/fia8yk7uPvPmST32d/4rwADXYRP4WSwJ+gAAAABJRU5ErkJggg==)
    }

    .xm-help-icon {
      background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAghJREFUeNqkU01rE0EYfmZ39qNJS0glQntoRSIWirRoEUT0EKHixR/gRY8FPeoPELwLireCij9APHgpKCJWQREkyB6stNZIRaQ0a7qzn7Pj7CTZzZ566MDLPvPO+zzzzOw7RAiBwwySCdDFtSoIuS7nLRn1Azh7Ml5DiKfJl2WP9nPixuL81Mr5s7NN2zLscr3A0GT29YM4eP9p+2Tb+U1k6lFfIOWtc0szTbfLbHdAc123JFOr1YbQXlqYbra//moVAoJPakTYQRCoaa/Xw8uHp0oCd+5voPPXUNg0x+yMk+GhA0RRCN/3B1YFHjxzFD5xrI4rF6YwN2vi20+mcoZBFCcXEDwhQRAhDMN8xxdvPXgew8WFXRyt7GDjexeO40KnOhqNScUZcZCQOI7BOUeScLj/9sH8AGfmbFy7XIezxfD8DYNGLWT3yVisOKMCiuiHCdxegDQlIDrF3ZUZtXzvyR9Qa7z4L8RQnEJA2tlnKbxIh25WoQ8Kr97e7l9apdwaRCeKUzqCz00Y1kReFIce1h+fVrh1c0uuVcvtUToCjwm0iiyyCpsjLU7NSkk85+QCSbQXxSKk9niuIDEu3dpUeKJxvMSNmBdmnAxraje/+2rz47tOGsUhNcYwjPr0vIrRHJc1Pz6vdzJO4SAOV3faHzQZy3J25IDHtCtjjVBrNX+Nhxn/BRgAx2Lr29YMSnkAAAAASUVORK5CYII=)
    }
  </style>
  <style type="text/css" data-name="031-extended-min.css">
    @font-face {
      font-family: 'FontAwesomeCB';
      src: url(data:application/font-ttf;charset=utf-8;base64,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) format('truetype');
      font-weight: normal;
      font-style: normal
    }

    .body.modern {
      text-align: center;
      margin: 0
    }

    .body .xm-form.modern {
      margin: 0 auto;
      text-align: left
    }

    .xm-form.modern *,
    .modern .XPage * {
      font-family: Helvetica
    }

    .modern .XPage LABEL.unit.top {
      padding-top: 25px
    }

    .modern.error-static-view.error-static-view-bubble .error .xm-error-icon .xm-error-text {
      padding: 5px 10px
    }

    .modern .xm-item-div.label-top.label-none .xm-error-icon {
      margin-top: 0
    }

    .modern .xm-item-div LABEL,
    .modern .CXPage .header h1,
    .modern .CXPage .header h2,
    .modern SPAN.required-star,
    .modern .xm-error-text,
    .modern .xm-progress-text {
      font-size: 12px;
      font-weight: bold
    }

    .modern .xm-item-div .xm-counter SPAN {
      color: gray
    }

    .modern .xm-item-div .xm-counter:hover SPAN {
      color: black
    }

    .modern .xm-item-div LABEL::before {
      font-weight: normal
    }

    .modern .xm-item-div .XItem {
      font-size: 14px
    }

    .xm-form.modern .xm-form-footer {
      padding-left: 0
    }

    .xm-form.modern .xm-content DIV[align=center] {
      margin: 0 !important
    }

    .xm-form.modern .xm-form-footer {
      padding-top: 0
    }

    .xm-form.modern .xm-logo {
      padding-top: 60px;
      padding-bottom: 40px
    }

    .xm-form.modern .xm-logo {
      text-align: right
    }

    .xm-form.modern .xm-logo a img {
      display: none
    }

    .xm-form.modern .xm-logo a {
      padding: 10px 20px;
      -moz-border-radius: 5px;
      -webkit-border-radius: 5px;
      border-radius: 5px;
      font-size: 12px;
      line-height: 14px;
      border: 1px solid;
      margin-right: 0
    }

    .xm-form.modern a:hover,
    .modern .XButtonList:hover {
      background-color: transparent;
      text-decoration: none;
      cursor: pointer
    }

    .modern .XButtonList {
      padding: 10px 20px;
      font-size: 34px;
      border-width: 1px;
      border-style: solid;
      font-weight: bold
    }

    .xm-form.modern a,
    .modern .XButtonList:hover {
      -moz-transition: all .5s ease;
      -o-transition: all .5s ease;
      -webkit-transition: all .5s ease;
      transition: all .5s ease
    }

    .modern .XButton:disabled,
    .modern .XButton:disabled:hover {
      background-color: #ebebe4;
      color: #b4b4b4;
      -moz-opacity: .75;
      -khtml-opacity: .75;
      opacity: .75;
      cursor: not-allowed
    }

    .modern .CXButtonList.xm-t-right .XButtonList {
      margin-left: 10px
    }

    .modern .CXButtonList.xm-t-center .XButtonList {
      margin-left: 10px
    }

    .modern .CXButtonList.xm-t-left .XButtonList {
      margin-right: 10px
    }

    .modern .CXPage .header,
    .xm-progress-bar {
      padding: 0 60px;
      border-bottom: 1px solid
    }

    .modern .CXPage .header h1 {
      font-size: 32px;
      line-height: 32px;
      margin: 0;
      padding-bottom: 20px;
      padding-top: 20px
    }

    .modern .CXPage .header h2 {
      font-size: 18px;
      line-height: 18px;
      margin: 0;
      font-weight: normal;
      padding-bottom: 20px
    }

    .modern .XFooter,
    .modern .XHeader,
    .modern .XPage {
      padding: 0 50px
    }

    .modern .XHeader:not(:empty),
    .modern .XFooter:not(:empty) {
      padding-bottom: 10px
    }

    .modern .xm-design-panel .XHeader:not(:empty),
    .modern .xm-design-panel .XFooter:not(:empty) {
      padding-bottom: 0
    }

    .modern .XPage {
      padding: 25px 50px
    }

    .modern .xm-item-div.CXPage,
    .modern .xm-item-div.CXFooter,
    .modern .xm-item-div.CXHeader {
      padding: 0
    }

    .modern .xm-footer-hint,
    .modern .xm-header-hint {
      font-size: 12px;
      padding: 0 60px;
      padding-bottom: 10px
    }

    .modern .CXFooter .xm-logo {
      margin-right: 50px
    }

    .CXFooter,
    .CXHeader {
      background-color: #f7f7f7
    }

    .modern .XTextArea,
    .modern .XTextField,
    .modern .XFieldSet,
    .modern .XSelect {
      border-width: 1px;
      border-style: solid;
      padding: 7px 11px
    }

    .modern .XItem.XSelect.XDropDown {
      padding: 6px 11px
    }

    .modern .XSelect.XCheckbox,
    .modern .XSelect.XRadio {
      border-width: 0;
      padding: 0;
      padding-top: 2px
    }

    .modern .XFieldSet {
      padding-bottom: 35px;
      padding-top: 0;
      padding-left: 0;
      padding-right: 0;
      margin-top: 0;
      border: 0
    }

    .modern .XFieldSet LEGEND {
      margin: 0;
      padding: 17px 10px;
      font-size: 18px
    }

    .modern .CXFieldSet,
    .modern .XFieldSetWrapper,
    .modern .XTextArea,
    .modern .XTextField,
    .modern .XFieldSet,
    .modern .XSelect,
    .modern .XButtonList,
    .modern .XContainer,
    .modern .XRadius {
      -moz-border-radius: 2px;
      -webkit-border-radius: 2px;
      border-radius: 3px
    }

    .modern .xm-item-div LABEL.label-top {
      margin-bottom: 4px
    }

    .modern .XSelect:required [value=""] {
      display: none
    }

    .modern .XPage {
      counter-reset: fieldsets
    }

    .modern .XPage LABEL.unit.top {
      padding-top: 30px
    }

    .modern .CXFieldSet .XFieldSetWrapper {
      border-width: 1px;
      border-style: solid;
      margin-top: 40px
    }

    .modern .CXFieldSet:not(.xm-hidden) {
      counter-increment: fieldsets
    }

    .modern .CXFieldSet>.XFieldSet>legend:before {
      content: "" counter(fieldsets) ". "
    }

    .modern .xm-progress-bar {
      margin-top: -1px;
      padding-top: 8px;
      padding-bottom: 8px
    }

    .modern .xm-progress-bar-percent {
      display: inline-block;
      height: 5px;
      margin-right: 20px;
      margin-top: 7px;
      -moz-border-radius: 2px;
      -webkit-border-radius: 2px;
      border-radius: 2px
    }

    .modern .xm-progress-bar-percent-p {
      height: 5px
    }

    .modern .xm-del-button-icon,
    .modern .dyn-icon {
      height: 21px;
      width: 16px
    }

    .modern .add-button {
      margin-right: 0
    }

    .modern .XItem LABEL.label-left,
    .modern .XItem LABEL.label-right,
    .modern .error>.xm-error-container,
    .modern .xm-help-container,
    .modern .XItem LABEL.unit.left,
    .modern .XItem LABEL.unit.right {
      vertical-align: top
    }

    .modern .CXUpload LABEL.label-left,
    .modern .CXUpload LABEL.label-right,
    .modern .CXUpload .error>.xm-error-container,
    .modern .CXUpload .xm-help-container.label-left,
    .modern .CXUpload .xm-help-container.label-right,
    .modern .CXUpload LABEL.unit.left,
    .modern .CXUpload LABEL.unit.right {
      vertical-align: middle
    }

    .modern .CXTextField LABEL.label-left,
    .modern .CXTextField LABEL.label-right,
    .modern .CXTextField .error>.xm-error-container,
    .modern .CXTextField .xm-help-container,
    .modern .CXTextField LABEL.unit.left,
    .modern .CXTextField LABEL.unit.right {
      vertical-align: middle
    }

    .modern .CXSelect LABEL.label-left,
    .modern .CXSelect LABEL.label-right,
    .modern .CXSelect LABEL.unit.left,
    .modern .CXSelect LABEL.unit.right,
    .modern .CXTextArea LABEL.label-left,
    .modern .CXTextArea LABEL.label-right,
    .modern .CXTextArea LABEL.unit.left,
    .modern .CXTextArea LABEL.unit.right {
      padding-top: 7px
    }

    .modern .CXSelect .xm-help-container,
    .modern .CXSelect .error>.xm-error-container,
    .modern .CXTextArea .xm-help-container,
    .modern .CXTextArea .error>.xm-error-container {
      padding-top: 5px
    }

    .modern .CXFieldSet>.xm-help-container,
    .modern .CXContainer>.xm-help-container,
    .modern .CXCheckbox>.xm-help-container,
    .modern .CXTextArea>.xm-help-container {
      vertical-align: top
    }

    .modern .CXFieldSet>.xm-help-container {
      position: relative;
      right: 0;
      padding-top: 40px
    }

    .modern .xm-help-icon.label-top {
      margin-top: 22px
    }

    .modern .CXUpload .xm-help-icon.label-top {
      margin-top: 27px
    }

    .modern .xm-error-icon,
    .modern .xm-help-icon {
      height: 21px
    }

    .modern .xm-item-div .xm-help-icon:before {
      content: "\f059";
      font-family: 'FontAwesomeCB';
      font-size: 20px;
      background-image: none
    }

    .modern .xm-item-div .xm-help-icon {
      background-image: none
    }

    .modern .xm-item-div .xm-del-button-icon:before {
      content: "\f056";
      font-family: 'FontAwesomeCB';
      font-size: 21px;
      background-image: none
    }

    .modern .xm-item-div .xm-del-button-icon:hover,
    .modern .xm-item-div .add-button:hover,
    .modern.error-dynamic-view .xm-item-div .xm-error-icon:hover .modern .xm-item-div .xm-help-icon:hover::before {
      text-shadow: 0 0 3px #333;
      cursor: pointer
    }

    .modern .xm-item-div .xm-del-button-icon[disabled]:hover,
    .modern .xm-item-div .add-button[disabled]:hover {
      text-shadow: none;
      cursor: not-allowed
    }

    .modern .xm-item-div .xm-del-button-icon,
    .xm-item-div .xm-del-button-icon[disabled] {
      background-image: none
    }

    .modern .xm-item-div .add-button:before {
      content: "\f055";
      font-family: 'FontAwesomeCB';
      font-size: 21px;
      background-image: none
    }

    .modern .xm-item-div .add-button,
    .modern .xm-item-div .add-button[disabled] {
      background-image: none
    }

    .modern .xm-del-button-icon {
      margin-top: 4px
    }

    .modern .CXFieldSet>.xm-del-button-icon {
      margin-top: 45px
    }

    .modern .label-left .xm-del-button-icon,
    .modern .label-right .xm-del-button-icon,
    .modern .label-bottom .xm-del-button-icon {
      margin-top: 6px
    }

    .modern .xm-help-icon {
      margin-top: 3px
    }

    .modern .label-bottom .xm-help-container {
      vertical-align: top
    }

    .modern .label-bottom .xm-help-icon {
      margin-top: 6px
    }

    .modern .xm-del-button-icon.label-top {
      margin-top: 28px
    }

    .modern .error-dynamic-view .xm-item-div .xm-error-icon:before {
      content: "\f057";
      font-family: 'FontAwesomeCB';
      font-size: 21px;
      background-image: none
    }

    .modern .error-dynamic-view .xm-item-div .xm-error-icon {
      background-image: none
    }

    .modern .error-dynamic-view .xm-item-div .xm-error-icon.label-top {
      padding-top: 27px;
      margin-top: 0
    }

    .modern .error-static-view.error-static-view-bubble .xm-error-icon {
      background-image: none
    }

    .modern .error-static-view .CXCheckbox.error .xm-error-container.label-right {
      display: inline-block
    }

    .modern .error-static-view.error-static-view-bubble .xm-error-icon:before {
      content: "\f0de";
      font-family: 'FontAwesomeCB';
      font-size: 20px;
      left: 50%;
      margin-left: -7px;
      position: absolute;
      top: 0
    }

    .modern .xm-help-text::before {
      content: "\f0de";
      color: #666;
      font-family: "FontAwesomeCB";
      font-size: 13px;
      margin-left: 0;
      position: absolute;
      right: 5px;
      top: -9px
    }

    .modern .xm-item-div.label-top.CXCheckbox LABEL.label-top,
    .modern .xm-item-div.label-bottom.CXCheckbox LABEL.label-bottom {
      display: block;
      float: none
    }

    .modern .xm-item-div.label-top.CXCheckbox INPUT.XCheckbox,
    .modern .xm-item-div.label-bottom.CXCheckbox INPUT.XCheckbox {
      float: left
    }

    .modern .xm-item-div.label-left.CXCheckbox LABEL.label-left {
      display: inline-block;
      padding-right: 21px
    }

    .modern .xm-item-div.label-left.CXCheckbox Input {
      position: absolute
    }

    .modern .xm-item-div.label-right.CXCheckbox LABEL.label-right,
    .modern .xm-item-div.label-right.CXCheckbox .label-icon-checkbox {
      display: table-cell
    }

    .modern .error.xm-item-div.label-right.CXCheckbox .label-icon-checkbox {
      display: inline-block;
      height: 25px
    }

    .modern .error.xm-item-div.label-right.CXCheckbox LABEL.label-right {
      display: inline;
      margin-top: -20px;
      padding-left: 29px;
      float: left;
      padding-top: 0
    }

    .modern .CXCheckbox .xm-error-icon.label-right:before,
    .modern .CXCheckbox .xm-error-icon.label-none:before {
      left: 8px;
      margin-left: 0
    }

    .modern .xm-item-div.label-left.CXCheckbox .label-icon-checkbox {
      display: table-cell
    }

    .modern .xm-item-div.label-none.label-left.CXCheckbox .label-icon-checkbox::before {
      left: 0
    }

    .modern .xm-item-div.label-bottom.CXCheckbox .label-icon-checkbox::before {
      min-height: 29px
    }

    .modern .xm-item-div.label-none.label-bottom.CXCheckbox .label-icon-checkbox::before {
      min-height: 19px
    }

    .modern .xm-item-div.label-none.CXCheckbox .label-icon-checkbox {
      display: inline
    }

    .modern .xm-item-div.label-top.label-none {
      margin-top: 22px
    }

    .modern .xm-item-div.CXButtonList {
      padding-left: 10px;
      padding-right: 10px
    }

    @media only screen and (max-width:500px) {
      .modern .XPage {
        padding-left: 5px;
        padding-right: 5px
      }

      .modern .xm-item-div.label-top.label-none.CXTextField {
        margin-top: 0
      }

      .modern .CXPage .header,
      .modern .xm-progress-bar {
        padding: 5px 10px
      }

      .modern .CXPage .header h1 {
        font-size: 22px;
        line-height: 22px;
        margin: 0
      }

      .modern .CXPage .header h2 {
        margin: 5px 0 0
      }

      .modern .xm-form .xm-form-footer {
        padding-left: 5px
      }

      .modern .xm-form .xm-logo a {
        margin-right: 5px
      }

      .modern .CXFieldSet {
        padding: 0 !important
      }
    }

    .body.modern {
      background-color: #ededed
    }

    .xm-form.modern .xm-logo a {
      color: #e5e5e5;
      background-color: #1a1a1a;
      border-color: #1a1a1a
    }

    .xm-form.modern .xm-logo a:hover {
      color: #1a1a1a;
      background-color: transparent
    }

    .modern .xm-item-div LABEL,
    .modern .xm-item-div SPAN,
    .modern .xm-item-div LEGEND {
      color: #000
    }

    .modern .XItem,
    .modern .xm-item-div input[type=checkbox]:checked+label:before,
    .modern .xm-item-div input[type=radio]:checked+label:before {
      color: #3455db
    }

    .modern .xm-item-div.error>LABEL,
    .modern .xm-item-div.error>.XItem,
    .modern .xm-item-div SPAN.required-star {
      color: #e00000
    }

    .modern DIV.xm-item-div.error>.XItem,
    .modern .dynamic-row.error>.XItem,
    .modern.error-static-view.error-static-view-bubble .xm-item-div.error>.XItem,
    .modern.error-static-view.error-static-view-bubble .dynamic-row.error>.XItem {
      box-shadow: none;
      border-color: #e00000
    }

    .modern.error-static-view.error-static-view-bubble .error .xm-error-icon .xm-error-text {
      background-color: #e00000
    }

    .modern .XButtonList:hover,
    .modern .xm-progress-bar-percent-p {
      color: #fff;
      background-color: #3455db
    }

    .modern .XButtonList {
      color: #1a1a1a;
      background-color: transparent;
      border-color: #ededed
    }

    .modern .CXPage .header {
      color: #000;
      background-color: #f7f7f7
    }

    .modern .XPage {
      background-color: transparent
    }

    .modern .CXPage,
    .modern .XPage {
      background-color: #fff
    }

    .modern .XItem,
    .modern .CXFieldSet,
    .modern .XFieldSetWrapper,
    .modern .CXPage .header,
    .modern .xm-progress-bar,
    .modern .xm.item-div {
      border-color: #ccc
    }

    .modern .xm-item-div LABEL::before {
      color: #696969
    }

    .modern .xm-progress-bar-percent {
      background-color: #ebebeb
    }

    .modern .xm-progress-bar {
      border-color: #ebebeb
    }

    .modern .XFieldSet {
      background-color: transparent
    }

    .modern .xm-progress-bar {
      background-color: #fff
    }

    .modern ::-webkit-input-placeholder {
      color: #b6b6b6
    }

    .modern :-moz-placeholder {
      color: #b6b6b6;
      opacity: 1
    }

    .modern ::-moz-placeholder {
      color: #b6b6b6;
      opacity: 1
    }

    .modern :-ms-input-placeholder {
      color: #b6b6b6
    }

    .modern .XSelect:required:invalid {
      color: #b6b6b6;
      box-shadow: none
    }

    .modern .xm-item-div .xm-del-button-icon,
    .modern .xm-item-div .xm-error-icon:before {
      color: #b52d3a
    }

    .modern .xm-item-div .add-button {
      color: #1e824c
    }

    .modern .xm-item-div .xm-del-button-icon[disabled],
    .modern .xm-item-div .add-button[disabled] {
      color: #696969
    }

    .modern .xm-help-icon:before {
      color: #3455db
    }

    @media \0creen {

      .modern .xm-item-div .add-button:before,
      .modern .xm-item-div .xm-help-icon:before,
      .modern.error-static-view.error-static-view-bubble .xm-error-icon:before,
      .modern .xm-item-div .xm-del-button-icon:before {
        content: "+" !important;
        font-family: Arial !important;
        cursor: pointer
      }

      .modern .xm-item-div .xm-help-icon:before {
        content: "?" !important
      }

      .modern .xm-item-div .xm-del-button-icon:before {
        content: "-" !important
      }

      .modern.error-dynamic-view .xm-item-div .xm-error-icon:before {
        content: "X" !important
      }

      .modern.error-static-view.error-static-view-bubble .xm-error-icon:before {
        content: "" !important;
        display: none !important
      }

      .modern .add-button {
        margin-right: 2px !important;
        cursor: pointer
      }
    }

    .modern .xm-item-div.label-top.CXCheckbox .label-icon-checkbox:before {
      padding-top: 7px
    }

    .modern .xm-item-div .label-icon-checkbox.opt-label-left:before,
    .modern .xm-item-div .label-icon-radio.opt-label-left:before {
      padding-left: 5px
    }

    .modern .xm-item-div .label-icon-checkbox.opt-label-right:before,
    .modern .xm-item-div .label-icon-radio.opt-label-right:before {
      padding-right: 5px
    }

    .modern .XSelect>DIV:last-child {
      padding: 0
    }

    .modern .xm-item-div input[type=checkbox],
    .modern .xm-item-div input[type=radio] {
      position: absolute
    }

    .modern .xm-design-panel .xm-item-div input[type=checkbox],
    .modern .xm-design-panel .xm-item-div input[type=radio] {
      visibility: hidden
    }

    .modern .xm-item-div input[type=checkbox],
    .modern .xm-item-div input[type=radio] {
      -khtml-opacity: 0;
      opacity: 0
    }

    .modern .xm-item-div input[type=checkbox]+.label-icon-checkbox:before,
    .modern .xm-item-div input[type=radio]+.label-icon-radio:before {
      font-family: FontAwesomeCB;
      display: inline-block;
      vertical-align: middle;
      content: "\f096";
      font-size: 27px;
      width: 30px;
      margin-top: -2px;
      text-rendering: auto;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: relative
    }

    .modern .xm-item-div input[type=checkbox]:focus+.label-icon-checkbox,
    .modern .xm-item-div input[type=radio]:focus+.label-icon-radio,
    .modern .xm-item-div input[type=checkbox]:hover+.label-icon-checkbox,
    .modern .xm-item-div input[type=radio]:hover+.label-icon-radio {
      text-shadow: 0 0 1px #3455db
    }

    .modern .XItem:focus:not(:disabled) {
      border: 1px solid #3455db;
      background-color: #f1f6f8
    }

    .modern .XItem:disabled,
    .modern .XItem[readonly],
    .XAppointment[readonly]+DIV,
    .XAppointment:disabled+DIV {
      background: repeating-linear-gradient(45deg, transparent, transparent 2px, #f1f1f1 2px, #f1f1f1 3px)
    }

    .error-static-view.error-static-view-bubble .xm-item-div.error>.XItem:focus,
    .error-static-view.error-static-view-bubble .dynamic-row.error>.XItem:focus {
      border: 1px solid #da4453;
      box-shadow: 0 0 2px 0 #da4453
    }

    .modern .xm-item-div input[type=radio]+.label-icon-radio:before {
      content: "\f1db"
    }

    .modern .xm-item-div input[type=checkbox]:checked+.label-icon-checkbox:before {
      content: "\f046"
    }

    .modern .xm-item-div input[type=radio]:checked+.label-icon-radio:before {
      content: "\f140"
    }

    .modern .xm-item-div .XSelect input[type=radio]+.label-icon-radio::before .modern .xm-item-div .XSelect input[type=checkbox]+.label-icon-checkbox::before {
      min-height: 30px;
      vertical-align: middle
    }

    .modern .xm-item-div input[type=checkbox]:disabled+.label-icon-checkbox::before,
    .modern .xm-item-div input[type=radio]:disabled+.label-icon-radio::before {
      color: #dfdfdf
    }

    .modern .xm-item-div input[type=checkbox]:disabled+.label-icon-checkbox,
    .modern .xm-item-div input[type=radio]:disabled+.label-icon-radio {
      text-shadow: none
    }

    .modern .opt-left:before {
      text-align: right
    }

    .modern .XSelect.XCheckbox,
    .modern .XSelect.XRadio {
      padding-top: 7px
    }

    .modern DIV.XPage LABEL.label-icon-checkbox,
    .modern DIV.XPage LABEL.label-icon-radio {
      display: block
    }

    .modern DIV.XPage LABEL.label-icon-radio.opt-top,
    .modern DIV.XPage LABEL.label-icon-radio.opt-bottom,
    .modern DIV.XPage LABEL.label-icon-checkbox.opt-top,
    .modern DIV.XPage LABEL.label-icon-radio.opt-top,
    .modern DIV.XPage LABEL.label-icon-checkbox.opt-bottom,
    .modern DIV.XPage LABEL.label-icon-radio.opt-bottom {
      display: block
    }

    .modern .opt-div {
      margin-bottom: 15px
    }

    .modern .xm-item-div.label-left.CXCheckbox LABEL.label-left {
      display: table-cell
    }

    .modern .xm-item-div.CXCheckbox input[type="checkbox"]+.label-icon-checkbox::before {
      margin-top: 0;
      line-height: 18px;
      left: 0
    }

    .modern .CXCheckbox.label-left,
    .modern .CXCheckbox.label-right {
      padding-top: 12px
    }

    .modern .CXCheckbox LABEL.label-left,
    .modern .CXCheckbox LABEL.label-right {
      padding-top: 5px
    }

    .modern .xm-design-panel .CXCheckbox LABEL.label-left,
    .modern .xm-design-panel .CXCheckbox LABEL.label-right {
      padding-top: 7px
    }

    .modern .CXCheckbox LABEL.label-icon-checkbox {
      line-height: 27px
    }

    @media \0creen {

      .modern .label-icon-checkbox,
      .modern .label-icon-radio {
        display: none !important
      }

      .modern div.xm-item-div .XCheckbox label,
      div.xm-item-div .XRadio label {
        line-height: 20px
      }

      .modern div.CXCheckbox.xm-item-div label.label-right {
        padding-left: 0;
        padding-top: 1px
      }
    }

    @media print {

      .body,
      .body.modern {
        background-color: #fff;
        padding: 0;
        margin: 0
      }

      .XPage,
      .modern .XPage {
        padding: 0;
        border: 0;
        background-color: #fff
      }

      .xm-item-div.CXPage,
      .XPage {
        display: block !important;
        border: 0
      }

      .CXPage:not(:first-child),
      .page-break {
        display: block !important;
        page-break-before: always
      }

      .CXHeader+.CXPage,
      .page-break {
        display: block !important;
        page-break-before: avoid
      }

      .xm-item-div.CXButtonList,
      INPUT[type="file"],
      .xm-help-container,
      .xm-del-button-container,
      .add-button {
        display: none !important
      }

      .xm-item-div .XSpan.print {
        background: #efefef;
        min-height: 22px;
        page-break-inside: avoid
      }

      .XItem>DIV.xm-item-div {
        display: block
      }

      .xm-form-footer,
      .xm-logo {
        display: none
      }

      .modern .XItem:disabled,
      .modern .XItem[readonly],
      .XAppointment[readonly]+DIV,
      .XAppointment:disabled+DIV {
        background: #fff
      }
    }

    LABEL.label-followup,
    .modern .xm-item-div LABEL.label-followup {
      width: calc(100% - 15px);
      position: absolute;
      top: 10px;
      left: 14px;
      font-weight: normal;
      font-size: 12px;
      color: #696969;
      -webkit-transition: all .3s ease;
      -moz-transition: all .3s ease;
      transition: all .3s ease;
      z-index: 1
    }

    .XItem:placeholder-shown~LABEL.label-followup {
      font-size: 15px;
      top: 30px;
      color: #696969
    }

    .label-followup .XItem.empty~LABEL.label-followup {
      font-size: 15px;
      top: 30px;
      color: #696969
    }

    .label-followup .XItem.empty.XDropDown {
      color: rgba(0, 0, 0, 0)
    }

    .label-followup .XItem,
    .label-followup .dynamic-row {
      position: relative;
      z-index: 1;
      background-color: rgba(0, 0, 0, 0)
    }

    .label-followup .dynamic-row LABEL.label-followup {
      margin-left: -10px;
      margin-top: -10px
    }

    .modern .xm-item-div.label-followup .XItem.XSelect {
      padding-top: 21px
    }

    .modern .xm-item-div.label-followup .XItem.XDropDown {
      padding-left: 0;
      padding-bottom: 0
    }

    LABEL.label-followup p {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap
    }

    .xm-design-panel LABEL.label-followup,
    .xm-design-panel .modern .xm-item-div LABEL.label-followup {
      margin-top: -10px;
      margin-left: -10px
    }

    .label-followup .XItem {
      min-height: 40px;
      padding-bottom: 0;
      padding-top: 20px;
      padding-left: 4px;
      color: #515151
    }

    .xm-item-div.label-followup {
      position: relative
    }

    .xm-item-div.label-followup :focus~LABEL.label-followup,
    :not(:placeholder-shown)~LABEL.label-followup {
      font-size: 12px;
      top: 10px;
      color: #696969
    }

    .xm-item-div.label-followup .modern ::-webkit-input-placeholder,
    .xm-item-div.label-followup ::-webkit-input-placeholder {
      color: rgba(0, 0, 0, 0);
      opacity: .5
    }

    .xm-item-div.label-followup .modern :-moz-placeholder,
    .xm-item-div.label-followup :-moz-placeholder {
      color: rgba(0, 0, 0, 0);
      opacity: .5
    }

    .xm-item-div.label-followup .modern ::-moz-placeholder,
    .xm-item-div.label-followup ::-moz-placeholder {
      color: rgba(0, 0, 0, 0);
      opacity: .5
    }

    .xm-item-div.label-followup .modern :-ms-input-placeholder,
    .xm-item-div.label-followup :-ms-input-placeholder {
      color: rgba(0, 0, 0, 0);
      opacity: .5
    }

    .xm-item-div.label-followup .modern :placeholder {
      opacity: .5
    }

    .xm-item-div.label-followup .XTextField,
    .xm-item-div.label-followup .XDropDown,
    .xm-item-div.label-followup .XTextArea {
      border-top: 0;
      border-left: 0;
      border-right: 0;
      -moz-border-radius: 0;
      -webkit-border-radius: 0;
      border-radius: 0;
      border-bottom: 1px solid #ccc
    }

    .xm-item-div.label-followup .XDropDown::-ms-expand {
      display: none
    }

    .xm-item-div.label-followup .XDropDown {
      -moz-appearance: none;
      -webkit-appearance: none;
      appearance: none;
      background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAOklEQVRIiWNgGAWjYBQMcxAQEJAQGBj4Hx8OCAhYQDNLKDYcnyVUMxybJVQ3HNkSmhk+CkbBKCAfAADc8jVJ/CahVgAAAABJRU5ErkJggg==');
      background-position: right center;
      background-repeat: no-repeat
    }

    .modern .xm-item-div.label-followup .XItem.XSelect {
      padding-top: 21px
    }

    .modern .XSelect.XCheckbox,
    .modern .XSelect.XRadio {
      padding-top: 7px
    }

    .modern .label-followup.CXCheckbox LABEL.label-icon-checkbox {
      margin-top: 15px
    }

    .modern .xm-item-div.label-followup .XSelect.XCheckbox,
    .modern .xm-item-div.label-followup .XSelect.XRadio {
      padding-left: 4px
    }

    .label-followup .hasTimePicker .ui-widget.ui-widget-content,
    .xm-design-panel .label-followup .hasTimePicker .ui-widget.ui-widget-content {
      border-bottom: 1px solid #ccc;
      border-radius: 0
    }

    .xm-design-panel .label-followup .hasTimePicker .ui-widget.ui-widget-content {
      padding-top: 0
    }

    .label-followup .hasTimePicker .ui-datepicker,
    .xm-design-panel .label-followup .hasTimePicker .ui-widget.ui-widget-content {
      display: block;
      margin-top: 10px;
      border-width: 0 0 1px 0
    }

    .label-followup .hasTimePicker .ui-datepicker .ui-datepicker-header {
      border-bottom: 1px solid #ccc;
      border-radius: 0;
      background-color: #fff;
      margin-top: -1px
    }

    .xm-form .label-followup .hasTimePicker .ui-datepicker .ui-datepicker-header {
      margin: -3px -3px 0 -3px
    }

    .label-followup .hasTimePicker.ui-state-open .ui-datepicker-inline,
    .xm-design-panel .label-followup .hasTimePicker.ui-state-open .ui-datepicker-inline {
      border-width: 0;
      background: #f7f7f7
    }

    .label-followup .hasTimePicker .ui-datepicker .ui-datepicker-title {
      margin-left: 5px;
      margin-top: 3px
    }

    .label-followup .hasTimePicker .ui-datepicker .ui-datepicker-picked {
      padding: 5px 0 0 0
    }

    .label-followup .hasTimePicker .ui-datepicker .ui-datepicker-picked-text {
      padding: 0;
      margin-top: 5px
    }

    div.label-followup .XTextArea {
      padding-top: 4px;
      margin-top: 20px
    }

    @media print {
      .xm-item-div.label-followup .XSpan.print {
        border-top: 0;
        border-left: 0;
        border-right: 0;
        border-radius: 0;
        border-bottom: 1px solid #ccc
      }

      .label-followup .XSpan.print {
        min-height: 40px;
        padding-bottom: 0;
        padding-top: 20px;
        padding-left: 4px;
        color: #515151
      }

      .label-followup .XCheckbox.left-followup {
        min-height: auto;
        margin-top: 20px
      }

      .label-followup .img-uploaded-preview {
        padding-top: 14px
      }

      .label-followup .XItem.empty~LABEL.label-followup {
        top: 10px;
        font-size: 12px
      }
    }

    @font-face {
      font-family: 'appointment';
      src: url(data:application/font-ttf;charset=utf-8;base64,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) format('truetype');
      font-weight: normal;
      font-style: normal
    }

    .ico-appointment-trash-alt:before {
      content: "\e92a";
      margin-top: -1px;
      position: absolute
    }

    .ico-appointment-date:before {
      content: "\ea01"
    }

    .ico-appointment-window-close:before {
      content: "\e900";
      position: relative;
      top: 4px
    }

    .ico-appointment-window-close {
      position: relative;
      float: right;
      top: 0;
      height: 20px;
      width: 20px;
      text-align: center;
      border-radius: 2px
    }

    .ico-appointment-chevron-left:before,
    .hasTimePicker .ui-icon-circle-triangle-w:before {
      font-family: 'appointment' !important;
      content: "\e901"
    }

    .ico-appointment-chevron-right:before,
    .hasTimePicker .ui-icon-circle-triangle-e:before {
      font-family: 'appointment' !important;
      content: "\e902"
    }

    .hasTimePicker .ui-datepicker-picked-button.ui-datepicker-edit,
    .hasTimePicker .ico-appointment-date::before {
      padding: 0;
      font-size: 20px;
      border: 0;
      background: 0
    }

    .hasTimePicker .ui-datepicker-picked-button:before {
      color: #515151
    }

    .hasTimePicker .ui-icon-circle-triangle-e,
    .hasTimePicker .ui-icon-circle-triangle-w {
      background: 0;
      font-size: 15px;
      text-indent: 1px
    }

    [class^="ico-appointment-"],
    [class*=" ico-appointment-"] {
      font-family: 'appointment' !important;
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale
    }

    .hasTimePicker .ui-datepicker {
      width: 100%
    }

    .hasTimePicker .ui-icon.ui-icon-circle-triangle-w,
    .hasTimePicker .ui-icon.ui-icon-circle-triangle-e {
      color: transparent
    }

    .hasTimePicker .ui-datepicker table.ui-datepicker-calendar {
      width: 248px;
      display: table-cell;
      margin-right: 3px;
      margin-left: 3px;
      padding-right: 10px;
      padding-bottom: 7px
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-time {
      padding: 8px;
      display: table-cell
    }

    .hasTimePicker .ui-datepicker-picked-button,
    .hasTimePicker .ui-datepicker-next,
    .hasTimePicker .ui-datepicker-prev {
      cursor: pointer;
      width: 20px;
      height: 20px;
      color: #3455db
    }

    .hasTimePicker .ui-datepicker-picked-button {
      margin-left: 5px
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-timeslots {
      padding-top: 15px;
      width: 100%;
      display: inline-block
    }

    .hasTimePicker .ui-state-default {
      background: 0;
      border-radius: 20px
    }

    .hasTimePicker .ui-datepicker table,
    .hasTimePicker .ui-datepicker {
      font-size: 12px
    }

    .hasTimePicker .ui-datepicker-header {
      background-image: none;
      border: 0
    }

    .hasTimePicker .XAppointment {
      position: absolute;
      z-index: -1
    }

    .modern .CXAppointment .xm-help-icon.label-top {
      margin-top: 26px
    }

    .hasTimePicker .slot {
      border-radius: 3px;
      text-shadow: none;
      margin: 5px 10px 5px 0;
      padding: 10px;
      cursor: pointer;
      display: inline-block;
      text-align: center
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-time .slot.ui-state-default {
      border: solid 1px #3455db;
      background: transparent;
      color: #3455db !important
    }

    .hasTimePicker .ui-state-active,
    .hasTimePicker .slot.ui-state-active,
    .xm-item-div .hasTimePicker .slot.ui-state-active SPAN.slot-capacity,
    .modern .xm-item-div .hasTimePicker .slot.ui-state-active SPAN.slot-capacity {
      color: #fff !important;
      background-color: #3455db
    }

    .xm-item-div SPAN.slot-capacity,
    .modern .xm-item-div SPAN.slot-capacity {
      display: block;
      color: #3455db;
      padding-top: 3px
    }

    .xm-form.modern .hasTimePicker a:hover {
      color: #3455db !important;
      background-color: #efefef !important
    }

    .xm-form.modern .hasTimePicker a.ui-state-active:hover {
      color: #fff !important;
      background-color: #3455db !important;
      border-color: #FFF !important
    }

    .hasTimePicker .ui-datepicker-month,
    .hasTimePicker .ui-datepicker-year {
      border: 0;
      float: left;
      display: inline-block;
      margin-right: 5px
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-prev,
    .hasTimePicker .ui-datepicker .ui-datepicker-next {
      position: absolute;
      top: 2px;
      left: 220px
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-next {
      left: 240px
    }

    .modern .xm-item-div .hasTimePicker .ui-datepicker-prev SPAN:before,
    .modern .xm-item-div .hasTimePicker .ui-datepicker-next SPAN:before {
      color: #3455db
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-title {
      margin-left: 9px;
      font-weight: normal
    }

    .hasTimePicker .ui-datepicker-prev {
      margin-right: 3px
    }

    .hasTimePicker .ui-datepicker-picked-button,
    .hasTimePicker .ui-datepicker-next,
    .hasTimePicker .ui-datepicker-prev {
      background: 0;
      border: 0
    }

    .hasTimePicker.ui-state-open .ui-datepicker-inline {
      border: 1px solid #ccc
    }

    .hasTimePicker .ui-datepicker-header {
      background-color: transparent
    }

    .hasTimePicker .ui-datepicker td {
      padding: 1px;
      text-align: center
    }

    .hasTimePicker .ui-state-default {
      border: 1px solid transparent;
      padding: 10px;
      text-align: center
    }

    .hasTimePicker .ui-datepicker th,
    .hasTimePicker .ui-widget-header {
      font-weight: normal
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-picked-text {
      color: #525252;
      padding: 3px;
      display: inline-block;
      float: left;
      font-size: 14px;
      border: 0;
      width: calc(100% - 50px);
      background: transparent
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-picked {
      padding: 2px 2px 2px 5px;
      display: block;
      margin: 0 0 2px 0;
      border-radius: 2px;
      text-align: right;
      color: #525252
    }

    .xm-design-panel .hasTimePicker .ui-widget.ui-widget-content {
      padding-top: 1px;
      border: 1px solid #c5c5c5;
      border-radius: 3px;
      padding-bottom: 0
    }

    .xm-design-panel .hasTimePicker .ui-datepicker .ui-datepicker-picked {
      margin: 0;
      padding-bottom: 1px
    }

    .xm-design-panel .hasTimePicker .ico-appointment-date {
      color: black;
      padding-top: 1px
    }

    .xm-design-panel .hasTimePicker .ui-datepicker .ui-datepicker-picked-text {
      padding-left: 6px
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-header {
      background: transparent
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-header {
      position: relative;
      padding: .2em 0
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-title * {
      font-weight: normal;
      line-height: 1.8em
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-next:before,
    .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-prev:before {
      content: ""
    }

    .hasTimePicker .ui-datepicker thead tr {
      background: transparent
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-time {
      vertical-align: top
    }

    .hasTimePicker .ui-datepicker th {
      padding: .7em .3em
    }

    .hasTimePicker .ui-datepicker tbody td a,
    body .ui-datepicker tbody td span {
      height: initial;
      width: initial;
      line-height: normal;
      font: 9pt Arial, sans-serif;
      display: block
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-next .ui-icon,
    .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-prev .ui-icon {
      display: block;
      text-indent: 2px
    }

    .xm-design-panel .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-prev .ui-icon {
      display: block;
      text-indent: 2px;
      position: absolute;
      left: 50%;
      margin-left: -12px;
      top: 50%;
      margin-top: -12px
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-next,
    .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-prev {
      width: 20px;
      height: 20px;
      top: 4px;
      overflow: hidden
    }

    .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-prev {
      left: 220px
    }

    @media only screen and (max-width:400px) {
      .hasTimePicker .ui-datepicker table.ui-datepicker-calendar {
        width: 100%;
        display: table;
        margin-right: 0;
        margin-left: 0;
        padding-right: 0;
        padding-bottom: 10px
      }

      .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-prev,
      .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-next {
        left: initial;
        float: left;
        position: relative;
        background-color: #3455db;
        border-radius: 20px;
        width: 35px;
        height: 35px
      }

      .hasTimePicker .ui-datepicker .ui-datepicker-header .ui-datepicker-prev {
        left: 0
      }

      .modern .hasTimePicker .ui-datepicker .ui-datepicker-prev SPAN:before,
      .modern .hasTimePicker .ui-datepicker .ui-datepicker-next SPAN:before {
        color: #fff
      }

      .hasTimePicker .ui-datepicker-month,
      .hasTimePicker .ui-datepicker-year {
        float: none;
        margin-top: 10px
      }

      .hasTimePicker .ui-datepicker .ui-datepicker-timeslots {
        text-align: center;
        padding-top: 0
      }

      .hasTimePicker .ui-datepicker .ui-datepicker-time {
        width: 100%;
        padding: 0;
        display: block
      }

      .hasTimePicker .slot {
        margin: 5px
      }

      .hasTimePicker .ui-datepicker .ui-datepicker-time>SPAN {
        display: none
      }
    }
  </style>
  <style type="text/css" data-name="000-load.css">
    .loading .animation {
      background-image: url('data:image/gif;base64,R0lGODlhdgB2APcAAAAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4ODg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0NDU1NTY2Njc3Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdHR0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CAgIGBgYKCgoODg4SEhIWFhYaGhoeHh4iIiImJiYqKiouLi4yMjI2NjY6Ojo+Pj5CQkJGRkZKSkpOTk5SUlJWVlZaWlpeXl5iYmJmZmZqampubm5ycnJ2dnZ6enoygnXmlnWCom0ermDqsmDGulzawmjuznUe3o1C8qFvBrmfGtXHJuXzNvn/PwIPQwoTRw4bSxInTxYrTxovUxo3Ux5XYzJrazp/c0aXe1Kng1q7i2LLj2rXk3Ljm3b3n4MTq48ns5cvs5s7t6NHu6dPv6tXw69jx7Nny7dvy7tzz797z8OD08OH08eL18eT18uX28+b28+b28+j29Ov39ez49u349vD59/L6+fT7+vb8+/r9/Pv9/fz+/f7+/v7+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAwDjACwAAAAAdgB2AAAI/gDHCRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KVaM0aGChSes68WvYsWQR/oJ20CxYtAW1Xet6ixSstmHFHoQmjJpWbapICfZl0K3egteCKV6G9Zfgx6SwFZRGuXLBbsUUKy42l2q2wJBJqYK4TLPmZd2qagstGJhDbMNMByvWGDIqZhC1ITPd+aoswXcnQlMMFysqwhWvJUvLfGHvktuWNktlC/dIbMp+SU5q6zGqWq47/lZD9muXeWVKU4W25TGZ+fe/kkpjzbgjtvfvsyGtaxtkefz1FaWNepDVAhIy+O0CTGpHLWMLgceAdI15vySz3VLQ3FINSNoso19zIIYo4og4SZOLNSBlU8yFSjmDiyqllILeR9XYYssuxDxH1DarxOjjLSAJY+OQvDBYVC4+xjjaR7oMaSNtR02TZIzOeHSNkzayWBSMSeLi0TBY7qIULj6qcoswHkkzzC5DEqPUM6rgUuVI1xCzi45GaTmSNiSKCMswFiWTy1a6oILKoBP94oor8WFVjKGGvjINRNbgsuiiAVLFI6SGpmKMQ87IcumitXCjWi2cGkoLRLqMuugufdFRVcwqnKry4UCs5KprXLWMWkumU3GDqqGAFrSKKsiqsopByly6i5FX9XLoQccmu6xBv7yCJlfFbGhQtchei5h1I4KrbJ8JmSsuupd146677MYr77z01mvvvfjmq+++/Pbr778AByzwwAQXbPDBCCes8MIMN+zwwxBHfFNAACH5BAkDAOYALAAAAAB2AHYAhwAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4ODg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0NDU1NTY2Njc3Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdHR0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CAgIGBgYKCgoODg4SEhIWFhYaGhoeHh4iIiImJiYqKiouLi4yMjI2NjY6Ojo+Pj5CQkJGRkZKSkpOTk5SUlJWVlZaWlpeXl5iYmJmZmZqampubm5ycnJ2dnZ6enp+fn5SgnouhnX+knWKnm02rmkOtmj2xnES0n023pFO6p16+rGjCsXDHt3XKunvMvoTQwofSxIrTxozUx43Vx4/VyJLWypPXypbYzJ3bz6Ld0qbe1Krg1q7h2LPj2rjl3bvm37/o4MTq48rs5tDu6NTv6tfw7Nnx7dzy7t/z8OL08eP08eP18eT18uT18uX18uX18ub28+f28+j29On39Or39ez49u349vD59/H6+PL6+fb7+vj8/Pr9/Pz9/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////wj+AM0JHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cpVo7WvYLtOBBtWLEJkCMl+Rcitay5TsA6qtXaQWjFsWq+tMsV3mMG5BrcRG+zM29VhfBObulbwGlnGBL0dGzz42DarrRTzVQUxGWXK0qxe08wXMkNvxT4TO2bYKuLEqEw39Ibs82WstvjGnUhtMF2tq/xW3ObMrPHjH5epyrWM5LZkwm4jxZU4FXOPz4X92p5MaSrNuDz+JttOXljSZaSbd9xGnnw3pLw0pwKpvT00pK/Agxzf3th5XN+Zoh522wmTjHRKLfOLSNQgiNyDEEYoIUzQ+CLSMdo0Bc0uq5xyyn0faZNLLr0UkyFStXio4i4gFTPii+Yd5YuKHq4CUi8vjngMUtDQ6CGIHImYYy4OEtUhjSx25GKOvSi1i4qr7ALkRtoUg+OIxSgFDStSklSlLydOKOaYBd2CVkXTWKhVL6qokqREwcQSS4xXIdNmm69kA9E2usgp5zRXZcPKnW2u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WVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzbHd1Znt3YH55VIR7Sol9QY1/OZCAMpOCLJaDJ5iDIJqEG5yFF56FFJ+GEaCGD6CGDqGGDqGGDaGGDqGHD6KIEaOIFKWKFqaMGKaMGqaNH6eOJqaPLqiSN6uWP6qXR6uYTqqaVaubX6ibZqaacKOafp+Zi52am5ubnJycnZ2dnp6en5+foKCgoaGhoqKio6OjpKSkpaWlnauomLKtk7ixjb20icG3hcS5hMe7hMq+hc3Ah9DDjdLGk9XJltfLmdjNmtnOm9rOndrPn9vQodzRo9zSp93Tq9/WruHXseHZs+PatuTcu+bevufgwunixerjyOvlyuzmzO3nzu3o0O7p0+/q1/Ds3fLu4fTx5PXy5PXy5fXy5fXz5vbz5/b06Pb06Pb06ff16vf17fj27vn37/n38Pn48vr59Pv69vz7/P79/f7+/v7+/v7+/v7+/v/+/v/+/v/+/v/+/v/+/v/+/v/+/v/+/v/+/v/+/v/+/v/+/v/+/v/+/v/+////////////////////////////////////////////////////////CP4A5QkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylWjoa9gu04EG1YsQmYIyX5F6K3rLkiwDqo1dHDbtG5atbVyxDeZwbkGvUUbrG3c1WSR+PKNpK2gIrKKCo6zNniwtbZVXSlWzAoitsqVG1fVlngzJNEMx00DHc2aYavJNldC3XDcNdCYr9biG3fitsHctrbyW9EbbbPIk298xkrXM5LdqinDm1RXpOuVnHuMrsyY92pKK/5dH6/LYzXv6JUlfTZ+/POO3dCjz13UV/tIlUB2l38NKaz75X10nnzNrKeLeJG8t513ylRD3VLPBCNSNg8qZ+GFGGYYUzUShtRMhUlV40srlVQC3kfd+OKLMMuASFQtJcboC0jLqGgjcUYBE2OJrYAkjI0qFnhUNTuWeCJHKQLpC31FsVLkjB3VCKQwSvkS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QUJCQkNDQ0REREVFRUZGRkdHR0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3V/fW+Cf2mGgV+Lg1WQhU2Uh0aXiECaijqdizafiy+hjCujjSekjSSljiKmjiCnjh+njh+njh6njh+ojyCokCKpkCSqkiaskyislCutlS+tljWtlz6umkexnk6xn1axoFyxomOwomyvo3OtonyqooimoZSloqOjo6SkpKKop52uq5qzrpi5s5S/t5LDuo/GvJHKv5LOw5TRxpbUyJrWy5/XzaTa0Knc06rd1Kzf1a3f1q7g16/g17Hh2bTi2rfk27nk3bzl3r/m38Hn4MXp4sjq5Mvs5s7t59Pv6tbw69rx7dzy7t3y7t7z7+Dz8OH08OT18eb28+f28+j39On39On39Or39Ov39ev49ev49ez49e759vL6+PT7+fb7+vf8+/j8+/r9/Pv9/f3+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+AMkJHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cpVo6OvYLtOBBtWLEJmCMl+RQiuay5MsA6qdXTQGzdvWrGxqsS3mMG5BsFtG9wNa7FMfPlmwlZwEtlJBrkNHsytbdVWiROvgtht8mS8VbEhzoyJsUPJnrkZzszJ9EPUgy1flcU37kRvg0FnXeW3IrjCZoML9/hs1a1nJL1hc6b76K1M0Dsd96i8WbLrro96gs79lkds18P+O0v6jDt35B29hQ//DSkv85k8gbS+PjtRWPC9fwS/3hr5W9tlgh511zWDTXPkASOSNggO5+CDEEb4EjUKhgSNakxRw0srnHBCDUjcAAPMMM1geNQsHabIC0jMiOhiMkj9kmKHrYA0jIsiQoMUNTN2+GFHIeIITHtIsdLjih21iOMwSvGSIiu8/MgRN8zcKCJaSVHTSpQkUUmMiRKGKSZBtTRj0TXCbAXMKqv0QlExtdRiTFbNsMkmLNtw9kuccV5z1Tau2MlmK3k21E0ufMa5C3BU6SIom7JABEyicTJZVTOB2ulKoQPB8sqnr9g2UDe7JLqLn1ZtU4udZhYEKqhQBl3DpzCMXiVMK24a9OqnBxWTizJdoarrrghpI+Gur4w57KvKNuvss9BGK+201FZr7bXYZqvtttx26+234IYr7rjklmvuueimq+667LYrZkAAIfkECQMA5AAsAAAAAHYAdgCHAAAAAQEBAgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4uLy8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUFBQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVFRUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzdHR0dXV1dnZ2d3d3eHh4eXl5enp6e3t7fHx8fX19fn5+f39/eYOBc4aDboqFZI+HW5SJU5eLTJuMRp6OQaCPPKKPNqSQMqaRLqeRKKiRJKmQHqmPGaiOF6iOFqiOGKiOHKqQI6uSLK2WLq+XMLCYMrCZNa+ZOa6YPqyYRaqXTauaV6eYYaaZbaabeqWdgaWfiqWgk6ailKunlLGsibmwg7+0f8O3fcW4fMi6fcu9gM2/hM/Bi9HEltbKm9jNpdvRq93UsODXsuHYs+LZtuPbuOTcuuXdvObevubfwOfgw+jhxunjyevkzezn0u7p1O/q1/Ds2/Lu3fPv4PTw4vTx5PXy5fXy5vbz5vbz5/bz6Pb06ff06vf16/f17Pj17fj27fj27fj27vj27vj38fn48vr59Pv59fv69/z7+f38+/39/f7+/v7+/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AyQkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylUjpa9gu04EG1YsQmUIyX5FeKzrrU2yDqqldPCVpFlas73KxJeYwbkGg0kazOraVWKe+PL1lK3gJbKXCl6rNHhwpWBWYSlW3Aqip8qVWVnNlnjzpsYNr4G2bNgqsc2sUDu8tgk0Zqyz+MadaFdSrK2u/FYMJtqs8eMen7W69Yykt23TvCm95ak6K+Yen0dbxl2bUlbVw/7f8qiNu/lpSZ+FD9+8ozfz5sEh3bXeU3GP2+FvQyqr/viP5cGHTXq3gOdJe9lxF4020jH1DDAiddMgchRWaOGFMknzi0jSdNOUNLy8wgor0oDUTTDBEPOMh0jRMuKLu4D0DIo0JoPULy+O+ApIxNCIYolHSZPjiEBydKKPwUxolIg5xtjRjD4KN9+Lr+xS5EbdPNMjiggGCYuVJGVJDIsYlmlmQbc0YxE2wmwFzCuv9EIRMbfcYkxWzcAJ5yzcQNTNL3XWOaBV3MSiJ5yw9NlQN7kEWicvZE6Vy6Fw0gJRMI7WOYxVzRiqZyyKDjSLLKTKghdB3fDiKC+DVsXNLVd6qllQqaUahE2gwkRqVTCwyGkQraQeREwuNnLV2q/AIhRqhcDudiZBzT4r7bTUVmvttdhmq+223Hbr7bfghivuuOSWa+656Kar7rrstuvuu/DGK6+ZAQEAIfkECQMA5AAsAAAAAHYAdgCHAAAAAQEBAgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4uLy8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUFBQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVFRUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzdHR0dXV1dnZ2d3d3eHh4eXl5enp6e3t7fHx8fX19fn5+f39/gICAgYGBgoKCg4ODfYaFeIqHc42JaZOLYJeNWZuPUp6QTKGSR6OTQ6WTPaeUOamVNauVMKuVLKyUJqyTIauSH6uSHquSIKuSI6yTK66WM7CZNrKbOLKcOrOdPbKdQbGdRa+cS66cUq+eW6udZ66hcLGleLOpermufL6yfsK2gca6hMm9hcy/ic7BjtHFl9TJn9fNpdvRqNvSrN7VsuDXt+LauePcu+Xdvebfv+ffwejgw+jhxunjyOrkzOvlzuzm0u3o1e/q2vHt3PLu3/Pw4fTw4/Xx5fXy5/bz6Pb06ff06vf16/f17Pj17fj27fj27fj27fj27fj27vj27vj37vn37/n38Pn38/r59vv6+fz8+v38/P79/v7+/v7+/v7+/v7+/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AyQkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylUjpq9gu04EG1YsQmQIyX5FWKyrrU+wDqrFdLCVpVhasbXqxFeYwbkGgVkanMraVWGi+PIVha2gJrKaClrLNHhwJmBWXylWzAqiqMqVVVnFlnjzp8YNrYG2bNiqsM2pUDu09gk0Zqyz+MadaNfSq62t/FYEhsqs8eMfl7GqtYxkN23YuimtJaq6KuYen2Orxl2bUlXVw/7X8qiNu3nZRpeFD9+8Yzfz5qUfzbVelOiP2+F7Pxqr/viP5cGXTVLL1AKeKO1lxx022si31DK+iLSNg8hVaOGFGMbkTC8iXbNNU87o4koqqTgD0jbBBDOMMx8iRQuJMOoCkjMp1pgMUr3ASKIrIA1TY4rXIOWMjiSa2BGKPwZDYVEj6ihjRzT+OIxSusDoii5GcrSNMz6mmOVRzryCJUlbFtNihmimWVAtyliETTBb+eKKK7xQNAwuuLSFlTJzzinLfg5t8wueeKI3lTav9DnnK4AutE0uhOLJy5lT4aLonLNABEykeApHlTKJ9sloQbPEYmosmRK0DS+R8mKoVFja1NJnmwWdeqpB2BAaDKVWAUPnQbaaetAwuaDFVZDABovQgBgGi5eatSoL7bTUVmvttdhmq+223Hbr7bfghivuuOSWa+656Kar7rrstuvuu/DGK++8aAYEACH5BAkDAOwALAAAAAB2AHYAhwAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4ODg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0NDU1NTY2Njc3Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdHR0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CAgIGBgYKCgoODg4SEhIWFhYaGhoeHh4GKiX2Oi3iRjW+Wj2abkV+fk1milFOklk+nl0qpl0WrmEGsmT6umTiumTSvmC+vlyquliiulieuliivliyvlzOxmjuynD60n0C1oEO2oUW1oUq2olC2o1W2pF24p2S1pmy0p3S0qH6zqYS0q4u1rY+7s5PAt5XFvJTJv5PNw5PQxZXTx5jUyZzXzKTa0Krc07Hf17ji2r7l3sDm38Lo4cTp4sbq48jq5Mvr5c7s59Dt59Lu6NXv6tjw693y7uHz8OP08eT18ub18uf28+j29On29Or39ev39ev39ez49uz49u349u749u759+759+759+/59+/59+/59/D5+PH6+PL6+fP6+fT7+vb7+vb7+/f8+/f8+/j8+/v9/f3+/v7+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////wj+ANkJHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cpVI6evYLtOBBtWLEJmCMl+RXisq65Stg6q5XRQlqZbWr3JCsXXmMG5BodpGoxq21VjpvjyNeWt4Ceynwpu6zR4cKdhVmspViwLoqnKlWNZ9ZZ4M6nGDbeBtmzYqrHNqVA73EYKNGasuPjGnWhXU62tsvxWHIbKrPHjH5/J0vWM5Lly5M4pzWWq+vLmHZ+TE8e9nNJY1cP+5/JYjrt5ckmfhQ+PneM58+aT8lpvSvTH7fC9H7VFf/zH8vmllwt4prSXHXfklCMdU88EI5I5CyIn4YQUVihTNQ6G5I1+S1XTyyyxxFINSOUYY0wy3HBo1IAhhtgLSNyYKOM0SAHTYoizgJSMjCbKVlQ1N4Y4Ykcl8miMOUmBeOOLHcXIYzJK9dLiLL0MyVE53OxoIjdKVVNLlSRhuYyKFpZp5kC6OGPRN8JlJcwss/xCETK99AIlVs7ACScu6D1kDjF11vnNVeTYoiectfTJkDm/BFpnMEhWxcuhcPrnUDGO1tnmVM4YqqctigqEy6ikFmROMI4GM6hV5Oiip5pUBZFaakHfBFpMpFgRU4ucBsk66kHI/NJMV1we5CsuCIUq4bFn9uprs9BGK+201FZr7bXYZqvtttx26+234IYr7rjklmvuueimq+667Lbr7rvwmhkQACH5BAkDAOMALAAAAAB2AHYAhwAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4ODg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0NDU1NTY2Njc3Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdHR0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CAgIGBgYKCgoODg4SEhIWFhYaGhoeHh4iIiImJiYqKiouLi4aOjYGSj32VkXSak2yelWWil1+lmFqomlWqm1Gsm0yunEOvmzyvmjavmSyulyCtkxuskRirkRirkRqskSCtkyevljSym0G2oUe3o0q4pE66plS7qVu+rGTBsHDGtnjIuoDMvofPwozRxZLUx5nWy6LZz6fc0q/f1rfj277m3sXo4sjq48nq5Mvr5c/s59Lu6NTu6dbv6tjw69zx7eDz8OT18uf28+r39Oz49u349u349u349u749u749u749+/49+/59+/59+/59/D59/D59/H5+PL6+PP6+fT7+fb7+vf8+vz9/f7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+AMcJHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cpVo6ivYLtOBBtWLMJhCMl+RRisay1Usg6qFXXQVahZWqm9MsX3l8G5Bnt9Gqzq2dVfqfjyTUWt4Ciyowo+EzV4sKheVmMpVtwKYqrKlVlZpZZ4M6rGDZ+FAv1JlGGrvzazQu3w2SnQmLHO4ht3oqvBsLa+8luxlyqzyJN/JPaqFjGSwF6NAqa0lqrrrZx7jC6qk/dXSlv+XR9fy+Mr7+gjIyU2fvzzjsDQo2eG9FZ7VZ0/dpcfC+ms++V9dJ58x61Xi3iqvLedd6K8Qh1TxOgi0iwPKmfhhRhmKBMzu4hUzTVNMYMLLK20Qt9H1wgjDDEfJkVLiTDeAhI1KtYYDVK6wFhicMvVqGI1SDGjY4kncpSij8JgkxSJOsrYEY0+KnjULTDCckuRG11DDTE10nYUM7FcSZKWxYCo4ZloGqRdRdVUiNUusMCSC0XC5JILWlgRE2ectFgD0TW+2GknkFZZI8ueccbiZ0PX6CKonbyYSdUtiPIJ0S+P2tlWVcQcuqcsiw5Ey6ikFnQNL4/yQmhV1tSyp5RUApFaakHVCAqMpFf5EsucBsk66kHC6AIrVtIg5CstCIV64bFp9uprs9BGK+201FZr7bXYZqvtttx26+234IYr7rjklmvuueimq+667Lbr7rvwohkQACH5BAkDAOQALAAAAAB2AHYAhwAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4ODg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0NDU1NTY2Njc3Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdHR0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CAgIGBgYKCgoODg4SEhIWFhYaGhoeHh4iIiImJiYqKiouLi4yMjI2NjY6Ojo+Pj4qSkYaWk4KZlXmel3KimWumm2apnGGrnlytn1mvn1SxoEuynz2xnC+wmSavliKvlSGulCGulSSvliuxmDa0nUG3oki6pUy7p1W+q1nArV7Br2vFtXTKunzNvoPPwYvSxZHVyZfXy5/az6fd06/f1rjj28Dn38fp483s5tDt59Lu6dXv6trx7Nvx7d3y7uDz8OT08uj29Ov39e749+/59/D59/D59/D5+PD5+PD5+PD5+PH5+PH6+PL6+PP6+fT7+fX7+vb7+vj8+/r9/Pv9/fv9/fv9/fv9/f7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+AMkJHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cpVY6mvYLtOBBtWLEJhCMl+RQisqy1VtA6qLXUQFqm4WZ/FSsX3l8G5Bnd9GsyK2dVfq/jyXfWsoCmypgoyKzV4cKldVmUpVvwK4qrKlV1ZfZZ4s6rGDZl1Av2plGGrvza7Qu2QWSrQmLHW4otXIqzBsrbG8ltxFyuzyJN/HBbL1jCSv2KZIo7UFqvrr5x7jE4KlPdYSl/+XR9vy2Ms7+gjIx02fvzzjr/QoyeG9FZ7Vp0/dpc/Cymt++V9dJ58x61ni3isvLedd6QM19QwuohUC3XKVWjhhRjGdEyEIU2DTVPH4CLLK68cAxI2wwzTjDQfVkfii7iAJE2KNEaDlC4vkhjcR83QmOI0SB2TI4kmdoSij8O0eNSIOcbY0Yw+NqMULi/KgkuRHGEjTY8pSqPUMbNcSZKWziiZ4ZloEnSLghNJ05ZWu8wyC4cSCbPLLmxWNYycctbi5UPY/HLnnX9WJQ0tfPJZ6ELY8DLonb2YKRUuicoZoEPAPHpnMFYNgyiftCxKji2klloQNr082ouoUklzC59UeY5aKqkGSTMoMJJW5cucB81Kq0HC8IKlVrQV5OulBQGJ4bFpGsRss9BGK+201FZr7bXYZqvtttx26+234IYr7rjklmvuueimq+667Lbr7rvwnhkQACH5BAkDAPQALAAAAAB2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pokLqIsPqo4Tq48WrJEZrZIdrpQisJYpspkvtJw0tp43t6A8uKJAuaNEu6VHu6ZJvKdKvKdLvKhMvKhOvKhPvKhRvKhUvapYvqtcwK5gwK9kwrFowrFtwrNywrR3w7V9w7aDxbmMxLqUxbyZxr2dyMCiycKjzMWiz8ei0smj1s2l2M+m2tCo3NOr3tWu4Nez4tm25Nu85t7D6eLK7OXO7efT7+nY8ezc8u7i9PHl9fLm9vPn9vPp9/Tr9/Xs+Pbu+Pbv+ffx+fjy+vjz+vn0+vn0+/n1+/r2+/r3/Pv5/fz8/v3+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8I/gCvCRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KVWOnr2C7TgQbVizCZAjJfkVIrGsvVLoOqu10kNaluFmj2SrFd5jBuQaDURq8qtnVYav48l0VreAosqMKNus0eHCnYFZxKVZMC2KqypVnWY2WeDOqxg2bXQJNqZNhq8M2z0LtsFkp0Jix8uKLVyKtwbe22vJbMdgqs8iTf1xmy9cyksNoiSKO1Neq67Sce4yO6ZH3zklp/l0f78sjLe/oQyVdNn78847D0KNnhvRX+1XgPXaXjwvprvvlfXSefMchtYwv4q3y3nbeYUILdUotkxtIu0Co3IUYZqghTM1M+NFwTTUDTC600PLadoccMsksFhLVS4kwAgPSLCnWiApSwcBYYi4gTVJjirYg1YyOJZ640TA/prigUSTqKGNHNP44iVLAwJgLMEZqNMwsPqYoWlLN6IIldLNc0uKGaKZ5zS/0VVRNm1kJo4suHkLkTDHFQJMVM3PO2Qs1EFmTDJ54VnMVNbz0OecugDZkzTGE4omMNVYBo+icATqkTKR4wjkVM4n2yUujA/1i6qkFWYNMpMgYahU1WL/06alAp6JaUDWEMkNpVsPsUiettf5ykDPHSNPVNAgFK+xBrmaorJoGPQvttNRWa+212Gar7bbcduvtt+CGK+645JZr7rnopqvuuuy26+678MYr77xoBgQAIfkECQMA1wAsAAAAAHYAdgCHAAAAAQEBAgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4uLy8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUFBQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVFRUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaWlpampqa2trbGxsbW1tZ3FvYnZyXXp0V353ToR6RYl9PY5/NpKBMJaDKpmEJZuGIZ2HHZ+HGaGIF6KJE6SJEaWKD6WKDaaKDKaKC6eKCqeKCqeKCqeKCaeKCaeKCaeKCaeKCaeKCaeLCaeLC6iLD6mNE6uPGK2SG66TH6+VIbCWJbGYK7OaMrWdOLegPbmiQLqkRLumSLynTL6pT76qUb+rUr+rU7+sVL+sVr+sV7+sWL+sW8CuYMGvZcOyacW0bsa2cse4dsi5e8m6gMm8hcq9i8zAk8vBms3EndDGodLJptTMqdjPqtvSrN3Urt/WseHYtePauOTcuubdv+fgyOvkz+3o1O/q1/Dr3fLu4vTx5/bz6/j17fj27fj27vn37/n38Pn48fr48vr58/r59Pv59Pv69fv69vv69/z7+Pz7+v38+/39/f7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4ArwkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylVjqK9gu04EG1YsQmMIyX5FSKyrL1a7DqoNdZAWp7hZpdlSxXeYwbkGhWEa/KrZ1WGu+PJ1Ja2gKbKmCjYLNXhwKGFWcylWPAsiq8qVZVmVlngzq8YNm20CjSmUYavDNstC7bBZKtCYsfbii1circG3ttryW1HYK7PIk39UZsuXMpLDbJUijtTXq+vNn3eMzmmSd1tKa/5dH+/Loy3v6EslVTZ+vHaOw9CjX4YUWPtXtUB2l48LKa/75X10nnyurOeLeK+8t513nAzXlDK5gcQLdcpVaOGFGMb0TIQCUpjUM8HoYostz4A0zCKLXCKLh0T5MuKLwYAkC4o0roKUMC+OqAtIl9CIInhHPZPjiCVu5yOKySQlYo4xdjSjj5coFcyLugRTJHyy9IiiaB/yYiV0smzCYoZklnkNMPRVVA00Ww3DCy8cQiQNMshMk9Uyb775SzUQWdMMnXTyaVU1vuT5Zi+CMmRNMoDSuYw1VgVjqJ4QPdMonbRNtUyhefqSqEDBACMqME0OZM0yjS7z6VTVAJNnmlQEjTqqQdUACg2kWRHTS5wCySrqQdIkQ01XmcbqK0K4XugrMGYatGyz0EYr7bTUVmvttdhmq+223Hbr7bfghivuuOSWa+656Kar7rrstuvuu/CWGRAAIfkECQMA2AAsAAAAAHYAdgCHAAAAAQEBAgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4uLy8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUFBQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVFRUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxa3VzZnl2YX54XYJ7U4h+S42BRJGDPZWFN5mHMZyILZ6KKaGLJaKLIqSMH6WNHKeNGaiOF6iOFqmOFamOFKqOE6qOE6qOE6qOEqqOEqqOEqqOEqqOEqqOEqqPEqqPEqqPFKuPGa2SH6+UI7CWJ7KYKrOaLrScM7aeOrihP7qkRLymR72nS76pUcCrVcGtWMGuWcKvW8KvXMKwXcKwXsKwYcOxZcWzaca1bce3ccm5dMq6ecu8fMy+f82/g87Aic7CjtDEltPInNXKodbNptnQq9zTst/XteHZuOPbvOXewOfgwujhxOnjzOzm0e7p1e/r2vHt3vLv4vTx6Pb07fj28Pn38vn48/r59fv69fv69vv69vv69vv69/v69/z79/z7+Pz7+fz7+v38+/39/P79/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AsQkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylXjqa9gu04EG1YsQmMIyX5FWKzrL1i7Dqo9ddDWp7hZod1qxbdtwbkGh3EaLCvZ1WKy+PKVBa1gKrKpCiYrNXhwqWFWcylWbAviq8qVZ1mFlngzrMYNk30CzYmUYavFNtNC7TAZK9CYsfrii1eircG4tt7yS3GYLLPIk39EhgsYMpLEbJ0iphTYrOu3nHuMDuqS985Jb/5dHw/Moy3v6OkiRTZ+/POOxNCjf280WPtZt0B+kn8p+NFe95X30XnyxZIUMsCINwt98Hn3iS3UMYVMbiDtEqFyGGao4YYyKXPhR7d8mJQywuxyyy3KgETMI49sQouIRCV44onCgEQLizi6ghQxM57YW0eb4Mhifkcp0+OJKcInJIvHJGVijzV2dKOQmyglzIy7CJMkR8TQEiSLtCilDC9aQkeLJzByqOaa2AjzGkXXULMVMb74kmZD1UADjTVZJVNnncHwCdE0eup5zVXW/PJnnb8I2pA0heopzVXDLAooRNREqmc1ViWj6J+NFjTMqKPCCGmh0hxqlTXC/PnmQFCkkmrQNYXKqVUxv6QZ66gHVSMNp1xNetCuFBakqobEshnYrso26+yz0EYr7bTUVmvttdhmq+223Hbr7bfghivuuOSWa+656Kar7rrstrtmQAAh+QQJAwDYACwAAAAAdgB2AIcAAAABAQECAgIDAwMEBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUWFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJycoKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6Ojo7Ozs8PDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tMTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1eXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29wcHBxcXFycnJzc3N0dHR1dXVweXdrfXpmgXxihX9Zi4JRkIVKlYdDmYk9nIs4n4w0oo4wpI8spo8pp5AmqJEjqpEhq5Ifq5Icq5EXq5AUqo8Rqo4OqY0LqIsJp4sHp4oHp4oHp4oHp4oIp4oJqIsLqIwPqo0VrJAcrpMksZcrtJsvtZ01t587uaI/uqRGvadMvqpQwKtTwa1Zw69dxLFgxbJhxbNjxbNlxrRox7Vqx7ZsyLdwybl0y7t4zb19zr+Az8GD0MKG0cOL0sWQ1MeX1sqe2c6n3NKu39az4tm55Ny85t7A6ODE6eLH6+TK7OXQ7ujV8OvZ8ezd8u7h9PDl9fLp9/Tt+Pbx+vjy+vnz+/n1+/r1+/r2/Pv2/Pv3/Pv3/Pv4/Pz5/fz5/fz6/f37/f38/v79/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8I/gCxCRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KVWOqr2C7TgQbVizCYwjJfkVorCuwWbwOqk118NaoXVqf5YLFt5jBuQaHgRpMa9nVYrT48qX1rCArsqwKLkM1eDCqYVZ1KVZ8C6KsypVtWX2WePOsxg2XjQINCpVhq8U220LtcJkr0Jix+uIbd+Ktwbm25vJbcRgts8iTf0SWKxgyksVupSKOFJit67ice4w+ipP3zklx/l0fD8zjLe/o6SJFNn78847F0KNPhlRYe1u4QHaXH/yor/vlfXSefMetB4x4try3nXej3EKdUsgQIxIvDypn4YUYZghTMxV2hIuETDUzTC+55NIMSMRggskntoB4VDAlxpibR7aoaCMsSBUTY4m9gPSJjSrmd1QzO5Z4YkcpAomJgkbxUuSMG9UI5CdKDRMjL8McyRExtvyoomhJNeNLliRxKYqLGqapJkFkVgSMKVsZ88svHToEyyOPFHhVM3POKYw1EB3jCZ54BliVNcH0OScwgDZ0jCWE4pkJWlUVo+icUDIUSqR4RlZVM4n2GUyjAxlTzKnFtEXQMZhEiomhWVRZM0yfWg6EKqoGAUNoKZRidQwwdd566kGwWALmVtIgJGyd2KBp4bJrGgRttNRWa+212Gar7bbcduvtt+CGK+645JZr7rnopqvuuuy26+678MYr77z0phkQACH5BAkDANkALAAAAAB2AHYAhwAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4ODg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0NDU1NTY2Njc3Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdHR0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXR9e2+BfmuFgGeJg16PhleUiVCYi0mcjUSgjz+jkDulkjenkzOpkzCqlC6slSutlSmulieuliSvlR+ulBytkxmtkhaskROrjxGqjxCqjg+qjg+qjhCqjhCqjhKrjxOrkBetkR2vlCeymS+1nTW3nzm4oT66pEW8p0u/qVDArFXCrlnDsF3EsmPGtGbHtWvJt23KuXDKunLLu3TLu3bMvHnNvn3PwIHQwoTSxIfTxYrTxo7VyJPWyZfXy6Db0Kbe07Dh2Lbk27vm3sHo4cPp4sfr5Mzs5tDu6dbw69rx7d3z7uD08OT18ef28+v39e759/D59/P6+fT7+fX7+vf8+/f8+/f8+/j8+/j8+/n9/Pr9/Pv9/fv9/f3+/v3+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+ALMJHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cpV46qvYLtOBBtWLEJlCMl+RYisazBbvg6qXXVQ16leWqftmsW3bcG5BouRGnyL2VVkt/jyvTWt4CuyrwoyUzV4sKpiVnkpVqwLIq3KlXFZnZZ4c63GDZmZAk0qlWGryDbnQu2QWSzQmLEC4xt3oq7Bu7bu8kux2C2zyJN/ZMZL2GuRx3SpOqZUWK7ru5x7jH4KlPdcSnf+XR8vzGMu7+hVJWU2fvzzjcfQo1+GlFj7XME/dpef3yiw++V9dJ58tqwnjHi5vMdRfKCckgt1TDGTG0i+QKjchRhmqKFMzlj4kS7GNOWMMb/wwoszIBnDCCOi4BIiUsOYKOOEHeGy4o2yIHWMjCb+ApIoN67Y2VHO8Ggiih2pGCQjaCFVIo80amRjkKIoVYyMvxSDJEfG4ALkiqIl5QwwWpLUZSkvbqjmmgUZs+VEwaCyVTLCCENcRLJQQkmBWDlTZ53FXANRMqHoqWcwV10zzJ91DiNoQ8k8YqienCRj1TGMAgoRKZPq6YpVziz6p6MFJWOqqU0OlAwnk3KCqFVZ1xjz55sCnXqqQcEYioqlWSkzzJ2q2sprQbI8Ah5X1CAk7LAFRancsmwaBG201FZr7bXYZqvtttx26+234IYr7rjklmvuueimq+667Lbr7rvwxivvvPSqGRAAIfkECQMA2wAsAAAAAHYAdgCHAAAAAQEBAgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4uLy8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUFBQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVFRUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzdHR0dXV1dnZ2d3d3eHh4eXl5enp6e3t7fHx8fX19eIF/dIWCcImEbI2HZJOKXZiNVpyPUKCRS6OTRqaUQqiWP6qXPKyXOa2YNq+ZNLCZMbGaMLKaLbKZKLGYJbCXIrCWH6+VHK6TGq2TGa2SGK2SGK2SGa2SGa2SG66TH6+VJLGXLLSbNLefO7miQLukRbynSr6pUcGsV8OvXcWyYsa0Zsi2bcq5csu7ds29eM2+es6/e8+/fc/Af9DBgtHChtLEi9THjtXIkNbJk9fKl9jMnNrOodvRqd/VsuPau+bewOjhxerjyOvkyuzm0O7o1e/r2/Lt4PPv4vTx5PXy5/bz6vf07vj28Pn38/r59fv69vv69/z79/z7+Pz7+fz7+vz8+v38+/38+/39/P79/f7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AtwkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylVjq69gu04EG1YswmUIyX5FmKzrMFzADqptdZBXKl9ao/W6xbdtwbkGjZ0anKvZ1WS6+PLVFa1gLLKxCjZjNXgwK2NWfSlWzAuircqVdVmNlngzrsYNm6UCfWqVYavJNvNC7bDZLNCYsQrjG3cir8G9tvbyS9FYLrPIk39s5ovYa5HIeLFCppTYruu9nHuMnmqU911Ke/5dH0/M4y7v6FclbTZ+/PONyNCjZ4a0WPtdwT92l5/fqLD75X10nny4rEeMeLu8x1F8o6SyC3VMNXOMSL9AqNyFGGaooUzREPcRLxMyFQ0ywvzyC20dHfPJJ6XoEuJRxZgo44sd6bLijbMglYyMJgoDUik3rtjZUdHwaCKKGqkY5CdoIVUijzRqZGOQpSh1jIzCHINkRsfoAuSKoiUVzTBaktQlKlFuqOaaAiVDjUXCqLLVMsUU06REtGCCSYFYUVNnnchgA9Eypeipp49WYWPMn3UaI2hDy1BiqJ6P3DmVMozW6SFDp0yqpytWUbPon44WFM0zqD6D5DKfTPoJollVYZPMn28WlGqqBgljqCqWWsWMnQfdiupBtFACHlfWICTsMwjlluGybBoEbbTUVmvttdhmq+223Hbr7bfghivuuOSWa+656Kar7rrstuvuu/DGK++89KoZEAAh+QQJAwDcACwAAAAAdgB2AIcAAAABAQECAgIDAwMEBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUWFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJycoKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6Ojo7Ozs8PDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tMTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1eXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29wcHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYF8hYN5iYZ1jYhxkYtplo5im5Fcn5NXo5VSppdNqZhJq5pGrZtDr5tAsZw+sp07s505tJ44tZ40tZ0wtJwts5sqs5onspkksZcisJccr5QYrZIcrpQhsJYhsJYjsZcospkttJw1t6A9uqNEvKZJvqlPwKtVwq5bxbFhx7Rnybdty7pyzLx5zr990MGB0cKC0sOE0sSG08SI08WL1MeQ1smU2MuX2c2Z2s6b28+d3NCj3tOs4de15Nu959/F6uPK7ObN7efS7+nV8Ovb8u3g9PDj9fHn9vPq9/Ts+PXu+fbx+vjz+vn1+/r3/Pv4/Pv4/Pv5/fz6/fz7/f37/f38/v38/v39/v79/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8I/gC5CRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KVSOsr2C7TgQbVixCZgjJfkWorGsxXsIOqoV10FcrYFql/crFt23BuQaPrRrMy9lVZbz48uUlrSAtsrQKOnM1eLCrY1aBKVb8CyKuypV7WZWWePOuxg2dsQK9ypVhq8o2+0Lt0Fkt0JixDuMbd6KvwZ21/vJL8dgus8iTf3wGzNgzksl8uUqm1Jiv682fd4zO6pR3X0qB/l0fb8yjL+/oXSV9Nn68do7J0KN/bfRYe194P3aXH9wosfvlfXSefLqsZ4x4vry3nXes+EIdU88gIxIwDypn4YUYZiiTNMQJKCFT0iRDjDDC0NYRMqOMkgovHx51DIkwVtgRLynWWAtSysBIIjEgpVJjiuAdJY2OJJqoEYo/jtJMUiPqKKNGNP6YilLJwEhMMkZmhAwvPqbIi1LSFIMlSVuu0qKGaKZJEDPUWERMK1s1gwwyS05USyedFIgVNXPOuYw2EDGDCp548miVNsn02SegDTETCqF4joJWVcwo6idEqkCK5ytWUZNon8kwOhAnpJZaEDOjQDqKoVVpU+mcVG0WVKqpBRFDKCuTYuUMnQfNSupBtYQiGlfWIOQrJwjlhuGxahrEbLPQRivttNRWa+212Gar7bbcduvtt+CGK+645JZr7rnopqvuuuy26+678KIZEAAh+QQJAwDeACwAAAAAdgB2AIcAAAABAQECAgIDAwMEBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUWFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJycoKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6Ojo7Ozs8PDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tMTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1eXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29wcHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGCgoKDg4OEhISFhYWBiYd9jYp5kYx2lI9vmpJpn5Vjo5dep5lZqptVrJxRr55OsZ9Lsp9ItKBGtaFEtqFCt6I+t6E7t6E3t580tp4xtZ0utZwstJsqs5olsZggsJYksZgps5ortJswtp01t6A+uqRFvadLv6pPwaxXw69dxbJjx7VpyrhvzLt1zb170MCB0sOG08WJ1MeK1ceM1ciO1smR18qX2c2c28+f3NGh3dKj3tOk3tSo4Nau4tm05Nu859/G6uTM7OfP7ejV8OvZ8e3d8u7h9PDm9vPq9/Ts+Pbv+ffx+vjy+vn0+/n2+/r3/Pr5/Pv5/Pz6/fz6/fz7/fz8/f38/v39/v39/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8I/gC9CRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KVeOsr2C7TgQbVizCZwjJfkW4rOsxX8QOqp11EBisYVqnCePFl5nBuQaTuRrcC9pVZr/48v01raAtsrYKQos1eHCsZFaHKVYcDGKuypV/WZ2WeLOvxg2hwQLtKpZhq8w2B0PtENot0JixFuMbdyKwwZ21CvNbMVkvs8iTf4w2DFk0ksqAxVKmFFmw68Kce4z+SpV3YEqF/l0fj8wjMO/oYyWNNn78847K0KNHezRZ+2DCQHaXH9yosfvlfXSefLqsh4x4wby3nXevAEMdU9E8CNIwEipn4YUYZhgTNc2IBExuS1GzzDHFFEMNSMmYYgorvoBolDIlxtjWR76oaOMtSDUTY4nHgMSKjSqCdxQ1O5Z4YkcpAmkKfUeRuOOMHNUIJCtKLRPjMcscyVEyvvyooi9KUYNMliRx2YqLGqap5kDQYGNRMa9sJQ0zzCgY0S2hhFIgVtjQSecz20DUzCp55lnMVds04yedzQTaUDOcFJqnKR1WBc2if0LUiqR5qlcVNor62WhBoJRqakHNmCKpKYdatc2lVXS6SaqppRpUTKGvVIrVNHUeRGutBt3CiWhcaYPQr6AgFCCGyK5pULPORivttNRWa+212Gar7bbcduvtt+CGK+645JZr7rnopqvuuuy26+678MabZkAAIfkECQMA9AAsAAAAAHYAdgCHAAAAAQEBAgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCws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oN3So97Tpt/VqeDWrOHXr+LZsOPasuPas+TbtuXcuubewunizOzm0+/q2fHt3vPv4vTx5fXy5/bz6vf07fj27/n38vr49Pv5+Pz7+f38+/38+/39/P39/P79/P79/f7+/f7+/v7+/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AwQkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylXjra9gu04EG1YswmkIyX5FCK3rMmLJDqq9ddAYrWNaqSEbxjeawbkGm80aHAyt1WjF+PItRq2gLrK6Ck6rNXhwrWZW9yrmi/ehr8qVi1mllngzY4fTaIGeVctw1WibjTV+OG0XaMxYlfGNO9HY4M5Zkfmt2CyY2ePIP1JL5my2yGfFaj1T6uyYdWTNPUKf5aq76KTJrP6Ld+axWPfztZJSEy/e+cZn589LQ/qM/THeHrnHN4Z0mX3yH5kXny/qORPeMe5xBJ8rsxQzHVPUtBXSMQ8mZ+GFGGYoEzauBQjgUthI40wzzWADkjOqqALLMB8aFQ2JMM73UTAp1pgLUtPASGKLHMFSY4rfGYWNjiSa2BGKP6oi41Ej6rjkRjT+CItS0sDojDRGcuRMMD6maFxS2DyDJUlbxsKjhmimqVEys6iZ0C2mmNKLmwVF40qcceLnZjSh4BmnKsPRCYufcaaXXCmIJlqnKn6qoqdZiSpaUDJ4yhIocpEiKlcowmSYaSkIMaPhp3QSRGqpqKaq6qqsturqqyKwxirrrLTWauutuOaq66689urrr8AGK+ywxBZr7LHIkhQQACH5BAkDAPMALAAAAAB2AHYAhwAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4ODg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoq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idXHjdbJktjLl9rOndzQpd7UqODWquDXreHYruLYsOLZsePasuPatOTbuOXdu+beveffwOjhwunhw+nixerjyOvky+zmzu3n0e7p1O/q1vDr2PHs3PLu3/Pv5PXx7Pj17/n38fn48vr49Pr59fv6+Pz7+v38+/38+/39/P39/P39/f79/f7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+////////////////////////////////////////////////////CP4A5wkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylVjr69gu04EG1Yswm0IyX5FeK1rtWXUDqrtdXBZLmhaxUlTxjebwbkGq+EaXAyt1WzM+PJlJq4gMLLACm7TNXiwrmpWpylWHA3isMqVkVkVl3jzssYNt+UCjUuX4arZNj9D7XCbL9CYsVLjG3fissHNtkbzW7FaMbPIk3/0Ru2aN5LWlOWypvTatOvNn3eMjouWd2VKqf5dH9+2ozLv6HMl9TZ+vHaO1tCjf100W/tpvT12l88MabX75Xl0nnzDrHeNeNO8t513uChDHVPeaCMSNA8qZ+GFGGYo0zjfiIRMbktxyM0224wDUjWxxEILMSAa5Q2JMHb4ETEp1rgLUt/ASCI3INFSY4qiHTWOjiSa2BGKP8YiIVIj6igjRzT+SItSOe74jZEcVUOMjykSo9SQV5KkpS0tamjmmQPJ4oxF0tyyVS6qqGILRbuUUoovWTkTZ5ykBNhQNrPYaac0V12Typ57+qlQNqMIamcsxFFFC6JxxgIRLY7aqV5VelKqaCuInlJQNrE4GguhVl0jy55rFkSpKk0GSSPoLZFetYucB7160C6jeMnVNAjpelCZygmLJkHGHqvsssw26+yz0EYr7bTUVmvttdhmq+223Hbr7bfghivuuOSWa+656KarboYBAQAh+QQJAwDlACwAAAAAdgB2AIcAAAABAQECAgIDAwMEBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUWFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJycoKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6Ojo7Ozs8PDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tMTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1eXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29wcHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGCgoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OUlJSVlZWWlpaXl5eYmJiZmZmWnJuUoJ6SpKCPp6OKrKaGsamCtKt+uK17u690vrBuwLFmwbFhwrBawq9Pv6tHvac7uaIytp4qs5oksZgisZYjsZclspgrtJs4uKFHvqhXw69qyrh0zb190MGF08WL1ciR2MuU2cyZ2s6e3NGk39Sq4dev4tm05Nu15Ny25dy45d255t2859++6ODC6eLF6uPI6+XK7ObN7efQ7ujS7+rX8ezZ8u3c8u7d8+/e8+/h9PDm9vPo9/Tp9/Tq9/Xr+PXt+Pbx+vj3/Pv6/fz8/v3+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////8I/gDLCRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KVWOwr2C7TgQbVizCbgjJfkW4rau2ZtUOqg12kFkvaFq9UWPGl5vBuQa18RqMDK1Vbs748nXmrSAxssQKdvM1eLAvbVb3KuYbDWKxypWTWfWWeHOzxg279QLNy5fhqtw2Q0PtsFsw0JixXuMbdyKzwc62TvNbUdsxs8iTf/SmjRvtkNqU9cqNdFu169mce4zO65Z3ZUqz/l0f37ajMu/oeyX1Nn78c43a0KMnbpRb+2rZQHaX36z6/fIenSdfZEh5s4141by3UXy38KIMdUp5Q99Hz0Co3IUYZqghTNOoF1IyFiI1jS6ruOLKNCBpU0stuBwT4lC2mCijLiAZs+KNvyDVi4wmrgISLjeuKNpR0/BoIoodqRhkLRMWVSKPNHZkY5C4KKWLjKvogiRH2hgD5IrGKDWNKlqS1GUuL26o5pq2BFeRNFFmxYuJuVDkCyqoAJOVMzzSAmBD3NyCJ57SXLWNLEay8qdC3NAyKJ5MWnWLka6YAhEuj+LpIVXOICqjLIuqssqoq6hSEDe1PFpLoVZtE6OJVW4SRCqpBkkzqC5NVvULK3UaNOuoB/lCS5hcUYPQrz4edM2GyK55ULPORivttNRWa+212Gar7bbcduvtt+CGK+645JZr7rnopqvuuuy26+678MYLb0AAIfkECQMA5QAsAAAAAHYAdgCHAAAAAQEBAgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4uLy8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUFBQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVFRUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzdHR0dXV1dnZ2d3d3eHh4eXl5enp6e3t7fHx8fX19fn5+f39/gICAgYGBgoKCg4ODhISEhYWFhoaGh4eHiIiIiYmJioqKi4uLjIyMjY2Njo6Oj4+PkJCQkZGRkpKSk5OTlJSUlZWVlpaWl5eXmJiYj5qYeZ6YYqKWUqWWRaeVO6qWNqyWM66XNLCaOLSdPrehR7qlUL2qVsCsWcGuWsKvXMOwX8SxYsWzZMa0Zce1Z8e2aci3a8m4bsq6cMu6b8u6c828ec+/f9HCgtPEh9TGitXIjtfJktjLmNrOnNzQod3Spd/UqeDWsePatuXcuubevOffveffvujgvujgwOjhxOrix+vkyuzlzu3n0u7p1O/q1vDr1/Dr2PHs2vHt3PLu4PTw5/bz6ff06vf16/f17Pj17fj28fn49vv6+Pz7+v38/P79/v7+/v7+/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AywkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylUjsa9gu04EG1YsQm8IyX5FyK3rtmjXDqoldrAZsGlawVV7xrebwbkGtfkanMyv1W7T+PKdBq6gMbLGCnYLNnhwMG1WrSlWTA2iscqVl1kFl3hztMYNuwED7SuY4ardNlND7bDbMNCYsWrjG3dis8HPtlZ7PVFbMrPIk38Et60b7ZDblv3aprSbtuvNn2uM7guXd9FJt/5dH09c4zLv6H8lBTd+vPaM29CjLz/UW3tt1D/2ko+rGVJu99FnHn90IQVON+Jp89523vWyTH5LgYNWSNJAqNyFGGaoYUzU+CLSMrktRc0uo4ACSmcfaTPLLLkgE6JRtJgo4y4gIbPijcEg5YuMJo4CUi43rgieUdTwaCKKHKkY5CxtISWKkTR2ZGOQuSi1i4yi7ILkRtogA+SKyChFDSlaktTlLi9uqOaaA9ESXEXU8LJVLyZGKREwppgiTFbP8JiKhQxxY0ueeW451TYl8hgKoAlxowqhecLSJFW3GAmKKxDlAmmeHlb1TKI9AkrKKKSOQkpB3MACKSyGSrVNjFcmvklQqaUaRA2hvEx6FTCh2DkrrT4aBIwqYXLVqkDABmtQbxkmy6ZBzj4r7bTUVmvttdhmq+223Hbr7bfghivuuOSWa+656Kar7rrstuvuu/DGK6+aAQEAIfkECQMA5QAsAAAAAHYAdgCHAAAAAQEBAgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4uLy8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUFBQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVFRUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzdHR0dXV1dnZ2d3d3eHh4eXl5enp6e3t7fHx8fX19fn5+f39/gICAgYGBgoKCg4ODhISEhYWFhoaGh4eHiIiIiYmJioqKi4uLjIyMjY2Njo6Oj4+PkJCQkZGRkpKSk5OTlJSUlZWVlpaWl5eXmJiYmZmZkJuZfKCZZqSZV6eYSaqYQa2ZPK+aO7CbPLOdQbehSLqlUr6qWcCtXsOwYcSyYsWzZMW0Z8e1a8i3bcm4bsm5cMq6csu7dMy8d829es+/f9HChdPFitXHjtbJkdjLlNnMl9rOnNvQot3Tp9/VrOHXr+LZteTcvOffwenhw+nixOrjxerjxurkx+vkyOvlyuzmzOzmz+3o0e7p1fDr2PDs2/Ht3PLu3PLu3fLu3vPv4PTw5vbz6ff06/f17fj27vn37/n38/r59/z7+Pz7+v38/P79/v7+/v7+/v7+/v7+/v7+/////v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////CP4AywkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylUjsa9gu04EG1YsQm8IyX5FuK3rNmraDqoldrDZL2pawV2bxhdtwbkGtfkanMxvVW/U+PKlBq4gMrLICnoDNngwsLhVsSlWbA1iscqVl1kFl3gzY4fefoH2BcwwVW+bqzV+6E0YaMxXt/HFHbHZ4Gdbr7mWqC2Z2ePIP4Lr9m22yG3LfLVN+o2bdW/NPULvhau76KTerP6L/+ZxWffzvpKCEy/e+cZt5893Q1qd/fCN3OM3QxqePfmP5sUnjHrf9OceR/Dh0ssy0y0FzoEdTdNgchRWaOGFMVHTi0jKZNMUNbqMEkooeH2UzSyz4EKMh0jNMuKLuoBEDIo0AoNULy+OOApIuNCIojJIUZPjiCVydKKPs3CTlIg5xtjRjD7iopQuL46iS5EbZUNMjyjSlRQ1pVxJkpa7sIjhmWgWNIszFlGzy1a8jJgLRb+ggoqNWDmTYyoTMrRNLXbaieVU25Ay5Ch9JrQNK4HaGUuiUNUyZCiuQIRLo3byYpUzhr5ISp+lkCIqKaUUtA0sjcIyqFTbuDgim1QFjTqqQdQEugukU/0iypwGySrqQb+wMkxX1SDkKykIXYPhsWn26muz0EYr7bTUVmvttdhmq+223Hbr7bfghivuuOSWa+656Kar7rrstuvuu/CiGRAAIfkECQMA6QAsAAAAAHYAdgCHAAAAAQEBAgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4uLy8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUFBQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVFRUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzdHR0dXV1dnZ2d3d3eHh4eXl5enp6e3t7fHx8fX19fn5+f39/gICAgYGBgoKCg4ODhISEhYWFhoaGh4eHiIiIiYmJioqKi4uLjIyMjY2Njo6Oj4+PkJCQkZGRkpKSk5OTlJSUlZWVlpaWl5eXmJiYmZmZmpqakpyaf6GbaqabW6qcUa2cSLCdRLKeQrSfQrWgR7mkTbyoVr+sYMOxZsW0ace2asi2a8i3bsm5csu6c8u7dcy8d829ec6+e86/gNDChNLEjNXIktjLltnNmdrOm9vPntzRo97TquHXr+LZsuPatuXcvOffw+niyevly+zmzOzmze3nze3nzu3oz+3o0O7o0e7p0+/q1fDr2PHs2vHt3PLu3fPu3vPv4PTw4fTw4/Xx5/bz6ff06vf07Pj17vn28Pn39Pv5+Pz7+f38+v38/P79/v7+/v7+/v7+/v7+/v7+/v7+/v/+/v/+/v/+////////////////////////////////////////////////////////////////////////////////////////////CP4A0wkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylVjsa9gu04EG1Yswm8IyX5FyK0rN2vbDqotdtDZL2pazWmrxhdtwbkGtfkanMzb1W/X+PK9Zq4gMrLICnoDNngwMG1W9yrmmw3isMqVl1k1l3iztcYNvf0C7QuYYavfNmdD7dCbMNCYsW7jG3eis8HRtmrzS1FbMrPIkx/VtsxXbuULmffCRV0ZdIbKqGv3dT26du3duv4r5PUdlzPxCbN/F4YeoTbqvJQ9b28w2nz6+PPr39+QGi+RyNyHFDW5kCKKKHh9pM0ss+AijIBDzXLghLmAJAyDGP6CFC8THkgKSLhgyGBkR1HT4YEJcrSgiLO0hZSBHVbY0YUi4qJULhOSkkuKG2kjTIgMspcUNabsSJKPukDI35JbzdKMRdPostUuo4xi40S+pJIKMFk1U2WVqfTm0Da1aKnlNFdtU8qXVZIi5kLbtGKmlrK8KVUtbFbpCkS3zKnlf1U1s+aXpdhpSimIlnJKQdvEMmcsaFq1zSxfPllQookaNI2ZuthZlS9WHoQpogf50oqQW1WD0KilIIQNejCsMhkrk7TWauutuOaq66689urrr8AGK+ywxBZr7LHIJqvsssw26+yz0EYr7bRPBQQAIfkECQMA4QAsAAAAAHYAdgCHAAAAAQEBAgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4uLy8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUFBQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVFRUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzdHR0dXV1dnZ2d3d3eHh4eXl5enp6e3t7fHx8fX19fn5+f39/gICAgYGBgoKCg4ODhISEhYWFhoaGh4eHiIiIiYmJioqKi4uLjIyMjY2Njo6Oj4+PkJCQkZGRkpKSk5OTlJSUlZWVlpaWl5eXmJiYmZmZkZuZi52afKOcaqqeXa6fU7GgTrOgQrOfSrejS7ikULuoV7+sY8OxbMa2b8i3csm5csq6dMu7dsy8es2+e86+fM6/fs/AgNDBhNLDitTGkdfKmdrOndzQoN3Rod3So97Tp9/VreHYsuTauOXdvOffwunix+vkze3n0e7p1O/q1O/q1fDr1vDr1/Ds2PHs2fHt2/Lt3PLu3fLv3vPv4PTw4fTx5/b06vf17Pj27vj27/n38Pn38/r59/z7+fz8/P39/f79/v7+/v7+/v7+/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AwwkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylVjsa9gu04EG1YsQm0IyX5FeK0rtmptDaotdpDZL2hat1mjxjebXLUGrfkaXMyv1WzV+PKttq0gMrLICmb7NXjwL2tWrylWjPmhsMqVk1ndlngztcYNs4G2bLhqts3WUDvMFgx056uaqcWVyGyws63WWk+0Rtes8eMenY2i9XuktWO+bh+lFap6KOYen/PKxd2YUuvWaf55NMa9fK+kzsBXb87RWvny2JDmUh8K5Pb3y5CyUi/+I/n3waBH3XoguZcLL8ZIhx4vIj2jIHIQRijhhC89s4tIwlTT1DO3kFLdMyBVM8sstwSjIVKyqGcLSMGM6KIvSO2iHikg2eLiiMIg9Qx9IHYk4o2zxIeUh+Ct2FGLNxqJlC3WkWJLjxxVE4yNIwaY1DOlPEmSlLqcSOGXYBYkizIWPaPLVrpUp2REvaiiyi9ZKQMeKg8qdA0tbroJJVXWlDJjnQdd00qebsay21QDgucKRLYQ6uaFVSnjp3WlKGhKKZiWYkpB18RCaCx7TmVNitWRWVCmmRr0TJ66HGpVL0ijrDkQqpge1EsrwHSF10G0loKQNBT2GqZBwg5r7LHIJqvsssw26+yz0EYr7bTUVmvttdhmq+223Hbr7bfghivuuOSWa+6XAQEAIfkECQMA5AAsAAAAAHYAdgCHAAAAAQEBAgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4uLy8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUFBQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVFRUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzdHR0dXV1dnZ2d3d3eHh4eXl5enp6e3t7fHx8fX19fn5+f39/gICAgYGBgoKCg4ODhISEhYWFhoaGh4eHiIiIiYmJioqKi4uLjIyMjY2Njo6Oj4+PkJCQkZGRkpKSk5OTlJSUlZWVlpaWl5eXmJiYmZmZmpqam5ubnJyclZ6cj6Cdgaafb6yhZLGjW7SkVbalSrejUrmmU7uoWL6sX8GvasW0c8i4d8q7esy9e82+fM6/fs/AgNDBgtDChNHDhtLEidPFkNbJl9jMntvQot3Spd7UqN/VquDWruHYsuPat+XcvOffwunix+vkzu3n1O/q1/Ds2vHt2vHt2/Ht3PLu3fLu3fLu3vPv3/Pv3/Pv4PPw4PPw4PPw4fTw4vTw6ff07fj27/n38/r59fv69vv69/z7+fz8+v38/P39/f7+/v7+/v7+/v7+/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AyQkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdylXjsq9gu04EG1YsQm8IyX5FmK0rt2zcDqpddlBasGlbt2Xbi7bgXIPWgAlG1u2qt72I2xZ0RtZZwW7CBAsWZs3q28TZtkEkJlkyXauY9z7sFqwzMGGFrR5GrC1it2GdK2O9HHeiNMHS8valaK2Y2d/AP0YzZSsayWvIgF1TaouUc1LFPSL/tau676TPn9vyWKy6d2BJo/5ld2684zXv3jUfzTWeFEjq6B0fbTV++8fu6IWFb04e5PldvxSzHFPR+CKSNAMGp+CCDDYokzS9iESMbEtJk8spzuX2kTW11JILZUnRMh4uIAnT4YngHcXLeKeAlMuJHRKDlDTtacgRhzDWothRGGZHYkcmwpiLUrg8dwouNm5kjTAvdqhfUtKggiRJS/JCoYNYZkkQLchYNM0uW61Iyo8S/dJKKylehUx2q1zJUDa3nHkmXlZZg8p4priZUDawyHkmLTtOxV92sECEi59nRlgVMnc+h4qbqaAiKSqpFJQNLX7SQmdV1ojoXJcFTTqpQdPIuUugVvliCpkEiSrpQUC/wPLkVpuG6ipC1TjoKipaGrRrr8AGK+ywxBZr7LHIJqvsssw26+yz0EYr7bTUVmvttdhmq+223Hbr7bfgZhkQACH5BAkDAOMALAAAAAB2AHYAhwAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4ODg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0NDU1NTY2Njc3Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdHR0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CAgIGBgYKCgoODg4SEhIWFhYaGhoeHh4iIiImJiYqKiouLi4yMjI2NjY6Ojo+Pj5CQkJGRkZKSkpOTk5SUlJWVlZaWlpeXl5iYmJmZmZqampubm5ycnJ2dnZ6enoygnX2jnGOnm0mqmDusmDKulzewmjyznke4o1G7qFzBrmfFtHHJuXzMvn/Ov4LQwoTRw4XRxIjSxYvTxo3Ux47VyI/VyJXYy5vaz6Hd0qXe1Kng1q7i2LLj2rfl3Lvn38Do4cbq5Mrs5s7t59Pv6tfw69ry7dzy7t3z7t7z79/z7+D08OH08OL08OP18eT18eT18uT18uT18ub28un39Ov49ez49e/59/H6+PT7+fb7+vz+/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+AMcJHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cpVo7SvYLtOBBtWLEJlCMl+RaitKy5Srg6qlSZXWDWt1lSR2ivM4FyD2YQJVtbWqrC9iElZKziN7LSC2oYJFjwsm9VVifeigmhs8uRmVq1l3ru4oTbPlAtXPYz4VGmH2op5toy11t64YwU/1pqqb8VsycwKH/6xWapboEdmQwaMNtJbrZF7XP6Ll3VkSk9lvuURmfXvwJL+NhudnGO2799VF9WV+RTI6ujLF3W1HaR39MPE39JOSr55678g45xSzfQikjQDEqfgggw2CJM0vIhUzDVNSZNLKqWUQtdH19xyyy7DUIgULRmWmAtIw3ioYnhH8VJihqmAtIuKHhaDlDQvZrghRx3SeIt6RWH44okdpUjjLkrlUmIquey40TXDzOhhfklJo0qTJEHJi4gOdullQbUcYxGEW/GCCipESvSLK66weNUxZ57JCjYQZYMLm2w6ORU2qsR5Zip0NpRNLHiyWUuCUd3i55mvQKRLoWwaWNUxfcapSqADraLKpqqsUlA2tRRai55SYVNLnGIWxCmnfuHJC6JJVPnC5EGrbnrQL7H4ttVuBtWqCkKvLejrl73WSuyxyCar7LLMNuvss9BGK+201FZr7bXYZqvtttx26+234IYr7rjklmvuuV4GBAA7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=');
    }
  </style>
  <style type="text/css" data-name="fontawesome.css">
    <style type="text/css" data-name="fontawesome.css">

    /*!
 * Font Awesome Pro 5.11.2 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 */
    .fa,
    .fas,
    .far,
    .fal,
    .fad,
    .fab {
      -moz-osx-font-smoothing: grayscale;
      -webkit-font-smoothing: antialiased;
      display: inline-block;
      font-style: normal;
      font-variant: normal;
      text-rendering: auto;
      line-height: 1;
    }

    .fa-lg {
      font-size: 1.33333em;
      line-height: 0.75em;
      vertical-align: -.0667em;
    }

    .fa-xs {
      font-size: .75em;
    }

    .fa-sm {
      font-size: .875em;
    }

    .fa-1x {
      font-size: 1em;
    }

    .fa-2x {
      font-size: 2em;
    }

    .fa-3x {
      font-size: 3em;
    }

    .fa-4x {
      font-size: 4em;
    }

    .fa-5x {
      font-size: 5em;
    }

    .fa-6x {
      font-size: 6em;
    }

    .fa-7x {
      font-size: 7em;
    }

    .fa-8x {
      font-size: 8em;
    }

    .fa-9x {
      font-size: 9em;
    }

    .fa-10x {
      font-size: 10em;
    }

    .fa-fw {
      text-align: center;
      width: 1.25em;
    }

    .fa-ul {
      list-style-type: none;
      margin-left: 2.5em;
      padding-left: 0;
    }

    .fa-ul>li {
      position: relative;
    }

    .fa-li {
      left: -2em;
      position: absolute;
      text-align: center;
      width: 2em;
      line-height: inherit;
    }

    .fa-border {
      border: solid 0.08em #eee;
      border-radius: .1em;
      padding: .2em .25em .15em;
    }

    .fa-pull-left {
      float: left;
    }

    .fa-pull-right {
      float: right;
    }

    .fa.fa-pull-left,
    .fas.fa-pull-left,
    .far.fa-pull-left,
    .fal.fa-pull-left,
    .fab.fa-pull-left {
      margin-right: .3em;
    }

    .fa.fa-pull-right,
    .fas.fa-pull-right,
    .far.fa-pull-right,
    .fal.fa-pull-right,
    .fab.fa-pull-right {
      margin-left: .3em;
    }

    .fa-spin {
      -webkit-animation: fa-spin 2s infinite linear;
      animation: fa-spin 2s infinite linear;
    }

    .fa-pulse {
      -webkit-animation: fa-spin 1s infinite steps(8);
      animation: fa-spin 1s infinite steps(8);
    }

    @-webkit-keyframes fa-spin {
      0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
      }

      100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
      }
    }

    @keyframes fa-spin {
      0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
      }

      100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
      }
    }

    .fa-rotate-90 {
      -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
      -webkit-transform: rotate(90deg);
      transform: rotate(90deg);
    }

    .fa-rotate-180 {
      -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
      -webkit-transform: rotate(180deg);
      transform: rotate(180deg);
    }

    .fa-rotate-270 {
      -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
      -webkit-transform: rotate(270deg);
      transform: rotate(270deg);
    }

    .fa-flip-horizontal {
      -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
      -webkit-transform: scale(-1, 1);
      transform: scale(-1, 1);
    }

    .fa-flip-vertical {
      -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
      -webkit-transform: scale(1, -1);
      transform: scale(1, -1);
    }

    .fa-flip-both,
    .fa-flip-horizontal.fa-flip-vertical {
      -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
      -webkit-transform: scale(-1, -1);
      transform: scale(-1, -1);
    }

    :root .fa-rotate-90,
    :root .fa-rotate-180,
    :root .fa-rotate-270,
    :root .fa-flip-horizontal,
    :root .fa-flip-vertical,
    :root .fa-flip-both {
      -webkit-filter: none;
      filter: none;
    }

    .fa-stack {
      display: inline-block;
      height: 2em;
      line-height: 2em;
      position: relative;
      vertical-align: middle;
      width: 2.5em;
    }

    .fa-stack-1x,
    .fa-stack-2x {
      left: 0;
      position: absolute;
      text-align: center;
      width: 100%;
    }

    .fa-stack-1x {
      line-height: inherit;
    }

    .fa-stack-2x {
      font-size: 2em;
    }

    .fa-inverse {
      color: #fff;
    }

    /* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
    .fa-500px:before {
      content: "\f26e";
    }

    .fa-abacus:before {
      content: "\f640";
    }

    .fa-accessible-icon:before {
      content: "\f368";
    }

    .fa-accusoft:before {
      content: "\f369";
    }

    .fa-acorn:before {
      content: "\f6ae";
    }

    .fa-acquisitions-incorporated:before {
      content: "\f6af";
    }

    .fa-ad:before {
      content: "\f641";
    }

    .fa-address-book:before {
      content: "\f2b9";
    }

    .fa-address-card:before {
      content: "\f2bb";
    }

    .fa-adjust:before {
      content: "\f042";
    }

    .fa-adn:before {
      content: "\f170";
    }

    .fa-adobe:before {
      content: "\f778";
    }

    .fa-adversal:before {
      content: "\f36a";
    }

    .fa-affiliatetheme:before {
      content: "\f36b";
    }

    .fa-air-freshener:before {
      content: "\f5d0";
    }

    .fa-airbnb:before {
      content: "\f834";
    }

    .fa-alarm-clock:before {
      content: "\f34e";
    }

    .fa-alarm-exclamation:before {
      content: "\f843";
    }

    .fa-alarm-plus:before {
      content: "\f844";
    }

    .fa-alarm-snooze:before {
      content: "\f845";
    }

    .fa-album:before {
      content: "\f89f";
    }

    .fa-album-collection:before {
      content: "\f8a0";
    }

    .fa-algolia:before {
      content: "\f36c";
    }

    .fa-alicorn:before {
      content: "\f6b0";
    }

    .fa-align-center:before {
      content: "\f037";
    }

    .fa-align-justify:before {
      content: "\f039";
    }

    .fa-align-left:before {
      content: "\f036";
    }

    .fa-align-right:before {
      content: "\f038";
    }

    .fa-align-slash:before {
      content: "\f846";
    }

    .fa-alipay:before {
      content: "\f642";
    }

    .fa-allergies:before {
      content: "\f461";
    }

    .fa-amazon:before {
      content: "\f270";
    }

    .fa-amazon-pay:before {
      content: "\f42c";
    }

    .fa-ambulance:before {
      content: "\f0f9";
    }

    .fa-american-sign-language-interpreting:before {
      content: "\f2a3";
    }

    .fa-amilia:before {
      content: "\f36d";
    }

    .fa-amp-guitar:before {
      content: "\f8a1";
    }

    .fa-analytics:before {
      content: "\f643";
    }

    .fa-anchor:before {
      content: "\f13d";
    }

    .fa-android:before {
      content: "\f17b";
    }

    .fa-angel:before {
      content: "\f779";
    }

    .fa-angellist:before {
      content: "\f209";
    }

    .fa-angle-double-down:before {
      content: "\f103";
    }

    .fa-angle-double-left:before {
      content: "\f100";
    }

    .fa-angle-double-right:before {
      content: "\f101";
    }

    .fa-angle-double-up:before {
      content: "\f102";
    }

    .fa-angle-down:before {
      content: "\f107";
    }

    .fa-angle-left:before {
      content: "\f104";
    }

    .fa-angle-right:before {
      content: "\f105";
    }

    .fa-angle-up:before {
      content: "\f106";
    }

    .fa-angry:before {
      content: "\f556";
    }

    .fa-angrycreative:before {
      content: "\f36e";
    }

    .fa-angular:before {
      content: "\f420";
    }

    .fa-ankh:before {
      content: "\f644";
    }

    .fa-app-store:before {
      content: "\f36f";
    }

    .fa-app-store-ios:before {
      content: "\f370";
    }

    .fa-apper:before {
      content: "\f371";
    }

    .fa-apple:before {
      content: "\f179";
    }

    .fa-apple-alt:before {
      content: "\f5d1";
    }

    .fa-apple-crate:before {
      content: "\f6b1";
    }

    .fa-apple-pay:before {
      content: "\f415";
    }

    .fa-archive:before {
      content: "\f187";
    }

    .fa-archway:before {
      content: "\f557";
    }

    .fa-arrow-alt-circle-down:before {
      content: "\f358";
    }

    .fa-arrow-alt-circle-left:before {
      content: "\f359";
    }

    .fa-arrow-alt-circle-right:before {
      content: "\f35a";
    }

    .fa-arrow-alt-circle-up:before {
      content: "\f35b";
    }

    .fa-arrow-alt-down:before {
      content: "\f354";
    }

    .fa-arrow-alt-from-bottom:before {
      content: "\f346";
    }

    .fa-arrow-alt-from-left:before {
      content: "\f347";
    }

    .fa-arrow-alt-from-right:before {
      content: "\f348";
    }

    .fa-arrow-alt-from-top:before {
      content: "\f349";
    }

    .fa-arrow-alt-left:before {
      content: "\f355";
    }

    .fa-arrow-alt-right:before {
      content: "\f356";
    }

    .fa-arrow-alt-square-down:before {
      content: "\f350";
    }

    .fa-arrow-alt-square-left:before {
      content: "\f351";
    }

    .fa-arrow-alt-square-right:before {
      content: "\f352";
    }

    .fa-arrow-alt-square-up:before {
      content: "\f353";
    }

    .fa-arrow-alt-to-bottom:before {
      content: "\f34a";
    }

    .fa-arrow-alt-to-left:before {
      content: "\f34b";
    }

    .fa-arrow-alt-to-right:before {
      content: "\f34c";
    }

    .fa-arrow-alt-to-top:before {
      content: "\f34d";
    }

    .fa-arrow-alt-up:before {
      content: "\f357";
    }

    .fa-arrow-circle-down:before {
      content: "\f0ab";
    }

    .fa-arrow-circle-left:before {
      content: "\f0a8";
    }

    .fa-arrow-circle-right:before {
      content: "\f0a9";
    }

    .fa-arrow-circle-up:before {
      content: "\f0aa";
    }

    .fa-arrow-down:before {
      content: "\f063";
    }

    .fa-arrow-from-bottom:before {
      content: "\f342";
    }

    .fa-arrow-from-left:before {
      content: "\f343";
    }

    .fa-arrow-from-right:before {
      content: "\f344";
    }

    .fa-arrow-from-top:before {
      content: "\f345";
    }

    .fa-arrow-left:before {
      content: "\f060";
    }

    .fa-arrow-right:before {
      content: "\f061";
    }

    .fa-arrow-square-down:before {
      content: "\f339";
    }

    .fa-arrow-square-left:before {
      content: "\f33a";
    }

    .fa-arrow-square-right:before {
      content: "\f33b";
    }

    .fa-arrow-square-up:before {
      content: "\f33c";
    }

    .fa-arrow-to-bottom:before {
      content: "\f33d";
    }

    .fa-arrow-to-left:before {
      content: "\f33e";
    }

    .fa-arrow-to-right:before {
      content: "\f340";
    }

    .fa-arrow-to-top:before {
      content: "\f341";
    }

    .fa-arrow-up:before {
      content: "\f062";
    }

    .fa-arrows:before {
      content: "\f047";
    }

    .fa-arrows-alt:before {
      content: "\f0b2";
    }

    .fa-arrows-alt-h:before {
      content: "\f337";
    }

    .fa-arrows-alt-v:before {
      content: "\f338";
    }

    .fa-arrows-h:before {
      content: "\f07e";
    }

    .fa-arrows-v:before {
      content: "\f07d";
    }

    .fa-artstation:before {
      content: "\f77a";
    }

    .fa-assistive-listening-systems:before {
      content: "\f2a2";
    }

    .fa-asterisk:before {
      content: "\f069";
    }

    .fa-asymmetrik:before {
      content: "\f372";
    }

    .fa-at:before {
      content: "\f1fa";
    }

    .fa-atlas:before {
      content: "\f558";
    }

    .fa-atlassian:before {
      content: "\f77b";
    }

    .fa-atom:before {
      content: "\f5d2";
    }

    .fa-atom-alt:before {
      content: "\f5d3";
    }

    .fa-audible:before {
      content: "\f373";
    }

    .fa-audio-description:before {
      content: "\f29e";
    }

    .fa-autoprefixer:before {
      content: "\f41c";
    }

    .fa-avianex:before {
      content: "\f374";
    }

    .fa-aviato:before {
      content: "\f421";
    }

    .fa-award:before {
      content: "\f559";
    }

    .fa-aws:before {
      content: "\f375";
    }

    .fa-axe:before {
      content: "\f6b2";
    }

    .fa-axe-battle:before {
      content: "\f6b3";
    }

    .fa-baby:before {
      content: "\f77c";
    }

    .fa-baby-carriage:before {
      content: "\f77d";
    }

    .fa-backpack:before {
      content: "\f5d4";
    }

    .fa-backspace:before {
      content: "\f55a";
    }

    .fa-backward:before {
      content: "\f04a";
    }

    .fa-bacon:before {
      content: "\f7e5";
    }

    .fa-badge:before {
      content: "\f335";
    }

    .fa-badge-check:before {
      content: "\f336";
    }

    .fa-badge-dollar:before {
      content: "\f645";
    }

    .fa-badge-percent:before {
      content: "\f646";
    }

    .fa-badge-sheriff:before {
      content: "\f8a2";
    }

    .fa-badger-honey:before {
      content: "\f6b4";
    }

    .fa-bags-shopping:before {
      content: "\f847";
    }

    .fa-balance-scale:before {
      content: "\f24e";
    }

    .fa-balance-scale-left:before {
      content: "\f515";
    }

    .fa-balance-scale-right:before {
      content: "\f516";
    }

    .fa-ball-pile:before {
      content: "\f77e";
    }

    .fa-ballot:before {
      content: "\f732";
    }

    .fa-ballot-check:before {
      content: "\f733";
    }

    .fa-ban:before {
      content: "\f05e";
    }

    .fa-band-aid:before {
      content: "\f462";
    }

    .fa-bandcamp:before {
      content: "\f2d5";
    }

    .fa-banjo:before {
      content: "\f8a3";
    }

    .fa-barcode:before {
      content: "\f02a";
    }

    .fa-barcode-alt:before {
      content: "\f463";
    }

    .fa-barcode-read:before {
      content: "\f464";
    }

    .fa-barcode-scan:before {
      content: "\f465";
    }

    .fa-bars:before {
      content: "\f0c9";
    }

    .fa-baseball:before {
      content: "\f432";
    }

    .fa-baseball-ball:before {
      content: "\f433";
    }

    .fa-basketball-ball:before {
      content: "\f434";
    }

    .fa-basketball-hoop:before {
      content: "\f435";
    }

    .fa-bat:before {
      content: "\f6b5";
    }

    .fa-bath:before {
      content: "\f2cd";
    }

    .fa-battery-bolt:before {
      content: "\f376";
    }

    .fa-battery-empty:before {
      content: "\f244";
    }

    .fa-battery-full:before {
      content: "\f240";
    }

    .fa-battery-half:before {
      content: "\f242";
    }

    .fa-battery-quarter:before {
      content: "\f243";
    }

    .fa-battery-slash:before {
      content: "\f377";
    }

    .fa-battery-three-quarters:before {
      content: "\f241";
    }

    .fa-battle-net:before {
      content: "\f835";
    }

    .fa-bed:before {
      content: "\f236";
    }

    .fa-beer:before {
      content: "\f0fc";
    }

    .fa-behance:before {
      content: "\f1b4";
    }

    .fa-behance-square:before {
      content: "\f1b5";
    }

    .fa-bell:before {
      content: "\f0f3";
    }

    .fa-bell-exclamation:before {
      content: "\f848";
    }

    .fa-bell-plus:before {
      content: "\f849";
    }

    .fa-bell-school:before {
      content: "\f5d5";
    }

    .fa-bell-school-slash:before {
      content: "\f5d6";
    }

    .fa-bell-slash:before {
      content: "\f1f6";
    }

    .fa-bells:before {
      content: "\f77f";
    }

    .fa-betamax:before {
      content: "\f8a4";
    }

    .fa-bezier-curve:before {
      content: "\f55b";
    }

    .fa-bible:before {
      content: "\f647";
    }

    .fa-bicycle:before {
      content: "\f206";
    }

    .fa-biking:before {
      content: "\f84a";
    }

    .fa-biking-mountain:before {
      content: "\f84b";
    }

    .fa-bimobject:before {
      content: "\f378";
    }

    .fa-binoculars:before {
      content: "\f1e5";
    }

    .fa-biohazard:before {
      content: "\f780";
    }

    .fa-birthday-cake:before {
      content: "\f1fd";
    }

    .fa-bitbucket:before {
      content: "\f171";
    }

    .fa-bitcoin:before {
      content: "\f379";
    }

    .fa-bity:before {
      content: "\f37a";
    }

    .fa-black-tie:before {
      content: "\f27e";
    }

    .fa-blackberry:before {
      content: "\f37b";
    }

    .fa-blanket:before {
      content: "\f498";
    }

    .fa-blender:before {
      content: "\f517";
    }

    .fa-blender-phone:before {
      content: "\f6b6";
    }

    .fa-blind:before {
      content: "\f29d";
    }

    .fa-blog:before {
      content: "\f781";
    }

    .fa-blogger:before {
      content: "\f37c";
    }

    .fa-blogger-b:before {
      content: "\f37d";
    }

    .fa-bluetooth:before {
      content: "\f293";
    }

    .fa-bluetooth-b:before {
      content: "\f294";
    }

    .fa-bold:before {
      content: "\f032";
    }

    .fa-bolt:before {
      content: "\f0e7";
    }

    .fa-bomb:before {
      content: "\f1e2";
    }

    .fa-bone:before {
      content: "\f5d7";
    }

    .fa-bone-break:before {
      content: "\f5d8";
    }

    .fa-bong:before {
      content: "\f55c";
    }

    .fa-book:before {
      content: "\f02d";
    }

    .fa-book-alt:before {
      content: "\f5d9";
    }

    .fa-book-dead:before {
      content: "\f6b7";
    }

    .fa-book-heart:before {
      content: "\f499";
    }

    .fa-book-medical:before {
      content: "\f7e6";
    }

    .fa-book-open:before {
      content: "\f518";
    }

    .fa-book-reader:before {
      content: "\f5da";
    }

    .fa-book-spells:before {
      content: "\f6b8";
    }

    .fa-book-user:before {
      content: "\f7e7";
    }

    .fa-bookmark:before {
      content: "\f02e";
    }

    .fa-books:before {
      content: "\f5db";
    }

    .fa-books-medical:before {
      content: "\f7e8";
    }

    .fa-boombox:before {
      content: "\f8a5";
    }

    .fa-boot:before {
      content: "\f782";
    }

    .fa-booth-curtain:before {
      content: "\f734";
    }

    .fa-bootstrap:before {
      content: "\f836";
    }

    .fa-border-all:before {
      content: "\f84c";
    }

    .fa-border-bottom:before {
      content: "\f84d";
    }

    .fa-border-center-h:before {
      content: "\f89c";
    }

    .fa-border-center-v:before {
      content: "\f89d";
    }

    .fa-border-inner:before {
      content: "\f84e";
    }

    .fa-border-left:before {
      content: "\f84f";
    }

    .fa-border-none:before {
      content: "\f850";
    }

    .fa-border-outer:before {
      content: "\f851";
    }

    .fa-border-right:before {
      content: "\f852";
    }

    .fa-border-style:before {
      content: "\f853";
    }

    .fa-border-style-alt:before {
      content: "\f854";
    }

    .fa-border-top:before {
      content: "\f855";
    }

    .fa-bow-arrow:before {
      content: "\f6b9";
    }

    .fa-bowling-ball:before {
      content: "\f436";
    }

    .fa-bowling-pins:before {
      content: "\f437";
    }

    .fa-box:before {
      content: "\f466";
    }

    .fa-box-alt:before {
      content: "\f49a";
    }

    .fa-box-ballot:before {
      content: "\f735";
    }

    .fa-box-check:before {
      content: "\f467";
    }

    .fa-box-fragile:before {
      content: "\f49b";
    }

    .fa-box-full:before {
      content: "\f49c";
    }

    .fa-box-heart:before {
      content: "\f49d";
    }

    .fa-box-open:before {
      content: "\f49e";
    }

    .fa-box-up:before {
      content: "\f49f";
    }

    .fa-box-usd:before {
      content: "\f4a0";
    }

    .fa-boxes:before {
      content: "\f468";
    }

    .fa-boxes-alt:before {
      content: "\f4a1";
    }

    .fa-boxing-glove:before {
      content: "\f438";
    }

    .fa-brackets:before {
      content: "\f7e9";
    }

    .fa-brackets-curly:before {
      content: "\f7ea";
    }

    .fa-braille:before {
      content: "\f2a1";
    }

    .fa-brain:before {
      content: "\f5dc";
    }

    .fa-bread-loaf:before {
      content: "\f7eb";
    }

    .fa-bread-slice:before {
      content: "\f7ec";
    }

    .fa-briefcase:before {
      content: "\f0b1";
    }

    .fa-briefcase-medical:before {
      content: "\f469";
    }

    .fa-bring-forward:before {
      content: "\f856";
    }

    .fa-bring-front:before {
      content: "\f857";
    }

    .fa-broadcast-tower:before {
      content: "\f519";
    }

    .fa-broom:before {
      content: "\f51a";
    }

    .fa-browser:before {
      content: "\f37e";
    }

    .fa-brush:before {
      content: "\f55d";
    }

    .fa-btc:before {
      content: "\f15a";
    }

    .fa-buffer:before {
      content: "\f837";
    }

    .fa-bug:before {
      content: "\f188";
    }

    .fa-building:before {
      content: "\f1ad";
    }

    .fa-bullhorn:before {
      content: "\f0a1";
    }

    .fa-bullseye:before {
      content: "\f140";
    }

    .fa-bullseye-arrow:before {
      content: "\f648";
    }

    .fa-bullseye-pointer:before {
      content: "\f649";
    }

    .fa-burger-soda:before {
      content: "\f858";
    }

    .fa-burn:before {
      content: "\f46a";
    }

    .fa-buromobelexperte:before {
      content: "\f37f";
    }

    .fa-burrito:before {
      content: "\f7ed";
    }

    .fa-bus:before {
      content: "\f207";
    }

    .fa-bus-alt:before {
      content: "\f55e";
    }

    .fa-bus-school:before {
      content: "\f5dd";
    }

    .fa-business-time:before {
      content: "\f64a";
    }

    .fa-buy-n-large:before {
      content: "\f8a6";
    }

    .fa-buysellads:before {
      content: "\f20d";
    }

    .fa-cabinet-filing:before {
      content: "\f64b";
    }

    .fa-cactus:before {
      content: "\f8a7";
    }

    .fa-calculator:before {
      content: "\f1ec";
    }

    .fa-calculator-alt:before {
      content: "\f64c";
    }

    .fa-calendar:before {
      content: "\f133";
    }

    .fa-calendar-alt:before {
      content: "\f073";
    }

    .fa-calendar-check:before {
      content: "\f274";
    }

    .fa-calendar-day:before {
      content: "\f783";
    }

    .fa-calendar-edit:before {
      content: "\f333";
    }

    .fa-calendar-exclamation:before {
      content: "\f334";
    }

    .fa-calendar-minus:before {
      content: "\f272";
    }

    .fa-calendar-plus:before {
      content: "\f271";
    }

    .fa-calendar-star:before {
      content: "\f736";
    }

    .fa-calendar-times:before {
      content: "\f273";
    }

    .fa-calendar-week:before {
      content: "\f784";
    }

    .fa-camcorder:before {
      content: "\f8a8";
    }

    .fa-camera:before {
      content: "\f030";
    }

    .fa-camera-alt:before {
      content: "\f332";
    }

    .fa-camera-movie:before {
      content: "\f8a9";
    }

    .fa-camera-polaroid:before {
      content: "\f8aa";
    }

    .fa-camera-retro:before {
      content: "\f083";
    }

    .fa-campfire:before {
      content: "\f6ba";
    }

    .fa-campground:before {
      content: "\f6bb";
    }

    .fa-canadian-maple-leaf:before {
      content: "\f785";
    }

    .fa-candle-holder:before {
      content: "\f6bc";
    }

    .fa-candy-cane:before {
      content: "\f786";
    }

    .fa-candy-corn:before {
      content: "\f6bd";
    }

    .fa-cannabis:before {
      content: "\f55f";
    }

    .fa-capsules:before {
      content: "\f46b";
    }

    .fa-car:before {
      content: "\f1b9";
    }

    .fa-car-alt:before {
      content: "\f5de";
    }

    .fa-car-battery:before {
      content: "\f5df";
    }

    .fa-car-building:before {
      content: "\f859";
    }

    .fa-car-bump:before {
      content: "\f5e0";
    }

    .fa-car-bus:before {
      content: "\f85a";
    }

    .fa-car-crash:before {
      content: "\f5e1";
    }

    .fa-car-garage:before {
      content: "\f5e2";
    }

    .fa-car-mechanic:before {
      content: "\f5e3";
    }

    .fa-car-side:before {
      content: "\f5e4";
    }

    .fa-car-tilt:before {
      content: "\f5e5";
    }

    .fa-car-wash:before {
      content: "\f5e6";
    }

    .fa-caret-circle-down:before {
      content: "\f32d";
    }

    .fa-caret-circle-left:before {
      content: "\f32e";
    }

    .fa-caret-circle-right:before {
      content: "\f330";
    }

    .fa-caret-circle-up:before {
      content: "\f331";
    }

    .fa-caret-down:before {
      content: "\f0d7";
    }

    .fa-caret-left:before {
      content: "\f0d9";
    }

    .fa-caret-right:before {
      content: "\f0da";
    }

    .fa-caret-square-down:before {
      content: "\f150";
    }

    .fa-caret-square-left:before {
      content: "\f191";
    }

    .fa-caret-square-right:before {
      content: "\f152";
    }

    .fa-caret-square-up:before {
      content: "\f151";
    }

    .fa-caret-up:before {
      content: "\f0d8";
    }

    .fa-carrot:before {
      content: "\f787";
    }

    .fa-cars:before {
      content: "\f85b";
    }

    .fa-cart-arrow-down:before {
      content: "\f218";
    }

    .fa-cart-plus:before {
      content: "\f217";
    }

    .fa-cash-register:before {
      content: "\f788";
    }

    .fa-cassette-tape:before {
      content: "\f8ab";
    }

    .fa-cat:before {
      content: "\f6be";
    }

    .fa-cauldron:before {
      content: "\f6bf";
    }

    .fa-cc-amazon-pay:before {
      content: "\f42d";
    }

    .fa-cc-amex:before {
      content: "\f1f3";
    }

    .fa-cc-apple-pay:before {
      content: "\f416";
    }

    .fa-cc-diners-club:before {
      content: "\f24c";
    }

    .fa-cc-discover:before {
      content: "\f1f2";
    }

    .fa-cc-jcb:before {
      content: "\f24b";
    }

    .fa-cc-mastercard:before {
      content: "\f1f1";
    }

    .fa-cc-paypal:before {
      content: "\f1f4";
    }

    .fa-cc-stripe:before {
      content: "\f1f5";
    }

    .fa-cc-visa:before {
      content: "\f1f0";
    }

    .fa-cctv:before {
      content: "\f8ac";
    }

    .fa-centercode:before {
      content: "\f380";
    }

    .fa-centos:before {
      content: "\f789";
    }

    .fa-certificate:before {
      content: "\f0a3";
    }

    .fa-chair:before {
      content: "\f6c0";
    }

    .fa-chair-office:before {
      content: "\f6c1";
    }

    .fa-chalkboard:before {
      content: "\f51b";
    }

    .fa-chalkboard-teacher:before {
      content: "\f51c";
    }

    .fa-charging-station:before {
      content: "\f5e7";
    }

    .fa-chart-area:before {
      content: "\f1fe";
    }

    .fa-chart-bar:before {
      content: "\f080";
    }

    .fa-chart-line:before {
      content: "\f201";
    }

    .fa-chart-line-down:before {
      content: "\f64d";
    }

    .fa-chart-network:before {
      content: "\f78a";
    }

    .fa-chart-pie:before {
      content: "\f200";
    }

    .fa-chart-pie-alt:before {
      content: "\f64e";
    }

    .fa-chart-scatter:before {
      content: "\f7ee";
    }

    .fa-check:before {
      content: "\f00c";
    }

    .fa-check-circle:before {
      content: "\f058";
    }

    .fa-check-double:before {
      content: "\f560";
    }

    .fa-check-square:before {
      content: "\f14a";
    }

    .fa-cheese:before {
      content: "\f7ef";
    }

    .fa-cheese-swiss:before {
      content: "\f7f0";
    }

    .fa-cheeseburger:before {
      content: "\f7f1";
    }

    .fa-chess:before {
      content: "\f439";
    }

    .fa-chess-bishop:before {
      content: "\f43a";
    }

    .fa-chess-bishop-alt:before {
      content: "\f43b";
    }

    .fa-chess-board:before {
      content: "\f43c";
    }

    .fa-chess-clock:before {
      content: "\f43d";
    }

    .fa-chess-clock-alt:before {
      content: "\f43e";
    }

    .fa-chess-king:before {
      content: "\f43f";
    }

    .fa-chess-king-alt:before {
      content: "\f440";
    }

    .fa-chess-knight:before {
      content: "\f441";
    }

    .fa-chess-knight-alt:before {
      content: "\f442";
    }

    .fa-chess-pawn:before {
      content: "\f443";
    }

    .fa-chess-pawn-alt:before {
      content: "\f444";
    }

    .fa-chess-queen:before {
      content: "\f445";
    }

    .fa-chess-queen-alt:before {
      content: "\f446";
    }

    .fa-chess-rook:before {
      content: "\f447";
    }

    .fa-chess-rook-alt:before {
      content: "\f448";
    }

    .fa-chevron-circle-down:before {
      content: "\f13a";
    }

    .fa-chevron-circle-left:before {
      content: "\f137";
    }

    .fa-chevron-circle-right:before {
      content: "\f138";
    }

    .fa-chevron-circle-up:before {
      content: "\f139";
    }

    .fa-chevron-double-down:before {
      content: "\f322";
    }

    .fa-chevron-double-left:before {
      content: "\f323";
    }

    .fa-chevron-double-right:before {
      content: "\f324";
    }

    .fa-chevron-double-up:before {
      content: "\f325";
    }

    .fa-chevron-down:before {
      content: "\f078";
    }

    .fa-chevron-left:before {
      content: "\f053";
    }

    .fa-chevron-right:before {
      content: "\f054";
    }

    .fa-chevron-square-down:before {
      content: "\f329";
    }

    .fa-chevron-square-left:before {
      content: "\f32a";
    }

    .fa-chevron-square-right:before {
      content: "\f32b";
    }

    .fa-chevron-square-up:before {
      content: "\f32c";
    }

    .fa-chevron-up:before {
      content: "\f077";
    }

    .fa-child:before {
      content: "\f1ae";
    }

    .fa-chimney:before {
      content: "\f78b";
    }

    .fa-chrome:before {
      content: "\f268";
    }

    .fa-chromecast:before {
      content: "\f838";
    }

    .fa-church:before {
      content: "\f51d";
    }

    .fa-circle:before {
      content: "\f111";
    }

    .fa-circle-notch:before {
      content: "\f1ce";
    }

    .fa-city:before {
      content: "\f64f";
    }

    .fa-clarinet:before {
      content: "\f8ad";
    }

    .fa-claw-marks:before {
      content: "\f6c2";
    }

    .fa-clinic-medical:before {
      content: "\f7f2";
    }

    .fa-clipboard:before {
      content: "\f328";
    }

    .fa-clipboard-check:before {
      content: "\f46c";
    }

    .fa-clipboard-list:before {
      content: "\f46d";
    }

    .fa-clipboard-list-check:before {
      content: "\f737";
    }

    .fa-clipboard-prescription:before {
      content: "\f5e8";
    }

    .fa-clipboard-user:before {
      content: "\f7f3";
    }

    .fa-clock:before {
      content: "\f017";
    }

    .fa-clone:before {
      content: "\f24d";
    }

    .fa-closed-captioning:before {
      content: "\f20a";
    }

    .fa-cloud:before {
      content: "\f0c2";
    }

    .fa-cloud-download:before {
      content: "\f0ed";
    }

    .fa-cloud-download-alt:before {
      content: "\f381";
    }

    .fa-cloud-drizzle:before {
      content: "\f738";
    }

    .fa-cloud-hail:before {
      content: "\f739";
    }

    .fa-cloud-hail-mixed:before {
      content: "\f73a";
    }

    .fa-cloud-meatball:before {
      content: "\f73b";
    }

    .fa-cloud-moon:before {
      content: "\f6c3";
    }

    .fa-cloud-moon-rain:before {
      content: "\f73c";
    }

    .fa-cloud-music:before {
      content: "\f8ae";
    }

    .fa-cloud-rain:before {
      content: "\f73d";
    }

    .fa-cloud-rainbow:before {
      content: "\f73e";
    }

    .fa-cloud-showers:before {
      content: "\f73f";
    }

    .fa-cloud-showers-heavy:before {
      content: "\f740";
    }

    .fa-cloud-sleet:before {
      content: "\f741";
    }

    .fa-cloud-snow:before {
      content: "\f742";
    }

    .fa-cloud-sun:before {
      content: "\f6c4";
    }

    .fa-cloud-sun-rain:before {
      content: "\f743";
    }

    .fa-cloud-upload:before {
      content: "\f0ee";
    }

    .fa-cloud-upload-alt:before {
      content: "\f382";
    }

    .fa-clouds:before {
      content: "\f744";
    }

    .fa-clouds-moon:before {
      content: "\f745";
    }

    .fa-clouds-sun:before {
      content: "\f746";
    }

    .fa-cloudscale:before {
      content: "\f383";
    }

    .fa-cloudsmith:before {
      content: "\f384";
    }

    .fa-cloudversify:before {
      content: "\f385";
    }

    .fa-club:before {
      content: "\f327";
    }

    .fa-cocktail:before {
      content: "\f561";
    }

    .fa-code:before {
      content: "\f121";
    }

    .fa-code-branch:before {
      content: "\f126";
    }

    .fa-code-commit:before {
      content: "\f386";
    }

    .fa-code-merge:before {
      content: "\f387";
    }

    .fa-codepen:before {
      content: "\f1cb";
    }

    .fa-codiepie:before {
      content: "\f284";
    }

    .fa-coffee:before {
      content: "\f0f4";
    }

    .fa-coffee-togo:before {
      content: "\f6c5";
    }

    .fa-coffin:before {
      content: "\f6c6";
    }

    .fa-cog:before {
      content: "\f013";
    }

    .fa-cogs:before {
      content: "\f085";
    }

    .fa-coin:before {
      content: "\f85c";
    }

    .fa-coins:before {
      content: "\f51e";
    }

    .fa-columns:before {
      content: "\f0db";
    }

    .fa-comment:before {
      content: "\f075";
    }

    .fa-comment-alt:before {
      content: "\f27a";
    }

    .fa-comment-alt-check:before {
      content: "\f4a2";
    }

    .fa-comment-alt-dollar:before {
      content: "\f650";
    }

    .fa-comment-alt-dots:before {
      content: "\f4a3";
    }

    .fa-comment-alt-edit:before {
      content: "\f4a4";
    }

    .fa-comment-alt-exclamation:before {
      content: "\f4a5";
    }

    .fa-comment-alt-lines:before {
      content: "\f4a6";
    }

    .fa-comment-alt-medical:before {
      content: "\f7f4";
    }

    .fa-comment-alt-minus:before {
      content: "\f4a7";
    }

    .fa-comment-alt-music:before {
      content: "\f8af";
    }

    .fa-comment-alt-plus:before {
      content: "\f4a8";
    }

    .fa-comment-alt-slash:before {
      content: "\f4a9";
    }

    .fa-comment-alt-smile:before {
      content: "\f4aa";
    }

    .fa-comment-alt-times:before {
      content: "\f4ab";
    }

    .fa-comment-check:before {
      content: "\f4ac";
    }

    .fa-comment-dollar:before {
      content: "\f651";
    }

    .fa-comment-dots:before {
      content: "\f4ad";
    }

    .fa-comment-edit:before {
      content: "\f4ae";
    }

    .fa-comment-exclamation:before {
      content: "\f4af";
    }

    .fa-comment-lines:before {
      content: "\f4b0";
    }

    .fa-comment-medical:before {
      content: "\f7f5";
    }

    .fa-comment-minus:before {
      content: "\f4b1";
    }

    .fa-comment-music:before {
      content: "\f8b0";
    }

    .fa-comment-plus:before {
      content: "\f4b2";
    }

    .fa-comment-slash:before {
      content: "\f4b3";
    }

    .fa-comment-smile:before {
      content: "\f4b4";
    }

    .fa-comment-times:before {
      content: "\f4b5";
    }

    .fa-comments:before {
      content: "\f086";
    }

    .fa-comments-alt:before {
      content: "\f4b6";
    }

    .fa-comments-alt-dollar:before {
      content: "\f652";
    }

    .fa-comments-dollar:before {
      content: "\f653";
    }

    .fa-compact-disc:before {
      content: "\f51f";
    }

    .fa-compass:before {
      content: "\f14e";
    }

    .fa-compass-slash:before {
      content: "\f5e9";
    }

    .fa-compress:before {
      content: "\f066";
    }

    .fa-compress-alt:before {
      content: "\f422";
    }

    .fa-compress-arrows-alt:before {
      content: "\f78c";
    }

    .fa-compress-wide:before {
      content: "\f326";
    }

    .fa-computer-classic:before {
      content: "\f8b1";
    }

    .fa-computer-speaker:before {
      content: "\f8b2";
    }

    .fa-concierge-bell:before {
      content: "\f562";
    }

    .fa-confluence:before {
      content: "\f78d";
    }

    .fa-connectdevelop:before {
      content: "\f20e";
    }

    .fa-construction:before {
      content: "\f85d";
    }

    .fa-container-storage:before {
      content: "\f4b7";
    }

    .fa-contao:before {
      content: "\f26d";
    }

    .fa-conveyor-belt:before {
      content: "\f46e";
    }

    .fa-conveyor-belt-alt:before {
      content: "\f46f";
    }

    .fa-cookie:before {
      content: "\f563";
    }

    .fa-cookie-bite:before {
      content: "\f564";
    }

    .fa-copy:before {
      content: "\f0c5";
    }

    .fa-copyright:before {
      content: "\f1f9";
    }

    .fa-corn:before {
      content: "\f6c7";
    }

    .fa-cotton-bureau:before {
      content: "\f89e";
    }

    .fa-couch:before {
      content: "\f4b8";
    }

    .fa-cow:before {
      content: "\f6c8";
    }

    .fa-cowbell:before {
      content: "\f8b3";
    }

    .fa-cowbell-more:before {
      content: "\f8b4";
    }

    .fa-cpanel:before {
      content: "\f388";
    }

    .fa-creative-commons:before {
      content: "\f25e";
    }

    .fa-creative-commons-by:before {
      content: "\f4e7";
    }

    .fa-creative-commons-nc:before {
      content: "\f4e8";
    }

    .fa-creative-commons-nc-eu:before {
      content: "\f4e9";
    }

    .fa-creative-commons-nc-jp:before {
      content: "\f4ea";
    }

    .fa-creative-commons-nd:before {
      content: "\f4eb";
    }

    .fa-creative-commons-pd:before {
      content: "\f4ec";
    }

    .fa-creative-commons-pd-alt:before {
      content: "\f4ed";
    }

    .fa-creative-commons-remix:before {
      content: "\f4ee";
    }

    .fa-creative-commons-sa:before {
      content: "\f4ef";
    }

    .fa-creative-commons-sampling:before {
      content: "\f4f0";
    }

    .fa-creative-commons-sampling-plus:before {
      content: "\f4f1";
    }

    .fa-creative-commons-share:before {
      content: "\f4f2";
    }

    .fa-creative-commons-zero:before {
      content: "\f4f3";
    }

    .fa-credit-card:before {
      content: "\f09d";
    }

    .fa-credit-card-blank:before {
      content: "\f389";
    }

    .fa-credit-card-front:before {
      content: "\f38a";
    }

    .fa-cricket:before {
      content: "\f449";
    }

    .fa-critical-role:before {
      content: "\f6c9";
    }

    .fa-croissant:before {
      content: "\f7f6";
    }

    .fa-crop:before {
      content: "\f125";
    }

    .fa-crop-alt:before {
      content: "\f565";
    }

    .fa-cross:before {
      content: "\f654";
    }

    .fa-crosshairs:before {
      content: "\f05b";
    }

    .fa-crow:before {
      content: "\f520";
    }

    .fa-crown:before {
      content: "\f521";
    }

    .fa-crutch:before {
      content: "\f7f7";
    }

    .fa-crutches:before {
      content: "\f7f8";
    }

    .fa-css3:before {
      content: "\f13c";
    }

    .fa-css3-alt:before {
      content: "\f38b";
    }

    .fa-cube:before {
      content: "\f1b2";
    }

    .fa-cubes:before {
      content: "\f1b3";
    }

    .fa-curling:before {
      content: "\f44a";
    }

    .fa-cut:before {
      content: "\f0c4";
    }

    .fa-cuttlefish:before {
      content: "\f38c";
    }

    .fa-d-and-d:before {
      content: "\f38d";
    }

    .fa-d-and-d-beyond:before {
      content: "\f6ca";
    }

    .fa-dagger:before {
      content: "\f6cb";
    }

    .fa-dashcube:before {
      content: "\f210";
    }

    .fa-database:before {
      content: "\f1c0";
    }

    .fa-deaf:before {
      content: "\f2a4";
    }

    .fa-debug:before {
      content: "\f7f9";
    }

    .fa-deer:before {
      content: "\f78e";
    }

    .fa-deer-rudolph:before {
      content: "\f78f";
    }

    .fa-delicious:before {
      content: "\f1a5";
    }

    .fa-democrat:before {
      content: "\f747";
    }

    .fa-deploydog:before {
      content: "\f38e";
    }

    .fa-deskpro:before {
      content: "\f38f";
    }

    .fa-desktop:before {
      content: "\f108";
    }

    .fa-desktop-alt:before {
      content: "\f390";
    }

    .fa-dev:before {
      content: "\f6cc";
    }

    .fa-deviantart:before {
      content: "\f1bd";
    }

    .fa-dewpoint:before {
      content: "\f748";
    }

    .fa-dharmachakra:before {
      content: "\f655";
    }

    .fa-dhl:before {
      content: "\f790";
    }

    .fa-diagnoses:before {
      content: "\f470";
    }

    .fa-diamond:before {
      content: "\f219";
    }

    .fa-diaspora:before {
      content: "\f791";
    }

    .fa-dice:before {
      content: "\f522";
    }

    .fa-dice-d10:before {
      content: "\f6cd";
    }

    .fa-dice-d12:before {
      content: "\f6ce";
    }

    .fa-dice-d20:before {
      content: "\f6cf";
    }

    .fa-dice-d4:before {
      content: "\f6d0";
    }

    .fa-dice-d6:before {
      content: "\f6d1";
    }

    .fa-dice-d8:before {
      content: "\f6d2";
    }

    .fa-dice-five:before {
      content: "\f523";
    }

    .fa-dice-four:before {
      content: "\f524";
    }

    .fa-dice-one:before {
      content: "\f525";
    }

    .fa-dice-six:before {
      content: "\f526";
    }

    .fa-dice-three:before {
      content: "\f527";
    }

    .fa-dice-two:before {
      content: "\f528";
    }

    .fa-digg:before {
      content: "\f1a6";
    }

    .fa-digging:before {
      content: "\f85e";
    }

    .fa-digital-ocean:before {
      content: "\f391";
    }

    .fa-digital-tachograph:before {
      content: "\f566";
    }

    .fa-diploma:before {
      content: "\f5ea";
    }

    .fa-directions:before {
      content: "\f5eb";
    }

    .fa-disc-drive:before {
      content: "\f8b5";
    }

    .fa-discord:before {
      content: "\f392";
    }

    .fa-discourse:before {
      content: "\f393";
    }

    .fa-disease:before {
      content: "\f7fa";
    }

    .fa-divide:before {
      content: "\f529";
    }

    .fa-dizzy:before {
      content: "\f567";
    }

    .fa-dna:before {
      content: "\f471";
    }

    .fa-do-not-enter:before {
      content: "\f5ec";
    }

    .fa-dochub:before {
      content: "\f394";
    }

    .fa-docker:before {
      content: "\f395";
    }

    .fa-dog:before {
      content: "\f6d3";
    }

    .fa-dog-leashed:before {
      content: "\f6d4";
    }

    .fa-dollar-sign:before {
      content: "\f155";
    }

    .fa-dolly:before {
      content: "\f472";
    }

    .fa-dolly-empty:before {
      content: "\f473";
    }

    .fa-dolly-flatbed:before {
      content: "\f474";
    }

    .fa-dolly-flatbed-alt:before {
      content: "\f475";
    }

    .fa-dolly-flatbed-empty:before {
      content: "\f476";
    }

    .fa-donate:before {
      content: "\f4b9";
    }

    .fa-door-closed:before {
      content: "\f52a";
    }

    .fa-door-open:before {
      content: "\f52b";
    }

    .fa-dot-circle:before {
      content: "\f192";
    }

    .fa-dove:before {
      content: "\f4ba";
    }

    .fa-download:before {
      content: "\f019";
    }

    .fa-draft2digital:before {
      content: "\f396";
    }

    .fa-drafting-compass:before {
      content: "\f568";
    }

    .fa-dragon:before {
      content: "\f6d5";
    }

    .fa-draw-circle:before {
      content: "\f5ed";
    }

    .fa-draw-polygon:before {
      content: "\f5ee";
    }

    .fa-draw-square:before {
      content: "\f5ef";
    }

    .fa-dreidel:before {
      content: "\f792";
    }

    .fa-dribbble:before {
      content: "\f17d";
    }

    .fa-dribbble-square:before {
      content: "\f397";
    }

    .fa-drone:before {
      content: "\f85f";
    }

    .fa-drone-alt:before {
      content: "\f860";
    }

    .fa-dropbox:before {
      content: "\f16b";
    }

    .fa-drum:before {
      content: "\f569";
    }

    .fa-drum-steelpan:before {
      content: "\f56a";
    }

    .fa-drumstick:before {
      content: "\f6d6";
    }

    .fa-drumstick-bite:before {
      content: "\f6d7";
    }

    .fa-drupal:before {
      content: "\f1a9";
    }

    .fa-dryer:before {
      content: "\f861";
    }

    .fa-dryer-alt:before {
      content: "\f862";
    }

    .fa-duck:before {
      content: "\f6d8";
    }

    .fa-dumbbell:before {
      content: "\f44b";
    }

    .fa-dumpster:before {
      content: "\f793";
    }

    .fa-dumpster-fire:before {
      content: "\f794";
    }

    .fa-dungeon:before {
      content: "\f6d9";
    }

    .fa-dyalog:before {
      content: "\f399";
    }

    .fa-ear:before {
      content: "\f5f0";
    }

    .fa-ear-muffs:before {
      content: "\f795";
    }

    .fa-earlybirds:before {
      content: "\f39a";
    }

    .fa-ebay:before {
      content: "\f4f4";
    }

    .fa-eclipse:before {
      content: "\f749";
    }

    .fa-eclipse-alt:before {
      content: "\f74a";
    }

    .fa-edge:before {
      content: "\f282";
    }

    .fa-edit:before {
      content: "\f044";
    }

    .fa-egg:before {
      content: "\f7fb";
    }

    .fa-egg-fried:before {
      content: "\f7fc";
    }

    .fa-eject:before {
      content: "\f052";
    }

    .fa-elementor:before {
      content: "\f430";
    }

    .fa-elephant:before {
      content: "\f6da";
    }

    .fa-ellipsis-h:before {
      content: "\f141";
    }

    .fa-ellipsis-h-alt:before {
      content: "\f39b";
    }

    .fa-ellipsis-v:before {
      content: "\f142";
    }

    .fa-ellipsis-v-alt:before {
      content: "\f39c";
    }

    .fa-ello:before {
      content: "\f5f1";
    }

    .fa-ember:before {
      content: "\f423";
    }

    .fa-empire:before {
      content: "\f1d1";
    }

    .fa-empty-set:before {
      content: "\f656";
    }

    .fa-engine-warning:before {
      content: "\f5f2";
    }

    .fa-envelope:before {
      content: "\f0e0";
    }

    .fa-envelope-open:before {
      content: "\f2b6";
    }

    .fa-envelope-open-dollar:before {
      content: "\f657";
    }

    .fa-envelope-open-text:before {
      content: "\f658";
    }

    .fa-envelope-square:before {
      content: "\f199";
    }

    .fa-envira:before {
      content: "\f299";
    }

    .fa-equals:before {
      content: "\f52c";
    }

    .fa-eraser:before {
      content: "\f12d";
    }

    .fa-erlang:before {
      content: "\f39d";
    }

    .fa-ethereum:before {
      content: "\f42e";
    }

    .fa-ethernet:before {
      content: "\f796";
    }

    .fa-etsy:before {
      content: "\f2d7";
    }

    .fa-euro-sign:before {
      content: "\f153";
    }

    .fa-evernote:before {
      content: "\f839";
    }

    .fa-exchange:before {
      content: "\f0ec";
    }

    .fa-exchange-alt:before {
      content: "\f362";
    }

    .fa-exclamation:before {
      content: "\f12a";
    }

    .fa-exclamation-circle:before {
      content: "\f06a";
    }

    .fa-exclamation-square:before {
      content: "\f321";
    }

    .fa-exclamation-triangle:before {
      content: "\f071";
    }

    .fa-expand:before {
      content: "\f065";
    }

    .fa-expand-alt:before {
      content: "\f424";
    }

    .fa-expand-arrows:before {
      content: "\f31d";
    }

    .fa-expand-arrows-alt:before {
      content: "\f31e";
    }

    .fa-expand-wide:before {
      content: "\f320";
    }

    .fa-expeditedssl:before {
      content: "\f23e";
    }

    .fa-external-link:before {
      content: "\f08e";
    }

    .fa-external-link-alt:before {
      content: "\f35d";
    }

    .fa-external-link-square:before {
      content: "\f14c";
    }

    .fa-external-link-square-alt:before {
      content: "\f360";
    }

    .fa-eye:before {
      content: "\f06e";
    }

    .fa-eye-dropper:before {
      content: "\f1fb";
    }

    .fa-eye-evil:before {
      content: "\f6db";
    }

    .fa-eye-slash:before {
      content: "\f070";
    }

    .fa-facebook:before {
      content: "\f09a";
    }

    .fa-facebook-f:before {
      content: "\f39e";
    }

    .fa-facebook-messenger:before {
      content: "\f39f";
    }

    .fa-facebook-square:before {
      content: "\f082";
    }

    .fa-fan:before {
      content: "\f863";
    }

    .fa-fantasy-flight-games:before {
      content: "\f6dc";
    }

    .fa-farm:before {
      content: "\f864";
    }

    .fa-fast-backward:before {
      content: "\f049";
    }

    .fa-fast-forward:before {
      content: "\f050";
    }

    .fa-fax:before {
      content: "\f1ac";
    }

    .fa-feather:before {
      content: "\f52d";
    }

    .fa-feather-alt:before {
      content: "\f56b";
    }

    .fa-fedex:before {
      content: "\f797";
    }

    .fa-fedora:before {
      content: "\f798";
    }

    .fa-female:before {
      content: "\f182";
    }

    .fa-field-hockey:before {
      content: "\f44c";
    }

    .fa-fighter-jet:before {
      content: "\f0fb";
    }

    .fa-figma:before {
      content: "\f799";
    }

    .fa-file:before {
      content: "\f15b";
    }

    .fa-file-alt:before {
      content: "\f15c";
    }

    .fa-file-archive:before {
      content: "\f1c6";
    }

    .fa-file-audio:before {
      content: "\f1c7";
    }

    .fa-file-certificate:before {
      content: "\f5f3";
    }

    .fa-file-chart-line:before {
      content: "\f659";
    }

    .fa-file-chart-pie:before {
      content: "\f65a";
    }

    .fa-file-check:before {
      content: "\f316";
    }

    .fa-file-code:before {
      content: "\f1c9";
    }

    .fa-file-contract:before {
      content: "\f56c";
    }

    .fa-file-csv:before {
      content: "\f6dd";
    }

    .fa-file-download:before {
      content: "\f56d";
    }

    .fa-file-edit:before {
      content: "\f31c";
    }

    .fa-file-excel:before {
      content: "\f1c3";
    }

    .fa-file-exclamation:before {
      content: "\f31a";
    }

    .fa-file-export:before {
      content: "\f56e";
    }

    .fa-file-image:before {
      content: "\f1c5";
    }

    .fa-file-import:before {
      content: "\f56f";
    }

    .fa-file-invoice:before {
      content: "\f570";
    }

    .fa-file-invoice-dollar:before {
      content: "\f571";
    }

    .fa-file-medical:before {
      content: "\f477";
    }

    .fa-file-medical-alt:before {
      content: "\f478";
    }

    .fa-file-minus:before {
      content: "\f318";
    }

    .fa-file-music:before {
      content: "\f8b6";
    }

    .fa-file-pdf:before {
      content: "\f1c1";
    }

    .fa-file-plus:before {
      content: "\f319";
    }

    .fa-file-powerpoint:before {
      content: "\f1c4";
    }

    .fa-file-prescription:before {
      content: "\f572";
    }

    .fa-file-search:before {
      content: "\f865";
    }

    .fa-file-signature:before {
      content: "\f573";
    }

    .fa-file-spreadsheet:before {
      content: "\f65b";
    }

    .fa-file-times:before {
      content: "\f317";
    }

    .fa-file-upload:before {
      content: "\f574";
    }

    .fa-file-user:before {
      content: "\f65c";
    }

    .fa-file-video:before {
      content: "\f1c8";
    }

    .fa-file-word:before {
      content: "\f1c2";
    }

    .fa-files-medical:before {
      content: "\f7fd";
    }

    .fa-fill:before {
      content: "\f575";
    }

    .fa-fill-drip:before {
      content: "\f576";
    }

    .fa-film:before {
      content: "\f008";
    }

    .fa-film-alt:before {
      content: "\f3a0";
    }

    .fa-film-canister:before {
      content: "\f8b7";
    }

    .fa-filter:before {
      content: "\f0b0";
    }

    .fa-fingerprint:before {
      content: "\f577";
    }

    .fa-fire:before {
      content: "\f06d";
    }

    .fa-fire-alt:before {
      content: "\f7e4";
    }

    .fa-fire-extinguisher:before {
      content: "\f134";
    }

    .fa-fire-smoke:before {
      content: "\f74b";
    }

    .fa-firefox:before {
      content: "\f269";
    }

    .fa-fireplace:before {
      content: "\f79a";
    }

    .fa-first-aid:before {
      content: "\f479";
    }

    .fa-first-order:before {
      content: "\f2b0";
    }

    .fa-first-order-alt:before {
      content: "\f50a";
    }

    .fa-firstdraft:before {
      content: "\f3a1";
    }

    .fa-fish:before {
      content: "\f578";
    }

    .fa-fish-cooked:before {
      content: "\f7fe";
    }

    .fa-fist-raised:before {
      content: "\f6de";
    }

    .fa-flag:before {
      content: "\f024";
    }

    .fa-flag-alt:before {
      content: "\f74c";
    }

    .fa-flag-checkered:before {
      content: "\f11e";
    }

    .fa-flag-usa:before {
      content: "\f74d";
    }

    .fa-flame:before {
      content: "\f6df";
    }

    .fa-flashlight:before {
      content: "\f8b8";
    }

    .fa-flask:before {
      content: "\f0c3";
    }

    .fa-flask-poison:before {
      content: "\f6e0";
    }

    .fa-flask-potion:before {
      content: "\f6e1";
    }

    .fa-flickr:before {
      content: "\f16e";
    }

    .fa-flipboard:before {
      content: "\f44d";
    }

    .fa-flower:before {
      content: "\f7ff";
    }

    .fa-flower-daffodil:before {
      content: "\f800";
    }

    .fa-flower-tulip:before {
      content: "\f801";
    }

    .fa-flushed:before {
      content: "\f579";
    }

    .fa-flute:before {
      content: "\f8b9";
    }

    .fa-flux-capacitor:before {
      content: "\f8ba";
    }

    .fa-fly:before {
      content: "\f417";
    }

    .fa-fog:before {
      content: "\f74e";
    }

    .fa-folder:before {
      content: "\f07b";
    }

    .fa-folder-minus:before {
      content: "\f65d";
    }

    .fa-folder-open:before {
      content: "\f07c";
    }

    .fa-folder-plus:before {
      content: "\f65e";
    }

    .fa-folder-times:before {
      content: "\f65f";
    }

    .fa-folder-tree:before {
      content: "\f802";
    }

    .fa-folders:before {
      content: "\f660";
    }

    .fa-font:before {
      content: "\f031";
    }

    .fa-font-awesome:before {
      content: "\f2b4";
    }

    .fa-font-awesome-alt:before {
      content: "\f35c";
    }

    .fa-font-awesome-flag:before {
      content: "\f425";
    }

    .fa-font-awesome-logo-full:before {
      content: "\f4e6";
    }

    .fa-font-case:before {
      content: "\f866";
    }

    .fa-fonticons:before {
      content: "\f280";
    }

    .fa-fonticons-fi:before {
      content: "\f3a2";
    }

    .fa-football-ball:before {
      content: "\f44e";
    }

    .fa-football-helmet:before {
      content: "\f44f";
    }

    .fa-forklift:before {
      content: "\f47a";
    }

    .fa-fort-awesome:before {
      content: "\f286";
    }

    .fa-fort-awesome-alt:before {
      content: "\f3a3";
    }

    .fa-forumbee:before {
      content: "\f211";
    }

    .fa-forward:before {
      content: "\f04e";
    }

    .fa-foursquare:before {
      content: "\f180";
    }

    .fa-fragile:before {
      content: "\f4bb";
    }

    .fa-free-code-camp:before {
      content: "\f2c5";
    }

    .fa-freebsd:before {
      content: "\f3a4";
    }

    .fa-french-fries:before {
      content: "\f803";
    }

    .fa-frog:before {
      content: "\f52e";
    }

    .fa-frosty-head:before {
      content: "\f79b";
    }

    .fa-frown:before {
      content: "\f119";
    }

    .fa-frown-open:before {
      content: "\f57a";
    }

    .fa-fulcrum:before {
      content: "\f50b";
    }

    .fa-function:before {
      content: "\f661";
    }

    .fa-funnel-dollar:before {
      content: "\f662";
    }

    .fa-futbol:before {
      content: "\f1e3";
    }

    .fa-galactic-republic:before {
      content: "\f50c";
    }

    .fa-galactic-senate:before {
      content: "\f50d";
    }

    .fa-game-board:before {
      content: "\f867";
    }

    .fa-game-board-alt:before {
      content: "\f868";
    }

    .fa-game-console-handheld:before {
      content: "\f8bb";
    }

    .fa-gamepad:before {
      content: "\f11b";
    }

    .fa-gamepad-alt:before {
      content: "\f8bc";
    }

    .fa-gas-pump:before {
      content: "\f52f";
    }

    .fa-gas-pump-slash:before {
      content: "\f5f4";
    }

    .fa-gavel:before {
      content: "\f0e3";
    }

    .fa-gem:before {
      content: "\f3a5";
    }

    .fa-genderless:before {
      content: "\f22d";
    }

    .fa-get-pocket:before {
      content: "\f265";
    }

    .fa-gg:before {
      content: "\f260";
    }

    .fa-gg-circle:before {
      content: "\f261";
    }

    .fa-ghost:before {
      content: "\f6e2";
    }

    .fa-gift:before {
      content: "\f06b";
    }

    .fa-gift-card:before {
      content: "\f663";
    }

    .fa-gifts:before {
      content: "\f79c";
    }

    .fa-gingerbread-man:before {
      content: "\f79d";
    }

    .fa-git:before {
      content: "\f1d3";
    }

    .fa-git-alt:before {
      content: "\f841";
    }

    .fa-git-square:before {
      content: "\f1d2";
    }

    .fa-github:before {
      content: "\f09b";
    }

    .fa-github-alt:before {
      content: "\f113";
    }

    .fa-github-square:before {
      content: "\f092";
    }

    .fa-gitkraken:before {
      content: "\f3a6";
    }

    .fa-gitlab:before {
      content: "\f296";
    }

    .fa-gitter:before {
      content: "\f426";
    }

    .fa-glass:before {
      content: "\f804";
    }

    .fa-glass-champagne:before {
      content: "\f79e";
    }

    .fa-glass-cheers:before {
      content: "\f79f";
    }

    .fa-glass-citrus:before {
      content: "\f869";
    }

    .fa-glass-martini:before {
      content: "\f000";
    }

    .fa-glass-martini-alt:before {
      content: "\f57b";
    }

    .fa-glass-whiskey:before {
      content: "\f7a0";
    }

    .fa-glass-whiskey-rocks:before {
      content: "\f7a1";
    }

    .fa-glasses:before {
      content: "\f530";
    }

    .fa-glasses-alt:before {
      content: "\f5f5";
    }

    .fa-glide:before {
      content: "\f2a5";
    }

    .fa-glide-g:before {
      content: "\f2a6";
    }

    .fa-globe:before {
      content: "\f0ac";
    }

    .fa-globe-africa:before {
      content: "\f57c";
    }

    .fa-globe-americas:before {
      content: "\f57d";
    }

    .fa-globe-asia:before {
      content: "\f57e";
    }

    .fa-globe-europe:before {
      content: "\f7a2";
    }

    .fa-globe-snow:before {
      content: "\f7a3";
    }

    .fa-globe-stand:before {
      content: "\f5f6";
    }

    .fa-gofore:before {
      content: "\f3a7";
    }

    .fa-golf-ball:before {
      content: "\f450";
    }

    .fa-golf-club:before {
      content: "\f451";
    }

    .fa-goodreads:before {
      content: "\f3a8";
    }

    .fa-goodreads-g:before {
      content: "\f3a9";
    }

    .fa-google:before {
      content: "\f1a0";
    }

    .fa-google-drive:before {
      content: "\f3aa";
    }

    .fa-google-play:before {
      content: "\f3ab";
    }

    .fa-google-plus:before {
      content: "\f2b3";
    }

    .fa-google-plus-g:before {
      content: "\f0d5";
    }

    .fa-google-plus-square:before {
      content: "\f0d4";
    }

    .fa-google-wallet:before {
      content: "\f1ee";
    }

    .fa-gopuram:before {
      content: "\f664";
    }

    .fa-graduation-cap:before {
      content: "\f19d";
    }

    .fa-gramophone:before {
      content: "\f8bd";
    }

    .fa-gratipay:before {
      content: "\f184";
    }

    .fa-grav:before {
      content: "\f2d6";
    }

    .fa-greater-than:before {
      content: "\f531";
    }

    .fa-greater-than-equal:before {
      content: "\f532";
    }

    .fa-grimace:before {
      content: "\f57f";
    }

    .fa-grin:before {
      content: "\f580";
    }

    .fa-grin-alt:before {
      content: "\f581";
    }

    .fa-grin-beam:before {
      content: "\f582";
    }

    .fa-grin-beam-sweat:before {
      content: "\f583";
    }

    .fa-grin-hearts:before {
      content: "\f584";
    }

    .fa-grin-squint:before {
      content: "\f585";
    }

    .fa-grin-squint-tears:before {
      content: "\f586";
    }

    .fa-grin-stars:before {
      content: "\f587";
    }

    .fa-grin-tears:before {
      content: "\f588";
    }

    .fa-grin-tongue:before {
      content: "\f589";
    }

    .fa-grin-tongue-squint:before {
      content: "\f58a";
    }

    .fa-grin-tongue-wink:before {
      content: "\f58b";
    }

    .fa-grin-wink:before {
      content: "\f58c";
    }

    .fa-grip-horizontal:before {
      content: "\f58d";
    }

    .fa-grip-lines:before {
      content: "\f7a4";
    }

    .fa-grip-lines-vertical:before {
      content: "\f7a5";
    }

    .fa-grip-vertical:before {
      content: "\f58e";
    }

    .fa-gripfire:before {
      content: "\f3ac";
    }

    .fa-grunt:before {
      content: "\f3ad";
    }

    .fa-guitar:before {
      content: "\f7a6";
    }

    .fa-guitar-electric:before {
      content: "\f8be";
    }

    .fa-guitars:before {
      content: "\f8bf";
    }

    .fa-gulp:before {
      content: "\f3ae";
    }

    .fa-h-square:before {
      content: "\f0fd";
    }

    .fa-h1:before {
      content: "\f313";
    }

    .fa-h2:before {
      content: "\f314";
    }

    .fa-h3:before {
      content: "\f315";
    }

    .fa-h4:before {
      content: "\f86a";
    }

    .fa-hacker-news:before {
      content: "\f1d4";
    }

    .fa-hacker-news-square:before {
      content: "\f3af";
    }

    .fa-hackerrank:before {
      content: "\f5f7";
    }

    .fa-hamburger:before {
      content: "\f805";
    }

    .fa-hammer:before {
      content: "\f6e3";
    }

    .fa-hammer-war:before {
      content: "\f6e4";
    }

    .fa-hamsa:before {
      content: "\f665";
    }

    .fa-hand-heart:before {
      content: "\f4bc";
    }

    .fa-hand-holding:before {
      content: "\f4bd";
    }

    .fa-hand-holding-box:before {
      content: "\f47b";
    }

    .fa-hand-holding-heart:before {
      content: "\f4be";
    }

    .fa-hand-holding-magic:before {
      content: "\f6e5";
    }

    .fa-hand-holding-seedling:before {
      content: "\f4bf";
    }

    .fa-hand-holding-usd:before {
      content: "\f4c0";
    }

    .fa-hand-holding-water:before {
      content: "\f4c1";
    }

    .fa-hand-lizard:before {
      content: "\f258";
    }

    .fa-hand-middle-finger:before {
      content: "\f806";
    }

    .fa-hand-paper:before {
      content: "\f256";
    }

    .fa-hand-peace:before {
      content: "\f25b";
    }

    .fa-hand-point-down:before {
      content: "\f0a7";
    }

    .fa-hand-point-left:before {
      content: "\f0a5";
    }

    .fa-hand-point-right:before {
      content: "\f0a4";
    }

    .fa-hand-point-up:before {
      content: "\f0a6";
    }

    .fa-hand-pointer:before {
      content: "\f25a";
    }

    .fa-hand-receiving:before {
      content: "\f47c";
    }

    .fa-hand-rock:before {
      content: "\f255";
    }

    .fa-hand-scissors:before {
      content: "\f257";
    }

    .fa-hand-spock:before {
      content: "\f259";
    }

    .fa-hands:before {
      content: "\f4c2";
    }

    .fa-hands-heart:before {
      content: "\f4c3";
    }

    .fa-hands-helping:before {
      content: "\f4c4";
    }

    .fa-hands-usd:before {
      content: "\f4c5";
    }

    .fa-handshake:before {
      content: "\f2b5";
    }

    .fa-handshake-alt:before {
      content: "\f4c6";
    }

    .fa-hanukiah:before {
      content: "\f6e6";
    }

    .fa-hard-hat:before {
      content: "\f807";
    }

    .fa-hashtag:before {
      content: "\f292";
    }

    .fa-hat-chef:before {
      content: "\f86b";
    }

    .fa-hat-cowboy:before {
      content: "\f8c0";
    }

    .fa-hat-cowboy-side:before {
      content: "\f8c1";
    }

    .fa-hat-santa:before {
      content: "\f7a7";
    }

    .fa-hat-winter:before {
      content: "\f7a8";
    }

    .fa-hat-witch:before {
      content: "\f6e7";
    }

    .fa-hat-wizard:before {
      content: "\f6e8";
    }

    .fa-haykal:before {
      content: "\f666";
    }

    .fa-hdd:before {
      content: "\f0a0";
    }

    .fa-head-side:before {
      content: "\f6e9";
    }

    .fa-head-side-brain:before {
      content: "\f808";
    }

    .fa-head-side-headphones:before {
      content: "\f8c2";
    }

    .fa-head-side-medical:before {
      content: "\f809";
    }

    .fa-head-vr:before {
      content: "\f6ea";
    }

    .fa-heading:before {
      content: "\f1dc";
    }

    .fa-headphones:before {
      content: "\f025";
    }

    .fa-headphones-alt:before {
      content: "\f58f";
    }

    .fa-headset:before {
      content: "\f590";
    }

    .fa-heart:before {
      content: "\f004";
    }

    .fa-heart-broken:before {
      content: "\f7a9";
    }

    .fa-heart-circle:before {
      content: "\f4c7";
    }

    .fa-heart-rate:before {
      content: "\f5f8";
    }

    .fa-heart-square:before {
      content: "\f4c8";
    }

    .fa-heartbeat:before {
      content: "\f21e";
    }

    .fa-helicopter:before {
      content: "\f533";
    }

    .fa-helmet-battle:before {
      content: "\f6eb";
    }

    .fa-hexagon:before {
      content: "\f312";
    }

    .fa-highlighter:before {
      content: "\f591";
    }

    .fa-hiking:before {
      content: "\f6ec";
    }

    .fa-hippo:before {
      content: "\f6ed";
    }

    .fa-hips:before {
      content: "\f452";
    }

    .fa-hire-a-helper:before {
      content: "\f3b0";
    }

    .fa-history:before {
      content: "\f1da";
    }

    .fa-hockey-mask:before {
      content: "\f6ee";
    }

    .fa-hockey-puck:before {
      content: "\f453";
    }

    .fa-hockey-sticks:before {
      content: "\f454";
    }

    .fa-holly-berry:before {
      content: "\f7aa";
    }

    .fa-home:before {
      content: "\f015";
    }

    .fa-home-alt:before {
      content: "\f80a";
    }

    .fa-home-heart:before {
      content: "\f4c9";
    }

    .fa-home-lg:before {
      content: "\f80b";
    }

    .fa-home-lg-alt:before {
      content: "\f80c";
    }

    .fa-hood-cloak:before {
      content: "\f6ef";
    }

    .fa-hooli:before {
      content: "\f427";
    }

    .fa-horizontal-rule:before {
      content: "\f86c";
    }

    .fa-hornbill:before {
      content: "\f592";
    }

    .fa-horse:before {
      content: "\f6f0";
    }

    .fa-horse-head:before {
      content: "\f7ab";
    }

    .fa-horse-saddle:before {
      content: "\f8c3";
    }

    .fa-hospital:before {
      content: "\f0f8";
    }

    .fa-hospital-alt:before {
      content: "\f47d";
    }

    .fa-hospital-symbol:before {
      content: "\f47e";
    }

    .fa-hospital-user:before {
      content: "\f80d";
    }

    .fa-hospitals:before {
      content: "\f80e";
    }

    .fa-hot-tub:before {
      content: "\f593";
    }

    .fa-hotdog:before {
      content: "\f80f";
    }

    .fa-hotel:before {
      content: "\f594";
    }

    .fa-hotjar:before {
      content: "\f3b1";
    }

    .fa-hourglass:before {
      content: "\f254";
    }

    .fa-hourglass-end:before {
      content: "\f253";
    }

    .fa-hourglass-half:before {
      content: "\f252";
    }

    .fa-hourglass-start:before {
      content: "\f251";
    }

    .fa-house-damage:before {
      content: "\f6f1";
    }

    .fa-house-flood:before {
      content: "\f74f";
    }

    .fa-houzz:before {
      content: "\f27c";
    }

    .fa-hryvnia:before {
      content: "\f6f2";
    }

    .fa-html5:before {
      content: "\f13b";
    }

    .fa-hubspot:before {
      content: "\f3b2";
    }

    .fa-humidity:before {
      content: "\f750";
    }

    .fa-hurricane:before {
      content: "\f751";
    }

    .fa-i-cursor:before {
      content: "\f246";
    }

    .fa-ice-cream:before {
      content: "\f810";
    }

    .fa-ice-skate:before {
      content: "\f7ac";
    }

    .fa-icicles:before {
      content: "\f7ad";
    }

    .fa-icons:before {
      content: "\f86d";
    }

    .fa-icons-alt:before {
      content: "\f86e";
    }

    .fa-id-badge:before {
      content: "\f2c1";
    }

    .fa-id-card:before {
      content: "\f2c2";
    }

    .fa-id-card-alt:before {
      content: "\f47f";
    }

    .fa-igloo:before {
      content: "\f7ae";
    }

    .fa-image:before {
      content: "\f03e";
    }

    .fa-image-polaroid:before {
      content: "\f8c4";
    }

    .fa-images:before {
      content: "\f302";
    }

    .fa-imdb:before {
      content: "\f2d8";
    }

    .fa-inbox:before {
      content: "\f01c";
    }

    .fa-inbox-in:before {
      content: "\f310";
    }

    .fa-inbox-out:before {
      content: "\f311";
    }

    .fa-indent:before {
      content: "\f03c";
    }

    .fa-industry:before {
      content: "\f275";
    }

    .fa-industry-alt:before {
      content: "\f3b3";
    }

    .fa-infinity:before {
      content: "\f534";
    }

    .fa-info:before {
      content: "\f129";
    }

    .fa-info-circle:before {
      content: "\f05a";
    }

    .fa-info-square:before {
      content: "\f30f";
    }

    .fa-inhaler:before {
      content: "\f5f9";
    }

    .fa-instagram:before {
      content: "\f16d";
    }

    .fa-integral:before {
      content: "\f667";
    }

    .fa-intercom:before {
      content: "\f7af";
    }

    .fa-internet-explorer:before {
      content: "\f26b";
    }

    .fa-intersection:before {
      content: "\f668";
    }

    .fa-inventory:before {
      content: "\f480";
    }

    .fa-invision:before {
      content: "\f7b0";
    }

    .fa-ioxhost:before {
      content: "\f208";
    }

    .fa-island-tropical:before {
      content: "\f811";
    }

    .fa-italic:before {
      content: "\f033";
    }

    .fa-itch-io:before {
      content: "\f83a";
    }

    .fa-itunes:before {
      content: "\f3b4";
    }

    .fa-itunes-note:before {
      content: "\f3b5";
    }

    .fa-jack-o-lantern:before {
      content: "\f30e";
    }

    .fa-java:before {
      content: "\f4e4";
    }

    .fa-jedi:before {
      content: "\f669";
    }

    .fa-jedi-order:before {
      content: "\f50e";
    }

    .fa-jenkins:before {
      content: "\f3b6";
    }

    .fa-jira:before {
      content: "\f7b1";
    }

    .fa-joget:before {
      content: "\f3b7";
    }

    .fa-joint:before {
      content: "\f595";
    }

    .fa-joomla:before {
      content: "\f1aa";
    }

    .fa-journal-whills:before {
      content: "\f66a";
    }

    .fa-joystick:before {
      content: "\f8c5";
    }

    .fa-js:before {
      content: "\f3b8";
    }

    .fa-js-square:before {
      content: "\f3b9";
    }

    .fa-jsfiddle:before {
      content: "\f1cc";
    }

    .fa-jug:before {
      content: "\f8c6";
    }

    .fa-kaaba:before {
      content: "\f66b";
    }

    .fa-kaggle:before {
      content: "\f5fa";
    }

    .fa-kazoo:before {
      content: "\f8c7";
    }

    .fa-kerning:before {
      content: "\f86f";
    }

    .fa-key:before {
      content: "\f084";
    }

    .fa-key-skeleton:before {
      content: "\f6f3";
    }

    .fa-keybase:before {
      content: "\f4f5";
    }

    .fa-keyboard:before {
      content: "\f11c";
    }

    .fa-keycdn:before {
      content: "\f3ba";
    }

    .fa-keynote:before {
      content: "\f66c";
    }

    .fa-khanda:before {
      content: "\f66d";
    }

    .fa-kickstarter:before {
      content: "\f3bb";
    }

    .fa-kickstarter-k:before {
      content: "\f3bc";
    }

    .fa-kidneys:before {
      content: "\f5fb";
    }

    .fa-kiss:before {
      content: "\f596";
    }

    .fa-kiss-beam:before {
      content: "\f597";
    }

    .fa-kiss-wink-heart:before {
      content: "\f598";
    }

    .fa-kite:before {
      content: "\f6f4";
    }

    .fa-kiwi-bird:before {
      content: "\f535";
    }

    .fa-knife-kitchen:before {
      content: "\f6f5";
    }

    .fa-korvue:before {
      content: "\f42f";
    }

    .fa-lambda:before {
      content: "\f66e";
    }

    .fa-lamp:before {
      content: "\f4ca";
    }

    .fa-landmark:before {
      content: "\f66f";
    }

    .fa-landmark-alt:before {
      content: "\f752";
    }

    .fa-language:before {
      content: "\f1ab";
    }

    .fa-laptop:before {
      content: "\f109";
    }

    .fa-laptop-code:before {
      content: "\f5fc";
    }

    .fa-laptop-medical:before {
      content: "\f812";
    }

    .fa-laravel:before {
      content: "\f3bd";
    }

    .fa-lasso:before {
      content: "\f8c8";
    }

    .fa-lastfm:before {
      content: "\f202";
    }

    .fa-lastfm-square:before {
      content: "\f203";
    }

    .fa-laugh:before {
      content: "\f599";
    }

    .fa-laugh-beam:before {
      content: "\f59a";
    }

    .fa-laugh-squint:before {
      content: "\f59b";
    }

    .fa-laugh-wink:before {
      content: "\f59c";
    }

    .fa-layer-group:before {
      content: "\f5fd";
    }

    .fa-layer-minus:before {
      content: "\f5fe";
    }

    .fa-layer-plus:before {
      content: "\f5ff";
    }

    .fa-leaf:before {
      content: "\f06c";
    }

    .fa-leaf-heart:before {
      content: "\f4cb";
    }

    .fa-leaf-maple:before {
      content: "\f6f6";
    }

    .fa-leaf-oak:before {
      content: "\f6f7";
    }

    .fa-leanpub:before {
      content: "\f212";
    }

    .fa-lemon:before {
      content: "\f094";
    }

    .fa-less:before {
      content: "\f41d";
    }

    .fa-less-than:before {
      content: "\f536";
    }

    .fa-less-than-equal:before {
      content: "\f537";
    }

    .fa-level-down:before {
      content: "\f149";
    }

    .fa-level-down-alt:before {
      content: "\f3be";
    }

    .fa-level-up:before {
      content: "\f148";
    }

    .fa-level-up-alt:before {
      content: "\f3bf";
    }

    .fa-life-ring:before {
      content: "\f1cd";
    }

    .fa-lightbulb:before {
      content: "\f0eb";
    }

    .fa-lightbulb-dollar:before {
      content: "\f670";
    }

    .fa-lightbulb-exclamation:before {
      content: "\f671";
    }

    .fa-lightbulb-on:before {
      content: "\f672";
    }

    .fa-lightbulb-slash:before {
      content: "\f673";
    }

    .fa-lights-holiday:before {
      content: "\f7b2";
    }

    .fa-line:before {
      content: "\f3c0";
    }

    .fa-line-columns:before {
      content: "\f870";
    }

    .fa-line-height:before {
      content: "\f871";
    }

    .fa-link:before {
      content: "\f0c1";
    }

    .fa-linkedin:before {
      content: "\f08c";
    }

    .fa-linkedin-in:before {
      content: "\f0e1";
    }

    .fa-linode:before {
      content: "\f2b8";
    }

    .fa-linux:before {
      content: "\f17c";
    }

    .fa-lips:before {
      content: "\f600";
    }

    .fa-lira-sign:before {
      content: "\f195";
    }

    .fa-list:before {
      content: "\f03a";
    }

    .fa-list-alt:before {
      content: "\f022";
    }

    .fa-list-music:before {
      content: "\f8c9";
    }

    .fa-list-ol:before {
      content: "\f0cb";
    }

    .fa-list-ul:before {
      content: "\f0ca";
    }

    .fa-location:before {
      content: "\f601";
    }

    .fa-location-arrow:before {
      content: "\f124";
    }

    .fa-location-circle:before {
      content: "\f602";
    }

    .fa-location-slash:before {
      content: "\f603";
    }

    .fa-lock:before {
      content: "\f023";
    }

    .fa-lock-alt:before {
      content: "\f30d";
    }

    .fa-lock-open:before {
      content: "\f3c1";
    }

    .fa-lock-open-alt:before {
      content: "\f3c2";
    }

    .fa-long-arrow-alt-down:before {
      content: "\f309";
    }

    .fa-long-arrow-alt-left:before {
      content: "\f30a";
    }

    .fa-long-arrow-alt-right:before {
      content: "\f30b";
    }

    .fa-long-arrow-alt-up:before {
      content: "\f30c";
    }

    .fa-long-arrow-down:before {
      content: "\f175";
    }

    .fa-long-arrow-left:before {
      content: "\f177";
    }

    .fa-long-arrow-right:before {
      content: "\f178";
    }

    .fa-long-arrow-up:before {
      content: "\f176";
    }

    .fa-loveseat:before {
      content: "\f4cc";
    }

    .fa-low-vision:before {
      content: "\f2a8";
    }

    .fa-luchador:before {
      content: "\f455";
    }

    .fa-luggage-cart:before {
      content: "\f59d";
    }

    .fa-lungs:before {
      content: "\f604";
    }

    .fa-lyft:before {
      content: "\f3c3";
    }

    .fa-mace:before {
      content: "\f6f8";
    }

    .fa-magento:before {
      content: "\f3c4";
    }

    .fa-magic:before {
      content: "\f0d0";
    }

    .fa-magnet:before {
      content: "\f076";
    }

    .fa-mail-bulk:before {
      content: "\f674";
    }

    .fa-mailbox:before {
      content: "\f813";
    }

    .fa-mailchimp:before {
      content: "\f59e";
    }

    .fa-male:before {
      content: "\f183";
    }

    .fa-mandalorian:before {
      content: "\f50f";
    }

    .fa-mandolin:before {
      content: "\f6f9";
    }

    .fa-map:before {
      content: "\f279";
    }

    .fa-map-marked:before {
      content: "\f59f";
    }

    .fa-map-marked-alt:before {
      content: "\f5a0";
    }

    .fa-map-marker:before {
      content: "\f041";
    }

    .fa-map-marker-alt:before {
      content: "\f3c5";
    }

    .fa-map-marker-alt-slash:before {
      content: "\f605";
    }

    .fa-map-marker-check:before {
      content: "\f606";
    }

    .fa-map-marker-edit:before {
      content: "\f607";
    }

    .fa-map-marker-exclamation:before {
      content: "\f608";
    }

    .fa-map-marker-minus:before {
      content: "\f609";
    }

    .fa-map-marker-plus:before {
      content: "\f60a";
    }

    .fa-map-marker-question:before {
      content: "\f60b";
    }

    .fa-map-marker-slash:before {
      content: "\f60c";
    }

    .fa-map-marker-smile:before {
      content: "\f60d";
    }

    .fa-map-marker-times:before {
      content: "\f60e";
    }

    .fa-map-pin:before {
      content: "\f276";
    }

    .fa-map-signs:before {
      content: "\f277";
    }

    .fa-markdown:before {
      content: "\f60f";
    }

    .fa-marker:before {
      content: "\f5a1";
    }

    .fa-mars:before {
      content: "\f222";
    }

    .fa-mars-double:before {
      content: "\f227";
    }

    .fa-mars-stroke:before {
      content: "\f229";
    }

    .fa-mars-stroke-h:before {
      content: "\f22b";
    }

    .fa-mars-stroke-v:before {
      content: "\f22a";
    }

    .fa-mask:before {
      content: "\f6fa";
    }

    .fa-mastodon:before {
      content: "\f4f6";
    }

    .fa-maxcdn:before {
      content: "\f136";
    }

    .fa-mdb:before {
      content: "\f8ca";
    }

    .fa-meat:before {
      content: "\f814";
    }

    .fa-medal:before {
      content: "\f5a2";
    }

    .fa-medapps:before {
      content: "\f3c6";
    }

    .fa-medium:before {
      content: "\f23a";
    }

    .fa-medium-m:before {
      content: "\f3c7";
    }

    .fa-medkit:before {
      content: "\f0fa";
    }

    .fa-medrt:before {
      content: "\f3c8";
    }

    .fa-meetup:before {
      content: "\f2e0";
    }

    .fa-megaphone:before {
      content: "\f675";
    }

    .fa-megaport:before {
      content: "\f5a3";
    }

    .fa-meh:before {
      content: "\f11a";
    }

    .fa-meh-blank:before {
      content: "\f5a4";
    }

    .fa-meh-rolling-eyes:before {
      content: "\f5a5";
    }

    .fa-memory:before {
      content: "\f538";
    }

    .fa-mendeley:before {
      content: "\f7b3";
    }

    .fa-menorah:before {
      content: "\f676";
    }

    .fa-mercury:before {
      content: "\f223";
    }

    .fa-meteor:before {
      content: "\f753";
    }

    .fa-microchip:before {
      content: "\f2db";
    }

    .fa-microphone:before {
      content: "\f130";
    }

    .fa-microphone-alt:before {
      content: "\f3c9";
    }

    .fa-microphone-alt-slash:before {
      content: "\f539";
    }

    .fa-microphone-slash:before {
      content: "\f131";
    }

    .fa-microphone-stand:before {
      content: "\f8cb";
    }

    .fa-microscope:before {
      content: "\f610";
    }

    .fa-microsoft:before {
      content: "\f3ca";
    }

    .fa-mind-share:before {
      content: "\f677";
    }

    .fa-minus:before {
      content: "\f068";
    }

    .fa-minus-circle:before {
      content: "\f056";
    }

    .fa-minus-hexagon:before {
      content: "\f307";
    }

    .fa-minus-octagon:before {
      content: "\f308";
    }

    .fa-minus-square:before {
      content: "\f146";
    }

    .fa-mistletoe:before {
      content: "\f7b4";
    }

    .fa-mitten:before {
      content: "\f7b5";
    }

    .fa-mix:before {
      content: "\f3cb";
    }

    .fa-mixcloud:before {
      content: "\f289";
    }

    .fa-mizuni:before {
      content: "\f3cc";
    }

    .fa-mobile:before {
      content: "\f10b";
    }

    .fa-mobile-alt:before {
      content: "\f3cd";
    }

    .fa-mobile-android:before {
      content: "\f3ce";
    }

    .fa-mobile-android-alt:before {
      content: "\f3cf";
    }

    .fa-modx:before {
      content: "\f285";
    }

    .fa-monero:before {
      content: "\f3d0";
    }

    .fa-money-bill:before {
      content: "\f0d6";
    }

    .fa-money-bill-alt:before {
      content: "\f3d1";
    }

    .fa-money-bill-wave:before {
      content: "\f53a";
    }

    .fa-money-bill-wave-alt:before {
      content: "\f53b";
    }

    .fa-money-check:before {
      content: "\f53c";
    }

    .fa-money-check-alt:before {
      content: "\f53d";
    }

    .fa-money-check-edit:before {
      content: "\f872";
    }

    .fa-money-check-edit-alt:before {
      content: "\f873";
    }

    .fa-monitor-heart-rate:before {
      content: "\f611";
    }

    .fa-monkey:before {
      content: "\f6fb";
    }

    .fa-monument:before {
      content: "\f5a6";
    }

    .fa-moon:before {
      content: "\f186";
    }

    .fa-moon-cloud:before {
      content: "\f754";
    }

    .fa-moon-stars:before {
      content: "\f755";
    }

    .fa-mortar-pestle:before {
      content: "\f5a7";
    }

    .fa-mosque:before {
      content: "\f678";
    }

    .fa-motorcycle:before {
      content: "\f21c";
    }

    .fa-mountain:before {
      content: "\f6fc";
    }

    .fa-mountains:before {
      content: "\f6fd";
    }

    .fa-mouse:before {
      content: "\f8cc";
    }

    .fa-mouse-alt:before {
      content: "\f8cd";
    }

    .fa-mouse-pointer:before {
      content: "\f245";
    }

    .fa-mp3-player:before {
      content: "\f8ce";
    }

    .fa-mug:before {
      content: "\f874";
    }

    .fa-mug-hot:before {
      content: "\f7b6";
    }

    .fa-mug-marshmallows:before {
      content: "\f7b7";
    }

    .fa-mug-tea:before {
      content: "\f875";
    }

    .fa-music:before {
      content: "\f001";
    }

    .fa-music-alt:before {
      content: "\f8cf";
    }

    .fa-music-alt-slash:before {
      content: "\f8d0";
    }

    .fa-music-slash:before {
      content: "\f8d1";
    }

    .fa-napster:before {
      content: "\f3d2";
    }

    .fa-narwhal:before {
      content: "\f6fe";
    }

    .fa-neos:before {
      content: "\f612";
    }

    .fa-network-wired:before {
      content: "\f6ff";
    }

    .fa-neuter:before {
      content: "\f22c";
    }

    .fa-newspaper:before {
      content: "\f1ea";
    }

    .fa-nimblr:before {
      content: "\f5a8";
    }

    .fa-node:before {
      content: "\f419";
    }

    .fa-node-js:before {
      content: "\f3d3";
    }

    .fa-not-equal:before {
      content: "\f53e";
    }

    .fa-notes-medical:before {
      content: "\f481";
    }

    .fa-npm:before {
      content: "\f3d4";
    }

    .fa-ns8:before {
      content: "\f3d5";
    }

    .fa-nutritionix:before {
      content: "\f3d6";
    }

    .fa-object-group:before {
      content: "\f247";
    }

    .fa-object-ungroup:before {
      content: "\f248";
    }

    .fa-octagon:before {
      content: "\f306";
    }

    .fa-odnoklassniki:before {
      content: "\f263";
    }

    .fa-odnoklassniki-square:before {
      content: "\f264";
    }

    .fa-oil-can:before {
      content: "\f613";
    }

    .fa-oil-temp:before {
      content: "\f614";
    }

    .fa-old-republic:before {
      content: "\f510";
    }

    .fa-om:before {
      content: "\f679";
    }

    .fa-omega:before {
      content: "\f67a";
    }

    .fa-opencart:before {
      content: "\f23d";
    }

    .fa-openid:before {
      content: "\f19b";
    }

    .fa-opera:before {
      content: "\f26a";
    }

    .fa-optin-monster:before {
      content: "\f23c";
    }

    .fa-orcid:before {
      content: "\f8d2";
    }

    .fa-ornament:before {
      content: "\f7b8";
    }

    .fa-osi:before {
      content: "\f41a";
    }

    .fa-otter:before {
      content: "\f700";
    }

    .fa-outdent:before {
      content: "\f03b";
    }

    .fa-overline:before {
      content: "\f876";
    }

    .fa-page-break:before {
      content: "\f877";
    }

    .fa-page4:before {
      content: "\f3d7";
    }

    .fa-pagelines:before {
      content: "\f18c";
    }

    .fa-pager:before {
      content: "\f815";
    }

    .fa-paint-brush:before {
      content: "\f1fc";
    }

    .fa-paint-brush-alt:before {
      content: "\f5a9";
    }

    .fa-paint-roller:before {
      content: "\f5aa";
    }

    .fa-palette:before {
      content: "\f53f";
    }

    .fa-palfed:before {
      content: "\f3d8";
    }

    .fa-pallet:before {
      content: "\f482";
    }

    .fa-pallet-alt:before {
      content: "\f483";
    }

    .fa-paper-plane:before {
      content: "\f1d8";
    }

    .fa-paperclip:before {
      content: "\f0c6";
    }

    .fa-parachute-box:before {
      content: "\f4cd";
    }

    .fa-paragraph:before {
      content: "\f1dd";
    }

    .fa-paragraph-rtl:before {
      content: "\f878";
    }

    .fa-parking:before {
      content: "\f540";
    }

    .fa-parking-circle:before {
      content: "\f615";
    }

    .fa-parking-circle-slash:before {
      content: "\f616";
    }

    .fa-parking-slash:before {
      content: "\f617";
    }

    .fa-passport:before {
      content: "\f5ab";
    }

    .fa-pastafarianism:before {
      content: "\f67b";
    }

    .fa-paste:before {
      content: "\f0ea";
    }

    .fa-patreon:before {
      content: "\f3d9";
    }

    .fa-pause:before {
      content: "\f04c";
    }

    .fa-pause-circle:before {
      content: "\f28b";
    }

    .fa-paw:before {
      content: "\f1b0";
    }

    .fa-paw-alt:before {
      content: "\f701";
    }

    .fa-paw-claws:before {
      content: "\f702";
    }

    .fa-paypal:before {
      content: "\f1ed";
    }

    .fa-peace:before {
      content: "\f67c";
    }

    .fa-pegasus:before {
      content: "\f703";
    }

    .fa-pen:before {
      content: "\f304";
    }

    .fa-pen-alt:before {
      content: "\f305";
    }

    .fa-pen-fancy:before {
      content: "\f5ac";
    }

    .fa-pen-nib:before {
      content: "\f5ad";
    }

    .fa-pen-square:before {
      content: "\f14b";
    }

    .fa-pencil:before {
      content: "\f040";
    }

    .fa-pencil-alt:before {
      content: "\f303";
    }

    .fa-pencil-paintbrush:before {
      content: "\f618";
    }

    .fa-pencil-ruler:before {
      content: "\f5ae";
    }

    .fa-pennant:before {
      content: "\f456";
    }

    .fa-penny-arcade:before {
      content: "\f704";
    }

    .fa-people-carry:before {
      content: "\f4ce";
    }

    .fa-pepper-hot:before {
      content: "\f816";
    }

    .fa-percent:before {
      content: "\f295";
    }

    .fa-percentage:before {
      content: "\f541";
    }

    .fa-periscope:before {
      content: "\f3da";
    }

    .fa-person-booth:before {
      content: "\f756";
    }

    .fa-person-carry:before {
      content: "\f4cf";
    }

    .fa-person-dolly:before {
      content: "\f4d0";
    }

    .fa-person-dolly-empty:before {
      content: "\f4d1";
    }

    .fa-person-sign:before {
      content: "\f757";
    }

    .fa-phabricator:before {
      content: "\f3db";
    }

    .fa-phoenix-framework:before {
      content: "\f3dc";
    }

    .fa-phoenix-squadron:before {
      content: "\f511";
    }

    .fa-phone:before {
      content: "\f095";
    }

    .fa-phone-alt:before {
      content: "\f879";
    }

    .fa-phone-laptop:before {
      content: "\f87a";
    }

    .fa-phone-office:before {
      content: "\f67d";
    }

    .fa-phone-plus:before {
      content: "\f4d2";
    }

    .fa-phone-rotary:before {
      content: "\f8d3";
    }

    .fa-phone-slash:before {
      content: "\f3dd";
    }

    .fa-phone-square:before {
      content: "\f098";
    }

    .fa-phone-square-alt:before {
      content: "\f87b";
    }

    .fa-phone-volume:before {
      content: "\f2a0";
    }

    .fa-photo-video:before {
      content: "\f87c";
    }

    .fa-php:before {
      content: "\f457";
    }

    .fa-pi:before {
      content: "\f67e";
    }

    .fa-piano:before {
      content: "\f8d4";
    }

    .fa-piano-keyboard:before {
      content: "\f8d5";
    }

    .fa-pie:before {
      content: "\f705";
    }

    .fa-pied-piper:before {
      content: "\f2ae";
    }

    .fa-pied-piper-alt:before {
      content: "\f1a8";
    }

    .fa-pied-piper-hat:before {
      content: "\f4e5";
    }

    .fa-pied-piper-pp:before {
      content: "\f1a7";
    }

    .fa-pig:before {
      content: "\f706";
    }

    .fa-piggy-bank:before {
      content: "\f4d3";
    }

    .fa-pills:before {
      content: "\f484";
    }

    .fa-pinterest:before {
      content: "\f0d2";
    }

    .fa-pinterest-p:before {
      content: "\f231";
    }

    .fa-pinterest-square:before {
      content: "\f0d3";
    }

    .fa-pizza:before {
      content: "\f817";
    }

    .fa-pizza-slice:before {
      content: "\f818";
    }

    .fa-place-of-worship:before {
      content: "\f67f";
    }

    .fa-plane:before {
      content: "\f072";
    }

    .fa-plane-alt:before {
      content: "\f3de";
    }

    .fa-plane-arrival:before {
      content: "\f5af";
    }

    .fa-plane-departure:before {
      content: "\f5b0";
    }

    .fa-play:before {
      content: "\f04b";
    }

    .fa-play-circle:before {
      content: "\f144";
    }

    .fa-playstation:before {
      content: "\f3df";
    }

    .fa-plug:before {
      content: "\f1e6";
    }

    .fa-plus:before {
      content: "\f067";
    }

    .fa-plus-circle:before {
      content: "\f055";
    }

    .fa-plus-hexagon:before {
      content: "\f300";
    }

    .fa-plus-octagon:before {
      content: "\f301";
    }

    .fa-plus-square:before {
      content: "\f0fe";
    }

    .fa-podcast:before {
      content: "\f2ce";
    }

    .fa-podium:before {
      content: "\f680";
    }

    .fa-podium-star:before {
      content: "\f758";
    }

    .fa-poll:before {
      content: "\f681";
    }

    .fa-poll-h:before {
      content: "\f682";
    }

    .fa-poll-people:before {
      content: "\f759";
    }

    .fa-poo:before {
      content: "\f2fe";
    }

    .fa-poo-storm:before {
      content: "\f75a";
    }

    .fa-poop:before {
      content: "\f619";
    }

    .fa-popcorn:before {
      content: "\f819";
    }

    .fa-portrait:before {
      content: "\f3e0";
    }

    .fa-pound-sign:before {
      content: "\f154";
    }

    .fa-power-off:before {
      content: "\f011";
    }

    .fa-pray:before {
      content: "\f683";
    }

    .fa-praying-hands:before {
      content: "\f684";
    }

    .fa-prescription:before {
      content: "\f5b1";
    }

    .fa-prescription-bottle:before {
      content: "\f485";
    }

    .fa-prescription-bottle-alt:before {
      content: "\f486";
    }

    .fa-presentation:before {
      content: "\f685";
    }

    .fa-print:before {
      content: "\f02f";
    }

    .fa-print-search:before {
      content: "\f81a";
    }

    .fa-print-slash:before {
      content: "\f686";
    }

    .fa-procedures:before {
      content: "\f487";
    }

    .fa-product-hunt:before {
      content: "\f288";
    }

    .fa-project-diagram:before {
      content: "\f542";
    }

    .fa-projector:before {
      content: "\f8d6";
    }

    .fa-pumpkin:before {
      content: "\f707";
    }

    .fa-pushed:before {
      content: "\f3e1";
    }

    .fa-puzzle-piece:before {
      content: "\f12e";
    }

    .fa-python:before {
      content: "\f3e2";
    }

    .fa-qq:before {
      content: "\f1d6";
    }

    .fa-qrcode:before {
      content: "\f029";
    }

    .fa-question:before {
      content: "\f128";
    }

    .fa-question-circle:before {
      content: "\f059";
    }

    .fa-question-square:before {
      content: "\f2fd";
    }

    .fa-quidditch:before {
      content: "\f458";
    }

    .fa-quinscape:before {
      content: "\f459";
    }

    .fa-quora:before {
      content: "\f2c4";
    }

    .fa-quote-left:before {
      content: "\f10d";
    }

    .fa-quote-right:before {
      content: "\f10e";
    }

    .fa-quran:before {
      content: "\f687";
    }

    .fa-r-project:before {
      content: "\f4f7";
    }

    .fa-rabbit:before {
      content: "\f708";
    }

    .fa-rabbit-fast:before {
      content: "\f709";
    }

    .fa-racquet:before {
      content: "\f45a";
    }

    .fa-radiation:before {
      content: "\f7b9";
    }

    .fa-radiation-alt:before {
      content: "\f7ba";
    }

    .fa-radio:before {
      content: "\f8d7";
    }

    .fa-radio-alt:before {
      content: "\f8d8";
    }

    .fa-rainbow:before {
      content: "\f75b";
    }

    .fa-raindrops:before {
      content: "\f75c";
    }

    .fa-ram:before {
      content: "\f70a";
    }

    .fa-ramp-loading:before {
      content: "\f4d4";
    }

    .fa-random:before {
      content: "\f074";
    }

    .fa-raspberry-pi:before {
      content: "\f7bb";
    }

    .fa-ravelry:before {
      content: "\f2d9";
    }

    .fa-react:before {
      content: "\f41b";
    }

    .fa-reacteurope:before {
      content: "\f75d";
    }

    .fa-readme:before {
      content: "\f4d5";
    }

    .fa-rebel:before {
      content: "\f1d0";
    }

    .fa-receipt:before {
      content: "\f543";
    }

    .fa-record-vinyl:before {
      content: "\f8d9";
    }

    .fa-rectangle-landscape:before {
      content: "\f2fa";
    }

    .fa-rectangle-portrait:before {
      content: "\f2fb";
    }

    .fa-rectangle-wide:before {
      content: "\f2fc";
    }

    .fa-recycle:before {
      content: "\f1b8";
    }

    .fa-red-river:before {
      content: "\f3e3";
    }

    .fa-reddit:before {
      content: "\f1a1";
    }

    .fa-reddit-alien:before {
      content: "\f281";
    }

    .fa-reddit-square:before {
      content: "\f1a2";
    }

    .fa-redhat:before {
      content: "\f7bc";
    }

    .fa-redo:before {
      content: "\f01e";
    }

    .fa-redo-alt:before {
      content: "\f2f9";
    }

    .fa-registered:before {
      content: "\f25d";
    }

    .fa-remove-format:before {
      content: "\f87d";
    }

    .fa-renren:before {
      content: "\f18b";
    }

    .fa-repeat:before {
      content: "\f363";
    }

    .fa-repeat-1:before {
      content: "\f365";
    }

    .fa-repeat-1-alt:before {
      content: "\f366";
    }

    .fa-repeat-alt:before {
      content: "\f364";
    }

    .fa-reply:before {
      content: "\f3e5";
    }

    .fa-reply-all:before {
      content: "\f122";
    }

    .fa-replyd:before {
      content: "\f3e6";
    }

    .fa-republican:before {
      content: "\f75e";
    }

    .fa-researchgate:before {
      content: "\f4f8";
    }

    .fa-resolving:before {
      content: "\f3e7";
    }

    .fa-restroom:before {
      content: "\f7bd";
    }

    .fa-retweet:before {
      content: "\f079";
    }

    .fa-retweet-alt:before {
      content: "\f361";
    }

    .fa-rev:before {
      content: "\f5b2";
    }

    .fa-ribbon:before {
      content: "\f4d6";
    }

    .fa-ring:before {
      content: "\f70b";
    }

    .fa-rings-wedding:before {
      content: "\f81b";
    }

    .fa-road:before {
      content: "\f018";
    }

    .fa-robot:before {
      content: "\f544";
    }

    .fa-rocket:before {
      content: "\f135";
    }

    .fa-rocketchat:before {
      content: "\f3e8";
    }

    .fa-rockrms:before {
      content: "\f3e9";
    }

    .fa-route:before {
      content: "\f4d7";
    }

    .fa-route-highway:before {
      content: "\f61a";
    }

    .fa-route-interstate:before {
      content: "\f61b";
    }

    .fa-router:before {
      content: "\f8da";
    }

    .fa-rss:before {
      content: "\f09e";
    }

    .fa-rss-square:before {
      content: "\f143";
    }

    .fa-ruble-sign:before {
      content: "\f158";
    }

    .fa-ruler:before {
      content: "\f545";
    }

    .fa-ruler-combined:before {
      content: "\f546";
    }

    .fa-ruler-horizontal:before {
      content: "\f547";
    }

    .fa-ruler-triangle:before {
      content: "\f61c";
    }

    .fa-ruler-vertical:before {
      content: "\f548";
    }

    .fa-running:before {
      content: "\f70c";
    }

    .fa-rupee-sign:before {
      content: "\f156";
    }

    .fa-rv:before {
      content: "\f7be";
    }

    .fa-sack:before {
      content: "\f81c";
    }

    .fa-sack-dollar:before {
      content: "\f81d";
    }

    .fa-sad-cry:before {
      content: "\f5b3";
    }

    .fa-sad-tear:before {
      content: "\f5b4";
    }

    .fa-safari:before {
      content: "\f267";
    }

    .fa-salad:before {
      content: "\f81e";
    }

    .fa-salesforce:before {
      content: "\f83b";
    }

    .fa-sandwich:before {
      content: "\f81f";
    }

    .fa-sass:before {
      content: "\f41e";
    }

    .fa-satellite:before {
      content: "\f7bf";
    }

    .fa-satellite-dish:before {
      content: "\f7c0";
    }

    .fa-sausage:before {
      content: "\f820";
    }

    .fa-save:before {
      content: "\f0c7";
    }

    .fa-sax-hot:before {
      content: "\f8db";
    }

    .fa-saxophone:before {
      content: "\f8dc";
    }

    .fa-scalpel:before {
      content: "\f61d";
    }

    .fa-scalpel-path:before {
      content: "\f61e";
    }

    .fa-scanner:before {
      content: "\f488";
    }

    .fa-scanner-image:before {
      content: "\f8f3";
    }

    .fa-scanner-keyboard:before {
      content: "\f489";
    }

    .fa-scanner-touchscreen:before {
      content: "\f48a";
    }

    .fa-scarecrow:before {
      content: "\f70d";
    }

    .fa-scarf:before {
      content: "\f7c1";
    }

    .fa-schlix:before {
      content: "\f3ea";
    }

    .fa-school:before {
      content: "\f549";
    }

    .fa-screwdriver:before {
      content: "\f54a";
    }

    .fa-scribd:before {
      content: "\f28a";
    }

    .fa-scroll:before {
      content: "\f70e";
    }

    .fa-scroll-old:before {
      content: "\f70f";
    }

    .fa-scrubber:before {
      content: "\f2f8";
    }

    .fa-scythe:before {
      content: "\f710";
    }

    .fa-sd-card:before {
      content: "\f7c2";
    }

    .fa-search:before {
      content: "\f002";
    }

    .fa-search-dollar:before {
      content: "\f688";
    }

    .fa-search-location:before {
      content: "\f689";
    }

    .fa-search-minus:before {
      content: "\f010";
    }

    .fa-search-plus:before {
      content: "\f00e";
    }

    .fa-searchengin:before {
      content: "\f3eb";
    }

    .fa-seedling:before {
      content: "\f4d8";
    }

    .fa-sellcast:before {
      content: "\f2da";
    }

    .fa-sellsy:before {
      content: "\f213";
    }

    .fa-send-back:before {
      content: "\f87e";
    }

    .fa-send-backward:before {
      content: "\f87f";
    }

    .fa-server:before {
      content: "\f233";
    }

    .fa-servicestack:before {
      content: "\f3ec";
    }

    .fa-shapes:before {
      content: "\f61f";
    }

    .fa-share:before {
      content: "\f064";
    }

    .fa-share-all:before {
      content: "\f367";
    }

    .fa-share-alt:before {
      content: "\f1e0";
    }

    .fa-share-alt-square:before {
      content: "\f1e1";
    }

    .fa-share-square:before {
      content: "\f14d";
    }

    .fa-sheep:before {
      content: "\f711";
    }

    .fa-shekel-sign:before {
      content: "\f20b";
    }

    .fa-shield:before {
      content: "\f132";
    }

    .fa-shield-alt:before {
      content: "\f3ed";
    }

    .fa-shield-check:before {
      content: "\f2f7";
    }

    .fa-shield-cross:before {
      content: "\f712";
    }

    .fa-ship:before {
      content: "\f21a";
    }

    .fa-shipping-fast:before {
      content: "\f48b";
    }

    .fa-shipping-timed:before {
      content: "\f48c";
    }

    .fa-shirtsinbulk:before {
      content: "\f214";
    }

    .fa-shish-kebab:before {
      content: "\f821";
    }

    .fa-shoe-prints:before {
      content: "\f54b";
    }

    .fa-shopping-bag:before {
      content: "\f290";
    }

    .fa-shopping-basket:before {
      content: "\f291";
    }

    .fa-shopping-cart:before {
      content: "\f07a";
    }

    .fa-shopware:before {
      content: "\f5b5";
    }

    .fa-shovel:before {
      content: "\f713";
    }

    .fa-shovel-snow:before {
      content: "\f7c3";
    }

    .fa-shower:before {
      content: "\f2cc";
    }

    .fa-shredder:before {
      content: "\f68a";
    }

    .fa-shuttle-van:before {
      content: "\f5b6";
    }

    .fa-shuttlecock:before {
      content: "\f45b";
    }

    .fa-sickle:before {
      content: "\f822";
    }

    .fa-sigma:before {
      content: "\f68b";
    }

    .fa-sign:before {
      content: "\f4d9";
    }

    .fa-sign-in:before {
      content: "\f090";
    }

    .fa-sign-in-alt:before {
      content: "\f2f6";
    }

    .fa-sign-language:before {
      content: "\f2a7";
    }

    .fa-sign-out:before {
      content: "\f08b";
    }

    .fa-sign-out-alt:before {
      content: "\f2f5";
    }

    .fa-signal:before {
      content: "\f012";
    }

    .fa-signal-1:before {
      content: "\f68c";
    }

    .fa-signal-2:before {
      content: "\f68d";
    }

    .fa-signal-3:before {
      content: "\f68e";
    }

    .fa-signal-4:before {
      content: "\f68f";
    }

    .fa-signal-alt:before {
      content: "\f690";
    }

    .fa-signal-alt-1:before {
      content: "\f691";
    }

    .fa-signal-alt-2:before {
      content: "\f692";
    }

    .fa-signal-alt-3:before {
      content: "\f693";
    }

    .fa-signal-alt-slash:before {
      content: "\f694";
    }

    .fa-signal-slash:before {
      content: "\f695";
    }

    .fa-signal-stream:before {
      content: "\f8dd";
    }

    .fa-signature:before {
      content: "\f5b7";
    }

    .fa-sim-card:before {
      content: "\f7c4";
    }

    .fa-simplybuilt:before {
      content: "\f215";
    }

    .fa-sistrix:before {
      content: "\f3ee";
    }

    .fa-sitemap:before {
      content: "\f0e8";
    }

    .fa-sith:before {
      content: "\f512";
    }

    .fa-skating:before {
      content: "\f7c5";
    }

    .fa-skeleton:before {
      content: "\f620";
    }

    .fa-sketch:before {
      content: "\f7c6";
    }

    .fa-ski-jump:before {
      content: "\f7c7";
    }

    .fa-ski-lift:before {
      content: "\f7c8";
    }

    .fa-skiing:before {
      content: "\f7c9";
    }

    .fa-skiing-nordic:before {
      content: "\f7ca";
    }

    .fa-skull:before {
      content: "\f54c";
    }

    .fa-skull-cow:before {
      content: "\f8de";
    }

    .fa-skull-crossbones:before {
      content: "\f714";
    }

    .fa-skyatlas:before {
      content: "\f216";
    }

    .fa-skype:before {
      content: "\f17e";
    }

    .fa-slack:before {
      content: "\f198";
    }

    .fa-slack-hash:before {
      content: "\f3ef";
    }

    .fa-slash:before {
      content: "\f715";
    }

    .fa-sledding:before {
      content: "\f7cb";
    }

    .fa-sleigh:before {
      content: "\f7cc";
    }

    .fa-sliders-h:before {
      content: "\f1de";
    }

    .fa-sliders-h-square:before {
      content: "\f3f0";
    }

    .fa-sliders-v:before {
      content: "\f3f1";
    }

    .fa-sliders-v-square:before {
      content: "\f3f2";
    }

    .fa-slideshare:before {
      content: "\f1e7";
    }

    .fa-smile:before {
      content: "\f118";
    }

    .fa-smile-beam:before {
      content: "\f5b8";
    }

    .fa-smile-plus:before {
      content: "\f5b9";
    }

    .fa-smile-wink:before {
      content: "\f4da";
    }

    .fa-smog:before {
      content: "\f75f";
    }

    .fa-smoke:before {
      content: "\f760";
    }

    .fa-smoking:before {
      content: "\f48d";
    }

    .fa-smoking-ban:before {
      content: "\f54d";
    }

    .fa-sms:before {
      content: "\f7cd";
    }

    .fa-snake:before {
      content: "\f716";
    }

    .fa-snapchat:before {
      content: "\f2ab";
    }

    .fa-snapchat-ghost:before {
      content: "\f2ac";
    }

    .fa-snapchat-square:before {
      content: "\f2ad";
    }

    .fa-snooze:before {
      content: "\f880";
    }

    .fa-snow-blowing:before {
      content: "\f761";
    }

    .fa-snowboarding:before {
      content: "\f7ce";
    }

    .fa-snowflake:before {
      content: "\f2dc";
    }

    .fa-snowflakes:before {
      content: "\f7cf";
    }

    .fa-snowman:before {
      content: "\f7d0";
    }

    .fa-snowmobile:before {
      content: "\f7d1";
    }

    .fa-snowplow:before {
      content: "\f7d2";
    }

    .fa-socks:before {
      content: "\f696";
    }

    .fa-solar-panel:before {
      content: "\f5ba";
    }

    .fa-sort:before {
      content: "\f0dc";
    }

    .fa-sort-alpha-down:before {
      content: "\f15d";
    }

    .fa-sort-alpha-down-alt:before {
      content: "\f881";
    }

    .fa-sort-alpha-up:before {
      content: "\f15e";
    }

    .fa-sort-alpha-up-alt:before {
      content: "\f882";
    }

    .fa-sort-alt:before {
      content: "\f883";
    }

    .fa-sort-amount-down:before {
      content: "\f160";
    }

    .fa-sort-amount-down-alt:before {
      content: "\f884";
    }

    .fa-sort-amount-up:before {
      content: "\f161";
    }

    .fa-sort-amount-up-alt:before {
      content: "\f885";
    }

    .fa-sort-down:before {
      content: "\f0dd";
    }

    .fa-sort-numeric-down:before {
      content: "\f162";
    }

    .fa-sort-numeric-down-alt:before {
      content: "\f886";
    }

    .fa-sort-numeric-up:before {
      content: "\f163";
    }

    .fa-sort-numeric-up-alt:before {
      content: "\f887";
    }

    .fa-sort-shapes-down:before {
      content: "\f888";
    }

    .fa-sort-shapes-down-alt:before {
      content: "\f889";
    }

    .fa-sort-shapes-up:before {
      content: "\f88a";
    }

    .fa-sort-shapes-up-alt:before {
      content: "\f88b";
    }

    .fa-sort-size-down:before {
      content: "\f88c";
    }

    .fa-sort-size-down-alt:before {
      content: "\f88d";
    }

    .fa-sort-size-up:before {
      content: "\f88e";
    }

    .fa-sort-size-up-alt:before {
      content: "\f88f";
    }

    .fa-sort-up:before {
      content: "\f0de";
    }

    .fa-soundcloud:before {
      content: "\f1be";
    }

    .fa-soup:before {
      content: "\f823";
    }

    .fa-sourcetree:before {
      content: "\f7d3";
    }

    .fa-spa:before {
      content: "\f5bb";
    }

    .fa-space-shuttle:before {
      content: "\f197";
    }

    .fa-spade:before {
      content: "\f2f4";
    }

    .fa-sparkles:before {
      content: "\f890";
    }

    .fa-speakap:before {
      content: "\f3f3";
    }

    .fa-speaker:before {
      content: "\f8df";
    }

    .fa-speaker-deck:before {
      content: "\f83c";
    }

    .fa-speakers:before {
      content: "\f8e0";
    }

    .fa-spell-check:before {
      content: "\f891";
    }

    .fa-spider:before {
      content: "\f717";
    }

    .fa-spider-black-widow:before {
      content: "\f718";
    }

    .fa-spider-web:before {
      content: "\f719";
    }

    .fa-spinner:before {
      content: "\f110";
    }

    .fa-spinner-third:before {
      content: "\f3f4";
    }

    .fa-splotch:before {
      content: "\f5bc";
    }

    .fa-spotify:before {
      content: "\f1bc";
    }

    .fa-spray-can:before {
      content: "\f5bd";
    }

    .fa-square:before {
      content: "\f0c8";
    }

    .fa-square-full:before {
      content: "\f45c";
    }

    .fa-square-root:before {
      content: "\f697";
    }

    .fa-square-root-alt:before {
      content: "\f698";
    }

    .fa-squarespace:before {
      content: "\f5be";
    }

    .fa-squirrel:before {
      content: "\f71a";
    }

    .fa-stack-exchange:before {
      content: "\f18d";
    }

    .fa-stack-overflow:before {
      content: "\f16c";
    }

    .fa-stackpath:before {
      content: "\f842";
    }

    .fa-staff:before {
      content: "\f71b";
    }

    .fa-stamp:before {
      content: "\f5bf";
    }

    .fa-star:before {
      content: "\f005";
    }

    .fa-star-and-crescent:before {
      content: "\f699";
    }

    .fa-star-christmas:before {
      content: "\f7d4";
    }

    .fa-star-exclamation:before {
      content: "\f2f3";
    }

    .fa-star-half:before {
      content: "\f089";
    }

    .fa-star-half-alt:before {
      content: "\f5c0";
    }

    .fa-star-of-david:before {
      content: "\f69a";
    }

    .fa-star-of-life:before {
      content: "\f621";
    }

    .fa-stars:before {
      content: "\f762";
    }

    .fa-staylinked:before {
      content: "\f3f5";
    }

    .fa-steak:before {
      content: "\f824";
    }

    .fa-steam:before {
      content: "\f1b6";
    }

    .fa-steam-square:before {
      content: "\f1b7";
    }

    .fa-steam-symbol:before {
      content: "\f3f6";
    }

    .fa-steering-wheel:before {
      content: "\f622";
    }

    .fa-step-backward:before {
      content: "\f048";
    }

    .fa-step-forward:before {
      content: "\f051";
    }

    .fa-stethoscope:before {
      content: "\f0f1";
    }

    .fa-sticker-mule:before {
      content: "\f3f7";
    }

    .fa-sticky-note:before {
      content: "\f249";
    }

    .fa-stocking:before {
      content: "\f7d5";
    }

    .fa-stomach:before {
      content: "\f623";
    }

    .fa-stop:before {
      content: "\f04d";
    }

    .fa-stop-circle:before {
      content: "\f28d";
    }

    .fa-stopwatch:before {
      content: "\f2f2";
    }

    .fa-store:before {
      content: "\f54e";
    }

    .fa-store-alt:before {
      content: "\f54f";
    }

    .fa-strava:before {
      content: "\f428";
    }

    .fa-stream:before {
      content: "\f550";
    }

    .fa-street-view:before {
      content: "\f21d";
    }

    .fa-stretcher:before {
      content: "\f825";
    }

    .fa-strikethrough:before {
      content: "\f0cc";
    }

    .fa-stripe:before {
      content: "\f429";
    }

    .fa-stripe-s:before {
      content: "\f42a";
    }

    .fa-stroopwafel:before {
      content: "\f551";
    }

    .fa-studiovinari:before {
      content: "\f3f8";
    }

    .fa-stumbleupon:before {
      content: "\f1a4";
    }

    .fa-stumbleupon-circle:before {
      content: "\f1a3";
    }

    .fa-subscript:before {
      content: "\f12c";
    }

    .fa-subway:before {
      content: "\f239";
    }

    .fa-suitcase:before {
      content: "\f0f2";
    }

    .fa-suitcase-rolling:before {
      content: "\f5c1";
    }

    .fa-sun:before {
      content: "\f185";
    }

    .fa-sun-cloud:before {
      content: "\f763";
    }

    .fa-sun-dust:before {
      content: "\f764";
    }

    .fa-sun-haze:before {
      content: "\f765";
    }

    .fa-sunglasses:before {
      content: "\f892";
    }

    .fa-sunrise:before {
      content: "\f766";
    }

    .fa-sunset:before {
      content: "\f767";
    }

    .fa-superpowers:before {
      content: "\f2dd";
    }

    .fa-superscript:before {
      content: "\f12b";
    }

    .fa-supple:before {
      content: "\f3f9";
    }

    .fa-surprise:before {
      content: "\f5c2";
    }

    .fa-suse:before {
      content: "\f7d6";
    }

    .fa-swatchbook:before {
      content: "\f5c3";
    }

    .fa-swift:before {
      content: "\f8e1";
    }

    .fa-swimmer:before {
      content: "\f5c4";
    }

    .fa-swimming-pool:before {
      content: "\f5c5";
    }

    .fa-sword:before {
      content: "\f71c";
    }

    .fa-swords:before {
      content: "\f71d";
    }

    .fa-symfony:before {
      content: "\f83d";
    }

    .fa-synagogue:before {
      content: "\f69b";
    }

    .fa-sync:before {
      content: "\f021";
    }

    .fa-sync-alt:before {
      content: "\f2f1";
    }

    .fa-syringe:before {
      content: "\f48e";
    }

    .fa-table:before {
      content: "\f0ce";
    }

    .fa-table-tennis:before {
      content: "\f45d";
    }

    .fa-tablet:before {
      content: "\f10a";
    }

    .fa-tablet-alt:before {
      content: "\f3fa";
    }

    .fa-tablet-android:before {
      content: "\f3fb";
    }

    .fa-tablet-android-alt:before {
      content: "\f3fc";
    }

    .fa-tablet-rugged:before {
      content: "\f48f";
    }

    .fa-tablets:before {
      content: "\f490";
    }

    .fa-tachometer:before {
      content: "\f0e4";
    }

    .fa-tachometer-alt:before {
      content: "\f3fd";
    }

    .fa-tachometer-alt-average:before {
      content: "\f624";
    }

    .fa-tachometer-alt-fast:before {
      content: "\f625";
    }

    .fa-tachometer-alt-fastest:before {
      content: "\f626";
    }

    .fa-tachometer-alt-slow:before {
      content: "\f627";
    }

    .fa-tachometer-alt-slowest:before {
      content: "\f628";
    }

    .fa-tachometer-average:before {
      content: "\f629";
    }

    .fa-tachometer-fast:before {
      content: "\f62a";
    }

    .fa-tachometer-fastest:before {
      content: "\f62b";
    }

    .fa-tachometer-slow:before {
      content: "\f62c";
    }

    .fa-tachometer-slowest:before {
      content: "\f62d";
    }

    .fa-taco:before {
      content: "\f826";
    }

    .fa-tag:before {
      content: "\f02b";
    }

    .fa-tags:before {
      content: "\f02c";
    }

    .fa-tally:before {
      content: "\f69c";
    }

    .fa-tanakh:before {
      content: "\f827";
    }

    .fa-tape:before {
      content: "\f4db";
    }

    .fa-tasks:before {
      content: "\f0ae";
    }

    .fa-tasks-alt:before {
      content: "\f828";
    }

    .fa-taxi:before {
      content: "\f1ba";
    }

    .fa-teamspeak:before {
      content: "\f4f9";
    }

    .fa-teeth:before {
      content: "\f62e";
    }

    .fa-teeth-open:before {
      content: "\f62f";
    }

    .fa-telegram:before {
      content: "\f2c6";
    }

    .fa-telegram-plane:before {
      content: "\f3fe";
    }

    .fa-temperature-frigid:before {
      content: "\f768";
    }

    .fa-temperature-high:before {
      content: "\f769";
    }

    .fa-temperature-hot:before {
      content: "\f76a";
    }

    .fa-temperature-low:before {
      content: "\f76b";
    }

    .fa-tencent-weibo:before {
      content: "\f1d5";
    }

    .fa-tenge:before {
      content: "\f7d7";
    }

    .fa-tennis-ball:before {
      content: "\f45e";
    }

    .fa-terminal:before {
      content: "\f120";
    }

    .fa-text:before {
      content: "\f893";
    }

    .fa-text-height:before {
      content: "\f034";
    }

    .fa-text-size:before {
      content: "\f894";
    }

    .fa-text-width:before {
      content: "\f035";
    }

    .fa-th:before {
      content: "\f00a";
    }

    .fa-th-large:before {
      content: "\f009";
    }

    .fa-th-list:before {
      content: "\f00b";
    }

    .fa-the-red-yeti:before {
      content: "\f69d";
    }

    .fa-theater-masks:before {
      content: "\f630";
    }

    .fa-themeco:before {
      content: "\f5c6";
    }

    .fa-themeisle:before {
      content: "\f2b2";
    }

    .fa-thermometer:before {
      content: "\f491";
    }

    .fa-thermometer-empty:before {
      content: "\f2cb";
    }

    .fa-thermometer-full:before {
      content: "\f2c7";
    }

    .fa-thermometer-half:before {
      content: "\f2c9";
    }

    .fa-thermometer-quarter:before {
      content: "\f2ca";
    }

    .fa-thermometer-three-quarters:before {
      content: "\f2c8";
    }

    .fa-theta:before {
      content: "\f69e";
    }

    .fa-think-peaks:before {
      content: "\f731";
    }

    .fa-thumbs-down:before {
      content: "\f165";
    }

    .fa-thumbs-up:before {
      content: "\f164";
    }

    .fa-thumbtack:before {
      content: "\f08d";
    }

    .fa-thunderstorm:before {
      content: "\f76c";
    }

    .fa-thunderstorm-moon:before {
      content: "\f76d";
    }

    .fa-thunderstorm-sun:before {
      content: "\f76e";
    }

    .fa-ticket:before {
      content: "\f145";
    }

    .fa-ticket-alt:before {
      content: "\f3ff";
    }

    .fa-tilde:before {
      content: "\f69f";
    }

    .fa-times:before {
      content: "\f00d";
    }

    .fa-times-circle:before {
      content: "\f057";
    }

    .fa-times-hexagon:before {
      content: "\f2ee";
    }

    .fa-times-octagon:before {
      content: "\f2f0";
    }

    .fa-times-square:before {
      content: "\f2d3";
    }

    .fa-tint:before {
      content: "\f043";
    }

    .fa-tint-slash:before {
      content: "\f5c7";
    }

    .fa-tire:before {
      content: "\f631";
    }

    .fa-tire-flat:before {
      content: "\f632";
    }

    .fa-tire-pressure-warning:before {
      content: "\f633";
    }

    .fa-tire-rugged:before {
      content: "\f634";
    }

    .fa-tired:before {
      content: "\f5c8";
    }

    .fa-toggle-off:before {
      content: "\f204";
    }

    .fa-toggle-on:before {
      content: "\f205";
    }

    .fa-toilet:before {
      content: "\f7d8";
    }

    .fa-toilet-paper:before {
      content: "\f71e";
    }

    .fa-toilet-paper-alt:before {
      content: "\f71f";
    }

    .fa-tombstone:before {
      content: "\f720";
    }

    .fa-tombstone-alt:before {
      content: "\f721";
    }

    .fa-toolbox:before {
      content: "\f552";
    }

    .fa-tools:before {
      content: "\f7d9";
    }

    .fa-tooth:before {
      content: "\f5c9";
    }

    .fa-toothbrush:before {
      content: "\f635";
    }

    .fa-torah:before {
      content: "\f6a0";
    }

    .fa-torii-gate:before {
      content: "\f6a1";
    }

    .fa-tornado:before {
      content: "\f76f";
    }

    .fa-tractor:before {
      content: "\f722";
    }

    .fa-trade-federation:before {
      content: "\f513";
    }

    .fa-trademark:before {
      content: "\f25c";
    }

    .fa-traffic-cone:before {
      content: "\f636";
    }

    .fa-traffic-light:before {
      content: "\f637";
    }

    .fa-traffic-light-go:before {
      content: "\f638";
    }

    .fa-traffic-light-slow:before {
      content: "\f639";
    }

    .fa-traffic-light-stop:before {
      content: "\f63a";
    }

    .fa-train:before {
      content: "\f238";
    }

    .fa-tram:before {
      content: "\f7da";
    }

    .fa-transgender:before {
      content: "\f224";
    }

    .fa-transgender-alt:before {
      content: "\f225";
    }

    .fa-trash:before {
      content: "\f1f8";
    }

    .fa-trash-alt:before {
      content: "\f2ed";
    }

    .fa-trash-restore:before {
      content: "\f829";
    }

    .fa-trash-restore-alt:before {
      content: "\f82a";
    }

    .fa-trash-undo:before {
      content: "\f895";
    }

    .fa-trash-undo-alt:before {
      content: "\f896";
    }

    .fa-treasure-chest:before {
      content: "\f723";
    }

    .fa-tree:before {
      content: "\f1bb";
    }

    .fa-tree-alt:before {
      content: "\f400";
    }

    .fa-tree-christmas:before {
      content: "\f7db";
    }

    .fa-tree-decorated:before {
      content: "\f7dc";
    }

    .fa-tree-large:before {
      content: "\f7dd";
    }

    .fa-tree-palm:before {
      content: "\f82b";
    }

    .fa-trees:before {
      content: "\f724";
    }

    .fa-trello:before {
      content: "\f181";
    }

    .fa-triangle:before {
      content: "\f2ec";
    }

    .fa-triangle-music:before {
      content: "\f8e2";
    }

    .fa-tripadvisor:before {
      content: "\f262";
    }

    .fa-trophy:before {
      content: "\f091";
    }

    .fa-trophy-alt:before {
      content: "\f2eb";
    }

    .fa-truck:before {
      content: "\f0d1";
    }

    .fa-truck-container:before {
      content: "\f4dc";
    }

    .fa-truck-couch:before {
      content: "\f4dd";
    }

    .fa-truck-loading:before {
      content: "\f4de";
    }

    .fa-truck-monster:before {
      content: "\f63b";
    }

    .fa-truck-moving:before {
      content: "\f4df";
    }

    .fa-truck-pickup:before {
      content: "\f63c";
    }

    .fa-truck-plow:before {
      content: "\f7de";
    }

    .fa-truck-ramp:before {
      content: "\f4e0";
    }

    .fa-trumpet:before {
      content: "\f8e3";
    }

    .fa-tshirt:before {
      content: "\f553";
    }

    .fa-tty:before {
      content: "\f1e4";
    }

    .fa-tumblr:before {
      content: "\f173";
    }

    .fa-tumblr-square:before {
      content: "\f174";
    }

    .fa-turkey:before {
      content: "\f725";
    }

    .fa-turntable:before {
      content: "\f8e4";
    }

    .fa-turtle:before {
      content: "\f726";
    }

    .fa-tv:before {
      content: "\f26c";
    }

    .fa-tv-alt:before {
      content: "\f8e5";
    }

    .fa-tv-music:before {
      content: "\f8e6";
    }

    .fa-tv-retro:before {
      content: "\f401";
    }

    .fa-twitch:before {
      content: "\f1e8";
    }

    .fa-twitter:before {
      content: "\f099";
    }

    .fa-twitter-square:before {
      content: "\f081";
    }

    .fa-typewriter:before {
      content: "\f8e7";
    }

    .fa-typo3:before {
      content: "\f42b";
    }

    .fa-uber:before {
      content: "\f402";
    }

    .fa-ubuntu:before {
      content: "\f7df";
    }

    .fa-uikit:before {
      content: "\f403";
    }

    .fa-umbraco:before {
      content: "\f8e8";
    }

    .fa-umbrella:before {
      content: "\f0e9";
    }

    .fa-umbrella-beach:before {
      content: "\f5ca";
    }

    .fa-underline:before {
      content: "\f0cd";
    }

    .fa-undo:before {
      content: "\f0e2";
    }

    .fa-undo-alt:before {
      content: "\f2ea";
    }

    .fa-unicorn:before {
      content: "\f727";
    }

    .fa-union:before {
      content: "\f6a2";
    }

    .fa-uniregistry:before {
      content: "\f404";
    }

    .fa-universal-access:before {
      content: "\f29a";
    }

    .fa-university:before {
      content: "\f19c";
    }

    .fa-unlink:before {
      content: "\f127";
    }

    .fa-unlock:before {
      content: "\f09c";
    }

    .fa-unlock-alt:before {
      content: "\f13e";
    }

    .fa-untappd:before {
      content: "\f405";
    }

    .fa-upload:before {
      content: "\f093";
    }

    .fa-ups:before {
      content: "\f7e0";
    }

    .fa-usb:before {
      content: "\f287";
    }

    .fa-usb-drive:before {
      content: "\f8e9";
    }

    .fa-usd-circle:before {
      content: "\f2e8";
    }

    .fa-usd-square:before {
      content: "\f2e9";
    }

    .fa-user:before {
      content: "\f007";
    }

    .fa-user-alt:before {
      content: "\f406";
    }

    .fa-user-alt-slash:before {
      content: "\f4fa";
    }

    .fa-user-astronaut:before {
      content: "\f4fb";
    }

    .fa-user-chart:before {
      content: "\f6a3";
    }

    .fa-user-check:before {
      content: "\f4fc";
    }

    .fa-user-circle:before {
      content: "\f2bd";
    }

    .fa-user-clock:before {
      content: "\f4fd";
    }

    .fa-user-cog:before {
      content: "\f4fe";
    }

    .fa-user-cowboy:before {
      content: "\f8ea";
    }

    .fa-user-crown:before {
      content: "\f6a4";
    }

    .fa-user-edit:before {
      content: "\f4ff";
    }

    .fa-user-friends:before {
      content: "\f500";
    }

    .fa-user-graduate:before {
      content: "\f501";
    }

    .fa-user-hard-hat:before {
      content: "\f82c";
    }

    .fa-user-headset:before {
      content: "\f82d";
    }

    .fa-user-injured:before {
      content: "\f728";
    }

    .fa-user-lock:before {
      content: "\f502";
    }

    .fa-user-md:before {
      content: "\f0f0";
    }

    .fa-user-md-chat:before {
      content: "\f82e";
    }

    .fa-user-minus:before {
      content: "\f503";
    }

    .fa-user-music:before {
      content: "\f8eb";
    }

    .fa-user-ninja:before {
      content: "\f504";
    }

    .fa-user-nurse:before {
      content: "\f82f";
    }

    .fa-user-plus:before {
      content: "\f234";
    }

    .fa-user-secret:before {
      content: "\f21b";
    }

    .fa-user-shield:before {
      content: "\f505";
    }

    .fa-user-slash:before {
      content: "\f506";
    }

    .fa-user-tag:before {
      content: "\f507";
    }

    .fa-user-tie:before {
      content: "\f508";
    }

    .fa-user-times:before {
      content: "\f235";
    }

    .fa-users:before {
      content: "\f0c0";
    }

    .fa-users-class:before {
      content: "\f63d";
    }

    .fa-users-cog:before {
      content: "\f509";
    }

    .fa-users-crown:before {
      content: "\f6a5";
    }

    .fa-users-medical:before {
      content: "\f830";
    }

    .fa-usps:before {
      content: "\f7e1";
    }

    .fa-ussunnah:before {
      content: "\f407";
    }

    .fa-utensil-fork:before {
      content: "\f2e3";
    }

    .fa-utensil-knife:before {
      content: "\f2e4";
    }

    .fa-utensil-spoon:before {
      content: "\f2e5";
    }

    .fa-utensils:before {
      content: "\f2e7";
    }

    .fa-utensils-alt:before {
      content: "\f2e6";
    }

    .fa-vaadin:before {
      content: "\f408";
    }

    .fa-value-absolute:before {
      content: "\f6a6";
    }

    .fa-vector-square:before {
      content: "\f5cb";
    }

    .fa-venus:before {
      content: "\f221";
    }

    .fa-venus-double:before {
      content: "\f226";
    }

    .fa-venus-mars:before {
      content: "\f228";
    }

    .fa-vhs:before {
      content: "\f8ec";
    }

    .fa-viacoin:before {
      content: "\f237";
    }

    .fa-viadeo:before {
      content: "\f2a9";
    }

    .fa-viadeo-square:before {
      content: "\f2aa";
    }

    .fa-vial:before {
      content: "\f492";
    }

    .fa-vials:before {
      content: "\f493";
    }

    .fa-viber:before {
      content: "\f409";
    }

    .fa-video:before {
      content: "\f03d";
    }

    .fa-video-plus:before {
      content: "\f4e1";
    }

    .fa-video-slash:before {
      content: "\f4e2";
    }

    .fa-vihara:before {
      content: "\f6a7";
    }

    .fa-vimeo:before {
      content: "\f40a";
    }

    .fa-vimeo-square:before {
      content: "\f194";
    }

    .fa-vimeo-v:before {
      content: "\f27d";
    }

    .fa-vine:before {
      content: "\f1ca";
    }

    .fa-violin:before {
      content: "\f8ed";
    }

    .fa-vk:before {
      content: "\f189";
    }

    .fa-vnv:before {
      content: "\f40b";
    }

    .fa-voicemail:before {
      content: "\f897";
    }

    .fa-volcano:before {
      content: "\f770";
    }

    .fa-volleyball-ball:before {
      content: "\f45f";
    }

    .fa-volume:before {
      content: "\f6a8";
    }

    .fa-volume-down:before {
      content: "\f027";
    }

    .fa-volume-mute:before {
      content: "\f6a9";
    }

    .fa-volume-off:before {
      content: "\f026";
    }

    .fa-volume-slash:before {
      content: "\f2e2";
    }

    .fa-volume-up:before {
      content: "\f028";
    }

    .fa-vote-nay:before {
      content: "\f771";
    }

    .fa-vote-yea:before {
      content: "\f772";
    }

    .fa-vr-cardboard:before {
      content: "\f729";
    }

    .fa-vuejs:before {
      content: "\f41f";
    }

    .fa-wagon-covered:before {
      content: "\f8ee";
    }

    .fa-walker:before {
      content: "\f831";
    }

    .fa-walkie-talkie:before {
      content: "\f8ef";
    }

    .fa-walking:before {
      content: "\f554";
    }

    .fa-wallet:before {
      content: "\f555";
    }

    .fa-wand:before {
      content: "\f72a";
    }

    .fa-wand-magic:before {
      content: "\f72b";
    }

    .fa-warehouse:before {
      content: "\f494";
    }

    .fa-warehouse-alt:before {
      content: "\f495";
    }

    .fa-washer:before {
      content: "\f898";
    }

    .fa-watch:before {
      content: "\f2e1";
    }

    .fa-watch-calculator:before {
      content: "\f8f0";
    }

    .fa-watch-fitness:before {
      content: "\f63e";
    }

    .fa-water:before {
      content: "\f773";
    }

    .fa-water-lower:before {
      content: "\f774";
    }

    .fa-water-rise:before {
      content: "\f775";
    }

    .fa-wave-sine:before {
      content: "\f899";
    }

    .fa-wave-square:before {
      content: "\f83e";
    }

    .fa-wave-triangle:before {
      content: "\f89a";
    }

    .fa-waveform:before {
      content: "\f8f1";
    }

    .fa-waveform-path:before {
      content: "\f8f2";
    }

    .fa-waze:before {
      content: "\f83f";
    }

    .fa-webcam:before {
      content: "\f832";
    }

    .fa-webcam-slash:before {
      content: "\f833";
    }

    .fa-weebly:before {
      content: "\f5cc";
    }

    .fa-weibo:before {
      content: "\f18a";
    }

    .fa-weight:before {
      content: "\f496";
    }

    .fa-weight-hanging:before {
      content: "\f5cd";
    }

    .fa-weixin:before {
      content: "\f1d7";
    }

    .fa-whale:before {
      content: "\f72c";
    }

    .fa-whatsapp:before {
      content: "\f232";
    }

    .fa-whatsapp-square:before {
      content: "\f40c";
    }

    .fa-wheat:before {
      content: "\f72d";
    }

    .fa-wheelchair:before {
      content: "\f193";
    }

    .fa-whistle:before {
      content: "\f460";
    }

    .fa-whmcs:before {
      content: "\f40d";
    }

    .fa-wifi:before {
      content: "\f1eb";
    }

    .fa-wifi-1:before {
      content: "\f6aa";
    }

    .fa-wifi-2:before {
      content: "\f6ab";
    }

    .fa-wifi-slash:before {
      content: "\f6ac";
    }

    .fa-wikipedia-w:before {
      content: "\f266";
    }

    .fa-wind:before {
      content: "\f72e";
    }

    .fa-wind-turbine:before {
      content: "\f89b";
    }

    .fa-wind-warning:before {
      content: "\f776";
    }

    .fa-window:before {
      content: "\f40e";
    }

    .fa-window-alt:before {
      content: "\f40f";
    }

    .fa-window-close:before {
      content: "\f410";
    }

    .fa-window-maximize:before {
      content: "\f2d0";
    }

    .fa-window-minimize:before {
      content: "\f2d1";
    }

    .fa-window-restore:before {
      content: "\f2d2";
    }

    .fa-windows:before {
      content: "\f17a";
    }

    .fa-windsock:before {
      content: "\f777";
    }

    .fa-wine-bottle:before {
      content: "\f72f";
    }

    .fa-wine-glass:before {
      content: "\f4e3";
    }

    .fa-wine-glass-alt:before {
      content: "\f5ce";
    }

    .fa-wix:before {
      content: "\f5cf";
    }

    .fa-wizards-of-the-coast:before {
      content: "\f730";
    }

    .fa-wolf-pack-battalion:before {
      content: "\f514";
    }

    .fa-won-sign:before {
      content: "\f159";
    }

    .fa-wordpress:before {
      content: "\f19a";
    }

    .fa-wordpress-simple:before {
      content: "\f411";
    }

    .fa-wpbeginner:before {
      content: "\f297";
    }

    .fa-wpexplorer:before {
      content: "\f2de";
    }

    .fa-wpforms:before {
      content: "\f298";
    }

    .fa-wpressr:before {
      content: "\f3e4";
    }

    .fa-wreath:before {
      content: "\f7e2";
    }

    .fa-wrench:before {
      content: "\f0ad";
    }

    .fa-x-ray:before {
      content: "\f497";
    }

    .fa-xbox:before {
      content: "\f412";
    }

    .fa-xing:before {
      content: "\f168";
    }

    .fa-xing-square:before {
      content: "\f169";
    }

    .fa-y-combinator:before {
      content: "\f23b";
    }

    .fa-yahoo:before {
      content: "\f19e";
    }

    .fa-yammer:before {
      content: "\f840";
    }

    .fa-yandex:before {
      content: "\f413";
    }

    .fa-yandex-international:before {
      content: "\f414";
    }

    .fa-yarn:before {
      content: "\f7e3";
    }

    .fa-yelp:before {
      content: "\f1e9";
    }

    .fa-yen-sign:before {
      content: "\f157";
    }

    .fa-yin-yang:before {
      content: "\f6ad";
    }

    .fa-yoast:before {
      content: "\f2b1";
    }

    .fa-youtube:before {
      content: "\f167";
    }

    .fa-youtube-square:before {
      content: "\f431";
    }

    .fa-zhihu:before {
      content: "\f63f";
    }

    .sr-only {
      border: 0;
      clip: rect(0, 0, 0, 0);
      height: 1px;
      margin: -1px;
      overflow: hidden;
      padding: 0;
      position: absolute;
      width: 1px;
    }

    .sr-only-focusable:active,
    .sr-only-focusable:focus {
      clip: auto;
      height: auto;
      margin: 0;
      overflow: visible;
      position: static;
      width: auto;
    }

    @font-face {
      font-family: 'Font Awesome 5 Brands';
      font-style: normal;
      font-weight: normal;
      font-display: auto;
      src: url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-brands-400.eot");
      src: url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-brands-400.woff2") format("woff2"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-brands-400.woff") format("woff"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-brands-400.ttf") format("truetype"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-brands-400.svg#fontawesome") format("svg");
    }

    .fab {
      font-family: 'Font Awesome 5 Brands';
    }

    @font-face {
      font-family: 'Font Awesome 5 Duotone';
      font-style: normal;
      font-weight: 900;
      font-display: auto;
      src: url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-duotone-900.eot");
      src: url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-duotone-900.eot?#iefix") format("embedded-opentype"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-duotone-900.woff2") format("woff2"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-duotone-900.woff") format("woff"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-duotone-900.ttf") format("truetype"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-duotone-900.svg#fontawesome") format("svg");
    }

    .fad {
      position: relative;
      font-family: 'Font Awesome 5 Duotone';
      font-weight: 900;
    }

    .fad:before {
      position: absolute;
      color: var(--fa-primary-color, inherit);
      opacity: 1;
      opacity: var(--fa-primary-opacity, 1);
    }

    .fad:after {
      color: var(--fa-secondary-color, inherit);
      opacity: 0.4;
      opacity: var(--fa-secondary-opacity, 0.4);
    }

    .fa-swap-opacity .fad:before,
    .fad.fa-swap-opacity:before {
      opacity: 0.4;
      opacity: var(--fa-secondary-opacity, 0.4);
    }

    .fa-swap-opacity .fad:after,
    .fad.fa-swap-opacity:after {
      opacity: 1;
      opacity: var(--fa-primary-opacity, 1);
    }

    .fad.fa-inverse {
      color: #fff;
    }

    .fad.fa-stack-1x,
    .fad.fa-stack-2x {
      position: absolute;
    }

    .fad.fa-stack-1x:before,
    .fad.fa-stack-2x:before,
    .fad.fa-fw:before {
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
    }

    .fad.fa-abacus:after {
      content: "\10f640";
    }

    .fad.fa-acorn:after {
      content: "\10f6ae";
    }

    .fad.fa-ad:after {
      content: "\10f641";
    }

    .fad.fa-address-book:after {
      content: "\10f2b9";
    }

    .fad.fa-address-card:after {
      content: "\10f2bb";
    }

    .fad.fa-adjust:after {
      content: "\10f042";
    }

    .fad.fa-air-freshener:after {
      content: "\10f5d0";
    }

    .fad.fa-alarm-clock:after {
      content: "\10f34e";
    }

    .fad.fa-alarm-exclamation:after {
      content: "\10f843";
    }

    .fad.fa-alarm-plus:after {
      content: "\10f844";
    }

    .fad.fa-alarm-snooze:after {
      content: "\10f845";
    }

    .fad.fa-album:after {
      content: "\10f89f";
    }

    .fad.fa-album-collection:after {
      content: "\10f8a0";
    }

    .fad.fa-alicorn:after {
      content: "\10f6b0";
    }

    .fad.fa-align-center:after {
      content: "\10f037";
    }

    .fad.fa-align-justify:after {
      content: "\10f039";
    }

    .fad.fa-align-left:after {
      content: "\10f036";
    }

    .fad.fa-align-right:after {
      content: "\10f038";
    }

    .fad.fa-align-slash:after {
      content: "\10f846";
    }

    .fad.fa-allergies:after {
      content: "\10f461";
    }

    .fad.fa-ambulance:after {
      content: "\10f0f9";
    }

    .fad.fa-american-sign-language-interpreting:after {
      content: "\10f2a3";
    }

    .fad.fa-amp-guitar:after {
      content: "\10f8a1";
    }

    .fad.fa-analytics:after {
      content: "\10f643";
    }

    .fad.fa-anchor:after {
      content: "\10f13d";
    }

    .fad.fa-angel:after {
      content: "\10f779";
    }

    .fad.fa-angle-double-down:after {
      content: "\10f103";
    }

    .fad.fa-angle-double-left:after {
      content: "\10f100";
    }

    .fad.fa-angle-double-right:after {
      content: "\10f101";
    }

    .fad.fa-angle-double-up:after {
      content: "\10f102";
    }

    .fad.fa-angle-down:after {
      content: "\10f107";
    }

    .fad.fa-angle-left:after {
      content: "\10f104";
    }

    .fad.fa-angle-right:after {
      content: "\10f105";
    }

    .fad.fa-angle-up:after {
      content: "\10f106";
    }

    .fad.fa-angry:after {
      content: "\10f556";
    }

    .fad.fa-ankh:after {
      content: "\10f644";
    }

    .fad.fa-apple-alt:after {
      content: "\10f5d1";
    }

    .fad.fa-apple-crate:after {
      content: "\10f6b1";
    }

    .fad.fa-archive:after {
      content: "\10f187";
    }

    .fad.fa-archway:after {
      content: "\10f557";
    }

    .fad.fa-arrow-alt-circle-down:after {
      content: "\10f358";
    }

    .fad.fa-arrow-alt-circle-left:after {
      content: "\10f359";
    }

    .fad.fa-arrow-alt-circle-right:after {
      content: "\10f35a";
    }

    .fad.fa-arrow-alt-circle-up:after {
      content: "\10f35b";
    }

    .fad.fa-arrow-alt-down:after {
      content: "\10f354";
    }

    .fad.fa-arrow-alt-from-bottom:after {
      content: "\10f346";
    }

    .fad.fa-arrow-alt-from-left:after {
      content: "\10f347";
    }

    .fad.fa-arrow-alt-from-right:after {
      content: "\10f348";
    }

    .fad.fa-arrow-alt-from-top:after {
      content: "\10f349";
    }

    .fad.fa-arrow-alt-left:after {
      content: "\10f355";
    }

    .fad.fa-arrow-alt-right:after {
      content: "\10f356";
    }

    .fad.fa-arrow-alt-square-down:after {
      content: "\10f350";
    }

    .fad.fa-arrow-alt-square-left:after {
      content: "\10f351";
    }

    .fad.fa-arrow-alt-square-right:after {
      content: "\10f352";
    }

    .fad.fa-arrow-alt-square-up:after {
      content: "\10f353";
    }

    .fad.fa-arrow-alt-to-bottom:after {
      content: "\10f34a";
    }

    .fad.fa-arrow-alt-to-left:after {
      content: "\10f34b";
    }

    .fad.fa-arrow-alt-to-right:after {
      content: "\10f34c";
    }

    .fad.fa-arrow-alt-to-top:after {
      content: "\10f34d";
    }

    .fad.fa-arrow-alt-up:after {
      content: "\10f357";
    }

    .fad.fa-arrow-circle-down:after {
      content: "\10f0ab";
    }

    .fad.fa-arrow-circle-left:after {
      content: "\10f0a8";
    }

    .fad.fa-arrow-circle-right:after {
      content: "\10f0a9";
    }

    .fad.fa-arrow-circle-up:after {
      content: "\10f0aa";
    }

    .fad.fa-arrow-down:after {
      content: "\10f063";
    }

    .fad.fa-arrow-from-bottom:after {
      content: "\10f342";
    }

    .fad.fa-arrow-from-left:after {
      content: "\10f343";
    }

    .fad.fa-arrow-from-right:after {
      content: "\10f344";
    }

    .fad.fa-arrow-from-top:after {
      content: "\10f345";
    }

    .fad.fa-arrow-left:after {
      content: "\10f060";
    }

    .fad.fa-arrow-right:after {
      content: "\10f061";
    }

    .fad.fa-arrow-square-down:after {
      content: "\10f339";
    }

    .fad.fa-arrow-square-left:after {
      content: "\10f33a";
    }

    .fad.fa-arrow-square-right:after {
      content: "\10f33b";
    }

    .fad.fa-arrow-square-up:after {
      content: "\10f33c";
    }

    .fad.fa-arrow-to-bottom:after {
      content: "\10f33d";
    }

    .fad.fa-arrow-to-left:after {
      content: "\10f33e";
    }

    .fad.fa-arrow-to-right:after {
      content: "\10f340";
    }

    .fad.fa-arrow-to-top:after {
      content: "\10f341";
    }

    .fad.fa-arrow-up:after {
      content: "\10f062";
    }

    .fad.fa-arrows:after {
      content: "\10f047";
    }

    .fad.fa-arrows-alt:after {
      content: "\10f0b2";
    }

    .fad.fa-arrows-alt-h:after {
      content: "\10f337";
    }

    .fad.fa-arrows-alt-v:after {
      content: "\10f338";
    }

    .fad.fa-arrows-h:after {
      content: "\10f07e";
    }

    .fad.fa-arrows-v:after {
      content: "\10f07d";
    }

    .fad.fa-assistive-listening-systems:after {
      content: "\10f2a2";
    }

    .fad.fa-asterisk:after {
      content: "\10f069";
    }

    .fad.fa-at:after {
      content: "\10f1fa";
    }

    .fad.fa-atlas:after {
      content: "\10f558";
    }

    .fad.fa-atom:after {
      content: "\10f5d2";
    }

    .fad.fa-atom-alt:after {
      content: "\10f5d3";
    }

    .fad.fa-audio-description:after {
      content: "\10f29e";
    }

    .fad.fa-award:after {
      content: "\10f559";
    }

    .fad.fa-axe:after {
      content: "\10f6b2";
    }

    .fad.fa-axe-battle:after {
      content: "\10f6b3";
    }

    .fad.fa-baby:after {
      content: "\10f77c";
    }

    .fad.fa-baby-carriage:after {
      content: "\10f77d";
    }

    .fad.fa-backpack:after {
      content: "\10f5d4";
    }

    .fad.fa-backspace:after {
      content: "\10f55a";
    }

    .fad.fa-backward:after {
      content: "\10f04a";
    }

    .fad.fa-bacon:after {
      content: "\10f7e5";
    }

    .fad.fa-badge:after {
      content: "\10f335";
    }

    .fad.fa-badge-check:after {
      content: "\10f336";
    }

    .fad.fa-badge-dollar:after {
      content: "\10f645";
    }

    .fad.fa-badge-percent:after {
      content: "\10f646";
    }

    .fad.fa-badge-sheriff:after {
      content: "\10f8a2";
    }

    .fad.fa-badger-honey:after {
      content: "\10f6b4";
    }

    .fad.fa-bags-shopping:after {
      content: "\10f847";
    }

    .fad.fa-balance-scale:after {
      content: "\10f24e";
    }

    .fad.fa-balance-scale-left:after {
      content: "\10f515";
    }

    .fad.fa-balance-scale-right:after {
      content: "\10f516";
    }

    .fad.fa-ball-pile:after {
      content: "\10f77e";
    }

    .fad.fa-ballot:after {
      content: "\10f732";
    }

    .fad.fa-ballot-check:after {
      content: "\10f733";
    }

    .fad.fa-ban:after {
      content: "\10f05e";
    }

    .fad.fa-band-aid:after {
      content: "\10f462";
    }

    .fad.fa-banjo:after {
      content: "\10f8a3";
    }

    .fad.fa-barcode:after {
      content: "\10f02a";
    }

    .fad.fa-barcode-alt:after {
      content: "\10f463";
    }

    .fad.fa-barcode-read:after {
      content: "\10f464";
    }

    .fad.fa-barcode-scan:after {
      content: "\10f465";
    }

    .fad.fa-bars:after {
      content: "\10f0c9";
    }

    .fad.fa-baseball:after {
      content: "\10f432";
    }

    .fad.fa-baseball-ball:after {
      content: "\10f433";
    }

    .fad.fa-basketball-ball:after {
      content: "\10f434";
    }

    .fad.fa-basketball-hoop:after {
      content: "\10f435";
    }

    .fad.fa-bat:after {
      content: "\10f6b5";
    }

    .fad.fa-bath:after {
      content: "\10f2cd";
    }

    .fad.fa-battery-bolt:after {
      content: "\10f376";
    }

    .fad.fa-battery-empty:after {
      content: "\10f244";
    }

    .fad.fa-battery-full:after {
      content: "\10f240";
    }

    .fad.fa-battery-half:after {
      content: "\10f242";
    }

    .fad.fa-battery-quarter:after {
      content: "\10f243";
    }

    .fad.fa-battery-slash:after {
      content: "\10f377";
    }

    .fad.fa-battery-three-quarters:after {
      content: "\10f241";
    }

    .fad.fa-bed:after {
      content: "\10f236";
    }

    .fad.fa-beer:after {
      content: "\10f0fc";
    }

    .fad.fa-bell:after {
      content: "\10f0f3";
    }

    .fad.fa-bell-exclamation:after {
      content: "\10f848";
    }

    .fad.fa-bell-plus:after {
      content: "\10f849";
    }

    .fad.fa-bell-school:after {
      content: "\10f5d5";
    }

    .fad.fa-bell-school-slash:after {
      content: "\10f5d6";
    }

    .fad.fa-bell-slash:after {
      content: "\10f1f6";
    }

    .fad.fa-bells:after {
      content: "\10f77f";
    }

    .fad.fa-betamax:after {
      content: "\10f8a4";
    }

    .fad.fa-bezier-curve:after {
      content: "\10f55b";
    }

    .fad.fa-bible:after {
      content: "\10f647";
    }

    .fad.fa-bicycle:after {
      content: "\10f206";
    }

    .fad.fa-biking:after {
      content: "\10f84a";
    }

    .fad.fa-biking-mountain:after {
      content: "\10f84b";
    }

    .fad.fa-binoculars:after {
      content: "\10f1e5";
    }

    .fad.fa-biohazard:after {
      content: "\10f780";
    }

    .fad.fa-birthday-cake:after {
      content: "\10f1fd";
    }

    .fad.fa-blanket:after {
      content: "\10f498";
    }

    .fad.fa-blender:after {
      content: "\10f517";
    }

    .fad.fa-blender-phone:after {
      content: "\10f6b6";
    }

    .fad.fa-blind:after {
      content: "\10f29d";
    }

    .fad.fa-blog:after {
      content: "\10f781";
    }

    .fad.fa-bold:after {
      content: "\10f032";
    }

    .fad.fa-bolt:after {
      content: "\10f0e7";
    }

    .fad.fa-bomb:after {
      content: "\10f1e2";
    }

    .fad.fa-bone:after {
      content: "\10f5d7";
    }

    .fad.fa-bone-break:after {
      content: "\10f5d8";
    }

    .fad.fa-bong:after {
      content: "\10f55c";
    }

    .fad.fa-book:after {
      content: "\10f02d";
    }

    .fad.fa-book-alt:after {
      content: "\10f5d9";
    }

    .fad.fa-book-dead:after {
      content: "\10f6b7";
    }

    .fad.fa-book-heart:after {
      content: "\10f499";
    }

    .fad.fa-book-medical:after {
      content: "\10f7e6";
    }

    .fad.fa-book-open:after {
      content: "\10f518";
    }

    .fad.fa-book-reader:after {
      content: "\10f5da";
    }

    .fad.fa-book-spells:after {
      content: "\10f6b8";
    }

    .fad.fa-book-user:after {
      content: "\10f7e7";
    }

    .fad.fa-bookmark:after {
      content: "\10f02e";
    }

    .fad.fa-books:after {
      content: "\10f5db";
    }

    .fad.fa-books-medical:after {
      content: "\10f7e8";
    }

    .fad.fa-boombox:after {
      content: "\10f8a5";
    }

    .fad.fa-boot:after {
      content: "\10f782";
    }

    .fad.fa-booth-curtain:after {
      content: "\10f734";
    }

    .fad.fa-border-all:after {
      content: "\10f84c";
    }

    .fad.fa-border-bottom:after {
      content: "\10f84d";
    }

    .fad.fa-border-center-h:after {
      content: "\10f89c";
    }

    .fad.fa-border-center-v:after {
      content: "\10f89d";
    }

    .fad.fa-border-inner:after {
      content: "\10f84e";
    }

    .fad.fa-border-left:after {
      content: "\10f84f";
    }

    .fad.fa-border-none:after {
      content: "\10f850";
    }

    .fad.fa-border-outer:after {
      content: "\10f851";
    }

    .fad.fa-border-right:after {
      content: "\10f852";
    }

    .fad.fa-border-style:after {
      content: "\10f853";
    }

    .fad.fa-border-style-alt:after {
      content: "\10f854";
    }

    .fad.fa-border-top:after {
      content: "\10f855";
    }

    .fad.fa-bow-arrow:after {
      content: "\10f6b9";
    }

    .fad.fa-bowling-ball:after {
      content: "\10f436";
    }

    .fad.fa-bowling-pins:after {
      content: "\10f437";
    }

    .fad.fa-box:after {
      content: "\10f466";
    }

    .fad.fa-box-alt:after {
      content: "\10f49a";
    }

    .fad.fa-box-ballot:after {
      content: "\10f735";
    }

    .fad.fa-box-check:after {
      content: "\10f467";
    }

    .fad.fa-box-fragile:after {
      content: "\10f49b";
    }

    .fad.fa-box-full:after {
      content: "\10f49c";
    }

    .fad.fa-box-heart:after {
      content: "\10f49d";
    }

    .fad.fa-box-open:after {
      content: "\10f49e";
    }

    .fad.fa-box-up:after {
      content: "\10f49f";
    }

    .fad.fa-box-usd:after {
      content: "\10f4a0";
    }

    .fad.fa-boxes:after {
      content: "\10f468";
    }

    .fad.fa-boxes-alt:after {
      content: "\10f4a1";
    }

    .fad.fa-boxing-glove:after {
      content: "\10f438";
    }

    .fad.fa-brackets:after {
      content: "\10f7e9";
    }

    .fad.fa-brackets-curly:after {
      content: "\10f7ea";
    }

    .fad.fa-braille:after {
      content: "\10f2a1";
    }

    .fad.fa-brain:after {
      content: "\10f5dc";
    }

    .fad.fa-bread-loaf:after {
      content: "\10f7eb";
    }

    .fad.fa-bread-slice:after {
      content: "\10f7ec";
    }

    .fad.fa-briefcase:after {
      content: "\10f0b1";
    }

    .fad.fa-briefcase-medical:after {
      content: "\10f469";
    }

    .fad.fa-bring-forward:after {
      content: "\10f856";
    }

    .fad.fa-bring-front:after {
      content: "\10f857";
    }

    .fad.fa-broadcast-tower:after {
      content: "\10f519";
    }

    .fad.fa-broom:after {
      content: "\10f51a";
    }

    .fad.fa-browser:after {
      content: "\10f37e";
    }

    .fad.fa-brush:after {
      content: "\10f55d";
    }

    .fad.fa-bug:after {
      content: "\10f188";
    }

    .fad.fa-building:after {
      content: "\10f1ad";
    }

    .fad.fa-bullhorn:after {
      content: "\10f0a1";
    }

    .fad.fa-bullseye:after {
      content: "\10f140";
    }

    .fad.fa-bullseye-arrow:after {
      content: "\10f648";
    }

    .fad.fa-bullseye-pointer:after {
      content: "\10f649";
    }

    .fad.fa-burger-soda:after {
      content: "\10f858";
    }

    .fad.fa-burn:after {
      content: "\10f46a";
    }

    .fad.fa-burrito:after {
      content: "\10f7ed";
    }

    .fad.fa-bus:after {
      content: "\10f207";
    }

    .fad.fa-bus-alt:after {
      content: "\10f55e";
    }

    .fad.fa-bus-school:after {
      content: "\10f5dd";
    }

    .fad.fa-business-time:after {
      content: "\10f64a";
    }

    .fad.fa-cabinet-filing:after {
      content: "\10f64b";
    }

    .fad.fa-cactus:after {
      content: "\10f8a7";
    }

    .fad.fa-calculator:after {
      content: "\10f1ec";
    }

    .fad.fa-calculator-alt:after {
      content: "\10f64c";
    }

    .fad.fa-calendar:after {
      content: "\10f133";
    }

    .fad.fa-calendar-alt:after {
      content: "\10f073";
    }

    .fad.fa-calendar-check:after {
      content: "\10f274";
    }

    .fad.fa-calendar-day:after {
      content: "\10f783";
    }

    .fad.fa-calendar-edit:after {
      content: "\10f333";
    }

    .fad.fa-calendar-exclamation:after {
      content: "\10f334";
    }

    .fad.fa-calendar-minus:after {
      content: "\10f272";
    }

    .fad.fa-calendar-plus:after {
      content: "\10f271";
    }

    .fad.fa-calendar-star:after {
      content: "\10f736";
    }

    .fad.fa-calendar-times:after {
      content: "\10f273";
    }

    .fad.fa-calendar-week:after {
      content: "\10f784";
    }

    .fad.fa-camcorder:after {
      content: "\10f8a8";
    }

    .fad.fa-camera:after {
      content: "\10f030";
    }

    .fad.fa-camera-alt:after {
      content: "\10f332";
    }

    .fad.fa-camera-movie:after {
      content: "\10f8a9";
    }

    .fad.fa-camera-polaroid:after {
      content: "\10f8aa";
    }

    .fad.fa-camera-retro:after {
      content: "\10f083";
    }

    .fad.fa-campfire:after {
      content: "\10f6ba";
    }

    .fad.fa-campground:after {
      content: "\10f6bb";
    }

    .fad.fa-candle-holder:after {
      content: "\10f6bc";
    }

    .fad.fa-candy-cane:after {
      content: "\10f786";
    }

    .fad.fa-candy-corn:after {
      content: "\10f6bd";
    }

    .fad.fa-cannabis:after {
      content: "\10f55f";
    }

    .fad.fa-capsules:after {
      content: "\10f46b";
    }

    .fad.fa-car:after {
      content: "\10f1b9";
    }

    .fad.fa-car-alt:after {
      content: "\10f5de";
    }

    .fad.fa-car-battery:after {
      content: "\10f5df";
    }

    .fad.fa-car-building:after {
      content: "\10f859";
    }

    .fad.fa-car-bump:after {
      content: "\10f5e0";
    }

    .fad.fa-car-bus:after {
      content: "\10f85a";
    }

    .fad.fa-car-crash:after {
      content: "\10f5e1";
    }

    .fad.fa-car-garage:after {
      content: "\10f5e2";
    }

    .fad.fa-car-mechanic:after {
      content: "\10f5e3";
    }

    .fad.fa-car-side:after {
      content: "\10f5e4";
    }

    .fad.fa-car-tilt:after {
      content: "\10f5e5";
    }

    .fad.fa-car-wash:after {
      content: "\10f5e6";
    }

    .fad.fa-caret-circle-down:after {
      content: "\10f32d";
    }

    .fad.fa-caret-circle-left:after {
      content: "\10f32e";
    }

    .fad.fa-caret-circle-right:after {
      content: "\10f330";
    }

    .fad.fa-caret-circle-up:after {
      content: "\10f331";
    }

    .fad.fa-caret-down:after {
      content: "\10f0d7";
    }

    .fad.fa-caret-left:after {
      content: "\10f0d9";
    }

    .fad.fa-caret-right:after {
      content: "\10f0da";
    }

    .fad.fa-caret-square-down:after {
      content: "\10f150";
    }

    .fad.fa-caret-square-left:after {
      content: "\10f191";
    }

    .fad.fa-caret-square-right:after {
      content: "\10f152";
    }

    .fad.fa-caret-square-up:after {
      content: "\10f151";
    }

    .fad.fa-caret-up:after {
      content: "\10f0d8";
    }

    .fad.fa-carrot:after {
      content: "\10f787";
    }

    .fad.fa-cars:after {
      content: "\10f85b";
    }

    .fad.fa-cart-arrow-down:after {
      content: "\10f218";
    }

    .fad.fa-cart-plus:after {
      content: "\10f217";
    }

    .fad.fa-cash-register:after {
      content: "\10f788";
    }

    .fad.fa-cassette-tape:after {
      content: "\10f8ab";
    }

    .fad.fa-cat:after {
      content: "\10f6be";
    }

    .fad.fa-cauldron:after {
      content: "\10f6bf";
    }

    .fad.fa-cctv:after {
      content: "\10f8ac";
    }

    .fad.fa-certificate:after {
      content: "\10f0a3";
    }

    .fad.fa-chair:after {
      content: "\10f6c0";
    }

    .fad.fa-chair-office:after {
      content: "\10f6c1";
    }

    .fad.fa-chalkboard:after {
      content: "\10f51b";
    }

    .fad.fa-chalkboard-teacher:after {
      content: "\10f51c";
    }

    .fad.fa-charging-station:after {
      content: "\10f5e7";
    }

    .fad.fa-chart-area:after {
      content: "\10f1fe";
    }

    .fad.fa-chart-bar:after {
      content: "\10f080";
    }

    .fad.fa-chart-line:after {
      content: "\10f201";
    }

    .fad.fa-chart-line-down:after {
      content: "\10f64d";
    }

    .fad.fa-chart-network:after {
      content: "\10f78a";
    }

    .fad.fa-chart-pie:after {
      content: "\10f200";
    }

    .fad.fa-chart-pie-alt:after {
      content: "\10f64e";
    }

    .fad.fa-chart-scatter:after {
      content: "\10f7ee";
    }

    .fad.fa-check:after {
      content: "\10f00c";
    }

    .fad.fa-check-circle:after {
      content: "\10f058";
    }

    .fad.fa-check-double:after {
      content: "\10f560";
    }

    .fad.fa-check-square:after {
      content: "\10f14a";
    }

    .fad.fa-cheese:after {
      content: "\10f7ef";
    }

    .fad.fa-cheese-swiss:after {
      content: "\10f7f0";
    }

    .fad.fa-cheeseburger:after {
      content: "\10f7f1";
    }

    .fad.fa-chess:after {
      content: "\10f439";
    }

    .fad.fa-chess-bishop:after {
      content: "\10f43a";
    }

    .fad.fa-chess-bishop-alt:after {
      content: "\10f43b";
    }

    .fad.fa-chess-board:after {
      content: "\10f43c";
    }

    .fad.fa-chess-clock:after {
      content: "\10f43d";
    }

    .fad.fa-chess-clock-alt:after {
      content: "\10f43e";
    }

    .fad.fa-chess-king:after {
      content: "\10f43f";
    }

    .fad.fa-chess-king-alt:after {
      content: "\10f440";
    }

    .fad.fa-chess-knight:after {
      content: "\10f441";
    }

    .fad.fa-chess-knight-alt:after {
      content: "\10f442";
    }

    .fad.fa-chess-pawn:after {
      content: "\10f443";
    }

    .fad.fa-chess-pawn-alt:after {
      content: "\10f444";
    }

    .fad.fa-chess-queen:after {
      content: "\10f445";
    }

    .fad.fa-chess-queen-alt:after {
      content: "\10f446";
    }

    .fad.fa-chess-rook:after {
      content: "\10f447";
    }

    .fad.fa-chess-rook-alt:after {
      content: "\10f448";
    }

    .fad.fa-chevron-circle-down:after {
      content: "\10f13a";
    }

    .fad.fa-chevron-circle-left:after {
      content: "\10f137";
    }

    .fad.fa-chevron-circle-right:after {
      content: "\10f138";
    }

    .fad.fa-chevron-circle-up:after {
      content: "\10f139";
    }

    .fad.fa-chevron-double-down:after {
      content: "\10f322";
    }

    .fad.fa-chevron-double-left:after {
      content: "\10f323";
    }

    .fad.fa-chevron-double-right:after {
      content: "\10f324";
    }

    .fad.fa-chevron-double-up:after {
      content: "\10f325";
    }

    .fad.fa-chevron-down:after {
      content: "\10f078";
    }

    .fad.fa-chevron-left:after {
      content: "\10f053";
    }

    .fad.fa-chevron-right:after {
      content: "\10f054";
    }

    .fad.fa-chevron-square-down:after {
      content: "\10f329";
    }

    .fad.fa-chevron-square-left:after {
      content: "\10f32a";
    }

    .fad.fa-chevron-square-right:after {
      content: "\10f32b";
    }

    .fad.fa-chevron-square-up:after {
      content: "\10f32c";
    }

    .fad.fa-chevron-up:after {
      content: "\10f077";
    }

    .fad.fa-child:after {
      content: "\10f1ae";
    }

    .fad.fa-chimney:after {
      content: "\10f78b";
    }

    .fad.fa-church:after {
      content: "\10f51d";
    }

    .fad.fa-circle:after {
      content: "\10f111";
    }

    .fad.fa-circle-notch:after {
      content: "\10f1ce";
    }

    .fad.fa-city:after {
      content: "\10f64f";
    }

    .fad.fa-clarinet:after {
      content: "\10f8ad";
    }

    .fad.fa-claw-marks:after {
      content: "\10f6c2";
    }

    .fad.fa-clinic-medical:after {
      content: "\10f7f2";
    }

    .fad.fa-clipboard:after {
      content: "\10f328";
    }

    .fad.fa-clipboard-check:after {
      content: "\10f46c";
    }

    .fad.fa-clipboard-list:after {
      content: "\10f46d";
    }

    .fad.fa-clipboard-list-check:after {
      content: "\10f737";
    }

    .fad.fa-clipboard-prescription:after {
      content: "\10f5e8";
    }

    .fad.fa-clipboard-user:after {
      content: "\10f7f3";
    }

    .fad.fa-clock:after {
      content: "\10f017";
    }

    .fad.fa-clone:after {
      content: "\10f24d";
    }

    .fad.fa-closed-captioning:after {
      content: "\10f20a";
    }

    .fad.fa-cloud:after {
      content: "\10f0c2";
    }

    .fad.fa-cloud-download:after {
      content: "\10f0ed";
    }

    .fad.fa-cloud-download-alt:after {
      content: "\10f381";
    }

    .fad.fa-cloud-drizzle:after {
      content: "\10f738";
    }

    .fad.fa-cloud-hail:after {
      content: "\10f739";
    }

    .fad.fa-cloud-hail-mixed:after {
      content: "\10f73a";
    }

    .fad.fa-cloud-meatball:after {
      content: "\10f73b";
    }

    .fad.fa-cloud-moon:after {
      content: "\10f6c3";
    }

    .fad.fa-cloud-moon-rain:after {
      content: "\10f73c";
    }

    .fad.fa-cloud-music:after {
      content: "\10f8ae";
    }

    .fad.fa-cloud-rain:after {
      content: "\10f73d";
    }

    .fad.fa-cloud-rainbow:after {
      content: "\10f73e";
    }

    .fad.fa-cloud-showers:after {
      content: "\10f73f";
    }

    .fad.fa-cloud-showers-heavy:after {
      content: "\10f740";
    }

    .fad.fa-cloud-sleet:after {
      content: "\10f741";
    }

    .fad.fa-cloud-snow:after {
      content: "\10f742";
    }

    .fad.fa-cloud-sun:after {
      content: "\10f6c4";
    }

    .fad.fa-cloud-sun-rain:after {
      content: "\10f743";
    }

    .fad.fa-cloud-upload:after {
      content: "\10f0ee";
    }

    .fad.fa-cloud-upload-alt:after {
      content: "\10f382";
    }

    .fad.fa-clouds:after {
      content: "\10f744";
    }

    .fad.fa-clouds-moon:after {
      content: "\10f745";
    }

    .fad.fa-clouds-sun:after {
      content: "\10f746";
    }

    .fad.fa-club:after {
      content: "\10f327";
    }

    .fad.fa-cocktail:after {
      content: "\10f561";
    }

    .fad.fa-code:after {
      content: "\10f121";
    }

    .fad.fa-code-branch:after {
      content: "\10f126";
    }

    .fad.fa-code-commit:after {
      content: "\10f386";
    }

    .fad.fa-code-merge:after {
      content: "\10f387";
    }

    .fad.fa-coffee:after {
      content: "\10f0f4";
    }

    .fad.fa-coffee-togo:after {
      content: "\10f6c5";
    }

    .fad.fa-coffin:after {
      content: "\10f6c6";
    }

    .fad.fa-cog:after {
      content: "\10f013";
    }

    .fad.fa-cogs:after {
      content: "\10f085";
    }

    .fad.fa-coin:after {
      content: "\10f85c";
    }

    .fad.fa-coins:after {
      content: "\10f51e";
    }

    .fad.fa-columns:after {
      content: "\10f0db";
    }

    .fad.fa-comment:after {
      content: "\10f075";
    }

    .fad.fa-comment-alt:after {
      content: "\10f27a";
    }

    .fad.fa-comment-alt-check:after {
      content: "\10f4a2";
    }

    .fad.fa-comment-alt-dollar:after {
      content: "\10f650";
    }

    .fad.fa-comment-alt-dots:after {
      content: "\10f4a3";
    }

    .fad.fa-comment-alt-edit:after {
      content: "\10f4a4";
    }

    .fad.fa-comment-alt-exclamation:after {
      content: "\10f4a5";
    }

    .fad.fa-comment-alt-lines:after {
      content: "\10f4a6";
    }

    .fad.fa-comment-alt-medical:after {
      content: "\10f7f4";
    }

    .fad.fa-comment-alt-minus:after {
      content: "\10f4a7";
    }

    .fad.fa-comment-alt-music:after {
      content: "\10f8af";
    }

    .fad.fa-comment-alt-plus:after {
      content: "\10f4a8";
    }

    .fad.fa-comment-alt-slash:after {
      content: "\10f4a9";
    }

    .fad.fa-comment-alt-smile:after {
      content: "\10f4aa";
    }

    .fad.fa-comment-alt-times:after {
      content: "\10f4ab";
    }

    .fad.fa-comment-check:after {
      content: "\10f4ac";
    }

    .fad.fa-comment-dollar:after {
      content: "\10f651";
    }

    .fad.fa-comment-dots:after {
      content: "\10f4ad";
    }

    .fad.fa-comment-edit:after {
      content: "\10f4ae";
    }

    .fad.fa-comment-exclamation:after {
      content: "\10f4af";
    }

    .fad.fa-comment-lines:after {
      content: "\10f4b0";
    }

    .fad.fa-comment-medical:after {
      content: "\10f7f5";
    }

    .fad.fa-comment-minus:after {
      content: "\10f4b1";
    }

    .fad.fa-comment-music:after {
      content: "\10f8b0";
    }

    .fad.fa-comment-plus:after {
      content: "\10f4b2";
    }

    .fad.fa-comment-slash:after {
      content: "\10f4b3";
    }

    .fad.fa-comment-smile:after {
      content: "\10f4b4";
    }

    .fad.fa-comment-times:after {
      content: "\10f4b5";
    }

    .fad.fa-comments:after {
      content: "\10f086";
    }

    .fad.fa-comments-alt:after {
      content: "\10f4b6";
    }

    .fad.fa-comments-alt-dollar:after {
      content: "\10f652";
    }

    .fad.fa-comments-dollar:after {
      content: "\10f653";
    }

    .fad.fa-compact-disc:after {
      content: "\10f51f";
    }

    .fad.fa-compass:after {
      content: "\10f14e";
    }

    .fad.fa-compass-slash:after {
      content: "\10f5e9";
    }

    .fad.fa-compress:after {
      content: "\10f066";
    }

    .fad.fa-compress-alt:after {
      content: "\10f422";
    }

    .fad.fa-compress-arrows-alt:after {
      content: "\10f78c";
    }

    .fad.fa-compress-wide:after {
      content: "\10f326";
    }

    .fad.fa-computer-classic:after {
      content: "\10f8b1";
    }

    .fad.fa-computer-speaker:after {
      content: "\10f8b2";
    }

    .fad.fa-concierge-bell:after {
      content: "\10f562";
    }

    .fad.fa-construction:after {
      content: "\10f85d";
    }

    .fad.fa-container-storage:after {
      content: "\10f4b7";
    }

    .fad.fa-conveyor-belt:after {
      content: "\10f46e";
    }

    .fad.fa-conveyor-belt-alt:after {
      content: "\10f46f";
    }

    .fad.fa-cookie:after {
      content: "\10f563";
    }

    .fad.fa-cookie-bite:after {
      content: "\10f564";
    }

    .fad.fa-copy:after {
      content: "\10f0c5";
    }

    .fad.fa-copyright:after {
      content: "\10f1f9";
    }

    .fad.fa-corn:after {
      content: "\10f6c7";
    }

    .fad.fa-couch:after {
      content: "\10f4b8";
    }

    .fad.fa-cow:after {
      content: "\10f6c8";
    }

    .fad.fa-cowbell:after {
      content: "\10f8b3";
    }

    .fad.fa-cowbell-more:after {
      content: "\10f8b4";
    }

    .fad.fa-credit-card:after {
      content: "\10f09d";
    }

    .fad.fa-credit-card-blank:after {
      content: "\10f389";
    }

    .fad.fa-credit-card-front:after {
      content: "\10f38a";
    }

    .fad.fa-cricket:after {
      content: "\10f449";
    }

    .fad.fa-croissant:after {
      content: "\10f7f6";
    }

    .fad.fa-crop:after {
      content: "\10f125";
    }

    .fad.fa-crop-alt:after {
      content: "\10f565";
    }

    .fad.fa-cross:after {
      content: "\10f654";
    }

    .fad.fa-crosshairs:after {
      content: "\10f05b";
    }

    .fad.fa-crow:after {
      content: "\10f520";
    }

    .fad.fa-crown:after {
      content: "\10f521";
    }

    .fad.fa-crutch:after {
      content: "\10f7f7";
    }

    .fad.fa-crutches:after {
      content: "\10f7f8";
    }

    .fad.fa-cube:after {
      content: "\10f1b2";
    }

    .fad.fa-cubes:after {
      content: "\10f1b3";
    }

    .fad.fa-curling:after {
      content: "\10f44a";
    }

    .fad.fa-cut:after {
      content: "\10f0c4";
    }

    .fad.fa-dagger:after {
      content: "\10f6cb";
    }

    .fad.fa-database:after {
      content: "\10f1c0";
    }

    .fad.fa-deaf:after {
      content: "\10f2a4";
    }

    .fad.fa-debug:after {
      content: "\10f7f9";
    }

    .fad.fa-deer:after {
      content: "\10f78e";
    }

    .fad.fa-deer-rudolph:after {
      content: "\10f78f";
    }

    .fad.fa-democrat:after {
      content: "\10f747";
    }

    .fad.fa-desktop:after {
      content: "\10f108";
    }

    .fad.fa-desktop-alt:after {
      content: "\10f390";
    }

    .fad.fa-dewpoint:after {
      content: "\10f748";
    }

    .fad.fa-dharmachakra:after {
      content: "\10f655";
    }

    .fad.fa-diagnoses:after {
      content: "\10f470";
    }

    .fad.fa-diamond:after {
      content: "\10f219";
    }

    .fad.fa-dice:after {
      content: "\10f522";
    }

    .fad.fa-dice-d10:after {
      content: "\10f6cd";
    }

    .fad.fa-dice-d12:after {
      content: "\10f6ce";
    }

    .fad.fa-dice-d20:after {
      content: "\10f6cf";
    }

    .fad.fa-dice-d4:after {
      content: "\10f6d0";
    }

    .fad.fa-dice-d6:after {
      content: "\10f6d1";
    }

    .fad.fa-dice-d8:after {
      content: "\10f6d2";
    }

    .fad.fa-dice-five:after {
      content: "\10f523";
    }

    .fad.fa-dice-four:after {
      content: "\10f524";
    }

    .fad.fa-dice-one:after {
      content: "\10f525";
    }

    .fad.fa-dice-six:after {
      content: "\10f526";
    }

    .fad.fa-dice-three:after {
      content: "\10f527";
    }

    .fad.fa-dice-two:after {
      content: "\10f528";
    }

    .fad.fa-digging:after {
      content: "\10f85e";
    }

    .fad.fa-digital-tachograph:after {
      content: "\10f566";
    }

    .fad.fa-diploma:after {
      content: "\10f5ea";
    }

    .fad.fa-directions:after {
      content: "\10f5eb";
    }

    .fad.fa-disc-drive:after {
      content: "\10f8b5";
    }

    .fad.fa-disease:after {
      content: "\10f7fa";
    }

    .fad.fa-divide:after {
      content: "\10f529";
    }

    .fad.fa-dizzy:after {
      content: "\10f567";
    }

    .fad.fa-dna:after {
      content: "\10f471";
    }

    .fad.fa-do-not-enter:after {
      content: "\10f5ec";
    }

    .fad.fa-dog:after {
      content: "\10f6d3";
    }

    .fad.fa-dog-leashed:after {
      content: "\10f6d4";
    }

    .fad.fa-dollar-sign:after {
      content: "\10f155";
    }

    .fad.fa-dolly:after {
      content: "\10f472";
    }

    .fad.fa-dolly-empty:after {
      content: "\10f473";
    }

    .fad.fa-dolly-flatbed:after {
      content: "\10f474";
    }

    .fad.fa-dolly-flatbed-alt:after {
      content: "\10f475";
    }

    .fad.fa-dolly-flatbed-empty:after {
      content: "\10f476";
    }

    .fad.fa-donate:after {
      content: "\10f4b9";
    }

    .fad.fa-door-closed:after {
      content: "\10f52a";
    }

    .fad.fa-door-open:after {
      content: "\10f52b";
    }

    .fad.fa-dot-circle:after {
      content: "\10f192";
    }

    .fad.fa-dove:after {
      content: "\10f4ba";
    }

    .fad.fa-download:after {
      content: "\10f019";
    }

    .fad.fa-drafting-compass:after {
      content: "\10f568";
    }

    .fad.fa-dragon:after {
      content: "\10f6d5";
    }

    .fad.fa-draw-circle:after {
      content: "\10f5ed";
    }

    .fad.fa-draw-polygon:after {
      content: "\10f5ee";
    }

    .fad.fa-draw-square:after {
      content: "\10f5ef";
    }

    .fad.fa-dreidel:after {
      content: "\10f792";
    }

    .fad.fa-drone:after {
      content: "\10f85f";
    }

    .fad.fa-drone-alt:after {
      content: "\10f860";
    }

    .fad.fa-drum:after {
      content: "\10f569";
    }

    .fad.fa-drum-steelpan:after {
      content: "\10f56a";
    }

    .fad.fa-drumstick:after {
      content: "\10f6d6";
    }

    .fad.fa-drumstick-bite:after {
      content: "\10f6d7";
    }

    .fad.fa-dryer:after {
      content: "\10f861";
    }

    .fad.fa-dryer-alt:after {
      content: "\10f862";
    }

    .fad.fa-duck:after {
      content: "\10f6d8";
    }

    .fad.fa-dumbbell:after {
      content: "\10f44b";
    }

    .fad.fa-dumpster:after {
      content: "\10f793";
    }

    .fad.fa-dumpster-fire:after {
      content: "\10f794";
    }

    .fad.fa-dungeon:after {
      content: "\10f6d9";
    }

    .fad.fa-ear:after {
      content: "\10f5f0";
    }

    .fad.fa-ear-muffs:after {
      content: "\10f795";
    }

    .fad.fa-eclipse:after {
      content: "\10f749";
    }

    .fad.fa-eclipse-alt:after {
      content: "\10f74a";
    }

    .fad.fa-edit:after {
      content: "\10f044";
    }

    .fad.fa-egg:after {
      content: "\10f7fb";
    }

    .fad.fa-egg-fried:after {
      content: "\10f7fc";
    }

    .fad.fa-eject:after {
      content: "\10f052";
    }

    .fad.fa-elephant:after {
      content: "\10f6da";
    }

    .fad.fa-ellipsis-h:after {
      content: "\10f141";
    }

    .fad.fa-ellipsis-h-alt:after {
      content: "\10f39b";
    }

    .fad.fa-ellipsis-v:after {
      content: "\10f142";
    }

    .fad.fa-ellipsis-v-alt:after {
      content: "\10f39c";
    }

    .fad.fa-empty-set:after {
      content: "\10f656";
    }

    .fad.fa-engine-warning:after {
      content: "\10f5f2";
    }

    .fad.fa-envelope:after {
      content: "\10f0e0";
    }

    .fad.fa-envelope-open:after {
      content: "\10f2b6";
    }

    .fad.fa-envelope-open-dollar:after {
      content: "\10f657";
    }

    .fad.fa-envelope-open-text:after {
      content: "\10f658";
    }

    .fad.fa-envelope-square:after {
      content: "\10f199";
    }

    .fad.fa-equals:after {
      content: "\10f52c";
    }

    .fad.fa-eraser:after {
      content: "\10f12d";
    }

    .fad.fa-ethernet:after {
      content: "\10f796";
    }

    .fad.fa-euro-sign:after {
      content: "\10f153";
    }

    .fad.fa-exchange:after {
      content: "\10f0ec";
    }

    .fad.fa-exchange-alt:after {
      content: "\10f362";
    }

    .fad.fa-exclamation:after {
      content: "\10f12a";
    }

    .fad.fa-exclamation-circle:after {
      content: "\10f06a";
    }

    .fad.fa-exclamation-square:after {
      content: "\10f321";
    }

    .fad.fa-exclamation-triangle:after {
      content: "\10f071";
    }

    .fad.fa-expand:after {
      content: "\10f065";
    }

    .fad.fa-expand-alt:after {
      content: "\10f424";
    }

    .fad.fa-expand-arrows:after {
      content: "\10f31d";
    }

    .fad.fa-expand-arrows-alt:after {
      content: "\10f31e";
    }

    .fad.fa-expand-wide:after {
      content: "\10f320";
    }

    .fad.fa-external-link:after {
      content: "\10f08e";
    }

    .fad.fa-external-link-alt:after {
      content: "\10f35d";
    }

    .fad.fa-external-link-square:after {
      content: "\10f14c";
    }

    .fad.fa-external-link-square-alt:after {
      content: "\10f360";
    }

    .fad.fa-eye:after {
      content: "\10f06e";
    }

    .fad.fa-eye-dropper:after {
      content: "\10f1fb";
    }

    .fad.fa-eye-evil:after {
      content: "\10f6db";
    }

    .fad.fa-eye-slash:after {
      content: "\10f070";
    }

    .fad.fa-fan:after {
      content: "\10f863";
    }

    .fad.fa-farm:after {
      content: "\10f864";
    }

    .fad.fa-fast-backward:after {
      content: "\10f049";
    }

    .fad.fa-fast-forward:after {
      content: "\10f050";
    }

    .fad.fa-fax:after {
      content: "\10f1ac";
    }

    .fad.fa-feather:after {
      content: "\10f52d";
    }

    .fad.fa-feather-alt:after {
      content: "\10f56b";
    }

    .fad.fa-female:after {
      content: "\10f182";
    }

    .fad.fa-field-hockey:after {
      content: "\10f44c";
    }

    .fad.fa-fighter-jet:after {
      content: "\10f0fb";
    }

    .fad.fa-file:after {
      content: "\10f15b";
    }

    .fad.fa-file-alt:after {
      content: "\10f15c";
    }

    .fad.fa-file-archive:after {
      content: "\10f1c6";
    }

    .fad.fa-file-audio:after {
      content: "\10f1c7";
    }

    .fad.fa-file-certificate:after {
      content: "\10f5f3";
    }

    .fad.fa-file-chart-line:after {
      content: "\10f659";
    }

    .fad.fa-file-chart-pie:after {
      content: "\10f65a";
    }

    .fad.fa-file-check:after {
      content: "\10f316";
    }

    .fad.fa-file-code:after {
      content: "\10f1c9";
    }

    .fad.fa-file-contract:after {
      content: "\10f56c";
    }

    .fad.fa-file-csv:after {
      content: "\10f6dd";
    }

    .fad.fa-file-download:after {
      content: "\10f56d";
    }

    .fad.fa-file-edit:after {
      content: "\10f31c";
    }

    .fad.fa-file-excel:after {
      content: "\10f1c3";
    }

    .fad.fa-file-exclamation:after {
      content: "\10f31a";
    }

    .fad.fa-file-export:after {
      content: "\10f56e";
    }

    .fad.fa-file-image:after {
      content: "\10f1c5";
    }

    .fad.fa-file-import:after {
      content: "\10f56f";
    }

    .fad.fa-file-invoice:after {
      content: "\10f570";
    }

    .fad.fa-file-invoice-dollar:after {
      content: "\10f571";
    }

    .fad.fa-file-medical:after {
      content: "\10f477";
    }

    .fad.fa-file-medical-alt:after {
      content: "\10f478";
    }

    .fad.fa-file-minus:after {
      content: "\10f318";
    }

    .fad.fa-file-music:after {
      content: "\10f8b6";
    }

    .fad.fa-file-pdf:after {
      content: "\10f1c1";
    }

    .fad.fa-file-plus:after {
      content: "\10f319";
    }

    .fad.fa-file-powerpoint:after {
      content: "\10f1c4";
    }

    .fad.fa-file-prescription:after {
      content: "\10f572";
    }

    .fad.fa-file-search:after {
      content: "\10f865";
    }

    .fad.fa-file-signature:after {
      content: "\10f573";
    }

    .fad.fa-file-spreadsheet:after {
      content: "\10f65b";
    }

    .fad.fa-file-times:after {
      content: "\10f317";
    }

    .fad.fa-file-upload:after {
      content: "\10f574";
    }

    .fad.fa-file-user:after {
      content: "\10f65c";
    }

    .fad.fa-file-video:after {
      content: "\10f1c8";
    }

    .fad.fa-file-word:after {
      content: "\10f1c2";
    }

    .fad.fa-files-medical:after {
      content: "\10f7fd";
    }

    .fad.fa-fill:after {
      content: "\10f575";
    }

    .fad.fa-fill-drip:after {
      content: "\10f576";
    }

    .fad.fa-film:after {
      content: "\10f008";
    }

    .fad.fa-film-alt:after {
      content: "\10f3a0";
    }

    .fad.fa-film-canister:after {
      content: "\10f8b7";
    }

    .fad.fa-filter:after {
      content: "\10f0b0";
    }

    .fad.fa-fingerprint:after {
      content: "\10f577";
    }

    .fad.fa-fire:after {
      content: "\10f06d";
    }

    .fad.fa-fire-alt:after {
      content: "\10f7e4";
    }

    .fad.fa-fire-extinguisher:after {
      content: "\10f134";
    }

    .fad.fa-fire-smoke:after {
      content: "\10f74b";
    }

    .fad.fa-fireplace:after {
      content: "\10f79a";
    }

    .fad.fa-first-aid:after {
      content: "\10f479";
    }

    .fad.fa-fish:after {
      content: "\10f578";
    }

    .fad.fa-fish-cooked:after {
      content: "\10f7fe";
    }

    .fad.fa-fist-raised:after {
      content: "\10f6de";
    }

    .fad.fa-flag:after {
      content: "\10f024";
    }

    .fad.fa-flag-alt:after {
      content: "\10f74c";
    }

    .fad.fa-flag-checkered:after {
      content: "\10f11e";
    }

    .fad.fa-flag-usa:after {
      content: "\10f74d";
    }

    .fad.fa-flame:after {
      content: "\10f6df";
    }

    .fad.fa-flashlight:after {
      content: "\10f8b8";
    }

    .fad.fa-flask:after {
      content: "\10f0c3";
    }

    .fad.fa-flask-poison:after {
      content: "\10f6e0";
    }

    .fad.fa-flask-potion:after {
      content: "\10f6e1";
    }

    .fad.fa-flower:after {
      content: "\10f7ff";
    }

    .fad.fa-flower-daffodil:after {
      content: "\10f800";
    }

    .fad.fa-flower-tulip:after {
      content: "\10f801";
    }

    .fad.fa-flushed:after {
      content: "\10f579";
    }

    .fad.fa-flute:after {
      content: "\10f8b9";
    }

    .fad.fa-flux-capacitor:after {
      content: "\10f8ba";
    }

    .fad.fa-fog:after {
      content: "\10f74e";
    }

    .fad.fa-folder:after {
      content: "\10f07b";
    }

    .fad.fa-folder-minus:after {
      content: "\10f65d";
    }

    .fad.fa-folder-open:after {
      content: "\10f07c";
    }

    .fad.fa-folder-plus:after {
      content: "\10f65e";
    }

    .fad.fa-folder-times:after {
      content: "\10f65f";
    }

    .fad.fa-folder-tree:after {
      content: "\10f802";
    }

    .fad.fa-folders:after {
      content: "\10f660";
    }

    .fad.fa-font:after {
      content: "\10f031";
    }

    .fad.fa-font-awesome-logo-full:after {
      content: "\10f4e6";
    }

    .fad.fa-font-case:after {
      content: "\10f866";
    }

    .fad.fa-football-ball:after {
      content: "\10f44e";
    }

    .fad.fa-football-helmet:after {
      content: "\10f44f";
    }

    .fad.fa-forklift:after {
      content: "\10f47a";
    }

    .fad.fa-forward:after {
      content: "\10f04e";
    }

    .fad.fa-fragile:after {
      content: "\10f4bb";
    }

    .fad.fa-french-fries:after {
      content: "\10f803";
    }

    .fad.fa-frog:after {
      content: "\10f52e";
    }

    .fad.fa-frosty-head:after {
      content: "\10f79b";
    }

    .fad.fa-frown:after {
      content: "\10f119";
    }

    .fad.fa-frown-open:after {
      content: "\10f57a";
    }

    .fad.fa-function:after {
      content: "\10f661";
    }

    .fad.fa-funnel-dollar:after {
      content: "\10f662";
    }

    .fad.fa-futbol:after {
      content: "\10f1e3";
    }

    .fad.fa-game-board:after {
      content: "\10f867";
    }

    .fad.fa-game-board-alt:after {
      content: "\10f868";
    }

    .fad.fa-game-console-handheld:after {
      content: "\10f8bb";
    }

    .fad.fa-gamepad:after {
      content: "\10f11b";
    }

    .fad.fa-gamepad-alt:after {
      content: "\10f8bc";
    }

    .fad.fa-gas-pump:after {
      content: "\10f52f";
    }

    .fad.fa-gas-pump-slash:after {
      content: "\10f5f4";
    }

    .fad.fa-gavel:after {
      content: "\10f0e3";
    }

    .fad.fa-gem:after {
      content: "\10f3a5";
    }

    .fad.fa-genderless:after {
      content: "\10f22d";
    }

    .fad.fa-ghost:after {
      content: "\10f6e2";
    }

    .fad.fa-gift:after {
      content: "\10f06b";
    }

    .fad.fa-gift-card:after {
      content: "\10f663";
    }

    .fad.fa-gifts:after {
      content: "\10f79c";
    }

    .fad.fa-gingerbread-man:after {
      content: "\10f79d";
    }

    .fad.fa-glass:after {
      content: "\10f804";
    }

    .fad.fa-glass-champagne:after {
      content: "\10f79e";
    }

    .fad.fa-glass-cheers:after {
      content: "\10f79f";
    }

    .fad.fa-glass-citrus:after {
      content: "\10f869";
    }

    .fad.fa-glass-martini:after {
      content: "\10f000";
    }

    .fad.fa-glass-martini-alt:after {
      content: "\10f57b";
    }

    .fad.fa-glass-whiskey:after {
      content: "\10f7a0";
    }

    .fad.fa-glass-whiskey-rocks:after {
      content: "\10f7a1";
    }

    .fad.fa-glasses:after {
      content: "\10f530";
    }

    .fad.fa-glasses-alt:after {
      content: "\10f5f5";
    }

    .fad.fa-globe:after {
      content: "\10f0ac";
    }

    .fad.fa-globe-africa:after {
      content: "\10f57c";
    }

    .fad.fa-globe-americas:after {
      content: "\10f57d";
    }

    .fad.fa-globe-asia:after {
      content: "\10f57e";
    }

    .fad.fa-globe-europe:after {
      content: "\10f7a2";
    }

    .fad.fa-globe-snow:after {
      content: "\10f7a3";
    }

    .fad.fa-globe-stand:after {
      content: "\10f5f6";
    }

    .fad.fa-golf-ball:after {
      content: "\10f450";
    }

    .fad.fa-golf-club:after {
      content: "\10f451";
    }

    .fad.fa-gopuram:after {
      content: "\10f664";
    }

    .fad.fa-graduation-cap:after {
      content: "\10f19d";
    }

    .fad.fa-gramophone:after {
      content: "\10f8bd";
    }

    .fad.fa-greater-than:after {
      content: "\10f531";
    }

    .fad.fa-greater-than-equal:after {
      content: "\10f532";
    }

    .fad.fa-grimace:after {
      content: "\10f57f";
    }

    .fad.fa-grin:after {
      content: "\10f580";
    }

    .fad.fa-grin-alt:after {
      content: "\10f581";
    }

    .fad.fa-grin-beam:after {
      content: "\10f582";
    }

    .fad.fa-grin-beam-sweat:after {
      content: "\10f583";
    }

    .fad.fa-grin-hearts:after {
      content: "\10f584";
    }

    .fad.fa-grin-squint:after {
      content: "\10f585";
    }

    .fad.fa-grin-squint-tears:after {
      content: "\10f586";
    }

    .fad.fa-grin-stars:after {
      content: "\10f587";
    }

    .fad.fa-grin-tears:after {
      content: "\10f588";
    }

    .fad.fa-grin-tongue:after {
      content: "\10f589";
    }

    .fad.fa-grin-tongue-squint:after {
      content: "\10f58a";
    }

    .fad.fa-grin-tongue-wink:after {
      content: "\10f58b";
    }

    .fad.fa-grin-wink:after {
      content: "\10f58c";
    }

    .fad.fa-grip-horizontal:after {
      content: "\10f58d";
    }

    .fad.fa-grip-lines:after {
      content: "\10f7a4";
    }

    .fad.fa-grip-lines-vertical:after {
      content: "\10f7a5";
    }

    .fad.fa-grip-vertical:after {
      content: "\10f58e";
    }

    .fad.fa-guitar:after {
      content: "\10f7a6";
    }

    .fad.fa-guitar-electric:after {
      content: "\10f8be";
    }

    .fad.fa-guitars:after {
      content: "\10f8bf";
    }

    .fad.fa-h-square:after {
      content: "\10f0fd";
    }

    .fad.fa-h1:after {
      content: "\10f313";
    }

    .fad.fa-h2:after {
      content: "\10f314";
    }

    .fad.fa-h3:after {
      content: "\10f315";
    }

    .fad.fa-h4:after {
      content: "\10f86a";
    }

    .fad.fa-hamburger:after {
      content: "\10f805";
    }

    .fad.fa-hammer:after {
      content: "\10f6e3";
    }

    .fad.fa-hammer-war:after {
      content: "\10f6e4";
    }

    .fad.fa-hamsa:after {
      content: "\10f665";
    }

    .fad.fa-hand-heart:after {
      content: "\10f4bc";
    }

    .fad.fa-hand-holding:after {
      content: "\10f4bd";
    }

    .fad.fa-hand-holding-box:after {
      content: "\10f47b";
    }

    .fad.fa-hand-holding-heart:after {
      content: "\10f4be";
    }

    .fad.fa-hand-holding-magic:after {
      content: "\10f6e5";
    }

    .fad.fa-hand-holding-seedling:after {
      content: "\10f4bf";
    }

    .fad.fa-hand-holding-usd:after {
      content: "\10f4c0";
    }

    .fad.fa-hand-holding-water:after {
      content: "\10f4c1";
    }

    .fad.fa-hand-lizard:after {
      content: "\10f258";
    }

    .fad.fa-hand-middle-finger:after {
      content: "\10f806";
    }

    .fad.fa-hand-paper:after {
      content: "\10f256";
    }

    .fad.fa-hand-peace:after {
      content: "\10f25b";
    }

    .fad.fa-hand-point-down:after {
      content: "\10f0a7";
    }

    .fad.fa-hand-point-left:after {
      content: "\10f0a5";
    }

    .fad.fa-hand-point-right:after {
      content: "\10f0a4";
    }

    .fad.fa-hand-point-up:after {
      content: "\10f0a6";
    }

    .fad.fa-hand-pointer:after {
      content: "\10f25a";
    }

    .fad.fa-hand-receiving:after {
      content: "\10f47c";
    }

    .fad.fa-hand-rock:after {
      content: "\10f255";
    }

    .fad.fa-hand-scissors:after {
      content: "\10f257";
    }

    .fad.fa-hand-spock:after {
      content: "\10f259";
    }

    .fad.fa-hands:after {
      content: "\10f4c2";
    }

    .fad.fa-hands-heart:after {
      content: "\10f4c3";
    }

    .fad.fa-hands-helping:after {
      content: "\10f4c4";
    }

    .fad.fa-hands-usd:after {
      content: "\10f4c5";
    }

    .fad.fa-handshake:after {
      content: "\10f2b5";
    }

    .fad.fa-handshake-alt:after {
      content: "\10f4c6";
    }

    .fad.fa-hanukiah:after {
      content: "\10f6e6";
    }

    .fad.fa-hard-hat:after {
      content: "\10f807";
    }

    .fad.fa-hashtag:after {
      content: "\10f292";
    }

    .fad.fa-hat-chef:after {
      content: "\10f86b";
    }

    .fad.fa-hat-cowboy:after {
      content: "\10f8c0";
    }

    .fad.fa-hat-cowboy-side:after {
      content: "\10f8c1";
    }

    .fad.fa-hat-santa:after {
      content: "\10f7a7";
    }

    .fad.fa-hat-winter:after {
      content: "\10f7a8";
    }

    .fad.fa-hat-witch:after {
      content: "\10f6e7";
    }

    .fad.fa-hat-wizard:after {
      content: "\10f6e8";
    }

    .fad.fa-haykal:after {
      content: "\10f666";
    }

    .fad.fa-hdd:after {
      content: "\10f0a0";
    }

    .fad.fa-head-side:after {
      content: "\10f6e9";
    }

    .fad.fa-head-side-brain:after {
      content: "\10f808";
    }

    .fad.fa-head-side-headphones:after {
      content: "\10f8c2";
    }

    .fad.fa-head-side-medical:after {
      content: "\10f809";
    }

    .fad.fa-head-vr:after {
      content: "\10f6ea";
    }

    .fad.fa-heading:after {
      content: "\10f1dc";
    }

    .fad.fa-headphones:after {
      content: "\10f025";
    }

    .fad.fa-headphones-alt:after {
      content: "\10f58f";
    }

    .fad.fa-headset:after {
      content: "\10f590";
    }

    .fad.fa-heart:after {
      content: "\10f004";
    }

    .fad.fa-heart-broken:after {
      content: "\10f7a9";
    }

    .fad.fa-heart-circle:after {
      content: "\10f4c7";
    }

    .fad.fa-heart-rate:after {
      content: "\10f5f8";
    }

    .fad.fa-heart-square:after {
      content: "\10f4c8";
    }

    .fad.fa-heartbeat:after {
      content: "\10f21e";
    }

    .fad.fa-helicopter:after {
      content: "\10f533";
    }

    .fad.fa-helmet-battle:after {
      content: "\10f6eb";
    }

    .fad.fa-hexagon:after {
      content: "\10f312";
    }

    .fad.fa-highlighter:after {
      content: "\10f591";
    }

    .fad.fa-hiking:after {
      content: "\10f6ec";
    }

    .fad.fa-hippo:after {
      content: "\10f6ed";
    }

    .fad.fa-history:after {
      content: "\10f1da";
    }

    .fad.fa-hockey-mask:after {
      content: "\10f6ee";
    }

    .fad.fa-hockey-puck:after {
      content: "\10f453";
    }

    .fad.fa-hockey-sticks:after {
      content: "\10f454";
    }

    .fad.fa-holly-berry:after {
      content: "\10f7aa";
    }

    .fad.fa-home:after {
      content: "\10f015";
    }

    .fad.fa-home-alt:after {
      content: "\10f80a";
    }

    .fad.fa-home-heart:after {
      content: "\10f4c9";
    }

    .fad.fa-home-lg:after {
      content: "\10f80b";
    }

    .fad.fa-home-lg-alt:after {
      content: "\10f80c";
    }

    .fad.fa-hood-cloak:after {
      content: "\10f6ef";
    }

    .fad.fa-horizontal-rule:after {
      content: "\10f86c";
    }

    .fad.fa-horse:after {
      content: "\10f6f0";
    }

    .fad.fa-horse-head:after {
      content: "\10f7ab";
    }

    .fad.fa-horse-saddle:after {
      content: "\10f8c3";
    }

    .fad.fa-hospital:after {
      content: "\10f0f8";
    }

    .fad.fa-hospital-alt:after {
      content: "\10f47d";
    }

    .fad.fa-hospital-symbol:after {
      content: "\10f47e";
    }

    .fad.fa-hospital-user:after {
      content: "\10f80d";
    }

    .fad.fa-hospitals:after {
      content: "\10f80e";
    }

    .fad.fa-hot-tub:after {
      content: "\10f593";
    }

    .fad.fa-hotdog:after {
      content: "\10f80f";
    }

    .fad.fa-hotel:after {
      content: "\10f594";
    }

    .fad.fa-hourglass:after {
      content: "\10f254";
    }

    .fad.fa-hourglass-end:after {
      content: "\10f253";
    }

    .fad.fa-hourglass-half:after {
      content: "\10f252";
    }

    .fad.fa-hourglass-start:after {
      content: "\10f251";
    }

    .fad.fa-house-damage:after {
      content: "\10f6f1";
    }

    .fad.fa-house-flood:after {
      content: "\10f74f";
    }

    .fad.fa-hryvnia:after {
      content: "\10f6f2";
    }

    .fad.fa-humidity:after {
      content: "\10f750";
    }

    .fad.fa-hurricane:after {
      content: "\10f751";
    }

    .fad.fa-i-cursor:after {
      content: "\10f246";
    }

    .fad.fa-ice-cream:after {
      content: "\10f810";
    }

    .fad.fa-ice-skate:after {
      content: "\10f7ac";
    }

    .fad.fa-icicles:after {
      content: "\10f7ad";
    }

    .fad.fa-icons:after {
      content: "\10f86d";
    }

    .fad.fa-icons-alt:after {
      content: "\10f86e";
    }

    .fad.fa-id-badge:after {
      content: "\10f2c1";
    }

    .fad.fa-id-card:after {
      content: "\10f2c2";
    }

    .fad.fa-id-card-alt:after {
      content: "\10f47f";
    }

    .fad.fa-igloo:after {
      content: "\10f7ae";
    }

    .fad.fa-image:after {
      content: "\10f03e";
    }

    .fad.fa-image-polaroid:after {
      content: "\10f8c4";
    }

    .fad.fa-images:after {
      content: "\10f302";
    }

    .fad.fa-inbox:after {
      content: "\10f01c";
    }

    .fad.fa-inbox-in:after {
      content: "\10f310";
    }

    .fad.fa-inbox-out:after {
      content: "\10f311";
    }

    .fad.fa-indent:after {
      content: "\10f03c";
    }

    .fad.fa-industry:after {
      content: "\10f275";
    }

    .fad.fa-industry-alt:after {
      content: "\10f3b3";
    }

    .fad.fa-infinity:after {
      content: "\10f534";
    }

    .fad.fa-info:after {
      content: "\10f129";
    }

    .fad.fa-info-circle:after {
      content: "\10f05a";
    }

    .fad.fa-info-square:after {
      content: "\10f30f";
    }

    .fad.fa-inhaler:after {
      content: "\10f5f9";
    }

    .fad.fa-integral:after {
      content: "\10f667";
    }

    .fad.fa-intersection:after {
      content: "\10f668";
    }

    .fad.fa-inventory:after {
      content: "\10f480";
    }

    .fad.fa-island-tropical:after {
      content: "\10f811";
    }

    .fad.fa-italic:after {
      content: "\10f033";
    }

    .fad.fa-jack-o-lantern:after {
      content: "\10f30e";
    }

    .fad.fa-jedi:after {
      content: "\10f669";
    }

    .fad.fa-joint:after {
      content: "\10f595";
    }

    .fad.fa-journal-whills:after {
      content: "\10f66a";
    }

    .fad.fa-joystick:after {
      content: "\10f8c5";
    }

    .fad.fa-jug:after {
      content: "\10f8c6";
    }

    .fad.fa-kaaba:after {
      content: "\10f66b";
    }

    .fad.fa-kazoo:after {
      content: "\10f8c7";
    }

    .fad.fa-kerning:after {
      content: "\10f86f";
    }

    .fad.fa-key:after {
      content: "\10f084";
    }

    .fad.fa-key-skeleton:after {
      content: "\10f6f3";
    }

    .fad.fa-keyboard:after {
      content: "\10f11c";
    }

    .fad.fa-keynote:after {
      content: "\10f66c";
    }

    .fad.fa-khanda:after {
      content: "\10f66d";
    }

    .fad.fa-kidneys:after {
      content: "\10f5fb";
    }

    .fad.fa-kiss:after {
      content: "\10f596";
    }

    .fad.fa-kiss-beam:after {
      content: "\10f597";
    }

    .fad.fa-kiss-wink-heart:after {
      content: "\10f598";
    }

    .fad.fa-kite:after {
      content: "\10f6f4";
    }

    .fad.fa-kiwi-bird:after {
      content: "\10f535";
    }

    .fad.fa-knife-kitchen:after {
      content: "\10f6f5";
    }

    .fad.fa-lambda:after {
      content: "\10f66e";
    }

    .fad.fa-lamp:after {
      content: "\10f4ca";
    }

    .fad.fa-landmark:after {
      content: "\10f66f";
    }

    .fad.fa-landmark-alt:after {
      content: "\10f752";
    }

    .fad.fa-language:after {
      content: "\10f1ab";
    }

    .fad.fa-laptop:after {
      content: "\10f109";
    }

    .fad.fa-laptop-code:after {
      content: "\10f5fc";
    }

    .fad.fa-laptop-medical:after {
      content: "\10f812";
    }

    .fad.fa-lasso:after {
      content: "\10f8c8";
    }

    .fad.fa-laugh:after {
      content: "\10f599";
    }

    .fad.fa-laugh-beam:after {
      content: "\10f59a";
    }

    .fad.fa-laugh-squint:after {
      content: "\10f59b";
    }

    .fad.fa-laugh-wink:after {
      content: "\10f59c";
    }

    .fad.fa-layer-group:after {
      content: "\10f5fd";
    }

    .fad.fa-layer-minus:after {
      content: "\10f5fe";
    }

    .fad.fa-layer-plus:after {
      content: "\10f5ff";
    }

    .fad.fa-leaf:after {
      content: "\10f06c";
    }

    .fad.fa-leaf-heart:after {
      content: "\10f4cb";
    }

    .fad.fa-leaf-maple:after {
      content: "\10f6f6";
    }

    .fad.fa-leaf-oak:after {
      content: "\10f6f7";
    }

    .fad.fa-lemon:after {
      content: "\10f094";
    }

    .fad.fa-less-than:after {
      content: "\10f536";
    }

    .fad.fa-less-than-equal:after {
      content: "\10f537";
    }

    .fad.fa-level-down:after {
      content: "\10f149";
    }

    .fad.fa-level-down-alt:after {
      content: "\10f3be";
    }

    .fad.fa-level-up:after {
      content: "\10f148";
    }

    .fad.fa-level-up-alt:after {
      content: "\10f3bf";
    }

    .fad.fa-life-ring:after {
      content: "\10f1cd";
    }

    .fad.fa-lightbulb:after {
      content: "\10f0eb";
    }

    .fad.fa-lightbulb-dollar:after {
      content: "\10f670";
    }

    .fad.fa-lightbulb-exclamation:after {
      content: "\10f671";
    }

    .fad.fa-lightbulb-on:after {
      content: "\10f672";
    }

    .fad.fa-lightbulb-slash:after {
      content: "\10f673";
    }

    .fad.fa-lights-holiday:after {
      content: "\10f7b2";
    }

    .fad.fa-line-columns:after {
      content: "\10f870";
    }

    .fad.fa-line-height:after {
      content: "\10f871";
    }

    .fad.fa-link:after {
      content: "\10f0c1";
    }

    .fad.fa-lips:after {
      content: "\10f600";
    }

    .fad.fa-lira-sign:after {
      content: "\10f195";
    }

    .fad.fa-list:after {
      content: "\10f03a";
    }

    .fad.fa-list-alt:after {
      content: "\10f022";
    }

    .fad.fa-list-music:after {
      content: "\10f8c9";
    }

    .fad.fa-list-ol:after {
      content: "\10f0cb";
    }

    .fad.fa-list-ul:after {
      content: "\10f0ca";
    }

    .fad.fa-location:after {
      content: "\10f601";
    }

    .fad.fa-location-arrow:after {
      content: "\10f124";
    }

    .fad.fa-location-circle:after {
      content: "\10f602";
    }

    .fad.fa-location-slash:after {
      content: "\10f603";
    }

    .fad.fa-lock:after {
      content: "\10f023";
    }

    .fad.fa-lock-alt:after {
      content: "\10f30d";
    }

    .fad.fa-lock-open:after {
      content: "\10f3c1";
    }

    .fad.fa-lock-open-alt:after {
      content: "\10f3c2";
    }

    .fad.fa-long-arrow-alt-down:after {
      content: "\10f309";
    }

    .fad.fa-long-arrow-alt-left:after {
      content: "\10f30a";
    }

    .fad.fa-long-arrow-alt-right:after {
      content: "\10f30b";
    }

    .fad.fa-long-arrow-alt-up:after {
      content: "\10f30c";
    }

    .fad.fa-long-arrow-down:after {
      content: "\10f175";
    }

    .fad.fa-long-arrow-left:after {
      content: "\10f177";
    }

    .fad.fa-long-arrow-right:after {
      content: "\10f178";
    }

    .fad.fa-long-arrow-up:after {
      content: "\10f176";
    }

    .fad.fa-loveseat:after {
      content: "\10f4cc";
    }

    .fad.fa-low-vision:after {
      content: "\10f2a8";
    }

    .fad.fa-luchador:after {
      content: "\10f455";
    }

    .fad.fa-luggage-cart:after {
      content: "\10f59d";
    }

    .fad.fa-lungs:after {
      content: "\10f604";
    }

    .fad.fa-mace:after {
      content: "\10f6f8";
    }

    .fad.fa-magic:after {
      content: "\10f0d0";
    }

    .fad.fa-magnet:after {
      content: "\10f076";
    }

    .fad.fa-mail-bulk:after {
      content: "\10f674";
    }

    .fad.fa-mailbox:after {
      content: "\10f813";
    }

    .fad.fa-male:after {
      content: "\10f183";
    }

    .fad.fa-mandolin:after {
      content: "\10f6f9";
    }

    .fad.fa-map:after {
      content: "\10f279";
    }

    .fad.fa-map-marked:after {
      content: "\10f59f";
    }

    .fad.fa-map-marked-alt:after {
      content: "\10f5a0";
    }

    .fad.fa-map-marker:after {
      content: "\10f041";
    }

    .fad.fa-map-marker-alt:after {
      content: "\10f3c5";
    }

    .fad.fa-map-marker-alt-slash:after {
      content: "\10f605";
    }

    .fad.fa-map-marker-check:after {
      content: "\10f606";
    }

    .fad.fa-map-marker-edit:after {
      content: "\10f607";
    }

    .fad.fa-map-marker-exclamation:after {
      content: "\10f608";
    }

    .fad.fa-map-marker-minus:after {
      content: "\10f609";
    }

    .fad.fa-map-marker-plus:after {
      content: "\10f60a";
    }

    .fad.fa-map-marker-question:after {
      content: "\10f60b";
    }

    .fad.fa-map-marker-slash:after {
      content: "\10f60c";
    }

    .fad.fa-map-marker-smile:after {
      content: "\10f60d";
    }

    .fad.fa-map-marker-times:after {
      content: "\10f60e";
    }

    .fad.fa-map-pin:after {
      content: "\10f276";
    }

    .fad.fa-map-signs:after {
      content: "\10f277";
    }

    .fad.fa-marker:after {
      content: "\10f5a1";
    }

    .fad.fa-mars:after {
      content: "\10f222";
    }

    .fad.fa-mars-double:after {
      content: "\10f227";
    }

    .fad.fa-mars-stroke:after {
      content: "\10f229";
    }

    .fad.fa-mars-stroke-h:after {
      content: "\10f22b";
    }

    .fad.fa-mars-stroke-v:after {
      content: "\10f22a";
    }

    .fad.fa-mask:after {
      content: "\10f6fa";
    }

    .fad.fa-meat:after {
      content: "\10f814";
    }

    .fad.fa-medal:after {
      content: "\10f5a2";
    }

    .fad.fa-medkit:after {
      content: "\10f0fa";
    }

    .fad.fa-megaphone:after {
      content: "\10f675";
    }

    .fad.fa-meh:after {
      content: "\10f11a";
    }

    .fad.fa-meh-blank:after {
      content: "\10f5a4";
    }

    .fad.fa-meh-rolling-eyes:after {
      content: "\10f5a5";
    }

    .fad.fa-memory:after {
      content: "\10f538";
    }

    .fad.fa-menorah:after {
      content: "\10f676";
    }

    .fad.fa-mercury:after {
      content: "\10f223";
    }

    .fad.fa-meteor:after {
      content: "\10f753";
    }

    .fad.fa-microchip:after {
      content: "\10f2db";
    }

    .fad.fa-microphone:after {
      content: "\10f130";
    }

    .fad.fa-microphone-alt:after {
      content: "\10f3c9";
    }

    .fad.fa-microphone-alt-slash:after {
      content: "\10f539";
    }

    .fad.fa-microphone-slash:after {
      content: "\10f131";
    }

    .fad.fa-microphone-stand:after {
      content: "\10f8cb";
    }

    .fad.fa-microscope:after {
      content: "\10f610";
    }

    .fad.fa-mind-share:after {
      content: "\10f677";
    }

    .fad.fa-minus:after {
      content: "\10f068";
    }

    .fad.fa-minus-circle:after {
      content: "\10f056";
    }

    .fad.fa-minus-hexagon:after {
      content: "\10f307";
    }

    .fad.fa-minus-octagon:after {
      content: "\10f308";
    }

    .fad.fa-minus-square:after {
      content: "\10f146";
    }

    .fad.fa-mistletoe:after {
      content: "\10f7b4";
    }

    .fad.fa-mitten:after {
      content: "\10f7b5";
    }

    .fad.fa-mobile:after {
      content: "\10f10b";
    }

    .fad.fa-mobile-alt:after {
      content: "\10f3cd";
    }

    .fad.fa-mobile-android:after {
      content: "\10f3ce";
    }

    .fad.fa-mobile-android-alt:after {
      content: "\10f3cf";
    }

    .fad.fa-money-bill:after {
      content: "\10f0d6";
    }

    .fad.fa-money-bill-alt:after {
      content: "\10f3d1";
    }

    .fad.fa-money-bill-wave:after {
      content: "\10f53a";
    }

    .fad.fa-money-bill-wave-alt:after {
      content: "\10f53b";
    }

    .fad.fa-money-check:after {
      content: "\10f53c";
    }

    .fad.fa-money-check-alt:after {
      content: "\10f53d";
    }

    .fad.fa-money-check-edit:after {
      content: "\10f872";
    }

    .fad.fa-money-check-edit-alt:after {
      content: "\10f873";
    }

    .fad.fa-monitor-heart-rate:after {
      content: "\10f611";
    }

    .fad.fa-monkey:after {
      content: "\10f6fb";
    }

    .fad.fa-monument:after {
      content: "\10f5a6";
    }

    .fad.fa-moon:after {
      content: "\10f186";
    }

    .fad.fa-moon-cloud:after {
      content: "\10f754";
    }

    .fad.fa-moon-stars:after {
      content: "\10f755";
    }

    .fad.fa-mortar-pestle:after {
      content: "\10f5a7";
    }

    .fad.fa-mosque:after {
      content: "\10f678";
    }

    .fad.fa-motorcycle:after {
      content: "\10f21c";
    }

    .fad.fa-mountain:after {
      content: "\10f6fc";
    }

    .fad.fa-mountains:after {
      content: "\10f6fd";
    }

    .fad.fa-mouse:after {
      content: "\10f8cc";
    }

    .fad.fa-mouse-alt:after {
      content: "\10f8cd";
    }

    .fad.fa-mouse-pointer:after {
      content: "\10f245";
    }

    .fad.fa-mp3-player:after {
      content: "\10f8ce";
    }

    .fad.fa-mug:after {
      content: "\10f874";
    }

    .fad.fa-mug-hot:after {
      content: "\10f7b6";
    }

    .fad.fa-mug-marshmallows:after {
      content: "\10f7b7";
    }

    .fad.fa-mug-tea:after {
      content: "\10f875";
    }

    .fad.fa-music:after {
      content: "\10f001";
    }

    .fad.fa-music-alt:after {
      content: "\10f8cf";
    }

    .fad.fa-music-alt-slash:after {
      content: "\10f8d0";
    }

    .fad.fa-music-slash:after {
      content: "\10f8d1";
    }

    .fad.fa-narwhal:after {
      content: "\10f6fe";
    }

    .fad.fa-network-wired:after {
      content: "\10f6ff";
    }

    .fad.fa-neuter:after {
      content: "\10f22c";
    }

    .fad.fa-newspaper:after {
      content: "\10f1ea";
    }

    .fad.fa-not-equal:after {
      content: "\10f53e";
    }

    .fad.fa-notes-medical:after {
      content: "\10f481";
    }

    .fad.fa-object-group:after {
      content: "\10f247";
    }

    .fad.fa-object-ungroup:after {
      content: "\10f248";
    }

    .fad.fa-octagon:after {
      content: "\10f306";
    }

    .fad.fa-oil-can:after {
      content: "\10f613";
    }

    .fad.fa-oil-temp:after {
      content: "\10f614";
    }

    .fad.fa-om:after {
      content: "\10f679";
    }

    .fad.fa-omega:after {
      content: "\10f67a";
    }

    .fad.fa-ornament:after {
      content: "\10f7b8";
    }

    .fad.fa-otter:after {
      content: "\10f700";
    }

    .fad.fa-outdent:after {
      content: "\10f03b";
    }

    .fad.fa-overline:after {
      content: "\10f876";
    }

    .fad.fa-page-break:after {
      content: "\10f877";
    }

    .fad.fa-pager:after {
      content: "\10f815";
    }

    .fad.fa-paint-brush:after {
      content: "\10f1fc";
    }

    .fad.fa-paint-brush-alt:after {
      content: "\10f5a9";
    }

    .fad.fa-paint-roller:after {
      content: "\10f5aa";
    }

    .fad.fa-palette:after {
      content: "\10f53f";
    }

    .fad.fa-pallet:after {
      content: "\10f482";
    }

    .fad.fa-pallet-alt:after {
      content: "\10f483";
    }

    .fad.fa-paper-plane:after {
      content: "\10f1d8";
    }

    .fad.fa-paperclip:after {
      content: "\10f0c6";
    }

    .fad.fa-parachute-box:after {
      content: "\10f4cd";
    }

    .fad.fa-paragraph:after {
      content: "\10f1dd";
    }

    .fad.fa-paragraph-rtl:after {
      content: "\10f878";
    }

    .fad.fa-parking:after {
      content: "\10f540";
    }

    .fad.fa-parking-circle:after {
      content: "\10f615";
    }

    .fad.fa-parking-circle-slash:after {
      content: "\10f616";
    }

    .fad.fa-parking-slash:after {
      content: "\10f617";
    }

    .fad.fa-passport:after {
      content: "\10f5ab";
    }

    .fad.fa-pastafarianism:after {
      content: "\10f67b";
    }

    .fad.fa-paste:after {
      content: "\10f0ea";
    }

    .fad.fa-pause:after {
      content: "\10f04c";
    }

    .fad.fa-pause-circle:after {
      content: "\10f28b";
    }

    .fad.fa-paw:after {
      content: "\10f1b0";
    }

    .fad.fa-paw-alt:after {
      content: "\10f701";
    }

    .fad.fa-paw-claws:after {
      content: "\10f702";
    }

    .fad.fa-peace:after {
      content: "\10f67c";
    }

    .fad.fa-pegasus:after {
      content: "\10f703";
    }

    .fad.fa-pen:after {
      content: "\10f304";
    }

    .fad.fa-pen-alt:after {
      content: "\10f305";
    }

    .fad.fa-pen-fancy:after {
      content: "\10f5ac";
    }

    .fad.fa-pen-nib:after {
      content: "\10f5ad";
    }

    .fad.fa-pen-square:after {
      content: "\10f14b";
    }

    .fad.fa-pencil:after {
      content: "\10f040";
    }

    .fad.fa-pencil-alt:after {
      content: "\10f303";
    }

    .fad.fa-pencil-paintbrush:after {
      content: "\10f618";
    }

    .fad.fa-pencil-ruler:after {
      content: "\10f5ae";
    }

    .fad.fa-pennant:after {
      content: "\10f456";
    }

    .fad.fa-people-carry:after {
      content: "\10f4ce";
    }

    .fad.fa-pepper-hot:after {
      content: "\10f816";
    }

    .fad.fa-percent:after {
      content: "\10f295";
    }

    .fad.fa-percentage:after {
      content: "\10f541";
    }

    .fad.fa-person-booth:after {
      content: "\10f756";
    }

    .fad.fa-person-carry:after {
      content: "\10f4cf";
    }

    .fad.fa-person-dolly:after {
      content: "\10f4d0";
    }

    .fad.fa-person-dolly-empty:after {
      content: "\10f4d1";
    }

    .fad.fa-person-sign:after {
      content: "\10f757";
    }

    .fad.fa-phone:after {
      content: "\10f095";
    }

    .fad.fa-phone-alt:after {
      content: "\10f879";
    }

    .fad.fa-phone-laptop:after {
      content: "\10f87a";
    }

    .fad.fa-phone-office:after {
      content: "\10f67d";
    }

    .fad.fa-phone-plus:after {
      content: "\10f4d2";
    }

    .fad.fa-phone-rotary:after {
      content: "\10f8d3";
    }

    .fad.fa-phone-slash:after {
      content: "\10f3dd";
    }

    .fad.fa-phone-square:after {
      content: "\10f098";
    }

    .fad.fa-phone-square-alt:after {
      content: "\10f87b";
    }

    .fad.fa-phone-volume:after {
      content: "\10f2a0";
    }

    .fad.fa-photo-video:after {
      content: "\10f87c";
    }

    .fad.fa-pi:after {
      content: "\10f67e";
    }

    .fad.fa-piano:after {
      content: "\10f8d4";
    }

    .fad.fa-piano-keyboard:after {
      content: "\10f8d5";
    }

    .fad.fa-pie:after {
      content: "\10f705";
    }

    .fad.fa-pig:after {
      content: "\10f706";
    }

    .fad.fa-piggy-bank:after {
      content: "\10f4d3";
    }

    .fad.fa-pills:after {
      content: "\10f484";
    }

    .fad.fa-pizza:after {
      content: "\10f817";
    }

    .fad.fa-pizza-slice:after {
      content: "\10f818";
    }

    .fad.fa-place-of-worship:after {
      content: "\10f67f";
    }

    .fad.fa-plane:after {
      content: "\10f072";
    }

    .fad.fa-plane-alt:after {
      content: "\10f3de";
    }

    .fad.fa-plane-arrival:after {
      content: "\10f5af";
    }

    .fad.fa-plane-departure:after {
      content: "\10f5b0";
    }

    .fad.fa-play:after {
      content: "\10f04b";
    }

    .fad.fa-play-circle:after {
      content: "\10f144";
    }

    .fad.fa-plug:after {
      content: "\10f1e6";
    }

    .fad.fa-plus:after {
      content: "\10f067";
    }

    .fad.fa-plus-circle:after {
      content: "\10f055";
    }

    .fad.fa-plus-hexagon:after {
      content: "\10f300";
    }

    .fad.fa-plus-octagon:after {
      content: "\10f301";
    }

    .fad.fa-plus-square:after {
      content: "\10f0fe";
    }

    .fad.fa-podcast:after {
      content: "\10f2ce";
    }

    .fad.fa-podium:after {
      content: "\10f680";
    }

    .fad.fa-podium-star:after {
      content: "\10f758";
    }

    .fad.fa-poll:after {
      content: "\10f681";
    }

    .fad.fa-poll-h:after {
      content: "\10f682";
    }

    .fad.fa-poll-people:after {
      content: "\10f759";
    }

    .fad.fa-poo:after {
      content: "\10f2fe";
    }

    .fad.fa-poo-storm:after {
      content: "\10f75a";
    }

    .fad.fa-poop:after {
      content: "\10f619";
    }

    .fad.fa-popcorn:after {
      content: "\10f819";
    }

    .fad.fa-portrait:after {
      content: "\10f3e0";
    }

    .fad.fa-pound-sign:after {
      content: "\10f154";
    }

    .fad.fa-power-off:after {
      content: "\10f011";
    }

    .fad.fa-pray:after {
      content: "\10f683";
    }

    .fad.fa-praying-hands:after {
      content: "\10f684";
    }

    .fad.fa-prescription:after {
      content: "\10f5b1";
    }

    .fad.fa-prescription-bottle:after {
      content: "\10f485";
    }

    .fad.fa-prescription-bottle-alt:after {
      content: "\10f486";
    }

    .fad.fa-presentation:after {
      content: "\10f685";
    }

    .fad.fa-print:after {
      content: "\10f02f";
    }

    .fad.fa-print-search:after {
      content: "\10f81a";
    }

    .fad.fa-print-slash:after {
      content: "\10f686";
    }

    .fad.fa-procedures:after {
      content: "\10f487";
    }

    .fad.fa-project-diagram:after {
      content: "\10f542";
    }

    .fad.fa-projector:after {
      content: "\10f8d6";
    }

    .fad.fa-pumpkin:after {
      content: "\10f707";
    }

    .fad.fa-puzzle-piece:after {
      content: "\10f12e";
    }

    .fad.fa-qrcode:after {
      content: "\10f029";
    }

    .fad.fa-question:after {
      content: "\10f128";
    }

    .fad.fa-question-circle:after {
      content: "\10f059";
    }

    .fad.fa-question-square:after {
      content: "\10f2fd";
    }

    .fad.fa-quidditch:after {
      content: "\10f458";
    }

    .fad.fa-quote-left:after {
      content: "\10f10d";
    }

    .fad.fa-quote-right:after {
      content: "\10f10e";
    }

    .fad.fa-quran:after {
      content: "\10f687";
    }

    .fad.fa-rabbit:after {
      content: "\10f708";
    }

    .fad.fa-rabbit-fast:after {
      content: "\10f709";
    }

    .fad.fa-racquet:after {
      content: "\10f45a";
    }

    .fad.fa-radiation:after {
      content: "\10f7b9";
    }

    .fad.fa-radiation-alt:after {
      content: "\10f7ba";
    }

    .fad.fa-radio:after {
      content: "\10f8d7";
    }

    .fad.fa-radio-alt:after {
      content: "\10f8d8";
    }

    .fad.fa-rainbow:after {
      content: "\10f75b";
    }

    .fad.fa-raindrops:after {
      content: "\10f75c";
    }

    .fad.fa-ram:after {
      content: "\10f70a";
    }

    .fad.fa-ramp-loading:after {
      content: "\10f4d4";
    }

    .fad.fa-random:after {
      content: "\10f074";
    }

    .fad.fa-receipt:after {
      content: "\10f543";
    }

    .fad.fa-record-vinyl:after {
      content: "\10f8d9";
    }

    .fad.fa-rectangle-landscape:after {
      content: "\10f2fa";
    }

    .fad.fa-rectangle-portrait:after {
      content: "\10f2fb";
    }

    .fad.fa-rectangle-wide:after {
      content: "\10f2fc";
    }

    .fad.fa-recycle:after {
      content: "\10f1b8";
    }

    .fad.fa-redo:after {
      content: "\10f01e";
    }

    .fad.fa-redo-alt:after {
      content: "\10f2f9";
    }

    .fad.fa-registered:after {
      content: "\10f25d";
    }

    .fad.fa-remove-format:after {
      content: "\10f87d";
    }

    .fad.fa-repeat:after {
      content: "\10f363";
    }

    .fad.fa-repeat-1:after {
      content: "\10f365";
    }

    .fad.fa-repeat-1-alt:after {
      content: "\10f366";
    }

    .fad.fa-repeat-alt:after {
      content: "\10f364";
    }

    .fad.fa-reply:after {
      content: "\10f3e5";
    }

    .fad.fa-reply-all:after {
      content: "\10f122";
    }

    .fad.fa-republican:after {
      content: "\10f75e";
    }

    .fad.fa-restroom:after {
      content: "\10f7bd";
    }

    .fad.fa-retweet:after {
      content: "\10f079";
    }

    .fad.fa-retweet-alt:after {
      content: "\10f361";
    }

    .fad.fa-ribbon:after {
      content: "\10f4d6";
    }

    .fad.fa-ring:after {
      content: "\10f70b";
    }

    .fad.fa-rings-wedding:after {
      content: "\10f81b";
    }

    .fad.fa-road:after {
      content: "\10f018";
    }

    .fad.fa-robot:after {
      content: "\10f544";
    }

    .fad.fa-rocket:after {
      content: "\10f135";
    }

    .fad.fa-route:after {
      content: "\10f4d7";
    }

    .fad.fa-route-highway:after {
      content: "\10f61a";
    }

    .fad.fa-route-interstate:after {
      content: "\10f61b";
    }

    .fad.fa-router:after {
      content: "\10f8da";
    }

    .fad.fa-rss:after {
      content: "\10f09e";
    }

    .fad.fa-rss-square:after {
      content: "\10f143";
    }

    .fad.fa-ruble-sign:after {
      content: "\10f158";
    }

    .fad.fa-ruler:after {
      content: "\10f545";
    }

    .fad.fa-ruler-combined:after {
      content: "\10f546";
    }

    .fad.fa-ruler-horizontal:after {
      content: "\10f547";
    }

    .fad.fa-ruler-triangle:after {
      content: "\10f61c";
    }

    .fad.fa-ruler-vertical:after {
      content: "\10f548";
    }

    .fad.fa-running:after {
      content: "\10f70c";
    }

    .fad.fa-rupee-sign:after {
      content: "\10f156";
    }

    .fad.fa-rv:after {
      content: "\10f7be";
    }

    .fad.fa-sack:after {
      content: "\10f81c";
    }

    .fad.fa-sack-dollar:after {
      content: "\10f81d";
    }

    .fad.fa-sad-cry:after {
      content: "\10f5b3";
    }

    .fad.fa-sad-tear:after {
      content: "\10f5b4";
    }

    .fad.fa-salad:after {
      content: "\10f81e";
    }

    .fad.fa-sandwich:after {
      content: "\10f81f";
    }

    .fad.fa-satellite:after {
      content: "\10f7bf";
    }

    .fad.fa-satellite-dish:after {
      content: "\10f7c0";
    }

    .fad.fa-sausage:after {
      content: "\10f820";
    }

    .fad.fa-save:after {
      content: "\10f0c7";
    }

    .fad.fa-sax-hot:after {
      content: "\10f8db";
    }

    .fad.fa-saxophone:after {
      content: "\10f8dc";
    }

    .fad.fa-scalpel:after {
      content: "\10f61d";
    }

    .fad.fa-scalpel-path:after {
      content: "\10f61e";
    }

    .fad.fa-scanner:after {
      content: "\10f488";
    }

    .fad.fa-scanner-image:after {
      content: "\10f8f3";
    }

    .fad.fa-scanner-keyboard:after {
      content: "\10f489";
    }

    .fad.fa-scanner-touchscreen:after {
      content: "\10f48a";
    }

    .fad.fa-scarecrow:after {
      content: "\10f70d";
    }

    .fad.fa-scarf:after {
      content: "\10f7c1";
    }

    .fad.fa-school:after {
      content: "\10f549";
    }

    .fad.fa-screwdriver:after {
      content: "\10f54a";
    }

    .fad.fa-scroll:after {
      content: "\10f70e";
    }

    .fad.fa-scroll-old:after {
      content: "\10f70f";
    }

    .fad.fa-scrubber:after {
      content: "\10f2f8";
    }

    .fad.fa-scythe:after {
      content: "\10f710";
    }

    .fad.fa-sd-card:after {
      content: "\10f7c2";
    }

    .fad.fa-search:after {
      content: "\10f002";
    }

    .fad.fa-search-dollar:after {
      content: "\10f688";
    }

    .fad.fa-search-location:after {
      content: "\10f689";
    }

    .fad.fa-search-minus:after {
      content: "\10f010";
    }

    .fad.fa-search-plus:after {
      content: "\10f00e";
    }

    .fad.fa-seedling:after {
      content: "\10f4d8";
    }

    .fad.fa-send-back:after {
      content: "\10f87e";
    }

    .fad.fa-send-backward:after {
      content: "\10f87f";
    }

    .fad.fa-server:after {
      content: "\10f233";
    }

    .fad.fa-shapes:after {
      content: "\10f61f";
    }

    .fad.fa-share:after {
      content: "\10f064";
    }

    .fad.fa-share-all:after {
      content: "\10f367";
    }

    .fad.fa-share-alt:after {
      content: "\10f1e0";
    }

    .fad.fa-share-alt-square:after {
      content: "\10f1e1";
    }

    .fad.fa-share-square:after {
      content: "\10f14d";
    }

    .fad.fa-sheep:after {
      content: "\10f711";
    }

    .fad.fa-shekel-sign:after {
      content: "\10f20b";
    }

    .fad.fa-shield:after {
      content: "\10f132";
    }

    .fad.fa-shield-alt:after {
      content: "\10f3ed";
    }

    .fad.fa-shield-check:after {
      content: "\10f2f7";
    }

    .fad.fa-shield-cross:after {
      content: "\10f712";
    }

    .fad.fa-ship:after {
      content: "\10f21a";
    }

    .fad.fa-shipping-fast:after {
      content: "\10f48b";
    }

    .fad.fa-shipping-timed:after {
      content: "\10f48c";
    }

    .fad.fa-shish-kebab:after {
      content: "\10f821";
    }

    .fad.fa-shoe-prints:after {
      content: "\10f54b";
    }

    .fad.fa-shopping-bag:after {
      content: "\10f290";
    }

    .fad.fa-shopping-basket:after {
      content: "\10f291";
    }

    .fad.fa-shopping-cart:after {
      content: "\10f07a";
    }

    .fad.fa-shovel:after {
      content: "\10f713";
    }

    .fad.fa-shovel-snow:after {
      content: "\10f7c3";
    }

    .fad.fa-shower:after {
      content: "\10f2cc";
    }

    .fad.fa-shredder:after {
      content: "\10f68a";
    }

    .fad.fa-shuttle-van:after {
      content: "\10f5b6";
    }

    .fad.fa-shuttlecock:after {
      content: "\10f45b";
    }

    .fad.fa-sickle:after {
      content: "\10f822";
    }

    .fad.fa-sigma:after {
      content: "\10f68b";
    }

    .fad.fa-sign:after {
      content: "\10f4d9";
    }

    .fad.fa-sign-in:after {
      content: "\10f090";
    }

    .fad.fa-sign-in-alt:after {
      content: "\10f2f6";
    }

    .fad.fa-sign-language:after {
      content: "\10f2a7";
    }

    .fad.fa-sign-out:after {
      content: "\10f08b";
    }

    .fad.fa-sign-out-alt:after {
      content: "\10f2f5";
    }

    .fad.fa-signal:after {
      content: "\10f012";
    }

    .fad.fa-signal-1:after {
      content: "\10f68c";
    }

    .fad.fa-signal-2:after {
      content: "\10f68d";
    }

    .fad.fa-signal-3:after {
      content: "\10f68e";
    }

    .fad.fa-signal-4:after {
      content: "\10f68f";
    }

    .fad.fa-signal-alt:after {
      content: "\10f690";
    }

    .fad.fa-signal-alt-1:after {
      content: "\10f691";
    }

    .fad.fa-signal-alt-2:after {
      content: "\10f692";
    }

    .fad.fa-signal-alt-3:after {
      content: "\10f693";
    }

    .fad.fa-signal-alt-slash:after {
      content: "\10f694";
    }

    .fad.fa-signal-slash:after {
      content: "\10f695";
    }

    .fad.fa-signal-stream:after {
      content: "\10f8dd";
    }

    .fad.fa-signature:after {
      content: "\10f5b7";
    }

    .fad.fa-sim-card:after {
      content: "\10f7c4";
    }

    .fad.fa-sitemap:after {
      content: "\10f0e8";
    }

    .fad.fa-skating:after {
      content: "\10f7c5";
    }

    .fad.fa-skeleton:after {
      content: "\10f620";
    }

    .fad.fa-ski-jump:after {
      content: "\10f7c7";
    }

    .fad.fa-ski-lift:after {
      content: "\10f7c8";
    }

    .fad.fa-skiing:after {
      content: "\10f7c9";
    }

    .fad.fa-skiing-nordic:after {
      content: "\10f7ca";
    }

    .fad.fa-skull:after {
      content: "\10f54c";
    }

    .fad.fa-skull-cow:after {
      content: "\10f8de";
    }

    .fad.fa-skull-crossbones:after {
      content: "\10f714";
    }

    .fad.fa-slash:after {
      content: "\10f715";
    }

    .fad.fa-sledding:after {
      content: "\10f7cb";
    }

    .fad.fa-sleigh:after {
      content: "\10f7cc";
    }

    .fad.fa-sliders-h:after {
      content: "\10f1de";
    }

    .fad.fa-sliders-h-square:after {
      content: "\10f3f0";
    }

    .fad.fa-sliders-v:after {
      content: "\10f3f1";
    }

    .fad.fa-sliders-v-square:after {
      content: "\10f3f2";
    }

    .fad.fa-smile:after {
      content: "\10f118";
    }

    .fad.fa-smile-beam:after {
      content: "\10f5b8";
    }

    .fad.fa-smile-plus:after {
      content: "\10f5b9";
    }

    .fad.fa-smile-wink:after {
      content: "\10f4da";
    }

    .fad.fa-smog:after {
      content: "\10f75f";
    }

    .fad.fa-smoke:after {
      content: "\10f760";
    }

    .fad.fa-smoking:after {
      content: "\10f48d";
    }

    .fad.fa-smoking-ban:after {
      content: "\10f54d";
    }

    .fad.fa-sms:after {
      content: "\10f7cd";
    }

    .fad.fa-snake:after {
      content: "\10f716";
    }

    .fad.fa-snooze:after {
      content: "\10f880";
    }

    .fad.fa-snow-blowing:after {
      content: "\10f761";
    }

    .fad.fa-snowboarding:after {
      content: "\10f7ce";
    }

    .fad.fa-snowflake:after {
      content: "\10f2dc";
    }

    .fad.fa-snowflakes:after {
      content: "\10f7cf";
    }

    .fad.fa-snowman:after {
      content: "\10f7d0";
    }

    .fad.fa-snowmobile:after {
      content: "\10f7d1";
    }

    .fad.fa-snowplow:after {
      content: "\10f7d2";
    }

    .fad.fa-socks:after {
      content: "\10f696";
    }

    .fad.fa-solar-panel:after {
      content: "\10f5ba";
    }

    .fad.fa-sort:after {
      content: "\10f0dc";
    }

    .fad.fa-sort-alpha-down:after {
      content: "\10f15d";
    }

    .fad.fa-sort-alpha-down-alt:after {
      content: "\10f881";
    }

    .fad.fa-sort-alpha-up:after {
      content: "\10f15e";
    }

    .fad.fa-sort-alpha-up-alt:after {
      content: "\10f882";
    }

    .fad.fa-sort-alt:after {
      content: "\10f883";
    }

    .fad.fa-sort-amount-down:after {
      content: "\10f160";
    }

    .fad.fa-sort-amount-down-alt:after {
      content: "\10f884";
    }

    .fad.fa-sort-amount-up:after {
      content: "\10f161";
    }

    .fad.fa-sort-amount-up-alt:after {
      content: "\10f885";
    }

    .fad.fa-sort-down:after {
      content: "\10f0dd";
    }

    .fad.fa-sort-numeric-down:after {
      content: "\10f162";
    }

    .fad.fa-sort-numeric-down-alt:after {
      content: "\10f886";
    }

    .fad.fa-sort-numeric-up:after {
      content: "\10f163";
    }

    .fad.fa-sort-numeric-up-alt:after {
      content: "\10f887";
    }

    .fad.fa-sort-shapes-down:after {
      content: "\10f888";
    }

    .fad.fa-sort-shapes-down-alt:after {
      content: "\10f889";
    }

    .fad.fa-sort-shapes-up:after {
      content: "\10f88a";
    }

    .fad.fa-sort-shapes-up-alt:after {
      content: "\10f88b";
    }

    .fad.fa-sort-size-down:after {
      content: "\10f88c";
    }

    .fad.fa-sort-size-down-alt:after {
      content: "\10f88d";
    }

    .fad.fa-sort-size-up:after {
      content: "\10f88e";
    }

    .fad.fa-sort-size-up-alt:after {
      content: "\10f88f";
    }

    .fad.fa-sort-up:after {
      content: "\10f0de";
    }

    .fad.fa-soup:after {
      content: "\10f823";
    }

    .fad.fa-spa:after {
      content: "\10f5bb";
    }

    .fad.fa-space-shuttle:after {
      content: "\10f197";
    }

    .fad.fa-spade:after {
      content: "\10f2f4";
    }

    .fad.fa-sparkles:after {
      content: "\10f890";
    }

    .fad.fa-speaker:after {
      content: "\10f8df";
    }

    .fad.fa-speakers:after {
      content: "\10f8e0";
    }

    .fad.fa-spell-check:after {
      content: "\10f891";
    }

    .fad.fa-spider:after {
      content: "\10f717";
    }

    .fad.fa-spider-black-widow:after {
      content: "\10f718";
    }

    .fad.fa-spider-web:after {
      content: "\10f719";
    }

    .fad.fa-spinner:after {
      content: "\10f110";
    }

    .fad.fa-spinner-third:after {
      content: "\10f3f4";
    }

    .fad.fa-splotch:after {
      content: "\10f5bc";
    }

    .fad.fa-spray-can:after {
      content: "\10f5bd";
    }

    .fad.fa-square:after {
      content: "\10f0c8";
    }

    .fad.fa-square-full:after {
      content: "\10f45c";
    }

    .fad.fa-square-root:after {
      content: "\10f697";
    }

    .fad.fa-square-root-alt:after {
      content: "\10f698";
    }

    .fad.fa-squirrel:after {
      content: "\10f71a";
    }

    .fad.fa-staff:after {
      content: "\10f71b";
    }

    .fad.fa-stamp:after {
      content: "\10f5bf";
    }

    .fad.fa-star:after {
      content: "\10f005";
    }

    .fad.fa-star-and-crescent:after {
      content: "\10f699";
    }

    .fad.fa-star-christmas:after {
      content: "\10f7d4";
    }

    .fad.fa-star-exclamation:after {
      content: "\10f2f3";
    }

    .fad.fa-star-half:after {
      content: "\10f089";
    }

    .fad.fa-star-half-alt:after {
      content: "\10f5c0";
    }

    .fad.fa-star-of-david:after {
      content: "\10f69a";
    }

    .fad.fa-star-of-life:after {
      content: "\10f621";
    }

    .fad.fa-stars:after {
      content: "\10f762";
    }

    .fad.fa-steak:after {
      content: "\10f824";
    }

    .fad.fa-steering-wheel:after {
      content: "\10f622";
    }

    .fad.fa-step-backward:after {
      content: "\10f048";
    }

    .fad.fa-step-forward:after {
      content: "\10f051";
    }

    .fad.fa-stethoscope:after {
      content: "\10f0f1";
    }

    .fad.fa-sticky-note:after {
      content: "\10f249";
    }

    .fad.fa-stocking:after {
      content: "\10f7d5";
    }

    .fad.fa-stomach:after {
      content: "\10f623";
    }

    .fad.fa-stop:after {
      content: "\10f04d";
    }

    .fad.fa-stop-circle:after {
      content: "\10f28d";
    }

    .fad.fa-stopwatch:after {
      content: "\10f2f2";
    }

    .fad.fa-store:after {
      content: "\10f54e";
    }

    .fad.fa-store-alt:after {
      content: "\10f54f";
    }

    .fad.fa-stream:after {
      content: "\10f550";
    }

    .fad.fa-street-view:after {
      content: "\10f21d";
    }

    .fad.fa-stretcher:after {
      content: "\10f825";
    }

    .fad.fa-strikethrough:after {
      content: "\10f0cc";
    }

    .fad.fa-stroopwafel:after {
      content: "\10f551";
    }

    .fad.fa-subscript:after {
      content: "\10f12c";
    }

    .fad.fa-subway:after {
      content: "\10f239";
    }

    .fad.fa-suitcase:after {
      content: "\10f0f2";
    }

    .fad.fa-suitcase-rolling:after {
      content: "\10f5c1";
    }

    .fad.fa-sun:after {
      content: "\10f185";
    }

    .fad.fa-sun-cloud:after {
      content: "\10f763";
    }

    .fad.fa-sun-dust:after {
      content: "\10f764";
    }

    .fad.fa-sun-haze:after {
      content: "\10f765";
    }

    .fad.fa-sunglasses:after {
      content: "\10f892";
    }

    .fad.fa-sunrise:after {
      content: "\10f766";
    }

    .fad.fa-sunset:after {
      content: "\10f767";
    }

    .fad.fa-superscript:after {
      content: "\10f12b";
    }

    .fad.fa-surprise:after {
      content: "\10f5c2";
    }

    .fad.fa-swatchbook:after {
      content: "\10f5c3";
    }

    .fad.fa-swimmer:after {
      content: "\10f5c4";
    }

    .fad.fa-swimming-pool:after {
      content: "\10f5c5";
    }

    .fad.fa-sword:after {
      content: "\10f71c";
    }

    .fad.fa-swords:after {
      content: "\10f71d";
    }

    .fad.fa-synagogue:after {
      content: "\10f69b";
    }

    .fad.fa-sync:after {
      content: "\10f021";
    }

    .fad.fa-sync-alt:after {
      content: "\10f2f1";
    }

    .fad.fa-syringe:after {
      content: "\10f48e";
    }

    .fad.fa-table:after {
      content: "\10f0ce";
    }

    .fad.fa-table-tennis:after {
      content: "\10f45d";
    }

    .fad.fa-tablet:after {
      content: "\10f10a";
    }

    .fad.fa-tablet-alt:after {
      content: "\10f3fa";
    }

    .fad.fa-tablet-android:after {
      content: "\10f3fb";
    }

    .fad.fa-tablet-android-alt:after {
      content: "\10f3fc";
    }

    .fad.fa-tablet-rugged:after {
      content: "\10f48f";
    }

    .fad.fa-tablets:after {
      content: "\10f490";
    }

    .fad.fa-tachometer:after {
      content: "\10f0e4";
    }

    .fad.fa-tachometer-alt:after {
      content: "\10f3fd";
    }

    .fad.fa-tachometer-alt-average:after {
      content: "\10f624";
    }

    .fad.fa-tachometer-alt-fast:after {
      content: "\10f625";
    }

    .fad.fa-tachometer-alt-fastest:after {
      content: "\10f626";
    }

    .fad.fa-tachometer-alt-slow:after {
      content: "\10f627";
    }

    .fad.fa-tachometer-alt-slowest:after {
      content: "\10f628";
    }

    .fad.fa-tachometer-average:after {
      content: "\10f629";
    }

    .fad.fa-tachometer-fast:after {
      content: "\10f62a";
    }

    .fad.fa-tachometer-fastest:after {
      content: "\10f62b";
    }

    .fad.fa-tachometer-slow:after {
      content: "\10f62c";
    }

    .fad.fa-tachometer-slowest:after {
      content: "\10f62d";
    }

    .fad.fa-taco:after {
      content: "\10f826";
    }

    .fad.fa-tag:after {
      content: "\10f02b";
    }

    .fad.fa-tags:after {
      content: "\10f02c";
    }

    .fad.fa-tally:after {
      content: "\10f69c";
    }

    .fad.fa-tanakh:after {
      content: "\10f827";
    }

    .fad.fa-tape:after {
      content: "\10f4db";
    }

    .fad.fa-tasks:after {
      content: "\10f0ae";
    }

    .fad.fa-tasks-alt:after {
      content: "\10f828";
    }

    .fad.fa-taxi:after {
      content: "\10f1ba";
    }

    .fad.fa-teeth:after {
      content: "\10f62e";
    }

    .fad.fa-teeth-open:after {
      content: "\10f62f";
    }

    .fad.fa-temperature-frigid:after {
      content: "\10f768";
    }

    .fad.fa-temperature-high:after {
      content: "\10f769";
    }

    .fad.fa-temperature-hot:after {
      content: "\10f76a";
    }

    .fad.fa-temperature-low:after {
      content: "\10f76b";
    }

    .fad.fa-tenge:after {
      content: "\10f7d7";
    }

    .fad.fa-tennis-ball:after {
      content: "\10f45e";
    }

    .fad.fa-terminal:after {
      content: "\10f120";
    }

    .fad.fa-text:after {
      content: "\10f893";
    }

    .fad.fa-text-height:after {
      content: "\10f034";
    }

    .fad.fa-text-size:after {
      content: "\10f894";
    }

    .fad.fa-text-width:after {
      content: "\10f035";
    }

    .fad.fa-th:after {
      content: "\10f00a";
    }

    .fad.fa-th-large:after {
      content: "\10f009";
    }

    .fad.fa-th-list:after {
      content: "\10f00b";
    }

    .fad.fa-theater-masks:after {
      content: "\10f630";
    }

    .fad.fa-thermometer:after {
      content: "\10f491";
    }

    .fad.fa-thermometer-empty:after {
      content: "\10f2cb";
    }

    .fad.fa-thermometer-full:after {
      content: "\10f2c7";
    }

    .fad.fa-thermometer-half:after {
      content: "\10f2c9";
    }

    .fad.fa-thermometer-quarter:after {
      content: "\10f2ca";
    }

    .fad.fa-thermometer-three-quarters:after {
      content: "\10f2c8";
    }

    .fad.fa-theta:after {
      content: "\10f69e";
    }

    .fad.fa-thumbs-down:after {
      content: "\10f165";
    }

    .fad.fa-thumbs-up:after {
      content: "\10f164";
    }

    .fad.fa-thumbtack:after {
      content: "\10f08d";
    }

    .fad.fa-thunderstorm:after {
      content: "\10f76c";
    }

    .fad.fa-thunderstorm-moon:after {
      content: "\10f76d";
    }

    .fad.fa-thunderstorm-sun:after {
      content: "\10f76e";
    }

    .fad.fa-ticket:after {
      content: "\10f145";
    }

    .fad.fa-ticket-alt:after {
      content: "\10f3ff";
    }

    .fad.fa-tilde:after {
      content: "\10f69f";
    }

    .fad.fa-times:after {
      content: "\10f00d";
    }

    .fad.fa-times-circle:after {
      content: "\10f057";
    }

    .fad.fa-times-hexagon:after {
      content: "\10f2ee";
    }

    .fad.fa-times-octagon:after {
      content: "\10f2f0";
    }

    .fad.fa-times-square:after {
      content: "\10f2d3";
    }

    .fad.fa-tint:after {
      content: "\10f043";
    }

    .fad.fa-tint-slash:after {
      content: "\10f5c7";
    }

    .fad.fa-tire:after {
      content: "\10f631";
    }

    .fad.fa-tire-flat:after {
      content: "\10f632";
    }

    .fad.fa-tire-pressure-warning:after {
      content: "\10f633";
    }

    .fad.fa-tire-rugged:after {
      content: "\10f634";
    }

    .fad.fa-tired:after {
      content: "\10f5c8";
    }

    .fad.fa-toggle-off:after {
      content: "\10f204";
    }

    .fad.fa-toggle-on:after {
      content: "\10f205";
    }

    .fad.fa-toilet:after {
      content: "\10f7d8";
    }

    .fad.fa-toilet-paper:after {
      content: "\10f71e";
    }

    .fad.fa-toilet-paper-alt:after {
      content: "\10f71f";
    }

    .fad.fa-tombstone:after {
      content: "\10f720";
    }

    .fad.fa-tombstone-alt:after {
      content: "\10f721";
    }

    .fad.fa-toolbox:after {
      content: "\10f552";
    }

    .fad.fa-tools:after {
      content: "\10f7d9";
    }

    .fad.fa-tooth:after {
      content: "\10f5c9";
    }

    .fad.fa-toothbrush:after {
      content: "\10f635";
    }

    .fad.fa-torah:after {
      content: "\10f6a0";
    }

    .fad.fa-torii-gate:after {
      content: "\10f6a1";
    }

    .fad.fa-tornado:after {
      content: "\10f76f";
    }

    .fad.fa-tractor:after {
      content: "\10f722";
    }

    .fad.fa-trademark:after {
      content: "\10f25c";
    }

    .fad.fa-traffic-cone:after {
      content: "\10f636";
    }

    .fad.fa-traffic-light:after {
      content: "\10f637";
    }

    .fad.fa-traffic-light-go:after {
      content: "\10f638";
    }

    .fad.fa-traffic-light-slow:after {
      content: "\10f639";
    }

    .fad.fa-traffic-light-stop:after {
      content: "\10f63a";
    }

    .fad.fa-train:after {
      content: "\10f238";
    }

    .fad.fa-tram:after {
      content: "\10f7da";
    }

    .fad.fa-transgender:after {
      content: "\10f224";
    }

    .fad.fa-transgender-alt:after {
      content: "\10f225";
    }

    .fad.fa-trash:after {
      content: "\10f1f8";
    }

    .fad.fa-trash-alt:after {
      content: "\10f2ed";
    }

    .fad.fa-trash-restore:after {
      content: "\10f829";
    }

    .fad.fa-trash-restore-alt:after {
      content: "\10f82a";
    }

    .fad.fa-trash-undo:after {
      content: "\10f895";
    }

    .fad.fa-trash-undo-alt:after {
      content: "\10f896";
    }

    .fad.fa-treasure-chest:after {
      content: "\10f723";
    }

    .fad.fa-tree:after {
      content: "\10f1bb";
    }

    .fad.fa-tree-alt:after {
      content: "\10f400";
    }

    .fad.fa-tree-christmas:after {
      content: "\10f7db";
    }

    .fad.fa-tree-decorated:after {
      content: "\10f7dc";
    }

    .fad.fa-tree-large:after {
      content: "\10f7dd";
    }

    .fad.fa-tree-palm:after {
      content: "\10f82b";
    }

    .fad.fa-trees:after {
      content: "\10f724";
    }

    .fad.fa-triangle:after {
      content: "\10f2ec";
    }

    .fad.fa-triangle-music:after {
      content: "\10f8e2";
    }

    .fad.fa-trophy:after {
      content: "\10f091";
    }

    .fad.fa-trophy-alt:after {
      content: "\10f2eb";
    }

    .fad.fa-truck:after {
      content: "\10f0d1";
    }

    .fad.fa-truck-container:after {
      content: "\10f4dc";
    }

    .fad.fa-truck-couch:after {
      content: "\10f4dd";
    }

    .fad.fa-truck-loading:after {
      content: "\10f4de";
    }

    .fad.fa-truck-monster:after {
      content: "\10f63b";
    }

    .fad.fa-truck-moving:after {
      content: "\10f4df";
    }

    .fad.fa-truck-pickup:after {
      content: "\10f63c";
    }

    .fad.fa-truck-plow:after {
      content: "\10f7de";
    }

    .fad.fa-truck-ramp:after {
      content: "\10f4e0";
    }

    .fad.fa-trumpet:after {
      content: "\10f8e3";
    }

    .fad.fa-tshirt:after {
      content: "\10f553";
    }

    .fad.fa-tty:after {
      content: "\10f1e4";
    }

    .fad.fa-turkey:after {
      content: "\10f725";
    }

    .fad.fa-turntable:after {
      content: "\10f8e4";
    }

    .fad.fa-turtle:after {
      content: "\10f726";
    }

    .fad.fa-tv:after {
      content: "\10f26c";
    }

    .fad.fa-tv-alt:after {
      content: "\10f8e5";
    }

    .fad.fa-tv-music:after {
      content: "\10f8e6";
    }

    .fad.fa-tv-retro:after {
      content: "\10f401";
    }

    .fad.fa-typewriter:after {
      content: "\10f8e7";
    }

    .fad.fa-umbrella:after {
      content: "\10f0e9";
    }

    .fad.fa-umbrella-beach:after {
      content: "\10f5ca";
    }

    .fad.fa-underline:after {
      content: "\10f0cd";
    }

    .fad.fa-undo:after {
      content: "\10f0e2";
    }

    .fad.fa-undo-alt:after {
      content: "\10f2ea";
    }

    .fad.fa-unicorn:after {
      content: "\10f727";
    }

    .fad.fa-union:after {
      content: "\10f6a2";
    }

    .fad.fa-universal-access:after {
      content: "\10f29a";
    }

    .fad.fa-university:after {
      content: "\10f19c";
    }

    .fad.fa-unlink:after {
      content: "\10f127";
    }

    .fad.fa-unlock:after {
      content: "\10f09c";
    }

    .fad.fa-unlock-alt:after {
      content: "\10f13e";
    }

    .fad.fa-upload:after {
      content: "\10f093";
    }

    .fad.fa-usb-drive:after {
      content: "\10f8e9";
    }

    .fad.fa-usd-circle:after {
      content: "\10f2e8";
    }

    .fad.fa-usd-square:after {
      content: "\10f2e9";
    }

    .fad.fa-user:after {
      content: "\10f007";
    }

    .fad.fa-user-alt:after {
      content: "\10f406";
    }

    .fad.fa-user-alt-slash:after {
      content: "\10f4fa";
    }

    .fad.fa-user-astronaut:after {
      content: "\10f4fb";
    }

    .fad.fa-user-chart:after {
      content: "\10f6a3";
    }

    .fad.fa-user-check:after {
      content: "\10f4fc";
    }

    .fad.fa-user-circle:after {
      content: "\10f2bd";
    }

    .fad.fa-user-clock:after {
      content: "\10f4fd";
    }

    .fad.fa-user-cog:after {
      content: "\10f4fe";
    }

    .fad.fa-user-cowboy:after {
      content: "\10f8ea";
    }

    .fad.fa-user-crown:after {
      content: "\10f6a4";
    }

    .fad.fa-user-edit:after {
      content: "\10f4ff";
    }

    .fad.fa-user-friends:after {
      content: "\10f500";
    }

    .fad.fa-user-graduate:after {
      content: "\10f501";
    }

    .fad.fa-user-hard-hat:after {
      content: "\10f82c";
    }

    .fad.fa-user-headset:after {
      content: "\10f82d";
    }

    .fad.fa-user-injured:after {
      content: "\10f728";
    }

    .fad.fa-user-lock:after {
      content: "\10f502";
    }

    .fad.fa-user-md:after {
      content: "\10f0f0";
    }

    .fad.fa-user-md-chat:after {
      content: "\10f82e";
    }

    .fad.fa-user-minus:after {
      content: "\10f503";
    }

    .fad.fa-user-music:after {
      content: "\10f8eb";
    }

    .fad.fa-user-ninja:after {
      content: "\10f504";
    }

    .fad.fa-user-nurse:after {
      content: "\10f82f";
    }

    .fad.fa-user-plus:after {
      content: "\10f234";
    }

    .fad.fa-user-secret:after {
      content: "\10f21b";
    }

    .fad.fa-user-shield:after {
      content: "\10f505";
    }

    .fad.fa-user-slash:after {
      content: "\10f506";
    }

    .fad.fa-user-tag:after {
      content: "\10f507";
    }

    .fad.fa-user-tie:after {
      content: "\10f508";
    }

    .fad.fa-user-times:after {
      content: "\10f235";
    }

    .fad.fa-users:after {
      content: "\10f0c0";
    }

    .fad.fa-users-class:after {
      content: "\10f63d";
    }

    .fad.fa-users-cog:after {
      content: "\10f509";
    }

    .fad.fa-users-crown:after {
      content: "\10f6a5";
    }

    .fad.fa-users-medical:after {
      content: "\10f830";
    }

    .fad.fa-utensil-fork:after {
      content: "\10f2e3";
    }

    .fad.fa-utensil-knife:after {
      content: "\10f2e4";
    }

    .fad.fa-utensil-spoon:after {
      content: "\10f2e5";
    }

    .fad.fa-utensils:after {
      content: "\10f2e7";
    }

    .fad.fa-utensils-alt:after {
      content: "\10f2e6";
    }

    .fad.fa-value-absolute:after {
      content: "\10f6a6";
    }

    .fad.fa-vector-square:after {
      content: "\10f5cb";
    }

    .fad.fa-venus:after {
      content: "\10f221";
    }

    .fad.fa-venus-double:after {
      content: "\10f226";
    }

    .fad.fa-venus-mars:after {
      content: "\10f228";
    }

    .fad.fa-vhs:after {
      content: "\10f8ec";
    }

    .fad.fa-vial:after {
      content: "\10f492";
    }

    .fad.fa-vials:after {
      content: "\10f493";
    }

    .fad.fa-video:after {
      content: "\10f03d";
    }

    .fad.fa-video-plus:after {
      content: "\10f4e1";
    }

    .fad.fa-video-slash:after {
      content: "\10f4e2";
    }

    .fad.fa-vihara:after {
      content: "\10f6a7";
    }

    .fad.fa-violin:after {
      content: "\10f8ed";
    }

    .fad.fa-voicemail:after {
      content: "\10f897";
    }

    .fad.fa-volcano:after {
      content: "\10f770";
    }

    .fad.fa-volleyball-ball:after {
      content: "\10f45f";
    }

    .fad.fa-volume:after {
      content: "\10f6a8";
    }

    .fad.fa-volume-down:after {
      content: "\10f027";
    }

    .fad.fa-volume-mute:after {
      content: "\10f6a9";
    }

    .fad.fa-volume-off:after {
      content: "\10f026";
    }

    .fad.fa-volume-slash:after {
      content: "\10f2e2";
    }

    .fad.fa-volume-up:after {
      content: "\10f028";
    }

    .fad.fa-vote-nay:after {
      content: "\10f771";
    }

    .fad.fa-vote-yea:after {
      content: "\10f772";
    }

    .fad.fa-vr-cardboard:after {
      content: "\10f729";
    }

    .fad.fa-wagon-covered:after {
      content: "\10f8ee";
    }

    .fad.fa-walker:after {
      content: "\10f831";
    }

    .fad.fa-walkie-talkie:after {
      content: "\10f8ef";
    }

    .fad.fa-walking:after {
      content: "\10f554";
    }

    .fad.fa-wallet:after {
      content: "\10f555";
    }

    .fad.fa-wand:after {
      content: "\10f72a";
    }

    .fad.fa-wand-magic:after {
      content: "\10f72b";
    }

    .fad.fa-warehouse:after {
      content: "\10f494";
    }

    .fad.fa-warehouse-alt:after {
      content: "\10f495";
    }

    .fad.fa-washer:after {
      content: "\10f898";
    }

    .fad.fa-watch:after {
      content: "\10f2e1";
    }

    .fad.fa-watch-calculator:after {
      content: "\10f8f0";
    }

    .fad.fa-watch-fitness:after {
      content: "\10f63e";
    }

    .fad.fa-water:after {
      content: "\10f773";
    }

    .fad.fa-water-lower:after {
      content: "\10f774";
    }

    .fad.fa-water-rise:after {
      content: "\10f775";
    }

    .fad.fa-wave-sine:after {
      content: "\10f899";
    }

    .fad.fa-wave-square:after {
      content: "\10f83e";
    }

    .fad.fa-wave-triangle:after {
      content: "\10f89a";
    }

    .fad.fa-waveform:after {
      content: "\10f8f1";
    }

    .fad.fa-waveform-path:after {
      content: "\10f8f2";
    }

    .fad.fa-webcam:after {
      content: "\10f832";
    }

    .fad.fa-webcam-slash:after {
      content: "\10f833";
    }

    .fad.fa-weight:after {
      content: "\10f496";
    }

    .fad.fa-weight-hanging:after {
      content: "\10f5cd";
    }

    .fad.fa-whale:after {
      content: "\10f72c";
    }

    .fad.fa-wheat:after {
      content: "\10f72d";
    }

    .fad.fa-wheelchair:after {
      content: "\10f193";
    }

    .fad.fa-whistle:after {
      content: "\10f460";
    }

    .fad.fa-wifi:after {
      content: "\10f1eb";
    }

    .fad.fa-wifi-1:after {
      content: "\10f6aa";
    }

    .fad.fa-wifi-2:after {
      content: "\10f6ab";
    }

    .fad.fa-wifi-slash:after {
      content: "\10f6ac";
    }

    .fad.fa-wind:after {
      content: "\10f72e";
    }

    .fad.fa-wind-turbine:after {
      content: "\10f89b";
    }

    .fad.fa-wind-warning:after {
      content: "\10f776";
    }

    .fad.fa-window:after {
      content: "\10f40e";
    }

    .fad.fa-window-alt:after {
      content: "\10f40f";
    }

    .fad.fa-window-close:after {
      content: "\10f410";
    }

    .fad.fa-window-maximize:after {
      content: "\10f2d0";
    }

    .fad.fa-window-minimize:after {
      content: "\10f2d1";
    }

    .fad.fa-window-restore:after {
      content: "\10f2d2";
    }

    .fad.fa-windsock:after {
      content: "\10f777";
    }

    .fad.fa-wine-bottle:after {
      content: "\10f72f";
    }

    .fad.fa-wine-glass:after {
      content: "\10f4e3";
    }

    .fad.fa-wine-glass-alt:after {
      content: "\10f5ce";
    }

    .fad.fa-won-sign:after {
      content: "\10f159";
    }

    .fad.fa-wreath:after {
      content: "\10f7e2";
    }

    .fad.fa-wrench:after {
      content: "\10f0ad";
    }

    .fad.fa-x-ray:after {
      content: "\10f497";
    }

    .fad.fa-yen-sign:after {
      content: "\10f157";
    }

    .fad.fa-yin-yang:after {
      content: "\10f6ad";
    }

    @font-face {
      font-family: 'Font Awesome 5 Pro';
      font-style: normal;
      font-weight: 300;
      font-display: auto;
      src: url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-light-300.eot");
      src: url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-light-300.eot?#iefix") format("embedded-opentype"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-light-300.woff2") format("woff2"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-light-300.woff") format("woff"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-light-300.ttf") format("truetype"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-light-300.svg#fontawesome") format("svg");
    }

    .fal {
      font-family: 'Font Awesome 5 Pro';
      font-weight: 300;
    }

    @font-face {
      font-family: 'Font Awesome 5 Pro';
      font-style: normal;
      font-weight: 400;
      font-display: auto;
      src: url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-regular-400.eot");
      src: url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-regular-400.woff2") format("woff2"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-regular-400.woff") format("woff"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-regular-400.ttf") format("truetype"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-regular-400.svg#fontawesome") format("svg");
    }

    .far {
      font-family: 'Font Awesome 5 Pro';
      font-weight: 400;
    }

    @font-face {
      font-family: 'Font Awesome 5 Pro';
      font-style: normal;
      font-weight: 900;
      font-display: auto;
      src: url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-solid-900.eot");
      src: url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-solid-900.woff2") format("woff2"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-solid-900.woff") format("woff"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-solid-900.ttf") format("truetype"),
        url("https://www.pepperl-fuchs.com/data/general/webfonts/fa-solid-900.svg#fontawesome") format("svg");
    }

    .fa,
    .fas {
      font-family: 'Font Awesome 5 Pro';
      font-weight: 900;
    }
  </style>
  <script type="text/javascript">
    this.XM_FORM_I18N = {
      "browserChromeLink": "http://www.google.com/chrome/",
      "cb_remote_io_systems_label": "Remote-I/O-Systems",
      "cb_purge_pressurization_systems_label": "Purge and Pressurization Systems",
      "sel_degree_dr": "Dr.",
      "cb_mobile_equipment_label": "Mobile Equipment",
      "cb_fieldconnex_fieldbus_label": "FieldConnex® Fieldbus",
      "authAccess": "Access",
      "tf_department_label": "Department",
      "cb_doors_gates_and_elevators_label": "Doors, Gates, and Elevators",
      "browserSafari": "Safari",
      "cb_wireless_solutions_label": "Wireless Solutions",
      "btn_submit_requestdoc_label": "Send/request document",
      "cb_consent_news_before": "Yes, I would like to subscribe to the Pepperl+Fuchs e-news. I have read",
      "posmoney": "* Not a valid positive amount \u0028f.e. 123,45\u0029",
      "btn_submit_download_label": "Download",
      "cb_enews_pa_label": "e-news on Explosion Protection",
      "browserChrome": "Google Chrome",
      "authPassword": "Password",
      "sel_state_label": "State",
      "sel_enclosure_material_316l": "Stainless steel \u0028316L\u0029",
      "sel_country_label": "Country",
      "cb_mobile_computing_and_communication_label": "Mobile Computing and Communication",
      "cb_identification_systems_label": "Identification Systems",
      "appointementClose": "close",
      "cb_callback_label": "Please call me back.",
      "sel_no": "No",
      "cb_rotary_encoders_label": "Rotary Encoders",
      "minCheckboxPre": "* Please select minimum ",
      "appointementEdit": "change",
      "tf_cost_center_label": "Cost center",
      "cb_signal_conditioners_label": "Signal Conditioners",
      "cb_surge_protection_label": "Surge Protection",
      "cb_chemistry_label": "Chemistry",
      "txt_your_industry_label": "Your industry",
      "btn_next_label": "next",
      "cb_consent_before": "I consent to having my personal data \u0028email address, gender, first and last name\u0029 stored and processed according to the",
      "cb_fieldbus_infrastructure_label": "Fieldbus Infrastructure",
      "cb_consent_online_seminar_link": "Terms and Conditions for participation",
      "cb_enews_fa_label": "e-news Industrial Sensors",
      "min": "* Minimum value is ",
      "sel_enclosure_material_grp": "Glass fiber reinforced polyester \u0028GRP\u0029",
      "previewPageAll": "show all pages",
      "tf_lastname_label": "Last Name",
      "maxSizePost": " characters allowed",
      "email": "* Invalid email address",
      "cb_system_solutions_label": "System Solutions",
      "txt_interests_label": "Please choose the topics you are interested in:",
      "btn_submit_raffle": "Participate",
      "FileExtensionPost": "\u0029 allowed",
      "sel_yes": "Yes",
      "previewUsergroup": "User group",
      "cb_wilsen_trial_kit_before_link": "Yes, I am interested in the trial kit and agree that in this context my personal registration data \u0028e-mail-address, gender, first and last name and others, if applicable\u0029 will also be transmitted to Software AG and processed in accordance with their",
      "authLoginErrorGeneral": "No user with these credentials was found.",
      "authPasswordForgotton": "Forgot password?",
      "cb_consent_link": "data protection notice",
      "authFormPassword": "Participation password",
      "previewStatus": "State",
      "cb_consent_newsFA_before": "mandatory fields",
      "formFooter": "",
      "cb_power_industries_label": "Power Industries",
      "cb_consent_news_link": "Privacy Policy Governing Electronic Newsletters",
      "appointmentAddToCalendar": "Add to calendar",
      "btn_back_application": "back to task selection",
      "cb_positioning_systems_label": "Positioning Systems",
      "tf_function_label": "Function",
      "tf_street_label": "Street/PO Box",
      "cb_connectivity_label": "Connectivity",
      "dateDE": "* Not a valid date \u0028DD.MM.YYYY expected\u0029",
      "ed_comments_label": "Comments",
      "previewDefault": "Default",
      "previewToolsButton": "",
      "cb_oil_gas_label": "Oil+Gas",
      "cb_conditions_before": "I have read the",
      "plzDE": "* Not a valid postal code 5 numbers expected",
      "cb_industrial_hmi_label": "Industrial HMI",
      "maxCheckboxPost": " option\u0028s\u0029",
      "authLogin": "Login",
      "cb_more_info_label": "Please send more information.",
      "cb_proximity_sensors_label": "Proximity Sensors",
      "requiredCheckbox": "* This checkbox is required",
      "cb_renewable_energy_label": "Renewable Energy",
      "cb_water_waste_water_label": "Water+Waste Water",
      "cb_consent_news_FA": "e-news for Industrial Sensors:",
      "ed_trade_in_label": "Trade-in request",
      "authLoginErrorMissingField": "The login data is incomplete.",
      "cb_as_interface_label": "AS-Interface",
      "btn_submit_label": "Submit",
      "posinteger": "* Not a valid positive integer",
      "browserEdge": "Microsoft Edge",
      "appointementDelete": "delete",
      "sel_degree_profdr": "Prof. Dr.",
      "sel_lang_label": "Select your language",
      "imprint": "Imprint",
      "authUser": "User",
      "authBtnTextANONYMOUS": "Without Login",
      "maxFileNameSizePre": "The file name may not exceed ",
      "authBtnText": "Login with %",
      "sel_please_select": "Please select",
      "appointementFree": "free slots %1",
      "minSizePre": "* Minimum ",
      "browserFirefox": "Mozilla Firefox",
      "lettersLeft": "characters words left max.",
      "ed_ask_expert_label": "Ask Your Question",
      "cb_automotive_industry_label": "Automotive Industry",
      "sel_salut_label": "Title",
      "dynAdd": "add entry",
      "cb_conditions_link": "conditions of participation",
      "sel_enclosure_material": "Enclosure material",
      "cb_fieldbus_modules_label": "Fieldbus Modules",
      "tf_customer_label": "Customer",
      "maxFileSizePost": " kB\u0029 and cannot be saved",
      "posmoneyOptionalComma": "Not a valid positive amount \u0028e.g. 123\u0029",
      "sel_int_dialing_code_label": "Telephone",
      "browserEdgeLink": "http://www.microsoft.com/windows/Microsoft-edge/",
      "money": "* Not a valid amount \u0028f.e. -123,45\u0029",
      "txt_mandatory_label": "mandatory fields",
      "time": "* Not a valid time HH:MM expected",
      "maxFileNameSizePost": " characters \u0028including extension\u0029",
      "cb_electrical_ex_equipment_label": "Electrical Ex Equipment",
      "btn_search_label": "search",
      "authPwErrorGeneral": "The given password is not correct.",
      "cb_industry_40_label": "Industry 4.0",
      "tf_zip_label": "Zip/Postal Code",
      "requiredOption": "Please select a valid option. '%' is not valid.",
      "appointementNotAvailable": "The organizer is currently unavailable, please try again later.",
      "appointementNone": "Please choose another date. There are no more dates available on %1.",
      "required": "* This field is required",
      "number": "* Invalid floating decimal number",
      "tf_identno": "VAT",
      "appointementText": "%1 at %2 o'clock",
      "cb_electrical_explosion_protection_label": "Electrical Explosion Protection",
      "cb_enews_corp_label": "e-news Industrial Sensors and on Explosion Protection",
      "cb_process_equipment_label": "Process Equipment",
      "cb_pharmaceuticals_label": "Pharmaceuticals",
      "fileEmpty": "The file is empty",
      "browserFirefoxLink": "http://www.mozilla.com/firefox/",
      "ed_message_app_idea_label": "What’s your application idea?",
      "maxCheckboxPre": "* Please select maximum ",
      "phone": "* Invalid phone number",
      "cb_photoelectric_sensors_label": "Photoelectric Sensors",
      "requiredSelectDefault": "Please select",
      "appointmentInvalidFormat": "Invalid date / time format",
      "onlyLetterSp": "* Letters only",
      "authBtnTextKERBEROS": "Login with Kerberos",
      "authPwErrorMissingField": "Please input a password.",
      "cb_displays_and_signal_processing_label": "Displays and Signal Processing",
      "cb_level_measurement_label": "Level Measurement",
      "tf_reference_number_label": "Your reference number or code",
      "tf_customer_number_label": "Customer number if available",
      "tf_ordernumber_label": "Your order no.",
      "btn_back_label": "back",
      "dynDel": "delete entry",
      "sel_degree_label": "Degree",
      "cb_isolated_barriers_label": "Isolated Barriers",
      "ed_inquiry_label": "Your Price Inquiry",
      "browserClose": "Close this window",
      "cb_print_and_paper_industry_label": "Print and Paper Industry",
      "sel_salut_gender_male": "Dear",
      "max": "* Maximum value is",
      "privacyPolicy": "Privacy",
      "tf_company_label": "Company",
      "cb_inclination_and_acceleration_sensors_label": "Inclination and Acceleration Sensors",
      "cb_wilsen_trial_kit_link": "data processing agreement",
      "ed_requirements_label": "Please specify your further requirements",
      "url": "* Invalid URL",
      "previewPage": "Page",
      "equals": "* Fields do not match",
      "cb_wilsen_trial_kit_after_link": ".",
      "cb_material_handling_label": "Material Handling",
      "tf_taxid_label": "Tax ID",
      "tf_email_label": "Email Address",
      "cb_machine_and_plant_engineering_label": "Machine and Plant Engineering",
      "sel_lang_de": "German",
      "minCheckboxPost": " option\u0028s\u0029",
      "authOr": "or",
      "authLoginErrorMissingPermission": "You do not have permission to access the form.",
      "cb_packaging_industry_label": "Packaging Industry",
      "cb_hart_interface_solutions_label": "HART Interface Solutions",
      "minSizePost": " characters required",
      "FileExtensionPre": "Invalid file type, only \u0028",
      "integer": "* Not a valid integer",
      "cb_consent_news_after": ", and accept these.",
      "sel_ordernumber_label": "Is an order no. necessary to pay the seminar bill?",
      "cb_consent_online_seminar_before": "I have read and agree to the",
      "txt_productfamily_label": "I am interested in following groups:",
      "cb_conditions_after": "and accept them.",
      "browserUnsupported": "Your browser is not supported due to security issues. A list of the most popular web browsers can be found below.",
      "tf_phone_label": "Telephone",
      "authBtnTextNTLM": "Login with NTLM",
      "tf_manufacturer_label": "Manufacturer",
      "tf_city_label": "City",
      "cb_industrial_vision_label": "Industrial Vision",
      "browserOld": "Did you know that your Internet Browser is out of date?",
      "cb_consent_online_seminar_after": "in the Pepperl+Fuchs online seminars and live presentations.",
      "tf_firstname_label": "First Name",
      "tf_product_description_label": "Product Description",
      "maxSizePre": "* Maximum ",
      "tf_reference_order_number_label": "Reference/order number",
      "browserClick": "Just click on the icons to get to the download page",
      "sel_province_label": "Province",
      "btn_submit_question_label": "Send Your Question",
      "sel_salut_gender_female": "Dear",
      "browserCloseMessage": "By closing this window you acknowledge that your experience on this website may be degraded",
      "cb_consent_raffle_before": "I confirm that I have read and accept the ",
      "tf_model_number_label": "Model Number",
      "maxFileSizePre": "The file size exceeds the allowed limit \u0028",
      "sel_salut_male": "Mr.",
      "onlyLetterNumber": "* No special characters allowed",
      "cb_ultrasonic_sensors_label": "Ultrasonic Sensors",
      "sel_lang_en": "English",
      "requiredGroup": "* You must fill one of the following fields",
      "sel_different_invoice_address_label": "Different invoice address?",
      "browserSafariLink": "http://www.apple.com/safari/download/",
      "cb_consent_news_PA": "e-news for Explosion Protection:",
      "currentFormVersion": "current form version",
      "cb_industrial_monitors_hmi_solutions_label": "Industrial Monitors+HMI Solutions",
      "authLoginErrorLocked": "Authentication failed! Your login has been locked temporarily because of {0} failed attempts. This lock will be released in about {1} minutes.",
      "ipv4": "* Invalid IP address",
      "requiredCheckboxMultiple": "* Please select an option",
      "previewHidden": "show hidden elements",
      "cb_consent_raffle_link": "terms and conditions ",
      "sel_salut_female": "Mrs./Ms.",
      "cb_intrinsic_safety_barriers_label": "Intrinsic Safety Berriers",
      "cb_consent_raffle_after": "for participating in the raffle. ",
      "tf_contact_person_label": "Contact Person",
      "ed_mlp_message_label": "Your message...",
      "cb_consent_action_tradein_after": "in the Pepperl+Fuchs trade-in action.",
      "cb_rfid_label": "RFID",
      "cb_offshore_marine_label": "Offshore+Marine",
      "cb_consent_after": ".",
      "ed_seminar_label": "Your Seminar Request"
    }
    this.XM_FORM_VRULES = {
      "posinteger": /^[\\\\s]*[0-9]{1}[0-9]*[\\\\s]*$/,
      "plzDE": /^[0123456789]{5}$/,
      "posmoney": /^([0]{1}|[1-9]{1}[0-9]*)[,]{1}[0-9]{2}$/,
      "dateEN": /^(((0[1-9]|[12]\d|3[01])\/(0[13578]|1[02])\/((19|[2-9]\d)\d{2}))|((0[1-9]|[12]\d|30)\/(0[13456789]|1[012])\/((19|[2-9]\d)\d{2}))|((0[1-9]|1\d|2[0-8])\/02\/((19|[2-9]\d)\d{2}))|(29\/02\/((19|[2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00))))$/,
      "integer": /^[\-\+]?\d+$/,
      "url": /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,
      "posmoneyOptionalComma": /^([0]{1}|[1-9]{1}[0-9]*)[,]{0,1}[0-9]{0,2}$/,
      "number": /^[\-\+]?((([0-9]{1,3})([,][0-9]{3})*)|([0-9]+))?([,]([0-9]+))?$/,
      "money": /^-{0,1}([0]{1}|[1-9]{1}[0-9]*)[,]{1}[0-9]{2}$/,
      "ipv4": /^((([01]?[0-9]{1,2})|(2[0-4][0-9])|(25[0-5]))[.]){3}(([0-1]?[0-9]{1,2})|(2[0-4][0-9])|(25[0-5]))$/,
      "phone": /^([\+][0-9]{1,3}[ \.\-])?([\(]{1}[0-9]{1,6}[\)])?([0-9 \.\-\/]{3,20})((x|ext|extension)[ ]?[0-9]{1,4})?$/,
      "onlyLetterNumber": /^[0-9a-zA-Z\s\u00C0-\u1FFF\u2C00-\uD7FF]+$/,
      "time": /^(([0-1]{1}[0-9]{1})|([2]{1}[0-3]{1})){1}[\\:]{1}[0-5]{1}[0-9]{1}$/,
      "onlyLetterSp": /^[a-zA-Z\s\u00C0-\u1FFF\u2C00-\uD7FF]+$/,
      "email": /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i,
      "dateDE": /^(((0[1-9]|[12]\d|3[01])\.(0[13578]|1[02])\.((19|[2-9]\d)\d{2}))|((0[1-9]|[12]\d|30)\.(0[13456789]|1[012])\.((19|[2-9]\d)\d{2}))|((0[1-9]|1\d|2[0-8])\.02\.((19|[2-9]\d)\d{2}))|(29\.02\.((19|[2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00))))$/
    }
    this.XM_FORM_META = {
      "pageResponsive": "0"
    }
    this.XM_FORM_DYNVALUES = {
      "xi-btn-3": {},
      "xi-tf-44": {},
      "xi-XTextField-20": {},
      "xi-tf-43": {},
      "xi-tf-42": {},
      "xi-tf-41": {},
      "xi-tf-40": {},
      "xi-XTextField-22": {},
      "xi-txt-12": {},
      "xi-txt-10": {},
      "xi-tf-39": {
        "_0": "26491",
        "size": 1
      },
      "xi-tf-38": {
        "_0": "us",
        "size": 1
      },
      "xi-txt-11": {},
      "xi-tf-37": {},
      "xi-sp-1": {},
      "xi-tf-36": {
        "_0": "false",
        "size": 1
      },
      "xi-txt-1": {},
      "xi-XSelect-1": {},
      "xi-cb-1": {},
      "xi-txt-9": {},
      "xi-cb-2": {},
      "xi-div-2": {},
      "xi-div-3": {},
      "xi-div-4": {},
      "xm-item-XPage-2": {},
      "xm-item-XPage-1": {},
      "xi-XTextField-10": {},
      "xi-header-1": {},
      "xi-XTextField-12": {},
      "xi-XTextField-11": {},
      "xi-XTextField-9": {},
      "xi-tf-47": {
        "_0": "opt-out",
        "size": 1
      },
      "xi-tf-46": {
        "_0": "Landing_Page",
        "size": 1
      },
      "xi-tf-45": {
        "_0": "Landing_Page_Corp",
        "size": 1
      },
      "xi-footer-1": {},
      "xi-XSpan-5": {},
      "xi-XSpan-4": {}
    }
    this.XM_FORM_VERSION = {
      "date": "15.10.2020",
      "patch": "${git.commit.id.describe-short}",
      "number": 0,
      "patchVersion": "3",
      "time": "18:31:29",
      "majorVersion": "6",
      "minorVersion": "6",
      "version": "despina-6.6.3",
      "timestamp": 20201015183129
    }
    this.XM_FORM_PLUGIN_VRULES = {}
  </script>
  <script type="text/javascript">
    (function() {
      ;
      (function($, jQuery) {
        /*020-jquery-ui-min.js*/
        /*
         jQuery UI - v1.12.1 - 2017-07-17
         http://jqueryui.com
         Includes: widget.js, position.js, data.js, disable-selection.js, focusable.js, form-reset-mixin.js, keycode.js, labels.js, scroll-parent.js, tabbable.js, unique-id.js, widgets/draggable.js, widgets/droppable.js, widgets/resizable.js, widgets/autocomplete.js, widgets/button.js, widgets/checkboxradio.js, widgets/controlgroup.js, widgets/datepicker.js, widgets/dialog.js, widgets/menu.js, widgets/mouse.js
         Copyright jQuery Foundation and other contributors; Licensed MIT */
        (function(d) {
          "function" === typeof define && define.amd ? define(["jquery"], d) : d(jQuery)
        })(function(d) {
          function W(a) {
            for (var b; a.length && a[0] !== document;) {
              b = a.css("position");
              if ("absolute" === b || "relative" === b || "fixed" === b)
                if (b = parseInt(a.css("zIndex"), 10), !isNaN(b) && 0 !== b) return b;
              a = a.parent()
            }
            return 0
          }

          function R() {
            this._curInst = null;
            this._keyEvent = !1;
            this._disabledInputs = [];
            this._inDialog = this._datepickerShowing = !1;
            this._mainDivId = "ui-datepicker-div";
            this._inlineClass = "ui-datepicker-inline";
            this._appendClass = "ui-datepicker-append";
            this._triggerClass = "ui-datepicker-trigger";
            this._dialogClass = "ui-datepicker-dialog";
            this._disableClass = "ui-datepicker-disabled";
            this._unselectableClass = "ui-datepicker-unselectable";
            this._currentClass = "ui-datepicker-current-day";
            this._dayOverClass = "ui-datepicker-days-cell-over";
            this.regional = [];
            this.regional[""] = {
              closeText: "Done",
              prevText: "Prev",
              nextText: "Next",
              currentText: "Today",
              monthNames: "January February March April May June July August September October November December".split(" "),
              monthNamesShort: "Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),
              dayNames: "Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),
              dayNamesShort: "Sun Mon Tue Wed Thu Fri Sat".split(" "),
              dayNamesMin: "Su Mo Tu We Th Fr Sa".split(" "),
              weekHeader: "Wk",
              dateFormat: "mm/dd/yy",
              firstDay: 0,
              isRTL: !1,
              showMonthAfterYear: !1,
              yearSuffix: ""
            };
            this._defaults = {
              showOn: "focus",
              showAnim: "fadeIn",
              showOptions: {},
              defaultDate: null,
              appendText: "",
              buttonText: "...",
              buttonImage: "",
              buttonImageOnly: !1,
              hideIfNoPrevNext: !1,
              navigationAsDateFormat: !1,
              gotoCurrent: !1,
              changeMonth: !1,
              changeYear: !1,
              yearRange: "c-10:c+10",
              showOtherMonths: !1,
              selectOtherMonths: !1,
              showWeek: !1,
              calculateWeek: this.iso8601Week,
              shortYearCutoff: "+10",
              minDate: null,
              maxDate: null,
              duration: "fast",
              beforeShowDay: null,
              beforeShow: null,
              onSelect: null,
              onChangeMonthYear: null,
              onClose: null,
              numberOfMonths: 1,
              showCurrentAtPos: 0,
              stepMonths: 1,
              stepBigMonths: 12,
              altField: "",
              altFormat: "",
              constrainInput: !0,
              showButtonPanel: !1,
              autoSize: !1,
              disabled: !1
            };
            d.extend(this._defaults, this.regional[""]);
            this.regional.en = d.extend(!0, {}, this.regional[""]);
            this.regional["en-US"] = d.extend(!0, {}, this.regional.en);
            this.dpDiv = S(d("\x3cdiv id\x3d'" + this._mainDivId + "' class\x3d'ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'\x3e\x3c/div\x3e"))
          }

          function S(a) {
            return a.on("mouseout", "button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a", function() {
              d(this).removeClass("ui-state-hover"); - 1 !== this.className.indexOf("ui-datepicker-prev") && d(this).removeClass("ui-datepicker-prev-hover"); - 1 !== this.className.indexOf("ui-datepicker-next") && d(this).removeClass(
                "ui-datepicker-next-hover")
            }).on("mouseover", "button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a", T)
          }

          function T() {
            d.datepicker._isDisabledDatepicker(E.inline ? E.dpDiv.parent()[0] : E.input[0]) || (d(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"), d(this).addClass("ui-state-hover"), -1 !== this.className
              .indexOf("ui-datepicker-prev") && d(this).addClass("ui-datepicker-prev-hover"), -1 !== this.className.indexOf("ui-datepicker-next") && d(this).addClass("ui-datepicker-next-hover"))
          }

          function H(a, b) {
            d.extend(a, b);
            for (var c in b) null == b[c] && (a[c] = b[c]);
            return a
          }
          d.ui = d.ui || {};
          d.ui.version = "1.12.1";
          var X = 0,
            U = Array.prototype.slice;
          d.cleanData = function(a) {
            return function(b) {
              var c, f, e;
              for (e = 0; null != (f = b[e]); e++) try {
                (c = d._data(f, "events")) && c.remove && d(f).triggerHandler("remove")
              } catch (g) {}
              a(b)
            }
          }(d.cleanData);
          d.widget = function(a, b, c) {
            var f, e, g,
              h = {},
              k = a.split(".")[0];
            a = a.split(".")[1];
            var m = k + "-" + a;
            c || (c = b, b = d.Widget);
            d.isArray(c) && (c = d.extend.apply(null, [{}].concat(c)));
            d.expr[":"][m.toLowerCase()] = function(a) {
              return !!d.data(a, m)
            };
            d[k] = d[k] || {};
            f = d[k][a];
            e = d[k][a] = function(a, b) {
              if (!this._createWidget) return new e(a, b);
              arguments.length && this._createWidget(a, b)
            };
            d.extend(e, f, {
              version: c.version,
              _proto: d.extend({}, c),
              _childConstructors: []
            });
            g = new b;
            g.options = d.widget.extend({}, g.options);
            d.each(c, function(a, c) {
              d.isFunction(c) ? h[a] = function() {
                function d() {
                  return b.prototype[a].apply(this, arguments)
                }

                function f(c) {
                  return b.prototype[a].apply(this, c)
                }
                return function() {
                  var a = this._super,
                    b = this._superApply,
                    e;
                  this._super = d;
                  this._superApply = f;
                  e = c.apply(this, arguments);
                  this._super = a;
                  this._superApply = b;
                  return e
                }
              }() : h[a] = c
            });
            e.prototype = d.widget.extend(g, {
              widgetEventPrefix: f ? g.widgetEventPrefix || a : a
            }, h, {
              constructor: e,
              namespace: k,
              widgetName: a,
              widgetFullName: m
            });
            f ? (d.each(f._childConstructors, function(a, b) {
              a = b.prototype;
              d.widget(a.namespace + "." + a.widgetName, e, b._proto)
            }), delete f._childConstructors) : b._childConstructors.push(e);
            d.widget.bridge(a, e);
            return e
          };
          d.widget.extend = function(a) {
            for (var b = U.call(arguments, 1), c = 0, f = b.length, e, g; c < f; c++)
              for (e in b[c]) g = b[c][e], b[c].hasOwnProperty(e) && void 0 !== g && (d.isPlainObject(g) ? a[e] = d.isPlainObject(a[e]) ? d.widget.extend({}, a[e], g) : d.widget.extend({}, g) : a[e] = g);
            return a
          };
          d.widget.bridge = function(a, b) {
            var c = b.prototype.widgetFullName || a;
            d.fn[a] = function(f) {
              var e = "string" === typeof f,
                g = U.call(arguments, 1),
                h = this;
              e ? this.length || "instance" !== f ? this.each(function() {
                var b,
                  e = d.data(this, c);
                if ("instance" === f) return h = e, !1;
                if (!e) return d.error("cannot call methods on " + a + " prior to initialization; attempted to call method '" + f + "'");
                if (!d.isFunction(e[f]) || "_" === f.charAt(0)) return d.error("no such method '" + f + "' for " + a + " widget instance");
                b = e[f].apply(e, g);
                if (b !== e && void 0 !== b) return h = b && b.jquery ? h.pushStack(b.get()) : b, !1
              }) : h = void 0 : (g.length && (f = d.widget.extend.apply(null, [f].concat(g))), this.each(function() {
                var a = d.data(this, c);
                a ? (a.option(f || {}), a._init && a._init()) : d.data(this, c, new b(f, this))
              }));
              return h
            }
          };
          d.Widget = function() {};
          d.Widget._childConstructors = [];
          d.Widget.prototype = {
            widgetName: "widget",
            widgetEventPrefix: "",
            defaultElement: "\x3cdiv\x3e",
            options: {
              classes: {},
              disabled: !1,
              create: null
            },
            _createWidget: function(a, b) {
              b = d(b || this.defaultElement || this)[0];
              this.element = d(b);
              this.uuid = X++;
              this.eventNamespace = "." + this.widgetName + this.uuid;
              this.bindings = d();
              this.hoverable = d();
              this.focusable = d();
              this.classesElementLookup = {};
              b !== this && (d.data(b, this.widgetFullName, this), this._on(!0, this.element, {
                remove: function(a) {
                  a.target === b && this.destroy()
                }
              }), this.document = d(b.style ? b.ownerDocument : b.document || b), this.window = d(this.document[0].defaultView || this.document[0].parentWindow));
              this.options = d.widget.extend({}, this.options, this._getCreateOptions(), a);
              this._create();
              this.options.disabled && this._setOptionDisabled(this.options.disabled);
              this._trigger("create", null, this._getCreateEventData());
              this._init()
            },
            _getCreateOptions: function() {
              return {}
            },
            _getCreateEventData: d.noop,
            _create: d.noop,
            _init: d.noop,
            destroy: function() {
              var a = this;
              this._destroy();
              d.each(this.classesElementLookup, function(b, c) {
                a._removeClass(c, b)
              });
              this.element.off(this.eventNamespace).removeData(this.widgetFullName);
              this.widget().off(this.eventNamespace).removeAttr("aria-disabled");
              this.bindings.off(this.eventNamespace)
            },
            _destroy: d.noop,
            widget: function() {
              return this.element
            },
            option: function(a, b) {
              var c = a,
                f, e, g;
              if (0 === arguments.length) return d.widget.extend({}, this.options);
              if ("string" === typeof a)
                if (c = {}, f = a.split("."), a = f.shift(), f.length) {
                  e = c[a] = d.widget.extend({}, this.options[a]);
                  for (g = 0; g < f.length - 1; g++) e[f[g]] = e[f[g]] || {}, e = e[f[g]];
                  a = f.pop();
                  if (1 === arguments.length) return void 0 === e[a] ? null : e[a];
                  e[a] = b
                } else {
                  if (1 === arguments.length) return void 0 === this.options[a] ? null : this.options[a];
                  c[a] = b
                } this._setOptions(c);
              return this
            },
            _setOptions: function(a) {
              for (var b in a) this._setOption(b, a[b]);
              return this
            },
            _setOption: function(a, b) {
              "classes" === a && this._setOptionClasses(b);
              this.options[a] = b;
              "disabled" === a && this._setOptionDisabled(b);
              return this
            },
            _setOptionClasses: function(a) {
              var b, c, f;
              for (b in a) f = this.classesElementLookup[b], a[b] !== this.options.classes[b] && f && f.length && (c = d(f.get()), this._removeClass(f, b), c.addClass(this._classes({
                element: c,
                keys: b,
                classes: a,
                add: !0
              })))
            },
            _setOptionDisabled: function(a) {
              this._toggleClass(this.widget(), this.widgetFullName + "-disabled", null, !!a);
              a && (this._removeClass(this.hoverable, null, "ui-state-hover"), this._removeClass(this.focusable, null, "ui-state-focus"))
            },
            enable: function() {
              return this._setOptions({
                disabled: !1
              })
            },
            disable: function() {
              return this._setOptions({
                disabled: !0
              })
            },
            _classes: function(a) {
              function b(b, g) {
                var e, k;
                for (k = 0; k < b.length; k++) e = f.classesElementLookup[b[k]] || d(), e = a.add ? d(d.unique(e.get().concat(a.element.get()))) : d(e.not(a.element).get()), f.classesElementLookup[b[k]] = e, c.push(b[k]), g && a.classes[b[
                  k]] && c.push(a.classes[b[k]])
              }
              var c = [],
                f = this;
              a = d.extend({
                element: this.element,
                classes: this.options.classes || {}
              }, a);
              this._on(a.element, {
                remove: "_untrackClassesElement"
              });
              a.keys && b(a.keys.match(/\S+/g) || [], !0);
              a.extra && b(a.extra.match(/\S+/g) || []);
              return c.join(" ")
            },
            _untrackClassesElement: function(a) {
              var b = this;
              d.each(b.classesElementLookup, function(c, f) {
                -1 !== d.inArray(a.target, f) && (b.classesElementLookup[c] = d(f.not(a.target).get()))
              })
            },
            _removeClass: function(a, b, c) {
              return this._toggleClass(a, b, c, !1)
            },
            _addClass: function(a, b, c) {
              return this._toggleClass(a, b, c, !0)
            },
            _toggleClass: function(a, b, c, d) {
              d = "boolean" === typeof d ? d : c;
              var f = "string" === typeof a || null === a;
              a = {
                extra: f ? b : c,
                keys: f ? a : b,
                element: f ? this.element : a,
                add: d
              };
              a.element.toggleClass(this._classes(a), d);
              return this
            },
            _on: function(a, b, c) {
              var f, e = this;
              "boolean" !== typeof a && (c = b, b = a, a = !1);
              c ? (b = f = d(b), this.bindings = this.bindings.add(b)) : (c = b, b = this.element, f = this.widget());
              d.each(c, function(c, h) {
                function g() {
                  if (a || !0 !== e.options.disabled && !d(this).hasClass("ui-state-disabled")) return ("string" === typeof h ? e[h] : h).apply(e, arguments)
                }
                "string" !== typeof h && (g.guid = h.guid = h.guid || g.guid || d.guid++);
                var m = c.match(/^([\w:-]*)\s*(.*)$/);
                c = m[1] + e.eventNamespace;
                if (m = m[2]) f.on(c, m, g);
                else b.on(c, g)
              })
            },
            _off: function(a, b) {
              b = (b || "").split(" ").join(this.eventNamespace + " ") + this.eventNamespace;
              a.off(b).off(b);
              this.bindings = d(this.bindings.not(a).get());
              this.focusable = d(this.focusable.not(a).get());
              this.hoverable = d(this.hoverable.not(a).get())
            },
            _delay: function(a, b) {
              var c = this;
              return setTimeout(function() {
                return ("string" === typeof a ? c[a] : a).apply(c, arguments)
              }, b || 0)
            },
            _hoverable: function(a) {
              this.hoverable = this.hoverable.add(a);
              this._on(a, {
                mouseenter: function(a) {
                  this._addClass(d(a.currentTarget), null, "ui-state-hover")
                },
                mouseleave: function(a) {
                  this._removeClass(d(a.currentTarget), null, "ui-state-hover")
                }
              })
            },
            _focusable: function(a) {
              this.focusable = this.focusable.add(a);
              this._on(a, {
                focusin: function(a) {
                  this._addClass(d(a.currentTarget), null, "ui-state-focus")
                },
                focusout: function(a) {
                  this._removeClass(d(a.currentTarget), null, "ui-state-focus")
                }
              })
            },
            _trigger: function(a, b, c) {
              var f, e = this.options[a];
              c = c || {};
              b = d.Event(b);
              b.type = (a === this.widgetEventPrefix ? a : this.widgetEventPrefix + a).toLowerCase();
              b.target = this.element[0];
              if (a = b.originalEvent)
                for (f in a) f in b || (b[f] = a[f]);
              this.element.trigger(b, c);
              return !(d.isFunction(e) && !1 === e.apply(this.element[0], [b].concat(c)) || b.isDefaultPrevented())
            }
          };
          d.each({
            show: "fadeIn",
            hide: "fadeOut"
          }, function(a, b) {
            d.Widget.prototype["_" + a] = function(c, f, e) {
              "string" === typeof f && (f = {
                effect: f
              });
              var g, h = f ? !0 === f || "number" === typeof f ? b : f.effect || b : a;
              f = f || {};
              "number" === typeof f && (f = {
                duration: f
              });
              g = !d.isEmptyObject(f);
              f.complete = e;
              f.delay && c.delay(f.delay);
              if (g && d.effects && d.effects.effect[h]) c[a](f);
              else if (h !== a && c[h]) c[h](f.duration, f.easing, e);
              else c.queue(function(b) {
                d(this)[a]();
                e && e.call(c[0]);
                b()
              })
            }
          });
          (function() {
            function a(a, b, c) {
              return [parseFloat(a[0]) * (p.test(a[0]) ? b / 100 : 1), parseFloat(a[1]) * (p.test(a[1]) ? c / 100 : 1)]
            }

            function b(a) {
              var b = a[0];
              return 9 === b.nodeType ? {
                width: a.width(),
                height: a.height(),
                offset: {
                  top: 0,
                  left: 0
                }
              } : d.isWindow(b) ? {
                width: a.width(),
                height: a.height(),
                offset: {
                  top: a.scrollTop(),
                  left: a.scrollLeft()
                }
              } : b.preventDefault ? {
                width: 0,
                height: 0,
                offset: {
                  top: b.pageY,
                  left: b.pageX
                }
              } : {
                width: a.outerWidth(),
                height: a.outerHeight(),
                offset: a.offset()
              }
            }
            var c, f = Math.max,
              e = Math.abs,
              g = /left|center|right/,
              h = /top|center|bottom/,
              k = /[\+\-]\d+(\.[\d]+)?%?/,
              m = /^\w+/,
              p = /%$/,
              n = d.fn.position;
            d.position = {
              scrollbarWidth: function() {
                if (void 0 !== c) return c;
                var a, b, f = d("\x3cdiv style\x3d'display:block;position:absolute;width:50px;height:50px;overflow:hidden;'\x3e\x3cdiv style\x3d'height:100px;width:auto;'\x3e\x3c/div\x3e\x3c/div\x3e");
                b = f.children()[0];
                d("body").append(f);
                a = b.offsetWidth;
                f.css("overflow", "scroll");
                b = b.offsetWidth;
                a === b && (b = f[0].clientWidth);
                f.remove();
                return c = a - b
              },
              getScrollInfo: function(a) {
                var b = a.isWindow || a.isDocument ? "" : a.element.css("overflow-x"),
                  c = a.isWindow || a.isDocument ? "" : a.element.css("overflow-y"),
                  b = "scroll" === b || "auto" === b && a.width < a.element[0].scrollWidth;
                return {
                  width: "scroll" === c || "auto" === c && a.height < a.element[0].scrollHeight ? d.position.scrollbarWidth() : 0,
                  height: b ? d.position.scrollbarWidth() : 0
                }
              },
              getWithinInfo: function(a) {
                var b = d(a || window),
                  c = d.isWindow(b[0]),
                  f = !!b[0] && 9 === b[0].nodeType;
                return {
                  element: b,
                  isWindow: c,
                  isDocument: f,
                  offset: c || f ? {
                    left: 0,
                    top: 0
                  } : d(a).offset(),
                  scrollLeft: b.scrollLeft(),
                  scrollTop: b.scrollTop(),
                  width: b.outerWidth(),
                  height: b.outerHeight()
                }
              }
            };
            d.fn.position = function(c) {
              if (!c || !c.of) return n.apply(this, arguments);
              c = d.extend({}, c);
              var t, l, q, p, u, z, A = d(c.of),
                V = d.position.getWithinInfo(c.within),
                C = d.position.getScrollInfo(V),
                B = (c.collision || "flip").split(" "),
                v = {};
              z = b(A);
              A[0].preventDefault && (c.at = "left top");
              l = z.width;
              q = z.height;
              p = z.offset;
              u = d.extend({}, p);
              d.each(["my", "at"], function() {
                var a = (c[this] || "").split(" "),
                  b, d;
                1 === a.length && (a = g.test(a[0]) ? a.concat(["center"]) : h.test(a[0]) ? ["center"].concat(a) : ["center", "center"]);
                a[0] = g.test(a[0]) ? a[0] : "center";
                a[1] = h.test(a[1]) ? a[1] : "center";
                b = k.exec(a[0]);
                d = k.exec(a[1]);
                v[this] = [b ? b[0] : 0, d ? d[0] : 0];
                c[this] = [m.exec(a[0])[0], m.exec(a[1])[0]]
              });
              1 === B.length && (B[1] = B[0]);
              "right" === c.at[0] ? u.left += l : "center" === c.at[0] && (u.left += l / 2);
              "bottom" === c.at[1] ? u.top += q : "center" === c.at[1] && (u.top += q / 2);
              t = a(v.at, l, q);
              u.left += t[0];
              u.top += t[1];
              return this.each(function() {
                var b, g, h = d(this),
                  k = h.outerWidth(),
                  m = h.outerHeight(),
                  w = parseInt(d.css(this, "marginLeft"), 10) || 0,
                  n = parseInt(d.css(this, "marginTop"), 10) || 0,
                  r = k + w + (parseInt(d.css(this, "marginRight"), 10) || 0) + C.width,
                  z = m + n + (parseInt(d.css(this, "marginBottom"), 10) || 0) + C.height,
                  y = d.extend({}, u),
                  I = a(v.my, h.outerWidth(), h.outerHeight());
                "right" === c.my[0] ? y.left -= k : "center" === c.my[0] && (y.left -= k / 2);
                "bottom" === c.my[1] ? y.top -= m : "center" === c.my[1] && (y.top -= m / 2);
                y.left += I[0];
                y.top += I[1];
                b = {
                  marginLeft: w,
                  marginTop: n
                };
                d.each(["left", "top"], function(a, f) {
                  if (d.ui.position[B[a]]) d.ui.position[B[a]][f](y, {
                    targetWidth: l,
                    targetHeight: q,
                    elemWidth: k,
                    elemHeight: m,
                    collisionPosition: b,
                    collisionWidth: r,
                    collisionHeight: z,
                    offset: [t[0] + I[0], t[1] + I[1]],
                    my: c.my,
                    at: c.at,
                    within: V,
                    elem: h
                  })
                });
                c.using && (g = function(a) {
                  var b = p.left - y.left,
                    d = b + l - k,
                    g = p.top - y.top,
                    t = g + q - m,
                    w = {
                      target: {
                        element: A,
                        left: p.left,
                        top: p.top,
                        width: l,
                        height: q
                      },
                      element: {
                        element: h,
                        left: y.left,
                        top: y.top,
                        width: k,
                        height: m
                      },
                      horizontal: 0 > d ? "left" : 0 < b ? "right" : "center",
                      vertical: 0 > t ? "top" : 0 < g ? "bottom" : "middle"
                    };
                  l < k && e(b + d) < l && (w.horizontal = "center");
                  q < m && e(g + t) < q && (w.vertical = "middle");
                  f(e(b), e(d)) > f(e(g), e(t)) ? w.important = "horizontal" : w.important = "vertical";
                  c.using.call(this, a, w)
                });
                h.offset(d.extend(y, {
                  using: g
                }))
              })
            };
            d.ui.position = {
              fit: {
                left: function(a, b) {
                  var c = b.within,
                    d = c.isWindow ? c.scrollLeft : c.offset.left,
                    e = c.width,
                    g = a.left - b.collisionPosition.marginLeft,
                    c = d - g,
                    h = g + b.collisionWidth - e - d;
                  b.collisionWidth > e ? 0 < c && 0 >= h ? (b = a.left + c + b.collisionWidth - e - d, a.left += c - b) : a.left = 0 < h && 0 >= c ? d : c > h ? d + e - b.collisionWidth : d : a.left = 0 < c ? a.left + c : 0 < h ? a.left -
                    h : f(a.left - g, a.left)
                },
                top: function(a, b) {
                  var c = b.within,
                    d = c.isWindow ? c.scrollTop : c.offset.top,
                    e = b.within.height,
                    g = a.top - b.collisionPosition.marginTop,
                    c = d - g,
                    h = g + b.collisionHeight - e - d;
                  b.collisionHeight > e ? 0 < c && 0 >= h ? (b = a.top + c + b.collisionHeight - e - d, a.top += c - b) : a.top = 0 < h && 0 >= c ? d : c > h ? d + e - b.collisionHeight : d : a.top = 0 < c ? a.top + c : 0 < h ? a.top -
                    h : f(a.top - g, a.top)
                }
              },
              flip: {
                left: function(a, b) {
                  var c = b.within,
                    d = c.offset.left + c.scrollLeft,
                    f = c.width,
                    g = c.isWindow ? c.scrollLeft : c.offset.left,
                    h = a.left - b.collisionPosition.marginLeft,
                    c = h - g,
                    k = h + b.collisionWidth - f - g,
                    h = "left" === b.my[0] ? -b.elemWidth : "right" === b.my[0] ? b.elemWidth : 0,
                    m = "left" === b.at[0] ? b.targetWidth : "right" === b.at[0] ? -b.targetWidth : 0,
                    l = -2 * b.offset[0];
                  if (0 > c) {
                    if (b = a.left + h + m + l + b.collisionWidth - f - d, 0 > b || b < e(c)) a.left += h + m + l
                  } else 0 < k && (b = a.left - b.collisionPosition.marginLeft + h + m + l - g, 0 < b || e(b) < k) && (a.left += h + m + l)
                },
                top: function(a, b) {
                  var c = b.within,
                    d = c.offset.top + c.scrollTop,
                    f = c.height,
                    g = c.isWindow ? c.scrollTop : c.offset.top,
                    h = a.top - b.collisionPosition.marginTop,
                    c = h - g,
                    k = h + b.collisionHeight - f - g,
                    h = "top" === b.my[1] ? -b.elemHeight : "bottom" === b.my[1] ? b.elemHeight : 0,
                    m = "top" === b.at[1] ? b.targetHeight : "bottom" === b.at[1] ? -b.targetHeight : 0,
                    l = -2 * b.offset[1];
                  if (0 > c) {
                    if (b = a.top + h + m + l + b.collisionHeight - f - d, 0 > b || b < e(c)) a.top += h + m + l
                  } else 0 < k && (b = a.top - b.collisionPosition.marginTop + h + m + l - g, 0 < b || e(b) < k) && (a.top += h + m + l)
                }
              },
              flipfit: {
                left: function() {
                  d.ui.position.flip.left.apply(this, arguments);
                  d.ui.position.fit.left.apply(this, arguments)
                },
                top: function() {
                  d.ui.position.flip.top.apply(this, arguments);
                  d.ui.position.fit.top.apply(this, arguments)
                }
              }
            }
          })();
          d.extend(d.expr[":"], {
            data: d.expr.createPseudo ? d.expr.createPseudo(function(a) {
              return function(b) {
                return !!d.data(b, a)
              }
            }) : function(a, b, c) {
              return !!d.data(a, c[3])
            }
          });
          d.fn.extend({
            disableSelection: function() {
              var a = "onselectstart" in document.createElement("div") ? "selectstart" : "mousedown";
              return function() {
                return this.on(a + ".ui-disableSelection", function(a) {
                  a.preventDefault()
                })
              }
            }(),
            enableSelection: function() {
              return this.off(".ui-disableSelection")
            }
          });
          d.ui.focusable = function(a, b) {
            var c;
            c = a.nodeName.toLowerCase();
            if ("area" === c) {
              b = a.parentNode;
              c = b.name;
              if (!a.href || !c || "map" !== b.nodeName.toLowerCase()) return !1;
              a = d("img[usemap\x3d'#" + c + "']");
              return 0 < a.length && a.is(":visible")
            }
            /^(input|select|textarea|button|object)$/.test(c) ? (b = !a.disabled) && (c = d(a).closest("fieldset")[0]) && (b = !c.disabled) : b = "a" === c ? a.href || b : b;
            if (b = b && d(a).is(":visible")) {
              a = d(a);
              for (b = a.css("visibility");
                "inherit" === b;) a = a.parent(), b = a.css("visibility");
              b = "hidden" !== b
            }
            return b
          };
          d.extend(d.expr[":"], {
            focusable: function(a) {
              return d.ui.focusable(a, null != d.attr(a, "tabindex"))
            }
          });
          d.fn.form = function() {
            return "string" === typeof this[0].form ? this.closest("form") : d(this[0].form)
          };
          d.ui.formResetMixin = {
            _formResetHandler: function() {
              var a = d(this);
              setTimeout(function() {
                var b = a.data("ui-form-reset-instances");
                d.each(b, function() {
                  this.refresh()
                })
              })
            },
            _bindFormResetHandler: function() {
              this.form = this.element.form();
              if (this.form.length) {
                var a = this.form.data("ui-form-reset-instances") || [];
                if (!a.length) this.form.on("reset.ui-form-reset", this._formResetHandler);
                a.push(this);
                this.form.data("ui-form-reset-instances", a)
              }
            },
            _unbindFormResetHandler: function() {
              if (this.form.length) {
                var a = this.form.data("ui-form-reset-instances");
                a.splice(d.inArray(this, a), 1);
                a.length ? this.form.data("ui-form-reset-instances", a) : this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")
              }
            }
          };
          d.ui.keyCode = {
            BACKSPACE: 8,
            COMMA: 188,
            DELETE: 46,
            DOWN: 40,
            END: 35,
            ENTER: 13,
            ESCAPE: 27,
            HOME: 36,
            LEFT: 37,
            PAGE_DOWN: 34,
            PAGE_UP: 33,
            PERIOD: 190,
            RIGHT: 39,
            SPACE: 32,
            TAB: 9,
            UP: 38
          };
          d.ui.escapeSelector = function() {
            var a = /([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;
            return function(b) {
              return b.replace(a, "\\$1")
            }
          }();
          d.fn.labels = function() {
            var a, b, c;
            if (this[0].labels && this[0].labels.length) return this.pushStack(this[0].labels);
            c = this.eq(0).parents("label");
            if (b = this.attr("id")) a = this.eq(0).parents().last(), a = a.add(a.length ? a.siblings() : this.siblings()), b = "label[for\x3d'" + d.ui.escapeSelector(b) + "']", c = c.add(a.find(b).addBack(b));
            return this.pushStack(c)
          };
          d.fn.scrollParent = function(a) {
            var b = this.css("position"),
              c = "absolute" === b,
              f = a ? /(auto|scroll|hidden)/ : /(auto|scroll)/;
            a = this.parents().filter(function() {
              var a = d(this);
              return c && "static" === a.css("position") ? !1 : f.test(a.css("overflow") + a.css("overflow-y") + a.css("overflow-x"))
            }).eq(0);
            return "fixed" !== b && a.length ? a : d(this[0].ownerDocument || document)
          };
          d.extend(d.expr[":"], {
            tabbable: function(a) {
              var b = d.attr(a, "tabindex"),
                c = null != b;
              return (!c || 0 <= b) && d.ui.focusable(a, c)
            }
          });
          d.fn.extend({
            uniqueId: function() {
              var a = 0;
              return function() {
                return this.each(function() {
                  this.id || (this.id = "ui-id-" + ++a)
                })
              }
            }(),
            removeUniqueId: function() {
              return this.each(function() {
                /^ui-id-\d+$/.test(this.id) && d(this).removeAttr("id")
              })
            }
          });
          d.ui.ie = !!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());
          var J = !1;
          d(document).on("mouseup", function() {
            J = !1
          });
          d.widget("ui.mouse", {
            version: "1.12.1",
            options: {
              cancel: "input, textarea, button, select, option",
              distance: 1,
              delay: 0
            },
            _mouseInit: function() {
              var a = this;
              this.element.on("mousedown." + this.widgetName, function(b) {
                return a._mouseDown(b)
              }).on("click." + this.widgetName, function(b) {
                if (!0 === d.data(b.target, a.widgetName + ".preventClickEvent")) return d.removeData(b.target, a.widgetName + ".preventClickEvent"), b.stopImmediatePropagation(), !1
              });
              this.started = !1
            },
            _mouseDestroy: function() {
              this.element.off("." + this.widgetName);
              this._mouseMoveDelegate && this.document.off("mousemove." + this.widgetName, this._mouseMoveDelegate).off("mouseup." + this.widgetName, this._mouseUpDelegate)
            },
            _mouseDown: function(a) {
              if (!J) {
                this._mouseMoved = !1;
                this._mouseStarted && this._mouseUp(a);
                this._mouseDownEvent = a;
                var b = this,
                  c = 1 === a.which,
                  f = "string" === typeof this.options.cancel && a.target.nodeName ? d(a.target).closest(this.options.cancel).length : !1;
                if (!c || f || !this._mouseCapture(a)) return !0;
                this.mouseDelayMet = !this.options.delay;
                this.mouseDelayMet || (this._mouseDelayTimer = setTimeout(function() {
                  b.mouseDelayMet = !0
                }, this.options.delay));
                if (this._mouseDistanceMet(a) && this._mouseDelayMet(a) && (this._mouseStarted = !1 !== this._mouseStart(a), !this._mouseStarted)) return a.preventDefault(), !0;
                !0 === d.data(a.target, this.widgetName + ".preventClickEvent") && d.removeData(a.target, this.widgetName + ".preventClickEvent");
                this._mouseMoveDelegate = function(a) {
                  return b._mouseMove(a)
                };
                this._mouseUpDelegate = function(a) {
                  return b._mouseUp(a)
                };
                this.document.on("mousemove." + this.widgetName, this._mouseMoveDelegate).on("mouseup." + this.widgetName, this._mouseUpDelegate);
                a.preventDefault();
                return J = !0
              }
            },
            _mouseMove: function(a) {
              if (this._mouseMoved) {
                if (d.ui.ie && (!document.documentMode || 9 > document.documentMode) && !a.button) return this._mouseUp(a);
                if (!a.which)
                  if (a.originalEvent.altKey || a.originalEvent.ctrlKey || a.originalEvent.metaKey || a.originalEvent.shiftKey) this.ignoreMissingWhich = !0;
                  else if (!this.ignoreMissingWhich) return this._mouseUp(a)
              }
              if (a.which || a.button) this._mouseMoved = !0;
              if (this._mouseStarted) return this._mouseDrag(a), a.preventDefault();
              this._mouseDistanceMet(a) && this._mouseDelayMet(a) && ((this._mouseStarted = !1 !== this._mouseStart(this._mouseDownEvent, a)) ? this._mouseDrag(a) : this._mouseUp(a));
              return !this._mouseStarted
            },
            _mouseUp: function(a) {
              this.document.off("mousemove." + this.widgetName, this._mouseMoveDelegate).off("mouseup." + this.widgetName, this._mouseUpDelegate);
              this._mouseStarted && (this._mouseStarted = !1, a.target === this._mouseDownEvent.target && d.data(a.target, this.widgetName + ".preventClickEvent", !0), this._mouseStop(a));
              this._mouseDelayTimer && (clearTimeout(this._mouseDelayTimer), delete this._mouseDelayTimer);
              J = this.ignoreMissingWhich = !1;
              a.preventDefault()
            },
            _mouseDistanceMet: function(a) {
              return Math.max(Math.abs(this._mouseDownEvent.pageX - a.pageX), Math.abs(this._mouseDownEvent.pageY - a.pageY)) >= this.options.distance
            },
            _mouseDelayMet: function() {
              return this.mouseDelayMet
            },
            _mouseStart: function() {},
            _mouseDrag: function() {},
            _mouseStop: function() {},
            _mouseCapture: function() {
              return !0
            }
          });
          d.ui.plugin = {
            add: function(a, b, c) {
              var f;
              a = d.ui[a].prototype;
              for (f in c) a.plugins[f] = a.plugins[f] || [], a.plugins[f].push([b, c[f]])
            },
            call: function(a, b, c, d) {
              if ((b = a.plugins[b]) && (d || a.element[0].parentNode && 11 !== a.element[0].parentNode.nodeType))
                for (d = 0; d < b.length; d++) a.options[b[d][0]] && b[d][1].apply(a.element, c)
            }
          };
          d.ui.safeActiveElement = function(a) {
            var b;
            try {
              b = a.activeElement
            } catch (c) {
              b = a.body
            }
            b || (b = a.body);
            b.nodeName || (b = a.body);
            return b
          };
          d.ui.safeBlur = function(a) {
            a && "body" !== a.nodeName.toLowerCase() && d(a).trigger("blur")
          };
          d.widget("ui.draggable", d.ui.mouse, {
            version: "1.12.1",
            widgetEventPrefix: "drag",
            options: {
              addClasses: !0,
              appendTo: "parent",
              axis: !1,
              connectToSortable: !1,
              containment: !1,
              cursor: "auto",
              cursorAt: !1,
              grid: !1,
              handle: !1,
              helper: "original",
              iframeFix: !1,
              opacity: !1,
              refreshPositions: !1,
              revert: !1,
              revertDuration: 500,
              scope: "default",
              scroll: !0,
              scrollSensitivity: 20,
              scrollSpeed: 20,
              snap: !1,
              snapMode: "both",
              snapTolerance: 20,
              stack: !1,
              zIndex: !1,
              drag: null,
              start: null,
              stop: null
            },
            _create: function() {
              "original" === this.options.helper && this._setPositionRelative();
              this.options.addClasses && this._addClass("ui-draggable");
              this._setHandleClassName();
              this._mouseInit()
            },
            _setOption: function(a, b) {
              this._super(a, b);
              "handle" === a && (this._removeHandleClassName(), this._setHandleClassName())
            },
            _destroy: function() {
              (this.helper || this.element).is(".ui-draggable-dragging") ? this.destroyOnClear = !0 : (this._removeHandleClassName(), this._mouseDestroy())
            },
            _mouseCapture: function(a) {
              var b = this.options;
              if (this.helper || b.disabled || 0 < d(a.target).closest(".ui-resizable-handle").length) return !1;
              this.handle = this._getHandle(a);
              if (!this.handle) return !1;
              this._blurActiveElement(a);
              this._blockFrames(!0 === b.iframeFix ? "iframe" : b.iframeFix);
              return !0
            },
            _blockFrames: function(a) {
              this.iframeBlocks = this.document.find(a).map(function() {
                var a = d(this);
                return d("\x3cdiv\x3e").css("position", "absolute").appendTo(a.parent()).outerWidth(a.outerWidth()).outerHeight(a.outerHeight()).offset(a.offset())[0]
              })
            },
            _unblockFrames: function() {
              this.iframeBlocks && (this.iframeBlocks.remove(), delete this.iframeBlocks)
            },
            _blurActiveElement: function(a) {
              var b = d.ui.safeActiveElement(this.document[0]);
              d(a.target).closest(b).length || d.ui.safeBlur(b)
            },
            _mouseStart: function(a) {
              var b = this.options;
              this.helper = this._createHelper(a);
              this._addClass(this.helper, "ui-draggable-dragging");
              this._cacheHelperProportions();
              d.ui.ddmanager && (d.ui.ddmanager.current = this);
              this._cacheMargins();
              this.cssPosition = this.helper.css("position");
              this.scrollParent = this.helper.scrollParent(!0);
              this.offsetParent = this.helper.offsetParent();
              this.hasFixedAncestor = 0 < this.helper.parents().filter(function() {
                return "fixed" === d(this).css("position")
              }).length;
              this.positionAbs = this.element.offset();
              this._refreshOffsets(a);
              this.originalPosition = this.position = this._generatePosition(a, !1);
              this.originalPageX = a.pageX;
              this.originalPageY = a.pageY;
              b.cursorAt && this._adjustOffsetFromHelper(b.cursorAt);
              this._setContainment();
              if (!1 === this._trigger("start", a)) return this._clear(), !1;
              this._cacheHelperProportions();
              d.ui.ddmanager && !b.dropBehaviour && d.ui.ddmanager.prepareOffsets(this, a);
              this._mouseDrag(a, !0);
              d.ui.ddmanager && d.ui.ddmanager.dragStart(this, a);
              return !0
            },
            _refreshOffsets: function(a) {
              this.offset = {
                top: this.positionAbs.top - this.margins.top,
                left: this.positionAbs.left - this.margins.left,
                scroll: !1,
                parent: this._getParentOffset(),
                relative: this._getRelativeOffset()
              };
              this.offset.click = {
                left: a.pageX - this.offset.left,
                top: a.pageY - this.offset.top
              }
            },
            _mouseDrag: function(a, b) {
              this.hasFixedAncestor && (this.offset.parent = this._getParentOffset());
              this.position = this._generatePosition(a, !0);
              this.positionAbs = this._convertPositionTo("absolute");
              if (!b) {
                b = this._uiHash();
                if (!1 === this._trigger("drag", a, b)) return this._mouseUp(new d.Event("mouseup", a)), !1;
                this.position = b.position
              }
              this.helper[0].style.left = this.position.left + "px";
              this.helper[0].style.top = this.position.top + "px";
              d.ui.ddmanager && d.ui.ddmanager.drag(this, a);
              return !1
            },
            _mouseStop: function(a) {
              var b = this,
                c = !1;
              d.ui.ddmanager && !this.options.dropBehaviour && (c = d.ui.ddmanager.drop(this, a));
              this.dropped && (c = this.dropped, this.dropped = !1);
              "invalid" === this.options.revert && !c || "valid" === this.options.revert && c || !0 === this.options.revert || d.isFunction(this.options.revert) && this.options.revert.call(this.element, c) ? d(this.helper).animate(this
                .originalPosition, parseInt(this.options.revertDuration, 10),
                function() {
                  !1 !== b._trigger("stop", a) && b._clear()
                }) : !1 !== this._trigger("stop", a) && this._clear();
              return !1
            },
            _mouseUp: function(a) {
              this._unblockFrames();
              d.ui.ddmanager && d.ui.ddmanager.dragStop(this, a);
              this.handleElement.is(a.target) && this.element.trigger("focus");
              return d.ui.mouse.prototype._mouseUp.call(this, a)
            },
            cancel: function() {
              this.helper.is(".ui-draggable-dragging") ? this._mouseUp(new d.Event("mouseup", {
                target: this.element[0]
              })) : this._clear();
              return this
            },
            _getHandle: function(a) {
              return this.options.handle ? !!d(a.target).closest(this.element.find(this.options.handle)).length : !0
            },
            _setHandleClassName: function() {
              this.handleElement = this.options.handle ? this.element.find(this.options.handle) : this.element;
              this._addClass(this.handleElement, "ui-draggable-handle")
            },
            _removeHandleClassName: function() {
              this._removeClass(this.handleElement, "ui-draggable-handle")
            },
            _createHelper: function(a) {
              var b = this.options,
                c = d.isFunction(b.helper);
              a = c ? d(b.helper.apply(this.element[0],
                [a])) : "clone" === b.helper ? this.element.clone().removeAttr("id") : this.element;
              a.parents("body").length || a.appendTo("parent" === b.appendTo ? this.element[0].parentNode : b.appendTo);
              c && a[0] === this.element[0] && this._setPositionRelative();
              a[0] === this.element[0] || /(fixed|absolute)/.test(a.css("position")) || a.css("position", "absolute");
              return a
            },
            _setPositionRelative: function() {
              /^(?:r|a|f)/.test(this.element.css("position")) || (this.element[0].style.position = "relative")
            },
            _adjustOffsetFromHelper: function(a) {
              "string" === typeof a && (a = a.split(" "));
              d.isArray(a) && (a = {
                left: +a[0],
                top: +a[1] || 0
              });
              "left" in a && (this.offset.click.left = a.left + this.margins.left);
              "right" in a && (this.offset.click.left = this.helperProportions.width - a.right + this.margins.left);
              "top" in a && (this.offset.click.top = a.top + this.margins.top);
              "bottom" in a && (this.offset.click.top = this.helperProportions.height - a.bottom + this.margins.top)
            },
            _isRootNode: function(a) {
              return /(html|body)/i.test(a.tagName) || a === this.document[0]
            },
            _getParentOffset: function() {
              var a = this.offsetParent.offset(),
                b = this.document[0];
              "absolute" === this.cssPosition && this.scrollParent[0] !== b && d.contains(this.scrollParent[0], this.offsetParent[0]) && (a.left += this.scrollParent.scrollLeft(), a.top += this.scrollParent.scrollTop());
              this._isRootNode(this.offsetParent[0]) && (a = {
                top: 0,
                left: 0
              });
              return {
                top: a.top + (parseInt(this.offsetParent.css("borderTopWidth"), 10) || 0),
                left: a.left + (parseInt(this.offsetParent.css("borderLeftWidth"), 10) || 0)
              }
            },
            _getRelativeOffset: function() {
              if ("relative" !== this.cssPosition) return {
                top: 0,
                left: 0
              };
              var a = this.element.position(),
                b = this._isRootNode(this.scrollParent[0]);
              return {
                top: a.top - (parseInt(this.helper.css("top"), 10) || 0) + (b ? 0 : this.scrollParent.scrollTop()),
                left: a.left - (parseInt(this.helper.css("left"), 10) || 0) + (b ? 0 : this.scrollParent.scrollLeft())
              }
            },
            _cacheMargins: function() {
              this.margins = {
                left: parseInt(this.element.css("marginLeft"), 10) || 0,
                top: parseInt(this.element.css("marginTop"), 10) || 0,
                right: parseInt(this.element.css("marginRight"), 10) || 0,
                bottom: parseInt(this.element.css("marginBottom"), 10) || 0
              }
            },
            _cacheHelperProportions: function() {
              this.helperProportions = {
                width: this.helper.outerWidth(),
                height: this.helper.outerHeight()
              }
            },
            _setContainment: function() {
              var a, b, c;
              a = this.options;
              b = this.document[0];
              this.relativeContainer = null;
              if (a.containment)
                if ("window" === a.containment) this.containment = [d(window).scrollLeft() - this.offset.relative.left - this.offset.parent.left, d(window).scrollTop() - this.offset.relative.top - this.offset.parent.top, d(window)
                  .scrollLeft() + d(window).width() - this.helperProportions.width - this.margins.left, d(window).scrollTop() + (d(window).height() || b.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top
                ];
                else if ("document" === a.containment) this.containment = [0, 0, d(b).width() - this.helperProportions.width - this.margins.left, (d(b).height() || b.body.parentNode.scrollHeight) - this.helperProportions.height - this
                .margins.top
              ];
              else if (a.containment.constructor === Array) this.containment = a.containment;
              else {
                if ("parent" === a.containment && (a.containment = this.helper[0].parentNode), b = d(a.containment), c = b[0]) a = /(scroll|auto)/.test(b.css("overflow")), this.containment = [(parseInt(b.css("borderLeftWidth"), 10) ||
                  0) + (parseInt(b.css("paddingLeft"), 10) || 0), (parseInt(b.css("borderTopWidth"), 10) || 0) + (parseInt(b.css("paddingTop"), 10) || 0), (a ? Math.max(c.scrollWidth, c.offsetWidth) : c.offsetWidth) - (parseInt(b.css(
                    "borderRightWidth"), 10) || 0) - (parseInt(b.css("paddingRight"), 10) || 0) - this.helperProportions.width - this.margins.left - this.margins.right, (a ? Math.max(c.scrollHeight, c.offsetHeight) : c.offsetHeight) - (
                    parseInt(b.css("borderBottomWidth"), 10) || 0) - (parseInt(b.css("paddingBottom"), 10) || 0) - this.helperProportions.height - this.margins.top - this.margins.bottom
                ], this.relativeContainer = b
              } else this.containment = null
            },
            _convertPositionTo: function(a, b) {
              b || (b = this.position);
              a = "absolute" === a ? 1 : -1;
              var c = this._isRootNode(this.scrollParent[0]);
              return {
                top: b.top + this.offset.relative.top * a + this.offset.parent.top * a - ("fixed" === this.cssPosition ? -this.offset.scroll.top : c ? 0 : this.offset.scroll.top) * a,
                left: b.left + this.offset.relative.left * a + this.offset.parent.left * a - ("fixed" === this.cssPosition ? -this.offset.scroll.left : c ? 0 : this.offset.scroll.left) * a
              }
            },
            _generatePosition: function(a, b) {
              var c, d, e, g = this.options,
                h = this._isRootNode(this.scrollParent[0]);
              e = a.pageX;
              d = a.pageY;
              h && this.offset.scroll || (this.offset.scroll = {
                top: this.scrollParent.scrollTop(),
                left: this.scrollParent.scrollLeft()
              });
              b && (this.containment && (this.relativeContainer ? (c = this.relativeContainer.offset(), c = [this.containment[0] + c.left, this.containment[1] + c.top, this.containment[2] + c.left, this.containment[3] + c.top]) : c = this
                .containment, a.pageX - this.offset.click.left < c[0] && (e = c[0] + this.offset.click.left), a.pageY - this.offset.click.top < c[1] && (d = c[1] + this.offset.click.top), a.pageX - this.offset.click.left > c[2] && (
                  e = c[2] + this.offset.click.left), a.pageY - this.offset.click.top > c[3] && (d = c[3] + this.offset.click.top)), g.grid && (d = g.grid[1] ? this.originalPageY + Math.round((d - this.originalPageY) / g.grid[1]) * g
                .grid[1] : this.originalPageY, d = c ? d - this.offset.click.top >= c[1] || d - this.offset.click.top > c[3] ? d : d - this.offset.click.top >= c[1] ? d - g.grid[1] : d + g.grid[1] : d, e = g.grid[0] ? this
                .originalPageX + Math.round((e - this.originalPageX) / g.grid[0]) * g.grid[0] : this.originalPageX, e = c ? e - this.offset.click.left >= c[0] || e - this.offset.click.left > c[2] ? e : e - this.offset.click.left >= c[
                  0] ? e - g.grid[0] : e + g.grid[0] : e), "y" === g.axis && (e = this.originalPageX), "x" === g.axis && (d = this.originalPageY));
              return {
                top: d - this.offset.click.top - this.offset.relative.top - this.offset.parent.top + ("fixed" === this.cssPosition ? -this.offset.scroll.top : h ? 0 : this.offset.scroll.top),
                left: e - this.offset.click.left - this.offset.relative.left - this.offset.parent.left + ("fixed" === this.cssPosition ? -this.offset.scroll.left : h ? 0 : this.offset.scroll.left)
              }
            },
            _clear: function() {
              this._removeClass(this.helper, "ui-draggable-dragging");
              this.helper[0] === this.element[0] || this.cancelHelperRemoval || this.helper.remove();
              this.helper = null;
              this.cancelHelperRemoval = !1;
              this.destroyOnClear && this.destroy()
            },
            _trigger: function(a, b, c) {
              c = c || this._uiHash();
              d.ui.plugin.call(this, a, [b, c, this], !0);
              /^(drag|start|stop)/.test(a) && (this.positionAbs = this._convertPositionTo("absolute"), c.offset = this.positionAbs);
              return d.Widget.prototype._trigger.call(this, a, b, c)
            },
            plugins: {},
            _uiHash: function() {
              return {
                helper: this.helper,
                position: this.position,
                originalPosition: this.originalPosition,
                offset: this.positionAbs
              }
            }
          });
          d.ui.plugin.add("draggable", "connectToSortable", {
            start: function(a, b, c) {
              var f = d.extend({}, b, {
                item: c.element
              });
              c.sortables = [];
              d(c.options.connectToSortable).each(function() {
                var b = d(this).sortable("instance");
                b && !b.options.disabled && (c.sortables.push(b), b.refreshPositions(), b._trigger("activate", a, f))
              })
            },
            stop: function(a, b, c) {
              var f = d.extend({}, b, {
                item: c.element
              });
              c.cancelHelperRemoval = !1;
              d.each(c.sortables, function() {
                this.isOver ? (this.isOver = 0, c.cancelHelperRemoval = !0, this.cancelHelperRemoval = !1, this._storedCSS = {
                  position: this.placeholder.css("position"),
                  top: this.placeholder.css("top"),
                  left: this.placeholder.css("left")
                }, this._mouseStop(a), this.options.helper = this.options._helper) : (this.cancelHelperRemoval = !0, this._trigger("deactivate", a, f))
              })
            },
            drag: function(a, b, c) {
              d.each(c.sortables, function() {
                var f = !1,
                  e = this;
                e.positionAbs = c.positionAbs;
                e.helperProportions = c.helperProportions;
                e.offset.click = c.offset.click;
                e._intersectsWith(e.containerCache) && (f = !0, d.each(c.sortables, function() {
                  this.positionAbs = c.positionAbs;
                  this.helperProportions = c.helperProportions;
                  this.offset.click = c.offset.click;
                  this !== e && this._intersectsWith(this.containerCache) && d.contains(e.element[0], this.element[0]) && (f = !1);
                  return f
                }));
                f ? (e.isOver || (e.isOver = 1, c._parent = b.helper.parent(), e.currentItem = b.helper.appendTo(e.element).data("ui-sortable-item", !0), e.options._helper = e.options.helper, e.options.helper = function() {
                    return b.helper[0]
                  }, a.target = e.currentItem[0], e._mouseCapture(a, !0), e._mouseStart(a, !0, !0), e.offset.click.top = c.offset.click.top, e.offset.click.left = c.offset.click.left, e.offset.parent.left -= c.offset.parent.left -
                  e.offset.parent.left, e.offset.parent.top -= c.offset.parent.top - e.offset.parent.top, c._trigger("toSortable", a), c.dropped = e.element, d.each(c.sortables, function() {
                    this.refreshPositions()
                  }), c.currentItem = c.element, e.fromOutside = c), e.currentItem && (e._mouseDrag(a), b.position = e.position)) : e.isOver && (e.isOver = 0, e.cancelHelperRemoval = !0, e.options._revert = e.options.revert, e
                  .options.revert = !1, e._trigger("out", a, e._uiHash(e)), e._mouseStop(a, !0), e.options.revert = e.options._revert, e.options.helper = e.options._helper, e.placeholder && e.placeholder.remove(), b.helper.appendTo(
                    c._parent), c._refreshOffsets(a), b.position = c._generatePosition(a, !0), c._trigger("fromSortable", a), c.dropped = !1, d.each(c.sortables, function() {
                    this.refreshPositions()
                  }))
              })
            }
          });
          d.ui.plugin.add("draggable", "cursor", {
            start: function(a, b, c) {
              a = d("body");
              c = c.options;
              a.css("cursor") && (c._cursor = a.css("cursor"));
              a.css("cursor", c.cursor)
            },
            stop: function(a, b, c) {
              a = c.options;
              a._cursor && d("body").css("cursor", a._cursor)
            }
          });
          d.ui.plugin.add("draggable", "opacity", {
            start: function(a, b, c) {
              a = d(b.helper);
              c = c.options;
              a.css("opacity") && (c._opacity = a.css("opacity"));
              a.css("opacity", c.opacity)
            },
            stop: function(a, b, c) {
              a = c.options;
              a._opacity && d(b.helper).css("opacity", a._opacity)
            }
          });
          d.ui.plugin.add("draggable", "scroll", {
            start: function(a, b, c) {
              c.scrollParentNotHidden || (c.scrollParentNotHidden = c.helper.scrollParent(!1));
              c.scrollParentNotHidden[0] !== c.document[0] && "HTML" !== c.scrollParentNotHidden[0].tagName && (c.overflowOffset = c.scrollParentNotHidden.offset())
            },
            drag: function(a, b, c) {
              b = c.options;
              var f = !1,
                e = c.scrollParentNotHidden[0],
                g = c.document[0];
              e !== g && "HTML" !== e.tagName ? (b.axis && "x" === b.axis || (c.overflowOffset.top + e.offsetHeight - a.pageY < b.scrollSensitivity ? e.scrollTop = f = e.scrollTop + b.scrollSpeed : a.pageY - c.overflowOffset.top < b
                .scrollSensitivity && (e.scrollTop = f = e.scrollTop - b.scrollSpeed)), b.axis && "y" === b.axis || (c.overflowOffset.left + e.offsetWidth - a.pageX < b.scrollSensitivity ? e.scrollLeft = f = e.scrollLeft + b
                .scrollSpeed : a.pageX - c.overflowOffset.left < b.scrollSensitivity && (e.scrollLeft = f = e.scrollLeft - b.scrollSpeed))) : (b.axis && "x" === b.axis || (a.pageY - d(g).scrollTop() < b.scrollSensitivity ? f = d(g)
                .scrollTop(d(g).scrollTop() - b.scrollSpeed) : d(window).height() - (a.pageY - d(g).scrollTop()) < b.scrollSensitivity && (f = d(g).scrollTop(d(g).scrollTop() + b.scrollSpeed))), b.axis && "y" === b.axis || (a.pageX -
                d(g).scrollLeft() < b.scrollSensitivity ? f = d(g).scrollLeft(d(g).scrollLeft() - b.scrollSpeed) : d(window).width() - (a.pageX - d(g).scrollLeft()) < b.scrollSensitivity && (f = d(g).scrollLeft(d(g).scrollLeft() + b
                  .scrollSpeed))));
              !1 !== f && d.ui.ddmanager && !b.dropBehaviour && d.ui.ddmanager.prepareOffsets(c, a)
            }
          });
          d.ui.plugin.add("draggable", "snap", {
            start: function(a, b, c) {
              a = c.options;
              c.snapElements = [];
              d(a.snap.constructor !== String ? a.snap.items || ":data(ui-draggable)" : a.snap).each(function() {
                var a = d(this),
                  b = a.offset();
                this !== c.element[0] && c.snapElements.push({
                  item: this,
                  width: a.outerWidth(),
                  height: a.outerHeight(),
                  top: b.top,
                  left: b.left
                })
              })
            },
            drag: function(a, b, c) {
              var f, e, g, h, k, m, p, n, l, t, w = c.options,
                q = w.snapTolerance,
                r = b.offset.left,
                u = r + c.helperProportions.width,
                z = b.offset.top,
                A = z + c.helperProportions.height;
              for (l = c.snapElements.length - 1; 0 <= l; l--) k = c.snapElements[l].left - c.margins.left, m = k + c.snapElements[l].width, p = c.snapElements[l].top - c.margins.top, n = p + c.snapElements[l].height, u < k - q || r > m +
                q || A < p - q || z > n + q || !d.contains(c.snapElements[l].item.ownerDocument, c.snapElements[l].item) ? (c.snapElements[l].snapping && c.options.snap.release && c.options.snap.release.call(c.element, a, d.extend(c
                  ._uiHash(), {
                    snapItem: c.snapElements[l].item
                  })), c.snapElements[l].snapping = !1) : ("inner" !== w.snapMode && (f = Math.abs(p - A) <= q, e = Math.abs(n - z) <= q, g = Math.abs(k - u) <= q, h = Math.abs(m - r) <= q, f && (b.position.top = c._convertPositionTo(
                  "relative", {
                    top: p - c.helperProportions.height,
                    left: 0
                  }).top), e && (b.position.top = c._convertPositionTo("relative", {
                  top: n,
                  left: 0
                }).top), g && (b.position.left = c._convertPositionTo("relative", {
                  top: 0,
                  left: k - c.helperProportions.width
                }).left), h && (b.position.left = c._convertPositionTo("relative", {
                  top: 0,
                  left: m
                }).left)), t = f || e || g || h, "outer" !== w.snapMode && (f = Math.abs(p - z) <= q, e = Math.abs(n - A) <= q, g = Math.abs(k - r) <= q, h = Math.abs(m - u) <= q, f && (b.position.top = c._convertPositionTo(
                "relative", {
                  top: p,
                  left: 0
                }).top), e && (b.position.top = c._convertPositionTo("relative", {
                  top: n - c.helperProportions.height,
                  left: 0
                }).top), g && (b.position.left = c._convertPositionTo("relative", {
                  top: 0,
                  left: k
                }).left), h && (b.position.left = c._convertPositionTo("relative", {
                  top: 0,
                  left: m - c.helperProportions.width
                }).left)), !c.snapElements[l].snapping && (f || e || g || h || t) && c.options.snap.snap && c.options.snap.snap.call(c.element, a, d.extend(c._uiHash(), {
                  snapItem: c.snapElements[l].item
                })), c.snapElements[l].snapping = f || e || g || h || t)
            }
          });
          d.ui.plugin.add("draggable", "stack", {
            start: function(a, b, c) {
              var f;
              a = d.makeArray(d(c.options.stack)).sort(function(a, b) {
                return (parseInt(d(a).css("zIndex"), 10) || 0) - (parseInt(d(b).css("zIndex"), 10) || 0)
              });
              a.length && (f = parseInt(d(a[0]).css("zIndex"), 10) || 0, d(a).each(function(a) {
                d(this).css("zIndex", f + a)
              }), this.css("zIndex", f + a.length))
            }
          });
          d.ui.plugin.add("draggable", "zIndex", {
            start: function(a, b, c) {
              a = d(b.helper);
              c = c.options;
              a.css("zIndex") && (c._zIndex = a.css("zIndex"));
              a.css("zIndex", c.zIndex)
            },
            stop: function(a, b, c) {
              a = c.options;
              a._zIndex && d(b.helper).css("zIndex", a._zIndex)
            }
          });
          d.widget("ui.droppable", {
            version: "1.12.1",
            widgetEventPrefix: "drop",
            options: {
              accept: "*",
              addClasses: !0,
              greedy: !1,
              scope: "default",
              tolerance: "intersect",
              activate: null,
              deactivate: null,
              drop: null,
              out: null,
              over: null
            },
            _create: function() {
              var a, b = this.options,
                c = b.accept;
              this.isover = !1;
              this.isout = !0;
              this.accept = d.isFunction(c) ? c : function(a) {
                return a.is(c)
              };
              this.proportions = function() {
                if (arguments.length) a = arguments[0];
                else return a ? a : a = {
                  width: this.element[0].offsetWidth,
                  height: this.element[0].offsetHeight
                }
              };
              this._addToManager(b.scope);
              b.addClasses && this._addClass("ui-droppable")
            },
            _addToManager: function(a) {
              d.ui.ddmanager.droppables[a] = d.ui.ddmanager.droppables[a] || [];
              d.ui.ddmanager.droppables[a].push(this)
            },
            _splice: function(a) {
              for (var b = 0; b < a.length; b++) a[b] === this && a.splice(b, 1)
            },
            _destroy: function() {
              this._splice(d.ui.ddmanager.droppables[this.options.scope])
            },
            _setOption: function(a, b) {
              "accept" === a ? this.accept = d.isFunction(b) ? b : function(a) {
                return a.is(b)
              } : "scope" === a && (this._splice(d.ui.ddmanager.droppables[this.options.scope]), this._addToManager(b));
              this._super(a, b)
            },
            _activate: function(a) {
              var b = d.ui.ddmanager.current;
              this._addActiveClass();
              b && this._trigger("activate", a, this.ui(b))
            },
            _deactivate: function(a) {
              var b = d.ui.ddmanager.current;
              this._removeActiveClass();
              b && this._trigger("deactivate", a, this.ui(b))
            },
            _over: function(a) {
              var b = d.ui.ddmanager.current;
              b && (b.currentItem || b.element)[0] !== this.element[0] && this.accept.call(this.element[0], b.currentItem || b.element) && (this._addHoverClass(), this._trigger("over", a, this.ui(b)))
            },
            _out: function(a) {
              var b = d.ui.ddmanager.current;
              b && (b.currentItem || b.element)[0] !== this.element[0] && this.accept.call(this.element[0], b.currentItem || b.element) && (this._removeHoverClass(), this._trigger("out", a, this.ui(b)))
            },
            _drop: function(a, b) {
              var c = b || d.ui.ddmanager.current,
                f = !1;
              if (!c || (c.currentItem || c.element)[0] === this.element[0]) return !1;
              this.element.find(":data(ui-droppable)").not(".ui-draggable-dragging").each(function() {
                var b = d(this).droppable("instance");
                if (b.options.greedy && !b.options.disabled && b.options.scope === c.options.scope && b.accept.call(b.element[0], c.currentItem || c.element) && Q(c, d.extend(b, {
                    offset: b.element.offset()
                  }), b.options.tolerance, a)) return f = !0, !1
              });
              return f ? !1 : this.accept.call(this.element[0], c.currentItem || c.element) ? (this._removeActiveClass(), this._removeHoverClass(), this._trigger("drop", a, this.ui(c)), this.element) : !1
            },
            ui: function(a) {
              return {
                draggable: a.currentItem || a.element,
                helper: a.helper,
                position: a.position,
                offset: a.positionAbs
              }
            },
            _addHoverClass: function() {
              this._addClass("ui-droppable-hover")
            },
            _removeHoverClass: function() {
              this._removeClass("ui-droppable-hover")
            },
            _addActiveClass: function() {
              this._addClass("ui-droppable-active")
            },
            _removeActiveClass: function() {
              this._removeClass("ui-droppable-active")
            }
          });
          var Q = d.ui.intersect = function() {
            return function(a, b, c, d) {
              if (!b.offset) return !1;
              var f = (a.positionAbs || a.position.absolute).left + a.margins.left,
                g = (a.positionAbs || a.position.absolute).top + a.margins.top,
                h = f + a.helperProportions.width,
                k = g + a.helperProportions.height,
                m = b.offset.left,
                p = b.offset.top,
                n = m + b.proportions().width,
                l = p + b.proportions().height;
              switch (c) {
                case "fit":
                  return m <= f && h <= n && p <= g && k <= l;
                case "intersect":
                  return m < f + a.helperProportions.width / 2 && h - a.helperProportions.width / 2 < n && p < g + a.helperProportions.height / 2 && k - a.helperProportions.height / 2 < l;
                case "pointer":
                  a = d.pageY;
                  c = b.proportions().height;
                  if (p = a >= p && a < p + c) d = d.pageX, b = b.proportions().width, p = d >= m && d < m + b;
                  return p;
                case "touch":
                  return (g >= p && g <= l || k >= p && k <= l || g < p && k > l) && (f >= m && f <= n || h >= m && h <= n || f < m && h > n);
                default:
                  return !1
              }
            }
          }();
          d.ui.ddmanager = {
            current: null,
            droppables: {
              "default": []
            },
            prepareOffsets: function(a, b) {
              var c, f, e = d.ui.ddmanager.droppables[a.options.scope] || [],
                g = b ? b.type : null,
                h = (a.currentItem || a.element).find(":data(ui-droppable)").addBack();
              c = 0;
              a: for (; c < e.length; c++)
                if (!(e[c].options.disabled || a && !e[c].accept.call(e[c].element[0], a.currentItem || a.element))) {
                  for (f = 0; f < h.length; f++)
                    if (h[f] === e[c].element[0]) {
                      e[c].proportions().height = 0;
                      continue a
                    } e[c].visible = "none" !== e[c].element.css("display");
                  e[c].visible && ("mousedown" === g && e[c]._activate.call(e[c], b), e[c].offset = e[c].element.offset(), e[c].proportions({
                    width: e[c].element[0].offsetWidth,
                    height: e[c].element[0].offsetHeight
                  }))
                }
            },
            drop: function(a, b) {
              var c = !1;
              d.each((d.ui.ddmanager.droppables[a.options.scope] || []).slice(), function() {
                this.options && (!this.options.disabled && this.visible && Q(a, this, this.options.tolerance, b) && (c = this._drop.call(this, b) || c), !this.options.disabled && this.visible && this.accept.call(this.element[0], a
                  .currentItem || a.element) && (this.isout = !0, this.isover = !1, this._deactivate.call(this, b)))
              });
              return c
            },
            dragStart: function(a, b) {
              a.element.parentsUntil("body").on("scroll.droppable", function() {
                a.options.refreshPositions || d.ui.ddmanager.prepareOffsets(a, b)
              })
            },
            drag: function(a, b) {
              a.options.refreshPositions && d.ui.ddmanager.prepareOffsets(a, b);
              d.each(d.ui.ddmanager.droppables[a.options.scope] || [], function() {
                if (!this.options.disabled && !this.greedyChild && this.visible) {
                  var c, f, e;
                  e = Q(a, this, this.options.tolerance, b);
                  var g = !e && this.isover ? "isout" : e && !this.isover ? "isover" : null;
                  g && (this.options.greedy && (f = this.options.scope, e = this.element.parents(":data(ui-droppable)").filter(function() {
                      return d(this).droppable("instance").options.scope === f
                    }), e.length && (c = d(e[0]).droppable("instance"), c.greedyChild = "isover" === g)), c && "isover" === g && (c.isover = !1, c.isout = !0, c._out.call(c, b)), this[g] = !0, this["isout" === g ? "isover" :
                    "isout"] = !1, this["isover" === g ? "_over" : "_out"].call(this, b), c && "isout" === g && (c.isout = !1, c.isover = !0, c._over.call(c, b)))
                }
              })
            },
            dragStop: function(a, b) {
              a.element.parentsUntil("body").off("scroll.droppable");
              a.options.refreshPositions || d.ui.ddmanager.prepareOffsets(a, b)
            }
          };
          !1 !== d.uiBackCompat && d.widget("ui.droppable", d.ui.droppable, {
            options: {
              hoverClass: !1,
              activeClass: !1
            },
            _addActiveClass: function() {
              this._super();
              this.options.activeClass && this.element.addClass(this.options.activeClass)
            },
            _removeActiveClass: function() {
              this._super();
              this.options.activeClass && this.element.removeClass(this.options.activeClass)
            },
            _addHoverClass: function() {
              this._super();
              this.options.hoverClass && this.element.addClass(this.options.hoverClass)
            },
            _removeHoverClass: function() {
              this._super();
              this.options.hoverClass && this.element.removeClass(this.options.hoverClass)
            }
          });
          d.widget("ui.resizable", d.ui.mouse, {
            version: "1.12.1",
            widgetEventPrefix: "resize",
            options: {
              alsoResize: !1,
              animate: !1,
              animateDuration: "slow",
              animateEasing: "swing",
              aspectRatio: !1,
              autoHide: !1,
              classes: {
                "ui-resizable-se": "ui-icon ui-icon-gripsmall-diagonal-se"
              },
              containment: !1,
              ghost: !1,
              grid: !1,
              handles: "e,s,se",
              helper: !1,
              maxHeight: null,
              maxWidth: null,
              minHeight: 10,
              minWidth: 10,
              zIndex: 90,
              resize: null,
              start: null,
              stop: null
            },
            _num: function(a) {
              return parseFloat(a) || 0
            },
            _isNumber: function(a) {
              return !isNaN(parseFloat(a))
            },
            _hasScroll: function(a, b) {
              if ("hidden" === d(a).css("overflow")) return !1;
              b = b && "left" === b ? "scrollLeft" : "scrollTop";
              var c;
              if (0 < a[b]) return !0;
              a[b] = 1;
              c = 0 < a[b];
              a[b] = 0;
              return c
            },
            _create: function() {
              var a, b = this.options,
                c = this;
              this._addClass("ui-resizable");
              d.extend(this, {
                _aspectRatio: !!b.aspectRatio,
                aspectRatio: b.aspectRatio,
                originalElement: this.element,
                _proportionallyResizeElements: [],
                _helper: b.helper || b.ghost || b.animate ? b.helper || "ui-resizable-helper" : null
              });
              this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i) && (this.element.wrap(d("\x3cdiv class\x3d'ui-wrapper' style\x3d'overflow: hidden;'\x3e\x3c/div\x3e").css({
                position: this.element.css("position"),
                width: this.element.outerWidth(),
                height: this.element.outerHeight(),
                top: this.element.css("top"),
                left: this.element.css("left")
              })), this.element = this.element.parent().data("ui-resizable", this.element.resizable("instance")), this.elementIsWrapper = !0, a = {
                marginTop: this.originalElement.css("marginTop"),
                marginRight: this.originalElement.css("marginRight"),
                marginBottom: this.originalElement.css("marginBottom"),
                marginLeft: this.originalElement.css("marginLeft")
              }, this.element.css(a), this.originalElement.css("margin", 0), this.originalResizeStyle = this.originalElement.css("resize"), this.originalElement.css("resize", "none"), this._proportionallyResizeElements.push(this
                .originalElement.css({
                  position: "static",
                  zoom: 1,
                  display: "block"
                })), this.originalElement.css(a), this._proportionallyResize());
              this._setupHandles();
              if (b.autoHide) d(this.element).on("mouseenter", function() {
                b.disabled || (c._removeClass("ui-resizable-autohide"), c._handles.show())
              }).on("mouseleave", function() {
                b.disabled || c.resizing || (c._addClass("ui-resizable-autohide"), c._handles.hide())
              });
              this._mouseInit()
            },
            _destroy: function() {
              this._mouseDestroy();
              var a, b = function(a) {
                d(a).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()
              };
              this.elementIsWrapper && (b(this.element), a = this.element, this.originalElement.css({
                position: a.css("position"),
                width: a.outerWidth(),
                height: a.outerHeight(),
                top: a.css("top"),
                left: a.css("left")
              }).insertAfter(a), a.remove());
              this.originalElement.css("resize", this.originalResizeStyle);
              b(this.originalElement);
              return this
            },
            _setOption: function(a, b) {
              this._super(a, b);
              switch (a) {
                case "handles":
                  this._removeHandles(), this._setupHandles()
              }
            },
            _setupHandles: function() {
              var a = this.options,
                b, c, f, e, g, h = this;
              this.handles = a.handles || (d(".ui-resizable-handle", this.element).length ? {
                n: ".ui-resizable-n",
                e: ".ui-resizable-e",
                s: ".ui-resizable-s",
                w: ".ui-resizable-w",
                se: ".ui-resizable-se",
                sw: ".ui-resizable-sw",
                ne: ".ui-resizable-ne",
                nw: ".ui-resizable-nw"
              } : "e,s,se");
              this._handles = d();
              if (this.handles.constructor === String)
                for ("all" === this.handles && (this.handles = "n,e,s,w,se,sw,ne,nw"), f = this.handles.split(","), this.handles = {}, c = 0; c < f.length; c++) b = d.trim(f[c]), e = "ui-resizable-" + b, g = d("\x3cdiv\x3e"), this
                  ._addClass(g, "ui-resizable-handle " + e),
                  g.css({
                    zIndex: a.zIndex
                  }), this.handles[b] = ".ui-resizable-" + b, this.element.append(g);
              this._renderAxis = function(a) {
                var b, c, f;
                a = a || this.element;
                for (b in this.handles) {
                  if (this.handles[b].constructor === String) this.handles[b] = this.element.children(this.handles[b]).first().show();
                  else if (this.handles[b].jquery || this.handles[b].nodeType) this.handles[b] = d(this.handles[b]), this._on(this.handles[b], {
                    mousedown: h._mouseDown
                  });
                  this.elementIsWrapper && this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i) && (c = d(this.handles[b], this.element), f = /sw|ne|nw|se|n|s/.test(b) ? c.outerHeight() : c.outerWidth(), c = [
                    "padding", /ne|nw|n/.test(b) ? "Top" : /se|sw|s/.test(b) ? "Bottom" : /^e$/.test(b) ? "Right" : "Left"
                  ].join(""), a.css(c, f), this._proportionallyResize());
                  this._handles = this._handles.add(this.handles[b])
                }
              };
              this._renderAxis(this.element);
              this._handles = this._handles.add(this.element.find(".ui-resizable-handle"));
              this._handles.disableSelection();
              this._handles.on("mouseover", function() {
                h.resizing || (this.className && (g = this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)), h.axis = g && g[1] ? g[1] : "se")
              });
              a.autoHide && (this._handles.hide(), this._addClass("ui-resizable-autohide"))
            },
            _removeHandles: function() {
              this._handles.remove()
            },
            _mouseCapture: function(a) {
              var b, c, f = !1;
              for (b in this.handles)
                if (c = d(this.handles[b])[0], c === a.target || d.contains(c, a.target)) f = !0;
              return !this.options.disabled && f
            },
            _mouseStart: function(a) {
              var b, c, f = this.options,
                e = this.element;
              this.resizing = !0;
              this._renderProxy();
              b = this._num(this.helper.css("left"));
              c = this._num(this.helper.css("top"));
              f.containment && (b += d(f.containment).scrollLeft() || 0, c += d(f.containment).scrollTop() || 0);
              this.offset = this.helper.offset();
              this.position = {
                left: b,
                top: c
              };
              this.size = this._helper ? {
                width: this.helper.width(),
                height: this.helper.height()
              } : {
                width: e.width(),
                height: e.height()
              };
              this.originalSize = this._helper ? {
                width: e.outerWidth(),
                height: e.outerHeight()
              } : {
                width: e.width(),
                height: e.height()
              };
              this.sizeDiff = {
                width: e.outerWidth() - e.width(),
                height: e.outerHeight() - e.height()
              };
              this.originalPosition = {
                left: b,
                top: c
              };
              this.originalMousePosition = {
                left: a.pageX,
                top: a.pageY
              };
              this.aspectRatio = "number" === typeof f.aspectRatio ? f.aspectRatio : this.originalSize.width / this.originalSize.height || 1;
              b = d(".ui-resizable-" + this.axis).css("cursor");
              d("body").css("cursor", "auto" === b ? this.axis + "-resize" : b);
              this._addClass("ui-resizable-resizing");
              this._propagate("start", a);
              return !0
            },
            _mouseDrag: function(a) {
              var b, c = this.originalMousePosition;
              b = a.pageX - c.left || 0;
              var c = a.pageY - c.top || 0,
                f = this._change[this.axis];
              this._updatePrevProperties();
              if (!f) return !1;
              b = f.apply(this,
                [a, b, c]);
              this._updateVirtualBoundaries(a.shiftKey);
              if (this._aspectRatio || a.shiftKey) b = this._updateRatio(b, a);
              b = this._respectSize(b, a);
              this._updateCache(b);
              this._propagate("resize", a);
              b = this._applyChanges();
              !this._helper && this._proportionallyResizeElements.length && this._proportionallyResize();
              d.isEmptyObject(b) || (this._updatePrevProperties(), this._trigger("resize", a, this.ui()), this._applyChanges());
              return !1
            },
            _mouseStop: function(a) {
              this.resizing = !1;
              var b, c, f, e = this.options;
              this._helper && (b = this._proportionallyResizeElements, b = (c = b.length && /textarea/i.test(b[0].nodeName)) && this._hasScroll(b[0], "left") ? 0 : this.sizeDiff.height, c = c ? 0 : this.sizeDiff.width, c = {
                  width: this.helper.width() - c,
                  height: this.helper.height() - b
                }, b = parseFloat(this.element.css("left")) + (this.position.left - this.originalPosition.left) || null, f = parseFloat(this.element.css("top")) + (this.position.top - this.originalPosition.top) || null, e.animate ||
                this.element.css(d.extend(c, {
                  top: f,
                  left: b
                })), this.helper.height(this.size.height), this.helper.width(this.size.width), this._helper && !e.animate && this._proportionallyResize());
              d("body").css("cursor", "auto");
              this._removeClass("ui-resizable-resizing");
              this._propagate("stop", a);
              this._helper && this.helper.remove();
              return !1
            },
            _updatePrevProperties: function() {
              this.prevPosition = {
                top: this.position.top,
                left: this.position.left
              };
              this.prevSize = {
                width: this.size.width,
                height: this.size.height
              }
            },
            _applyChanges: function() {
              var a = {};
              this.position.top !== this.prevPosition.top && (a.top = this.position.top + "px");
              this.position.left !== this.prevPosition.left && (a.left = this.position.left + "px");
              this.size.width !== this.prevSize.width && (a.width = this.size.width + "px");
              this.size.height !== this.prevSize.height && (a.height = this.size.height + "px");
              this.helper.css(a);
              return a
            },
            _updateVirtualBoundaries: function(a) {
              var b, c, d, e;
              e = this.options;
              e = {
                minWidth: this._isNumber(e.minWidth) ? e.minWidth : 0,
                maxWidth: this._isNumber(e.maxWidth) ? e.maxWidth : Infinity,
                minHeight: this._isNumber(e.minHeight) ? e.minHeight : 0,
                maxHeight: this._isNumber(e.maxHeight) ? e.maxHeight : Infinity
              };
              if (this._aspectRatio || a) a = e.minHeight * this.aspectRatio, c = e.minWidth / this.aspectRatio, b = e.maxHeight * this.aspectRatio, d = e.maxWidth / this.aspectRatio, a > e.minWidth && (e.minWidth = a), c > e.minHeight &&
                (e.minHeight = c), b < e.maxWidth && (e.maxWidth = b), d < e.maxHeight && (e.maxHeight = d);
              this._vBoundaries = e
            },
            _updateCache: function(a) {
              this.offset = this.helper.offset();
              this._isNumber(a.left) && (this.position.left = a.left);
              this._isNumber(a.top) && (this.position.top = a.top);
              this._isNumber(a.height) && (this.size.height = a.height);
              this._isNumber(a.width) && (this.size.width = a.width)
            },
            _updateRatio: function(a) {
              var b = this.position,
                c = this.size,
                d = this.axis;
              this._isNumber(a.height) ? a.width = a.height * this.aspectRatio : this._isNumber(a.width) && (a.height = a.width / this.aspectRatio);
              "sw" === d && (a.left = b.left + (c.width - a.width), a.top = null);
              "nw" === d && (a.top = b.top + (c.height - a.height), a.left = b.left + (c.width - a.width));
              return a
            },
            _respectSize: function(a) {
              var b = this._vBoundaries,
                c = this.axis,
                d = this._isNumber(a.width) && b.maxWidth && b.maxWidth < a.width,
                e = this._isNumber(a.height) && b.maxHeight && b.maxHeight < a.height,
                g = this._isNumber(a.width) && b.minWidth && b.minWidth > a.width,
                h = this._isNumber(a.height) && b.minHeight && b.minHeight > a.height,
                k = this.originalPosition.left + this.originalSize.width,
                m = this.originalPosition.top + this.originalSize.height,
                p = /sw|nw|w/.test(c),
                c = /nw|ne|n/.test(c);
              g && (a.width = b.minWidth);
              h && (a.height = b.minHeight);
              d && (a.width = b.maxWidth);
              e && (a.height = b.maxHeight);
              g && p && (a.left = k - b.minWidth);
              d && p && (a.left = k - b.maxWidth);
              h && c && (a.top = m - b.minHeight);
              e && c && (a.top = m - b.maxHeight);
              a.width || a.height || a.left || !a.top ? a.width || a.height || a.top || !a.left || (a.left = null) : a.top = null;
              return a
            },
            _getPaddingPlusBorderDimensions: function(a) {
              var b = 0,
                c = [],
                d = [a.css("borderTopWidth"), a.css("borderRightWidth"), a.css("borderBottomWidth"), a.css("borderLeftWidth")];
              for (a = [a.css("paddingTop"), a.css("paddingRight"), a.css("paddingBottom"), a.css("paddingLeft")]; 4 > b; b++) c[b] = parseFloat(d[b]) || 0, c[b] += parseFloat(a[b]) || 0;
              return {
                height: c[0] + c[2],
                width: c[1] + c[3]
              }
            },
            _proportionallyResize: function() {
              if (this._proportionallyResizeElements.length)
                for (var a,
                    b = 0, c = this.helper || this.element; b < this._proportionallyResizeElements.length; b++) a = this._proportionallyResizeElements[b], this.outerDimensions || (this.outerDimensions = this
                  ._getPaddingPlusBorderDimensions(a)), a.css({
                  height: c.height() - this.outerDimensions.height || 0,
                  width: c.width() - this.outerDimensions.width || 0
                })
            },
            _renderProxy: function() {
              var a = this.options;
              this.elementOffset = this.element.offset();
              this._helper ? (this.helper = this.helper || d("\x3cdiv style\x3d'overflow:hidden;'\x3e\x3c/div\x3e"), this._addClass(this.helper, this._helper), this.helper.css({
                width: this.element.outerWidth(),
                height: this.element.outerHeight(),
                position: "absolute",
                left: this.elementOffset.left + "px",
                top: this.elementOffset.top + "px",
                zIndex: ++a.zIndex
              }), this.helper.appendTo("body").disableSelection()) : this.helper = this.element
            },
            _change: {
              e: function(a, b) {
                return {
                  width: this.originalSize.width + b
                }
              },
              w: function(a, b) {
                return {
                  left: this.originalPosition.left + b,
                  width: this.originalSize.width - b
                }
              },
              n: function(a, b, c) {
                return {
                  top: this.originalPosition.top + c,
                  height: this.originalSize.height - c
                }
              },
              s: function(a, b, c) {
                return {
                  height: this.originalSize.height + c
                }
              },
              se: function(a, b, c) {
                return d.extend(this._change.s.apply(this, arguments), this._change.e.apply(this, [a, b, c]))
              },
              sw: function(a, b, c) {
                return d.extend(this._change.s.apply(this, arguments), this._change.w.apply(this, [a, b, c]))
              },
              ne: function(a, b, c) {
                return d.extend(this._change.n.apply(this, arguments), this._change.e.apply(this, [a, b, c]))
              },
              nw: function(a, b, c) {
                return d.extend(this._change.n.apply(this, arguments), this._change.w.apply(this, [a, b, c]))
              }
            },
            _propagate: function(a, b) {
              d.ui.plugin.call(this, a, [b, this.ui()]);
              "resize" !== a && this._trigger(a, b, this.ui())
            },
            plugins: {},
            ui: function() {
              return {
                originalElement: this.originalElement,
                element: this.element,
                helper: this.helper,
                position: this.position,
                size: this.size,
                originalSize: this.originalSize,
                originalPosition: this.originalPosition
              }
            }
          });
          d.ui.plugin.add("resizable", "animate", {
            stop: function(a) {
              var b = d(this).resizable("instance"),
                c = b.options,
                f = b._proportionallyResizeElements,
                e = f.length && /textarea/i.test(f[0].nodeName),
                g = e && b._hasScroll(f[0], "left") ? 0 : b.sizeDiff.height,
                e = {
                  width: b.size.width - (e ? 0 : b.sizeDiff.width),
                  height: b.size.height - g
                },
                g = parseFloat(b.element.css("left")) + (b.position.left - b.originalPosition.left) || null,
                h = parseFloat(b.element.css("top")) + (b.position.top - b.originalPosition.top) || null;
              b.element.animate(d.extend(e, h && g ? {
                top: h,
                left: g
              } : {}), {
                duration: c.animateDuration,
                easing: c.animateEasing,
                step: function() {
                  var c = {
                    width: parseFloat(b.element.css("width")),
                    height: parseFloat(b.element.css("height")),
                    top: parseFloat(b.element.css("top")),
                    left: parseFloat(b.element.css("left"))
                  };
                  f && f.length && d(f[0]).css({
                    width: c.width,
                    height: c.height
                  });
                  b._updateCache(c);
                  b._propagate("resize", a)
                }
              })
            }
          });
          d.ui.plugin.add("resizable", "containment", {
            start: function() {
              var a, b, c, f, e, g = d(this).resizable("instance"),
                h = g.element;
              c = g.options.containment;
              if (h = c instanceof d ? c.get(0) : /parent/.test(c) ? h.parent().get(0) : c) g.containerElement = d(h), /document/.test(c) || c === document ? (g.containerOffset = {
                left: 0,
                top: 0
              }, g.containerPosition = {
                left: 0,
                top: 0
              }, g.parentData = {
                element: d(document),
                left: 0,
                top: 0,
                width: d(document).width(),
                height: d(document).height() || document.body.parentNode.scrollHeight
              }) : (a = d(h), b = [], d(["Top", "Right", "Left", "Bottom"]).each(function(c, d) {
                b[c] = g._num(a.css("padding" + d))
              }), g.containerOffset = a.offset(), g.containerPosition = a.position(), g.containerSize = {
                height: a.innerHeight() - b[3],
                width: a.innerWidth() - b[1]
              }, c = g.containerOffset, f = g.containerSize.height, e = g.containerSize.width, e = g._hasScroll(h, "left") ? h.scrollWidth : e, f = g._hasScroll(h) ? h.scrollHeight : f, g.parentData = {
                element: h,
                left: c.left,
                top: c.top,
                width: e,
                height: f
              })
            },
            resize: function(a) {
              var b, c, f, e = d(this).resizable("instance");
              b = e.options;
              c = e.containerOffset;
              f = e.position;
              a = e._aspectRatio || a.shiftKey;
              var g = {
                  top: 0,
                  left: 0
                },
                h = e.containerElement,
                k = !0;
              h[0] !== document && /static/.test(h.css("position")) && (g = c);
              f.left < (e._helper ? c.left : 0) && (e.size.width += e._helper ? e.position.left - c.left : e.position.left - g.left, a && (e.size.height = e.size.width / e.aspectRatio, k = !1), e.position.left = b.helper ? c.left : 0);
              f.top < (e._helper ? c.top : 0) && (e.size.height += e._helper ? e.position.top - c.top : e.position.top, a && (e.size.width = e.size.height * e.aspectRatio, k = !1), e.position.top = e._helper ? c.top : 0);
              b = e.containerElement.get(0) === e.element.parent().get(0);
              f = /relative|absolute/.test(e.containerElement.css("position"));
              b && f ? (e.offset.left = e.parentData.left + e.position.left, e.offset.top = e.parentData.top + e.position.top) : (e.offset.left = e.element.offset().left, e.offset.top = e.element.offset().top);
              b = Math.abs(e.sizeDiff.width + (e._helper ? e.offset.left - g.left : e.offset.left - c.left));
              c = Math.abs(e.sizeDiff.height + (e._helper ? e.offset.top - g.top : e.offset.top - c.top));
              b + e.size.width >= e.parentData.width && (e.size.width = e.parentData.width - b, a && (e.size.height = e.size.width / e.aspectRatio, k = !1));
              c + e.size.height >= e.parentData.height && (e.size.height = e.parentData.height - c, a && (e.size.width = e.size.height * e.aspectRatio, k = !1));
              k || (e.position.left = e.prevPosition.left, e.position.top = e.prevPosition.top, e.size.width = e.prevSize.width, e.size.height = e.prevSize.height)
            },
            stop: function() {
              var a = d(this).resizable("instance"),
                b = a.options,
                c = a.containerOffset,
                f = a.containerPosition,
                e = a.containerElement,
                g = d(a.helper),
                h = g.offset(),
                k = g.outerWidth() - a.sizeDiff.width,
                g = g.outerHeight() - a.sizeDiff.height;
              a._helper && !b.animate && /relative/.test(e.css("position")) && d(this).css({
                left: h.left - f.left - c.left,
                width: k,
                height: g
              });
              a._helper && !b.animate && /static/.test(e.css("position")) && d(this).css({
                left: h.left - f.left - c.left,
                width: k,
                height: g
              })
            }
          });
          d.ui.plugin.add("resizable", "alsoResize", {
            start: function() {
              var a = d(this).resizable("instance").options;
              d(a.alsoResize).each(function() {
                var a = d(this);
                a.data("ui-resizable-alsoresize", {
                  width: parseFloat(a.width()),
                  height: parseFloat(a.height()),
                  left: parseFloat(a.css("left")),
                  top: parseFloat(a.css("top"))
                })
              })
            },
            resize: function(a, b) {
              a = d(this).resizable("instance");
              var c = a.originalSize,
                f = a.originalPosition,
                e = {
                  height: a.size.height - c.height || 0,
                  width: a.size.width - c.width || 0,
                  top: a.position.top - f.top || 0,
                  left: a.position.left - f.left || 0
                };
              d(a.options.alsoResize).each(function() {
                var a = d(this),
                  c = d(this).data("ui-resizable-alsoresize"),
                  f = {},
                  m = a.parents(b.originalElement[0]).length ? ["width", "height"] : ["width", "height", "top", "left"];
                d.each(m, function(a, b) {
                  (a = (c[b] || 0) + (e[b] || 0)) && 0 <= a && (f[b] = a || null)
                });
                a.css(f)
              })
            },
            stop: function() {
              d(this).removeData("ui-resizable-alsoresize")
            }
          });
          d.ui.plugin.add("resizable", "ghost", {
            start: function() {
              var a = d(this).resizable("instance"),
                b = a.size;
              a.ghost = a.originalElement.clone();
              a.ghost.css({
                opacity: .25,
                display: "block",
                position: "relative",
                height: b.height,
                width: b.width,
                margin: 0,
                left: 0,
                top: 0
              });
              a._addClass(a.ghost, "ui-resizable-ghost");
              !1 !== d.uiBackCompat && "string" === typeof a.options.ghost && a.ghost.addClass(this.options.ghost);
              a.ghost.appendTo(a.helper)
            },
            resize: function() {
              var a = d(this).resizable("instance");
              a.ghost && a.ghost.css({
                position: "relative",
                height: a.size.height,
                width: a.size.width
              })
            },
            stop: function() {
              var a = d(this).resizable("instance");
              a.ghost && a.helper && a.helper.get(0).removeChild(a.ghost.get(0))
            }
          });
          d.ui.plugin.add("resizable", "grid", {
            resize: function() {
              var a,
                b = d(this).resizable("instance"),
                c = b.options,
                f = b.size,
                e = b.originalSize,
                g = b.originalPosition,
                h = b.axis,
                k = "number" === typeof c.grid ? [c.grid, c.grid] : c.grid,
                m = k[0] || 1,
                p = k[1] || 1,
                n = Math.round((f.width - e.width) / m) * m,
                f = Math.round((f.height - e.height) / p) * p,
                l = e.width + n,
                t = e.height + f,
                w = c.maxWidth && c.maxWidth < l,
                q = c.maxHeight && c.maxHeight < t,
                r = c.minWidth && c.minWidth > l,
                u = c.minHeight && c.minHeight > t;
              c.grid = k;
              r && (l += m);
              u && (t += p);
              w && (l -= m);
              q && (t -= p);
              if (/^(se|s|e)$/.test(h)) b.size.width = l, b.size.height = t;
              else if (/^(ne)$/.test(h)) b.size.width = l, b.size.height = t, b.position.top = g.top - f;
              else if (/^(sw)$/.test(h)) b.size.width = l, b.size.height = t, b.position.left = g.left - n;
              else {
                if (0 >= t - p || 0 >= l - m) a = b._getPaddingPlusBorderDimensions(this);
                0 < t - p ? (b.size.height = t, b.position.top = g.top - f) : (t = p - a.height, b.size.height = t, b.position.top = g.top + e.height - t);
                0 < l - m ? (b.size.width = l, b.position.left = g.left - n) : (l = m - a.width, b.size.width = l, b.position.left = g.left + e.width - l)
              }
            }
          });
          d.widget("ui.menu", {
            version: "1.12.1",
            defaultElement: "\x3cul\x3e",
            delay: 300,
            options: {
              icons: {
                submenu: "ui-icon-caret-1-e"
              },
              items: "\x3e *",
              menus: "ul",
              position: {
                my: "left top",
                at: "right top"
              },
              role: "menu",
              blur: null,
              focus: null,
              select: null
            },
            _create: function() {
              this.activeMenu = this.element;
              this.mouseHandled = !1;
              this.element.uniqueId().attr({
                role: this.options.role,
                tabIndex: 0
              });
              this._addClass("ui-menu", "ui-widget ui-widget-content");
              this._on({
                "mousedown .ui-menu-item": function(a) {
                  a.preventDefault()
                },
                "click .ui-menu-item": function(a) {
                  var b = d(a.target),
                    c = d(d.ui.safeActiveElement(this.document[0]));
                  !this.mouseHandled && b.not(".ui-state-disabled").length && (this.select(a), a.isPropagationStopped() || (this.mouseHandled = !0), b.has(".ui-menu").length ? this.expand(a) : !this.element.is(":focus") && c
                    .closest(".ui-menu").length && (this.element.trigger("focus", [!0]), this.active && 1 === this.active.parents(".ui-menu").length && clearTimeout(this.timer)))
                },
                "mouseenter .ui-menu-item": function(a) {
                  if (!this.previousFilter) {
                    var b = d(a.target).closest(".ui-menu-item"),
                      c = d(a.currentTarget);
                    b[0] === c[0] && (this._removeClass(c.siblings().children(".ui-state-active"), null, "ui-state-active"), this.focus(a, c))
                  }
                },
                mouseleave: "collapseAll",
                "mouseleave .ui-menu": "collapseAll",
                focus: function(a, b) {
                  var c = this.active || this.element.find(this.options.items).eq(0);
                  b || this.focus(a, c)
                },
                blur: function(a) {
                  this._delay(function() {
                    d.contains(this.element[0], d.ui.safeActiveElement(this.document[0])) || this.collapseAll(a)
                  })
                },
                keydown: "_keydown"
              });
              this.refresh();
              this._on(this.document, {
                click: function(a) {
                  this._closeOnDocumentClick(a) && this.collapseAll(a);
                  this.mouseHandled = !1
                }
              })
            },
            _destroy: function() {
              var a = this.element.find(".ui-menu-item").removeAttr("role aria-disabled").children(".ui-menu-item-wrapper").removeUniqueId().removeAttr("tabIndex role aria-haspopup");
              this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeAttr("role aria-labelledby aria-expanded aria-hidden aria-disabled tabIndex").removeUniqueId().show();
              a.children().each(function() {
                var a = d(this);
                a.data("ui-menu-submenu-caret") && a.remove()
              })
            },
            _keydown: function(a) {
              var b, c, f, e = !0;
              switch (a.keyCode) {
                case d.ui.keyCode.PAGE_UP:
                  this.previousPage(a);
                  break;
                case d.ui.keyCode.PAGE_DOWN:
                  this.nextPage(a);
                  break;
                case d.ui.keyCode.HOME:
                  this._move("first", "first", a);
                  break;
                case d.ui.keyCode.END:
                  this._move("last", "last", a);
                  break;
                case d.ui.keyCode.UP:
                  this.previous(a);
                  break;
                case d.ui.keyCode.DOWN:
                  this.next(a);
                  break;
                case d.ui.keyCode.LEFT:
                  this.collapse(a);
                  break;
                case d.ui.keyCode.RIGHT:
                  this.active && !this.active.is(".ui-state-disabled") && this.expand(a);
                  break;
                case d.ui.keyCode.ENTER:
                case d.ui.keyCode.SPACE:
                  this._activate(a);
                  break;
                case d.ui.keyCode.ESCAPE:
                  this.collapse(a);
                  break;
                default:
                  e = !1, b = this.previousFilter || "", f = !1, c = 96 <= a.keyCode && 105 >= a.keyCode ? (a.keyCode - 96).toString() : String.fromCharCode(a.keyCode), clearTimeout(this.filterTimer),
                    c === b ? f = !0 : c = b + c, b = this._filterMenuItems(c), b = f && -1 !== b.index(this.active.next()) ? this.active.nextAll(".ui-menu-item") : b, b.length || (c = String.fromCharCode(a.keyCode), b = this
                      ._filterMenuItems(c)), b.length ? (this.focus(a, b), this.previousFilter = c, this.filterTimer = this._delay(function() {
                      delete this.previousFilter
                    }, 1E3)) : delete this.previousFilter
              }
              e && a.preventDefault()
            },
            _activate: function(a) {
              this.active && !this.active.is(".ui-state-disabled") && (this.active.children("[aria-haspopup\x3d'true']").length ? this.expand(a) : this.select(a))
            },
            refresh: function() {
              var a, b, c, f = this,
                e = this.options.icons.submenu;
              b = this.element.find(this.options.menus);
              this._toggleClass("ui-menu-icons", null, !!this.element.find(".ui-icon").length);
              a = b.filter(":not(.ui-menu)").hide().attr({
                role: this.options.role,
                "aria-hidden": "true",
                "aria-expanded": "false"
              }).each(function() {
                var a = d(this),
                  b = a.prev(),
                  c = d("\x3cspan\x3e").data("ui-menu-submenu-caret", !0);
                f._addClass(c, "ui-menu-icon", "ui-icon " + e);
                b.attr("aria-haspopup", "true").prepend(c);
                a.attr("aria-labelledby", b.attr("id"))
              });
              this._addClass(a, "ui-menu", "ui-widget ui-widget-content ui-front");
              a = b.add(this.element).find(this.options.items);
              a.not(".ui-menu-item").each(function() {
                var a = d(this);
                f._isDivider(a) && f._addClass(a, "ui-menu-divider", "ui-widget-content")
              });
              b = a.not(".ui-menu-item, .ui-menu-divider");
              c = b.children().not(".ui-menu").uniqueId().attr({
                tabIndex: -1,
                role: this._itemRole()
              });
              this._addClass(b, "ui-menu-item")._addClass(c, "ui-menu-item-wrapper");
              a.filter(".ui-state-disabled").attr("aria-disabled", "true");
              this.active && !d.contains(this.element[0], this.active[0]) && this.blur()
            },
            _itemRole: function() {
              return {
                menu: "menuitem",
                listbox: "option"
              } [this.options.role]
            },
            _setOption: function(a, b) {
              if ("icons" === a) {
                var c = this.element.find(".ui-menu-icon");
                this._removeClass(c, null, this.options.icons.submenu)._addClass(c, null, b.submenu)
              }
              this._super(a, b)
            },
            _setOptionDisabled: function(a) {
              this._super(a);
              this.element.attr("aria-disabled", String(a));
              this._toggleClass(null, "ui-state-disabled", !!a)
            },
            focus: function(a, b) {
              var c;
              this.blur(a, a && "focus" === a.type);
              this._scrollIntoView(b);
              this.active = b.first();
              c = this.active.children(".ui-menu-item-wrapper");
              this._addClass(c, null, "ui-state-active");
              this.options.role && this.element.attr("aria-activedescendant", c.attr("id"));
              c = this.active.parent().closest(".ui-menu-item").children(".ui-menu-item-wrapper");
              this._addClass(c, null, "ui-state-active");
              a && "keydown" === a.type ? this._close() : this.timer = this._delay(function() {
                this._close()
              }, this.delay);
              c = b.children(".ui-menu");
              c.length && a && /^mouse/.test(a.type) && this._startOpening(c);
              this.activeMenu = b.parent();
              this._trigger("focus", a, {
                item: b
              })
            },
            _scrollIntoView: function(a) {
              var b, c, f;
              this._hasScroll() && (b = parseFloat(d.css(this.activeMenu[0], "borderTopWidth")) || 0, c = parseFloat(d.css(this.activeMenu[0], "paddingTop")) || 0, b = a.offset().top - this.activeMenu.offset().top - b - c, c = this
                .activeMenu.scrollTop(), f = this.activeMenu.height(), a = a.outerHeight(), 0 > b ? this.activeMenu.scrollTop(c + b) : b + a > f && this.activeMenu.scrollTop(c + b - f + a))
            },
            blur: function(a, b) {
              b || clearTimeout(this.timer);
              this.active && (this._removeClass(this.active.children(".ui-menu-item-wrapper"), null, "ui-state-active"), this._trigger("blur", a, {
                item: this.active
              }), this.active = null)
            },
            _startOpening: function(a) {
              clearTimeout(this.timer);
              "true" === a.attr("aria-hidden") && (this.timer = this._delay(function() {
                this._close();
                this._open(a)
              }, this.delay))
            },
            _open: function(a) {
              var b = d.extend({
                of: this.active
              }, this.options.position);
              clearTimeout(this.timer);
              this.element.find(".ui-menu").not(a.parents(".ui-menu")).hide().attr("aria-hidden", "true");
              a.show().removeAttr("aria-hidden").attr("aria-expanded", "true").position(b)
            },
            collapseAll: function(a, b) {
              clearTimeout(this.timer);
              this.timer = this._delay(function() {
                var c = b ? this.element : d(a && a.target).closest(this.element.find(".ui-menu"));
                c.length || (c = this.element);
                this._close(c);
                this.blur(a);
                this._removeClass(c.find(".ui-state-active"), null, "ui-state-active");
                this.activeMenu = c
              }, this.delay)
            },
            _close: function(a) {
              a || (a = this.active ? this.active.parent() : this.element);
              a.find(".ui-menu").hide().attr("aria-hidden", "true").attr("aria-expanded", "false")
            },
            _closeOnDocumentClick: function(a) {
              return !d(a.target).closest(".ui-menu").length
            },
            _isDivider: function(a) {
              return !/[^\-\u2014\u2013\s]/.test(a.text())
            },
            collapse: function(a) {
              var b = this.active && this.active.parent().closest(".ui-menu-item", this.element);
              b && b.length && (this._close(), this.focus(a, b))
            },
            expand: function(a) {
              var b = this.active && this.active.children(".ui-menu ").find(this.options.items).first();
              b && b.length && (this._open(b.parent()), this._delay(function() {
                this.focus(a, b)
              }))
            },
            next: function(a) {
              this._move("next", "first", a)
            },
            previous: function(a) {
              this._move("prev", "last", a)
            },
            isFirstItem: function() {
              return this.active && !this.active.prevAll(".ui-menu-item").length
            },
            isLastItem: function() {
              return this.active && !this.active.nextAll(".ui-menu-item").length
            },
            _move: function(a, b, c) {
              var d;
              this.active && (d = "first" === a || "last" === a ? this.active["first" === a ? "prevAll" : "nextAll"](".ui-menu-item").eq(-1) : this.active[a + "All"](".ui-menu-item").eq(0));
              d && d.length && this.active || (d = this.activeMenu.find(this.options.items)[b]());
              this.focus(c, d)
            },
            nextPage: function(a) {
              var b, c, f;
              this.active ? this.isLastItem() || (this._hasScroll() ? (c = this.active.offset().top, f = this.element.height(), this.active.nextAll(".ui-menu-item").each(function() {
                b = d(this);
                return 0 > b.offset().top - c - f
              }), this.focus(a, b)) : this.focus(a, this.activeMenu.find(this.options.items)[this.active ? "last" : "first"]())) : this.next(a)
            },
            previousPage: function(a) {
              var b, c, f;
              this.active ? this.isFirstItem() || (this._hasScroll() ? (c = this.active.offset().top, f = this.element.height(), this.active.prevAll(".ui-menu-item").each(function() {
                b = d(this);
                return 0 < b.offset().top - c + f
              }), this.focus(a, b)) : this.focus(a, this.activeMenu.find(this.options.items).first())) : this.next(a)
            },
            _hasScroll: function() {
              return this.element.outerHeight() < this.element.prop("scrollHeight")
            },
            select: function(a) {
              this.active = this.active || d(a.target).closest(".ui-menu-item");
              var b = {
                item: this.active
              };
              this.active.has(".ui-menu").length || this.collapseAll(a, !0);
              this._trigger("select", a, b)
            },
            _filterMenuItems: function(a) {
              a = a.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$\x26");
              var b = new RegExp("^" + a, "i");
              return this.activeMenu.find(this.options.items).filter(".ui-menu-item").filter(function() {
                return b.test(d.trim(d(this).children(".ui-menu-item-wrapper").text()))
              })
            }
          });
          d.widget("ui.autocomplete", {
            version: "1.12.1",
            defaultElement: "\x3cinput\x3e",
            options: {
              appendTo: null,
              autoFocus: !1,
              delay: 300,
              minLength: 1,
              position: {
                my: "left top",
                at: "left bottom",
                collision: "none"
              },
              source: null,
              change: null,
              close: null,
              focus: null,
              open: null,
              response: null,
              search: null,
              select: null
            },
            requestIndex: 0,
            pending: 0,
            _create: function() {
              var a, b, c, f = this.element[0].nodeName.toLowerCase(),
                e = "textarea" === f,
                f = "input" === f;
              this.isMultiLine = e || !f && this._isContentEditable(this.element);
              this.valueMethod = this.element[e || f ? "val" : "text"];
              this.isNewMenu = !0;
              this._addClass("ui-autocomplete-input");
              this.element.attr("autocomplete", "off");
              this._on(this.element, {
                keydown: function(f) {
                  if (this.element.prop("readOnly")) b = c = a = !0;
                  else {
                    b = c = a = !1;
                    var e = d.ui.keyCode;
                    switch (f.keyCode) {
                      case e.PAGE_UP:
                        a = !0;
                        this._move("previousPage", f);
                        break;
                      case e.PAGE_DOWN:
                        a = !0;
                        this._move("nextPage", f);
                        break;
                      case e.UP:
                        a = !0;
                        this._keyEvent("previous", f);
                        break;
                      case e.DOWN:
                        a = !0;
                        this._keyEvent("next", f);
                        break;
                      case e.ENTER:
                        this.menu.active && (a = !0, f.preventDefault(), this.menu.select(f));
                        break;
                      case e.TAB:
                        this.menu.active && this.menu.select(f);
                        break;
                      case e.ESCAPE:
                        this.menu.element.is(":visible") && (this.isMultiLine || this._value(this.term), this.close(f), f.preventDefault());
                        break;
                      default:
                        b = !0, this._searchTimeout(f)
                    }
                  }
                },
                keypress: function(c) {
                  if (a) a = !1, this.isMultiLine && !this.menu.element.is(":visible") || c.preventDefault();
                  else if (!b) {
                    var f = d.ui.keyCode;
                    switch (c.keyCode) {
                      case f.PAGE_UP:
                        this._move("previousPage", c);
                        break;
                      case f.PAGE_DOWN:
                        this._move("nextPage", c);
                        break;
                      case f.UP:
                        this._keyEvent("previous", c);
                        break;
                      case f.DOWN:
                        this._keyEvent("next", c)
                    }
                  }
                },
                input: function(a) {
                  c ? (c = !1, a.preventDefault()) : this._searchTimeout(a)
                },
                focus: function() {
                  this.selectedItem = null;
                  this.previous = this._value()
                },
                blur: function(a) {
                  this.cancelBlur ? delete this.cancelBlur : (clearTimeout(this.searching), this.close(a), this._change(a))
                }
              });
              this._initSource();
              this.menu = d("\x3cul\x3e").appendTo(this._appendTo()).menu({
                role: null
              }).hide().menu("instance");
              this._addClass(this.menu.element, "ui-autocomplete", "ui-front");
              this._on(this.menu.element, {
                mousedown: function(a) {
                  a.preventDefault();
                  this.cancelBlur = !0;
                  this._delay(function() {
                    delete this.cancelBlur;
                    this.element[0] !== d.ui.safeActiveElement(this.document[0]) && this.element.trigger("focus")
                  })
                },
                menufocus: function(a, b) {
                  var c;
                  if (this.isNewMenu && (this.isNewMenu = !1, a.originalEvent && /^mouse/.test(a.originalEvent.type))) {
                    this.menu.blur();
                    this.document.one("mousemove", function() {
                      d(a.target).trigger(a.originalEvent)
                    });
                    return
                  }
                  c = b.item.data("ui-autocomplete-item");
                  !1 !== this._trigger("focus", a, {
                    item: c
                  }) && a.originalEvent && /^key/.test(a.originalEvent.type) && this._value(c.value);
                  (b = b.item.attr("aria-label") || c.value) && d.trim(b).length && (this.liveRegion.children().hide(), d("\x3cdiv\x3e").text(b).appendTo(this.liveRegion))
                },
                menuselect: function(a, b) {
                  var c = b.item.data("ui-autocomplete-item"),
                    f = this.previous;
                  this.element[0] !== d.ui.safeActiveElement(this.document[0]) && (this.element.trigger("focus"), this.previous = f, this._delay(function() {
                    this.previous = f;
                    this.selectedItem = c
                  }));
                  !1 !== this._trigger("select", a, {
                    item: c
                  }) && this._value(c.value);
                  this.term = this._value();
                  this.close(a);
                  this.selectedItem = c
                }
              });
              this.liveRegion = d("\x3cdiv\x3e", {
                role: "status",
                "aria-live": "assertive",
                "aria-relevant": "additions"
              }).appendTo(this.document[0].body);
              this._addClass(this.liveRegion, null, "ui-helper-hidden-accessible");
              this._on(this.window, {
                beforeunload: function() {
                  this.element.removeAttr("autocomplete")
                }
              })
            },
            _destroy: function() {
              clearTimeout(this.searching);
              this.element.removeAttr("autocomplete");
              this.menu.element.remove();
              this.liveRegion.remove()
            },
            _setOption: function(a, b) {
              this._super(a, b);
              "source" === a && this._initSource();
              "appendTo" === a && this.menu.element.appendTo(this._appendTo());
              "disabled" === a && b && this.xhr && this.xhr.abort()
            },
            _isEventTargetInWidget: function(a) {
              var b = this.menu.element[0];
              return a.target === this.element[0] || a.target === b || d.contains(b, a.target)
            },
            _closeOnClickOutside: function(a) {
              this._isEventTargetInWidget(a) || this.close()
            },
            _appendTo: function() {
              var a = this.options.appendTo;
              a && (a = a.jquery || a.nodeType ? d(a) : this.document.find(a).eq(0));
              a && a[0] || (a = this.element.closest(".ui-front, dialog"));
              a.length || (a = this.document[0].body);
              return a
            },
            _initSource: function() {
              var a, b, c = this;
              d.isArray(this.options.source) ? (a = this.options.source, this.source = function(b, c) {
                c(d.ui.autocomplete.filter(a, b.term))
              }) : "string" === typeof this.options.source ? (b = this.options.source, this.source = function(a, e) {
                c.xhr && c.xhr.abort();
                c.xhr = d.ajax({
                  url: b,
                  data: a,
                  dataType: "json",
                  success: function(a) {
                    e(a)
                  },
                  error: function() {
                    e([])
                  }
                })
              }) : this.source = this.options.source
            },
            _searchTimeout: function(a) {
              clearTimeout(this.searching);
              this.searching = this._delay(function() {
                var b = this.term === this._value(),
                  c = this.menu.element.is(":visible"),
                  d = a.altKey || a.ctrlKey || a.metaKey || a.shiftKey;
                if (!b || b && !c && !d) this.selectedItem = null, this.search(null, a)
              }, this.options.delay)
            },
            search: function(a, b) {
              a = null != a ? a : this._value();
              this.term = this._value();
              if (a.length < this.options.minLength) return this.close(b);
              if (!1 !== this._trigger("search", b)) return this._search(a)
            },
            _search: function(a) {
              this.pending++;
              this._addClass("ui-autocomplete-loading");
              this.cancelSearch = !1;
              this.source({
                term: a
              }, this._response())
            },
            _response: function() {
              var a = ++this.requestIndex;
              return d.proxy(function(b) {
                a === this.requestIndex && this.__response(b);
                this.pending--;
                this.pending || this._removeClass("ui-autocomplete-loading")
              }, this)
            },
            __response: function(a) {
              a && (a = this._normalize(a));
              this._trigger("response", null, {
                content: a
              });
              !this.options.disabled && a && a.length && !this.cancelSearch ? (this._suggest(a), this._trigger("open")) : this._close()
            },
            close: function(a) {
              this.cancelSearch = !0;
              this._close(a)
            },
            _close: function(a) {
              this._off(this.document, "mousedown");
              this.menu.element.is(":visible") && (this.menu.element.hide(), this.menu.blur(), this.isNewMenu = !0, this._trigger("close", a))
            },
            _change: function(a) {
              this.previous !== this._value() && this._trigger("change", a, {
                item: this.selectedItem
              })
            },
            _normalize: function(a) {
              return a.length && a[0].label && a[0].value ? a : d.map(a, function(a) {
                return "string" === typeof a ? {
                  label: a,
                  value: a
                } : d.extend({}, a, {
                  label: a.label || a.value,
                  value: a.value || a.label
                })
              })
            },
            _suggest: function(a) {
              var b = this.menu.element.empty();
              this._renderMenu(b, a);
              this.isNewMenu = !0;
              this.menu.refresh();
              b.show();
              this._resizeMenu();
              b.position(d.extend({
                of: this.element
              }, this.options.position));
              this.options.autoFocus && this.menu.next();
              this._on(this.document, {
                mousedown: "_closeOnClickOutside"
              })
            },
            _resizeMenu: function() {
              var a = this.menu.element;
              a.outerWidth(Math.max(a.width("").outerWidth() + 1, this.element.outerWidth()))
            },
            _renderMenu: function(a, b) {
              var c = this;
              d.each(b, function(b, d) {
                c._renderItemData(a, d)
              })
            },
            _renderItemData: function(a, b) {
              return this._renderItem(a, b).data("ui-autocomplete-item", b)
            },
            _renderItem: function(a, b) {
              return d("\x3cli\x3e").append(d("\x3cdiv\x3e").text(b.label)).appendTo(a)
            },
            _move: function(a, b) {
              if (this.menu.element.is(":visible"))
                if (this.menu.isFirstItem() && /^previous/.test(a) || this.menu.isLastItem() && /^next/.test(a)) this.isMultiLine || this._value(this.term), this.menu.blur();
                else this.menu[a](b);
              else this.search(null, b)
            },
            widget: function() {
              return this.menu.element
            },
            _value: function() {
              return this.valueMethod.apply(this.element, arguments)
            },
            _keyEvent: function(a, b) {
              if (!this.isMultiLine || this.menu.element.is(":visible")) this._move(a, b), b.preventDefault()
            },
            _isContentEditable: function(a) {
              if (!a.length) return !1;
              var b = a.prop("contentEditable");
              return "inherit" === b ? this._isContentEditable(a.parent()) : "true" === b
            }
          });
          d.extend(d.ui.autocomplete, {
            escapeRegex: function(a) {
              return a.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$\x26")
            },
            filter: function(a, b) {
              var c = new RegExp(d.ui.autocomplete.escapeRegex(b), "i");
              return d.grep(a, function(a) {
                return c.test(a.label || a.value || a)
              })
            }
          });
          d.widget("ui.autocomplete", d.ui.autocomplete, {
            options: {
              messages: {
                noResults: "No search results.",
                results: function(a) {
                  return a + (1 < a ? " results are" : " result is") + " available, use up and down arrow keys to navigate."
                }
              }
            },
            __response: function(a) {
              var b;
              this._superApply(arguments);
              this.options.disabled || this.cancelSearch || (b = a && a.length ? this.options.messages.results(a.length) : this.options.messages.noResults, this.liveRegion.children().hide(), d("\x3cdiv\x3e").text(b).appendTo(this
                .liveRegion))
            }
          });
          var Y = /ui-corner-([a-z]){2,6}/g;
          d.widget("ui.controlgroup", {
            version: "1.12.1",
            defaultElement: "\x3cdiv\x3e",
            options: {
              direction: "horizontal",
              disabled: null,
              onlyVisible: !0,
              items: {
                button: "input[type\x3dbutton], input[type\x3dsubmit], input[type\x3dreset], button, a",
                controlgroupLabel: ".ui-controlgroup-label",
                checkboxradio: "input[type\x3d'checkbox'], input[type\x3d'radio']",
                selectmenu: "select",
                spinner: ".ui-spinner-input"
              }
            },
            _create: function() {
              this._enhance()
            },
            _enhance: function() {
              this.element.attr("role", "toolbar");
              this.refresh()
            },
            _destroy: function() {
              this._callChildMethod("destroy");
              this.childWidgets.removeData("ui-controlgroup-data");
              this.element.removeAttr("role");
              this.options.items.controlgroupLabel && this.element.find(this.options.items.controlgroupLabel).find(".ui-controlgroup-label-contents").contents().unwrap()
            },
            _initWidgets: function() {
              var a = this,
                b = [];
              d.each(this.options.items, function(c, f) {
                var e = {};
                f && ("controlgroupLabel" === c ? (f = a.element.find(f), f.each(function() {
                  var a = d(this);
                  a.children(".ui-controlgroup-label-contents").length || a.contents().wrapAll("\x3cspan class\x3d'ui-controlgroup-label-contents'\x3e\x3c/span\x3e")
                }), a._addClass(f, null, "ui-widget ui-widget-content ui-state-default"), b = b.concat(f.get())) : d.fn[c] && (e = a["_" + c + "Options"] ? a["_" + c + "Options"]("middle") : {
                  classes: {}
                }, a.element.find(f).each(function() {
                  var f = d(this),
                    h = f[c]("instance"),
                    k = d.widget.extend({}, e);
                  "button" === c && f.parent(".ui-spinner").length || (h || (h = f[c]()[c]("instance")), h && (k.classes = a._resolveClassesValues(k.classes, h)), f[c](k), k = f[c]("widget"), d.data(k[0],
                    "ui-controlgroup-data", h ? h : f[c]("instance")), b.push(k[0]))
                })))
              });
              this.childWidgets = d(d.unique(b));
              this._addClass(this.childWidgets, "ui-controlgroup-item")
            },
            _callChildMethod: function(a) {
              this.childWidgets.each(function() {
                var b = d(this).data("ui-controlgroup-data");
                if (b && b[a]) b[a]()
              })
            },
            _updateCornerClass: function(a, b) {
              b = this._buildSimpleOptions(b, "label").classes.label;
              this._removeClass(a, null, "ui-corner-top ui-corner-bottom ui-corner-left ui-corner-right ui-corner-all");
              this._addClass(a, null, b)
            },
            _buildSimpleOptions: function(a, b) {
              var c = "vertical" === this.options.direction,
                d = {
                  classes: {}
                };
              d.classes[b] = {
                middle: "",
                first: "ui-corner-" + (c ? "top" : "left"),
                last: "ui-corner-" + (c ? "bottom" : "right"),
                only: "ui-corner-all"
              } [a];
              return d
            },
            _spinnerOptions: function(a) {
              a = this._buildSimpleOptions(a, "ui-spinner");
              a.classes["ui-spinner-up"] = "";
              a.classes["ui-spinner-down"] = "";
              return a
            },
            _buttonOptions: function(a) {
              return this._buildSimpleOptions(a, "ui-button")
            },
            _checkboxradioOptions: function(a) {
              return this._buildSimpleOptions(a, "ui-checkboxradio-label")
            },
            _selectmenuOptions: function(a) {
              var b = "vertical" === this.options.direction;
              return {
                width: b ? "auto" : !1,
                classes: {
                  middle: {
                    "ui-selectmenu-button-open": "",
                    "ui-selectmenu-button-closed": ""
                  },
                  first: {
                    "ui-selectmenu-button-open": "ui-corner-" + (b ? "top" : "tl"),
                    "ui-selectmenu-button-closed": "ui-corner-" + (b ? "top" : "left")
                  },
                  last: {
                    "ui-selectmenu-button-open": b ? "" : "ui-corner-tr",
                    "ui-selectmenu-button-closed": "ui-corner-" + (b ? "bottom" : "right")
                  },
                  only: {
                    "ui-selectmenu-button-open": "ui-corner-top",
                    "ui-selectmenu-button-closed": "ui-corner-all"
                  }
                } [a]
              }
            },
            _resolveClassesValues: function(a, b) {
              var c = {};
              d.each(a, function(f) {
                var e = b.options.classes[f] || "",
                  e = d.trim(e.replace(Y, ""));
                c[f] = (e + " " + a[f]).replace(/\s+/g, " ")
              });
              return c
            },
            _setOption: function(a, b) {
              "direction" === a && this._removeClass("ui-controlgroup-" + this.options.direction);
              this._super(a, b);
              "disabled" === a ? this._callChildMethod(b ? "disable" : "enable") : this.refresh()
            },
            refresh: function() {
              var a, b = this;
              this._addClass("ui-controlgroup ui-controlgroup-" + this.options.direction);
              "horizontal" === this.options.direction && this._addClass(null, "ui-helper-clearfix");
              this._initWidgets();
              a = this.childWidgets;
              this.options.onlyVisible && (a = a.filter(":visible"));
              a.length && (d.each(["first", "last"], function(c, d) {
                (c = a[d]().data("ui-controlgroup-data")) && b["_" + c.widgetName + "Options"] ? (d = b["_" + c.widgetName + "Options"](1 === a.length ? "only" : d), d.classes = b._resolveClassesValues(d.classes, c), c.element[c
                  .widgetName](d)) : b._updateCornerClass(a[d](), d)
              }), this._callChildMethod("refresh"))
            }
          });
          d.widget("ui.checkboxradio", [d.ui.formResetMixin, {
            version: "1.12.1",
            options: {
              disabled: null,
              label: null,
              icon: !0,
              classes: {
                "ui-checkboxradio-label": "ui-corner-all",
                "ui-checkboxradio-icon": "ui-corner-all"
              }
            },
            _getCreateOptions: function() {
              var a, b = this,
                c = this._super() || {};
              this._readType();
              a = this.element.labels();
              this.label = d(a[a.length - 1]);
              this.label.length || d.error("No label found for checkboxradio widget");
              this.originalLabel = "";
              this.label.contents().not(this.element[0]).each(function() {
                b.originalLabel += 3 === this.nodeType ? d(this).text() : this.outerHTML
              });
              this.originalLabel && (c.label = this.originalLabel);
              a = this.element[0].disabled;
              null != a && (c.disabled = a);
              return c
            },
            _create: function() {
              var a = this.element[0].checked;
              this._bindFormResetHandler();
              null == this.options.disabled && (this.options.disabled = this.element[0].disabled);
              this._setOption("disabled", this.options.disabled);
              this._addClass("ui-checkboxradio", "ui-helper-hidden-accessible");
              this._addClass(this.label, "ui-checkboxradio-label", "ui-button ui-widget");
              "radio" === this.type && this._addClass(this.label, "ui-checkboxradio-radio-label");
              this.options.label && this.options.label !== this.originalLabel ? this._updateLabel() : this.originalLabel && (this.options.label = this.originalLabel);
              this._enhance();
              a && (this._addClass(this.label, "ui-checkboxradio-checked", "ui-state-active"), this.icon && this._addClass(this.icon, null, "ui-state-hover"));
              this._on({
                change: "_toggleClasses",
                focus: function() {
                  this._addClass(this.label, null, "ui-state-focus ui-visual-focus")
                },
                blur: function() {
                  this._removeClass(this.label, null, "ui-state-focus ui-visual-focus")
                }
              })
            },
            _readType: function() {
              var a = this.element[0].nodeName.toLowerCase();
              this.type = this.element[0].type;
              "input" === a && /radio|checkbox/.test(this.type) || d.error("Can't create checkboxradio on element.nodeName\x3d" + a + " and element.type\x3d" + this.type)
            },
            _enhance: function() {
              this._updateIcon(this.element[0].checked)
            },
            widget: function() {
              return this.label
            },
            _getRadioGroup: function() {
              var a = this.element[0].name,
                b = "input[name\x3d'" + d.ui.escapeSelector(a) + "']";
              return a ? (this.form.length ? d(this.form[0].elements).filter(b) : d(b).filter(function() {
                return 0 === d(this).form().length
              })).not(this.element) : d([])
            },
            _toggleClasses: function() {
              var a = this.element[0].checked;
              this._toggleClass(this.label, "ui-checkboxradio-checked", "ui-state-active", a);
              this.options.icon && "checkbox" === this.type && this._toggleClass(this.icon, null, "ui-icon-check ui-state-checked", a)._toggleClass(this.icon, null, "ui-icon-blank", !a);
              "radio" === this.type && this._getRadioGroup().each(function() {
                var a = d(this).checkboxradio("instance");
                a && a._removeClass(a.label, "ui-checkboxradio-checked", "ui-state-active")
              })
            },
            _destroy: function() {
              this._unbindFormResetHandler();
              this.icon && (this.icon.remove(), this.iconSpace.remove())
            },
            _setOption: function(a, b) {
              if ("label" !== a || b) this._super(a, b), "disabled" === a ? (this._toggleClass(this.label, null, "ui-state-disabled", b), this.element[0].disabled = b) : this.refresh()
            },
            _updateIcon: function(a) {
              var b = "ui-icon ui-icon-background ";
              this.options.icon ? (this.icon || (this.icon = d("\x3cspan\x3e"), this.iconSpace = d("\x3cspan\x3e \x3c/span\x3e"), this._addClass(this.iconSpace, "ui-checkboxradio-icon-space")), "checkbox" === this.type ? (b += a ?
                  "ui-icon-check ui-state-checked" : "ui-icon-blank", this._removeClass(this.icon, null, a ? "ui-icon-blank" : "ui-icon-check")) : b += "ui-icon-blank", this._addClass(this.icon, "ui-checkboxradio-icon", b), a || this
                ._removeClass(this.icon, null, "ui-icon-check ui-state-checked"), this.icon.prependTo(this.label).after(this.iconSpace)) : void 0 !== this.icon && (this.icon.remove(), this.iconSpace.remove(), delete this.icon)
            },
            _updateLabel: function() {
              var a = this.label.contents().not(this.element[0]);
              this.icon && (a = a.not(this.icon[0]));
              this.iconSpace && (a = a.not(this.iconSpace[0]));
              a.remove();
              this.label.append(this.options.label)
            },
            refresh: function() {
              var a = this.element[0].checked,
                b = this.element[0].disabled;
              this._updateIcon(a);
              this._toggleClass(this.label, "ui-checkboxradio-checked", "ui-state-active", a);
              null !== this.options.label && this._updateLabel();
              b !== this.options.disabled && this._setOptions({
                disabled: b
              })
            }
          }]);
          d.widget("ui.button", {
            version: "1.12.1",
            defaultElement: "\x3cbutton\x3e",
            options: {
              classes: {
                "ui-button": "ui-corner-all"
              },
              disabled: null,
              icon: null,
              iconPosition: "beginning",
              label: null,
              showLabel: !0
            },
            _getCreateOptions: function() {
              var a, b = this._super() || {};
              this.isInput = this.element.is("input");
              a = this.element[0].disabled;
              null != a && (b.disabled = a);
              if (this.originalLabel = this.isInput ? this.element.val() : this.element.html()) b.label = this.originalLabel;
              return b
            },
            _create: function() {
              !this.option.showLabel & !this.options.icon && (this.options.showLabel = !0);
              null == this.options.disabled && (this.options.disabled = this.element[0].disabled || !1);
              this.hasTitle = !!this.element.attr("title");
              this.options.label && this.options.label !== this.originalLabel && (this.isInput ? this.element.val(this.options.label) : this.element.html(this.options.label));
              this._addClass("ui-button", "ui-widget");
              this._setOption("disabled", this.options.disabled);
              this._enhance();
              this.element.is("a") && this._on({
                keyup: function(a) {
                  a.keyCode === d.ui.keyCode.SPACE && (a.preventDefault(), this.element[0].click ? this.element[0].click() : this.element.trigger("click"))
                }
              })
            },
            _enhance: function() {
              this.element.is("button") || this.element.attr("role", "button");
              this.options.icon && (this._updateIcon("icon", this.options.icon), this._updateTooltip())
            },
            _updateTooltip: function() {
              this.title = this.element.attr("title");
              this.options.showLabel || this.title || this.element.attr("title", this.options.label)
            },
            _updateIcon: function(a, b) {
              var c = (a = "iconPosition" !== a) ? this.options.iconPosition : b,
                f = "top" === c || "bottom" === c;
              this.icon ? a && this._removeClass(this.icon, null, this.options.icon) : (this.icon = d("\x3cspan\x3e"), this._addClass(this.icon, "ui-button-icon", "ui-icon"), this.options.showLabel || this._addClass(
                "ui-button-icon-only"));
              a && this._addClass(this.icon, null, b);
              this._attachIcon(c);
              f ? (this._addClass(this.icon, null, "ui-widget-icon-block"), this.iconSpace && this.iconSpace.remove()) : (this.iconSpace || (this.iconSpace = d("\x3cspan\x3e \x3c/span\x3e"), this._addClass(this.iconSpace,
                "ui-button-icon-space")), this._removeClass(this.icon, null, "ui-wiget-icon-block"), this._attachIconSpace(c))
            },
            _destroy: function() {
              this.element.removeAttr("role");
              this.icon && this.icon.remove();
              this.iconSpace && this.iconSpace.remove();
              this.hasTitle || this.element.removeAttr("title")
            },
            _attachIconSpace: function(a) {
              this.icon[/^(?:end|bottom)/.test(a) ? "before" : "after"](this.iconSpace)
            },
            _attachIcon: function(a) {
              this.element[/^(?:end|bottom)/.test(a) ? "append" : "prepend"](this.icon)
            },
            _setOptions: function(a) {
              var b = void 0 === a.icon ? this.options.icon : a.icon;
              (void 0 === a.showLabel ? this.options.showLabel : a.showLabel) || b || (a.showLabel = !0);
              this._super(a)
            },
            _setOption: function(a, b) {
              "icon" === a && (b ? this._updateIcon(a, b) : this.icon && (this.icon.remove(), this.iconSpace && this.iconSpace.remove()));
              "iconPosition" === a && this._updateIcon(a, b);
              "showLabel" === a && (this._toggleClass("ui-button-icon-only", null, !b), this._updateTooltip());
              "label" === a && (this.isInput ? this.element.val(b) : (this.element.html(b), this.icon && (this._attachIcon(this.options.iconPosition), this._attachIconSpace(this.options.iconPosition))));
              this._super(a, b);
              "disabled" === a && (this._toggleClass(null, "ui-state-disabled", b), (this.element[0].disabled = b) && this.element.blur())
            },
            refresh: function() {
              var a = this.element.is("input, button") ? this.element[0].disabled : this.element.hasClass("ui-button-disabled");
              a !== this.options.disabled && this._setOptions({
                disabled: a
              });
              this._updateTooltip()
            }
          });
          !1 !== d.uiBackCompat && (d.widget("ui.button", d.ui.button, {
            options: {
              text: !0,
              icons: {
                primary: null,
                secondary: null
              }
            },
            _create: function() {
              this.options.showLabel && !this.options.text && (this.options.showLabel = this.options.text);
              !this.options.showLabel && this.options.text && (this.options.text = this.options.showLabel);
              this.options.icon || !this.options.icons.primary && !this.options.icons.secondary ? this.options.icon && (this.options.icons.primary = this.options.icon) : this.options.icons.primary ? this.options.icon = this.options
                .icons.primary : (this.options.icon = this.options.icons.secondary, this.options.iconPosition = "end");
              this._super()
            },
            _setOption: function(a, b) {
              "text" === a ? this._super("showLabel", b) : ("showLabel" === a && (this.options.text = b), "icon" === a && (this.options.icons.primary = b), "icons" === a && (b.primary ? (this._super("icon", b.primary), this._super(
                "iconPosition", "beginning")) : b.secondary && (this._super("icon", b.secondary), this._super("iconPosition", "end"))), this._superApply(arguments))
            }
          }), d.fn.button = function(a) {
            return function() {
              if (!this.length || this.length && "INPUT" !== this[0].tagName || this.length && "INPUT" === this[0].tagName && "checkbox" !== this.attr("type") && "radio" !== this.attr("type")) return a.apply(this, arguments);
              d.ui.checkboxradio || d.error("Checkboxradio widget missing");
              return 0 === arguments.length ? this.checkboxradio({
                icon: !1
              }) : this.checkboxradio.apply(this, arguments)
            }
          }(d.fn.button), d.fn.buttonset = function() {
            d.ui.controlgroup || d.error("Controlgroup widget missing");
            if ("option" === arguments[0] && "items" === arguments[1] && arguments[2]) return this.controlgroup.apply(this, [arguments[0], "items.button", arguments[2]]);
            if ("option" === arguments[0] && "items" === arguments[1]) return this.controlgroup.apply(this, [arguments[0], "items.button"]);
            "object" === typeof arguments[0] && arguments[0].items && (arguments[0].items = {
              button: arguments[0].items
            });
            return this.controlgroup.apply(this, arguments)
          });
          d.extend(d.ui, {
            datepicker: {
              version: "1.12.1"
            }
          });
          var E;
          d.extend(R.prototype, {
            markerClassName: "hasDatepicker",
            maxRows: 4,
            _widgetDatepicker: function() {
              return this.dpDiv
            },
            setDefaults: function(a) {
              H(this._defaults, a || {});
              return this
            },
            _attachDatepicker: function(a, b) {
              var c, f, e;
              c = a.nodeName.toLowerCase();
              f = "div" === c || "span" === c;
              a.id || (this.uuid += 1, a.id = "dp" + this.uuid);
              e = this._newInst(d(a), f);
              e.settings = d.extend({}, b || {});
              "input" === c ? this._connectDatepicker(a, e) : f && this._inlineDatepicker(a, e)
            },
            _newInst: function(a, b) {
              return {
                id: a[0].id.replace(/([^A-Za-z0-9_\-])/g, "\\\\$1"),
                input: a,
                selectedDay: 0,
                selectedMonth: 0,
                selectedYear: 0,
                drawMonth: 0,
                drawYear: 0,
                inline: b,
                dpDiv: b ? S(d("\x3cdiv class\x3d'" + this._inlineClass + " ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'\x3e\x3c/div\x3e")) : this.dpDiv
              }
            },
            _connectDatepicker: function(a, b) {
              var c = d(a);
              b.append = d([]);
              b.trigger = d([]);
              c.hasClass(this.markerClassName) || (this._attachments(c, b), c.addClass(this.markerClassName).on("keydown", this._doKeyDown).on("keypress", this._doKeyPress).on("keyup", this._doKeyUp), this._autoSize(b), d.data(a,
                "datepicker", b), b.settings.disabled && this._disableDatepicker(a))
            },
            _attachments: function(a, b) {
              var c, f;
              c = this._get(b, "appendText");
              var e = this._get(b, "isRTL");
              b.append && b.append.remove();
              c && (b.append = d("\x3cspan class\x3d'" + this._appendClass + "'\x3e" + c + "\x3c/span\x3e"), a[e ? "before" : "after"](b.append));
              a.off("focus", this._showDatepicker);
              b.trigger && b.trigger.remove();
              c = this._get(b, "showOn");
              if ("focus" === c || "both" === c) a.on("focus", this._showDatepicker);
              if ("button" === c || "both" === c) c = this._get(b, "buttonText"), f = this._get(b, "buttonImage"), b.trigger = d(this._get(b, "buttonImageOnly") ? d("\x3cimg/\x3e").addClass(this._triggerClass).attr({
                src: f,
                alt: c,
                title: c
              }) : d("\x3cbutton type\x3d'button'\x3e\x3c/button\x3e").addClass(this._triggerClass).html(f ? d("\x3cimg/\x3e").attr({
                src: f,
                alt: c,
                title: c
              }) : c)), a[e ? "before" : "after"](b.trigger), b.trigger.on("click", function() {
                d.datepicker._datepickerShowing && d.datepicker._lastInput === a[0] ? d.datepicker._hideDatepicker() : (d.datepicker._datepickerShowing && d.datepicker._lastInput !== a[0] && d.datepicker._hideDatepicker(), d
                  .datepicker._showDatepicker(a[0]));
                return !1
              })
            },
            _autoSize: function(a) {
              if (this._get(a, "autoSize") && !a.inline) {
                var b, c, d, e, g = new Date(2009, 11, 20),
                  h = this._get(a, "dateFormat");
                h.match(/[DM]/) && (b = function(a) {
                  for (e = d = c = 0; e < a.length; e++) a[e].length > c && (c = a[e].length, d = e);
                  return d
                }, g.setMonth(b(this._get(a, h.match(/MM/) ? "monthNames" : "monthNamesShort"))), g.setDate(b(this._get(a, h.match(/DD/) ? "dayNames" : "dayNamesShort")) + 20 - g.getDay()));
                a.input.attr("size", this._formatDate(a, g).length)
              }
            },
            _inlineDatepicker: function(a, b) {
              var c = d(a);
              c.hasClass(this.markerClassName) || (c.addClass(this.markerClassName).append(b.dpDiv), d.data(a, "datepicker", b), this._setDate(b, this._getDefaultDate(b), !0), this._updateDatepicker(b), this._updateAlternate(b), b
                .settings.disabled && this._disableDatepicker(a), b.dpDiv.css("display", "block"))
            },
            _dialogDatepicker: function(a, b, c, f, e) {
              var g;
              a = this._dialogInst;
              a || (this.uuid += 1, a = "dp" + this.uuid, this._dialogInput = d("\x3cinput type\x3d'text' id\x3d'" + a + "' style\x3d'position: absolute; top: -100px; width: 0px;'/\x3e"), this._dialogInput.on("keydown", this._doKeyDown),
                d("body").append(this._dialogInput), a = this._dialogInst = this._newInst(this._dialogInput, !1), a.settings = {}, d.data(this._dialogInput[0], "datepicker", a));
              H(a.settings, f || {});
              b = b && b.constructor === Date ? this._formatDate(a, b) : b;
              this._dialogInput.val(b);
              this._pos = e ? e.length ? e : [e.pageX, e.pageY] : null;
              this._pos || (b = document.documentElement.clientWidth, f = document.documentElement.clientHeight, e = document.documentElement.scrollLeft || document.body.scrollLeft, g = document.documentElement.scrollTop || document.body
                .scrollTop, this._pos = [b / 2 - 100 + e, f / 2 - 150 + g]);
              this._dialogInput.css("left", this._pos[0] + 20 + "px").css("top", this._pos[1] + "px");
              a.settings.onSelect = c;
              this._inDialog = !0;
              this.dpDiv.addClass(this._dialogClass);
              this._showDatepicker(this._dialogInput[0]);
              d.blockUI && d.blockUI(this.dpDiv);
              d.data(this._dialogInput[0], "datepicker", a);
              return this
            },
            _destroyDatepicker: function(a) {
              var b, c = d(a),
                f = d.data(a, "datepicker");
              c.hasClass(this.markerClassName) && (b = a.nodeName.toLowerCase(), d.removeData(a, "datepicker"), "input" === b ? (f.append.remove(), f.trigger.remove(), c.removeClass(this.markerClassName).off("focus", this._showDatepicker)
                .off("keydown", this._doKeyDown).off("keypress", this._doKeyPress).off("keyup", this._doKeyUp)) : "div" !== b && "span" !== b || c.removeClass(this.markerClassName).empty(), E === f && (E = null))
            },
            _enableDatepicker: function(a) {
              var b, c = d(a),
                f = d.data(a, "datepicker");
              if (c.hasClass(this.markerClassName)) {
                b = a.nodeName.toLowerCase();
                if ("input" === b) a.disabled = !1, f.trigger.filter("button").each(function() {
                  this.disabled = !1
                }).end().filter("img").css({
                  opacity: "1.0",
                  cursor: ""
                });
                else if ("div" === b || "span" === b) b = c.children("." + this._inlineClass), b.children().removeClass("ui-state-disabled"), b.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled", !1);
                this._disabledInputs = d.map(this._disabledInputs, function(b) {
                  return b === a ? null : b
                })
              }
            },
            _disableDatepicker: function(a) {
              var b, c = d(a),
                f = d.data(a, "datepicker");
              if (c.hasClass(this.markerClassName)) {
                b = a.nodeName.toLowerCase();
                if ("input" === b) a.disabled = !0, f.trigger.filter("button").each(function() {
                  this.disabled = !0
                }).end().filter("img").css({
                  opacity: "0.5",
                  cursor: "default"
                });
                else if ("div" === b || "span" === b) b = c.children("." + this._inlineClass), b.children().addClass("ui-state-disabled"), b.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled", !0);
                this._disabledInputs = d.map(this._disabledInputs, function(b) {
                  return b === a ? null : b
                });
                this._disabledInputs[this._disabledInputs.length] = a
              }
            },
            _isDisabledDatepicker: function(a) {
              if (!a) return !1;
              for (var b = 0; b < this._disabledInputs.length; b++)
                if (this._disabledInputs[b] === a) return !0;
              return !1
            },
            _getInst: function(a) {
              try {
                return d.data(a, "datepicker")
              } catch (b) {
                throw "Missing instance data for this datepicker";
              }
            },
            _optionDatepicker: function(a, b, c) {
              var f, e, g, h, k = this._getInst(a);
              if (2 === arguments.length && "string" === typeof b) return "defaults" === b ? d.extend({}, d.datepicker._defaults) : k ? "all" === b ? d.extend({}, k.settings) : this._get(k, b) : null;
              f = b || {};
              "string" === typeof b && (f = {}, f[b] = c);
              k && (this._curInst === k && this._hideDatepicker(), e = this._getDateDatepicker(a, !0), g = this._getMinMaxDate(k, "min"), h = this._getMinMaxDate(k, "max"), H(k.settings, f), null !== g && void 0 !== f.dateFormat &&
                void 0 === f.minDate && (k.settings.minDate = this._formatDate(k, g)), null !== h && void 0 !== f.dateFormat && void 0 === f.maxDate && (k.settings.maxDate = this._formatDate(k, h)), "disabled" in f && (f.disabled ? this
                  ._disableDatepicker(a) : this._enableDatepicker(a)), this._attachments(d(a), k), this._autoSize(k), this._setDate(k, e), this._updateAlternate(k), this._updateDatepicker(k))
            },
            _changeDatepicker: function(a, b, c) {
              this._optionDatepicker(a, b, c)
            },
            _refreshDatepicker: function(a) {
              (a = this._getInst(a)) && this._updateDatepicker(a)
            },
            _setDateDatepicker: function(a, b) {
              if (a = this._getInst(a)) this._setDate(a, b), this._updateDatepicker(a), this._updateAlternate(a)
            },
            _getDateDatepicker: function(a, b) {
              (a = this._getInst(a)) && !a.inline && this._setDateFromField(a, b);
              return a ? this._getDate(a) : null
            },
            _doKeyDown: function(a) {
              var b, c = d.datepicker._getInst(a.target);
              b = !0;
              var f = c.dpDiv.is(".ui-datepicker-rtl");
              c._keyEvent = !0;
              if (d.datepicker._datepickerShowing) switch (a.keyCode) {
                case 9:
                  d.datepicker._hideDatepicker();
                  b = !1;
                  break;
                case 13:
                  return b = d("td." + d.datepicker._dayOverClass + ":not(." + d.datepicker._currentClass + ")", c.dpDiv), b[0] && d.datepicker._selectDay(a.target, c.selectedMonth, c.selectedYear, b[0]), (a = d.datepicker._get(c,
                    "onSelect")) ? (b = d.datepicker._formatDate(c), a.apply(c.input ? c.input[0] : null, [b, c])) : d.datepicker._hideDatepicker(), !1;
                case 27:
                  d.datepicker._hideDatepicker();
                  break;
                case 33:
                  d.datepicker._adjustDate(a.target, a.ctrlKey ? -d.datepicker._get(c, "stepBigMonths") : -d.datepicker._get(c, "stepMonths"), "M");
                  break;
                case 34:
                  d.datepicker._adjustDate(a.target, a.ctrlKey ? +d.datepicker._get(c, "stepBigMonths") : +d.datepicker._get(c, "stepMonths"), "M");
                  break;
                case 35:
                  (a.ctrlKey || a.metaKey) && d.datepicker._clearDate(a.target);
                  b = a.ctrlKey || a.metaKey;
                  break;
                case 36:
                  (a.ctrlKey || a.metaKey) && d.datepicker._gotoToday(a.target);
                  b = a.ctrlKey || a.metaKey;
                  break;
                case 37:
                  (a.ctrlKey || a.metaKey) && d.datepicker._adjustDate(a.target, f ? 1 : -1, "D");
                  b = a.ctrlKey || a.metaKey;
                  a.originalEvent.altKey && d.datepicker._adjustDate(a.target, a.ctrlKey ? -d.datepicker._get(c, "stepBigMonths") : -d.datepicker._get(c, "stepMonths"), "M");
                  break;
                case 38:
                  (a.ctrlKey || a.metaKey) && d.datepicker._adjustDate(a.target, -7, "D");
                  b = a.ctrlKey || a.metaKey;
                  break;
                case 39:
                  (a.ctrlKey || a.metaKey) && d.datepicker._adjustDate(a.target, f ? -1 : 1, "D");
                  b = a.ctrlKey || a.metaKey;
                  a.originalEvent.altKey && d.datepicker._adjustDate(a.target, a.ctrlKey ? +d.datepicker._get(c, "stepBigMonths") : +d.datepicker._get(c, "stepMonths"), "M");
                  break;
                case 40:
                  (a.ctrlKey || a.metaKey) && d.datepicker._adjustDate(a.target, 7, "D");
                  b = a.ctrlKey || a.metaKey;
                  break;
                default:
                  b = !1
              } else 36 === a.keyCode && a.ctrlKey ? d.datepicker._showDatepicker(this) : b = !1;
              b && (a.preventDefault(), a.stopPropagation())
            },
            _doKeyPress: function(a) {
              var b, c;
              b = d.datepicker._getInst(a.target);
              if (d.datepicker._get(b, "constrainInput")) return b = d.datepicker._possibleChars(d.datepicker._get(b, "dateFormat")), c = String.fromCharCode(null == a.charCode ? a.keyCode : a.charCode), a.ctrlKey || a.metaKey || " " >
                c || !b || -1 < b.indexOf(c)
            },
            _doKeyUp: function(a) {
              var b;
              a = d.datepicker._getInst(a.target);
              if (a.input.val() !== a.lastVal) try {
                if (b = d.datepicker.parseDate(d.datepicker._get(a, "dateFormat"), a.input ? a.input.val() : null, d.datepicker._getFormatConfig(a))) d.datepicker._setDateFromField(a), d.datepicker._updateAlternate(a),
                  d.datepicker._updateDatepicker(a)
              } catch (c) {}
              return !0
            },
            _showDatepicker: function(a) {
              a = a.target || a;
              "input" !== a.nodeName.toLowerCase() && (a = d("input", a.parentNode)[0]);
              if (!d.datepicker._isDisabledDatepicker(a) && d.datepicker._lastInput !== a) {
                var b, c, f, e;
                b = d.datepicker._getInst(a);
                d.datepicker._curInst && d.datepicker._curInst !== b && (d.datepicker._curInst.dpDiv.stop(!0, !0), b && d.datepicker._datepickerShowing && d.datepicker._hideDatepicker(d.datepicker._curInst.input[0]));
                c = (c = d.datepicker._get(b, "beforeShow")) ? c.apply(a, [a, b]) : {};
                if (!1 !== c && (H(b.settings, c), b.lastVal = null, d.datepicker._lastInput = a, d.datepicker._setDateFromField(b), d.datepicker._inDialog && (a.value = ""), d.datepicker._pos || (d.datepicker._pos = d.datepicker
                    ._findPos(a), d.datepicker._pos[1] += a.offsetHeight), f = !1, d(a).parents().each(function() {
                    f |= "fixed" === d(this).css("position");
                    return !f
                  }), c = {
                    left: d.datepicker._pos[0],
                    top: d.datepicker._pos[1]
                  }, d.datepicker._pos = null, b.dpDiv.empty(), b.dpDiv.css({
                    position: "absolute",
                    display: "block",
                    top: "-1000px"
                  }), d.datepicker._updateDatepicker(b), c = d.datepicker._checkOffset(b, c, f), b.dpDiv.css({
                    position: d.datepicker._inDialog && d.blockUI ? "static" : f ? "fixed" : "absolute",
                    display: "none",
                    left: c.left + "px",
                    top: c.top + "px"
                  }), !b.inline)) {
                  c = d.datepicker._get(b, "showAnim");
                  e = d.datepicker._get(b, "duration");
                  b.dpDiv.css("z-index", W(d(a)) + 1);
                  d.datepicker._datepickerShowing = !0;
                  if (d.effects && d.effects.effect[c]) b.dpDiv.show(c, d.datepicker._get(b, "showOptions"), e);
                  else b.dpDiv[c || "show"](c ? e : null);
                  d.datepicker._shouldFocusInput(b) && b.input.trigger("focus");
                  d.datepicker._curInst = b
                }
              }
            },
            _updateDatepicker: function(a) {
              this.maxRows = 4;
              E = a;
              a.dpDiv.empty().append(this._generateHTML(a));
              this._attachHandlers(a);
              var b, c = this._getNumberOfMonths(a),
                f = c[1],
                e = a.dpDiv.find("." + this._dayOverClass + " a");
              0 < e.length && T.apply(e.get(0));
              a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");
              1 < f && a.dpDiv.addClass("ui-datepicker-multi-" + f).css("width", 17 * f + "em");
              a.dpDiv[(1 !== c[0] || 1 !== c[1] ? "add" : "remove") + "Class"]("ui-datepicker-multi");
              a.dpDiv[(this._get(a, "isRTL") ? "add" : "remove") + "Class"]("ui-datepicker-rtl");
              a === d.datepicker._curInst && d.datepicker._datepickerShowing && d.datepicker._shouldFocusInput(a) && a.input.trigger("focus");
              a.yearshtml && (b = a.yearshtml, setTimeout(function() {
                b === a.yearshtml && a.yearshtml && a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml);
                b = a.yearshtml = null
              }, 0))
            },
            _shouldFocusInput: function(a) {
              return a.input && a.input.is(":visible") && !a.input.is(":disabled") && !a.input.is(":focus")
            },
            _checkOffset: function(a, b, c) {
              var f = a.dpDiv.outerWidth(),
                e = a.dpDiv.outerHeight(),
                g = a.input ? a.input.outerWidth() : 0,
                h = a.input ? a.input.outerHeight() : 0,
                k = document.documentElement.clientWidth + (c ? 0 : d(document).scrollLeft()),
                m = document.documentElement.clientHeight + (c ? 0 : d(document).scrollTop());
              b.left -= this._get(a, "isRTL") ? f - g : 0;
              b.left -= c && b.left === a.input.offset().left ? d(document).scrollLeft() : 0;
              b.top -= c && b.top === a.input.offset().top + h ? d(document).scrollTop() : 0;
              b.left -= Math.min(b.left, b.left + f > k && k > f ? Math.abs(b.left + f - k) : 0);
              b.top -= Math.min(b.top, b.top + e > m && m > e ? Math.abs(e + h) : 0);
              return b
            },
            _findPos: function(a) {
              for (var b = this._getInst(a), b = this._get(b, "isRTL"); a && ("hidden" === a.type || 1 !== a.nodeType || d.expr.filters.hidden(a));) a = a[b ? "previousSibling" : "nextSibling"];
              a = d(a).offset();
              return [a.left, a.top]
            },
            _hideDatepicker: function(a) {
              var b, c, f = this._curInst;
              if (f && (!a || f === d.data(a, "datepicker")) && this._datepickerShowing) {
                a = this._get(f, "showAnim");
                b = this._get(f, "duration");
                c = function() {
                  d.datepicker._tidyDialog(f)
                };
                if (d.effects && (d.effects.effect[a] || d.effects[a])) f.dpDiv.hide(a, d.datepicker._get(f, "showOptions"), b, c);
                else f.dpDiv["slideDown" === a ? "slideUp" : "fadeIn" === a ? "fadeOut" : "hide"](a ? b : null, c);
                a || c();
                this._datepickerShowing = !1;
                (a = this._get(f, "onClose")) && a.apply(f.input ? f.input[0] : null, [f.input ? f.input.val() : "", f]);
                this._lastInput = null;
                this._inDialog && (this._dialogInput.css({
                  position: "absolute",
                  left: "0",
                  top: "-100px"
                }), d.blockUI && (d.unblockUI(), d("body").append(this.dpDiv)));
                this._inDialog = !1
              }
            },
            _tidyDialog: function(a) {
              a.dpDiv.removeClass(this._dialogClass).off(".ui-datepicker-calendar")
            },
            _checkExternalClick: function(a) {
              if (d.datepicker._curInst) {
                a = d(a.target);
                var b = d.datepicker._getInst(a[0]);
                (!(a[0].id === d.datepicker._mainDivId || 0 !== a.parents("#" + d.datepicker._mainDivId).length || a.hasClass(d.datepicker.markerClassName) || a.closest("." + d.datepicker._triggerClass).length || !d.datepicker
                  ._datepickerShowing || d.datepicker._inDialog && d.blockUI) || a.hasClass(d.datepicker.markerClassName) && d.datepicker._curInst !== b) && d.datepicker._hideDatepicker()
              }
            },
            _adjustDate: function(a, b, c) {
              a = d(a);
              var f = this._getInst(a[0]);
              this._isDisabledDatepicker(a[0]) || (this._adjustInstDate(f, b + ("M" === c ? this._get(f, "showCurrentAtPos") : 0), c), this._updateDatepicker(f))
            },
            _gotoToday: function(a) {
              var b = d(a),
                c = this._getInst(b[0]);
              this._get(c, "gotoCurrent") && c.currentDay ? (c.selectedDay = c.currentDay, c.drawMonth = c.selectedMonth = c.currentMonth, c.drawYear = c.selectedYear = c.currentYear) : (a = new Date, c.selectedDay = a.getDate(), c
                .drawMonth = c.selectedMonth = a.getMonth(), c.drawYear = c.selectedYear = a.getFullYear());
              this._notifyChange(c);
              this._adjustDate(b)
            },
            _selectMonthYear: function(a, b, c) {
              a = d(a);
              var f = this._getInst(a[0]);
              f["selected" + ("M" === c ? "Month" : "Year")] = f["draw" + ("M" === c ? "Month" : "Year")] = parseInt(b.options[b.selectedIndex].value, 10);
              this._notifyChange(f);
              this._adjustDate(a)
            },
            _selectDay: function(a, b, c, f) {
              var e;
              e = d(a);
              d(f).hasClass(this._unselectableClass) || this._isDisabledDatepicker(e[0]) || (e = this._getInst(e[0]), e.selectedDay = e.currentDay = d("a", f).html(), e.selectedMonth = e.currentMonth = b, e.selectedYear = e.currentYear =
                c, this._selectDate(a, this._formatDate(e, e.currentDay, e.currentMonth, e.currentYear)))
            },
            _clearDate: function(a) {
              a = d(a);
              this._selectDate(a, "")
            },
            _selectDate: function(a, b) {
              a = d(a);
              var c = this._getInst(a[0]);
              b = null != b ? b : this._formatDate(c);
              c.input && c.input.val(b);
              this._updateAlternate(c);
              (a = this._get(c, "onSelect")) ? a.apply(c.input ? c.input[0] : null, [b, c]): c.input && c.input.trigger("change");
              c.inline ? this._updateDatepicker(c) : (this._hideDatepicker(), this._lastInput = c.input[0], "object" !== typeof c.input[0] && c.input.trigger("focus"), this._lastInput = null)
            },
            _updateAlternate: function(a) {
              var b, c, f = this._get(a, "altField");
              f && (b = this._get(a, "altFormat") || this._get(a, "dateFormat"), c = this._getDate(a), a = this.formatDate(b, c, this._getFormatConfig(a)), d(f).val(a))
            },
            noWeekends: function(a) {
              a = a.getDay();
              return [0 < a && 6 > a, ""]
            },
            iso8601Week: function(a) {
              var b = new Date(a.getTime());
              b.setDate(b.getDate() + 4 - (b.getDay() || 7));
              a = b.getTime();
              b.setMonth(0);
              b.setDate(1);
              return Math.floor(Math.round((a - b) / 864E5) / 7) + 1
            },
            parseDate: function(a, b, c) {
              if (null == a || null == b) throw "Invalid arguments";
              b = "object" === typeof b ? b.toString() : b + "";
              if ("" === b) return null;
              var f, e, g, h = 0;
              e = (c ? c.shortYearCutoff : null) || this._defaults.shortYearCutoff;
              e = "string" !== typeof e ? e : (new Date).getFullYear() % 100 + parseInt(e, 10);
              g = (c ? c.dayNamesShort : null) || this._defaults.dayNamesShort;
              var k = (c ? c.dayNames : null) || this._defaults.dayNames,
                m = (c ? c.monthNamesShort : null) || this._defaults.monthNamesShort,
                p = (c ? c.monthNames : null) || this._defaults.monthNames,
                n = c = -1,
                l = -1,
                t = -1,
                w = !1,
                q, r = function(b) {
                  (b = f + 1 < a.length && a.charAt(f + 1) === b) && f++;
                  return b
                },
                u = function(a) {
                  var c = r(a),
                    c = "@" === a ? 14 : "!" === a ? 20 : "y" === a && c ? 4 : "o" === a ? 3 : 2;
                  a = new RegExp("^\\d{" + ("y" === a ? c : 1) + "," + c + "}");
                  a = b.substring(h).match(a);
                  if (!a) throw "Missing number at position " + h;
                  h += a[0].length;
                  return parseInt(a[0], 10)
                },
                z = function(a, c, f) {
                  var e = -1;
                  a = d.map(r(a) ? f : c, function(a, b) {
                    return [
                      [b, a]
                    ]
                  }).sort(function(a, b) {
                    return -(a[1].length - b[1].length)
                  });
                  d.each(a, function(a, c) {
                    a = c[1];
                    if (b.substr(h, a.length).toLowerCase() === a.toLowerCase()) return e = c[0],
                      h += a.length, !1
                  });
                  if (-1 !== e) return e + 1;
                  throw "Unknown name at position " + h;
                },
                A = function() {
                  if (b.charAt(h) !== a.charAt(f)) throw "Unexpected literal at position " + h;
                  h++
                };
              for (f = 0; f < a.length; f++)
                if (w) "'" !== a.charAt(f) || r("'") ? A() : w = !1;
                else switch (a.charAt(f)) {
                  case "d":
                    l = u("d");
                    break;
                  case "D":
                    z("D", g, k);
                    break;
                  case "o":
                    t = u("o");
                    break;
                  case "m":
                    n = u("m");
                    break;
                  case "M":
                    n = z("M", m, p);
                    break;
                  case "y":
                    c = u("y");
                    break;
                  case "@":
                    q = new Date(u("@"));
                    c = q.getFullYear();
                    n = q.getMonth() + 1;
                    l = q.getDate();
                    break;
                  case "!":
                    q = new Date((u("!") - this._ticksTo1970) / 1E4);
                    c = q.getFullYear();
                    n = q.getMonth() + 1;
                    l = q.getDate();
                    break;
                  case "'":
                    r("'") ? A() : w = !0;
                    break;
                  default:
                    A()
                }
              if (h < b.length && (g = b.substr(h), !/^\s+/.test(g))) throw "Extra/unparsed characters found in date: " + g; - 1 === c ? c = (new Date).getFullYear() : 100 > c && (c += (new Date).getFullYear() - (new Date).getFullYear() %
                100 + (c <= e ? 0 : -100));
              if (-1 < t) {
                n = 1;
                l = t;
                do {
                  e = this._getDaysInMonth(c, n - 1);
                  if (l <= e) break;
                  n++;
                  l -= e
                } while (1)
              }
              q = this._daylightSavingAdjust(new Date(c, n - 1, l));
              if (q.getFullYear() !== c || q.getMonth() + 1 !== n || q.getDate() !== l) throw "Invalid date";
              return q
            },
            ATOM: "yy-mm-dd",
            COOKIE: "D, dd M yy",
            ISO_8601: "yy-mm-dd",
            RFC_822: "D, d M y",
            RFC_850: "DD, dd-M-y",
            RFC_1036: "D, d M y",
            RFC_1123: "D, d M yy",
            RFC_2822: "D, d M yy",
            RSS: "D, d M y",
            TICKS: "!",
            TIMESTAMP: "@",
            W3C: "yy-mm-dd",
            _ticksTo1970: 864E9 * (718685 + Math.floor(492.5) - Math.floor(19.7) + Math.floor(4.925)),
            formatDate: function(a, b, c) {
              if (!b) return "";
              var d, e = (c ? c.dayNamesShort : null) || this._defaults.dayNamesShort,
                g = (c ? c.dayNames : null) || this._defaults.dayNames,
                h = (c ? c.monthNamesShort : null) || this._defaults.monthNamesShort;
              c = (c ? c.monthNames : null) || this._defaults.monthNames;
              var k = function(b) {
                  (b = d + 1 < a.length && a.charAt(d + 1) === b) && d++;
                  return b
                },
                m = function(a, b, c) {
                  b = "" + b;
                  if (k(a))
                    for (; b.length < c;) b = "0" + b;
                  return b
                },
                p = function(a, b, c, d) {
                  return k(a) ? d[b] : c[b]
                },
                n = "",
                l = !1;
              if (b)
                for (d = 0; d < a.length; d++)
                  if (l) "'" !== a.charAt(d) || k("'") ? n += a.charAt(d) : l = !1;
                  else switch (a.charAt(d)) {
                    case "d":
                      n += m("d", b.getDate(), 2);
                      break;
                    case "D":
                      n += p("D", b.getDay(), e, g);
                      break;
                    case "o":
                      n += m("o", Math.round(((new Date(b.getFullYear(), b.getMonth(), b.getDate())).getTime() - (new Date(b.getFullYear(), 0, 0)).getTime()) / 864E5), 3);
                      break;
                    case "m":
                      n += m("m", b.getMonth() + 1, 2);
                      break;
                    case "M":
                      n += p("M", b.getMonth(), h, c);
                      break;
                    case "y":
                      n += k("y") ? b.getFullYear() : (10 > b.getFullYear() % 100 ? "0" : "") + b.getFullYear() % 100;
                      break;
                    case "@":
                      n += b.getTime();
                      break;
                    case "!":
                      n += 1E4 * b.getTime() + this._ticksTo1970;
                      break;
                    case "'":
                      k("'") ? n += "'" : l = !0;
                      break;
                    default:
                      n += a.charAt(d)
                  }
              return n
            },
            _possibleChars: function(a) {
              var b, c = "",
                d = !1,
                e = function(c) {
                  (c = b + 1 < a.length && a.charAt(b + 1) === c) && b++;
                  return c
                };
              for (b = 0; b < a.length; b++)
                if (d) "'" !== a.charAt(b) || e("'") ? c += a.charAt(b) : d = !1;
                else switch (a.charAt(b)) {
                  case "d":
                  case "m":
                  case "y":
                  case "@":
                    c += "0123456789";
                    break;
                  case "D":
                  case "M":
                    return null;
                  case "'":
                    e("'") ? c += "'" : d = !0;
                    break;
                  default:
                    c += a.charAt(b)
                }
              return c
            },
            _get: function(a, b) {
              return void 0 !== a.settings[b] ? a.settings[b] : this._defaults[b]
            },
            _setDateFromField: function(a, b) {
              if (a.input.val() !== a.lastVal) {
                var c = this._get(a, "dateFormat"),
                  d = a.lastVal = a.input ? a.input.val() : null,
                  e = this._getDefaultDate(a),
                  g = e,
                  h = this._getFormatConfig(a);
                try {
                  g = this.parseDate(c, d, h) || e
                } catch (k) {
                  d = b ? "" : d
                }
                a.selectedDay = g.getDate();
                a.drawMonth = a.selectedMonth = g.getMonth();
                a.drawYear = a.selectedYear = g.getFullYear();
                a.currentDay = d ? g.getDate() : 0;
                a.currentMonth = d ? g.getMonth() : 0;
                a.currentYear = d ? g.getFullYear() : 0;
                this._adjustInstDate(a)
              }
            },
            _getDefaultDate: function(a) {
              return this._restrictMinMax(a, this._determineDate(a, this._get(a, "defaultDate"), new Date))
            },
            _determineDate: function(a, b, c) {
              var f = function(a) {
                  var b = new Date;
                  b.setDate(b.getDate() + a);
                  return b
                },
                e = function(b) {
                  try {
                    return d.datepicker.parseDate(d.datepicker._get(a, "dateFormat"), b, d.datepicker._getFormatConfig(a))
                  } catch (l) {}
                  for (var c = (b.toLowerCase().match(/^c/) ? d.datepicker._getDate(a) : null) || new Date, e = c.getFullYear(), f = c.getMonth(), c = c.getDate(), g = /([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g, n = g.exec(b); n;) {
                    switch (n[2] || "d") {
                      case "d":
                      case "D":
                        c += parseInt(n[1], 10);
                        break;
                      case "w":
                      case "W":
                        c += 7 * parseInt(n[1], 10);
                        break;
                      case "m":
                      case "M":
                        f += parseInt(n[1], 10);
                        c = Math.min(c, d.datepicker._getDaysInMonth(e, f));
                        break;
                      case "y":
                      case "Y":
                        e += parseInt(n[1], 10), c = Math.min(c, d.datepicker._getDaysInMonth(e, f))
                    }
                    n = g.exec(b)
                  }
                  return new Date(e, f, c)
                };
              if (b = (b = null == b || "" === b ? c : "string" === typeof b ? e(b) : "number" === typeof b ? isNaN(b) ? c : f(b) : new Date(b.getTime())) && "Invalid Date" === b.toString() ? c : b) b.setHours(0), b.setMinutes(0), b
                .setSeconds(0), b.setMilliseconds(0);
              return this._daylightSavingAdjust(b)
            },
            _daylightSavingAdjust: function(a) {
              if (!a) return null;
              a.setHours(12 < a.getHours() ? a.getHours() + 2 : 0);
              return a
            },
            _setDate: function(a, b, c) {
              var d = !b,
                e = a.selectedMonth,
                g = a.selectedYear;
              b = this._restrictMinMax(a, this._determineDate(a, b, new Date));
              a.selectedDay = a.currentDay = b.getDate();
              a.drawMonth = a.selectedMonth = a.currentMonth = b.getMonth();
              a.drawYear = a.selectedYear = a.currentYear = b.getFullYear();
              e === a.selectedMonth && g === a.selectedYear || c || this._notifyChange(a);
              this._adjustInstDate(a);
              a.input && a.input.val(d ? "" : this._formatDate(a))
            },
            _getDate: function(a) {
              return !a.currentYear || a.input && "" === a.input.val() ? null : this._daylightSavingAdjust(new Date(a.currentYear, a.currentMonth, a.currentDay))
            },
            _attachHandlers: function(a) {
              var b = this._get(a, "stepMonths"),
                c = "#" + a.id.replace(/\\\\/g, "\\");
              a.dpDiv.find("[data-handler]").map(function() {
                d(this).on(this.getAttribute("data-event"), {
                  prev: function() {
                    d.datepicker._adjustDate(c, -b, "M")
                  },
                  next: function() {
                    d.datepicker._adjustDate(c, +b, "M")
                  },
                  hide: function() {
                    d.datepicker._hideDatepicker()
                  },
                  today: function() {
                    d.datepicker._gotoToday(c)
                  },
                  selectDay: function() {
                    d.datepicker._selectDay(c, +this.getAttribute("data-month"), +this.getAttribute("data-year"), this);
                    return !1
                  },
                  selectMonth: function() {
                    d.datepicker._selectMonthYear(c, this, "M");
                    return !1
                  },
                  selectYear: function() {
                    d.datepicker._selectMonthYear(c, this, "Y");
                    return !1
                  }
                } [this.getAttribute("data-handler")])
              })
            },
            _generateHTML: function(a) {
              var b, c, d, e, g, h, k, m, p, n, l, t, w, q, r, u, z, A, E, C, B, v, H, J, O, M, P, K = new Date,
                K = this._daylightSavingAdjust(new Date(K.getFullYear(), K.getMonth(), K.getDate())),
                F = this._get(a, "isRTL");
              h = this._get(a, "showButtonPanel");
              d = this._get(a, "hideIfNoPrevNext");
              g = this._get(a, "navigationAsDateFormat");
              var G = this._getNumberOfMonths(a),
                x = this._get(a, "showCurrentAtPos");
              e = this._get(a, "stepMonths");
              var y = 1 !== G[0] || 1 !== G[1],
                I = this._daylightSavingAdjust(a.currentDay ? new Date(a.currentYear, a.currentMonth, a.currentDay) : new Date(9999, 9, 9)),
                N = this._getMinMaxDate(a, "min"),
                L = this._getMinMaxDate(a, "max"),
                x = a.drawMonth - x,
                D = a.drawYear;
              0 > x && (x += 12, D--);
              if (L)
                for (b = this._daylightSavingAdjust(new Date(L.getFullYear(), L.getMonth() - G[0] * G[1] + 1, L.getDate())), b = N && b < N ? N : b; this._daylightSavingAdjust(new Date(D, x, 1)) > b;) x--, 0 > x && (x = 11, D--);
              a.drawMonth = x;
              a.drawYear = D;
              b = this._get(a, "prevText");
              b = g ? this.formatDate(b, this._daylightSavingAdjust(new Date(D, x - e, 1)), this._getFormatConfig(a)) : b;
              b = this._canAdjustMonth(a, -1, D, x) ? "\x3ca class\x3d'ui-datepicker-prev ui-corner-all' data-handler\x3d'prev' data-event\x3d'click' title\x3d'" + b + "'\x3e\x3cspan class\x3d'ui-icon ui-icon-circle-triangle-" + (F ?
                "e" : "w") + "'\x3e" + b + "\x3c/span\x3e\x3c/a\x3e" : d ? "" : "\x3ca class\x3d'ui-datepicker-prev ui-corner-all ui-state-disabled' title\x3d'" + b + "'\x3e\x3cspan class\x3d'ui-icon ui-icon-circle-triangle-" + (F ?
                "e" : "w") + "'\x3e" + b + "\x3c/span\x3e\x3c/a\x3e";
              c = this._get(a, "nextText");
              c = g ? this.formatDate(c, this._daylightSavingAdjust(new Date(D, x + e, 1)), this._getFormatConfig(a)) : c;
              d = this._canAdjustMonth(a, 1, D, x) ? "\x3ca class\x3d'ui-datepicker-next ui-corner-all' data-handler\x3d'next' data-event\x3d'click' title\x3d'" + c + "'\x3e\x3cspan class\x3d'ui-icon ui-icon-circle-triangle-" + (F ? "w" :
                "e") + "'\x3e" + c + "\x3c/span\x3e\x3c/a\x3e" : d ? "" : "\x3ca class\x3d'ui-datepicker-next ui-corner-all ui-state-disabled' title\x3d'" + c + "'\x3e\x3cspan class\x3d'ui-icon ui-icon-circle-triangle-" + (F ? "w" :
                "e") + "'\x3e" + c + "\x3c/span\x3e\x3c/a\x3e";
              e = this._get(a, "currentText");
              c = this._get(a, "gotoCurrent") && a.currentDay ? I : K;
              e = g ? this.formatDate(e, c, this._getFormatConfig(a)) : e;
              g = a.inline ? "" : "\x3cbutton type\x3d'button' class\x3d'ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all' data-handler\x3d'hide' data-event\x3d'click'\x3e" + this._get(a, "closeText") +
                "\x3c/button\x3e";
              h = h ? "\x3cdiv class\x3d'ui-datepicker-buttonpane ui-widget-content'\x3e" + (F ? g : "") + (this._isInRange(a, c) ?
                  "\x3cbutton type\x3d'button' class\x3d'ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all' data-handler\x3d'today' data-event\x3d'click'\x3e" + e + "\x3c/button\x3e" : "") + (F ? "" : g) +
                "\x3c/div\x3e" : "";
              g = parseInt(this._get(a, "firstDay"), 10);
              g = isNaN(g) ? 0 : g;
              e = this._get(a, "showWeek");
              c = this._get(a, "dayNames");
              k = this._get(a, "dayNamesMin");
              m = this._get(a, "monthNames");
              p = this._get(a, "monthNamesShort");
              n = this._get(a, "beforeShowDay");
              l = this._get(a, "showOtherMonths");
              t = this._get(a, "selectOtherMonths");
              w = this._getDefaultDate(a);
              q = "";
              for (u = 0; u < G[0]; u++) {
                z = "";
                this.maxRows = 4;
                for (A = 0; A < G[1]; A++) {
                  E = this._daylightSavingAdjust(new Date(D, x, a.selectedDay));
                  r = " ui-corner-all";
                  C = "";
                  if (y) {
                    C += "\x3cdiv class\x3d'ui-datepicker-group";
                    if (1 < G[1]) switch (A) {
                      case 0:
                        C += " ui-datepicker-group-first";
                        r = " ui-corner-" + (F ? "right" : "left");
                        break;
                      case G[1] - 1:
                        C += " ui-datepicker-group-last";
                        r = " ui-corner-" + (F ? "left" : "right");
                        break;
                      default:
                        C += " ui-datepicker-group-middle", r = ""
                    }
                    C += "'\x3e"
                  }
                  C += "\x3cdiv class\x3d'ui-datepicker-header ui-widget-header ui-helper-clearfix" + r + "'\x3e" + (/all|left/.test(r) && 0 === u ? F ? d : b : "") + (/all|right/.test(r) && 0 === u ? F ? b : d : "") + this
                    ._generateMonthYearHeader(a, x, D, N, L, 0 < u || 0 < A, m, p) + "\x3c/div\x3e\x3ctable class\x3d'ui-datepicker-calendar'\x3e\x3cthead\x3e\x3ctr\x3e";
                  B = e ? "\x3cth class\x3d'ui-datepicker-week-col'\x3e" + this._get(a, "weekHeader") + "\x3c/th\x3e" : "";
                  for (r = 0; 7 > r; r++) v = (r + g) % 7, B += "\x3cth scope\x3d'col'" + (5 <= (r + g + 6) % 7 ? " class\x3d'ui-datepicker-week-end'" : "") + "\x3e\x3cspan title\x3d'" + c[v] + "'\x3e" + k[v] + "\x3c/span\x3e\x3c/th\x3e";
                  C += B + "\x3c/tr\x3e\x3c/thead\x3e\x3ctbody\x3e";
                  B = this._getDaysInMonth(D, x);
                  D === a.selectedYear && x === a.selectedMonth && (a.selectedDay = Math.min(a.selectedDay, B));
                  r = (this._getFirstDayOfMonth(D, x) - g + 7) % 7;
                  B = Math.ceil((r + B) / 7);
                  this.maxRows = B = y ? this.maxRows > B ? this.maxRows : B : B;
                  v = this._daylightSavingAdjust(new Date(D, x, 1 - r));
                  for (H = 0; H < B; H++) {
                    C += "\x3ctr\x3e";
                    J = e ? "\x3ctd class\x3d'ui-datepicker-week-col'\x3e" + this._get(a, "calculateWeek")(v) + "\x3c/td\x3e" : "";
                    for (r = 0; 7 > r; r++) O = n ? n.apply(a.input ? a.input[0] : null, [v]) : [!0, ""], P = (M = v.getMonth() !== x) && !t || !O[0] || N && v < N || L && v > L, J += "\x3ctd class\x3d'" + (5 <= (r + g + 6) % 7 ?
                        " ui-datepicker-week-end" : "") + (M ? " ui-datepicker-other-month" : "") + (v.getTime() === E.getTime() && x === a.selectedMonth && a._keyEvent || w.getTime() === v.getTime() && w.getTime() === E.getTime() ? " " +
                        this._dayOverClass : "") + (P ? " " + this._unselectableClass + " ui-state-disabled" : "") + (M && !l ? "" : " " + O[1] + (v.getTime() === I.getTime() ? " " + this._currentClass : "") + (v.getTime() === K
                      .getTime() ? " ui-datepicker-today" : "")) + "'" + (M && !l || !O[2] ? "" : " title\x3d'" + O[2].replace(/'/g, "\x26#39;") + "'") + (P ? "" : " data-handler\x3d'selectDay' data-event\x3d'click' data-month\x3d'" + v
                        .getMonth() + "' data-year\x3d'" + v.getFullYear() + "'") + "\x3e" + (M && !l ? "\x26#xa0;" : P ? "\x3cspan class\x3d'ui-state-default'\x3e" + v.getDate() + "\x3c/span\x3e" : "\x3ca class\x3d'ui-state-default" + (v
                        .getTime() === K.getTime() ? " ui-state-highlight" : "") + (v.getTime() === I.getTime() ? " ui-state-active" : "") + (M ? " ui-priority-secondary" : "") + "' href\x3d'#'\x3e" + v.getDate() + "\x3c/a\x3e") +
                      "\x3c/td\x3e", v.setDate(v.getDate() + 1), v = this._daylightSavingAdjust(v);
                    C += J + "\x3c/tr\x3e"
                  }
                  x++;
                  11 < x && (x = 0, D++);
                  C += "\x3c/tbody\x3e\x3c/table\x3e" + (y ? "\x3c/div\x3e" + (0 < G[0] && A === G[1] - 1 ? "\x3cdiv class\x3d'ui-datepicker-row-break'\x3e\x3c/div\x3e" : "") : "");
                  z += C
                }
                q += z
              }
              a._keyEvent = !1;
              return q + h
            },
            _generateMonthYearHeader: function(a, b, c, d, e, g, h, k) {
              var f, p, n, l = this._get(a, "changeMonth"),
                t = this._get(a, "changeYear"),
                w = this._get(a, "showMonthAfterYear"),
                q = "\x3cdiv class\x3d'ui-datepicker-title'\x3e",
                r = "";
              if (g || !l) r += "\x3cspan class\x3d'ui-datepicker-month'\x3e" + h[b] + "\x3c/span\x3e";
              else {
                h = d && d.getFullYear() === c;
                f = e && e.getFullYear() === c;
                r += "\x3cselect class\x3d'ui-datepicker-month' data-handler\x3d'selectMonth' data-event\x3d'change'\x3e";
                for (p = 0; 12 > p; p++)(!h || p >= d.getMonth()) && (!f || p <= e.getMonth()) && (r += "\x3coption value\x3d'" + p + "'" + (p === b ? " selected\x3d'selected'" : "") + "\x3e" + k[p] + "\x3c/option\x3e");
                r += "\x3c/select\x3e"
              }
              w || (q += r + (!g && l && t ? "" : "\x26#xa0;"));
              if (!a.yearshtml)
                if (a.yearshtml = "", g || !t) q += "\x3cspan class\x3d'ui-datepicker-year'\x3e" + c + "\x3c/span\x3e";
                else {
                  k = this._get(a, "yearRange").split(":");
                  n = (new Date).getFullYear();
                  h = function(a) {
                    a = a.match(/c[+\-].*/) ? c + parseInt(a.substring(1), 10) : a.match(/[+\-].*/) ? n + parseInt(a, 10) : parseInt(a, 10);
                    return isNaN(a) ? n : a
                  };
                  b = h(k[0]);
                  k = Math.max(b, h(k[1] || ""));
                  b = d ? Math.max(b, d.getFullYear()) : b;
                  k = e ? Math.min(k, e.getFullYear()) : k;
                  for (a.yearshtml += "\x3cselect class\x3d'ui-datepicker-year' data-handler\x3d'selectYear' data-event\x3d'change'\x3e"; b <= k; b++) a.yearshtml += "\x3coption value\x3d'" + b + "'" + (b === c ?
                    " selected\x3d'selected'" : "") + "\x3e" + b + "\x3c/option\x3e";
                  a.yearshtml += "\x3c/select\x3e";
                  q += a.yearshtml;
                  a.yearshtml = null
                } q += this._get(a, "yearSuffix");
              w && (q += (!g && l && t ? "" : "\x26#xa0;") + r);
              return q + "\x3c/div\x3e"
            },
            _adjustInstDate: function(a, b, c) {
              var d = a.selectedYear + ("Y" === c ? b : 0),
                e = a.selectedMonth + ("M" === c ? b : 0);
              b = Math.min(a.selectedDay, this._getDaysInMonth(d, e)) + ("D" === c ? b : 0);
              d = this._restrictMinMax(a, this._daylightSavingAdjust(new Date(d, e, b)));
              a.selectedDay = d.getDate();
              a.drawMonth = a.selectedMonth = d.getMonth();
              a.drawYear = a.selectedYear = d.getFullYear();
              "M" !== c && "Y" !== c || this._notifyChange(a)
            },
            _restrictMinMax: function(a, b) {
              var c = this._getMinMaxDate(a, "min");
              a = this._getMinMaxDate(a, "max");
              b = c && b < c ? c : b;
              return a && b > a ? a : b
            },
            _notifyChange: function(a) {
              var b = this._get(a, "onChangeMonthYear");
              b && b.apply(a.input ? a.input[0] : null, [a.selectedYear, a.selectedMonth + 1, a])
            },
            _getNumberOfMonths: function(a) {
              a = this._get(a, "numberOfMonths");
              return null == a ? [1, 1] : "number" === typeof a ? [1, a] : a
            },
            _getMinMaxDate: function(a, b) {
              return this._determineDate(a, this._get(a, b + "Date"), null)
            },
            _getDaysInMonth: function(a, b) {
              return 32 - this._daylightSavingAdjust(new Date(a, b, 32)).getDate()
            },
            _getFirstDayOfMonth: function(a, b) {
              return (new Date(a, b, 1)).getDay()
            },
            _canAdjustMonth: function(a, b, c, d) {
              var e = this._getNumberOfMonths(a);
              c = this._daylightSavingAdjust(new Date(c, d + (0 > b ? b : e[0] * e[1]), 1));
              0 > b && c.setDate(this._getDaysInMonth(c.getFullYear(), c.getMonth()));
              return this._isInRange(a, c)
            },
            _isInRange: function(a, b) {
              var c, d = this._getMinMaxDate(a, "min"),
                e = this._getMinMaxDate(a, "max"),
                g = null,
                h = null;
              if (a = this._get(a, "yearRange")) a = a.split(":"), c = (new Date).getFullYear(), g = parseInt(a[0], 10), h = parseInt(a[1], 10), a[0].match(/[+\-].*/) && (g += c), a[1].match(/[+\-].*/) && (h += c);
              return (!d || b.getTime() >= d.getTime()) && (!e || b.getTime() <= e.getTime()) && (!g || b.getFullYear() >= g) && (!h || b.getFullYear() <= h)
            },
            _getFormatConfig: function(a) {
              var b = this._get(a, "shortYearCutoff"),
                b = "string" !== typeof b ? b : (new Date).getFullYear() % 100 + parseInt(b, 10);
              return {
                shortYearCutoff: b,
                dayNamesShort: this._get(a, "dayNamesShort"),
                dayNames: this._get(a, "dayNames"),
                monthNamesShort: this._get(a, "monthNamesShort"),
                monthNames: this._get(a, "monthNames")
              }
            },
            _formatDate: function(a, b, c, d) {
              b || (a.currentDay = a.selectedDay, a.currentMonth = a.selectedMonth, a.currentYear = a.selectedYear);
              b = b ? "object" === typeof b ? b : this._daylightSavingAdjust(new Date(d, c, b)) : this._daylightSavingAdjust(new Date(a.currentYear, a.currentMonth, a.currentDay));
              return this.formatDate(this._get(a, "dateFormat"), b, this._getFormatConfig(a))
            }
          });
          d.fn.datepicker = function(a) {
            if (!this.length) return this;
            d.datepicker.initialized || (d(document).on("mousedown", d.datepicker._checkExternalClick), d.datepicker.initialized = !0);
            0 === d("#" + d.datepicker._mainDivId).length && d("body").append(d.datepicker.dpDiv);
            var b = Array.prototype.slice.call(arguments, 1);
            return "string" === typeof a && ("isDisabled" === a || "getDate" === a || "widget" === a) || "option" === a && 2 === arguments.length && "string" === typeof arguments[1] ? d.datepicker["_" + a + "Datepicker"].apply(d.datepicker,
              [this[0]].concat(b)) : this.each(function() {
              "string" === typeof a ? d.datepicker["_" + a + "Datepicker"].apply(d.datepicker, [this].concat(b)) : d.datepicker._attachDatepicker(this, a)
            })
          };
          d.datepicker = new R;
          d.datepicker.initialized = !1;
          d.datepicker.uuid = (new Date).getTime();
          d.datepicker.version = "1.12.1";
          d.widget("ui.dialog", {
            version: "1.12.1",
            options: {
              appendTo: "body",
              autoOpen: !0,
              buttons: [],
              classes: {
                "ui-dialog": "ui-corner-all",
                "ui-dialog-titlebar": "ui-corner-all"
              },
              closeOnEscape: !0,
              closeText: "Close",
              draggable: !0,
              hide: null,
              height: "auto",
              maxHeight: null,
              maxWidth: null,
              minHeight: 150,
              minWidth: 150,
              modal: !1,
              position: {
                my: "center",
                at: "center",
                of: window,
                collision: "fit",
                using: function(a) {
                  var b = d(this).css(a).offset().top;
                  0 > b && d(this).css("top", a.top - b)
                }
              },
              resizable: !0,
              show: null,
              title: null,
              width: 300,
              beforeClose: null,
              close: null,
              drag: null,
              dragStart: null,
              dragStop: null,
              focus: null,
              open: null,
              resize: null,
              resizeStart: null,
              resizeStop: null
            },
            sizeRelatedOptions: {
              buttons: !0,
              height: !0,
              maxHeight: !0,
              maxWidth: !0,
              minHeight: !0,
              minWidth: !0,
              width: !0
            },
            resizableRelatedOptions: {
              maxHeight: !0,
              maxWidth: !0,
              minHeight: !0,
              minWidth: !0
            },
            _create: function() {
              this.originalCss = {
                display: this.element[0].style.display,
                width: this.element[0].style.width,
                minHeight: this.element[0].style.minHeight,
                maxHeight: this.element[0].style.maxHeight,
                height: this.element[0].style.height
              };
              this.originalPosition = {
                parent: this.element.parent(),
                index: this.element.parent().children().index(this.element)
              };
              this.originalTitle = this.element.attr("title");
              null == this.options.title && null != this.originalTitle && (this.options.title = this.originalTitle);
              this.options.disabled && (this.options.disabled = !1);
              this._createWrapper();
              this.element.show().removeAttr("title").appendTo(this.uiDialog);
              this._addClass("ui-dialog-content", "ui-widget-content");
              this._createTitlebar();
              this._createButtonPane();
              this.options.draggable && d.fn.draggable && this._makeDraggable();
              this.options.resizable && d.fn.resizable && this._makeResizable();
              this._isOpen = !1;
              this._trackFocus()
            },
            _init: function() {
              this.options.autoOpen && this.open()
            },
            _appendTo: function() {
              var a = this.options.appendTo;
              return a && (a.jquery || a.nodeType) ? d(a) : this.document.find(a || "body").eq(0)
            },
            _destroy: function() {
              var a, b = this.originalPosition;
              this._untrackInstance();
              this._destroyOverlay();
              this.element.removeUniqueId().css(this.originalCss).detach();
              this.uiDialog.remove();
              this.originalTitle && this.element.attr("title", this.originalTitle);
              a = b.parent.children().eq(b.index);
              a.length && a[0] !== this.element[0] ? a.before(this.element) : b.parent.append(this.element)
            },
            widget: function() {
              return this.uiDialog
            },
            disable: d.noop,
            enable: d.noop,
            close: function(a) {
              var b = this;
              this._isOpen && !1 !== this._trigger("beforeClose", a) && (this._isOpen = !1, this._focusedElement = null, this._destroyOverlay(), this._untrackInstance(), this.opener.filter(":focusable").trigger("focus").length || d.ui
                .safeBlur(d.ui.safeActiveElement(this.document[0])), this._hide(this.uiDialog, this.options.hide, function() {
                  b._trigger("close", a)
                }))
            },
            isOpen: function() {
              return this._isOpen
            },
            moveToTop: function() {
              this._moveToTop()
            },
            _moveToTop: function(a, b) {
              var c = !1,
                f = this.uiDialog.siblings(".ui-front:visible").map(function() {
                  return +d(this).css("z-index")
                }).get(),
                f = Math.max.apply(null, f);
              f >= +this.uiDialog.css("z-index") && (this.uiDialog.css("z-index", f + 1), c = !0);
              c && !b && this._trigger("focus", a);
              return c
            },
            open: function() {
              var a = this;
              this._isOpen ? this._moveToTop() && this._focusTabbable() : (this._isOpen = !0, this.opener = d(d.ui.safeActiveElement(this.document[0])), this._size(), this._position(), this._createOverlay(), this._moveToTop(null, !0),
                this.overlay && this.overlay.css("z-index", this.uiDialog.css("z-index") - 1), this._show(this.uiDialog, this.options.show, function() {
                  a._focusTabbable();
                  a._trigger("focus")
                }), this._makeFocusTarget(), this._trigger("open"))
            },
            _focusTabbable: function() {
              var a = this._focusedElement;
              a || (a = this.element.find("[autofocus]"));
              a.length || (a = this.element.find(":tabbable"));
              a.length || (a = this.uiDialogButtonPane.find(":tabbable"));
              a.length || (a = this.uiDialogTitlebarClose.filter(":tabbable"));
              a.length || (a = this.uiDialog);
              a.eq(0).trigger("focus")
            },
            _keepFocus: function(a) {
              function b() {
                var a = d.ui.safeActiveElement(this.document[0]);
                this.uiDialog[0] === a || d.contains(this.uiDialog[0], a) || this._focusTabbable()
              }
              a.preventDefault();
              b.call(this);
              this._delay(b)
            },
            _createWrapper: function() {
              this.uiDialog = d("\x3cdiv\x3e").hide().attr({
                tabIndex: -1,
                role: "dialog"
              }).appendTo(this._appendTo());
              this._addClass(this.uiDialog, "ui-dialog", "ui-widget ui-widget-content ui-front");
              this._on(this.uiDialog, {
                keydown: function(a) {
                  if (this.options.closeOnEscape && !a.isDefaultPrevented() && a.keyCode && a.keyCode === d.ui.keyCode.ESCAPE) a.preventDefault(),
                    this.close(a);
                  else if (a.keyCode === d.ui.keyCode.TAB && !a.isDefaultPrevented()) {
                    var b = this.uiDialog.find(":tabbable"),
                      c = b.filter(":first"),
                      f = b.filter(":last");
                    a.target !== f[0] && a.target !== this.uiDialog[0] || a.shiftKey ? a.target !== c[0] && a.target !== this.uiDialog[0] || !a.shiftKey || (this._delay(function() {
                      f.trigger("focus")
                    }), a.preventDefault()) : (this._delay(function() {
                      c.trigger("focus")
                    }), a.preventDefault())
                  }
                },
                mousedown: function(a) {
                  this._moveToTop(a) && this._focusTabbable()
                }
              });
              this.element.find("[aria-describedby]").length || this.uiDialog.attr({
                "aria-describedby": this.element.uniqueId().attr("id")
              })
            },
            _createTitlebar: function() {
              var a;
              this.uiDialogTitlebar = d("\x3cdiv\x3e");
              this._addClass(this.uiDialogTitlebar, "ui-dialog-titlebar", "ui-widget-header ui-helper-clearfix");
              this._on(this.uiDialogTitlebar, {
                mousedown: function(a) {
                  d(a.target).closest(".ui-dialog-titlebar-close") || this.uiDialog.trigger("focus")
                }
              });
              this.uiDialogTitlebarClose = d("\x3cbutton type\x3d'button'\x3e\x3c/button\x3e").button({
                label: d("\x3ca\x3e").text(this.options.closeText).html(),
                icon: "ui-icon-closethick",
                showLabel: !1
              }).appendTo(this.uiDialogTitlebar);
              this._addClass(this.uiDialogTitlebarClose, "ui-dialog-titlebar-close");
              this._on(this.uiDialogTitlebarClose, {
                click: function(a) {
                  a.preventDefault();
                  this.close(a)
                }
              });
              a = d("\x3cspan\x3e").uniqueId().prependTo(this.uiDialogTitlebar);
              this._addClass(a, "ui-dialog-title");
              this._title(a);
              this.uiDialogTitlebar.prependTo(this.uiDialog);
              this.uiDialog.attr({
                "aria-labelledby": a.attr("id")
              })
            },
            _title: function(a) {
              this.options.title ? a.text(this.options.title) : a.html("\x26#160;")
            },
            _createButtonPane: function() {
              this.uiDialogButtonPane = d("\x3cdiv\x3e");
              this._addClass(this.uiDialogButtonPane, "ui-dialog-buttonpane", "ui-widget-content ui-helper-clearfix");
              this.uiButtonSet = d("\x3cdiv\x3e").appendTo(this.uiDialogButtonPane);
              this._addClass(this.uiButtonSet, "ui-dialog-buttonset");
              this._createButtons()
            },
            _createButtons: function() {
              var a = this,
                b = this.options.buttons;
              this.uiDialogButtonPane.remove();
              this.uiButtonSet.empty();
              d.isEmptyObject(b) || d.isArray(b) && !b.length ? this._removeClass(this.uiDialog, "ui-dialog-buttons") : (d.each(b, function(b, f) {
                var c;
                f = d.isFunction(f) ? {
                  click: f,
                  text: b
                } : f;
                f = d.extend({
                  type: "button"
                }, f);
                c = f.click;
                b = {
                  icon: f.icon,
                  iconPosition: f.iconPosition,
                  showLabel: f.showLabel,
                  icons: f.icons,
                  text: f.text
                };
                delete f.click;
                delete f.icon;
                delete f.iconPosition;
                delete f.showLabel;
                delete f.icons;
                "boolean" === typeof f.text && delete f.text;
                d("\x3cbutton\x3e\x3c/button\x3e", f).button(b).appendTo(a.uiButtonSet).on("click", function() {
                  c.apply(a.element[0], arguments)
                })
              }), this._addClass(this.uiDialog, "ui-dialog-buttons"), this.uiDialogButtonPane.appendTo(this.uiDialog))
            },
            _makeDraggable: function() {
              function a(a) {
                return {
                  position: a.position,
                  offset: a.offset
                }
              }
              var b = this,
                c = this.options;
              this.uiDialog.draggable({
                cancel: ".ui-dialog-content, .ui-dialog-titlebar-close",
                handle: ".ui-dialog-titlebar",
                containment: "document",
                start: function(c, e) {
                  b._addClass(d(this), "ui-dialog-dragging");
                  b._blockFrames();
                  b._trigger("dragStart", c, a(e))
                },
                drag: function(c, d) {
                  b._trigger("drag", c, a(d))
                },
                stop: function(f, e) {
                  var g = e.offset.left - b.document.scrollLeft(),
                    h = e.offset.top - b.document.scrollTop();
                  c.position = {
                    my: "left top",
                    at: "left" + (0 <= g ? "+" : "") + g + " top" + (0 <= h ? "+" : "") + h,
                    of: b.window
                  };
                  b._removeClass(d(this), "ui-dialog-dragging");
                  b._unblockFrames();
                  b._trigger("dragStop", f, a(e))
                }
              })
            },
            _makeResizable: function() {
              function a(a) {
                return {
                  originalPosition: a.originalPosition,
                  originalSize: a.originalSize,
                  position: a.position,
                  size: a.size
                }
              }
              var b = this,
                c = this.options,
                f = c.resizable,
                e = this.uiDialog.css("position"),
                f = "string" === typeof f ? f : "n,e,s,w,se,sw,ne,nw";
              this.uiDialog.resizable({
                cancel: ".ui-dialog-content",
                containment: "document",
                alsoResize: this.element,
                maxWidth: c.maxWidth,
                maxHeight: c.maxHeight,
                minWidth: c.minWidth,
                minHeight: this._minHeight(),
                handles: f,
                start: function(c, e) {
                  b._addClass(d(this), "ui-dialog-resizing");
                  b._blockFrames();
                  b._trigger("resizeStart", c, a(e))
                },
                resize: function(c, d) {
                  b._trigger("resize", c, a(d))
                },
                stop: function(e, f) {
                  var g = b.uiDialog.offset(),
                    h = g.left - b.document.scrollLeft(),
                    g = g.top - b.document.scrollTop();
                  c.height = b.uiDialog.height();
                  c.width = b.uiDialog.width();
                  c.position = {
                    my: "left top",
                    at: "left" + (0 <= h ? "+" : "") + h + " top" + (0 <= g ? "+" : "") + g,
                    of: b.window
                  };
                  b._removeClass(d(this), "ui-dialog-resizing");
                  b._unblockFrames();
                  b._trigger("resizeStop", e, a(f))
                }
              }).css("position", e)
            },
            _trackFocus: function() {
              this._on(this.widget(), {
                focusin: function(a) {
                  this._makeFocusTarget();
                  this._focusedElement = d(a.target)
                }
              })
            },
            _makeFocusTarget: function() {
              this._untrackInstance();
              this._trackingInstances().unshift(this)
            },
            _untrackInstance: function() {
              var a = this._trackingInstances(),
                b = d.inArray(this, a); - 1 !== b && a.splice(b, 1)
            },
            _trackingInstances: function() {
              var a = this.document.data("ui-dialog-instances");
              a || (a = [], this.document.data("ui-dialog-instances", a));
              return a
            },
            _minHeight: function() {
              var a = this.options;
              return "auto" === a.height ? a.minHeight : Math.min(a.minHeight, a.height)
            },
            _position: function() {
              var a = this.uiDialog.is(":visible");
              a || this.uiDialog.show();
              this.uiDialog.position(this.options.position);
              a || this.uiDialog.hide()
            },
            _setOptions: function(a) {
              var b = this,
                c = !1,
                f = {};
              d.each(a, function(a, d) {
                b._setOption(a, d);
                a in b.sizeRelatedOptions && (c = !0);
                a in b.resizableRelatedOptions && (f[a] = d)
              });
              c && (this._size(), this._position());
              this.uiDialog.is(":data(ui-resizable)") && this.uiDialog.resizable("option", f)
            },
            _setOption: function(a, b) {
              var c, f = this.uiDialog;
              "disabled" !== a && (this._super(a, b), "appendTo" === a && this.uiDialog.appendTo(this._appendTo()), "buttons" === a && this._createButtons(), "closeText" === a && this.uiDialogTitlebarClose.button({
                label: d("\x3ca\x3e").text("" + this.options.closeText).html()
              }), "draggable" === a && ((c = f.is(":data(ui-draggable)")) && !b && f.draggable("destroy"), !c && b && this._makeDraggable()), "position" === a && this._position(), "resizable" === a && ((c = f.is(
                ":data(ui-resizable)")) && !b && f.resizable("destroy"), c && "string" === typeof b && f.resizable("option", "handles", b), c || !1 === b || this._makeResizable()), "title" === a && this._title(this.uiDialogTitlebar
                .find(".ui-dialog-title")))
            },
            _size: function() {
              var a, b, c, d = this.options;
              this.element.show().css({
                width: "auto",
                minHeight: 0,
                maxHeight: "none",
                height: 0
              });
              d.minWidth > d.width && (d.width = d.minWidth);
              a = this.uiDialog.css({
                height: "auto",
                width: d.width
              }).outerHeight();
              b = Math.max(0, d.minHeight - a);
              c = "number" === typeof d.maxHeight ? Math.max(0, d.maxHeight - a) : "none";
              "auto" === d.height ? this.element.css({
                minHeight: b,
                maxHeight: c,
                height: "auto"
              }) : this.element.height(Math.max(0, d.height - a));
              this.uiDialog.is(":data(ui-resizable)") && this.uiDialog.resizable("option", "minHeight", this._minHeight())
            },
            _blockFrames: function() {
              this.iframeBlocks = this.document.find("iframe").map(function() {
                var a = d(this);
                return d("\x3cdiv\x3e").css({
                  position: "absolute",
                  width: a.outerWidth(),
                  height: a.outerHeight()
                }).appendTo(a.parent()).offset(a.offset())[0]
              })
            },
            _unblockFrames: function() {
              this.iframeBlocks && (this.iframeBlocks.remove(), delete this.iframeBlocks)
            },
            _allowInteraction: function(a) {
              return d(a.target).closest(".ui-dialog").length ? !0 : !!d(a.target).closest(".ui-datepicker").length
            },
            _createOverlay: function() {
              if (this.options.modal) {
                var a = !0;
                this._delay(function() {
                  a = !1
                });
                this.document.data("ui-dialog-overlays") || this._on(this.document, {
                  focusin: function(b) {
                    a || this._allowInteraction(b) || (b.preventDefault(), this._trackingInstances()[0]._focusTabbable())
                  }
                });
                this.overlay = d("\x3cdiv\x3e").appendTo(this._appendTo());
                this._addClass(this.overlay, null, "ui-widget-overlay ui-front");
                this._on(this.overlay, {
                  mousedown: "_keepFocus"
                });
                this.document.data("ui-dialog-overlays", (this.document.data("ui-dialog-overlays") || 0) + 1)
              }
            },
            _destroyOverlay: function() {
              if (this.options.modal && this.overlay) {
                var a = this.document.data("ui-dialog-overlays") - 1;
                a ? this.document.data("ui-dialog-overlays", a) : (this._off(this.document, "focusin"), this.document.removeData("ui-dialog-overlays"));
                this.overlay.remove();
                this.overlay = null
              }
            }
          });
          !1 !== d.uiBackCompat && d.widget("ui.dialog", d.ui.dialog, {
            options: {
              dialogClass: ""
            },
            _createWrapper: function() {
              this._super();
              this.uiDialog.addClass(this.options.dialogClass)
            },
            _setOption: function(a, b) {
              "dialogClass" === a && this.uiDialog.removeClass(this.options.dialogClass).addClass(b);
              this._superApply(arguments)
            }
          })
        });
        /*021-appointment.js*/
        (function(c) {
          function y(a) {
            return a && B.test(a) ? a.replace(u, "\\$\x26") : a
          }

          function C(a, c) {
            for (var e = 0; e < a.length; ++e)
              if (c(a[e], e)) return !0;
            return !1
          }

          function q(a, c) {
            var e = a.match(D);
            return e ? e[1] + "." + c + "_dyn_" + e[2] + "_" + e[3] : a + "." + c
          }

          function p(a, k) {
            return c("\x3ca\x3e", {
              class: "ui-datepicker-picked-button ui-state-hover " + k,
              title: a
            })
          }

          function E(a) {
            var k = F.apply(this, arguments),
              e = XM_FORM_I18N.appointementNone,
              m = XM_FORM_I18N.appointementSelect || XM_FORM_I18N.requiredSelectDefault,
              h = XM_FORM_I18N.appointementText,
              l = XM_FORM_I18N.appointementDelete,
              d = XM_FORM_I18N.appointementEdit,
              f = XM_FORM_I18N.appointementClose,
              b = XM_FORM_I18N.appointementFree || "freie Plätze %1";
            a.open = void 0 === a.open ? a.settings.open ? a.settings.open : !1 : a.open;
            !1 === a.settings.closeAble && (a.open = !0);
            a.xfcFieldText && (a.xfcFieldText.prop("disabled") || a.xfcFieldText.prop("readonly")) && (a.open = !1);
            if (!a.input.hasClass("hasTimePicker")) return k;
            if (a && a.settings.getTimeSlots) {
              var g = new Date(a.currentYear, a.currentMonth, a.currentDay),
                v = c("\x3cdiv\x3e").addClass("ui-datepicker-time "),
                z = c("\x3cdiv\x3e").addClass("ui-datepicker-timeslots"),
                t = a.timeInput ? a.timeInput.val() : "",
                w = a.dateInput ? a.dateInput.val() : "",
                g = a.settings.getTimeSlots(g, a);
              a.dateFormerInput && a.dateFormerInput.val() == a.input.val() && !C(g, function(b) {
                return b.value == a.timeFormerInput.val() && b.id == a.timestampFormerInput.val()
              }) && (g.push({
                id: a.timestampFormerInput.val(),
                upper: a.timeEndFormerInput ? a.timeEndFormerInput.val() : "",
                value: a.timeFormerInput.val()
              }), g.sort(function(b, g) {
                b = parseInt(b.id);
                g = parseInt(g.id);
                return b < g ? -1 : b > g ? 1 : 0
              }));
              0 == g.length && v.append(c("\x3cb\x3e", {
                html: e.replace("%1", a.input.val())
              }));
              e = 0 == g.length ? "" : m;
              if ("" != w && "" != t) {
                var e = h.replace("%1", w).replace("%2", t),
                  h = a.input.datepicker("getDate"),
                  A = t.split(":");
                h.setHours(A[0]);
                h.setMinutes(A[1]);
                a.xfcFieldText && a.xfcFieldText.val(e).trigger("change")
              } else e = 0 == g.length ? e : a.input.val(), a.xfcField && a.xfcField.val(""), a.xfcFieldText && a.xfcFieldText.val("").trigger("change");
              h = c("\x3cspan\x3e", {
                html: e
              });
              v.append(h);
              a.settings.showDelete && "" != w && "" != t && p(l, "ui-datepicker-delete ico-appointment-trash-alt").appendTo(h);
              l = c("\x3cdiv\x3e", {
                "class": "ui-datepicker-picked"
              });
              m = c("\x3cinput\x3e").attr({
                autocomplete: "off",
                readonly: "readonly",
                "class": "ui-datepicker-picked-text",
                placeholder: m,
                value: e
              });
              z.appendTo(v);
              for (e = 0; e < g.length; e++) h = 1 == a.settings.showUntil && "string" === typeof g[e].upper ? g[e].value + " - " + g[e].upper : g[e].value, h = c("\x3ca\x3e").text(h).appendTo(z).attr("data-time-slot", g[e].value).attr(
                  "data-timestamp", g[e].id).addClass("slot ui-state-default"),
                a.settings.showCapacity && c("\x3cspan\x3e").text(b.replace("%1", g[e].capacity || 0)).appendTo(h).addClass("slot-capacity"), a.input.val() == w && t == g[e].value && a.xfcField.val() == g[e].id && (h.removeClass(
                  "ui-state-default"), h.addClass("ui-state-active"));
              l.append(m);
              a.open || p(d, "ui-datepicker-edit ico-appointment-date").appendTo(l);
              k = c("\x3cdiv /\x3e").html(k).append(v);
              d = c(".ui-datepicker-header", k);
              a.open && a.settings.closeAble && d.prepend(p(f, "ui-datepicker-close ico-appointment-window-close"));
              a.open ? (a.input.addClass("ui-state-open"), a.input.removeClass("ui-state-close")) : (a.input.addClass("ui-state-close"), a.input.removeClass("ui-state-open"));
              a.open || (k = c("\x3cdiv /\x3e").append(l));
              k = k.html()
            }
            return k
          }
          c(document).ready(function() {
            c(".xm-form").on("focus", "Input.XAppointment ", function(a) {
              c(this).parent().get(0).focus()
            })
          });
          var G = /\d\d:\d\d/,
            u = /[\\^$.*+?()[\]{}|]/g,
            B = RegExp(u.source);
          if (c.datepicker) {
            var D = /(.*)_dyn_(.*)_(\d+)$/,
              r = "function" === typeof Object.getPrototypeOf ? Object.getPrototypeOf(c.datepicker) : c.datepicker.__proto__,
              F = r._generateHTML;
            r._xmAppointmentPickerAdded || (r._generateHTML = E, r._xmAppointmentPickerAdded = !0);
            c.fn._xmAppointmentPicker = function(a) {
              function k(a, c) {
                a = c.availableDates && c.availableDates.hasOwnProperty(a) ? c.availableDates[a].times : [];
                c = [];
                for (var d = 0; d < a.length; d++) c.push({
                  value: a[d].startTime,
                  id: a[d].id,
                  upper: a[d].endTime,
                  capacity: a[d].capacity
                });
                return c
              }

              function e(a, c, f) {
                f.availableDates = f.settings.getAvailableDates ? f.settings.getAvailableDates(a, c, f) : void 0
              }

              function m(a, d, f) {
                var b = window.XFC_METADATA ? XFC_METADATA.urls.appointment_freeslots : designer.config.urls.appointmentFreeSlots,
                  g = f.input.data("xm-appointment");
                if ("" == g) return f.availableDates;
                c.ajax({
                  dataType: "json",
                  url: b,
                  data: {
                    year: a,
                    month: d,
                    appointmentTemplateUuid: g,
                    frid: window.XFC_METADATA ? XFC_METADATA.currentSessionFRID : void 0,
                    fd2frid: window.designer ? designer.config.fd2frid : void 0
                  },
                  xhrFields: {
                    withCredentials: !0
                  },
                  success: function(b) {
                    eventDates = f.availableDates || {};
                    if (b.success) {
                      for (var g = b.appointments.availableDates, c = 0; c < g.length; c++) {
                        var e = g[c],
                          l = new Date(Date.parse(e.date + "T00:00:00"));
                        l.setHours(0);
                        l.setMinutes(0);
                        l.setSeconds(0);
                        e.dateObj = l;
                        eventDates[l] = e
                      }
                      f.typeInput.val(b.appointments.appointmentTypeUuid)
                    } else console.error("Could not load available free slots", b);
                    f.dateFormerRaw && (b = new Date(Date.parse(f.dateFormerRaw + "T00:00:00")), l.setHours(0), l.setMinutes(0), l.setSeconds(0), b.getMonth() + 1 == d && b.getFullYear() == a && (eventDates[b] = eventDates[b] || {
                      date: f.dateFormerRaw,
                      dateObj: b,
                      times: []
                    }));
                    f.setAvailableDates(eventDates)
                  }
                });
                return f.availableDates
              }

              function h(a) {
                var d = c.datepicker._getInst(this),
                  e = !1;
                d.availableDates || (e = !0);
                e = e || !d.availableDates.hasOwnProperty(a);
                if (d.settings.disabledSundays && 0 == a.getDay() || d.settings.disabledMondays && 1 == a.getDay() || d.settings.disabledTuesdays && 2 == a.getDay() || d.settings.disabledWednesdays && 3 == a.getDay() || d.settings
                  .disabledThuterdays && 4 == a.getDay() || d.settings.disabledFridays && 5 == a.getDay() || d.settings.disabledSaturdays && 6 == a.getDay()) e = !0;
                return !e || d.formerDate && d.formerDate.getTime() == a.getTime() ? [!0, "enabled-event", ""] : [!1, "disabled-event", ""]
              }(new Date).getFullYear();
              (new Date).getMonth();
              (new Date).getDate();
              this.each(function(a, d) {
                var f = c.extend({}, {
                  onChangeMonthYear: e,
                  beforeShowDay: h,
                  getTimeSlots: k,
                  getAvailableDates: m,
                  changeMonth: !1,
                  changeYear: !1,
                  dateFormat: "dd.mm.yy",
                  showDelete: !0,
                  open: !1,
                  closeAble: !1,
                  showUntil: !1,
                  showCapacity: !1
                }, f);
                f.dateFormat = c(d).attr("data-xm-format") || f.dateFormat;
                f.closeAble = "1" == c(d).attr("data-xm-closeable") || f.closeAble;
                f.showUntil = "1" == c(d).attr("data-xm-showuntil") || f.showUntil;
                f.showCapacity = "1" == c(d).attr("data-xm-showcapacity") || f.showCapacity;
                c(d).datepicker(f);
                var b = c.datepicker._getInst(d);
                c(d).on("click", ".ui-datepicker-close, .ui-datepicker-edit, .ui-datepicker-picked", {
                  el: d
                }, function(b) {
                  var a = c.datepicker._getInst(b.data.el);
                  a.open = !a.open;
                  "" != a.dateInput.val() && a.input.datepicker("setDate", a.dateInput.val());
                  a.input.datepicker("refresh");
                  b.stopPropagation()
                });
                c(d).on("focus", ".ui-datepicker-picked-text", {
                  el: d
                }, function(b) {
                  var a = c.datepicker._getInst(b.data.el);
                  a.open || a.xfcFieldText.prop("disabled") || a.xfcFieldText.prop("readonly") || (a.open = !0, b.stopPropagation(), a.input.datepicker("refresh"))
                });
                c(d).on("click", ".ui-datepicker-delete", {
                  el: d
                }, function(a) {
                  a = c.datepicker._getInst(a.data.el);
                  a.dateInput.val("");
                  a.timeInput.val("");
                  a.input.datepicker("refresh");
                  a.slotIdInput.val("");
                  a.xfcFieldText.clear();
                  a.xfcFieldText.validate();
                  a.xfcField.clear();
                  a.xfcField.validate()
                });
                c(d).on("mousedown", ".enabled-event", {
                  el: d
                }, function(a) {
                  c(this).hasClass("ui-datepicker-current-day") || (a = c.datepicker._getInst(a.data.el), a.timeInput.val(""), a.dateInput.val(""), a.slotIdInput.val(""), a.xfcFieldText.val("").trigger("change"), a.xfcField.val(""))
                });
                c(d).on("click", ".slot", {
                  el: d
                }, function(a) {
                  a = c.datepicker._getInst(a.data.el);
                  a.xfcFieldText.prop("disabled") || a.xfcFieldText.prop("readonly") ? a.input.datepicker("refresh") : (a.slotIdInput.val(c(this).attr("data-timestamp")), a.timeInput.val(c(this).attr("data-time-slot")), a.dateInput
                    .val(a.input.val()), a.open = !1, a.input.datepicker("refresh"), a.xfcFieldText.validate())
                });
                b.xfcFieldText = c(".XAppointment", b.input);
                b.slotIdInput = c(d).find(".XAppointmentSlotId");
                b.typeInput = c(d).find(".XAppointmentTypeUUID");
                b.appointmentInput = c(d).find(".XAppointmentUUID");
                b.dateFormerInput = c(d).find(".XAppointmentFormerDate");
                b.timeFormerInput = c(d).find(".XAppointmentFormerTime");
                b.timeEndFormerInput = c(d).find(".XAppointmentFormerTimeEnd");
                b.appointmentInput = 0 < b.appointmentInput.length ? b.appointmentInput : c("\x3cinput\x3e").attr({
                  tabindex: "-1",
                  autocomplete: "off",
                  type: "hidden",
                  class: "XAppointmentUUID",
                  name: q(b.xfcFieldText.attr("name"), "appointmentuuid")
                }).appendTo(b.input);
                b.typeInput = 0 < b.typeInput.length ? b.typeInput : c("\x3cinput\x3e").attr({
                  tabindex: "-1",
                  autocomplete: "off",
                  type: "hidden",
                  class: "XAppointmentTypeUUID",
                  name: q(b.xfcFieldText.attr("name"), "typeuuid")
                }).appendTo(b.input);
                b.slotIdInput = 0 < b.slotIdInput.length ? b.slotIdInput : c("\x3cinput\x3e").attr({
                  tabindex: "-1",
                  autocomplete: "off",
                  type: "hidden",
                  class: "XAppointmentSlotId",
                  name: q(b.xfcFieldText.attr("name"), "slotid")
                }).appendTo(b.input);
                b.xfcField = b.slotIdInput;
                b.dateFormerInput = 0 < b.dateFormerInput.length ? b.dateFormerInput : c("\x3cinput\x3e").attr({
                  tabindex: "-1",
                  autocomplete: "off",
                  type: "hidden",
                  name: b.xfcFieldText.attr("name") + "_former_date",
                  id: b.input.attr("id") + "_former_date",
                  class: "XAppointmentFormerDate"
                }).appendTo(b.input);
                b.dateFormerInput.val() && (b.dateFormerRaw = b.dateFormerInput.val(), a = b.dateFormerInput.val().split("-"), 3 === a.length && (a = new Date(parseInt(a[0]) || 0, parseInt(a[1]) - 1 || 0, parseInt(a[2]) || 1), b
                  .dateFormerInput.val(c.datepicker.formatDate(b.settings.dateFormat || "dd.mm.yy", a))));
                b.timeFormerInput = 0 < b.timeFormerInput.length ? b.timeFormerInput : c("\x3cinput\x3e").attr({
                  tabindex: "-1",
                  autocomplete: "off",
                  type: "hidden",
                  name: b.xfcFieldText.attr("name") + "_former_time",
                  id: b.input.attr("id") + "_former_time",
                  class: "XAppointmentFormerTime"
                }).appendTo(b.input);
                b.timeEndFormerInput = 0 < b.timeEndFormerInput.length ? b.timeEndFormerInput : c("\x3cinput\x3e").attr({
                  tabindex: "-1",
                  autocomplete: "off",
                  type: "hidden",
                  name: b.xfcFieldText.attr("name") + "_former_time_end",
                  id: b.input.attr("id") + "_former_time_end",
                  class: "XAppointmentFormerTimeEnd"
                }).appendTo(b.input);
                b.timestampFormerInput = c("\x3cinput\x3e").attr({
                  tabindex: "-1",
                  autocomplete: "off",
                  type: "hidden",
                  name: b.xfcFieldText.attr("name") + "_former_timestamp",
                  id: b.input.attr("id") + "_former_timestamp",
                  value: b.xfcField.val()
                }).appendTo(b.input);
                b.dateInput = c("\x3cinput\x3e").attr({
                  tabindex: "-1",
                  autocomplete: "off",
                  type: "hidden",
                  name: b.xfcFieldText.attr("name") + "_date",
                  id: b.input.attr("id") + "_date",
                  value: b.dateFormerInput.val()
                }).appendTo(b.input);
                b.timeInput = c("\x3cinput\x3e").attr({
                  tabindex: "-1",
                  autocomplete: "off",
                  type: "hidden",
                  name: b.xfcFieldText.attr("name") + "_time",
                  id: b.input.attr("id") + "_time",
                  value: b.timeFormerInput.val()
                }).appendTo(b.input);
                b.xfcFieldText.on("xm-disabled", function() {
                  b.open = !0;
                  b.input.datepicker("refresh")
                });
                b.xfcFieldText.on("xm-readonly", function() {
                  b.open = !0;
                  b.input.datepicker("refresh")
                });
                b.xfcFieldText.on("xm-clear", function() {
                  b.dateInput.val("");
                  b.timeInput.val("");
                  b.input.datepicker("refresh")
                });
                b.xfcField.on("change", function() {
                  b.input.datepicker("refresh")
                });
                b.setAvailableDates = function(a) {
                  b.availableDates = a;
                  b.input.datepicker("refresh")
                };
                "" != b.dateInput.val() && b.input.datepicker("setDate", b.dateInput.val());
                a = c(d).datepicker("getDate") || new Date;
                d = a.getMonth();
                a = a.getFullYear();
                b.currentMonth && b.currentYear && (d = b.currentMonth, a = b.currentYear);
                b.availableDates = b.settings.getAvailableDates ? b.settings.getAvailableDates(a, d + 1, b) : void 0;
                b.xfcFieldText.errorFunc(function() {
                  var a,
                    b, d = c(this).closest(".hasDatepicker"),
                    e = String(this.val() || "").trim();
                  a = d.find(".XAppointmentSlotId");
                  var f = d.find(".ui-datepicker-picked-text");
                  if (0 < a.length && (b = 0 < e.length, a = 0 < String(a.val() || "").trim().length, b && !a || !b && a) || 0 < f.length && String(f.val() || "").trim() !== e) return XM_FORM_I18N.appointmentInvalidFormat;
                  if (!e || !XM_FORM_I18N.appointementText) return "";
                  f = e;
                  if (f = void 0 != f ? String(f) : "") {
                    a = XM_FORM_I18N.appointementText;
                    var h = /%(\d+)/g,
                      l, k = 0;
                    b = {};
                    var n = [],
                      m = 1;
                    for (n.push("^\\s*"); l = h.exec(a);) {
                      var r = parseInt(l[1]),
                        q = l.index;
                      l = h.lastIndex;
                      b[m] = r;
                      m += 1;
                      k < q && (k = a.substring(k, q), n.push(y(k)));
                      n.push("(.+)");
                      k = l
                    }
                    k < a.length && (k = a.substring(k), n.push(y(k)));
                    n.push("\\s*$");
                    a = new RegExp(n.join(""));
                    if (f = a.exec(f)) {
                      a = {};
                      for (h = 1; h < f.length; ++h) n = b[h], "number" === typeof n && (a[n] = f[h]);
                      f = a
                    } else f = []
                  } else f = [];
                  var p;
                  b = f[1];
                  try {
                    var u = c(d).datepicker("option", "dateFormat");
                    p = c.datepicker.parseDate(u, String(b).trim()) instanceof Date
                  } catch (H) {
                    p = !1
                  }
                  var x;
                  try {
                    x = G.test(String(f[2]).trim())
                  } catch (H) {
                    x = !1
                  }
                  return p && x ? "" : (XM_FORM_I18N.appointmentInvalidFormat || "Invalid date / time format") + ": " + e
                })
              });
              this.datepicker("refresh");
              return this
            }
          } else c.fn._xmAppointmentPicker = c.noop
        })(jQuery);
        /*021-autoNumeric.js*/
        /*

         autoNumeric.js
         @author: Bob Knothe
         @author: Sokolov Yura
         @version: 1.9.26 - 2014-10-07 GMT 2:00 PM

         Created by Robert J. Knothe on 2010-10-25. Please report any bugs to https://github.com/BobKnothe/autoNumeric
         Created by Sokolov Yura on 2010-11-07

         Copyright (c) 2011 Robert J. Knothe http://www.decorplanit.com/plugin/

         The MIT License (http://www.opensource.org/licenses/mit-license.php)

         Permission is hereby granted, free of charge, to any person
         obtaining a copy of this software and associated documentation
         files (the "Software"), to deal in the Software without
         restriction, including without limitation the rights to use,
         copy, modify, merge, publish, distribute, sublicense, and/or sell
         copies of the Software, and to permit persons to whom the
         Software is furnished to do so, subject to the following
         conditions:

         The above copyright notice and this permission notice shall be
         included in all copies or substantial portions of the Software.

         THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
         EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
         OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
         NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
         HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
         WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
         FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
         OTHER DEALINGS IN THE SOFTWARE.
        */
        (function(f) {
          function n(a, b, c) {
            void 0 === a.selectionStart ? (a.focus(), a = a.createTextRange(), a.collapse(!0), a.moveEnd("character", c), a.moveStart("character", b), a.select()) : (a.selectionStart = b, a.selectionEnd = c)
          }

          function F(a, b) {
            f.each(b, function(c, d) {
              "function" === typeof d ? b[c] = d(a, b, c) : "function" === typeof a.autoNumeric[d] && (b[c] = a.autoNumeric[d](a, b, c))
            })
          }

          function q(a, b) {
            "string" === typeof a[b] && (a[b] *= 1)
          }

          function z(a, b) {
            F(a, b);
            b.oEvent = null;
            b.tagList = "b caption cite code dd del div dfn dt em h1 h2 h3 h4 h5 h6 ins kdb label li output p q s sample span strong td th u var".split(" ");
            a = b.vMax.toString().split(".");
            var c = b.vMin || 0 === b.vMin ? b.vMin.toString().split(".") : [];
            q(b, "vMax");
            q(b, "vMin");
            q(b, "mDec");
            b.mDec = "CHF" === b.mRound ? "2" : b.mDec;
            b.allowLeading = !0;
            b.aNeg = 0 > b.vMin ? "-" : "";
            a[0] = a[0].replace("-", "");
            c[0] = c[0].replace("-", "");
            b.mInt = Math.max(a[0].length, c[0].length, 1);
            if (null === b.mDec) {
              var d = 0,
                e = 0;
              a[1] && (d = a[1].length);
              c[1] && (e = c[1].length);
              b.mDec = Math.max(d, e)
            }
            null === b.altDec && 0 < b.mDec && ("." === b.aDec && "," !== b.aSep ? b.altDec = "," : "," === b.aDec && "." !== b.aSep && (b.altDec = "."));
            a = b.aNeg ? "([-\\" + b.aNeg + "]?)" : "(-?)";
            b.aNegRegAutoStrip = a;
            b.skipFirstAutoStrip = new RegExp(a + "[^-" + (b.aNeg ? "\\" + b.aNeg : "") + "\\" + b.aDec + "\\d].*?(\\d|\\" + b.aDec + "\\d)");
            b.skipLastAutoStrip = new RegExp("(\\d\\" + b.aDec + "?)[^\\" + b.aDec + "\\d]\\D*$");
            b.allowedAutoStrip = new RegExp("[^" + ("-" + b.aNum + "\\" + b.aDec) + "]", "gi");
            b.numRegAutoStrip = new RegExp(a + "(?:\\" + b.aDec + "?(\\d+\\" + b.aDec + "\\d+)|(\\d*(?:\\" + b.aDec + "\\d*)?))");
            return b
          }

          function k(a, b, c) {
            if (b.aSign)
              for (; - 1 < a.indexOf(b.aSign);) a = a.replace(b.aSign, "");
            a = a.replace(b.skipFirstAutoStrip, "$1$2");
            a = a.replace(b.skipLastAutoStrip, "$1");
            a = a.replace(b.allowedAutoStrip, "");
            b.altDec && (a = a.replace(b.altDec, b.aDec));
            a = (a = a.match(b.numRegAutoStrip)) ? [a[1], a[2], a[3]].join("") : "";
            if (("allow" === b.lZero || "keep" === b.lZero) && "strip" !== c) {
              var d = "";
              a = a.split(b.aDec); - 1 !== a[0].indexOf("-") && (d = "-", a[0] = a[0].replace("-", ""));
              a[0].length > b.mInt && "0" === a[0].charAt(0) && (a[0] = a[0].slice(1));
              a = d + a.join(b.aDec)
            }
            if (c && "deny" === b.lZero || c && "allow" === b.lZero && !1 === b.allowLeading) b = "^" + b.aNegRegAutoStrip + "0*(\\d" + ("leading" === c ? ")" : "|$)"), b = new RegExp(b), a = a.replace(b, "$1$2");
            return a
          }

          function p(a, b, c) {
            b = b.split(",");
            "set" === c || "focusout" === c ? (a = a.replace("-", ""), a = b[0] + a + b[1]) : "get" !== c && "focusin" !== c && "pageLoad" !== c || a.charAt(0) !== b[0] || (a = a.replace(b[0], "-"), a = a.replace(b[1], ""));
            return a
          }

          function A(a, b, c) {
            if (b && c) {
              var d = a.split(b);
              d[1] && d[1].length > c && (0 < c ? (d[1] = d[1].substring(0, c), a = d.join(b)) : a = d[0])
            }
            return a
          }

          function u(a, b, c) {
            b && "." !== b && (a = a.replace(b, "."));
            c && "-" !== c && (a = a.replace(c, "-"));
            a.match(/\d/) || (a += "0");
            return a
          }

          function B(a, b) {
            if (a) {
              var c = +a;
              1E-6 > c && -1 < c ? (a = +a, 1E-6 > a && 0 < a && (a = (a + 10).toString(), a = a.substring(1)), 0 > a && -1 < a && (a = (a - 10).toString(), a = "-" + a.substring(2)), a = a.toString()) : (c = a.split("."), void 0 !== c[1] && (
                0 === +c[1] ? a = c[0] : (c[1] = c[1].replace(/0*$/, ""), a = c.join("."))))
            }
            return "keep" === b.lZero ? a : a.replace(/^0*(\d)/, "$1")
          }

          function C(a, b, c) {
            c && "-" !== c && (a = a.replace("-", c));
            b && "." !== b && (a = a.replace(".", b));
            return a
          }

          function v(a, b) {
            a = k(a, b);
            a = A(a, b.aDec, b.mDec);
            a = u(a, b.aDec, b.aNeg);
            a = +a;
            "set" === b.oEvent && (a < b.vMin || a > b.vMax) && f.error("The value (" + a + ") from the 'set' method falls outside of the vMin / vMax range");
            return a >= b.vMin && a <= b.vMax
          }

          function r(a, b, c) {
            return "" === a || a === b.aNeg ? "zero" === b.wEmpty ? a + "0" : "sign" === b.wEmpty || c ? a + b.aSign : a : null
          }

          function w(a, b) {
            a = k(a, b);
            var c = a.replace(",", "."),
              d = r(a, b, !0);
            if (null !== d) return d;
            var d = 2 === b.dGroup ? /(\d)((\d)(\d{2}?)+)$/ : 4 === b.dGroup ? /(\d)((\d{4}?)+)$/ : /(\d)((\d{3}?)+)$/,
              e = a.split(b.aDec);
            b.altDec && 1 === e.length && (e = a.split(b.altDec));
            a = e[0];
            if (b.aSep)
              for (; d.test(a);) a = a.replace(d, "$1" + b.aSep + "$2");
            0 !== b.mDec && 1 < e.length && (e[1].length > b.mDec && (e[1] = e[1].substring(0, b.mDec)), a = a + b.aDec + e[1]);
            b.aSign && (d = -1 !== a.indexOf(b.aNeg), a = a.replace(b.aNeg, ""), a = "p" === b.pSign ? b.aSign + a : a + b.aSign, d && (a = b.aNeg + a));
            "set" === b.oEvent && 0 > c && null !== b.nBracket && (a = p(a, b.nBracket, b.oEvent));
            return a
          }

          function x(a, b) {
            a = "" === a ? "0" : a.toString();
            q(b, "mDec");
            "CHF" === b.mRound && (a = (Math.round(20 * a) / 20).toString());
            var c = "",
              d = 0,
              e = "",
              g = "boolean" === typeof b.aPad || null === b.aPad ? b.aPad ? b.mDec : 0 : +b.aPad,
              D = function(b) {
                b = b.replace(0 === g ? /(\.(?:\d*[1-9])?)0*$/ : 1 === g ? /(\.\d(?:\d*[1-9])?)0*$/ : new RegExp("(\\.\\d{" + g + "}(?:\\d*[1-9])?)0*$"), "$1");
                0 === g && (b = b.replace(/\.$/, ""));
                return b
              };
            "-" === a.charAt(0) && (e = "-", a = a.replace("-", ""));
            a.match(/^\d/) || (a = "0" + a);
            "-" === e && 0 === +a && (e = "");
            if (0 < +a && "keep" !== b.lZero || 0 < a.length && "allow" === b.lZero) a = a.replace(/^0*(\d)/, "$1");
            var f = a.lastIndexOf("."),
              h = a.length - 1 - (-1 === f ? a.length - 1 : f);
            if (h <= b.mDec) {
              c = a;
              if (h < g)
                for (-1 === f && (c += "."), d = "000000"; h < g;) d = d.substring(0, g - h), c += d, h += d.length;
              else h > g ? c = D(c) : 0 === h && 0 === g && (c = c.replace(/\.$/, ""));
              if ("CHF" !== b.mRound) return 0 === +c ? c : e + c;
              "CHF" === b.mRound && (f = c.lastIndexOf("."), a = c)
            }
            var c = f + b.mDec,
              d = +a.charAt(c + 1),
              f = a.substring(0, c + 1).split(""),
              t = "." === a.charAt(c) ? a.charAt(c - 1) % 2 : a.charAt(c) % 2,
              h = !0;
            1 !== t && (t = 0 === t && 0 < a.substring(c + 2, a.length) ? 1 : 0);
            if (4 < d && "S" === b.mRound || 4 < d && "A" === b.mRound && "" === e || 5 < d && "A" === b.mRound && "-" === e || 5 < d && "s" === b.mRound || 5 < d && "a" === b.mRound && "" === e || 4 < d && "a" === b.mRound && "-" === e || 5 <
              d && "B" === b.mRound || 5 === d && "B" === b.mRound && 1 === t || 0 < d && "C" === b.mRound && "" === e || 0 < d && "F" === b.mRound && "-" === e || 0 < d && "U" === b.mRound || "CHF" === b.mRound)
              for (d = f.length - 1; 0 <= d; --d)
                if ("." !== f[d]) {
                  if ("CHF" === b.mRound && 2 >= f[d] && h) {
                    f[d] = 0;
                    h = !1;
                    break
                  }
                  if ("CHF" === b.mRound && 7 >= f[d] && h) {
                    f[d] = 5;
                    h = !1;
                    break
                  }
                  "CHF" === b.mRound && h ? (f[d] = 10, h = !1) : f[d] = +f[d] + 1;
                  if (10 > f[d]) break;
                  0 < d && (f[d] = "0")
                } f = f.slice(0, c + 1);
            c = D(f.join(""));
            return 0 === +c ? c : e + c
          }

          function E(a, b) {
            this.settings = b;
            this.that = a;
            this.$that = f(a);
            this.formatted = !1;
            this.settingsClone = z(this.$that, this.settings);
            this.value = a.value
          }

          function m(a) {
            "string" === typeof a && (a = a.replace(/\[/g, "\\[").replace(/\]/g, "\\]"), a = "#" + a.replace(/(:|\.)/g, "\\$1"));
            return f(a)
          }

          function l(a, b, c) {
            var d = a.data("autoNumeric");
            d || (d = {}, a.data("autoNumeric", d));
            var e = d.holder;
            if (void 0 === e && b || c) e = new E(a.get(0), b), d.holder = e;
            return e
          }
          E.prototype = {
            init: function(a) {
              this.value = this.that.value;
              this.settingsClone = z(this.$that, this.settings);
              this.ctrlKey = a.ctrlKey;
              this.cmdKey = a.metaKey;
              this.shiftKey = a.shiftKey;
              var b = this.that,
                c = {};
              if (void 0 === b.selectionStart) {
                b.focus();
                var d = document.selection.createRange();
                c.length = d.text.length;
                d.moveStart("character", -b.value.length);
                c.end = d.text.length;
                c.start = c.end - c.length
              } else c.start = b.selectionStart, c.end = b.selectionEnd, c.length = c.end - c.start;
              this.selection = c;
              if ("keydown" === a.type || "keyup" === a.type) this.kdCode = a.keyCode;
              this.which = a.which;
              this.formatted = this.processed = !1
            },
            setSelection: function(a, b, c) {
              a = Math.max(a, 0);
              b = Math.min(b, this.that.value.length);
              this.selection = {
                start: a,
                end: b,
                length: b - a
              };
              (void 0 === c || c) && n(this.that, a, b)
            },
            setPosition: function(a, b) {
              this.setSelection(a, a, b)
            },
            getBeforeAfter: function() {
              var a = this.value,
                b = a.substring(0, this.selection.start),
                a = a.substring(this.selection.end, a.length);
              return [b, a]
            },
            getBeforeAfterStriped: function() {
              var a = this.getBeforeAfter();
              a[0] = k(a[0], this.settingsClone);
              a[1] = k(a[1], this.settingsClone);
              return a
            },
            normalizeParts: function(a, b) {
              var c = this.settingsClone;
              b = k(b, c);
              var d = b.match(/^\d/) ? !0 : "leading";
              a = k(a, c, d);
              "" !== a && a !== c.aNeg || "deny" !== c.lZero || "" < b && (b = b.replace(/^0*(\d)/, "$1"));
              d = a + b;
              if (c.aDec) {
                var e = d.match(new RegExp("^" + c.aNegRegAutoStrip + "\\" + c.aDec));
                e && (a = a.replace(e[1], e[1] + "0"), d = a + b)
              }
              "zero" !== c.wEmpty || d !== c.aNeg && "" !== d || (a += "0");
              return [a, b]
            },
            setValueParts: function(a, b) {
              var c = this.settingsClone;
              b = this.normalizeParts(a, b);
              a = b.join("");
              b = b[0].length;
              return v(a, c) ? (a = A(a, c.aDec, c.mDec), b > a.length && (b = a.length), this.value = a, this.setPosition(b, !1), !0) : !1
            },
            signPosition: function() {
              var a = this.settingsClone,
                b = a.aSign,
                c = this.that;
              if (b) {
                b = b.length;
                if ("p" === a.pSign) return a.aNeg && c.value && c.value.charAt(0) === a.aNeg ? [1, b + 1] : [0, b];
                a = c.value.length;
                return [a - b, a]
              }
              return [1E3, -1]
            },
            expandSelectionOnSign: function(a) {
              var b = this.signPosition(),
                c = this.selection;
              c.start < b[1] && c.end > b[0] && ((c.start < b[0] || c.end > b[1]) && this.value.substring(Math.max(c.start, b[0]), Math.min(c.end, b[1])).match(/^\s*$/) ? c.start < b[0] ? this.setSelection(c.start, b[0], a) : this
                .setSelection(b[1], c.end, a) : this.setSelection(Math.min(c.start, b[0]), Math.max(c.end, b[1]), a))
            },
            checkPaste: function() {
              if (void 0 !== this.valuePartsBeforePaste) {
                var a = this.getBeforeAfter(),
                  b = this.valuePartsBeforePaste;
                delete this.valuePartsBeforePaste;
                a[0] = a[0].substr(0, b[0].length) + k(a[0].substr(b[0].length), this.settingsClone);
                this.setValueParts(a[0], a[1]) || (this.value = b.join(""), this.setPosition(b[0].length, !1))
              }
            },
            skipAllways: function(a) {
              var b = this.kdCode,
                c = this.which,
                d = this.ctrlKey,
                e = this.cmdKey,
                f = this.shiftKey;
              if ((d || e) && "keyup" === a.type && void 0 !== this.valuePartsBeforePaste || f && 45 === b) return this.checkPaste(), !1;
              if (112 <= b && 123 >= b || 91 <= b && 93 >= b || 9 <= b && 31 >= b || 8 > b && (0 === c || c === b) || 144 === b || 145 === b || 45 === b) return !0;
              if ((d || e) && 65 === b) return !0;
              if ((d || e) && (67 === b || 86 === b || 88 === b)) {
                "keydown" === a.type && this.expandSelectionOnSign();
                if (86 === b || 45 === b) "keydown" === a.type || "keypress" === a.type ? void 0 === this.valuePartsBeforePaste && (this.valuePartsBeforePaste = this.getBeforeAfter()) : this.checkPaste();
                return "keydown" === a.type || "keypress" === a.type || 67 === b
              }
              return d || e ? !0 : 37 === b || 39 === b ? (c = this.settingsClone.aSep, d = this.selection.start, e = this.that.value, "keydown" === a.type && c && !this.shiftKey && (37 === b && e.charAt(d - 2) === c ? this.setPosition(d -
                1) : 39 === b && e.charAt(d + 1) === c && this.setPosition(d + 1)), !0) : 34 <= b && 40 >= b ? !0 : !1
            },
            processAllways: function() {
              var a;
              return 8 === this.kdCode || 46 === this.kdCode ? (this.selection.length ? (this.expandSelectionOnSign(!1), a = this.getBeforeAfterStriped()) : (a = this.getBeforeAfterStriped(), 8 === this.kdCode ? a[0] = a[0].substring(0, a[
                0].length - 1) : a[1] = a[1].substring(1, a[1].length)), this.setValueParts(a[0], a[1]), !0) : !1
            },
            processKeypress: function() {
              var a = this.settingsClone,
                b = String.fromCharCode(this.which),
                c = this.getBeforeAfterStriped(),
                d = c[0],
                c = c[1];
              if (b === a.aDec || a.altDec && b === a.altDec || ("." === b || "," === b) && 110 === this.kdCode) {
                if (!a.mDec || !a.aDec || a.aNeg && -1 < c.indexOf(a.aNeg) || -1 < d.indexOf(a.aDec) || 0 < c.indexOf(a.aDec)) return !0;
                0 === c.indexOf(a.aDec) && (c = c.substr(1));
                this.setValueParts(d + a.aDec, c);
                return !0
              }
              if ("-" === b || "+" === b) {
                if (!a.aNeg) return !0;
                "" === d && -1 < c.indexOf(a.aNeg) && (d = a.aNeg, c = c.substring(1, c.length));
                d = d.charAt(0) === a.aNeg ? d.substring(1, d.length) : "-" === b ? a.aNeg + d : d;
                this.setValueParts(d, c);
                return !0
              }
              "0" <= b && "9" >= b && (a.aNeg && "" === d && -1 < c.indexOf(a.aNeg) && (d = a.aNeg, c = c.substring(1, c.length)), 0 >= a.vMax && a.vMin < a.vMax && -1 === this.value.indexOf(a.aNeg) && "0" !== b && (d = a.aNeg + d), this
                .setValueParts(d + b, c));
              return !0
            },
            formatQuick: function() {
              var a = this.settingsClone,
                b = this.getBeforeAfterStriped(),
                c = this.value;
              if (("" === a.aSep || "" !== a.aSep && -1 === c.indexOf(a.aSep)) && ("" === a.aSign || "" !== a.aSign && -1 === c.indexOf(a.aSign))) {
                var d = "",
                  c = c.split(a.aDec); - 1 < c[0].indexOf("-") && (d = "-", c[0] = c[0].replace("-", ""), b[0] = b[0].replace("-", ""));
                c[0].length > a.mInt && "0" === b[0].charAt(0) && (b[0] = b[0].slice(1));
                b[0] = d + b[0]
              }
              d = w(this.value, this.settingsClone);
              c = d.length;
              if (d) {
                var b = b[0].split(""),
                  e = 0;
                for (e; e < b.length; e += 1) b[e].match("\\d") || (b[e] = "\\" + b[e]);
                b = new RegExp("^.*?" + b.join(".*?"));
                (b = d.match(b)) ? (c = b[0].length, (0 === c && d.charAt(0) !== a.aNeg || 1 === c && d.charAt(0) === a.aNeg) && a.aSign && "p" === a.pSign && (c = this.settingsClone.aSign.length + ("-" === d.charAt(0) ? 1 : 0))) : a
                  .aSign && "s" === a.pSign && (c -= a.aSign.length)
              }
              this.that.value = d;
              this.setPosition(c);
              this.formatted = !0
            }
          };
          var y = {
            init: function(a) {
              return this.each(function() {
                var b = f(this),
                  c = b.data("autoNumeric"),
                  d = b.data();
                if ("object" !== typeof c) {
                  c = f.extend({}, {
                    aNum: "0123456789",
                    aSep: ",",
                    dGroup: "3",
                    aDec: ".",
                    altDec: null,
                    aSign: "",
                    pSign: "p",
                    vMax: "9999999999999.99",
                    vMin: "0.00",
                    mDec: null,
                    mRound: "S",
                    aPad: !0,
                    nBracket: null,
                    wEmpty: "empty",
                    lZero: "allow",
                    aForm: !0,
                    onSomeEvent: function() {}
                  }, d, a);
                  if (c.aDec === c.aSep) return f.error("autoNumeric will not function properly when the decimal character aDec: '" + c.aDec + "' and thousand separator aSep: '" + c.aSep + "' are the same character"), this;
                  b.data("autoNumeric", c)
                } else return this;
                c.runOnce = !1;
                var e = l(b, c);
                if (-1 === f.inArray(b.prop("tagName").toLowerCase(), c.tagList) && "input" !== b.prop("tagName").toLowerCase()) return f.error("The \x3c" + b.prop("tagName").toLowerCase() + "\x3e is not supported by autoNumeric()"),
                  this;
                !1 === c.runOnce && c.aForm && (b.is("input[type\x3dtext], input[type\x3dhidden], input[type\x3dtel], input:not([type])") && (d = !0, "" === b[0].value && "empty" === c.wEmpty && (b[0].value = "", d = !1), "" === b[0]
                  .value && "sign" === c.wEmpty && (b[0].value = c.aSign, d = !1), d && b.autoNumeric("set", b.val())), -1 !== f.inArray(b.prop("tagName").toLowerCase(), c.tagList) && "" !== b.text() && b.autoNumeric("set", b
                .text()));
                c.runOnce = !0;
                b.is("input[type\x3dtext], input[type\x3dhidden], input[type\x3dtel], input:not([type])") && (b.on("keydown.autoNumeric", function(a) {
                  e = l(b);
                  if (e.settings.aDec === e.settings.aSep) return f.error("autoNumeric will not function properly when the decimal character aDec: '" + e.settings.aDec + "' and thousand separator aSep: '" + e.settings.aSep +
                    "' are the same character"), this;
                  if (e.that.readOnly) return e.processed = !0;
                  e.init(a);
                  e.settings.oEvent = "keydown";
                  if (e.skipAllways(a)) return e.processed = !0;
                  if (e.processAllways()) return e.processed = !0, e.formatQuick(), a.preventDefault(), !1;
                  e.formatted = !1;
                  return !0
                }), b.on("keypress.autoNumeric", function(a) {
                  var c = l(b),
                    d = c.processed;
                  c.init(a);
                  c.settings.oEvent = "keypress";
                  if (c.skipAllways(a)) return !0;
                  if (d) return a.preventDefault(), !1;
                  if (c.processAllways() || c.processKeypress()) return c.formatQuick(), a.preventDefault(), !1;
                  c.formatted = !1
                }), b.on("keyup.autoNumeric", function(a) {
                  var c = l(b);
                  c.init(a);
                  c.settings.oEvent = "keyup";
                  a = c.skipAllways(a);
                  c.kdCode = 0;
                  delete c.valuePartsBeforePaste;
                  b[0].value === c.settings.aSign && ("s" === c.settings.pSign ? n(this, 0, 0) : n(this, c.settings.aSign.length, c.settings.aSign.length));
                  if (a || "" === this.value) return !0;
                  c.formatted || c.formatQuick()
                }), b.on("focusin.autoNumeric", function() {
                  var a = l(b);
                  a.settingsClone.oEvent = "focusin";
                  if (null !== a.settingsClone.nBracket) {
                    var c = b.val();
                    b.val(p(c, a.settingsClone.nBracket, a.settingsClone.oEvent))
                  }
                  a.inVal = b.val();
                  c = r(a.inVal, a.settingsClone, !0);
                  null !== c && (b.val(c), "s" === a.settings.pSign ? n(this, 0, 0) : n(this, a.settings.aSign.length, a.settings.aSign.length))
                }), b.on("focusout.autoNumeric", function() {
                  var a = l(b),
                    c = a.settingsClone,
                    d = b.val(),
                    e = d;
                  a.settingsClone.oEvent = "focusout";
                  var f = "";
                  "allow" === c.lZero && (c.allowLeading = !1, f = "leading");
                  "" !== d && (d = k(d, c, f), null === r(d, c) && v(d, c, b[0]) ? (d = u(d, c.aDec, c.aNeg), d = x(d, c), d = C(d, c.aDec, c.aNeg)) : d = "");
                  f = r(d, c, !1);
                  null === f && (f = w(d, c));
                  f !== e && b.val(f);
                  f !== a.inVal && (b.change(), delete a.inVal);
                  null !== c.nBracket && 0 > b.autoNumeric("get") && (a.settingsClone.oEvent = "focusout", b.val(p(b.val(), c.nBracket, c.oEvent)))
                }))
              })
            },
            destroy: function() {
              return f(this).each(function() {
                var a = f(this);
                a.off(".autoNumeric");
                a.removeData("autoNumeric")
              })
            },
            update: function(a) {
              return f(this).each(function() {
                var b = m(f(this)),
                  c = b.data("autoNumeric");
                if ("object" !== typeof c) return f.error("You must initialize autoNumeric('init', {options}) prior to calling the 'update' method"), this;
                var d = b.autoNumeric("get"),
                  c = f.extend(c, a);
                l(b, c, !0);
                if (c.aDec === c.aSep) return f.error("autoNumeric will not function properly when the decimal character aDec: '" + c.aDec + "' and thousand separator aSep: '" + c.aSep + "' are the same character"), this;
                b.data("autoNumeric", c);
                if ("" !== b.val() || "" !== b.text()) return b.autoNumeric("set", d)
              })
            },
            set: function(a) {
              if (null !== a) return f(this).each(function() {
                var b = m(f(this)),
                  c = b.data("autoNumeric"),
                  d = a.toString(),
                  e = a.toString();
                if ("object" !== typeof c) return f.error("You must initialize autoNumeric('init', {options}) prior to calling the 'set' method"), this;
                e !== b.attr("value") && "input" === b.prop("tagName").toLowerCase() && !1 === c.runOnce && (d = null !== c.nBracket ? p(b.val(), c.nBracket, "pageLoad") : d, d = k(d, c));
                e !== b.attr("value") && e !== b.text() || !1 !== c.runOnce || (d = d.replace(",", "."));
                if (!f.isNumeric(+d)) return "";
                d = B(d, c);
                c.oEvent = "set";
                d.toString();
                "" !== d && (d = x(d, c));
                d = C(d, c.aDec, c.aNeg);
                v(d, c) || (d = x("", c));
                d = w(d, c);
                if (b.is("input[type\x3dtext], input[type\x3dhidden], input[type\x3dtel], input:not([type])")) return b.val(d);
                if (-1 !== f.inArray(b.prop("tagName").toLowerCase(), c.tagList)) return b.text(d);
                f.error("The \x3c" + b.prop("tagName").toLowerCase() + "\x3e is not supported by autoNumeric()");
                return !1
              })
            },
            get: function() {
              var a = m(f(this)),
                b = a.data("autoNumeric");
              if ("object" !== typeof b) return f.error("You must initialize autoNumeric('init', {options}) prior to calling the 'get' method"), this;
              b.oEvent = "get";
              if (a.is("input[type\x3dtext], input[type\x3dhidden], input[type\x3dtel], input:not([type])")) a = a.eq(0).val();
              else if (-1 !== f.inArray(a.prop("tagName").toLowerCase(), b.tagList)) a = a.eq(0).text();
              else return f.error("The \x3c" + a.prop("tagName").toLowerCase() + "\x3e is not supported by autoNumeric()"), !1;
              if ("" === a && "empty" === b.wEmpty || a === b.aSign && ("sign" === b.wEmpty || "empty" === b.wEmpty)) return "";
              null !== b.nBracket && "" !== a && (a = p(a, b.nBracket, b.oEvent));
              if (b.runOnce || !1 === b.aForm) a = k(a, b);
              a = u(a, b.aDec, b.aNeg);
              0 === +a && "keep" !== b.lZero && (a = "0");
              return "keep" === b.lZero ? a : a = B(a, b)
            },
            getString: function() {
              var a = !1,
                b = m(f(this)),
                c = b.serialize(),
                d = c.split("\x26"),
                b = f("form").index(b),
                e = 0;
              for (e; e < d.length; e += 1) {
                var g = d[e].split("\x3d"),
                  k = f("form:eq(" + b + ') input[name\x3d"' + decodeURIComponent(g[0]) + '"]');
                "object" === typeof k.data("autoNumeric") && null !== g[1] && (g[1] = k.autoNumeric("get"), d[e] = g.join("\x3d"), a = !0)
              }
              return !0 === a ? d.join("\x26") : c
            },
            getArray: function() {
              var a = !1,
                b = m(f(this)),
                c = b.serializeArray(),
                d = f("form").index(b);
              f.each(c, function(b, c) {
                b = f("form:eq(" + d + ') input[name\x3d"' + decodeURIComponent(c.name) + '"]');
                "object" === typeof b.data("autoNumeric") && ("" !== c.value && (c.value = b.autoNumeric("get").toString()), a = !0)
              });
              return !0 === a ? c : this
            },
            getSettings: function() {
              return m(f(this)).eq(0).data("autoNumeric")
            }
          };
          f.fn.autoNumeric = function(a) {
            if (y[a]) return y[a].apply(this, Array.prototype.slice.call(arguments, 1));
            if ("object" === typeof a || !a) return y.init.apply(this, arguments);
            f.error('Method "' + a + '" is not supported by autoNumeric()')
          }
        })(jQuery);
        /*021-response-min.js*/
        /*

         response.js 0.9.0+201404091831
         https://github.com/ryanve/response.js
         MIT License (c) 2014 Ryan Van Etten
        */
        (function(g, n, p) {
          var t = g.jQuery || g.Zepto || g.ender || g.elo;
          "undefined" != typeof module && module.exports ? module.exports = p(t) : g[n] = p(t)
        })(this, "Response", function(g) {
          function n(a, b) {
            return function() {
              return a.apply(b, arguments)
            }
          }

          function p(a, b) {
            var c = this.call();
            return c >= (a || 0) && (!b || c <= b)
          }

          function t(a, b, c) {
            for (var d = [], e = a.length, f = 0; f < e;) d[f] = b.call(c, a[f], f++, a);
            return d
          }

          function B(a) {
            return a ? C("string" == typeof a ? a.split(" ") : a) : []
          }

          function k(a, b, c) {
            if (null == a) return a;
            for (var d = a.length, e = 0; e < d;) b.call(c || a[e], a[e], e++, a);
            return a
          }

          function O(a, b, c) {
            null == b && (b = "");
            null == c && (c = "");
            for (var d = [], e = a.length, f = 0; f < e; f++) null == a[f] || d.push(b + a[f] + c);
            return d
          }

          function C(a, b, c) {
            var d, e, f, m = [],
              g = 0,
              h = 0,
              l = "function" == typeof b,
              k = !0 === c;
            e = a && a.length;
            for (c = k ? null : c; h < e; h++) f = a[h], d = l ? !b.call(c, f, h, a) : b ? typeof f !== b : !f, d === k && (m[g++] = f);
            return m
          }

          function P(a, b) {
            if (null == a || null == b) return a;
            var c;
            if (c = "object" == typeof b) c = b.length, c = c === +c;
            if (c) pa.apply(a, C(b, "undefined", !0));
            else
              for (var d in b) Z.call(b, d) && void 0 !== b[d] && (a[d] = b[d]);
            return a
          }

          function u(a, b, c) {
            if (null == a) return a;
            var d;
            if (d = "object" == typeof a && !a.nodeType) d = a.length, d = d === +d;
            d ? k(a, b, c) : b.call(c || a, a);
            return a
          }

          function v(a) {
            var b = l.devicePixelRatio;
            if (null == a) return b || (v(2) ? 2 : v(1.5) ? 1.5 : v(1) ? 1 : 0);
            if (!isFinite(a)) return !1;
            if (b && 0 < b) return b >= a;
            a = "only all and (min--moz-device-pixel-ratio:" + a + ")";
            return Q(a) ? !0 : Q(a.replace("-moz-", ""))
          }

          function aa(a) {
            return a.replace(ba, "$1").replace(qa, function(a, c) {
              return c.toUpperCase()
            })
          }

          function w(a) {
            return "data-" + (a ? a.replace(ba, "$1").replace(ra, "$1-$2").toLowerCase() : a)
          }

          function ca(a) {
            var b;
            return "string" == typeof a && a ? "false" === a ? !1 : "true" === a ? !0 : "null" === a ? null : "undefined" === a || (b = +a) || 0 === b || "NaN" === a ? b : a : a
          }

          function D(a) {
            return !a || a.nodeType ? a : a[0]
          }

          function sa(a, b, c) {
            var d, e, f, m, g;
            if (a.attributes)
              for (d = "boolean" == typeof c ? /^data-/ : d, m = 0, g = a.attributes.length; m < g;)
                if (f = a.attributes[m++]) e = "" + f.name, d && d.test(e) !== c || null == f.value || b.call(a, f.value, e, f)
          }

          function ta(a) {
            var b;
            if (a && 1 === a.nodeType) {
              if (b = ua && a.dataset) return b;
              b = {};
              sa(a, function(a, d) {
                b[aa(d)] = "" + a
              }, !0);
              return b
            }
          }

          function x(a, b, c) {
            if ((a = D(a)) && a.setAttribute) {
              if (void 0 === b && c === b) return ta(a);
              var d = da(b) && w(b[0]);
              if ("object" != typeof b || d) {
                if (b = d || w(b)) {
                  if (void 0 === c) return b = a.getAttribute(b), null == b ? c : d ? ca(b) : "" + b;
                  a.setAttribute(b, c = "" + c);
                  return c
                }
              } else if (b)
                for (var e in b) Z.call(b, e) && x(a, e, b[e])
            }
          }

          function ea(a, b) {
            b = B(b);
            u(a, function(a) {
              k(b, function(b) {
                a.removeAttribute(w(b))
              })
            })
          }

          function fa(a) {
            for (var b, c = [], d = 0, e = a.length; d < e;)(b = a[d++]) && c.push("[" + w(b.replace(R, "").replace(".", "\\.")) + "]");
            return c.join()
          }

          function S(a, b) {
            a = a.getBoundingClientRect ? a.getBoundingClientRect() : {};
            b = "number" == typeof b ? b || 0 : 0;
            return {
              top: (a.top || 0) - b,
              left: (a.left || 0) - b,
              bottom: (a.bottom || 0) + b,
              right: (a.right || 0) + b
            }
          }

          function T(a, b) {
            a = S(D(a), b);
            return !!a && 0 <= a.bottom && a.top <= E() && 0 <= a.right && a.left <= F()
          }

          function ga(a) {
            var b = {
              img: 1,
              input: 1,
              source: 3,
              embed: 3,
              track: 3,
              iframe: 5,
              audio: 5,
              video: 5,
              script: 5
            } [a.nodeName.toLowerCase()] || -1;
            return 4 > b ? b : null != a.getAttribute("src") ? 5 : -5
          }

          function ha(a, b, c) {
            var d;
            if (!a || null == b) throw new TypeError("@store");
            c = "string" == typeof c && c;
            u(a, function(a) {
              d = c ? a.getAttribute(c) : 0 < ga(a) ? a.getAttribute("src") : a.innerHTML;
              null == d ? ea(a, b) : x(a, b, d)
            });
            return h
          }

          function U(a, b) {
            var c = [];
            a && b && k(B(b), function(b) {
              c.push(x(a, b))
            }, a);
            return c
          }

          function V(a) {
            y.on("resize", a);
            return h
          }

          function ia(a) {
            u(a, function(a) {
              if ("object" != typeof a) throw new TypeError("@create");
              var b = W(ja).configure(a),
                d, e = b.verge;
              a = b.breakpoints;
              var f = G("scroll"),
                m = G("resize");
              a.length && (d = a[0] || a[1] || !1, H(function() {
                function a() {
                  b.reset();
                  k(b.$e, function(a, c) {
                    b[c].decideValue().updateDOM()
                  }).trigger(g)
                }

                function c() {
                  k(b.$e, function(a, c) {
                    T(b[c].$e, e) && b[c].updateDOM()
                  })
                }
                var g = X.allLoaded,
                  h = !!b.lazy;
                k(b.target().$e, function(a, c) {
                  b[c] = W(b).prepareData(a);
                  h && !T(b[c].$e, e) || b[c].updateDOM()
                });
                b.dynamic && (b.custom || d < I) && V(a, m);
                h && (y.on(f, c), b.$e.one(g, function() {
                  y.off(f, c)
                }))
              }))
            });
            return h
          }
          if ("function" != typeof g) try {
            return void console.warn("response.js aborted due to missing dependency")
          } catch (a) {}
          var h,
            ja, J = this,
            va = J.Response,
            l = window,
            ka = document,
            r = ka.documentElement,
            H = g.domReady || g,
            y = g(l),
            ua = "undefined" != typeof DOMStringMap,
            z = Array.prototype,
            A = Object.prototype,
            pa = z.push,
            wa = z.concat,
            xa = A.toString,
            Z = A.hasOwnProperty,
            da = Array.isArray || function(a) {
              return "[object Array]" === xa.call(a)
            },
            la = {
              width: [0, 320, 481, 641, 961, 1025, 1281],
              height: [0, 481],
              ratio: [1, 1.5, 2]
            },
            q = {},
            ma = {},
            K = {
              all: []
            },
            ya = 1,
            L = screen.width,
            M = screen.height,
            I = L > M ? L : M,
            za = L + M - I,
            z = function() {
              return L
            },
            A = function() {
              return M
            },
            Aa = /[^a-z0-9_\-\.]/gi,
            R = /^[\W\s]+|[\W\s]+$|/g,
            ra = /([a-z])([A-Z])/g,
            qa = /-(.)/g,
            ba = /^data-(.+)$/,
            W = Object.create || function(a) {
              function b() {}
              b.prototype = a;
              return new b
            },
            G = function(a, b) {
              b = b || "Response";
              return a.replace(R, "") + "." + b.replace(R, "")
            },
            X = {
              allLoaded: G("allLoaded"),
              crossover: G("crossover")
            },
            N = l.matchMedia || l.msMatchMedia,
            Ba = N ? n(N, l) : function() {
              return {}
            },
            Q = N ? function(a) {
              return !!N.call(l, a)
            } : function() {
              return !1
            },
            F = function() {
              var a = r.clientWidth,
                b = l.innerWidth;
              return a < b ? b : a
            },
            E = function() {
              var a = r.clientHeight,
                b = l.innerHeight;
              return a < b ? b : a
            },
            na = n(p, F),
            oa = n(p, E),
            Y = {
              band: n(p, z),
              wave: n(p, A)
            };
          ja = function() {
            function a(a) {
              return "string" == typeof a ? a.toLowerCase().replace(Aa, "") : ""
            }

            function b(a, b) {
              return a - b
            }
            var c = X.crossover,
              d = Math.min;
            return {
              $e: 0,
              mode: 0,
              breakpoints: null,
              prefix: null,
              prop: "width",
              keys: [],
              dynamic: null,
              custom: 0,
              values: [],
              fn: 0,
              verge: null,
              newValue: 0,
              currValue: 1,
              aka: null,
              lazy: null,
              i: 0,
              uid: null,
              reset: function() {
                for (var a = this.breakpoints, b = a.length, d = 0; !d && b--;) this.fn(a[b]) && (d = b);
                d !== this.i && (y.trigger(c).trigger(this.prop + c), this.i = d || 0);
                return this
              },
              configure: function(c) {
                P(this, c);
                var f, e, g = !0;
                f = this.prop;
                this.uid = ya++;
                null == this.verge && (this.verge = d(I, 500));
                if (!(this.fn = q[f])) throw new TypeError("@create");
                null == this.dynamic && (this.dynamic = "device" !== f.slice(0, 6));
                this.custom = ma[f];
                e = this.prefix ? C(t(B(this.prefix), a)) : ["min-" + f + "-"];
                c = 1 < e.length ? e.slice(1) : 0;
                this.prefix = e[0];
                e = this.breakpoints;
                if (da(e)) {
                  if (k(e, function(a) {
                      if (!a && 0 !== a) throw "invalid breakpoint";
                      g = g && isFinite(a)
                    }), g && e.sort(b), !e.length) throw new TypeError(".breakpoints");
                } else if (e = la[f] || la[f.split("-").pop()], !e) throw new TypeError(".prop");
                this.breakpoints = e;
                this.keys = O(this.breakpoints, this.prefix);
                this.aka = null;
                if (c) {
                  e = [];
                  for (f = c.length; f--;) e.push(O(this.breakpoints, c[f]));
                  this.aka = e;
                  this.keys = wa.apply(this.keys, e)
                }
                K.all = K.all.concat(K[this.uid] = this.keys);
                return this
              },
              target: function() {
                this.$e = g(fa(K[this.uid]));
                ha(this.$e, "initResponse");
                this.keys.push("initResponse");
                return this
              },
              decideValue: function() {
                for (var a = null, b = this.breakpoints, c = b.length, d = c; null == a && d--;) this.fn(b[d]) && (a = this.values[d]);
                this.newValue = "string" == typeof a ? a : this.values[c];
                return this
              },
              prepareData: function(a) {
                this.$e = g(a);
                this.mode = ga(a);
                this.values = U(this.$e, this.keys);
                if (this.aka)
                  for (a = this.aka.length; a--;) this.values = P(this.values, U(this.$e, this.aka[a]));
                return this.decideValue()
              },
              updateDOM: function() {
                if (this.currValue === this.newValue) return this;
                this.currValue = this.newValue;
                0 < this.mode ? this.$e[0].setAttribute("src", this.newValue) : null == this.newValue ? this.$e.empty && this.$e.empty() : this.$e.html ? this.$e.html(this.newValue) : (this.$e.empty && this.$e.empty(), this.$e[0]
                  .innerHTML = this.newValue);
                return this
              }
            }
          }();
          q.width = na;
          q.height = oa;
          q["device-width"] = Y.band;
          q["device-height"] = Y.wave;
          q["device-pixel-ratio"] = v;
          h = {
            deviceMin: function() {
              return za
            },
            deviceMax: function() {
              return I
            },
            noConflict: function(a) {
              J.Response === h && (J.Response = va);
              "function" == typeof a && a.call(J, h);
              return h
            },
            create: ia,
            addTest: function(a, b) {
              "string" == typeof a && "function" == typeof b && (q[a] = b, ma[a] = 1);
              return h
            },
            datatize: w,
            camelize: aa,
            render: ca,
            store: ha,
            access: U,
            target: function(a) {
              return g(fa(B(a)))
            },
            object: W,
            crossover: function(a, b) {
              var c, d = X.crossover;
              "function" == typeof a && (c = b, b = a, a = c);
              y.on(a ? "" + a + d : d, b);
              return h
            },
            action: function(a) {
              u(a, function(a) {
                H(a);
                V(a)
              });
              return h
            },
            resize: V,
            ready: H,
            affix: O,
            sift: C,
            dpr: v,
            deletes: ea,
            scrollX: function() {
              return window.pageXOffset || r.scrollLeft
            },
            scrollY: function() {
              return window.pageYOffset || r.scrollTop
            },
            deviceW: z,
            deviceH: A,
            device: Y,
            inX: function(a, b) {
              a = S(D(a), b);
              return !!a && 0 <= a.right && a.left <= F()
            },
            inY: function(a, b) {
              a = S(D(a), b);
              return !!a && 0 <= a.bottom && a.top <= E()
            },
            route: u,
            merge: P,
            media: Ba,
            mq: Q,
            wave: oa,
            band: na,
            map: t,
            each: k,
            inViewport: T,
            dataset: x,
            viewportH: E,
            viewportW: F
          };
          H(function() {
            var a = x(ka.body, "responsejs"),
              b = l.JSON && JSON.parse || g.parseJSON;
            (a = a && b ? b(a) : a) && a.create && ia(a.create);
            r.className = r.className.replace(/(^|\s)(no-)?responsejs(\s|$)/, "$1$3") + " responsejs "
          });
          return h
        });
        /*021-template.js*/
        (function(b) {
          function e(a) {
            return (window.XFC_METADATA ? XFC_METADATA.urls.template : designer.config.urls.template) + "?" + b.param({
              frid: window.XFC_METADATA ? XFC_METADATA.currentSessionFRID : designer.config.fd2frid,
              uuid: a
            })
          }
          b(document).ready(function() {
            if (b.fn.dialog) {
              var a = b("form.xm-form").css("max-width"),
                a = a ? parseInt(a) - 30 : 700;
              b(".xm-template-dialog-content").dialog({
                autoOpen: !1,
                height: "auto",
                width: a,
                modal: !0,
                draggable: !1,
                classes: {
                  "ui-dialog": "xm-dialog",
                  "ui-dialog-titlebar": "xm-dialog-titlebar"
                },
                closeText: ""
              })
            }
          });
          b.fn._xmOpenTemplateInDialog = function() {
            var a = b(this).attr("data-xm-template");
            if (a) {
              var c = b(".xm-template-dialog-content");
              if (c && 0 < c.length) {
                var d = c.find(".xm-template-dialog-iframe");
                d && 1 == d.length && (d.attr("src", e(a)), d.on("load", function() {
                  d.height(d.get(0).contentWindow.document.body.scrollHeight);
                  if (c.closest(".xm-dialog")) {
                    var a = c.closest(".xm-dialog").position();
                    a && window.scrollTo(0, a.top)
                  }
                }), c.dialog("open"))
              }
            }
          };
          b.fn._xmOpenTemplateInNewTab = function() {
            var a = e(b(this).attr("data-xm-template"));
            a && window.open(a, "_blank")
          }
        })(jQuery);
        /*030-word-and-character-counter.js*/
        (function(d) {
          d.fn.extend({
            counter: function(l) {
              return this.each(function(n, k) {
                var g = {
                  type: "char",
                  count: "down",
                  text: !0,
                  target: !1,
                  append: !0,
                  translation: "",
                  msg: ""
                };
                l = l || {};
                var a = d.extend({}, l);
                l.hasOwnProperty("goal") || (a.goal = d(k).attr("maxlength"));
                a.goal && "" != a.goal && 0 != a.goal && a.count || (a.count = "up");
                var h = "",
                  e = "",
                  m = !1,
                  a = d.extend({}, g, a),
                  f = {
                    init: function(c) {
                      var b = c.attr("id"),
                        e = b + "_count";
                      c.data("counter", this);
                      f.isLimitless();
                      b = d("\x3cdiv\x3e\x3c/div\x3e").addClass("xm-counter").attr("id", b + "_counter").html("\x3cspan id\x3d" + e + "\x3e\x3c/span\x3e " + f.setMsg());
                      a.target ? d(a.target).length ? a.append ? b.insertAfter(a.target) : b.insertBefore(a.target) : a.append ? b.insertAfter(c) : b.insertBefore(c) : c.parent().append(b);
                      h = d("#" + e);
                      f.bind(c)
                    },
                    bind: function(a) {
                      a.bind("keypress.counter keydown.counter keyup.counter blur.counter focus.counter change.counter paste.counter", f.updateCounter);
                      a.bind("keydown.counter", f.doStopTyping);
                      a.trigger("keydown")
                    },
                    isLimitless: function() {
                      if ("sky" === a.goal) return a.count = "up", m = !0
                    },
                    setMsg: function() {
                      if ("" !== a.msg) return a.msg;
                      if (!1 === a.text) return "";
                      if (m) return "" !== a.msg ? a.msg : "";
                      this.text = a.translation || window.XM_FORM_I18N ? XM_FORM_I18N.lettersLeft : window.designer ? designer.i18n.lettersLeft : "characters words left max";
                      this.text = this.text.split(" ");
                      this.chars = ["", "(", ")"];
                      this.msg = null;
                      switch (a.type) {
                        case "char":
                          a.count === g.count && a.text ? this.msg = this.text[0] + " " + this.text[2] : "up" === a.count && a.text && (this.msg = this.text[0] + this.chars[0] + " " + (a.goal ? this.chars[1] + a.goal + " " + this
                            .text[3] + this.chars[2] : ""));
                          break;
                        case "word":
                          a.count === g.count && a.text ? this.msg = this.text[1] + " " + this.text[2] : "up" === a.count && a.text && (this.msg = this.text[1] + " " + this.chars[1] + a.goal + " " + this.text[3] + this.chars[2])
                      }
                      return this.msg
                    },
                    getWords: function(a) {
                      return "" !== a ? d.trim(a).replace(/\s+/g, " ").split(" ").length : 0
                    },
                    updateCounter: function(c) {
                      c = d(this);
                      (0 > e || e > a.goal) && f.passedGoal(c);
                      a.type === g.type ? a.count === g.count ? (e = a.goal - c.val().length, 0 >= e ? h.text("0") : h.text(e)) : "up" === a.count && (e = c.val().length, h.text(e)) : "word" === a.type && (a.count === g.count ? (e =
                        f.getWords(c.val()), e <= a.goal ? (e = a.goal - e, h.text(e)) : h.text("0")) : "up" === a.count && (e = f.getWords(c.val()), h.text(e)))
                    },
                    doStopTyping: function(c) {
                      var b = [46, 8, 9, 35, 36, 37, 38, 39, 40, 32];
                      if (f.isGoalReached(c) && c.keyCode !== b[0] && c.keyCode !== b[1] && c.keyCode !== b[2] && c.keyCode !== b[3] && c.keyCode !== b[4] && c.keyCode !== b[5] && c.keyCode !== b[6] && c.keyCode !== b[7] && c
                        .keyCode !== b[8]) return a.type === g.type ? !1 : c.keyCode !== b[9] && c.keyCode !== b[1] && a.type != g.type ? !0 : !1
                    },
                    isGoalReached: function(c, b) {
                      if (m) return !1;
                      if (a.count === g.count) return 0 >= e ? !0 : !1;
                      b = a.goal;
                      return e >= b ? !0 : !1
                    },
                    wordStrip: function(a, b) {
                      var c = b.replace(/\s+/g, " ").split(" ").length;
                      b = d.trim(b);
                      if (0 >= a || a === c) return b;
                      b = d.trim(b).split(" ");
                      b.splice(a, c, "");
                      return d.trim(b.join(" "))
                    },
                    passedGoal: function(c) {
                      var b = c.val();
                      "word" === a.type && c.val(f.wordStrip(a.goal, b));
                      "char" === a.type && c.val(b.substring(0, a.goal));
                      "down" === a.type && h.val("0");
                      "up" === a.type && h.val(a.goal)
                    }
                  };
                "destroy" == l ? (n = d(k).attr("id") + "_counter", d(k).unbind("keypress.counter keydown.counter keyup.counter blur.counter focus.counter change.counter paste.counter", d(k).data("counter").updateCounter), d(k)
                  .unbind("keydown.counter", d(k).data("counter").doStopTyping), d("#" + n).remove()) : d(k).data("counter") || f.init(d(this))
              })
            }
          })
        })(jQuery);
        /*034-signature.js*/
        /*


        jSignature v2 "2012-11-01T22:48" "commit ID 1c15dfafecc75925c3b7d529356a558b59220edb"
        Copyright (c) 2012 Willow Systems Corp http://willow-systems.com
        Copyright (c) 2010 Brinley Ang http://www.unbolt.net
        MIT License <http://www.opensource.org/licenses/mit-license.php> 


        Simplify.js BSD 
        (c) 2012, Vladimir Agafonkin
        mourner.github.com/simplify-js


        base64 encoder
        MIT, GPL
        http://phpjs.org/functions/base64_encode
        +   original by: Tyler Akins (http://rumkin.com)
        +   improved by: Bayron Guevara
        +   improved by: Thunder.m
        +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
        +   bugfixed by: Pellentesque Malesuada
        +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
        +   improved by: Rafal Kukawski (http://kukawski.pl)


        jSignature v2 jSignature's Undo Button and undo functionality plugin


        jSignature v2 jSignature's custom "base30" format export and import plugins.


        jSignature v2 SVG export plugin.

        */
        (function(k) {
          function r(b) {
            var h, t = b.css("color"),
              m;
            b = b[0];
            for (var c = !1; b && !m && !c;) {
              try {
                h = k(b).css("background-color")
              } catch (A) {
                h = "transparent"
              }
              "transparent" !== h && "rgba(0, 0, 0, 0)" !== h && (m = h);
              c = b.body;
              b = b.parentNode
            }
            b = /rgb[a]*\((\d+),\s*(\d+),\s*(\d+)/;
            var c = /#([AaBbCcDdEeFf\d]{2})([AaBbCcDdEeFf\d]{2})([AaBbCcDdEeFf\d]{2})/,
              a;
            h = void 0;
            (h = t.match(b)) ? a = {
              r: parseInt(h[1], 10),
              g: parseInt(h[2], 10),
              b: parseInt(h[3], 10)
            }: (h = t.match(c)) && (a = {
              r: parseInt(h[1], 16),
              g: parseInt(h[2], 16),
              b: parseInt(h[3], 16)
            });
            var d;
            m ? (h = void 0, (h = m.match(b)) ? d = {
              r: parseInt(h[1], 10),
              g: parseInt(h[2], 10),
              b: parseInt(h[3], 10)
            } : (h = m.match(c)) && (d = {
              r: parseInt(h[1], 16),
              g: parseInt(h[2], 16),
              b: parseInt(h[3], 16)
            })) : d = a ? 127 < Math.max.apply(null, [a.r, a.g, a.b]) ? {
              r: 0,
              g: 0,
              b: 0
            } : {
              r: 255,
              g: 255,
              b: 255
            } : {
              r: 255,
              g: 255,
              b: 255
            };
            h = function(b) {
              return "rgb(" + [b.r, b.g, b.b].join(", ") + ")"
            };
            a && d ? (b = Math.max.apply(null, [a.r, a.g, a.b]), a = Math.max.apply(null, [d.r, d.g, d.b]), a = Math.round(a + -.75 * (a - b)), a = {
              r: a,
              g: a,
              b: a
            }) : a ? (a = Math.max.apply(null, [a.r, a.g, a.b]), b = 1, 127 < a && (b = -1), a = Math.round(a + 96 * b), a = {
              r: a,
              g: a,
              b: a
            }) : a = {
              r: 191,
              g: 191,
              b: 191
            };
            return {
              color: t,
              "background-color": d ? h(d) : m,
              "decor-color": h(a)
            }
          }

          function p(b, h) {
            this.x = b;
            this.y = h;
            this.reverse = function() {
              return new this.constructor(-1 * this.x, -1 * this.y)
            };
            this._length = null;
            this.getLength = function() {
              this._length || (this._length = Math.sqrt(Math.pow(this.x, 2) + Math.pow(this.y, 2)));
              return this._length
            };
            var a = function(b) {
              return Math.round(b / Math.abs(b))
            };
            this.resizeTo = function(b) {
              if (0 === this.x && 0 === this.y) this._length = 0;
              else if (0 === this.x) this._length = b, this.y = b * a(this.y);
              else if (0 === this.y) this._length = b, this.x = b * a(this.x);
              else {
                var h = Math.abs(this.y / this.x),
                  m = Math.sqrt(Math.pow(b, 2) / (1 + Math.pow(h, 2))),
                  h = h * m;
                this._length = b;
                this.x = m * a(this.x);
                this.y = h * a(this.y)
              }
              return this
            };
            this.angleTo = function(b) {
              var h = this.getLength() * b.getLength();
              return 0 === h ? 0 : Math.acos(Math.min(Math.max((this.x * b.x + this.y * b.y) / h, -1), 1)) / Math.PI
            }
          }

          function e(b, h) {
            this.x = b;
            this.y = h;
            this.getVectorToCoordinates = function(b, h) {
              return new p(b - this.x, h - this.y)
            };
            this.getVectorFromCoordinates = function(b, h) {
              return this.getVectorToCoordinates(b, h).reverse()
            };
            this.getVectorToPoint = function(b) {
              return new p(b.x - this.x, b.y - this.y)
            };
            this.getVectorFromPoint = function(b) {
              return this.getVectorToPoint(b).reverse()
            }
          }

          function q(b, h, a, m, c) {
            this.data = b;
            this.context = h;
            if (b.length)
              for (var t = b.length, d, n, f = 0; f < t; f++) {
                d = b[f];
                n = d.x.length;
                a.call(h, d);
                for (var e = 1; e < n; e++) m.call(h, d, e);
                c.call(h, d)
              }
            this.changed = function() {};
            this.startStrokeFn = a;
            this.addToStrokeFn = m;
            this.endStrokeFn = c;
            this.inStroke = !1;
            this._stroke = this._lastPoint = null;
            this.startStroke = function(b) {
              if (b && "number" == typeof b.x && "number" == typeof b.y) {
                this._stroke = {
                  x: [b.x],
                  y: [b.y]
                };
                this.data.push(this._stroke);
                this._lastPoint = b;
                this.inStroke = !0;
                var h = this._stroke,
                  a = this.startStrokeFn,
                  m = this.context;
                setTimeout(function() {
                  a.call(m, h)
                }, 3);
                return b
              }
              return null
            };
            this.addToStroke = function(b) {
              if (this.inStroke && "number" === typeof b.x && "number" === typeof b.y && 4 < Math.abs(b.x - this._lastPoint.x) + Math.abs(b.y - this._lastPoint.y)) {
                var h = this._stroke.x.length;
                this._stroke.x.push(b.x);
                this._stroke.y.push(b.y);
                this._lastPoint = b;
                var a = this._stroke,
                  m = this.addToStrokeFn,
                  c = this.context;
                setTimeout(function() {
                  m.call(c, a, h)
                }, 3);
                return b
              }
              return null
            };
            this.endStroke = function() {
              var b = this.inStroke;
              this.inStroke = !1;
              this._lastPoint = null;
              if (b) {
                var h = this._stroke,
                  a = this.endStrokeFn,
                  m = this.context,
                  c = this.changed;
                setTimeout(function() {
                  a.call(m, h);
                  c.call(m)
                }, 3);
                return !0
              }
              return null
            }
          }

          function w(b, h, a) {
            var m = this.$parent = k(b);
            b = this.eventTokens = {};
            this.events = new x(this);
            var c = k.fn[g]("globalEvents"),
              d = {
                width: "ratio",
                height: "ratio",
                sizeRatio: 4,
                color: "#000",
                "background-color": "#fff",
                "decor-color": "#eee",
                lineWidth: 0,
                minFatFingerCompensation: -10,
                showUndoButton: !1,
                data: []
              };
            k.extend(d, r(m));
            h && k.extend(d, h);
            this.settings = d;
            for (var t in a) a.hasOwnProperty(t) && a[t].call(this, t);
            this.events.publish(g + ".initializing");
            this.$controlbarUpper = k('\x3cdiv style\x3d"padding:0 !important;margin:0 !important;width: 100% !important; height: 0 !important;margin-top:-1em !important;margin-bottom:1em !important;"\x3e\x3c/div\x3e').appendTo(m);
            this.isCanvasEmulator = !1;
            a = this.canvas = this.initializeCanvas(d);
            h = k(a);
            this.$controlbarLower = k('\x3cdiv style\x3d"padding:0 !important;margin:0 !important;width: 100% !important; height: 0 !important;margin-top:-1.5em !important;margin-bottom:1.5em !important;"\x3e\x3c/div\x3e').appendTo(m);
            this.canvasContext = a.getContext("2d");
            h.data(g + ".this", this);
            m = (m = d.lineWidth) ? m : Math.max(Math.round(a.width / 400), 2);
            d.lineWidth = m;
            this.lineCurveThreshold = 3 * d.lineWidth;
            d.cssclass && "" != k.trim(d.cssclass) && h.addClass(d.cssclass);
            this.fatFingerCompensation = 0;
            var m = function(b) {
                var h, a, m = function(m) {
                    m = m.changedTouches && 0 < m.changedTouches.length ? m.changedTouches[0] : m;
                    return new e(Math.round(m.pageX + h), Math.round(m.pageY + a) + b.fatFingerCompensation)
                  },
                  d = new y(750, function() {
                    b.dataEngine.endStroke()
                  });
                this.drawEndHandler = function(h) {
                  try {
                    h.preventDefault()
                  } catch (J) {}
                  d.clear();
                  b.dataEngine.endStroke()
                };
                this.drawStartHandler = function(c) {
                  c.preventDefault();
                  var t = k(b.canvas).offset();
                  h = -1 * t.left;
                  a = -1 * t.top;
                  b.dataEngine.startStroke(m(c));
                  d.kick()
                };
                this.drawMoveHandler = function(h) {
                  h.preventDefault();
                  b.dataEngine.inStroke && (b.dataEngine.addToStroke(m(h)), d.kick())
                };
                return this
              }.call({}, this),
              n = m.drawEndHandler,
              f = m.drawStartHandler,
              z = m.drawMoveHandler,
              l = this.canvas;
            h = k(l);
            this.isCanvasEmulator ? (h.bind("mousemove." + g, z), h.bind("mouseup." + g, n), h.bind("mousedown." + g, f)) : (l.ontouchstart = function(b) {
              l.onmousedown = void 0;
              l.onmouseup = void 0;
              l.onmousemove = void 0;
              this.fatFingerCompensation = d.minFatFingerCompensation && -3 * d.lineWidth > d.minFatFingerCompensation ? -3 * d.lineWidth : d.minFatFingerCompensation;
              f(b);
              l.ontouchend = n;
              l.ontouchstart = f;
              l.ontouchmove = z
            }, l.onmousedown = function(b) {
              l.ontouchstart = void 0;
              l.ontouchend = void 0;
              l.ontouchmove = void 0;
              f(b);
              l.onmousedown = f;
              l.onmouseup = n;
              l.onmousemove = z
            });
            b[g + ".windowmouseup"] = c.subscribe(g + ".windowmouseup", m.drawEndHandler);
            this.events.publish(g + ".attachingEventHandlers");
            var p = this;
            b = d.width.toString(10);
            var u = g;
            if ("ratio" === b || "%" === b.split("")[b.length - 1]) this.eventTokens[u + ".parentresized"] = c.subscribe(u + ".parentresized", function(b, h, a) {
              return function() {
                var m = h.width();
                if (m !== a) {
                  for (var d in b) b.hasOwnProperty(d) && (c.unsubscribe(b[d]), delete b[d]);
                  var t = p.settings;
                  p.$parent.children().remove();
                  for (d in p) p.hasOwnProperty(d) && delete p[d];
                  d = t.data;
                  var m = 1 * m / a,
                    f = [],
                    n, e, l, g, H, k;
                  e = 0;
                  for (l = d.length; e < l; e++) {
                    k = d[e];
                    n = {
                      x: [],
                      y: []
                    };
                    g = 0;
                    for (H = k.x.length; g < H; g++) n.x.push(k.x[g] * m), n.y.push(k.y[g] * m);
                    f.push(n)
                  }
                  t.data = f;
                  h[u](t)
                }
              }
            }(this.eventTokens, this.$parent, this.$parent.width(), 1 * this.canvas.width / this.canvas.height));
            this.resetCanvas(d.data);
            this.events.publish(g + ".initialized");
            return this
          }
          var g = "jSignature",
            y = function(b, h) {
              var a;
              this.kick = function() {
                clearTimeout(a);
                a = setTimeout(h, b)
              };
              this.clear = function() {
                clearTimeout(a)
              };
              return this
            },
            x = function(b) {
              this.topics = {};
              this.context = b ? b : this;
              this.publish = function(b, a, m, d) {
                if (this.topics[b]) {
                  var h = this.topics[b],
                    c = Array.prototype.slice.call(arguments, 1),
                    t = [],
                    n, f, e, l;
                  f = 0;
                  for (e = h.length; f < e; f++) l = h[f], n = l[0], l[1] && (l[0] = function() {}, t.push(f)), n.apply(this.context, c);
                  f = 0;
                  for (e = t.length; f < e; f++) h.splice(t[f], 1)
                }
              };
              this.subscribe = function(b, a, m) {
                this.topics[b] ? this.topics[b].push([a, m]) : this.topics[b] = [
                  [a, m]
                ];
                return {
                  topic: b,
                  callback: a
                }
              };
              this.unsubscribe = function(b) {
                if (this.topics[b.topic])
                  for (var h = this.topics[b.topic], a = 0, d = h.length; a < d; a++) h[a][0] === b.callback && h.splice(a, 1)
              }
            },
            B = function(b) {
              var a = this.canvasContext,
                d = b.x[0];
              b = b.y[0];
              var m = this.settings.lineWidth,
                c = a.fillStyle;
              a.fillStyle = a.strokeStyle;
              a.fillRect(d + m / -2, b + m / -2, m, m);
              a.fillStyle = c
            },
            v = function(b, a) {
              var h = new e(b.x[a - 1], b.y[a - 1]),
                d = new e(b.x[a], b.y[a]),
                c = h.getVectorToPoint(d);
              if (1 < a) {
                var f = new e(b.x[a - 2], b.y[a - 2]),
                  n = f.getVectorToPoint(h),
                  l;
                if (n.getLength() > this.lineCurveThreshold) {
                  l = 2 < a ? (new e(b.x[a - 3], b.y[a - 3])).getVectorToPoint(f) : new p(0, 0);
                  b = .35 * n.getLength();
                  a = n.angleTo(l.reverse());
                  var g = c.angleTo(n.reverse());
                  l = (new p(l.x + n.x, l.y + n.y)).resizeTo(Math.max(.05, a) * b);
                  var k = (new p(n.x + c.x, n.y + c.y)).reverse().resizeTo(Math.max(.05, g) * b),
                    n = this.canvasContext;
                  b = f.x;
                  g = f.y;
                  a = h.x;
                  var z = h.y,
                    u = f.x + l.x,
                    f = f.y + l.y;
                  l = h.x + k.x;
                  k = h.y + k.y;
                  n.beginPath();
                  n.moveTo(b, g);
                  n.bezierCurveTo(u, f, l, k, a, z);
                  n.stroke()
                }
              }
              c.getLength() <= this.lineCurveThreshold && (c = this.canvasContext, f = h.x, h = h.y, l = d.x, d = d.y, c.beginPath(), c.moveTo(f, h), c.lineTo(l, d), c.stroke())
            },
            l = function(b) {
              var a = b.x.length - 1;
              if (0 < a) {
                var d = new e(b.x[a], b.y[a]),
                  c = new e(b.x[a - 1], b.y[a - 1]),
                  f = c.getVectorToPoint(d);
                if (f.getLength() > this.lineCurveThreshold) {
                  if (1 < a) {
                    b = (new e(b.x[a - 2], b.y[a - 2])).getVectorToPoint(c);
                    var n = (new p(b.x + f.x, b.y + f.y)).resizeTo(f.getLength() / 2),
                      f = this.canvasContext;
                    b = c.x;
                    var a = c.y,
                      l = d.x,
                      g = d.y,
                      k = c.x + n.x,
                      c = c.y + n.y,
                      n = d.x,
                      d = d.y;
                    f.beginPath();
                    f.moveTo(b, a);
                    f.bezierCurveTo(k, c, n, d, l, g)
                  } else f = this.canvasContext, b = c.x, c = c.y, a = d.x, d = d.y, f.beginPath(), f.moveTo(b, c), f.lineTo(a, d);
                  f.stroke()
                }
              }
            };
          w.prototype.resetCanvas = function(b) {
            var a = this.canvas,
              d = this.settings,
              c = this.canvasContext,
              f = this.isCanvasEmulator,
              n = a.width,
              e = a.height;
            c.clearRect(0, 0, n + 30, e + 30);
            c.shadowColor = c.fillStyle = d["background-color"];
            f && c.fillRect(0, 0, n + 30, e + 30);
            c.lineWidth = Math.ceil(parseInt(d.lineWidth, 10));
            c.lineCap = c.lineJoin = "round";
            c.strokeStyle = d["decor-color"];
            c.shadowOffsetX = 0;
            c.shadowOffsetY = 0;
            var z = Math.round(e / 5),
              p = 1.5 * z,
              u = e - z,
              n = n - 1.5 * z,
              e = e - z;
            c.beginPath();
            c.moveTo(p, u);
            c.lineTo(n, e);
            c.stroke();
            c.strokeStyle = d.color;
            f || (c.shadowColor = c.strokeStyle, c.shadowOffsetX = .5 * c.lineWidth, c.shadowOffsetY = -.6 * c.lineWidth, c.shadowBlur = 0);
            b || (b = []);
            c = this.dataEngine = new q(b, this, B, v, l);
            d.data = b;
            k(a).data(g + ".data", b).data(g + ".settings", d);
            var r = this.$parent,
              F = this.events,
              D = g;
            c.changed = function() {
              F.publish(D + ".change");
              r.trigger("change")
            };
            c.changed();
            return !0
          };
          w.prototype.initializeCanvas = function(b) {
            var a = document.createElement("canvas"),
              c = k(a);
            b.width === b.height && "ratio" === b.height && (b.width = "100%");
            c.css("margin", 0).css("padding", 0).css("border", "none").css("height", "ratio" !== b.height && b.height ? b.height.toString(10) : 1).css("width", "ratio" !== b.width && b.width ? b.width.toString(10) : 1);
            c.appendTo(this.$parent);
            "ratio" === b.height ? c.css("height", Math.round(c.width() / b.sizeRatio)) : "ratio" === b.width && c.css("width", Math.round(c.height() * b.sizeRatio));
            c.addClass(g);
            a.width = c.width();
            a.height = c.height();
            b = a;
            if (b.getContext) b = !1;
            else {
              var c = b.ownerDocument.parentWindow,
                d = c.FlashCanvas ? b.ownerDocument.parentWindow.FlashCanvas : "undefined" === typeof FlashCanvas ? void 0 : FlashCanvas;
              if (d) {
                b = d.initElement(b);
                d = 1;
                c && c.screen && c.screen.deviceXDPI && c.screen.logicalXDPI && (d = 1 * c.screen.deviceXDPI / c.screen.logicalXDPI);
                if (1 !== d) try {
                  k(b).children("object").get(0).resize(Math.ceil(b.width * d), Math.ceil(b.height * d)), b.getContext("2d").scale(d, d)
                } catch (H) {}
                b = !0
              } else throw Error("Canvas element does not support 2d context. jSignature cannot proceed.");
            }
            this.isCanvasEmulator = b;
            a.onselectstart = function(b) {
              b && b.preventDefault && b.preventDefault();
              b && b.stopPropagation && b.stopPropagation();
              return !1
            };
            return a
          };
          var E = window,
            C = function(b, a) {
              var c = new Image,
                d = this;
              c.onload = function() {
                d.getContext("2d").drawImage(c, 0, 0, c.width < d.width ? c.width : d.width, c.height < d.height ? c.height : d.height)
              };
              c.src = "data:" + a + "," + b
            },
            a = function(b) {
              this.find("canvas." + g).add(this.filter("canvas." + g)).data(g + ".this").resetCanvas(b);
              return this
            },
            f = function(b, a) {
              if (void 0 !== a || "string" !== typeof b || "data:" !== b.substr(0, 5) || (a = b.slice(5).split(",")[0], b = b.slice(6 + a.length), a !== b)) {
                var c = this.find("canvas." + g).add(this.filter("canvas." + g));
                if (u.hasOwnProperty(a)) 0 !== c.length && u[a].call(c[0], b, a, function(b) {
                  return function() {
                    return b.resetCanvas.apply(b, arguments)
                  }
                }(c.data(g + ".this")));
                else throw Error(g + " is unable to find import plugin with for format '" + String(a) + "'");
                return this
              }
            },
            c = new x,
            d = g,
            n, z = function() {
              c.publish(d + ".parentresized")
            };
          k(E).bind("resize." + d, function() {
            n && clearTimeout(n);
            n = setTimeout(z, 500)
          }).bind("mouseup." + d, function() {
            c.publish(d + ".windowmouseup")
          });
          var F = {},
            D = {
              "default": function() {
                return this.toDataURL()
              },
              "native": function(b) {
                return b
              },
              image: function() {
                var b = this.toDataURL();
                if ("string" === typeof b && 4 < b.length && "data:" === b.slice(0, 5) && -1 !== b.indexOf(",")) {
                  var a = b.indexOf(",");
                  return [b.slice(5, a), b.substr(a + 1)]
                }
                return []
              }
            },
            u = {
              "native": function(b, a, c) {
                c(b)
              },
              image: C,
              "image/png;base64": C,
              "image/jpeg;base64": C,
              "image/jpg;base64": C
            },
            G = {
              "export": D,
              "import": u,
              instance: F
            },
            I = {
              init: function(b) {
                return this.each(function() {
                  var a, c = !1;
                  for (a = this.parentNode; a && !c;) c = a.body, a = a.parentNode;
                  !c || new w(this, b, F)
                })
              },
              getSettings: function() {
                return this.find("canvas." + g).add(this.filter("canvas." + g)).data(g + ".this").settings
              },
              clear: a,
              reset: a,
              addPlugin: function(b, a, c) {
                G.hasOwnProperty(b) && (G[b][a] = c);
                return this
              },
              listPlugins: function(b) {
                var a = [];
                if (G.hasOwnProperty(b)) {
                  b = G[b];
                  for (var c in b) b.hasOwnProperty(c) && a.push(c)
                }
                return a
              },
              getData: function(b) {
                var a = this.find("canvas." + g).add(this.filter("canvas." + g));
                void 0 === b && (b = "default");
                if (0 !== a.length && D.hasOwnProperty(b)) return D[b].call(a.get(0), a.data(g + ".data"))
              },
              importData: f,
              setData: f,
              globalEvents: function() {
                return c
              },
              events: function() {
                return this.find("canvas." + g).add(this.filter("canvas." + g)).data(g + ".this").events
              }
            };
          k.fn[g] = function(b) {
            if (!b || "object" === typeof b) return I.init.apply(this, arguments);
            if ("string" === typeof b && I[b]) return I[b].apply(this, Array.prototype.slice.call(arguments, 1));
            k.error("Method " + String(b) + " does not exist on jQuery." + g)
          }
        })(jQuery);
        (function(k) {
          k.fn.jSignature("addPlugin", "instance", "UndoButton", function(r) {
            this.events.subscribe("jSignature.attachingEventHandlers", function() {
              if (this.settings[r]) {
                var p = this.settings[r];
                "function" !== typeof p && (p = function() {
                  var e = k('\x3cinput type\x3d"button" value\x3d"Undo last stroke" style\x3d"position:absolute;display:none;margin:0 !important;top:auto" /\x3e').appendTo(this.$controlbarLower),
                    g = e.width();
                  e.css("left", Math.round((this.canvas.width - g) / 2));
                  g !== e.width() && e.width(g);
                  return e
                });
                var e = p.call(this),
                  q = this;
                q.events.subscribe("jSignature.change", function() {
                  q.dataEngine.data.length ? e.show() : e.hide()
                });
                var w = this,
                  g = (this.events.topics.hasOwnProperty("jSignature.undo") ? r : "jSignature") + ".undo";
                e.bind("click", function() {
                  w.events.publish(g)
                });
                w.events.subscribe(g, function() {
                  var e = w.dataEngine.data;
                  e.length && (e.pop(), w.resetCanvas(e))
                })
              }
            })
          })
        })(jQuery);
        (function(k) {
          var r = {},
            p = {};
          k = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWX".split("");
          for (var e = k.length / 2, q = e - 1; - 1 < q; q--) r[k[q]] = k[q + e], p[k[q + e]] = k[q];
          var w = function(e) {
              e = e.split("");
              for (var l = e.length, g = 1; g < l; g++) e[g] = r[e[g]];
              return e.join("")
            },
            g = function(l) {
              for (var g = [], k = 0, a = 1, f = l.length, c, d, n = 0; n < f; n++) c = Math.round(l[n]), d = c - k, k = c, 0 > d && 0 < a ? (a = -1, g.push("Z")) : 0 < d && 0 > a && (a = 1, g.push("Y")), c = Math.abs(d), c >= e ? g.push(w(c
                .toString(e))) : g.push(c.toString(e));
              return g.join("")
            },
            y = function(g) {
              var l = [];
              g = g.split("");
              for (var k = g.length, a, f = 1, c = [], d = 0, n = 0; n < k; n++) a = g[n], a in r || "Z" === a || "Y" === a ? (0 !== c.length && (c = parseInt(c.join(""), e) * f + d, l.push(c), d = c), "Z" === a ? (f = -1, c = []) : "Y" === a ?
                (f = 1, c = []) : c = [a]) : c.push(p[a]);
              l.push(parseInt(c.join(""), e) * f + d);
              return l
            },
            x = function(e) {
              for (var l = [], k = e.length, a, f = 0; f < k; f++) a = e[f], l.push(g(a.x)), l.push(g(a.y));
              return l.join("_")
            },
            B = function(e) {
              var g = [];
              e = e.split("_");
              for (var l = e.length / 2, a = 0; a < l; a++) g.push({
                x: y(e[2 * a]),
                y: y(e[2 * a + 1])
              });
              return g
            };
          k = function(e) {
            return ["image/jsignature;base30",
              x(e)
            ]
          };
          q = function(e, g, k) {
            "string" === typeof e && ("image/jsignature;base30" === e.substring(0, 23).toLowerCase() && (e = e.substring(24)), k(B(e)))
          };
          if (null == this.jQuery) throw Error("We need jQuery for some of the functionality. jQuery is not detected. Failing to initialize...");
          var v = this.jQuery.fn.jSignature;
          v("addPlugin", "export", "base30", k);
          v("addPlugin", "export", "image/jsignature;base30", k);
          v("addPlugin", "import", "base30", q);
          v("addPlugin", "import", "image/jsignature;base30", q);
          this.jSignatureDebug && (this.jSignatureDebug.base30 = {
            remapTailChars: w,
            compressstrokeleg: g,
            uncompressstrokeleg: y,
            compressstrokes: x,
            uncompressstrokes: B,
            charmap: r
          })
        }).call("undefined" !== typeof window ? window : this);
        (function(k) {
          function r(a, f) {
            this.x = a;
            this.y = f;
            this.reverse = function() {
              return new this.constructor(-1 * this.x, -1 * this.y)
            };
            this._length = null;
            this.getLength = function() {
              this._length || (this._length = Math.sqrt(Math.pow(this.x, 2) + Math.pow(this.y, 2)));
              return this._length
            };
            var c = function(a) {
              return Math.round(a / Math.abs(a))
            };
            this.resizeTo = function(a) {
              if (0 === this.x && 0 === this.y) this._length = 0;
              else if (0 === this.x) this._length = a, this.y = a * c(this.y);
              else if (0 === this.y) this._length = a, this.x = a * c(this.x);
              else {
                var d = Math.abs(this.y / this.x),
                  f = Math.sqrt(Math.pow(a, 2) / (1 + Math.pow(d, 2))),
                  d = d * f;
                this._length = a;
                this.x = f * c(this.x);
                this.y = d * c(this.y)
              }
              return this
            };
            this.angleTo = function(a) {
              var c = this.getLength() * a.getLength();
              return 0 === c ? 0 : Math.acos(Math.min(Math.max((this.x * a.x + this.y * a.y) / c, -1), 1)) / Math.PI
            }
          }

          function p(a, f) {
            this.x = a;
            this.y = f;
            this.getVectorToCoordinates = function(a, d) {
              return new r(a - this.x, d - this.y)
            };
            this.getVectorFromCoordinates = function(a, d) {
              return this.getVectorToCoordinates(a, d).reverse()
            };
            this.getVectorToPoint = function(a) {
              return new r(a.x - this.x, a.y - this.y)
            };
            this.getVectorFromPoint = function(a) {
              return this.getVectorToPoint(a).reverse()
            }
          }

          function e(a, f) {
            f = Math.pow(10, f);
            return Math.round(a * f) / f
          }

          function q(a, f, c) {
            f += 1;
            var d = new p(a.x[f - 1], a.y[f - 1]),
              n = new p(a.x[f], a.y[f]),
              n = d.getVectorToPoint(n),
              g = new p(a.x[f - 2], a.y[f - 2]),
              d = g.getVectorToPoint(d);
            return d.getLength() > c ? (c = 2 < f ? (new p(a.x[f - 3], a.y[f - 3])).getVectorToPoint(g) : new r(0, 0), a = .35 * d.getLength(), g = d.angleTo(c.reverse()), f = n.angleTo(d.reverse()), c = (new r(c.x + d.x, c.y + d.y)).resizeTo(
              Math.max(.05, g) * a), n = (new r(d.x + n.x, d.y + n.y)).reverse().resizeTo(Math.max(.05, f) * a), n = new r(d.x + n.x, d.y + n.y), ["c", e(c.x, 2), e(c.y, 2), e(n.x, 2), e(n.y, 2), e(d.x, 2), e(d.y, 2)]) : ["l", e(d.x, 2), e(d
              .y, 2)]
          }

          function w(a, f) {
            var c = a.x.length - 1,
              d = new p(a.x[c], a.y[c]),
              n = new p(a.x[c - 1], a.y[c - 1]),
              d = n.getVectorToPoint(d);
            return 1 < c && d.getLength() > f ? (c = (new p(a.x[c - 2], a.y[c - 2])).getVectorToPoint(n), n = d.angleTo(c.reverse()), a = .35 * d.getLength(), c = (new r(c.x + d.x, c.y + d.y)).resizeTo(Math.max(.05, n) * a), ["c", e(c.x, 2), e(
              c.y, 2), e(d.x, 2), e(d.y, 2), e(d.x, 2), e(d.y, 2)]) : ["l", e(d.x, 2), e(d.y, 2)]
          }

          function g(a, f, c) {
            f = ["M", e(a.x[0] - f, 2), e(a.y[0] - c, 2)];
            c = 1;
            for (var d = a.x.length - 1; c < d; c++) f.push.apply(f, q(a, c, 1));
            0 < d ? f.push.apply(f, w(a, c, 1)) : 0 === d && f.push.apply(f, ["l", 1, 1]);
            return f.join(" ")
          }

          function y(a) {
            var f = ['\x3c?xml version\x3d"1.0" encoding\x3d"UTF-8" standalone\x3d"no"?\x3e', '\x3c!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"\x3e'],
              c, d = a.length,
              e, k = [],
              l = [],
              p = e = c = 0,
              u = 0,
              r = [];
            if (0 !== d) {
              for (c = 0; c < d; c++) {
                p = a[c];
                u = [];
                e = {
                  x: [],
                  y: []
                };
                var q, b;
                q = 0;
                for (b = p.x.length; q < b; q++) u.push({
                  x: p.x[q],
                  y: p.y[q]
                });
                u = simplify(u, .7, !0);
                q = 0;
                for (b = u.length; q < b; q++) e.x.push(u[q].x), e.y.push(u[q].y);
                r.push(e);
                k = k.concat(e.x);
                l = l.concat(e.y)
              }
              a = Math.min.apply(null, k) - 1;
              d = Math.max.apply(null, k) + 1;
              k = Math.min.apply(null, l) - 1;
              l = Math.max.apply(null, l) + 1;
              p = 0 > a ? 0 : a;
              u = 0 > k ? 0 : k;
              c = d - a;
              e = l - k
            }
            f.push('\x3csvg xmlns\x3d"http://www.w3.org/2000/svg" version\x3d"1.1" width\x3d"' + c.toString() + '" height\x3d"' + e.toString() + '"\x3e');
            c = 0;
            for (d = r.length; c < d; c++) e = r[c], f.push('\x3cpath fill\x3d"none" stroke\x3d"#000000" stroke-width\x3d"2" stroke-linecap\x3d"round" stroke-linejoin\x3d"round" d\x3d"' + g(e, p, u) + '"/\x3e');
            f.push("\x3c/svg\x3e");
            return f.join("")
          }

          function x(a) {
            return [E, y(a)]
          }

          function B(a) {
            return [C, l(y(a))]
          }
          var v = window;
          "use strict";
          ("undefined" != typeof exports ? exports : v).simplify = function(a, f, c) {
            f = void 0 !== f ? f * f : 1;
            if (!c) {
              var d = a.length,
                e, g = a[0],
                k = [g];
              for (c = 1; c < d; c++) {
                e = a[c];
                var l = e.x - g.x,
                  p = e.y - g.y;
                l * l + p * p > f && (k.push(e), g = e)
              }
              a = (g !== e && k.push(e), k)
            }
            e = a;
            c = e.length;
            var d = new("undefined" != typeof Uint8Array ? Uint8Array : Array)(c),
              g = 0,
              k = c - 1,
              q, r, b = [],
              h = [],
              t = [];
            for (d[g] = d[k] = 1; k;) {
              p = 0;
              for (l = g + 1; l < k; l++) {
                q = e[l];
                var m = e[g],
                  w = e[k],
                  v = m.x,
                  x = m.y,
                  m = w.x - v,
                  A = w.y - x,
                  y;
                if (0 !== m || 0 !== A) y = ((q.x - v) * m + (q.y - x) * A) / (m * m + A * A), 1 < y ? (v = w.x, x = w.y) : 0 < y && (v += m * y, x += A * y);
                q = (m = q.x - v, A = q.y - x, m * m + A * A);
                q > p && (r = l, p = q)
              }
              p > f && (d[r] = 1, b.push(g), h.push(r), b.push(r), h.push(k));
              g = b.pop();
              k = h.pop()
            }
            for (l = 0; l < c; l++) d[l] && t.push(e[l]);
            return a = t, a
          };
          if ("function" !== typeof l) var l = function(a) {
            var e = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\x3d".split(""),
              c, d, g, k, l = 0,
              p = 0,
              q;
            q = [];
            do c = a.charCodeAt(l++), d = a.charCodeAt(l++), g = a.charCodeAt(l++), k = c << 16 | d << 8 | g, c = k >> 18 & 63, d = k >> 12 & 63, g = k >> 6 & 63, k &= 63, q[p++] = e[c] + e[d] + e[g] + e[k]; while (l < a.length);
            q = q.join("");
            a = a.length % 3;
            return (a ? q.slice(0, a - 3) : q) + "\x3d\x3d\x3d".slice(a || 3)
          };
          var E = "image/svg+xml",
            C = "image/svg+xml;base64";
          if ("undefined" === typeof k) throw Error("We need jQuery for some of the functionality. jQuery is not detected. Failing to initialize...");
          v = k.fn.jSignature;
          v("addPlugin", "export", "svg", x);
          v("addPlugin", "export", E, x);
          v("addPlugin", "export", "svgbase64", B);
          v("addPlugin", "export", C, B)
        })(jQuery);
        (function(k) {
          k(document).ready(function() {
            k("Textarea[signature]").each(function() {
              var r = k(this),
                p = k("\x3cdiv\x3e");
              p.addClass(r.attr("class").replace("XTextArea", "XSignature"));
              p.attr("style", r.attr("style"));
              p.css("color", "blue");
              r.hide().attr("force_valdation", "true");
              r.after(p);
              p.prop("mel", r).jSignature().on("change", function() {
                var e = k(this),
                  g = e.jSignature("getData", "image");
                e.prop("mel").val(g).validate()
              });
              p.jSignature("setData", "data:" + r.val());
              var e = k("label", r.parent()),
                q;
              0 < e.length && (e.hasClass("label-top") ? q = "label-top" : e.hasClass("label-left") ? q = "label-left" : e.hasClass("label-right") ? q = "label-right" : e.hasClass("label-bottom") && (q = "label-bottom"));
              e = k("\x3cdiv\x3e").addClass("xm-del-button-container").addClass(q);
              k("\x3cdiv\x3e").addClass("xm-del-button-icon dyn-del-button").addClass(q).appendTo(e).prop("mel", r).click(function() {
                p.jSignature("reset");
                k(this).prop("mel").clear()
              });
              p.after(e)
            })
          })
        })(jQuery);
        /*040-autosize.js*/
        (function(h, c) {
          if ("function" === typeof define && define.amd) define(["module", "exports"], c);
          else if ("undefined" !== typeof exports) c(module, exports);
          else {
            var g = {
              exports: {}
            };
            c(g, g.exports);
            h.autosize = g.exports
          }
        })(this, function(h, c) {
          function g(a) {
            function n(l) {
              var b = a.style.width;
              a.style.width = "0px";
              a.offsetWidth;
              a.style.width = b;
              a.style.overflowY = l
            }

            function b(a) {
              for (var b = []; a && a.parentNode && a.parentNode instanceof Element;) a.parentNode.scrollTop && b.push({
                  node: a.parentNode,
                  scrollTop: a.parentNode.scrollTop
                }),
                a = a.parentNode;
              return b
            }

            function d() {
              if (0 !== a.scrollHeight) {
                var l = b(a),
                  e = document.documentElement && document.documentElement.scrollTop;
                a.style.height = "";
                a.style.height = a.scrollHeight + c + "px";
                g = a.clientWidth;
                l.forEach(function(a) {
                  a.node.scrollTop = a.scrollTop
                });
                e && (document.documentElement.scrollTop = e)
              }
            }

            function f() {
              d();
              var b = Math.round(parseFloat(a.style.height)),
                e = window.getComputedStyle(a, null),
                c = "content-box" === e.boxSizing ? Math.round(parseFloat(e.height)) : a.offsetHeight;
              c < b ? "hidden" === e.overflowY && (n("scroll"), d(), c = "content-box" === e.boxSizing ? Math.round(parseFloat(window.getComputedStyle(a, null).height)) : a.offsetHeight) : "hidden" !== e.overflowY && (n("hidden"), d(), c =
                "content-box" === e.boxSizing ? Math.round(parseFloat(window.getComputedStyle(a, null).height)) : a.offsetHeight);
              if (h !== c) {
                h = c;
                b = p("autosize:resized");
                try {
                  a.dispatchEvent(b)
                } catch (u) {}
              }
            }
            if (a && a.nodeName && "TEXTAREA" === a.nodeName && !k.has(a)) {
              var c = null,
                g = null,
                h = null,
                q = function() {
                  a.clientWidth !== g && f()
                },
                m = function(b) {
                  window.removeEventListener("resize", q, !1);
                  a.removeEventListener("input", f, !1);
                  a.removeEventListener("keyup", f, !1);
                  a.removeEventListener("autosize:destroy", m, !1);
                  a.removeEventListener("autosize:update", f, !1);
                  Object.keys(b).forEach(function(c) {
                    a.style[c] = b[c]
                  });
                  k.delete(a)
                }.bind(a, {
                  height: a.style.height,
                  resize: a.style.resize,
                  overflowY: a.style.overflowY,
                  overflowX: a.style.overflowX,
                  wordWrap: a.style.wordWrap
                });
              a.addEventListener("autosize:destroy", m, !1);
              "onpropertychange" in a && "oninput" in a && a.addEventListener("keyup", f, !1);
              window.addEventListener("resize", q, !1);
              a.addEventListener("input", f, !1);
              a.addEventListener("autosize:update", f, !1);
              a.style.overflowX = "hidden";
              a.style.wordWrap = "break-word";
              k.set(a, {
                destroy: m,
                update: f
              });
              (function() {
                var b = window.getComputedStyle(a, null);
                "vertical" === b.resize ? a.style.resize = "none" : "both" === b.resize && (a.style.resize = "horizontal");
                c = "content-box" === b.boxSizing ? -(parseFloat(b.paddingTop) + parseFloat(b.paddingBottom)) : parseFloat(b.borderTopWidth) + parseFloat(b.borderBottomWidth);
                isNaN(c) && (c = 0);
                f()
              })()
            }
          }

          function r(a) {
            (a = k.get(a)) && a.destroy()
          }

          function t(a) {
            (a = k.get(a)) && a.update()
          }
          var k = "function" === typeof Map ? new Map : function() {
              var a = [],
                c = [];
              return {
                has: function(b) {
                  return -1 < a.indexOf(b)
                },
                get: function(b) {
                  return c[a.indexOf(b)]
                },
                set: function(b, d) {
                  -1 === a.indexOf(b) && (a.push(b), c.push(d))
                },
                delete: function(b) {
                  b = a.indexOf(b); - 1 < b && (a.splice(b, 1), c.splice(b, 1))
                }
              }
            }(),
            p = function(a) {
              return new Event(a, {
                bubbles: !0
              })
            };
          try {
            new Event("test")
          } catch (a) {
            p = function(a) {
              var b = document.createEvent("Event");
              b.initEvent(a, !0, !1);
              return b
            }
          }
          var d = null;
          "undefined" === typeof window || "function" !== typeof window.getComputedStyle ? (d = function(a) {
            return a
          }, d.destroy = function(a) {
            return a
          }, d.update = function(a) {
            return a
          }) : (d = function(a, c) {
            a && Array.prototype.forEach.call(a.length ? a : [a], function(a) {
              return g(a, c)
            });
            return a
          }, d.destroy = function(a) {
            a && Array.prototype.forEach.call(a.length ? a : [a], r);
            return a
          }, d.update = function(a) {
            a && Array.prototype.forEach.call(a.length ? a : [a], t);
            return a
          });
          c.default = d;
          h.exports = c["default"]
        });
        /*040-clientscript-min.js*/
        /*

         autoNumeric.js
         @author: Bob Knothe
         @author: Sokolov Yura
         @version: 1.9.26 - 2014-10-07 GMT 2:00 PM

         Created by Robert J. Knothe on 2010-10-25. Please report any bugs to https://github.com/BobKnothe/autoNumeric
         Created by Sokolov Yura on 2010-11-07

         Copyright (c) 2011 Robert J. Knothe http://www.decorplanit.com/plugin/

         The MIT License (http://www.opensource.org/licenses/mit-license.php)

         Permission is hereby granted, free of charge, to any person
         obtaining a copy of this software and associated documentation
         files (the "Software"), to deal in the Software without
         restriction, including without limitation the rights to use,
         copy, modify, merge, publish, distribute, sublicense, and/or sell
         copies of the Software, and to permit persons to whom the
         Software is furnished to do so, subject to the following
         conditions:

         The above copyright notice and this permission notice shall be
         included in all copies or substantial portions of the Software.

         THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
         EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
         OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
         NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
         HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
         WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
         FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
         OTHER DEALINGS IN THE SOFTWARE.
        */
        (function(a) {
          a.reject = function(c) {
            var d = a.extend(!0, {
              reject: {
                all: !1,
                msie: 6
              },
              display: [],
              browserShow: !0,
              browserInfo: {
                chrome: {
                  text: "Google Chrome",
                  url: "http://www.google.com/chrome/"
                },
                firefox: {
                  text: "Mozilla Firefox",
                  url: "http://www.mozilla.com/firefox/"
                },
                safari: {
                  text: "Safari",
                  url: "http://www.apple.com/safari/download/"
                },
                opera: {
                  text: "Opera",
                  url: "http://www.opera.com/download/"
                },
                msie: {
                  text: "Microsoft Edge",
                  url: "http://www.microsoft.com/windows/Microsoft-edge/"
                }
              },
              header: "Did you know that your Internet Browser is out of date?",
              paragraph1: "Your browser is out of date, and may not be compatible with our website. A list of the most popular web browsers can be found below.",
              paragraph2: "Just click on the icons to get to the download page",
              close: !0,
              closeMessage: "By closing this window you acknowledge that your experience on this website may be degraded",
              closeLink: "Close This Window",
              closeURL: "#",
              closeESC: !0,
              closeCookie: !1,
              cookieSettings: {
                path: "/",
                expires: 0
              },
              imagePath: "./images/",
              overlayBgColor: "#000",
              overlayOpacity: .8,
              fadeInTime: "fast",
              fadeOutTime: "fast",
              analytics: !1
            }, c);
            1 > d.display.length && (d.display = ["chrome", "firefox", "safari", "opera", "msie"]);
            a.isFunction(d.beforeReject) && d.beforeReject();
            d.close || (d.closeESC = !1);
            var e = function(b) {
                var c = b[a.layout.name],
                  d = b[a.browser.name];
                return !!(b.all || d && (!0 === d || a.browser.versionNumber <= d) || b[a.browser.className] || c && (!0 === c || a.layout.versionNumber <= c) || b[a.os.name])
              },
              l = function(a) {
                switch (a) {
                  case "chrome":
                    return "data:image/gif;base64,R0lGODlhZABkAPcAAOg7MzaMxfrTDOWzM1WzWe5bTFKqV+pEOkykVoi64viDbquZbfTMEvXLG0aeVeq7LSeCutSnOe9gUJKklLHXs3CYc/Pu061IKe7u7nSs2+np6exSRXbHdlWa0lm9W8vJx2yuT7Krlet4KPHEJOnOzUOTzebm5hVyrLZ6eLiYlfFsWmSi1tzc2/T09I7LkKXJ5CR8svLy8qZlOutNQVrAW/zXAvzWBsO6uNLh7Lm7t7GnfvbODHmw3e6SjfJxXfPs61qd09wzK7SqpezIHMTZ6uXr9Fa4WvXrrvDw8PT9/epIPoy1zdBGNs3DKfXbTOd1atfh2cOCedTU0+g1LbTS6om3K6bCMPjREUmVz/Ty5u9kU9/g4GSnZsWuQvdXSPN1YfP3/Fi6WoOchPzcKPR6ZY6CRPr//0qxXNksJf7cD+qqqrOZTrqzrecxNe7AJ6uzrMCKhHubTYm0Qs/LFEGSU/bVDfLr8Z7G5WCxaP/jBe1WSO3x+rDM4fTdd8TBv17LYMRQQLinW/36+Wum2Gil1+QuKfLRE/dDOsbV4PBoVm+p2aGtovPIH16g1D2QylO/U/x+adIkHvPCLVSXv8Nxae3Cv1TKXu64NPfOFv3aG+/p7sNkXfM7NVWNYWyhxfj19eg1NvN+aflNQeLl5vnkbf3SH+XQEeZaU//9+/b49/r49lbHXeTq788sI/j5/lrBW//ZFVbAVsQ/K/nNHVOwWOvr68ndyv37/f10YOCpNPlkU/vNJfvKLP1sWurm7Pt7Zi6HwP79/vbWA13EX/n5+FzBXuk5OUerUVq5Xvn9/elAN02Xz/7ZBF7JYOHm6vTAMlm+W9jY13+14PvUB1nDXOM3MPTv8P/bAEKRxM/OzNLQ0FCpSfHw9fD09vj46/lgUOzJNW6OPtAcGPLJFe/FGux9SPLcjN9EObbNesieQfHf32ynzqLG3Lg1IICvzVCY0O3CDmafw/Hx8fLy8ezTCvvSAPnYBvfJKfjEI+Pj42K4WP/eCVe2Wf3YAFvBW/X19SH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMTQgNzkuMTUxNDgxLCAyMDEzLzAzLzEzLTEyOjA5OjE1ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjdENUJCNDc5QTU1MTExRTM4OEI5QTE3NUVDREY4MDAxIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjdENUJCNDdBQTU1MTExRTM4OEI5QTE3NUVDREY4MDAxIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6N0Q1QkI0NzdBNTUxMTFFMzg4QjlBMTc1RUNERjgwMDEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6N0Q1QkI0NzhBNTUxMTFFMzg4QjlBMTc1RUNERjgwMDEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj39vX08/Lx8O/u7ezr6uno5+bl5OPi4eDf3t3c29rZ2NfW1dTT0tHQz87NzMvKycjHxsXEw8LBwL++vby7urm4t7a1tLOysbCvrq2sq6qpqKempaSjoqGgn56dnJuamZiXlpWUk5KRkI+OjYyLiomIh4aFhIOCgYB/fn18e3p5eHd2dXRzcnFwb25tbGtqaWhnZmVkY2JhYF9eXVxbWllYV1ZVVFNSUVBPTk1MS0pJSEdGRURDQkFAPz49PDs6OTg3NjU0MzIxMC8uLSwrKikoJyYlJCMiISAf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\x3d";
                  case "firefox":
                    return "data:image/gif;base64,R0lGODlhZABkAPcAAP/mBRd1t6SpYuFiJt1VJsQ6KMVlL5ONjeuXJEa867i4uDGWzhllp8/o9BVAd/HQsxiGxORsJhc2a/3kTgGj2ozT8slAKOLi4v/94gmb1dRvVi6j2PzaA/SzGhslVPDXyfnMR+BdJvHx8eVxJ7kpKKCgoNPT02vJ8g1KiP7oMo14eNVMJ/70t9zc3Cu25zi56fnNkv3401S/7Ru05qjY7t9YJv/0powrMvadG+ivlwhVl/eWI8HBwe2dWuny9fapGAGr4OeSaihyo1i45+3t7f3od/3slf7oZemDJvrXNKyQNfjDE74yKCiIvjIuTu2gIRRXlvTr5ejo6BFHg8SnOuZ8J7rj9YJQUeqOJRQbTPXOccnJyfnOCUiKsUal13QuOup7JbBVMR2Ryrx3NPGtUu+qH49+TexvI/7th+6refamJOtzJduXLFBtg0krQ2pbWP/6wndrbZRNN8CTZtHMrXhDPelqJfq5JGPE79C4S//xmfzvoqVvSm2q0f/+7v///B+b0fCHIw6x5ey9nhyl2fRzIFCBlFVLTdG4GtdQJxCMydJKJ/T085WutclRO6okKP/5hQ+UznHM8w9kp6xsZytcjcvMkfjnsoNrTOaBJ/Li1+b66OmDSM+2p8ZHMbazj/H7/hJdnxRusMMqKcG6aKW60WaQkcxVJyux3K2vrdpSJ/a7ExRQjKqVk2a85dJRKDtObNdOJ2mtitvdvNNgPQhnsum6FPbpyeJrJxd+vuOzKwp1vf7vcuiIJrLEzOd3J+B4NqBaW+yIM3rH7wZAhEqy49paKVmcwTp4obY8L+9rI9VhKBwvYN1PKwJIjvX06e/z9Tqs4c1FKB6v4eKWfwKY3PTw7u97Jds/KKQuL9BIJ9RZJ9dNHvKWMzMbRJbF4c/Qz6wZKt+CX+1uMt3w+OheIMvlyq+6v+NmJgtPjg+r3OR1J+rKG+7pqICcp+TptoqqedfX19jGSNPKcRGnzevdh5A+OObuw+aRPMo3KmmCgMOKhtLd5Vy7rmGQsfX19SH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMTQgNzkuMTUxNDgxLCAyMDEzLzAzLzEzLTEyOjA5OjE1ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkQ4OTdGNTRCQTU1MDExRTNCMzVBRkQ4OTNGRDI2QzQ5IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkQ4OTdGNTRDQTU1MDExRTNCMzVBRkQ4OTNGRDI2QzQ5Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RDg5N0Y1NDlBNTUwMTFFM0IzNUFGRDg5M0ZEMjZDNDkiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RDg5N0Y1NEFBNTUwMTFFM0IzNUFGRDg5M0ZEMjZDNDkiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj39vX08/Lx8O/u7ezr6uno5+bl5OPi4eDf3t3c29rZ2NfW1dTT0tHQz87NzMvKycjHxsXEw8LBwL++vby7urm4t7a1tLOysbCvrq2sq6qpqKempaSjoqGgn56dnJuamZiXlpWUk5KRkI+OjYyLiomIh4aFhIOCgYB/fn18e3p5eHd2dXRzcnFwb25tbGtqaWhnZmVkY2JhYF9eXVxbWllYV1ZVVFNSUVBPTk1MS0pJSEdGRURDQkFAPz49PDs6OTg3NjU0MzIxMC8uLSwrKikoJyYlJCMiISAf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\x3d";
                  case "gcf":
                    return "data:image/gif;base64,R0lGODlhZABkANU/AFKjqfr69bemW2lqcanLbpWukabL5eemY9KRkTxolOzGgcp2hofUkahQd/r10evsstvZ1D5aX8Vdcnatf0mEqkmk4LDkssnortfBc9DEjurUhSyN1nWmU6uqQPTmeJ3Ulc/GvHmFgPXlja29qnaMUoPAhttwO3tDVpFBbV+ade/arm3FzITdxr7Y7nJwRLjBStLn9DqHfObYaJ/fpYO/YW0vP92MSIuqtj9zVtnOS8bZkrnVdamPSfjlYUBCTf///yH5BAEAAD8ALAAAAABkAGQAAAb/wJ9wSCwaj8ikcslsOp/QqHRKrVqv2Kx2y+16v+CweEwum8/o9DLAdrgf8IeDrVa3HSKNRsHv9+d1ZHd5ewoaKnNsAQ6FKgGBTIqSk0iLDiqEh4lHbHyOkEWSEBAgpaano5OWIpmba3yPoIqkIAi2t7i5CKUQDg+sehqATwEKKoGztbrLywcKGAcYHsKxUSoKdgGkzNy6B9823wcgEHRRDthnbNu2CwsI7u4SDScnNfX49SbgNv02uOTMOSmGJkCtePIWSLBX4x4KCe5yhTNhwh+9d/F2lav2Sh0IhRDfIWBY46FIbzYoqqxIr+GJkO9ACFRCUJBBEBJy2hpQr0aD/5PNUq40cXIBioY1IEJEUC6ShjFsQBRIUSDnAp71fiJc1m+oiWVGkf6UsGumkQDHwmgbUWDAAFv5UCDMiOuA0JVA4c092jCnBJkci7hRC2KEhRBuQ/R86FfhXHd2veZ97K4BUsZMAwtBq1mLwRkfRgxA7IMnY78wEUYeipEyQr8MX5JtGkpDZywGPzAITXo0gnmorYb8RjGc3X96XYNEzTcpWbNov+T+8MGChQg+IoSw1aB7g+ASjIvzc6pdPPDzvDfXGfjBbSu5S3yYYWEC9gEGRhhF4b27hH3G+MEHBqeYYktw/SW43l8cmYUbBCOUIJ8FomEXwgj6oaChht+Fo//CNfzYwEMIJIpkygjwJKhid+stQJt0EJawm3Vu4aDdDWxtqCGAIKYkoohuBenWCRdiiOKK/W3o0nPvXRFAhAxMGOQEiN1gZQMahufMNULx4CUJQgqJDwJGIoAklhsy9J1M0oEgYZQzIDbADROkEIGVN4SAQkVbKkCRl18mRoGQEQwQQT1z4njDmRqesF5ZXawln4QfJEbnBDHMGcIN/Wx5wJ88CCAADxRQkEAC2PmQXQSnouqWojcMoGCaPd0zW5NSPCnhrji4lcKvE0yAw6YZQGPMp4CKSiqqCVAAAAByqspqAkHieQN/2OqIQq1JLcCmZ4VJOEEJKeCAQwy/pvD/LAAkZOCuMRiY4KWoo1LA6goGtNCCAfzmd4Oprb5qpZ7a6sjtrZ5FuGsJ5uKQ7q8AlECAAO5eI2+oyqJagb4cc9yvASucamqheBJcMD5IQfStk+HuWq656KZLwA470CDAh3/SK4CpN3Tss74fi+xqmGI6ym0NC2TwYhW6istwwzGnQAPNO+iQAQgYiIhxAQA0+/PX/YZc6qkRlG12oUWTFBOukUA4bgnBNnwuulNT/QAEPGCAwaiidp0Av1//3K+pALdqeNmq+oByQw3woDTbNLk5wQfBvgyz1ATMXLUvouodaggbJFBBvh3DYLrpHQdd6tiGo3p2qj7cc8ICAqw8/0XTlD8NNQ2ZZ77DBQ94MOrePJDQ7N+k63v66T73K3KpKwCweutnJ16DC45DnsSTbwcbgdwc9D7zBTpoILwAGHjZKgWAc7w86qnn2zXAN7DAwgp1su662aqe4MLjVFjL5OBmp4ZJjXeZ08EFZCADEdCLBwNYX/uU977m8esGx0vABOzHAgZ4sHIh2B/sXEAg7Z1FcpQTVtkcRoMWEoAGCtyBDKbRAVG5YFoJ2MDHSge/fX3MABgEWAo4KKEWtjBYIeCfqgZQOxOGQmFwU+H3jNjC3+3gBQ0UQQ15sKrWPc9Z61rd6kLXLBwCgINRoiINOMDGJCbOBRRzIhG4Jy77fP+PA2rUwRVzMEMtCgA7ZWvVBga5gQoYsgIrSOQKDnnIQk4vAUO0HwPUuEY2koAELlii4yAQwBF0z454pCLNXvACPrKiAyQAJA5zSEhGurIChBxk4RJwRkmqkY2WvKQLdpm3pT0BQimoYwRIwEYjEkAHBCAlFkUgPFRJC4etfGUjY7mBWdayg5TEpS53qbcS5gqYURQWLo2oR2XmYAce8ICdEpC4aVGzkK985ywTsAIiUhGXudwlCfVmu4EUJpjBmgA+XXhFZb5AhjoAAOKkdap3OlSerUNjNrWJyV2iz5tRMMgIABosfOJRBwZV5g4S6TqGsvKhD53nNT14T4pWFI7//JTjDzRKlWBVEpc7SGZIXzCB6MVgodBEKURbV09btjSXL71oBmRK0wLAjQADLWhIaQCA6AHARtjxolAJOc9mFXWSRvToJbcJU4xCgaZFhCouk9mBnaorjKyK6ypLJU/9uY5aN7DADEBDyZuSFXsx/eZU5DOzcRKgA201qLpiEIN1xaCMSwySFw/3OkOF4AKY1UEONrvZnSqTXt3sZxPYMFhkqjV8L0CsQTnAWACgK4zNyo6QSETb2hItMXLwRQ92y9veMvC33dTb1WQ6U0+WQI8vxONhVavMFDD2uc9KZNfKdtvqhikEuf1Fb7fbg98yMLgYAGCuRvCBY+Z0jWxl/+4LWOva5zZWkQrVjnWtW4Dc4oG72/WuDMCrtACCAJk6MC3vEJvY1LrXvVWFr3ZINN8wgcANbmAmfn0LXP4Sd6YQQGbVMkdKAifWuQdubYITGYKplLgAtL1tibNbgAJwoAOA4gGMYxxjXWIysLd7gGnLmVoPGzjEIh5xiS/AlhajeLYFGMGDIdxi0OygvL0LK1JfSsLh3m4RyC0njD3cARCHeF3RjV4IINRiOZEDAnCAMIQfQALdePDNUYrilPW5T/Fm1A0q0PAVt0xg1gK5sWBOsFvKPJpeqFnNv8AAB9z85oXJOZ/6LNZSr/wG015Rxh6em3vnFmi4MrgAhj60L/+Y6QESEGAGcPbgwgIqULJSzMq5UjNyL+1hDmj6y51+FjsHMIJDx4EV6Sw1DVCd6jjXsaNkFa4vR2uJSneYyzD7M6ADXSrtjOAXrAB2sD0gAxIMu9iqPrZAOZBUHN/50CDlMoy/d2sEd3p1LJjBBEjAgx0Am9QEuOSpwR3ucLb6pZJediSaDWEVLDfT7Jb26p4FvRZYxwKUG6vEwzefve612LtiNbn1KVzRMlvUD8jAllNr6xW2m7ELX90KHs5yvVKHOvTRq8UvDueMs3qbeQuvwAdOcDdoQACq7UCdTA4zTYuxVCx4OGaXzvSWP3yvjG60v8kqaY/zHOQ/93Cd7Cj/t3M1a3pnZDnTx05260A91Taf9zbDq3PiSsLXewA6YitnJ3ab64u0tJ/SmR6Hvjdd5lE3duXW3vELv13N19DA3jpQgID+yuTTUnm8Y24Bvvfd70sHfM3rmIJtXtSsuVLEoUXAB8UzntWPP5vIirrXvWP28pjHrMyJ3e86dd6i3VzqhWd6+FGXXgMZMLLj6x7IvE+e8paH/QP+DhqpE3Dtim87fHr/gEIYgsxOHb7qKdBBBsy88ktXPhwyr/k4D76iGHiG9Kcv+jcIaC0tDuevsHqvN1vcOsmP/QXM7mbO23gPhYcbk+B+frAORcZ53oMdFLACMuJB9zd2+sd/4RYs/xKHAQAYXlaXUapwCX7wCfAnfFtXAFhFAW8CZ60HfmV3duaHbCRQAIUQgFmgCovwAB04BB/oVOF0ZBFAAW9Tgg44cxY3HxMYUORGAhSjB+pnZwI4gNfQBw8wR09iZCBYJ4gRAgLVQrvCbyvIavPGARmAhBeohEv4djTYB2lhgxolhVJYhSMgAjVDRY4mbqxGAMFQh8A3XLtXCTKIDmaoGTeohimQGMy0WQzUOyVAA04jH3a4iArgLhvhBTK4CNanAJ0RFUUGiCTCAznQAx7AXdu2iKDYiIABBpGIB37gANuThlLIFl5yIb+wbaQGDKC4B3pwNTCQhzynCmXYB++hCKKFkWQTIwAEQCUk0obZdoyzWIuloAhQUYqTSIm3IXqKJyqXmAIh8CvXVn2ZAIpX84hmEImLICCGkAiHZ32OUBiX2GLpEgIZ8At2eDUB4SDNGIm7KI72qADDkAxGso9KNgr+uBHy+I3gyIf32IeVCI6qAAqhgJAP0IQd6AoKGSkIeQeSEJHzOJEWqQ4ImZEc2ZEe+ZEgGZIiOZIkWZImeZIRGQQAOw\x3d\x3d";
                  case "konqueror":
                    return "data:image/gif;base64,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\x3d";
                  case "msie":
                    return "data:image/gif;base64,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";
                  case "opera":
                    return "data:image/gif;base64,R0lGODlhZABkAPcAAMIODtMSEvpiZPhLTJICA6sJCYoDA+vr67YoKLkAALoMDKMDBfXy8rIKCvEYGMwQELMAAIMBAe3b23l3d8yamuXl5dvb2+RYWNXV1dOqqpuamqkaG1dXV+Y8PPbb29WNjeK3t7QZGfvExf6LjffS093Cwru7u+gWFoiHh+UVFcTExKoAAcQ8PP27vfU0NdiWluEUFaurq/QqKv2trvTt7ZKRke0XF/6xs/2Ym8InJ+vR0fMhIf6CheTCws7OzuOqqv5+gNcSEkVFRfdBQvQtLfUwMeeXl00oKLw0NP2SlMiFhvY9PfXJyZ0JCrRWVrJIScRkZNtERKcICP12ebKysjs0NOdMTPlUVv16fdm3t6cqK/MeHvdFRvHn5/PBwfY5OZptbvlZWurJyfxucPbl5vDw8NMmJv1ydL8CA/Lq6vtlZ94UFH0AAI4lKe3i4vQmJvpcXvxwcv2ho6dFR5cFBfX09PhQUto3N/NbXflCQ/a8vPtqbKSkpPlWWPtoashZWeHMzPpeYP15e95OTv18f+piY5gVF/fh4ZwGBsh4eMgPD/6AguwnJ/lSVP2VmNZ+fvxsbuwZGaoEB/eTlPptb/x0dv2mqPlaXPMkJW1tbZ8AAKQ1Nf6Ehv6Hiv6PkfPs7Pbq6veKi/JUVNUbG/hOT5gAAPhJStsTE5kIC/dGSJ4BBMISEfdCQ70fHrMGB6EHB/pxc5MHCPQrLP+eoPU3N4QJDPUvL3YOEa9VVv6+v/UyM1oYGfnNzmEWGPtzde8XF/I2NosND/Vub/epqvMfIOkwMPl8ffl4eZkCBPY7PPQnKPY+P7gFBvnV1vfX2PMjI/Hj4/uChPtpa/Xw8OAfHskgILBfYH4SFYsIDLkSE8QICOh6evWzs/q2uGs8PODW1ueCgp2Li/Z1dvR6evIbHPIaGvVXWM8REawSEmZCQvpgYvZnaL1OT8VPT/jc3fMpKfg0NfUdHrwGBrtpafMkJOsXF/FGR9ZUVPE8PaMIB/GCgvqCg/MgIIoUF4AAAPX19SH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMTQgNzkuMTUxNDgxLCAyMDEzLzAzLzEzLTEyOjA5OjE1ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkI5MDJCMTQ1QTU1MjExRTM5QzEzQTc3QzRFQzlGRDlCIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkI5MDJCMTQ2QTU1MjExRTM5QzEzQTc3QzRFQzlGRDlCIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QjkwMkIxNDNBNTUyMTFFMzlDMTNBNzdDNEVDOUZEOUIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QjkwMkIxNDRBNTUyMTFFMzlDMTNBNzdDNEVDOUZEOUIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj39vX08/Lx8O/u7ezr6uno5+bl5OPi4eDf3t3c29rZ2NfW1dTT0tHQz87NzMvKycjHxsXEw8LBwL++vby7urm4t7a1tLOysbCvrq2sq6qpqKempaSjoqGgn56dnJuamZiXlpWUk5KRkI+OjYyLiomIh4aFhIOCgYB/fn18e3p5eHd2dXRzcnFwb25tbGtqaWhnZmVkY2JhYF9eXVxbWllYV1ZVVFNSUVBPTk1MS0pJSEdGRURDQkFAPz49PDs6OTg3NjU0MzIxMC8uLSwrKikoJyYlJCMiISAf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\x3d";
                  case "safari":
                    return "data:image/gif;base64,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\x3d\x3d"
                }
              };
            if (!e(d.reject)) {
              if (a.isFunction(d.onFail)) d.onFail();
              return !1
            }
            if (d.close && d.closeCookie) {
              var g = "jreject-close",
                h = function(b, c) {
                  if ("undefined" != typeof c) {
                    var e = "";
                    0 !== d.cookieSettings.expires && (e = new Date, e.setTime(e.getTime() + 1E3 * d.cookieSettings.expires), e = "; expires\x3d" + e.toGMTString());
                    var l = d.cookieSettings.path || "/";
                    document.cookie = b + "\x3d" + encodeURIComponent(c ? c : "") + e + "; path\x3d" + l;
                    return !0
                  }
                  e = null;
                  if (document.cookie && "" !== document.cookie)
                    for (var l = document.cookie.split(";"), z = l.length, n = 0; n < z; ++n)
                      if (c = a.trim(l[n]), c.substring(0, b.length + 1) == b + "\x3d") {
                        e = decodeURIComponent(c.substring(b.length + 1));
                        break
                      } return e
                };
              if (h(g)) return !1
            }
            var k = '\x3cdiv id\x3d"jr_overlay"\x3e\x3c/div\x3e\x3cdiv id\x3d"jr_wrap"\x3e\x3cdiv id\x3d"jr_inner"\x3e\x3ch1 id\x3d"jr_header"\x3e' + d.header + "\x3c/h1\x3e" + ("" === d.paragraph1 ? "" : "\x3cp\x3e" + d.paragraph1 +
              "\x3c/p\x3e") + ("" === d.paragraph2 ? "" : "\x3cp\x3e" + d.paragraph2 + "\x3c/p\x3e");
            c = 0;
            if (d.browserShow) {
              var k = k + "\x3cul\x3e",
                p;
              for (p in d.display) {
                var m = d.display[p],
                  r = d.browserInfo[m] || !1;
                r && (void 0 == r.allow || e(r.allow)) && (k += '\x3cli id\x3d"jr_' + m + '"\x3e\x3cdiv class\x3d"jr_icon"\x3e\x3c/div\x3e\x3cdiv\x3e\x3ca href\x3d"' + (r.url || "#") + '"\x3e' + (r.text || "Unknown") +
                  "\x3c/a\x3e\x3c/div\x3e\x3c/li\x3e", ++c)
              }
              k += "\x3c/ul\x3e"
            }
            var k = k + ('\x3cdiv id\x3d"jr_close"\x3e' + (d.close ? '\x3ca href\x3d"' + d.closeURL + '"\x3e' + d.closeLink + "\x3c/a\x3e\x3cp\x3e" + d.closeMessage + "\x3c/p\x3e" : "") + "\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e"),
              q = a("\x3cdiv\x3e" + k + "\x3c/div\x3e");
            p = f();
            e = b();
            q.bind("closejr", function() {
              if (!d.close) return !1;
              a.isFunction(d.beforeClose) && d.beforeClose();
              a(this).unbind("closejr");
              a("#jr_overlay,#jr_wrap").fadeOut(d.fadeOutTime, function() {
                a(this).remove();
                a.isFunction(d.afterClose) && d.afterClose()
              });
              a("embed.jr_hidden, object.jr_hidden, select.jr_hidden, applet.jr_hidden").show().removeClass("jr_hidden");
              d.closeCookie && h(g, "true");
              return !0
            });
            var u = function(a) {
              if (d.analytics) {
                var b = a.split(/\/+/g)[1];
                try {
                  ga("send", "event", "External", "Click", b, a)
                } catch (t) {
                  try {
                    _gaq.push(["_trackEvent", "External Links", b, a])
                  } catch (w) {}
                }
              }
              window.open(a, "jr_" + Math.round(11 * Math.random()));
              return !1
            };
            q.find("#jr_overlay").css({
              width: p[0],
              height: p[1],
              background: d.overlayBgColor,
              opacity: d.overlayOpacity
            });
            q.find("#jr_wrap").css({
              top: e[1] + p[3] / 4,
              left: e[0]
            });
            q.find("#jr_inner").css({
              minWidth: 100 * c,
              maxWidth: 140 * c,
              width: "trident" == a.layout.name ? 155 * c : "auto"
            });
            q.find("#jr_inner li").css({
              background: 'transparent url("' + l("background_browser.gif") + '")no-repeat scroll left top'
            });
            q.find("#jr_inner li .jr_icon").each(function() {
              var b = a(this);
              b.css("background", 'transparent url("' + l(b.parent("li").attr("id").replace(/jr_/, "")) + '") no-repeat scroll left top');
              b.click(function() {
                var b = a(this).next("div").children("a").attr("href");
                u(b)
              })
            });
            q.find("#jr_inner li a").click(function() {
              u(a(this).attr("href"));
              return !1
            });
            q.find("#jr_close a").click(function() {
              a(this).trigger("closejr");
              if ("#" === d.closeURL) return !1
            });
            a("#jr_overlay").focus();
            a("embed, object, select, applet").each(function() {
              a(this).is(":visible") && a(this).hide().addClass("jr_hidden")
            });
            a("body").append(q.hide().fadeIn(d.fadeInTime));
            a(window).bind("resize scroll", function() {
              var c = f();
              a("#jr_overlay").css({
                width: c[0],
                height: c[1]
              });
              var d = b();
              a("#jr_wrap").css({
                top: d[1] + c[3] / 4,
                left: d[0]
              })
            });
            d.closeESC && a(document).bind("keydown", function(a) {
              27 == a.keyCode && q.trigger("closejr")
            });
            a.isFunction(d.afterReject) && d.afterReject();
            return !0
          };
          var f = function() {
              var a = window.innerWidth && window.scrollMaxX ? window.innerWidth + window.scrollMaxX : document.body.scrollWidth > document.body.offsetWidth ? document.body.scrollWidth : document.body.offsetWidth,
                b = window.innerHeight && window.scrollMaxY ? window.innerHeight + window.scrollMaxY : document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight,
                e = window.innerWidth ? window.innerWidth : document.documentElement && document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth,
                l = window.innerHeight ? window.innerHeight : document.documentElement && document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight;
              return [a < e ? a : e, b < l ? l : b, e, l]
            },
            b = function() {
              return [window.pageXOffset ? window.pageXOffset : document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollLeft : document.body.scrollLeft, window.pageYOffset ? window.pageYOffset : document
                .documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop
              ]
            }
        })(jQuery);
        (function(a) {
          a.browserTest = function(f, b) {
            var c = function(a, b) {
                for (var c = 0; c < b.length; c += 1) a = a.replace(b[c][0], b[c][1]);
                return a
              },
              d = function(b, d, f, h) {
                d = {
                  name: c((d.exec(b) || ["unknown", "unknown"])[1], f)
                };
                d[d.name] = !0;
                d.version = d.opera ? window.opera.version() : (h.exec(b) || ["X", "X", "X", "X"])[3];
                /safari/.test(d.name) ? (h = /(safari)(\/|\s)([a-z0-9\.\+]*?)(\;|dev|rel|\s|$)/.exec(b)) && h[3] && 400 > h[3] && (d.version = "2.0") : "presto" === d.name && (d.version = 9.27 < a.browser.version ? "futhark" : "linear_b");
                /msie/.test(d.name) && "X" === d.version && (b = /rv:(\d+\.\d+)/.exec(b), d.version = b[1]);
                d.versionNumber = parseFloat(d.version, 10) || 0;
                b = 1;
                100 > d.versionNumber && 9 < d.versionNumber && (b = 2);
                d.versionX = "X" !== d.version ? d.version.substr(0, b) : "X";
                d.className = d.name + d.versionX;
                return d
              };
            f = (/Opera|Navigator|Minefield|KHTML|Chrome|CriOS/.test(f) ? c(f, [
              [/(Firefox|MSIE|KHTML,\slike\sGecko|Konqueror)/, ""],
              ["Chrome Safari", "Chrome"],
              ["CriOS", "Chrome"],
              ["KHTML", "Konqueror"],
              ["Minefield", "Firefox"],
              ["Navigator", "Netscape"]
            ]) : f).toLowerCase();
            a.browser = a.extend(b ? {} : a.browser, d(f, /(camino|chrome|crios|firefox|netscape|konqueror|lynx|msie|trident|opera|safari)/, [
              ["trident", "msie"]
            ], /(camino|chrome|crios|firefox|netscape|netscape6|opera|version|konqueror|lynx|msie|rv|safari)(:|\/|\s)([a-z0-9\.\+]*?)(\;|dev|rel|\s|$)/));
            a.layout = d(f, /(gecko|konqueror|msie|trident|opera|webkit)/, [
              ["konqueror", "khtml"],
              ["msie", "trident"],
              ["opera", "presto"]
            ], /(applewebkit|rv|konqueror|msie)(\:|\/|\s)([a-z0-9\.]*?)(\;|\)|\s)/);
            a.os = {
              name: (/(win|mac|linux|sunos|solaris|iphone|ipad)/.exec(navigator.platform.toLowerCase()) || ["unknown"])[0].replace("sunos", "solaris")
            };
            b || a("html").addClass([a.os.name, a.browser.name, a.browser.className, a.layout.name, a.layout.className].join(" "))
          };
          a.browserTest(navigator.userAgent)
        })(jQuery);
        Function.prototype.bind || (Function.prototype.bind = function(a) {
          if ("function" !== typeof this) throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");
          var f = Array.prototype.slice.call(arguments, 1),
            b = this,
            c = function() {},
            d = function() {
              return b.apply(this instanceof c && a ? this : a, f.concat(Array.prototype.slice.call(arguments)))
            };
          c.prototype = this.prototype;
          d.prototype = new c;
          return d
        });
        window.File && (File.prototype.convertToBase64 = function(a) {
          var f = new FileReader;
          f.onload = function(b) {
            a(b.target.result)
          };
          f.readAsDataURL(this)
        });
        window.xima = window.xima || {};
        window.xima.validator = function(a) {
          this.init(a)
        };
        (function(a) {
          a.extend(xima.validator.prototype, {
            _form: null,
            _active: !0,
            _elements: {},
            _selector: "",
            _cssvalidate: "validating",
            _csserror: "error",
            _silent: !1,
            chain: {},
            _groupChain: {},
            _prompts: {},
            _meta: {
              textfield: {
                selector: "INPUT[type\x3dtext],INPUT[type\x3dpassword]",
                event: "blur"
              },
              textarea: {
                selector: "TEXTAREA",
                event: "blur"
              },
              checkbox: {
                selector: "INPUT[type\x3dcheckbox]",
                event: "change"
              },
              radio: {
                selector: "INPUT[type\x3dradio]",
                event: "change"
              },
              select: {
                selector: "SELECT",
                event: "change"
              },
              file: {
                selector: "INPUT[type\x3dfile]",
                event: "blur"
              },
              file2: {
                selector: "INPUT[type\x3dfile]",
                event: "change"
              },
              hidden: {
                selector: "INPUT[type\x3dhidden]",
                event: "change"
              }
            },
            _metaAllSelector: "INPUT[type\x3dtext],INPUT[type\x3dpassword],INPUT[type\x3dcheckbox].XCheckbox,TEXTAREA,.XSelect\x3ediv:first-of-type INPUT[type\x3dcheckbox],.XSelect\x3ediv:first-of-type INPUT[type\x3dradio],TABLE[type\x3dquest],SELECT,INPUT[type\x3dfile],.errorFunc",
            _inputRegExp: /(?:[s]|^)(INPUT|TEXTAREA|SELECT|TABLE)(?=[s]|$)/i,
            init: function(a) {
              this._rhmap = {};
              this._containerMap = {}
            },
            _attachValidation: function(b) {
              this._form = a("FORM.xm-form");
              this._elements = a(".XItem");
              for (var c in XM_FORM_VRULES) XM_FORM_VRULES[c] = eval(XM_FORM_VRULES[c]);
              this._form.on("submit", function() {
                var b = a(this).validate();
                b || a("Textarea, Input, Select", a(".error").first()).first().focus();
                var c = a.xutil.onsubmit(b),
                  f = b;
                void 0 != c && (f = !!c && b);
                f && a(".submit,button[type\x3dsubmit]").prop("disabled", !0);
                return f
              });
              this._bindValidations(this._form);
              this._initRequiredIf(this._form)
            },
            _initRequiredIf: function(b) {
              for (var c = a("[vrif]", b), d = 0; d < c.length; d++) {
                var e = a(c[d]),
                  f = a("#" + e.attr("vrif"));
                0 == f.length && (f = a('[xi\x3d"' + f + '"] INPUT'));
                var g = e.attr("vrif_c"),
                  h = e.attr("vrif_v");
                (f = this._checkFieldDependentState(f, g, h)) ? e.removeStar(): e.addStar()
              }
              b = a("[vrnotif]", b);
              for (d = 0; d < b.length; d++) e = a(b[d]), f = a("#" + e.attr("vrnotif")), 0 == f.length && (f = a('[xi\x3d"' + f + '"] INPUT')), g = e.attr("vrif_c"), h = e.attr("vrif_v"), (f = this._checkFieldDependentState(f, g, h)) ? e
                .addStar() : e.removeStar()
            },
            _bindValidations: function(b) {
              b = b || this._form;
              for (var c in this._meta) {
                var d = this._meta[c].event;
                this._elements[c] = a(this._meta[c].selector, b);
                this._elements[c].on(d, this._onValidate.bind(this))
              }
            },
            _onValidate: function(b) {
              this.chain = {};
              this._groupChain = {};
              a(b.target)._startSubValidation()
            },
            enable: function() {
              this._active = !0
            },
            disable: function() {
              this.hideAll();
              this._active = !1
            },
            hideAll: function() {
              for (var a in this._prompts) this._clearPromptById(a)
            },
            validate: function(a) {
              this.chain = {};
              this._groupChain = {};
              return this._validate(a)
            },
            _validate: function(b) {
              var c = !0;
              if (!this._active) return !0;
              if (!b.hasClass(this._cssvalidate) && 0 == a("." + this._cssvalidate, b).length) {
                var d = a(this._getAllSelector(), b);
                d.addClass(this._cssvalidate);
                c = d._startSubValidation() ? c : !1
              }
              return c = this._check(b) ? c : !1
            },
            _e: function(a) {
              return null !== a && void 0 !== a && "" !== a && 0 < String(a).trim().length
            },
            _getVal: function(a, c) {
              switch (c) {
                case "checked":
                  c = a.is(":checked") ? 1 : "";
                  break;
                case "checkbox":
                  c = this._getCheckedSum(a, c);
                  break;
                case "radio":
                  c = this._getCheckedSum(a, c);
                  break;
                case "TEXTAREA":
                  c = a.val().trim();
                  a.val(c);
                  break;
                case "text":
                  c = a.val();
                  0 < a.length && "SELECT" !== a[0].tagName && (c = c.trim(), a.val(c));
                  break;
                case "quest":
                  c = this._getQuestSum(a, c);
                  break;
                case "file":
                  c = a.next(".img-uploaded-preview").children("input");
                  c = 0 < c.length ? c.val() : a.val();
                  break;
                default:
                  c = a.val()
              }
              a.data("autoNumeric") && (c = a.autoNumeric("get"));
              return c
            },
            _hasVal: function(a, c) {
              switch (c) {
                case "quest":
                  c = this._getCheckedSum(a, c);
                  break;
                default:
                  c = this._getVal(a, c)
              }
              a.data("autoNumeric") && (c = a.autoNumeric("get"));
              return this._e(c)
            },
            _getInpVal: function(a, c) {
              var b = a.val();
              switch (c) {
                case "checkbox":
                  b = this._getCheckedVal(a, c);
                  break;
                case "radio":
                  b = this._getCheckedVal(a, c);
                  break;
                case "select":
                  b = this._getComboVal(a);
                  break;
                case "textarea":
                  b = this.text();
                  break;
                case "quest":
                  b = this._getQuestVal(a, c)
              }
              a.data("autoNumeric") && (b = a.autoNumeric("get"));
              return b
            },
            _getCheckedSum: function(b, c) {
              b = this._getContainer(b);
              b = a(":checked", b).length;
              return 0 >= b ? "" : b
            },
            _getQuestSum: function(b, c) {
              b = this._getContainer(b);
              var d = a(":checked", b).length;
              b.hasClass("CXTable") && a("TBODY TR", b).each(function(b, c) {
                0 >= a(":checked", c).length && (d = 0)
              });
              return 0 >= d ? "" : d
            },
            _getCheckedVal: function(b, c) {
              b = this._getContainer(b);
              var d = {};
              a(":checked", b).each(function(b, c) {
                b = a(c);
                d[b.val()] = a("label", b.parent()).text()
              });
              return d
            },
            _getQuestVal: function(b, c) {
              var d = {};
              a("TBODY TR", b).each(function(b, c) {
                a(":checked", c).each(function(c, e) {
                  d[b + "_" + a(e).val()] = "true";
                  d[a(e).val()] = "true"
                })
              });
              return d
            },
            _getComboVal: function(b) {
              var c = {};
              a('SELECT[name\x3d"' + b.attr("name") + '"] Option:selected', this._getContainer(b)).each(function(b, e) {
                b = a(e);
                c[b.attr("value")] = b.text()
              });
              return c
            },
            _getContainer: function(a) {
              if (a.hasClass("xm-item-div")) return a;
              var b = a.attr("id");
              if (b) {
                var d = this._containerMap[b];
                d || (d = (d = a.attr("org_name") || a.attr("name")) ? d : a.attr("xn"), d = this._containerMap[b] = a.first().parent().closest('DIV.dynamic-row, DIV.xm-item-div[xn\x3d"' + d + '"]'));
                0 >= d.length && (d = a.closest(".xm-item-div"));
                return d
              }
              d = (d = a.attr("org_name") || a.attr("name")) ? d : a.attr("xn");
              return a.first().parent().closest('DIV.dynamic-row, DIV.xm-item-div[xn\x3d"' + d + '"]')
            },
            isFormInput: function(a) {
              return this._inputRegExp.test(a[0].tagName)
            },
            replaceID: function(a, c) {
              return a
            },
            _check: function(b) {
              if (!b.hasClass("validate_in_progress")) {
                var c = b.attr("id");
                b.attr("org_id");
                var d = b.attr("idx");
                this._e(d) && c && (c = c.replace(/_\d+(_c_\d+)?$/, "$1"));
                c && (c = this.replaceID(c, b), this._clearPromptById(c), this._updateHifRoifForIdCached(c));
                var e = this._e(b.attr("force_valdation")) || this._e(b.attr("force_validation")) || this._e(b.attr("data-force-validation")),
                  d = b.attr("name"),
                  f = b.attr("vrif"),
                  g = b.attr("vrnotif"),
                  h = b.attr("data-x-type") || b.attr("type") || b.prop("nodeName"),
                  k = !0,
                  p = !e && (!c || !d || this._e(b.attr("readonly")) || this._e(b.attr("disabled")) || a.expr.pseudos.hidden(b[0])),
                  e = a("\x3cul\x3e").attr("role", "alert"),
                  m = this._e(b.attr("vr")),
                  d = b.attr("vgr");
                this._e(f) ? (m = a("#" + f), 0 == m.length && (m = a('[xi\x3d"' + f + '"] INPUT')), f = b.attr("vrif_c"), g = b.attr("vrif_v"), (f = !this._checkFieldDependentState(m, f, g)) ? (b.addStar(), m = !0) : (m = !1, d = "", b
                  .removeStar())) : this._e(g) && (m = a("#" + g), 0 == m.length && (m = a('[xi\x3d"' + g + '"] INPUT')), f = b.attr("vrif_c"), g = b.attr("vrif_v"), (f = this._checkFieldDependentState(m, f, g)) ? (m = !0, b
                .addStar()) : (m = !1, d = "", b.removeStar()));
                m && this._e(d) && (m = !1);
                if (p) return b.removeClass(this._cssvalidate), b.removeClass("validate_in_progress"), !0;
                var r = b.data("errorFunc") || [],
                  p = this._getVal(b, h),
                  q = b.attr("vcmn"),
                  u = b.attr("vcmx"),
                  x = b.attr("vmn"),
                  v = b.attr("vmx"),
                  t = b.attr("vmnl"),
                  w = b.attr("vmxl"),
                  z = b.attr("vfmx"),
                  n = b.attr("vfex"),
                  D = b.attr("vdt"),
                  F = b.attr("vrule"),
                  G = b.attr("vrmm"),
                  g = b.attr("veq");
                b.addClass("validate_in_progress");
                f = b.attr("error");
                null != f && "" != f && (k = !1, a("\x3cli\x3e").html(f).appendTo(e));
                for (f = 0; f < r.length; f++) {
                  var C = r[f]();
                  if (!0 === C || this._e(C) && this._e(p) && !1 !== C || !this.isFormInput(b) && this._e(C)) k = !1, !0 !== C && a("\x3cli\x3e").html(C).appendTo(e)
                }
                m && !this._e(p) && "file" !== h && (k = !1, a("\x3cli\x3e").html(XM_FORM_I18N.required).appendTo(e));
                this._e(q) && q > p && 0 != q && (this._e(p) || !window.XM_FORM_VERSION || 20151014153553 > window.XM_FORM_VERSION.timestamp) && (k = !1, a("\x3cli\x3e").html(XM_FORM_I18N.minCheckboxPre + q + XM_FORM_I18N.minCheckboxPost)
                  .appendTo(e));
                this._e(u) && u < p && 0 != u && this._e(p) && (k = !1, a("\x3cli\x3e").html(XM_FORM_I18N.maxCheckboxPre + u + XM_FORM_I18N.maxCheckboxPost).appendTo(e));
                this._e(x) && this._e(p) && (f = parseFloat(p.replace(",", ".")), parseFloat(x.replace(",", ".")) > f || isNaN(f)) && (k = !1, a("\x3cli\x3e").html(XM_FORM_I18N.min + x.replace(".", ",")).appendTo(e));
                this._e(v) && this._e(p) && (f = parseFloat(p.replace(",", ".")), parseFloat(v.replace(",", ".")) < f || isNaN(f)) && (k = !1, a("\x3cli\x3e").html(XM_FORM_I18N.max + v.replace(".", ",")).appendTo(e));
                this._e(t) && t > p.length && this._e(p) && 0 != t && (k = !1, a("\x3cli\x3e").html(XM_FORM_I18N.minSizePre + t + XM_FORM_I18N.minSizePost).appendTo(e));
                this._e(w) && w < p.length && this._e(p) && 0 < w && "file" != h && (k = !1, a("\x3cli\x3e").html(XM_FORM_I18N.maxSizePre + w + XM_FORM_I18N.maxSizePost).appendTo(e));
                if ("file" === h && (m && !this._e(p) && (k = b.parent(), k = 0 < a("div[u_idx]", k).length, a("\x3cli\x3e").html(XM_FORM_I18N.required).appendTo(e)), window.File && window.FileReader && window.FileList && window.Blob &&
                    b[0].files && b[0].files[0]))
                  for (var B, A, y, E, f = 0; f < b[0].files.length; f++) x = b[0].files[f].size, v = b[0].files[f].name, h = v.substr(v.lastIndexOf(".") + 1), m && 0 == x && (k = !1, t = XM_FORM_I18N.fileEmpty ? XM_FORM_I18N.fileEmpty :
                      "The file is empty", B || (B = !0, a("\x3cli\x3e").html(t).appendTo(e))), this._e(w) && w < v.length && this._e(v) && 0 < w && (k = !1, A || (A = !0, a("\x3cli\x3e").html(XM_FORM_I18N.maxFileNameSizePre + w +
                      XM_FORM_I18N.maxFileNameSizePost).appendTo(e))), this._e(z) && x > 1024 * z && (k = !1, y || (y = !0, a("\x3cli\x3e").html(XM_FORM_I18N.maxFileSizePre + z + XM_FORM_I18N.maxFileSizePost).appendTo(e))), this._e(n) &&
                    (x = a.map(n.split(","), function(a) {
                      a = a.trim().toLowerCase();
                      return a = "." == a.charAt(0) ? a.substr(1) : a
                    }), -1 == a.inArray(h.toLowerCase(), x) && (k = !1, E || (E = !0, a("\x3cli\x3e").html(XM_FORM_I18N.FileExtensionPre + n + XM_FORM_I18N.FileExtensionPost).appendTo(e))));
                "regexp" === D ? this._e(F) && !p.match(F) && (k = !1, a("\x3cli\x3e").html(String(G)).appendTo(e)) : this._e(D) && this._e(p) && (B = XM_FORM_PLUGIN_VRULES[D], this._e(B) ? (A = new RegExp(B.regex), this._e(A) && !p
                  .match(A) && (k = !1, a("\x3cli\x3e").html(B.errorMsg).appendTo(e))) : p.match(XM_FORM_VRULES[D]) || (k = !1, a("\x3cli\x3e").html(XM_FORM_I18N[D]).appendTo(e)));
                this._e(g) && (m = a("#" + g), y = m.attr("type") || m.prop("nodeName"), y = this._getVal(m, y), y != p && (k = !1, a("\x3cli\x3e").html(XM_FORM_I18N.equals).appendTo(e)));
                B = '[vrif\x3d"' + c + '"],[vrnotif\x3d"' + c + '"],[veq\x3d"' + c + '"]';
                if (this._e(d)) {
                  A = !0;
                  if (!this._groupChain.hasOwnProperty(d)) {
                    A = b.parents(".dynamic-row");
                    m = a('[vgr\x3d"' + d + '"]', A);
                    m = 2 <= m.length ? m : a('[vgr\x3d"' + d + '"]');
                    A = !this._e(p);
                    for (f = 0; f < m.length; f++) E = a(m[f]), y = E.attr("type"), y = "checkbox" != y && "radio" != y ? y : "checked", y = this._getVal(E, y), this._e(y) && (A = !1);
                    this._groupChain[d] = A;
                    B += ',[vgr\x3d"' + d + '"]'
                  }
                  this._groupChain[d] && (k = !1, a("\x3cli\x3e").html(XM_FORM_I18N.requiredGroup.replace("%", d)).appendTo(e))
                }
                this.chain[c] = b;
                A = this._silent;
                this._silent = !0;
                B = a(B);
                for (f = 0; f < B.length; f++) m = a(B[f]), y = m.attr("id"), d = m.attr("idx"), this._e(d) && (y = y.replace("_" + d, "")), y = this.replaceID(y, m), this.chain.hasOwnProperty(y) || this._check(m);
                this._silent = A;
                k || !0 === C || this._silent && 0 != this._silent || this._buildPrompt(b, e, c);
                !this._e(p) || !k && !0 !== C ? this._getContainer(b).removeClass("valid") : this._getContainer(b).addClass("valid");
                b.removeClass(this._cssvalidate);
                b.removeClass("validate_in_progress");
                return k
              }
            },
            _getFromRHMap: function(b) {
              var c = this._rhmap[b];
              c ? (c.hif || (c.hif = a('DIV[hif\x3d"' + b + '"]')), c.hnotif || (c.hnotif = a('DIV[hnotif\x3d"' + b + '"]')), c.roif || (c.roif = a('[roif\x3d"' + b + '"]')), c.ronotif || (c.ronotif = a('[ronotif\x3d"' + b + '"]'))) : c =
                this._rhmap[b] = {
                  hif: a('DIV[hif\x3d"' + b + '"]'),
                  hnotif: a('DIV[hnotif\x3d"' + b + '"]'),
                  roif: a('[roif\x3d"' + b + '"]'),
                  ronotif: a('[ronotif\x3d"' + b + '"]')
                };
              return c
            },
            _updateHifRoifForIdCached: function(a) {
              a = this._getFromRHMap(a);
              a.hif.each(this.updateHIF.bind(this));
              a.hnotif.each(this.updateNHIF.bind(this));
              a.roif.each(this.updateROIF.bind(this));
              a.ronotif.each(this.updateNROIF.bind(this))
            },
            _updateHifRoifForIdUncached: function(b) {
              a('DIV[hif\x3d"' + b + '"]').each(this.updateHIF.bind(this));
              a('DIV[hnotif\x3d"' + b + '"]').each(this.updateNHIF.bind(this));
              a('[roif\x3d"' + b + '"]').each(this.updateROIF.bind(this));
              a('[ronotif\x3d"' + b + '"]').each(this.updateNROIF.bind(this))
            },
            updateHIF: function(b, c) {
              b = a(c);
              c = a("#" + b.attr("hif"));
              0 == c.length && (c = a('[xi\x3d"' + b.attr("hif") + '"] INPUT'));
              var d = b.attr("hif_c"),
                e = b.attr("hif_v"),
                f = "1" == b.attr("hif_cl"),
                g = "2" == b.attr("hif_cl");
              this._checkFieldDependentState(c, d, e) ? (b.show(), b.trigger("xm-show")) : (f && b.clear(), g && b.reset(), b.hide(), b.trigger("xm-hide"), b.validate && b._startSubValidation())
            },
            updateNHIF: function(b, c) {
              b = a(c);
              c = a("#" + b.attr("hnotif"));
              0 == c.length && (c = a('[xi\x3d"' + b.attr("hnotif") + '"] INPUT'));
              var d = b.attr("hif_c"),
                e = b.attr("hif_v"),
                f = "1" == b.attr("hif_cl"),
                g = "2" == b.attr("hif_cl");
              this._checkFieldDependentState(c, d, e) ? (f && b.clear(), g && b.reset(), b.hide(), b.trigger("xm-hide"), b.validate && b._startSubValidation()) : (b.show(), b.trigger("xm-show"))
            },
            updateROIF: function(b, c) {
              b = a(c);
              c = a("#" + b.attr("roif"));
              0 == c.length && (c = a('[xi\x3d"' + b.attr("roif") + '"] INPUT'));
              var d = b.attr("roif_c"),
                e = b.attr("roif_v"),
                f = "1" == b.attr("roif_cl"),
                g = "2" == b.attr("roif_cl"),
                h = b.attr("rom");
              this._checkFieldDependentState(c, d, e) ? ("1" == h && b.prop("disabled", !1), "2" == h && b.prop("readonly", !1), b.trigger("xm-enabled")) : (f && b.clear(), g && b.reset(), "1" == h ? (b.prop("disabled", !0), b.trigger(
                "xm-disabled")) : "2" == h && (b.prop("readonly", !0), b.trigger("xm-readonly")), b.validate && b._startSubValidation())
            },
            updateNROIF: function(b, c) {
              b = a(c);
              c = a("#" + b.attr("ronotif"));
              0 == c.length && (c = a('[xi\x3d"' + b.attr("ronotif") + '"] INPUT'));
              var d = b.attr("roif_c"),
                e = b.attr("roif_v"),
                f = "1" == b.attr("roif_cl"),
                g = "2" == b.attr("roif_cl"),
                h = b.attr("rom");
              this._checkFieldDependentState(c, d, e) ? (f && b.clear(), g && b.reset(), "1" == h && (b.prop("disabled", !0), b.trigger("xm-disabled")), "2" == h && (b.prop("readonly", !0), b.trigger("xm-readonly")), b.validate && b
                ._startSubValidation()) : ("1" == h && b.prop("disabled", !1), "2" == h && b.prop("readonly", !1), b.trigger("xm-enabled"))
            },
            _evalFieldDependentStates: function(b, c) {
              b = a(c);
              b.attr("vrif_c");
              b.attr("vrif_v");
              0 == a("#" + requiredIf).length && a('[xi\x3d"' + requiredIf + '"] INPUT')
            },
            _checkFieldDependentState: function(a, c, d) {
              var b = !0,
                f = a.attr("type"),
                g = this._getInpVal(a, f),
                h = g && "string" != typeof g ? g.hasOwnProperty(d) : g == d;
              a = this._hasVal(a, f);
              if (9 == c && !a || 0 == c && a || 1 == c && a && h || 2 == c && a && !h || 2 == c && !a) return !1;
              if (3 == c && a) try {
                var k = 0 == d.indexOf("/") ? eval(d) : new RegExp(d);
                if ("object" == typeof g) {
                  for (var p in g) p.match(k) && (b = !1);
                  return b
                }
                if (g.toString().match(k)) return !1
              } catch (u) {
                console.error("Error in RegExp validator " + d + " " + g, u)
              }
              if ((4 == c || 5 == c || 6 == c || 8 == c || 7 == c) && a && g) {
                b = new RegExp(/[^0-9.\-\,]/g);
                h = [];
                if ("string" != typeof g)
                  for (var m in g) m = m.replace(b, "").replace(",", "."), m = parseFloat(m), isNaN(m) || h.push(m);
                else {
                  m = g.replace(b, "").replace(",", ".");
                  m = parseFloat(m);
                  if (isNaN(m)) return !0;
                  h.push(m)
                }
                if (4 == c || 5 == c || 7 == c || 8 == c) {
                  var r = d.replace(b, "").replace(",", "."),
                    r = parseFloat(r);
                  if (isNaN(r)) return !0
                }
                if (6 == c) {
                  var q = d.split(")-(");
                  2 > q.length && (q = d.split(")-"));
                  2 > q.length && (q = d.split("-("));
                  2 > q.length && (q = d.split("-"));
                  if (2 > q.length) return !0;
                  r = q[0].replace(b, "").replace(",", ".");
                  r = parseFloat(r);
                  if (isNaN(r)) return !0;
                  q = q[1].replace(b, "").replace(",", ".");
                  q = parseFloat(q);
                  if (isNaN(q)) return !0
                }
                b = !0;
                for (d = 0; d < h.length; d++) 4 == c && (b = h[d] < r ? !1 : b), 5 == c && (b = h[d] > r ? !1 : b), 7 == c && (b = h[d] <= r ? !1 : b), 8 == c && (b = h[d] >= r ? !1 : b), 6 == c && (b = h[d] >= r && h[d] <= q ? !1 : b)
              }
              return b
            },
            _updateROIFandHIF: function(b) {
              b = b || this._form;
              a("DIV[hif]", b).each(this.updateHIF.bind(this));
              a("DIV[hnotif]", b).each(this.updateNHIF.bind(this));
              a("[roif]", b).each(this.updateROIF.bind(this));
              a("[ronotif]", b).each(this.updateNROIF.bind(this))
            },
            _clearPromptById: function(b) {
              if (this._prompts.hasOwnProperty(b)) {
                var c = this._prompts[b];
                b = a("#" + b);
                b.removeAttr("alert");
                c = c.parents("DIV.dynamic-row, DIV.xm-item-div").first()
              } else b = a("#" + b), c = b.getContainer();
              c.removeClass(this._csserror);
              a("\x3e .xm-error-container .xm-error-text", c).first().html("")
            },
            _buildPrompt: function(b, c, d) {
              var e = this._getContainer(b);
              e.addClass(this._csserror);
              e = a("\x3e .xm-error-container .xm-error-text", e).first();
              e.html(c);
              b.attr("alert", c.text());
              return this._prompts[d] = e
            },
            _getAllSelector: function() {
              return this._metaAllSelector
            },
            _callbacks: {},
            addEvent: function(b, c) {
              this._callbacks[b] || (this._callbacks[b] = a.Callbacks());
              this._callbacks[b].add(c)
            },
            on: function(b, c) {
              this._callbacks[b] || (this._callbacks[b] = a.Callbacks());
              this._callbacks[b].add(c)
            },
            removeEvent: function(a) {
              this._callbacks[a] && (this._callbacks[a].remove(), this._callbacks[a] = null)
            },
            triggerEvent: function(a, c) {
              this._callbacks[a] && this._callbacks[a].fire(c)
            }
          });
          var f = window.xm_validator = new xima.validator;
          a.fn.validationEngine = function(a, c) {
            switch (a) {
              case "attach":
                f.enable();
                break;
              case "detach":
                f.disable();
                break;
              case "validate":
                f.validate(this);
                break;
              case "hideAll":
                f.hideAll()
            }
          };
          a.fn._startSubValidation = function() {
            for (var b = a(this), c = !0, d = 0; d < b.length; d++) {
              var e = a(b[d]),
                c = f._validate(e) ? c : !1;
              f.triggerEvent("progress", {
                idx: d,
                items: b,
                item: e,
                valid: c
              })
            }
            return c
          };
          a.fn.validate = function(b) {
            var c = a(this),
              d = !0,
              e = f._silent;
            f._silent = b;
            for (b = 0; b < c.length; b++) var l = a(c[b]),
              d = f.validate(l) ? d : !1;
            f._silent = e;
            return d
          };
          a.fn.getLabel = function() {
            var b = a([]);
            this.each(function(c, d) {
              c = a(d).getContainer().children("LABEL").not(".label-icon-checkbox").first();
              0 < c.length && b.push(c)
            });
            return b
          };
          a.fn.getContainer = function() {
            return this.parents("DIV.xm-item-div").first()
          };
          a.fn.addStar = function() {
            this.getLabel().each(function(b, c) {
              c = a(c);
              b = 0 < c.getContainer().find("[vgr]").not('[vgr\x3d""]').length ? "required-group-star" : "required-star";
              b = a("\x3cSPAN\x3e").addClass(b).text("*");
              c.removeStar();
              var d = c.children();
              0 < d.length ? d.last().append(b) : a(c).append(b)
            });
            this.attr("aria-required", "true");
            return this
          };
          a.fn.removeStar = function() {
            this.getLabel().each(function(b, c) {
              c = a(c);
              b = 0 < c.getContainer().find("[vgr]").not('[vgr\x3d""]').length;
              a("SPAN." + (b ? "required-group-star" : "required-star"), c).remove()
            });
            this.attr("aria-required", "false");
            return this
          };
          a.fn.setRequired = function(b) {
            var c = a(this);
            b ? (c.attr("vr", "true").addStar(), c.siblings("label").addClass("required")) : (c.removeAttr("vr").removeStar(), c.siblings("label").removeClass("required"));
            return this
          };
          a.fn.setMinValue = function(b) {
            b ? a(this).attr("vmn", b) : a(this).removeAttr("vmn");
            return this
          };
          a.fn.setMaxValue = function(b) {
            b ? a(this).attr("vmx", b) : a(this).removeAttr("vmx");
            return this
          };
          a.fn.setMinLength = function(b) {
            b ? a(this).attr("vmnl", b) : a(this).removeAttr("vmnl");
            return this
          };
          a.fn.setMaxLength = function(b) {
            b ? a(this).attr("vmxl", b) : a(this).removeAttr("vmxl");
            return this
          };
          a.fn.setMinCheckBox = function(b) {
            b ? a(this).attr("vcmn", b) : a(this).removeAttr("vcmn");
            return this
          };
          a.fn.setMaxCheckBox = function(b) {
            b ? a(this).attr("vcmx", b) : a(this).removeAttr("vcmx");
            return this
          };
          a.fn.setRequiredIf = function(b, c, d) {
            a(this).removeAttr("vrif").removeAttr("vrnotif");
            if (b) {
              var e = "true" == a(this).attr("vr") ? "vrnotif" : "vrif";
              a(this).attr(e, a('[name\x3d"' + b + '"]').attr("id")).attr("vrif_c", c ? c : 0).attr("vrif_v", d ? d : "")
            }
            return this
          };
          a.fn.setMustEqual = function(b) {
            b ? a(this).attr("veq", a('[name\x3d"' + b + '"]').attr("id")) : a(this).removeAttr("veq");
            return this
          };
          a.fn.setGroupReq = function(b) {
            b ? a(this).attr("vgr", b).addStar() : a(this).removeAttr("vgr").removeStar();
            return this
          };
          a.fn.setDataType = function(b) {
            b ? a(this).attr("vdt", b) : a(this).removeAttr("vdt");
            return this
          }
        })(jQuery);
        (function(a) {
          "print" == XFC_METADATA.requestType && (a.ajaxSetup({
            async: !1
          }), a._orgAjaxSetup = a.ajaxSetup, a.ajaxSetup = function(f, b) {
            b && (b.async = !1);
            return a._orgAjaxSetup(b)
          });
          a(document).ready(function() {
            var f = a("FORM.xm-form");
            xm_validator._attachValidation(f);
            window.XM_FORM_OFFLINE ? a.xutil._initOffline() : a.xutil._initOfflineFile();
            if ("true" == a.xutil.getFormParam("xfc-height-changed-evt") || "1" == a.xutil.getFormParam("xfc-height-changed-evt") || window.self !== window.top) {
              var b = a("body"),
                c = function() {
                  var a = XFC_METADATA.currentProject || {};
                  top.postMessage({
                    height: b.height(),
                    formId: a.id,
                    title: a.title,
                    url: window.location.href
                  }, "*")
                };
              window.MutationObserver ? (new MutationObserver(c)).observe(b.get(0), {
                attributes: !0,
                childList: !0,
                characterData: !0,
                subtree: !0
              }) : f.bind("DOMSubtreeModified", c).trigger("DOMSubtreeModified");
              a(window).resize(c);
              c()
            }
            window.XM_FORM_SAVEVALUES && (window.XM_FORM_DYNVALUES = XM_FORM_SAVEVALUES, a.xutil._load(XM_FORM_SAVEVALUES));
            var c = a("DIV[cn\x3dXPage]"),
              d = a("INPUT[type\x3dbutton][target-page]"),
              e = a("BUTTON[type\x3dbutton][target-page]");
            d.click(navButtonClick);
            e.click(navButtonClick);
            setValidate(!0);
            f.keydown(function(b) {
              if (13 == b.keyCode) {
                var c = a(b.target),
                  d = c.attr("type"),
                  e = c.attr("contenteditable"),
                  f = c.attr("forceenter"),
                  c = c.prop("nodeName");
                if ("submit" != d && "TEXTAREA" != c && "true" != e && "true" != f && "SELECT" != c) return b.preventDefault(), !1
              }
            });
            window.XM_FORM_META && window.matchMedia && !window.matchMedia("print").matches && XM_FORM_META.hasOwnProperty("pageResponsive") && (f = parseInt(XM_FORM_META.pageResponsive), !isNaN(f) && 0 < f && window.Response && window
              .Response.create && (Response.create({
                prop: "width",
                breakpoints: [200, f]
              }), Response.crossover("width", function() {
                a.xutil.applyResponsive()
              }), a.xutil.applyResponsive()));
            "false" == a.xutil.getFormParam("xfc-rp-keepalive") && (a.xutil.keepAlive = !1);
            a.xutil.keepAlive && a.xutil._keepAlive();
            a(".xm-hidden").removeClass("xm-hidden").hide().attr("data-initial-hidden", "1");
            a("[data-autonumeric\x3dtrue]").autoNumeric("init");
            autosize(a("[data-xm-autosize\x3dtrue]"));
            a("[data-xm-dynamic]").each(function(b, c) {
              b = a(c);
              var d = b.data("xmDynamicMin"),
                e = b.data("xmDynamicMax");
              c = b.data("xmDynamicTrigger");
              var f = b.data("xmDynamicHideButtons"),
                d = {
                  minSize: +d,
                  maxSize: +e,
                  hideButtons: "1" === f || 1 === f
                };
              c = c ? a('[id\x3d"' + c + '"]') : a();
              0 < c.length && (d.trigger = c);
              b.dynamic(d)
            });
            if (!window.XFC_CUSTOM_PAGE_INIT || 1 != window.XFC_CUSTOM_PAGE_INIT) {
              f = !a.isEmptyObject(XFC_METADATA.serverValidationErrors);
              d = a(".error").first();
              if (f)
                for (var l in XFC_METADATA.serverValidationErrors) a('[org_id\x3d"' + l + '"]').validate(!1);
              c.hide();
              f && 1 === d.length ? (gotoPage(d.parents(".XPage").attr("name")), 0 < a(".error .XItem").length && a(".error .XItem").get(0).focus()) : c.first().show()
            }
            xm_validator._updateROIFandHIF();
            a("[data-xm-character-count\x3dtrue]").counter()
          })
        })(jQuery);
        (function(a) {
          a.widget && a.widget("custom.cob2auto", {
            _create: function() {
              window.XFC_METADATA && "print" == XFC_METADATA.requestType || (this.wrapper = a("\x3cspan\x3e").addClass("custom-combobox").insertAfter(this.element), this._createAutocomplete(), this._createShowAllButton())
            },
            _createAutocomplete: function() {
              var f = this.element.children(":selected"),
                f = f.val() ? f.text() : "";
              this.input = a("\x3cinput\x3e").val(f).attr("title", "").addClass("custom-combobox-input ui-widget ui-widget-content ui-state-default ui-corner-left").autocomplete({
                delay: 0,
                minLength: 0,
                source: a.proxy(this, "_source")
              });
              a(this.element.get(0).attributes).each(function(a, c) {
                a = c.nodeValue;
                "name" == c.nodeName.toLowerCase() && (a += "_autocomplete", this.input.attr("org_name", c.nodeValue));
                this.input.attr(c.nodeName, a)
              }.bind(this));
              f = this.element.attr("id");
              this.input.attr("id", f + "_autocomplete");
              this.element.attr("id", f);
              this.element.attr("tabindex", "-1");
              this.element.after(this.input);
              this.input.attr("idx", "autocomplete");
              this.input.attr("type", "text");
              this.input.removeClass("XSelect");
              this.input.removeClass("XDropDown");
              this.input.addClass("XTextField");
              this.element.css({
                position: "absolute",
                left: "-10000px",
                top: "-10000px"
              });
              this._on(this.input, {
                autocompleteselect: function(b, c) {
                  c.item.option.selected = !0;
                  this._trigger("select", b, {
                    item: c.item.option
                  });
                  this.input.val(a(c.item.option).text());
                  this.element.trigger("change")
                }
              });
              this.input.blur(function() {
                var b = this.input.val().toLowerCase();
                this.element.children("option").each(function(c, d) {
                  a(d).text().toLowerCase() === b && (d.selected = !0, this.element.trigger("change"))
                }.bind(this));
                this.element.validate()
              }.bind(this));
              this.element.errorFunc && this.element.errorFunc(function() {
                var b = !1,
                  c = this.input.val().toLowerCase();
                this.element.children("option").each(function(d, e) {
                  a(e).text().toLowerCase() === c && (e.selected = b = !0)
                });
                if (!b) return (XM_FORM_I18N.requiredOption ? XM_FORM_I18N.requiredOption : 'Bitte wählen Sie eine gültige Option "%" ist nicht erlaubt').replace("%", this.input.val())
              }.bind(this))
            },
            _createShowAllButton: function() {
              var f = this.input,
                b = !1;
              a("\x3ca\x3e").attr("tabIndex", -1).attr("title", "Show All Items").appendTo(this.wrapper).removeClass("ui-corner-all").addClass("custom-combobox-toggle ui-corner-right").mousedown(function() {
                b = f.autocomplete("widget").is(":visible")
              }).click(function() {
                f.focus();
                b || f.autocomplete("search", "")
              })
            },
            _source: function(f, b) {
              var c = new RegExp(a.ui.autocomplete.escapeRegex(f.term), "i");
              b(this.element.children("option").map(function() {
                var b = a(this).text();
                if (this.value && (!f.term || c.test(b))) return {
                  label: b,
                  value: b,
                  option: this
                }
              }))
            },
            _removeIfInvalid: function(f, b) {
              if (!b.item) {
                var c = this.input.val().toLowerCase(),
                  d = !1;
                this.element.children("option").each(function() {
                  if (a(this).text().toLowerCase() === c) return this.selected = d = !0, !1
                });
                if (!d) {
                  this.element.val("");
                  this._delay(function() {
                    this.input.attr("title", "")
                  }, 2500);
                  try {
                    var e = this.input.autocomplete("instance");
                    e && (e.term = "")
                  } catch (l) {}
                }
              }
            },
            _destroy: function() {
              this.wrapper.remove();
              this.element.show()
            }
          })
        })(jQuery);
        (function(a) {
          function f(a, b, c) {
            void 0 === a.selectionStart ? (a.focus(), a = a.createTextRange(), a.collapse(!0), a.moveEnd("character", c), a.moveStart("character", b), a.select()) : (a.selectionStart = b, a.selectionEnd = c)
          }

          function b(b, c) {
            a.each(c, function(a, n) {
              "function" === typeof n ? c[a] = n(b, c, a) : "function" === typeof b.autoNumeric[n] && (c[a] = b.autoNumeric[n](b, c, a))
            })
          }

          function c(a, b) {
            "string" === typeof a[b] && (a[b] *= 1)
          }

          function d(a, n) {
            b(a, n);
            n.oEvent = null;
            n.tagList = "b caption cite code dd del div dfn dt em h1 h2 h3 h4 h5 h6 ins kdb label li output p q s sample span strong td th u var".split(" ");
            a = n.vMax.toString().split(".");
            var d = n.vMin || 0 === n.vMin ? n.vMin.toString().split(".") : [];
            c(n, "vMax");
            c(n, "vMin");
            c(n, "mDec");
            n.mDec = "CHF" === n.mRound ? "2" : n.mDec;
            n.allowLeading = !0;
            n.aNeg = 0 > n.vMin ? "-" : "";
            a[0] = a[0].replace("-", "");
            d[0] = d[0].replace("-", "");
            n.mInt = Math.max(a[0].length, d[0].length, 1);
            if (null === n.mDec) {
              var z = 0,
                e = 0;
              a[1] && (z = a[1].length);
              d[1] && (e = d[1].length);
              n.mDec = Math.max(z, e)
            }
            null === n.altDec && 0 < n.mDec && ("." === n.aDec && "," !== n.aSep ? n.altDec = "," : "," === n.aDec && "." !== n.aSep && (n.altDec = "."));
            a = n.aNeg ? "([-\\" + n.aNeg + "]?)" : "(-?)";
            n.aNegRegAutoStrip = a;
            n.skipFirstAutoStrip = new RegExp(a + "[^-" + (n.aNeg ? "\\" + n.aNeg : "") + "\\" + n.aDec + "\\d].*?(\\d|\\" + n.aDec + "\\d)");
            n.skipLastAutoStrip = new RegExp("(\\d\\" + n.aDec + "?)[^\\" + n.aDec + "\\d]\\D*$");
            n.allowedAutoStrip = new RegExp("[^" + ("-" + n.aNum + "\\" + n.aDec) + "]", "gi");
            n.numRegAutoStrip = new RegExp(a + "(?:\\" + n.aDec + "?(\\d+\\" + n.aDec + "\\d+)|(\\d*(?:\\" + n.aDec + "\\d*)?))");
            return n
          }

          function e(a, b, c) {
            if (b.aSign)
              for (; - 1 < a.indexOf(b.aSign);) a = a.replace(b.aSign, "");
            a = a.replace(b.skipFirstAutoStrip, "$1$2");
            a = a.replace(b.skipLastAutoStrip, "$1");
            a = a.replace(b.allowedAutoStrip, "");
            b.altDec && (a = a.replace(b.altDec, b.aDec));
            a = (a = a.match(b.numRegAutoStrip)) ? [a[1], a[2], a[3]].join("") : "";
            if (("allow" === b.lZero || "keep" === b.lZero) && "strip" !== c) {
              var d = "";
              a = a.split(b.aDec); - 1 !== a[0].indexOf("-") && (d = "-", a[0] = a[0].replace("-", ""));
              a[0].length > b.mInt && "0" === a[0].charAt(0) && (a[0] = a[0].slice(1));
              a = d + a.join(b.aDec)
            }
            if (c && "deny" === b.lZero || c && "allow" === b.lZero && !1 === b.allowLeading) b = "^" + b.aNegRegAutoStrip + "0*(\\d" + ("leading" === c ? ")" : "|$)"), b = new RegExp(b), a = a.replace(b, "$1$2");
            return a
          }

          function l(a, b, c) {
            b = b.split(",");
            "set" === c || "focusout" === c ? (a = a.replace("-", ""), a = b[0] + a + b[1]) : "get" !== c && "focusin" !== c && "pageLoad" !== c || a.charAt(0) !== b[0] || (a = a.replace(b[0], "-"), a = a.replace(b[1], ""));
            return a
          }

          function g(a, b, c) {
            if (b && c) {
              var d = a.split(b);
              d[1] && d[1].length > c && (0 < c ? (d[1] = d[1].substring(0, c), a = d.join(b)) : a = d[0])
            }
            return a
          }

          function h(a, b, c) {
            b && "." !== b && (a = a.replace(b, "."));
            c && "-" !== c && (a = a.replace(c, "-"));
            a.match(/\d/) || (a += "0");
            return a
          }

          function k(a, b) {
            if (a) {
              var c = +a;
              1E-6 > c && -1 < c ? (a = +a, 1E-6 > a && 0 < a && (a = (a + 10).toString(), a = a.substring(1)), 0 > a && -1 < a && (a = (a - 10).toString(), a = "-" + a.substring(2)), a = a.toString()) : (c = a.split("."), void 0 !== c[1] && (
                0 === +c[1] ? a = c[0] : (c[1] = c[1].replace(/0*$/, ""), a = c.join("."))))
            }
            return "keep" === b.lZero ? a : a.replace(/^0*(\d)/, "$1")
          }

          function p(a, b, c) {
            c && "-" !== c && (a = a.replace("-", c));
            b && "." !== b && (a = a.replace(".", b));
            return a
          }

          function m(b, c) {
            b = e(b, c);
            b = g(b, c.aDec, c.mDec);
            b = h(b, c.aDec, c.aNeg);
            b = +b;
            "set" === c.oEvent && (b < c.vMin || b > c.vMax) && a.error("The value (" + b + ") from the 'set' method falls outside of the vMin / vMax range");
            return b >= c.vMin && b <= c.vMax
          }

          function r(a, b, c) {
            return "" === a || a === b.aNeg ? "zero" === b.wEmpty ? a + "0" : "sign" === b.wEmpty || c ? a + b.aSign : a : null
          }

          function q(a, b) {
            a = e(a, b);
            var c = a.replace(",", "."),
              d = r(a, b, !0);
            if (null !== d) return d;
            var d = 2 === b.dGroup ? /(\d)((\d)(\d{2}?)+)$/ : 4 === b.dGroup ? /(\d)((\d{4}?)+)$/ : /(\d)((\d{3}?)+)$/,
              n = a.split(b.aDec);
            b.altDec && 1 === n.length && (n = a.split(b.altDec));
            a = n[0];
            if (b.aSep)
              for (; d.test(a);) a = a.replace(d, "$1" + b.aSep + "$2");
            0 !== b.mDec && 1 < n.length && (n[1].length > b.mDec && (n[1] = n[1].substring(0, b.mDec)), a = a + b.aDec + n[1]);
            b.aSign && (d = -1 !== a.indexOf(b.aNeg), a = a.replace(b.aNeg, ""), a = "p" === b.pSign ? b.aSign + a : a + b.aSign, d && (a = b.aNeg + a));
            "set" === b.oEvent && 0 > c && null !== b.nBracket && (a = l(a, b.nBracket, b.oEvent));
            return a
          }

          function u(a, b) {
            a = "" === a ? "0" : a.toString();
            c(b, "mDec");
            "CHF" === b.mRound && (a = (Math.round(20 * a) / 20).toString());
            var d = "",
              e = 0,
              n = "",
              f = "boolean" === typeof b.aPad || null === b.aPad ? b.aPad ? b.mDec : 0 : +b.aPad,
              z = function(a) {
                a = a.replace(0 === f ? /(\.(?:\d*[1-9])?)0*$/ : 1 === f ? /(\.\d(?:\d*[1-9])?)0*$/ : new RegExp("(\\.\\d{" + f + "}(?:\\d*[1-9])?)0*$"), "$1");
                0 === f && (a = a.replace(/\.$/, ""));
                return a
              };
            "-" === a.charAt(0) && (n = "-", a = a.replace("-", ""));
            a.match(/^\d/) || (a = "0" + a);
            "-" === n && 0 === +a && (n = "");
            if (0 < +a && "keep" !== b.lZero || 0 < a.length && "allow" === b.lZero) a = a.replace(/^0*(\d)/, "$1");
            var g = a.lastIndexOf("."),
              h = a.length - 1 - (-1 === g ? a.length - 1 : g);
            if (h <= b.mDec) {
              d = a;
              if (h < f)
                for (-1 === g && (d += "."), e = "000000"; h < f;) e = e.substring(0, f - h), d += e, h += e.length;
              else h > f ? d = z(d) : 0 === h && 0 === f && (d = d.replace(/\.$/, ""));
              if ("CHF" !== b.mRound) return 0 === +d ? d : n + d;
              "CHF" === b.mRound && (g = d.lastIndexOf("."), a = d)
            }
            var d = g + b.mDec,
              e = +a.charAt(d + 1),
              g = a.substring(0, d + 1).split(""),
              l = "." === a.charAt(d) ? a.charAt(d - 1) % 2 : a.charAt(d) % 2,
              h = !0;
            1 !== l && (l = 0 === l && 0 < a.substring(d + 2, a.length) ? 1 : 0);
            if (4 < e && "S" === b.mRound || 4 < e && "A" === b.mRound && "" === n || 5 < e && "A" === b.mRound && "-" === n || 5 < e && "s" === b.mRound || 5 < e && "a" === b.mRound && "" === n || 4 < e && "a" === b.mRound && "-" === n || 5 <
              e && "B" === b.mRound || 5 === e && "B" === b.mRound && 1 === l || 0 < e && "C" === b.mRound && "" === n || 0 < e && "F" === b.mRound && "-" === n || 0 < e && "U" === b.mRound || "CHF" === b.mRound)
              for (e = g.length - 1; 0 <= e; --e)
                if ("." !== g[e]) {
                  if ("CHF" === b.mRound && 2 >= g[e] && h) {
                    g[e] = 0;
                    h = !1;
                    break
                  }
                  if ("CHF" === b.mRound && 7 >= g[e] && h) {
                    g[e] = 5;
                    h = !1;
                    break
                  }
                  "CHF" === b.mRound && h ? (g[e] = 10, h = !1) : g[e] = +g[e] + 1;
                  if (10 > g[e]) break;
                  0 < e && (g[e] = "0")
                } g = g.slice(0, d + 1);
            d = z(g.join(""));
            return 0 === +d ? d : n + d
          }

          function x(b, c) {
            this.settings = c;
            this.that = b;
            this.$that = a(b);
            this.formatted = !1;
            this.settingsClone = d(this.$that, this.settings);
            this.value = b.value
          }

          function v(b) {
            "string" === typeof b && (b = b.replace(/\[/g, "\\[").replace(/\]/g, "\\]"), b = "#" + b.replace(/(:|\.)/g, "\\$1"));
            return a(b)
          }

          function t(a, b, c) {
            var d = a.data("autoNumeric");
            d || (d = {}, a.data("autoNumeric", d));
            var e = d.holder;
            if (void 0 === e && b || c) e = new x(a.get(0), b), d.holder = e;
            return e
          }
          x.prototype = {
            init: function(a) {
              this.value = this.that.value;
              this.settingsClone = d(this.$that, this.settings);
              this.ctrlKey = a.ctrlKey;
              this.cmdKey = a.metaKey;
              this.shiftKey = a.shiftKey;
              var b = this.that,
                c = {};
              if (void 0 === b.selectionStart) {
                b.focus();
                var e = document.selection.createRange();
                c.length = e.text.length;
                e.moveStart("character", -b.value.length);
                c.end = e.text.length;
                c.start = c.end - c.length
              } else c.start = b.selectionStart, c.end = b.selectionEnd, c.length = c.end - c.start;
              this.selection = c;
              if ("keydown" === a.type || "keyup" === a.type) this.kdCode = a.keyCode;
              this.which = a.which;
              this.formatted = this.processed = !1
            },
            setSelection: function(a, b, c) {
              a = Math.max(a, 0);
              b = Math.min(b, this.that.value.length);
              this.selection = {
                start: a,
                end: b,
                length: b - a
              };
              (void 0 === c || c) && f(this.that, a, b)
            },
            setPosition: function(a, b) {
              this.setSelection(a, a, b)
            },
            getBeforeAfter: function() {
              var a = this.value,
                b = a.substring(0, this.selection.start),
                a = a.substring(this.selection.end, a.length);
              return [b, a]
            },
            getBeforeAfterStriped: function() {
              var a = this.getBeforeAfter();
              a[0] = e(a[0], this.settingsClone);
              a[1] = e(a[1], this.settingsClone);
              return a
            },
            normalizeParts: function(a, b) {
              var c = this.settingsClone;
              b = e(b, c);
              var d = b.match(/^\d/) ? !0 : "leading";
              a = e(a, c, d);
              "" !== a && a !== c.aNeg || "deny" !== c.lZero || "" < b && (b = b.replace(/^0*(\d)/, "$1"));
              d = a + b;
              if (c.aDec) {
                var f = d.match(new RegExp("^" + c.aNegRegAutoStrip + "\\" + c.aDec));
                f && (a = a.replace(f[1], f[1] + "0"), d = a + b)
              }
              "zero" !== c.wEmpty || d !== c.aNeg && "" !== d || (a += "0");
              return [a, b]
            },
            setValueParts: function(a, b) {
              var c = this.settingsClone;
              b = this.normalizeParts(a, b);
              a = b.join("");
              b = b[0].length;
              return m(a, c) ? (a = g(a, c.aDec, c.mDec), b > a.length && (b = a.length), this.value = a, this.setPosition(b, !1), !0) : !1
            },
            signPosition: function() {
              var a = this.settingsClone,
                b = a.aSign,
                c = this.that;
              if (b) {
                b = b.length;
                if ("p" === a.pSign) return a.aNeg && c.value && c.value.charAt(0) === a.aNeg ? [1, b + 1] : [0, b];
                a = c.value.length;
                return [a - b, a]
              }
              return [1E3, -1]
            },
            expandSelectionOnSign: function(a) {
              var b = this.signPosition(),
                c = this.selection;
              c.start < b[1] && c.end > b[0] && ((c.start < b[0] || c.end > b[1]) && this.value.substring(Math.max(c.start, b[0]), Math.min(c.end, b[1])).match(/^\s*$/) ? c.start < b[0] ? this.setSelection(c.start, b[0], a) : this
                .setSelection(b[1], c.end, a) : this.setSelection(Math.min(c.start, b[0]), Math.max(c.end, b[1]), a))
            },
            checkPaste: function() {
              if (void 0 !== this.valuePartsBeforePaste) {
                var a = this.getBeforeAfter(),
                  b = this.valuePartsBeforePaste;
                delete this.valuePartsBeforePaste;
                a[0] = a[0].substr(0, b[0].length) + e(a[0].substr(b[0].length), this.settingsClone);
                this.setValueParts(a[0], a[1]) || (this.value = b.join(""), this.setPosition(b[0].length, !1))
              }
            },
            skipAllways: function(a) {
              var b = this.kdCode,
                c = this.which,
                d = this.ctrlKey,
                e = this.cmdKey,
                f = this.shiftKey;
              if ((d || e) && "keyup" === a.type && void 0 !== this.valuePartsBeforePaste || f && 45 === b) return this.checkPaste(), !1;
              if (112 <= b && 123 >= b || 91 <= b && 93 >= b || 9 <= b && 31 >= b || 8 > b && (0 === c || c === b) || 144 === b || 145 === b || 45 === b) return !0;
              if ((d || e) && 65 === b) return !0;
              if ((d || e) && (67 === b || 86 === b || 88 === b)) {
                "keydown" === a.type && this.expandSelectionOnSign();
                if (86 === b || 45 === b) "keydown" === a.type || "keypress" === a.type ? void 0 === this.valuePartsBeforePaste && (this.valuePartsBeforePaste = this.getBeforeAfter()) : this.checkPaste();
                return "keydown" === a.type || "keypress" === a.type || 67 === b
              }
              return d || e ? !0 : 37 === b || 39 === b ? (c = this.settingsClone.aSep, d = this.selection.start, e = this.that.value, "keydown" === a.type && c && !this.shiftKey && (37 === b && e.charAt(d - 2) === c ? this.setPosition(d -
                1) : 39 === b && e.charAt(d + 1) === c && this.setPosition(d + 1)), !0) : 34 <= b && 40 >= b ? !0 : !1
            },
            processAllways: function() {
              var a;
              return 8 === this.kdCode || 46 === this.kdCode ? (this.selection.length ? (this.expandSelectionOnSign(!1), a = this.getBeforeAfterStriped()) : (a = this.getBeforeAfterStriped(), 8 === this.kdCode ? a[0] = a[0].substring(0, a[
                0].length - 1) : a[1] = a[1].substring(1, a[1].length)), this.setValueParts(a[0], a[1]), !0) : !1
            },
            processKeypress: function() {
              var a = this.settingsClone,
                b = String.fromCharCode(this.which),
                c = this.getBeforeAfterStriped(),
                d = c[0],
                c = c[1];
              if (b === a.aDec || a.altDec && b === a.altDec || ("." === b || "," === b) && 110 === this.kdCode) {
                if (!a.mDec || !a.aDec || a.aNeg && -1 < c.indexOf(a.aNeg) || -1 < d.indexOf(a.aDec) || 0 < c.indexOf(a.aDec)) return !0;
                0 === c.indexOf(a.aDec) && (c = c.substr(1));
                this.setValueParts(d + a.aDec, c);
                return !0
              }
              if ("-" === b || "+" === b) {
                if (!a.aNeg) return !0;
                "" === d && -1 < c.indexOf(a.aNeg) && (d = a.aNeg, c = c.substring(1, c.length));
                d = d.charAt(0) === a.aNeg ? d.substring(1, d.length) : "-" === b ? a.aNeg + d : d;
                this.setValueParts(d, c);
                return !0
              }
              "0" <= b && "9" >= b && (a.aNeg && "" === d && -1 < c.indexOf(a.aNeg) && (d = a.aNeg, c = c.substring(1, c.length)), 0 >= a.vMax && a.vMin < a.vMax && -1 === this.value.indexOf(a.aNeg) && "0" !== b && (d = a.aNeg + d), this
                .setValueParts(d + b, c));
              return !0
            },
            formatQuick: function() {
              var a = this.settingsClone,
                b = this.getBeforeAfterStriped(),
                c = this.value;
              if (("" === a.aSep || "" !== a.aSep && -1 === c.indexOf(a.aSep)) && ("" === a.aSign || "" !== a.aSign && -1 === c.indexOf(a.aSign))) {
                var d = "",
                  c = c.split(a.aDec); - 1 < c[0].indexOf("-") && (d = "-", c[0] = c[0].replace("-", ""), b[0] = b[0].replace("-", ""));
                c[0].length > a.mInt && "0" === b[0].charAt(0) && (b[0] = b[0].slice(1));
                b[0] = d + b[0]
              }
              d = q(this.value, this.settingsClone);
              c = d.length;
              if (d) {
                var b = b[0].split(""),
                  e = 0;
                for (e; e < b.length; e += 1) b[e].match("\\d") || (b[e] = "\\" + b[e]);
                b = new RegExp("^.*?" + b.join(".*?"));
                (b = d.match(b)) ? (c = b[0].length, (0 === c && d.charAt(0) !== a.aNeg || 1 === c && d.charAt(0) === a.aNeg) && a.aSign && "p" === a.pSign && (c = this.settingsClone.aSign.length + ("-" === d.charAt(0) ? 1 : 0))) : a
                  .aSign && "s" === a.pSign && (c -= a.aSign.length)
              }
              this.that.value = d;
              this.setPosition(c);
              this.formatted = !0
            }
          };
          var w = {
            init: function(b) {
              return this.each(function() {
                var c = a(this),
                  d = c.data("autoNumeric"),
                  g = c.data();
                if ("object" !== typeof d) {
                  d = a.extend({}, {
                    aNum: "0123456789",
                    aSep: ",",
                    dGroup: "3",
                    aDec: ".",
                    altDec: null,
                    aSign: "",
                    pSign: "p",
                    vMax: "9999999999999.99",
                    vMin: "0.00",
                    mDec: null,
                    mRound: "S",
                    aPad: !0,
                    nBracket: null,
                    wEmpty: "empty",
                    lZero: "allow",
                    aForm: !0,
                    onSomeEvent: function() {}
                  }, g, b);
                  if (d.aDec === d.aSep) return a.error("autoNumeric will not function properly when the decimal character aDec: '" + d.aDec + "' and thousand separator aSep: '" + d.aSep + "' are the same character"), this;
                  c.data("autoNumeric", d)
                } else return this;
                d.runOnce = !1;
                var k = t(c, d);
                if (-1 === a.inArray(c.prop("tagName").toLowerCase(), d.tagList) && "input" !== c.prop("tagName").toLowerCase()) return a.error("The \x3c" + c.prop("tagName").toLowerCase() + "\x3e is not supported by autoNumeric()"),
                  this;
                !1 === d.runOnce && d.aForm && (c.is("input[type\x3dtext], input[type\x3dhidden], input[type\x3dtel], input:not([type])") && (g = !0, "" === c[0].value && "empty" === d.wEmpty && (c[0].value = "", g = !1), "" === c[0]
                  .value && "sign" === d.wEmpty && (c[0].value = d.aSign, g = !1), g && c.autoNumeric("set", c.val())), -1 !== a.inArray(c.prop("tagName").toLowerCase(), d.tagList) && "" !== c.text() && c.autoNumeric("set", c
                .text()));
                d.runOnce = !0;
                c.is("input[type\x3dtext], input[type\x3dhidden], input[type\x3dtel], input:not([type])") && (c.on("keydown.autoNumeric", function(b) {
                  k = t(c);
                  if (k.settings.aDec === k.settings.aSep) return a.error("autoNumeric will not function properly when the decimal character aDec: '" + k.settings.aDec + "' and thousand separator aSep: '" + k.settings.aSep +
                    "' are the same character"), this;
                  if (k.that.readOnly) return k.processed = !0;
                  k.init(b);
                  k.settings.oEvent = "keydown";
                  if (k.skipAllways(b)) return k.processed = !0;
                  if (k.processAllways()) return k.processed = !0, k.formatQuick(), b.preventDefault(), !1;
                  k.formatted = !1;
                  return !0
                }), c.on("keypress.autoNumeric", function(a) {
                  var b = t(c),
                    d = b.processed;
                  b.init(a);
                  b.settings.oEvent = "keypress";
                  if (b.skipAllways(a)) return !0;
                  if (d) return a.preventDefault(), !1;
                  if (b.processAllways() || b.processKeypress()) return b.formatQuick(), a.preventDefault(), !1;
                  b.formatted = !1
                }), c.on("keyup.autoNumeric", function(a) {
                  var b = t(c);
                  b.init(a);
                  b.settings.oEvent = "keyup";
                  a = b.skipAllways(a);
                  b.kdCode = 0;
                  delete b.valuePartsBeforePaste;
                  c[0].value === b.settings.aSign && ("s" === b.settings.pSign ? f(this, 0, 0) : f(this, b.settings.aSign.length, b.settings.aSign.length));
                  if (a || "" === this.value) return !0;
                  b.formatted || b.formatQuick()
                }), c.on("focusin.autoNumeric", function() {
                  var a = t(c);
                  a.settingsClone.oEvent = "focusin";
                  if (null !== a.settingsClone.nBracket) {
                    var b = c.val();
                    c.val(l(b, a.settingsClone.nBracket, a.settingsClone.oEvent))
                  }
                  a.inVal = c.val();
                  b = r(a.inVal, a.settingsClone, !0);
                  null !== b && (c.val(b), "s" === a.settings.pSign ? f(this, 0, 0) : f(this, a.settings.aSign.length, a.settings.aSign.length))
                }), c.on("focusout.autoNumeric", function() {
                  var a = t(c),
                    b = a.settingsClone,
                    d = c.val(),
                    f = d;
                  a.settingsClone.oEvent = "focusout";
                  var g = "";
                  "allow" === b.lZero && (b.allowLeading = !1, g = "leading");
                  "" !== d && (d = e(d, b, g), null === r(d, b) && m(d, b, c[0]) ? (d = h(d, b.aDec, b.aNeg), d = u(d, b), d = p(d, b.aDec, b.aNeg)) : d = "");
                  g = r(d, b, !1);
                  null === g && (g = q(d, b));
                  g !== f && c.val(g);
                  g !== a.inVal && (c.change(), delete a.inVal);
                  null !== b.nBracket && 0 > c.autoNumeric("get") && (a.settingsClone.oEvent = "focusout", c.val(l(c.val(), b.nBracket, b.oEvent)))
                }))
              })
            },
            destroy: function() {
              return a(this).each(function() {
                var b = a(this);
                b.off(".autoNumeric");
                b.removeData("autoNumeric")
              })
            },
            update: function(b) {
              return a(this).each(function() {
                var c = v(a(this)),
                  d = c.data("autoNumeric");
                if ("object" !== typeof d) return a.error("You must initialize autoNumeric('init', {options}) prior to calling the 'update' method"), this;
                var e = c.autoNumeric("get"),
                  d = a.extend(d, b);
                t(c, d, !0);
                if (d.aDec === d.aSep) return a.error("autoNumeric will not function properly when the decimal character aDec: '" + d.aDec + "' and thousand separator aSep: '" + d.aSep + "' are the same character"), this;
                c.data("autoNumeric", d);
                if ("" !== c.val() || "" !== c.text()) return c.autoNumeric("set", e)
              })
            },
            set: function(b) {
              if (null !== b) return a(this).each(function() {
                var c = v(a(this)),
                  d = c.data("autoNumeric"),
                  f = b.toString(),
                  g = b.toString();
                if ("object" !== typeof d) return a.error("You must initialize autoNumeric('init', {options}) prior to calling the 'set' method"), this;
                g !== c.attr("value") && "input" === c.prop("tagName").toLowerCase() && !1 === d.runOnce && (f = null !== d.nBracket ? l(c.val(), d.nBracket, "pageLoad") : f, f = e(f, d));
                g !== c.attr("value") && g !== c.text() || !1 !== d.runOnce || (f = f.replace(",", "."));
                if (!a.isNumeric(+f)) return "";
                f = k(f, d);
                d.oEvent = "set";
                f.toString();
                "" !== f && (f = u(f, d));
                f = p(f, d.aDec, d.aNeg);
                m(f, d) || (f = u("", d));
                f = q(f, d);
                if (c.is("input[type\x3dtext], input[type\x3dhidden], input[type\x3dtel], input:not([type])")) return c.val(f);
                if (-1 !== a.inArray(c.prop("tagName").toLowerCase(), d.tagList)) return c.text(f);
                a.error("The \x3c" + c.prop("tagName").toLowerCase() + "\x3e is not supported by autoNumeric()");
                return !1
              })
            },
            get: function() {
              var b = v(a(this)),
                c = b.data("autoNumeric");
              if ("object" !== typeof c) return a.error("You must initialize autoNumeric('init', {options}) prior to calling the 'get' method"), this;
              c.oEvent = "get";
              if (b.is("input[type\x3dtext], input[type\x3dhidden], input[type\x3dtel], input:not([type])")) b = b.eq(0).val();
              else if (-1 !== a.inArray(b.prop("tagName").toLowerCase(), c.tagList)) b = b.eq(0).text();
              else return a.error("The \x3c" + b.prop("tagName").toLowerCase() + "\x3e is not supported by autoNumeric()"), !1;
              if ("" === b && "empty" === c.wEmpty || b === c.aSign && ("sign" === c.wEmpty || "empty" === c.wEmpty)) return "";
              null !== c.nBracket && "" !== b && (b = l(b, c.nBracket, c.oEvent));
              if (c.runOnce || !1 === c.aForm) b = e(b, c);
              b = h(b, c.aDec, c.aNeg);
              0 === +b && "keep" !== c.lZero && (b = "0");
              return "keep" === c.lZero ? b : b = k(b, c)
            },
            getString: function() {
              var b = !1,
                c = v(a(this)),
                d = c.serialize(),
                e = d.split("\x26"),
                c = a("form").index(c),
                f = 0;
              for (f; f < e.length; f += 1) {
                var g = e[f].split("\x3d"),
                  h = a("form:eq(" + c + ') input[name\x3d"' + decodeURIComponent(g[0]) + '"]');
                "object" === typeof h.data("autoNumeric") && null !== g[1] && (g[1] = h.autoNumeric("get"), e[f] = g.join("\x3d"), b = !0)
              }
              return !0 === b ? e.join("\x26") : d
            },
            getArray: function() {
              var b = !1,
                c = v(a(this)),
                d = c.serializeArray(),
                e = a("form").index(c);
              a.each(d, function(c, d) {
                c = a("form:eq(" + e + ') input[name\x3d"' + decodeURIComponent(d.name) + '"]');
                "object" === typeof c.data("autoNumeric") && ("" !== d.value && (d.value = c.autoNumeric("get").toString()), b = !0)
              });
              return !0 === b ? d : this
            },
            getSettings: function() {
              return v(a(this)).eq(0).data("autoNumeric")
            }
          };
          a.fn.autoNumeric = function(b) {
            if (w[b]) return w[b].apply(this, Array.prototype.slice.call(arguments, 1));
            if ("object" === typeof b || !b) return w.init.apply(this, arguments);
            a.error('Method "' + b + '" is not supported by autoNumeric()')
          }
        })(jQuery);
        (function(a) {
          a.xutil = {};
          a.xutil.applyResponsive = function(b) {
            if ("object" === typeof XM_FORM_META && "function" === typeof matchMedia && "object" === typeof Response && !window.matchMedia("print").matches && XM_FORM_META.hasOwnProperty("pageResponsive")) {
              var c = parseInt(XM_FORM_META.pageResponsive);
              if (!isNaN(c) && 0 < c) {
                var d = a("[responsive\x3dhide]", b).addBack("[responsive\x3dhide]");
                b = a("[cn]", b).addBack("[cn]");
                Response.viewportW() <= c ? (d.hide(), b.addClass("xm-w100")) : (d.show(), b.removeClass("xm-w100"))
              }
            }
          };
          a.xutil.parseFloat = function(a) {
            if (!a || !a.replace) return 0;
            a = a.replace(/[^\d,.-]/g, "");
            /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test(a) ? (a = a.replace(/\./g, ""), a = a.replace(/,/g, ".")) : a = a.replace(/,/g, "");
            return parseFloat(a)
          };
          a.xutil.isStatus = function(a) {
            return window.XFC_METADATA && XFC_METADATA.currentProcess && XFC_METADATA.currentProcess.status == a
          };
          a.xutil.onStatus = function(b, c) {
            "function" == typeof b && a.xutil.isStatus(void 0) ? b() : (a.xutil.isStatus(b) || !b && a.xutil.isStatus(void 0)) && c()
          };
          a.xutil.onRendered = function() {
            a.datepicker && (a("[data-datepicker\x3d1][vdt\x3ddateDE]").datepicker(), a("[data-datepicker\x3d1][vdt\x3ddateEN]").datepicker({
              dateFormat: "dd/mm/yy"
            }));
            a.fn._xmAppointmentPicker && a(".hasTimePicker")._xmAppointmentPicker();
            a("[data-xm-cob2auto\x3d1]").each(function(b, c) {
              a(c).attr("data-xm-cob2auto", 0).cob2auto()
            });
            a("[data-render]").each(function(b, c) {
              b = a(c).attr("data-render");
              eval(b);
              a(c).removeAttr("data-render")
            });
            a("input[type\x3dhidden]").trigger("change");
            if (window.XFC_METADATA && "print" == window.XFC_METADATA.requestType) a(".loading").hide();
            else {
              var b = a(".xm-loading"),
                c = function() {
                  b.removeClass("xm-loading");
                  if (window.self !== window.top) {
                    var c = XFC_METADATA.currentProject || {};
                    top.postMessage({
                      ready: !0,
                      height: a("body").height(),
                      formId: c.id,
                      title: c.title,
                      url: window.location.href
                    }, "*")
                  }
                };
              a.fn.fadeOut ? a(".loading", b).fadeOut(1E3, c) : c()
            }
            autosize.update(a("[data-xm-autosize\x3dtrue]"));
            a("Form.xm-form").trigger("ready");
            a.xutil.onready()
          };
          a.xutil.onready = a.noop;
          a.xutil.deepValue = function(a, c) {
            c = c.split(".");
            var b;
            for (b = 0; a && b < c.length; ++b) a = a[c[b]];
            return a
          };
          a.xutil.getQuery = function(b, c, d, e, f) {
            var g = [];
            if (d && a.isArray(d))
              for (var h = 0; h < d.length; h++) g.push({
                name: "queryParameterValues",
                value: d[h]
              }), 0 < h && h < d.length - 1 && (g += ",");
            else d && g.push({
              name: "queryParameterValues",
              value: d
            });
            g.push({
              name: "projektId",
              value: XFC_METADATA.currentProject.id
            });
            g.push({
              name: "name",
              value: c
            });
            return a.ajax({
              url: b,
              dataType: "json",
              contentType: "application/x-www-form-urlencoded;charset\x3dutf-8",
              type: "POST",
              data: a.param(g, !0),
              success: e,
              error: f
            }).promise()
          };
          a.xutil.getDataQuery = function(b, c, d, e) {
            return a.xutil.getQuery(XFC_METADATA.urls.dataquery_db, b, c, d, e)
          };
          a.xutil.getLdapQuery = function(b, c, d, e) {
            return a.xutil.getQuery(XFC_METADATA.urls.dataquery_ldap, b, c, d, e)
          };
          a.xutil.getFormParam = function(a, c) {
            return window.XFC_METADATA && XFC_METADATA.urlParams && XFC_METADATA.urlParams[a] ? XFC_METADATA.urlParams[a] : c
          };
          a.xutil.keepAlive = !0;
          a.xutil.keepAliveTimeout = 3E5;
          a.xutil._keepAlive = function() {
            a.xutil.keepAlive && a.ajax({
              dataType: "json",
              url: (window.XFC_METADATA && XFC_METADATA.urls && XFC_METADATA.urls.context ? XFC_METADATA.urls.keepalive : "extra/keep-alive.json") + "?nc\x3d" + (new Date).getTime(),
              success: function() {
                setTimeout(a.xutil._keepAlive, a.xutil.keepAliveTimeout)
              },
              error: function() {
                a.xutil.keepAlive = !1
              }
            })
          };
          a.xutil.getFormUrl = function(a, c) {
            return window.XFC_METADATA && XFC_METADATA.urls && XFC_METADATA.urls[a] ? XFC_METADATA.urls[a] : c
          };
          a.xutil.onsubmit = function(a) {
            return !0
          };
          a.xutil.submit = function(b) {
            a.xutil.setAction(b);
            return !0
          };
          a.xutil.submitNoCheck = function(b) {
            a("Form.xm-form");
            xm_validator.disable();
            a.xutil.setAction(b)
          };
          a.xutil.submitPreview = function(b, c) {
            var d = a(b).attr("name"),
              e = a("Form.xm-form");
            e.attr("action", a.xutil.getFormUrl("previewAction", ""));
            xm_validator.disable();
            c && (e.attr("target", d), window.open("about:blank", d, "width\x3d700,height\x3d600,top\x3d200").focus());
            a.xutil.setAction(b);
            e.submit();
            e.attr("target", "_self");
            e.attr("action", a.xutil.getFormUrl("submitAction", ""));
            xm_validator.enable();
            a(".submit").removeAttr("disabled");
            a("#xf-action").remove();
            return !0
          };
          a.xutil.submitSave = function(b, c) {
            a(b).attr("name");
            var d = a("Form.xm-form"),
              e = d.attr("action"),
              f = d.attr("action") + "\x26xfc-pp-action\x3dsave\x26xfc-pp-check\x3d" + c;
            d.attr("action", f);
            0 == c && xm_validator.disable();
            a.xutil.setAction(b);
            d.submit();
            d.attr("action", e);
            a("#xf-action").remove();
            xm_validator.enable();
            return !0
          };
          a.xutil.setAction = function(b) {
            b = a(b).attr("name");
            var c = a("Form.xm-form");
            a("#xf-action").remove();
            a("\x3cinput\x3e").attr("name", "xf-action").attr("id", "xf-action").val(b).hide().appendTo(c)
          };
          a.xutil._getChecked = function(b, c) {
            var d = [];
            a("INPUT[type\x3d" + c + "][name\x3d" + b.attr("name") + "]:checked", xm_validator._getContainer(b)).each(function(b, c) {
              b = a(c);
              d.push(b.val())
            });
            return d = 1 < d.length ? d : 0 < d.length ? d[0] : null
          };
          a.xutil._save = function() {
            var b = "object" === typeof a.xutil._file_store ? a.xutil._file_store : {},
              c = {
                _file_store: {}
              };
            a(".XItem, .XValueItem").each(function(d, e) {
              e = a(e);
              d = e.attr("org_id") ? e.attr("org_id") : e.attr("id");
              var f = e.attr("xn") ? e.attr("xn") : e.attr("org_name") ? e.attr("org_name") : e.attr("name"),
                g = e.attr("name") ? e.attr("name") : a("input", e).attr("name"),
                h;
              if (e.hasClass("XTextField")) h = e.val();
              else if (e.hasClass("XTextArea")) h = e.val();
              else if (e.hasClass("XSelect") && (e.hasClass("XCheckbox") || e.hasClass("XRadio")) || e.hasClass("XTableCheckbox") || e.hasClass("XTableRadio")) {
                var k = a("input", e);
                d = k.attr("org_id") ? k.attr("org_id") : k.attr("id");
                d = d.replace(/_[0-9]*$/, "");
                h = a.xutil._getChecked(k, k.attr("type"));
                f || (f = k.attr("xn") ? k.attr("xn") : k.attr("org_name") ? k.attr("org_name") : k.attr("name"))
              } else if (e.hasClass("XCheckbox")) h = e.is(":checked") ? e.val() : "";
              else if (e.hasClass("XSelect")) h = e.val();
              else if (e.hasClass("XUpload")) h = "";
              else if (e.hasClass("XValueItem")) h = e.val();
              else return;
              if (d)
                if (h = h ? h : "", k = c[d], k ? k.hasOwnProperty("_0") && (k["_" + k.size] = h, k.size += 1) : c[d] = {
                    _0: h,
                    size: 1,
                    name: f
                  }, g.match(/_dyn_/)) {
                  g = g.replace(/.*_dyn_/, "");
                  g = g.substr(0, g.lastIndexOf("_"));
                  c[d].dynamic = !0;
                  c[d].dyncont = g;
                  f = g + "_dyn_size";
                  if (!c.hasOwnProperty(f)) {
                    g = (g = a('[name\x3d"' + f + '"]').val()) ? g.split(",").length : 0;
                    h = [];
                    for (k = 0; k < g; ++k) h.push(String(k));
                    c[f] = h.join(",")
                  }
                  e = b[e.attr("id")];
                  c._file_store[d + "_c_" + String(c[d].size - 1)] = e
                } else c[d].dynamic = !1, "object" === typeof b[d] && (c._file_store[d] = b[d])
            });
            return JSON.stringify(c)
          };
          a.xutil._load = function(b) {
            b.hasOwnProperty("_file_store") && (a.xutil._file_store = b._file_store, a.xutil._drawAllImagesFromStore());
            for (var c in b) {
              var d = b[c],
                e = a("[id\x3d" + c + "]"),
                f = !1;
              0 >= e.length && (e = a("[org_id\x3d" + c + "]"), 0 < e.length && (f = !0));
              0 >= e.length && (e = a("[xi\x3d" + c + "]"));
              if (!f && d.hasOwnProperty("_0"))
                if (e.hasClass("XTextField")) e.val(d._0);
                else if (e.hasClass("XTextArea")) e.val(d._0);
              else if (e.hasClass("XCheckbox")) e.prop("checked", 1 == d._0 || e.val() == d._0);
              else if (e.hasClass("XSelect") && a('OPTION[value\x3d"' + d._0 + '"]', e)) e.val(d._0);
              else if (e.hasClass("XRadio") || e.hasClass("XTableCheckbox") || e.hasClass("XTableRadio")) a('INPUT[value\x3d"' + d._0 + '"]', e).prop("checked", !0);
              else if (0 < a("input[type\x3dcheckbox],input[type\x3dradio]", e).length && 0 >= a("[org_name]", e).length)
                for (var g in d._0) a('input[value\x3d"' + d._0[g] + '"]', e).prop("checked", "checked");
              else e.hasClass("XValueItem") && e.val(d._0)
            }
            a(".CXSignature").each(function() {
              var b = a(this),
                c = a(".XValueItem", b);
              a(".XSignature", b).xSignature("setData", "data:" + c.val())
            });
            a("Textarea[signature]").each(function() {
              var b = a(this);
              a(".XSignature", b.parent()).jSignature("setData", "data:" + b.val())
            })
          };
          a.xutil._send = function() {
            return a(".xm-form").validate() ? a.xutil._save() : null
          };
          a.xutil._initOffline = function() {
            a("button[type\x3dsubmit]").remove();
            a(".CXAppointment").remove();
            a("[nooffline],[noOffline]").each(function(b, c) {
              a(c).parent().hide()
            });
            a.xutil._initOfflineFile();
            return !0
          };
          a.xutil._b64UploadCompression = !0;
          a.xutil._file_store = {};
          a.xutil._drawAllImagesFromStore = function() {
            if (a.xutil.hasOwnProperty("_file_store"))
              for (var b in a.xutil._file_store) a.xutil._drawImageStoreFor(a("#" + b))
          };
          a.xutil._drawImageStoreFor = function(b) {
            var c = a(b);
            if (window.XM_FORM_OFFLINE || c.hasClass("XPreview"))
              if (b = c.parent(), !(0 >= c.length)) {
                var d = c.attr("id");
                a(".img-upload-preview", b).remove();
                a(".img-uploaded-preview", b).hide();
                var e = c.attr("vr");
                c.setRequired(!1);
                if (a.xutil._file_store.hasOwnProperty(d) && c.validate()) {
                  c.setRequired(e);
                  var e = a.xutil._file_store[d],
                    f = a("\x3cdiv\x3e").addClass("img-upload-preview-none"),
                    e = e.isImage ? a("\x3cimg\x3e").attr("src", e.b64).addClass("XImagePreview").prop("alt", e.name) : f,
                    d = a("\x3cdiv\x3e").attr("sid", d).addClass("img-upload-preview-del");
                  b = a("\x3cdiv\x3e").css("max-width", b.width()).addClass("img-upload-preview").append(e).append(d);
                  d.click(a.xutil._removeImageFromStoreEvt);
                  e.on("error", function() {
                    a(this).after(f);
                    a(this).remove()
                  });
                  e.addClass("XRadius");
                  e.click(function() {
                    c.trigger("click")
                  });
                  c.after(b)
                } else c.setRequired(e)
              }
          };
          a.xutil._removeImageFromStoreEvt = function() {
            var b = a(this).attr("sid"),
              c = a("#" + b);
            a.xutil._removeImageFromStoreById(b);
            a(".img-uploaded-preview", c.parent()).show()
          };
          a.xutil._removeImageFromStoreById = function(b) {
            a.xutil._file_store.hasOwnProperty(b) && delete a.xutil._file_store[b];
            b = a("#" + b);
            b.clear();
            a.xutil._drawImageStoreFor(b)
          };
          a.xutil.compress = function(b, c, d, e, f) {
            void 0 === c && (c = 500);
            void 0 === d && (d = 500);
            var g = new Image;
            g.onload = function() {
              var h = 1;
              g.width > c ? h = c / g.width : g.height > d && (h = d / g.height);
              var k = g.width * h,
                h = g.height * h,
                l = document.createElement("canvas"),
                m = l.getContext("2d");
              l.width = k;
              l.height = h;
              m.drawImage(g, 0, 0, k, h);
              k = l.toDataURL("image/jpeg", b);
              h = (a.xutil._file_store[e].name || "").replace(/\.[^\.]+$/, ".jpeg");
              a.xutil._file_store[e].b64 = k;
              a.xutil._file_store[e].ext = "jpeg";
              a.xutil._file_store[e].type = "image/jpeg";
              a.xutil._file_store[e].name = h;
              a.xutil._drawImageStoreFor(f)
            };
            g.src = a.xutil._file_store[e].b64
          };
          a.xutil._initOfflineFile = function(b) {
            b = b ? b : a("FORM.xm-form");
            a(".img-uploaded-preview", b).each(function(b, d) {
              b = a(d);
              b.css("max-width", b.parent().width())
            });
            if (window.File) a(".XUpload", b).on("change", function(b) {
              var c = a(this),
                e = c.attr("id"),
                f = c.attr("xn") ? c.attr("xn") : c.attr("org_name") ? c.attr("org_name") : c.attr("name");
              if (0 < this.files.length) {
                b = this.files[0];
                var g = b.size,
                  h = b.type,
                  k = b.name,
                  p = k.substr(k.lastIndexOf(".") + 1),
                  m = -1 != a.inArray(p.toUpperCase(), "JPEG JPG GIF PNG TIFF TIF BMP ICO".split(" "));
                b.convertToBase64(function(b) {
                  a.xutil._file_store[e] = {};
                  a.xutil._file_store[e].b64 = b;
                  a.xutil._file_store[e].size = g;
                  a.xutil._file_store[e].type = h;
                  a.xutil._file_store[e].name = k;
                  a.xutil._file_store[e].ext = p;
                  a.xutil._file_store[e].element = f;
                  a.xutil._file_store[e].isImage = m;
                  a.xutil._b64UploadCompression && m ? a.xutil.compress(.5, 1600, 1200, e, c) : a.xutil._drawImageStoreFor(c)
                });
                a(".xm-form").trigger("xm-file-changed", {
                  id: e,
                  file: {
                    file: b,
                    size: g,
                    type: h,
                    name: k,
                    ext: p,
                    image: m
                  }
                })
              } else a.xutil._removeImageFromStoreById(e),
                a(".xm-form").trigger("xm-file-changed", {
                  id: e,
                  file: void 0
                })
            })
          };
          window.gotoPage = function(b, c) {
            var d = !0;
            !0 === c && (c = a("DIV[cn\x3dXPage]:visible"), d = a(".XPage:visible", c).validate());
            d ? (a("DIV[cn\x3dXPage]").hide(), c = a('DIV.XItem.XPage[name\x3d"' + b + '"]').parents("[cn\x3dXPage]"), c.show(), b = a("FORM.xm-form"), d = c.attr("data-xm-disable-auto-scroll"), d = "" != d && 1 == d, b.offset() && !d && a(
              document).scrollTop(b.offset().top), c.trigger("onshow", c)) : a("Textarea, Input, Select", a(".error").first()).focus()
          };
          window.getProjektId = function() {
            return window.XFC_METADATA ? XFC_METADATA.currentProject.id : null
          };
          window.setValidate = function(b) {
            var c = a("FORM.xm-form");
            b ? c.validationEngine("attach", {
              validationEventTrigger: "blur"
            }) : c.validationEngine("detach")
          };
          window.enableResponsive = function(b, c) {
            var d = function() {
              if (window.Response && window.Response.create)
                if (Response.band(b, c) && !e) {
                  a("[responsive\x3dhide]").hide();
                  a("[responsive\x3dfullsize]").parent().css("width", "100%");
                  for (var d = 0; d < a("[responsive\x3dfullsize]").parent().length; d++) {
                    var h = a("[responsive\x3dfullsize]")[d];
                    "xm-form-row" == a(h).parent().parent().attr("class") && a(h).parent().parent().attr("class", "xm-form-row-tmp")
                  }
                  e = !0
                } else if (!Response.band(b, c) && e) {
                a("[responsive\x3dhide]").show();
                for (d = 0; d < a("[responsive\x3dfullsize]").parent().length; d++) h = a("[responsive\x3dfullsize]")[d], a(h).parent().attr("style", f[d]), "xm-form-row-tmp" == a(h).parent().parent().attr("class") && a(h).parent().parent()
                  .attr("class", "xm-form-row");
                e = !1
              }
            };
            a(window).resize(d);
            var e = !1,
              f = [];
            (function() {
              for (var b = 0; b < a("[responsive\x3dfullsize]").parent().length; b++) {
                var c = a("[responsive\x3dfullsize]")[b];
                a(c).parent().width();
                a(c).parent().offsetParent().width();
                f[b] = a(c).parent().attr("style")
              }
            })();
            d()
          };
          window.navButtonClick = function() {
            var b = a(this),
              c = b.attr("target-page"),
              b = "true" == b.attr("check-page") ? !0 : !1;
            gotoPage(c, b)
          };
          window.getURLParameter = function(a) {
            for (var b = window.location.search.substring(1).split("\x26"), d = 0; d < b.length; d++) {
              var e = b[d].split("\x3d");
              if (e[0] == a) return e[1]
            }
          };
          window.xm_icon_toggle = function(a) {};
          a.fn.sum = function() {
            var b = 0;
            this.each(function() {
              var c = 1 * a.xutil.parseFloat(a(this).val());
              a(this).data("autoNumeric") && (c = 1 * a(this).autoNumeric("get"));
              b += isNaN(c) ? 0 : c
            });
            return b
          };
          a.fn.toggleNotes = function(b) {
            b = a(this);
            a("#xm-note-div" + b.attr("itemid")).toggle();
            return b
          };
          a.fn.floatVal = function() {
            return a.xutil.parseFloat(a(this).val())
          };
          a.fn.hasAttr = function(a) {
            a = this.attr(a);
            return void 0 !== a && !1 !== a
          };
          a.fn.setError = function(b) {
            var c = a(this);
            c.removeAttr("error");
            null != b && "" != b && c.attr("error", b);
            return c
          };
          a.fn.error = function(b) {
            var c = a(this);
            c.setError(b);
            c.validate();
            return c
          };
          a.fn.errorFunc = function(b) {
            var c = a(this),
              d = c.data("errorFunc") || [];
            d.push(b.bind(c));
            c.data("errorFunc", d);
            c.addClass("errorFunc");
            return c
          };
          a.fn.visible = function(b) {
            var c = a(this);
            b ? (c.show(), c.trigger("xm-show")) : (c.trigger("xm-hide"), c.hide());
            return c
          };
          a.fn.clear = function(b) {
            for (var c = a(this), d = a("input[type\x3dradio],input[type\x3dtext],input[type\x3dcheckbox],input[type\x3dfile],input[type\x3dhidden],input[type\x3dpassword],textarea,select", c), d = 0 < d.length ? d : c, e = !1, f = 0; f < d
              .length; f++) {
              var g = a(d.get(f));
              if (g.is("input[type\x3dcheckbox]")) g.prop("checked") && (e = !0), g.prop("checked", !1);
              else if (g.is("input[type\x3dradio]")) g.prop("checked") && (e = !0), g.prop("checked", !1);
              else if (g.is("input[type\x3dfile]")) {
                "" != g.val() && (e = !0);
                var h = a("\x3cform\x3e");
                g.wrap(h).parent().trigger("reset").children().unwrap(h);
                h.remove();
                h = g.next(".img-upload-preview, .img-uploaded-preview");
                0 < h.length && (h.remove(), e = !0);
                e && a(".xm-form").trigger("xm-file-changed", {
                  id: g.attr("id"),
                  file: void 0
                })
              } else g.is("select") ? (a("option:first", g).is(":selected") || (e = !0), a("option:selected", g).prop("selected", !1).removeAttr("selected")) : ("" != g.val() && (e = !0), g.val(""));
              g.trigger("xm-clear")
            }
            0 != b && e && c.validate();
            return c
          };
          a.fn.reset = function(b) {
            var c = a(this);
            if ("FORM" == c.prop("tagName")) return c.trigger("reset"), c;
            var d = a("\x3cform\x3e");
            c.wrap(d).parent().trigger("reset").children().unwrap(d);
            d.remove();
            0 != b && c.validate();
            return c
          };
          a.fn.replaceParams = function() {
            console.warn("%c!!! $.fn.replaceParams is a security risk !!!", "color:#c33; font-size:24px; font-weight: bold");
            console.warn("%cThis method was deprecated as it makes the form vulnerable to XSS (cross-site scripting) attacks.", "color:#c33; font-size:18px; font-weight: bold");
            console.warn("%cUse $.xutil.getFormParam and JQuery methods such as $.fn.text to insert data from URL parameters into the form.", "color:#c33; font-size:18px; font-weight: bold");
            a(this).each(function(b, c) {
              b = a(c);
              c = XFC_METADATA.urlParams;
              var d = b.html();
              if (c) {
                for (var e in c) d = d.replace("{" + e + "}", c[e]);
                b.html(d)
              }
            });
            return a(this)
          };
          a.fn.reverse = [].reverse;
          a.fn.shift = [].shift;
          a.fn.autocompleteDB = function(b, c, d, e, f) {
            a(this).autocompleteQuery(XFC_METADATA.urls.dataquery_db, b, c, d, e, f)
          };
          a.fn.autocompleteLDAP = function(b, c, d, e, f) {
            a(this).autocompleteQuery(XFC_METADATA.urls.dataquery_ldap, b, c, d, e, f)
          };
          a.fn.autocompleteQuery = function(b, c, d, e, f, g) {
            g = g || [];
            f = "function" == typeof f ? f : "function" == typeof e ? e : a.noop;
            var h = a(this);
            d = d ? d : "label";
            e = e && "function" != typeof e ? e : d;
            for (var k = 0; k < h.length; k++) {
              var l = {
                  queryName: c,
                  label: d,
                  value: e,
                  success: function(c, d) {
                    d = {
                      label: this.label,
                      response: d,
                      doSuccess: function(b) {
                        var c = this.label;
                        b.hasOwnProperty("result") ? this.response(a.map(b.result, function(b) {
                          b.value = a.xutil.deepValue(b, e);
                          b.label = a.xutil.deepValue(b, c);
                          return b
                        })) : b.hasOwnProperty("success") || this.response(a.map(b, function(b) {
                          b.value = a.xutil.deepValue(b, e);
                          b.label = a.xutil.deepValue(b, c);
                          return b
                        }))
                      }
                    };
                    d = a.proxy(d.doSuccess, d);
                    c = [c.term];
                    for (var f = 0; f < g.length; f++) c.push(g[f]);
                    a.xutil.getQuery(b, this.queryName, c, d)
                  }
                },
                l = a.proxy(l.success, l);
              a(h.get(k)).autocomplete({
                source: l,
                minLength: 1,
                select: f
              })
            }
            return h
          };
          if (a.datepicker) {
            a.datepicker.regional.nl = {
              closeText: "Sluiten",
              prevText: "←",
              nextText: "→",
              currentText: "Vandaag",
              monthNames: "januari februari maart april mei juni juli augustus september oktober november december".split(" "),
              monthNamesShort: "jan feb mrt apr mei jun jul aug sep okt nov dec".split(" "),
              dayNames: "zondag maandag dinsdag woensdag donderdag vrijdag zaterdag".split(" "),
              dayNamesShort: "zon maa din woe don vri zat".split(" "),
              dayNamesMin: "zo ma di wo do vr za".split(" "),
              weekHeader: "Wk",
              firstDay: 1,
              isRTL: !1,
              showMonthAfterYear: !1,
              yearSuffix: "",
              dateFormat: "dd.mm.yy",
              changeYear: !0,
              yearRange: "1900:" + ((new Date).getFullYear() + 100)
            };
            a.datepicker.regional.en = {
              dateFormat: "dd.mm.yy",
              changeYear: !0,
              yearRange: "1900:" + ((new Date).getFullYear() + 100)
            };
            a.datepicker.regional.de = {
              clearText: "löschen",
              clearStatus: "aktuelles Datum löschen",
              closeText: "schließen",
              closeStatus: "ohne Änderungen schließen",
              prevText: "zurück",
              prevStatus: "letzten Monat zeigen",
              nextText: "vor",
              nextStatus: "nächsten Monat zeigen",
              currentText: "heute",
              currentStatus: "",
              monthNames: "Januar Februar März April Mai Juni Juli August September Oktober November Dezember".split(" "),
              monthNamesShort: "Jan Feb Mär Apr Mai Jun Jul Aug Sep Okt Nov Dez".split(" "),
              monthStatus: "anderen Monat anzeigen",
              yearStatus: "anderes Jahr anzeigen",
              weekHeader: "KW",
              weekStatus: "Woche des Monats",
              dayNames: "Sonntag Montag Dienstag Mittwoch Donnerstag Freitag Samstag".split(" "),
              dayNamesShort: "So Mo Di Mi Do Fr Sa".split(" "),
              dayNamesMin: "So Mo Di Mi Do Fr Sa".split(" "),
              dayStatus: "Setze DD als ersten Wochentag",
              dateStatus: "Wähle D, M d",
              dateFormat: "dd.mm.yy",
              firstDay: 1,
              yearSuffix: "",
              showMonthAfterYear: !1,
              initStatus: "Wähle ein Datum",
              isRTL: !1,
              changeYear: !0,
              yearRange: "1900:" + ((new Date).getFullYear() + 100)
            };
            var f = window.XFC_METADATA && XFC_METADATA.currentLanguage ? XFC_METADATA.currentLanguage : "en",
              f = a.datepicker.regional.hasOwnProperty(f) ? a.datepicker.regional[f] : a.datepicker.regional.en;
            a.datepicker.setDefaults(a.extend({
              onClose: function(b, c) {
                a(this).trigger("blur")
              }
            }, f))
          }
        })(jQuery);
        (function(a) {
          a.widget && a.widget("ui._dynamic", {
            options: {
              minSize: 1,
              maxSize: 10,
              addButton: null,
              delButton: null,
              beforeDel: a.noop,
              afterDel: a.noop,
              beforeAdd: a.noop,
              afterAdd: a.noop,
              changeRowSize: a.noop,
              trigger: null,
              hideButtons: !1
            },
            _onDynamicTrigger: function(f) {
              f = a(f.target);
              var b = f.attr("type") || f.prop("nodeName"),
                b = xm_validator._getInpVal(f, b);
              "object" == typeof b && (b = f.attr("value"));
              this.setRowSize(b);
              this.setTriggerVal()
            },
            _create: function() {
              var f = window.XM_FORM_I18N && XM_FORM_I18N.dynAdd ? XM_FORM_I18N.dynAdd : "",
                b = window.XM_FORM_I18N && XM_FORM_I18N.dynDel ? XM_FORM_I18N.dynDel : "",
                c = this,
                d = this.children = c.element.children(),
                e = c.options,
                l = c.element.children(".XItem");
              0 < c.element.closest(".xm-disabled").length && (e.hideButtons = !0);
              var g = this.containerName = l.hasAttr("name") ? l.attr("name") : c.element.attr("name");
              g || (g = this.containerName = l.hasAttr("xn") ? l.attr("xn") : c.element.attr("xn"));
              if (this.options.trigger)
                if ("hidden" == this.options.trigger.attr("type")) this.options.trigger.on("change", this._onDynamicTrigger.bind(this));
                else this.options.trigger.parent().on("change", ".XItem", this._onDynamicTrigger.bind(this));
              this._clearROIF = [];
              this._clearRONOTIF = [];
              this._clearHIF = [];
              this._clearHNOTIF = [];
              var h = {},
                k = {},
                p = {},
                m = {};
              c.element.find("[roif],[rnotif],[hif],[hnotif]").addBack(c.element.filter("[roif]")).each(function() {
                var a = this.getAttribute("roif"),
                  b = this.getAttribute("ronotif"),
                  c = this.getAttribute("hif"),
                  d = this.getAttribute("hnotif");
                a && (h[a] = !0);
                b && (k[b] = !0);
                c && (p[c] = !0);
                d && (m[d] = !0)
              });
              this._clearROIF = Object.keys(h);
              this._clearRONOTIF = Object.keys(k);
              this._clearHIF = Object.keys(p);
              this._clearHNOTIF = Object.keys(m);
              var l = this.dynContainer = c.element.first(),
                r = this.original = a("\x3cdiv\x3e").append(d.clone()),
                f = a('\x3cdiv tabindex\x3d"0" role\x3d"button" title\x3d"' + f + '" class\x3d"add-button dyn-icon"\x3e').click(function(a) {
                  c.addRow(a, !0)
                }).on("keydown", this._keyTriggerClick),
                q = this.navContainer = a("\x3cdiv\x3e").appendTo(l);
              this.cnt = a('\x3cinput type\x3d"text" value\x3d"0" name\x3d"' + this.containerName + '_dyn_size"\x3e').appendTo(q).hide();
              "1" == a(l).attr("data-initial-hidden") ? a(l).css("display", "inline-block").hide() : a(l).css("display", "inline-block");
              l.attr("name", g);
              var g = a("label[for\x3d" + c.element.attr("xi") + "]", c.element).first(),
                u = "";
              0 < g.length && (g.hasClass("label-top") ? u = "label-top" : g.hasClass("label-left") ? u = "label-left" : g.hasClass("label-right") ? u = "label-right" : g.hasClass("label-bottom") && (u = "label-bottom"));
              this.size = 0;
              this.cnt.val(this.getCloneIDs());
              b = a('\x3cdiv class\x3d"xm-del-button-container ' + u + '"\x3e').append('\x3cdiv role\x3d"button" tabindex\x3d"0" title\x3d"' + b + '" class\x3d"xm-del-button-icon dyn-del-button ' + u + '"\x3e');
              b = e.delButton && 0 < e.delButton.length ? e.delButton.addClass("dyn-del-button") : b;
              this.delButton = b.clone();
              b.remove();
              d.remove();
              !e.addButton || 0 >= e.addButton.length ? (q.append(f), this.options.addButton = f) : (e.addButton.addClass("dyn-add-button"), e.addButton.click(function(a) {
                c.addRow(a, !0)
              }));
              this.setSize(e.minSize, !0);
              this.cnt.val(this.getCloneIDs());
              b = a(".XItem", r);
              this.isHideAddButton() && this.options.addButton.hide();
              this.isHideDeleteButton() && this.delButton.hide();
              if (0 < b.length) {
                for (var d = {}, x, f = 0; f < b.length; f++) g = a(b[f]), q = g.attr("org_id") ? g.attr("org_id") : g.attr("id"), g = g.attr("xn") ? g.attr("xn") : g.attr("name"), window.XM_FORM_DYNVALUES && XM_FORM_DYNVALUES[q] ? (d[
                  g] = XM_FORM_DYNVALUES[q], x = !x || x < XM_FORM_DYNVALUES[q].size ? XM_FORM_DYNVALUES[q].size : x) : (d[g] = {}, x = x ? x : 0);
                this.setSize(x - e.minSize, !0);
                for (var v in d)
                  for (var t in d[v])
                    if (b = a('[name\x3d"' + v + "_dyn_" + this.containerName + t + '"]'), f = b.attr("type"), q = d[v][t], b.hasClass("XUpload")) {
                      a("INPUT.XUploadName", b.parent()).val(q);
                      var w = b.attr("org_id") ? b.attr("org_id") : b.attr("id"),
                        f = w.concat(".uuid");
                      XM_FORM_DYNVALUES[f] && a("INPUT.XUploadUUID", b.parent()).val(XM_FORM_DYNVALUES[f][t])
                    } else if (b.hasClass("XAppointment")) {
                  a("INPUT.XAppointmentName", b.parent()).val(q);
                  var w = b.attr("org_id") ? b.attr("org_id") : b.attr("id"),
                    f = w.concat(".appointmentuuid"),
                    q = w.concat(".appointmenttype"),
                    g = w.concat(".slotid"),
                    u = w.concat("_former_date"),
                    z = w.concat("_former_time"),
                    w = w.concat("_former_time_end");
                  XM_FORM_DYNVALUES[f] && a("INPUT.XAppointmentUUID", b.parent()).val(XM_FORM_DYNVALUES[f][t]);
                  XM_FORM_DYNVALUES[q] && a("INPUT.XAppointmentTypeUUID", b.parent()).val(XM_FORM_DYNVALUES[q][t]);
                  XM_FORM_DYNVALUES[g] && a("INPUT.XAppointmentSlotId", b.parent()).val(XM_FORM_DYNVALUES[g][t]);
                  XM_FORM_DYNVALUES[u] && a("INPUT.XAppointmentFormerDate", b.parent()).val(XM_FORM_DYNVALUES[u][t]);
                  XM_FORM_DYNVALUES[z] && a("INPUT.XAppointmentFormerTime", b.parent()).val(XM_FORM_DYNVALUES[z][t]);
                  XM_FORM_DYNVALUES[w] && a("INPUT.XAppointmentFormerTimeEnd", b.parent()).val(XM_FORM_DYNVALUES[w][t]);
                  b.val(d[v][t])
                } else if ("checkbox" == f || "radio" == f)
                  if (b.prop("checked", !1), b.hasClass("XCheckbox")) b.prop("checked", "" != q);
                  else if (a.isArray(q))
                  for (f = 0; f < q.length; f++) b = a('[name\x3d"' + v + "_dyn_" + this.containerName + t + '"][value\x3d"' + q[f] + '"]'), "" != q[f] ? b.prop("checked", !0) : b.prop("checked", !1);
                else "" != q && (b = a('[name\x3d"' + v + "_dyn_" + this.containerName + t + '"][value\x3d"' + q + '"]'), b.prop("checked", !0));
                else b.hasClass("XSelect") ? a('option[value\x3d"' + q + '"]', b).prop("selected", !0) : b.val(d[v][t]);
                v = a("[dynamic-row]", l);
                for (f = 0; f < v.length; f++) t = a(v[f]), a("[data-xm-cob2auto\x3d1]", t).each(function(b, c) {
                  a(c).attr("data-xm-cob2auto", 0).cob2auto()
                }), a.datepicker && (a("[data-datepicker\x3d1][vdt\x3ddateDE]", t).datepicker(), a("[data-datepicker\x3d1][vdt\x3ddateEN]", t).datepicker({
                  dateFormat: "dd/mm/yy"
                })), a.xutil._initOfflineFile(t), this.options.afterAdd(null, t, !1), a("FORM.xm-form").trigger("addRow", {
                  container: t
                });
                this.size = x ? x : e.minSize;
                this.cnt.val(this.getCloneIDs());
                this.refreshButtons()
              }
              a(".error", l).removeClass("error");
              a("DIV[u_idx]", r).remove();
              a.xutil._drawAllImagesFromStore();
              window.xm_validator && xm_validator._updateROIFandHIF(c.element);
              this.setTriggerVal()
            },
            _keyTriggerClick: function(f) {
              f = f.originalEvent.keyCode;
              13 != f && 32 != f || a(this).trigger("click")
            },
            isHideDeleteButton: function() {
              return !0 === this.options.hideButtons || Array.isArray(this.options.hideButtons) && 0 <= this.options.hideButtons.indexOf("delete")
            },
            isHideAddButton: function() {
              return !0 === this.options.hideButtons || Array.isArray(this.options.hideButtons) && 0 <= this.options.hideButtons.indexOf("add")
            },
            _setOption: function(a, b) {
              this._super(a, b);
              "hideButtons" === a && this.refreshButtons()
            },
            setTriggerVal: function() {
              if (this.options.trigger) {
                if ("hidden" == this.options.trigger.attr("type")) this.options.trigger.val(this.size);
                else {
                  var f = this.options.trigger.parent();
                  a("INPUT[type\x3dcheckbox]", f).prop("checked", !1);
                  a('Option[value\x3d"' + this.size + '"]', f).prop("selected", !0);
                  a("INPUT[type\x3dtext],INPUT[type\x3dhidden],TEXTAREA", f).val(this.size);
                  a('INPUT[type\x3dradio][value\x3d"' + this.size + '"],INPUT[type\x3dcheckbox][value\x3d"' + this.size + '"]', f).prop("checked", !0)
                }
                this.options.trigger.validate(!0)
              }
            },
            getUnique: function() {
              this.xm_uid || (this.xm_uid = 0);
              return this.xm_uid++
            },
            refreshButtons: function() {
              var f = this.options.addButton;
              this.size >= this.options.maxSize && 0 != this.options.maxSize ? (f.attr("disabled", "disabled"), f.attr("aria-disabled", !0)) : (f.removeAttr("disabled"), f.attr("aria-disabled", !1));
              var b = a("[xm-dynamic-del-button\x3d" + this.uuid + "] .dyn-del-button", this.dynContainer),
                b = 0 < b.length ? b : a("[xm-dynamic-del-button\x3d" + this.uuid + "]", this.dynContainer);
              this.size <= this.options.minSize ? (b.attr("disabled", "disabled"), b.attr("tabindex", "-1"), b.attr("aria-disabled", !0), b.attr("aria-hidden", !0)) : (b.removeAttr("disabled"), b.attr("aria-disabled", !1), b.attr(
                "aria-hidden", !1), b.attr("tabindex", "0"));
              f.visible(!this.isHideAddButton());
              b.parent().visible(!this.isHideDeleteButton())
            },
            instance: function() {
              return this
            },
            setRowSize: function(a) {
              var b = this.size;
              a = 0 != this.options.maxSize ? Math.min(Math.max(a, this.options.minSize), this.options.maxSize) : Math.max(a, this.options.minSize);
              if (b < a)
                for (var c = b; c < a; c++) this.addRow(null, !0, null, !0);
              else if (b > a)
                for (c = 0; c < b - a; c++) this.removeRow()
            },
            getRowSize: function() {
              return this.size
            },
            _clearRHMap: function() {
              if (window.xm_validator && xm_validator && xm_validator._rhmap) {
                for (var a = 0; a < this._clearROIF.length; ++a) {
                  var b = xm_validator._rhmap[this._clearROIF[a]];
                  b && (b.roif = null)
                }
                for (a = 0; a < this._clearRONOTIF.length; ++a)
                  if (b = xm_validator._rhmap[this._clearRONOTIF[a]]) b.rnotif = null;
                for (a = 0; a < this._clearHIF.length; ++a)
                  if (b = xm_validator._rhmap[this._clearHIF[a]]) b.hif = null;
                for (a = 0; a < this._clearHNOTIF.length; ++a) var c = xm_validator._rhmap[this._clearHNOTIF[a]];
                c && (c.hnotif = null)
              }
            },
            addRow: function(f, b, c, d) {
              if (this.size >= this.options.maxSize && 0 != this.options.maxSize) this.setTriggerVal();
              else if (!(f && f.target && a(f.target).attr("disabled"))) {
                this._clearRHMap();
                var e = this.getUnique(),
                  l = this.original.clone().attr("dynamic-row", e).addClass("dynamic-row");
                a("span[dynvalues]", l).remove();
                d = d ? !0 : !1;
                if (!1 !== this.options.beforeAdd(f, l, d)) {
                  l.insertBefore(this.navContainer);
                  for (var g = a("[id]", l), h = a("[for]", l), k = a("[aria-labelledby]", l), p = a("input[type\x3dradio],input[type\x3dtext],input[type\x3dcheckbox],input[type\x3dfile],input[type\x3dhidden],textarea,select", l), m =
                    0; m < p.length; m++) {
                    var r = a(p[m]);
                    r.attr("org_name") || r.attr("org_name", r.attr("name"));
                    r.attr("name", r.attr("org_name") + "_dyn_" + this.containerName + "_" + e);
                    a('DIV[u_idx][u_idx!\x3d"_' + e + '"]', l).remove();
                    b && "file" != r.attr("type") && r.clear(!1)
                  }
                  for (m = 0; m < g.length; m++) p = a(g[m]), p.attr("org_id") || p.attr("org_id", p.attr("id")), b = p.attr("org_id") + "_c_" + e, p.attr("id", b), a("[itemid\x3d" + p.attr("org_id") + "]").remove(), a("#xm-note-div" + p
                    .attr("id")).remove();
                  for (m = 0; m < h.length; m++) p = a(h[m]), p.attr("org_for") || p.attr("org_for", p.attr("for")), b = p.attr("org_for") + "_c_" + e, p.attr("for", b);
                  for (m = 0; m < k.length; m++) p = a(k[m]), b = p.attr("aria-labelledby") + "_c_" + e, p.attr("aria-labelledby", b);
                  g = a("\x3e .xm-error-container", l);
                  h = this.delButton.clone().attr("xm-dynamic-del-button", this.uuid);
                  h.hasClass("dyn-del-button") ? h.on("keydown", this._keyTriggerClick).click(this.__delRow.bind(this)) : a(".dyn-del-button", h).on("keydown", this._keyTriggerClick).click(this.__delRow.bind(this));
                  0 < g.length ? g.before(h) : h.appendTo(l);
                  h.attr("clone", e);
                  h.children().attr("clone", e);
                  h.get(0).style.width ? parseFloat(h.get(0).style.width) : h.width();
                  this.size++;
                  this.cnt.val(this.getCloneIDs());
                  this.refreshButtons();
                  this.IdsForValidation("vrif", l, e);
                  this.IdsForValidation("vrnotif", l, e);
                  this.IdsForValidation("veq", l, e);
                  this.IdsForValidation("vgr", l, e);
                  this.IdsForValidation("hif", l, e);
                  this.IdsForValidation("hnotif", l, e);
                  this.IdsForValidation("roif", l, e);
                  this.IdsForValidation("ronotif", l, e);
                  window.xm_validator && xm_validator._bindValidations(l);
                  !d && window.xm_validator && xm_validator._updateROIFandHIF(l);
                  0 != c && (a("[data-xm-cob2auto\x3d1]", l).each(function(b, c) {
                    a(c).attr("data-xm-cob2auto", 0).cob2auto()
                  }), a.fn._xmAppointmentPicker && a(".hasTimePicker", l)._xmAppointmentPicker(), a.datepicker && (a("[data-datepicker\x3d1][vdt\x3ddateDE]", l).datepicker(), a("[data-datepicker\x3d1][vdt\x3ddateEN]", l).datepicker({
                    dateFormat: "dd/mm/yy"
                  })), a.xutil._initOfflineFile(l), this.options.afterAdd(f, l, d));
                  a("[data-autonumeric\x3dtrue]", l).autoNumeric("init");
                  autosize(a("[data-xm-autosize\x3dtrue]", l));
                  a("[data-xm-character-count\x3dtrue]", l).counter();
                  a("FORM.xm-form").trigger("addRow", {
                    container: l
                  });
                  a(".xm-error-text", l).html("");
                  a(".error", l).removeClass("error");
                  l.removeClass("error");
                  this.options.changeRowSize(this.size, l, !0);
                  a("[data-render]", l).each(function(b, c) {
                    b = a(c).attr("data-render");
                    eval(b);
                    a(c).removeAttr("data-render")
                  });
                  this.setTriggerVal();
                  a.xutil.applyResponsive(l);
                  return l
                }
              }
            },
            IdsForValidation: function(f, b, c) {
              a("[" + f + "]", b).each(function(b, e) {
                b = a(e);
                e = b.attr(f) + "_c_" + c;
                0 < a("#" + e).length && b.attr(f, e)
              })
            },
            getCloneIDs: function() {
              for (var f = a("[dynamic-row]", this.dynContainer), b = [], c = 0; c < f.length; c++) b.push(a(f[c]).attr("dynamic-row"));
              return b.join(",")
            },
            removeRow: function(f) {
              f = (f = f && a.isNumeric(f) ? a(".dynamic-row", this.dynContainer).get(f - 1) : a(".dynamic-row", this.dynContainer).last()) ? f : a(".dynamic-row", this.dynContainer).last();
              this._delRow(null, f)
            },
            _delRow: function(f, b, c) {
              this.size <= this.options.minSize ? this.setTriggerVal() : !1 !== this.options.beforeDel(f, b) && (this._clearRHMap(), this.size--, c && c.remove(), b.remove(), this.refreshButtons(), this.cnt.val(this.getCloneIDs()), this
                .options.afterDel(f, b), a("FORM.xm-form").trigger("delRow", {
                  container: b
                }), this.options.changeRowSize(this.size, b, !1), this.setTriggerVal())
            },
            __delRow: function(f) {
              var b = a(f.target);
              if (b.attr("disabled") || !b.hasClass("dyn-del-button"))
                if (b = a(f.currentTarget), b.attr("disabled") || !b.hasClass("dyn-del-button")) return;
              var c = a("[dynamic-row\x3d" + b.attr("clone") + "]", this.dynContainer);
              this._delRow(f, c, b)
            },
            setSize: function(a, b) {
              this.size = 0;
              this.cnt.val(this.getCloneIDs());
              for (var c = 0; c < a; c++) this.addRow(null, !0, !1, b)
            },
            destroy: function() {
              a.Widget.prototype.destroy.call(this)
            }
          });
          a.fn.dynamic = function(f) {
            for (var b = a(this), c = 0; c < b.length; c++) {
              var d = a(b.get(c));
              d.hasClass("xm-item-div") || (d = d.parents(".xm-item-div").first());
              if (!(0 >= d.length) && d._dynamic) return c = d._dynamic.apply(d, arguments), f && "object" != typeof f ? c : b
            }
            return b
          }
        })(jQuery);
        jQuery.extend(window.Designer ? Designer.prototype : jQuery.xutil, {
          version: {
            time: "18:27:50",
            date: "15.10.2020",
            timestamp: 20201015182750,
            version: "despina-6.6.3",
            number: 0,
            patch: "${git.commit.id.describe-short}"
          }
        });
        (function(a) {
          a(document).ready(function() {
            function f(c) {
              c = c || b;
              a(".XTextArea, .XDropDown, .XTextField", c).each(function(b, c) {
                "" == a(c).val() && a(c).addClass("empty")
              })
            }
            var b = a(".xm-form");
            b.on("change", ".XDropDown", function(b) {
              a(this).trigger("blur")
            }).on("focus", ".XTextArea, .XDropDown, .XTextField", function(b) {
              a(this).removeClass("empty")
            }).on("blur", ".XTextArea, .XDropDown, .XTextField", function(b) {
              "" == a(this).val() ? a(this).addClass("empty") : a(this).removeClass("empty")
            }).on("addRow", function(a, b) {
              f(b.row)
            });
            f(b)
          })
        })(jQuery);
        (function(a) {
          a(document).ready(function() {
            function f() {
              if (opener && opener.designer && opener.designer.preview) opener.designer.config.previewStatus = p.val(), opener.designer.config.previewUsergroup = q.val(), opener.designer.config.previewDebugtools = !0, opener.designer
                .preview();
              else {
                XFC_METADATA.urlParams["xfc-rp-status"] = p.val();
                XFC_METADATA.urlParams["xfc-rp-usergroup"] = q.val();
                XFC_METADATA.urlParams["xfc-rp-debugtools"] = "true";
                var a = "?",
                  b;
                for (b in XFC_METADATA.urlParams) a += b + "\x3d" + XFC_METADATA.urlParams[b] + "\x26";
                a = window.location.href.split("?")[0] + a;
                window.location.href = a
              }
            }
            if (window._XFC_PREVIEW_STATUS) {
              var b = XM_FORM_I18N.previewStatus ? XM_FORM_I18N.previewStatus : "Status",
                c = XM_FORM_I18N.previewUsergroup ? XM_FORM_I18N.previewUsergroup : "Benutzergruppe",
                d = XM_FORM_I18N.previewPage ? XM_FORM_I18N.previewPage : "Seiten",
                e = XM_FORM_I18N.previewPageAll ? XM_FORM_I18N.previewPageAll : "Alle Seiten",
                l = XM_FORM_I18N.previewDefault ? XM_FORM_I18N.previewDefault : "Standard",
                g = XM_FORM_I18N.previewHidden ? XM_FORM_I18N.previewHidden : "Zeige versteckte Elemente",
                h = XM_FORM_I18N.previewToolsButton ? XM_FORM_I18N.previewToolsButton : "",
                k = a("\x3cdiv\x3e").attr("id", "xfc-preview-tools").appendTo("body");
              a("\x3clabel\x3e").text(b).appendTo(k);
              var p = a("\x3cselect\x3e").appendTo(k).attr("size", 5).css("width", "100%");
              a("\x3coption\x3e").attr("value", "").text(l).appendTo(p).prop("selected", !0);
              for (b = 0; b < window._XFC_PREVIEW_STATUS.length; b++) {
                var m = window._XFC_PREVIEW_STATUS[b],
                  r = XFC_METADATA.urlParams["xfc-rp-status"] == m;
                a("\x3coption\x3e").attr("value", m).text(m).appendTo(p).prop("selected", r)
              }
              p.change(f);
              a("\x3clabel\x3e").text(c).appendTo(k);
              var q = a("\x3cselect\x3e").appendTo(k).attr("size", 5).css("width", "100%");
              a("\x3coption\x3e").attr("value", "").text(l).appendTo(q).prop("selected", !0);
              for (b = 0; b < window._XFC_PREVIEW_USERGROUPS.length; b++) m = window._XFC_PREVIEW_USERGROUPS[b], r = XFC_METADATA.urlParams["xfc-rp-usergroup"] == m, a("\x3coption\x3e").attr("value", m).text(m).appendTo(q).prop("selected",
                r);
              q.change(f);
              a("\x3clabel\x3e").text(d).appendTo(k);
              var u = a("\x3cSelect\x3e").appendTo(k).attr("size", 5).css("width", "100%");
              a("\x3coption\x3e").attr("value", ".allPages").text(e).appendTo(u);
              a(".XPage").each(function(b, c) {
                b = a(c);
                c = b.attr("name");
                var d = a("\x3coption\x3e").attr("value", c).text(c).appendTo(u).prop("selected", b.is(":visible"));
                b.parents("[cn\x3dXPage]").on("onshow", function() {
                  d.prop("selected", !0)
                })
              });
              u.change(function() {
                var b = a(this).val();
                ".allPages" == b ? a("[cn\x3dXPage]").show() : gotoPage(b)
              });
              a("\x3cinput\x3e").attr("type", "checkbox").attr("id", "_xm_preview_toggle_hidden").appendTo(k).change(function() {
                a(this).prop("checked") ? a(".XItem [data-initial-hidden\x3d1]").attr("xm-hidden", "1").show() : a(".XItem [xm-hidden\x3d1]").removeAttr("xm-hidden").hide()
              });
              a("\x3clabel\x3e").text(g).attr("for", "_xm_preview_toggle_hidden").appendTo(k);
              k.dialog({
                classes: {
                  "ui-dialog": "xfc-preview-tools"
                },
                width: 220,
                autoOpen: "true" == XFC_METADATA.urlParams["xfc-rp-debugtools"],
                height: 370,
                position: {
                  my: "left top",
                  at: "right+60 top+60",
                  of: a("FORM.xm-form")
                }
              });
              c = a("#xm-preview-info");
              a("\x3cdiv\x3e").html(h).click(function() {
                k.dialog("open");
                return !1
              }).appendTo(c).addClass("xm-tools-button")
            }
          })
        })(jQuery);

        function showReviewToolbar() {
          var a = XM_FORM_I18N.previewPageAll ? XM_FORM_I18N.previewPageAll : "alle Seiten anzeigen",
            f = XM_FORM_I18N.currentFormVersion ? XM_FORM_I18N.currentFormVersion : "aktuelle Formularversion",
            b = $("\x3cdiv\x3e").addClass("xm-review-toolbar-wrapper"),
            c = $("\x3cdiv\x3e").addClass("xm-review-toolbar").appendTo(b);
          $("\x3cbutton\x3e").text(a).click(function() {
            var a = $(this);
            a.toggleClass("clicked");
            a.hasClass("clicked") ? $("[cn\x3dXPage]").each(function(a, b) {
              $(".XPage", b).attr("force_summary_hidden") || $(b).show()
            }) : gotoPage($(".XPage").first().attr("name"))
          }).appendTo(c).addClass("xm-review-tb-button");
          a = XFC_METADATA.urlParams.hasOwnProperty("currentVersion");
          if (XFC_METADATA.currentProject && !XFC_METADATA.currentProject.currentForm.isActive || a) f = $("\x3cbutton\x3e").text(f).click(function() {
            toogleCurrentVersion()
          }).appendTo(c).addClass("xm-review-tb-button"), a && f.addClass("clicked");
          $("body").prepend(b)
        }

        function toogleCurrentVersion() {
          var a = [],
            f;
          for (f in XFC_METADATA.urlParams) "currentVersion" != f && a.push(f + "\x3d" + XFC_METADATA.urlParams[f]);
          a = [location.protocol, "//", location.host, location.pathname, "?", a.join("\x26")];
          XFC_METADATA.urlParams.hasOwnProperty("currentVersion") || a.push("\x26currentVersion\x3dtrue");
          a = a.join("");
          window.location.href = a
        }
        (function(a) {
          a(document).ready(function() {
            a.reject({
              reject: {
                all: !1,
                msie: 9
              },
              header: window.XM_FORM_I18N.browserOld || "Did you know that your Internet Browser is out of date?",
              paragraph1: window.XM_FORM_I18N.browserUnsupported || "Your browser is out of date, and may not be compatible with our website. A list of the most popular web browsers can be found below.",
              paragraph2: window.XM_FORM_I18N.browserClick || "Just click on the icons to get to the download page",
              closeMessage: window.XM_FORM_I18N.browserCloseMessage || "By closing this window you acknowledge that your experience on this website may be degraded",
              closeLink: window.XM_FORM_I18N.browserClose || "Close this window",
              browserInfo: {
                chrome: {
                  text: window.XM_FORM_I18N.browserChrome || "Google Chrome",
                  url: window.XM_FORM_I18N.browserChromeLink || "http://www.google.com/chrome/"
                },
                firefox: {
                  text: window.XM_FORM_I18N.browserFirefox || "Mozilla Firefox",
                  url: window.XM_FORM_I18N.browserFirefoxLink || "http://www.mozilla.com/firefox/"
                },
                safari: {
                  text: window.XM_FORM_I18N.browserSafari || "Safari",
                  url: window.XM_FORM_I18N.browserSafariLink || "http://www.apple.com/safari/download/"
                },
                opera: {
                  text: window.XM_FORM_I18N.browserOpera || "Opera",
                  url: window.XM_FORM_I18N.browserOperaLink || "http://www.opera.com/download/"
                },
                msie: {
                  text: window.XM_FORM_I18N.browserEdge || "Microsoft Edge",
                  url: window.XM_FORM_I18N.browserEdgeLink || "http://www.microsoft.com/windows/Microsoft-edge/"
                }
              }
            })
          })
        })(jQuery);
        /*utils.js*/
        /***********************************************************************************************/
        // Create URL to last page in Open Text
        // currentLocation: Current URL of the form on the website
        // filenameLength: Length of the string from the last slash (/) (=filename, e.g. 12345.htm)
        // baseURL: URL without filename (e.g. https://www.pepperl-fuchs.com/global/en/)
        /***********************************************************************************************/
        var currentLocation = window.location.href;
        var filenameLength = window.location.href.substr(window.location.href.lastIndexOf("/") + 1).length;
        var baseURL = currentLocation.substring(0, currentLocation.length - filenameLength);
        $('input[name=formpage]').val(currentLocation);
        $('input[name=lastpage]').val(baseURL + $('[name=last]').val() + ".htm");
        /***********************************************************************************************/
        // Preselect the country in the Dropdownbox and updates the value on change
        // Hide/Show State and Province, depending on the country
        // Preselect the international dialing code for the phone number
        /***********************************************************************************************/
        console.log("xcntry: " + $('[name=xcntry]').val());
        $('[name=sel_country]').val($('[name=xcntry]').val());
        $('[name=country_name]').val($('[name=sel_country] :selected').text());
        console.log("sel_country: " + $('[name=sel_country]').val());
        console.log("country_name: " + $('[name=country_name]').val());
        $('[name=sel_int_dialing_code]').val($('[name=xcntry]').val());
        $('[name=tf_int_dialing_code]').val($('[name=sel_int_dialing_code] option:selected').text());
        if ($('[name=xcntry]').val() == "ca") {
          $('[name=sel_province]').parent().show();
        }
        if ($('[name=xcntry]').val() == "us") {
          $('[name=sel_state]').parent().show();
        }
        $(document).on('change', '[name=sel_country]', function() {
          $('[name=country_name]').val($('select[name=sel_country] option:selected').text());
          $('[name=sel_int_dialing_code]').val($('[name=sel_country]').val());
          $('[name=tf_int_dialing_code]').val($('[name=sel_int_dialing_code] option:selected').text());
          if ($('[name=sel_country]').val() == "us") $('[name=sel_state]').parent().show();
          else $('[name=sel_state]').parent().hide();
          if ($('[name=sel_country]').val() == "ca") $('[name=sel_province]').parent().show();
          else $('[name=sel_province]').parent().hide();
        });
        /***********************************************************************************************/
        // set correct international dialing code in auxiliary variable
        /***********************************************************************************************/
        $(document).on('change', '[name=sel_int_dialing_code]', function() {
          $('[name=tf_int_dialing_code]').val($('[name=sel_int_dialing_code] option:selected').text());
        });
        /***********************************************************************************************/
        // set correct salut for Mr./Mrs.
        /***********************************************************************************************/
        $(document).on('change', '[name=sel_salut]', function() {
          $('[name=tf_salut_email]').val($('[name=sel_salut] option:selected').text());
        });
        /***********************************************************************************************/
        // Select correct FA or PA contact person depending on website country
        /***********************************************************************************************/
        $('[name=sel_email_fa]').val($('[name=xcntry]').val());
        $('[name=tf_email_fa]').val($('[name=sel_email_fa] :selected').text());
        $('[name=sel_email_pa]').val($('[name=xcntry]').val());
        $('[name=tf_email_pa]').val($('[name=sel_email_pa] :selected').text());
        $('[name=sel_email_corp]').val($('[name=xcntry]').val());
        $('[name=tf_email_corp]').val($('[name=sel_email_corp] :selected').text());
        /***********************************************************************************************/
        // Select correct Siebel Organization for each country
        /***********************************************************************************************/
        $('[name=sel_sorg]').val($('[name=xcntry]').val());
        $('[name=tf_sorg]').val($('[name=sel_sorg] :selected').text());
        /***********************************************************************************************/
        // email address to lower case
        /***********************************************************************************************/
        $('[name=tf_email]').change(function() {
          $('[name=tf_email]').val($(this).val().toLowerCase());
        });
        /***********************************************************************************************/
        // Jumps to top on the second page of big forms 
        /***********************************************************************************************/
        $(document).ready(function() {
          $('[cn=XPage]').on('onshow', function(e) {
            var p = $(e.target)
            var form = $('FORM.xm-form');
            var disableScrollTop = p.attr('data-xm-disable-auto-scroll');
            disableScrollTop = (disableScrollTop != "" && disableScrollTop == true)
            if (form.offset() && !disableScrollTop) $(document).scrollTop(form.offset().top);
          });
          //copy sel_salut_label into val 
          //    $('[name=sel_salut] > option').each(function(){
          //        $(this).val($(this).html());
          //    })
        });
        /***********************************************************************************************/
        // Triggers a Google Analytics event when sending. The parameters are as follow: 
        // Category="Forms", Action="Submit", Label=Name of form
        /***********************************************************************************************/
        $.xutil.onsubmit = function(valid) {
          //console.log("Dokument '" + XFC_METADATA.currentProject.title + "' wurde abgeschickt.");
          if (typeof ga !== 'undefined') {
            ga('send', {
              hitType: 'event',
              eventCategory: 'Forms',
              eventAction: 'Submit',
              eventLabel: XFC_METADATA.currentProject.title
            });
          }
          return valid;
        };;
        (function($) {
          $(document).ready(function() {
            $.xutil.onRendered();
          });
        })(jQuery);
      })(jQuery, jQuery);
      jQuery.noConflict();
    })();
  </script>
  <style type="text/css">
    /********************************************************/
    /********************************************************/
    /* Form general start */
    form .loading {
      background: none !important;
    }

    form .XContainer {
      background-color: #FFF;
      border: none;
    }

    form.xm-form * {
      color: #425563;
      font-size: 14px;
    }

    form.xm-form {
      padding: 0;
      margin-left: -20px;
    }

    form .label-none.CXSpan .XItem.XSpan {
      color: #00A587;
    }

    form .label-none.CXSpan .XItem.XSpan p {
      color: #425563;
      font-weight: bold;
      padding: 0;
    }

    form.modern .CXSpan .XSpan h2 {
      color: #00A587;
      font-size: 1.5em;
    }

    form.modern .CXSpan .XSpan h4 {
      color: #00A587;
      font-size: 16px;
    }

    form .label-none.CXSpan .XItem.XSpan[name^=txt_mandatory] p {
      font-weight: normal;
    }

    form .xm-form-row {
      padding-right: 0;
    }

    form.modern select {
      outline: none;
    }

    .body.modern {
      background-color: #fff;
    }

    form.modern .label-right.required a {
      padding: 5px 0;
      position: relative;
    }

    /* Form general end */
    /********************************************************/
    /********************************************************/
    /* Layout start */
    /* nebeneinander gelegte Felder mobil wieder auf 100% */
    @media screen and (max-width: 1150px) {

      form .xm-item-div.label-followup.CXTextField,
      form .xm-item-div.label-followup.CXSelect,
      form .xm-item-div.label-followup.CXTextArea {
        width: 100% !important;
      }
    }

    /* Layout end */
    /********************************************************/
    /********************************************************/
    /* Zweispaltiges Formular start */
    @media screen and (max-width: 800px) {
      form .xm-item-div.label-none.CXContainer {
        width: 100% !important;
      }

      form .xm-item-div.CXTextArea {
        width: 100%;
      }
    }

    /* Zweispaltiges Formular end */
    /********************************************************/
    /********************************************************/
    /* 3 Felder in einer Reihe start */
    form div.ce-row:first-child {
      margin-left: -10px;
      margin-bottom: 0;
      padding-left: 0px;
      padding-top: 0px;
    }

    form .XItem.XContainer.form_container_middle .ce-row {
      width: 100% !important;
    }

    form .XItem.XContainer.form_container_middle input {
      min-width: 0px;
    }

    /* 3 Felder in einer Reihe end */
    /********************************************************/
    /********************************************************/
    /* modern Theme Anpassungen start */
    form.modern .XFooter,
    form.modern .XHeader,
    form.modern .XPage {
      padding: 0;
    }

    form.modern .CXPage .header {
      background-color: transparent;
      border: none;
    }

    /* modern Theme Anpassungen end */
    /********************************************************/
    /********************************************************/
    /* Help Container start */
    form.modern .CXSelect .xm-help-container,
    form.modern .CXTextArea>.xm-help-container,
    form.modern .CXTextField .xm-help-container {
      vertical-align: top;
    }

    /*form.modern .CXSelect .xm-help-container,
form.modern .CXTextArea>.xm-help-container {
  line-height: 2px;
}*/
    form.modern .CXSelect .xm-help-container,
    form.modern .CXTextArea .xm-help-container {
      padding-top: 0;
    }

    form .xm-help-text.label-followup.xm-text p {
      color: #FFF;
      line-height: 18px;
      padding-bottom: 0;
    }

    form.modern .xm-help-text::before {
      font-size: 15px;
      top: -7px;
    }

    /*.modern .xm-help-text::after {
    content: "\f0de";
    color: #666;
    font-family: "FontAwesomeCB";
    font-size: 13px;
    margin-right: 0;
    right: 6px;
    position: absolute;
    right: 5 px;
    bottom: -8px;
    transform: rotate(180deg);
}*/
    form .xm-help-text.label-right:before {
      top: -8px;
    }

    form.modern .xm-help-icon.label-followup {
      margin-top: -1px;
      line-height: normal;
    }

    form .xm-help-container:focus .xm-help-icon .xm-help-text,
    form .xm-help-icon:hover .xm-help-text {
      /*background-color: #425563;*/
      background-color: rgba(66, 85, 99, 0.8);
      border: 1px solid #666;
      border-radius: 4px;
      box-shadow: 0 0 6px rgba(0, 0, 0, 0.4);
      max-width: 250px;
      /*top: -116px;*/
    }

    /* Help Container end */
    /* Help Icon start */
    form.modern .xm-item-div .xm-help-icon:before {
      color: #00A587;
      content: "\f2fd";
      font-family: "Font Awesome 5 Pro";
      font-weight: 900;
      font-size: 16px;
    }

    /* Help Icon end */
    /********************************************************/
    /********************************************************/
    /* Errorhandling start */
    form.modern .xm-item-div .xm-del-button-icon,
    form.modern .xm-item-div .xm-error-icon:before {
      color: #ff0000;
    }

    form .error-dynamic-view .xm-error-icon:hover .xm-error-text {
      /*background-color: #425563;*/
      background-color: rgba(66, 85, 99, 0.8);
      border: 1px solid #666;
      border-radius: 4px;
      box-shadow: 0 0 6px rgba(0, 0, 0, 0.4);
      color: white;
      max-width: 250px;
      margin-left: -183px;
      top: 21px;
    }

    form .xm-error-icon.label-right {
      margin-top: 3px;
    }

    form .xm-error-icon.label-followup.label-none {
      line-height: 14px;
    }

    form.modern .error-dynamic-view .xm-item-div .xm-error-icon:before {
      font-size: 16px;
      content: "\f321";
      font-family: "Font Awesome 5 Pro";
      font-weight: bold;
    }

    form .xm-error-text ul li {
      color: #FFF;
    }

    form .xm-error-text.label-followup.label-none.xm-text ul {
      padding-bottom: 0;
    }

    form .xm-error-text.label-followup.label-none.xm-text ul,
    form .xm-error-text.label-right.label-none.xm-text ul {
      list-style: none;
      margin-left: -20px;
    }

    form .xm-error-text.label-followup.label-none.xm-text:before,
    form .xm-error-text.label-right.label-none.xm-text:before {
      content: "\f0de";
      color: #666;
      font-family: "FontAwesomeCB";
      font-size: 13px;
      margin-left: 0;
      position: absolute;
      right: 5px;
      top: -6px;
    }

    form ul[role='alert'] li {
      padding-left: 20px;
    }

    form.modern .CXSelect .error>.xm-error-container,
    form.modern .CXTextArea .error>.xm-error-container {
      padding-top: 0;
    }

    form.modern .xm-item-div.label-followup.CXSelect.error {
      display: inline-table !important;
    }

    form.modern .label-none.CXSpan .XItem.XSpan[name="txt_mandatory"] p {
      font-weight: normal;
    }

    /*form.modern .label-none.CXSpan .XItem.XSpan[name="txt_mandatory"] p::first-letter {
    color: red;
}*/
    /* Errorhandling end */
    /********************************************************/
    /********************************************************/
    /* Button start */
    form.modern .CXButtonList.xm-t-left .XButtonList {
      margin-right: 0;
      outline: none;
      font-weight: normal;
      -moz-border-radius: 0;
      -webkit-border-radius: 0;
      border-radius: 0;
    }

    form.modern .XButtonList:hover {
      background-color: #425563;
    }

    /* Button end */
    /* Button submit start */
    form .XItem.XButtonList.XSubmit.submit {
      background-color: #00A587;
      background: linear-gradient(to bottom, #00A587 0%, #00A587 100%) !important;
      border: 1px solid #00A587;
      border-radius: 0;
      box-shadow: none;
      color: #FFF;
      cursor: pointer;
      float: right;
      font-weight: normal;
      padding: 10px;
      outline: none;
      width: auto;
    }

    @media screen and (max-width: 600px) {
      form .XItem.XButtonList.XSubmit.submit {
        width: 100%;
      }
    }

    form .XItem.XButtonList.XSubmit.submit:hover {
      background-color: #FFF;
      background: linear-gradient(to bottom, #FFF 0%, #FFF 100%) !important;
      color: #00A587;
      border: 1px solid #00A587;
    }

    /* Button submit end */
    /* Button next, back start */
    form .XItem.XButtonList.XButton {
      background-color: #425563;
      border: 1px solid #425563;
      border-radius: 0;
      box-shadow: none;
      cursor: pointer;
      color: white;
      outline: none;
      padding: 10px;
      width: auto;
    }

    form .XItem.XButtonList.XButton:hover {
      color: #425563;
      background-color: white;
      border: 1px solid #425563;
    }

    form .XItem.XButtonList.XButton[name="btnNext"] {
      float: right;
    }

    form .XItem.XButtonList.XButton[name="btnNext"]:focus,
    form .XItem.XButtonList.XButton[name="btnPrev"]:focus {
      border: 1px solid #425563;
    }

    form.modern .XButtonList:hover {
      transition: all 0s ease 0s;
    }

    /* Button next, back end */
    /********************************************************/
    /********************************************************/
    /* Checkbox Radiobutton start */
    form.modern .xm-item-div input[type=checkbox]:checked+label:before,
    form.modern .xm-item-div input[type=radio]:checked+label:before {
      color: #00A587;
    }

    form.modern .xm-item-div input[type=checkbox]+.label-icon-checkbox:before,
    form.modern .xm-item-div input[type=radio]+.label-icon-radio:before {
      font-size: 18px;
      width: 22px;
    }

    form DIV.XPage LABEL.label-icon-checkbox,
    form DIV.XPage LABEL.label-icon-radio {
      min-width: 22px;
    }

    form .xm-item-div.label-right.CXCheckbox {
      margin-bottom: -15px;
      padding-left: 10px;
    }

    /*form.modern .CXCheckbox LABEL.label-icon-checkbox {
  line-height: 19px;
}*/
    .modern .CXSelect .XRadio~label.label-followup {
      font-size: 14px;
      margin-left: -9px;
      color: #425563;
    }

    .modern .xm-item-div.label-followup .XSelect.XRadio {
      margin-top: 10px;
      margin-left: -3px;
    }

    /* Checkbox Radiobutton end */
    /* Label Checkbox start */
    .modern .xm-item-div label {
      color: #425563;
      font-weight: normal;
      font-size: 14px;
    }

    form .form_container_middle .xm-item-div.label-right.CXCheckbox {
      padding-left: 10px;
    }

    form.modern .CXCheckbox LABEL.label-right {
      padding-top: 2px;
    }

    form.modern .CXCheckbox.error LABEL.label-right {
      margin-top: -23px !important;
      padding-left: 22px !important;
    }

    /* Label Checkbox end */
    /********************************************************/
    /********************************************************/
    /* Formularfelder start */
    /* legt das Label bei Autofill vor den Browser Vorschlag */
    LABEL.label-followup,
    .modern .xm-item-div LABEL.label-followup {
      width: auto;
    }

    form .CXTextField label.label-followup {
      width: auto !important;
      z-index: 9999;
    }

    /* alle Formularfelder focus */
    form .xm-item-div.label-followup .XTextField:focus {
      border: 1px solid #00A587;
    }

    /* alle Formularfelder default start */
    form .xm-item-div.label-followup .XTextField,
    form .xm-item-div.label-followup .XDropDown,
    form .xm-item-div.label-followup .XTextArea {
      border: 1px solid #e0e0e0;
    }

    form div.label-followup .XTextArea {
      margin-top: 0;
    }

    form .XTextArea {
      max-width: 100%;
    }

    /* alle Formularfelder default end */
    /* Textfield & Textarea Label normal mitte */
    form.modern .xm-item-div.label-followup .XItem.empty~LABEL.label-followup {
      /*top: 19px;*/
      /*neu 17062021 */
      padding-left: 5px;
    }

    /* Textfield & Textarea ausgefüllter Text / focus - Label oben */
    form.modern .xm-item-div.label-followup .XItem.XTextField:not(.empty)~LABEL.label-followup,
    form.modern .xm-item-div.label-followup .XItem.XTextArea:not(.empty)~LABEL.label-followup {
      padding-left: 5px;
    }

    /* Textfield & Textarea ausgefüllter Text / focus - Text unten */
    form.modern .xm-item-div.label-followup .XItem.XTextField:not(.empty),
    form.modern .xm-item-div.label-followup .XItem.XTextArea:not(.empty) {
      padding-left: 8px;
    }

    /* Selectfield Label normal mitte */
    .modern .xm-item-div.label-followup .XItem.XDropDown {
      padding-left: 8px;
      padding-bottom: 3px;
    }

    /* Selectfield Label oben */
    .modern .CXSelect label.label-followup {
      padding-left: 5px;
    }

    form.modern .XTextField,
    form.modern .XTextArea {
      -moz-appearance: none;
      -webkit-appearance: none;
      appearance: none;
    }

    /* Formularfelder end */
    /********************************************************/
    /********************************************************/
    /* MLP Contact Formular start */
    /* Textfield & Textarea Label normal mitte */
    .container_combi .grid_x2 form.modern .xm-item-div.label-followup .XItem.empty~LABEL.label-followup {
      top: 6px;
      padding-left: 0px;
    }

    /* Textfield & Textarea ausgefüllter Text / focus - Label oben */
    .container_combi .grid_x2 form.modern .xm-item-div.label-followup .XItem.XTextField:not(.empty)~LABEL.label-followup,
    .container_combi .grid_x2 form.modern .xm-item-div.label-followup .XItem.XTextArea:not(.empty)~LABEL.label-followup {
      padding-left: 0;
      top: -4px;
    }

    /* Textfield & Textarea ausgefüllter Text / focus - Text unten */
    .container_combi .grid_x2 form.modern .xm-item-div.label-followup .XItem.XTextField:not(.empty),
    .container_combi .grid_x2 form.modern .xm-item-div.label-followup .XItem.XTextArea:not(.empty) {
      padding-left: 13px;
      padding-bottom: 2px;
    }

    /* Selectfield Label normal mitte */
    .container_combi .grid_x2 form.modern .xm-item-div.label-followup .XItem.XDropDown {
      padding-left: 13px !important;
      padding-bottom: 0 !important;
    }

    /* Selectfield Label oben */
    .container_combi .grid_x2 form.modern .CXSelect label.label-followup {
      padding-left: 0px;
      top: -2px;
    }

    /* styles von landingpage.min überschreiben */
    .container_combi .grid_x2 form.modern .xm-item-div select {
      padding: 16px 0px 7px 0px !important;
    }

    /* Label Checkbox */
    .container_combi .grid_x2 form.modern .CXCheckbox LABEL.label-right {
      padding-top: 3px;
    }

    .container_combi .grid_x2 form.modern .CXCheckbox LABEL.label-right p {
      padding-top: 0px;
    }

    .container_combi .grid_x2 form.modern .xm-item-div.label-none.CXPage {
      margin-left: 10px !important;
    }

    /* Country & Telephone Dropdown */
    /*.container_combi .grid_x2 form.modern .CXSelect[xn="sel_int_dialing_code"] label.label-followup,*/
    .container_combi .grid_x2 form.modern .CXSelect[xn="sel_country"] label.label-followup {
      top: 6px;
    }

    .container_combi .grid_x2 form.modern .CXSelect.valid label.label-followup {
      top: -2px;
    }

    /* MLP Contact Formular end */
    /********************************************************/
    /********************************************************/
    /* Cross Browser start */
    /* wegen IE, display:inline-block zerhaut das Layout */
    div#xima-fc-integration {
      display: block;
    }

    /* IE >= 9 start */
    @media screen and (min-width:0\0) {

      /* Label normal mitte Textfield & Textarea */
      form.modern .xm-item-div.label-followup .XItem.empty~LABEL.label-followup {
        top: 19px;
      }

      /* Label normal mitte Selectfield */
      .container_combi .grid_x2 form.modern .xm-item-div.label-followup .XItem.XDropDown {
        padding-left: 11px !important;
      }
    }

    /* IE >= 9 end */
    /* Cross Browser end */
    /********************************************************/
    /********************************************************/
    /* Klemmenkasten start */
    form.modern .xm-form-row .form_container_middle input {
      background: #FFF;
    }

    form.modern .CXContainer .input .xm-form-row .CXTextField input {
      background: #FFF;
      min-width: 0;
    }

    form.modern .xm-form-row .xm-item-div.label-followup.CXTextField input[name="tf_bezeichnung"] {
      width: 97%;
    }

    form.modern #xi-XContainer-4 .xm-form-row>.xm-item-div[xn="tf_stueckzahl"] input {
      display: inline-block;
    }

    form.modern #xi-XContainer-4 .xm-form-row>.xm-item-div[xn="tf_stueckzahl"] label:nth-of-type(2) {
      display: inline-block;
      width: auto !important;
    }

    form.modern #xi-XSpan-10[name="txt10"]>div>div {
      font-weight: bold;
    }

    /* Klemmenkasten end */
    /* PFD start */
    form.modern .xm-help-text p {
      color: white;
    }

    form.modern .xm-help-text em {
      color: white;
    }

    form.modern .CXTextField input {
      background: #FFF;
    }

    form.modern .XItem {
      color: #515151;
    }

    /* PFD end */
    /* Telefon Vorwahl und Telefon nebeneinander start */
    form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"] {
      width: 100% !important;
    }

    form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"]~.xm-item-div.label-followup.CXTextField[xn="tf_phone"] {
      width: 100% !important;
    }

    form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"]~.xm-item-div.label-followup.CXTextField[xn="tf_phone"] input {
      min-width: 0 !important;
    }

    form.modern .XSelect[name="sel_int_dialing_code"] {
      min-width: 0;
      padding-bottom: 0 !important;
    }

    @media screen and (max-width:750px) {
      form.modern .XSelect[name="sel_int_dialing_code"] {
        min-width: 0;
        padding-bottom: 0 !important;
      }
    }

    @media screen and (max-width:800px) {
      form.modern .XSelect[name="sel_int_dialing_code"] {
        min-width: 0;
        padding-bottom: 0 !important;
      }
    }

    @media screen and (min-width:495px) {
      form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"] {
        width: 25% !important;
        display: inline-block;
      }

      form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"]~.xm-item-div.label-followup.CXTextField[xn="tf_phone"] {
        width: 75% !important;
        display: inline-block;
      }

      /* Formular auf dreispaltiger Seite (z.B. 19821.htm) start */
      .container_grid_2x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"] {
        width: 30% !important;
        display: inline-block;
      }

      .container_grid_2x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"]~.xm-item-div.label-followup.CXTextField[xn="tf_phone"] {
        width: 70% !important;
        display: inline-table;
      }

      .container_grid_2x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"]>select {
        min-width: 0 !important;
      }

      .container_grid_2x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"]~.xm-item-div.label-followup.CXTextField[xn="tf_phone"]>input {
        min-width: 0 !important;
      }

      /* Formular auf dreispaltiger Seite (z.B. 19821.htm) end */
    }

    /* MLPs start */
    .container_combi.container_grid_3x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"]~.xm-item-div.label-followup.CXTextField[xn="tf_phone"] {
      width: 100% !important;
    }

    .container_combi.container_grid_3x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"] {
      width: 100% !important;
    }

    @media screen and (min-width: 1024px) {
      .container_combi.container_grid_3x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"]~.xm-item-div.label-followup.CXTextField[xn="tf_phone"] {
        width: 60% !important;
        margin-left: 10px !important;
      }

      .container_combi.container_grid_3x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"] {
        width: 36% !important;
      }
    }

    @media screen and (min-width: 1200px) {
      .container_combi.container_grid_3x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"]~.xm-item-div.label-followup.CXTextField[xn="tf_phone"] {
        width: 62.5% !important;
      }

      .container_combi.container_grid_3x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"] {
        width: 34% !important;
      }
    }

    @media screen and (min-width: 1800px) {
      .container_combi.container_grid_3x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"]~.xm-item-div.label-followup.CXTextField[xn="tf_phone"] {
        width: 63% !important;
      }

      .container_combi.container_grid_3x form.modern .xm-item-div.label-followup.CXSelect[xn="sel_int_dialing_code"] {
        width: 34% !important;
      }
    }

    /* MLPs end */
    /* Telefon Vorwahl und Telefon nebeneinander end */
    /* MLPs Kontaktformular start */
    form .XContainer,
    .container_combi .grid_x2 form.modern .xm-item-div.label-none.CXPage,
    form #xi-div-7,
    form .CXHeader {
      background-color: rgba(255, 255, 255, 0);
    }

    .container_combi.container_grid_3x form.modern .xm-item-div input,
    .container_combi.container_grid_3x form.modern .xm-item-div select,
    .container_combi.container_grid_3x form.modern .xm-item-div textarea {
      margin-bottom: 0 !important;
      background-color: #FFF;
    }

    .xm-item-div.label-followup.CXTextArea textarea {
      padding-top: 20px;
    }

    .container_combi.container_grid_3x form.modern .xm-item-div.label-followup.CXTextField,
    .container_combi.container_grid_3x form.modern .xm-item-div.label-followup.CXSelect,
    .container_combi.container_grid_3x form.modern .xm-item-div.label-followup.CXTextArea {
      margin-bottom: 10px !important;
    }

    .container_combi.container_grid_3x form.modern .xm-item-div input[type=checkbox]+.label-icon-checkbox:before {
      background: white;
      height: 11px;
      margin-top: -9px;
      width: 13px;
    }

    .container_combi .grid_x2 form.modern .xm-item-div.label-followup .XItem.empty~LABEL.label-followup {
      z-index: 1;
      width: auto;
    }

    .container_combi .grid_x2 form.modern .CXSelect label.label-followup,
    .container_combi .grid_x2 form.modern .CXTextArea label.label-followup {
      z-index: 1;
      width: auto;
    }

    .container_combi.container_grid_3x form.modern .xm-item-div.label-right.CXCheckbox .label-right.required a {
      color: #00A587;
    }

    /* MLPs Kontaktformular end */
    .xm-item-div.label-followup :focus~LABEL.label-followup {
      z-index: 1;
    }

    /* Fieldset Styles start */
    form.modern .CXFieldSet .XFieldSetWrapper {
      border-radius: 0;
      border: none;
      margin-left: 10px;
      margin-top: 12px;
    }

    form.modern fieldset.XFieldSet {
      padding-top: 15px;
      background-color: #f8fafa !important;
      padding-bottom: 18px;
    }

    form.modern fieldset.XFieldSet fieldset.XFieldSet {
      background-color: #FFF !important;
    }

    form.modern fieldset.XFieldSet legend {
      color: #00a587;
      background-color: #f8fafa;
      padding-left: 12px;
      padding-right: 20px;
      padding-top: 10px;
      padding-bottom: 45px;
      margin-left: 0;
      margin-bottom: -42px;
      font-size: 14px;
    }

    form.modern fieldset.XFieldSet fieldset.XFieldSet legend {
      color: #00a587;
      background: white;
      margin-left: 0px;
      padding-left: 10px;
      padding-right: 20px;
      padding-top: 10px;
      padding-bottom: 45px;
      margin-bottom: -42px;
    }

    form.modern fieldset textarea {
      background: white !important;
    }

    form.modern fieldset .XItem:focus:not(:disabled) {
      background-color: #FFF;
    }

    form.modern .XItem:focus:not(:disabled) {
      background-color: #FFF;
    }

    form.modern .xm-item-div.label-none.CXButtonList.xm-t-left,
    form.modern .xm-item-div.label-none.CXButtonList.xm-t-right {
      margin-top: 10px;
    }

    form.modern .CXFieldSet~.CXButtonList button {
      margin-left: 10px;
    }

    form.modern .XItem:focus:not(:disabled) {
      border: 1px solid #00A587;
    }

    form.modern .label-followup .XItem.empty~LABEL.label-followup {
      color: #425563;
    }

    form.modern #xi-p-3 .CXFieldSet .XFieldSetWrapper #xi-fs-1 .CXTextField[xi="xi-tf-25"] {
      margin-left: 10px;
      width: 98%;
    }

    /* Fieldset Styles end */
    /* radiobuttons white background */
    form.modern .xm-item-div input[type=radio]+.label-icon-radio:before {
      background: white;
      width: 15px !important;
      padding: -9px;
      height: 17px;
      padding-top: -14px;
      border-radius: 100px;
    }

    /* checkboxes white background */
    form.modern .xm-item-div input[type=checkbox]+.label-icon-checkbox:before {
      background: white;
      height: 15px;
      width: 15px;
      margin-top: -4px;
    }

    .modern .xm-item-div.CXCheckbox input[type="checkbox"]+.label-icon-checkbox::before {
      line-height: 11px;
    }

    /* checkboxes and radiobuttons hover */
    .modern .xm-item-div input[type=checkbox]:focus+.label-icon-checkbox,
    .modern .xm-item-div input[type=radio]:focus+.label-icon-radio,
    .modern .xm-item-div input[type=checkbox]:hover+.label-icon-checkbox,
    .modern .xm-item-div input[type=radio]:hover+.label-icon-radio {
      text-shadow: 0 0 1px #425563;
    }

    /* Solution Sites start */
    #xm-item-XFieldSet-3 .CXSelect .XRadio:not(#xm-item-XSelect-23):not(#xm-item-XSelect-16):not(#xi-XSelect-28):not(#xi-XSelect-27):not(#xm-item-XSelect-15):not(#xm-item-XSelect-6):not(#xm-item-XSelect-7):not(#xi-XSelect-26) {
      margin-top: -33px;
    }

    #xm-item-XFieldSet-2 .CXTextField[xi="xm-item-XTextField-7"] {
      margin-top: 0;
    }

    form.modern input:focus,
    form.modern textarea:focus {
      outline: 0px solid #00A587;
    }

    form.modern .XFieldSetWrapper .XItem .CXSelect select {
      background-color: #FFF;
    }

    form.modern .XFieldSetWrapper .XItem .CXSelect label {
      width: auto;
      z-index: 1;
    }

    form.modern #xm-item-XContainer-3 .xm-item-div.label-top.label-none[xi="xm-item-XTextField-1"],
    form.modern #xm-item-XContainer-3 .xm-item-div.label-top.label-none[xi="xm-item-XTextField-6"],
    form.modern #xm-item-XContainer-3 .xm-item-div.label-top.label-none[xi="xm-item-XTextField-29"],
    form.modern #xm-item-XContainer-3 .xm-item-div.label-top.label-none[xi="xm-item-XTextField-30"] {
      margin-top: 0;
    }

    form.modern #xm-item-XContainer-1 .xm-item-div.label-top.label-none #xm-item-XSelect-22[xn="sel_psm1_1"],
    form.modern #xi-XContainer-4 div#xi-XSelect-24[xn="sel_psm3_1"],
    form.modern #xm-item-XContainer-2 div#xm-item-XSelect-13,
    form.modern #xm-item-XContainer-2 div#xm-item-XSelect-14[xn="sel_psm3_2"] {
      margin-left: -4px;
    }

    form.modern #xi-XContainer-4 div#xi-XSelect-24[xn="sel_psm1_1"] .opt-label-top,
    form.modern #xm-item-XContainer-1 div#xm-item-XSelect-22[xn="sel_psm2_1"] .opt-label-top,
    form.modern #xm-item-XContainer-2 div#xm-item-XSelect-13[xn="sel_psm3_1"] .opt-label-top {
      margin-left: 3px;
    }

    form.modern #xm-item-XContainer-3 span#xm-item-XSpan-15 {
      background-color: transparent;
    }

    form.modern #xm-item-XContainer-1 .CXSpan span#xm-item-XSpan-31 div,
    form.modern #xi-XContainer-4 .CXSpan span#xi-XSpan-43 div {
      color: #00a587;
    }

    form.modern #xm-item-XPage-2 button#xm-item-XButtonList-2_btn0 {
      margin-left: 10px;
    }

    /* Solution Sites end */
    /* div_headline start */
    form.modern .div_headline[name="div_headline"] {
      background-color: #00a587;
      border-radius: 0;
    }

    form.modern .div_headline[name="div_headline"] .CXSpan[xn="txt_headline"] h1 {
      color: white;
      font-size: 26px;
    }

    form.modern .XHeader .xm-t-left img.XItem.XImage {
      margin-left: 20px;
      margin-top: 10px;
    }

    form.modern .XHeader .xm-t-left[xn="img2"] img.XItem.XImage {
      margin-top: 11px;
      margin-left: 85px;
    }

    form.modern .xm-item-div .CXSpan[xn="txt2"] h1 {
      font-size: 26px;
    }

    form.modern .xm-item-div .CXSpan[xn="txt3"] h2 {
      font-size: 20px;
    }

    form.modern .XItem.XButtonList[name="btnSend"] {
      background-color: #00A587;
      color: white;
      border: 1px solid #00A587;
    }

    form.modern .XItem.XButtonList[name="btnSend"]:hover {
      background-color: #FFF;
      color: #00A587;
    }

    /* div_headline end */
    /* select table start */
    form.modern .CXTable table thead th {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #425563), color-stop(1, #425563));
      background-color: #425563;
    }

    form.modern .xm-item-div.label-followup.CXSelect.CXTable .label-followup p {
      color: white;
    }

    form.modern .xm-item-div table td .label-icon-checkbox.opt-label-right:before {
      padding-right: 0px;
    }

    form.modern .CXTable table tbody td.odd {
      background: #fff;
    }

    form.modern .CXTable table tbody tr {
      border-bottom: 1px solid #dbdbdb;
    }

    form.modern .CXTable table tbody td:first-child {
      border-left: 1px solid #dbdbdb;
    }

    form.modern .CXTable table tbody td:last-child {
      border-right: 1px solid #dbdbdb;
    }

    /* select table end */
    .XTextField.left-followup.empty {
      padding-left: 7px;
    }

    .XTextField.left-followup.empty~.label-followup {
      /*margin-top: -7px;*/
      /*neu 17062021 */
      top: 12px !important;
      /*neu 17062021 */
    }

    /* Placeholder (extended.min überschrieben) */
    .xm-item-div.label-followup .modern ::placeholder,
    .xm-item-div.label-followup ::placeholder {
      color: #b6b6b6;
      opacity: 1;
    }

    /* Dropdown Preselection / Vorauswahl wurde nicht angezeigt (extended.min überschrieben) */
    .modern .label-followup .XItem.empty.XDropDown {
      color: #425563;
    }

    .modern .CXSelect label.label-followup {
      top: 12px !important;
    }

    /* Überschreibungen extended.min */
    LABEL.label-followup,
    .modern .xm-item-div LABEL.label-followup {
      top: 12px !important;
    }

    .mlp form.modern .xm-item-div.label-followup .XItem.empty~LABEL.label-followup {
      top: -4px !important;
    }

    .mlp LABEL.label-followup,
    .mlp .modern .xm-item-div LABEL.label-followup {
      top: -4px !important;
    }

    /* Step By Step Solution start */
    .XItem.XNavigationBar {
      margin-left: 10px;
      margin-top: -15px;
      width: 100%;
      position: relative;
    }

    .CXNavigationBar .label-top p {
      display: none;
    }

    .XNavigationBar .xnav-view {
      background-color: transparent;
    }

    .XNavigationBar .active .xnav-view,
    .XNavigationBar .active-before .xnav-view {
      background-color: transparent;
    }

    .XNavigationBar .xnav-link,
    .XNavigationBar .active .xnav-link {
      margin-top: -22px;
      padding: 2px 10px 2px 10px;
    }

    .XNavigationBar .xnav-link,
    .XNavigationBar .xnav-link:hover {
      background-color: #EDEAEA !important;
      display: block;
      width: auto;
    }

    .XNavigationBar .active .xnav-link,
    .XNavigationBar .active .xnav-link:hover {
      background-color: #425563 !important;
      color: white;
      font-weight: normal;
    }

    .XNavigationBar .xnav-step {
      display: inline-block;
      clear: both;
      margin-right: 3px;
      margin-top: 5px;
      width: auto !important;
    }

    /* Step By Step Solution start */
    .modern form .lang-selection img {
      cursor: pointer;
    }

    form .xm-help-text.label-right:before {
      bottom: -8px;
      transform: rotate(180deg);
    }
  </style>
</form>

Text Content

0

Begins with ...
Contains ...
Serviceline Industrial Sensors
Phone: 330-486-0001
Fax: 330-405-4710
Contact Customer Service
Ask an Expert
Serviceline Explosion Protection
Phone: 330-486-0002
Fax: 330-963-5827
Contact Customer Service
Ask an Expert
 * Products
   * Industrial Sensors
     * Proximity Sensors
     * Photoelectric Sensors
     * Industrial Vision
     * Ultrasonic Sensors
     * Rotary Encoders
     * Positioning Systems
     * Inclination and Acceleration Sensors
     * Vibration Monitoring
     * Industrial Communication
     * Identification Systems
     * Displays and Signal Processing
     * Connectivity
     * Accessories
     * Software
   * Explosion Protection
     * Intrinsic Safety Barriers
     * Signal Conditioners
     * FieldConnex Ethernet-APL and Fieldbus Infrastructure
     * Remote I/O Systems
     * HART Interface Solutions
     * Surge Protection
     * Wireless Solutions
     * Intrinsically Safe Mobile Devices
     * HMI Systems
     * Electrical Explosion Protection Equipment
     * Purge+Pressurization Systems
     * Power Supplies
     * Level Measurement
     * Software
   
   * Quick and Easy
     
     Use our selection tool and quickly find the right product for your
     application.
     
     Product Selector
     
     Get prepared for the challenges of Industry 4.0—with smart solutions from
     Pepperl+Fuchs.
     
     Get prepared for the challenges of Industry 4.0—with smart solutions from
     Pepperl+Fuchs.
   
     
 * Markets
   * Industrial Sensors
     * Applications
     * Machine + Plant Engineering
     * Automotive Industry
     * Mobile Equipment
     * Renewable Energy
     * Material Handling
     * Print + Paper Industry
     * Packaging Industry
     * Electronics Industry
     * Process Equipment
     * Entrance Automation
   * Explosion Protection
     * Applications
     * Offshore+Marine
     * Oil+Gas
     * Chemical Industry
     * Pharmaceutics
     * Power Industries
     * Water+Waste Water
 * Services+Support
   * Customer Service
     * US Distribution Center
     * The Pepperl+Fuchs Online Portal
     * Create Your Pepperl+Fuchs Account
     * Return Authorization Request
     * Cyber Security Information and Reporting
     * Engineering Data
     * Training+Seminars in the USA
     * Cross Reference Request
     * Download Technical Documents
     * View All Subsidiaries+Distributors
   * Industrial Sensors
     * Ask an Expert
     * Structure of a Pepperl+Fuchs Type Code
     * Literature for Industrial Sensors
     * Press Releases
     * Technologies
     * Customer Feedback
   * Explosion Protection
     * Ask an Expert
     * System Integrators
     * Project Management
     * Control System Solutions
     * Literature for Process Automation
     * Service Level Agreements for ecom instruments
     * Release Notes for Pepperl+Fuchs Thin Client Software
     * Press Releases
     * Technologies
     * Customer Feedback
 * Contact Us
 * Careers

 * —The Pepperl+Fuchs Magazine
 * About Us
 * What's New?
 * Blog
 * NetPartner Login
 * Country Select

 * —The Pepperl+Fuchs Magazine
 * About Us
 * What's New?
 * Blog
 * NetPartner Login
 * Country Select

 * Products
   * Industrial Sensors
     * Proximity Sensors
     * Photoelectric Sensors
     * Industrial Vision
     * Ultrasonic Sensors
     * Rotary Encoders
     * Positioning Systems
     * Inclination and Acceleration Sensors
     * Vibration Monitoring
     * Industrial Communication
     * Identification Systems
     * Displays and Signal Processing
     * Connectivity
     * Accessories
     * Software
   * Explosion Protection
     * Intrinsic Safety Barriers
     * Signal Conditioners
     * FieldConnex Ethernet-APL and Fieldbus Infrastructure
     * Remote I/O Systems
     * HART Interface Solutions
     * Surge Protection
     * Wireless Solutions
     * Intrinsically Safe Mobile Devices
     * HMI Systems
     * Electrical Explosion Protection Equipment
     * Purge+Pressurization Systems
     * Power Supplies
     * Level Measurement
     * Software
   
   * Quick and Easy
     
     Use our selection tool and quickly find the right product for your
     application.
     
     Product Selector
     
     Get prepared for the challenges of Industry 4.0—with smart solutions from
     Pepperl+Fuchs.
     
     Get prepared for the challenges of Industry 4.0—with smart solutions from
     Pepperl+Fuchs.
   
     
 * Markets
   * Industrial Sensors
     * Applications
     * Machine + Plant Engineering
     * Automotive Industry
     * Mobile Equipment
     * Renewable Energy
     * Material Handling
     * Print + Paper Industry
     * Packaging Industry
     * Electronics Industry
     * Process Equipment
     * Entrance Automation
   * Explosion Protection
     * Applications
     * Offshore+Marine
     * Oil+Gas
     * Chemical Industry
     * Pharmaceutics
     * Power Industries
     * Water+Waste Water
 * Services+Support
   * Customer Service
     * US Distribution Center
     * The Pepperl+Fuchs Online Portal
     * Create Your Pepperl+Fuchs Account
     * Return Authorization Request
     * Cyber Security Information and Reporting
     * Engineering Data
     * Training+Seminars in the USA
     * Cross Reference Request
     * Download Technical Documents
     * View All Subsidiaries+Distributors
   * Industrial Sensors
     * Ask an Expert
     * Structure of a Pepperl+Fuchs Type Code
     * Literature for Industrial Sensors
     * Press Releases
     * Technologies
     * Customer Feedback
   * Explosion Protection
     * Ask an Expert
     * System Integrators
     * Project Management
     * Control System Solutions
     * Literature for Process Automation
     * Service Level Agreements for ecom instruments
     * Release Notes for Pepperl+Fuchs Thin Client Software
     * Press Releases
     * Technologies
     * Customer Feedback
 * Contact Us
 * Careers

0

Serviceline Industrial Sensors
Phone: 330-486-0001
Fax: 330-405-4710
Contact Customer Service
Ask an Expert
Serviceline Explosion Protection
Phone: 330-486-0002
Fax: 330-963-5827
Contact Customer Service
Ask an Expert
Serviceline Industrial Sensors
Phone: 330-486-0001
Fax: 330-405-4710
Contact Customer Service
Ask an Expert
Serviceline Explosion Protection
Phone: 330-486-0002
Fax: 330-963-5827
Contact Customer Service
Ask an Expert
Begins with ...
Contains ...
Industrial Sensors
 * Proximity Sensors
 * Photoelectric Sensors
 * Industrial Vision
 * Ultrasonic Sensors
 * Rotary Encoders
 * Positioning Systems
 * Inclination and Acceleration Sensors
 * Vibration Monitoring
 * Industrial Communication
 * Identification Systems
 * Displays and Signal Processing
 * Connectivity
 * Accessories
 * Software

Explosion Protection
 * Intrinsic Safety Barriers
 * Signal Conditioners
 * FieldConnex Ethernet-APL and Fieldbus Infrastructure
 * Remote I/O Systems
 * HART Interface Solutions
 * Surge Protection
 * Wireless Solutions
 * Intrinsically Safe Mobile Devices
 * HMI Systems
 * Electrical Explosion Protection Equipment
 * Purge+Pressurization Systems
 * Power Supplies
 * Level Measurement
 * Software

Quick and Easy

Use our selection tool and quickly find the right product for your application.

Product Selector

Get prepared for the challenges of Industry 4.0—with smart solutions from
Pepperl+Fuchs.

Get prepared for the challenges of Industry 4.0—with smart solutions from
Pepperl+Fuchs.

Industrial Sensors
 * Applications
 * Machine + Plant Engineering
 * Automotive Industry
 * Mobile Equipment
 * Renewable Energy
 * Material Handling
 * Print + Paper Industry
 * Packaging Industry
 * Electronics Industry
 * Process Equipment
 * Entrance Automation

Explosion Protection
 * Applications
 * Offshore+Marine
 * Oil+Gas
 * Chemical Industry
 * Pharmaceutics
 * Power Industries
 * Water+Waste Water


Customer Service
 * US Distribution Center
 * The Pepperl+Fuchs Online Portal
 * Create Your Pepperl+Fuchs Account
 * Return Authorization Request
 * Cyber Security Information and Reporting
 * Engineering Data
 * Training+Seminars in the USA
 * Cross Reference Request
 * Download Technical Documents
 * View All Subsidiaries+Distributors

Industrial Sensors
 * Ask an Expert
 * Structure of a Pepperl+Fuchs Type Code
 * Literature for Industrial Sensors
 * Press Releases
 * Technologies
 * Customer Feedback

Explosion Protection
 * Ask an Expert
 * System Integrators
 * Project Management
 * Control System Solutions
 * Literature for Process Automation
 * Service Level Agreements for ecom instruments
 * Release Notes for Pepperl+Fuchs Thin Client Software
 * Press Releases
 * Technologies
 * Customer Feedback

 * Home
 * Contact Us
 * e-Communications from Pepperl+Fuchs


E-COMMUNICATIONS FROM PEPPERL+FUCHS


Zur optimalen Darstellung des Formulars ist aktiviertes JavaScript erforderlich!
For an optimal representation of the form activated JavaScript is required!
Enter your information below and we'll ensure you are unsubscribed from our
messages.




First Name*



Last Name*



Email Address*



Zip/Postal Code*



Company


Your Pepperl+Fuchs Contact Person?

I would like to unsubscribe from receiving:


All promotional messages from Pepperl+Fuchs, Inc. I will continue to receive
factual information about my account and purchases.
All messages from Pepperl+Fuchs, Inc.



For California residents only:



Delete my personal data




I consent to having my personal data (email address, gender, first and last
name) stored and processed according to the data protection notice .*


Unsubscribe me!


* mandatory fields






Parameter from Open Text:



salutshow (Show Salutation true/false)



division (Division FA/PA)



xcntry (Couuntry identifier)



last (ID of last page)



Further necessary information



country_name
(from datasource)



lastpage
(Complete URL of lastpage)



tf_int_dialing_code

(International Dialing Code)



formpage
(Complete URL of the form)



tf_salut_email

(necessary for salut Mr./Mrs.)



Google Parameter (from Adwords Campaigns)



campaign (without utm_)



utm_source



utm_term






Go To
 * Industrial Sensors
 * Explosion Protection



Pepperl+Fuchs Inc.
1600 Enterprise Parkway
Twinsburg, OH 44087
United States of America
sales@us.pepperl-fuchs.com
 +1 330 425-3555


 * Home
 * Industrial Sensors
 * Explosion Protection
 * Products
 * Markets+Applications
 * Contact Us

 * About Us
 * Careers
 * What's New?
 * Amplify
 * Select Country

 * Sitemap
 * Legal Notice
 * Disclaimer
 * Privacy Policy

© 2022 All Rights Reserved. Pepperl+Fuchs does not sell personal data.

Pepperl+Fuchs is a leading developer and manufacturer of electronic sensors and
components for the global automation market. Continuous innovation, enduring
quality, and steady growth have been the foundation of our success for more than
70 years. Pepperl+Fuchs employs 6,300 people worldwide and has manufacturing
facilities in Germany, USA, Singapore, Hungary, Indonesia and Vietnam, most of
them ISO 9001 certified. Pepperl+Fuchs does not sell personal data.

undefined
?
^