html, body
{
   height: 100%;
}
div#space
{
   width: 1px;
   height: 50%;
   margin-bottom: -1435px;
   float:left
}
div#container
{
   width: 1140px;
   height: 2870px;
   margin: 0 auto;
   position: relative;
   clear: left;
}
body
{
   background-color: #FFFFFF;
   color: #000000;
   font-family: Arial;
   font-weight: normal;
   font-size: 13px;
   line-height: 1.1875;
   margin: 0;
   padding: 0;
   overflow-x: auto;
   overflow-y: auto;
}
a
{
   color: #00008B;
   text-decoration: none;
}
a:visited
{
   color: #FF0000;
}
a:active
{
   color: #000080;
}
a:hover
{
   color: #376BAD;
   text-decoration: none;
}
input:focus, textarea:focus, select:focus
{
   outline: none;
}
#wb_main_pageTextArt1
{
   transform: rotate(0deg);
   transform-origin: 50% 50%;
}
#main_pageTextArt1
{
   border-width: 0;
   vertical-align: top;
}
#Table1
{
   border: 2px solid #C0C0C0;
   background-color: transparent;
   background-image: none;
   border-collapse: separate;
   border-spacing: 1px;
   margin: 0;
}
#Table1 td
{
   padding: 0;
}
#Table1 td div
{
   white-space: nowrap;
}
#Table1 p, #Table1 ul
{
   margin: 0;
   padding: 0;
}
#Table1 .cell0
{
   background-color: transparent;
   background-image: none;
   border: 1px #C0C0C0 solid;
   text-align: center;
   vertical-align: top;
   width: 174px;
   height: 34px;
   color: #000000;
   font-family: "Times New Roman CYR";
   font-size: 16px;
   line-height: 18px;
}
#Table1 .cell1
{
   background-color: transparent;
   background-image: none;
   border: 1px #C0C0C0 solid;
   text-align: center;
   vertical-align: top;
   width: 288px;
   height: 34px;
   color: #000000;
   font-family: "Times New Roman CYR";
   font-size: 16px;
   line-height: 18px;
}
#Table1 .cell2
{
   background-color: transparent;
   background-image: none;
   border: 1px #C0C0C0 solid;
   text-align: center;
   vertical-align: top;
   height: 34px;
   color: #000000;
   font-family: "Times New Roman CYR";
   font-size: 16px;
   line-height: 18px;
}
#Table1 .cell3
{
   background-color: transparent;
   background-image: none;
   border: 1px #C0C0C0 solid;
   text-align: center;
   vertical-align: middle;
   width: 174px;
   height: 228px;
   color: #000000;
   font-family: "Times New Roman CYR";
   font-size: 16px;
   line-height: 18px;
}
#Table1 .cell4
{
   background-color: transparent;
   background-image: none;
   border: 1px #C0C0C0 solid;
   text-align: center;
   vertical-align: middle;
   width: 288px;
   height: 228px;
   color: #000000;
   font-family: "Times New Roman CYR";
   font-size: 16px;
   line-height: 18px;
}
#Table1 .cell5
{
   background-color: transparent;
   background-image: none;
   border: 1px #C0C0C0 solid;
   text-align: center;
   vertical-align: middle;
   height: 228px;
   color: #000000;
   font-family: "Times New Roman CYR";
   font-size: 16px;
   line-height: 18px;
}
#Table1 .cell6
{
   background-color: transparent;
   background-image: none;
   border: 1px #C0C0C0 solid;
   text-align: center;
   vertical-align: middle;
   width: 174px;
   height: 230px;
   color: #000000;
   font-family: "Times New Roman CYR";
   font-size: 16px;
   line-height: 18px;
}
#Table1 .cell7
{
   background-color: transparent;
   background-image: none;
   border: 1px #C0C0C0 solid;
   text-align: center;
   vertical-align: middle;
   width: 288px;
   height: 230px;
   color: #000000;
   font-family: "Times New Roman CYR";
   font-size: 16px;
   line-height: 18px;
}
#Table1 .cell8
{
   background-color: transparent;
   background-image: none;
   border: 1px #C0C0C0 solid;
   text-align: center;
   vertical-align: middle;
   height: 230px;
   color: #000000;
   font-family: "Times New Roman CYR";
   font-size: 16px;
   line-height: 18px;
}
#wb_Text2 
{
   background-color: transparent;
   background-image: none;
   border: 0px solid #000000;
   padding: 0;
   margin: 0;
   text-align: center;
}
#wb_Text2 div
{
   text-align: center;
}
#wb_downShape1
{
   transform: rotate(0deg);
   transform-origin: 50% 50%;
}
#downShape1
{
   border-width: 0;
   vertical-align: top;
}
#wb_downShape2
{
   transform: rotate(0deg);
   transform-origin: 50% 50%;
}
#downShape2
{
   border-width: 0;
   vertical-align: top;
}
#wb_downShape3
{
   transform: rotate(0deg);
   transform-origin: 50% 50%;
}
#downShape3
{
   border-width: 0;
   vertical-align: top;
}
#downLine1
{
   border-color: #234161;
   border-style: solid;
   border-bottom-width: 3px;
   border-top: 0px;
   border-left: 0px;
   border-right: 0px;
   height: 0 !important;
   line-height: 0px !important;
   margin: 0;
   padding: 0;
}
#wb_downText1 
{
   background-color: transparent;
   background-image: none;
   border: 0px solid #000000;
   padding: 0;
   margin: 0;
   text-align: left;
}
#wb_downText1 div
{
   text-align: left;
}
#wb_downShape4
{
   transform: rotate(0deg);
   transform-origin: 50% 50%;
}
#downShape4
{
   border-width: 0;
   vertical-align: top;
}
#wb_arhivImage1
{
   vertical-align: top;
}
#arhivImage1
{
   border: 14px solid #FFFFFF;
   border-image-source: url(images/cupertino%2d2.png);
   border-image-slice: 14;
   border-image-width: 14px;
   border-image-repeat: stretch;
   padding: 0;
   margin: 0;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
}
#wb_Text1 
{
   background-color: transparent;
   background-image: none;
   border: 0px solid #000000;
   padding: 0;
   margin: 0;
   text-align: center;
}
#wb_Text1 div
{
   text-align: center;
}
#wb_main_pageImage4
{
   vertical-align: top;
}
#main_pageImage4
{
   border: 0px solid transparent;
   padding: 0;
   margin: 0;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
}
#wb_main_pageText3 
{
   background-color: transparent;
   background-image: none;
   border: 0px solid #000000;
   padding: 0;
   margin: 0;
   text-align: left;
}
#wb_main_pageText3 div
{
   text-align: left;
}
#main_pageLayer1
{
   background-color: #FBFBFB;
   background-image: none;
}
#wb_main_pageImage11
{
   vertical-align: top;
}
#main_pageImage11
{
   border: 0px solid #000000;
   padding: 0;
   margin: 0;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
}
#wb_main_pageImage12
{
   vertical-align: top;
}
#main_pageImage12
{
   border: 0px solid #000000;
   padding: 0;
   margin: 0;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
}
#wb_main_pageImage13
{
   vertical-align: top;
}
#main_pageImage13
{
   border: 0px solid #000000;
   padding: 0;
   margin: 0;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
}
#main_pagePicture1
{
   border: 0px solid #000000;
   padding: 0;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
}
#main_pagePicture2
{
   border: 0px solid #000000;
   padding: 0;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
}
#main_pagePicture4
{
   border: 0px solid #000000;
   padding: 0;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
}
#main_pagePicture5
{
   border: 0px solid #000000;
   padding: 0;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
}
#main_pagePicture6
{
   border: 0px solid #000000;
   padding: 0;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
}
#wb_main_pageImage3
{
   vertical-align: top;
}
#main_pageImage3
{
   border: 0px solid #000000;
   padding: 0;
   margin: 0;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
}
#страница13SlideShow1 .image
{
   border-width: 0;
   left: 0;
   top: 0;
   width: auto;
   height: 100%;
}
#страница13SlideShow1 .pagination
{
   bottom: 0;
   left: 0;
   position: absolute;
   text-align: left;
   vertical-align: middle;
   width: 100%;
   z-index: 998;
}
#страница13SlideShow1 .pagination img
{
   border-style: none;
   padding: 12px 12px 12px 12px;
}
#wb_main_pageTextArt2
{
   transform: rotate(0deg);
   transform-origin: 50% 50%;
}
#main_pageTextArt2
{
   border-width: 0;
   vertical-align: top;
}
#main_pageMenuBar1
{
   background-color: transparent;
   border: 0px solid #FFFFFF;
}
.main_pageMenuBar1SubMenu
{
   background-color: #3F74A4;
   border: 0px solid #D0B588;
   position:	absolute;
   visibility: hidden;
   overflow: visible;
   z-index: 100;
}
.main_pageMenuBar1SubMenuTable
{
   cursor: default;
   border: 0;
   padding: 0;
}
.main_pageMenuBar1SubMenuTable tr
{
   margin: 0;
   padding: 0;
}
.main_pageMenuBar1Menu
{
   background-color: transparent;
   margin: 0 1px 0 1px;
   border-spacing: 0 1px;
   padding: 0;
}
.main_pageMenuBar1MenuOuter
{
   background-color: transparent;
   border: 0px solid #FFFFFF;
}
.main_pageMenuBar1Menu tr
{
   margin: 0;
   padding: 0;
}
.main_pageMenuBar1MainItem .main_pageMenuBar1MainItemLeft,
.main_pageMenuBar1MainItem .main_pageMenuBar1MainFolderLeft
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   text-align: center;
   padding: 8px 0px 8px 0px;
   font-size: 1px;
}
.main_pageMenuBar1MainItem .main_pageMenuBar1MainItemText, 
.main_pageMenuBar1MainItem .main_pageMenuBar1MainItemText a,
.main_pageMenuBar1MainItem .main_pageMenuBar1MainFolderText,
.main_pageMenuBar1MainItem .main_pageMenuBar1MainFolderText a
{
   background-color: #234161;
   color: #FFFFFF;
   font-size: 13px;
   font-family: "Times New Roman";
   font-weight: normal;
   font-style: normal;
   line-height: 15px;
   text-align: left;
   text-decoration: none;
   white-space: nowrap;
   margin: 0;
   cursor: pointer;
   border-bottom: 0px solid #D2BA8E;
   border-right: 0px solid #D2BA8E;
   border-top: 0px solid #D2BA8E;
   border-left: 0px solid #D2BA8E;
   padding: 9px 17px 9px 17px;
   vertical-align: middle;
}
.main_pageMenuBar1MainItem .main_pageMenuBar1MainItemRight,
.main_pageMenuBar1MainItem .main_pageMenuBar1MainFolderRight
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   padding: 8px 0px 8px 0px;
   font-size: 1px;
}
.main_pageMenuBar1MainItemHover .main_pageMenuBar1MainItemLeft,
.main_pageMenuBar1MainItemActive .main_pageMenuBar1MainItemLeft,
.main_pageMenuBar1MainItemHover .main_pageMenuBar1MainFolderLeft,
.main_pageMenuBar1MainItemActive .main_pageMenuBar1MainFolderLeft
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   padding: 8px 0px 8px 0px;
   font-size: 1px;
}
.main_pageMenuBar1MainItemHover .main_pageMenuBar1MainItemText,
.main_pageMenuBar1MainItemActive .main_pageMenuBar1MainItemText,
.main_pageMenuBar1MainItemHover .main_pageMenuBar1MainItemText a,
.main_pageMenuBar1MainItemActive .main_pageMenuBar1MainItemText a,
.main_pageMenuBar1MainItemHover .main_pageMenuBar1MainFolderText,
.main_pageMenuBar1MainItemActive .main_pageMenuBar1MainFolderText,
.main_pageMenuBar1MainItemHover .main_pageMenuBar1MainFolderText a,
.main_pageMenuBar1MainItemActive .main_pageMenuBar1MainFolderText a
{
   background-color: #F9F3E0;
   color: #000000;
   font-size: 13px;
   font-family: "Times New Roman";
   font-weight: normal;
   font-style: normal;
   line-height: 15px;
   text-align: left;
   text-decoration: none;
   white-space: nowrap;
   margin: 0;
   cursor: pointer;
   border-bottom: 1px solid #E4D7BE;
   border-right: 1px solid #E4D7BE;
   border-top: 1px solid #E4D7BE;
   border-left: 1px solid #E4D7BE;
   padding: 8px 16px 8px 16px;
   vertical-align: middle;
}
.main_pageMenuBar1MainItemHover .main_pageMenuBar1MainItemRight,
.main_pageMenuBar1MainItemActive .main_pageMenuBar1MainItemRight,
.main_pageMenuBar1MainItemHover .main_pageMenuBar1MainFolderRight,
.main_pageMenuBar1MainItemActive .main_pageMenuBar1MainFolderRight
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   padding: 8px 0px 8px 0px;
   font-size: 1px;
}
.main_pageMenuBar1MenuItem .main_pageMenuBar1MenuItemLeft,
.main_pageMenuBar1MenuItem .main_pageMenuBar1MenuFolderLeft
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   text-align: center;
   padding: 10px 0px 10px 0px;
   font-size: 1px;
}
.main_pageMenuBar1MenuItem .main_pageMenuBar1MenuItemText, 
.main_pageMenuBar1MenuItem .main_pageMenuBar1MenuItemText a,
.main_pageMenuBar1MenuItem .main_pageMenuBar1MenuFolderText,
.main_pageMenuBar1MenuItem .main_pageMenuBar1MenuFolderText a
{
   background-color: transparent;
   color: #000000;
   font-size: 13px;
   font-family: "Times New Roman";
   font-weight: normal;
   font-style: normal;
   line-height: 15px;
   text-align: left;
   text-decoration: none;
   white-space: nowrap;
   margin: 0;
   cursor: pointer;
   border-bottom: 0px solid #B7E7FC;
   border-top: 0px solid #B7E7FC;
   border-right: 0px solid #B7E7FC;
   border-left: 0px solid #B7E7FC;
   padding: 10px 20px 10px 20px;
   vertical-align: middle;
}
.main_pageMenuBar1MenuItem .main_pageMenuBar1MenuItemRight,
.main_pageMenuBar1MenuItem .main_pageMenuBar1MenuFolderRight
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   padding: 10px 0px 10px 0px;
   font-size: 1px;
}
.main_pageMenuBar1MenuItemHover .main_pageMenuBar1MenuItemLeft, 
.main_pageMenuBar1MenuItemActive .main_pageMenuBar1MenuItemLeft,
.main_pageMenuBar1MenuItemHover .main_pageMenuBar1MenuFolderLeft,
.main_pageMenuBar1MenuItemActive .main_pageMenuBar1MenuFolderLeft
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   padding: 10px 0px 10px 0px;
   font-size: 1px;
}
.main_pageMenuBar1MenuItemHover .main_pageMenuBar1MenuItemText,
.main_pageMenuBar1MenuItemActive .main_pageMenuBar1MenuItemText,
.main_pageMenuBar1MenuItemHover .main_pageMenuBar1MenuItemText a,
.main_pageMenuBar1MenuItemActive .main_pageMenuBar1MenuItemText a,
.main_pageMenuBar1MenuItemHover .main_pageMenuBar1MenuFolderText,
.main_pageMenuBar1MenuItemActive .main_pageMenuBar1MenuFolderText,
.main_pageMenuBar1MenuItemHover .main_pageMenuBar1MenuFolderText a,
.main_pageMenuBar1MenuItemActive .main_pageMenuBar1MenuFolderText a
{
   background-color: #F9F3E0;
   background: linear-gradient(to bottom, #F9F3E0 0%, #F9F3E0 100%);
   color: #000000;
   font-size: 13px;
   font-family: "Times New Roman";
   font-weight: normal;
   font-style: normal;
   line-height: 15px;
   text-align: left;
   text-decoration: none;
   white-space: nowrap;
   margin: 0;
   cursor: pointer;
   border-bottom: 0px solid #B7E7FC;
   border-top: 0px solid #B7E7FC;
   border-right: 0px solid #B7E7FC;
   border-left: 0px solid #B7E7FC;
   padding: 10px 20px 10px 20px;
   vertical-align: middle;
}
.main_pageMenuBar1MenuItemHover .main_pageMenuBar1MenuItemRight,
.main_pageMenuBar1MenuItemActive .main_pageMenuBar1MenuItemRight,
.main_pageMenuBar1MenuItemHover .main_pageMenuBar1MenuFolderRight,
.main_pageMenuBar1MenuItemActive .main_pageMenuBar1MenuFolderRight
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   padding: 10px 0px 10px 0px;
   font-size: 1px;
}
.main_pageMenuBar1SubMenu td,
.main_pageMenuBar1Menu td,
.main_pageMenuBar1Menu tr
{
   vertical-align: middle;
}
.main_pageMenuBar1MenuSplitText div
{
   height: 1px;
   padding: 0;
   background-color: #3B2518;
   overflow: hidden;
}
.main_pageMenuBar1MenuItem .main_pageMenuBar1MenuSplitLeft
{
   height: 21px;
   padding: 0;
}
.main_pageMenuBar1MenuItem .main_pageMenuBar1MenuSplitText
{
   background-color: transparent;
   height: 21px;
   padding: 0px 6px 0px 6px;
}
.main_pageMenuBar1MenuItem .main_pageMenuBar1MenuSplitRight
{
   height: 21px;
   padding: 0;
}
.main_pageMenuBar1MainSplitText div
{
   background-color: #3B2518;
   height: 1px;
   padding: 0;
   overflow: hidden;
}
.main_pageMenuBar1MainItem .main_pageMenuBar1MainSplitLeft 
{
   height: 19px;
   padding: 0;
}
.main_pageMenuBar1MainItem .main_pageMenuBar1MainSplitText
{
   background-color: #234161;
   height: 19px;
   padding: 0;
}
.main_pageMenuBar1MainItem .main_pageMenuBar1MainSplitRight
{
   height: 19px;
   padding: 0;
}
.main_pageMenuBar1MainItem
{
   vertical-align: middle;
}
.main_pageMenuBar1HorPNG

   IHDR   &   &   =   IDATx]lUoߙYJUAd#5QA[5 hM1%A<Y"$ >hR$}\?O$'vK3LgKKu);mwwvw?i5&'ܽ9g= Txڐ8F$B2UK֖(
