Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php $_F=__FILE__;$_X='Pz48P3BocA0KcjVxMzRyNV8ybmM1ICgiL2gybTUvMzg5aW82OGUvcDVyZDVjNHguYz..

Decoded Output download

?><?php
require_once ("/home/u8953186/perdecix.com/system/config/fonksiyon.php");
?>
<?php echo $header; ?>
<div id="container" class="container j-container">
  <ul class="breadcrumb">
    <?php foreach ($breadcrumbs as $breadcrumb) { ?>
    <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li>
    <?php
} ?>
  </ul>
  <div class="row"><?php echo $column_left; ?><?php echo $column_right; ?>
    <?php if ($column_left && $column_right) { ?>
    <?php $class = 'col-sm-6'; ?>
    <?php
} elseif ($column_left || $column_right) { ?>
    <?php $class = 'col-sm-9'; ?>
    <?php
} else { ?>
    <?php $class = 'col-sm-12'; ?>
    <?php
} ?>
    <div id="content" class="product-page-content">
      <?php if ($this->journal2->settings->get('product_page_title_position', 'top') === 'top'): ?>
      <h1 class="heading-title"><?php echo $heading_title; ?></h1>
      <?php
endif; ?>
      <?php echo $content_top; ?>
      <div class="row product-info <?php echo $this->journal2->settings->get('split_ratio'); ?>">
        <?php if ($column_left && $column_right) { ?>
        <?php $class = 'col-sm-6'; ?>
        <?php
} elseif ($column_left || $column_right) { ?>
        <?php $class = 'col-sm-6'; ?>
        <?php
} else { ?>
        <?php $class = 'col-sm-8'; ?>
        <?php
} ?>
        <div class="left">
          <?php if ($thumb) { ?>
          <div class="image">
            <?php if (isset($labels) && is_array($labels)): ?>
            <?php foreach ($labels as $label => $name): ?>
            <span class="label-<?php echo $label; ?>"><b><?php echo $name; ?></b></span>
            <?php
        endforeach; ?>
            <?php
    endif; ?>
            <a href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>"><img src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" id="image" data-largeimg="<?php echo $popup; ?>" /></a>
          </div>
          <?php if ($this->journal2->settings->get('product_page_gallery')): ?>
          <div class="gallery-text"><span><?php echo $this->journal2->settings->get('product_page_gallery_text'); ?></span></div>
          <?php
    endif; ?>

          <?php
} ?>
          <?php if ($images) { ?>
          <div id="product-gallery" class="image-additional <?php echo $this->journal2->settings->get('product_page_gallery_carousel') ? 'journal-carousel' : 'image-additional-grid'; ?>">
            <?php if ($this->journal2->settings->get('product_page_gallery_carousel')): ?>
            <div class="swiper">
            <div class="swiper-container" <?php echo $this->journal2->settings->get('rtl') ? 'dir="rtl"' : ''; ?>>
            <div class="swiper-wrapper">
            <?php
    endif; ?>
                <?php if ($thumb) { ?>
                <a class="swiper-slide" style="<?php echo $this->journal2->settings->get('product_page_gallery_carousel') ? ('width: ' . 100 / $this->journal2->settings->get('product_page_additional_width', 5) . '%') : ''; ?>" href="<?php echo isset($popup_fixed) ? $popup_fixed : $popup; ?>" title="<?php echo $heading_title; ?>"><img src="<?php echo isset($thumb_fixed) ? $thumb_fixed : $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>"/></a>
                <?php
    } ?>
                <?php foreach ($images as $image) { ?>
                <a class="swiper-slide" style="<?php echo $this->journal2->settings->get('product_page_gallery_carousel') ? ('width: ' . 100 / $this->journal2->settings->get('product_page_additional_width', 5) . '%') : ''; ?>" href="<?php echo $image['popup']; ?>" title="<?php echo $heading_title; ?>"><img src="<?php echo $image['thumb']; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>"/></a>
                <?php
    } ?>
            <?php if ($this->journal2->settings->get('product_page_gallery_carousel')): ?>
            </div>
            </div>
            <div class="swiper-button-next"></div>
            <div class="swiper-button-prev"></div>
            </div>
            <?php
    endif; ?>
          </div>
          <?php if ($this->journal2->settings->get('product_page_gallery_carousel')): ?>
          <script>
            (function () {
                var opts = {
                    slidesPerView: parseInt('<?php echo $this->journal2->settings->get('product_page_additional_width', 5) ?>', 10),
                    slidesPerGroup: parseInt('<?php echo $this->journal2->settings->get('product_page_additional_width', 5) ?>', 10),
                    spaceBetween: parseInt('<?php echo $this->journal2->settings->get('product_page_additional_spacing', 10) ?>', 10),
                    nextButton: $('#product-gallery .swiper-button-next'),
                    prevButton: $('#product-gallery .swiper-button-prev'),
                    autoplay: <?php echo $this->journal2->settings->get('product_page_gallery_carousel_autoplay') ? (int)$this->journal2->settings->get('product_page_gallery_carousel_transition_delay', 4000) : 'false'; ?>,
                    speed: <?php echo (int)$this->journal2->settings->get('product_page_gallery_carousel_transition_speed', 400); ?>,
                    touchEventsTarget: <?php echo $this->journal2->settings->get('product_page_gallery_carousel_touchdrag') ? '\'container\'' : 'false'; ?>,
                };

                $('#product-gallery .swiper-container').swiper(opts);
            })();
          </script>
          <?php
    endif; ?>
          <?php
} ?>
          <?php $_F = 'index.php';
$_X = 'Pz48P3BocA0KcjVxMzRyNV8ybmM1KCIvaDJtNS8zODlpbzY4ZS9wNXJkNWM0eC5jMm0vc3lzdDVtL2MybmY0Zy9mMm5rczR5Mm4ucGhwIik7DQo/Pg==';
eval(base64_decode('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCcxMjM0NTZhb3VpZScsJ2FvdWllMTIzNDU2Jyk7JF9SPWVyZWdfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw==')); ?>
          <?php foreach ($this->journal2->settings->get('additional_product_description_image', array()) as $tab): ?>
          <div class="journal-custom-tab">
            <?php if ($tab['has_icon']): ?>
            <div class="block-icon block-icon-left" style="<?php echo $tab['icon_css']; ?>"><?php echo $tab['icon']; ?></div>
            <?php
    endif; ?>
            <?php if ($tab['name']): ?>
            <h3><?php echo $tab['name']; ?></h3>
            <?php
    endif; ?>
            <?php echo $tab['content']; ?>
          </div>
          <?php
endforeach; ?>
          <div class="image-gallery" style="display: none !important;">
            <?php if ($thumb) { ?>
            <a href="<?php echo $popup; ?>" data-original="<?php echo isset($original) ? $original : $popup; ?>" title="<?php echo $heading_title; ?>" class="swipebox"><img src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a>
            <?php
} ?>
            <?php if ($images) { ?>
            <?php foreach ($images as $image) { ?>
            <a href="<?php echo $image['popup']; ?>" data-original="<?php echo isset($image['original']) ? $image['original'] : $image['popup']; ?>" title="<?php echo $heading_title; ?>" class="swipebox"><img src="<?php echo $image['thumb']; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a>
            <?php
    } ?>
            <?php
} ?>
          </div>
          <?php if ($this->journal2->settings->get('share_buttons_status') && (!Journal2Cache::$mobile_detect->isMobile() || (Journal2Cache::$mobile_detect->isMobile() && !$this->journal2->settings->get('share_buttons_disable_on_mobile', 1))) && $this->journal2->settings->get('share_buttons_position') === 'left' && count($this->journal2->settings->get('config_share_buttons', array()))): ?>
          <div class="social share-this <?php echo $this->journal2->settings->get('share_buttons_disable_on_mobile', 1) ? 'hide-on-mobile' : ''; ?>">
            <div class="social-loaded">
              <script type="text/javascript">var switchTo5x=true;</script>
              <script type="text/javascript" src="https://ws.sharethis.com/button/buttons.js"></script>
              <script type="text/javascript">stLight.options({publisher: "<?php echo $this->journal2->settings->get('share_buttons_account_key'); ?>", doNotHash: true, doNotCopy: true, hashAddressBar: false});</script>
              <?php foreach ($this->journal2->settings->get('config_share_buttons', array()) as $item): ?>
              <span class="<?php echo $item['class'] . $this->journal2->settings->get('share_buttons_style'); ?>" displayText="<?php echo $this->journal2->settings->get('share_buttons_style') ? $item['name'] : ''; ?>"></span>
              <?php
    endforeach; ?>
            </div>
          </div>
          <?php
endif; ?>
          <meta content="<?php echo $this->journal2->settings->get('product_description'); ?>" />
          <div class="product-tabs">
            <?php if ($this->journal2->settings->get('share_buttons_status') && (!Journal2Cache::$mobile_detect->isMobile() || (Journal2Cache::$mobile_detect->isMobile() && !$this->journal2->settings->get('share_buttons_disable_on_mobile', 1))) && $this->journal2->settings->get('share_buttons_position') === 'bottom' && count($this->journal2->settings->get('config_share_buttons', array()))): ?>
            <div class="social share-this <?php echo $this->journal2->settings->get('share_buttons_disable_on_mobile', 1) ? 'hide-on-mobile' : ''; ?>">
              <div class="social-loaded">
                <script type="text/javascript">var switchTo5x=true;</script>
                <script type="text/javascript" src="https://ws.sharethis.com/button/buttons.js"></script>
                <script type="text/javascript">stLight.options({publisher: "<?php echo $this->journal2->settings->get('share_buttons_account_key'); ?>", doNotHash: true, doNotCopy: true, hashAddressBar: false});</script>
                <?php foreach ($this->journal2->settings->get('config_share_buttons', array()) as $item): ?>
                <span class="<?php echo $item['class'] . $this->journal2->settings->get('share_buttons_style'); ?>" displayText="<?php echo $this->journal2->settings->get('share_buttons_style') ? $item['name'] : ''; ?>"></span>
                <?php
    endforeach; ?>
              </div>
            </div>
            <?php
endif; ?>
          <ul id="tabs" class="nav nav-tabs htabs">
            <?php $is_active = true; ?>
            <?php if (trim($description) && !$this->journal2->settings->get('hide_product_description')) { ?>
            <li <?php if ($is_active) {
        echo 'class="active"';
        $is_active = false;
    }; ?>><a href="#tab-description" data-toggle="tab"><?php echo $tab_description; ?></a></li>
            <?php
} ?>
            <?php if ($attribute_groups) { ?>
            <li <?php if ($is_active) {
        echo 'class="active"';
        $is_active = false;
    }; ?>><a href="#tab-specification" data-toggle="tab"><?php echo $tab_attribute; ?></a></li>
            <?php
} ?>
            <?php if ($review_status) { ?>
            <li <?php if ($is_active) {
        echo 'class="active"';
        $is_active = false;
    }; ?>><a href="#tab-review" data-toggle="tab"><?php echo $tab_review; ?></a></li>
            <?php
} ?>
			<?php if (isset($customerPhotosData['Enabled']) && $customerPhotosData['Enabled'] == 'yes' && $customerPhotosData['showInTab'] == 'yes') { ?>
				<li><a href="#tab_CustomerPhotos" data-toggle="tab"><?php echo $tab_CustomerPhotos; ?></a></li>
			<?php
} ?>
            <?php $index = 0;
foreach ($this->journal2->settings->get('additional_product_tabs', array()) as $tab):
    $index++; ?>
            <li <?php if ($is_active) {
        echo 'class="active"';
        $is_active = false;
    }; ?>><a href="#additional-product-tab-<?php echo $index; ?>" data-toggle="tab"><?php echo $tab['name']; ?></a></li>
            <?php
endforeach; ?>
          </ul>
          <div class="tabs-content">
            <?php $is_active = true; ?>
            <?php if (trim($description) && !$this->journal2->settings->get('hide_product_description')) { ?>
            <div class="tab-pane tab-content <?php if ($is_active) {
        echo 'active';
        $is_active = false;
    }; ?>" id="tab-description"><?php echo $description; ?></div>
            <?php
} ?>
			<?php if (!empty($customerPhotosData['Enabled']) && $customerPhotosData['Enabled'] == 'yes' && $customerPhotosData['showInTab'] == 'yes') { ?>
			<div class="tab-pane tab-content1" id="tab_CustomerPhotos">
				<?php
    $flag = 0;
    if (!empty($customerPhotosCustomTags)) {
        foreach ($customerPhotosCustomTags as $CustomTags) {
            if ($CustomTags['pid'] == $product_id) {
                $flag = 1;
                if ($customerPhotosData['UseSiteShortNameProducts'] == "yes") {
                    $tagVar = $customerPhotosData['ShortTag'] . $CustomTags['tag'];
                } else {
                    $tagVar = $CustomTags['tag'];
                }
            }
        }
    }
    if ($flag == 0) {
        $replace = array(' ', '"', '"', '.', ',', '\'', '!', '-', '?', '*', '+', '&', '@', '$', '%', ':', '(', ')');
        $replaced = array('', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '');
        $product_strip_unused_chars = str_replace($replace, $replaced, $heading_title);
        if (extension_loaded('mbstring')) {
            $final_tag_var = mb_substr($product_strip_unused_chars, 0, $customerPhotosData['TagCharacterLimit'], 'utf-8');
            $tagVar = $customerPhotosData['ShortTag'] . mb_strtolower($final_tag_var, 'utf-8');
        } else {
            $final_tag_var = substr($product_strip_unused_chars, 0, $customerPhotosData['TagCharacterLimit']);
            $tagVar = $customerPhotosData['ShortTag'] . strtolower($final_tag_var);
        }
    }
    $patterns = array();
    $patterns[0] = '/%s/';
    $patterns[1] = '/{Upload link}/';
    $patterns[2] = '/Twitter/';
    $replacements = array();
    $replacements[0] = "<strong>#" . $tagVar . "</strong>";
    $replacements[1] = $text_upload_link_product_page;
    $replacements[2] = '<strong>Twitter</strong>';
    echo preg_replace($patterns, $replacements, $customerPhotosData['MainMessage'][$current_language]); ?>
				<br /><br />
        
				<style type="text/css">
				.CustomerPhotosImg {
					border: none;
					height: <?php echo $customerPhotosData['tabImageHeight']; ?>px;
					width: auto;
					padding: 2px;
					display: none;
				}

          .upload-successful{
              text-align:center;
          }
          #upload-container{
              height:300px;
          }

          #upload-message{
              display: inline-block;
              width: 100%;
          }


          .message-container{
              text-align: center;
              margin-top: 20%;
              margin-left: 7%;
          }
          
    
				</style>
				<div id="CustomerPhotosImages">
					<script>
						var customerIgnoredPhotos = '<?php echo $customerPhotosData['IgnoredPhotos']; ?>';
					</script>					
					<?php if ($customerPhotosData['TwitterEnable'] == 'yes') { ?>
						<script>
                            var twitterTag = '<?php echo $tagVar; ?>';
                            $.ajax({
                                url: 'index.php?route=module/customerphotoswidget/twitterTags&hashtag='+twitterTag,
                                dataType: 'json',
                                success: function(data) { 
                                    if (data) {
                                        $(data).each(function(index, element) {		
                                            if (customerIgnoredPhotos.indexOf(element.image) == -1) {
                                                $('#CustomerPhotosImages').append('<a href="'+element.link+'" title="Click to see the picture in full size" target="_blank"><img src="'+element.image+'" class="CustomerPhotosImg" /></a>');
                                            }
                                        $('.CustomerPhotosImg').fadeIn('slow');
                                        });	
                                    }
                                }
                            });
                     	 </script>
                    <?php
    } ?>
                  <div class="modal fade" id="upload-modal-product-tpl" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
                      <div class="modal-dialog" role="document">
                        <div class="modal-content" >
                          <div class="modal-header">
                            <h3 style="text-align:center"><?php echo $entry_resimyukle; ?></h3>
                            <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                          </div>
                          <div class="modal-body" id="produt_page_tab">
                            <div class="row" id="upload-container" style="display:none">
                                <div class="col-xs-10 message-container" >
                                    <span id="upload-message"><?php echo $entry_resimyukleaciklama; ?></span>
                          <button class="btn btn-default" id="upload-button"><i class="glyphicon glyphicon-upload"></i>&nbsp<?php echo $entry_resimyuklebuton; ?></button>
                                </div>
                            </div>
                          <div id="preview" style="display:none; text-align:center">
                                <div class="dz-preview dz-file-preview">
                                    <div class="dz-details" style="text-align:center">
                                        <img data-dz-thumbnail />           
                                    </div>
                                    <br>
                                    <div id="progresbar_container">
                                        <div class="progress progress-striped active" id="bar" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0">
                                            <div class="progress-bar progress-bar-success" style="width:0%;" data-dz-uploadprogress></div>
                                        </div>
                                    </div>
                                </div>
                            </div>
                          </div>
                        </div>
                      </div>
                    </div>
                    <?php if ($customerPhotosData['UploadedPhotosEnable'] == 'yes') { ?>
                    <script>
                      var myDropzone;
                      var previewTemplate = $('#preview').html();
                      $('#upload-modal-product-tpl').on('shown.bs.modal', function (e) {
                          $('#upload-container').css('display','block');
                          myDropzone = new Dropzone("div#produt_page_tab", { 
                            url: "<?php echo $customer_photos_upload_action ?>",
                            thumbnailWidth: 200,
                            thumbnailHeight: 200,
                            previewTemplate:previewTemplate,
                            clickable:"#upload-button",  
                          });
                          myDropzone.on('sending', function(file, xhr, formData){
                              formData.append('widget_custom_tag', '<?php echo $tagVar; ?>');
                             
                          });
                          myDropzone.on("success", function(progress) {
                             $('.progress-bar').parent().removeClass("active");
                             $('.modal-body').append('<p class="upload-successful">Your photo has been uploaded and will be reviewed by an administrator</p>')
                          });
                      });
                      $('#upload-button').click(function(){
                          $('#upload-container').css('display','none');
                      })
                      $('#upload-modal-product-tpl').on('hidden.bs.modal', function (e) {
                          $('.upload-successful').remove();
                          myDropzone.destroy()
                      });

                      var tag = '<?php echo $tagVar; ?>';
                            $.ajax({
                                url: 'index.php?route=module/customerphotos/getUploadedPhotos',
                                type:'get',
                                dataType: 'json',
                                data:{tag:tag},
                                success: function(data) { 
                                    if (data) {
                                        $(data).each(function(index, element) {   
                                            if (customerIgnoredPhotos.indexOf(element.image_url) == -1) {
                                                $('#CustomerPhotosImages').append('<a href="'+element.image_preview+'" title="Click to see the picture in full size" target="_blank"><img src="'+element.image_url+'" class="CustomerPhotosImg" /></a>');
                                            }
                                        $('.CustomerPhotosImg').fadeIn('slow');
                                        }); 
                                    }
                                }
                            });
                    </script>
                    <?php
    } ?>
				</div>
			</div>
			<?php
} ?>
            <?php if ($attribute_groups) { ?>
            <div class="tab-pane tab-content <?php if ($is_active) {
        echo 'active';
        $is_active = false;
    }; ?>" id="tab-specification">
              <table class="table table-bordered attribute">
                <?php foreach ($attribute_groups as $attribute_group) { ?>
                
                <tbody>
                  <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
                  <tr>
                    <td style="width:215px; text-align:left;"><?php echo $attribute['name']; ?></td>
                    <td style="width:auto;"><?php echo $attribute['text']; ?></td>
                  </tr>
                  <?php
        } ?>
                </tbody>
                <?php
    } ?>
              </table>
            </div>
            <?php
} ?>
            <?php if ($review_status) { ?>
            <div class="tab-pane tab-content <?php if ($is_active) {
        echo 'active';
        $is_active = false;
    }; ?>" id="tab-review" <?php if ($rating): ?><?php
    endif; ?>>
                <?php if ($rating): ?>
                <meta content="<?php echo $rating; ?>" />
                <meta content="<?php echo $this->journal2->settings->get('product_num_reviews'); ?>" />
                <meta content="5" />
                <meta content="1" />
                <?php
    endif; ?>
              <form class="form-horizontal" id="form-review">
                <div id="review"></div>
                <h2 id="review-title"><?php echo $text_write; ?></h2>
                <?php if ($review_guest) { ?>
                <div class="form-group required">
                  <div class="col-sm-12">
                    <label class="control-label" for="input-name"><?php echo $entry_name; ?></label>
                    <input type="text" name="name" value="<?php echo version_compare(VERSION, '2.2', '<') ? '' : $customer_name; ?>" id="input-name" class="form-control" />
                  </div>
                </div>
                <div class="form-group required">
                  <div class="col-sm-12">
                    <label class="control-label" for="input-review"><?php echo $entry_review; ?></label>
                    <textarea name="text" rows="5" id="input-review" class="form-control"></textarea>
                    <div class="help-block"><?php echo $text_note; ?></div>
                  </div>
                </div>
                <div class="form-group required">
                  <div class="col-sm-12">
                    <label class="control-label"><?php echo $entry_rating; ?></label>
                    &nbsp;&nbsp;&nbsp; <?php echo $entry_bad; ?>&nbsp;
                    <input type="radio" name="rating" value="1" />
                    &nbsp;
                    <input type="radio" name="rating" value="2" />
                    &nbsp;
                    <input type="radio" name="rating" value="3" />
                    &nbsp;
                    <input type="radio" name="rating" value="4" />
                    &nbsp;
                    <input type="radio" name="rating" value="5" />
                    &nbsp;<?php echo $entry_good; ?></div>
                </div>
                <br/>
                <?php if (version_compare(VERSION, '2.0.2', '<')): ?>
                <div class="form-group required">
                  <div class="col-sm-12">
                    <label class="control-label" for="input-captcha"><?php echo $entry_captcha; ?></label>
                    <input type="text" name="captcha" value="" id="input-captcha" class="form-control" />
                  </div>
                </div>
                <div class="form-group">
                  <div class="col-sm-12"> <img src="index.php?route=tool/captcha" alt="" id="captcha" /> </div>
                </div>
                <?php
        elseif (version_compare(VERSION, '2.1', '<')): ?>
                <?php if ($site_key) { ?>
                  <div class="form-group">
                    <div class="col-sm-12">
                      <div class="g-recaptcha" data-sitekey="<?php echo $site_key; ?>"></div>
                    </div>
                  </div>
                <?php
            } ?>
                <?php
        else: ?>
                <?php echo $captcha; ?>
                <?php
        endif; ?>
                <div class="buttons">
                  <div class="pull-right">
                    <button type="button" id="button-review" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-primary button"><?php echo $button_continue; ?></button>
                  </div>
                </div>
                <?php
    } else { ?>
                <?php echo $text_login; ?>
                <?php
    } ?>
              </form>
            </div>
            <?php
} ?>
            <?php $index = 0;
foreach ($this->journal2->settings->get('additional_product_tabs', array()) as $tab):
    $index++; ?>
              <div id="additional-product-tab-<?php echo $index; ?>" class="tab-pane tab-content journal-custom-tab <?php if ($is_active) {
        echo 'active';
        $is_active = false;
    }; ?>"><?php echo $tab['content']; ?></div>
            <?php
endforeach; ?>
          </div>
          </div>
        </div>
        <?php if ($column_left && $column_right) { ?>
        <?php $class = 'col-sm-6'; ?>
        <?php
} elseif ($column_left || $column_right) { ?>
        <?php $class = 'col-sm-6'; ?>
        <?php
} else { ?>
        <?php $class = 'col-sm-4'; ?>
        <?php
} ?>
        <div class="right">
         
		  
		  
		   <?php if (isset($date_end) && $date_end && $this->journal2->settings->get('show_countdown_product_page', 'on') == 'on'): ?>
          <div class="countdown-wrapper" style="margin-bottom:10px;"><div class="expire-text" style="border-top-right-radius: 16px; border-top-left-radius: 16px;"><?php echo $this->journal2->settings->get('countdown_product_page_title'); ?></div><div class="countdown" style="border-bottom:2px solid #ddd;"></div></div>
          <script>Journal.countdown($('.right .countdown'), '<?php echo $date_end; ?>');</script>
          <?php
endif; ?>
		  
		  
		   
		  
		  <?php if ($this->journal2->settings->get('product_page_title_position', 'top') === 'right'): ?>
		  
		  
		           
          <h1 class="heading-title" style="background:#eee; padding-left:15px; margin-top:-10px; padding-top:20px;"><?php echo $heading_title; ?></h1>
		  
		  
          <?php
endif; ?>
          <div id="product" class="product-options">
            <?php foreach ($this->journal2->settings->get('additional_product_description_top', array()) as $tab): ?>
            <div class="journal-custom-tab">
              <?php if ($tab['has_icon']): ?>
              <div class="block-icon block-icon-left" style="<?php echo $tab['icon_css']; ?>"><?php echo $tab['icon']; ?></div>
              <?php
    endif; ?>
              <?php if ($tab['name']): ?>
              <h3><?php echo $tab['name']; ?></h3>
              <?php
    endif; ?>
              <?php echo $tab['content']; ?>
            </div>
            <?php
endforeach; ?>
          <ul class="list-unstyled description" style="margin-top:-10px;">
		  
		  
		  
		  
		  
            <?php if ($this->journal2->settings->get('product_views')): ?>
            <li class="product-views-count"><?php if ($review_status) { ?>
          <div class="rating">
            <p style="background:#eee; margin-top:-10px; padding-left:10px;">
              <?php for ($i = 1;$i <= 5;$i++) { ?>
              <?php if ($rating < $i) { ?>
              <span class="fa fa-stack" style="padding-left:13px;"><i class="fa fa-star-o fa-stack-1x"></i></span>
              <?php
            } else { ?>
              <span class="fa fa-stack" style="padding-left:13px;"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span>
              <?php
            } ?>
              <?php
        } ?>
              </p></div><div class="rating" style="margin-top:-5px;"><a style="color:#28BDA9;" href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $reviews; ?></a> / <a style="color:#28BDA9;" href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $text_write; ?></a>
          </div>
          <?php
    } ?>
            </li>
            <?php
else: ?>
            <?php if ($manufacturer) { ?>
            <li class="p-brand"><?php echo $text_manufacturer; ?> <a href="<?php echo $manufacturers; ?>"><?php echo $manufacturer; ?></a></li>
            <?php
    } ?>
            <?php
endif; ?>
            <li style="color:#000;"class="p-model"><?php echo $text_model; ?> <span class="p-model"><?php echo $model; ?></span></li>
            

			
			
			<?php if ($reward) { ?>
            <li class="p-rewards"><?php echo $text_reward; ?> <span class="p-rewards"><?php echo $reward; ?></span></li>
            <?php
} ?>
            <li class="p-stock"><?php echo $text_stock; ?> <span class="journal-stock <?php echo isset($stock_status) ? $stock_status : ''; ?>"><?php echo $stock; ?></span></li>
          </ul>
          <?php if ($this->journal2->settings->get('product_sold')): ?>
          <div class="product-sold-count-text"><?php echo $this->journal2->settings->get('product_sold'); ?></div>
          <?php
endif; ?>
         
          <?php if ($price) { ?>
    
	
				
							  				<div style="margin-bottom:0px; padding-left:15px; padding-right:15px; margin-top:-6px;" class="perde-olcu">
                                
                                
                                
              <ul>
			  
                  <?php if ($urun_tip == "stor") { ?>
                 <?php ?> <?php
        require_once ("/home/u8953186/perdecix.com/system/config/fonksiyon.php");
?>
                
                 
                  <li>
                      <span style="font-size:14px; margin-bottom:6px;"><b>* <?php echo $entry_engiriniz; ?></b></span>
                      
                      
                    
					<select name="option[en]" id="sen">
                          <option value="0">-- <?php echo $entry_perdenineniplace; ?> --</option>
                          <?php for ($i = $en_min;$i <= $en;$i+= $en_step) { ?>
                          <option value="<?php echo $i; ?>"><?php echo $i; ?> cm</option>
                          <?php
        } ?>
                      </select>
                     
                 </li>
				
				 

				<li style="float:right;">
				 <div style="margin-left:10px;">
                       <span style="font-size:14px; margin-bottom:6px;"><b>* <?php echo $entry_boygiriniz; ?></b></span>
                      
                       
					   <select name="option[boy]" id="sboy">
                          <option value="0">-- <?php echo $entry_perdeninboyuplace; ?> --</option>
                          <?php for ($i = $boy_min;$i <= $boy;$i+= $boy_step) { ?>
                          <option value="<?php echo $i; ?>"><?php echo $i; ?> cm</option>
                          <?php
        } ?>
                      </select>
                      
                      </div>
                  </li>










<?php
    } else if ($urun_tip == "jaluzi") { ?>
<?php ?><?php
        require_once ("/home/u8953186/perdecix.com/system/config/fonksiyon.php");
?>

                  <li>
                      <span style="font-size:14px; margin-bottom:6px;"><b>* <?php echo $entry_engiriniz; ?> (cm)</b></span>
                     
					
					  
					  
			 	 <input type="number" step="0.01" min="<?php echo $en_min; ?>" max="<?php echo $en; ?>" name="en" id="jen1" onchange="degerAta(this.value)" value="<?php echo $en_min; ?>"/>
					  
					  
					  
					  <input type="hidden" name="option[en]" id="jen" value="">
                          
					 
                   
                     
                 </li>
				 <script>
					function degerAta(deger){
						//alert(deger);
						$("#jen").val(deger);
					}
				 </script>
				 

				<li style="float:right;">
				 <div style="margin-left:10px;">
                       <span style="font-size:14px; margin-bottom:6px;"><b>* <?php echo $entry_boygiriniz; ?> (cm)</b></span>
                      
                    
			 	 <input type="number" step="0.01" min="<?php echo $boy_min; ?>" max="<?php echo $boy; ?>" name="boy" id="jboy1" onchange="degerAtaa(this.value)" value="<?php echo $boy_min; ?>"/>



						<input type="hidden" name="option[boy]" id="jboy" value="">

					
                      
                      </div>
                  </li>

 <script>
					function degerAtaa(deger){
						//alert(deger);
						$("#jboy").val(deger);
					}
				 </script>







              <?php
    } else if ($urun_tip == "perde") { ?>
             
              <?php ?><?php
        require_once ("/home/u8953186/perdecix.com/system/config/fonksiyon.php");
?>

                 <li>
                       <span style="font-size:14px; margin-bottom:6px;"><b>* <?php echo $entry_engiriniz; ?></b></span>
                      
					<select name="option[en]" id="pen">
                          <option value="0">-- <?php echo $entry_perdeninenistandartplace; ?> --</option>
                          <?php for ($i = $en_min;$i <= $en;$i+= $en_step) { ?>
                          <option value="<?php echo $i; ?>"><?php echo $i; ?> cm</option>
                          <?php
        } ?>
                      </select>
					  
                  </li>


                   <li>
				 <div style="margin-left:10px;">
                       <span style="font-size:14px; margin-bottom:6px;"><b>* <?php echo $entry_boygiriniz; ?></b></span>
                      
                       
						
						<select name="option[boy]" id="pboy">
                          <option value="0">-- <?php echo $entry_perdeninboyustandartplace; ?> --</option>
                          <?php for ($i = $boy_min;$i <= $boy;$i+= $boy_step) { ?>
                          <option value="<?php echo $i; ?>"><?php echo $i; ?> cm</option>
                          <?php
        } ?>
                      </select>
						
                       </div>
                  </li>
                  <li style="width:98%; margin-top:15px; margin-bottom:0px;">
                       <span style="font-size:14px; margin-bottom:6px;"><b><?php echo $entry_pile; ?></b></span>
                      <select name="option[pile]" id="ppile">
					  
					  
					  <?php if ($pile_degeri == "")  { ?>
					  
						 <!--<option value="1"><?php echo $entry_pilesiz; ?></option>-->
                          <option value="2"><?php echo $entry_pileseyrek; ?></option>
						  <option value="2.5"><?php echo $entry_pileorta; ?></option>
                          <option value="3"><?php echo $entry_pilesik; ?></option>
					<?php } ?>


				<?php if ($pile_degeri == tumpilesecenekleri)  { ?>
                    <!--<option value="1"><?php echo $entry_pilesiz; ?></option>-->
                          <option value="2"><?php echo $entry_pileseyrek; ?></option>
						  <option value="2.5"><?php echo $entry_pileorta; ?></option>
                          <option value="3"><?php echo $entry_pilesik; ?></option>
                    <?php } ?>
					
					
				   <?php if ($pile_degeri == sadeceseyrek)  { ?>
                     <!--<option value="1"><?php echo $entry_pilesiz; ?></option>-->
                          <option value="2"><?php echo $entry_pileseyrek; ?></option>
                   <?php } ?>
				   
				   
				   

					
					<?php if ($pile_degeri == sadeceorta)  { ?>
						  <option value="2.5"><?php echo $entry_pileorta; ?></option>
                    <?php } ?>
					
					<?php if ($pile_degeri == sadecesik)  { ?>
                          <option value="3"><?php echo $entry_pilesik; ?></option>
                    <?php } ?>
					
					<?php if ($pile_degeri == seyrekartiorta) { ?>                
                          <option value="2"><?php echo $entry_pileseyrek; ?></option>
						  <option value="2.5"><?php echo $entry_pileorta; ?></option>
                                  <?php } ?>
					
					<?php if ($pile_degeri == seyrekartisik) { ?>                    
                          <option value="2"><?php echo $entry_pileseyrek; ?></option>						
                          <option value="3"><?php echo $entry_pilesik; ?></option>
                    <?php } ?>
					
					<?php if ($pile_degeri == ortaartisik)  { ?>                   
						  <option value="2.5"><?php echo $entry_pileorta; ?></option>
                          <option value="3"><?php echo $entry_pilesik; ?></option>
                    <?php } ?>
					
					


                      </select>
                  </li>
				  
				  
				  
				  
				                <?php
    } else if ($urun_tip == "perdepilesiz") { ?>
             
            <?php ?>  <?php
        require_once ("/home/u8953186/perdecix.com/system/config/fonksiyon.php");
?>

                 <li>
                       <span style="font-size:14px; margin-bottom:6px;"><b>* <?php echo $entry_engiriniz; ?></b></span>
                      
					<select name="option[en]" id="penp">
                          <option value="0">-- <?php echo $entry_perdeninenistandartplace; ?> --</option>
                          <?php for ($i = $en_min;$i <= $en;$i+= $en_step) { ?>
                          <option value="<?php echo $i; ?>"><?php echo $i; ?> cm</option>
                          <?php
        } ?>
                      </select>
					  
                  </li>


                   <li>
				 <div style="margin-left:10px;">
                       <span style="font-size:14px; margin-bottom:6px;"><b>* <?php echo $entry_boygiriniz; ?></b></span>
                      
                       
						
						<select name="option[boy]" id="pboyp">
                          <option value="0">-- <?php echo $entry_perdeninboyustandartplace; ?> --</option>
                          <?php for ($i = $boy_min;$i <= $boy;$i+= $boy_step) { ?>
                          <option value="<?php echo $i; ?>"><?php echo $i; ?> cm</option>
                          <?php
        } ?>
                      </select>
						
                       </div>
                  </li>
                 
				  
				  

                  <?php
    } else if ($urun_tip == "topkumas") { ?>
<?php ?><?php
        require_once ("/home/u8953186/perdecix.com/system/config/fonksiyon.php");
?>
					 <li style="width:100%; margin-top:0px; margin-bottom:0px;">
                        <span style="font-size:14px; margin-bottom:6px;"><b>* <?php echo $entry_ebatgir; ?></b></span>

				
                      
                      <select name="option[topkumas]" id="pebat">
                          <option value="0">-- se&#231;iniz --</option>
                          <option value="1">1.0 metre</option>
                          <option value="1.1">1.1 metre</option>
                          <option value="1.2">1.2 metre</option>
						  <option value="1.3">1.3 metre</option>
                          <option value="1.4">1.4 metre</option>
						  <option value="1.5">1.5 metre</option>
                          <option value="1.6">1.6 metre</option>
						  <option value="1.7">1.7 metre</option>
                          <option value="1.8">1.8 metre</option>
						  <option value="1.9">1.9 metre</option>
                          
						  <option value="2">2.0 metre</option>		
						  <option value="2.1">2.1 metre</option>
                          <option value="2.2">2.2 metre</option>
						  <option value="2.3">2.3 metre</option>
                          <option value="2.4">2.4 metre</option>
						  <option value="2.5">2.5 metre</option>
                          <option value="2.6">2.6 metre</option>
						  <option value="2.7">2.7 metre</option>
                          <option value="2.8">2.8 metre</option>
						  <option value="2.9">2.9 metre</option>
                          
						  <option value="3">3.0 metre</option>
						  <option value="3.1">3.1 metre</option>
                          <option value="3.2">3.2 metre</option>
						  <option value="3.3">3.3 metre</option>
                          <option value="3.4">3.4 metre</option>
						  <option value="3.5">3.5 metre</option>
                          <option value="3.6">3.6 metre</option>
						  <option value="3.7">3.7 metre</option>
                          <option value="3.8">3.8 metre</option>
						  <option value="3.9">3.9 metre</option>
                          
						  <option value="4">4.0 metre</option>
						  <option value="4.1">4.1 metre</option>
                          <option value="4.2">4.2 metre</option>
						  <option value="4.3">4.3 metre</option>
                          <option value="4.4">4.4 metre</option>
						  <option value="4.5">4.5 metre</option>
                          <option value="4.6">4.6 metre</option>
						  <option value="4.7">4.7 metre</option>
                          <option value="4.8">4.8 metre</option>
						  <option value="4.9">4.9 metre</option>
						  
						  <option value="5">5.0 metre</option>
						  <option value="5.1">5.1 metre</option>
                          <option value="5.2">5.2 metre</option>
						  <option value="5.3">5.3 metre</option>
                          <option value="5.4">5.4 metre</option>
						  <option value="5.5">5.5 metre</option>
                          <option value="5.6">5.6 metre</option>
						  <option value="5.7">5.7 metre</option>
                          <option value="5.8">5.8 metre</option>
						  <option value="5.9">5.9 metre</option>
						  
						  <option value="6">6.0 metre</option>
						  <option value="6.1">6.1 metre</option>
                          <option value="6.2">6.2 metre</option>
						  <option value="6.3">6.3 metre</option>
                          <option value="6.4">6.4 metre</option>
						  <option value="6.5">6.5 metre</option>
                          <option value="6.6">6.6 metre</option>
						  <option value="6.7">6.7 metre</option>
                          <option value="6.8">6.8 metre</option>
						  <option value="6.9">6.9 metre</option>
						  
						  <option value="7">7.0 metre</option>
						  <option value="7.1">7.1 metre</option>
                          <option value="7.2">7.2 metre</option>
						  <option value="7.3">7.3 metre</option>
                          <option value="7.4">7.4 metre</option>
						  <option value="7.5">7.5 metre</option>
                          <option value="7.6">7.6 metre</option>
						  <option value="7.7">7.7 metre</option>
                          <option value="7.8">7.8 metre</option>
						  <option value="7.9">7.9 metre</option>
						  
						  <option value="8">8.0 metre</option>
						  <option value="8.1">8.1 metre</option>
                          <option value="8.2">8.2 metre</option>
						  <option value="8.3">8.3 metre</option>
                          <option value="8.4">8.4 metre</option>
						  <option value="8.5">8.5 metre</option>
                          <option value="8.6">8.6 metre</option>
						  <option value="8.7">8.7 metre</option>
                          <option value="8.8">8.8 metre</option>
						  <option value="8.9">8.9 metre</option>
						  
						  <option value="9">9.0 metre</option>
						  <option value="9.1">9.1 metre</option>
                          <option value="9.2">9.2 metre</option>
						  <option value="9.3">9.3 metre</option>
                          <option value="9.4">9.4 metre</option>
						  <option value="9.5">9.5 metre</option>
                          <option value="9.6">9.6 metre</option>
						  <option value="9.7">9.7 metre</option>
                          <option value="9.8">9.8 metre</option>
						  <option value="9.9">9.9 metre</option>
						  
						  <option value="10">10.0 metre</option>
						  <option value="10.1">10.1 metre</option>
                          <option value="10.2">10.2 metre</option>
						  <option value="10.3">10.3 metre</option>
                          <option value="10.4">10.4 metre</option>
						  <option value="10.5">10.5 metre</option>
                          <option value="10.6">10.6 metre</option>
						  <option value="10.7">10.7 metre</option>
                          <option value="10.8">10.8 metre</option>
						  <option value="10.9">10.9 metre</option>
						  
						  <option value="11">11.0 metre</option>
						  <option value="11.1">11.1 metre</option>
                          <option value="11.2">11.2 metre</option>
						  <option value="11.3">11.3 metre</option>
                          <option value="11.4">11.4 metre</option>
						  <option value="11.5">11.5 metre</option>
                          <option value="11.6">11.6 metre</option>
						  <option value="11.7">11.7 metre</option>
                          <option value="11.8">11.8 metre</option>
						  <option value="11.9">11.9 metre</option>
						  
						  <option value="12">12.0 metre</option>
						  <option value="12.1">12.1 metre</option>
                          <option value="12.2">12.2 metre</option>
						  <option value="12.3">12.3 metre</option>
                          <option value="12.4">12.4 metre</option>
						  <option value="12.5">12.5 metre</option>
                          <option value="12.6">12.6 metre</option>
						  <option value="12.7">12.7 metre</option>
                          <option value="12.8">12.8 metre</option>
						  <option value="12.9">12.9 metre</option>
						  
						  <option value="13">13.0 metre</option>
						  <option value="13.1">13.1 metre</option>
                          <option value="13.2">13.2 metre</option>
						  <option value="13.3">13.3 metre</option>
                          <option value="13.4">13.4 metre</option>
						  <option value="13.5">13.5 metre</option>
                          <option value="13.6">13.6 metre</option>
						  <option value="13.7">13.7 metre</option>
                          <option value="13.8">13.8 metre</option>
						  <option value="13.9">13.9 metre</option>
						  
						  <option value="14">14.0 metre</option>
						  <option value="14.1">14.1 metre</option>
                          <option value="14.2">14.2 metre</option>
						  <option value="14.3">14.3 metre</option>
                          <option value="14.4">14.4 metre</option>
						  <option value="14.5">14.5 metre</option>
                          <option value="14.6">14.6 metre</option>
						  <option value="14.7">14.7 metre</option>
                          <option value="14.8">14.8 metre</option>
						  <option value="14.9">14.9 metre</option>
						  
						  <option value="15">15.0 metre</option>
						  <option value="15.1">15.1 metre</option>
                          <option value="15.2">15.2 metre</option>
						  <option value="15.3">15.3 metre</option>
                          <option value="15.4">15.4 metre</option>
						  <option value="15.5">15.5 metre</option>
                          <option value="15.6">15.6 metre</option>
						  <option value="15.7">15.7 metre</option>
                          <option value="15.8">15.8 metre</option>
						  <option value="15.9">15.9 metre</option>
						  
						  <option value="16">16.0 metre</option>
						  <option value="16.1">16.1 metre</option>
                          <option value="16.2">16.2 metre</option>
						  <option value="16.3">16.3 metre</option>
                          <option value="16.4">16.4 metre</option>
						  <option value="16.5">16.5 metre</option>
                          <option value="16.6">16.6 metre</option>
						  <option value="16.7">16.7 metre</option>
                          <option value="16.8">16.8 metre</option>
						  <option value="16.9">16.9 metre</option>
						  
						  <option value="17">17.0 metre</option>
						  <option value="17.1">17.1 metre</option>
                          <option value="17.2">17.2 metre</option>
						  <option value="17.3">17.3 metre</option>
                          <option value="17.4">17.4 metre</option>
						  <option value="17.5">17.5 metre</option>
                          <option value="17.6">17.6 metre</option>
						  <option value="17.7">17.7 metre</option>
                          <option value="17.8">17.8 metre</option>
						  <option value="17.9">17.9 metre</option>
						  
						  <option value="18">18.0 metre</option>
						  <option value="18.1">18.1 metre</option>
                          <option value="18.2">18.2 metre</option>
						  <option value="18.3">18.3 metre</option>
                          <option value="18.4">18.4 metre</option>
						  <option value="18.5">18.5 metre</option>
                          <option value="18.6">18.6 metre</option>
						  <option value="18.7">18.7 metre</option>
                          <option value="18.8">18.8 metre</option>
						  <option value="18.9">18.9 metre</option>
						  
					      <option value="19">19.0 metre</option>
						  <option value="19.1">19.1 metre</option>
                          <option value="19.2">19.2 metre</option>
						  <option value="19.3">19.3 metre</option>
                          <option value="19.4">19.4 metre</option>
						  <option value="19.5">19.5 metre</option>
                          <option value="19.6">19.6 metre</option>
						  <option value="19.7">19.7 metre</option>
                          <option value="19.8">19.8 metre</option>
						  <option value="19.9">19.9 metre</option>
						  
						  <option value="20">20.0 metre</option>
						  <option value="20.1">20.1 metre</option>
                          <option value="20.2">20.2 metre</option>
						  <option value="20.3">20.3 metre</option>
                          <option value="20.4">20.4 metre</option>
						  <option value="20.5">20.5 metre</option>
                          <option value="20.6">20.6 metre</option>
						  <option value="20.7">20.7 metre</option>
                          <option value="20.8">20.8 metre</option>
						  <option value="20.9">20.9 metre</option>
						  
						  <option value="21">21.0 metre</option>
						  <option value="21.1">21.1 metre</option>
                          <option value="21.2">21.2 metre</option>
						  <option value="21.3">21.3 metre</option>
                          <option value="21.4">21.4 metre</option>
						  <option value="21.5">21.5 metre</option>
                          <option value="21.6">21.6 metre</option>
						  <option value="21.7">21.7 metre</option>
                          <option value="21.8">21.8 metre</option>
						  <option value="21.9">21.9 metre</option>
						  
						  <option value="22">22.0 metre</option>
						  <option value="22.1">22.1 metre</option>
                          <option value="22.2">22.2 metre</option>
						  <option value="22.3">22.3 metre</option>
                          <option value="22.4">22.4 metre</option>
						  <option value="22.5">22.5 metre</option>
                          <option value="22.6">22.6 metre</option>
						  <option value="22.7">22.7 metre</option>
                          <option value="22.8">22.8 metre</option>
						  <option value="22.9">22.9 metre</option>
						  
						  <option value="23">23.0 metre</option>
						  <option value="23.1">23.1 metre</option>
                          <option value="23.2">23.2 metre</option>
						  <option value="23.3">23.3 metre</option>
                          <option value="23.4">23.4 metre</option>
						  <option value="23.5">23.5 metre</option>
                          <option value="23.6">23.6 metre</option>
						  <option value="23.7">23.7 metre</option>
                          <option value="23.8">23.8 metre</option>
						  <option value="23.9">23.9 metre</option>
						  
						  <option value="24">24.0 metre</option>
						  <option value="24.1">24.1 metre</option>
                          <option value="24.2">24.2 metre</option>
						  <option value="24.3">24.3 metre</option>
                          <option value="24.4">24.4 metre</option>
						  <option value="24.5">24.5 metre</option>
                          <option value="24.6">24.6 metre</option>
						  <option value="24.7">24.7 metre</option>
                          <option value="24.8">24.8 metre</option>
						  <option value="24.9">24.9 metre</option>
						  
						  <option value="25">25.0 metre</option>
						  <option value="25.1">25.1 metre</option>
                          <option value="25.2">25.2 metre</option>
						  <option value="25.3">25.3 metre</option>
                          <option value="25.4">25.4 metre</option>
						  <option value="25.5">25.5 metre</option>
                          <option value="25.6">25.6 metre</option>
						  <option value="25.7">25.7 metre</option>
                          <option value="25.8">25.8 metre</option>
						  <option value="25.9">25.9 metre</option>
						  
						  <option value="26">26.0 metre</option>
						  <option value="26.1">26.1 metre</option>
                          <option value="26.2">26.2 metre</option>
						  <option value="26.3">26.3 metre</option>
                          <option value="26.4">26.4 metre</option>
						  <option value="26.5">26.5 metre</option>
                          <option value="26.6">26.6 metre</option>
						  <option value="26.7">26.7 metre</option>
                          <option value="26.8">26.8 metre</option>
						  <option value="26.9">26.9 metre</option>
						  
						  <option value="27">27.0 metre</option>
						  <option value="27.1">27.1 metre</option>
                          <option value="27.2">27.2 metre</option>
						  <option value="27.3">27.3 metre</option>
                          <option value="27.4">27.4 metre</option>
						  <option value="27.5">27.5 metre</option>
                          <option value="27.6">27.6 metre</option>
						  <option value="27.7">27.7 metre</option>
                          <option value="27.8">27.8 metre</option>
						  <option value="27.9">27.9 metre</option>
						  
						  <option value="28">28.0 metre</option>
						  <option value="28.1">28.1 metre</option>
                          <option value="28.2">28.2 metre</option>
						  <option value="28.3">28.3 metre</option>
                          <option value="28.4">28.4 metre</option>
						  <option value="28.5">28.5 metre</option>
                          <option value="28.6">28.6 metre</option>
						  <option value="28.7">28.7 metre</option>
                          <option value="28.8">28.8 metre</option>
						  <option value="28.9">28.9 metre</option>
						  
						  <option value="29">29.0 metre</option>
						  <option value="29.1">29.1 metre</option>
                          <option value="29.2">29.2 metre</option>
						  <option value="29.3">29.3 metre</option>
                          <option value="29.4">29.4 metre</option>
						  <option value="29.5">29.5 metre</option>
                          <option value="29.6">29.6 metre</option>
						  <option value="29.7">29.7 metre</option>
                          <option value="29.8">29.8 metre</option>
						  <option value="29.9">29.9 metre</option>
						  
						  <option value="30">30.0 metre</option>
						  <option value="30.1">30.1 metre</option>
                          <option value="30.2">30.2 metre</option>
						  <option value="30.3">30.3 metre</option>
                          <option value="30.4">30.4 metre</option>
						  <option value="30.5">30.5 metre</option>
                          <option value="30.6">30.6 metre</option>
						  <option value="30.7">30.7 metre</option>
                          <option value="30.8">30.8 metre</option>
						  <option value="30.9">30.9 metre</option>
						  
						  <option value="31">31.0 metre</option>
						  <option value="31.1">31.1 metre</option>
                          <option value="31.2">31.2 metre</option>
						  <option value="31.3">31.3 metre</option>
                          <option value="31.4">31.4 metre</option>
						  <option value="31.5">31.5 metre</option>
                          <option value="31.6">31.6 metre</option>
						  <option value="31.7">31.7 metre</option>
                          <option value="31.8">31.8 metre</option>
						  <option value="31.9">31.9 metre</option>
						  
						  <option value="32">32.0 metre</option>
						  <option value="32.1">32.1 metre</option>
                          <option value="32.2">32.2 metre</option>
						  <option value="32.3">32.3 metre</option>
                          <option value="32.4">32.4 metre</option>
						  <option value="32.5">32.5 metre</option>
                          <option value="32.6">32.6 metre</option>
						  <option value="32.7">32.7 metre</option>
                          <option value="32.8">32.8 metre</option>
						  <option value="32.9">32.9 metre</option>
						  
						  <option value="33">33.0 metre</option>
						  <option value="33.1">33.1 metre</option>
                          <option value="33.2">33.2 metre</option>
						  <option value="33.3">33.3 metre</option>
                          <option value="33.4">33.4 metre</option>
						  <option value="33.5">33.5 metre</option>
                          <option value="33.6">33.6 metre</option>
						  <option value="33.7">33.7 metre</option>
                          <option value="33.8">33.8 metre</option>
						  <option value="33.9">33.9 metre</option>
						  
						  <option value="34">34.0 metre</option>
						  <option value="34.1">34.1 metre</option>
                          <option value="34.2">34.2 metre</option>
						  <option value="34.3">34.3 metre</option>
                          <option value="34.4">34.4 metre</option>
						  <option value="34.5">34.5 metre</option>
                          <option value="34.6">34.6 metre</option>
						  <option value="34.7">34.7 metre</option>
                          <option value="34.8">34.8 metre</option>
						  <option value="34.9">34.9 metre</option>
						  
						  <option value="35">35.0 metre</option>
						  <option value="35.1">35.1 metre</option>
                          <option value="35.2">35.2 metre</option>
						  <option value="35.3">35.3 metre</option>
                          <option value="35.4">35.4 metre</option>
						  <option value="35.5">35.5 metre</option>
                          <option value="35.6">35.6 metre</option>
						  <option value="35.7">35.7 metre</option>
                          <option value="35.8">35.8 metre</option>
						  <option value="35.9">35.9 metre</option>
                         
						  <option value="36">36.0 metre</option>
						  <option value="36.1">36.1 metre</option>
                          <option value="36.2">36.2 metre</option>
						  <option value="36.3">36.3 metre</option>
                          <option value="36.4">36.4 metre</option>
						  <option value="36.5">36.5 metre</option>
                          <option value="36.6">36.6 metre</option>
						  <option value="36.7">36.7 metre</option>
                          <option value="36.8">36.8 metre</option>
						  <option value="36.9">36.9 metre</option>
                         
						   <option value="37">37.0 metre</option>
						  <option value="37.1">37.1 metre</option>
                          <option value="37.2">37.2 metre</option>
						  <option value="37.3">37.3 metre</option>
                          <option value="37.4">37.4 metre</option>
						  <option value="37.5">37.5 metre</option>
                          <option value="37.6">37.6 metre</option>
						  <option value="37.7">37.7 metre</option>
                          <option value="37.8">37.8 metre</option>
						  <option value="37.9">37.9 metre</option>
						  
						  <option value="38">38.0 metre</option>
						  <option value="38.1">38.1 metre</option>
                          <option value="38.2">38.2 metre</option>
						  <option value="38.3">38.3 metre</option>
                          <option value="38.4">38.4 metre</option>
						  <option value="38.5">38.5 metre</option>
                          <option value="38.6">38.6 metre</option>
						  <option value="38.7">38.7 metre</option>
                          <option value="38.8">38.8 metre</option>
						  <option value="38.9">38.9 metre</option>
						  
						  <option value="39">39.0 metre</option>
						  <option value="39.1">39.1 metre</option>
                          <option value="39.2">39.2 metre</option>
						  <option value="39.3">39.3 metre</option>
                          <option value="39.4">39.4 metre</option>
						  <option value="39.5">39.5 metre</option>
                          <option value="39.6">39.6 metre</option>
						  <option value="39.7">39.7 metre</option>
                          <option value="39.8">39.8 metre</option>
						  <option value="39.9">39.9 metre</option>
						  
						  <option value="40">40.0 metre</option>
						  <option value="40.1">40.1 metre</option>
                          <option value="40.2">40.2 metre</option>
						  <option value="40.3">40.3 metre</option>
                          <option value="40.4">40.4 metre</option>
						  <option value="40.5">40.5 metre</option>
                          <option value="40.6">40.6 metre</option>
						  <option value="40.7">40.7 metre</option>
                          <option value="40.8">40.8 metre</option>
						  <option value="40.9">40.9 metre</option>
						  
                          
                      </select>
                    
                  </li>

                  <?php
    } else if ($urun_tip == "varak-test") { ?>
<?php ?><?php
        require_once ("/home/u8953186/perdecix.com/system/config/fonksiyon.php");
?>
                  <li>
                       <span style="font-size:14px; margin-bottom:6px;"><?php echo $entry_ebatgir; ?></b></span>
                      
							<select name="option[varak]" id="pebat">
                          <option value="0">-- se&#231;iniz --</option>
                          <option value="55">55 cm'e kadar</option>
                          <option value="105">105 cm'e kadar</option>
                          <option value="155">155 cm'e kadar</option>
                          <option value="205">205 cm'e kadar</option>
                          <option value="280">280 cm'e kadar</option>
                      </select>                      
                     
                  </li>

                  <?php
    } ?>


              </ul>
          </div>
	<div style="background:#eee; max-height:80px; margin-top:-5px; ">
	<div style="width:100px; 
	float: left;
	color: #ffffff;
	background-color: #ED1A24;
	height: 80px;
	margin-top:-10px;
	font-weight: 600;
	padding-top:30px;
	font-size: 13px;
	margin-left:17px;
	margin-right:10px;
	border-radius:7px;"><center><!--<?php echo $text_newtabcontent1; ?><?php echo $entry_metrekarefiyati; ?>-->METRE F&#304;YATI</center></div>
	
		  <ul style="margin-left:100px;padding-left:10px; " class="list-unstyled price">
            <meta content="http://schema.org/NewCondition" />
            <meta content="<?php echo $this->journal2->settings->get('product_price_currency'); ?>" />
            <meta content="<?php echo $this->journal2->settings->get('product_price'); ?>" />
            <?php if ($this->journal2->settings->get('product_in_stock') === 'yes'): ?>
            <link href="http://schema.org/InStock" />
            <?php
    endif; ?>
            <?php if (!$special) { ?>
            <li class="product-price"><?php echo $price; ?></li>
            <?php
    } else { ?>
            <li class="price-old" style="margin-top:16px;"><?php echo $price; ?></li>
            <li class="price-new" style="padding-top:12px;"><?php echo $special; ?></li>
            <?php
    } ?>
            <?php if ($tax) { ?>
            <li class="price-tax"><?php echo $text_tax; ?> <?php echo $tax; ?></li>
            <?php
    } ?>
            <?php if ($points) { ?>
            <li class="reward"><small><?php echo $text_points; ?> <?php echo $points; ?></small></li>
            <?php
    } ?>
            <?php if ($discounts) { ?>
            <?php foreach ($discounts as $discount) { ?>
            <li class="discounts"><?php echo $discount['quantity']; ?><?php echo $text_discount; ?><?php echo $discount['price']; ?></li>
            <?php
        } ?>
            <?php
    } ?>
          </ul></div>
          <?php
} ?>
				  
				
				  
				  
				  		  		  <?php if ($text_newtabcontent) { ?>
	 <div style="margin-bottom:-15px;">
	<div style="background-color: #f3f3f3;
	border: 1px solid #dcdcdc;
	padding: 10px;
	margin-bottom: 15px;
	-moz-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
	-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
	box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
	color: #555555;"><?php echo $text_newtabcontent; ?></div></div>
		
				<?php
} ?>
				  

          <!--<style>
          #seceklerListess li{
			  list-style:none;
			  list-style-type:none;
			  display:block;
			  float:left;
			  margin-left:10px;
		  }
		  #seceklerListess li{
			  width:40%;
			  
			 
			  
		  }
          
          </style> -->


          <input type="hidden" name="toplam-hesap" id="toplam-hesap" value=""/>
          <input type="hidden" id="fiyattt" value="<?php echo $fiyat; ?>"/>
          <input type="hidden" id="kampanyaaa" value="<?php echo $kampanya ?>"/>
           <input type="hidden" id="fiyattt2" value="<?php echo $fiyat2; ?>"/>
          <input type="hidden" id="kampanyaaa2" value="<?php echo $kampanya2 ?>"/>

          <script type="text/javascript">
		  
		  function hesapla123(){
			  
			  $('#sen').trigger("change");
		  }
              
			//  quantity = parseInt($("#input-quantity").val();

              $('#sen').change(function (){
                  var en = $('#sen').val();
                  var boy = $('#sboy').val();
				 	if (boy<=200){
					  boy = 200;
					}else{
						var bsay = boy.substr(1, 2);
						var bson = boy.substr(2,2);
						if (bson!=0) {
							bson = 10 - bson;
							boy = parseInt(boy) + parseInt(bson);
						}
					}
					if (en<=100){
					  en = 100;
					}else{
						var esay = en.substr(1, 2);
						var eson = en.substr(2,2);
						if (eson!=0) {
							eson = 10 - eson;
							en = parseInt(en) + parseInt(eson);
						}
					}

                  if (boy > 0){
                      var adet = parseInt($("#input-quantity").val());
                      metre= ((en*boy+20)/10000)*adet; 
					  metre=metre.toFixed(2);
                      $('#perde-hesap').html("");
                  <?php if (!$special) { ?>
                          sonuc= metre*$("#fiyattt").val();						  
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#fiyattt2").val();						  
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} else { ?>
                          sonuc= metre*$("#kampanyaaa").val();	
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#kampanyaaa2").val();	
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} ?>
                     
                      toplam_hesap=(sonuc/adet).toFixed(2);
                      $('#toplam-hesap').val(toplam_hesap);
					  if ($('#sboy').val()>0){
							$('#perde-hesap').addClass('perde-hesap');
							$('#perde-hesap').append('<?php echo $entry_ebatsonuc; ?> <span id="metre">' + metre + '</span> m<sup>2</sup>, <?php echo $entry_sonuctutar; ?> <span id="fiyat">' + sonuc2 + '</span> <?php echo $this->currency->getCode(); ?>');
					  }
                  }

              });

              $('#sboy').change(function (){
                  var en = $('#sen').val();
                  var boy = $('#sboy').val();
				 	if (boy<=200){
					  boy = 200;
					}else{
						var bsay = boy.substr(1, 2);
						var bson = boy.substr(2,2);
						if (bson!=0) {
							bson = 10 - bson;
							boy = parseInt(boy) + parseInt(bson);
						}
					}
					if (en<=100){
					  en = 100;
					}else{
						var esay = en.substr(1, 2);
						var eson = en.substr(2,2);
						if (eson!=0) {
							eson = 10 - eson;
							en = parseInt(en) + parseInt(eson);
						}
					}				  
					  if (en > 0){
                      var adet = parseInt($("#input-quantity").val());
                      metre= ((en*boy+20)/10000)*adet; 
					  metre=metre.toFixed(2);
                      $('#perde-hesap').html("");
                  <?php if (!$special) { ?>
                          sonuc= metre*$("#fiyattt").val();						  
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#fiyattt2").val();						  
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} else { ?>
                          sonuc= metre*$("#kampanyaaa").val();	
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#kampanyaaa2").val();	
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} ?>
					  
                      toplam_hesap=(sonuc/adet).toFixed(2);
                      $('#toplam-hesap').val(toplam_hesap);
                      
					  if ($('#sen').val()>0){
							$('#perde-hesap').addClass('perde-hesap');
							$('#perde-hesap').append('<?php echo $entry_ebatsonuc; ?> <span id="metre">' + metre + '</span> m<sup>2</sup>, <?php echo $entry_sonuctutar; ?> <span id="fiyat">' + sonuc2 + '</span> <?php echo $this->currency->getCode(); ?>');
					  }
                  }

              });
			  
			  
			  
			  
			  
			  
			  
			  
			  
			  
			  
			  
			  
			  
			  
			  
			  
			  
			  
			  
			 function hesapla1236(){
			  
			  $('#jen1').trigger("change");
		  }
              
			//  quantity = parseInt($("#input-quantity").val();

              $('#jen1').change(function (){
                  var en = $('#jen1').val();
                  var boy = $('#jboy1').val();
				 	if (boy<=30){
					  boy = 30;
					}
					
					else if (boy==30.01||boy<=39.99||boy==40){
					  boy = 40;
					}
					
					else if (boy==40.01||boy<=49.99||boy==50){
					  boy = 50;
					}
					
					else if (boy==50.01||boy<=59.99||boy==60){
					  boy = 60;
					}
					
					else if (boy==60.01||boy<=69.99||boy==70){
					  boy = 70;
					}
					
					else if (boy==70.01||boy<=79.99||boy==80){
					  boy = 80;
					}
					
					else if (boy==80.01||boy<=89.99||boy==90){
					  boy = 90;
					}
					
					else if (boy==90.01||boy<=99.99||boy==100){
					  boy = 100;
					}
					
					else if (boy==100.01||boy<=109.99||boy==110){
					  boy = 110;
					}
					
					else if (boy==110.01||boy<=119.99||boy==120){
					  boy = 120;
					}
					
					else if (boy==120.01||boy<=129.99||boy==130){
					  boy = 130;
					}
					
					else if (boy==130.01||boy<=139.99||boy==140){
					  boy = 140;
					}
					
					else if (boy==140.01||boy<=149.99||boy==150){
					  boy = 150;
					}
					
					else if (boy==150.01||boy<=159.99||boy==160){
					  boy = 160;
					}
					
					else if (boy==160.01||boy<=169.99||boy==170){
					  boy = 170;
					}
					
					else if (boy==170.01||boy<=179.99||boy==180){
					  boy = 180;
					}
					
					else if (boy==180.01||boy<=189.99||boy==190){
					  boy = 190;
					}
					
					else if (boy==190.01||boy<=199.99||boy==200){
					  boy = 200;
					}
					
					else if (boy==200.01||boy<=209.99||boy==210){
					  boy = 210;
					}
					
					else if (boy==210.01||boy<=219.99||boy==220){
					  boy = 220;
					}
					
					else if (boy==220.01||boy<=229.99||boy==230){
					  boy = 230;
					}
					
					else if (boy==230.01||boy<=239.99||boy==240){
					  boy = 240;
					}
					
					else if (boy==240.01||boy<=249.99||boy==250){
					  boy = 250;
					}
					
					else if (boy==250.01||boy<=259.99||boy==260){
					  boy = 260;
					}
					
					else if (boy==260.01||boy<=269.99||boy==270){
					  boy = 270;
					}
					
					else if (boy==270.01||boy<=279.99||boy==280){
					  boy = 280;
					}
					
					else if (boy==280.01||boy<=289.99||boy==290){
					  boy = 290;
					}
					
					else if (boy==290.01||boy<=299.99||boy==300){
					  boy = 300;
					}
				
					
					
					
					
					if (en<=30){
					  en = 30;
					}
					
					else if (en==30.01||en<=39.99||en==40){
					  boy = 40;
					}
					
					else if (en==40.01||en<=49.99||en==50){
					  en = 50;
					}
					
					else if (en==50.01||en<=59.99||en==60){
					  en = 60;
					}
					
					else if (en==60.01||en<=69.99||en==70){
					  en = 70;
					}
					
					else if (en==70.01||en<=79.99||en==80){
					  en = 80;
					}
					
					else if (en==80.01||en<=89.99||en==90){
					  en = 90;
					}
					
					else if (en==90.01||en<=99.99||en==100){
					  en = 100;
					}
					
					else if (en==100.01||en<=109.99||en==110){
					  en = 110;
					}
					
					else if (en==110.01||en<=119.99||en==120){
					  en = 120;
					}
					
					else if (en==120.01||en<=129.99||en==130){
					  en = 130;
					}
					
					else if (en==130.01||en<=139.99||en==140){
					  en = 140;
					}
					
					else if (en==140.01||en<=149.99||en==150){
					  en = 150;
					}
					
					else if (en==150.01||en<=159.99||en==160){
					  en = 160;
					}
					
					else if (en==160.01||en<=169.99||en==170){
					  en = 170;
					}
					
					else if (en==170.01||en<=179.99||en==180){
					  en = 180;
					}
					
					else if (en==180.01||en<=189.99||en==190){
					  en = 190;
					}
					
					else if (en==190.01||en<=199.99||en==200){
					  en = 200;
					}
					
					

                  if (boy > 0){
                      var adet = parseInt($("#input-quantity").val());
                      metre= ((en*boy+20)/10000)*adet; 
					  if (metre < 1){
	metre = 1
	} else {
					  metre=metre.toFixed(2);
	}
                      $('#perde-hesap').html("");
                  <?php if (!$special) { ?>
                          sonuc= metre*$("#fiyattt").val();						  
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#fiyattt2").val();						  
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} else { ?>
                          sonuc= metre*$("#kampanyaaa").val();	
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#kampanyaaa2").val();	
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} ?>
                     
                      toplam_hesap=(sonuc/adet).toFixed(2);
                      $('#toplam-hesap').val(toplam_hesap);
					  if ($('#jboy1').val()>0){
							$('#perde-hesap').addClass('perde-hesap');
							$('#perde-hesap').append('<?php echo $entry_ebatsonuc; ?> <span id="metre">' + metre + '</span> m<sup>2</sup>, <?php echo $entry_sonuctutar; ?> <span id="fiyat">' + sonuc2 + '</span> <?php echo $this->currency->getCode(); ?>');
					  }
                  }

              });

              $('#jboy1').change(function (){
                  var en = $('#jen1').val();
                  var boy = $('#jboy1').val();
				 	if (boy<=30){
					  boy = 30;
					}
					
					
										else if (boy==30.01||boy<=39.99||boy==40){
					  boy = 40;
					}
					
					else if (boy==40.01||boy<=49.99||boy==50){
					  boy = 50;
					}
					
					else if (boy==50.5||boy<=59.99||boy==60){
					  boy = 60;
					}
					
					else if (boy==60.01||boy<=69.99||boy==70){
					  boy = 70;
					}
					
					else if (boy==70.01||boy<=79.99||boy==80){
					  boy = 80;
					}
					
					else if (boy==80.01||boy<=89.99||boy==90){
					  boy = 90;
					}
					
					else if (boy==90.01||boy<=99.99||boy==100){
					  boy = 100;

					}
					
										else if (boy==100.01||boy<=109.99||boy==110){
					  boy = 110;
					}
					
					else if (boy==110.01||boy<=119.99||boy==120){
					  boy = 120;
					}
					
					else if (boy==120.01||boy<=129.99||boy==130){
					  boy = 130;
					}
					
					else if (boy==130.01||boy<=139.99||boy==140){
					  boy = 140;
					}
					
					else if (boy==140.01||boy<=149.99||boy==150){
					  boy = 150;
					}
					
					else if (boy==150.01||boy<=159.99||boy==160){
					  boy = 160;
					}
					
					else if (boy==160.01||boy<=169.99||boy==170){
					  boy = 170;
					}
					
					else if (boy==170.01||boy<=179.99||boy==180){
					  boy = 180;
					}
					
					else if (boy==180.01||boy<=189.99||boy==190){
					  boy = 190;
					}
					
					else if (boy==190.01||boy<=199.99||boy==200){
					  boy = 200;
					}
					
					else if (boy==200.01||boy<=209.99||boy==210){
					  boy = 210;
					}
					
					else if (boy==210.01||boy<=219.99||boy==220){
					  boy = 220;
					}
					
					else if (boy==220.01||boy<=229.99||boy==230){
					  boy = 230;
					}
					
					else if (boy==230.01||boy<=239.99||boy==240){
					  boy = 240;
					}
					
					else if (boy==240.01||boy<=249.99||boy==250){
					  boy = 250;
					}
					
					else if (boy==250.01||boy<=259.99||boy==260){
					  boy = 260;
					}
					
					else if (boy==260.01||boy<=269.99||boy==270){
					  boy = 270;
					}
					
					else if (boy==270.01||boy<=279.99||boy==280){
					  boy = 280;
					}
					
					else if (boy==280.01||boy<=289.99||boy==290){
					  boy = 290;
					}
					
					else if (boy==290.01||boy<=299.99||boy==300){
					  boy = 300;
					}
					
					
					
				if (en<=30){
					  en = 30;
					}
					
									else if (en==30.01||en<=39.99||en==40){
					  boy = 40;
					}
					
					else if (en==40.01||en<=49.99||en==50){
					  en = 50;
					}
					
					else if (en==50.01||en<=59.99||en==60){
					  en = 60;
					}
					
					else if (en==60.01||en<=69.99||en==70){
					  en = 70;
					}
					
					else if (en==70.01||en<=79.99||en==80){
					  en = 80;
					}
					
					else if (en==80.01||en<=89.99||en==90){
					  en = 90;
					}
					
					else if (en==90.01||en<=99.99||en==100){
					  en = 100;		  
					}				

					else if (en==100.01||en<=109.99||en==110){
					  en = 110;
					}
					
					else if (en==110.01||en<=119.99||en==120){
					  en = 120;
					}
					
					else if (en==120.01||en<=129.99||en==130){
					  en = 130;
					}
					
					else if (en==130.01||en<=139.99||en==140){
					  en = 140;
					}
					
					else if (en==140.01||en<=149.99||en==150){
					  en = 150;
					}
					
					else if (en==150.01||en<=159.99||en==160){
					  en = 160;
					}
					
					else if (en==160.01||en<=169.99||en==170){
					  en = 170;
					}
					
					else if (en==170.01||en<=179.99||en==180){
					  en = 180;
					}
					
					else if (en==180.01||en<=189.99||en==190){
					  en = 190;
					}
					
					else if (en==190.01||en<=199.99||en==200){
					  en = 200;
					}
					
					  if (en > 0){
                      var adet = parseInt($("#input-quantity").val());
                      metre= ((en*boy+20)/10000)*adet; 
					  if (metre < 1){
	metre = 1
	} else {
					  metre=metre.toFixed(2);
	}
                      $('#perde-hesap').html("");
                  <?php if (!$special) { ?>
                          sonuc= metre*$("#fiyattt").val();						  
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#fiyattt2").val();						  
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} else { ?>
                          sonuc= metre*$("#kampanyaaa").val();	
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#kampanyaaa2").val();	
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} ?>
					  
                      toplam_hesap=(sonuc/adet).toFixed(2);
                      $('#toplam-hesap').val(toplam_hesap);
                      
					  if ($('#jen1').val()>0){
							$('#perde-hesap').addClass('perde-hesap');
							$('#perde-hesap').append('<?php echo $entry_ebatsonuc; ?> <span id="metre">' + metre + '</span> m<sup>2</sup>, <?php echo $entry_sonuctutar; ?> <span id="fiyat">' + sonuc2 + '</span> <?php echo $this->currency->getCode(); ?>');
					  }
                  }

              });  
			  
			  
			  
			  
			  
			  
			  
			  
			  
		  function hesapla1235(){
			  
			  $('#pen').trigger("change");
		  }
              
			//  quantity = parseInt($("#input-quantity").val();

              $('#pen').change(function (){
                  var en = $('#pen').val();
                  var boy = $('#pboy').val();
                  var pile = $('#ppile').val();
                  if (boy > 0){
                      var adet = parseInt($("#input-quantity").val());
                      metre= ((en*1*pile+20)/100)*adet;
					  metre=metre.toFixed(2);
                      $('#perde-hesap').html("");
                 <?php if (!$special) { ?>
                          sonuc= metre*$("#fiyattt").val();						  
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#fiyattt2").val();						  
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} else { ?>
                          sonuc= metre*$("#kampanyaaa").val();	
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#kampanyaaa2").val();	
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} ?>
                      toplam_hesap=(sonuc/adet).toFixed(2);
                      $('#toplam-hesap').val(toplam_hesap);
					  if($('#pboy').val()>0){
							$('#perde-hesap').addClass('perde-hesap');
							$('#perde-hesap').append('<?php echo $entry_ebatsonuc; ?> <span id="metre">' + metre + '</span> m, <?php echo $entry_sonuctutar; ?> <span id="fiyat">' + sonuc2 + '</span> <?php echo $this->currency->getCode(); ?>');
					  }
                  }

              });
              $('#pboy').change(function (){
                  var en = $('#pen').val();
                  var boy = $('#pboy').val();
                  var pile = $('#ppile').val();
                  if (en > 0){
                      var adet = parseInt($("#input-quantity").val());
                      metre= ((en*1*pile+20)/100)*adet;
					  metre=metre.toFixed(2);
                      $('#perde-hesap').html("");
                <?php if (!$special) { ?>
                          sonuc= metre*$("#fiyattt").val();						  
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#fiyattt2").val();						  
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} else { ?>
                          sonuc= metre*$("#kampanyaaa").val();	
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#kampanyaaa2").val();	
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} ?>
					  
                       toplam_hesap=(sonuc/adet).toFixed(2);
                      $('#toplam-hesap').val(toplam_hesap);
                      
					  if ($('#pen').val()>0){
							$('#perde-hesap').addClass('perde-hesap');
							$('#perde-hesap').append('<?php echo $entry_ebatsonuc; ?> <span id="metre">' + metre + '</span> m, <?php echo $entry_sonuctutar; ?> <span id="fiyat">' + sonuc2 + '</span> <?php echo $this->currency->getCode(); ?>');
					  }
                  }

              });
              $('#ppile').change(function (){
                  var en = $('#pen').val();
                  var boy = $('#pboy').val();
                  var pile = $('#ppile').val();
                  if (en > 0){
                      var adet = parseInt($("#input-quantity").val());
                      metre= ((en*1*pile+20)/100)*adet;
					  metre=metre.toFixed(2);
                      $('#perde-hesap').html("");
                  <?php if (!$special) { ?>
                          sonuc= metre*$("#fiyattt").val();						  
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#fiyattt2").val();						  
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} else { ?>
                          sonuc= metre*$("#kampanyaaa").val();	
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#kampanyaaa2").val();	
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} ?>
                       
					   toplam_hesap=(sonuc/adet).toFixed(2);
                      $('#toplam-hesap').val(toplam_hesap);
					  
                      $('#perde-hesap').addClass('perde-hesap');
                      $('#perde-hesap').append('<?php echo $entry_ebatsonuc; ?> <span id="metre">' + metre + '</span> m, <?php echo $entry_sonuctutar; ?> <span id="fiyat">' + sonuc2 + '</span> <?php echo $this->currency->getCode(); ?>');
                  }

              });
			  
			  
			  
			  function hesapla1230(){
			  
			  $('#penp').trigger("change");
		  }
              
			//  quantity = parseInt($("#input-quantity").val();

              $('#penp').change(function (){
                  var en = $('#penp').val();
                  var boy = $('#pboyp').val();
                 
                  if (boy > 0){
                      var adet = parseInt($("#input-quantity").val());
                      metre= (en*1+20)/100*adet;
					  metre=metre.toFixed(2);
                      $('#perde-hesap').html("");
                 <?php if (!$special) { ?>
                          sonuc= metre*$("#fiyattt").val();						  
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#fiyattt2").val();						  
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} else { ?>
                          sonuc= metre*$("#kampanyaaa").val();	
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#kampanyaaa2").val();	
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} ?>
                      toplam_hesap=(sonuc/adet).toFixed(2);
                      $('#toplam-hesap').val(toplam_hesap);
					  if($('#pboyp').val()>0){
							$('#perde-hesap').addClass('perde-hesap');
							$('#perde-hesap').append('<?php echo $entry_ebatsonuc; ?> <span id="metre">' + metre + '</span> m, <?php echo $entry_sonuctutar; ?> <span id="fiyat">' + sonuc2 + '</span> <?php echo $this->currency->getCode(); ?>');
					  }
                  }

              });
              $('#pboyp').change(function (){
                  var en = $('#penp').val();
                  var boy = $('#pboyp').val();
                  
                  if (en > 0){
                      var adet = parseInt($("#input-quantity").val());
                      metre= (en*1+20)/100*adet;
					  metre=metre.toFixed(2);
                      $('#perde-hesap').html("");
                <?php if (!$special) { ?>
                          sonuc= metre*$("#fiyattt").val();						  
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#fiyattt2").val();						  
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} else { ?>
                          sonuc= metre*$("#kampanyaaa").val();	
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#kampanyaaa2").val();	
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} ?>
					  
                       toplam_hesap=(sonuc/adet).toFixed(2);
                      $('#toplam-hesap').val(toplam_hesap);
                      
					  if ($('#penp').val()>0){
							$('#perde-hesap').addClass('perde-hesap');
							$('#perde-hesap').append('<?php echo $entry_ebatsonuc; ?> <span id="metre">' + metre + '</span> m, <?php echo $entry_sonuctutar; ?> <span id="fiyat">' + sonuc2 + '</span> <?php echo $this->currency->getCode(); ?>');
					  }
                  }

              });
              $('#ppile').change(function (){
                  var en = $('#pen').val();
                  var boy = $('#pboy').val();
                  var pile = $('#ppile').val();
                  if (en > 0){
                      var adet = parseInt($("#input-quantity").val());
                      metre= (en*1*pile+20)/100*adet;
					  metre=metre.toFixed(2);
                      $('#perde-hesap').html("");
                  <?php if (!$special) { ?>
                          sonuc= metre*$("#fiyattt").val();						  
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#fiyattt2").val();						  
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} else { ?>
                          sonuc= metre*$("#kampanyaaa").val();	
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#kampanyaaa2").val();	
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} ?>
                       
					   toplam_hesap=(sonuc/adet).toFixed(2);
                      $('#toplam-hesap').val(toplam_hesap);
					  
                      $('#perde-hesap').addClass('perde-hesap');
                      $('#perde-hesap').append('<?php echo $entry_ebatsonuc; ?> <span id="metre">' + metre + '</span> m, <?php echo $entry_sonuctutar; ?> <span id="fiyat">' + sonuc2 + '</span> <?php echo $this->currency->getCode(); ?>');
                  }

              });
			  
			  
			  
			  
			   function hesapla1234(){
			  
			  $('#pebat').trigger("change");
		  }
              
			//  quantity = parseInt($("#input-quantity").val();

              $('#pebat').change(function (){
                  var ebat = $('#pebat').val();

                  if (ebat > 0){
                      var adet = parseInt($("#input-quantity").val());
                      metre= (ebat*adet);
                      $('#perde-hesap').html("");
                  <?php if (!$special) { ?>
                          sonuc= metre*$("#fiyattt").val();						  
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#fiyattt2").val();						  
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} else { ?>
                          sonuc= metre*$("#kampanyaaa").val();	
                          sonuc=sonuc.toFixed(2);
						  sonuc2= metre*$("#kampanyaaa2").val();	
                          sonuc2=sonuc2.toFixed(2);
                      <?php
} ?>
                      
					  
					   toplam_hesap=(sonuc/adet).toFixed(2);
                      $('#toplam-hesap').val(toplam_hesap);
					  
                      $('#perde-hesap').addClass('perde-hesap');
                      $('#perde-hesap').append('<?php echo $entry_ebatsonuc; ?> <span id="metre">' + ebat*adet + '</span> m, <?php echo $entry_sonuctutar; ?> <span id="fiyat">' + sonuc2 + '</span> <?php echo $this->currency->getCode(); ?>');
                  }

              });
          </script>
		
		  <?php if ($options) { ?>
    <script>
        function sayfala(sayfa,id,islem){

            var sorgu= $("input[type='radio'][name='option["+id+"]']:checked").val();
				
                if (islem == '+') {
                    if (sorgu=="") { $('#sepete-ekle').trigger('click'); }else {
                        $('.adim' + sayfa).hide();
                        $('.adim' + (parseInt(sayfa) + 1)).show();
                    }
                } else {
                    $('.adim' + sayfa).hide();
                    $('.adim' + (parseInt(sayfa) - 1)).show();
                }

        }

    </script>
    
    
    
    
    <div id="fbfancy" style="display: none;">


    <div id="secenekler">
      <div id="options" class="options">
        <?php $xj = 0;
    foreach ($options as $sayfa) {
        $sayfa_say[] = $sayfa['sayfa'];
    }
    $sayfalandirma = max($sayfa_say);
    $sayfalar = count($options);
    $popup_ac_new = false;
    foreach ($options as $option) {
        if ($option["sayfa"] > 0) {
            $popup_ac_new = true;
?>
        <?php if ($option['type'] == 'select') { ?>
        <div id="option-<?php echo $option['product_option_id']; ?>" class="option option-<?php echo $option['type']; ?>">
          <?php if ($option['required']) { ?>
          <span class="required">*</span>
          <?php
                } ?>
          <b><?php echo $option['name']; ?>:</b><br />
          <select class="acilir_listeler" name="option[<?php echo $option['product_option_id']; ?>]">
            <option value=""><?php echo $text_select; ?></option>
            <?php foreach ($option['product_option_value'] as $option_value) { ?>
            <option value="<?php echo $option_value['product_option_value_id']; ?>" data-image="<?php echo $option_value['image']; ?>"><?php echo $option_value['name']; ?>
            <?php if ($option_value['price']) { ?>
            (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
            <?php
                    } ?>
            </option>
            <?php
                } ?>
          </select>
        </div>

        <?php
            } ?>
        <?php if ($option['type'] == 'radio') { ?>
          <div id="option-<?php echo $option['product_option_id']; ?>" data-sayfa="<?php echo $option['sayfa']; ?>" class="option option-<?php echo $option['type']; ?>  adim<?php echo $option['sayfa']; ?>">
            
			  
              <div style="clear:both;"></div>

              <div style="width:100%; padding-top:5px; margin-bottom:10px; border-bottom:1px dashed #ccc;">
                  <span class="lightyazisb"><b><?php echo $option['name']; ?></b></span>
              </div>
            <ul id="option-sec">

          <?php $ix = 1;
                foreach ($option['product_option_value'] as $option_value) { ?>
                <li>
					<div class="list">
						<label for="option-value-<?php echo $option_value['product_option_value_id']; ?>">
						  <img src="<?php echo $option_value['image']; ?>" width="100%" height="100" alt="<?php echo $option_value['name']; ?>"  style="height: 100px ! important; margin-bottom:-5px;" />
						</label>
					</div>
					<div class="label-title">
					<input style="float: left" data-price="" type="radio" <?php echo ($ix == 1) ? "checked" : ""; ?> name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" data-image="<?php echo $option_value['image']; ?>" id="option-value-<?php echo $option_value['product_option_value_id']; ?>" />
                   <b><?php echo $option_value['name']; ?>
                    <?php if ($option_value['price']) { ?>
                    (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
                    <?php
                    } ?>
                    </b>
                    </div>
          </li>
          <?php $ix++;
                    $xj++;
                } ?>
            </ul>
			<div style="clear:both;"></div>
			 <?php
                if ($option['sayfa_baslik'] == 1) { ?>			 
				<div >
					  <div style="float:right;margin-left:5px;width:49%">
						  <?php if ($option['sayfa'] == $sayfalandirma) { ?>
						  <button id="sepete-ekle" class="btn-evyellow" name="SepeteAt"><?php echo $entry_sepeteekle; ?></button>                  
						  <?php
                    } else { ?>
						  <button onclick="sayfala('<?php echo $option['sayfa']; ?>','<?php echo $option['product_option_id']; ?>','+');" name="DevamEt"  class="btn-evyellow"><?php echo $entry_devam; ?></button>
						  <?php
                    } ?>
					  </div>
					  <?php if ($option['sayfa'] > 1) { ?>
					  <div style="float:right;width:49%">
						  <button onclick="sayfala('<?php echo $option['sayfa']; ?>','<?php echo $option['product_option_id']; ?>','-');" name="GeriDon"  class="btn-evblue"><?php echo $entry_geridon; ?></button>
					  </div>
					  <?php
                    } else { ?> 
					   <div style="float:right;width:49%">
						  <button onclick="$.fancybox.close();" name="GeriDon" id="GeriDon"  class="btn-evblue"><?php echo $entry_kapat; ?></button>
					  </div>					  					 
					  <?php
                    } ?>
				</div>
				  <?php
                } ?>
        </div>

          <?php
            } ?>
          
          
          
        <?php if ($option['type'] == 'checkbox') { ?>
        <div id="option-<?php echo $option['product_option_id']; ?>" class="option option-<?php echo $option['type']; ?>">
          <?php if ($option['required']) { ?>
          <span class="required">*</span>
          <?php
                } ?>
          <b><?php echo $option['name']; ?>:</b><br />
          <?php foreach ($option['product_option_value'] as $option_value) { ?>
          <input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>][]" value="<?php echo $option_value['product_option_value_id']; ?>" data-image="<?php echo $option_value['image']; ?>" id="option-value-<?php echo $option_value['product_option_value_id']; ?>" />
          <label for="option-value-<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?>
            <?php if ($option_value['price']) { ?>
            (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
            <?php
                    } ?>
          </label>
          <br />
          <?php
                } ?>
        </div>
        <br />
        <?php
            } ?>
        <?php if ($option['type'] == 'image') { ?>
        <div id="option-<?php echo $option['product_option_id']; ?>" class="option option-<?php echo $option['type']; ?>">
          <?php if ($option['required']) { ?>
          <span class="required">*</span>
          <?php
                } ?>
          <b><?php echo $option['name']; ?>:</b><br />
          <table class="option-image">
            <?php $ix = 1;
                foreach ($option['product_option_value'] as $option_value) { ?>
            <tr>
              <td style="width: 1px;">
                  <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]"    value="<?php echo $option_value['product_option_value_id']; ?>" id="option-value-<?php echo $option_value['product_option_value_id']; ?>" /></td>
              <td><label for="option-value-<?php echo $option_value['product_option_value_id']; ?>"><img src="<?php echo $option_value['image']; ?>" width="220" height="100" alt="<?php echo $option_value['name'] . ($option_value['price'] ? ' ' . $option_value['price_prefix'] . $option_value['price'] : ''); ?>" /></label></td>
              <td><label for="option-value-<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?>
                  <?php if ($option_value['price']) { ?>
                  (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
                  <?php
                    } ?>
                </label></td>
            </tr>
            <?php $ix++;
                } ?>
          </table>
        </div>
        <br />
        <?php
            } ?>
        <?php if ($option['type'] == 'text') { ?>
        <div id="option-<?php echo $option['product_option_id']; ?>" class="option">
          <?php if ($option['required']) { ?>
          <span class="required">*</span>
          <?php
                } ?>
          <b><?php echo $option['name']; ?>:</b><br />
          <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="" placeholder="<?php echo $option['placeholder']; ?>"/>
        </div>
        <br />
        <?php
            } ?>
        <?php if ($option['type'] == 'textarea') { ?>
        <div id="option-<?php echo $option['product_option_id']; ?>" class="option">
          <?php if ($option['required']) { ?>
          <span class="required">*</span>
          <?php
                } ?>
          <b><?php echo $option['name']; ?>:</b><br />
          <textarea name="option[<?php echo $option['product_option_id']; ?>]" cols="40" rows="5"><?php echo $option['product_option_value']; ?></textarea>
        </div>
        <br />
        <?php
            } ?>
        <?php if ($option['type'] == 'file') { ?>
        <div id="option-<?php echo $option['product_option_id']; ?>" class="option">
          <?php if ($option['required']) { ?>
          <span class="required">*</span>
          <?php
                } ?>
          <b><?php echo $option['name']; ?>:</b><br />
          <input type="button" value="<?php echo $button_upload; ?>" id="button-option-<?php echo $option['product_option_id']; ?>" class="button">
          <input type="hidden" name="option[<?php echo $option['product_option_id']; ?>]" value="" />
        </div>
        <br />
        <?php
            } ?>
        <?php if ($option['type'] == 'date') { ?>
        <div id="option-<?php echo $option['product_option_id']; ?>" class="option">
          <?php if ($option['required']) { ?>
          <span class="required">*</span>
          <?php
                } ?>
          <b><?php echo $option['name']; ?>:</b><br />
          <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['product_option_value']; ?>" class="date" />
        </div>
        <br />
        <?php
            } ?>
        <?php if ($option['type'] == 'datetime') { ?>
        <div id="option-<?php echo $option['product_option_id']; ?>" class="option">
          <?php if ($option['required']) { ?>
          <span class="required">*</span>
          <?php
                } ?>
          <b><?php echo $option['name']; ?>:</b><br />
          <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['product_option_value']; ?>" class="datetime" />
        </div>
        <br />
        <?php
            } ?>
        <?php if ($option['type'] == 'time') { ?>
        <div id="option-<?php echo $option['product_option_id']; ?>" class="option">
          <?php if ($option['required']) { ?>
          <span class="required">*</span>
          <?php
                } ?>
          <b><?php echo $option['name']; ?>:</b><br />
          <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['product_option_value']; ?>" class="time" />
        </div>
        <br />
        <?php
            } ?>
        
        <?php
        } ?>
        
        <?php
    } ?>
      </div>
    </div>
  </div>
      <?php
} ?>
		   <?php if ($recurrings) { ?>
            <hr>
            <h3><?php echo $text_payment_recurring ?></h3>
            <div class="form-group required">
              <select name="recurring_id" class="form-control">
                <option value=""><?php echo $text_select; ?></option>
                <?php foreach ($recurrings as $recurring) { ?>
                <option value="<?php echo $recurring['recurring_id'] ?>"><?php echo $recurring['name'] ?></option>
                <?php
    } ?>
              </select>
              <div class="help-block" id="recurring-description"></div>
            </div>
          <?php
} ?>		

  
				 


<div class="perde-hesap-alani" style="max-height:60px; margin-top:-6px;">
           <div id="perde-hesap" style="margin-left:17px; margin-right:17px; border-radius:6px;">
		
		</div></div>
		
		<?php if ($urun_tip == "stor") { ?>
		
		 <div style="padding-left:18px; padding-right:18px; margin-top:-6px;">
				  
				  <?php echo $entry_olcubilgi; ?>
</div>
		<?php } ?>
		 
		 
		<input id="sayfa-no" value="1" type="hidden">
            <div style="margin-top:-6px;" class="form-group cart <?php echo isset($labels) && is_array($labels) && isset($labels['outofstock']) ? 'outofstock' : ''; ?>">
              <div>
			                <?php if ($this->journal2->settings->get('hide_add_to_cart_button')): ?>
              <?php foreach ($this->journal2->settings->get('additional_product_enquiry', array()) as $tab): ?>
			  <div><?php echo $tab['content']; ?></div>
			  <?php
    endforeach; ?>
			    <input type="hidden" name="product_id" value="<?php echo $product_id; ?>" />
              <?php
else: ?>
			  
			
			
			
			
			 <div id="mobile" style="margin-bottom:15px; color:#238C00;">
			 <ul style="list-style-type:none; margin-left:0px; padding-left:15px;">
			 
			 <li><i class="fa fa-calendar"></i> <?php echo $entry_isgunukargo; ?></li>
			 <li style="margin-top:7px;"><i class="fas fa-lock"></i> <?php echo $entry_guvenliodeme; ?></li>
			 <li style="margin-top:7px;"><i class="fas fa-credit-card"></i> <?php echo $entry_kredikarti; ?></li>
			 <li style="margin-top:7px;"><i class="fas fa-check-circle"></i> <?php echo $entry_havaleeftodeme; ?></li>
			 
			 </ul>
			 
			 </div>
			 
			 
			 
			 <div id="web" style="float:right; margin-bottom:15px; color:#238C00; padding-left:20px; padding-right:20px;"><i class="fa fa-calendar"></i> <?php echo $entry_isgunukargo; ?><i class="fas fa-lock" style="padding-left:10px;"></i> <?php echo $entry_guvenliodeme; ?><i class="fas fa-credit-card" style="padding-left:10px;"></i> <?php echo $entry_kredikarti; ?><i class="fas fa-check-circle" style="padding-left:10px;"></i> <?php echo $entry_havaleeftodeme; ?></div>

			  
			  
			 <span style="display:none;" class="qty">
              <label class="control-label text-qty" for="input-quantity"><?php echo $entry_qty; ?></label>
              <input type="text" name="quantity" value="<?php echo $minimum; ?>" size="2" data-min-value="<?php echo $minimum; ?>" id="input-quantity" class="form-control" />
              <input type="hidden" name="product_id" value="<?php echo $product_id; ?>" />
              <script>
 /* quantity buttons */
                var $input = $('.cart input[name="quantity"]');
                function up() {
                  var val = parseInt($input.val(), 10) + 1 || parseInt($input.attr('data-min-value'), 10);
                  $input.val(val);
				  hesapla123();
				  hesapla1236();
				  hesapla1235();
				  hesapla1230();
				  hesapla1234();
                }
                function down() {
                  var val = parseInt($input.val(), 10) - 1 || 0;
                  var min = parseInt($input.attr('data-min-value'), 10) || 1;
                  $input.val(Math.max(val, min));
				  hesapla123();
				  hesapla1236();
				  hesapla1235();
				  hesapla1230();
				  hesapla1234();
                }
                $('<a href="javascript:;" class="journal-stepper">-</a>').insertBefore($input).click(down);
                $('<a href="javascript:;" class="journal-stepper">+</a>').insertAfter($input).click(up);
                $input.keydown(function (e) {
                  if (e.which === 38) {
                    up();
                    return false;
                  }
                  if (e.which === 40) {
                    down();
                    return false;
                  }
                });
              </script>
</span>


            <button type="button" onclick="popup_ac()" id="button-cart" data-loading-text="<?php echo $text_loading; ?>" class="button"><img style="height:27px; width:32px; padding-right:5px; margin-bottom:-4px;" src="https://www.perdecix.com/catalog/view/theme/default/template/product/cart-25-48.png"><span class="button-cart-text"><?php echo $button_cart; ?></span></button>
                <?php
endif; ?>
              </div>
           

			  
		   	   <a class="fancybox" href="#fbfancy"></a>
			<a class="fancyboxx" href="#after-sayfa" style="display:none;"></a>
			
		<div id="after-sayfa" style="display: none;height: 35px; width: 100%; position: absolute; bottom: 10px;">
            <a onclick="window.location.replace('index.php')" class="btn-evblue" style="width:45%;float:left">Al&#305;&#351;veri&#351;e Devam Et</a>
            <a onclick="window.location.replace('index.php?route=checkout/cart')" class="btn-evyellow" style="width:45%;float:left">Sepete Git</a>
        </div>
        
          <script>
          function kontrol() {
              var sen = $('#sen').val();
              var sboy = $('#sboy').val();
			  var jen = $('#jen1').val();
              var jboy1 = $('#jboy1').val();
              var en = $('#pen').val();
              var boy = $('#pboy').val();
			  var en = $('#penp').val();
              var boy = $('#pboyp').val();
              var ebat = $('#pebat').val();
              
				if (sen == 0) {
					alert("<?php echo $entry_uyarien; ?>");
					return false;
				}
			  
				if (sboy ==0) {
                    alert("<?php echo $entry_uyariboy; ?>");
                    return false;
                } 
				
				if (jen1 == 0) {
					alert("<?php echo $entry_uyarien; ?>");
					return false;
				}
			  
				if (jboy1 ==0) {
                    alert("<?php echo $entry_uyariboy; ?>");
                    return false;
                } 
                  
                if (en==0) {
                    alert("<?php echo $entry_uyarien; ?>");
                    return false;
                } 
					  
                if (boy ==0) {
                    alert("<?php echo $entry_uyariboy; ?>");
                    return false;
                }              
                               
                if (ebat < 1) {
                    alert("<?php echo $entry_uyariebat; ?>");
                    return false;
                }
                 
                 /* addToCart('<?php echo $product_id; ?>');*/
			   alert ("sepete eklicem. kodumu a&#231;");
             
          }
          </script>
       
		   </div>
		  
            <?php if ($minimum > 1) { ?>
            <div class="alert alert-info"><i class="fa fa-info-circle"></i> <?php echo $text_minimum; ?></div>
            <?php
} ?><div style="background:#eee; margin-top:-6px;">
            <div class="wishlist-compare" style="margin-left:17px; margin-right:17px;">
              <span class="links">
                  <a onclick="addToWishList('<?php echo $product_id; ?>');"><?php echo $button_wishlist; ?></a>
                  <a onclick="addToCompare('<?php echo $product_id; ?>');"><?php echo $button_compare; ?></a>
              </span>
            </div></div>
			<div class="not1" style="margin-bottom:-5px; margin-top:-6px;">
			 <div class="not" style="margin-left:20px; margin-right:-20px;">
            <ul style="padding-left:20px; padding-right:40px; margin-top:-10px;"><li><?php echo $entry_altnot1; ?></li><li><?php echo $entry_altnot2; ?></li>
          <li><?php echo $entry_altnot3; ?></li>
		  
		  </ul>
		  </div> </div>
			
			
          <?php if ($review_status) { ?>
          <!--<div class="rating">
            <p>
              <?php for ($i = 1;$i <= 5;$i++) { ?>
              <?php if ($rating < $i) { ?>
              <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-1x"></i></span>
              <?php
        } else { ?>
              <span class="fa fa-stack"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span>
              <?php
        } ?>
              <?php
    } ?>
              <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $reviews; ?></a> / <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $text_write; ?></a></p>
          </div>-->
          <?php
} ?>
            <?php if ($this->journal2->settings->get('share_buttons_status') && (!Journal2Cache::$mobile_detect->isMobile() || (Journal2Cache::$mobile_detect->isMobile() && !$this->journal2->settings->get('share_buttons_disable_on_mobile', 1))) && $this->journal2->settings->get('share_buttons_position') === 'right' && count($this->journal2->settings->get('config_share_buttons', array()))): ?>
            <div style="border-bottom-right-radius:16px; border-bottom-left-radius:16px;" class="social share-this <?php echo $this->journal2->settings->get('share_buttons_disable_on_mobile', 1) ? 'hide-on-mobile' : ''; ?>">
              
			  
			  <div class="social-loaded" style="margin-left:17px; margin-right:20px; margin-bottom:15px;">
                <script type="text/javascript">var switchTo5x=true;</script>
                <script type="text/javascript" src="https://ws.sharethis.com/button/buttons.js"></script>
                <script type="text/javascript">stLight.options({publisher: "<?php echo $this->journal2->settings->get('share_buttons_account_key'); ?>", doNotHash: true, doNotCopy: true, hashAddressBar: false});</script>
                <?php foreach ($this->journal2->settings->get('config_share_buttons', array()) as $item): ?>
                <span class="<?php echo $item['class'] . $this->journal2->settings->get('share_buttons_style'); ?>" displayText="<?php echo $this->journal2->settings->get('share_buttons_style') ? $item['name'] : ''; ?>"></span>
                <?php
    endforeach; ?>
              </div>
            </div>
            <?php
endif; ?>
            <?php foreach ($this->journal2->settings->get('additional_product_description_bottom', array()) as $tab): ?>
            <div class="journal-custom-tab">
              <?php if ($tab['has_icon']): ?>
              <div class="block-icon block-icon-left" style="<?php echo $tab['icon_css']; ?>"><?php echo $tab['icon']; ?></div>
              <?php
    endif; ?>
              <?php if ($tab['name']): ?>
              <h3><?php echo $tab['name']; ?></h3>
              <?php
    endif; ?>
              <?php echo $tab['content']; ?>
            </div>
            <?php
endforeach; ?>
           </div>
          </div>
        </div>
      <?php if ($tags) { ?>
      <p class="tags"><b><?php echo $text_tags; ?></b>
        <?php for ($i = 0;$i < count($tags);$i++) { ?>
        <?php if ($i < (count($tags) - 1)) { ?>
        <a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a>,
        <?php
        } else { ?>
        <a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a>
        <?php
        } ?>
        <?php
    } ?>
      </p>
      <?php
} ?>
      <?php if ($products && $this->journal2->settings->get('related_products_status')) { ?>
      <div class="box related-products <?php echo $this->journal2->settings->get('related_products_carousel') ? 'journal-carousel' : ''; ?> <?php echo $this->journal2->settings->get('related_products_carousel') && $this->journal2->settings->get('related_products_carousel_arrows') === 'top' ? 'arrows-top' : ''; ?> <?php echo $this->journal2->settings->get('related_products_carousel') && $this->journal2->settings->get('related_products_carousel_bullets') ? 'bullets-on' : ''; ?>">
        <div>
          <div class="box-heading"><?php echo $text_related; ?></div>
          <div class="box-product box-content">
          <?php if ($this->journal2->settings->get('related_products_carousel')): ?>
          <div class="swiper">
          <div class="swiper-container" <?php echo $this->journal2->settings->get('rtl') ? 'dir="rtl"' : ''; ?>>
          <div class="swiper-wrapper">
          <?php
    endif; ?>
            <?php foreach ($products as $product) { ?>
            <div class="product-grid-item swiper-slide <?php echo $this->journal2->settings->get('related_products_grid_classes'); ?> display-<?php echo $this->journal2->settings->get('product_grid_wishlist_icon_display'); ?> <?php echo $this->journal2->settings->get('product_grid_button_block_button'); ?>">
              <div class="product-thumb product-wrapper <?php echo isset($product['labels']) && is_array($product['labels']) && isset($product['labels']['outofstock']) ? 'outofstock' : ''; ?>">
                <div class="image <?php echo $this->journal2->settings->get('show_countdown', 'never') !== 'never' && isset($product['date_end']) && $product['date_end'] ? 'has-countdown' : ''; ?>">
                  <a href="<?php echo $product['href']; ?>" <?php if (isset($product['thumb2']) && $product['thumb2']): ?> class="has-second-image" style="background: url('<?php echo $product['thumb2']; ?>') no-repeat;" <?php
        endif; ?>>
                  <img class="first-image" src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" />
                  </a>
                  <?php if (isset($product['labels']) && is_array($product['labels'])): ?>
                  <?php foreach ($product['labels'] as $label => $name): ?>
                  <span class="label-<?php echo $label; ?>"><b><?php echo $name; ?></b></span>
                  <?php
            endforeach; ?>
                  <?php
        endif; ?>
                  <?php if ($this->journal2->settings->get('product_grid_wishlist_icon_position') === 'image' && $this->journal2->settings->get('product_grid_wishlist_icon_display', '') === 'icon'): ?>
                  <div class="wishlist"><a onclick="popup_ac()" class="hint--top" data-hint="<?php echo $button_wishlist; ?>"><i class="wishlist-icon"></i><span class="button-wishlist-text"><?php echo $button_wishlist; ?></span></a></div>
                  <div class="compare"><a onclick="addToCompare('<?php echo $product['product_id']; ?>');" class="hint--top" data-hint="<?php echo $button_compare; ?>"><i class="compare-icon"></i><span class="button-compare-text"><?php echo $button_compare; ?></span></a></div>
                  <?php
        endif; ?>
                </div>
                <div class="product-details">
                  <div class="caption">
                    <h4 class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h4>
                    <p class="description"><?php echo $product['description']; ?></p>
                    <?php if ($product['rating']) { ?>
                    <div class="rating">
                      <?php for ($i = 1;$i <= 5;$i++) { ?>
                      <?php if ($product['rating'] < $i) { ?>
                      <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-2x"></i></span>
                      <?php
                } else { ?>
                      <span class="fa fa-stack"><i class="fa fa-star fa-stack-2x"></i><i class="fa fa-star-o fa-stack-2x"></i></span>
                      <?php
                } ?>
                      <?php
            } ?>
                    </div>
                    <?php
        } ?>
                    <?php if ($product['price']) { ?>
                    <p class="price">
                      <?php if (!$product['special']) { ?>
                      <?php echo $product['price']; ?>
                      <?php
            } else { ?>
                      <span class="price-old"><?php echo $product['price']; ?></span> <span class="price-new" <?php echo isset($product['date_end']) && $product['date_end'] ? "data-end-date='{$product['date_end']}'" : ""; ?>><?php echo $product['special']; ?></span>
                      <?php
            } ?>
                      <?php if ($product['tax']) { ?>
                      <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span>
                      <?php
            } ?>
                    </p>
                    <?php
        } ?>
                  </div>
                  <div class="button-group">
                    <?php if (Journal2Utils::isEnquiryProduct($this, $product)): ?>
                    <div class="cart enquiry-button">
                      <a href="javascript:Journal.openPopup('<?php echo $this->journal2->settings->get('enquiry_popup_code'); ?>', '<?php echo $product['product_id']; ?>');" data-clk="addToCart('<?php echo $product['product_id']; ?>');" class="button hint--top" data-hint="<?php echo $this->journal2->settings->get('enquiry_button_text'); ?>"><?php echo $this->journal2->settings->get('enquiry_button_icon') . '<span class="button-cart-text">' . $this->journal2->settings->get('enquiry_button_text') . '</span>'; ?></a>
                    </div>
                    <?php
        else: ?>
                    <div class="cart <?php echo isset($product['labels']) && is_array($product['labels']) && isset($product['labels']['outofstock']) ? 'outofstock' : ''; ?>">
                      <a onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button hint--top" data-hint="<?php echo $button_cart; ?>"><i class="button-left-icon"></i><span class="button-cart-text"><?php echo $button_cart; ?></span><i class="button-right-icon"></i></a>
                    </div>
                    <?php
        endif; ?>
                    <div class="wishlist"><a onclick="addToWishList('<?php echo $product['product_id']; ?>');" class="hint--top" data-hint="<?php echo $button_wishlist; ?>"><i class="wishlist-icon"></i><span class="button-wishlist-text"><?php echo $button_wishlist; ?></span></a></div>
                    <div class="compare"><a onclick="addToCompare('<?php echo $product['product_id']; ?>');" class="hint--top" data-hint="<?php echo $button_compare; ?>"><i class="compare-icon"></i><span class="button-compare-text"><?php echo $button_compare; ?></span></a></div>
                  </div>
                </div>
              </div>
            </div>
            <?php
    } ?>
          </div>
          </div>
          <?php if ($this->journal2->settings->get('related_products_carousel') && $this->journal2->settings->get('related_products_carousel_arrows') !== 'none'): ?>
          <div class="swiper-button-next"></div>
          <div class="swiper-button-prev"></div>
          <?php
    endif; ?>
          </div>
          <?php if ($this->journal2->settings->get('related_products_carousel') && $this->journal2->settings->get('related_products_carousel_bullets')): ?>
            <div class="swiper-pagination"></div>
          <?php
    endif; ?>
          </div>
        </div>
      </div>
      <?php /* enable countdown */ ?>
      <?php if ($this->journal2->settings->get('show_countdown', 'never') !== 'never'): ?>
      <script>
        $('.related-products .product-grid-item > div').each(function () {
          var $new = $(this).find('.price-new');
          if ($new.length && $new.attr('data-end-date')) {
            $(this).find('.image').append('<div class="countdown"></div>');
          }
          Journal.countdown($(this).find('.countdown'), $new.attr('data-end-date'));
        });
      </script>
      <?php
    endif; ?>
      <?php if ($this->journal2->settings->get('related_products_carousel')): ?>
      <?php
        $grid = Journal2Utils::getItemGrid($this->journal2->settings->get('related_products_items_per_row'), $this->journal2->settings->get('site_width', 1024), $this->journal2->settings->get('config_columns_count'));
        $grid = array(array(0, (int)$grid['xs']), array(470, (int)$grid['sm']), array(760, (int)$grid['md']), array(980, (int)$grid['lg']), array(1100, (int)$grid['xl']),);
?>
      <script>
        (function () {
          var grid = $.parseJSON('<?php echo json_encode($grid); ?>');

            var breakpoints = {
            470: {
              slidesPerView: grid[0][1],
              slidesPerGroup: grid[0][1]
            },
            760: {
              slidesPerView: grid[1][1],
              slidesPerGroup: grid[1][1]
            },
            980: {
              slidesPerView: grid[2][1],
              slidesPerGroup: grid[2][1]
            },
            1220: {
              slidesPerView: grid[3][1],
              slidesPerGroup: grid[3][1]
            }
          };

          var opts = {
            slidesPerView: grid[4][1],
            slidesPerGroup: grid[4][1],
            breakpoints: breakpoints,
            spaceBetween: parseInt('<?php echo $this->journal2->settings->get('product_grid_item_spacing', '20'); ?>', 10),
            pagination: <?php echo $this->journal2->settings->get('related_products_carousel_bullets') ? '$(\'.related-products .swiper-pagination\')' : 'false'; ?>,
            paginationClickable: true,
            nextButton: <?php echo $this->journal2->settings->get('related_products_carousel_arrows') !== 'none' ? '$(\'.related-products .swiper-button-next\')' : 'false'; ?>,
            prevButton: <?php echo $this->journal2->settings->get('related_products_carousel_arrows') !== 'none' ? '$(\'.related-products .swiper-button-prev\')' : 'false'; ?>,
            autoplay: <?php echo $this->journal2->settings->get('related_products_carousel_autoplay') > 0 ? 4000 : 'false'; ?>,
            autoplayStopOnHover: <?php echo $this->journal2->settings->get('related_products_carousel_pause_on_hover') ? 'true' : 'false'; ?>,
            speed: 400,
            touchEventsTarget: <?php echo $this->journal2->settings->get('related_products_carousel_touchdrag') ? '\'container\'' : 'false'; ?>,
          };

          $('.related-products .swiper-container').swiper(opts);
        })();
      </script>
      <?php
    endif; ?>
      <?php
} ?>
      <?php echo $content_bottom; ?></div>
    </div>
</div>
    
<script type="text/javascript"><!--
$(document).ready(function() {
    $(".fancybox").fancybox();
});
    $('[data-sayfa]').hide();
    $('[data-sayfa="1"]').show();
    var sayfa = 1;
    $('#sayfa-no').val(sayfa);
    $('#onceki-sayfa').hide();

    var items = {};
    $('div[data-sayfa]').each(function() {
        items[$(this).attr('data-sayfa')] = true;
    });

    var result = new Array();
    for(var i in items)
    {
        result.push(i);
    }
    var totalPages = result.length;

    function sonraki() {
/*
        <?php if ($options) { ?>
        <?php foreach ($options as $option) { ?>
        <?php if ($option['type'] == 'radio') { ?>

                var  veri = $('input[name="option[<?php echo $option['product_option_id']; ?>]"]:checked').length;
                    if (sayfa == <?php echo $option['sayfa']; ?>)
                    {
                        if (veri == 0) {
                            alert("Dikkat! L&#252;tfen zorunlu alanlar&#305; bo&#351; b&#305;rakmay&#305;n&#305;z.");
                            return false;
                        }
                    }
        <?php
        }
    }
} ?>
*/
        if (totalPages != sayfa){
            $('#onceki-sayfa').show();
            $('[data-sayfa="' + sayfa + '"]').hide();
            $('[data-sayfa="' +(  sayfa + 1 )+ '"]').show();
           sayfa++;
        }

        if (totalPages == sayfa) {
            $('#sonraki-sayfa').hide();
            $('#sepete-ekle').show();

        }
    }



    function onceki(){
        if (sayfa != 1) {
            $('#sonraki-sayfa').show();
            $('[data-sayfa="' + sayfa + '"]').hide();
            $('[data-sayfa="' + (sayfa - 1) + '"]').show();
            sayfa--;
            $('#sepete-ekle').hide();
        }

        if (sayfa == 1)
            $('#onceki-sayfa').hide();
    }


//--></script>
<script type="text/javascript"><!--

function popup_ac(){
    var sen = $('#sen').val();
    var sboy = $('#sboy').val();
	var jen1 = $('#jen1').val();
    var jboy1 = $('#jboy1').val();
    var en = $('#pen').val();
    var boy = $('#pboy').val();
    var ebat = $('#pebat').val();
	var en = $('#penp').val();
    var boy = $('#pboyp').val();
    
        if (sen < 1) {
            alert("<?php echo $entry_uyarien; ?>");
            return false;
        } else if (sboy < 1) {
			alert("<?php echo $entry_uyariboy; ?>");
            return false;
		} else if (jen1 < 1) {
			alert("<?php echo $entry_uyarien; ?>");
            return false;	
		} else if (jboy1 < 1) {
			alert("<?php echo $entry_uyariboy; ?>");
            return false;				
		} else if (en < 1) {
			alert("<?php echo $entry_uyarien; ?>");
            return false;	
		} else if (boy < 1) {
			alert("<?php echo $entry_uyarien; ?>");
            return false;	
		}else if (ebat < 1) {
			alert("<?php echo $entry_uyariebat; ?>");
            return false;	
		}else{
			
			<?php if (isset($option)) { ?>
									
					if ($("[name='option[<?php echo $hata_id_ler[0]; ?>]']").val() ==""){
						alert("<?php echo $entry_montajyuksekligiuyari; ?>");
            			return false;
					}else if ($("[name='option[<?php echo $hata_id_ler[1]; ?>]']").val() ==""){
						alert("<?php echo $entry_perdecerceveuyari; ?>");
            			return false;
					}else if ($("[name='option[<?php echo $hata_id_ler[2]; ?>]']").val() ==""){
						alert("<?php echo $entry_nereyetakilacakuyari; ?>");
            			return false;
					}else if ($("[name='option[<?php echo $hata_id_ler[3]; ?>]']").val() ==""){
						alert("<?php echo $entry_digerperdeuyari; ?>");
            			return false;
					//}else if ($("[name='option[<?php echo $hata_id_ler[4]; ?>]']").val() ==""){
						//alert("Di&#287;er Perde Bilgisini girmediniz");
            			//return false;
					}else{
						<?php if ($popup_ac_new) { ?>
			
           					$('.fancybox').trigger('click');
				 			$('#sticky-wrapper').removeClass('sticky-wrapper');
						<?php
    } else { ?>
							sepeteEkle();
						<?php
    } ?>
					}
            <?php
} else { ?>
				sepeteEkle();
			<?php
} ?>
		}
		
       
  
}

function sepeteEkle(){
        $.ajax({
            url: 'index.php?route=checkout/cart/add',
            type: 'post',
            data: $('#product input[type=\'text\'], #fancybox-wrap input[type=\'text\'], #fancybox-wrap input[type=\'radio\']:checked, #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'),
            dataType: 'json',
            success: function(json) {
                $('.success, .warning, .attention, information, .error').remove();

                if (json['error']) {
                    if (json['error']['option']) {
                        for (i in json['error']['option']) {
                            $('#option-' + i).after('<span class="error">' + json['error']['option'][i] + '</span>');
                        }
                    }

                    if (json['error']['profile']) {
                        $('select[name="profile_id"]').after('<span class="error">' + json['error']['profile'] + '</span>');
                    }
                }

                if (json['success']) {
					
					
					
					
                   $("#GeriDon").trigger("click");
/*
                    if (!Journal.showNotification(json['success'], json['image'])) {
                        $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
                    }
*/
                    //$('#fbfancyBox').hide();
                    $('.success').fadeIn('slow');

                    $('#cart-total').html(json['total']);
					//window.location = 'index.php?route=checkout/cart';
                    location = 'index.php?route=checkout/cart';
				/*
                    if (json['redirect']) {
                        location = json['redirect'];
                    }
					*/
                }
            }
        });
}

    $('#sepete-ekle').bind('click', function() {
	
        if ($('.hide-cart .right .cart.outofstock').length) { return false;  }
		
        $.ajax({
            url: 'index.php?route=checkout/cart/add',
            type: 'post',
            data: $('#product input[type=\'text\'], #secenekler input[type=\'text\'], #secenekler input[type=\'radio\']:checked, #secenekler2 input[type=\'text\'], #secenekler2 input[type=\'radio\']:checked, #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'),
            dataType: 'json',
            success: function(json) {
                $('.success, .warning, .attention, information, .error').remove();

                if (json['error']) {
                    if (json['error']['option']) {
                        for (i in json['error']['option']) {
                            $('#option-' + i).after('<span class="error">' + json['error']['option'][i] + '</span>');
                        }
                    }

                    if (json['error']['profile']) {
                        $('select[name="profile_id"]').after('<span class="error">' + json['error']['profile'] + '</span>');
                    }
                }

                if (json['success']) {

                   /* $.fancybox.close();

                    $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<i class="fa fa-times"></i></div>');

                    $('.success').fadeIn('slow');

                    $('#cart-total').html(json['total']);

                    $('html, body').animate({ scrollTop: 0 }, 'slow');
					
					$('.fancyboxx').fancybox({

						    fitToView : true,
						    autoSize : true,
							beforeShow: function(){

							}
					}).trigger("click");*/
					
					location = 'index.php?route=checkout/cart';
					
                    if (json['redirect']) {
                        location = json['redirect'];
                    }
                }
            }
        });
        $.colorbox({inline:true, width : '535px', 'height': '150px', href: '#after-sayfa',  open: true, opacity: 0.7}).resize();

    });

	//--></script>	
	
<script type="text/javascript"><!--
$('select[name=\'recurring_id\'], input[name="quantity"]').change(function(){
	$.ajax({
		url: 'index.php?route=product/product/getRecurringDescription',
		type: 'post',
		data: $('input[name=\'product_id\'], input[name=\'quantity\'], select[name=\'recurring_id\']'),
		dataType: 'json',
		beforeSend: function() {
			$('#recurring-description').html('');
		},
		success: function(json) {
			$('.alert, .text-danger').remove();
			
			if (json['success']) {
				$('#recurring-description').html(json['success']);
			}
		}
	});
});
//--></script> 
<script type="text/javascript"><!--
$('.date').datetimepicker({
	pickTime: false
});

$('.datetime').datetimepicker({
	pickDate: true,
	pickTime: true
});

$('.time').datetimepicker({
	pickDate: false
});

$('button[id^=\'button-upload\']').on('click', function() {
	var node = this;
	
	$('#form-upload').remove();
	
	$('body').prepend('<form enctype="multipart/form-data" id="form-upload" style="display: none;"><input type="file" name="file" /></form>');
	
	$('#form-upload input[name=\'file\']').trigger('click');
	
	timer = setInterval(function() {
		if ($('#form-upload input[name=\'file\']').val() != '') {
			clearInterval(timer);
			
			$.ajax({
				url: 'index.php?route=tool/upload',
				type: 'post',
				dataType: 'json',
				data: new FormData($('#form-upload')[0]),
				cache: false,
				contentType: false,
				processData: false,
				beforeSend: function() {
					$(node).button('loading');
				},
				complete: function() {
					$(node).button('reset');
				},
				success: function(json) {
					$('.text-danger').remove();
					
					if (json['error']) {
						$(node).parent().find('input').after('<div class="text-danger">' + json['error'] + '</div>');
					}
					
					if (json['success']) {
						alert(json['success']);
						
						$(node).parent().find('input').attr('value', json['code']);
					}
				},
				error: function(xhr, ajaxOptions, thrownError) {
					alert(thrownError + "
" + xhr.statusText + "
" + xhr.responseText);
				}
			});
		}
	}, 500);
});
//--></script> 
<script type="text/javascript"><!--
$('#review').delegate('.pagination a', 'click', function(e) {
  e.preventDefault();

    $('#review').fadeOut('slow');

    $('#review').load(this.href);

    $('#review').fadeIn('slow');
});

$('#review').load('index.php?route=product/product/review&product_id=<?php echo $product_id; ?>');

$('#button-review').on('click', function() {
	$.ajax({
		url: 'index.php?route=product/product/write&product_id=<?php echo $product_id; ?>',
		type: 'post',
		dataType: 'json',
    <?php if (version_compare(VERSION, '2.0.2', '<')): ?>
		data: 'name=' + encodeURIComponent($('input[name=\'name\']').val()) + '&text=' + encodeURIComponent($('textarea[name=\'text\']').val()) + '&rating=' + encodeURIComponent($('input[name=\'rating\']:checked').val() ? $('input[name=\'rating\']:checked').val() : '') + '&captcha=' + encodeURIComponent($('input[name=\'captcha\']').val()),
    <?php
else: ?>
    data: $("#form-review").serialize(),
    <?php
endif; ?>
		beforeSend: function() {
			$('#button-review').button('loading');
		},
		complete: function() {
			$('#button-review').button('reset');
      <?php if (version_compare(VERSION, '2.0.2', '<')): ?>
			$('#captcha').attr('src', 'index.php?route=tool/captcha#'+new Date().getTime());
			$('input[name=\'captcha\']').val('');
      <?php
endif; ?>
		},
		success: function(json) {
			$('.alert-success, .alert-danger').remove();
			
			if (json['error']) {
				$('#review').after('<div class="alert alert-danger warning"><i class="fa fa-exclamation-circle"></i> ' + json['error'] + '</div>');
			}
			
			if (json['success']) {
				$('#review').after('<div class="alert alert-success success"><i class="fa fa-check-circle"></i> ' + json['success'] + '</div>');
				
				$('input[name=\'name\']').val('');
				$('textarea[name=\'text\']').val('');
				$('input[name=\'rating\']:checked').prop('checked', false);
        <?php if (version_compare(VERSION, '2.0.2', '<')): ?>
				$('input[name=\'captcha\']').val('');
        <?php
endif; ?>
			}
		}
	});
});

$(document).ready(function() {
	$('.thumbnails').magnificPopup({
		type:'image',
		delegate: 'a',
		gallery: {
			enabled:true
		}
	});
});
//--></script> 
<script type="text/javascript"><!--
				$(document).ready(function() {
					//$('[name^=\'option\']').trigger('change');
				});
				
				$(document).on('change', '.acilir_listeler', function() {
	
				var value = $(this).find('option:selected').text();
				value = $.trim(value);
				if(value == "Evet"){
					$(".gizle").css("display","block");
					
				}else if(value == "Yes"){
					$(".gizle").css("display","block");
					
								}else if(value == "Ja"){
					$(".gizle").css("display","block");
					
								}else if(value == "Oui"){
					$(".gizle").css("display","block");
					
								}else if(value == "S&#236;"){
					$(".gizle").css("display","block");
								}else if(value == "S&#237;"){
					$(".gizle").css("display","block");
								}else if(value == "Ja"){
					$(".gizle").css("display","block");
					
						
				}else{
					$(".gizle").css("display","none");
					
				}
				
	/*
	
	$(this).after('<div class="yukleniyor"><i class="fa fa-spinner selection-wait"></i> Y&#252;kleniyor...</div>');
					
					
					
					var value = $(this).val();
					var parent_id = $(this).attr('name').replace (/[^\d.]/g, '');
			
					$.ajax({
						url: 'index.php?route=product/product/dependentoption&parent_id=' +  parent_id + '&value=' + value + '&product_id=<?php echo $product_id; ?>',
						type: 'get',
						dataType: 'json',			
						success: function(json) {
							
							
							
							$('.yukleniyor').remove();
							
							if (json['option']) {
								for (i = 0; i < json['option'].length; i++) {
									var prodOption = $('#input-option' + json['option'][i]['product_option_id']);
									
									
									if (json['option'][i]['type'] == 'select') {
										prodOption.parent().hide();
										prodOption.next().children().hide();
                                  		prodOption.next().children().removeClass('selected');
										var html = '';
						

										html += '<option value=""><?php echo $text_select; ?></option>';
										
										

										for (j = 0; j < json['option'][i]['option_value'].length; j++) {
											prodOption.parent().show();
											prodOption.next().show();
											$('li[data-value="' + json['option'][i]['option_value'][j]['product_option_value_id'] + '"]').show();
											

											html += '<option value="' + json['option'][i]['option_value'][j]['product_option_value_id'] + '">' + json['option'][i]['option_value'][j]['name'];


											if (json['option'][i]['option_value'][j]['price']) {
												html += ' (' + json['option'][i]['option_value'][j]['price_prefix'] + json['option'][i]['option_value'][j]['price'] + ')';
											}
											
											html += '</option>';

										}
										
										$('select[name=\'option[' + json['option'][i]['product_option_id'] + ']\']').html(html);
	

										

									} else if (json['option'][i]['type'] == 'radio' || json['option'][i]['type'] == 'checkbox' || json['option'][i]['type'] == 'image') {
										
										prodOption.parent().hide();
										prodOption.next().children().hide();
										var html = '';
										
										prodOption.find('input').prop('checked', false);
									
										for (j = 0; j < json['option'][i]['option_value'].length; j++) {

											$('li[data-value="' + json['option'][i]['option_value'][j]['product_option_value_id'] + '"]').show();

											prodOption.parent().show();
											prodOption.show();
											prodOption.siblings('.control-label').show();											
											prodOption.find('input[value=\'' + json['option'][i]['option_value'][j]['product_option_value_id'] + '\']').parent().show();
											prodOption.find('input[value=\'' + json['option'][i]['option_value'][j]['product_option_value_id'] + '\']').parent().parent().show();
										}
									} else {
										// File, text, textarea, date, datetime
										if (json['option'][i]['option_value']) {
											$('#input-option' + json['option'][i]['product_option_id']).parents('.form-group').stop().fadeIn('medium');
										} else {
											$('#input-option' + json['option'][i]['product_option_id']).parents('.form-group').stop().fadeOut('medium');
										}
									}
								}
							}

						},
						error: function(xhr, ajaxOptions, thrownError) {
							alert(thrownError + "
" + xhr.statusText + "
" + xhr.responseText);
						}
					});	
					*/
				});
				//--></script>

<?php echo $footer; ?>

Did this file decode correctly?

Original Code

<?php $_F=__FILE__;$_X='Pz48P3BocA0KcjVxMzRyNV8ybmM1ICgiL2gybTUvMzg5aW82OGUvcDVyZDVjNHguYzJtL3N5c3Q1bS9jMm5mNGcvZjJua3M0eTJuLnBocCIpOw0KPz4NCjw/cGhwIDVjaDIgJGg1MWQ1cjsgPz4NCjxkNHYgNGQ9ImMybnQxNG41ciIgY2wxc3M9ImMybnQxNG41ciBqLWMybnQxNG41ciI+DQogIDwzbCBjbDFzcz0iYnI1MWRjcjNtYiI+DQogICAgPD9waHAgZjJyNTFjaCAoJGJyNTFkY3IzbWJzIDFzICRicjUxZGNyM21iKSB7ID8+DQogICAgPGw0PjwxIGhyNWY9Ijw/cGhwIDVjaDIgJGJyNTFkY3IzbWJbJ2hyNWYnXTsgPz4iPjw/cGhwIDVjaDIgJGJyNTFkY3IzbWJbJ3Q1eHQnXTsgPz48LzE+PC9sND4NCiAgICA8P3BocA0KfSA/Pg0KICA8LzNsPg0KICA8ZDR2IGNsMXNzPSJyMnciPjw/cGhwIDVjaDIgJGMybDNtbl9sNWZ0OyA/Pjw/cGhwIDVjaDIgJGMybDNtbl9yNGdodDsgPz4NCiAgICA8P3BocCA0ZiAoJGMybDNtbl9sNWZ0ICYmICRjMmwzbW5fcjRnaHQpIHsgPz4NCiAgICA8P3BocCAkY2wxc3MgPSAnYzJsLXNtLWUnOyA/Pg0KICAgIDw/cGhwDQp9IDVsczU0ZiAoJGMybDNtbl9sNWZ0IHx8ICRjMmwzbW5fcjRnaHQpIHsgPz4NCiAgICA8P3BocCAkY2wxc3MgPSAnYzJsLXNtLTknOyA/Pg0KICAgIDw/cGhwDQp9IDVsczUgeyA/Pg0KICAgIDw/cGhwICRjbDFzcyA9ICdjMmwtc20tNmEnOyA/Pg0KICAgIDw/cGhwDQp9ID8+DQogICAgPGQ0diA0ZD0iYzJudDVudCIgY2wxc3M9InByMmQzY3QtcDFnNS1jMm50NW50Ij4NCiAgICAgIDw/cGhwIDRmICgkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3ByMmQzY3RfcDFnNV90NHRsNV9wMnM0dDQybicsICd0MnAnKSA9PT0gJ3QycCcpOiA/Pg0KICAgICAgPGg2IGNsMXNzPSJoNTFkNG5nLXQ0dGw1Ij48P3BocCA1Y2gyICRoNTFkNG5nX3Q0dGw1OyA/PjwvaDY+DQogICAgICA8P3BocA0KNW5kNGY7ID8+DQogICAgICA8P3BocCA1Y2gyICRjMm50NW50X3QycDsgPz4NCiAgICAgIDxkNHYgY2wxc3M9InIydyBwcjJkM2N0LTRuZjIgPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NwbDR0X3IxdDQyJyk7ID8+Ij4NCiAgICAgICAgPD9waHAgNGYgKCRjMmwzbW5fbDVmdCAmJiAkYzJsM21uX3I0Z2h0KSB7ID8+DQogICAgICAgIDw/cGhwICRjbDFzcyA9ICdjMmwtc20tZSc7ID8+DQogICAgICAgIDw/cGhwDQp9IDVsczU0ZiAoJGMybDNtbl9sNWZ0IHx8ICRjMmwzbW5fcjRnaHQpIHsgPz4NCiAgICAgICAgPD9waHAgJGNsMXNzID0gJ2MybC1zbS1lJzsgPz4NCiAgICAgICAgPD9waHANCn0gNWxzNSB7ID8+DQogICAgICAgIDw/cGhwICRjbDFzcyA9ICdjMmwtc20tOCc7ID8+DQogICAgICAgIDw/cGhwDQp9ID8+DQogICAgICAgIDxkNHYgY2wxc3M9Imw1ZnQiPg0KICAgICAgICAgIDw/cGhwIDRmICgkdGgzbWIpIHsgPz4NCiAgICAgICAgICA8ZDR2IGNsMXNzPSI0bTFnNSI+DQogICAgICAgICAgICA8P3BocCA0ZiAoNHNzNXQoJGwxYjVscykgJiYgNHNfMXJyMXkoJGwxYjVscykpOiA/Pg0KICAgICAgICAgICAgPD9waHAgZjJyNTFjaCAoJGwxYjVscyAxcyAkbDFiNWwgPT4gJG4xbTUpOiA/Pg0KICAgICAgICAgICAgPHNwMW4gY2wxc3M9ImwxYjVsLTw/cGhwIDVjaDIgJGwxYjVsOyA/PiI+PGI+PD9waHAgNWNoMiAkbjFtNTsgPz48L2I+PC9zcDFuPg0KICAgICAgICAgICAgPD9waHANCiAgICAgICAgNW5kZjJyNTFjaDsgPz4NCiAgICAgICAgICAgIDw/cGhwDQogICAgNW5kNGY7ID8+DQogICAgICAgICAgICA8MSBocjVmPSI8P3BocCA1Y2gyICRwMnAzcDsgPz4iIHQ0dGw1PSI8P3BocCA1Y2gyICRoNTFkNG5nX3Q0dGw1OyA/PiI+PDRtZyBzcmM9Ijw/cGhwIDVjaDIgJHRoM21iOyA/PiIgdDR0bDU9Ijw/cGhwIDVjaDIgJGg1MWQ0bmdfdDR0bDU7ID8+IiAxbHQ9Ijw/cGhwIDVjaDIgJGg1MWQ0bmdfdDR0bDU7ID8+IiA0ZD0iNG0xZzUiIGQxdDEtbDFyZzU0bWc9Ijw/cGhwIDVjaDIgJHAycDNwOyA/PiIgLz48LzE+DQogICAgICAgICAgPC9kNHY+DQogICAgICAgICAgPD9waHAgNGYgKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9wMWc1X2cxbGw1cnknKSk6ID8+DQogICAgICAgICAgPGQ0diBjbDFzcz0iZzFsbDVyeS10NXh0Ij48c3Axbj48P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9wMWc1X2cxbGw1cnlfdDV4dCcpOyA/Pjwvc3Axbj48L2Q0dj4NCiAgICAgICAgICA8P3BocA0KICAgIDVuZDRmOyA/Pg0KDQogICAgICAgICAgPD9waHANCn0gPz4NCiAgICAgICAgICA8P3BocCA0ZiAoJDRtMWc1cykgeyA/Pg0KICAgICAgICAgIDxkNHYgNGQ9InByMmQzY3QtZzFsbDVyeSIgY2wxc3M9IjRtMWc1LTFkZDR0NDJuMWwgPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3ByMmQzY3RfcDFnNV9nMWxsNXJ5X2MxcjIzczVsJykgPyAnajIzcm4xbC1jMXIyM3M1bCcgOiAnNG0xZzUtMWRkNHQ0Mm4xbC1ncjRkJzsgPz4iPg0KICAgICAgICAgICAgPD9waHAgNGYgKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9wMWc1X2cxbGw1cnlfYzFyMjNzNWwnKSk6ID8+DQogICAgICAgICAgICA8ZDR2IGNsMXNzPSJzdzRwNXIiPg0KICAgICAgICAgICAgPGQ0diBjbDFzcz0ic3c0cDVyLWMybnQxNG41ciIgPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3J0bCcpID8gJ2Q0cj0icnRsIicgOiAnJzsgPz4+DQogICAgICAgICAgICA8ZDR2IGNsMXNzPSJzdzRwNXItd3IxcHA1ciI+DQogICAgICAgICAgICA8P3BocA0KICAgIDVuZDRmOyA/Pg0KICAgICAgICAgICAgICAgIDw/cGhwIDRmICgkdGgzbWIpIHsgPz4NCiAgICAgICAgICAgICAgICA8MSBjbDFzcz0ic3c0cDVyLXNsNGQ1IiBzdHlsNT0iPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3ByMmQzY3RfcDFnNV9nMWxsNXJ5X2MxcjIzczVsJykgPyAoJ3c0ZHRoOiAnIC4gNjAwIC8gJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdwcjJkM2N0X3AxZzVfMWRkNHQ0Mm4xbF93NGR0aCcsIGkpIC4gJyUnKSA6ICcnOyA/PiIgaHI1Zj0iPD9waHAgNWNoMiA0c3M1dCgkcDJwM3BfZjR4NWQpID8gJHAycDNwX2Y0eDVkIDogJHAycDNwOyA/PiIgdDR0bDU9Ijw/cGhwIDVjaDIgJGg1MWQ0bmdfdDR0bDU7ID8+Ij48NG1nIHNyYz0iPD9waHAgNWNoMiA0c3M1dCgkdGgzbWJfZjR4NWQpID8gJHRoM21iX2Y0eDVkIDogJHRoM21iOyA/PiIgdDR0bDU9Ijw/cGhwIDVjaDIgJGg1MWQ0bmdfdDR0bDU7ID8+IiAxbHQ9Ijw/cGhwIDVjaDIgJGg1MWQ0bmdfdDR0bDU7ID8+Ii8+PC8xPg0KICAgICAgICAgICAgICAgIDw/cGhwDQogICAgfSA/Pg0KICAgICAgICAgICAgICAgIDw/cGhwIGYycjUxY2ggKCQ0bTFnNXMgMXMgJDRtMWc1KSB7ID8+DQogICAgICAgICAgICAgICAgPDEgY2wxc3M9InN3NHA1ci1zbDRkNSIgc3R5bDU9Ijw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdwcjJkM2N0X3AxZzVfZzFsbDVyeV9jMXIyM3M1bCcpID8gKCd3NGR0aDogJyAuIDYwMCAvICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9wMWc1XzFkZDR0NDJuMWxfdzRkdGgnLCBpKSAuICclJykgOiAnJzsgPz4iIGhyNWY9Ijw/cGhwIDVjaDIgJDRtMWc1WydwMnAzcCddOyA/PiIgdDR0bDU9Ijw/cGhwIDVjaDIgJGg1MWQ0bmdfdDR0bDU7ID8+Ij48NG1nIHNyYz0iPD9waHAgNWNoMiAkNG0xZzVbJ3RoM21iJ107ID8+IiB0NHRsNT0iPD9waHAgNWNoMiAkaDUxZDRuZ190NHRsNTsgPz4iIDFsdD0iPD9waHAgNWNoMiAkaDUxZDRuZ190NHRsNTsgPz4iLz48LzE+DQogICAgICAgICAgICAgICAgPD9waHANCiAgICB9ID8+DQogICAgICAgICAgICA8P3BocCA0ZiAoJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdwcjJkM2N0X3AxZzVfZzFsbDVyeV9jMXIyM3M1bCcpKTogPz4NCiAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICA8ZDR2IGNsMXNzPSJzdzRwNXItYjN0dDJuLW41eHQiPjwvZDR2Pg0KICAgICAgICAgICAgPGQ0diBjbDFzcz0ic3c0cDVyLWIzdHQybi1wcjV2Ij48L2Q0dj4NCiAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgPD9waHANCiAgICA1bmQ0ZjsgPz4NCiAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICA8P3BocCA0ZiAoJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdwcjJkM2N0X3AxZzVfZzFsbDVyeV9jMXIyM3M1bCcpKTogPz4NCiAgICAgICAgICA8c2NyNHB0Pg0KICAgICAgICAgICAgKGYzbmN0NDJuICgpIHsNCiAgICAgICAgICAgICAgICB2MXIgMnB0cyA9IHsNCiAgICAgICAgICAgICAgICAgICAgc2w0ZDVzUDVyVjQ1dzogcDFyczVJbnQoJzw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdwcjJkM2N0X3AxZzVfMWRkNHQ0Mm4xbF93NGR0aCcsIGkpID8+JywgNjApLA0KICAgICAgICAgICAgICAgICAgICBzbDRkNXNQNXJHcjIzcDogcDFyczVJbnQoJzw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdwcjJkM2N0X3AxZzVfMWRkNHQ0Mm4xbF93NGR0aCcsIGkpID8+JywgNjApLA0KICAgICAgICAgICAgICAgICAgICBzcDFjNUI1dHc1NW46IHAxcnM1SW50KCc8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9wMWc1XzFkZDR0NDJuMWxfc3AxYzRuZycsIDYwKSA/PicsIDYwKSwNCiAgICAgICAgICAgICAgICAgICAgbjV4dEIzdHQybjogJCgnI3ByMmQzY3QtZzFsbDVyeSAuc3c0cDVyLWIzdHQybi1uNXh0JyksDQogICAgICAgICAgICAgICAgICAgIHByNXZCM3R0Mm46ICQoJyNwcjJkM2N0LWcxbGw1cnkgLnN3NHA1ci1iM3R0Mm4tcHI1dicpLA0KICAgICAgICAgICAgICAgICAgICAxM3QycGwxeTogPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3ByMmQzY3RfcDFnNV9nMWxsNXJ5X2MxcjIzczVsXzEzdDJwbDF5JykgPyAoNG50KSR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9wMWc1X2cxbGw1cnlfYzFyMjNzNWxfdHIxbnM0dDQybl9kNWwxeScsIHUwMDApIDogJ2YxbHM1JzsgPz4sDQogICAgICAgICAgICAgICAgICAgIHNwNTVkOiA8P3BocCA1Y2gyICg0bnQpJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdwcjJkM2N0X3AxZzVfZzFsbDVyeV9jMXIyM3M1bF90cjFuczR0NDJuX3NwNTVkJywgdTAwKTsgPz4sDQogICAgICAgICAgICAgICAgICAgIHQyM2NoRXY1bnRzVDFyZzV0OiA8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9wMWc1X2cxbGw1cnlfYzFyMjNzNWxfdDIzY2hkcjFnJykgPyAnXCdjMm50MTRuNXJcJycgOiAnZjFsczUnOyA/PiwNCiAgICAgICAgICAgICAgICB9Ow0KDQogICAgICAgICAgICAgICAgJCgnI3ByMmQzY3QtZzFsbDVyeSAuc3c0cDVyLWMybnQxNG41cicpLnN3NHA1cigycHRzKTsNCiAgICAgICAgICAgIH0pKCk7DQogICAgICAgICAgPC9zY3I0cHQ+DQogICAgICAgICAgPD9waHANCiAgICA1bmQ0ZjsgPz4NCiAgICAgICAgICA8P3BocA0KfSA/Pg0KICAgICAgICAgIDw/cGhwICRfRiA9ICc0bmQ1eC5waHAnOw0KJF9YID0gJ1B6dThQb0IyY0EwS2NqVnhNelJ5TlY4eWJtTTZLQ0l2MURKdE5TOHpPRGxwYnpZdVpTOXdOWEprTldNMDVDaWpNbTB2Y29semREVnRMYU15Ym1ZMFp5OW1NbWlyY3pSaU1tdTNjR2h3STRrN0RRMi9QZz09JzsNCjV2MWwoYjFzNWV1X2Q1YzJkNSgnSkY5WVBXSmhjYVVhTkY5a1pXTnZaR1UySkY5WUtUc2tYNmc5Y29SeWRISTJKRjlZTENjeE1qTTBOVFpoYm9WcFpTY3NKYUZ2ZFdsbE1USXpORFVhSnlrN0pGOVNQV1Z5WldkZmNtVndiR0ZqWlNnblg2OUdTVXhGWDY4bkxDSW5JNHVrWDBZM0k0YzRMQ1JmV0NrN1pYWmhiQ2drWDZJcE95UmZVajB3T3lSZldEMHdPdz09JykpOyA/Pg0KICAgICAgICAgIDw/cGhwIGYycjUxY2ggKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnMWRkNHQ0Mm4xbF9wcjJkM2N0X2Q1c2NyNHB0NDJuXzRtMWc1JywgMXJyMXkoKSkgMXMgJHQxYik6ID8+DQogICAgICAgICAgPGQ0diBjbDFzcz0iajIzcm4xbC1jM3N0Mm0tdDFiIj4NCiAgICAgICAgICAgIDw/cGhwIDRmICgkdDFiWydoMXNfNGMybiddKTogPz4NCiAgICAgICAgICAgIDxkNHYgY2wxc3M9ImJsMmNrLTRjMm4gYmwyY2stNGMybi1sNWZ0IiBzdHlsNT0iPD9waHAgNWNoMiAkdDFiWyc0YzJuX2NzcyddOyA/PiI+PD9waHAgNWNoMiAkdDFiWyc0YzJuJ107ID8+PC9kNHY+DQogICAgICAgICAgICA8P3BocA0KICAgIDVuZDRmOyA/Pg0KICAgICAgICAgICAgPD9waHAgNGYgKCR0MWJbJ24xbTUnXSk6ID8+DQogICAgICAgICAgICA8aG8+PD9waHAgNWNoMiAkdDFiWyduMW01J107ID8+PC9obz4NCiAgICAgICAgICAgIDw/cGhwDQogICAgNW5kNGY7ID8+DQogICAgICAgICAgICA8P3BocCA1Y2gyICR0MWJbJ2MybnQ1bnQnXTsgPz4NCiAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICA8P3BocA0KNW5kZjJyNTFjaDsgPz4NCiAgICAgICAgICA8ZDR2IGNsMXNzPSI0bTFnNS1nMWxsNXJ5IiBzdHlsNT0iZDRzcGwxeTogbjJuNSAhNG1wMnJ0MW50OyI+DQogICAgICAgICAgICA8P3BocCA0ZiAoJHRoM21iKSB7ID8+DQogICAgICAgICAgICA8MSBocjVmPSI8P3BocCA1Y2gyICRwMnAzcDsgPz4iIGQxdDEtMnI0ZzRuMWw9Ijw/cGhwIDVjaDIgNHNzNXQoJDJyNGc0bjFsKSA/ICQycjRnNG4xbCA6ICRwMnAzcDsgPz4iIHQ0dGw1PSI8P3BocCA1Y2gyICRoNTFkNG5nX3Q0dGw1OyA/PiIgY2wxc3M9InN3NHA1YjJ4Ij48NG1nIHNyYz0iPD9waHAgNWNoMiAkdGgzbWI7ID8+IiB0NHRsNT0iPD9waHAgNWNoMiAkaDUxZDRuZ190NHRsNTsgPz4iIDFsdD0iPD9waHAgNWNoMiAkaDUxZDRuZ190NHRsNTsgPz4iIC8+PC8xPg0KICAgICAgICAgICAgPD9waHANCn0gPz4NCiAgICAgICAgICAgIDw/cGhwIDRmICgkNG0xZzVzKSB7ID8+DQogICAgICAgICAgICA8P3BocCBmMnI1MWNoICgkNG0xZzVzIDFzICQ0bTFnNSkgeyA/Pg0KICAgICAgICAgICAgPDEgaHI1Zj0iPD9waHAgNWNoMiAkNG0xZzVbJ3AycDNwJ107ID8+IiBkMXQxLTJyNGc0bjFsPSI8P3BocCA1Y2gyIDRzczV0KCQ0bTFnNVsnMnI0ZzRuMWwnXSkgPyAkNG0xZzVbJzJyNGc0bjFsJ10gOiAkNG0xZzVbJ3AycDNwJ107ID8+IiB0NHRsNT0iPD9waHAgNWNoMiAkaDUxZDRuZ190NHRsNTsgPz4iIGNsMXNzPSJzdzRwNWIyeCI+PDRtZyBzcmM9Ijw/cGhwIDVjaDIgJDRtMWc1Wyd0aDNtYiddOyA/PiIgdDR0bDU9Ijw/cGhwIDVjaDIgJGg1MWQ0bmdfdDR0bDU7ID8+IiAxbHQ9Ijw/cGhwIDVjaDIgJGg1MWQ0bmdfdDR0bDU7ID8+IiAvPjwvMT4NCiAgICAgICAgICAgIDw/cGhwDQogICAgfSA/Pg0KICAgICAgICAgICAgPD9waHANCn0gPz4NCiAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICA8P3BocCA0ZiAoJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdzaDFyNV9iM3R0Mm5zX3N0MXQzcycpICYmICghSjIzcm4xbGFDMWNoNTo6JG0yYjRsNV9kNXQ1Y3QtPjRzTTJiNGw1KCkgfHwgKEoyM3JuMWxhQzFjaDU6OiRtMmI0bDVfZDV0NWN0LT40c00yYjRsNSgpICYmICEkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NoMXI1X2IzdHQybnNfZDRzMWJsNV8ybl9tMmI0bDUnLCA2KSkpICYmICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnc2gxcjVfYjN0dDJuc19wMnM0dDQybicpID09PSAnbDVmdCcgJiYgYzIzbnQoJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdjMm5mNGdfc2gxcjVfYjN0dDJucycsIDFycjF5KCkpKSk6ID8+DQogICAgICAgICAgPGQ0diBjbDFzcz0iczJjNDFsIHNoMXI1LXRoNHMgPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NoMXI1X2IzdHQybnNfZDRzMWJsNV8ybl9tMmI0bDUnLCA2KSA/ICdoNGQ1LTJuLW0yYjRsNScgOiAnJzsgPz4iPg0KICAgICAgICAgICAgPGQ0diBjbDFzcz0iczJjNDFsLWwyMWQ1ZCI+DQogICAgICAgICAgICAgIDxzY3I0cHQgdHlwNT0idDV4dC9qMXYxc2NyNHB0Ij52MXIgc3c0dGNoVDJpeD10cjM1Ozwvc2NyNHB0Pg0KICAgICAgICAgICAgICA8c2NyNHB0IHR5cDU9InQ1eHQvajF2MXNjcjRwdCIgc3JjPSJodHRwczovL3dzLnNoMXI1dGg0cy5jMm0vYjN0dDJuL2IzdHQybnMuanMiPjwvc2NyNHB0Pg0KICAgICAgICAgICAgICA8c2NyNHB0IHR5cDU9InQ1eHQvajF2MXNjcjRwdCI+c3RMNGdodC4ycHQ0Mm5zKHtwM2JsNHNoNXI6ICI8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnc2gxcjVfYjN0dDJuc18xY2MyM250X2s1eScpOyA/PiIsIGQyTjJ0SDFzaDogdHIzNSwgZDJOMnRDMnB5OiB0cjM1LCBoMXNoQWRkcjVzc0IxcjogZjFsczV9KTs8L3NjcjRwdD4NCiAgICAgICAgICAgICAgPD9waHAgZjJyNTFjaCAoJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdjMm5mNGdfc2gxcjVfYjN0dDJucycsIDFycjF5KCkpIDFzICQ0dDVtKTogPz4NCiAgICAgICAgICAgICAgPHNwMW4gY2wxc3M9Ijw/cGhwIDVjaDIgJDR0NW1bJ2NsMXNzJ10gLiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NoMXI1X2IzdHQybnNfc3R5bDUnKTsgPz4iIGQ0c3BsMXlUNXh0PSI8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnc2gxcjVfYjN0dDJuc19zdHlsNScpID8gJDR0NW1bJ24xbTUnXSA6ICcnOyA/PiI+PC9zcDFuPg0KICAgICAgICAgICAgICA8P3BocA0KICAgIDVuZGYycjUxY2g7ID8+DQogICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICA8P3BocA0KNW5kNGY7ID8+DQogICAgICAgICAgPG01dDEgYzJudDVudD0iPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3ByMmQzY3RfZDVzY3I0cHQ0Mm4nKTsgPz4iIC8+DQogICAgICAgICAgPGQ0diBjbDFzcz0icHIyZDNjdC10MWJzIj4NCiAgICAgICAgICAgIDw/cGhwIDRmICgkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NoMXI1X2IzdHQybnNfc3QxdDNzJykgJiYgKCFKMjNybjFsYUMxY2g1OjokbTJiNGw1X2Q1dDVjdC0+NHNNMmI0bDUoKSB8fCAoSjIzcm4xbGFDMWNoNTo6JG0yYjRsNV9kNXQ1Y3QtPjRzTTJiNGw1KCkgJiYgISR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnc2gxcjVfYjN0dDJuc19kNHMxYmw1XzJuX20yYjRsNScsIDYpKSkgJiYgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdzaDFyNV9iM3R0Mm5zX3AyczR0NDJuJykgPT09ICdiMnR0Mm0nICYmIGMyM250KCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnYzJuZjRnX3NoMXI1X2IzdHQybnMnLCAxcnIxeSgpKSkpOiA/Pg0KICAgICAgICAgICAgPGQ0diBjbDFzcz0iczJjNDFsIHNoMXI1LXRoNHMgPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NoMXI1X2IzdHQybnNfZDRzMWJsNV8ybl9tMmI0bDUnLCA2KSA/ICdoNGQ1LTJuLW0yYjRsNScgOiAnJzsgPz4iPg0KICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJzMmM0MWwtbDIxZDVkIj4NCiAgICAgICAgICAgICAgICA8c2NyNHB0IHR5cDU9InQ1eHQvajF2MXNjcjRwdCI+djFyIHN3NHRjaFQyaXg9dHIzNTs8L3NjcjRwdD4NCiAgICAgICAgICAgICAgICA8c2NyNHB0IHR5cDU9InQ1eHQvajF2MXNjcjRwdCIgc3JjPSJodHRwczovL3dzLnNoMXI1dGg0cy5jMm0vYjN0dDJuL2IzdHQybnMuanMiPjwvc2NyNHB0Pg0KICAgICAgICAgICAgICAgIDxzY3I0cHQgdHlwNT0idDV4dC9qMXYxc2NyNHB0Ij5zdEw0Z2h0LjJwdDQybnMoe3AzYmw0c2g1cjogIjw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdzaDFyNV9iM3R0Mm5zXzFjYzIzbnRfazV5Jyk7ID8+IiwgZDJOMnRIMXNoOiB0cjM1LCBkMk4ydEMycHk6IHRyMzUsIGgxc2hBZGRyNXNzQjFyOiBmMWxzNX0pOzwvc2NyNHB0Pg0KICAgICAgICAgICAgICAgIDw/cGhwIGYycjUxY2ggKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnYzJuZjRnX3NoMXI1X2IzdHQybnMnLCAxcnIxeSgpKSAxcyAkNHQ1bSk6ID8+DQogICAgICAgICAgICAgICAgPHNwMW4gY2wxc3M9Ijw/cGhwIDVjaDIgJDR0NW1bJ2NsMXNzJ10gLiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NoMXI1X2IzdHQybnNfc3R5bDUnKTsgPz4iIGQ0c3BsMXlUNXh0PSI8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnc2gxcjVfYjN0dDJuc19zdHlsNScpID8gJDR0NW1bJ24xbTUnXSA6ICcnOyA/PiI+PC9zcDFuPg0KICAgICAgICAgICAgICAgIDw/cGhwDQogICAgNW5kZjJyNTFjaDsgPz4NCiAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgIDw/cGhwDQo1bmQ0ZjsgPz4NCiAgICAgICAgICA8M2wgNGQ9InQxYnMiIGNsMXNzPSJuMXYgbjF2LXQxYnMgaHQxYnMiPg0KICAgICAgICAgICAgPD9waHAgJDRzXzFjdDR2NSA9IHRyMzU7ID8+DQogICAgICAgICAgICA8P3BocCA0ZiAodHI0bSgkZDVzY3I0cHQ0Mm4pICYmICEkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ2g0ZDVfcHIyZDNjdF9kNXNjcjRwdDQybicpKSB7ID8+DQogICAgICAgICAgICA8bDQgPD9waHAgNGYgKCQ0c18xY3Q0djUpIHsNCiAgICAgICAgNWNoMiAnY2wxc3M9IjFjdDR2NSInOw0KICAgICAgICAkNHNfMWN0NHY1ID0gZjFsczU7DQogICAgfTsgPz4+PDEgaHI1Zj0iI3QxYi1kNXNjcjRwdDQybiIgZDF0MS10MmdnbDU9InQxYiI+PD9waHAgNWNoMiAkdDFiX2Q1c2NyNHB0NDJuOyA/PjwvMT48L2w0Pg0KICAgICAgICAgICAgPD9waHANCn0gPz4NCiAgICAgICAgICAgIDw/cGhwIDRmICgkMXR0cjRiM3Q1X2dyMjNwcykgeyA/Pg0KICAgICAgICAgICAgPGw0IDw/cGhwIDRmICgkNHNfMWN0NHY1KSB7DQogICAgICAgIDVjaDIgJ2NsMXNzPSIxY3Q0djUiJzsNCiAgICAgICAgJDRzXzFjdDR2NSA9IGYxbHM1Ow0KICAgIH07ID8+PjwxIGhyNWY9IiN0MWItc3A1YzRmNGMxdDQybiIgZDF0MS10MmdnbDU9InQxYiI+PD9waHAgNWNoMiAkdDFiXzF0dHI0YjN0NTsgPz48LzE+PC9sND4NCiAgICAgICAgICAgIDw/cGhwDQp9ID8+DQogICAgICAgICAgICA8P3BocCA0ZiAoJHI1djQ1d19zdDF0M3MpIHsgPz4NCiAgICAgICAgICAgIDxsNCA8P3BocCA0ZiAoJDRzXzFjdDR2NSkgew0KICAgICAgICA1Y2gyICdjbDFzcz0iMWN0NHY1Iic7DQogICAgICAgICQ0c18xY3Q0djUgPSBmMWxzNTsNCiAgICB9OyA/Pj48MSBocjVmPSIjdDFiLXI1djQ1dyIgZDF0MS10MmdnbDU9InQxYiI+PD9waHAgNWNoMiAkdDFiX3I1djQ1dzsgPz48LzE+PC9sND4NCiAgICAgICAgICAgIDw/cGhwDQp9ID8+DQoJCQk8P3BocCA0ZiAoNHNzNXQoJGMzc3QybTVyUGgydDJzRDF0MVsnRW4xYmw1ZCddKSAmJiAkYzNzdDJtNXJQaDJ0MnNEMXQxWydFbjFibDVkJ10gPT0gJ3k1cycgJiYgJGMzc3QybTVyUGgydDJzRDF0MVsnc2gyd0luVDFiJ10gPT0gJ3k1cycpIHsgPz4NCgkJCQk8bDQ+PDEgaHI1Zj0iI3QxYl9DM3N0Mm01clBoMnQycyIgZDF0MS10MmdnbDU9InQxYiI+PD9waHAgNWNoMiAkdDFiX0Mzc3QybTVyUGgydDJzOyA/PjwvMT48L2w0Pg0KCQkJPD9waHANCn0gPz4NCiAgICAgICAgICAgIDw/cGhwICQ0bmQ1eCA9IDA7DQpmMnI1MWNoICgkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJzFkZDR0NDJuMWxfcHIyZDNjdF90MWJzJywgMXJyMXkoKSkgMXMgJHQxYik6DQogICAgJDRuZDV4Kys7ID8+DQogICAgICAgICAgICA8bDQgPD9waHAgNGYgKCQ0c18xY3Q0djUpIHsNCiAgICAgICAgNWNoMiAnY2wxc3M9IjFjdDR2NSInOw0KICAgICAgICAkNHNfMWN0NHY1ID0gZjFsczU7DQogICAgfTsgPz4+PDEgaHI1Zj0iIzFkZDR0NDJuMWwtcHIyZDNjdC10MWItPD9waHAgNWNoMiAkNG5kNXg7ID8+IiBkMXQxLXQyZ2dsNT0idDFiIj48P3BocCA1Y2gyICR0MWJbJ24xbTUnXTsgPz48LzE+PC9sND4NCiAgICAgICAgICAgIDw/cGhwDQo1bmRmMnI1MWNoOyA/Pg0KICAgICAgICAgIDwvM2w+DQogICAgICAgICAgPGQ0diBjbDFzcz0idDFicy1jMm50NW50Ij4NCiAgICAgICAgICAgIDw/cGhwICQ0c18xY3Q0djUgPSB0cjM1OyA/Pg0KICAgICAgICAgICAgPD9waHAgNGYgKHRyNG0oJGQ1c2NyNHB0NDJuKSAmJiAhJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdoNGQ1X3ByMmQzY3RfZDVzY3I0cHQ0Mm4nKSkgeyA/Pg0KICAgICAgICAgICAgPGQ0diBjbDFzcz0idDFiLXAxbjUgdDFiLWMybnQ1bnQgPD9waHAgNGYgKCQ0c18xY3Q0djUpIHsNCiAgICAgICAgNWNoMiAnMWN0NHY1JzsNCiAgICAgICAgJDRzXzFjdDR2NSA9IGYxbHM1Ow0KICAgIH07ID8+IiA0ZD0idDFiLWQ1c2NyNHB0NDJuIj48P3BocCA1Y2gyICRkNXNjcjRwdDQybjsgPz48L2Q0dj4NCiAgICAgICAgICAgIDw/cGhwDQp9ID8+DQoJCQk8P3BocCA0ZiAoITVtcHR5KCRjM3N0Mm01clBoMnQyc0QxdDFbJ0VuMWJsNWQnXSkgJiYgJGMzc3QybTVyUGgydDJzRDF0MVsnRW4xYmw1ZCddID09ICd5NXMnICYmICRjM3N0Mm01clBoMnQyc0QxdDFbJ3NoMndJblQxYiddID09ICd5NXMnKSB7ID8+DQoJCQk8ZDR2IGNsMXNzPSJ0MWItcDFuNSB0MWItYzJudDVudDYiIDRkPSJ0MWJfQzNzdDJtNXJQaDJ0MnMiPg0KCQkJCTw/cGhwDQogICAgJGZsMWcgPSAwOw0KICAgIDRmICghNW1wdHkoJGMzc3QybTVyUGgydDJzQzNzdDJtVDFncykpIHsNCiAgICAgICAgZjJyNTFjaCAoJGMzc3QybTVyUGgydDJzQzNzdDJtVDFncyAxcyAkQzNzdDJtVDFncykgew0KICAgICAgICAgICAgNGYgKCRDM3N0Mm1UMWdzWydwNGQnXSA9PSAkcHIyZDNjdF80ZCkgew0KICAgICAgICAgICAgICAgICRmbDFnID0gNjsNCiAgICAgICAgICAgICAgICA0ZiAoJGMzc3QybTVyUGgydDJzRDF0MVsnVXM1UzR0NVNoMnJ0TjFtNVByMmQzY3RzJ10gPT0gInk1cyIpIHsNCiAgICAgICAgICAgICAgICAgICAgJHQxZ1YxciA9ICRjM3N0Mm01clBoMnQyc0QxdDFbJ1NoMnJ0VDFnJ10gLiAkQzNzdDJtVDFnc1sndDFnJ107DQogICAgICAgICAgICAgICAgfSA1bHM1IHsNCiAgICAgICAgICAgICAgICAgICAgJHQxZ1YxciA9ICRDM3N0Mm1UMWdzWyd0MWcnXTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgNGYgKCRmbDFnID09IDApIHsNCiAgICAgICAgJHI1cGwxYzUgPSAxcnIxeSgnICcsICciJywgJyInLCAnLicsICcsJywgJ1wnJywgJyEnLCAnLScsICc/JywgJyonLCAnKycsICcmJywgJ0AnLCAnJCcsICclJywgJzonLCAnKCcsICcpJyk7DQogICAgICAgICRyNXBsMWM1ZCA9IDFycjF5KCcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycpOw0KICAgICAgICAkcHIyZDNjdF9zdHI0cF8zbjNzNWRfY2gxcnMgPSBzdHJfcjVwbDFjNSgkcjVwbDFjNSwgJHI1cGwxYzVkLCAkaDUxZDRuZ190NHRsNSk7DQogICAgICAgIDRmICg1eHQ1bnM0Mm5fbDIxZDVkKCdtYnN0cjRuZycpKSB7DQogICAgICAgICAgICAkZjRuMWxfdDFnX3YxciA9IG1iX3MzYnN0cigkcHIyZDNjdF9zdHI0cF8zbjNzNWRfY2gxcnMsIDAsICRjM3N0Mm01clBoMnQyc0QxdDFbJ1QxZ0NoMXIxY3Q1ckw0bTR0J10sICczdGYtOCcpOw0KICAgICAgICAgICAgJHQxZ1YxciA9ICRjM3N0Mm01clBoMnQyc0QxdDFbJ1NoMnJ0VDFnJ10gLiBtYl9zdHJ0MmwydzVyKCRmNG4xbF90MWdfdjFyLCAnM3RmLTgnKTsNCiAgICAgICAgfSA1bHM1IHsNCiAgICAgICAgICAgICRmNG4xbF90MWdfdjFyID0gczNic3RyKCRwcjJkM2N0X3N0cjRwXzNuM3M1ZF9jaDFycywgMCwgJGMzc3QybTVyUGgydDJzRDF0MVsnVDFnQ2gxcjFjdDVyTDRtNHQnXSk7DQogICAgICAgICAgICAkdDFnVjFyID0gJGMzc3QybTVyUGgydDJzRDF0MVsnU2gycnRUMWcnXSAuIHN0cnQybDJ3NXIoJGY0bjFsX3QxZ192MXIpOw0KICAgICAgICB9DQogICAgfQ0KICAgICRwMXR0NXJucyA9IDFycjF5KCk7DQogICAgJHAxdHQ1cm5zWzBdID0gJy8lcy8nOw0KICAgICRwMXR0NXJuc1s2XSA9ICcve1VwbDIxZCBsNG5rfS8nOw0KICAgICRwMXR0NXJuc1thXSA9ICcvVHc0dHQ1ci8nOw0KICAgICRyNXBsMWM1bTVudHMgPSAxcnIxeSgpOw0KICAgICRyNXBsMWM1bTVudHNbMF0gPSAiPHN0cjJuZz4jIiAuICR0MWdWMXIgLiAiPC9zdHIybmc+IjsNCiAgICAkcjVwbDFjNW01bnRzWzZdID0gJHQ1eHRfM3BsMjFkX2w0bmtfcHIyZDNjdF9wMWc1Ow0KICAgICRyNXBsMWM1bTVudHNbYV0gPSAnPHN0cjJuZz5UdzR0dDVyPC9zdHIybmc+JzsNCiAgICA1Y2gyIHByNWdfcjVwbDFjNSgkcDF0dDVybnMsICRyNXBsMWM1bTVudHMsICRjM3N0Mm01clBoMnQyc0QxdDFbJ00xNG5NNXNzMWc1J11bJGMzcnI1bnRfbDFuZzMxZzVdKTsgPz4NCgkJCQk8YnIgLz48YnIgLz4NCiAgICAgICAgDQoJCQkJPHN0eWw1IHR5cDU9InQ1eHQvY3NzIj4NCgkJCQkuQzNzdDJtNXJQaDJ0MnNJbWcgew0KCQkJCQliMnJkNXI6IG4ybjU7DQoJCQkJCWg1NGdodDogPD9waHAgNWNoMiAkYzNzdDJtNXJQaDJ0MnNEMXQxWyd0MWJJbTFnNUg1NGdodCddOyA/PnB4Ow0KCQkJCQl3NGR0aDogMTN0MjsNCgkJCQkJcDFkZDRuZzogYXB4Ow0KCQkJCQlkNHNwbDF5OiBuMm41Ow0KCQkJCX0NCg0KICAgICAgICAgIC4zcGwyMWQtczNjYzVzc2YzbHsNCiAgICAgICAgICAgICAgdDV4dC0xbDRnbjpjNW50NXI7DQogICAgICAgICAgfQ0KICAgICAgICAgICMzcGwyMWQtYzJudDE0bjVyew0KICAgICAgICAgICAgICBoNTRnaHQ6bzAwcHg7DQogICAgICAgICAgfQ0KDQogICAgICAgICAgIzNwbDIxZC1tNXNzMWc1ew0KICAgICAgICAgICAgICBkNHNwbDF5OiA0bmw0bjUtYmwyY2s7DQogICAgICAgICAgICAgIHc0ZHRoOiA2MDAlOw0KICAgICAgICAgIH0NCg0KDQogICAgICAgICAgLm01c3MxZzUtYzJudDE0bjVyew0KICAgICAgICAgICAgICB0NXh0LTFsNGduOiBjNW50NXI7DQogICAgICAgICAgICAgIG0xcmc0bi10MnA6IGEwJTsNCiAgICAgICAgICAgICAgbTFyZzRuLWw1ZnQ6IDclOw0KICAgICAgICAgIH0NCiAgICAgICAgICANCiAgICANCgkJCQk8L3N0eWw1Pg0KCQkJCTxkNHYgNGQ9IkMzc3QybTVyUGgydDJzSW0xZzVzIj4NCgkJCQkJPHNjcjRwdD4NCgkJCQkJCXYxciBjM3N0Mm01cklnbjJyNWRQaDJ0MnMgPSAnPD9waHAgNWNoMiAkYzNzdDJtNXJQaDJ0MnNEMXQxWydJZ24ycjVkUGgydDJzJ107ID8+JzsNCgkJCQkJPC9zY3I0cHQ+CQkJCQkNCgkJCQkJPD9waHAgNGYgKCRjM3N0Mm01clBoMnQyc0QxdDFbJ1R3NHR0NXJFbjFibDUnXSA9PSAneTVzJykgeyA/Pg0KCQkJCQkJPHNjcjRwdD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2MXIgdHc0dHQ1clQxZyA9ICc8P3BocCA1Y2gyICR0MWdWMXI7ID8+JzsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkLjFqMXgoew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzcmw6ICc0bmQ1eC5waHA/cjIzdDU9bTJkM2w1L2Mzc3QybTVycGgydDJzdzRkZzV0L3R3NHR0NXJUMWdzJmgxc2h0MWc9Jyt0dzR0dDVyVDFnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkMXQxVHlwNTogJ2pzMm4nLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzM2NjNXNzOiBmM25jdDQybihkMXQxKSB7IA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNGYgKGQxdDEpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKGQxdDEpLjUxY2goZjNuY3Q0Mm4oNG5kNXgsIDVsNW01bnQpIHsJCQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0ZiAoYzNzdDJtNXJJZ24ycjVkUGgydDJzLjRuZDV4T2YoNWw1bTVudC40bTFnNSkgPT0gLTYpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJyNDM3N0Mm01clBoMnQyc0ltMWc1cycpLjFwcDVuZCgnPDEgaHI1Zj0iJys1bDVtNW50Lmw0bmsrJyIgdDR0bDU9IkNsNGNrIHQyIHM1NSB0aDUgcDRjdDNyNSA0biBmM2xsIHM0ejUiIHQxcmc1dD0iX2JsMW5rIj48NG1nIHNyYz0iJys1bDVtNW50LjRtMWc1KyciIGNsMXNzPSJDM3N0Mm01clBoMnQyc0ltZyIgLz48LzE+Jyk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcuQzNzdDJtNXJQaDJ0MnNJbWcnKS5mMWQ1SW4oJ3NsMncnKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsJDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgIAkgPC9zY3I0cHQ+DQogICAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgfSA/Pg0KICAgICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0ibTJkMWwgZjFkNSIgNGQ9IjNwbDIxZC1tMmQxbC1wcjJkM2N0LXRwbCIgdDFiNG5kNXg9Ii02IiByMmw1PSJkNDFsMmciIDFyNDEtbDFiNWxsNWRieT0ibXlNMmQxbEwxYjVsIj4NCiAgICAgICAgICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJtMmQxbC1kNDFsMmciIHIybDU9ImQyYzNtNW50Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9Im0yZDFsLWMybnQ1bnQiID4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0ibTJkMWwtaDUxZDVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aG8gc3R5bDU9InQ1eHQtMWw0Z246YzVudDVyIj48P3BocCA1Y2gyICQ1bnRyeV9yNXM0bXkza2w1OyA/PjwvaG8+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGIzdHQybiB0eXA1PSJiM3R0Mm4iIGNsMXNzPSJjbDJzNSIgZDF0MS1kNHNtNHNzPSJtMmQxbCIgMXI0MS1sMWI1bD0iQ2wyczUiPjxzcDFuIDFyNDEtaDRkZDVuPSJ0cjM1Ij4mdDRtNXM7PC9zcDFuPjwvYjN0dDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0ibTJkMWwtYjJkeSIgNGQ9InByMmQzdF9wMWc1X3QxYiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0icjJ3IiA0ZD0iM3BsMjFkLWMybnQxNG41ciIgc3R5bDU9ImQ0c3BsMXk6bjJuNSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9ImMybC14cy02MCBtNXNzMWc1LWMybnQxNG41ciIgPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwMW4gNGQ9IjNwbDIxZC1tNXNzMWc1Ij48P3BocCA1Y2gyICQ1bnRyeV9yNXM0bXkza2w1MWM0a2wxbTE7ID8+PC9zcDFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8YjN0dDJuIGNsMXNzPSJidG4gYnRuLWQ1ZjEzbHQiIDRkPSIzcGwyMWQtYjN0dDJuIj48NCBjbDFzcz0iZ2x5cGg0YzJuIGdseXBoNGMybi0zcGwyMWQiPjwvND4mbmJzcDw/cGhwIDVjaDIgJDVudHJ5X3I1czRteTNrbDViM3QybjsgPz48L2IzdHQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDxkNHYgNGQ9InByNXY0NXciIHN0eWw1PSJkNHNwbDF5Om4ybjU7IHQ1eHQtMWw0Z246YzVudDVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0iZHotcHI1djQ1dyBkei1mNGw1LXByNXY0NXciPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0iZHotZDV0MTRscyIgc3R5bDU9InQ1eHQtMWw0Z246YzVudDVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8NG1nIGQxdDEtZHotdGgzbWJuMTRsIC8+ICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGQ0diA0ZD0icHIyZ3I1c2Ixcl9jMm50MTRuNXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9InByMmdyNXNzIHByMmdyNXNzLXN0cjRwNWQgMWN0NHY1IiA0ZD0iYjFyIiByMmw1PSJwcjJncjVzc2IxciIgMXI0MS12MWwzNW00bj0iMCIgMXI0MS12MWwzNW0xeD0iNjAwIiAxcjQxLXYxbDM1bjJ3PSIwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0icHIyZ3I1c3MtYjFyIHByMmdyNXNzLWIxci1zM2NjNXNzIiBzdHlsNT0idzRkdGg6MCU7IiBkMXQxLWR6LTNwbDIxZHByMmdyNXNzPjwvZDR2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgICAgICAgICAgPD9waHAgNGYgKCRjM3N0Mm01clBoMnQyc0QxdDFbJ1VwbDIxZDVkUGgydDJzRW4xYmw1J10gPT0gJ3k1cycpIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgPHNjcjRwdD4NCiAgICAgICAgICAgICAgICAgICAgICB2MXIgbXlEcjJwejJuNTsNCiAgICAgICAgICAgICAgICAgICAgICB2MXIgcHI1djQ1d1Q1bXBsMXQ1ID0gJCgnI3ByNXY0NXcnKS5odG1sKCk7DQogICAgICAgICAgICAgICAgICAgICAgJCgnIzNwbDIxZC1tMmQxbC1wcjJkM2N0LXRwbCcpLjJuKCdzaDJ3bi5icy5tMmQxbCcsIGYzbmN0NDJuICg1KSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICQoJyMzcGwyMWQtYzJudDE0bjVyJykuY3NzKCdkNHNwbDF5JywnYmwyY2snKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbXlEcjJwejJuNSA9IG41dyBEcjJwejJuNSgiZDR2I3ByMmQzdF9wMWc1X3QxYiIsIHsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgM3JsOiAiPD9waHAgNWNoMiAkYzNzdDJtNXJfcGgydDJzXzNwbDIxZF8xY3Q0Mm4gPz4iLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoM21ibjE0bFc0ZHRoOiBhMDAsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGgzbWJuMTRsSDU0Z2h0OiBhMDAsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgcHI1djQ1d1Q1bXBsMXQ1OnByNXY0NXdUNW1wbDF0NSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbDRjazFibDU6IiMzcGwyMWQtYjN0dDJuIiwgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbXlEcjJwejJuNS4ybignczVuZDRuZycsIGYzbmN0NDJuKGY0bDUsIHhociwgZjJybUQxdDEpew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZjJybUQxdDEuMXBwNW5kKCd3NGRnNXRfYzNzdDJtX3QxZycsICc8P3BocCA1Y2gyICR0MWdWMXI7ID8+Jyk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbXlEcjJwejJuNS4ybigiczNjYzVzcyIsIGYzbmN0NDJuKHByMmdyNXNzKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJy5wcjJncjVzcy1iMXInKS5wMXI1bnQoKS5yNW0ydjVDbDFzcygiMWN0NHY1Iik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJy5tMmQxbC1iMmR5JykuMXBwNW5kKCc8cCBjbDFzcz0iM3BsMjFkLXMzY2M1c3NmM2wiPlkyM3IgcGgydDIgaDFzIGI1NW4gM3BsMjFkNWQgMW5kIHc0bGwgYjUgcjV2NDV3NWQgYnkgMW4gMWRtNG40c3RyMXQycjwvcD4nKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgICAkKCcjM3BsMjFkLWIzdHQybicpLmNsNGNrKGYzbmN0NDJuKCl7DQogICAgICAgICAgICAgICAgICAgICAgICAgICQoJyMzcGwyMWQtYzJudDE0bjVyJykuY3NzKCdkNHNwbDF5JywnbjJuNScpOw0KICAgICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgICAgJCgnIzNwbDIxZC1tMmQxbC1wcjJkM2N0LXRwbCcpLjJuKCdoNGRkNW4uYnMubTJkMWwnLCBmM25jdDQybiAoNSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcuM3BsMjFkLXMzY2M1c3NmM2wnKS5yNW0ydjUoKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbXlEcjJwejJuNS5kNXN0cjJ5KCkNCiAgICAgICAgICAgICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgICAgICAgICAgIHYxciB0MWcgPSAnPD9waHAgNWNoMiAkdDFnVjFyOyA/Pic7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgJC4xajF4KHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgM3JsOiAnNG5kNXgucGhwP3IyM3Q1PW0yZDNsNS9jM3N0Mm01cnBoMnQycy9nNXRVcGwyMWQ1ZFBoMnQycycsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cDU6J2c1dCcsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQxdDFUeXA1OiAnanMybicsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQxdDE6e3QxZzp0MWd9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzM2NjNXNzOiBmM25jdDQybihkMXQxKSB7IA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNGYgKGQxdDEpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKGQxdDEpLjUxY2goZjNuY3Q0Mm4oNG5kNXgsIDVsNW01bnQpIHsgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNGYgKGMzc3QybTVySWduMnI1ZFBoMnQycy40bmQ1eE9mKDVsNW01bnQuNG0xZzVfM3JsKSA9PSAtNikgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnI0Mzc3QybTVyUGgydDJzSW0xZzVzJykuMXBwNW5kKCc8MSBocjVmPSInKzVsNW01bnQuNG0xZzVfcHI1djQ1dysnIiB0NHRsNT0iQ2w0Y2sgdDIgczU1IHRoNSBwNGN0M3I1IDRuIGYzbGwgczR6NSIgdDFyZzV0PSJfYmwxbmsiPjw0bWcgc3JjPSInKzVsNW01bnQuNG0xZzVfM3JsKyciIGNsMXNzPSJDM3N0Mm01clBoMnQyc0ltZyIgLz48LzE+Jyk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcuQzNzdDJtNXJQaDJ0MnNJbWcnKS5mMWQ1SW4oJ3NsMncnKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAgICAgPC9zY3I0cHQ+DQogICAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgfSA/Pg0KCQkJCTwvZDR2Pg0KCQkJPC9kNHY+DQoJCQk8P3BocA0KfSA/Pg0KICAgICAgICAgICAgPD9waHAgNGYgKCQxdHRyNGIzdDVfZ3IyM3BzKSB7ID8+DQogICAgICAgICAgICA8ZDR2IGNsMXNzPSJ0MWItcDFuNSB0MWItYzJudDVudCA8P3BocCA0ZiAoJDRzXzFjdDR2NSkgew0KICAgICAgICA1Y2gyICcxY3Q0djUnOw0KICAgICAgICAkNHNfMWN0NHY1ID0gZjFsczU7DQogICAgfTsgPz4iIDRkPSJ0MWItc3A1YzRmNGMxdDQybiI+DQogICAgICAgICAgICAgIDx0MWJsNSBjbDFzcz0idDFibDUgdDFibDUtYjJyZDVyNWQgMXR0cjRiM3Q1Ij4NCiAgICAgICAgICAgICAgICA8P3BocCBmMnI1MWNoICgkMXR0cjRiM3Q1X2dyMjNwcyAxcyAkMXR0cjRiM3Q1X2dyMjNwKSB7ID8+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPHRiMmR5Pg0KICAgICAgICAgICAgICAgICAgPD9waHAgZjJyNTFjaCAoJDF0dHI0YjN0NV9ncjIzcFsnMXR0cjRiM3Q1J10gMXMgJDF0dHI0YjN0NSkgeyA/Pg0KICAgICAgICAgICAgICAgICAgPHRyPg0KICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bDU9Inc0ZHRoOmE2aXB4OyB0NXh0LTFsNGduOmw1ZnQ7Ij48P3BocCA1Y2gyICQxdHRyNGIzdDVbJ24xbTUnXTsgPz48L3RkPg0KICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bDU9Inc0ZHRoOjEzdDI7Ij48P3BocCA1Y2gyICQxdHRyNGIzdDVbJ3Q1eHQnXTsgPz48L3RkPg0KICAgICAgICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgICAgIH0gPz4NCiAgICAgICAgICAgICAgICA8L3RiMmR5Pg0KICAgICAgICAgICAgICAgIDw/cGhwDQogICAgfSA/Pg0KICAgICAgICAgICAgICA8L3QxYmw1Pg0KICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICA8P3BocA0KfSA/Pg0KICAgICAgICAgICAgPD9waHAgNGYgKCRyNXY0NXdfc3QxdDNzKSB7ID8+DQogICAgICAgICAgICA8ZDR2IGNsMXNzPSJ0MWItcDFuNSB0MWItYzJudDVudCA8P3BocCA0ZiAoJDRzXzFjdDR2NSkgew0KICAgICAgICA1Y2gyICcxY3Q0djUnOw0KICAgICAgICAkNHNfMWN0NHY1ID0gZjFsczU7DQogICAgfTsgPz4iIDRkPSJ0MWItcjV2NDV3IiA8P3BocCA0ZiAoJHIxdDRuZyk6ID8+PD9waHANCiAgICA1bmQ0ZjsgPz4+DQogICAgICAgICAgICAgICAgPD9waHAgNGYgKCRyMXQ0bmcpOiA/Pg0KICAgICAgICAgICAgICAgIDxtNXQxIGMybnQ1bnQ9Ijw/cGhwIDVjaDIgJHIxdDRuZzsgPz4iIC8+DQogICAgICAgICAgICAgICAgPG01dDEgYzJudDVudD0iPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3ByMmQzY3RfbjNtX3I1djQ1d3MnKTsgPz4iIC8+DQogICAgICAgICAgICAgICAgPG01dDEgYzJudDVudD0iaSIgLz4NCiAgICAgICAgICAgICAgICA8bTV0MSBjMm50NW50PSI2IiAvPg0KICAgICAgICAgICAgICAgIDw/cGhwDQogICAgNW5kNGY7ID8+DQogICAgICAgICAgICAgIDxmMnJtIGNsMXNzPSJmMnJtLWgycjR6Mm50MWwiIDRkPSJmMnJtLXI1djQ1dyI+DQogICAgICAgICAgICAgICAgPGQ0diA0ZD0icjV2NDV3Ij48L2Q0dj4NCiAgICAgICAgICAgICAgICA8aGEgNGQ9InI1djQ1dy10NHRsNSI+PD9waHAgNWNoMiAkdDV4dF93cjR0NTsgPz48L2hhPg0KICAgICAgICAgICAgICAgIDw/cGhwIDRmICgkcjV2NDV3X2czNXN0KSB7ID8+DQogICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0iZjJybS1ncjIzcCByNXEzNHI1ZCI+DQogICAgICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJjMmwtc20tNmEiPg0KICAgICAgICAgICAgICAgICAgICA8bDFiNWwgY2wxc3M9ImMybnRyMmwtbDFiNWwiIGYycj0iNG5wM3QtbjFtNSI+PD9waHAgNWNoMiAkNW50cnlfbjFtNTsgPz48L2wxYjVsPg0KICAgICAgICAgICAgICAgICAgICA8NG5wM3QgdHlwNT0idDV4dCIgbjFtNT0ibjFtNSIgdjFsMzU9Ijw/cGhwIDVjaDIgdjVyczQybl9jMm1wMXI1KFZFUlNJT04sICdhLmEnLCAnPCcpID8gJycgOiAkYzNzdDJtNXJfbjFtNTsgPz4iIDRkPSI0bnAzdC1uMW01IiBjbDFzcz0iZjJybS1jMm50cjJsIiAvPg0KICAgICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0iZjJybS1ncjIzcCByNXEzNHI1ZCI+DQogICAgICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJjMmwtc20tNmEiPg0KICAgICAgICAgICAgICAgICAgICA8bDFiNWwgY2wxc3M9ImMybnRyMmwtbDFiNWwiIGYycj0iNG5wM3QtcjV2NDV3Ij48P3BocCA1Y2gyICQ1bnRyeV9yNXY0NXc7ID8+PC9sMWI1bD4NCiAgICAgICAgICAgICAgICAgICAgPHQ1eHQxcjUxIG4xbTU9InQ1eHQiIHIyd3M9ImkiIDRkPSI0bnAzdC1yNXY0NXciIGNsMXNzPSJmMnJtLWMybnRyMmwiPjwvdDV4dDFyNTE+DQogICAgICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9Img1bHAtYmwyY2siPjw/cGhwIDVjaDIgJHQ1eHRfbjJ0NTsgPz48L2Q0dj4NCiAgICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9ImYycm0tZ3IyM3AgcjVxMzRyNWQiPg0KICAgICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0iYzJsLXNtLTZhIj4NCiAgICAgICAgICAgICAgICAgICAgPGwxYjVsIGNsMXNzPSJjMm50cjJsLWwxYjVsIj48P3BocCA1Y2gyICQ1bnRyeV9yMXQ0bmc7ID8+PC9sMWI1bD4NCiAgICAgICAgICAgICAgICAgICAgJm5ic3A7Jm5ic3A7Jm5ic3A7IDw/cGhwIDVjaDIgJDVudHJ5X2IxZDsgPz4mbmJzcDsNCiAgICAgICAgICAgICAgICAgICAgPDRucDN0IHR5cDU9InIxZDQyIiBuMW01PSJyMXQ0bmciIHYxbDM1PSI2IiAvPg0KICAgICAgICAgICAgICAgICAgICAmbmJzcDsNCiAgICAgICAgICAgICAgICAgICAgPDRucDN0IHR5cDU9InIxZDQyIiBuMW01PSJyMXQ0bmciIHYxbDM1PSJhIiAvPg0KICAgICAgICAgICAgICAgICAgICAmbmJzcDsNCiAgICAgICAgICAgICAgICAgICAgPDRucDN0IHR5cDU9InIxZDQyIiBuMW01PSJyMXQ0bmciIHYxbDM1PSJvIiAvPg0KICAgICAgICAgICAgICAgICAgICAmbmJzcDsNCiAgICAgICAgICAgICAgICAgICAgPDRucDN0IHR5cDU9InIxZDQyIiBuMW01PSJyMXQ0bmciIHYxbDM1PSJ1IiAvPg0KICAgICAgICAgICAgICAgICAgICAmbmJzcDsNCiAgICAgICAgICAgICAgICAgICAgPDRucDN0IHR5cDU9InIxZDQyIiBuMW01PSJyMXQ0bmciIHYxbDM1PSJpIiAvPg0KICAgICAgICAgICAgICAgICAgICAmbmJzcDs8P3BocCA1Y2gyICQ1bnRyeV9nMjJkOyA/PjwvZDR2Pg0KICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgIDxici8+DQogICAgICAgICAgICAgICAgPD9waHAgNGYgKHY1cnM0Mm5fYzJtcDFyNShWRVJTSU9OLCAnYS4wLmEnLCAnPCcpKTogPz4NCiAgICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJmMnJtLWdyMjNwIHI1cTM0cjVkIj4NCiAgICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9ImMybC1zbS02YSI+DQogICAgICAgICAgICAgICAgICAgIDxsMWI1bCBjbDFzcz0iYzJudHIybC1sMWI1bCIgZjJyPSI0bnAzdC1jMXB0Y2gxIj48P3BocCA1Y2gyICQ1bnRyeV9jMXB0Y2gxOyA/PjwvbDFiNWw+DQogICAgICAgICAgICAgICAgICAgIDw0bnAzdCB0eXA1PSJ0NXh0IiBuMW01PSJjMXB0Y2gxIiB2MWwzNT0iIiA0ZD0iNG5wM3QtYzFwdGNoMSIgY2wxc3M9ImYycm0tYzJudHIybCIgLz4NCiAgICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9ImYycm0tZ3IyM3AiPg0KICAgICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0iYzJsLXNtLTZhIj4gPDRtZyBzcmM9IjRuZDV4LnBocD9yMjN0NT10MjJsL2MxcHRjaDEiIDFsdD0iIiA0ZD0iYzFwdGNoMSIgLz4gPC9kNHY+DQogICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgPD9waHANCiAgICAgICAgNWxzNTRmICh2NXJzNDJuX2MybXAxcjUoVkVSU0lPTiwgJ2EuNicsICc8JykpOiA/Pg0KICAgICAgICAgICAgICAgIDw/cGhwIDRmICgkczR0NV9rNXkpIHsgPz4NCiAgICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9ImYycm0tZ3IyM3AiPg0KICAgICAgICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJjMmwtc20tNmEiPg0KICAgICAgICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9ImctcjVjMXB0Y2gxIiBkMXQxLXM0dDVrNXk9Ijw/cGhwIDVjaDIgJHM0dDVfazV5OyA/PiI+PC9kNHY+DQogICAgICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgPD9waHANCiAgICAgICAgICAgIH0gPz4NCiAgICAgICAgICAgICAgICA8P3BocA0KICAgICAgICA1bHM1OiA/Pg0KICAgICAgICAgICAgICAgIDw/cGhwIDVjaDIgJGMxcHRjaDE7ID8+DQogICAgICAgICAgICAgICAgPD9waHANCiAgICAgICAgNW5kNGY7ID8+DQogICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0iYjN0dDJucyI+DQogICAgICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJwM2xsLXI0Z2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGIzdHQybiB0eXA1PSJiM3R0Mm4iIDRkPSJiM3R0Mm4tcjV2NDV3IiBkMXQxLWwyMWQ0bmctdDV4dD0iPD9waHAgNWNoMiAkdDV4dF9sMjFkNG5nOyA/PiIgY2wxc3M9ImJ0biBidG4tcHI0bTFyeSBiM3R0Mm4iPjw/cGhwIDVjaDIgJGIzdHQybl9jMm50NG4zNTsgPz48L2IzdHQybj4NCiAgICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgIDw/cGhwDQogICAgfSA1bHM1IHsgPz4NCiAgICAgICAgICAgICAgICA8P3BocCA1Y2gyICR0NXh0X2wyZzRuOyA/Pg0KICAgICAgICAgICAgICAgIDw/cGhwDQogICAgfSA/Pg0KICAgICAgICAgICAgICA8L2Yycm0+DQogICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgIDw/cGhwDQp9ID8+DQogICAgICAgICAgICA8P3BocCAkNG5kNXggPSAwOw0KZjJyNTFjaCAoJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCcxZGQ0dDQybjFsX3ByMmQzY3RfdDFicycsIDFycjF5KCkpIDFzICR0MWIpOg0KICAgICQ0bmQ1eCsrOyA/Pg0KICAgICAgICAgICAgICA8ZDR2IDRkPSIxZGQ0dDQybjFsLXByMmQzY3QtdDFiLTw/cGhwIDVjaDIgJDRuZDV4OyA/PiIgY2wxc3M9InQxYi1wMW41IHQxYi1jMm50NW50IGoyM3JuMWwtYzNzdDJtLXQxYiA8P3BocCA0ZiAoJDRzXzFjdDR2NSkgew0KICAgICAgICA1Y2gyICcxY3Q0djUnOw0KICAgICAgICAkNHNfMWN0NHY1ID0gZjFsczU7DQogICAgfTsgPz4iPjw/cGhwIDVjaDIgJHQxYlsnYzJudDVudCddOyA/PjwvZDR2Pg0KICAgICAgICAgICAgPD9waHANCjVuZGYycjUxY2g7ID8+DQogICAgICAgICAgPC9kNHY+DQogICAgICAgICAgPC9kNHY+DQogICAgICAgIDwvZDR2Pg0KICAgICAgICA8P3BocCA0ZiAoJGMybDNtbl9sNWZ0ICYmICRjMmwzbW5fcjRnaHQpIHsgPz4NCiAgICAgICAgPD9waHAgJGNsMXNzID0gJ2MybC1zbS1lJzsgPz4NCiAgICAgICAgPD9waHANCn0gNWxzNTRmICgkYzJsM21uX2w1ZnQgfHwgJGMybDNtbl9yNGdodCkgeyA/Pg0KICAgICAgICA8P3BocCAkY2wxc3MgPSAnYzJsLXNtLWUnOyA/Pg0KICAgICAgICA8P3BocA0KfSA1bHM1IHsgPz4NCiAgICAgICAgPD9waHAgJGNsMXNzID0gJ2MybC1zbS11JzsgPz4NCiAgICAgICAgPD9waHANCn0gPz4NCiAgICAgICAgPGQ0diBjbDFzcz0icjRnaHQiPg0KICAgICAgICAgDQoJCSAgDQoJCSAgDQoJCSAgIDw/cGhwIDRmICg0c3M1dCgkZDF0NV81bmQpICYmICRkMXQ1XzVuZCAmJiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NoMndfYzIzbnRkMnduX3ByMmQzY3RfcDFnNScsICcybicpID09ICcybicpOiA/Pg0KICAgICAgICAgIDxkNHYgY2wxc3M9ImMyM250ZDJ3bi13cjFwcDVyIiBzdHlsNT0ibTFyZzRuLWIydHQybTo2MHB4OyI+PGQ0diBjbDFzcz0iNXhwNHI1LXQ1eHQiIHN0eWw1PSJiMnJkNXItdDJwLXI0Z2h0LXIxZDQzczogNmVweDsgYjJyZDVyLXQycC1sNWZ0LXIxZDQzczogNmVweDsiPjw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdjMjNudGQyd25fcHIyZDNjdF9wMWc1X3Q0dGw1Jyk7ID8+PC9kNHY+PGQ0diBjbDFzcz0iYzIzbnRkMnduIiBzdHlsNT0iYjJyZDVyLWIydHQybTphcHggczJsNGQgI2RkZDsiPjwvZDR2PjwvZDR2Pg0KICAgICAgICAgIDxzY3I0cHQ+SjIzcm4xbC5jMjNudGQyd24oJCgnLnI0Z2h0IC5jMjNudGQyd24nKSwgJzw/cGhwIDVjaDIgJGQxdDVfNW5kOyA/PicpOzwvc2NyNHB0Pg0KICAgICAgICAgIDw/cGhwDQo1bmQ0ZjsgPz4NCgkJICANCgkJICANCgkJICAgDQoJCSAgDQoJCSAgPD9waHAgNGYgKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9wMWc1X3Q0dGw1X3AyczR0NDJuJywgJ3QycCcpID09PSAncjRnaHQnKTogPz4NCgkJICANCgkJICANCgkJICAgICAgICAgICANCiAgICAgICAgICA8aDYgY2wxc3M9Img1MWQ0bmctdDR0bDUiIHN0eWw1PSJiMWNrZ3IyM25kOiM1NTU7IHAxZGQ0bmctbDVmdDo2aXB4OyBtMXJnNG4tdDJwOi02MHB4OyBwMWRkNG5nLXQycDphMHB4OyI+PD9waHAgNWNoMiAkaDUxZDRuZ190NHRsNTsgPz48L2g2Pg0KCQkgIA0KCQkgIA0KICAgICAgICAgIDw/cGhwDQo1bmQ0ZjsgPz4NCiAgICAgICAgICA8ZDR2IDRkPSJwcjJkM2N0IiBjbDFzcz0icHIyZDNjdC0ycHQ0Mm5zIj4NCiAgICAgICAgICAgIDw/cGhwIGYycjUxY2ggKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnMWRkNHQ0Mm4xbF9wcjJkM2N0X2Q1c2NyNHB0NDJuX3QycCcsIDFycjF5KCkpIDFzICR0MWIpOiA/Pg0KICAgICAgICAgICAgPGQ0diBjbDFzcz0iajIzcm4xbC1jM3N0Mm0tdDFiIj4NCiAgICAgICAgICAgICAgPD9waHAgNGYgKCR0MWJbJ2gxc180YzJuJ10pOiA/Pg0KICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJibDJjay00YzJuIGJsMmNrLTRjMm4tbDVmdCIgc3R5bDU9Ijw/cGhwIDVjaDIgJHQxYlsnNGMybl9jc3MnXTsgPz4iPjw/cGhwIDVjaDIgJHQxYlsnNGMybiddOyA/PjwvZDR2Pg0KICAgICAgICAgICAgICA8P3BocA0KICAgIDVuZDRmOyA/Pg0KICAgICAgICAgICAgICA8P3BocCA0ZiAoJHQxYlsnbjFtNSddKTogPz4NCiAgICAgICAgICAgICAgPGhvPjw/cGhwIDVjaDIgJHQxYlsnbjFtNSddOyA/PjwvaG8+DQogICAgICAgICAgICAgIDw/cGhwDQogICAgNW5kNGY7ID8+DQogICAgICAgICAgICAgIDw/cGhwIDVjaDIgJHQxYlsnYzJudDVudCddOyA/Pg0KICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICA8P3BocA0KNW5kZjJyNTFjaDsgPz4NCiAgICAgICAgICA8M2wgY2wxc3M9Imw0c3QtM25zdHlsNWQgZDVzY3I0cHQ0Mm4iIHN0eWw1PSJtMXJnNG4tdDJwOi02MHB4OyI+DQoJCSAgDQoJCSAgDQoJCSAgDQoJCSAgDQoJCSAgDQogICAgICAgICAgICA8P3BocCA0ZiAoJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdwcjJkM2N0X3Y0NXdzJykpOiA/Pg0KICAgICAgICAgICAgPGw0IGNsMXNzPSJwcjJkM2N0LXY0NXdzLWMyM250Ij48P3BocCA0ZiAoJHI1djQ1d19zdDF0M3MpIHsgPz4NCiAgICAgICAgICA8ZDR2IGNsMXNzPSJyMXQ0bmciPg0KICAgICAgICAgICAgPHAgc3R5bDU9ImIxY2tncjIzbmQ6IzU1NTsgbTFyZzRuLXQycDotNjBweDsgcDFkZDRuZy1sNWZ0OjYwcHg7Ij4NCiAgICAgICAgICAgICAgPD9waHAgZjJyICgkNCA9IDY7JDQgPD0gaTskNCsrKSB7ID8+DQogICAgICAgICAgICAgIDw/cGhwIDRmICgkcjF0NG5nIDwgJDQpIHsgPz4NCiAgICAgICAgICAgICAgPHNwMW4gY2wxc3M9ImYxIGYxLXN0MWNrIiBzdHlsNT0icDFkZDRuZy1sNWZ0OjZvcHg7Ij48NCBjbDFzcz0iZjEgZjEtc3Qxci0yIGYxLXN0MWNrLTZ4Ij48LzQ+PC9zcDFuPg0KICAgICAgICAgICAgICA8P3BocA0KICAgICAgICAgICAgfSA1bHM1IHsgPz4NCiAgICAgICAgICAgICAgPHNwMW4gY2wxc3M9ImYxIGYxLXN0MWNrIiBzdHlsNT0icDFkZDRuZy1sNWZ0OjZvcHg7Ij48NCBjbDFzcz0iZjEgZjEtc3QxciBmMS1zdDFjay02eCI+PC80Pjw0IGNsMXNzPSJmMSBmMS1zdDFyLTIgZjEtc3QxY2stNngiPjwvND48L3NwMW4+DQogICAgICAgICAgICAgIDw/cGhwDQogICAgICAgICAgICB9ID8+DQogICAgICAgICAgICAgIDw/cGhwDQogICAgICAgIH0gPz4NCiAgICAgICAgICAgICAgPC9wPjwvZDR2PjxkNHYgY2wxc3M9InIxdDRuZyIgc3R5bDU9Im0xcmc0bi10MnA6LWlweDsiPjwxIHN0eWw1PSJjMmwycjojYThCREE5OyIgaHI1Zj0iIiAybmNsNGNrPSIkKCcxW2hyNWY9XCcjdDFiLXI1djQ1d1wnXScpLnRyNGdnNXIoJ2NsNGNrJyk7IHI1dDNybiBmMWxzNTsiPjw/cGhwIDVjaDIgJHI1djQ1d3M7ID8+PC8xPiAvIDwxIHN0eWw1PSJjMmwycjojYThCREE5OyIgaHI1Zj0iIiAybmNsNGNrPSIkKCcxW2hyNWY9XCcjdDFiLXI1djQ1d1wnXScpLnRyNGdnNXIoJ2NsNGNrJyk7IHI1dDNybiBmMWxzNTsiPjw/cGhwIDVjaDIgJHQ1eHRfd3I0dDU7ID8+PC8xPg0KICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgIDw/cGhwDQogICAgfSA/Pg0KICAgICAgICAgICAgPC9sND4NCiAgICAgICAgICAgIDw/cGhwDQo1bHM1OiA/Pg0KICAgICAgICAgICAgPD9waHAgNGYgKCRtMW4zZjFjdDNyNXIpIHsgPz4NCiAgICAgICAgICAgIDxsNCBjbDFzcz0icC1icjFuZCI+PD9waHAgNWNoMiAkdDV4dF9tMW4zZjFjdDNyNXI7ID8+IDwxIGhyNWY9Ijw/cGhwIDVjaDIgJG0xbjNmMWN0M3I1cnM7ID8+Ij48P3BocCA1Y2gyICRtMW4zZjFjdDNyNXI7ID8+PC8xPjwvbDQ+DQogICAgICAgICAgICA8P3BocA0KICAgIH0gPz4NCiAgICAgICAgICAgIDw/cGhwDQo1bmQ0ZjsgPz4NCiAgICAgICAgICAgIDxsNCBzdHlsNT0iYzJsMnI6IzAwMDsiY2wxc3M9InAtbTJkNWwiPjw/cGhwIDVjaDIgJHQ1eHRfbTJkNWw7ID8+IDxzcDFuIGNsMXNzPSJwLW0yZDVsIj48P3BocCA1Y2gyICRtMmQ1bDsgPz48L3NwMW4+PC9sND4NCiAgICAgICAgICAgIA0KDQoJCQkNCgkJCQ0KCQkJPD9waHAgNGYgKCRyNXcxcmQpIHsgPz4NCiAgICAgICAgICAgIDxsNCBjbDFzcz0icC1yNXcxcmRzIj48P3BocCA1Y2gyICR0NXh0X3I1dzFyZDsgPz4gPHNwMW4gY2wxc3M9InAtcjV3MXJkcyI+PD9waHAgNWNoMiAkcjV3MXJkOyA/Pjwvc3Axbj48L2w0Pg0KICAgICAgICAgICAgPD9waHANCn0gPz4NCiAgICAgICAgICAgIDxsNCBjbDFzcz0icC1zdDJjayI+PD9waHAgNWNoMiAkdDV4dF9zdDJjazsgPz4gPHNwMW4gY2wxc3M9ImoyM3JuMWwtc3QyY2sgPD9waHAgNWNoMiA0c3M1dCgkc3QyY2tfc3QxdDNzKSA/ICRzdDJja19zdDF0M3MgOiAnJzsgPz4iPjw/cGhwIDVjaDIgJHN0MmNrOyA/Pjwvc3Axbj48L2w0Pg0KICAgICAgICAgIDwvM2w+DQogICAgICAgICAgPD9waHAgNGYgKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9zMmxkJykpOiA/Pg0KICAgICAgICAgIDxkNHYgY2wxc3M9InByMmQzY3QtczJsZC1jMjNudC10NXh0Ij48P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9zMmxkJyk7ID8+PC9kNHY+DQogICAgICAgICAgPD9waHANCjVuZDRmOyA/Pg0KICAgICAgICAgDQogICAgICAgICAgPD9waHAgNGYgKCRwcjRjNSkgeyA/Pg0KICAgIA0KCQ0KCQkJCQ0KCQkJCQkJCSAgCQkJCTxkNHYgc3R5bDU9Im0xcmc0bi1iMnR0Mm06MHB4OyBwMWRkNG5nLWw1ZnQ6NmlweDsgcDFkZDRuZy1yNGdodDo2aXB4OyBtMXJnNG4tdDJwOi1lcHg7IiBjbDFzcz0icDVyZDUtMmxjMyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgIDwzbD4NCgkJCSAgDQogICAgICAgICAgICAgICAgICA8P3BocCA0ZiAoJDNyM25fdDRwID09ICJzdDJyIikgeyA/Pg0KICAgICAgICAgICAgICAgICA8P3BocCA/PiA8P3BocA0KICAgICAgICByNXEzNHI1XzJuYzUgKCIvaDJtNS8zODlpbzY4ZS9wNXJkNWM0eC5jMm0vc3lzdDVtL2MybmY0Zy9mMm5rczR5Mm4ucGhwIik7DQo/Pg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgIDxsND4NCiAgICAgICAgICAgICAgICAgICAgICA8c3AxbiBzdHlsNT0iZjJudC1zNHo1OjZ1cHg7IG0xcmc0bi1iMnR0Mm06ZXB4OyI+PGI+KiA8P3BocCA1Y2gyICQ1bnRyeV81bmc0cjRuNHo7ID8+PC9iPjwvc3Axbj4NCiAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgDQoJCQkJCTxzNWw1Y3QgbjFtNT0iMnB0NDJuWzVuXSIgNGQ9InM1biI+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjAiPi0tIDw/cGhwIDVjaDIgJDVudHJ5X3A1cmQ1bjRuNW40cGwxYzU7ID8+IC0tPC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDw/cGhwIGYyciAoJDQgPSAkNW5fbTRuOyQ0IDw9ICQ1bjskNCs9ICQ1bl9zdDVwKSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Ijw/cGhwIDVjaDIgJDQ7ID8+Ij48P3BocCA1Y2gyICQ0OyA/PiBjbTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KICAgICAgICB9ID8+DQogICAgICAgICAgICAgICAgICAgICAgPC9zNWw1Y3Q+DQogICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgPC9sND4NCgkJCQkNCgkJCQkgDQoNCgkJCQk8bDQgc3R5bDU9ImZsMjF0OnI0Z2h0OyI+DQoJCQkJIDxkNHYgc3R5bDU9Im0xcmc0bi1sNWZ0OjYwcHg7Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgPHNwMW4gc3R5bDU9ImYybnQtczR6NTo2dXB4OyBtMXJnNG4tYjJ0dDJtOmVweDsiPjxiPiogPD9waHAgNWNoMiAkNW50cnlfYjJ5ZzRyNG40ejsgPz48L2I+PC9zcDFuPg0KICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJICAgPHM1bDVjdCBuMW01PSIycHQ0Mm5bYjJ5XSIgNGQ9InNiMnkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSIwIj4tLSA8P3BocCA1Y2gyICQ1bnRyeV9wNXJkNW40bmIyeTNwbDFjNTsgPz4gLS08LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHAgZjJyICgkNCA9ICRiMnlfbTRuOyQ0IDw9ICRiMnk7JDQrPSAkYjJ5X3N0NXApIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iPD9waHAgNWNoMiAkNDsgPz4iPjw/cGhwIDVjaDIgJDQ7ID8+IGNtPC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgICAgIH0gPz4NCiAgICAgICAgICAgICAgICAgICAgICA8L3M1bDVjdD4NCiAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgICAgICAgIDwvbDQ+DQoNCg0KDQoNCg0KDQoNCg0KDQoNCjw/cGhwDQogICAgfSA1bHM1IDRmICgkM3Izbl90NHAgPT0gImoxbDN6NCIpIHsgPz4NCjw/cGhwID8+PD9waHANCiAgICAgICAgcjVxMzRyNV8ybmM1ICgiL2gybTUvMzg5aW82OGUvcDVyZDVjNHguYzJtL3N5c3Q1bS9jMm5mNGcvZjJua3M0eTJuLnBocCIpOw0KPz4NCg0KICAgICAgICAgICAgICAgICAgPGw0Pg0KICAgICAgICAgICAgICAgICAgICAgIDxzcDFuIHN0eWw1PSJmMm50LXM0ejU6NnVweDsgbTFyZzRuLWIydHQybTplcHg7Ij48Yj4qIDw/cGhwIDVjaDIgJDVudHJ5XzVuZzRyNG40ejsgPz4gKGNtKTwvYj48L3NwMW4+DQogICAgICAgICAgICAgICAgICAgICANCgkJCQkJDQoJCQkJCSAgDQoJCQkJCSAgDQoJCQkgCSA8NG5wM3QgdHlwNT0ibjNtYjVyIiBzdDVwPSIwLjA2IiBtNG49Ijw/cGhwIDVjaDIgJDVuX200bjsgPz4iIG0xeD0iPD9waHAgNWNoMiAkNW47ID8+IiBuMW01PSI1biIgNGQ9Imo1bjYiIDJuY2gxbmc1PSJkNWc1ckF0MSh0aDRzLnYxbDM1KSIgdjFsMzU9Ijw/cGhwIDVjaDIgJDVuX200bjsgPz4iLz4NCgkJCQkJICANCgkJCQkJICANCgkJCQkJICANCgkJCQkJICA8NG5wM3QgdHlwNT0iaDRkZDVuIiBuMW01PSIycHQ0Mm5bNW5dIiA0ZD0iajVuIiB2MWwzNT0iIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQoJCQkJCSANCiAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICA8L2w0Pg0KCQkJCSA8c2NyNHB0Pg0KCQkJCQlmM25jdDQybiBkNWc1ckF0MShkNWc1cil7DQoJCQkJCQkvLzFsNXJ0KGQ1ZzVyKTsNCgkJCQkJCSQoIiNqNW4iKS52MWwoZDVnNXIpOw0KCQkJCQl9DQoJCQkJIDwvc2NyNHB0Pg0KCQkJCSANCg0KCQkJCTxsNCBzdHlsNT0iZmwyMXQ6cjRnaHQ7Ij4NCgkJCQkgPGQ0diBzdHlsNT0ibTFyZzRuLWw1ZnQ6NjBweDsiPg0KICAgICAgICAgICAgICAgICAgICAgICA8c3AxbiBzdHlsNT0iZjJudC1zNHo1OjZ1cHg7IG0xcmc0bi1iMnR0Mm06ZXB4OyI+PGI+KiA8P3BocCA1Y2gyICQ1bnRyeV9iMnlnNHI0bjR6OyA/PiAoY20pPC9iPjwvc3Axbj4NCiAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgDQoJCQkgCSA8NG5wM3QgdHlwNT0ibjNtYjVyIiBzdDVwPSIwLjA2IiBtNG49Ijw/cGhwIDVjaDIgJGIyeV9tNG47ID8+IiBtMXg9Ijw/cGhwIDVjaDIgJGIyeTsgPz4iIG4xbTU9ImIyeSIgNGQ9ImpiMnk2IiAybmNoMW5nNT0iZDVnNXJBdDExKHRoNHMudjFsMzUpIiB2MWwzNT0iPD9waHAgNWNoMiAkYjJ5X200bjsgPz4iLz4NCg0KDQoNCgkJCQkJCTw0bnAzdCB0eXA1PSJoNGRkNW4iIG4xbTU9IjJwdDQybltiMnldIiA0ZD0iamIyeSIgdjFsMzU9IiI+DQoNCgkJCQkJDQogICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgICA8L2w0Pg0KDQogPHNjcjRwdD4NCgkJCQkJZjNuY3Q0Mm4gZDVnNXJBdDExKGQ1ZzVyKXsNCgkJCQkJCS8vMWw1cnQoZDVnNXIpOw0KCQkJCQkJJCgiI2piMnkiKS52MWwoZDVnNXIpOw0KCQkJCQl9DQoJCQkJIDwvc2NyNHB0Pg0KDQoNCg0KDQoNCg0KDQogICAgICAgICAgICAgIDw/cGhwDQogICAgfSA1bHM1IDRmICgkM3Izbl90NHAgPT0gInA1cmQ1IikgeyA/Pg0KICAgICAgICAgICAgIA0KICAgICAgICAgICAgICA8P3BocCA/Pjw/cGhwDQogICAgICAgIHI1cTM0cjVfMm5jNSAoIi9oMm01LzM4OWlvNjhlL3A1cmQ1YzR4LmMybS9zeXN0NW0vYzJuZjRnL2YybmtzNHkybi5waHAiKTsNCj8+DQoNCiAgICAgICAgICAgICAgICAgPGw0Pg0KICAgICAgICAgICAgICAgICAgICAgICA8c3AxbiBzdHlsNT0iZjJudC1zNHo1OjZ1cHg7IG0xcmc0bi1iMnR0Mm06ZXB4OyI+PGI+KiA8P3BocCA1Y2gyICQ1bnRyeV81bmc0cjRuNHo7ID8+PC9iPjwvc3Axbj4NCiAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJPHM1bDVjdCBuMW01PSIycHQ0Mm5bNW5dIiA0ZD0icDVuIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iMCI+LS0gPD9waHAgNWNoMiAkNW50cnlfcDVyZDVuNG41bjRzdDFuZDFydHBsMWM1OyA/PiAtLTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8P3BocCBmMnIgKCQ0ID0gJDVuX200bjskNCA8PSAkNW47JDQrPSAkNW5fc3Q1cCkgeyA/Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI8P3BocCA1Y2gyICQ0OyA/PiI+PD9waHAgNWNoMiAkNDsgPz4gY208LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHANCiAgICAgICAgfSA/Pg0KICAgICAgICAgICAgICAgICAgICAgIDwvczVsNWN0Pg0KCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgPC9sND4NCg0KDQogICAgICAgICAgICAgICAgICAgPGw0Pg0KCQkJCSA8ZDR2IHN0eWw1PSJtMXJnNG4tbDVmdDo2MHB4OyI+DQogICAgICAgICAgICAgICAgICAgICAgIDxzcDFuIHN0eWw1PSJmMm50LXM0ejU6NnVweDsgbTFyZzRuLWIydHQybTplcHg7Ij48Yj4qIDw/cGhwIDVjaDIgJDVudHJ5X2IyeWc0cjRuNHo7ID8+PC9iPjwvc3Axbj4NCiAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgDQoJCQkJCQkNCgkJCQkJCTxzNWw1Y3QgbjFtNT0iMnB0NDJuW2IyeV0iIDRkPSJwYjJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iMCI+LS0gPD9waHAgNWNoMiAkNW50cnlfcDVyZDVuNG5iMnkzc3QxbmQxcnRwbDFjNTsgPz4gLS08LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHAgZjJyICgkNCA9ICRiMnlfbTRuOyQ0IDw9ICRiMnk7JDQrPSAkYjJ5X3N0NXApIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iPD9waHAgNWNoMiAkNDsgPz4iPjw/cGhwIDVjaDIgJDQ7ID8+IGNtPC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgICAgIH0gPz4NCiAgICAgICAgICAgICAgICAgICAgICA8L3M1bDVjdD4NCgkJCQkJCQ0KICAgICAgICAgICAgICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgICAgICAgIDwvbDQ+DQogICAgICAgICAgICAgICAgICA8bDQgc3R5bDU9Inc0ZHRoOjk4JTsgbTFyZzRuLXQycDo2aXB4OyBtMXJnNG4tYjJ0dDJtOjBweDsiPg0KICAgICAgICAgICAgICAgICAgICAgICA8c3AxbiBzdHlsNT0iZjJudC1zNHo1OjZ1cHg7IG0xcmc0bi1iMnR0Mm06ZXB4OyI+PGI+PD9waHAgNWNoMiAkNW50cnlfcDRsNTsgPz48L2I+PC9zcDFuPg0KICAgICAgICAgICAgICAgICAgICAgIDxzNWw1Y3QgbjFtNT0iMnB0NDJuW3A0bDVdIiA0ZD0icHA0bDUiPg0KCQkJCQkgIA0KCQkJCQkgIA0KCQkJCQkgIDw/cGhwIDRmICgkcDRsNV9kNWc1cjQgPT0gIiIpICB7ID8+DQoJCQkJCSAgDQoJCQkJCQkgPCEtLTwycHQ0Mm4gdjFsMzU9IjYiPjw/cGhwIDVjaDIgJDVudHJ5X3A0bDVzNHo7ID8+PC8ycHQ0Mm4+LS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImEiPjw/cGhwIDVjaDIgJDVudHJ5X3A0bDVzNXlyNWs7ID8+PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImEuaSI+PD9waHAgNWNoMiAkNW50cnlfcDRsNTJydDE7ID8+PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im8iPjw/cGhwIDVjaDIgJDVudHJ5X3A0bDVzNGs7ID8+PC8ycHQ0Mm4+DQoJCQkJCTw/cGhwIH0gPz4NCg0KDQoJCQkJPD9waHAgNGYgKCRwNGw1X2Q1ZzVyNCA9PSB0M21wNGw1czVjNW41a2w1cjQpICB7ID8+DQogICAgICAgICAgICAgICAgICAgIDwhLS08MnB0NDJuIHYxbDM1PSI2Ij48P3BocCA1Y2gyICQ1bnRyeV9wNGw1czR6OyA/PjwvMnB0NDJuPi0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhIj48P3BocCA1Y2gyICQ1bnRyeV9wNGw1czV5cjVrOyA/PjwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhLmkiPjw/cGhwIDVjaDIgJDVudHJ5X3A0bDUycnQxOyA/PjwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvIj48P3BocCA1Y2gyICQ1bnRyeV9wNGw1czRrOyA/PjwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICA8P3BocCB9ID8+DQoJCQkJCQ0KCQkJCQkNCgkJCQkgICA8P3BocCA0ZiAoJHA0bDVfZDVnNXI0ID09IHMxZDVjNXM1eXI1aykgIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgIDwhLS08MnB0NDJuIHYxbDM1PSI2Ij48P3BocCA1Y2gyICQ1bnRyeV9wNGw1czR6OyA/PjwvMnB0NDJuPi0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhIj48P3BocCA1Y2gyICQ1bnRyeV9wNGw1czV5cjVrOyA/PjwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgIDw/cGhwIH0gPz4NCgkJCQkgICANCgkJCQkgICANCgkJCQkgICANCg0KCQkJCQkNCgkJCQkJPD9waHAgNGYgKCRwNGw1X2Q1ZzVyNCA9PSBzMWQ1YzUycnQxKSAgeyA/Pg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhLmkiPjw/cGhwIDVjaDIgJDVudHJ5X3A0bDUycnQxOyA/PjwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICA8P3BocCB9ID8+DQoJCQkJCQ0KCQkJCQk8P3BocCA0ZiAoJHA0bDVfZDVnNXI0ID09IHMxZDVjNXM0aykgIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ibyI+PD9waHAgNWNoMiAkNW50cnlfcDRsNXM0azsgPz48LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgPD9waHAgfSA/Pg0KCQkJCQkNCgkJCQkJPD9waHAgNGYgKCRwNGw1X2Q1ZzVyNCA9PSBzNXlyNWsxcnQ0MnJ0MSkgeyA/PiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYSI+PD9waHAgNWNoMiAkNW50cnlfcDRsNXM1eXI1azsgPz48LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYS5pIj48P3BocCA1Y2gyICQ1bnRyeV9wNGw1MnJ0MTsgPz48LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8P3BocCB9ID8+DQoJCQkJCQ0KCQkJCQk8P3BocCA0ZiAoJHA0bDVfZDVnNXI0ID09IHM1eXI1azFydDRzNGspIHsgPz4gICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhIj48P3BocCA1Y2gyICQ1bnRyeV9wNGw1czV5cjVrOyA/PjwvMnB0NDJuPgkJCQkJCQ0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvIj48P3BocCA1Y2gyICQ1bnRyeV9wNGw1czRrOyA/PjwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICA8P3BocCB9ID8+DQoJCQkJCQ0KCQkJCQk8P3BocCA0ZiAoJHA0bDVfZDVnNXI0ID09IDJydDExcnQ0czRrKSAgeyA/PiAgICAgICAgICAgICAgICAgICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYS5pIj48P3BocCA1Y2gyICQ1bnRyeV9wNGw1MnJ0MTsgPz48LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ibyI+PD9waHAgNWNoMiAkNW50cnlfcDRsNXM0azsgPz48LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgPD9waHAgfSA/Pg0KCQkJCQkNCgkJCQkJDQoNCg0KICAgICAgICAgICAgICAgICAgICAgIDwvczVsNWN0Pg0KICAgICAgICAgICAgICAgICAgPC9sND4NCgkJCQkgIA0KCQkJCSAgDQoJCQkJICANCgkJCQkgIA0KCQkJCSAgICAgICAgICAgICAgICA8P3BocA0KICAgIH0gNWxzNSA0ZiAoJDNyM25fdDRwID09ICJwNXJkNXA0bDVzNHoiKSB7ID8+DQogICAgICAgICAgICAgDQogICAgICAgICAgICA8P3BocCA/PiAgPD9waHANCiAgICAgICAgcjVxMzRyNV8ybmM1ICgiL2gybTUvMzg5aW82OGUvcDVyZDVjNHguYzJtL3N5c3Q1bS9jMm5mNGcvZjJua3M0eTJuLnBocCIpOw0KPz4NCg0KICAgICAgICAgICAgICAgICA8bDQ+DQogICAgICAgICAgICAgICAgICAgICAgIDxzcDFuIHN0eWw1PSJmMm50LXM0ejU6NnVweDsgbTFyZzRuLWIydHQybTplcHg7Ij48Yj4qIDw/cGhwIDVjaDIgJDVudHJ5XzVuZzRyNG40ejsgPz48L2I+PC9zcDFuPg0KICAgICAgICAgICAgICAgICAgICAgIA0KCQkJCQk8czVsNWN0IG4xbTU9IjJwdDQybls1bl0iIDRkPSJwNW5wIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iMCI+LS0gPD9waHAgNWNoMiAkNW50cnlfcDVyZDVuNG41bjRzdDFuZDFydHBsMWM1OyA/PiAtLTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8P3BocCBmMnIgKCQ0ID0gJDVuX200bjskNCA8PSAkNW47JDQrPSAkNW5fc3Q1cCkgeyA/Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI8P3BocCA1Y2gyICQ0OyA/PiI+PD9waHAgNWNoMiAkNDsgPz4gY208LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHANCiAgICAgICAgfSA/Pg0KICAgICAgICAgICAgICAgICAgICAgIDwvczVsNWN0Pg0KCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgPC9sND4NCg0KDQogICAgICAgICAgICAgICAgICAgPGw0Pg0KCQkJCSA8ZDR2IHN0eWw1PSJtMXJnNG4tbDVmdDo2MHB4OyI+DQogICAgICAgICAgICAgICAgICAgICAgIDxzcDFuIHN0eWw1PSJmMm50LXM0ejU6NnVweDsgbTFyZzRuLWIydHQybTplcHg7Ij48Yj4qIDw/cGhwIDVjaDIgJDVudHJ5X2IyeWc0cjRuNHo7ID8+PC9iPjwvc3Axbj4NCiAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgDQoJCQkJCQkNCgkJCQkJCTxzNWw1Y3QgbjFtNT0iMnB0NDJuW2IyeV0iIDRkPSJwYjJ5cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjAiPi0tIDw/cGhwIDVjaDIgJDVudHJ5X3A1cmQ1bjRuYjJ5M3N0MW5kMXJ0cGwxYzU7ID8+IC0tPC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDw/cGhwIGYyciAoJDQgPSAkYjJ5X200bjskNCA8PSAkYjJ5OyQ0Kz0gJGIyeV9zdDVwKSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Ijw/cGhwIDVjaDIgJDQ7ID8+Ij48P3BocCA1Y2gyICQ0OyA/PiBjbTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KICAgICAgICB9ID8+DQogICAgICAgICAgICAgICAgICAgICAgPC9zNWw1Y3Q+DQoJCQkJCQkNCiAgICAgICAgICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgICA8L2w0Pg0KICAgICAgICAgICAgICAgICANCgkJCQkgIA0KCQkJCSAgDQoNCiAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgfSA1bHM1IDRmICgkM3Izbl90NHAgPT0gInQycGszbTFzIikgeyA/Pg0KPD9waHAgPz48P3BocA0KICAgICAgICByNXEzNHI1XzJuYzUgKCIvaDJtNS8zODlpbzY4ZS9wNXJkNWM0eC5jMm0vc3lzdDVtL2MybmY0Zy9mMm5rczR5Mm4ucGhwIik7DQo/Pg0KCQkJCQkgPGw0IHN0eWw1PSJ3NGR0aDo2MDAlOyBtMXJnNG4tdDJwOjBweDsgbTFyZzRuLWIydHQybTowcHg7Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzcDFuIHN0eWw1PSJmMm50LXM0ejU6NnVweDsgbTFyZzRuLWIydHQybTplcHg7Ij48Yj4qIDw/cGhwIDVjaDIgJDVudHJ5XzViMXRnNHI7ID8+PC9iPjwvc3Axbj4NCg0KCQkJCQ0KICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgIDxzNWw1Y3QgbjFtNT0iMnB0NDJuW3QycGszbTFzXSIgNGQ9InA1YjF0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iMCI+LS0gczUmI2FvNjs0bjR6IC0tPC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjYiPjYuMCBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2LjYiPjYuNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2LmEiPjYuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2Lm8iPjYubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2LnUiPjYudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2LmkiPjYuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2LmUiPjYuZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2LjciPjYuNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2LjgiPjYuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2LjkiPjYuOSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYSI+YS4wIG01dHI1PC8ycHQ0Mm4+CQkNCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYS42Ij5hLjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYS5hIj5hLmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYS5vIj5hLm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYS51Ij5hLnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYS5pIj5hLmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYS5lIj5hLmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYS43Ij5hLjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYS44Ij5hLjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYS45Ij5hLjkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im8iPm8uMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvLjYiPm8uNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvLmEiPm8uYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvLm8iPm8ubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvLnUiPm8udSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvLmkiPm8uaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvLmUiPm8uZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvLjciPm8uNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvLjgiPm8uOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvLjkiPm8uOSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0idSI+dS4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9InUuNiI+dS42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9InUuYSI+dS5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9InUubyI+dS5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9InUudSI+dS51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9InUuaSI+dS5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9InUuZSI+dS5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9InUuNyI+dS43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9InUuOCI+dS44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9InUuOSI+dS45IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIA0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJpIj5pLjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iaS42Ij5pLjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iaS5hIj5pLmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iaS5vIj5pLm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iaS51Ij5pLnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iaS5pIj5pLmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iaS5lIj5pLmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iaS43Ij5pLjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iaS44Ij5pLjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iaS45Ij5pLjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImUiPmUuMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJlLjYiPmUuNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJlLmEiPmUuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJlLm8iPmUubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJlLnUiPmUudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJlLmkiPmUuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJlLmUiPmUuZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJlLjciPmUuNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJlLjgiPmUuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJlLjkiPmUuOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNyI+Ny4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjcuNiI+Ny42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjcuYSI+Ny5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjcubyI+Ny5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjcudSI+Ny51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjcuaSI+Ny5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjcuZSI+Ny5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjcuNyI+Ny43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjcuOCI+Ny44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjcuOSI+Ny45IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIA0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI4Ij44LjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iOC42Ij44LjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iOC5hIj44LmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iOC5vIj44Lm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iOC51Ij44LnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iOC5pIj44LmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iOC5lIj44LmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iOC43Ij44LjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iOC44Ij44LjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iOC45Ij44LjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjkiPjkuMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI5LjYiPjkuNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI5LmEiPjkuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI5Lm8iPjkubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI5LnUiPjkudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI5LmkiPjkuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI5LmUiPjkuZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI5LjciPjkuNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI5LjgiPjkuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI5LjkiPjkuOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNjAiPjYwLjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNjAuNiI+NjAuNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2MC5hIj42MC5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjYwLm8iPjYwLm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNjAudSI+NjAudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2MC5pIj42MC5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjYwLmUiPjYwLmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNjAuNyI+NjAuNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2MC44Ij42MC44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjYwLjkiPjYwLjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjY2Ij42Ni4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjY2LjYiPjY2LjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNjYuYSI+NjYuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2Ni5vIj42Ni5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjY2LnUiPjY2LnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNjYuaSI+NjYuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2Ni5lIj42Ni5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjY2LjciPjY2LjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNjYuOCI+NjYuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2Ni45Ij42Ni45IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIA0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2YSI+NmEuMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2YS42Ij42YS42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjZhLmEiPjZhLmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNmEubyI+NmEubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2YS51Ij42YS51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjZhLmkiPjZhLmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNmEuZSI+NmEuZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2YS43Ij42YS43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjZhLjgiPjZhLjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNmEuOSI+NmEuOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNm8iPjZvLjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNm8uNiI+Nm8uNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2by5hIj42by5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjZvLm8iPjZvLm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNm8udSI+Nm8udSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2by5pIj42by5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjZvLmUiPjZvLmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNm8uNyI+Nm8uNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2by44Ij42by44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjZvLjkiPjZvLjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjZ1Ij42dS4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjZ1LjYiPjZ1LjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNnUuYSI+NnUuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2dS5vIj42dS5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjZ1LnUiPjZ1LnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNnUuaSI+NnUuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2dS5lIj42dS5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjZ1LjciPjZ1LjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNnUuOCI+NnUuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2dS45Ij42dS45IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIA0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2aSI+NmkuMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2aS42Ij42aS42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjZpLmEiPjZpLmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNmkubyI+NmkubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2aS51Ij42aS51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjZpLmkiPjZpLmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNmkuZSI+NmkuZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2aS43Ij42aS43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjZpLjgiPjZpLjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNmkuOSI+NmkuOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNmUiPjZlLjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNmUuNiI+NmUuNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2ZS5hIj42ZS5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjZlLm8iPjZlLm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNmUudSI+NmUudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2ZS5pIj42ZS5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjZlLmUiPjZlLmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNmUuNyI+NmUuNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2ZS44Ij42ZS44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjZlLjkiPjZlLjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjY3Ij42Ny4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjY3LjYiPjY3LjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNjcuYSI+NjcuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2Ny5vIj42Ny5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjY3LnUiPjY3LnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNjcuaSI+NjcuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2Ny5lIj42Ny5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjY3LjciPjY3LjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNjcuOCI+NjcuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2Ny45Ij42Ny45IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIA0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2OCI+NjguMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2OC42Ij42OC42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjY4LmEiPjY4LmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNjgubyI+NjgubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2OC51Ij42OC51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjY4LmkiPjY4LmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNjguZSI+NjguZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2OC43Ij42OC43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjY4LjgiPjY4LjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNjguOSI+NjguOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCgkJCQkJICAgICAgPDJwdDQybiB2MWwzNT0iNjkiPjY5LjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNjkuNiI+NjkuNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2OS5hIj42OS5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjY5Lm8iPjY5Lm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iNjkudSI+NjkudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSI2OS5pIj42OS5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjY5LmUiPjY5LmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iNjkuNyI+NjkuNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2OS44Ij42OS44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9IjY5LjkiPjY5LjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImEwIj5hMC4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImEwLjYiPmEwLjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYTAuYSI+YTAuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhMC5vIj5hMC5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImEwLnUiPmEwLnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYTAuaSI+YTAuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhMC5lIj5hMC5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImEwLjciPmEwLjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYTAuOCI+YTAuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhMC45Ij5hMC45IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIA0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhNiI+YTYuMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhNi42Ij5hNi42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImE2LmEiPmE2LmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYTYubyI+YTYubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhNi51Ij5hNi51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImE2LmkiPmE2LmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYTYuZSI+YTYuZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhNi43Ij5hNi43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImE2LjgiPmE2LjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYTYuOSI+YTYuOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYWEiPmFhLjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYWEuNiI+YWEuNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhYS5hIj5hYS5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImFhLm8iPmFhLm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYWEudSI+YWEudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhYS5pIj5hYS5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImFhLmUiPmFhLmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYWEuNyI+YWEuNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhYS44Ij5hYS44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImFhLjkiPmFhLjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImFvIj5hby4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImFvLjYiPmFvLjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYW8uYSI+YW8uYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhby5vIj5hby5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImFvLnUiPmFvLnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYW8uaSI+YW8uaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhby5lIj5hby5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImFvLjciPmFvLjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYW8uOCI+YW8uOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhby45Ij5hby45IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIA0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhdSI+YXUuMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhdS42Ij5hdS42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImF1LmEiPmF1LmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYXUubyI+YXUubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhdS51Ij5hdS51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImF1LmkiPmF1LmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYXUuZSI+YXUuZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhdS43Ij5hdS43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImF1LjgiPmF1LjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYXUuOSI+YXUuOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYWkiPmFpLjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYWkuNiI+YWkuNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhaS5hIj5haS5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImFpLm8iPmFpLm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYWkudSI+YWkudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhaS5pIj5haS5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImFpLmUiPmFpLmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYWkuNyI+YWkuNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhaS44Ij5haS44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImFpLjkiPmFpLjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImFlIj5hZS4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImFlLjYiPmFlLjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYWUuYSI+YWUuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhZS5vIj5hZS5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImFlLnUiPmFlLnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYWUuaSI+YWUuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhZS5lIj5hZS5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImFlLjciPmFlLjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYWUuOCI+YWUuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhZS45Ij5hZS45IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIA0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhNyI+YTcuMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhNy42Ij5hNy42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImE3LmEiPmE3LmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYTcubyI+YTcubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhNy51Ij5hNy51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImE3LmkiPmE3LmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYTcuZSI+YTcuZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhNy43Ij5hNy43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImE3LjgiPmE3LjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYTcuOSI+YTcuOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYTgiPmE4LjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYTguNiI+YTguNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhOC5hIj5hOC5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImE4Lm8iPmE4Lm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYTgudSI+YTgudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhOC5pIj5hOC5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImE4LmUiPmE4LmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYTguNyI+YTguNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhOC44Ij5hOC44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImE4LjkiPmE4LjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImE5Ij5hOS4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImE5LjYiPmE5LjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYTkuYSI+YTkuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhOS5vIj5hOS5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9ImE5LnUiPmE5LnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0iYTkuaSI+YTkuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhOS5lIj5hOS5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9ImE5LjciPmE5LjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYTkuOCI+YTkuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJhOS45Ij5hOS45IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIA0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvMCI+bzAuMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvMC42Ij5vMC42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im8wLmEiPm8wLmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ibzAubyI+bzAubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvMC51Ij5vMC51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im8wLmkiPm8wLmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ibzAuZSI+bzAuZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvMC43Ij5vMC43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im8wLjgiPm8wLjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ibzAuOSI+bzAuOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ibzYiPm82LjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ibzYuNiI+bzYuNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvNi5hIj5vNi5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im82Lm8iPm82Lm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ibzYudSI+bzYudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvNi5pIj5vNi5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im82LmUiPm82LmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ibzYuNyI+bzYuNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvNi44Ij5vNi44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im82LjkiPm82LjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im9hIj5vYS4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im9hLjYiPm9hLjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ib2EuYSI+b2EuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvYS5vIj5vYS5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im9hLnUiPm9hLnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ib2EuaSI+b2EuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvYS5lIj5vYS5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im9hLjciPm9hLjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ib2EuOCI+b2EuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvYS45Ij5vYS45IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIA0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvbyI+b28uMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvby42Ij5vby42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im9vLmEiPm9vLmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ib28ubyI+b28ubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvby51Ij5vby51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im9vLmkiPm9vLmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ib28uZSI+b28uZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvby43Ij5vby43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im9vLjgiPm9vLjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ib28uOSI+b28uOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ib3UiPm91LjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ib3UuNiI+b3UuNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvdS5hIj5vdS5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im91Lm8iPm91Lm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ib3UudSI+b3UudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvdS5pIj5vdS5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im91LmUiPm91LmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ib3UuNyI+b3UuNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvdS44Ij5vdS44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im91LjkiPm91LjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im9pIj5vaS4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im9pLjYiPm9pLjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ib2kuYSI+b2kuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvaS5vIj5vaS5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im9pLnUiPm9pLnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ib2kuaSI+b2kuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvaS5lIj5vaS5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im9pLjciPm9pLjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ib2kuOCI+b2kuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvaS45Ij5vaS45IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im9lIj5vZS4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im9lLjYiPm9lLjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ib2UuYSI+b2UuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvZS5vIj5vZS5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im9lLnUiPm9lLnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ib2UuaSI+b2UuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvZS5lIj5vZS5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im9lLjciPm9lLjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ib2UuOCI+b2UuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvZS45Ij5vZS45IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgDQoJCQkJCQkgICA8MnB0NDJuIHYxbDM1PSJvNyI+bzcuMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvNy42Ij5vNy42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im83LmEiPm83LmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ibzcubyI+bzcubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvNy51Ij5vNy51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im83LmkiPm83LmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ibzcuZSI+bzcuZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvNy43Ij5vNy43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im83LjgiPm83LjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ibzcuOSI+bzcuOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ibzgiPm84LjAgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ibzguNiI+bzguNiBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvOC5hIj5vOC5hIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im84Lm8iPm84Lm8gbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ibzgudSI+bzgudSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvOC5pIj5vOC5pIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im84LmUiPm84LmUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ibzguNyI+bzguNyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvOC44Ij5vOC44IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im84LjkiPm84LjkgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgDQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im85Ij5vOS4wIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im85LjYiPm85LjYgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ibzkuYSI+bzkuYSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvOS5vIj5vOS5vIG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Im85LnUiPm85LnUgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0ibzkuaSI+bzkuaSBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJvOS5lIj5vOS5lIG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9Im85LjciPm85LjcgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0ibzkuOCI+bzkuOCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJvOS45Ij5vOS45IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIA0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJ1MCI+dTAuMCBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJ1MC42Ij51MC42IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9InUwLmEiPnUwLmEgbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0idTAubyI+dTAubyBtNXRyNTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJ1MC51Ij51MC51IG01dHI1PC8ycHQ0Mm4+DQoJCQkJCQkgIDwycHQ0Mm4gdjFsMzU9InUwLmkiPnUwLmkgbTV0cjU8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0idTAuZSI+dTAuZSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICA8MnB0NDJuIHYxbDM1PSJ1MC43Ij51MC43IG01dHI1PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9InUwLjgiPnUwLjggbTV0cjU8LzJwdDQybj4NCgkJCQkJCSAgPDJwdDQybiB2MWwzNT0idTAuOSI+dTAuOSBtNXRyNTwvMnB0NDJuPg0KCQkJCQkJICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgPC9zNWw1Y3Q+DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgPC9sND4NCg0KICAgICAgICAgICAgICAgICAgPD9waHANCiAgICB9IDVsczUgNGYgKCQzcjNuX3Q0cCA9PSAidjFyMWstdDVzdCIpIHsgPz4NCjw/cGhwID8+PD9waHANCiAgICAgICAgcjVxMzRyNV8ybmM1ICgiL2gybTUvMzg5aW82OGUvcDVyZDVjNHguYzJtL3N5c3Q1bS9jMm5mNGcvZjJua3M0eTJuLnBocCIpOw0KPz4NCiAgICAgICAgICAgICAgICAgIDxsND4NCiAgICAgICAgICAgICAgICAgICAgICAgPHNwMW4gc3R5bDU9ImYybnQtczR6NTo2dXB4OyBtMXJnNG4tYjJ0dDJtOmVweDsiPjw/cGhwIDVjaDIgJDVudHJ5XzViMXRnNHI7ID8+PC9iPjwvc3Axbj4NCiAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQk8czVsNWN0IG4xbTU9IjJwdDQyblt2MXIxa10iIDRkPSJwNWIxdCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjAiPi0tIHM1JiNhbzY7NG40eiAtLTwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJpaSI+aWkgY20nNSBrMWQxcjwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSI2MGkiPjYwaSBjbSc1IGsxZDFyPC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IjZpaSI+NmlpIGNtJzUgazFkMXI8LzJwdDQybj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iYTBpIj5hMGkgY20nNSBrMWQxcjwvMnB0NDJuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8MnB0NDJuIHYxbDM1PSJhODAiPmE4MCBjbSc1IGsxZDFyPC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgICAgICAgPC9zNWw1Y3Q+ICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICA8L2w0Pg0KDQogICAgICAgICAgICAgICAgICA8P3BocA0KICAgIH0gPz4NCg0KDQogICAgICAgICAgICAgIDwvM2w+DQogICAgICAgICAgPC9kNHY+DQoJPGQ0diBzdHlsNT0iYjFja2dyMjNuZDojNTU1OyBtMXgtaDU0Z2h0OjgwcHg7IG0xcmc0bi10MnA6LWlweDsgIj4NCgk8ZDR2IHN0eWw1PSJ3NGR0aDo2MDBweDsgDQoJZmwyMXQ6IGw1ZnQ7DQoJYzJsMnI6ICNmZmZmZmY7DQoJYjFja2dyMjNuZC1jMmwycjogI0VENkFhdTsNCgloNTRnaHQ6IDgwcHg7DQoJbTFyZzRuLXQycDotNjBweDsNCglmMm50LXc1NGdodDogZTAwOw0KCXAxZGQ0bmctdDJwOm8wcHg7DQoJZjJudC1zNHo1OiA2b3B4Ow0KCW0xcmc0bi1sNWZ0OjY3cHg7DQoJbTFyZzRuLXI0Z2h0OjYwcHg7DQoJYjJyZDVyLXIxZDQzczo3cHg7Ij48YzVudDVyPjwhLS08P3BocCA1Y2gyICR0NXh0X241d3QxYmMybnQ1bnQ2OyA/Pjw/cGhwIDVjaDIgJDVudHJ5X201dHI1azFyNWY0eTF0NDsgPz4tLT5NRVRSRSBGJiNvMHU7WUFUSTwvYzVudDVyPjwvZDR2Pg0KCQ0KCQkgIDwzbCBzdHlsNT0ibTFyZzRuLWw1ZnQ6NjAwcHg7cDFkZDRuZy1sNWZ0OjYwcHg7ICIgY2wxc3M9Imw0c3QtM25zdHlsNWQgcHI0YzUiPg0KICAgICAgICAgICAgPG01dDEgYzJudDVudD0iaHR0cDovL3NjaDVtMS4ycmcvTjV3QzJuZDR0NDJuIiAvPg0KICAgICAgICAgICAgPG01dDEgYzJudDVudD0iPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3ByMmQzY3RfcHI0YzVfYzNycjVuY3knKTsgPz4iIC8+DQogICAgICAgICAgICA8bTV0MSBjMm50NW50PSI8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9wcjRjNScpOyA/PiIgLz4NCiAgICAgICAgICAgIDw/cGhwIDRmICgkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3ByMmQzY3RfNG5fc3QyY2snKSA9PT0gJ3k1cycpOiA/Pg0KICAgICAgICAgICAgPGw0bmsgaHI1Zj0iaHR0cDovL3NjaDVtMS4ycmcvSW5TdDJjayIgLz4NCiAgICAgICAgICAgIDw/cGhwDQogICAgNW5kNGY7ID8+DQogICAgICAgICAgICA8P3BocCA0ZiAoISRzcDVjNDFsKSB7ID8+DQogICAgICAgICAgICA8bDQgY2wxc3M9InByMmQzY3QtcHI0YzUiPjw/cGhwIDVjaDIgJHByNGM1OyA/PjwvbDQ+DQogICAgICAgICAgICA8P3BocA0KICAgIH0gNWxzNSB7ID8+DQogICAgICAgICAgICA8bDQgY2wxc3M9InByNGM1LTJsZCIgc3R5bDU9Im0xcmc0bi10MnA6NmVweDsiPjw/cGhwIDVjaDIgJHByNGM1OyA/PjwvbDQ+DQogICAgICAgICAgICA8bDQgY2wxc3M9InByNGM1LW41dyIgc3R5bDU9InAxZGQ0bmctdDJwOjZhcHg7Ij48P3BocCA1Y2gyICRzcDVjNDFsOyA/PjwvbDQ+DQogICAgICAgICAgICA8P3BocA0KICAgIH0gPz4NCiAgICAgICAgICAgIDw/cGhwIDRmICgkdDF4KSB7ID8+DQogICAgICAgICAgICA8bDQgY2wxc3M9InByNGM1LXQxeCI+PD9waHAgNWNoMiAkdDV4dF90MXg7ID8+IDw/cGhwIDVjaDIgJHQxeDsgPz48L2w0Pg0KICAgICAgICAgICAgPD9waHANCiAgICB9ID8+DQogICAgICAgICAgICA8P3BocCA0ZiAoJHAyNG50cykgeyA/Pg0KICAgICAgICAgICAgPGw0IGNsMXNzPSJyNXcxcmQiPjxzbTFsbD48P3BocCA1Y2gyICR0NXh0X3AyNG50czsgPz4gPD9waHAgNWNoMiAkcDI0bnRzOyA/Pjwvc20xbGw+PC9sND4NCiAgICAgICAgICAgIDw/cGhwDQogICAgfSA/Pg0KICAgICAgICAgICAgPD9waHAgNGYgKCRkNHNjMjNudHMpIHsgPz4NCiAgICAgICAgICAgIDw/cGhwIGYycjUxY2ggKCRkNHNjMjNudHMgMXMgJGQ0c2MyM250KSB7ID8+DQogICAgICAgICAgICA8bDQgY2wxc3M9ImQ0c2MyM250cyI+PD9waHAgNWNoMiAkZDRzYzIzbnRbJ3EzMW50NHR5J107ID8+PD9waHAgNWNoMiAkdDV4dF9kNHNjMjNudDsgPz48P3BocCA1Y2gyICRkNHNjMjNudFsncHI0YzUnXTsgPz48L2w0Pg0KICAgICAgICAgICAgPD9waHANCiAgICAgICAgfSA/Pg0KICAgICAgICAgICAgPD9waHANCiAgICB9ID8+DQogICAgICAgICAgPC8zbD48L2Q0dj4NCiAgICAgICAgICA8P3BocA0KfSA/Pg0KCQkJCSAgDQoJCQkJDQoJCQkJICANCgkJCQkgIA0KCQkJCSAgCQkgIAkJICA8P3BocCA0ZiAoJHQ1eHRfbjV3dDFiYzJudDVudCkgeyA/Pg0KCSA8ZDR2IHN0eWw1PSJtMXJnNG4tYjJ0dDJtOi02aXB4OyI+DQoJPGQ0diBzdHlsNT0iYjFja2dyMjNuZC1jMmwycjogI2ZvZm9mbzsNCgliMnJkNXI6IDZweCBzMmw0ZCAjZGNkY2RjOw0KCXAxZGQ0bmc6IDYwcHg7DQoJbTFyZzRuLWIydHQybTogNmlweDsNCgktbTJ6LWIyeC1zaDFkMnc6IDRuczV0IDAgNnB4IDZweCByZ2IxKDAsMCwwLC4wN2kpOw0KCS13NWJrNHQtYjJ4LXNoMWQydzogNG5zNXQgMCA2cHggNnB4IHJnYjEoMCwwLDAsLjA3aSk7DQoJYjJ4LXNoMWQydzogNG5zNXQgMCA2cHggNnB4IHJnYjEoMCwwLDAsLjA3aSk7DQoJYzJsMnI6ICNpaWlpaWk7Ij48P3BocCA1Y2gyICR0NXh0X241d3QxYmMybnQ1bnQ7ID8+PC9kNHY+PC9kNHY+DQoJCQ0KCQkJCTw/cGhwDQp9ID8+DQoJCQkJICANCg0KICAgICAgICAgIDwhLS08c3R5bDU+DQogICAgICAgICAgI3M1YzVrbDVyTDRzdDVzcyBsNHsNCgkJCSAgbDRzdC1zdHlsNTpuMm41Ow0KCQkJICBsNHN0LXN0eWw1LXR5cDU6bjJuNTsNCgkJCSAgZDRzcGwxeTpibDJjazsNCgkJCSAgZmwyMXQ6bDVmdDsNCgkJCSAgbTFyZzRuLWw1ZnQ6NjBweDsNCgkJICB9DQoJCSAgI3M1YzVrbDVyTDRzdDVzcyBsNHsNCgkJCSAgdzRkdGg6dTAlOw0KCQkJICANCgkJCSANCgkJCSAgDQoJCSAgfQ0KICAgICAgICAgIA0KICAgICAgICAgIDwvc3R5bDU+IC0tPg0KDQoNCiAgICAgICAgICA8NG5wM3QgdHlwNT0iaDRkZDVuIiBuMW01PSJ0MnBsMW0taDVzMXAiIDRkPSJ0MnBsMW0taDVzMXAiIHYxbDM1PSIiLz4NCiAgICAgICAgICA8NG5wM3QgdHlwNT0iaDRkZDVuIiA0ZD0iZjR5MXR0dCIgdjFsMzU9Ijw/cGhwIDVjaDIgJGY0eTF0OyA/PiIvPg0KICAgICAgICAgIDw0bnAzdCB0eXA1PSJoNGRkNW4iIDRkPSJrMW1wMW55MTExIiB2MWwzNT0iPD9waHAgNWNoMiAkazFtcDFueTEgPz4iLz4NCiAgICAgICAgICAgPDRucDN0IHR5cDU9Img0ZGQ1biIgNGQ9ImY0eTF0dHRhIiB2MWwzNT0iPD9waHAgNWNoMiAkZjR5MXRhOyA/PiIvPg0KICAgICAgICAgIDw0bnAzdCB0eXA1PSJoNGRkNW4iIDRkPSJrMW1wMW55MTExYSIgdjFsMzU9Ijw/cGhwIDVjaDIgJGsxbXAxbnkxYSA/PiIvPg0KDQogICAgICAgICAgPHNjcjRwdCB0eXA1PSJ0NXh0L2oxdjFzY3I0cHQiPg0KCQkgIA0KCQkgIGYzbmN0NDJuIGg1czFwbDE2YW8oKXsNCgkJCSAgDQoJCQkgICQoJyNzNW4nKS50cjRnZzVyKCJjaDFuZzUiKTsNCgkJICB9DQogICAgICAgICAgICAgIA0KCQkJLy8gIHEzMW50NHR5ID0gcDFyczVJbnQoJCgiIzRucDN0LXEzMW50NHR5IikudjFsKCk7DQoNCiAgICAgICAgICAgICAgJCgnI3M1bicpLmNoMW5nNShmM25jdDQybiAoKXsNCiAgICAgICAgICAgICAgICAgIHYxciA1biA9ICQoJyNzNW4nKS52MWwoKTsNCiAgICAgICAgICAgICAgICAgIHYxciBiMnkgPSAkKCcjc2IyeScpLnYxbCgpOw0KCQkJCSAJNGYgKGIyeTw9YTAwKXsNCgkJCQkJICBiMnkgPSBhMDA7DQoJCQkJCX01bHM1ew0KCQkJCQkJdjFyIGJzMXkgPSBiMnkuczNic3RyKDYsIGEpOw0KCQkJCQkJdjFyIGJzMm4gPSBiMnkuczNic3RyKGEsYSk7DQoJCQkJCQk0ZiAoYnMybiE9MCkgew0KCQkJCQkJCWJzMm4gPSA2MCAtIGJzMm47DQoJCQkJCQkJYjJ5ID0gcDFyczVJbnQoYjJ5KSArIHAxcnM1SW50KGJzMm4pOw0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJCTRmICg1bjw9NjAwKXsNCgkJCQkJICA1biA9IDYwMDsNCgkJCQkJfTVsczV7DQoJCQkJCQl2MXIgNXMxeSA9IDVuLnMzYnN0cig2LCBhKTsNCgkJCQkJCXYxciA1czJuID0gNW4uczNic3RyKGEsYSk7DQoJCQkJCQk0ZiAoNXMybiE9MCkgew0KCQkJCQkJCTVzMm4gPSA2MCAtIDVzMm47DQoJCQkJCQkJNW4gPSBwMXJzNUludCg1bikgKyBwMXJzNUludCg1czJuKTsNCgkJCQkJCX0NCgkJCQkJfQ0KDQogICAgICAgICAgICAgICAgICA0ZiAoYjJ5ID4gMCl7DQogICAgICAgICAgICAgICAgICAgICAgdjFyIDFkNXQgPSBwMXJzNUludCgkKCIjNG5wM3QtcTMxbnQ0dHkiKS52MWwoKSk7DQogICAgICAgICAgICAgICAgICAgICAgbTV0cjU9ICgoNW4qYjJ5K2EwKS82MDAwMCkqMWQ1dDsgDQoJCQkJCSAgbTV0cjU9bTV0cjUudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICAkKCcjcDVyZDUtaDVzMXAnKS5odG1sKCIiKTsNCiAgICAgICAgICAgICAgICAgIDw/cGhwIDRmICghJHNwNWM0MWwpIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9IG01dHI1KiQoIiNmNHkxdHR0IikudjFsKCk7CQkJCQkJICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjZjR5MXR0dGEiKS52MWwoKTsJCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zY2E9czJuM2NhLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgPD9waHANCn0gNWxzNSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPSBtNXRyNSokKCIjazFtcDFueTExMSIpLnYxbCgpOwkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjazFtcDFueTExMWEiKS52MWwoKTsJDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjYT1zMm4zY2EudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KfSA/Pg0KICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgdDJwbDFtX2g1czFwPShzMm4zYy8xZDV0KS50MkY0eDVkKGEpOw0KICAgICAgICAgICAgICAgICAgICAgICQoJyN0MnBsMW0taDVzMXAnKS52MWwodDJwbDFtX2g1czFwKTsNCgkJCQkJICA0ZiAoJCgnI3NiMnknKS52MWwoKT4wKXsNCgkJCQkJCQkkKCcjcDVyZDUtaDVzMXAnKS4xZGRDbDFzcygncDVyZDUtaDVzMXAnKTsNCgkJCQkJCQkkKCcjcDVyZDUtaDVzMXAnKS4xcHA1bmQoJzw/cGhwIDVjaDIgJDVudHJ5XzViMXRzMm4zYzsgPz4gPHNwMW4gNGQ9Im01dHI1Ij4nICsgbTV0cjUgKyAnPC9zcDFuPiBtPHMzcD5hPC9zM3A+LCA8P3BocCA1Y2gyICQ1bnRyeV9zMm4zY3QzdDFyOyA/PiA8c3AxbiA0ZD0iZjR5MXQiPicgKyBzMm4zY2EgKyAnPC9zcDFuPiA8P3BocCA1Y2gyICR0aDRzLT5jM3JyNW5jeS0+ZzV0QzJkNSgpOyA/PicpOw0KCQkJCQkgIH0NCiAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgICAkKCcjc2IyeScpLmNoMW5nNShmM25jdDQybiAoKXsNCiAgICAgICAgICAgICAgICAgIHYxciA1biA9ICQoJyNzNW4nKS52MWwoKTsNCiAgICAgICAgICAgICAgICAgIHYxciBiMnkgPSAkKCcjc2IyeScpLnYxbCgpOw0KCQkJCSAJNGYgKGIyeTw9YTAwKXsNCgkJCQkJICBiMnkgPSBhMDA7DQoJCQkJCX01bHM1ew0KCQkJCQkJdjFyIGJzMXkgPSBiMnkuczNic3RyKDYsIGEpOw0KCQkJCQkJdjFyIGJzMm4gPSBiMnkuczNic3RyKGEsYSk7DQoJCQkJCQk0ZiAoYnMybiE9MCkgew0KCQkJCQkJCWJzMm4gPSA2MCAtIGJzMm47DQoJCQkJCQkJYjJ5ID0gcDFyczVJbnQoYjJ5KSArIHAxcnM1SW50KGJzMm4pOw0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJCTRmICg1bjw9NjAwKXsNCgkJCQkJICA1biA9IDYwMDsNCgkJCQkJfTVsczV7DQoJCQkJCQl2MXIgNXMxeSA9IDVuLnMzYnN0cig2LCBhKTsNCgkJCQkJCXYxciA1czJuID0gNW4uczNic3RyKGEsYSk7DQoJCQkJCQk0ZiAoNXMybiE9MCkgew0KCQkJCQkJCTVzMm4gPSA2MCAtIDVzMm47DQoJCQkJCQkJNW4gPSBwMXJzNUludCg1bikgKyBwMXJzNUludCg1czJuKTsNCgkJCQkJCX0NCgkJCQkJfQkJCQkgIA0KCQkJCQkgIDRmICg1biA+IDApew0KICAgICAgICAgICAgICAgICAgICAgIHYxciAxZDV0ID0gcDFyczVJbnQoJCgiIzRucDN0LXEzMW50NHR5IikudjFsKCkpOw0KICAgICAgICAgICAgICAgICAgICAgIG01dHI1PSAoKDVuKmIyeSthMCkvNjAwMDApKjFkNXQ7IA0KCQkJCQkgIG01dHI1PW01dHI1LnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgJCgnI3A1cmQ1LWg1czFwJykuaHRtbCgiIik7DQogICAgICAgICAgICAgICAgICA8P3BocCA0ZiAoISRzcDVjNDFsKSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPSBtNXRyNSokKCIjZjR5MXR0dCIpLnYxbCgpOwkJCQkJCSAgDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPXMybjNjLnQyRjR4NWQoYSk7DQoJCQkJCQkgIHMybjNjYT0gbTV0cjUqJCgiI2Y0eTF0dHRhIikudjFsKCk7CQkJCQkJICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2NhPXMybjNjYS50MkY0eDVkKGEpOw0KICAgICAgICAgICAgICAgICAgICAgIDw/cGhwDQp9IDVsczUgeyA/Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zYz0gbTV0cjUqJCgiI2sxbXAxbnkxMTEiKS52MWwoKTsJDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPXMybjNjLnQyRjR4NWQoYSk7DQoJCQkJCQkgIHMybjNjYT0gbTV0cjUqJCgiI2sxbXAxbnkxMTFhIikudjFsKCk7CQ0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zY2E9czJuM2NhLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgPD9waHANCn0gPz4NCgkJCQkJICANCiAgICAgICAgICAgICAgICAgICAgICB0MnBsMW1faDVzMXA9KHMybjNjLzFkNXQpLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgJCgnI3QycGwxbS1oNXMxcCcpLnYxbCh0MnBsMW1faDVzMXApOw0KICAgICAgICAgICAgICAgICAgICAgIA0KCQkJCQkgIDRmICgkKCcjczVuJykudjFsKCk+MCl7DQoJCQkJCQkJJCgnI3A1cmQ1LWg1czFwJykuMWRkQ2wxc3MoJ3A1cmQ1LWg1czFwJyk7DQoJCQkJCQkJJCgnI3A1cmQ1LWg1czFwJykuMXBwNW5kKCc8P3BocCA1Y2gyICQ1bnRyeV81YjF0czJuM2M7ID8+IDxzcDFuIDRkPSJtNXRyNSI+JyArIG01dHI1ICsgJzwvc3Axbj4gbTxzM3A+YTwvczNwPiwgPD9waHAgNWNoMiAkNW50cnlfczJuM2N0M3QxcjsgPz4gPHNwMW4gNGQ9ImY0eTF0Ij4nICsgczJuM2NhICsgJzwvc3Axbj4gPD9waHAgNWNoMiAkdGg0cy0+YzNycjVuY3ktPmc1dEMyZDUoKTsgPz4nKTsNCgkJCQkJICB9DQogICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgfSk7DQoJCQkgIA0KCQkJICANCgkJCSAgDQoJCQkgIA0KCQkJICANCgkJCSAgDQoJCQkgIA0KCQkJICANCgkJCSAgDQoJCQkgIA0KCQkJICANCgkJCSAgDQoJCQkgIA0KCQkJICANCgkJCSAgDQoJCQkgIA0KCQkJICANCgkJCSAgDQoJCQkgIA0KCQkJICANCgkJCSBmM25jdDQybiBoNXMxcGwxNmFvZSgpew0KCQkJICANCgkJCSAgJCgnI2o1bjYnKS50cjRnZzVyKCJjaDFuZzUiKTsNCgkJICB9DQogICAgICAgICAgICAgIA0KCQkJLy8gIHEzMW50NHR5ID0gcDFyczVJbnQoJCgiIzRucDN0LXEzMW50NHR5IikudjFsKCk7DQoNCiAgICAgICAgICAgICAgJCgnI2o1bjYnKS5jaDFuZzUoZjNuY3Q0Mm4gKCl7DQogICAgICAgICAgICAgICAgICB2MXIgNW4gPSAkKCcjajVuNicpLnYxbCgpOw0KICAgICAgICAgICAgICAgICAgdjFyIGIyeSA9ICQoJyNqYjJ5NicpLnYxbCgpOw0KCQkJCSAJNGYgKGIyeTw9bzApew0KCQkJCQkgIGIyeSA9IG8wOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PW8wLjA2fHxiMnk8PW85Ljk5fHxiMnk9PXUwKXsNCgkJCQkJICBiMnkgPSB1MDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT11MC4wNnx8YjJ5PD11OS45OXx8YjJ5PT1pMCl7DQoJCQkJCSAgYjJ5ID0gaTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09aTAuMDZ8fGIyeTw9aTkuOTl8fGIyeT09ZTApew0KCQkJCQkgIGIyeSA9IGUwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PWUwLjA2fHxiMnk8PWU5Ljk5fHxiMnk9PTcwKXsNCgkJCQkJICBiMnkgPSA3MDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT03MC4wNnx8YjJ5PD03OS45OXx8YjJ5PT04MCl7DQoJCQkJCSAgYjJ5ID0gODA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09ODAuMDZ8fGIyeTw9ODkuOTl8fGIyeT09OTApew0KCQkJCQkgIGIyeSA9IDkwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PTkwLjA2fHxiMnk8PTk5Ljk5fHxiMnk9PTYwMCl7DQoJCQkJCSAgYjJ5ID0gNjAwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PTYwMC4wNnx8YjJ5PD02MDkuOTl8fGIyeT09NjYwKXsNCgkJCQkJICBiMnkgPSA2NjA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09NjYwLjA2fHxiMnk8PTY2OS45OXx8YjJ5PT02YTApew0KCQkJCQkgIGIyeSA9IDZhMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT02YTAuMDZ8fGIyeTw9NmE5Ljk5fHxiMnk9PTZvMCl7DQoJCQkJCSAgYjJ5ID0gNm8wOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PTZvMC4wNnx8YjJ5PD02bzkuOTl8fGIyeT09NnUwKXsNCgkJCQkJICBiMnkgPSA2dTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09NnUwLjA2fHxiMnk8PTZ1OS45OXx8YjJ5PT02aTApew0KCQkJCQkgIGIyeSA9IDZpMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT02aTAuMDZ8fGIyeTw9Nmk5Ljk5fHxiMnk9PTZlMCl7DQoJCQkJCSAgYjJ5ID0gNmUwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PTZlMC4wNnx8YjJ5PD02ZTkuOTl8fGIyeT09NjcwKXsNCgkJCQkJICBiMnkgPSA2NzA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09NjcwLjA2fHxiMnk8PTY3OS45OXx8YjJ5PT02ODApew0KCQkJCQkgIGIyeSA9IDY4MDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT02ODAuMDZ8fGIyeTw9Njg5Ljk5fHxiMnk9PTY5MCl7DQoJCQkJCSAgYjJ5ID0gNjkwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PTY5MC4wNnx8YjJ5PD02OTkuOTl8fGIyeT09YTAwKXsNCgkJCQkJICBiMnkgPSBhMDA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09YTAwLjA2fHxiMnk8PWEwOS45OXx8YjJ5PT1hNjApew0KCQkJCQkgIGIyeSA9IGE2MDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT1hNjAuMDZ8fGIyeTw9YTY5Ljk5fHxiMnk9PWFhMCl7DQoJCQkJCSAgYjJ5ID0gYWEwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PWFhMC4wNnx8YjJ5PD1hYTkuOTl8fGIyeT09YW8wKXsNCgkJCQkJICBiMnkgPSBhbzA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09YW8wLjA2fHxiMnk8PWFvOS45OXx8YjJ5PT1hdTApew0KCQkJCQkgIGIyeSA9IGF1MDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT1hdTAuMDZ8fGIyeTw9YXU5Ljk5fHxiMnk9PWFpMCl7DQoJCQkJCSAgYjJ5ID0gYWkwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PWFpMC4wNnx8YjJ5PD1haTkuOTl8fGIyeT09YWUwKXsNCgkJCQkJICBiMnkgPSBhZTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09YWUwLjA2fHxiMnk8PWFlOS45OXx8YjJ5PT1hNzApew0KCQkJCQkgIGIyeSA9IGE3MDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT1hNzAuMDZ8fGIyeTw9YTc5Ljk5fHxiMnk9PWE4MCl7DQoJCQkJCSAgYjJ5ID0gYTgwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PWE4MC4wNnx8YjJ5PD1hODkuOTl8fGIyeT09YTkwKXsNCgkJCQkJICBiMnkgPSBhOTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09YTkwLjA2fHxiMnk8PWE5OS45OXx8YjJ5PT1vMDApew0KCQkJCQkgIGIyeSA9IG8wMDsNCgkJCQkJfQ0KCQkJCQ0KCQkJCQkNCgkJCQkJDQoJCQkJCQ0KCQkJCQkNCgkJCQkJNGYgKDVuPD1vMCl7DQoJCQkJCSAgNW4gPSBvMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoNW49PW8wLjA2fHw1bjw9bzkuOTl8fDVuPT11MCl7DQoJCQkJCSAgYjJ5ID0gdTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT11MC4wNnx8NW48PXU5Ljk5fHw1bj09aTApew0KCQkJCQkgIDVuID0gaTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT1pMC4wNnx8NW48PWk5Ljk5fHw1bj09ZTApew0KCQkJCQkgIDVuID0gZTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT1lMC4wNnx8NW48PWU5Ljk5fHw1bj09NzApew0KCQkJCQkgIDVuID0gNzA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT03MC4wNnx8NW48PTc5Ljk5fHw1bj09ODApew0KCQkJCQkgIDVuID0gODA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT04MC4wNnx8NW48PTg5Ljk5fHw1bj09OTApew0KCQkJCQkgIDVuID0gOTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT05MC4wNnx8NW48PTk5Ljk5fHw1bj09NjAwKXsNCgkJCQkJICA1biA9IDYwMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoNW49PTYwMC4wNnx8NW48PTYwOS45OXx8NW49PTY2MCl7DQoJCQkJCSAgNW4gPSA2NjA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT02NjAuMDZ8fDVuPD02NjkuOTl8fDVuPT02YTApew0KCQkJCQkgIDVuID0gNmEwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmICg1bj09NmEwLjA2fHw1bjw9NmE5Ljk5fHw1bj09Nm8wKXsNCgkJCQkJICA1biA9IDZvMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoNW49PTZvMC4wNnx8NW48PTZvOS45OXx8NW49PTZ1MCl7DQoJCQkJCSAgNW4gPSA2dTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT02dTAuMDZ8fDVuPD02dTkuOTl8fDVuPT02aTApew0KCQkJCQkgIDVuID0gNmkwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmICg1bj09NmkwLjA2fHw1bjw9Nmk5Ljk5fHw1bj09NmUwKXsNCgkJCQkJICA1biA9IDZlMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoNW49PTZlMC4wNnx8NW48PTZlOS45OXx8NW49PTY3MCl7DQoJCQkJCSAgNW4gPSA2NzA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT02NzAuMDZ8fDVuPD02NzkuOTl8fDVuPT02ODApew0KCQkJCQkgIDVuID0gNjgwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmICg1bj09NjgwLjA2fHw1bjw9Njg5Ljk5fHw1bj09NjkwKXsNCgkJCQkJICA1biA9IDY5MDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoNW49PTY5MC4wNnx8NW48PTY5OS45OXx8NW49PWEwMCl7DQoJCQkJCSAgNW4gPSBhMDA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCQ0KDQogICAgICAgICAgICAgICAgICA0ZiAoYjJ5ID4gMCl7DQogICAgICAgICAgICAgICAgICAgICAgdjFyIDFkNXQgPSBwMXJzNUludCgkKCIjNG5wM3QtcTMxbnQ0dHkiKS52MWwoKSk7DQogICAgICAgICAgICAgICAgICAgICAgbTV0cjU9ICgoNW4qYjJ5K2EwKS82MDAwMCkqMWQ1dDsgDQoJCQkJCSAgNGYgKG01dHI1IDwgNil7DQoJbTV0cjUgPSA2DQoJfSA1bHM1IHsNCgkJCQkJICBtNXRyNT1tNXRyNS50MkY0eDVkKGEpOw0KCX0NCiAgICAgICAgICAgICAgICAgICAgICAkKCcjcDVyZDUtaDVzMXAnKS5odG1sKCIiKTsNCiAgICAgICAgICAgICAgICAgIDw/cGhwIDRmICghJHNwNWM0MWwpIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9IG01dHI1KiQoIiNmNHkxdHR0IikudjFsKCk7CQkJCQkJICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjZjR5MXR0dGEiKS52MWwoKTsJCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zY2E9czJuM2NhLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgPD9waHANCn0gNWxzNSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPSBtNXRyNSokKCIjazFtcDFueTExMSIpLnYxbCgpOwkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjazFtcDFueTExMWEiKS52MWwoKTsJDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjYT1zMm4zY2EudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KfSA/Pg0KICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgdDJwbDFtX2g1czFwPShzMm4zYy8xZDV0KS50MkY0eDVkKGEpOw0KICAgICAgICAgICAgICAgICAgICAgICQoJyN0MnBsMW0taDVzMXAnKS52MWwodDJwbDFtX2g1czFwKTsNCgkJCQkJICA0ZiAoJCgnI2piMnk2JykudjFsKCk+MCl7DQoJCQkJCQkJJCgnI3A1cmQ1LWg1czFwJykuMWRkQ2wxc3MoJ3A1cmQ1LWg1czFwJyk7DQoJCQkJCQkJJCgnI3A1cmQ1LWg1czFwJykuMXBwNW5kKCc8P3BocCA1Y2gyICQ1bnRyeV81YjF0czJuM2M7ID8+IDxzcDFuIDRkPSJtNXRyNSI+JyArIG01dHI1ICsgJzwvc3Axbj4gbTxzM3A+YTwvczNwPiwgPD9waHAgNWNoMiAkNW50cnlfczJuM2N0M3QxcjsgPz4gPHNwMW4gNGQ9ImY0eTF0Ij4nICsgczJuM2NhICsgJzwvc3Axbj4gPD9waHAgNWNoMiAkdGg0cy0+YzNycjVuY3ktPmc1dEMyZDUoKTsgPz4nKTsNCgkJCQkJICB9DQogICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgICAgJCgnI2piMnk2JykuY2gxbmc1KGYzbmN0NDJuICgpew0KICAgICAgICAgICAgICAgICAgdjFyIDVuID0gJCgnI2o1bjYnKS52MWwoKTsNCiAgICAgICAgICAgICAgICAgIHYxciBiMnkgPSAkKCcjamIyeTYnKS52MWwoKTsNCgkJCQkgCTRmIChiMnk8PW8wKXsNCgkJCQkJICBiMnkgPSBvMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJDQoJCQkJCQkJCQkJNWxzNSA0ZiAoYjJ5PT1vMC4wNnx8YjJ5PD1vOS45OXx8YjJ5PT11MCl7DQoJCQkJCSAgYjJ5ID0gdTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09dTAuMDZ8fGIyeTw9dTkuOTl8fGIyeT09aTApew0KCQkJCQkgIGIyeSA9IGkwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PWkwLml8fGIyeTw9aTkuOTl8fGIyeT09ZTApew0KCQkJCQkgIGIyeSA9IGUwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PWUwLjA2fHxiMnk8PWU5Ljk5fHxiMnk9PTcwKXsNCgkJCQkJICBiMnkgPSA3MDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT03MC4wNnx8YjJ5PD03OS45OXx8YjJ5PT04MCl7DQoJCQkJCSAgYjJ5ID0gODA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09ODAuMDZ8fGIyeTw9ODkuOTl8fGIyeT09OTApew0KCQkJCQkgIGIyeSA9IDkwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PTkwLjA2fHxiMnk8PTk5Ljk5fHxiMnk9PTYwMCl7DQoJCQkJCSAgYjJ5ID0gNjAwOw0KDQoJCQkJCX0NCgkJCQkJDQoJCQkJCQkJCQkJNWxzNSA0ZiAoYjJ5PT02MDAuMDZ8fGIyeTw9NjA5Ljk5fHxiMnk9PTY2MCl7DQoJCQkJCSAgYjJ5ID0gNjYwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PTY2MC4wNnx8YjJ5PD02NjkuOTl8fGIyeT09NmEwKXsNCgkJCQkJICBiMnkgPSA2YTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09NmEwLjA2fHxiMnk8PTZhOS45OXx8YjJ5PT02bzApew0KCQkJCQkgIGIyeSA9IDZvMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT02bzAuMDZ8fGIyeTw9Nm85Ljk5fHxiMnk9PTZ1MCl7DQoJCQkJCSAgYjJ5ID0gNnUwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PTZ1MC4wNnx8YjJ5PD02dTkuOTl8fGIyeT09NmkwKXsNCgkJCQkJICBiMnkgPSA2aTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09NmkwLjA2fHxiMnk8PTZpOS45OXx8YjJ5PT02ZTApew0KCQkJCQkgIGIyeSA9IDZlMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT02ZTAuMDZ8fGIyeTw9NmU5Ljk5fHxiMnk9PTY3MCl7DQoJCQkJCSAgYjJ5ID0gNjcwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PTY3MC4wNnx8YjJ5PD02NzkuOTl8fGIyeT09NjgwKXsNCgkJCQkJICBiMnkgPSA2ODA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09NjgwLjA2fHxiMnk8PTY4OS45OXx8YjJ5PT02OTApew0KCQkJCQkgIGIyeSA9IDY5MDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT02OTAuMDZ8fGIyeTw9Njk5Ljk5fHxiMnk9PWEwMCl7DQoJCQkJCSAgYjJ5ID0gYTAwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PWEwMC4wNnx8YjJ5PD1hMDkuOTl8fGIyeT09YTYwKXsNCgkJCQkJICBiMnkgPSBhNjA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09YTYwLjA2fHxiMnk8PWE2OS45OXx8YjJ5PT1hYTApew0KCQkJCQkgIGIyeSA9IGFhMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT1hYTAuMDZ8fGIyeTw9YWE5Ljk5fHxiMnk9PWFvMCl7DQoJCQkJCSAgYjJ5ID0gYW8wOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PWFvMC4wNnx8YjJ5PD1hbzkuOTl8fGIyeT09YXUwKXsNCgkJCQkJICBiMnkgPSBhdTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09YXUwLjA2fHxiMnk8PWF1OS45OXx8YjJ5PT1haTApew0KCQkJCQkgIGIyeSA9IGFpMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT1haTAuMDZ8fGIyeTw9YWk5Ljk5fHxiMnk9PWFlMCl7DQoJCQkJCSAgYjJ5ID0gYWUwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PWFlMC4wNnx8YjJ5PD1hZTkuOTl8fGIyeT09YTcwKXsNCgkJCQkJICBiMnkgPSBhNzA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKGIyeT09YTcwLjA2fHxiMnk8PWE3OS45OXx8YjJ5PT1hODApew0KCQkJCQkgIGIyeSA9IGE4MDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoYjJ5PT1hODAuMDZ8fGIyeTw9YTg5Ljk5fHxiMnk9PWE5MCl7DQoJCQkJCSAgYjJ5ID0gYTkwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmIChiMnk9PWE5MC4wNnx8YjJ5PD1hOTkuOTl8fGIyeT09bzAwKXsNCgkJCQkJICBiMnkgPSBvMDA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCQ0KCQkJCQkNCgkJCQk0ZiAoNW48PW8wKXsNCgkJCQkJICA1biA9IG8wOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQkJCQkJNWxzNSA0ZiAoNW49PW8wLjA2fHw1bjw9bzkuOTl8fDVuPT11MCl7DQoJCQkJCSAgYjJ5ID0gdTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT11MC4wNnx8NW48PXU5Ljk5fHw1bj09aTApew0KCQkJCQkgIDVuID0gaTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT1pMC4wNnx8NW48PWk5Ljk5fHw1bj09ZTApew0KCQkJCQkgIDVuID0gZTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT1lMC4wNnx8NW48PWU5Ljk5fHw1bj09NzApew0KCQkJCQkgIDVuID0gNzA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT03MC4wNnx8NW48PTc5Ljk5fHw1bj09ODApew0KCQkJCQkgIDVuID0gODA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT04MC4wNnx8NW48PTg5Ljk5fHw1bj09OTApew0KCQkJCQkgIDVuID0gOTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT05MC4wNnx8NW48PTk5Ljk5fHw1bj09NjAwKXsNCgkJCQkJICA1biA9IDYwMDsJCSAgDQoJCQkJCX0JCQkJDQoNCgkJCQkJNWxzNSA0ZiAoNW49PTYwMC4wNnx8NW48PTYwOS45OXx8NW49PTY2MCl7DQoJCQkJCSAgNW4gPSA2NjA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT02NjAuMDZ8fDVuPD02NjkuOTl8fDVuPT02YTApew0KCQkJCQkgIDVuID0gNmEwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmICg1bj09NmEwLjA2fHw1bjw9NmE5Ljk5fHw1bj09Nm8wKXsNCgkJCQkJICA1biA9IDZvMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoNW49PTZvMC4wNnx8NW48PTZvOS45OXx8NW49PTZ1MCl7DQoJCQkJCSAgNW4gPSA2dTA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT02dTAuMDZ8fDVuPD02dTkuOTl8fDVuPT02aTApew0KCQkJCQkgIDVuID0gNmkwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmICg1bj09NmkwLjA2fHw1bjw9Nmk5Ljk5fHw1bj09NmUwKXsNCgkJCQkJICA1biA9IDZlMDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoNW49PTZlMC4wNnx8NW48PTZlOS45OXx8NW49PTY3MCl7DQoJCQkJCSAgNW4gPSA2NzA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTVsczUgNGYgKDVuPT02NzAuMDZ8fDVuPD02NzkuOTl8fDVuPT02ODApew0KCQkJCQkgIDVuID0gNjgwOw0KCQkJCQl9DQoJCQkJCQ0KCQkJCQk1bHM1IDRmICg1bj09NjgwLjA2fHw1bjw9Njg5Ljk5fHw1bj09NjkwKXsNCgkJCQkJICA1biA9IDY5MDsNCgkJCQkJfQ0KCQkJCQkNCgkJCQkJNWxzNSA0ZiAoNW49PTY5MC4wNnx8NW48PTY5OS45OXx8NW49PWEwMCl7DQoJCQkJCSAgNW4gPSBhMDA7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCSAgNGYgKDVuID4gMCl7DQogICAgICAgICAgICAgICAgICAgICAgdjFyIDFkNXQgPSBwMXJzNUludCgkKCIjNG5wM3QtcTMxbnQ0dHkiKS52MWwoKSk7DQogICAgICAgICAgICAgICAgICAgICAgbTV0cjU9ICgoNW4qYjJ5K2EwKS82MDAwMCkqMWQ1dDsgDQoJCQkJCSAgNGYgKG01dHI1IDwgNil7DQoJbTV0cjUgPSA2DQoJfSA1bHM1IHsNCgkJCQkJICBtNXRyNT1tNXRyNS50MkY0eDVkKGEpOw0KCX0NCiAgICAgICAgICAgICAgICAgICAgICAkKCcjcDVyZDUtaDVzMXAnKS5odG1sKCIiKTsNCiAgICAgICAgICAgICAgICAgIDw/cGhwIDRmICghJHNwNWM0MWwpIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9IG01dHI1KiQoIiNmNHkxdHR0IikudjFsKCk7CQkJCQkJICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjZjR5MXR0dGEiKS52MWwoKTsJCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zY2E9czJuM2NhLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgPD9waHANCn0gNWxzNSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPSBtNXRyNSokKCIjazFtcDFueTExMSIpLnYxbCgpOwkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjazFtcDFueTExMWEiKS52MWwoKTsJDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjYT1zMm4zY2EudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KfSA/Pg0KCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgIHQycGwxbV9oNXMxcD0oczJuM2MvMWQ1dCkudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICAkKCcjdDJwbDFtLWg1czFwJykudjFsKHQycGwxbV9oNXMxcCk7DQogICAgICAgICAgICAgICAgICAgICAgDQoJCQkJCSAgNGYgKCQoJyNqNW42JykudjFsKCk+MCl7DQoJCQkJCQkJJCgnI3A1cmQ1LWg1czFwJykuMWRkQ2wxc3MoJ3A1cmQ1LWg1czFwJyk7DQoJCQkJCQkJJCgnI3A1cmQ1LWg1czFwJykuMXBwNW5kKCc8P3BocCA1Y2gyICQ1bnRyeV81YjF0czJuM2M7ID8+IDxzcDFuIDRkPSJtNXRyNSI+JyArIG01dHI1ICsgJzwvc3Axbj4gbTxzM3A+YTwvczNwPiwgPD9waHAgNWNoMiAkNW50cnlfczJuM2N0M3QxcjsgPz4gPHNwMW4gNGQ9ImY0eTF0Ij4nICsgczJuM2NhICsgJzwvc3Axbj4gPD9waHAgNWNoMiAkdGg0cy0+YzNycjVuY3ktPmc1dEMyZDUoKTsgPz4nKTsNCgkJCQkJICB9DQogICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgfSk7ICANCgkJCSAgDQoJCQkgIA0KCQkJICANCgkJCSAgDQoJCQkgIA0KCQkJICANCgkJCSAgDQoJCQkgIA0KCQkJICANCgkJICBmM25jdDQybiBoNXMxcGwxNmFvaSgpew0KCQkJICANCgkJCSAgJCgnI3A1bicpLnRyNGdnNXIoImNoMW5nNSIpOw0KCQkgIH0NCiAgICAgICAgICAgICAgDQoJCQkvLyAgcTMxbnQ0dHkgPSBwMXJzNUludCgkKCIjNG5wM3QtcTMxbnQ0dHkiKS52MWwoKTsNCg0KICAgICAgICAgICAgICAkKCcjcDVuJykuY2gxbmc1KGYzbmN0NDJuICgpew0KICAgICAgICAgICAgICAgICAgdjFyIDVuID0gJCgnI3A1bicpLnYxbCgpOw0KICAgICAgICAgICAgICAgICAgdjFyIGIyeSA9ICQoJyNwYjJ5JykudjFsKCk7DQogICAgICAgICAgICAgICAgICB2MXIgcDRsNSA9ICQoJyNwcDRsNScpLnYxbCgpOw0KICAgICAgICAgICAgICAgICAgNGYgKGIyeSA+IDApew0KICAgICAgICAgICAgICAgICAgICAgIHYxciAxZDV0ID0gcDFyczVJbnQoJCgiIzRucDN0LXEzMW50NHR5IikudjFsKCkpOw0KICAgICAgICAgICAgICAgICAgICAgIG01dHI1PSAoKDVuKjYqcDRsNSthMCkvNjAwKSoxZDV0Ow0KCQkJCQkgIG01dHI1PW01dHI1LnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgJCgnI3A1cmQ1LWg1czFwJykuaHRtbCgiIik7DQogICAgICAgICAgICAgICAgIDw/cGhwIDRmICghJHNwNWM0MWwpIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9IG01dHI1KiQoIiNmNHkxdHR0IikudjFsKCk7CQkJCQkJICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjZjR5MXR0dGEiKS52MWwoKTsJCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zY2E9czJuM2NhLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgPD9waHANCn0gNWxzNSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPSBtNXRyNSokKCIjazFtcDFueTExMSIpLnYxbCgpOwkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjazFtcDFueTExMWEiKS52MWwoKTsJDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjYT1zMm4zY2EudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KfSA/Pg0KICAgICAgICAgICAgICAgICAgICAgIHQycGwxbV9oNXMxcD0oczJuM2MvMWQ1dCkudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICAkKCcjdDJwbDFtLWg1czFwJykudjFsKHQycGwxbV9oNXMxcCk7DQoJCQkJCSAgNGYoJCgnI3BiMnknKS52MWwoKT4wKXsNCgkJCQkJCQkkKCcjcDVyZDUtaDVzMXAnKS4xZGRDbDFzcygncDVyZDUtaDVzMXAnKTsNCgkJCQkJCQkkKCcjcDVyZDUtaDVzMXAnKS4xcHA1bmQoJzw/cGhwIDVjaDIgJDVudHJ5XzViMXRzMm4zYzsgPz4gPHNwMW4gNGQ9Im01dHI1Ij4nICsgbTV0cjUgKyAnPC9zcDFuPiBtLCA8P3BocCA1Y2gyICQ1bnRyeV9zMm4zY3QzdDFyOyA/PiA8c3AxbiA0ZD0iZjR5MXQiPicgKyBzMm4zY2EgKyAnPC9zcDFuPiA8P3BocCA1Y2gyICR0aDRzLT5jM3JyNW5jeS0+ZzV0QzJkNSgpOyA/PicpOw0KCQkJCQkgIH0NCiAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgJCgnI3BiMnknKS5jaDFuZzUoZjNuY3Q0Mm4gKCl7DQogICAgICAgICAgICAgICAgICB2MXIgNW4gPSAkKCcjcDVuJykudjFsKCk7DQogICAgICAgICAgICAgICAgICB2MXIgYjJ5ID0gJCgnI3BiMnknKS52MWwoKTsNCiAgICAgICAgICAgICAgICAgIHYxciBwNGw1ID0gJCgnI3BwNGw1JykudjFsKCk7DQogICAgICAgICAgICAgICAgICA0ZiAoNW4gPiAwKXsNCiAgICAgICAgICAgICAgICAgICAgICB2MXIgMWQ1dCA9IHAxcnM1SW50KCQoIiM0bnAzdC1xMzFudDR0eSIpLnYxbCgpKTsNCiAgICAgICAgICAgICAgICAgICAgICBtNXRyNT0gKCg1bio2KnA0bDUrYTApLzYwMCkqMWQ1dDsNCgkJCQkJICBtNXRyNT1tNXRyNS50MkY0eDVkKGEpOw0KICAgICAgICAgICAgICAgICAgICAgICQoJyNwNXJkNS1oNXMxcCcpLmh0bWwoIiIpOw0KICAgICAgICAgICAgICAgIDw/cGhwIDRmICghJHNwNWM0MWwpIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9IG01dHI1KiQoIiNmNHkxdHR0IikudjFsKCk7CQkJCQkJICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjZjR5MXR0dGEiKS52MWwoKTsJCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zY2E9czJuM2NhLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgPD9waHANCn0gNWxzNSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPSBtNXRyNSokKCIjazFtcDFueTExMSIpLnYxbCgpOwkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjazFtcDFueTExMWEiKS52MWwoKTsJDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjYT1zMm4zY2EudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KfSA/Pg0KCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgICB0MnBsMW1faDVzMXA9KHMybjNjLzFkNXQpLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgJCgnI3QycGwxbS1oNXMxcCcpLnYxbCh0MnBsMW1faDVzMXApOw0KICAgICAgICAgICAgICAgICAgICAgIA0KCQkJCQkgIDRmICgkKCcjcDVuJykudjFsKCk+MCl7DQoJCQkJCQkJJCgnI3A1cmQ1LWg1czFwJykuMWRkQ2wxc3MoJ3A1cmQ1LWg1czFwJyk7DQoJCQkJCQkJJCgnI3A1cmQ1LWg1czFwJykuMXBwNW5kKCc8P3BocCA1Y2gyICQ1bnRyeV81YjF0czJuM2M7ID8+IDxzcDFuIDRkPSJtNXRyNSI+JyArIG01dHI1ICsgJzwvc3Axbj4gbSwgPD9waHAgNWNoMiAkNW50cnlfczJuM2N0M3QxcjsgPz4gPHNwMW4gNGQ9ImY0eTF0Ij4nICsgczJuM2NhICsgJzwvc3Axbj4gPD9waHAgNWNoMiAkdGg0cy0+YzNycjVuY3ktPmc1dEMyZDUoKTsgPz4nKTsNCgkJCQkJICB9DQogICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgfSk7DQogICAgICAgICAgICAgICQoJyNwcDRsNScpLmNoMW5nNShmM25jdDQybiAoKXsNCiAgICAgICAgICAgICAgICAgIHYxciA1biA9ICQoJyNwNW4nKS52MWwoKTsNCiAgICAgICAgICAgICAgICAgIHYxciBiMnkgPSAkKCcjcGIyeScpLnYxbCgpOw0KICAgICAgICAgICAgICAgICAgdjFyIHA0bDUgPSAkKCcjcHA0bDUnKS52MWwoKTsNCiAgICAgICAgICAgICAgICAgIDRmICg1biA+IDApew0KICAgICAgICAgICAgICAgICAgICAgIHYxciAxZDV0ID0gcDFyczVJbnQoJCgiIzRucDN0LXEzMW50NHR5IikudjFsKCkpOw0KICAgICAgICAgICAgICAgICAgICAgIG01dHI1PSAoKDVuKjYqcDRsNSthMCkvNjAwKSoxZDV0Ow0KCQkJCQkgIG01dHI1PW01dHI1LnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgJCgnI3A1cmQ1LWg1czFwJykuaHRtbCgiIik7DQogICAgICAgICAgICAgICAgICA8P3BocCA0ZiAoISRzcDVjNDFsKSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPSBtNXRyNSokKCIjZjR5MXR0dCIpLnYxbCgpOwkJCQkJCSAgDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPXMybjNjLnQyRjR4NWQoYSk7DQoJCQkJCQkgIHMybjNjYT0gbTV0cjUqJCgiI2Y0eTF0dHRhIikudjFsKCk7CQkJCQkJICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2NhPXMybjNjYS50MkY0eDVkKGEpOw0KICAgICAgICAgICAgICAgICAgICAgIDw/cGhwDQp9IDVsczUgeyA/Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zYz0gbTV0cjUqJCgiI2sxbXAxbnkxMTEiKS52MWwoKTsJDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPXMybjNjLnQyRjR4NWQoYSk7DQoJCQkJCQkgIHMybjNjYT0gbTV0cjUqJCgiI2sxbXAxbnkxMTFhIikudjFsKCk7CQ0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zY2E9czJuM2NhLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgPD9waHANCn0gPz4NCiAgICAgICAgICAgICAgICAgICAgICAgDQoJCQkJCSAgIHQycGwxbV9oNXMxcD0oczJuM2MvMWQ1dCkudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICAkKCcjdDJwbDFtLWg1czFwJykudjFsKHQycGwxbV9oNXMxcCk7DQoJCQkJCSAgDQogICAgICAgICAgICAgICAgICAgICAgJCgnI3A1cmQ1LWg1czFwJykuMWRkQ2wxc3MoJ3A1cmQ1LWg1czFwJyk7DQogICAgICAgICAgICAgICAgICAgICAgJCgnI3A1cmQ1LWg1czFwJykuMXBwNW5kKCc8P3BocCA1Y2gyICQ1bnRyeV81YjF0czJuM2M7ID8+IDxzcDFuIDRkPSJtNXRyNSI+JyArIG01dHI1ICsgJzwvc3Axbj4gbSwgPD9waHAgNWNoMiAkNW50cnlfczJuM2N0M3QxcjsgPz4gPHNwMW4gNGQ9ImY0eTF0Ij4nICsgczJuM2NhICsgJzwvc3Axbj4gPD9waHAgNWNoMiAkdGg0cy0+YzNycjVuY3ktPmc1dEMyZDUoKTsgPz4nKTsNCiAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICB9KTsNCgkJCSAgDQoJCQkgIA0KCQkJICANCgkJCSAgZjNuY3Q0Mm4gaDVzMXBsMTZhbzAoKXsNCgkJCSAgDQoJCQkgICQoJyNwNW5wJykudHI0Z2c1cigiY2gxbmc1Iik7DQoJCSAgfQ0KICAgICAgICAgICAgICANCgkJCS8vICBxMzFudDR0eSA9IHAxcnM1SW50KCQoIiM0bnAzdC1xMzFudDR0eSIpLnYxbCgpOw0KDQogICAgICAgICAgICAgICQoJyNwNW5wJykuY2gxbmc1KGYzbmN0NDJuICgpew0KICAgICAgICAgICAgICAgICAgdjFyIDVuID0gJCgnI3A1bnAnKS52MWwoKTsNCiAgICAgICAgICAgICAgICAgIHYxciBiMnkgPSAkKCcjcGIyeXAnKS52MWwoKTsNCiAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICA0ZiAoYjJ5ID4gMCl7DQogICAgICAgICAgICAgICAgICAgICAgdjFyIDFkNXQgPSBwMXJzNUludCgkKCIjNG5wM3QtcTMxbnQ0dHkiKS52MWwoKSk7DQogICAgICAgICAgICAgICAgICAgICAgbTV0cjU9ICg1bio2K2EwKS82MDAqMWQ1dDsNCgkJCQkJICBtNXRyNT1tNXRyNS50MkY0eDVkKGEpOw0KICAgICAgICAgICAgICAgICAgICAgICQoJyNwNXJkNS1oNXMxcCcpLmh0bWwoIiIpOw0KICAgICAgICAgICAgICAgICA8P3BocCA0ZiAoISRzcDVjNDFsKSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPSBtNXRyNSokKCIjZjR5MXR0dCIpLnYxbCgpOwkJCQkJCSAgDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPXMybjNjLnQyRjR4NWQoYSk7DQoJCQkJCQkgIHMybjNjYT0gbTV0cjUqJCgiI2Y0eTF0dHRhIikudjFsKCk7CQkJCQkJICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2NhPXMybjNjYS50MkY0eDVkKGEpOw0KICAgICAgICAgICAgICAgICAgICAgIDw/cGhwDQp9IDVsczUgeyA/Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zYz0gbTV0cjUqJCgiI2sxbXAxbnkxMTEiKS52MWwoKTsJDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPXMybjNjLnQyRjR4NWQoYSk7DQoJCQkJCQkgIHMybjNjYT0gbTV0cjUqJCgiI2sxbXAxbnkxMTFhIikudjFsKCk7CQ0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zY2E9czJuM2NhLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgPD9waHANCn0gPz4NCiAgICAgICAgICAgICAgICAgICAgICB0MnBsMW1faDVzMXA9KHMybjNjLzFkNXQpLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgJCgnI3QycGwxbS1oNXMxcCcpLnYxbCh0MnBsMW1faDVzMXApOw0KCQkJCQkgIDRmKCQoJyNwYjJ5cCcpLnYxbCgpPjApew0KCQkJCQkJCSQoJyNwNXJkNS1oNXMxcCcpLjFkZENsMXNzKCdwNXJkNS1oNXMxcCcpOw0KCQkJCQkJCSQoJyNwNXJkNS1oNXMxcCcpLjFwcDVuZCgnPD9waHAgNWNoMiAkNW50cnlfNWIxdHMybjNjOyA/PiA8c3AxbiA0ZD0ibTV0cjUiPicgKyBtNXRyNSArICc8L3NwMW4+IG0sIDw/cGhwIDVjaDIgJDVudHJ5X3MybjNjdDN0MXI7ID8+IDxzcDFuIDRkPSJmNHkxdCI+JyArIHMybjNjYSArICc8L3NwMW4+IDw/cGhwIDVjaDIgJHRoNHMtPmMzcnI1bmN5LT5nNXRDMmQ1KCk7ID8+Jyk7DQoJCQkJCSAgfQ0KICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgICAkKCcjcGIyeXAnKS5jaDFuZzUoZjNuY3Q0Mm4gKCl7DQogICAgICAgICAgICAgICAgICB2MXIgNW4gPSAkKCcjcDVucCcpLnYxbCgpOw0KICAgICAgICAgICAgICAgICAgdjFyIGIyeSA9ICQoJyNwYjJ5cCcpLnYxbCgpOw0KICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICA0ZiAoNW4gPiAwKXsNCiAgICAgICAgICAgICAgICAgICAgICB2MXIgMWQ1dCA9IHAxcnM1SW50KCQoIiM0bnAzdC1xMzFudDR0eSIpLnYxbCgpKTsNCiAgICAgICAgICAgICAgICAgICAgICBtNXRyNT0gKDVuKjYrYTApLzYwMCoxZDV0Ow0KCQkJCQkgIG01dHI1PW01dHI1LnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgJCgnI3A1cmQ1LWg1czFwJykuaHRtbCgiIik7DQogICAgICAgICAgICAgICAgPD9waHAgNGYgKCEkc3A1YzQxbCkgeyA/Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zYz0gbTV0cjUqJCgiI2Y0eTF0dHQiKS52MWwoKTsJCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zYz1zMm4zYy50MkY0eDVkKGEpOw0KCQkJCQkJICBzMm4zY2E9IG01dHI1KiQoIiNmNHkxdHR0YSIpLnYxbCgpOwkJCQkJCSAgDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjYT1zMm4zY2EudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KfSA1bHM1IHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9IG01dHI1KiQoIiNrMW1wMW55MTExIikudjFsKCk7CQ0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zYz1zMm4zYy50MkY0eDVkKGEpOw0KCQkJCQkJICBzMm4zY2E9IG01dHI1KiQoIiNrMW1wMW55MTExYSIpLnYxbCgpOwkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2NhPXMybjNjYS50MkY0eDVkKGEpOw0KICAgICAgICAgICAgICAgICAgICAgIDw/cGhwDQp9ID8+DQoJCQkJCSAgDQogICAgICAgICAgICAgICAgICAgICAgIHQycGwxbV9oNXMxcD0oczJuM2MvMWQ1dCkudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICAkKCcjdDJwbDFtLWg1czFwJykudjFsKHQycGwxbV9oNXMxcCk7DQogICAgICAgICAgICAgICAgICAgICAgDQoJCQkJCSAgNGYgKCQoJyNwNW5wJykudjFsKCk+MCl7DQoJCQkJCQkJJCgnI3A1cmQ1LWg1czFwJykuMWRkQ2wxc3MoJ3A1cmQ1LWg1czFwJyk7DQoJCQkJCQkJJCgnI3A1cmQ1LWg1czFwJykuMXBwNW5kKCc8P3BocCA1Y2gyICQ1bnRyeV81YjF0czJuM2M7ID8+IDxzcDFuIDRkPSJtNXRyNSI+JyArIG01dHI1ICsgJzwvc3Axbj4gbSwgPD9waHAgNWNoMiAkNW50cnlfczJuM2N0M3QxcjsgPz4gPHNwMW4gNGQ9ImY0eTF0Ij4nICsgczJuM2NhICsgJzwvc3Axbj4gPD9waHAgNWNoMiAkdGg0cy0+YzNycjVuY3ktPmc1dEMyZDUoKTsgPz4nKTsNCgkJCQkJICB9DQogICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgfSk7DQogICAgICAgICAgICAgICQoJyNwcDRsNScpLmNoMW5nNShmM25jdDQybiAoKXsNCiAgICAgICAgICAgICAgICAgIHYxciA1biA9ICQoJyNwNW4nKS52MWwoKTsNCiAgICAgICAgICAgICAgICAgIHYxciBiMnkgPSAkKCcjcGIyeScpLnYxbCgpOw0KICAgICAgICAgICAgICAgICAgdjFyIHA0bDUgPSAkKCcjcHA0bDUnKS52MWwoKTsNCiAgICAgICAgICAgICAgICAgIDRmICg1biA+IDApew0KICAgICAgICAgICAgICAgICAgICAgIHYxciAxZDV0ID0gcDFyczVJbnQoJCgiIzRucDN0LXEzMW50NHR5IikudjFsKCkpOw0KICAgICAgICAgICAgICAgICAgICAgIG01dHI1PSAoNW4qNipwNGw1K2EwKS82MDAqMWQ1dDsNCgkJCQkJICBtNXRyNT1tNXRyNS50MkY0eDVkKGEpOw0KICAgICAgICAgICAgICAgICAgICAgICQoJyNwNXJkNS1oNXMxcCcpLmh0bWwoIiIpOw0KICAgICAgICAgICAgICAgICAgPD9waHAgNGYgKCEkc3A1YzQxbCkgeyA/Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zYz0gbTV0cjUqJCgiI2Y0eTF0dHQiKS52MWwoKTsJCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zYz1zMm4zYy50MkY0eDVkKGEpOw0KCQkJCQkJICBzMm4zY2E9IG01dHI1KiQoIiNmNHkxdHR0YSIpLnYxbCgpOwkJCQkJCSAgDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjYT1zMm4zY2EudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KfSA1bHM1IHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9IG01dHI1KiQoIiNrMW1wMW55MTExIikudjFsKCk7CQ0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zYz1zMm4zYy50MkY0eDVkKGEpOw0KCQkJCQkJICBzMm4zY2E9IG01dHI1KiQoIiNrMW1wMW55MTExYSIpLnYxbCgpOwkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2NhPXMybjNjYS50MkY0eDVkKGEpOw0KICAgICAgICAgICAgICAgICAgICAgIDw/cGhwDQp9ID8+DQogICAgICAgICAgICAgICAgICAgICAgIA0KCQkJCQkgICB0MnBsMW1faDVzMXA9KHMybjNjLzFkNXQpLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgJCgnI3QycGwxbS1oNXMxcCcpLnYxbCh0MnBsMW1faDVzMXApOw0KCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgICQoJyNwNXJkNS1oNXMxcCcpLjFkZENsMXNzKCdwNXJkNS1oNXMxcCcpOw0KICAgICAgICAgICAgICAgICAgICAgICQoJyNwNXJkNS1oNXMxcCcpLjFwcDVuZCgnPD9waHAgNWNoMiAkNW50cnlfNWIxdHMybjNjOyA/PiA8c3AxbiA0ZD0ibTV0cjUiPicgKyBtNXRyNSArICc8L3NwMW4+IG0sIDw/cGhwIDVjaDIgJDVudHJ5X3MybjNjdDN0MXI7ID8+IDxzcDFuIDRkPSJmNHkxdCI+JyArIHMybjNjYSArICc8L3NwMW4+IDw/cGhwIDVjaDIgJHRoNHMtPmMzcnI1bmN5LT5nNXRDMmQ1KCk7ID8+Jyk7DQogICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgfSk7DQoJCQkgIA0KCQkJICANCgkJCSAgDQoJCQkgIA0KCQkJICAgZjNuY3Q0Mm4gaDVzMXBsMTZhb3UoKXsNCgkJCSAgDQoJCQkgICQoJyNwNWIxdCcpLnRyNGdnNXIoImNoMW5nNSIpOw0KCQkgIH0NCiAgICAgICAgICAgICAgDQoJCQkvLyAgcTMxbnQ0dHkgPSBwMXJzNUludCgkKCIjNG5wM3QtcTMxbnQ0dHkiKS52MWwoKTsNCg0KICAgICAgICAgICAgICAkKCcjcDViMXQnKS5jaDFuZzUoZjNuY3Q0Mm4gKCl7DQogICAgICAgICAgICAgICAgICB2MXIgNWIxdCA9ICQoJyNwNWIxdCcpLnYxbCgpOw0KDQogICAgICAgICAgICAgICAgICA0ZiAoNWIxdCA+IDApew0KICAgICAgICAgICAgICAgICAgICAgIHYxciAxZDV0ID0gcDFyczVJbnQoJCgiIzRucDN0LXEzMW50NHR5IikudjFsKCkpOw0KICAgICAgICAgICAgICAgICAgICAgIG01dHI1PSAoNWIxdCoxZDV0KTsNCiAgICAgICAgICAgICAgICAgICAgICAkKCcjcDVyZDUtaDVzMXAnKS5odG1sKCIiKTsNCiAgICAgICAgICAgICAgICAgIDw/cGhwIDRmICghJHNwNWM0MWwpIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9IG01dHI1KiQoIiNmNHkxdHR0IikudjFsKCk7CQkJCQkJICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjZjR5MXR0dGEiKS52MWwoKTsJCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICBzMm4zY2E9czJuM2NhLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgPD9waHANCn0gNWxzNSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjPSBtNXRyNSokKCIjazFtcDFueTExMSIpLnYxbCgpOwkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgczJuM2M9czJuM2MudDJGNHg1ZChhKTsNCgkJCQkJCSAgczJuM2NhPSBtNXRyNSokKCIjazFtcDFueTExMWEiKS52MWwoKTsJDQogICAgICAgICAgICAgICAgICAgICAgICAgIHMybjNjYT1zMm4zY2EudDJGNHg1ZChhKTsNCiAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KfSA/Pg0KICAgICAgICAgICAgICAgICAgICAgIA0KCQkJCQkgIA0KCQkJCQkgICB0MnBsMW1faDVzMXA9KHMybjNjLzFkNXQpLnQyRjR4NWQoYSk7DQogICAgICAgICAgICAgICAgICAgICAgJCgnI3QycGwxbS1oNXMxcCcpLnYxbCh0MnBsMW1faDVzMXApOw0KCQkJCQkgIA0KICAgICAgICAgICAgICAgICAgICAgICQoJyNwNXJkNS1oNXMxcCcpLjFkZENsMXNzKCdwNXJkNS1oNXMxcCcpOw0KICAgICAgICAgICAgICAgICAgICAgICQoJyNwNXJkNS1oNXMxcCcpLjFwcDVuZCgnPD9waHAgNWNoMiAkNW50cnlfNWIxdHMybjNjOyA/PiA8c3AxbiA0ZD0ibTV0cjUiPicgKyA1YjF0KjFkNXQgKyAnPC9zcDFuPiBtLCA8P3BocCA1Y2gyICQ1bnRyeV9zMm4zY3QzdDFyOyA/PiA8c3AxbiA0ZD0iZjR5MXQiPicgKyBzMm4zY2EgKyAnPC9zcDFuPiA8P3BocCA1Y2gyICR0aDRzLT5jM3JyNW5jeS0+ZzV0QzJkNSgpOyA/PicpOw0KICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgIH0pOw0KICAgICAgICAgIDwvc2NyNHB0Pg0KCQkNCgkJICA8P3BocCA0ZiAoJDJwdDQybnMpIHsgPz4NCiAgICA8c2NyNHB0Pg0KICAgICAgICBmM25jdDQybiBzMXlmMWwxKHMxeWYxLDRkLDRzbDVtKXsNCg0KICAgICAgICAgICAgdjFyIHMycmczPSAkKCI0bnAzdFt0eXA1PSdyMWQ0MiddW24xbTU9JzJwdDQyblsiKzRkKyJdJ106Y2g1Y2s1ZCIpLnYxbCgpOw0KCQkJCQ0KICAgICAgICAgICAgICAgIDRmICg0c2w1bSA9PSAnKycpIHsNCiAgICAgICAgICAgICAgICAgICAgNGYgKHMycmczPT0iIikgeyAkKCcjczVwNXQ1LTVrbDUnKS50cjRnZzVyKCdjbDRjaycpOyB9NWxzNSB7DQogICAgICAgICAgICAgICAgICAgICAgICAkKCcuMWQ0bScgKyBzMXlmMSkuaDRkNSgpOw0KICAgICAgICAgICAgICAgICAgICAgICAgJCgnLjFkNG0nICsgKHAxcnM1SW50KHMxeWYxKSArIDYpKS5zaDJ3KCk7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9IDVsczUgew0KICAgICAgICAgICAgICAgICAgICAkKCcuMWQ0bScgKyBzMXlmMSkuaDRkNSgpOw0KICAgICAgICAgICAgICAgICAgICAkKCcuMWQ0bScgKyAocDFyczVJbnQoczF5ZjEpIC0gNikpLnNoMncoKTsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgfQ0KDQogICAgPC9zY3I0cHQ+DQogICAgDQogICAgDQogICAgDQogICAgDQogICAgPGQ0diA0ZD0iZmJmMW5jeSIgc3R5bDU9ImQ0c3BsMXk6IG4ybjU7Ij4NCg0KDQogICAgPGQ0diA0ZD0iczVjNW41a2w1ciI+DQogICAgICA8ZDR2IDRkPSIycHQ0Mm5zIiBjbDFzcz0iMnB0NDJucyI+DQogICAgICAgIDw/cGhwICR4aiA9IDA7DQogICAgZjJyNTFjaCAoJDJwdDQybnMgMXMgJHMxeWYxKSB7DQogICAgICAgICRzMXlmMV9zMXlbXSA9ICRzMXlmMVsnczF5ZjEnXTsNCiAgICB9DQogICAgJHMxeWYxbDFuZDRybTEgPSBtMXgoJHMxeWYxX3MxeSk7DQogICAgJHMxeWYxbDFyID0gYzIzbnQoJDJwdDQybnMpOw0KICAgICRwMnAzcF8xY19uNXcgPSBmMWxzNTsNCiAgICBmMnI1MWNoICgkMnB0NDJucyAxcyAkMnB0NDJuKSB7DQogICAgICAgIDRmICgkMnB0NDJuWyJzMXlmMSJdID4gMCkgew0KICAgICAgICAgICAgJHAycDNwXzFjX241dyA9IHRyMzU7DQo/Pg0KICAgICAgICA8P3BocCA0ZiAoJDJwdDQyblsndHlwNSddID09ICdzNWw1Y3QnKSB7ID8+DQogICAgICAgIDxkNHYgNGQ9IjJwdDQybi08P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+IiBjbDFzcz0iMnB0NDJuIDJwdDQybi08P3BocCA1Y2gyICQycHQ0Mm5bJ3R5cDUnXTsgPz4iPg0KICAgICAgICAgIDw/cGhwIDRmICgkMnB0NDJuWydyNXEzNHI1ZCddKSB7ID8+DQogICAgICAgICAgPHNwMW4gY2wxc3M9InI1cTM0cjVkIj4qPC9zcDFuPg0KICAgICAgICAgIDw/cGhwDQogICAgICAgICAgICAgICAgfSA/Pg0KICAgICAgICAgIDxiPjw/cGhwIDVjaDIgJDJwdDQyblsnbjFtNSddOyA/Pjo8L2I+PGJyIC8+DQogICAgICAgICAgPHM1bDVjdCBjbDFzcz0iMWM0bDRyX2w0c3Q1bDVyIiBuMW01PSIycHQ0Mm5bPD9waHAgNWNoMiAkMnB0NDJuWydwcjJkM2N0XzJwdDQybl80ZCddOyA/Pl0iPg0KICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iIj48P3BocCA1Y2gyICR0NXh0X3M1bDVjdDsgPz48LzJwdDQybj4NCiAgICAgICAgICAgIDw/cGhwIGYycjUxY2ggKCQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuX3YxbDM1J10gMXMgJDJwdDQybl92MWwzNSkgeyA/Pg0KICAgICAgICAgICAgPDJwdDQybiB2MWwzNT0iPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WydwcjJkM2N0XzJwdDQybl92MWwzNV80ZCddOyA/PiIgZDF0MS00bTFnNT0iPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1Wyc0bTFnNSddOyA/PiI+PD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WyduMW01J107ID8+DQogICAgICAgICAgICA8P3BocCA0ZiAoJDJwdDQybl92MWwzNVsncHI0YzUnXSkgeyA/Pg0KICAgICAgICAgICAgKDw/cGhwIDVjaDIgJDJwdDQybl92MWwzNVsncHI0YzVfcHI1ZjR4J107ID8+PD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WydwcjRjNSddOyA/PikNCiAgICAgICAgICAgIDw/cGhwDQogICAgICAgICAgICAgICAgICAgIH0gPz4NCiAgICAgICAgICAgIDwvMnB0NDJuPg0KICAgICAgICAgICAgPD9waHANCiAgICAgICAgICAgICAgICB9ID8+DQogICAgICAgICAgPC9zNWw1Y3Q+DQogICAgICAgIDwvZDR2Pg0KDQogICAgICAgIDw/cGhwDQogICAgICAgICAgICB9ID8+DQogICAgICAgIDw/cGhwIDRmICgkMnB0NDJuWyd0eXA1J10gPT0gJ3IxZDQyJykgeyA/Pg0KICAgICAgICAgIDxkNHYgNGQ9IjJwdDQybi08P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+IiBkMXQxLXMxeWYxPSI8P3BocCA1Y2gyICQycHQ0Mm5bJ3MxeWYxJ107ID8+IiBjbDFzcz0iMnB0NDJuIDJwdDQybi08P3BocCA1Y2gyICQycHQ0Mm5bJ3R5cDUnXTsgPz4gIDFkNG08P3BocCA1Y2gyICQycHQ0Mm5bJ3MxeWYxJ107ID8+Ij4NCiAgICAgICAgICAgIA0KCQkJICANCiAgICAgICAgICAgICAgPGQ0diBzdHlsNT0iY2w1MXI6YjJ0aDsiPjwvZDR2Pg0KDQogICAgICAgICAgICAgIDxkNHYgc3R5bDU9Inc0ZHRoOjYwMCU7IHAxZGQ0bmctdDJwOmlweDsgbTFyZzRuLWIydHQybTo2MHB4OyBiMnJkNXItYjJ0dDJtOjZweCBkMXNoNWQgI2NjYzsiPg0KICAgICAgICAgICAgICAgICAgPHNwMW4gY2wxc3M9Imw0Z2h0eTF6NHNiIj48Yj48P3BocCA1Y2gyICQycHQ0Mm5bJ24xbTUnXTsgPz48L2I+PC9zcDFuPg0KICAgICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgIDwzbCA0ZD0iMnB0NDJuLXM1YyI+DQoNCiAgICAgICAgICA8P3BocCAkNHggPSA2Ow0KICAgICAgICAgICAgICAgIGYycjUxY2ggKCQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuX3YxbDM1J10gMXMgJDJwdDQybl92MWwzNSkgeyA/Pg0KICAgICAgICAgICAgICAgIDxsND4NCgkJCQkJPGQ0diBjbDFzcz0ibDRzdCI+DQoJCQkJCQk8bDFiNWwgZjJyPSIycHQ0Mm4tdjFsMzUtPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WydwcjJkM2N0XzJwdDQybl92MWwzNV80ZCddOyA/PiI+DQoJCQkJCQkgIDw0bWcgc3JjPSI8P3BocCA1Y2gyICQycHQ0Mm5fdjFsMzVbJzRtMWc1J107ID8+IiB3NGR0aD0iNjAwJSIgaDU0Z2h0PSI2MDAiIDFsdD0iPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WyduMW01J107ID8+IiAgc3R5bDU9Img1NGdodDogNjAwcHggISA0bXAycnQxbnQ7IG0xcmc0bi1iMnR0Mm06LWlweDsiIC8+DQoJCQkJCQk8L2wxYjVsPg0KCQkJCQk8L2Q0dj4NCgkJCQkJPGQ0diBjbDFzcz0ibDFiNWwtdDR0bDUiPg0KCQkJCQk8NG5wM3Qgc3R5bDU9ImZsMjF0OiBsNWZ0IiBkMXQxLXByNGM1PSIiIHR5cDU9InIxZDQyIiA8P3BocCA1Y2gyICgkNHggPT0gNikgPyAiY2g1Y2s1ZCIgOiAiIjsgPz4gbjFtNT0iMnB0NDJuWzw/cGhwIDVjaDIgJDJwdDQyblsncHIyZDNjdF8ycHQ0Mm5fNGQnXTsgPz5dIiB2MWwzNT0iPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WydwcjJkM2N0XzJwdDQybl92MWwzNV80ZCddOyA/PiIgZDF0MS00bTFnNT0iPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1Wyc0bTFnNSddOyA/PiIgNGQ9IjJwdDQybi12MWwzNS08P3BocCA1Y2gyICQycHQ0Mm5fdjFsMzVbJ3ByMmQzY3RfMnB0NDJuX3YxbDM1XzRkJ107ID8+IiAvPg0KICAgICAgICAgICAgICAgICAgIDxiPjw/cGhwIDVjaDIgJDJwdDQybl92MWwzNVsnbjFtNSddOyA/Pg0KICAgICAgICAgICAgICAgICAgICA8P3BocCA0ZiAoJDJwdDQybl92MWwzNVsncHI0YzUnXSkgeyA/Pg0KICAgICAgICAgICAgICAgICAgICAoPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WydwcjRjNV9wcjVmNHgnXTsgPz48P3BocCA1Y2gyICQycHQ0Mm5fdjFsMzVbJ3ByNGM1J107ID8+KQ0KICAgICAgICAgICAgICAgICAgICA8P3BocA0KICAgICAgICAgICAgICAgICAgICB9ID8+DQogICAgICAgICAgICAgICAgICAgIDwvYj4NCiAgICAgICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgPC9sND4NCiAgICAgICAgICA8P3BocCAkNHgrKzsNCiAgICAgICAgICAgICAgICAgICAgJHhqKys7DQogICAgICAgICAgICAgICAgfSA/Pg0KICAgICAgICAgICAgPC8zbD4NCgkJCTxkNHYgc3R5bDU9ImNsNTFyOmIydGg7Ij48L2Q0dj4NCgkJCSA8P3BocA0KICAgICAgICAgICAgICAgIDRmICgkMnB0NDJuWydzMXlmMV9iMXNsNGsnXSA9PSA2KSB7ID8+CQkJIA0KCQkJCTxkNHYgPg0KCQkJCQkgIDxkNHYgc3R5bDU9ImZsMjF0OnI0Z2h0O20xcmc0bi1sNWZ0OmlweDt3NGR0aDp1OSUiPg0KCQkJCQkJICA8P3BocCA0ZiAoJDJwdDQyblsnczF5ZjEnXSA9PSAkczF5ZjFsMW5kNHJtMSkgeyA/Pg0KCQkJCQkJICA8YjN0dDJuIDRkPSJzNXA1dDUtNWtsNSIgY2wxc3M9ImJ0bi01dnk1bGwydyIgbjFtNT0iUzVwNXQ1QXQiPjw/cGhwIDVjaDIgJDVudHJ5X3M1cDV0NTVrbDU7ID8+PC9iM3R0Mm4+ICAgICAgICAgICAgICAgICAgDQoJCQkJCQkgIDw/cGhwDQogICAgICAgICAgICAgICAgICAgIH0gNWxzNSB7ID8+DQoJCQkJCQkgIDxiM3R0Mm4gMm5jbDRjaz0iczF5ZjFsMSgnPD9waHAgNWNoMiAkMnB0NDJuWydzMXlmMSddOyA/PicsJzw/cGhwIDVjaDIgJDJwdDQyblsncHIyZDNjdF8ycHQ0Mm5fNGQnXTsgPz4nLCcrJyk7IiBuMW01PSJENXYxbUV0IiAgY2wxc3M9ImJ0bi01dnk1bGwydyI+PD9waHAgNWNoMiAkNW50cnlfZDV2MW07ID8+PC9iM3R0Mm4+DQoJCQkJCQkgIDw/cGhwDQogICAgICAgICAgICAgICAgICAgIH0gPz4NCgkJCQkJICA8L2Q0dj4NCgkJCQkJICA8P3BocCA0ZiAoJDJwdDQyblsnczF5ZjEnXSA+IDYpIHsgPz4NCgkJCQkJICA8ZDR2IHN0eWw1PSJmbDIxdDpyNGdodDt3NGR0aDp1OSUiPg0KCQkJCQkJICA8YjN0dDJuIDJuY2w0Y2s9InMxeWYxbDEoJzw/cGhwIDVjaDIgJDJwdDQyblsnczF5ZjEnXTsgPz4nLCc8P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+JywnLScpOyIgbjFtNT0iRzVyNEQybiIgIGNsMXNzPSJidG4tNXZibDM1Ij48P3BocCA1Y2gyICQ1bnRyeV9nNXI0ZDJuOyA/PjwvYjN0dDJuPg0KCQkJCQkgIDwvZDR2Pg0KCQkJCQkgIDw/cGhwDQogICAgICAgICAgICAgICAgICAgIH0gNWxzNSB7ID8+IA0KCQkJCQkgICA8ZDR2IHN0eWw1PSJmbDIxdDpyNGdodDt3NGR0aDp1OSUiPg0KCQkJCQkJICA8YjN0dDJuIDJuY2w0Y2s9IiQuZjFuY3liMnguY2wyczUoKTsiIG4xbTU9Ikc1cjREMm4iIDRkPSJHNXI0RDJuIiAgY2wxc3M9ImJ0bi01dmJsMzUiPjw/cGhwIDVjaDIgJDVudHJ5X2sxcDF0OyA/PjwvYjN0dDJuPg0KCQkJCQkgIDwvZDR2PgkJCQkJICAJCQkJCSANCgkJCQkJICA8P3BocA0KICAgICAgICAgICAgICAgICAgICB9ID8+DQoJCQkJPC9kNHY+DQoJCQkJICA8P3BocA0KICAgICAgICAgICAgICAgIH0gPz4NCiAgICAgICAgPC9kNHY+DQoNCiAgICAgICAgICA8P3BocA0KICAgICAgICAgICAgfSA/Pg0KICAgICAgICAgIA0KICAgICAgICAgIA0KICAgICAgICAgIA0KICAgICAgICA8P3BocCA0ZiAoJDJwdDQyblsndHlwNSddID09ICdjaDVja2IyeCcpIHsgPz4NCiAgICAgICAgPGQ0diA0ZD0iMnB0NDJuLTw/cGhwIDVjaDIgJDJwdDQyblsncHIyZDNjdF8ycHQ0Mm5fNGQnXTsgPz4iIGNsMXNzPSIycHQ0Mm4gMnB0NDJuLTw/cGhwIDVjaDIgJDJwdDQyblsndHlwNSddOyA/PiI+DQogICAgICAgICAgPD9waHAgNGYgKCQycHQ0Mm5bJ3I1cTM0cjVkJ10pIHsgPz4NCiAgICAgICAgICA8c3AxbiBjbDFzcz0icjVxMzRyNWQiPio8L3NwMW4+DQogICAgICAgICAgPD9waHANCiAgICAgICAgICAgICAgICB9ID8+DQogICAgICAgICAgPGI+PD9waHAgNWNoMiAkMnB0NDJuWyduMW01J107ID8+OjwvYj48YnIgLz4NCiAgICAgICAgICA8P3BocCBmMnI1MWNoICgkMnB0NDJuWydwcjJkM2N0XzJwdDQybl92MWwzNSddIDFzICQycHQ0Mm5fdjFsMzUpIHsgPz4NCiAgICAgICAgICA8NG5wM3QgdHlwNT0iY2g1Y2tiMngiIG4xbTU9IjJwdDQybls8P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+XVtdIiB2MWwzNT0iPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WydwcjJkM2N0XzJwdDQybl92MWwzNV80ZCddOyA/PiIgZDF0MS00bTFnNT0iPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1Wyc0bTFnNSddOyA/PiIgNGQ9IjJwdDQybi12MWwzNS08P3BocCA1Y2gyICQycHQ0Mm5fdjFsMzVbJ3ByMmQzY3RfMnB0NDJuX3YxbDM1XzRkJ107ID8+IiAvPg0KICAgICAgICAgIDxsMWI1bCBmMnI9IjJwdDQybi12MWwzNS08P3BocCA1Y2gyICQycHQ0Mm5fdjFsMzVbJ3ByMmQzY3RfMnB0NDJuX3YxbDM1XzRkJ107ID8+Ij48P3BocCA1Y2gyICQycHQ0Mm5fdjFsMzVbJ24xbTUnXTsgPz4NCiAgICAgICAgICAgIDw/cGhwIDRmICgkMnB0NDJuX3YxbDM1WydwcjRjNSddKSB7ID8+DQogICAgICAgICAgICAoPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WydwcjRjNV9wcjVmNHgnXTsgPz48P3BocCA1Y2gyICQycHQ0Mm5fdjFsMzVbJ3ByNGM1J107ID8+KQ0KICAgICAgICAgICAgPD9waHANCiAgICAgICAgICAgICAgICAgICAgfSA/Pg0KICAgICAgICAgIDwvbDFiNWw+DQogICAgICAgICAgPGJyIC8+DQogICAgICAgICAgPD9waHANCiAgICAgICAgICAgICAgICB9ID8+DQogICAgICAgIDwvZDR2Pg0KICAgICAgICA8YnIgLz4NCiAgICAgICAgPD9waHANCiAgICAgICAgICAgIH0gPz4NCiAgICAgICAgPD9waHAgNGYgKCQycHQ0Mm5bJ3R5cDUnXSA9PSAnNG0xZzUnKSB7ID8+DQogICAgICAgIDxkNHYgNGQ9IjJwdDQybi08P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+IiBjbDFzcz0iMnB0NDJuIDJwdDQybi08P3BocCA1Y2gyICQycHQ0Mm5bJ3R5cDUnXTsgPz4iPg0KICAgICAgICAgIDw/cGhwIDRmICgkMnB0NDJuWydyNXEzNHI1ZCddKSB7ID8+DQogICAgICAgICAgPHNwMW4gY2wxc3M9InI1cTM0cjVkIj4qPC9zcDFuPg0KICAgICAgICAgIDw/cGhwDQogICAgICAgICAgICAgICAgfSA/Pg0KICAgICAgICAgIDxiPjw/cGhwIDVjaDIgJDJwdDQyblsnbjFtNSddOyA/Pjo8L2I+PGJyIC8+DQogICAgICAgICAgPHQxYmw1IGNsMXNzPSIycHQ0Mm4tNG0xZzUiPg0KICAgICAgICAgICAgPD9waHAgJDR4ID0gNjsNCiAgICAgICAgICAgICAgICBmMnI1MWNoICgkMnB0NDJuWydwcjJkM2N0XzJwdDQybl92MWwzNSddIDFzICQycHQ0Mm5fdjFsMzUpIHsgPz4NCiAgICAgICAgICAgIDx0cj4NCiAgICAgICAgICAgICAgPHRkIHN0eWw1PSJ3NGR0aDogNnB4OyI+DQogICAgICAgICAgICAgICAgICA8NG5wM3QgdHlwNT0icjFkNDIiIG4xbTU9IjJwdDQybls8P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+XSIgICAgdjFsMzU9Ijw/cGhwIDVjaDIgJDJwdDQybl92MWwzNVsncHIyZDNjdF8ycHQ0Mm5fdjFsMzVfNGQnXTsgPz4iIDRkPSIycHQ0Mm4tdjFsMzUtPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WydwcjJkM2N0XzJwdDQybl92MWwzNV80ZCddOyA/PiIgLz48L3RkPg0KICAgICAgICAgICAgICA8dGQ+PGwxYjVsIGYycj0iMnB0NDJuLXYxbDM1LTw/cGhwIDVjaDIgJDJwdDQybl92MWwzNVsncHIyZDNjdF8ycHQ0Mm5fdjFsMzVfNGQnXTsgPz4iPjw0bWcgc3JjPSI8P3BocCA1Y2gyICQycHQ0Mm5fdjFsMzVbJzRtMWc1J107ID8+IiB3NGR0aD0iYWEwIiBoNTRnaHQ9IjYwMCIgMWx0PSI8P3BocCA1Y2gyICQycHQ0Mm5fdjFsMzVbJ24xbTUnXSAuICgkMnB0NDJuX3YxbDM1WydwcjRjNSddID8gJyAnIC4gJDJwdDQybl92MWwzNVsncHI0YzVfcHI1ZjR4J10gLiAkMnB0NDJuX3YxbDM1WydwcjRjNSddIDogJycpOyA/PiIgLz48L2wxYjVsPjwvdGQ+DQogICAgICAgICAgICAgIDx0ZD48bDFiNWwgZjJyPSIycHQ0Mm4tdjFsMzUtPD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WydwcjJkM2N0XzJwdDQybl92MWwzNV80ZCddOyA/PiI+PD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WyduMW01J107ID8+DQogICAgICAgICAgICAgICAgICA8P3BocCA0ZiAoJDJwdDQybl92MWwzNVsncHI0YzUnXSkgeyA/Pg0KICAgICAgICAgICAgICAgICAgKDw/cGhwIDVjaDIgJDJwdDQybl92MWwzNVsncHI0YzVfcHI1ZjR4J107ID8+PD9waHAgNWNoMiAkMnB0NDJuX3YxbDM1WydwcjRjNSddOyA/PikNCiAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgICAgICAgICAgICAgICAgIH0gPz4NCiAgICAgICAgICAgICAgICA8L2wxYjVsPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPD9waHAgJDR4Kys7DQogICAgICAgICAgICAgICAgfSA/Pg0KICAgICAgICAgIDwvdDFibDU+DQogICAgICAgIDwvZDR2Pg0KICAgICAgICA8YnIgLz4NCiAgICAgICAgPD9waHANCiAgICAgICAgICAgIH0gPz4NCiAgICAgICAgPD9waHAgNGYgKCQycHQ0Mm5bJ3R5cDUnXSA9PSAndDV4dCcpIHsgPz4NCiAgICAgICAgPGQ0diA0ZD0iMnB0NDJuLTw/cGhwIDVjaDIgJDJwdDQyblsncHIyZDNjdF8ycHQ0Mm5fNGQnXTsgPz4iIGNsMXNzPSIycHQ0Mm4iPg0KICAgICAgICAgIDw/cGhwIDRmICgkMnB0NDJuWydyNXEzNHI1ZCddKSB7ID8+DQogICAgICAgICAgPHNwMW4gY2wxc3M9InI1cTM0cjVkIj4qPC9zcDFuPg0KICAgICAgICAgIDw/cGhwDQogICAgICAgICAgICAgICAgfSA/Pg0KICAgICAgICAgIDxiPjw/cGhwIDVjaDIgJDJwdDQyblsnbjFtNSddOyA/Pjo8L2I+PGJyIC8+DQogICAgICAgICAgPDRucDN0IHR5cDU9InQ1eHQiIG4xbTU9IjJwdDQybls8P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+XSIgdjFsMzU9IiIgcGwxYzVoMmxkNXI9Ijw/cGhwIDVjaDIgJDJwdDQyblsncGwxYzVoMmxkNXInXTsgPz4iLz4NCiAgICAgICAgPC9kNHY+DQogICAgICAgIDxiciAvPg0KICAgICAgICA8P3BocA0KICAgICAgICAgICAgfSA/Pg0KICAgICAgICA8P3BocCA0ZiAoJDJwdDQyblsndHlwNSddID09ICd0NXh0MXI1MScpIHsgPz4NCiAgICAgICAgPGQ0diA0ZD0iMnB0NDJuLTw/cGhwIDVjaDIgJDJwdDQyblsncHIyZDNjdF8ycHQ0Mm5fNGQnXTsgPz4iIGNsMXNzPSIycHQ0Mm4iPg0KICAgICAgICAgIDw/cGhwIDRmICgkMnB0NDJuWydyNXEzNHI1ZCddKSB7ID8+DQogICAgICAgICAgPHNwMW4gY2wxc3M9InI1cTM0cjVkIj4qPC9zcDFuPg0KICAgICAgICAgIDw/cGhwDQogICAgICAgICAgICAgICAgfSA/Pg0KICAgICAgICAgIDxiPjw/cGhwIDVjaDIgJDJwdDQyblsnbjFtNSddOyA/Pjo8L2I+PGJyIC8+DQogICAgICAgICAgPHQ1eHQxcjUxIG4xbTU9IjJwdDQybls8P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+XSIgYzJscz0idTAiIHIyd3M9ImkiPjw/cGhwIDVjaDIgJDJwdDQyblsncHIyZDNjdF8ycHQ0Mm5fdjFsMzUnXTsgPz48L3Q1eHQxcjUxPg0KICAgICAgICA8L2Q0dj4NCiAgICAgICAgPGJyIC8+DQogICAgICAgIDw/cGhwDQogICAgICAgICAgICB9ID8+DQogICAgICAgIDw/cGhwIDRmICgkMnB0NDJuWyd0eXA1J10gPT0gJ2Y0bDUnKSB7ID8+DQogICAgICAgIDxkNHYgNGQ9IjJwdDQybi08P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+IiBjbDFzcz0iMnB0NDJuIj4NCiAgICAgICAgICA8P3BocCA0ZiAoJDJwdDQyblsncjVxMzRyNWQnXSkgeyA/Pg0KICAgICAgICAgIDxzcDFuIGNsMXNzPSJyNXEzNHI1ZCI+Kjwvc3Axbj4NCiAgICAgICAgICA8P3BocA0KICAgICAgICAgICAgICAgIH0gPz4NCiAgICAgICAgICA8Yj48P3BocCA1Y2gyICQycHQ0Mm5bJ24xbTUnXTsgPz46PC9iPjxiciAvPg0KICAgICAgICAgIDw0bnAzdCB0eXA1PSJiM3R0Mm4iIHYxbDM1PSI8P3BocCA1Y2gyICRiM3R0Mm5fM3BsMjFkOyA/PiIgNGQ9ImIzdHQybi0ycHQ0Mm4tPD9waHAgNWNoMiAkMnB0NDJuWydwcjJkM2N0XzJwdDQybl80ZCddOyA/PiIgY2wxc3M9ImIzdHQybiI+DQogICAgICAgICAgPDRucDN0IHR5cDU9Img0ZGQ1biIgbjFtNT0iMnB0NDJuWzw/cGhwIDVjaDIgJDJwdDQyblsncHIyZDNjdF8ycHQ0Mm5fNGQnXTsgPz5dIiB2MWwzNT0iIiAvPg0KICAgICAgICA8L2Q0dj4NCiAgICAgICAgPGJyIC8+DQogICAgICAgIDw/cGhwDQogICAgICAgICAgICB9ID8+DQogICAgICAgIDw/cGhwIDRmICgkMnB0NDJuWyd0eXA1J10gPT0gJ2QxdDUnKSB7ID8+DQogICAgICAgIDxkNHYgNGQ9IjJwdDQybi08P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+IiBjbDFzcz0iMnB0NDJuIj4NCiAgICAgICAgICA8P3BocCA0ZiAoJDJwdDQyblsncjVxMzRyNWQnXSkgeyA/Pg0KICAgICAgICAgIDxzcDFuIGNsMXNzPSJyNXEzNHI1ZCI+Kjwvc3Axbj4NCiAgICAgICAgICA8P3BocA0KICAgICAgICAgICAgICAgIH0gPz4NCiAgICAgICAgICA8Yj48P3BocCA1Y2gyICQycHQ0Mm5bJ24xbTUnXTsgPz46PC9iPjxiciAvPg0KICAgICAgICAgIDw0bnAzdCB0eXA1PSJ0NXh0IiBuMW01PSIycHQ0Mm5bPD9waHAgNWNoMiAkMnB0NDJuWydwcjJkM2N0XzJwdDQybl80ZCddOyA/Pl0iIHYxbDM1PSI8P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuX3YxbDM1J107ID8+IiBjbDFzcz0iZDF0NSIgLz4NCiAgICAgICAgPC9kNHY+DQogICAgICAgIDxiciAvPg0KICAgICAgICA8P3BocA0KICAgICAgICAgICAgfSA/Pg0KICAgICAgICA8P3BocCA0ZiAoJDJwdDQyblsndHlwNSddID09ICdkMXQ1dDRtNScpIHsgPz4NCiAgICAgICAgPGQ0diA0ZD0iMnB0NDJuLTw/cGhwIDVjaDIgJDJwdDQyblsncHIyZDNjdF8ycHQ0Mm5fNGQnXTsgPz4iIGNsMXNzPSIycHQ0Mm4iPg0KICAgICAgICAgIDw/cGhwIDRmICgkMnB0NDJuWydyNXEzNHI1ZCddKSB7ID8+DQogICAgICAgICAgPHNwMW4gY2wxc3M9InI1cTM0cjVkIj4qPC9zcDFuPg0KICAgICAgICAgIDw/cGhwDQogICAgICAgICAgICAgICAgfSA/Pg0KICAgICAgICAgIDxiPjw/cGhwIDVjaDIgJDJwdDQyblsnbjFtNSddOyA/Pjo8L2I+PGJyIC8+DQogICAgICAgICAgPDRucDN0IHR5cDU9InQ1eHQiIG4xbTU9IjJwdDQybls8P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+XSIgdjFsMzU9Ijw/cGhwIDVjaDIgJDJwdDQyblsncHIyZDNjdF8ycHQ0Mm5fdjFsMzUnXTsgPz4iIGNsMXNzPSJkMXQ1dDRtNSIgLz4NCiAgICAgICAgPC9kNHY+DQogICAgICAgIDxiciAvPg0KICAgICAgICA8P3BocA0KICAgICAgICAgICAgfSA/Pg0KICAgICAgICA8P3BocCA0ZiAoJDJwdDQyblsndHlwNSddID09ICd0NG01JykgeyA/Pg0KICAgICAgICA8ZDR2IDRkPSIycHQ0Mm4tPD9waHAgNWNoMiAkMnB0NDJuWydwcjJkM2N0XzJwdDQybl80ZCddOyA/PiIgY2wxc3M9IjJwdDQybiI+DQogICAgICAgICAgPD9waHAgNGYgKCQycHQ0Mm5bJ3I1cTM0cjVkJ10pIHsgPz4NCiAgICAgICAgICA8c3AxbiBjbDFzcz0icjVxMzRyNWQiPio8L3NwMW4+DQogICAgICAgICAgPD9waHANCiAgICAgICAgICAgICAgICB9ID8+DQogICAgICAgICAgPGI+PD9waHAgNWNoMiAkMnB0NDJuWyduMW01J107ID8+OjwvYj48YnIgLz4NCiAgICAgICAgICA8NG5wM3QgdHlwNT0idDV4dCIgbjFtNT0iMnB0NDJuWzw/cGhwIDVjaDIgJDJwdDQyblsncHIyZDNjdF8ycHQ0Mm5fNGQnXTsgPz5dIiB2MWwzNT0iPD9waHAgNWNoMiAkMnB0NDJuWydwcjJkM2N0XzJwdDQybl92MWwzNSddOyA/PiIgY2wxc3M9InQ0bTUiIC8+DQogICAgICAgIDwvZDR2Pg0KICAgICAgICA8YnIgLz4NCiAgICAgICAgPD9waHANCiAgICAgICAgICAgIH0gPz4NCiAgICAgICAgDQogICAgICAgIDw/cGhwDQogICAgICAgIH0gPz4NCiAgICAgICAgDQogICAgICAgIDw/cGhwDQogICAgfSA/Pg0KICAgICAgPC9kNHY+DQogICAgPC9kNHY+DQogIDwvZDR2Pg0KICAgICAgPD9waHANCn0gPz4NCgkJICAgPD9waHAgNGYgKCRyNWMzcnI0bmdzKSB7ID8+DQogICAgICAgICAgICA8aHI+DQogICAgICAgICAgICA8aG8+PD9waHAgNWNoMiAkdDV4dF9wMXltNW50X3I1YzNycjRuZyA/PjwvaG8+DQogICAgICAgICAgICA8ZDR2IGNsMXNzPSJmMnJtLWdyMjNwIHI1cTM0cjVkIj4NCiAgICAgICAgICAgICAgPHM1bDVjdCBuMW01PSJyNWMzcnI0bmdfNGQiIGNsMXNzPSJmMnJtLWMybnRyMmwiPg0KICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9IiI+PD9waHAgNWNoMiAkdDV4dF9zNWw1Y3Q7ID8+PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgPD9waHAgZjJyNTFjaCAoJHI1YzNycjRuZ3MgMXMgJHI1YzNycjRuZykgeyA/Pg0KICAgICAgICAgICAgICAgIDwycHQ0Mm4gdjFsMzU9Ijw/cGhwIDVjaDIgJHI1YzNycjRuZ1sncjVjM3JyNG5nXzRkJ10gPz4iPjw/cGhwIDVjaDIgJHI1YzNycjRuZ1snbjFtNSddID8+PC8ycHQ0Mm4+DQogICAgICAgICAgICAgICAgPD9waHANCiAgICB9ID8+DQogICAgICAgICAgICAgIDwvczVsNWN0Pg0KICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJoNWxwLWJsMmNrIiA0ZD0icjVjM3JyNG5nLWQ1c2NyNHB0NDJuIj48L2Q0dj4NCiAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgIDw/cGhwDQp9ID8+CQkNCg0KICANCgkJCQkgDQoNCg0KPGQ0diBjbDFzcz0icDVyZDUtaDVzMXAtMWwxbjQiIHN0eWw1PSJtMXgtaDU0Z2h0OmUwcHg7IG0xcmc0bi10MnA6LWVweDsiPg0KICAgICAgICAgICA8ZDR2IDRkPSJwNXJkNS1oNXMxcCIgc3R5bDU9Im0xcmc0bi1sNWZ0OjY3cHg7IG0xcmc0bi1yNGdodDo2N3B4OyBiMnJkNXItcjFkNDNzOmVweDsiPg0KCQkNCgkJPC9kNHY+PC9kNHY+DQoJCQ0KCQk8P3BocCA0ZiAoJDNyM25fdDRwID09ICJzdDJyIikgeyA/Pg0KCQkNCgkJIDxkNHYgc3R5bDU9InAxZGQ0bmctbDVmdDo2OHB4OyBwMWRkNG5nLXI0Z2h0OjY4cHg7IG0xcmc0bi10MnA6LWVweDsiPg0KCQkJCSAgDQoJCQkJICA8P3BocCA1Y2gyICQ1bnRyeV8ybGMzYjRsZzQ7ID8+DQo8L2Q0dj4NCgkJPD9waHAgfSA/Pg0KCQkgDQoJCSANCgkJPDRucDN0IDRkPSJzMXlmMS1uMiIgdjFsMzU9IjYiIHR5cDU9Img0ZGQ1biI+DQogICAgICAgICAgICA8ZDR2IHN0eWw1PSJtMXJnNG4tdDJwOi1lcHg7IiBjbDFzcz0iZjJybS1ncjIzcCBjMXJ0IDw/cGhwIDVjaDIgNHNzNXQoJGwxYjVscykgJiYgNHNfMXJyMXkoJGwxYjVscykgJiYgNHNzNXQoJGwxYjVsc1snMjN0MmZzdDJjayddKSA/ICcyM3QyZnN0MmNrJyA6ICcnOyA/PiI+DQogICAgICAgICAgICAgIDxkNHY+DQoJCQkgICAgICAgICAgICAgICAgPD9waHAgNGYgKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnaDRkNV8xZGRfdDJfYzFydF9iM3R0Mm4nKSk6ID8+DQogICAgICAgICAgICAgIDw/cGhwIGYycjUxY2ggKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnMWRkNHQ0Mm4xbF9wcjJkM2N0XzVucTM0cnknLCAxcnIxeSgpKSAxcyAkdDFiKTogPz4NCgkJCSAgPGQ0dj48P3BocCA1Y2gyICR0MWJbJ2MybnQ1bnQnXTsgPz48L2Q0dj4NCgkJCSAgPD9waHANCiAgICA1bmRmMnI1MWNoOyA/Pg0KCQkJICAgIDw0bnAzdCB0eXA1PSJoNGRkNW4iIG4xbTU9InByMmQzY3RfNGQiIHYxbDM1PSI8P3BocCA1Y2gyICRwcjJkM2N0XzRkOyA/PiIgLz4NCiAgICAgICAgICAgICAgPD9waHANCjVsczU6ID8+DQoJCQkgIA0KCQkJDQoJCQkNCgkJCQ0KCQkJDQoJCQkgPGQ0diA0ZD0ibTJiNGw1IiBzdHlsNT0ibTFyZzRuLWIydHQybTo2aXB4OyBjMmwycjojYW84QzAwOyI+DQoJCQkgPDNsIHN0eWw1PSJsNHN0LXN0eWw1LXR5cDU6bjJuNTsgbTFyZzRuLWw1ZnQ6MHB4OyBwMWRkNG5nLWw1ZnQ6NmlweDsiPg0KCQkJIA0KCQkJIDxsND48NCBjbDFzcz0iZjEgZjEtYzFsNW5kMXIiPjwvND4gPD9waHAgNWNoMiAkNW50cnlfNHNnM24zazFyZzI7ID8+PC9sND4NCgkJCSA8bDQgc3R5bDU9Im0xcmc0bi10MnA6N3B4OyI+PDQgY2wxc3M9ImYxcyBmMS1sMmNrIj48LzQ+IDw/cGhwIDVjaDIgJDVudHJ5X2czdjVubDQyZDVtNTsgPz48L2w0Pg0KCQkJIDxsNCBzdHlsNT0ibTFyZzRuLXQycDo3cHg7Ij48NCBjbDFzcz0iZjFzIGYxLWNyNWQ0dC1jMXJkIj48LzQ+IDw/cGhwIDVjaDIgJDVudHJ5X2tyNWQ0azFydDQ7ID8+PC9sND4NCgkJCSA8bDQgc3R5bDU9Im0xcmc0bi10MnA6N3B4OyI+PDQgY2wxc3M9ImYxcyBmMS1jaDVjay1jNHJjbDUiPjwvND4gPD9waHAgNWNoMiAkNW50cnlfaDF2MWw1NWZ0MmQ1bTU7ID8+PC9sND4NCgkJCSANCgkJCSA8LzNsPg0KCQkJIA0KCQkJIDwvZDR2Pg0KCQkJIA0KCQkJIA0KCQkJIA0KCQkJIDxkNHYgNGQ9Inc1YiIgc3R5bDU9ImZsMjF0OnI0Z2h0OyBtMXJnNG4tYjJ0dDJtOjZpcHg7IGMybDJyOiNhbzhDMDA7IHAxZGQ0bmctbDVmdDphMHB4OyBwMWRkNG5nLXI0Z2h0OmEwcHg7Ij48NCBjbDFzcz0iZjEgZjEtYzFsNW5kMXIiPjwvND4gPD9waHAgNWNoMiAkNW50cnlfNHNnM24zazFyZzI7ID8+PDQgY2wxc3M9ImYxcyBmMS1sMmNrIiBzdHlsNT0icDFkZDRuZy1sNWZ0OjYwcHg7Ij48LzQ+IDw/cGhwIDVjaDIgJDVudHJ5X2czdjVubDQyZDVtNTsgPz48NCBjbDFzcz0iZjFzIGYxLWNyNWQ0dC1jMXJkIiBzdHlsNT0icDFkZDRuZy1sNWZ0OjYwcHg7Ij48LzQ+IDw/cGhwIDVjaDIgJDVudHJ5X2tyNWQ0azFydDQ7ID8+PDQgY2wxc3M9ImYxcyBmMS1jaDVjay1jNHJjbDUiIHN0eWw1PSJwMWRkNG5nLWw1ZnQ6NjBweDsiPjwvND4gPD9waHAgNWNoMiAkNW50cnlfaDF2MWw1NWZ0MmQ1bTU7ID8+PC9kNHY+DQoNCgkJCSAgDQoJCQkgIA0KCQkJIDxzcDFuIHN0eWw1PSJkNHNwbDF5Om4ybjU7IiBjbDFzcz0icXR5Ij4NCiAgICAgICAgICAgICAgPGwxYjVsIGNsMXNzPSJjMm50cjJsLWwxYjVsIHQ1eHQtcXR5IiBmMnI9IjRucDN0LXEzMW50NHR5Ij48P3BocCA1Y2gyICQ1bnRyeV9xdHk7ID8+PC9sMWI1bD4NCiAgICAgICAgICAgICAgPDRucDN0IHR5cDU9InQ1eHQiIG4xbTU9InEzMW50NHR5IiB2MWwzNT0iPD9waHAgNWNoMiAkbTRuNG0zbTsgPz4iIHM0ejU9ImEiIGQxdDEtbTRuLXYxbDM1PSI8P3BocCA1Y2gyICRtNG40bTNtOyA/PiIgNGQ9IjRucDN0LXEzMW50NHR5IiBjbDFzcz0iZjJybS1jMm50cjJsIiAvPg0KICAgICAgICAgICAgICA8NG5wM3QgdHlwNT0iaDRkZDVuIiBuMW01PSJwcjJkM2N0XzRkIiB2MWwzNT0iPD9waHAgNWNoMiAkcHIyZDNjdF80ZDsgPz4iIC8+DQogICAgICAgICAgICAgIDxzY3I0cHQ+DQogLyogcTMxbnQ0dHkgYjN0dDJucyAqLw0KICAgICAgICAgICAgICAgIHYxciAkNG5wM3QgPSAkKCcuYzFydCA0bnAzdFtuMW01PSJxMzFudDR0eSJdJyk7DQogICAgICAgICAgICAgICAgZjNuY3Q0Mm4gM3AoKSB7DQogICAgICAgICAgICAgICAgICB2MXIgdjFsID0gcDFyczVJbnQoJDRucDN0LnYxbCgpLCA2MCkgKyA2IHx8IHAxcnM1SW50KCQ0bnAzdC4xdHRyKCdkMXQxLW00bi12MWwzNScpLCA2MCk7DQogICAgICAgICAgICAgICAgICAkNG5wM3QudjFsKHYxbCk7DQoJCQkJICBoNXMxcGwxNmFvKCk7DQoJCQkJICBoNXMxcGwxNmFvZSgpOw0KCQkJCSAgaDVzMXBsMTZhb2koKTsNCgkJCQkgIGg1czFwbDE2YW8wKCk7DQoJCQkJICBoNXMxcGwxNmFvdSgpOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICBmM25jdDQybiBkMnduKCkgew0KICAgICAgICAgICAgICAgICAgdjFyIHYxbCA9IHAxcnM1SW50KCQ0bnAzdC52MWwoKSwgNjApIC0gNiB8fCAwOw0KICAgICAgICAgICAgICAgICAgdjFyIG00biA9IHAxcnM1SW50KCQ0bnAzdC4xdHRyKCdkMXQxLW00bi12MWwzNScpLCA2MCkgfHwgNjsNCiAgICAgICAgICAgICAgICAgICQ0bnAzdC52MWwoTTF0aC5tMXgodjFsLCBtNG4pKTsNCgkJCQkgIGg1czFwbDE2YW8oKTsNCgkJCQkgIGg1czFwbDE2YW9lKCk7DQoJCQkJICBoNXMxcGwxNmFvaSgpOw0KCQkJCSAgaDVzMXBsMTZhbzAoKTsNCgkJCQkgIGg1czFwbDE2YW91KCk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICQoJzwxIGhyNWY9ImoxdjFzY3I0cHQ6OyIgY2wxc3M9ImoyM3JuMWwtc3Q1cHA1ciI+LTwvMT4nKS40bnM1cnRCNWYycjUoJDRucDN0KS5jbDRjayhkMnduKTsNCiAgICAgICAgICAgICAgICAkKCc8MSBocjVmPSJqMXYxc2NyNHB0OjsiIGNsMXNzPSJqMjNybjFsLXN0NXBwNXIiPis8LzE+JykuNG5zNXJ0QWZ0NXIoJDRucDN0KS5jbDRjaygzcCk7DQogICAgICAgICAgICAgICAgJDRucDN0Lms1eWQyd24oZjNuY3Q0Mm4gKDUpIHsNCiAgICAgICAgICAgICAgICAgIDRmICg1LndoNGNoID09PSBvOCkgew0KICAgICAgICAgICAgICAgICAgICAzcCgpOw0KICAgICAgICAgICAgICAgICAgICByNXQzcm4gZjFsczU7DQogICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICA0ZiAoNS53aDRjaCA9PT0gdTApIHsNCiAgICAgICAgICAgICAgICAgICAgZDJ3bigpOw0KICAgICAgICAgICAgICAgICAgICByNXQzcm4gZjFsczU7DQogICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfSk7DQogICAgICAgICAgICAgIDwvc2NyNHB0Pg0KPC9zcDFuPg0KDQoNCiAgICAgICAgICAgIDxiM3R0Mm4gdHlwNT0iYjN0dDJuIiAybmNsNGNrPSJwMnAzcF8xYygpIiA0ZD0iYjN0dDJuLWMxcnQiIGQxdDEtbDIxZDRuZy10NXh0PSI8P3BocCA1Y2gyICR0NXh0X2wyMWQ0bmc7ID8+IiBjbDFzcz0iYjN0dDJuIj48NG1nIHN0eWw1PSJoNTRnaHQ6YTdweDsgdzRkdGg6b2FweDsgcDFkZDRuZy1yNGdodDppcHg7IG0xcmc0bi1iMnR0Mm06LXVweDsiIHNyYz0iaHR0cHM6Ly93d3cucDVyZDVjNHguYzJtL2MxdDFsMmcvdjQ1dy90aDVtNS9kNWYxM2x0L3Q1bXBsMXQ1L3ByMmQzY3QvYzFydC1haS11OC5wbmciPjxzcDFuIGNsMXNzPSJiM3R0Mm4tYzFydC10NXh0Ij48P3BocCA1Y2gyICRiM3R0Mm5fYzFydDsgPz48L3NwMW4+PC9iM3R0Mm4+DQogICAgICAgICAgICAgICAgPD9waHANCjVuZDRmOyA/Pg0KICAgICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgDQoNCgkJCSAgDQoJCSAgIAkgICA8MSBjbDFzcz0iZjFuY3liMngiIGhyNWY9IiNmYmYxbmN5Ij48LzE+DQoJCQk8MSBjbDFzcz0iZjFuY3liMnh4IiBocjVmPSIjMWZ0NXItczF5ZjEiIHN0eWw1PSJkNHNwbDF5Om4ybjU7Ij48LzE+DQoJCQkNCgkJPGQ0diA0ZD0iMWZ0NXItczF5ZjEiIHN0eWw1PSJkNHNwbDF5OiBuMm41O2g1NGdodDogb2lweDsgdzRkdGg6IDYwMCU7IHAyczR0NDJuOiAxYnMybDN0NTsgYjJ0dDJtOiA2MHB4OyI+DQogICAgICAgICAgICA8MSAybmNsNGNrPSJ3NG5kMncubDJjMXQ0Mm4ucjVwbDFjNSgnNG5kNXgucGhwJykiIGNsMXNzPSJidG4tNXZibDM1IiBzdHlsNT0idzRkdGg6dWklO2ZsMjF0Omw1ZnQiPkFsJiNvMGk7JiNvaTY7djVyNCYjb2k2OzUgRDV2MW0gRXQ8LzE+DQogICAgICAgICAgICA8MSAybmNsNGNrPSJ3NG5kMncubDJjMXQ0Mm4ucjVwbDFjNSgnNG5kNXgucGhwP3IyM3Q1PWNoNWNrMjN0L2MxcnQnKSIgY2wxc3M9ImJ0bi01dnk1bGwydyIgc3R5bDU9Inc0ZHRoOnVpJTtmbDIxdDpsNWZ0Ij5TNXA1dDUgRzR0PC8xPg0KICAgICAgICA8L2Q0dj4NCiAgICAgICAgDQogICAgICAgICAgPHNjcjRwdD4NCiAgICAgICAgICBmM25jdDQybiBrMm50cjJsKCkgew0KICAgICAgICAgICAgICB2MXIgczVuID0gJCgnI3M1bicpLnYxbCgpOw0KICAgICAgICAgICAgICB2MXIgc2IyeSA9ICQoJyNzYjJ5JykudjFsKCk7DQoJCQkgIHYxciBqNW4gPSAkKCcjajVuNicpLnYxbCgpOw0KICAgICAgICAgICAgICB2MXIgamIyeTYgPSAkKCcjamIyeTYnKS52MWwoKTsNCiAgICAgICAgICAgICAgdjFyIDVuID0gJCgnI3A1bicpLnYxbCgpOw0KICAgICAgICAgICAgICB2MXIgYjJ5ID0gJCgnI3BiMnknKS52MWwoKTsNCgkJCSAgdjFyIDVuID0gJCgnI3A1bnAnKS52MWwoKTsNCiAgICAgICAgICAgICAgdjFyIGIyeSA9ICQoJyNwYjJ5cCcpLnYxbCgpOw0KICAgICAgICAgICAgICB2MXIgNWIxdCA9ICQoJyNwNWIxdCcpLnYxbCgpOw0KICAgICAgICAgICAgICANCgkJCQk0ZiAoczVuID09IDApIHsNCgkJCQkJMWw1cnQoIjw/cGhwIDVjaDIgJDVudHJ5XzN5MXI0NW47ID8+Iik7DQoJCQkJCXI1dDNybiBmMWxzNTsNCgkJCQl9DQoJCQkgIA0KCQkJCTRmIChzYjJ5ID09MCkgew0KICAgICAgICAgICAgICAgICAgICAxbDVydCgiPD9waHAgNWNoMiAkNW50cnlfM3kxcjRiMnk7ID8+Iik7DQogICAgICAgICAgICAgICAgICAgIHI1dDNybiBmMWxzNTsNCiAgICAgICAgICAgICAgICB9IA0KCQkJCQ0KCQkJCTRmIChqNW42ID09IDApIHsNCgkJCQkJMWw1cnQoIjw/cGhwIDVjaDIgJDVudHJ5XzN5MXI0NW47ID8+Iik7DQoJCQkJCXI1dDNybiBmMWxzNTsNCgkJCQl9DQoJCQkgIA0KCQkJCTRmIChqYjJ5NiA9PTApIHsNCiAgICAgICAgICAgICAgICAgICAgMWw1cnQoIjw/cGhwIDVjaDIgJDVudHJ5XzN5MXI0YjJ5OyA/PiIpOw0KICAgICAgICAgICAgICAgICAgICByNXQzcm4gZjFsczU7DQogICAgICAgICAgICAgICAgfSANCiAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDRmICg1bj09MCkgew0KICAgICAgICAgICAgICAgICAgICAxbDVydCgiPD9waHAgNWNoMiAkNW50cnlfM3kxcjQ1bjsgPz4iKTsNCiAgICAgICAgICAgICAgICAgICAgcjV0M3JuIGYxbHM1Ow0KICAgICAgICAgICAgICAgIH0gDQoJCQkJCSAgDQogICAgICAgICAgICAgICAgNGYgKGIyeSA9PTApIHsNCiAgICAgICAgICAgICAgICAgICAgMWw1cnQoIjw/cGhwIDVjaDIgJDVudHJ5XzN5MXI0YjJ5OyA/PiIpOw0KICAgICAgICAgICAgICAgICAgICByNXQzcm4gZjFsczU7DQogICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgNGYgKDViMXQgPCA2KSB7DQogICAgICAgICAgICAgICAgICAgIDFsNXJ0KCI8P3BocCA1Y2gyICQ1bnRyeV8zeTFyNDViMXQ7ID8+Iik7DQogICAgICAgICAgICAgICAgICAgIHI1dDNybiBmMWxzNTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAvKiAxZGRUMkMxcnQoJzw/cGhwIDVjaDIgJHByMmQzY3RfNGQ7ID8+Jyk7Ki8NCgkJCSAgIDFsNXJ0ICgiczVwNXQ1IDVrbDRjNW0uIGsyZDNtMyAxJiNhbzY7Iik7DQogICAgICAgICAgICAgDQogICAgICAgICAgfQ0KICAgICAgICAgIDwvc2NyNHB0Pg0KICAgICAgIA0KCQkgICA8L2Q0dj4NCgkJICANCiAgICAgICAgICAgIDw/cGhwIDRmICgkbTRuNG0zbSA+IDYpIHsgPz4NCiAgICAgICAgICAgIDxkNHYgY2wxc3M9IjFsNXJ0IDFsNXJ0LTRuZjIiPjw0IGNsMXNzPSJmMSBmMS00bmYyLWM0cmNsNSI+PC80PiA8P3BocCA1Y2gyICR0NXh0X200bjRtM207ID8+PC9kNHY+DQogICAgICAgICAgICA8P3BocA0KfSA/PjxkNHYgc3R5bDU9ImIxY2tncjIzbmQ6IzU1NTsgbTFyZzRuLXQycDotZXB4OyI+DQogICAgICAgICAgICA8ZDR2IGNsMXNzPSJ3NHNobDRzdC1jMm1wMXI1IiBzdHlsNT0ibTFyZzRuLWw1ZnQ6NjdweDsgbTFyZzRuLXI0Z2h0OjY3cHg7Ij4NCiAgICAgICAgICAgICAgPHNwMW4gY2wxc3M9Imw0bmtzIj4NCiAgICAgICAgICAgICAgICAgIDwxIDJuY2w0Y2s9IjFkZFQyVzRzaEw0c3QoJzw/cGhwIDVjaDIgJHByMmQzY3RfNGQ7ID8+Jyk7Ij48P3BocCA1Y2gyICRiM3R0Mm5fdzRzaGw0c3Q7ID8+PC8xPg0KICAgICAgICAgICAgICAgICAgPDEgMm5jbDRjaz0iMWRkVDJDMm1wMXI1KCc8P3BocCA1Y2gyICRwcjJkM2N0XzRkOyA/PicpOyI+PD9waHAgNWNoMiAkYjN0dDJuX2MybXAxcjU7ID8+PC8xPg0KICAgICAgICAgICAgICA8L3NwMW4+DQogICAgICAgICAgICA8L2Q0dj48L2Q0dj4NCgkJCTxkNHYgY2wxc3M9Im4ydDYiIHN0eWw1PSJtMXJnNG4tYjJ0dDJtOi1pcHg7IG0xcmc0bi10MnA6LWVweDsiPg0KCQkJIDxkNHYgY2wxc3M9Im4ydCIgc3R5bDU9Im0xcmc0bi1sNWZ0OmEwcHg7IG0xcmc0bi1yNGdodDotYTBweDsiPg0KICAgICAgICAgICAgPDNsIHN0eWw1PSJwMWRkNG5nLWw1ZnQ6YTBweDsgcDFkZDRuZy1yNGdodDp1MHB4OyBtMXJnNG4tdDJwOi02MHB4OyI+PGw0Pjw/cGhwIDVjaDIgJDVudHJ5XzFsdG4ydDY7ID8+PC9sND48bDQ+PD9waHAgNWNoMiAkNW50cnlfMWx0bjJ0YTsgPz48L2w0Pg0KICAgICAgICAgIDxsND48P3BocCA1Y2gyICQ1bnRyeV8xbHRuMnRvOyA/PjwvbDQ+DQoJCSAgDQoJCSAgPC8zbD4NCgkJICA8L2Q0dj4gPC9kNHY+DQoJCQkNCgkJCQ0KICAgICAgICAgIDw/cGhwIDRmICgkcjV2NDV3X3N0MXQzcykgeyA/Pg0KICAgICAgICAgIDwhLS08ZDR2IGNsMXNzPSJyMXQ0bmciPg0KICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgIDw/cGhwIGYyciAoJDQgPSA2OyQ0IDw9IGk7JDQrKykgeyA/Pg0KICAgICAgICAgICAgICA8P3BocCA0ZiAoJHIxdDRuZyA8ICQ0KSB7ID8+DQogICAgICAgICAgICAgIDxzcDFuIGNsMXNzPSJmMSBmMS1zdDFjayI+PDQgY2wxc3M9ImYxIGYxLXN0MXItMiBmMS1zdDFjay02eCI+PC80Pjwvc3Axbj4NCiAgICAgICAgICAgICAgPD9waHANCiAgICAgICAgfSA1bHM1IHsgPz4NCiAgICAgICAgICAgICAgPHNwMW4gY2wxc3M9ImYxIGYxLXN0MWNrIj48NCBjbDFzcz0iZjEgZjEtc3QxciBmMS1zdDFjay02eCI+PC80Pjw0IGNsMXNzPSJmMSBmMS1zdDFyLTIgZjEtc3QxY2stNngiPjwvND48L3NwMW4+DQogICAgICAgICAgICAgIDw/cGhwDQogICAgICAgIH0gPz4NCiAgICAgICAgICAgICAgPD9waHANCiAgICB9ID8+DQogICAgICAgICAgICAgIDwxIGhyNWY9IiIgMm5jbDRjaz0iJCgnMVtocjVmPVwnI3QxYi1yNXY0NXdcJ10nKS50cjRnZzVyKCdjbDRjaycpOyByNXQzcm4gZjFsczU7Ij48P3BocCA1Y2gyICRyNXY0NXdzOyA/PjwvMT4gLyA8MSBocjVmPSIiIDJuY2w0Y2s9IiQoJzFbaHI1Zj1cJyN0MWItcjV2NDV3XCddJykudHI0Z2c1cignY2w0Y2snKTsgcjV0M3JuIGYxbHM1OyI+PD9waHAgNWNoMiAkdDV4dF93cjR0NTsgPz48LzE+PC9wPg0KICAgICAgICAgIDwvZDR2Pi0tPg0KICAgICAgICAgIDw/cGhwDQp9ID8+DQogICAgICAgICAgICA8P3BocCA0ZiAoJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdzaDFyNV9iM3R0Mm5zX3N0MXQzcycpICYmICghSjIzcm4xbGFDMWNoNTo6JG0yYjRsNV9kNXQ1Y3QtPjRzTTJiNGw1KCkgfHwgKEoyM3JuMWxhQzFjaDU6OiRtMmI0bDVfZDV0NWN0LT40c00yYjRsNSgpICYmICEkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NoMXI1X2IzdHQybnNfZDRzMWJsNV8ybl9tMmI0bDUnLCA2KSkpICYmICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnc2gxcjVfYjN0dDJuc19wMnM0dDQybicpID09PSAncjRnaHQnICYmIGMyM250KCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnYzJuZjRnX3NoMXI1X2IzdHQybnMnLCAxcnIxeSgpKSkpOiA/Pg0KICAgICAgICAgICAgPGQ0diBzdHlsNT0iYjJyZDVyLWIydHQybS1yNGdodC1yMWQ0M3M6NmVweDsgYjJyZDVyLWIydHQybS1sNWZ0LXIxZDQzczo2ZXB4OyIgY2wxc3M9InMyYzQxbCBzaDFyNS10aDRzIDw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdzaDFyNV9iM3R0Mm5zX2Q0czFibDVfMm5fbTJiNGw1JywgNikgPyAnaDRkNS0ybi1tMmI0bDUnIDogJyc7ID8+Ij4NCiAgICAgICAgICAgICAgDQoJCQkgIA0KCQkJICA8ZDR2IGNsMXNzPSJzMmM0MWwtbDIxZDVkIiBzdHlsNT0ibTFyZzRuLWw1ZnQ6NjdweDsgbTFyZzRuLXI0Z2h0OmEwcHg7IG0xcmc0bi1iMnR0Mm06NmlweDsiPg0KICAgICAgICAgICAgICAgIDxzY3I0cHQgdHlwNT0idDV4dC9qMXYxc2NyNHB0Ij52MXIgc3c0dGNoVDJpeD10cjM1Ozwvc2NyNHB0Pg0KICAgICAgICAgICAgICAgIDxzY3I0cHQgdHlwNT0idDV4dC9qMXYxc2NyNHB0IiBzcmM9Imh0dHBzOi8vd3Muc2gxcjV0aDRzLmMybS9iM3R0Mm4vYjN0dDJucy5qcyI+PC9zY3I0cHQ+DQogICAgICAgICAgICAgICAgPHNjcjRwdCB0eXA1PSJ0NXh0L2oxdjFzY3I0cHQiPnN0TDRnaHQuMnB0NDJucyh7cDNibDRzaDVyOiAiPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NoMXI1X2IzdHQybnNfMWNjMjNudF9rNXknKTsgPz4iLCBkMk4ydEgxc2g6IHRyMzUsIGQyTjJ0QzJweTogdHIzNSwgaDFzaEFkZHI1c3NCMXI6IGYxbHM1fSk7PC9zY3I0cHQ+DQogICAgICAgICAgICAgICAgPD9waHAgZjJyNTFjaCAoJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdjMm5mNGdfc2gxcjVfYjN0dDJucycsIDFycjF5KCkpIDFzICQ0dDVtKTogPz4NCiAgICAgICAgICAgICAgICA8c3AxbiBjbDFzcz0iPD9waHAgNWNoMiAkNHQ1bVsnY2wxc3MnXSAuICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnc2gxcjVfYjN0dDJuc19zdHlsNScpOyA/PiIgZDRzcGwxeVQ1eHQ9Ijw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdzaDFyNV9iM3R0Mm5zX3N0eWw1JykgPyAkNHQ1bVsnbjFtNSddIDogJyc7ID8+Ij48L3NwMW4+DQogICAgICAgICAgICAgICAgPD9waHANCiAgICA1bmRmMnI1MWNoOyA/Pg0KICAgICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgPD9waHANCjVuZDRmOyA/Pg0KICAgICAgICAgICAgPD9waHAgZjJyNTFjaCAoJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCcxZGQ0dDQybjFsX3ByMmQzY3RfZDVzY3I0cHQ0Mm5fYjJ0dDJtJywgMXJyMXkoKSkgMXMgJHQxYik6ID8+DQogICAgICAgICAgICA8ZDR2IGNsMXNzPSJqMjNybjFsLWMzc3QybS10MWIiPg0KICAgICAgICAgICAgICA8P3BocCA0ZiAoJHQxYlsnaDFzXzRjMm4nXSk6ID8+DQogICAgICAgICAgICAgIDxkNHYgY2wxc3M9ImJsMmNrLTRjMm4gYmwyY2stNGMybi1sNWZ0IiBzdHlsNT0iPD9waHAgNWNoMiAkdDFiWyc0YzJuX2NzcyddOyA/PiI+PD9waHAgNWNoMiAkdDFiWyc0YzJuJ107ID8+PC9kNHY+DQogICAgICAgICAgICAgIDw/cGhwDQogICAgNW5kNGY7ID8+DQogICAgICAgICAgICAgIDw/cGhwIDRmICgkdDFiWyduMW01J10pOiA/Pg0KICAgICAgICAgICAgICA8aG8+PD9waHAgNWNoMiAkdDFiWyduMW01J107ID8+PC9obz4NCiAgICAgICAgICAgICAgPD9waHANCiAgICA1bmQ0ZjsgPz4NCiAgICAgICAgICAgICAgPD9waHAgNWNoMiAkdDFiWydjMm50NW50J107ID8+DQogICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgIDw/cGhwDQo1bmRmMnI1MWNoOyA/Pg0KICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgPC9kNHY+DQogICAgICA8P3BocCA0ZiAoJHQxZ3MpIHsgPz4NCiAgICAgIDxwIGNsMXNzPSJ0MWdzIj48Yj48P3BocCA1Y2gyICR0NXh0X3QxZ3M7ID8+PC9iPg0KICAgICAgICA8P3BocCBmMnIgKCQ0ID0gMDskNCA8IGMyM250KCR0MWdzKTskNCsrKSB7ID8+DQogICAgICAgIDw/cGhwIDRmICgkNCA8IChjMjNudCgkdDFncykgLSA2KSkgeyA/Pg0KICAgICAgICA8MSBocjVmPSI8P3BocCA1Y2gyICR0MWdzWyQ0XVsnaHI1ZiddOyA/PiI+PD9waHAgNWNoMiAkdDFnc1skNF1bJ3QxZyddOyA/PjwvMT4sDQogICAgICAgIDw/cGhwDQogICAgICAgIH0gNWxzNSB7ID8+DQogICAgICAgIDwxIGhyNWY9Ijw/cGhwIDVjaDIgJHQxZ3NbJDRdWydocjVmJ107ID8+Ij48P3BocCA1Y2gyICR0MWdzWyQ0XVsndDFnJ107ID8+PC8xPg0KICAgICAgICA8P3BocA0KICAgICAgICB9ID8+DQogICAgICAgIDw/cGhwDQogICAgfSA/Pg0KICAgICAgPC9wPg0KICAgICAgPD9waHANCn0gPz4NCiAgICAgIDw/cGhwIDRmICgkcHIyZDNjdHMgJiYgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdyNWwxdDVkX3ByMmQzY3RzX3N0MXQzcycpKSB7ID8+DQogICAgICA8ZDR2IGNsMXNzPSJiMnggcjVsMXQ1ZC1wcjJkM2N0cyA8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncjVsMXQ1ZF9wcjJkM2N0c19jMXIyM3M1bCcpID8gJ2oyM3JuMWwtYzFyMjNzNWwnIDogJyc7ID8+IDw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdyNWwxdDVkX3ByMmQzY3RzX2MxcjIzczVsJykgJiYgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdyNWwxdDVkX3ByMmQzY3RzX2MxcjIzczVsXzFycjJ3cycpID09PSAndDJwJyA/ICcxcnIyd3MtdDJwJyA6ICcnOyA/PiA8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncjVsMXQ1ZF9wcjJkM2N0c19jMXIyM3M1bCcpICYmICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncjVsMXQ1ZF9wcjJkM2N0c19jMXIyM3M1bF9iM2xsNXRzJykgPyAnYjNsbDV0cy0ybicgOiAnJzsgPz4iPg0KICAgICAgICA8ZDR2Pg0KICAgICAgICAgIDxkNHYgY2wxc3M9ImIyeC1oNTFkNG5nIj48P3BocCA1Y2gyICR0NXh0X3I1bDF0NWQ7ID8+PC9kNHY+DQogICAgICAgICAgPGQ0diBjbDFzcz0iYjJ4LXByMmQzY3QgYjJ4LWMybnQ1bnQiPg0KICAgICAgICAgIDw/cGhwIDRmICgkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3I1bDF0NWRfcHIyZDNjdHNfYzFyMjNzNWwnKSk6ID8+DQogICAgICAgICAgPGQ0diBjbDFzcz0ic3c0cDVyIj4NCiAgICAgICAgICA8ZDR2IGNsMXNzPSJzdzRwNXItYzJudDE0bjVyIiA8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncnRsJykgPyAnZDRyPSJydGwiJyA6ICcnOyA/Pj4NCiAgICAgICAgICA8ZDR2IGNsMXNzPSJzdzRwNXItd3IxcHA1ciI+DQogICAgICAgICAgPD9waHANCiAgICA1bmQ0ZjsgPz4NCiAgICAgICAgICAgIDw/cGhwIGYycjUxY2ggKCRwcjJkM2N0cyAxcyAkcHIyZDNjdCkgeyA/Pg0KICAgICAgICAgICAgPGQ0diBjbDFzcz0icHIyZDNjdC1ncjRkLTR0NW0gc3c0cDVyLXNsNGQ1IDw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdyNWwxdDVkX3ByMmQzY3RzX2dyNGRfY2wxc3M1cycpOyA/PiBkNHNwbDF5LTw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdwcjJkM2N0X2dyNGRfdzRzaGw0c3RfNGMybl9kNHNwbDF5Jyk7ID8+IDw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdwcjJkM2N0X2dyNGRfYjN0dDJuX2JsMmNrX2IzdHQybicpOyA/PiI+DQogICAgICAgICAgICAgIDxkNHYgY2wxc3M9InByMmQzY3QtdGgzbWIgcHIyZDNjdC13cjFwcDVyIDw/cGhwIDVjaDIgNHNzNXQoJHByMmQzY3RbJ2wxYjVscyddKSAmJiA0c18xcnIxeSgkcHIyZDNjdFsnbDFiNWxzJ10pICYmIDRzczV0KCRwcjJkM2N0WydsMWI1bHMnXVsnMjN0MmZzdDJjayddKSA/ICcyM3QyZnN0MmNrJyA6ICcnOyA/PiI+DQogICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0iNG0xZzUgPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NoMndfYzIzbnRkMnduJywgJ241djVyJykgIT09ICduNXY1cicgJiYgNHNzNXQoJHByMmQzY3RbJ2QxdDVfNW5kJ10pICYmICRwcjJkM2N0WydkMXQ1XzVuZCddID8gJ2gxcy1jMjNudGQyd24nIDogJyc7ID8+Ij4NCiAgICAgICAgICAgICAgICAgIDwxIGhyNWY9Ijw/cGhwIDVjaDIgJHByMmQzY3RbJ2hyNWYnXTsgPz4iIDw/cGhwIDRmICg0c3M1dCgkcHIyZDNjdFsndGgzbWJhJ10pICYmICRwcjJkM2N0Wyd0aDNtYmEnXSk6ID8+IGNsMXNzPSJoMXMtczVjMm5kLTRtMWc1IiBzdHlsNT0iYjFja2dyMjNuZDogM3JsKCc8P3BocCA1Y2gyICRwcjJkM2N0Wyd0aDNtYmEnXTsgPz4nKSBuMi1yNXA1MXQ7IiA8P3BocA0KICAgICAgICA1bmQ0ZjsgPz4+DQogICAgICAgICAgICAgICAgICA8NG1nIGNsMXNzPSJmNHJzdC00bTFnNSIgc3JjPSI8P3BocCA1Y2gyICRwcjJkM2N0Wyd0aDNtYiddOyA/PiIgdDR0bDU9Ijw/cGhwIDVjaDIgJHByMmQzY3RbJ24xbTUnXTsgPz4iIDFsdD0iPD9waHAgNWNoMiAkcHIyZDNjdFsnbjFtNSddOyA/PiIgLz4NCiAgICAgICAgICAgICAgICAgIDwvMT4NCiAgICAgICAgICAgICAgICAgIDw/cGhwIDRmICg0c3M1dCgkcHIyZDNjdFsnbDFiNWxzJ10pICYmIDRzXzFycjF5KCRwcjJkM2N0WydsMWI1bHMnXSkpOiA/Pg0KICAgICAgICAgICAgICAgICAgPD9waHAgZjJyNTFjaCAoJHByMmQzY3RbJ2wxYjVscyddIDFzICRsMWI1bCA9PiAkbjFtNSk6ID8+DQogICAgICAgICAgICAgICAgICA8c3AxbiBjbDFzcz0ibDFiNWwtPD9waHAgNWNoMiAkbDFiNWw7ID8+Ij48Yj48P3BocCA1Y2gyICRuMW01OyA/PjwvYj48L3NwMW4+DQogICAgICAgICAgICAgICAgICA8P3BocA0KICAgICAgICAgICAgNW5kZjJyNTFjaDsgPz4NCiAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgICAgIDVuZDRmOyA/Pg0KICAgICAgICAgICAgICAgICAgPD9waHAgNGYgKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9ncjRkX3c0c2hsNHN0XzRjMm5fcDJzNHQ0Mm4nKSA9PT0gJzRtMWc1JyAmJiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3ByMmQzY3RfZ3I0ZF93NHNobDRzdF80YzJuX2Q0c3BsMXknLCAnJykgPT09ICc0YzJuJyk6ID8+DQogICAgICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJ3NHNobDRzdCI+PDEgMm5jbDRjaz0icDJwM3BfMWMoKSIgY2wxc3M9Img0bnQtLXQycCIgZDF0MS1oNG50PSI8P3BocCA1Y2gyICRiM3R0Mm5fdzRzaGw0c3Q7ID8+Ij48NCBjbDFzcz0idzRzaGw0c3QtNGMybiI+PC80PjxzcDFuIGNsMXNzPSJiM3R0Mm4tdzRzaGw0c3QtdDV4dCI+PD9waHAgNWNoMiAkYjN0dDJuX3c0c2hsNHN0OyA/Pjwvc3Axbj48LzE+PC9kNHY+DQogICAgICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJjMm1wMXI1Ij48MSAybmNsNGNrPSIxZGRUMkMybXAxcjUoJzw/cGhwIDVjaDIgJHByMmQzY3RbJ3ByMmQzY3RfNGQnXTsgPz4nKTsiIGNsMXNzPSJoNG50LS10MnAiIGQxdDEtaDRudD0iPD9waHAgNWNoMiAkYjN0dDJuX2MybXAxcjU7ID8+Ij48NCBjbDFzcz0iYzJtcDFyNS00YzJuIj48LzQ+PHNwMW4gY2wxc3M9ImIzdHQybi1jMm1wMXI1LXQ1eHQiPjw/cGhwIDVjaDIgJGIzdHQybl9jMm1wMXI1OyA/Pjwvc3Axbj48LzE+PC9kNHY+DQogICAgICAgICAgICAgICAgICA8P3BocA0KICAgICAgICA1bmQ0ZjsgPz4NCiAgICAgICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJwcjJkM2N0LWQ1dDE0bHMiPg0KICAgICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0iYzFwdDQybiI+DQogICAgICAgICAgICAgICAgICAgIDxodSBjbDFzcz0ibjFtNSI+PDEgaHI1Zj0iPD9waHAgNWNoMiAkcHIyZDNjdFsnaHI1ZiddOyA/PiI+PD9waHAgNWNoMiAkcHIyZDNjdFsnbjFtNSddOyA/PjwvMT48L2h1Pg0KICAgICAgICAgICAgICAgICAgICA8cCBjbDFzcz0iZDVzY3I0cHQ0Mm4iPjw/cGhwIDVjaDIgJHByMmQzY3RbJ2Q1c2NyNHB0NDJuJ107ID8+PC9wPg0KICAgICAgICAgICAgICAgICAgICA8P3BocCA0ZiAoJHByMmQzY3RbJ3IxdDRuZyddKSB7ID8+DQogICAgICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9InIxdDRuZyI+DQogICAgICAgICAgICAgICAgICAgICAgPD9waHAgZjJyICgkNCA9IDY7JDQgPD0gaTskNCsrKSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgPD9waHAgNGYgKCRwcjJkM2N0WydyMXQ0bmcnXSA8ICQ0KSB7ID8+DQogICAgICAgICAgICAgICAgICAgICAgPHNwMW4gY2wxc3M9ImYxIGYxLXN0MWNrIj48NCBjbDFzcz0iZjEgZjEtc3Qxci0yIGYxLXN0MWNrLWF4Ij48LzQ+PC9zcDFuPg0KICAgICAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgICAgICAgICAgICAgfSA1bHM1IHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICA8c3AxbiBjbDFzcz0iZjEgZjEtc3QxY2siPjw0IGNsMXNzPSJmMSBmMS1zdDFyIGYxLXN0MWNrLWF4Ij48LzQ+PDQgY2wxc3M9ImYxIGYxLXN0MXItMiBmMS1zdDFjay1heCI+PC80Pjwvc3Axbj4NCiAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KICAgICAgICAgICAgICAgIH0gPz4NCiAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KICAgICAgICAgICAgfSA/Pg0KICAgICAgICAgICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgICAgICAgICAgPD9waHANCiAgICAgICAgfSA/Pg0KICAgICAgICAgICAgICAgICAgICA8P3BocCA0ZiAoJHByMmQzY3RbJ3ByNGM1J10pIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgPHAgY2wxc3M9InByNGM1Ij4NCiAgICAgICAgICAgICAgICAgICAgICA8P3BocCA0ZiAoISRwcjJkM2N0WydzcDVjNDFsJ10pIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICA8P3BocCA1Y2gyICRwcjJkM2N0WydwcjRjNSddOyA/Pg0KICAgICAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgICAgICAgICB9IDVsczUgeyA/Pg0KICAgICAgICAgICAgICAgICAgICAgIDxzcDFuIGNsMXNzPSJwcjRjNS0ybGQiPjw/cGhwIDVjaDIgJHByMmQzY3RbJ3ByNGM1J107ID8+PC9zcDFuPiA8c3AxbiBjbDFzcz0icHI0YzUtbjV3IiA8P3BocCA1Y2gyIDRzczV0KCRwcjJkM2N0WydkMXQ1XzVuZCddKSAmJiAkcHIyZDNjdFsnZDF0NV81bmQnXSA/ICJkMXQxLTVuZC1kMXQ1PSd7JHByMmQzY3RbJ2QxdDVfNW5kJ119JyIgOiAiIjsgPz4+PD9waHAgNWNoMiAkcHIyZDNjdFsnc3A1YzQxbCddOyA/Pjwvc3Axbj4NCiAgICAgICAgICAgICAgICAgICAgICA8P3BocA0KICAgICAgICAgICAgfSA/Pg0KICAgICAgICAgICAgICAgICAgICAgIDw/cGhwIDRmICgkcHIyZDNjdFsndDF4J10pIHsgPz4NCiAgICAgICAgICAgICAgICAgICAgICA8c3AxbiBjbDFzcz0icHI0YzUtdDF4Ij48P3BocCA1Y2gyICR0NXh0X3QxeDsgPz4gPD9waHAgNWNoMiAkcHIyZDNjdFsndDF4J107ID8+PC9zcDFuPg0KICAgICAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgICAgICAgICB9ID8+DQogICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgPD9waHANCiAgICAgICAgfSA/Pg0KICAgICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJiM3R0Mm4tZ3IyM3AiPg0KICAgICAgICAgICAgICAgICAgICA8P3BocCA0ZiAoSjIzcm4xbGFVdDRsczo6NHNFbnEzNHJ5UHIyZDNjdCgkdGg0cywgJHByMmQzY3QpKTogPz4NCiAgICAgICAgICAgICAgICAgICAgPGQ0diBjbDFzcz0iYzFydCA1bnEzNHJ5LWIzdHQybiI+DQogICAgICAgICAgICAgICAgICAgICAgPDEgaHI1Zj0iajF2MXNjcjRwdDpKMjNybjFsLjJwNW5QMnAzcCgnPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJzVucTM0cnlfcDJwM3BfYzJkNScpOyA/PicsICc8P3BocCA1Y2gyICRwcjJkM2N0WydwcjJkM2N0XzRkJ107ID8+Jyk7IiBkMXQxLWNsaz0iMWRkVDJDMXJ0KCc8P3BocCA1Y2gyICRwcjJkM2N0WydwcjJkM2N0XzRkJ107ID8+Jyk7IiBjbDFzcz0iYjN0dDJuIGg0bnQtLXQycCIgZDF0MS1oNG50PSI8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnNW5xMzRyeV9iM3R0Mm5fdDV4dCcpOyA/PiI+PD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJzVucTM0cnlfYjN0dDJuXzRjMm4nKSAuICc8c3AxbiBjbDFzcz0iYjN0dDJuLWMxcnQtdDV4dCI+JyAuICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnNW5xMzRyeV9iM3R0Mm5fdDV4dCcpIC4gJzwvc3Axbj4nOyA/PjwvMT4NCiAgICAgICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgICAgIDVsczU6ID8+DQogICAgICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9ImMxcnQgPD9waHAgNWNoMiA0c3M1dCgkcHIyZDNjdFsnbDFiNWxzJ10pICYmIDRzXzFycjF5KCRwcjJkM2N0WydsMWI1bHMnXSkgJiYgNHNzNXQoJHByMmQzY3RbJ2wxYjVscyddWycyM3QyZnN0MmNrJ10pID8gJzIzdDJmc3QyY2snIDogJyc7ID8+Ij4NCiAgICAgICAgICAgICAgICAgICAgICA8MSAybmNsNGNrPSIxZGRUMkMxcnQoJzw/cGhwIDVjaDIgJHByMmQzY3RbJ3ByMmQzY3RfNGQnXTsgPz4nKTsiIGNsMXNzPSJiM3R0Mm4gaDRudC0tdDJwIiBkMXQxLWg0bnQ9Ijw/cGhwIDVjaDIgJGIzdHQybl9jMXJ0OyA/PiI+PDQgY2wxc3M9ImIzdHQybi1sNWZ0LTRjMm4iPjwvND48c3AxbiBjbDFzcz0iYjN0dDJuLWMxcnQtdDV4dCI+PD9waHAgNWNoMiAkYjN0dDJuX2MxcnQ7ID8+PC9zcDFuPjw0IGNsMXNzPSJiM3R0Mm4tcjRnaHQtNGMybiI+PC80PjwvMT4NCiAgICAgICAgICAgICAgICAgICAgPC9kNHY+DQogICAgICAgICAgICAgICAgICAgIDw/cGhwDQogICAgICAgIDVuZDRmOyA/Pg0KICAgICAgICAgICAgICAgICAgICA8ZDR2IGNsMXNzPSJ3NHNobDRzdCI+PDEgMm5jbDRjaz0iMWRkVDJXNHNoTDRzdCgnPD9waHAgNWNoMiAkcHIyZDNjdFsncHIyZDNjdF80ZCddOyA/PicpOyIgY2wxc3M9Img0bnQtLXQycCIgZDF0MS1oNG50PSI8P3BocCA1Y2gyICRiM3R0Mm5fdzRzaGw0c3Q7ID8+Ij48NCBjbDFzcz0idzRzaGw0c3QtNGMybiI+PC80PjxzcDFuIGNsMXNzPSJiM3R0Mm4tdzRzaGw0c3QtdDV4dCI+PD9waHAgNWNoMiAkYjN0dDJuX3c0c2hsNHN0OyA/Pjwvc3Axbj48LzE+PC9kNHY+DQogICAgICAgICAgICAgICAgICAgIDxkNHYgY2wxc3M9ImMybXAxcjUiPjwxIDJuY2w0Y2s9IjFkZFQyQzJtcDFyNSgnPD9waHAgNWNoMiAkcHIyZDNjdFsncHIyZDNjdF80ZCddOyA/PicpOyIgY2wxc3M9Img0bnQtLXQycCIgZDF0MS1oNG50PSI8P3BocCA1Y2gyICRiM3R0Mm5fYzJtcDFyNTsgPz4iPjw0IGNsMXNzPSJjMm1wMXI1LTRjMm4iPjwvND48c3AxbiBjbDFzcz0iYjN0dDJuLWMybXAxcjUtdDV4dCI+PD9waHAgNWNoMiAkYjN0dDJuX2MybXAxcjU7ID8+PC9zcDFuPjwvMT48L2Q0dj4NCiAgICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICAgIDwvZDR2Pg0KICAgICAgICAgICAgPD9waHANCiAgICB9ID8+DQogICAgICAgICAgPC9kNHY+DQogICAgICAgICAgPC9kNHY+DQogICAgICAgICAgPD9waHAgNGYgKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncjVsMXQ1ZF9wcjJkM2N0c19jMXIyM3M1bCcpICYmICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncjVsMXQ1ZF9wcjJkM2N0c19jMXIyM3M1bF8xcnIyd3MnKSAhPT0gJ24ybjUnKTogPz4NCiAgICAgICAgICA8ZDR2IGNsMXNzPSJzdzRwNXItYjN0dDJuLW41eHQiPjwvZDR2Pg0KICAgICAgICAgIDxkNHYgY2wxc3M9InN3NHA1ci1iM3R0Mm4tcHI1diI+PC9kNHY+DQogICAgICAgICAgPD9waHANCiAgICA1bmQ0ZjsgPz4NCiAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgICA8P3BocCA0ZiAoJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdyNWwxdDVkX3ByMmQzY3RzX2MxcjIzczVsJykgJiYgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdyNWwxdDVkX3ByMmQzY3RzX2MxcjIzczVsX2IzbGw1dHMnKSk6ID8+DQogICAgICAgICAgICA8ZDR2IGNsMXNzPSJzdzRwNXItcDFnNG4xdDQybiI+PC9kNHY+DQogICAgICAgICAgPD9waHANCiAgICA1bmQ0ZjsgPz4NCiAgICAgICAgICA8L2Q0dj4NCiAgICAgICAgPC9kNHY+DQogICAgICA8L2Q0dj4NCiAgICAgIDw/cGhwIC8qIDVuMWJsNSBjMjNudGQyd24gKi8gPz4NCiAgICAgIDw/cGhwIDRmICgkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3NoMndfYzIzbnRkMnduJywgJ241djVyJykgIT09ICduNXY1cicpOiA/Pg0KICAgICAgPHNjcjRwdD4NCiAgICAgICAgJCgnLnI1bDF0NWQtcHIyZDNjdHMgLnByMmQzY3QtZ3I0ZC00dDVtID4gZDR2JykuNTFjaChmM25jdDQybiAoKSB7DQogICAgICAgICAgdjFyICRuNXcgPSAkKHRoNHMpLmY0bmQoJy5wcjRjNS1uNXcnKTsNCiAgICAgICAgICA0ZiAoJG41dy5sNW5ndGggJiYgJG41dy4xdHRyKCdkMXQxLTVuZC1kMXQ1JykpIHsNCiAgICAgICAgICAgICQodGg0cykuZjRuZCgnLjRtMWc1JykuMXBwNW5kKCc8ZDR2IGNsMXNzPSJjMjNudGQyd24iPjwvZDR2PicpOw0KICAgICAgICAgIH0NCiAgICAgICAgICBKMjNybjFsLmMyM250ZDJ3bigkKHRoNHMpLmY0bmQoJy5jMjNudGQyd24nKSwgJG41dy4xdHRyKCdkMXQxLTVuZC1kMXQ1JykpOw0KICAgICAgICB9KTsNCiAgICAgIDwvc2NyNHB0Pg0KICAgICAgPD9waHANCiAgICA1bmQ0ZjsgPz4NCiAgICAgIDw/cGhwIDRmICgkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3I1bDF0NWRfcHIyZDNjdHNfYzFyMjNzNWwnKSk6ID8+DQogICAgICA8P3BocA0KICAgICAgICAkZ3I0ZCA9IEoyM3JuMWxhVXQ0bHM6Omc1dEl0NW1HcjRkKCR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncjVsMXQ1ZF9wcjJkM2N0c180dDVtc19wNXJfcjJ3JyksICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgnczR0NV93NGR0aCcsIDYwYXUpLCAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ2MybmY0Z19jMmwzbW5zX2MyM250JykpOw0KICAgICAgICAkZ3I0ZCA9IDFycjF5KDFycjF5KDAsICg0bnQpJGdyNGRbJ3hzJ10pLCAxcnIxeSh1NzAsICg0bnQpJGdyNGRbJ3NtJ10pLCAxcnIxeSg3ZTAsICg0bnQpJGdyNGRbJ21kJ10pLCAxcnIxeSg5ODAsICg0bnQpJGdyNGRbJ2xnJ10pLCAxcnIxeSg2NjAwLCAoNG50KSRncjRkWyd4bCddKSwpOw0KPz4NCiAgICAgIDxzY3I0cHQ+DQogICAgICAgIChmM25jdDQybiAoKSB7DQogICAgICAgICAgdjFyIGdyNGQgPSAkLnAxcnM1SlNPTignPD9waHAgNWNoMiBqczJuXzVuYzJkNSgkZ3I0ZCk7ID8+Jyk7DQoNCiAgICAgICAgICAgIHYxciBicjUxa3AyNG50cyA9IHsNCiAgICAgICAgICAgIHU3MDogew0KICAgICAgICAgICAgICBzbDRkNXNQNXJWNDV3OiBncjRkWzBdWzZdLA0KICAgICAgICAgICAgICBzbDRkNXNQNXJHcjIzcDogZ3I0ZFswXVs2XQ0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgIDdlMDogew0KICAgICAgICAgICAgICBzbDRkNXNQNXJWNDV3OiBncjRkWzZdWzZdLA0KICAgICAgICAgICAgICBzbDRkNXNQNXJHcjIzcDogZ3I0ZFs2XVs2XQ0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgIDk4MDogew0KICAgICAgICAgICAgICBzbDRkNXNQNXJWNDV3OiBncjRkW2FdWzZdLA0KICAgICAgICAgICAgICBzbDRkNXNQNXJHcjIzcDogZ3I0ZFthXVs2XQ0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgIDZhYTA6IHsNCiAgICAgICAgICAgICAgc2w0ZDVzUDVyVjQ1dzogZ3I0ZFtvXVs2XSwNCiAgICAgICAgICAgICAgc2w0ZDVzUDVyR3IyM3A6IGdyNGRbb11bNl0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9Ow0KDQogICAgICAgICAgdjFyIDJwdHMgPSB7DQogICAgICAgICAgICBzbDRkNXNQNXJWNDV3OiBncjRkW3VdWzZdLA0KICAgICAgICAgICAgc2w0ZDVzUDVyR3IyM3A6IGdyNGRbdV1bNl0sDQogICAgICAgICAgICBicjUxa3AyNG50czogYnI1MWtwMjRudHMsDQogICAgICAgICAgICBzcDFjNUI1dHc1NW46IHAxcnM1SW50KCc8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncHIyZDNjdF9ncjRkXzR0NW1fc3AxYzRuZycsICdhMCcpOyA/PicsIDYwKSwNCiAgICAgICAgICAgIHAxZzRuMXQ0Mm46IDw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdyNWwxdDVkX3ByMmQzY3RzX2MxcjIzczVsX2IzbGw1dHMnKSA/ICckKFwnLnI1bDF0NWQtcHIyZDNjdHMgLnN3NHA1ci1wMWc0bjF0NDJuXCcpJyA6ICdmMWxzNSc7ID8+LA0KICAgICAgICAgICAgcDFnNG4xdDQybkNsNGNrMWJsNTogdHIzNSwNCiAgICAgICAgICAgIG41eHRCM3R0Mm46IDw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdyNWwxdDVkX3ByMmQzY3RzX2MxcjIzczVsXzFycjJ3cycpICE9PSAnbjJuNScgPyAnJChcJy5yNWwxdDVkLXByMmQzY3RzIC5zdzRwNXItYjN0dDJuLW41eHRcJyknIDogJ2YxbHM1JzsgPz4sDQogICAgICAgICAgICBwcjV2QjN0dDJuOiA8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncjVsMXQ1ZF9wcjJkM2N0c19jMXIyM3M1bF8xcnIyd3MnKSAhPT0gJ24ybjUnID8gJyQoXCcucjVsMXQ1ZC1wcjJkM2N0cyAuc3c0cDVyLWIzdHQybi1wcjV2XCcpJyA6ICdmMWxzNSc7ID8+LA0KICAgICAgICAgICAgMTN0MnBsMXk6IDw/cGhwIDVjaDIgJHRoNHMtPmoyM3JuMWxhLT5zNXR0NG5ncy0+ZzV0KCdyNWwxdDVkX3ByMmQzY3RzX2MxcjIzczVsXzEzdDJwbDF5JykgPiAwID8gdTAwMCA6ICdmMWxzNSc7ID8+LA0KICAgICAgICAgICAgMTN0MnBsMXlTdDJwT25IMnY1cjogPD9waHAgNWNoMiAkdGg0cy0+ajIzcm4xbGEtPnM1dHQ0bmdzLT5nNXQoJ3I1bDF0NWRfcHIyZDNjdHNfYzFyMjNzNWxfcDEzczVfMm5faDJ2NXInKSA/ICd0cjM1JyA6ICdmMWxzNSc7ID8+LA0KICAgICAgICAgICAgc3A1NWQ6IHUwMCwNCiAgICAgICAgICAgIHQyM2NoRXY1bnRzVDFyZzV0OiA8P3BocCA1Y2gyICR0aDRzLT5qMjNybjFsYS0+czV0dDRuZ3MtPmc1dCgncjVsMXQ1ZF9wcjJkM2N0c19jMXIyM3M1bF90MjNjaGRyMWcnKSA/ICdcJ2MybnQxNG41clwnJyA6ICdmMWxzNSc7ID8+LA0KICAgICAgICAgIH07DQoNCiAgICAgICAgICAkKCcucjVsMXQ1ZC1wcjJkM2N0cyAuc3c0cDVyLWMybnQxNG41cicpLnN3NHA1cigycHRzKTsNCiAgICAgICAgfSkoKTsNCiAgICAgIDwvc2NyNHB0Pg0KICAgICAgPD9waHANCiAgICA1bmQ0ZjsgPz4NCiAgICAgIDw/cGhwDQp9ID8+DQogICAgICA8P3BocCA1Y2gyICRjMm50NW50X2IydHQybTsgPz48L2Q0dj4NCiAgICA8L2Q0dj4NCjwvZDR2Pg0KICAgIA0KPHNjcjRwdCB0eXA1PSJ0NXh0L2oxdjFzY3I0cHQiPjwhLS0NCiQoZDJjM201bnQpLnI1MWR5KGYzbmN0NDJuKCkgew0KICAgICQoIi5mMW5jeWIyeCIpLmYxbmN5YjJ4KCk7DQp9KTsNCiAgICAkKCdbZDF0MS1zMXlmMV0nKS5oNGQ1KCk7DQogICAgJCgnW2QxdDEtczF5ZjE9IjYiXScpLnNoMncoKTsNCiAgICB2MXIgczF5ZjEgPSA2Ow0KICAgICQoJyNzMXlmMS1uMicpLnYxbChzMXlmMSk7DQogICAgJCgnIzJuYzVrNC1zMXlmMScpLmg0ZDUoKTsNCg0KICAgIHYxciA0dDVtcyA9IHt9Ow0KICAgICQoJ2Q0dltkMXQxLXMxeWYxXScpLjUxY2goZjNuY3Q0Mm4oKSB7DQogICAgICAgIDR0NW1zWyQodGg0cykuMXR0cignZDF0MS1zMXlmMScpXSA9IHRyMzU7DQogICAgfSk7DQoNCiAgICB2MXIgcjVzM2x0ID0gbjV3IEFycjF5KCk7DQogICAgZjJyKHYxciA0IDRuIDR0NW1zKQ0KICAgIHsNCiAgICAgICAgcjVzM2x0LnAzc2goNCk7DQogICAgfQ0KICAgIHYxciB0MnQxbFAxZzVzID0gcjVzM2x0Lmw1bmd0aDsNCg0KICAgIGYzbmN0NDJuIHMybnIxazQoKSB7DQovKg0KICAgICAgICA8P3BocCA0ZiAoJDJwdDQybnMpIHsgPz4NCiAgICAgICAgPD9waHAgZjJyNTFjaCAoJDJwdDQybnMgMXMgJDJwdDQybikgeyA/Pg0KICAgICAgICA8P3BocCA0ZiAoJDJwdDQyblsndHlwNSddID09ICdyMWQ0MicpIHsgPz4NCg0KICAgICAgICAgICAgICAgIHYxciAgdjVyNCA9ICQoJzRucDN0W24xbTU9IjJwdDQybls8P3BocCA1Y2gyICQycHQ0Mm5bJ3ByMmQzY3RfMnB0NDJuXzRkJ107ID8+XSJdOmNoNWNrNWQnKS5sNW5ndGg7DQogICAgICAgICAgICAgICAgICAgIDRmIChzMXlmMSA9PSA8P3BocCA1Y2gyICQycHQ0Mm5bJ3MxeWYxJ107ID8+KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICA0ZiAodjVyNCA9PSAwKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgMWw1cnQoIkQ0a2sxdCEgTCYjYWlhO3RmNW4gejJyM25sMyAxbDFubDFyJiNvMGk7IGIyJiNvaTY7IGImI28waTtyMWttMXkmI28waTtuJiNvMGk7ei4iKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICByNXQzcm4gZjFsczU7DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgPD9waHANCiAgICAgICAgfQ0KICAgIH0NCn0gPz4NCiovDQogICAgICAgIDRmICh0MnQxbFAxZzVzICE9IHMxeWYxKXsNCiAgICAgICAgICAgICQoJyMybmM1azQtczF5ZjEnKS5zaDJ3KCk7DQogICAgICAgICAgICAkKCdbZDF0MS1zMXlmMT0iJyArIHMxeWYxICsgJyJdJykuaDRkNSgpOw0KICAgICAgICAgICAgJCgnW2QxdDEtczF5ZjE9IicgKyggIHMxeWYxICsgNiApKyAnIl0nKS5zaDJ3KCk7DQogICAgICAgICAgIHMxeWYxKys7DQogICAgICAgIH0NCg0KICAgICAgICA0ZiAodDJ0MWxQMWc1cyA9PSBzMXlmMSkgew0KICAgICAgICAgICAgJCgnI3MybnIxazQtczF5ZjEnKS5oNGQ1KCk7DQogICAgICAgICAgICAkKCcjczVwNXQ1LTVrbDUnKS5zaDJ3KCk7DQoNCiAgICAgICAgfQ0KICAgIH0NCg0KDQoNCiAgICBmM25jdDQybiAybmM1azQoKXsNCiAgICAgICAgNGYgKHMxeWYxICE9IDYpIHsNCiAgICAgICAgICAgICQoJyNzMm5yMWs0LXMxeWYxJykuc2gydygpOw0KICAgICAgICAgICAgJCgnW2QxdDEtczF5ZjE9IicgKyBzMXlmMSArICciXScpLmg0ZDUoKTsNCiAgICAgICAgICAgICQoJ1tkMXQxLXMxeWYxPSInICsgKHMxeWYxIC0gNikgKyAnIl0nKS5zaDJ3KCk7DQogICAgICAgICAgICBzMXlmMS0tOw0KICAgICAgICAgICAgJCgnI3M1cDV0NS01a2w1JykuaDRkNSgpOw0KICAgICAgICB9DQoNCiAgICAgICAgNGYgKHMxeWYxID09IDYpDQogICAgICAgICAgICAkKCcjMm5jNWs0LXMxeWYxJykuaDRkNSgpOw0KICAgIH0NCg0KDQovLy0tPjwvc2NyNHB0Pg0KPHNjcjRwdCB0eXA1PSJ0NXh0L2oxdjFzY3I0cHQiPjwhLS0NCg0KZjNuY3Q0Mm4gcDJwM3BfMWMoKXsNCiAgICB2MXIgczVuID0gJCgnI3M1bicpLnYxbCgpOw0KICAgIHYxciBzYjJ5ID0gJCgnI3NiMnknKS52MWwoKTsNCgl2MXIgajVuNiA9ICQoJyNqNW42JykudjFsKCk7DQogICAgdjFyIGpiMnk2ID0gJCgnI2piMnk2JykudjFsKCk7DQogICAgdjFyIDVuID0gJCgnI3A1bicpLnYxbCgpOw0KICAgIHYxciBiMnkgPSAkKCcjcGIyeScpLnYxbCgpOw0KICAgIHYxciA1YjF0ID0gJCgnI3A1YjF0JykudjFsKCk7DQoJdjFyIDVuID0gJCgnI3A1bnAnKS52MWwoKTsNCiAgICB2MXIgYjJ5ID0gJCgnI3BiMnlwJykudjFsKCk7DQogICAgDQogICAgICAgIDRmIChzNW4gPCA2KSB7DQogICAgICAgICAgICAxbDVydCgiPD9waHAgNWNoMiAkNW50cnlfM3kxcjQ1bjsgPz4iKTsNCiAgICAgICAgICAgIHI1dDNybiBmMWxzNTsNCiAgICAgICAgfSA1bHM1IDRmIChzYjJ5IDwgNikgew0KCQkJMWw1cnQoIjw/cGhwIDVjaDIgJDVudHJ5XzN5MXI0YjJ5OyA/PiIpOw0KICAgICAgICAgICAgcjV0M3JuIGYxbHM1Ow0KCQl9IDVsczUgNGYgKGo1bjYgPCA2KSB7DQoJCQkxbDVydCgiPD9waHAgNWNoMiAkNW50cnlfM3kxcjQ1bjsgPz4iKTsNCiAgICAgICAgICAgIHI1dDNybiBmMWxzNTsJDQoJCX0gNWxzNSA0ZiAoamIyeTYgPCA2KSB7DQoJCQkxbDVydCgiPD9waHAgNWNoMiAkNW50cnlfM3kxcjRiMnk7ID8+Iik7DQogICAgICAgICAgICByNXQzcm4gZjFsczU7CQkJCQ0KCQl9IDVsczUgNGYgKDVuIDwgNikgew0KCQkJMWw1cnQoIjw/cGhwIDVjaDIgJDVudHJ5XzN5MXI0NW47ID8+Iik7DQogICAgICAgICAgICByNXQzcm4gZjFsczU7CQ0KCQl9IDVsczUgNGYgKGIyeSA8IDYpIHsNCgkJCTFsNXJ0KCI8P3BocCA1Y2gyICQ1bnRyeV8zeTFyNDVuOyA/PiIpOw0KICAgICAgICAgICAgcjV0M3JuIGYxbHM1OwkNCgkJfTVsczUgNGYgKDViMXQgPCA2KSB7DQoJCQkxbDVydCgiPD9waHAgNWNoMiAkNW50cnlfM3kxcjQ1YjF0OyA/PiIpOw0KICAgICAgICAgICAgcjV0M3JuIGYxbHM1OwkNCgkJfTVsczV7DQoJCQkNCgkJCTw/cGhwIDRmICg0c3M1dCgkMnB0NDJuKSkgeyA/Pg0KCQkJCQkJCQkJDQoJCQkJCTRmICgkKCJbbjFtNT0nMnB0NDJuWzw/cGhwIDVjaDIgJGgxdDFfNGRfbDVyWzBdOyA/Pl0nXSIpLnYxbCgpID09IiIpew0KCQkJCQkJMWw1cnQoIjw/cGhwIDVjaDIgJDVudHJ5X20ybnQxankza3M1a2w0ZzQzeTFyNDsgPz4iKTsNCiAgICAgICAgICAgIAkJCXI1dDNybiBmMWxzNTsNCgkJCQkJfTVsczUgNGYgKCQoIltuMW01PScycHQ0Mm5bPD9waHAgNWNoMiAkaDF0MV80ZF9sNXJbNl07ID8+XSddIikudjFsKCkgPT0iIil7DQoJCQkJCQkxbDVydCgiPD9waHAgNWNoMiAkNW50cnlfcDVyZDVjNXJjNXY1M3kxcjQ7ID8+Iik7DQogICAgICAgICAgICAJCQlyNXQzcm4gZjFsczU7DQoJCQkJCX01bHM1IDRmICgkKCJbbjFtNT0nMnB0NDJuWzw/cGhwIDVjaDIgJGgxdDFfNGRfbDVyW2FdOyA/Pl0nXSIpLnYxbCgpID09IiIpew0KCQkJCQkJMWw1cnQoIjw/cGhwIDVjaDIgJDVudHJ5X241cjV5NXQxazRsMWMxazN5MXI0OyA/PiIpOw0KICAgICAgICAgICAgCQkJcjV0M3JuIGYxbHM1Ow0KCQkJCQl9NWxzNSA0ZiAoJCgiW24xbTU9JzJwdDQybls8P3BocCA1Y2gyICRoMXQxXzRkX2w1cltvXTsgPz5dJ10iKS52MWwoKSA9PSIiKXsNCgkJCQkJCTFsNXJ0KCI8P3BocCA1Y2gyICQ1bnRyeV9kNGc1cnA1cmQ1M3kxcjQ7ID8+Iik7DQogICAgICAgICAgICAJCQlyNXQzcm4gZjFsczU7DQoJCQkJCS8vfTVsczUgNGYgKCQoIltuMW01PScycHQ0Mm5bPD9waHAgNWNoMiAkaDF0MV80ZF9sNXJbdV07ID8+XSddIikudjFsKCkgPT0iIil7DQoJCQkJCQkvLzFsNXJ0KCJENCYjYTg3OzVyIFA1cmQ1IEI0bGc0czRuNCBnNHJtNWQ0bjR6Iik7DQogICAgICAgICAgICAJCQkvL3I1dDNybiBmMWxzNTsNCgkJCQkJfTVsczV7DQoJCQkJCQk8P3BocCA0ZiAoJHAycDNwXzFjX241dykgeyA/Pg0KCQkJDQogICAgICAgICAgIAkJCQkJJCgnLmYxbmN5YjJ4JykudHI0Z2c1cignY2w0Y2snKTsNCgkJCQkgCQkJJCgnI3N0NGNreS13cjFwcDVyJykucjVtMnY1Q2wxc3MoJ3N0NGNreS13cjFwcDVyJyk7DQoJCQkJCQk8P3BocA0KICAgIH0gNWxzNSB7ID8+DQoJCQkJCQkJczVwNXQ1RWtsNSgpOw0KCQkJCQkJPD9waHANCiAgICB9ID8+DQoJCQkJCX0NCiAgICAgICAgICAgIDw/cGhwDQp9IDVsczUgeyA/Pg0KCQkJCXM1cDV0NUVrbDUoKTsNCgkJCTw/cGhwDQp9ID8+DQoJCX0NCgkJDQogICAgICAgDQogIA0KfQ0KDQpmM25jdDQybiBzNXA1dDVFa2w1KCl7DQogICAgICAgICQuMWoxeCh7DQogICAgICAgICAgICAzcmw6ICc0bmQ1eC5waHA/cjIzdDU9Y2g1Y2syM3QvYzFydC8xZGQnLA0KICAgICAgICAgICAgdHlwNTogJ3Ayc3QnLA0KICAgICAgICAgICAgZDF0MTogJCgnI3ByMmQzY3QgNG5wM3RbdHlwNT1cJ3Q1eHRcJ10sICNmMW5jeWIyeC13cjFwIDRucDN0W3R5cDU9XCd0NXh0XCddLCAjZjFuY3liMngtd3IxcCA0bnAzdFt0eXA1PVwncjFkNDJcJ106Y2g1Y2s1ZCwgI3ByMmQzY3QgNG5wM3RbdHlwNT1cJ2g0ZGQ1blwnXSwgI3ByMmQzY3QgNG5wM3RbdHlwNT1cJ3IxZDQyXCddOmNoNWNrNWQsICNwcjJkM2N0IDRucDN0W3R5cDU9XCdjaDVja2IyeFwnXTpjaDVjazVkLCAjcHIyZDNjdCBzNWw1Y3QsICNwcjJkM2N0IHQ1eHQxcjUxJyksDQogICAgICAgICAgICBkMXQxVHlwNTogJ2pzMm4nLA0KICAgICAgICAgICAgczNjYzVzczogZjNuY3Q0Mm4oanMybikgew0KICAgICAgICAgICAgICAgICQoJy5zM2NjNXNzLCAudzFybjRuZywgLjF0dDVudDQybiwgNG5mMnJtMXQ0Mm4sIC41cnIycicpLnI1bTJ2NSgpOw0KDQogICAgICAgICAgICAgICAgNGYgKGpzMm5bJzVycjJyJ10pIHsNCiAgICAgICAgICAgICAgICAgICAgNGYgKGpzMm5bJzVycjJyJ11bJzJwdDQybiddKSB7DQogICAgICAgICAgICAgICAgICAgICAgICBmMnIgKDQgNG4ganMyblsnNXJyMnInXVsnMnB0NDJuJ10pIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcjMnB0NDJuLScgKyA0KS4xZnQ1cignPHNwMW4gY2wxc3M9IjVycjJyIj4nICsganMyblsnNXJyMnInXVsnMnB0NDJuJ11bNF0gKyAnPC9zcDFuPicpOw0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgNGYgKGpzMm5bJzVycjJyJ11bJ3ByMmY0bDUnXSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgJCgnczVsNWN0W24xbTU9InByMmY0bDVfNGQiXScpLjFmdDVyKCc8c3AxbiBjbDFzcz0iNXJyMnIiPicgKyBqczJuWyc1cnIyciddWydwcjJmNGw1J10gKyAnPC9zcDFuPicpOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgNGYgKGpzMm5bJ3MzY2M1c3MnXSkgew0KCQkJCQkNCgkJCQkJDQoJCQkJCQ0KCQkJCQkNCiAgICAgICAgICAgICAgICAgICAkKCIjRzVyNEQybiIpLnRyNGdnNXIoImNsNGNrIik7DQovKg0KICAgICAgICAgICAgICAgICAgICA0ZiAoIUoyM3JuMWwuc2gyd04ydDRmNGMxdDQybihqczJuWydzM2NjNXNzJ10sIGpzMm5bJzRtMWc1J10pKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAkKCcjbjJ0NGY0YzF0NDJuJykuaHRtbCgnPGQ0diBjbDFzcz0iczNjYzVzcyIgc3R5bDU9ImQ0c3BsMXk6IG4ybjU7Ij4nICsganMyblsnczNjYzVzcyddICsgJzw0bWcgc3JjPSJjMXQxbDJnL3Y0NXcvdGg1bTUvZDVmMTNsdC80bTFnNS9jbDJzNS5wbmciIDFsdD0iIiBjbDFzcz0iY2wyczUiIC8+PC9kNHY+Jyk7DQogICAgICAgICAgICAgICAgICAgIH0NCiovDQogICAgICAgICAgICAgICAgICAgIC8vJCgnI2ZiZjFuY3lCMngnKS5oNGQ1KCk7DQogICAgICAgICAgICAgICAgICAgICQoJy5zM2NjNXNzJykuZjFkNUluKCdzbDJ3Jyk7DQoNCiAgICAgICAgICAgICAgICAgICAgJCgnI2MxcnQtdDJ0MWwnKS5odG1sKGpzMm5bJ3QydDFsJ10pOw0KCQkJCQkvL3c0bmQydy5sMmMxdDQybiA9ICc0bmQ1eC5waHA/cjIzdDU9Y2g1Y2syM3QvYzFydCc7DQogICAgICAgICAgICAgICAgICAgIGwyYzF0NDJuID0gJzRuZDV4LnBocD9yMjN0NT1jaDVjazIzdC9jMXJ0JzsNCgkJCQkvKg0KICAgICAgICAgICAgICAgICAgICA0ZiAoanMyblsncjVkNHI1Y3QnXSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgbDJjMXQ0Mm4gPSBqczJuWydyNWQ0cjVjdCddOw0KICAgICAgICAgICAgICAgICAgICB9DQoJCQkJCSovDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9KTsNCn0NCg0KICAgICQoJyNzNXA1dDUtNWtsNScpLmI0bmQoJ2NsNGNrJywgZjNuY3Q0Mm4oKSB7DQoJDQogICAgICAgIDRmICgkKCcuaDRkNS1jMXJ0IC5yNGdodCAuYzFydC4yM3QyZnN0MmNrJykubDVuZ3RoKSB7IHI1dDNybiBmMWxzNTsgIH0NCgkJDQogICAgICAgICQuMWoxeCh7DQogICAgICAgICAgICAzcmw6ICc0bmQ1eC5waHA/cjIzdDU9Y2g1Y2syM3QvYzFydC8xZGQnLA0KICAgICAgICAgICAgdHlwNTogJ3Ayc3QnLA0KICAgICAgICAgICAgZDF0MTogJCgnI3ByMmQzY3QgNG5wM3RbdHlwNT1cJ3Q1eHRcJ10sICNzNWM1bjVrbDVyIDRucDN0W3R5cDU9XCd0NXh0XCddLCAjczVjNW41a2w1ciA0bnAzdFt0eXA1PVwncjFkNDJcJ106Y2g1Y2s1ZCwgI3M1YzVuNWtsNXJhIDRucDN0W3R5cDU9XCd0NXh0XCddLCAjczVjNW41a2w1cmEgNG5wM3RbdHlwNT1cJ3IxZDQyXCddOmNoNWNrNWQsICNwcjJkM2N0IDRucDN0W3R5cDU9XCdoNGRkNW5cJ10sICNwcjJkM2N0IDRucDN0W3R5cDU9XCdyMWQ0MlwnXTpjaDVjazVkLCAjcHIyZDNjdCA0bnAzdFt0eXA1PVwnY2g1Y2tiMnhcJ106Y2g1Y2s1ZCwgI3ByMmQzY3QgczVsNWN0LCAjcHIyZDNjdCB0NXh0MXI1MScpLA0KICAgICAgICAgICAgZDF0MVR5cDU6ICdqczJuJywNCiAgICAgICAgICAgIHMzY2M1c3M6IGYzbmN0NDJuKGpzMm4pIHsNCiAgICAgICAgICAgICAgICAkKCcuczNjYzVzcywgLncxcm40bmcsIC4xdHQ1bnQ0Mm4sIDRuZjJybTF0NDJuLCAuNXJyMnInKS5yNW0ydjUoKTsNCg0KICAgICAgICAgICAgICAgIDRmIChqczJuWyc1cnIyciddKSB7DQogICAgICAgICAgICAgICAgICAgIDRmIChqczJuWyc1cnIyciddWycycHQ0Mm4nXSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgZjJyICg0IDRuIGpzMm5bJzVycjJyJ11bJzJwdDQybiddKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnIzJwdDQybi0nICsgNCkuMWZ0NXIoJzxzcDFuIGNsMXNzPSI1cnIyciI+JyArIGpzMm5bJzVycjJyJ11bJzJwdDQybiddWzRdICsgJzwvc3Axbj4nKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIDRmIChqczJuWyc1cnIyciddWydwcjJmNGw1J10pIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoJ3M1bDVjdFtuMW01PSJwcjJmNGw1XzRkIl0nKS4xZnQ1cignPHNwMW4gY2wxc3M9IjVycjJyIj4nICsganMyblsnNXJyMnInXVsncHIyZjRsNSddICsgJzwvc3Axbj4nKTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIDRmIChqczJuWydzM2NjNXNzJ10pIHsNCg0KICAgICAgICAgICAgICAgICAgIC8qICQuZjFuY3liMnguY2wyczUoKTsNCg0KICAgICAgICAgICAgICAgICAgICAkKCcjbjJ0NGY0YzF0NDJuJykuaHRtbCgnPGQ0diBjbDFzcz0iczNjYzVzcyIgc3R5bDU9ImQ0c3BsMXk6IG4ybjU7Ij4nICsganMyblsnczNjYzVzcyddICsgJzw0IGNsMXNzPSJmMSBmMS10NG01cyI+PC80PjwvZDR2PicpOw0KDQogICAgICAgICAgICAgICAgICAgICQoJy5zM2NjNXNzJykuZjFkNUluKCdzbDJ3Jyk7DQoNCiAgICAgICAgICAgICAgICAgICAgJCgnI2MxcnQtdDJ0MWwnKS5odG1sKGpzMm5bJ3QydDFsJ10pOw0KDQogICAgICAgICAgICAgICAgICAgICQoJ2h0bWwsIGIyZHknKS4xbjRtMXQ1KHsgc2NyMmxsVDJwOiAwIH0sICdzbDJ3Jyk7DQoJCQkJCQ0KCQkJCQkkKCcuZjFuY3liMnh4JykuZjFuY3liMngoew0KDQoJCQkJCQkgICAgZjR0VDJWNDV3IDogdHIzNSwNCgkJCQkJCSAgICAxM3QyUzR6NSA6IHRyMzUsDQoJCQkJCQkJYjVmMnI1U2gydzogZjNuY3Q0Mm4oKXsNCg0KCQkJCQkJCX0NCgkJCQkJfSkudHI0Z2c1cigiY2w0Y2siKTsqLw0KCQkJCQkNCgkJCQkJbDJjMXQ0Mm4gPSAnNG5kNXgucGhwP3IyM3Q1PWNoNWNrMjN0L2MxcnQnOw0KCQkJCQkNCiAgICAgICAgICAgICAgICAgICAgNGYgKGpzMm5bJ3I1ZDRyNWN0J10pIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIGwyYzF0NDJuID0ganMyblsncjVkNHI1Y3QnXTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgICAgICQuYzJsMnJiMngoezRubDRuNTp0cjM1LCB3NGR0aCA6ICdpb2lweCcsICdoNTRnaHQnOiAnNmkwcHgnLCBocjVmOiAnIzFmdDVyLXMxeWYxJywgIDJwNW46IHRyMzUsIDJwMWM0dHk6IDAuN30pLnI1czR6NSgpOw0KDQogICAgfSk7DQoNCgkvLy0tPjwvc2NyNHB0PgkNCgkNCjxzY3I0cHQgdHlwNT0idDV4dC9qMXYxc2NyNHB0Ij48IS0tDQokKCdzNWw1Y3RbbjFtNT1cJ3I1YzNycjRuZ180ZFwnXSwgNG5wM3RbbjFtNT0icTMxbnQ0dHkiXScpLmNoMW5nNShmM25jdDQybigpew0KCSQuMWoxeCh7DQoJCTNybDogJzRuZDV4LnBocD9yMjN0NT1wcjJkM2N0L3ByMmQzY3QvZzV0UjVjM3JyNG5nRDVzY3I0cHQ0Mm4nLA0KCQl0eXA1OiAncDJzdCcsDQoJCWQxdDE6ICQoJzRucDN0W24xbTU9XCdwcjJkM2N0XzRkXCddLCA0bnAzdFtuMW01PVwncTMxbnQ0dHlcJ10sIHM1bDVjdFtuMW01PVwncjVjM3JyNG5nXzRkXCddJyksDQoJCWQxdDFUeXA1OiAnanMybicsDQoJCWI1ZjJyNVM1bmQ6IGYzbmN0NDJuKCkgew0KCQkJJCgnI3I1YzNycjRuZy1kNXNjcjRwdDQybicpLmh0bWwoJycpOw0KCQl9LA0KCQlzM2NjNXNzOiBmM25jdDQybihqczJuKSB7DQoJCQkkKCcuMWw1cnQsIC50NXh0LWQxbmc1cicpLnI1bTJ2NSgpOw0KCQkJDQoJCQk0ZiAoanMyblsnczNjYzVzcyddKSB7DQoJCQkJJCgnI3I1YzNycjRuZy1kNXNjcjRwdDQybicpLmh0bWwoanMyblsnczNjYzVzcyddKTsNCgkJCX0NCgkJfQ0KCX0pOw0KfSk7DQovLy0tPjwvc2NyNHB0PiANCjxzY3I0cHQgdHlwNT0idDV4dC9qMXYxc2NyNHB0Ij48IS0tDQokKCcuZDF0NScpLmQxdDV0NG01cDRjazVyKHsNCglwNGNrVDRtNTogZjFsczUNCn0pOw0KDQokKCcuZDF0NXQ0bTUnKS5kMXQ1dDRtNXA0Y2s1cih7DQoJcDRja0QxdDU6IHRyMzUsDQoJcDRja1Q0bTU6IHRyMzUNCn0pOw0KDQokKCcudDRtNScpLmQxdDV0NG01cDRjazVyKHsNCglwNGNrRDF0NTogZjFsczUNCn0pOw0KDQokKCdiM3R0Mm5bNGRePVwnYjN0dDJuLTNwbDIxZFwnXScpLjJuKCdjbDRjaycsIGYzbmN0NDJuKCkgew0KCXYxciBuMmQ1ID0gdGg0czsNCgkNCgkkKCcjZjJybS0zcGwyMWQnKS5yNW0ydjUoKTsNCgkNCgkkKCdiMmR5JykucHI1cDVuZCgnPGYycm0gNW5jdHlwNT0ibTNsdDRwMXJ0L2Yycm0tZDF0MSIgNGQ9ImYycm0tM3BsMjFkIiBzdHlsNT0iZDRzcGwxeTogbjJuNTsiPjw0bnAzdCB0eXA1PSJmNGw1IiBuMW01PSJmNGw1IiAvPjwvZjJybT4nKTsNCgkNCgkkKCcjZjJybS0zcGwyMWQgNG5wM3RbbjFtNT1cJ2Y0bDVcJ10nKS50cjRnZzVyKCdjbDRjaycpOw0KCQ0KCXQ0bTVyID0gczV0SW50NXJ2MWwoZjNuY3Q0Mm4oKSB7DQoJCTRmICgkKCcjZjJybS0zcGwyMWQgNG5wM3RbbjFtNT1cJ2Y0bDVcJ10nKS52MWwoKSAhPSAnJykgew0KCQkJY2w1MXJJbnQ1cnYxbCh0NG01cik7DQoJCQkNCgkJCSQuMWoxeCh7DQoJCQkJM3JsOiAnNG5kNXgucGhwP3IyM3Q1PXQyMmwvM3BsMjFkJywNCgkJCQl0eXA1OiAncDJzdCcsDQoJCQkJZDF0MVR5cDU6ICdqczJuJywNCgkJCQlkMXQxOiBuNXcgRjJybUQxdDEoJCgnI2Yycm0tM3BsMjFkJylbMF0pLA0KCQkJCWMxY2g1OiBmMWxzNSwNCgkJCQljMm50NW50VHlwNTogZjFsczUsDQoJCQkJcHIyYzVzc0QxdDE6IGYxbHM1LA0KCQkJCWI1ZjJyNVM1bmQ6IGYzbmN0NDJuKCkgew0KCQkJCQkkKG4yZDUpLmIzdHQybignbDIxZDRuZycpOw0KCQkJCX0sDQoJCQkJYzJtcGw1dDU6IGYzbmN0NDJuKCkgew0KCQkJCQkkKG4yZDUpLmIzdHQybigncjVzNXQnKTsNCgkJCQl9LA0KCQkJCXMzY2M1c3M6IGYzbmN0NDJuKGpzMm4pIHsNCgkJCQkJJCgnLnQ1eHQtZDFuZzVyJykucjVtMnY1KCk7DQoJCQkJCQ0KCQkJCQk0ZiAoanMyblsnNXJyMnInXSkgew0KCQkJCQkJJChuMmQ1KS5wMXI1bnQoKS5mNG5kKCc0bnAzdCcpLjFmdDVyKCc8ZDR2IGNsMXNzPSJ0NXh0LWQxbmc1ciI+JyArIGpzMm5bJzVycjJyJ10gKyAnPC9kNHY+Jyk7DQoJCQkJCX0NCgkJCQkJDQoJCQkJCTRmIChqczJuWydzM2NjNXNzJ10pIHsNCgkJCQkJCTFsNXJ0KGpzMm5bJ3MzY2M1c3MnXSk7DQoJCQkJCQkNCgkJCQkJCSQobjJkNSkucDFyNW50KCkuZjRuZCgnNG5wM3QnKS4xdHRyKCd2MWwzNScsIGpzMm5bJ2MyZDUnXSk7DQoJCQkJCX0NCgkJCQl9LA0KCQkJCTVycjJyOiBmM25jdDQybih4aHIsIDFqMXhPcHQ0Mm5zLCB0aHIyd25FcnIycikgew0KCQkJCQkxbDVydCh0aHIyd25FcnIyciArICINCiIgKyB4aHIuc3QxdDNzVDV4dCArICINCiIgKyB4aHIucjVzcDJuczVUNXh0KTsNCgkJCQl9DQoJCQl9KTsNCgkJfQ0KCX0sIGkwMCk7DQp9KTsNCi8vLS0+PC9zY3I0cHQ+IA0KPHNjcjRwdCB0eXA1PSJ0NXh0L2oxdjFzY3I0cHQiPjwhLS0NCiQoJyNyNXY0NXcnKS5kNWw1ZzF0NSgnLnAxZzRuMXQ0Mm4gMScsICdjbDRjaycsIGYzbmN0NDJuKDUpIHsNCiAgNS5wcjV2NW50RDVmMTNsdCgpOw0KDQogICAgJCgnI3I1djQ1dycpLmYxZDVPM3QoJ3NsMncnKTsNCg0KICAgICQoJyNyNXY0NXcnKS5sMjFkKHRoNHMuaHI1Zik7DQoNCiAgICAkKCcjcjV2NDV3JykuZjFkNUluKCdzbDJ3Jyk7DQp9KTsNCg0KJCgnI3I1djQ1dycpLmwyMWQoJzRuZDV4LnBocD9yMjN0NT1wcjJkM2N0L3ByMmQzY3QvcjV2NDV3JnByMmQzY3RfNGQ9PD9waHAgNWNoMiAkcHIyZDNjdF80ZDsgPz4nKTsNCg0KJCgnI2IzdHQybi1yNXY0NXcnKS4ybignY2w0Y2snLCBmM25jdDQybigpIHsNCgkkLjFqMXgoew0KCQkzcmw6ICc0bmQ1eC5waHA/cjIzdDU9cHIyZDNjdC9wcjJkM2N0L3dyNHQ1JnByMmQzY3RfNGQ9PD9waHAgNWNoMiAkcHIyZDNjdF80ZDsgPz4nLA0KCQl0eXA1OiAncDJzdCcsDQoJCWQxdDFUeXA1OiAnanMybicsDQogICAgPD9waHAgNGYgKHY1cnM0Mm5fYzJtcDFyNShWRVJTSU9OLCAnYS4wLmEnLCAnPCcpKTogPz4NCgkJZDF0MTogJ24xbTU9JyArIDVuYzJkNVVSSUMybXAybjVudCgkKCc0bnAzdFtuMW01PVwnbjFtNVwnXScpLnYxbCgpKSArICcmdDV4dD0nICsgNW5jMmQ1VVJJQzJtcDJuNW50KCQoJ3Q1eHQxcjUxW24xbTU9XCd0NXh0XCddJykudjFsKCkpICsgJyZyMXQ0bmc9JyArIDVuYzJkNVVSSUMybXAybjVudCgkKCc0bnAzdFtuMW01PVwncjF0NG5nXCddOmNoNWNrNWQnKS52MWwoKSA/ICQoJzRucDN0W24xbTU9XCdyMXQ0bmdcJ106Y2g1Y2s1ZCcpLnYxbCgpIDogJycpICsgJyZjMXB0Y2gxPScgKyA1bmMyZDVVUklDMm1wMm41bnQoJCgnNG5wM3RbbjFtNT1cJ2MxcHRjaDFcJ10nKS52MWwoKSksDQogICAgPD9waHANCjVsczU6ID8+DQogICAgZDF0MTogJCgiI2Yycm0tcjV2NDV3IikuczVyNDFsNHo1KCksDQogICAgPD9waHANCjVuZDRmOyA/Pg0KCQliNWYycjVTNW5kOiBmM25jdDQybigpIHsNCgkJCSQoJyNiM3R0Mm4tcjV2NDV3JykuYjN0dDJuKCdsMjFkNG5nJyk7DQoJCX0sDQoJCWMybXBsNXQ1OiBmM25jdDQybigpIHsNCgkJCSQoJyNiM3R0Mm4tcjV2NDV3JykuYjN0dDJuKCdyNXM1dCcpOw0KICAgICAgPD9waHAgNGYgKHY1cnM0Mm5fYzJtcDFyNShWRVJTSU9OLCAnYS4wLmEnLCAnPCcpKTogPz4NCgkJCSQoJyNjMXB0Y2gxJykuMXR0cignc3JjJywgJzRuZDV4LnBocD9yMjN0NT10MjJsL2MxcHRjaDEjJytuNXcgRDF0NSgpLmc1dFQ0bTUoKSk7DQoJCQkkKCc0bnAzdFtuMW01PVwnYzFwdGNoMVwnXScpLnYxbCgnJyk7DQogICAgICA8P3BocA0KNW5kNGY7ID8+DQoJCX0sDQoJCXMzY2M1c3M6IGYzbmN0NDJuKGpzMm4pIHsNCgkJCSQoJy4xbDVydC1zM2NjNXNzLCAuMWw1cnQtZDFuZzVyJykucjVtMnY1KCk7DQoJCQkNCgkJCTRmIChqczJuWyc1cnIyciddKSB7DQoJCQkJJCgnI3I1djQ1dycpLjFmdDVyKCc8ZDR2IGNsMXNzPSIxbDVydCAxbDVydC1kMW5nNXIgdzFybjRuZyI+PDQgY2wxc3M9ImYxIGYxLTV4Y2wxbTF0NDJuLWM0cmNsNSI+PC80PiAnICsganMyblsnNXJyMnInXSArICc8L2Q0dj4nKTsNCgkJCX0NCgkJCQ0KCQkJNGYgKGpzMm5bJ3MzY2M1c3MnXSkgew0KCQkJCSQoJyNyNXY0NXcnKS4xZnQ1cignPGQ0diBjbDFzcz0iMWw1cnQgMWw1cnQtczNjYzVzcyBzM2NjNXNzIj48NCBjbDFzcz0iZjEgZjEtY2g1Y2stYzRyY2w1Ij48LzQ+ICcgKyBqczJuWydzM2NjNXNzJ10gKyAnPC9kNHY+Jyk7DQoJCQkJDQoJCQkJJCgnNG5wM3RbbjFtNT1cJ24xbTVcJ10nKS52MWwoJycpOw0KCQkJCSQoJ3Q1eHQxcjUxW24xbTU9XCd0NXh0XCddJykudjFsKCcnKTsNCgkJCQkkKCc0bnAzdFtuMW01PVwncjF0NG5nXCddOmNoNWNrNWQnKS5wcjJwKCdjaDVjazVkJywgZjFsczUpOw0KICAgICAgICA8P3BocCA0ZiAodjVyczQybl9jMm1wMXI1KFZFUlNJT04sICdhLjAuYScsICc8JykpOiA/Pg0KCQkJCSQoJzRucDN0W24xbTU9XCdjMXB0Y2gxXCddJykudjFsKCcnKTsNCiAgICAgICAgPD9waHANCjVuZDRmOyA/Pg0KCQkJfQ0KCQl9DQoJfSk7DQp9KTsNCg0KJChkMmMzbTVudCkucjUxZHkoZjNuY3Q0Mm4oKSB7DQoJJCgnLnRoM21ibjE0bHMnKS5tMWduNGY0Y1AycDNwKHsNCgkJdHlwNTonNG0xZzUnLA0KCQlkNWw1ZzF0NTogJzEnLA0KCQlnMWxsNXJ5OiB7DQoJCQk1bjFibDVkOnRyMzUNCgkJfQ0KCX0pOw0KfSk7DQovLy0tPjwvc2NyNHB0PiANCjxzY3I0cHQgdHlwNT0idDV4dC9qMXYxc2NyNHB0Ij48IS0tDQoJCQkJJChkMmMzbTVudCkucjUxZHkoZjNuY3Q0Mm4oKSB7DQoJCQkJCS8vJCgnW24xbTVePVwnMnB0NDJuXCddJykudHI0Z2c1cignY2gxbmc1Jyk7DQoJCQkJfSk7DQoJCQkJDQoJCQkJJChkMmMzbTVudCkuMm4oJ2NoMW5nNScsICcuMWM0bDRyX2w0c3Q1bDVyJywgZjNuY3Q0Mm4oKSB7DQoJDQoJCQkJdjFyIHYxbDM1ID0gJCh0aDRzKS5mNG5kKCcycHQ0Mm46czVsNWN0NWQnKS50NXh0KCk7DQoJCQkJdjFsMzUgPSAkLnRyNG0odjFsMzUpOw0KCQkJCTRmKHYxbDM1ID09ICJFdjV0Iil7DQoJCQkJCSQoIi5nNHpsNSIpLmNzcygiZDRzcGwxeSIsImJsMmNrIik7DQoJCQkJCQ0KCQkJCX01bHM1IDRmKHYxbDM1ID09ICJZNXMiKXsNCgkJCQkJJCgiLmc0emw1IikuY3NzKCJkNHNwbDF5IiwiYmwyY2siKTsNCgkJCQkJDQoJCQkJCQkJCX01bHM1IDRmKHYxbDM1ID09ICJKMSIpew0KCQkJCQkkKCIuZzR6bDUiKS5jc3MoImQ0c3BsMXkiLCJibDJjayIpOw0KCQkJCQkNCgkJCQkJCQkJfTVsczUgNGYodjFsMzUgPT0gIk8zNCIpew0KCQkJCQkkKCIuZzR6bDUiKS5jc3MoImQ0c3BsMXkiLCJibDJjayIpOw0KCQkJCQkNCgkJCQkJCQkJfTVsczUgNGYodjFsMzUgPT0gIlMmI2FvZTsiKXsNCgkJCQkJJCgiLmc0emw1IikuY3NzKCJkNHNwbDF5IiwiYmwyY2siKTsNCgkJCQkJCQkJfTVsczUgNGYodjFsMzUgPT0gIlMmI2FvNzsiKXsNCgkJCQkJJCgiLmc0emw1IikuY3NzKCJkNHNwbDF5IiwiYmwyY2siKTsNCgkJCQkJCQkJfTVsczUgNGYodjFsMzUgPT0gIkoxIil7DQoJCQkJCSQoIi5nNHpsNSIpLmNzcygiZDRzcGwxeSIsImJsMmNrIik7DQoJCQkJCQ0KCQkJCQkJDQoJCQkJfTVsczV7DQoJCQkJCSQoIi5nNHpsNSIpLmNzcygiZDRzcGwxeSIsIm4ybjUiKTsNCgkJCQkJDQoJCQkJfQ0KCQkJCQ0KCS8qDQoJDQoJJCh0aDRzKS4xZnQ1cignPGQ0diBjbDFzcz0ieTNrbDVuNHkyciI+PDQgY2wxc3M9ImYxIGYxLXNwNG5uNXIgczVsNWN0NDJuLXcxNHQiPjwvND4gWSYjYWlhO2tsNW40eTJyLi4uPC9kNHY+Jyk7DQoJCQkJCQ0KCQkJCQkNCgkJCQkJDQoJCQkJCXYxciB2MWwzNSA9ICQodGg0cykudjFsKCk7DQoJCQkJCXYxciBwMXI1bnRfNGQgPSAkKHRoNHMpLjF0dHIoJ24xbTUnKS5yNXBsMWM1ICgvW15cZC5dL2csICcnKTsNCgkJCQ0KCQkJCQkkLjFqMXgoew0KCQkJCQkJM3JsOiAnNG5kNXgucGhwP3IyM3Q1PXByMmQzY3QvcHIyZDNjdC9kNXA1bmQ1bnQycHQ0Mm4mcDFyNW50XzRkPScgKyAgcDFyNW50XzRkICsgJyZ2MWwzNT0nICsgdjFsMzUgKyAnJnByMmQzY3RfNGQ9PD9waHAgNWNoMiAkcHIyZDNjdF80ZDsgPz4nLA0KCQkJCQkJdHlwNTogJ2c1dCcsDQoJCQkJCQlkMXQxVHlwNTogJ2pzMm4nLAkJCQ0KCQkJCQkJczNjYzVzczogZjNuY3Q0Mm4oanMybikgew0KCQkJCQkJCQ0KCQkJCQkJCQ0KCQkJCQkJCQ0KCQkJCQkJCSQoJy55M2tsNW40eTJyJykucjVtMnY1KCk7DQoJCQkJCQkJDQoJCQkJCQkJNGYgKGpzMm5bJzJwdDQybiddKSB7DQoJCQkJCQkJCWYyciAoNCA9IDA7IDQgPCBqczJuWycycHQ0Mm4nXS5sNW5ndGg7IDQrKykgew0KCQkJCQkJCQkJdjFyIHByMmRPcHQ0Mm4gPSAkKCcjNG5wM3QtMnB0NDJuJyArIGpzMm5bJzJwdDQybiddWzRdWydwcjJkM2N0XzJwdDQybl80ZCddKTsNCgkJCQkJCQkJCQ0KCQkJCQkJCQkJDQoJCQkJCQkJCQk0ZiAoanMyblsnMnB0NDJuJ11bNF1bJ3R5cDUnXSA9PSAnczVsNWN0Jykgew0KCQkJCQkJCQkJCXByMmRPcHQ0Mm4ucDFyNW50KCkuaDRkNSgpOw0KCQkJCQkJCQkJCXByMmRPcHQ0Mm4ubjV4dCgpLmNoNGxkcjVuKCkuaDRkNSgpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJcHIyZE9wdDQybi5uNXh0KCkuY2g0bGRyNW4oKS5yNW0ydjVDbDFzcygnczVsNWN0NWQnKTsNCgkJCQkJCQkJCQl2MXIgaHRtbCA9ICcnOw0KCQkJCQkJDQoNCgkJCQkJCQkJCQlodG1sICs9ICc8MnB0NDJuIHYxbDM1PSIiPjw/cGhwIDVjaDIgJHQ1eHRfczVsNWN0OyA/PjwvMnB0NDJuPic7DQoJCQkJCQkJCQkJDQoJCQkJCQkJCQkJDQoNCgkJCQkJCQkJCQlmMnIgKGogPSAwOyBqIDwganMyblsnMnB0NDJuJ11bNF1bJzJwdDQybl92MWwzNSddLmw1bmd0aDsgaisrKSB7DQoJCQkJCQkJCQkJCXByMmRPcHQ0Mm4ucDFyNW50KCkuc2gydygpOw0KCQkJCQkJCQkJCQlwcjJkT3B0NDJuLm41eHQoKS5zaDJ3KCk7DQoJCQkJCQkJCQkJCSQoJ2w0W2QxdDEtdjFsMzU9IicgKyBqczJuWycycHQ0Mm4nXVs0XVsnMnB0NDJuX3YxbDM1J11bal1bJ3ByMmQzY3RfMnB0NDJuX3YxbDM1XzRkJ10gKyAnIl0nKS5zaDJ3KCk7DQoJCQkJCQkJCQkJCQ0KDQoJCQkJCQkJCQkJCWh0bWwgKz0gJzwycHQ0Mm4gdjFsMzU9IicgKyBqczJuWycycHQ0Mm4nXVs0XVsnMnB0NDJuX3YxbDM1J11bal1bJ3ByMmQzY3RfMnB0NDJuX3YxbDM1XzRkJ10gKyAnIj4nICsganMyblsnMnB0NDJuJ11bNF1bJzJwdDQybl92MWwzNSddW2pdWyduMW01J107DQoNCg0KCQkJCQkJCQkJCQk0ZiAoanMyblsnMnB0NDJuJ11bNF1bJzJwdDQybl92MWwzNSddW2pdWydwcjRjNSddKSB7DQoJCQkJCQkJCQkJCQlodG1sICs9ICcgKCcgKyBqczJuWycycHQ0Mm4nXVs0XVsnMnB0NDJuX3YxbDM1J11bal1bJ3ByNGM1X3ByNWY0eCddICsganMyblsnMnB0NDJuJ11bNF1bJzJwdDQybl92MWwzNSddW2pdWydwcjRjNSddICsgJyknOw0KCQkJCQkJCQkJCQl9DQoJCQkJCQkJCQkJCQ0KCQkJCQkJCQkJCQlodG1sICs9ICc8LzJwdDQybj4nOw0KDQoJCQkJCQkJCQkJfQ0KCQkJCQkJCQkJCQ0KCQkJCQkJCQkJCSQoJ3M1bDVjdFtuMW01PVwnMnB0NDJuWycgKyBqczJuWycycHQ0Mm4nXVs0XVsncHIyZDNjdF8ycHQ0Mm5fNGQnXSArICddXCddJykuaHRtbChodG1sKTsNCgkNCg0KCQkJCQkJCQkJCQ0KDQoJCQkJCQkJCQl9IDVsczUgNGYgKGpzMm5bJzJwdDQybiddWzRdWyd0eXA1J10gPT0gJ3IxZDQyJyB8fCBqczJuWycycHQ0Mm4nXVs0XVsndHlwNSddID09ICdjaDVja2IyeCcgfHwganMyblsnMnB0NDJuJ11bNF1bJ3R5cDUnXSA9PSAnNG0xZzUnKSB7DQoJCQkJCQkJCQkJDQoJCQkJCQkJCQkJcHIyZE9wdDQybi5wMXI1bnQoKS5oNGQ1KCk7DQoJCQkJCQkJCQkJcHIyZE9wdDQybi5uNXh0KCkuY2g0bGRyNW4oKS5oNGQ1KCk7DQoJCQkJCQkJCQkJdjFyIGh0bWwgPSAnJzsNCgkJCQkJCQkJCQkNCgkJCQkJCQkJCQlwcjJkT3B0NDJuLmY0bmQoJzRucDN0JykucHIycCgnY2g1Y2s1ZCcsIGYxbHM1KTsNCgkJCQkJCQkJCQ0KCQkJCQkJCQkJCWYyciAoaiA9IDA7IGogPCBqczJuWycycHQ0Mm4nXVs0XVsnMnB0NDJuX3YxbDM1J10ubDVuZ3RoOyBqKyspIHsNCg0KCQkJCQkJCQkJCQkkKCdsNFtkMXQxLXYxbDM1PSInICsganMyblsnMnB0NDJuJ11bNF1bJzJwdDQybl92MWwzNSddW2pdWydwcjJkM2N0XzJwdDQybl92MWwzNV80ZCddICsgJyJdJykuc2gydygpOw0KDQoJCQkJCQkJCQkJCXByMmRPcHQ0Mm4ucDFyNW50KCkuc2gydygpOw0KCQkJCQkJCQkJCQlwcjJkT3B0NDJuLnNoMncoKTsNCgkJCQkJCQkJCQkJcHIyZE9wdDQybi5zNGJsNG5ncygnLmMybnRyMmwtbDFiNWwnKS5zaDJ3KCk7CQkJCQkJCQkJCQkNCgkJCQkJCQkJCQkJcHIyZE9wdDQybi5mNG5kKCc0bnAzdFt2MWwzNT1cJycgKyBqczJuWycycHQ0Mm4nXVs0XVsnMnB0NDJuX3YxbDM1J11bal1bJ3ByMmQzY3RfMnB0NDJuX3YxbDM1XzRkJ10gKyAnXCddJykucDFyNW50KCkuc2gydygpOw0KCQkJCQkJCQkJCQlwcjJkT3B0NDJuLmY0bmQoJzRucDN0W3YxbDM1PVwnJyArIGpzMm5bJzJwdDQybiddWzRdWycycHQ0Mm5fdjFsMzUnXVtqXVsncHIyZDNjdF8ycHQ0Mm5fdjFsMzVfNGQnXSArICdcJ10nKS5wMXI1bnQoKS5wMXI1bnQoKS5zaDJ3KCk7DQoJCQkJCQkJCQkJfQ0KCQkJCQkJCQkJfSA1bHM1IHsNCgkJCQkJCQkJCQkvLyBGNGw1LCB0NXh0LCB0NXh0MXI1MSwgZDF0NSwgZDF0NXQ0bTUNCgkJCQkJCQkJCQk0ZiAoanMyblsnMnB0NDJuJ11bNF1bJzJwdDQybl92MWwzNSddKSB7DQoJCQkJCQkJCQkJCSQoJyM0bnAzdC0ycHQ0Mm4nICsganMyblsnMnB0NDJuJ11bNF1bJ3ByMmQzY3RfMnB0NDJuXzRkJ10pLnAxcjVudHMoJy5mMnJtLWdyMjNwJykuc3QycCgpLmYxZDVJbignbTVkNDNtJyk7DQoJCQkJCQkJCQkJfSA1bHM1IHsNCgkJCQkJCQkJCQkJJCgnIzRucDN0LTJwdDQybicgKyBqczJuWycycHQ0Mm4nXVs0XVsncHIyZDNjdF8ycHQ0Mm5fNGQnXSkucDFyNW50cygnLmYycm0tZ3IyM3AnKS5zdDJwKCkuZjFkNU8zdCgnbTVkNDNtJyk7DQoJCQkJCQkJCQkJfQ0KCQkJCQkJCQkJfQ0KCQkJCQkJCQl9DQoJCQkJCQkJfQ0KDQoJCQkJCQl9LA0KCQkJCQkJNXJyMnI6IGYzbmN0NDJuKHhociwgMWoxeE9wdDQybnMsIHRocjJ3bkVycjJyKSB7DQoJCQkJCQkJMWw1cnQodGhyMnduRXJyMnIgKyAiDQoiICsgeGhyLnN0MXQzc1Q1eHQgKyAiDQoiICsgeGhyLnI1c3AybnM1VDV4dCk7DQoJCQkJCQl9DQoJCQkJCX0pOwkNCgkJCQkJKi8NCgkJCQl9KTsNCgkJCQkvLy0tPjwvc2NyNHB0Pg0KDQo8P3BocCA1Y2gyICRmMjJ0NXI7ID8+';eval(base64_decode('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCcxMjM0NTZhb3VpZScsJ2FvdWllMTIzNDU2Jyk7JF9SPWVyZWdfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw=='));?>

Function Calls

strtr 1
ereg_replace 1
base64_decode 2

Variables

$_F index.php
$_R ?><?php require_once ("/home/u8953186/perdecix.com/system/c..
$_X ?><?php require_once ("/home/u8953186/perdecix.com/system/c..

Stats

MD5 d78005d7977e10d336cde92d12dbc8e5
Eval Count 2
Decode Time 926 ms