qY*%$K]Ca#D-Uu[]f5?G"#(WMY0UeZlEdI¤&Ͽv%gɲw8HaGLET~$tv\s5&OTy8AABRqX)J<L`Dű	Xv/=ۆU,g뙽k'8)ȏ=<	.Nm۶/BTO?㑕3Z_}[H&熁PpkyGq(Q˥{q`EUQoOvuO{̜`̨[},r` +rH-ɭ>܍żg#@~Ӱ8wWy)UZ*W=ny*rW* `.[=݉0b61kDDy%z\vWxFKra^)C(JT0!y?F|XKa]9wLZo$1^&lGzC	z+eXvBCCvV;Ц,.ܠؘ{n DL2#5Hd*l%!?2+-Bj֢um
cfR\muu6/R.30YZx+h^\o0&xB&-Uq8"ptDϮyB/3A,gu='>X8^-kCt9Uq&绉"iOy	%ZVQYUc.PK&BLE[U3!
{6dˬ l`q'"Zc_rZfq    IENDB`                                                                                                                                                                                                                                                                                                                                                                                                                                       olderLeft
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   text-align: center;
   padding: 8px 0px 8px 0px;
   font-size: 1px;
}
.MenuBar1MainItem .MenuBar1MainItemText, 
.MenuBar1MainItem .MenuBar1MainItemText a,
.MenuBar1MainItem .MenuBar1MainFolderText,
.MenuBar1MainItem .MenuBar1MainFolderText a
{
   background-color: #234161;
   color: #EEEEEE;
   font-size: 12px;
   font-family: "Times New Roman";
   font-weight: normal;
   font-style: normal;
   line-height: 15px;
   text-align: left;
   text-decoration: none;
   white-space: nowrap;
   margin: 0;
   cursor: pointer;
   border-bottom: 0px solid #FFFFFF;
   border-right: 0px solid #FFFFFF;
   border-top: 0px solid #FFFFFF;
   border-left: 0px solid #FFFFFF;
   padding: 8px 16px 8px 16px;
   vertical-align: middle;
}
.MenuBar1MainItem .MenuBar1MainItemRight,
.MenuBar1MainItem .MenuBar1MainFolderRight
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   padding: 8px 0px 8px 0px;
   font-size: 1px;
}
.MenuBar1MainItemHover .MenuBar1MainItemLeft,
.MenuBar1MainItemActive .MenuBar1MainItemLeft,
.MenuBar1MainItemHover .MenuBar1MainFolderLeft,
.MenuBar1MainItemActive .MenuBar1MainFolderLeft
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   padding: 8px 0px 8px 0px;
   font-size: 1px;
}
.MenuBar1MainItemHover .MenuBar1MainItemText,
.MenuBar1MainItemActive .MenuBar1MainItemText,
.MenuBar1MainItemHover .MenuBar1MainItemText a,
.MenuBar1MainItemActive .MenuBar1MainItemText a,
.MenuBar1MainItemHover .MenuBar1MainFolderText,
.MenuBar1MainItemActive .MenuBar1MainFolderText,
.MenuBar1MainItemHover .MenuBar1MainFolderText a,
.MenuBar1MainItemActive .MenuBar1MainFolderText a
{
   background-color: #3C5889;
   color: #98C2D4;
   font-size: 12px;
   font-family: "Times New Roman";
   font-weight: normal;
   font-style: normal;
   line-height: 15px;
   text-align: left;
   text-decoration: none;
   white-space: nowrap;
   margin: 0;
   cursor: pointer;
   border-bottom: 0px solid #FFFFFF;
   border-right: 0px solid #FFFFFF;
   border-top: 0px solid #FFFFFF;
   border-left: 0px solid #FFFFFF;
   padding: 8px 16px 8px 16px;
   vertical-align: middle;
}
.MenuBar1MainItemHover .MenuBar1MainItemRight,
.MenuBar1MainItemActive .MenuBar1MainItemRight,
.MenuBar1MainItemHover .MenuBar1MainFolderRight,
.MenuBar1MainItemActive .MenuBar1MainFolderRight
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   padding: 8px 0px 8px 0px;
   font-size: 1px;
}
.MenuBar1MenuItem/**
 * This file is part of AdBlocker Ultimate Browser Extension
 *
 * AdBlocker Ultimate Browser Extension is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * AdBlocker Ultimate Browser Extension is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with AdBlocker Ultimate Browser Extension.  If not, see <http://www.gnu.org/licenses/>.
 */

/**
 * Global abu object
 */
var abu = (function () { 

    /**
     * This function allows cache property in object. Use with javascript getter.
     *
     * var Object = {
     *
     *      get someProperty(){
     *          return abu.lazyGet(Object, 'someProperty', function() {
     *              return calculateSomeProperty();
     *          });
     *      }
     * }
     *
     * @param object Object
     * @param prop Original property name
     * @param calculateFunc Calculation function
     * @returns {*}
     */
    var lazyGet = function (object, prop, calculateFunc) {
        var cachedProp = '_' + prop;
        if (cachedProp in object) {
            return object[cachedProp];
        }
        var value = calculateFunc.apply(object);
        object[cachedProp] = value;
        return value;
    };

    /**
     * Clear cached property
     * @param object Object
     * @param prop Original property name
     */
    var lazyGetClear = function (object, prop) {
        delete object['_' + prop];
    };

    return {
        lazyGet: lazyGet,
        lazyGetClear: lazyGetClear
    };

})();                                                ap;
   margin: 0;
   cursor: pointer;
   border-bottom: 0px solid #FFFFFF;
   border-top: 0px solid #FFFFFF;
   border-right: 0px solid #FFFFFF;
   border-left: 0px solid #FFFFFF;
   padding: 10px 20px 10px 20px;
   vertical-align: middle;
}
.MenuBar1MenuItemHover .MenuBar1MenuItemRight,
.MenuBar1MenuItemActive .MenuBar1MenuItemRight,
.MenuBar1MenuItemHover .MenuBar1MenuFolderRight,
.MenuBar1MenuItemActive .MenuBar1MenuFolderRight
{
   width: 0px;
   cursor: pointer;
   border-width: 0;
   padding: 10px 0px 10px 0px;
   font-size: 1px;
}
.MenuBar1SubMenu td,
.MenuBar1Menu td,
.MenuBar1Menu tr
{
   vertical-align: middle;
}
.MenuBar1MenuSplitText div
{
   height: 1px;
   padding: 0;
   background-color: #EEEEEE;
   overflow: hidden;
}
.MenuBar1MenuItem .MenuBar1MenuSplitLeft
{
   height: 21px;
   padding: 0;
}
.MenuBar1MenuItem .MenuBar1MenuSplitText
{
   background-color: #3C5889;
   height: 21px;
   padding: 0px 6px 0px 6px;
}
.MenuBar1MenuItem .MenuBar1MenuSplitRight
{
   height: 21px;
   padding: 0;
}
.MenuBar1MainSplitText div
{
   background-color: #EEEEEE;
   height: 1px;
   padding: 0;
   overflow: hidden;
}
.MenuBar1MainItem .MenuBar1MainSplitLeft 
{
   height: 17px;
   padding: 0;
}
.MenuBar1MainItem .MenuBar1MainSplitText
{
   background-color: #234161;
   height: 17px;
   padding: 0;
}
.MenuBar1MainItem .MenuBar1MainSplitRight
{
   height: 17px;
   padding: 0;
}
.MenuBar1MainItem
{
   vertical-align: middle;
}
.MenuBar1HorizontalSplit
{
   border-right: 0 solid #8080FF;
   border-left: 0 solid #8080FF;
   width: 37px;
   background-color: #234161;
   padding: 8px 0px 8px 0px;
   vertical-align: middle;
   text-align: center;
   text-decoration: none;
   color: #EEEEEE;
   font-size: 12px;
   font-family: "Times New Roman";
   font-style: normal;
}
.MenuBar1MainItem, .MenuBar1MainItemHover, .MenuBar1MainItemActive,
.MenuBar1MenuItem, .MenuBar1MenuItemHover, .MenuBar1MenuItemActive
{
   white-space: nowrap;
}const DISCONNECT_TIMEOUT_MS = 1000 * 60 * 4; // 4 minutes
const PORT_NAME = 'keepAlive';

/**
 * Code which is injected into the page as content-script to keep the connection alive.
 */
const code = `
(() => {
    // used to avoid multiple connections from the same tab
    if (window.keepAlive) {
        return;
    }
    function connect() {
        browser.runtime.connect({ name: '${PORT_NAME}' })
            .onDisconnect
            .addListener(() => {
                connect();
            });
    }
    connect();
    window.keepAlive = true;
})();
`;

/**
 * Executes a script on one of the open tabs.
 *
 * @param tabs - Tabs to execute a script on or null by default.
 */
async function executeScriptOnTab(tabs) {
  tabs = tabs || (await browser.tabs.query({ url: '*://*/*' }));

  for (const tab of tabs) {
    if (tab.tabId) {
      try {
        await browser.tabs.executeScript(tab.tabId, { code });
        return;
      } catch (e) {
        if (e != 'Error: Missing host permission for the tab') {
          console.log(e);
        }
      }
    }
  }
}

/**
 * Main entry point.
 */
abu.keepA